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_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 46 of file AArch64TargetParser.h.
Enumerator | |
---|---|
AProfile | |
RProfile | |
InvalidProfile |
Definition at line 100 of file AArch64TargetParser.h.
Definition at line 774 of file AArch64InstrInfo.h.
Enumerator | |
---|---|
ElementSizeMask | |
ElementSizeNone | |
ElementSizeB | |
ElementSizeH | |
ElementSizeS | |
ElementSizeD |
Definition at line 765 of file AArch64InstrInfo.h.
Enumerator | |
---|---|
FalseLanesMask | |
FalseLanesZero | |
FalseLanesUndef |
Definition at line 788 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 798 of file AArch64InstrInfo.h.
FastISel * llvm::AArch64::createFastISel | ( | FunctionLoweringInfo & | funcInfo, |
const TargetLibraryInfo * | libInfo | ||
) |
Definition at line 5192 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 90 of file AArch64TargetParser.cpp.
References llvm::AArch64::Alias::AltName, llvm::CallingConv::C, llvm::SmallVectorTemplateBase< T, bool >::push_back(), and llvm::sort().
Definition at line 78 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 51 of file AArch64TargetParser.cpp.
References parseFMVExtension().
const ExtensionInfo & llvm::AArch64::getExtensionByID | ( | ArchExtKind(ExtID) | ) |
bool llvm::AArch64::getExtensionFeatures | ( | const AArch64::ExtensionBitset & | Extensions, |
std::vector< StringRef > & | Features | ||
) |
Definition at line 60 of file AArch64TargetParser.cpp.
References Extensions, and llvm::Bitset< NumBits >::test().
Referenced by parseFMVExtension().
Definition at line 170 of file AArch64ISelLowering.cpp.
References FPRArgRegs.
Definition at line 168 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 102 of file AArch64TargetParser.cpp.
Referenced by llvm::AArch64Subtarget::AArch64Subtarget().
const AArch64::ArchInfo * llvm::AArch64::parseArch | ( | StringRef | Arch | ) |
Definition at line 108 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 122 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 152 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 132 of file AArch64TargetParser.cpp.
References getFMVInfo(), and I.
Referenced by getCpuSupportsMask().
Definition at line 182 of file AArch64TargetParser.cpp.
References llvm::format(), llvm::left_justify(), llvm::outs(), and targetFeatureToExtension().
void llvm::AArch64::PrintSupportedExtensions | ( | ) |
Definition at line 164 of file AArch64TargetParser.cpp.
References Extensions, llvm::format(), llvm::left_justify(), and llvm::outs().
Definition at line 71 of file AArch64TargetParser.cpp.
Referenced by createAArch64MCSubtargetInfo(), and parseCpu().
std::optional< AArch64::ExtensionInfo > llvm::AArch64::targetFeatureToExtension | ( | StringRef | TargetFeature | ) |
Definition at line 145 of file AArch64TargetParser.cpp.
References Extensions.
Referenced by printEnabledExtensions(), and llvm::AArch64::ExtensionSet::reconstructFromParsedFeatures().
|
static |
Definition at line 796 of file AArch64InstrInfo.h.
Referenced by llvm::AArch64InstrInfo::isPTestLikeOpcode().
|
static |
Definition at line 795 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 865 of file AArch64BaseInfo.h.
Referenced by findMoreOptimalIndexType(), GenerateFixedLengthSVETBL(), llvm::AArch64TTIImpl::getCastInstrCost(), getPackedVectorTypeFromPredicateType(), instCombineSVECmpNE(), isAllActivePredicate(), isPackedVectorType(), isUnpackedVectorVT(), LowerSVEIntrinsicEXT(), performGatherLoadCombine(), performLD1Combine(), performScatterStoreCombine(), and llvm::AArch64Subtarget::useSVEForFixedLengthVectors().
|
staticconstexpr |
Definition at line 866 of file AArch64BaseInfo.h.