LLVM: llvm::MachineFunctionInfo Struct Reference (original) (raw)
MachineFunctionInfo - This class can be derived from and used by targets to hold private target-specific information for each MachineFunction. More...
#include "[llvm/CodeGen/MachineFunction.h](MachineFunction%5F8h%5Fsource.html)"
Public Member Functions | |
---|---|
virtual | ~MachineFunctionInfo () |
virtual MachineFunctionInfo * | clone (BumpPtrAllocator &Allocator, MachineFunction &DestMF, const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &Src2DstMBB) const |
Make a functionally equivalent copy of this MachineFunctionInfo in MF. | |
Static Public Member Functions | |
---|---|
template<typename FuncInfoTy , typename SubtargetTy = TargetSubtargetInfo> | |
static FuncInfoTy * | create (BumpPtrAllocator &Allocator, const Function &F, const SubtargetTy *STI) |
Factory function: default behavior is to call new using the supplied allocator. | |
template | |
static Ty * | create (BumpPtrAllocator &Allocator, const Ty &MFI) |
MachineFunctionInfo - This class can be derived from and used by targets to hold private target-specific information for each MachineFunction.
Objects of type are accessed/created with MF::getInfo and destroyed when the MachineFunction is destroyed.
Definition at line 104 of file MachineFunction.h.
MachineFunctionInfo::~MachineFunctionInfo ( ) | virtualdefault |
---|
◆ clone()
Make a functionally equivalent copy of this MachineFunctionInfo in MF
.
This requires remapping MachineBasicBlock references from the original parent to values in the new function. Targets may assume that virtual register and frame index values are preserved in the new function.
Reimplemented in llvm::AArch64FunctionInfo, llvm::SIMachineFunctionInfo, llvm::ARCFunctionInfo, llvm::ARMFunctionInfo, llvm::AVRMachineFunctionInfo, llvm::CSKYMachineFunctionInfo, llvm::HexagonMachineFunctionInfo, llvm::LanaiMachineFunctionInfo, llvm::LoongArchMachineFunctionInfo, llvm::M68kMachineFunctionInfo, llvm::MipsFunctionInfo, llvm::MSP430MachineFunctionInfo, llvm::NVPTXMachineFunctionInfo, llvm::PPCFunctionInfo, llvm::RISCVMachineFunctionInfo, llvm::SparcMachineFunctionInfo, llvm::SystemZMachineFunctionInfo, llvm::VEMachineFunctionInfo, llvm::WebAssemblyFunctionInfo, llvm::X86MachineFunctionInfo, and llvm::XCoreFunctionInfo.
Definition at line 127 of file MachineFunction.h.
Referenced by llvm::MachineFunction::cloneInfoFrom().
◆ create() [1/2]
template<typename FuncInfoTy , typename SubtargetTy = TargetSubtargetInfo>
Factory function: default behavior is to call new using the supplied allocator.
This function can be overridden in a derive class.
Definition at line 112 of file MachineFunction.h.
◆ create() [2/2]
template
static Ty * llvm::MachineFunctionInfo::create ( BumpPtrAllocator & Allocator, const Ty & MFI ) | inlinestatic |
---|
The documentation for this struct was generated from the following files:
- include/llvm/CodeGen/MachineFunction.h
- lib/CodeGen/MachineFunction.cpp