LLVM 20.0.0git
|
Classes | |
struct | Alias |
struct | ArchInfo |
struct | CpuInfo |
struct | ExtensionDependency |
struct | ExtensionInfo |
struct | ExtensionSet |
struct | FMVInfo |
Typedefs | |
using | ExtensionBitset = Bitset< AEK_NUM_EXTENSIONS > |
Enumerations | |
enum | ArchProfile { AProfile = 'A' , RProfile = 'R' , InvalidProfile = '?' } |
enum | ElementSizeType { ElementSizeMask = TSFLAG_ELEMENT_SIZE_TYPE(0x7) , ElementSizeNone = TSFLAG_ELEMENT_SIZE_TYPE(0x0) , ElementSizeB = TSFLAG_ELEMENT_SIZE_TYPE(0x1) , ElementSizeH = TSFLAG_ELEMENT_SIZE_TYPE(0x2) , ElementSizeS = TSFLAG_ELEMENT_SIZE_TYPE(0x3) , ElementSizeD = TSFLAG_ELEMENT_SIZE_TYPE(0x4) } |
enum | DestructiveInstType { DestructiveInstTypeMask = TSFLAG_DESTRUCTIVE_INST_TYPE(0xf) , NotDestructive = TSFLAG_DESTRUCTIVE_INST_TYPE(0x0) , DestructiveOther = TSFLAG_DESTRUCTIVE_INST_TYPE(0x1) , DestructiveUnary = TSFLAG_DESTRUCTIVE_INST_TYPE(0x2) , DestructiveBinaryImm = TSFLAG_DESTRUCTIVE_INST_TYPE(0x3) , DestructiveBinaryShImmUnpred = TSFLAG_DESTRUCTIVE_INST_TYPE(0x4) , DestructiveBinary = TSFLAG_DESTRUCTIVE_INST_TYPE(0x5) , DestructiveBinaryComm = TSFLAG_DESTRUCTIVE_INST_TYPE(0x6) , DestructiveBinaryCommWithRev = TSFLAG_DESTRUCTIVE_INST_TYPE(0x7) , DestructiveTernaryCommWithRev = TSFLAG_DESTRUCTIVE_INST_TYPE(0x8) , DestructiveUnaryPassthru = TSFLAG_DESTRUCTIVE_INST_TYPE(0x9) } |
enum | FalseLaneType { FalseLanesMask = TSFLAG_FALSE_LANE_TYPE(0x3) , FalseLanesZero = TSFLAG_FALSE_LANE_TYPE(0x1) , FalseLanesUndef = TSFLAG_FALSE_LANE_TYPE(0x2) } |
enum | SMEMatrixType { SMEMatrixTypeMask = TSFLAG_SME_MATRIX_TYPE(0x7) , SMEMatrixNone = TSFLAG_SME_MATRIX_TYPE(0x0) , SMEMatrixTileB = TSFLAG_SME_MATRIX_TYPE(0x1) , SMEMatrixTileH = TSFLAG_SME_MATRIX_TYPE(0x2) , SMEMatrixTileS = TSFLAG_SME_MATRIX_TYPE(0x3) , SMEMatrixTileD = TSFLAG_SME_MATRIX_TYPE(0x4) , SMEMatrixTileQ = TSFLAG_SME_MATRIX_TYPE(0x5) , SMEMatrixArray = TSFLAG_SME_MATRIX_TYPE(0x6) } |
enum | Rounding { RN = 0 , RP = 1 , RM = 2 , RZ = 3 , rmMask = 3 } |
Possible values of current rounding mode, which is specified in bits 23:22 of FPCR. More... | |
enum | Fixups { fixup_aarch64_pcrel_adr_imm21 = FirstTargetFixupKind , fixup_aarch64_pcrel_adrp_imm21 , fixup_aarch64_add_imm12 , fixup_aarch64_ldst_imm12_scale1 , fixup_aarch64_ldst_imm12_scale2 , fixup_aarch64_ldst_imm12_scale4 , fixup_aarch64_ldst_imm12_scale8 , fixup_aarch64_ldst_imm12_scale16 , fixup_aarch64_ldr_pcrel_imm19 , fixup_aarch64_movw , fixup_aarch64_pcrel_branch9 , fixup_aarch64_pcrel_branch14 , fixup_aarch64_pcrel_branch16 , fixup_aarch64_pcrel_branch19 , fixup_aarch64_pcrel_branch26 , fixup_aarch64_pcrel_call26 , LastTargetFixupKind , NumTargetFixupKinds = LastTargetFixupKind - FirstTargetFixupKind } |
enum | OperandType { OPERAND_IMPLICIT_IMM_0 = MCOI::OPERAND_FIRST_TARGET } |
Variables | |
static const uint64_t | InstrFlagIsWhile = TSFLAG_INSTR_FLAGS(0x1) |
static const uint64_t | InstrFlagIsPTestLike = TSFLAG_INSTR_FLAGS(0x2) |
const unsigned | RoundingBitsPos = 22 |
const uint64_t | ReservedFPControlBits = 0xfffffffff80040f8 |
const unsigned | StackProbeMaxUnprobedStack = 1024 |
Maximum allowed number of unprobed bytes above SP at an ABI boundary. | |
const unsigned | StackProbeMaxLoopUnroll = 4 |
Maximum number of iterations to unroll for a constant size probing loop. | |
static constexpr unsigned | SVEBitsPerBlock = 128 |
static constexpr unsigned | SVEMaxBitsPerVector = 2048 |
using llvm::AArch64::ExtensionBitset = typedef Bitset<AEK_NUM_EXTENSIONS> |
Definition at line 47 of file AArch64TargetParser.h.
Enumerator | |
---|---|
AProfile | |
RProfile | |
InvalidProfile |
Definition at line 95 of file AArch64TargetParser.h.
Definition at line 784 of file AArch64InstrInfo.h.
Enumerator | |
---|---|
ElementSizeMask | |
ElementSizeNone | |
ElementSizeB | |
ElementSizeH | |
ElementSizeS | |
ElementSizeD |
Definition at line 775 of file AArch64InstrInfo.h.
Enumerator | |
---|---|
FalseLanesMask | |
FalseLanesZero | |
FalseLanesUndef |
Definition at line 798 of file AArch64InstrInfo.h.
Definition at line 17 of file AArch64FixupKinds.h.
Enumerator | |
---|---|
OPERAND_IMPLICIT_IMM_0 |
Definition at line 71 of file AArch64MCTargetDesc.h.
Possible values of current rounding mode, which is specified in bits 23:22 of FPCR.
Enumerator | |
---|---|
RN | |
RP | |
RM | |
RZ | |
rmMask |
Definition at line 530 of file AArch64ISelLowering.h.
Enumerator | |
---|---|
SMEMatrixTypeMask | |
SMEMatrixNone | |
SMEMatrixTileB | |
SMEMatrixTileH | |
SMEMatrixTileS | |
SMEMatrixTileD | |
SMEMatrixTileQ | |
SMEMatrixArray |
Definition at line 808 of file AArch64InstrInfo.h.
FastISel * llvm::AArch64::createFastISel | ( | FunctionLoweringInfo & | funcInfo, |
const TargetLibraryInfo * | libInfo | ||
) |
Definition at line 5194 of file AArch64FastISel.cpp.
References llvm::FunctionLoweringInfo::Fn, llvm::SMEAttrs::hasStreamingCompatibleInterface(), llvm::SMEAttrs::hasStreamingInterfaceOrBody(), llvm::SMEAttrs::hasZAState(), and llvm::SMEAttrs::hasZT0State().
Referenced by llvm::AArch64TargetLowering::createFastISel().
void llvm::AArch64::fillValidCPUArchList | ( | SmallVectorImpl< StringRef > & | Values | ) |
Definition at line 111 of file AArch64TargetParser.cpp.
References llvm::AArch64::Alias::AltName, llvm::CallingConv::C, llvm::SmallVectorTemplateBase< T, bool >::push_back(), and llvm::sort().
Definition at line 99 of file AArch64TargetParser.cpp.
References assert(), llvm::StringRef::drop_front(), parseArchExtension(), and llvm::StringRef::starts_with().
const AArch64::ArchInfo * llvm::AArch64::getArchForCpu | ( | StringRef | CPU | ) |
Definition at line 36 of file AArch64TargetParser.cpp.
References parseCpu().
Definition at line 64 of file AArch64TargetParser.cpp.
References llvm::AArch64::ExtensionSet::enable(), llvm::AArch64::ExtensionSet::Enabled, getFMVInfo(), Info, parseFMVExtension(), and llvm::Bitset< NumBits >::test().
const ExtensionInfo & llvm::AArch64::getExtensionByID | ( | ArchExtKind(ExtID) | ) |
bool llvm::AArch64::getExtensionFeatures | ( | const AArch64::ExtensionBitset & | Extensions, |
std::vector< StringRef > & | Features | ||
) |
Definition at line 81 of file AArch64TargetParser.cpp.
References Extensions, and llvm::Bitset< NumBits >::test().
Referenced by getCpuSupportsMask(), and parseFMVExtension().
Definition at line 51 of file AArch64TargetParser.cpp.
References parseFMVExtension().
Definition at line 169 of file AArch64ISelLowering.cpp.
References FPRArgRegs.
Definition at line 167 of file AArch64ISelLowering.cpp.
References GPRArgRegs.
int llvm::AArch64::getSMEPseudoMap | ( | uint16_t | Opcode | ) |
Referenced by llvm::AArch64TargetLowering::EmitInstrWithCustomInserter().
int llvm::AArch64::getSVENonRevInstr | ( | uint16_t | Opcode | ) |
int llvm::AArch64::getSVEPseudoMap | ( | uint16_t | Opcode | ) |
int llvm::AArch64::getSVERevInstr | ( | uint16_t | Opcode | ) |
Definition at line 123 of file AArch64TargetParser.cpp.
Referenced by llvm::AArch64Subtarget::AArch64Subtarget().
const AArch64::ArchInfo * llvm::AArch64::parseArch | ( | StringRef | Arch | ) |
Definition at line 129 of file AArch64TargetParser.cpp.
References A, checkArchVersion(), llvm::ARM::getArchSynonym(), and llvm::ARM::getCanonicalArchName().
std::optional< AArch64::ExtensionInfo > llvm::AArch64::parseArchExtension | ( | StringRef | Extension | ) |
Definition at line 143 of file AArch64TargetParser.cpp.
References A, llvm::StringRef::empty(), and Extensions.
Referenced by getArchExtFeature(), and llvm::AArch64::ExtensionSet::parseModifier().
std::optional< AArch64::CpuInfo > llvm::AArch64::parseCpu | ( | StringRef | Name | ) |
Definition at line 173 of file AArch64TargetParser.cpp.
References llvm::CallingConv::C, Name, and resolveCPUAlias().
Referenced by getArchForCpu().
std::optional< AArch64::FMVInfo > llvm::AArch64::parseFMVExtension | ( | StringRef | Extension | ) |
Definition at line 153 of file AArch64TargetParser.cpp.
References getFMVInfo(), and I.
Referenced by getCpuSupportsMask(), and getFMVPriority().
Definition at line 203 of file AArch64TargetParser.cpp.
References llvm::format(), llvm::left_justify(), llvm::outs(), and targetFeatureToExtension().
void llvm::AArch64::PrintSupportedExtensions | ( | ) |
Definition at line 185 of file AArch64TargetParser.cpp.
References Extensions, llvm::format(), llvm::left_justify(), and llvm::outs().
Definition at line 92 of file AArch64TargetParser.cpp.
Referenced by createAArch64MCSubtargetInfo(), and parseCpu().
std::optional< AArch64::ExtensionInfo > llvm::AArch64::targetFeatureToExtension | ( | StringRef | TargetFeature | ) |
Definition at line 166 of file AArch64TargetParser.cpp.
References Extensions.
Referenced by printEnabledExtensions(), and llvm::AArch64::ExtensionSet::reconstructFromParsedFeatures().
|
static |
Definition at line 806 of file AArch64InstrInfo.h.
Referenced by llvm::AArch64InstrInfo::isPTestLikeOpcode().
|
static |
Definition at line 805 of file AArch64InstrInfo.h.
Referenced by llvm::AArch64InstrInfo::isWhileOpcode().
Definition at line 542 of file AArch64ISelLowering.h.
Definition at line 539 of file AArch64ISelLowering.h.
Maximum number of iterations to unroll for a constant size probing loop.
Definition at line 553 of file AArch64ISelLowering.h.
Maximum allowed number of unprobed bytes above SP at an ABI boundary.
Definition at line 550 of file AArch64ISelLowering.h.
Referenced by llvm::AArch64FrameLowering::eliminateCallFramePseudoInstr().
|
staticconstexpr |
Definition at line 884 of file AArch64BaseInfo.h.
Referenced by findMoreOptimalIndexType(), GenerateFixedLengthSVETBL(), llvm::AArch64TTIImpl::getCastInstrCost(), getHistogramCost(), getPackedVectorTypeFromPredicateType(), instCombineSVECmpNE(), isAllActivePredicate(), isPackedVectorType(), isUnpackedVectorVT(), LowerSVEIntrinsicEXT(), performGatherLoadCombine(), performLD1Combine(), performScatterStoreCombine(), and llvm::AArch64Subtarget::useSVEForFixedLengthVectors().
|
staticconstexpr |
Definition at line 885 of file AArch64BaseInfo.h.