LLVM: llvm::MachineFunctionProperties Class Reference (original) (raw)
Properties which a MachineFunction may have at a given point in time. More...
#include "[llvm/CodeGen/MachineFunction.h](MachineFunction%5F8h%5Fsource.html)"
Public Types | |
---|---|
enum class | Property : unsigned { IsSSA, NoPHIs, TracksLiveness, NoVRegs, FailedISel, Legalized, RegBankSelected, Selected, TiedOpsRewritten, FailsVerification, FailedRegAlloc, TracksDebugUserValues, LastProperty = TracksDebugUserValues } |
Public Member Functions | |
---|---|
bool | hasProperty (Property P) const |
MachineFunctionProperties & | set (Property P) |
MachineFunctionProperties & | reset (Property P) |
MachineFunctionProperties & | reset () |
Reset all the properties. | |
MachineFunctionProperties & | set (const MachineFunctionProperties &MFP) |
MachineFunctionProperties & | reset (const MachineFunctionProperties &MFP) |
bool | verifyRequiredProperties (const MachineFunctionProperties &V) const |
void | print (raw_ostream &OS) const |
Print the MachineFunctionProperties in human-readable form. | |
Detailed Description
Properties which a MachineFunction may have at a given point in time.
Each of these has checking code in the MachineVerifier, and passes can require that a property be set.
Definition at line 128 of file MachineFunction.h.
Member Enumeration Documentation
◆ Property
Enumerator |
---|
IsSSA |
NoPHIs |
TracksLiveness |
NoVRegs |
FailedISel |
Legalized |
RegBankSelected |
Selected |
TiedOpsRewritten |
FailsVerification |
FailedRegAlloc |
TracksDebugUserValues |
LastProperty |
Definition at line 178 of file MachineFunction.h.
Member Function Documentation
◆ hasProperty()
bool llvm::MachineFunctionProperties::hasProperty ( Property P) const | inline |
---|
Definition at line 194 of file MachineFunction.h.
References P.
Referenced by llvm::VirtRegMap::assignVirt2Phys(), llvm::Combiner::combineMachineInstrs(), llvm::TargetInstrInfo::describeLoadedValue(), llvm::RegAllocBase::getErrorAssignment(), llvm::AArch64RegisterInfo::getReservedRegs(), llvm::MachineRegisterInfo::isSSA(), llvm::MachineBasicBlock::liveout_begin(), llvm::MIRPrinter::print(), llvm::MachineVerifierPass::run(), llvm::SelectionDAGISelPass::run(), runFixI1Copies(), llvm::InstructionSelect::runOnMachineFunction(), llvm::Legalizer::runOnMachineFunction(), llvm::LoadStoreOpt::runOnMachineFunction(), llvm::Localizer::runOnMachineFunction(), llvm::RegBankSelect::runOnMachineFunction(), llvm::SelectionDAGISelLegacy::runOnMachineFunction(), and llvm::MachineRegisterInfo::tracksLiveness().
◆ print()
void MachineFunctionProperties::print | ( | raw_ostream & | OS | ) | const |
---|
◆ reset() [1/3]
◆ reset() [2/3]
◆ reset() [3/3]
◆ set() [1/2]
◆ set() [2/2]
Definition at line 198 of file MachineFunction.h.
References P.
Referenced by createFrameHelperMachineFunction(), llvm::ThunkInserter< Derived, InsertedThunksTy >::createThunkFunction(), llvm::RegAllocFastPass::getClearedProperties(), llvm::EarlyTailDuplicatePass::getClearedProperties(), llvm::SILowerSGPRSpillsPass::getClearedProperties(), llvm::SIOptimizeVGPRLiveRangePass::getClearedProperties(), llvm::Legalizer::getClearedProperties(), llvm::RegBankSelect::getClearedProperties(), llvm::RAGreedy::getClearedProperties(), llvm::RegAllocBase::getErrorAssignment(), llvm::MachineCSEPass::getRequiredProperties(), llvm::PeepholeOptimizerPass::getRequiredProperties(), llvm::RegAllocFastPass::getRequiredProperties(), llvm::GCNDPPCombinePass::getRequiredProperties(), llvm::SILoadStoreOptimizerPass::getRequiredProperties(), llvm::SIOptimizeVGPRLiveRangePass::getRequiredProperties(), llvm::ExecutionDomainFix::getRequiredProperties(), llvm::InstructionSelect::getRequiredProperties(), llvm::Legalizer::getRequiredProperties(), llvm::LoadStoreOpt::getRequiredProperties(), llvm::Localizer::getRequiredProperties(), llvm::RegBankSelect::getRequiredProperties(), llvm::ReachingDefAnalysis::getRequiredProperties(), llvm::BreakFalseDeps::getRequiredProperties(), llvm::RAGreedy::getRequiredProperties(), RemoveLoadsIntoFakeUses::getRequiredProperties(), llvm::LiveDebugVariablesAnalysis::getSetProperties(), llvm::RegAllocFastPass::getSetProperties(), llvm::TwoAddressInstructionPass::getSetProperties(), llvm::InstructionSelect::getSetProperties(), llvm::Legalizer::getSetProperties(), llvm::RegBankSelect::getSetProperties(), llvm::LiveDebugVariablesWrapperLegacy::getSetProperties(), llvm::MIRParserImpl::initializeMachineFunction(), llvm::reportGISelFailure(), llvm::scavengeFrameVirtualRegs(), and llvm::InstructionSelect::selectMachineFunction().
◆ verifyRequiredProperties()
The documentation for this class was generated from the following files:
- include/llvm/CodeGen/MachineFunction.h
- lib/CodeGen/MachineFunction.cpp