LLVM: lib/CodeGen/MBFIWrapper.cpp Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

16#include

17

18using namespace llvm;

19

21 auto I = MergedBBFreq.find(MBB);

22

23 if (I != MergedBBFreq.end())

24 return I->second;

25

27}

28

31 MergedBBFreq[MBB] = F;

32}

33

34std::optional<uint64_t>

36 auto I = MergedBBFreq.find(MBB);

37

38

39

40 if (I != MergedBBFreq.end())

42

44}

45

48}

49

static bool isSimple(Instruction *I)

std::optional< uint64_t > getBlockProfileCount(const MachineBasicBlock *MBB) const

BlockFrequency getBlockFreq(const MachineBasicBlock *MBB) const

void view(const Twine &Name, bool isSimple=true)

void setBlockFreq(const MachineBasicBlock *MBB, BlockFrequency F)

BlockFrequency getEntryFreq() const

void view(const Twine &Name, bool isSimple=true) const

Pop up a ghostview window with the current block frequency propagation rendered using dot.

BlockFrequency getBlockFreq(const MachineBasicBlock *MBB) const

getblockFreq - Return block frequency.

std::optional< uint64_t > getProfileCountFromFreq(BlockFrequency Freq) const

BlockFrequency getEntryFreq() const

Divide a block's BlockFrequency::getFrequency() value by this value to obtain the entry block - relat...

std::optional< uint64_t > getBlockProfileCount(const MachineBasicBlock *MBB) const

Twine - A lightweight data structure for efficiently representing the concatenation of temporary valu...

This is an optimization pass for GlobalISel generic memory operations.