#include <ProfileInfo.h>
Public Types | |
| enum | GetPathMode { GetPathToExit = 1, GetPathToValue = 2, GetPathToDest = 4, GetPathWithNewEdges = 8 } |
|
typedef std::pair< const BType *, const BType * > | Edge |
| typedef std::pair< Edge, double > | EdgeWeight |
| typedef std::map< Edge, double > | EdgeWeights |
|
typedef std::map< const BType *, double > | BlockCounts |
|
typedef std::map< const BType *, const BType * > | Path |
Public Member Functions | |
| double | getExecutionCount (const FType *F) |
| double | getExecutionCount (const BType *BB) |
| void | setExecutionCount (const BType *BB, double w) |
| void | addExecutionCount (const BType *BB, double w) |
| double | getEdgeWeight (Edge e) const |
| void | setEdgeWeight (Edge e, double w) |
| void | addEdgeWeight (Edge e, double w) |
| EdgeWeights & | getEdgeWeights (const FType *F) |
| void | removeBlock (const BType *BB) |
| void | removeEdge (Edge e) |
| void | replaceEdge (const Edge &, const Edge &) |
| const BType * | GetPath (const BType *Src, const BType *Dest, Path &P, unsigned Mode) |
| void | divertFlow (const Edge &, const Edge &) |
| void | splitEdge (const BType *FirstBB, const BType *SecondBB, const BType *NewBB, bool MergeIdenticalEdges=false) |
| void | splitBlock (const BType *Old, const BType *New) |
| void | splitBlock (const BType *BB, const BType *NewBB, BType *const *Preds, unsigned NumPreds) |
| void | replaceAllUses (const BType *RmBB, const BType *DestBB) |
| void | transfer (const FType *Old, const FType *New) |
| void | repair (const FType *F) |
| void | dump (FType *F=0, bool real=true) |
| bool | CalculateMissingEdge (const BType *BB, Edge &removed, bool assumeEmptyExit=false) |
| bool | EstimateMissingEdges (const BType *BB) |
|
ProfileInfoT< MachineFunction, MachineBasicBlock > * | MI () |
| bool | hasMI () const |
Static Public Member Functions | |
| static const FType * | getFunction (Edge e) |
| static Edge | getEdge (const BType *Src, const BType *Dest) |
Static Public Attributes | |
| static char | ID |
| static const double | MissingValue |
Protected Attributes | |
|
std::map< const FType *, EdgeWeights > | EdgeInformation |
|
std::map< const FType *, BlockCounts > | BlockInformation |
| std::map< const FType *, double > | FunctionInformation |
|
ProfileInfoT< MachineFunction, MachineBasicBlock > * | MachineProfile |
| double llvm::ProfileInfoT< FType, BType >::getExecutionCount | ( | const FType * | F | ) |
Profile Information Queries
| void llvm::ProfileInfoT< FType, BType >::removeBlock | ( | const BType * | BB | ) |
Analysis Update Methods
1.5.8