LLVM API Documentation

BasicBlockPlacement.cpp File Reference

#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>

Include dependency graph for BasicBlockPlacement.cpp:

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 Documentation

#define DEBUG_TYPE   "block-placement"

Definition at line 29 of file BasicBlockPlacement.cpp.


Function Documentation

STATISTIC ( NumMoved  ,
"Number of basic blocks moved"   
)


Variable Documentation

char ID [static]

Definition at line 44 of file BasicBlockPlacement.cpp.

Function::iterator InsertPos

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.

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]