LLVM 20.0.0git
|
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"
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<typename Ty > | |
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 95 of file MachineFunction.h.
|
virtualdefault |
|
inlinevirtual |
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 118 of file MachineFunction.h.
Referenced by llvm::MachineFunction::cloneInfoFrom().
|
inlinestatic |
Factory function: default behavior is to call new using the supplied allocator.
This function can be overridden in a derive class.
Definition at line 103 of file MachineFunction.h.
|
inlinestatic |
Definition at line 109 of file MachineFunction.h.
References Allocator.