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:
35
36
39
40
41
45
46
49
50
51
52
56};
57
61
63
64public:
66
68};
69
71 : public PassInfoMixin {
73
74public:
78};
79
81 virtual void anchor();
82
84
85public:
87
89
92 }
93
96};
97}
98
99
100#endif
API to communicate dependencies between analyses during invalidation.
A container for analyses that lazily runs them and caches their results.
Represent the analysis usage information of a pass.
void setPreservesAll()
Set by analyses that do not transform their input at all.
ImmutablePass class - This class is used to provide information that does not need to be run.
SmallVectorImpl< MachineBasicBlock * >::const_iterator const_succ_iterator
Result run(MachineFunction &, MachineFunctionAnalysisManager &)
MachineBranchProbabilityInfo & getMBPI()
const MachineBranchProbabilityInfo & getMBPI() const
void getAnalysisUsage(AnalysisUsage &AU) const override
getAnalysisUsage - This function should be overriden by passes that need analysis information to do t...
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)
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.
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.