LLVM: include/llvm/CodeGen/MIRSampleProfile.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14#ifndef LLVM_CODEGEN_MIRSAMPLEPROFILE_H
15#define LLVM_CODEGEN_MIRSAMPLEPROFILE_H
16
21#include
22#include
23
24namespace llvm {
29
30namespace vfs {
32}
33
35
39 std::string ProfileFileName;
41 unsigned LowBit;
42 unsigned HighBit;
43
44public:
46
48 std::string RemappingFileName = "",
51
52
54
56
57private:
60 bool doInitialization(Module &M) override;
61 void getAnalysisUsage(AnalysisUsage &AU) const override;
62
63 std::unique_ptr MIRSampleLoader;
64
66};
67
68}
69
70#endif
This file defines the RefCountedBase, ThreadSafeRefCountedBase, and IntrusiveRefCntPtr classes.
Represent the analysis usage information of a pass.
A smart pointer to a reference-counted object that inherits from RefCountedBase or ThreadSafeRefCount...
static char ID
Definition MIRSampleProfile.h:45
const MachineFunction * getMachineFunction() const
getMachineFunction - Return the last machine function computed.
Definition MIRSampleProfile.h:53
MIRProfileLoaderPass(std::string FileName="", std::string RemappingFileName="", FSDiscriminatorPass P=FSDiscriminatorPass::Pass1, IntrusiveRefCntPtr< vfs::FileSystem > FS=nullptr)
FS bits will only use the '1' bits in the Mask.
StringRef getPassName() const override
getPassName - Return a nice clean name for a pass.
Definition MIRSampleProfile.h:55
MachineBlockFrequencyInfo pass uses BlockFrequencyInfoImpl implementation to estimate machine basic b...
MachineFunctionPass(char &ID)
A Module instance is used to store all the information related to an LLVM module.
StringRef - Represent a constant reference to a string, i.e.
The virtual file system interface.
This is an optimization pass for GlobalISel generic memory operations.