LLVM  12.0.0git
Public Member Functions | Protected Attributes | List of all members
llvm::RISCVSubtarget Class Reference

#include "Target/RISCV/RISCVSubtarget.h"

Inheritance diagram for llvm::RISCVSubtarget:
Inheritance graph
[legend]
Collaboration diagram for llvm::RISCVSubtarget:
Collaboration graph
[legend]

Public Member Functions

 RISCVSubtarget (const Triple &TT, StringRef CPU, StringRef FS, StringRef ABIName, const TargetMachine &TM)
 
void ParseSubtargetFeatures (StringRef CPU, StringRef FS)
 
const RISCVFrameLoweringgetFrameLowering () const override
 
const RISCVInstrInfogetInstrInfo () const override
 
const RISCVRegisterInfogetRegisterInfo () const override
 
const RISCVTargetLoweringgetTargetLowering () const override
 
const SelectionDAGTargetInfogetSelectionDAGInfo () const override
 
bool enableMachineScheduler () const override
 
bool hasStdExtM () const
 
bool hasStdExtA () const
 
bool hasStdExtF () const
 
bool hasStdExtD () const
 
bool hasStdExtC () const
 
bool hasStdExtB () const
 
bool hasStdExtZbb () const
 
bool hasStdExtZbc () const
 
bool hasStdExtZbe () const
 
bool hasStdExtZbf () const
 
bool hasStdExtZbm () const
 
bool hasStdExtZbp () const
 
bool hasStdExtZbr () const
 
bool hasStdExtZbs () const
 
bool hasStdExtZbt () const
 
bool hasStdExtZbproposedc () const
 
bool hasStdExtV () const
 
bool is64Bit () const
 
bool isRV32E () const
 
bool enableLinkerRelax () const
 
bool enableRVCHintInstrs () const
 
bool enableSaveRestore () const
 
MVT getXLenVT () const
 
unsigned getXLen () const
 
RISCVABI::ABI getTargetABI () const
 
bool isRegisterReservedByUser (Register i) const
 
const CallLoweringgetCallLowering () const override
 
InstructionSelectorgetInstructionSelector () const override
 
const LegalizerInfogetLegalizerInfo () const override
 
const RegisterBankInfogetRegBankInfo () const override
 

Protected Attributes

std::unique_ptr< CallLoweringCallLoweringInfo
 
std::unique_ptr< InstructionSelectorInstSelector
 
std::unique_ptr< LegalizerInfoLegalizer
 
std::unique_ptr< RegisterBankInfoRegBankInfo
 

Detailed Description

Definition at line 35 of file RISCVSubtarget.h.

Constructor & Destructor Documentation

◆ RISCVSubtarget()

RISCVSubtarget::RISCVSubtarget ( const Triple TT,
StringRef  CPU,
StringRef  FS,
StringRef  ABIName,
const TargetMachine TM 
)

Member Function Documentation

◆ enableLinkerRelax()

bool llvm::RISCVSubtarget::enableLinkerRelax ( ) const
inline

Definition at line 117 of file RISCVSubtarget.h.

◆ enableMachineScheduler()

bool llvm::RISCVSubtarget::enableMachineScheduler ( ) const
inlineoverride

Definition at line 97 of file RISCVSubtarget.h.

◆ enableRVCHintInstrs()

bool llvm::RISCVSubtarget::enableRVCHintInstrs ( ) const
inline

Definition at line 118 of file RISCVSubtarget.h.

◆ enableSaveRestore()

bool llvm::RISCVSubtarget::enableSaveRestore ( ) const
inline

Definition at line 119 of file RISCVSubtarget.h.

◆ getCallLowering()

const CallLowering * RISCVSubtarget::getCallLowering ( ) const
override

Definition at line 65 of file RISCVSubtarget.cpp.

References CallLoweringInfo.

◆ getFrameLowering()

const RISCVFrameLowering* llvm::RISCVSubtarget::getFrameLowering ( ) const
inlineoverride

Definition at line 84 of file RISCVSubtarget.h.

◆ getInstrInfo()

const RISCVInstrInfo* llvm::RISCVSubtarget::getInstrInfo ( ) const
inlineoverride

◆ getInstructionSelector()

InstructionSelector * RISCVSubtarget::getInstructionSelector ( ) const
override

Definition at line 69 of file RISCVSubtarget.cpp.

References InstSelector.

◆ getLegalizerInfo()

const LegalizerInfo * RISCVSubtarget::getLegalizerInfo ( ) const
override

Definition at line 73 of file RISCVSubtarget.cpp.

◆ getRegBankInfo()

const RegisterBankInfo * RISCVSubtarget::getRegBankInfo ( ) const
override

Definition at line 77 of file RISCVSubtarget.cpp.

References RegBankInfo.

◆ getRegisterInfo()

const RISCVRegisterInfo* llvm::RISCVSubtarget::getRegisterInfo ( ) const
inlineoverride

◆ getSelectionDAGInfo()

const SelectionDAGTargetInfo* llvm::RISCVSubtarget::getSelectionDAGInfo ( ) const
inlineoverride

Definition at line 94 of file RISCVSubtarget.h.

◆ getTargetABI()

RISCVABI::ABI llvm::RISCVSubtarget::getTargetABI ( ) const
inline

◆ getTargetLowering()

const RISCVTargetLowering* llvm::RISCVSubtarget::getTargetLowering ( ) const
inlineoverride

Definition at line 91 of file RISCVSubtarget.h.

Referenced by RISCVSubtarget().

◆ getXLen()

unsigned llvm::RISCVSubtarget::getXLen ( ) const
inline

◆ getXLenVT()

MVT llvm::RISCVSubtarget::getXLenVT ( ) const
inline

◆ hasStdExtA()

bool llvm::RISCVSubtarget::hasStdExtA ( ) const
inline

Definition at line 99 of file RISCVSubtarget.h.

Referenced by llvm::RISCVTargetLowering::RISCVTargetLowering().

◆ hasStdExtB()

bool llvm::RISCVSubtarget::hasStdExtB ( ) const
inline

Definition at line 103 of file RISCVSubtarget.h.

◆ hasStdExtC()

bool llvm::RISCVSubtarget::hasStdExtC ( ) const
inline

Definition at line 102 of file RISCVSubtarget.h.

Referenced by llvm::RISCVTargetLowering::RISCVTargetLowering().

◆ hasStdExtD()

bool llvm::RISCVSubtarget::hasStdExtD ( ) const
inline

◆ hasStdExtF()

bool llvm::RISCVSubtarget::hasStdExtF ( ) const
inline

◆ hasStdExtM()

bool llvm::RISCVSubtarget::hasStdExtM ( ) const
inline

◆ hasStdExtV()

bool llvm::RISCVSubtarget::hasStdExtV ( ) const
inline

Definition at line 114 of file RISCVSubtarget.h.

◆ hasStdExtZbb()

bool llvm::RISCVSubtarget::hasStdExtZbb ( ) const
inline

Definition at line 104 of file RISCVSubtarget.h.

Referenced by llvm::RISCVTargetLowering::RISCVTargetLowering().

◆ hasStdExtZbc()

bool llvm::RISCVSubtarget::hasStdExtZbc ( ) const
inline

Definition at line 105 of file RISCVSubtarget.h.

◆ hasStdExtZbe()

bool llvm::RISCVSubtarget::hasStdExtZbe ( ) const
inline

Definition at line 106 of file RISCVSubtarget.h.

◆ hasStdExtZbf()

bool llvm::RISCVSubtarget::hasStdExtZbf ( ) const
inline

Definition at line 107 of file RISCVSubtarget.h.

◆ hasStdExtZbm()

bool llvm::RISCVSubtarget::hasStdExtZbm ( ) const
inline

Definition at line 108 of file RISCVSubtarget.h.

◆ hasStdExtZbp()

bool llvm::RISCVSubtarget::hasStdExtZbp ( ) const
inline

Definition at line 109 of file RISCVSubtarget.h.

Referenced by llvm::RISCVTargetLowering::RISCVTargetLowering().

◆ hasStdExtZbproposedc()

bool llvm::RISCVSubtarget::hasStdExtZbproposedc ( ) const
inline

Definition at line 113 of file RISCVSubtarget.h.

◆ hasStdExtZbr()

bool llvm::RISCVSubtarget::hasStdExtZbr ( ) const
inline

Definition at line 110 of file RISCVSubtarget.h.

◆ hasStdExtZbs()

bool llvm::RISCVSubtarget::hasStdExtZbs ( ) const
inline

Definition at line 111 of file RISCVSubtarget.h.

◆ hasStdExtZbt()

bool llvm::RISCVSubtarget::hasStdExtZbt ( ) const
inline

Definition at line 112 of file RISCVSubtarget.h.

Referenced by llvm::RISCVTargetLowering::RISCVTargetLowering().

◆ is64Bit()

bool llvm::RISCVSubtarget::is64Bit ( ) const
inline

◆ isRegisterReservedByUser()

bool llvm::RISCVSubtarget::isRegisterReservedByUser ( Register  i) const
inline

◆ isRV32E()

bool llvm::RISCVSubtarget::isRV32E ( ) const
inline

Definition at line 116 of file RISCVSubtarget.h.

Referenced by llvm::RISCVTargetLowering::RISCVTargetLowering().

◆ ParseSubtargetFeatures()

void llvm::RISCVSubtarget::ParseSubtargetFeatures ( StringRef  CPU,
StringRef  FS 
)

Member Data Documentation

◆ CallLoweringInfo

std::unique_ptr<CallLowering> llvm::RISCVSubtarget::CallLoweringInfo
protected

Definition at line 130 of file RISCVSubtarget.h.

Referenced by getCallLowering(), and RISCVSubtarget().

◆ InstSelector

std::unique_ptr<InstructionSelector> llvm::RISCVSubtarget::InstSelector
protected

Definition at line 131 of file RISCVSubtarget.h.

Referenced by getInstructionSelector(), and RISCVSubtarget().

◆ Legalizer

std::unique_ptr<LegalizerInfo> llvm::RISCVSubtarget::Legalizer
protected

Definition at line 132 of file RISCVSubtarget.h.

◆ RegBankInfo

std::unique_ptr<RegisterBankInfo> llvm::RISCVSubtarget::RegBankInfo
protected

Definition at line 133 of file RISCVSubtarget.h.

Referenced by getRegBankInfo(), and RISCVSubtarget().


The documentation for this class was generated from the following files: