LLVM API Documentation
#include "llvm/Analysis/ProfileInfo.h"#include "llvm/Function.h"#include "llvm/Pass.h"#include "llvm/Support/CFG.h"#include "llvm/Support/Compiler.h"#include "llvm/ADT/Statistic.h"#include "llvm/Transforms/Scalar.h"#include <set>
Go to the source code of this file.
Defines | |
| #define | DEBUG_TYPE "block-placement" |
Functions | |
| STATISTIC (NumMoved,"Number of basic blocks moved") | |
| FunctionPass * | llvm::createBlockPlacementPass () |
Variables | |
| static RegisterPass < BlockPlacement > | X ("block-placement","Profile Guided Basic Block Placement") |
| #define DEBUG_TYPE "block-placement" |
Definition at line 29 of file BasicBlockPlacement.cpp.
| STATISTIC | ( | NumMoved | , | |
| "Number of basic blocks moved" | ||||
| ) |
char ID [static] |
Definition at line 44 of file BasicBlockPlacement.cpp.
| Function::iterator InsertPos |
InsertPos - This an iterator to the next place we want to insert a block.
Definition at line 69 of file BasicBlockPlacement.cpp.
Referenced by llvm::ImmutableListFactory< T >::Concat(), EmitLiveInCopies(), llvm::AttrListPtr::get(), llvm::RSProfilers_std::IncrementCounterInBlock(), llvm::IncrementCounterInBlock(), llvm::InsertProfilingInitCall(), llvm::LiveInterval::join(), llvm::LiveInterval::MergeRangesInAsValue(), RewriteHeapSROALoadUser(), SpeculativelyExecuteBB(), and TryToSinkInstruction().
NumMovedBlocks - Every time we move a block, increment this counter.
Definition at line 61 of file BasicBlockPlacement.cpp.
PI - The profile information that is guiding us.
Definition at line 57 of file BasicBlockPlacement.cpp.
| std::set<BasicBlock*> PlacedBlocks |
PlacedBlocks - Every time we place a block, remember it so we don't get into infinite loops.
Definition at line 65 of file BasicBlockPlacement.cpp.
RegisterPass<BlockPlacement> X("block-placement","Profile Guided Basic Block Placement") [static] |