class RegBankSelect

Declaration

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

Declared at: llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h:90

Inherits from: MachineFunctionPass

Member Variables

public static char ID

Method Overview

Inherited from MachineFunctionPass:

Inherited from FunctionPass:

Inherited from Pass:

Methods

RegBankSelect(
    llvm::RegBankSelect::Mode RunningMode = Fast)

Description

Create a RegBankSelect pass with the specified \p RunningMode.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h:619

Parameters

llvm::RegBankSelect::Mode RunningMode = Fast

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/RegBankSelect.h:623

Parameters

llvm::AnalysisUsage& AU

llvm::MachineFunctionProperties
getClearedProperties() const

Declared at: llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h:636

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/RegBankSelect.h:621

llvm::MachineFunctionProperties
getRequiredProperties() const

Declared at: llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h:625

llvm::MachineFunctionProperties getSetProperties()
    const

Declared at: llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h:631

bool runOnMachineFunction(
    llvm::MachineFunction& MF)

Description

Walk through \p MF and assign a register bank to every virtual register that are still mapped to nothing. The target needs to provide a RegisterBankInfo and in particular override RegisterBankInfo::getInstrMapping. Simplified algo:

Declared at: llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h:664

Parameters

llvm::MachineFunction& MF