LLVM 22.0.0git
|
Classes | |
struct | CPUInfo |
struct | CPUModel |
struct | NDSVLNPseudo |
struct | RISCVMaskedPseudoInfo |
struct | VLEPseudo |
struct | VLSEGPseudo |
struct | VLX_VSXPseudo |
struct | VLXSEGPseudo |
struct | VSEPseudo |
struct | VSSEGPseudo |
struct | VSXSEGPseudo |
struct | VXMemOpInfo |
Typedefs | |
using | Specifier = uint16_t |
Variables | |
static constexpr unsigned | RVVBitsPerBlock = 64 |
static constexpr unsigned | RVVBytesPerBlock = RVVBitsPerBlock / 8 |
const RegisterBankInfo::PartialMapping | PartMappings [] |
const RegisterBankInfo::ValueMapping | ValueMappings [] |
static constexpr int64_t | VLMaxSentinel = -1LL |
static constexpr unsigned | FPMASK_Negative_Infinity = 0x001 |
static constexpr unsigned | FPMASK_Negative_Normal = 0x002 |
static constexpr unsigned | FPMASK_Negative_Subnormal = 0x004 |
static constexpr unsigned | FPMASK_Negative_Zero = 0x008 |
static constexpr unsigned | FPMASK_Positive_Zero = 0x010 |
static constexpr unsigned | FPMASK_Positive_Subnormal = 0x020 |
static constexpr unsigned | FPMASK_Positive_Normal = 0x040 |
static constexpr unsigned | FPMASK_Positive_Infinity = 0x080 |
static constexpr unsigned | FPMASK_Signaling_NaN = 0x100 |
static constexpr unsigned | FPMASK_Quiet_NaN = 0x200 |
constexpr CPUInfo | RISCVCPUInfo [] |
using llvm::RISCV::Specifier = uint16_t |
Definition at line 35 of file RISCVMCAsmInfo.h.
anonymous enum |
Enumerator | |
---|---|
S_None | |
S_LO | |
S_PCREL_LO | |
S_TPREL_LO | |
S_QC_ABS20 |
Definition at line 38 of file RISCVMCAsmInfo.h.
enum llvm::RISCV::CPUKind : unsigned |
Definition at line 22 of file RISCVTargetParser.cpp.
enum llvm::RISCV::Fixups |
Definition at line 19 of file RISCVFixupKinds.h.
Enumerator | |
---|---|
PMI_GPRB32 | |
PMI_GPRB64 | |
PMI_FPRB16 | |
PMI_FPRB32 | |
PMI_FPRB64 | |
PMI_VRB64 | |
PMI_VRB128 | |
PMI_VRB256 | |
PMI_VRB512 |
Definition at line 42 of file RISCVRegisterBankInfo.cpp.
Enumerator | |
---|---|
InvalidIdx | |
GPRB32Idx | |
GPRB64Idx | |
FPRB16Idx | |
FPRB32Idx | |
FPRB64Idx | |
VRB64Idx | |
VRB128Idx | |
VRB256Idx | |
VRB512Idx |
Definition at line 95 of file RISCVRegisterBankInfo.cpp.
void llvm::RISCV::fillValidCPUArchList | ( | SmallVectorImpl< StringRef > & | Values, |
bool | IsRV64 ) |
Definition at line 108 of file RISCVTargetParser.cpp.
References llvm::CallingConv::C, llvm::SmallVectorImpl< T >::emplace_back(), and RISCVCPUInfo.
void llvm::RISCV::fillValidTuneCPUArchList | ( | SmallVectorImpl< StringRef > & | Values, |
bool | IsRV64 ) |
Definition at line 115 of file RISCVTargetParser.cpp.
References llvm::CallingConv::C, llvm::SmallVectorImpl< T >::emplace_back(), and RISCVCPUInfo.
ArrayRef< MCPhysReg > llvm::RISCV::getArgGPRs | ( | const RISCVABI::ABI | ABI | ) |
Definition at line 127 of file RISCVCallingConv.cpp.
References llvm::RISCVABI::ABI_ILP32E, llvm::RISCVABI::ABI_LP64E, and llvm::ArrayRef().
Referenced by llvm::CC_RISCV(), CC_RISCVAssign2XLen(), and llvm::RISCVTargetLowering::LowerFormalArguments().
Definition at line 43 of file RISCVTargetParser.cpp.
References llvm::CallingConv::C, and RISCVCPUInfo.
Referenced by getCPUModel(), getMArchFromMcpu(), hasFastScalarUnalignedAccess(), hasFastVectorUnalignedAccess(), and parseCPU().
Definition at line 62 of file RISCVTargetParser.cpp.
References getCPUInfoByName(), and Info.
Referenced by hasValidCPUModel().
Definition at line 69 of file RISCVTargetParser.cpp.
References llvm::CallingConv::C, and RISCVCPUInfo.
unsigned llvm::RISCV::getDestLog2EEW | ( | const MCInstrDesc & | Desc, |
unsigned | Log2SEW ) |
Definition at line 4813 of file RISCVInstrInfo.cpp.
References assert(), llvm::RISCVII::DestEEWMask, llvm::RISCVII::DestEEWShift, and Scaled.
Referenced by INITIALIZE_PASS().
void llvm::RISCV::getFeaturesForCPU | ( | StringRef | CPU, |
SmallVectorImpl< std::string > & | EnabledFeatures, | ||
bool | NeedPlus = false ) |
Definition at line 125 of file RISCVTargetParser.cpp.
References llvm::SmallVectorImpl< T >::clear(), llvm::errorToBool(), F, getMArchFromMcpu(), llvm::RISCVISAInfo::parseArchString(), and llvm::SmallVectorTemplateBase< T, bool >::push_back().
Definition at line 101 of file RISCVTargetParser.cpp.
References getCPUInfoByName(), and Info.
Referenced by getFeaturesForCPU().
Definition at line 4805 of file RISCVInstrInfo.cpp.
References llvm::RVV.
Referenced by llvm::RISCVInstrInfo::copyPhysRegVector(), getFoldedOpcode(), llvm::RISCVInstrInfo::getReassociateOperandIndices(), INITIALIZE_PASS(), llvm::RISCVInstrInfo::isHighLatencyDef(), llvm::RISCVInstrInfo::isReallyTriviallyReMaterializable(), isSegmentedStoreInstr(), vectorPseudoHasAllNBitUsers(), and vectorPseudoHasAllNBitUsers().
Definition at line 46 of file RISCVMCExpr.cpp.
References llvm_unreachable, S_LO, S_None, S_PCREL_LO, S_QC_ABS20, and S_TPREL_LO.
Referenced by llvm::RISCVMCAsmInfo::printSpecifierExpr().
std::optional< unsigned > llvm::RISCV::getVectorLowDemandedScalarBits | ( | unsigned | Opcode, |
unsigned | Log2SEW ) |
Definition at line 4688 of file RISCVInstrInfo.cpp.
Referenced by vectorPseudoHasAllNBitUsers(), and vectorPseudoHasAllNBitUsers().
bool llvm::RISCV::hasEqualFRM | ( | const MachineInstr & | MI1, |
const MachineInstr & | MI2 ) |
Definition at line 4675 of file RISCVInstrInfo.cpp.
References llvm::MachineOperand::getImm(), llvm::MachineInstr::getOpcode(), and llvm::MachineInstr::getOperand().
Referenced by canCombineFPFusedMultiply(), and llvm::RISCVInstrInfo::hasReassociableSibling().
Definition at line 50 of file RISCVTargetParser.cpp.
References getCPUInfoByName(), and Info.
Definition at line 55 of file RISCVTargetParser.cpp.
References getCPUInfoByName(), and Info.
Definition at line 60 of file RISCVTargetParser.cpp.
References getCPUModel(), and llvm::RISCV::CPUModel::isValid().
bool llvm::RISCV::isRVVSpill | ( | const MachineInstr & | MI | ) |
Definition at line 4624 of file RISCVInstrInfo.cpp.
References getLMULForRVVWholeLoadStore(), isRVVSpillForZvlsseg(), and MI.
Referenced by llvm::RISCVRegisterInfo::eliminateFrameIndex(), and getScavSlotsNumForRVV().
std::optional< std::pair< unsigned, unsigned > > llvm::RISCV::isRVVSpillForZvlsseg | ( | unsigned | Opcode | ) |
Definition at line 4635 of file RISCVInstrInfo.cpp.
Referenced by isRVVSpill(), and llvm::RISCVRegisterInfo::lowerSegmentSpillReload().
bool llvm::RISCV::isVLKnownLE | ( | const MachineOperand & | LHS, |
const MachineOperand & | RHS ) |
Given two VL operands, do we know that LHS <= RHS?
Given two VL operands, do we know that LHS <= RHS? Must be used in SSA form.
Definition at line 4838 of file RISCVInstrInfo.cpp.
References assert(), getEffectiveImm(), and VLMaxSentinel.
Definition at line 79 of file RISCVTargetParser.cpp.
References getCPUInfoByName(), and Info.
Referenced by parseTuneCPU().
RISCV::Specifier llvm::RISCV::parseSpecifierName | ( | StringRef | name | ) |
Definition at line 23 of file RISCVMCExpr.cpp.
References llvm::StringSwitch< T, R >::Case(), llvm::StringSwitch< T, R >::Default(), name, S_LO, S_PCREL_LO, S_QC_ABS20, and S_TPREL_LO.
Definition at line 87 of file RISCVTargetParser.cpp.
References llvm::StringSwitch< T, R >::Case(), llvm::StringSwitch< T, R >::Default(), ENUM, parseCPU(), and TUNE_PROC.
|
staticconstexpr |
Definition at line 371 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 372 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 373 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 374 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 378 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 377 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 376 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 375 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 380 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 379 of file RISCVInstrInfo.h.
const RegisterBankInfo::PartialMapping llvm::RISCV::PartMappings[] |
Definition at line 28 of file RISCVRegisterBankInfo.cpp.
|
constexpr |
Definition at line 30 of file RISCVTargetParser.cpp.
Referenced by fillValidCPUArchList(), fillValidTuneCPUArchList(), getCPUInfoByName(), and getCPUNameFromCPUModel().
|
staticconstexpr |
Definition at line 51 of file RISCVTargetParser.h.
Referenced by computeKnownBitsFromOperator(), llvm::RISCVTargetLowering::computeVLMAX(), llvm::RISCVSubtarget::expandVScale(), getContainerForFixedLengthVector(), getLMUL1Ty(), llvm::RISCVTargetLowering::getM1VT(), llvm::RISCVTTIImpl::getMaxVScale(), llvm::RISCVTargetLowering::getRegClassIDForVecVT(), llvm::RISCVTTIImpl::getRegisterBitWidth(), llvm::RISCVTTIImpl::getRegUsageForType(), llvm::RISCVTargetMachine::getSubtargetImpl(), llvm::RISCVTTIImpl::getVScaleForTuning(), isTupleInsertInstr(), isValidEGW(), llvm::RISCVTargetLowering::isVScaleKnownToBeAPowerOfTwo(), llvm::RISCVInstrInfo::loadRegFromStackSlot(), lowerGetVectorLength(), llvm::RISCVTargetLowering::LowerOperation(), llvm::RISCVTargetLowering::RISCVTargetLowering(), llvm::RISCVDAGToDAGISel::Select(), llvm::RISCVDAGToDAGISel::selectVLXSEG(), llvm::RISCVDAGToDAGISel::selectVSXSEG(), llvm::RISCVTargetLowering::splitValueIntoRegisterParts(), llvm::RISCVInstrInfo::storeRegToStackSlot(), and llvm::RISCVSubtarget::useRVVForFixedLengthVectors().
|
staticconstexpr |
Definition at line 52 of file RISCVTargetParser.h.
Referenced by llvm::RISCVRegisterInfo::adjustReg(), llvm::RISCVTargetLowering::getOptimalMemOpType(), llvm::RISCVInstrInfo::isLoadFromStackSlot(), and llvm::RISCVInstrInfo::isStoreToStackSlot().
const RegisterBankInfo::ValueMapping llvm::RISCV::ValueMappings[] |
Definition at line 54 of file RISCVRegisterBankInfo.cpp.
Referenced by getFPValueMapping(), llvm::RISCVRegisterBankInfo::getInstrMapping(), and getVRBValueMapping().
|
staticconstexpr |
Definition at line 365 of file RISCVInstrInfo.h.
Referenced by isVLKnownLE(), and llvm::RISCVDAGToDAGISel::selectVLOp().