class Legalizer
Declaration
class Legalizer : public MachineFunctionPass { /* full declaration omitted */ };
Description
MachineFunctionPass - This class adapts the FunctionPass interface to allow convenient creation of passes that operate on the MachineFunction representation. Instead of overriding runOnFunction, subclasses override runOnMachineFunction.
Declared at: llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h:30
Inherits from: MachineFunctionPass
Member Variables
- public static char ID
Method Overview
- public Legalizer()
- public bool combineExtracts(llvm::MachineInstr & MI, llvm::MachineRegisterInfo & MRI, const llvm::TargetInstrInfo & TII)
- public void getAnalysisUsage(llvm::AnalysisUsage & AU) const
- public llvm::MachineFunctionProperties getClearedProperties() const
- public llvm::StringRef getPassName() const
- public llvm::MachineFunctionProperties getRequiredProperties() const
- public llvm::MachineFunctionProperties getSetProperties() const
- public static llvm::Legalizer::MFResult legalizeMachineFunction(llvm::MachineFunction & MF, const llvm::LegalizerInfo & LI, ArrayRef<llvm::GISelChangeObserver *> AuxObservers, llvm::MachineIRBuilder & MIRBuilder)
- public bool runOnMachineFunction(llvm::MachineFunction & MF)
Inherited from MachineFunctionPass:
- public doInitialization
- protected getAnalysisUsage
- protected getClearedProperties
- protected getRequiredProperties
- protected getSetProperties
- protected runOnMachineFunction
Inherited from FunctionPass:
- public assignPassManager
- public createPrinterPass
- public getPotentialPassManagerType
- public runOnFunction
- protected skipFunction
Inherited from Pass:
- public assignPassManager
- public createPass
- public createPrinterPass
- public doFinalization
- public doInitialization
- public dump
- public dumpPassStructure
- public getAdjustedAnalysisPointer
- public getAnalysis
- public getAnalysis
- public getAnalysisID
- public getAnalysisID
- public getAnalysisIfAvailable
- public getAnalysisUsage
- public getAsImmutablePass
- public getAsPMDataManager
- public getPassID
- public getPassKind
- public getPassName
- public getPotentialPassManagerType
- public getResolver
- public lookupPassInfo
- public lookupPassInfo
- public mustPreserveAnalysisID
- public preparePassManager
- public print
- public releaseMemory
- public setResolver
- public verifyAnalysis
Methods
¶Legalizer()
Legalizer()
Declared at: llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h:45
¶bool combineExtracts(
llvm::MachineInstr& MI,
llvm::MachineRegisterInfo& MRI,
const llvm::TargetInstrInfo& TII)
bool combineExtracts(
llvm::MachineInstr& MI,
llvm::MachineRegisterInfo& MRI,
const llvm::TargetInstrInfo& TII)
Declared at: llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h:66
Parameters
- llvm::MachineInstr& MI
- llvm::MachineRegisterInfo& MRI
- const llvm::TargetInstrInfo& TII
¶void getAnalysisUsage(
llvm::AnalysisUsage& AU) const
void getAnalysisUsage(
llvm::AnalysisUsage& AU) const
Description
getAnalysisUsage - Subclasses that override getAnalysisUsage must call this. For MachineFunctionPasses, calling AU.preservesCFG() indicates that the pass does not modify the MachineBasicBlock CFG.
Declared at: llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h:49
Parameters
¶llvm::MachineFunctionProperties
getClearedProperties() const
llvm::MachineFunctionProperties
getClearedProperties() const
Declared at: llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h:61
¶llvm::StringRef getPassName() const
llvm::StringRef getPassName() const
Description
getPassName - Return a nice clean name for a pass. This usually implemented in terms of the name that is registered by one of the Registration templates, but can be overloaded directly.
Declared at: llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h:47
¶llvm::MachineFunctionProperties
getRequiredProperties() const
llvm::MachineFunctionProperties
getRequiredProperties() const
Declared at: llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h:51
¶llvm::MachineFunctionProperties getSetProperties()
const
llvm::MachineFunctionProperties getSetProperties()
const
Declared at: llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h:56
¶static llvm::Legalizer::MFResult
legalizeMachineFunction(
llvm::MachineFunction& MF,
const llvm::LegalizerInfo& LI,
ArrayRef<llvm::GISelChangeObserver*>
AuxObservers,
llvm::MachineIRBuilder& MIRBuilder)
static llvm::Legalizer::MFResult
legalizeMachineFunction(
llvm::MachineFunction& MF,
const llvm::LegalizerInfo& LI,
ArrayRef<llvm::GISelChangeObserver*>
AuxObservers,
llvm::MachineIRBuilder& MIRBuilder)
Declared at: llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h:72
Parameters
- llvm::MachineFunction& MF
- const llvm::LegalizerInfo& LI
- ArrayRef<llvm::GISelChangeObserver*> AuxObservers
- llvm::MachineIRBuilder& MIRBuilder
¶bool runOnMachineFunction(
llvm::MachineFunction& MF)
bool runOnMachineFunction(
llvm::MachineFunction& MF)
Description
runOnMachineFunction - This method must be overloaded to perform the desired machine code transformation or analysis.
Declared at: llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h:69