LLVM 20.0.0git
|
Namespaces | |
namespace | RISCVExtensionBitmaskTable |
Classes | |
struct | CPUInfo |
struct | CPUModel |
struct | RISCVMaskedPseudoInfo |
struct | VLEPseudo |
struct | VLSEGPseudo |
struct | VLX_VSXPseudo |
struct | VLXSEGPseudo |
struct | VSEPseudo |
struct | VSSEGPseudo |
struct | VSXSEGPseudo |
Variables | |
static constexpr unsigned | RVVBitsPerBlock = 64 |
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 [] |
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 101 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 108 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 126 of file RISCVCallingConv.cpp.
References llvm::RISCVABI::ABI_ILP32E, and llvm::RISCVABI::ABI_LP64E.
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 65 of file RISCVTargetParser.cpp.
References getCPUInfoByName(), and Info.
Referenced by hasValidCPUModel().
unsigned llvm::RISCV::getDestLog2EEW | ( | const MCInstrDesc & | Desc, |
unsigned | Log2SEW | ||
) |
Definition at line 4226 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 118 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 94 of file RISCVTargetParser.cpp.
References getCPUInfoByName(), and Info.
Referenced by getFeaturesForCPU().
|
inlinestatic |
Definition at line 87 of file RISCVFixupKinds.h.
References llvm::FirstLiteralRelocationKind, llvm_unreachable, and Size.
Referenced by llvm::RISCVAsmBackend::relaxDwarfLineAddr().
Definition at line 4218 of file RISCVInstrInfo.cpp.
References llvm::RVV.
Referenced by llvm::RISCVInstrInfo::copyPhysRegVector(), llvm::RISCVInstrInfo::foldMemoryOperandImpl(), llvm::RISCVInstrInfo::getReassociateOperandIndices(), hasGPROut(), INITIALIZE_PASS(), llvm::RISCVInstrInfo::isReallyTriviallyReMaterializable(), llvm::isVectorMaskProducer(), IsVMerge(), and vectorPseudoHasAllNBitUsers().
std::optional< unsigned > llvm::RISCV::getVectorLowDemandedScalarBits | ( | uint16_t | Opcode, |
unsigned | Log2SEW | ||
) |
Definition at line 4107 of file RISCVInstrInfo.cpp.
Referenced by vectorPseudoHasAllNBitUsers().
bool llvm::RISCV::hasEqualFRM | ( | const MachineInstr & | MI1, |
const MachineInstr & | MI2 | ||
) |
Definition at line 4094 of file RISCVInstrInfo.cpp.
References llvm::MachineOperand::getImm(), getNamedOperandIdx(), 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().
bool llvm::RISCV::isFaultFirstLoad | ( | const MachineInstr & | MI | ) |
Definition at line 4089 of file RISCVInstrInfo.cpp.
References MI.
Referenced by lowerRISCVVMachineInstrToMCInst().
bool llvm::RISCV::isRVVSpill | ( | const MachineInstr & | MI | ) |
Definition at line 4038 of file RISCVInstrInfo.cpp.
References isRVVSpillForZvlsseg(), isRVVWholeLoadStore(), and MI.
Referenced by llvm::RISCVRegisterInfo::eliminateFrameIndex(), and getScavSlotsNumForRVV().
std::optional< std::pair< unsigned, unsigned > > llvm::RISCV::isRVVSpillForZvlsseg | ( | unsigned | Opcode | ) |
Definition at line 4049 of file RISCVInstrInfo.cpp.
Referenced by isRVVSpill(), llvm::RISCVRegisterInfo::lowerVRELOAD(), and llvm::RISCVRegisterInfo::lowerVSPILL().
bool llvm::RISCV::isSEXT_W | ( | const MachineInstr & | MI | ) |
Definition at line 3993 of file RISCVInstrInfo.cpp.
References MI.
Referenced by llvm::RISCVInstrInfo::foldMemoryOperandImpl().
bool llvm::RISCV::isVLKnownLE | ( | const MachineOperand & | LHS, |
const MachineOperand & | RHS | ||
) |
Given two VL operands, do we know that LHS <= RHS?
Definition at line 4239 of file RISCVInstrInfo.cpp.
References LHS, RHS, and VLMaxSentinel.
bool llvm::RISCV::isZEXT_B | ( | const MachineInstr & | MI | ) |
Definition at line 4005 of file RISCVInstrInfo.cpp.
References MI.
Referenced by llvm::RISCVInstrInfo::foldMemoryOperandImpl().
bool llvm::RISCV::isZEXT_W | ( | const MachineInstr & | MI | ) |
Definition at line 3999 of file RISCVInstrInfo.cpp.
References MI.
Referenced by llvm::RISCVInstrInfo::foldMemoryOperandImpl().
Definition at line 72 of file RISCVTargetParser.cpp.
References getCPUInfoByName(), and Info.
Referenced by parseTuneCPU().
Definition at line 80 of file RISCVTargetParser.cpp.
References ENUM, parseCPU(), and TUNE_PROC.
|
staticconstexpr |
Definition at line 361 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 362 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 363 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 364 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 368 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 367 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 366 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 365 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 370 of file RISCVInstrInfo.h.
|
staticconstexpr |
Definition at line 369 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(), and getCPUInfoByName().
|
staticconstexpr |
Definition at line 51 of file RISCVTargetParser.h.
Referenced by llvm::RISCVRegisterInfo::adjustReg(), computeKnownBitsFromOperator(), llvm::RISCVTargetLowering::computeVLMAX(), llvm::RISCVSubtarget::expandVScale(), getContainerForFixedLengthVector(), getLMUL1Ty(), getLMUL1VT(), llvm::RISCVTTIImpl::getMaxVScale(), llvm::RISCVTargetLowering::getOptimalMemOpType(), llvm::RISCVTargetLowering::getRegClassIDForVecVT(), llvm::RISCVTTIImpl::getRegisterBitWidth(), llvm::RISCVTTIImpl::getRegUsageForType(), llvm::RISCVTargetMachine::getSubtargetImpl(), llvm::RISCVTTIImpl::getVScaleForTuning(), isValidEGW(), llvm::RISCVTargetLowering::isVScaleKnownToBeAPowerOfTwo(), lowerGetVectorLength(), llvm::RISCVTargetLowering::LowerOperation(), llvm::RISCVTargetLowering::RISCVTargetLowering(), llvm::RISCVDAGToDAGISel::Select(), llvm::RISCVDAGToDAGISel::selectVLXSEG(), llvm::RISCVDAGToDAGISel::selectVSXSEG(), llvm::RISCVTargetLowering::splitValueIntoRegisterParts(), and llvm::RISCVSubtarget::useRVVForFixedLengthVectors().
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 355 of file RISCVInstrInfo.h.
Referenced by isVLKnownLE(), and llvm::RISCVDAGToDAGISel::selectVLOp().