LLVM
15.0.0git
|
This class is derived from MachineFunctionInfo and contains private WebAssembly-specific information for each MachineFunction. More...
#include "Target/WebAssembly/WebAssemblyMachineFunctionInfo.h"
Static Public Member Functions | |
static unsigned | getWARegStackId (unsigned Reg) |
![]() | |
template<typename Ty > | |
static Ty * | create (BumpPtrAllocator &Allocator, MachineFunction &MF) |
Factory function: default behavior is to call new using the supplied allocator. More... | |
Static Public Attributes | |
static const unsigned | UnusedReg = -1u |
This class is derived from MachineFunctionInfo and contains private WebAssembly-specific information for each MachineFunction.
Definition at line 33 of file WebAssemblyMachineFunctionInfo.h.
|
inlineexplicit |
Definition at line 73 of file WebAssemblyMachineFunctionInfo.h.
|
overridedefault |
|
inline |
Definition at line 94 of file WebAssemblyMachineFunctionInfo.h.
Referenced by llvm::WebAssemblyFrameLowering::getLocalForStackObject().
|
inline |
Definition at line 81 of file WebAssemblyMachineFunctionInfo.h.
|
inline |
Definition at line 84 of file WebAssemblyMachineFunctionInfo.h.
References Results.
|
inline |
Definition at line 112 of file WebAssemblyMachineFunctionInfo.h.
|
inline |
Definition at line 87 of file WebAssemblyMachineFunctionInfo.h.
References Results.
|
inline |
Definition at line 103 of file WebAssemblyMachineFunctionInfo.h.
References assert().
Referenced by llvm::WebAssemblyFrameLowering::emitEpilogue().
|
inline |
Definition at line 116 of file WebAssemblyMachineFunctionInfo.h.
References assert().
Referenced by llvm::WebAssemblyFrameLowering::getDwarfFrameBase().
|
inline |
Definition at line 108 of file WebAssemblyMachineFunctionInfo.h.
References assert().
Referenced by checkFrameBase(), and llvm::WebAssemblyRegisterInfo::getFrameRegister().
Definition at line 95 of file WebAssemblyMachineFunctionInfo.h.
Referenced by llvm::WebAssemblyAsmPrinter::emitFunctionBodyStart(), and llvm::WebAssemblyFrameLowering::getLocalForStackObject().
|
inline |
Definition at line 77 of file WebAssemblyMachineFunctionInfo.h.
Referenced by llvm::yaml::WebAssemblyFunctionInfo::WebAssemblyFunctionInfo().
Definition at line 82 of file WebAssemblyMachineFunctionInfo.h.
Referenced by llvm::WebAssemblyFrameLowering::getLocalForStackObject(), and llvm::yaml::WebAssemblyFunctionInfo::WebAssemblyFunctionInfo().
Definition at line 85 of file WebAssemblyMachineFunctionInfo.h.
References Results.
Referenced by llvm::yaml::WebAssemblyFunctionInfo::WebAssemblyFunctionInfo().
|
inline |
Definition at line 97 of file WebAssemblyMachineFunctionInfo.h.
References assert().
|
inline |
Definition at line 150 of file WebAssemblyMachineFunctionInfo.h.
References assert(), I, and llvm::Register::virtReg2Index().
Referenced by llvm::WebAssemblyMCInstLower::lower(), and llvm::WebAssemblyAsmPrinter::regToString().
|
inlinestatic |
Definition at line 157 of file WebAssemblyMachineFunctionInfo.h.
References assert().
Referenced by llvm::WebAssemblyInstPrinter::printOperand().
|
inline |
Definition at line 165 of file WebAssemblyMachineFunctionInfo.h.
Referenced by llvm::yaml::WebAssemblyFunctionInfo::WebAssemblyFunctionInfo().
void WebAssemblyFunctionInfo::initializeBaseYamlFields | ( | const yaml::WebAssemblyFunctionInfo & | YamlMFI | ) |
Definition at line 147 of file WebAssemblyMachineFunctionInfo.cpp.
References llvm::yaml::WebAssemblyFunctionInfo::CFGStackified, llvm::yaml::WebAssemblyFunctionInfo::Params, llvm::WebAssembly::parseMVT(), llvm::yaml::WebAssemblyFunctionInfo::Results, and llvm::yaml::WebAssemblyFunctionInfo::SrcToUnwindDest.
void WebAssemblyFunctionInfo::initWARegs | ( | MachineRegisterInfo & | MRI | ) |
Definition at line 27 of file WebAssemblyMachineFunctionInfo.cpp.
References assert(), llvm::MachineRegisterInfo::getNumVirtRegs(), MRI, and UnusedReg.
|
inline |
Definition at line 162 of file WebAssemblyMachineFunctionInfo.h.
|
inline |
Definition at line 114 of file WebAssemblyMachineFunctionInfo.h.
Referenced by checkFrameBase(), and llvm::WebAssemblyFrameLowering::getDwarfFrameBase().
|
inline |
Definition at line 136 of file WebAssemblyMachineFunctionInfo.h.
References I, llvm::BitVector::size(), llvm::BitVector::test(), and llvm::Register::virtReg2Index().
Referenced by llvm::WebAssemblyInstrInfo::commuteInstructionImpl(), findStartOfTree(), llvm::WebAssembly::isChild(), oneUseDominatesOtherUses(), and llvm::WebAssemblyAsmPrinter::regToString().
|
inline |
Definition at line 120 of file WebAssemblyMachineFunctionInfo.h.
|
inline |
Definition at line 163 of file WebAssemblyMachineFunctionInfo.h.
|
inline |
Definition at line 115 of file WebAssemblyMachineFunctionInfo.h.
Referenced by checkFrameBase().
|
inline |
Definition at line 107 of file WebAssemblyMachineFunctionInfo.h.
Definition at line 93 of file WebAssemblyMachineFunctionInfo.h.
References i.
|
inline |
Definition at line 92 of file WebAssemblyMachineFunctionInfo.h.
References llvm::MVT::i32.
|
inline |
Definition at line 101 of file WebAssemblyMachineFunctionInfo.h.
|
inline |
Definition at line 144 of file WebAssemblyMachineFunctionInfo.h.
References assert(), I, UnusedReg, and llvm::Register::virtReg2Index().
|
inline |
Definition at line 166 of file WebAssemblyMachineFunctionInfo.h.
References Info.
|
inline |
Definition at line 124 of file WebAssemblyMachineFunctionInfo.h.
References assert(), I, MRI, llvm::BitVector::resize(), llvm::BitVector::set(), llvm::BitVector::size(), and llvm::Register::virtReg2Index().
Referenced by maybeRewriteToDrop(), moveAndTeeForMultiUse(), moveForSingleUse(), and rematerializeCheapDef().
|
inline |
Definition at line 131 of file WebAssemblyMachineFunctionInfo.h.
References I, llvm::BitVector::reset(), llvm::BitVector::size(), and llvm::Register::virtReg2Index().
|
static |
Definition at line 122 of file WebAssemblyMachineFunctionInfo.h.
Referenced by initWARegs(), llvm::WebAssemblyInstPrinter::printOperand(), llvm::WebAssemblyInstPrinter::printRegName(), llvm::WebAssemblyAsmPrinter::regToString(), and setWAReg().