LLVM API Documentation
#include "llvm/Analysis/ProfileInfo.h"#include "llvm/Function.h"#include "llvm/Pass.h"#include "llvm/Support/CFG.h"#include "llvm/ADT/Statistic.h"#include "llvm/Transforms/Scalar.h"#include <set>Include dependency graph for BasicBlockPlacement.cpp:

Go to the source code of this file.
Functions | |
| FunctionPass * | llvm::createBlockPlacementPass () |
Variables | |
| Statistic | NumMoved ("block-placement","Number of basic blocks moved") |
| RegisterOpt< BlockPlacement > | X ("block-placement","Profile Guided Basic Block Placement") |
| Function::iterator InsertPos |
InsertPos - This an iterator to the next place we want to insert a block.
Definition at line 64 of file BasicBlockPlacement.cpp.
Referenced by llvm::RSProfilers_std::IncrementCounterInBlock(), llvm::IncrementCounterInBlock(), InsertCodeToShowFunctionEntry(), InsertInstrumentationCall(), llvm::InsertProfilingInitCall(), llvm::LiveInterval::join(), TraceValuesAtBBExit(), and TryToSinkInstruction().
| unsigned NumMovedBlocks |
NumMovedBlocks - Every time we move a block, increment this counter.
Definition at line 56 of file BasicBlockPlacement.cpp.
PI - The profile information that is guiding us.
Definition at line 52 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 60 of file BasicBlockPlacement.cpp.
RegisterOpt<BlockPlacement> X("block-placement","Profile Guided Basic Block Placement") [static] |