LLVM: include/llvm/CodeGen/MachineBranchProbabilityInfo.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13#ifndef LLVM_CODEGEN_MACHINEBRANCHPROBABILITYINFO_H
14#define LLVM_CODEGEN_MACHINEBRANCHPROBABILITYINFO_H
15
20
21namespace llvm {
22
24
25
26
27
28
29
30 static const uint32_t DEFAULT_WEIGHT = 16;
31
32public:
34 MachineFunctionAnalysisManager::Invalidator &);
35
36
39
40
41
45
46
49
50
51
52
56};
57
69
71 : public PassInfoMixin {
73
74public:
78};
79
81 virtual void anchor();
82
84
85public:
87
89
93
96};
97}
98
99
100#endif
Represent the analysis usage information of a pass.
void setPreservesAll()
Set by analyses that do not transform their input at all.
SmallVectorImpl< MachineBasicBlock * >::const_iterator const_succ_iterator
Result run(MachineFunction &, MachineFunctionAnalysisManager &)
MachineBranchProbabilityInfo Result
Definition MachineBranchProbabilityInfo.h:65
MachineBranchProbabilityInfo & getMBPI()
Definition MachineBranchProbabilityInfo.h:94
const MachineBranchProbabilityInfo & getMBPI() const
Definition MachineBranchProbabilityInfo.h:95
static char ID
Definition MachineBranchProbabilityInfo.h:86
void getAnalysisUsage(AnalysisUsage &AU) const override
getAnalysisUsage - This function should be overriden by passes that need analysis information to do t...
Definition MachineBranchProbabilityInfo.h:90
MachineBranchProbabilityInfoWrapperPass()
raw_ostream & printEdgeProbability(raw_ostream &OS, const MachineBasicBlock *Src, const MachineBasicBlock *Dst) const
bool invalidate(MachineFunction &, const PreservedAnalyses &PA, MachineFunctionAnalysisManager::Invalidator &)
bool isEdgeHot(const MachineBasicBlock *Src, const MachineBasicBlock *Dst) const
BranchProbability getEdgeProbability(const MachineBasicBlock *Src, const MachineBasicBlock *Dst) const
MachineBranchProbabilityPrinterPass(raw_ostream &OS)
Definition MachineBranchProbabilityInfo.h:75
PreservedAnalyses run(MachineFunction &MF, MachineFunctionAnalysisManager &MFAM)
A set of analyses that are preserved following a run of a transformation pass.
This class implements an extremely fast bulk output stream that can only output to a stream.
This is an optimization pass for GlobalISel generic memory operations.
AnalysisManager< MachineFunction > MachineFunctionAnalysisManager
A CRTP mix-in that provides informational APIs needed for analysis passes.
A special type used by analysis passes to provide an address that identifies that particular analysis...
A CRTP mix-in to automatically provide informational APIs needed for passes.