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:

86 static char ID;

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.