LLVM 20.0.0git
|
Properties which a MachineFunction may have at a given point in time. More...
#include "llvm/CodeGen/MachineFunction.h"
Public Types | |
enum class | Property : unsigned { IsSSA , NoPHIs , TracksLiveness , NoVRegs , FailedISel , Legalized , RegBankSelected , Selected , TiedOpsRewritten , FailsVerification , 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. | |
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.
|
strong |
Enumerator | |
---|---|
IsSSA | |
NoPHIs | |
TracksLiveness | |
NoVRegs | |
FailedISel | |
Legalized | |
RegBankSelected | |
Selected | |
TiedOpsRewritten | |
FailsVerification | |
TracksDebugUserValues | |
LastProperty |
Definition at line 178 of file MachineFunction.h.
Definition at line 193 of file MachineFunction.h.
References P.
Referenced by llvm::Combiner::combineMachineInstrs(), llvm::TargetInstrInfo::describeLoadedValue(), 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().
void MachineFunctionProperties::print | ( | raw_ostream & | OS | ) | const |
Print the MachineFunctionProperties in human-readable form.
Definition at line 136 of file MachineFunction.cpp.
References I.
Referenced by llvm::MachineFunction::print().
|
inline |
Reset all the properties.
Definition at line 208 of file MachineFunction.h.
|
inline |
Definition at line 218 of file MachineFunction.h.
|
inline |
Definition at line 202 of file MachineFunction.h.
References P.
Referenced by createFrameHelperMachineFunction(), createPHIsForSelects(), llvm::ARMTargetLowering::EmitInstrWithCustomInserter(), llvm::Thumb1FrameLowering::emitPrologue(), llvm::MachineRegisterInfo::invalidateLiveness(), and llvm::MachineRegisterInfo::leaveSSA().
|
inline |
Definition at line 213 of file MachineFunction.h.
|
inline |
Definition at line 197 of file MachineFunction.h.
References P.
Referenced by createFrameHelperMachineFunction(), llvm::ThunkInserter< Derived, InsertedThunksTy >::createThunkFunction(), llvm::RegAllocFastPass::getClearedProperties(), llvm::Legalizer::getClearedProperties(), llvm::RegBankSelect::getClearedProperties(), llvm::RAGreedy::getClearedProperties(), llvm::RegAllocFastPass::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(), llvm::RegAllocFastPass::getSetProperties(), llvm::TwoAddressInstructionPass::getSetProperties(), llvm::InstructionSelect::getSetProperties(), llvm::Legalizer::getSetProperties(), llvm::RegBankSelect::getSetProperties(), llvm::MIRParserImpl::initializeMachineFunction(), llvm::reportGISelFailure(), llvm::scavengeFrameVirtualRegs(), and llvm::InstructionSelect::selectMachineFunction().
|
inline |
Definition at line 225 of file MachineFunction.h.