LLVM: include/llvm/CodeGen/MIRFSDiscriminator.h Source File (original) (raw)
Go to the documentation of this file.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17#ifndef LLVM_CODEGEN_MIRFSDISCRIMINATOR_H
18#define LLVM_CODEGEN_MIRFSDISCRIMINATOR_H
19
24
25#include
26#include
27
28namespace llvm {
30
35 unsigned LowBit;
36 unsigned HighBit;
37
38public:
40
45 assert(LowBit < HighBit && "HighBit needs to be greater than Lowbit");
46 }
47
49 return "Add FS discriminators in MIR";
50 }
51
52
54
55
56
58
59
61
62private:
64};
65
66}
67
68#endif
assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")
unsigned getNumFSBBs()
getNumFSBBs() - Return the number of machine BBs that have FS samples.
const MachineFunction * getMachineFunction() const
getMachineFunction - Return the current machine function.
Definition MIRFSDiscriminator.h:60
StringRef getPassName() const override
getPassName - Return a nice clean name for a pass.
Definition MIRFSDiscriminator.h:48
uint64_t getNumFSSamples()
getNumFSSamples() - Return the number of samples that have flow sensitive values.
MIRAddFSDiscriminators(FSDiscriminatorPass P=FSDiscriminatorPass::Pass1)
PassNum is the sequence number this pass is called, start from 1.
Definition MIRFSDiscriminator.h:41
static char ID
Definition MIRFSDiscriminator.h:39
MachineFunctionPass(char &ID)
StringRef - Represent a constant reference to a string, i.e.
This is an optimization pass for GlobalISel generic memory operations.
static unsigned getFSPassBitBegin(sampleprof::FSDiscriminatorPass P)
static unsigned getFSPassBitEnd(sampleprof::FSDiscriminatorPass P)