LLVM: llvm::M68kSubtarget Class Reference (original) (raw)
#include "[Target/M68k/M68kSubtarget.h](M68kSubtarget%5F8h%5Fsource.html)"
| Public Member Functions |
|
|
M68kSubtarget (const Triple &TT, StringRef CPU, StringRef FS, const M68kTargetMachine &_TM) |
|
This constructor initializes the data members to match that of the specified triple. |
|
~M68kSubtarget () override |
| void |
ParseSubtargetFeatures (StringRef CPU, StringRef TuneCPU, StringRef FS) |
|
Parses features string setting specified subtarget options. |
| bool |
atLeastM68000 () const |
| bool |
atLeastM68010 () const |
| bool |
atLeastM68020 () const |
| bool |
atLeastM68030 () const |
| bool |
atLeastM68040 () const |
| bool |
atLeastM68060 () const |
| bool |
hasFPU () const |
|
Floating point support. |
| bool |
atLeastM68881 () const |
| bool |
atLeastM68882 () const |
| bool |
useSmallSection () const |
| const Triple & |
getTargetTriple () const |
| bool |
isTargetELF () const |
| bool |
isLegalToCallImmediateAddr () const |
|
Return true if the subtarget allows calls to immediate address. |
| bool |
isPositionIndependent () const |
| bool |
isRegisterReservedByUser (Register R) const override |
| unsigned char |
classifyLocalReference (const GlobalValue *GV) const |
|
Classify a global variable reference for the current subtarget according to how we should reference it in a non-pcrel context. |
| unsigned char |
classifyGlobalReference (const GlobalValue *GV, const Module &M) const |
|
Classify a global variable reference for the current subtarget according to how we should reference it in a non-pcrel context. |
| unsigned char |
classifyGlobalReference (const GlobalValue *GV) const |
| unsigned char |
classifyExternalReference (const Module &M) const |
|
Classify a external variable reference for the current subtarget according to how we should reference it in a non-pcrel context. |
| unsigned char |
classifyGlobalFunctionReference (const GlobalValue *GV, const Module &M) const |
|
Classify a global function reference for the current subtarget. |
| unsigned char |
classifyGlobalFunctionReference (const GlobalValue *GV) const override |
| unsigned char |
classifyBlockAddressReference () const |
|
Classify a blockaddress reference for the current subtarget according to how we should reference it in a non-pcrel context. |
| unsigned |
getJumpTableEncoding () const |
| Align |
getStackAlignment () const |
|
TODO this must be controlled by options like -malign-int and -mshort. |
| unsigned |
getSlotSize () const |
|
getSlotSize - Stack slot size in bytes. |
| M68kSubtarget & |
initializeSubtargetDependencies (StringRef CPU, Triple TT, StringRef FS, const M68kTargetMachine &TM) |
| const M68kInstrInfo * |
getInstrInfo () const override |
| const M68kFrameLowering * |
getFrameLowering () const override |
| const M68kRegisterInfo * |
getRegisterInfo () const override |
| const M68kTargetLowering * |
getTargetLowering () const override |
| const InstrItineraryData * |
getInstrItineraryData () const override |
| const SelectionDAGTargetInfo * |
getSelectionDAGInfo () const override |
| const CallLowering * |
getCallLowering () const override |
| InstructionSelector * |
getInstructionSelector () const override |
| const LegalizerInfo * |
getLegalizerInfo () const override |
| const RegisterBankInfo * |
getRegBankInfo () const override |
Definition at line 41 of file M68kSubtarget.h.
◆ FPKindEnum
◆ SubtargetEnum
This constructor initializes the data members to match that of the specified triple.
Definition at line 50 of file M68kSubtarget.cpp.
References CallLoweringInfo, llvm::createM68kInstructionSelector(), FrameLowering, getRegisterInfo(), getStackAlignment(), getTargetLowering(), initializeSubtargetDependencies(), InstrInfo, InstSelector, Legalizer, RegBankInfo, TargetTriple, TLInfo, TM, and TSInfo.
Referenced by initializeSubtargetDependencies().
◆ ~M68kSubtarget()
| M68kSubtarget::~M68kSubtarget ( ) |
overridedefault |
◆ atLeastM68000()
| bool llvm::M68kSubtarget::atLeastM68000 ( ) const |
inline |
◆ atLeastM68010()
| bool llvm::M68kSubtarget::atLeastM68010 ( ) const |
inline |
◆ atLeastM68020()
| bool llvm::M68kSubtarget::atLeastM68020 ( ) const |
inline |
◆ atLeastM68030()
| bool llvm::M68kSubtarget::atLeastM68030 ( ) const |
inline |
◆ atLeastM68040()
| bool llvm::M68kSubtarget::atLeastM68040 ( ) const |
inline |
◆ atLeastM68060()
| bool llvm::M68kSubtarget::atLeastM68060 ( ) const |
inline |
◆ atLeastM68881()
| bool llvm::M68kSubtarget::atLeastM68881 ( ) const |
inline |
◆ atLeastM68882()
| bool llvm::M68kSubtarget::atLeastM68882 ( ) const |
inline |
◆ classifyBlockAddressReference()
| unsigned char M68kSubtarget::classifyBlockAddressReference |
( |
) |
const |
◆ classifyExternalReference()
◆ classifyGlobalFunctionReference() [1/2]
◆ classifyGlobalFunctionReference() [2/2]
◆ classifyGlobalReference() [1/2]
◆ classifyGlobalReference() [2/2]
Classify a global variable reference for the current subtarget according to how we should reference it in a non-pcrel context.
Definition at line 238 of file M68kSubtarget.cpp.
References atLeastM68020(), classifyLocalReference(), isPositionIndependent(), llvm::CodeModel::Kernel, llvm::CodeModel::Large, llvm_unreachable, llvm::CodeModel::Medium, llvm::M68kII::MO_ABSOLUTE_ADDRESS, llvm::M68kII::MO_GOTOFF, llvm::M68kII::MO_GOTPCREL, llvm::M68kII::MO_PC_RELATIVE_ADDRESS, llvm::CodeModel::Small, and TM.
Referenced by classifyGlobalReference().
◆ classifyLocalReference()
Classify a global variable reference for the current subtarget according to how we should reference it in a non-pcrel context.
Definition at line 189 of file M68kSubtarget.cpp.
References atLeastM68020(), isPositionIndependent(), llvm::CodeModel::Kernel, llvm::CodeModel::Large, llvm_unreachable, llvm::CodeModel::Medium, llvm::M68kII::MO_ABSOLUTE_ADDRESS, llvm::M68kII::MO_GOTOFF, llvm::M68kII::MO_PC_RELATIVE_ADDRESS, llvm::CodeModel::Small, and TM.
Referenced by classifyExternalReference(), and classifyGlobalReference().
◆ getCallLowering()
◆ getFrameLowering()
◆ getInstrInfo()
◆ getInstrItineraryData()
◆ getInstructionSelector()
◆ getJumpTableEncoding()
| unsigned M68kSubtarget::getJumpTableEncoding |
( |
) |
const |
◆ getLegalizerInfo()
◆ getRegBankInfo()
◆ getRegisterInfo()
◆ getSelectionDAGInfo()
◆ getSlotSize()
| unsigned llvm::M68kSubtarget::getSlotSize ( ) const |
inline |
◆ getStackAlignment()
| Align llvm::M68kSubtarget::getStackAlignment ( ) const |
inline |
◆ getTargetLowering()
◆ getTargetTriple()
| const Triple & llvm::M68kSubtarget::getTargetTriple ( ) const |
inline |
◆ hasFPU()
| bool llvm::M68kSubtarget::hasFPU ( ) const |
inline |
◆ initializeSubtargetDependencies()
| bool M68kSubtarget::isLegalToCallImmediateAddr |
( |
) |
const |
Return true if the subtarget allows calls to immediate address.
Definition at line 92 of file M68kSubtarget.cpp.
◆ isPositionIndependent()
| bool M68kSubtarget::isPositionIndependent |
( |
) |
const |
◆ isRegisterReservedByUser()
| bool llvm::M68kSubtarget::isRegisterReservedByUser ( Register R) const |
inlineoverride |
◆ isTargetELF()
| bool llvm::M68kSubtarget::isTargetELF ( ) const |
inline |
◆ ParseSubtargetFeatures()
◆ useSmallSection()
| bool llvm::M68kSubtarget::useSmallSection ( ) const |
inline |
◆ CallLoweringInfo
| std::unique_ptr<CallLowering> llvm::M68kSubtarget::CallLoweringInfo |
protected |
◆ FPUKind
| std::optional<FPKindEnum> llvm::M68kSubtarget::FPUKind |
protected |
◆ FrameLowering
◆ InstrInfo
◆ InstrItins
◆ InstSelector
◆ Legalizer
◆ RegBankInfo
◆ stackAlignment
| unsigned llvm::M68kSubtarget::stackAlignment = 8 |
protected |
◆ SubtargetKind
◆ TargetTriple
| Triple llvm::M68kSubtarget::TargetTriple |
protected |
◆ TLInfo
◆ TM
◆ TSInfo
◆ UserReservedRegister
◆ UseSmallSection
| bool llvm::M68kSubtarget::UseSmallSection = true |
protected |
The documentation for this class was generated from the following files: