LLVM 20.0.0git
|
#include "Target/LoongArch/LoongArchSubtarget.h"
Public Member Functions | |
LoongArchSubtarget (const Triple &TT, StringRef CPU, StringRef TuneCPU, StringRef FS, StringRef ABIName, const TargetMachine &TM) | |
void | ParseSubtargetFeatures (StringRef CPU, StringRef TuneCPU, StringRef FS) |
const LoongArchFrameLowering * | getFrameLowering () const override |
const LoongArchInstrInfo * | getInstrInfo () const override |
const LoongArchRegisterInfo * | getRegisterInfo () const override |
const LoongArchTargetLowering * | getTargetLowering () const override |
const SelectionDAGTargetInfo * | getSelectionDAGInfo () const override |
bool | is64Bit () const |
MVT | getGRLenVT () const |
unsigned | getGRLen () const |
LoongArchABI::ABI | getTargetABI () const |
bool | isSoftFPABI () const |
bool | isXRaySupported () const override |
Align | getPrefFunctionAlignment () const |
Align | getPrefLoopAlignment () const |
unsigned | getMaxBytesForAlignment () const |
unsigned | getMaxInterleaveFactor () const |
bool | enableMachineScheduler () const override |
Definition at line 32 of file LoongArchSubtarget.h.
LoongArchSubtarget::LoongArchSubtarget | ( | const Triple & | TT, |
StringRef | CPU, | ||
StringRef | TuneCPU, | ||
StringRef | FS, | ||
StringRef | ABIName, | ||
const TargetMachine & | TM | ||
) |
Definition at line 84 of file LoongArchSubtarget.cpp.
|
inlineoverride |
Definition at line 107 of file LoongArchSubtarget.h.
|
inlineoverride |
Definition at line 76 of file LoongArchSubtarget.h.
|
inline |
Definition at line 96 of file LoongArchSubtarget.h.
Referenced by llvm::LoongArchTargetLowering::decomposeMulByConstant(), llvm::LoongArchTargetLowering::emitMaskedAtomicCmpXchgIntrinsic(), llvm::LoongArchTargetLowering::emitMaskedAtomicRMWIntrinsic(), llvm::LoongArchTargetLowering::LoongArchTargetLowering(), llvm::LoongArchTargetLowering::LowerFormalArguments(), llvm::LoongArchDAGToDAGISel::selectShiftMaskGRLen(), and llvm::LoongArchTargetLowering::shouldExtendTypeInLibCall().
|
inline |
Definition at line 95 of file LoongArchSubtarget.h.
Referenced by legalizeIntrinsicImmArg(), llvm::LoongArchTargetLowering::LoongArchTargetLowering(), llvm::LoongArchTargetLowering::LowerCall(), llvm::LoongArchTargetLowering::LowerFormalArguments(), performANDCombine(), performINTRINSIC_WO_CHAINCombine(), performORCombine(), performSRLCombine(), llvm::LoongArchTargetLowering::ReplaceNodeResults(), replaceVecCondBranchResults(), replaceVPICKVE2GRResults(), llvm::LoongArchDAGToDAGISel::SelectBaseAddr(), llvm::LoongArchDAGToDAGISel::SelectInlineAsmMemoryOperand(), and llvm::LoongArchDAGToDAGISel::selectVSplatImm().
|
inlineoverride |
|
inline |
Definition at line 105 of file LoongArchSubtarget.h.
Referenced by llvm::LoongArchTargetLowering::LoongArchTargetLowering().
|
inline |
Definition at line 106 of file LoongArchSubtarget.h.
Referenced by llvm::LoongArchTTIImpl::getMaxInterleaveFactor().
|
inline |
Definition at line 103 of file LoongArchSubtarget.h.
Referenced by llvm::LoongArchTargetLowering::LoongArchTargetLowering().
|
inline |
Definition at line 104 of file LoongArchSubtarget.h.
Referenced by llvm::LoongArchTargetLowering::LoongArchTargetLowering().
|
inlineoverride |
Definition at line 80 of file LoongArchSubtarget.h.
Referenced by llvm::LoongArchFrameLowering::emitEpilogue(), llvm::LoongArchFrameLowering::emitPrologue(), llvm::LoongArchTargetLowering::getRegisterByName(), llvm::LoongArchFrameLowering::hasBP(), llvm::LoongArchTargetLowering::LoongArchTargetLowering(), llvm::LoongArchTargetLowering::LowerCall(), and llvm::LoongArchFrameLowering::processFunctionBeforeFrameFinalized().
|
inlineoverride |
Definition at line 86 of file LoongArchSubtarget.h.
|
inline |
Definition at line 97 of file LoongArchSubtarget.h.
|
inlineoverride |
Definition at line 83 of file LoongArchSubtarget.h.
|
inline |
Definition at line 94 of file LoongArchSubtarget.h.
Referenced by llvm::LoongArchRegisterInfo::eliminateFrameIndex(), llvm::LoongArchFrameLowering::emitPrologue(), llvm::LoongArchTTIImpl::getRegisterBitWidth(), llvm::LoongArchInstrInfo::insertIndirectBranch(), llvm::LoongArchTargetLowering::isSExtCheaperThanZExt(), isXRaySupported(), llvm::LoongArchTargetLowering::LoongArchTargetLowering(), llvm::LoongArchTargetLowering::LowerCall(), llvm::LoongArchInstrInfo::movImm(), llvm::LoongArchTargetLowering::ReplaceNodeResults(), llvm::LoongArchTargetLowering::shouldAlignPointerArgs(), llvm::LoongArchTargetLowering::shouldSignExtendTypeInLibCall(), and llvm::LoongArchTargetLowering::signExtendConstant().
|
inline |
Definition at line 98 of file LoongArchSubtarget.h.
References llvm::LoongArchABI::ABI_ILP32S, and llvm::LoongArchABI::ABI_LP64S.
Referenced by llvm::LoongArchTargetLowering::shouldExtendTypeInLibCall().
|
inlineoverride |
Definition at line 102 of file LoongArchSubtarget.h.
References is64Bit().
void llvm::LoongArchSubtarget::ParseSubtargetFeatures | ( | StringRef | CPU, |
StringRef | TuneCPU, | ||
StringRef | FS | ||
) |