class InstructionSelect

Declaration

class InstructionSelect : public MachineFunctionPass { /* full declaration omitted */ };

Description

This pass is responsible for selecting generic machine instructions to target-specific instructions. It relies on the InstructionSelector provided by the target. Selection is done by examining blocks in post-order, and instructions in reverse order.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/InstructionSelect.h:27

Inherits from: MachineFunctionPass

Member Variables

public static char ID

Method Overview

Inherited from MachineFunctionPass:

Inherited from FunctionPass:

Inherited from Pass:

Methods

InstructionSelect()

Declared at: llvm/include/llvm/CodeGen/GlobalISel/InstructionSelect.h:46

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/InstructionSelect.h:32

Parameters

llvm::AnalysisUsage& AU

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/InstructionSelect.h:30

llvm::MachineFunctionProperties
getRequiredProperties() const

Declared at: llvm/include/llvm/CodeGen/GlobalISel/InstructionSelect.h:34

llvm::MachineFunctionProperties getSetProperties()
    const

Declared at: llvm/include/llvm/CodeGen/GlobalISel/InstructionSelect.h:41

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/InstructionSelect.h:48

Parameters

llvm::MachineFunction& MF