class MachineFunctionPass

Declaration

class MachineFunctionPass : public FunctionPass { /* 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/MachineFunctionPass.h:30

Inherits from: FunctionPass

Member Variables

private llvm::MachineFunctionProperties RequiredProperties
private llvm::MachineFunctionProperties SetProperties
private llvm::MachineFunctionProperties ClearedProperties

Method Overview

Inherited from FunctionPass:

Inherited from Pass:

Methods

MachineFunctionPass(char& ID)

Declared at: llvm/include/llvm/CodeGen/MachineFunctionPass.h:41

Parameters

char& ID

llvm::Pass* createPrinterPass(
    llvm::raw_ostream& O,
    const std::string& Banner) const

Description

createPrinterPass - Get a machine function printer pass.

Declared at: llvm/include/llvm/CodeGen/MachineFunctionPass.h:72

Parameters

llvm::raw_ostream& O
const std::string& Banner

bool doInitialization(llvm::Module&)

Description

doInitialization - Virtual method overridden by subclasses to do any necessary initialization before any pass is run.

Declared at: llvm/include/llvm/CodeGen/MachineFunctionPass.h:32

Parameters

llvm::Module&

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/MachineFunctionPass.h:54

Parameters

llvm::AnalysisUsage& AU

virtual llvm::MachineFunctionProperties
getClearedProperties() const

Declared at: llvm/include/llvm/CodeGen/MachineFunctionPass.h:62

virtual llvm::MachineFunctionProperties
getRequiredProperties() const

Declared at: llvm/include/llvm/CodeGen/MachineFunctionPass.h:56

virtual llvm::MachineFunctionProperties
getSetProperties() const

Declared at: llvm/include/llvm/CodeGen/MachineFunctionPass.h:59

bool runOnFunction(llvm::Function& F)

Description

runOnFunction - Virtual method overriden by subclasses to do the per-function processing of the pass.

Declared at: llvm/include/llvm/CodeGen/MachineFunctionPass.h:75

Parameters

llvm::Function& F

virtual 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/MachineFunctionPass.h:46

Parameters

llvm::MachineFunction& MF