|
#define | ARM_ARCH_EXT_NAME(NAME, ID, FEATURE, NEGFEATURE) {NAME, ID, FEATURE, NEGFEATURE}, |
|
#define | ARM_HW_DIV_NAME(NAME, ID) {NAME, ID}, |
|
#define | ARM_ARCH(NAME, ID, CPU_ATTR, ARCH_FEATURE, ARCH_ATTR, ARCH_FPU, ARCH_BASE_EXT) ID, |
|
#define | ARM_CPU_NAME(NAME, ID, DEFAULT_FPU, IS_DEFAULT, DEFAULT_EXT) {NAME, ARM::ArchKind::ID, IS_DEFAULT, DEFAULT_EXT}, |
|
#define | ARM_FPU(NAME, KIND, VERSION, NEON_SUPPORT, RESTRICTION) KIND, |
|
#define | ARM_FPU(NAME, KIND, VERSION, NEON_SUPPORT, RESTRICTION) {NAME, KIND, VERSION, NEON_SUPPORT, RESTRICTION}, |
|
#define | ARM_ARCH(NAME, ID, CPU_ATTR, ARCH_FEATURE, ARCH_ATTR, ARCH_FPU, ARCH_BASE_EXT) |
|
|
enum | llvm::ARM::ArchExtKind : uint64_t {
llvm::ARM::AEK_INVALID = 0
, llvm::ARM::AEK_NONE = 1
, llvm::ARM::AEK_CRC = 1 << 1
, llvm::ARM::AEK_CRYPTO = 1 << 2
,
llvm::ARM::AEK_FP = 1 << 3
, llvm::ARM::AEK_HWDIVTHUMB = 1 << 4
, llvm::ARM::AEK_HWDIVARM = 1 << 5
, llvm::ARM::AEK_MP = 1 << 6
,
llvm::ARM::AEK_SIMD = 1 << 7
, llvm::ARM::AEK_SEC = 1 << 8
, llvm::ARM::AEK_VIRT = 1 << 9
, llvm::ARM::AEK_DSP = 1 << 10
,
llvm::ARM::AEK_FP16 = 1 << 11
, llvm::ARM::AEK_RAS = 1 << 12
, llvm::ARM::AEK_DOTPROD = 1 << 13
, llvm::ARM::AEK_SHA2 = 1 << 14
,
llvm::ARM::AEK_AES = 1 << 15
, llvm::ARM::AEK_FP16FML = 1 << 16
, llvm::ARM::AEK_SB = 1 << 17
, llvm::ARM::AEK_FP_DP = 1 << 18
,
llvm::ARM::AEK_LOB = 1 << 19
, llvm::ARM::AEK_BF16 = 1 << 20
, llvm::ARM::AEK_I8MM = 1 << 21
, llvm::ARM::AEK_CDECP0 = 1 << 22
,
llvm::ARM::AEK_CDECP1 = 1 << 23
, llvm::ARM::AEK_CDECP2 = 1 << 24
, llvm::ARM::AEK_CDECP3 = 1 << 25
, llvm::ARM::AEK_CDECP4 = 1 << 26
,
llvm::ARM::AEK_CDECP5 = 1 << 27
, llvm::ARM::AEK_CDECP6 = 1 << 28
, llvm::ARM::AEK_CDECP7 = 1 << 29
, llvm::ARM::AEK_PACBTI = 1 << 30
,
llvm::ARM::AEK_OS = 1ULL << 59
, llvm::ARM::AEK_IWMMXT = 1ULL << 60
, llvm::ARM::AEK_IWMMXT2 = 1ULL << 61
, llvm::ARM::AEK_MAVERICK = 1ULL << 62
,
llvm::ARM::AEK_XSCALE = 1ULL << 63
} |
|
enum class | llvm::ARM::ArchKind { llvm::ARM::ARM_ARCH
} |
|
enum | llvm::ARM::FPUKind { llvm::ARM::FK_LAST
} |
|
enum class | llvm::ARM::FPUVersion {
llvm::ARM::NONE
, llvm::ARM::VFPV2
, llvm::ARM::VFPV3
, llvm::ARM::VFPV3_FP16
,
llvm::ARM::VFPV4
, llvm::ARM::VFPV5
, llvm::ARM::VFPV5_FULLFP16
} |
|
enum class | llvm::ARM::FPURestriction { llvm::ARM::None = 0
, llvm::ARM::D16
, llvm::ARM::SP_D16
} |
|
enum class | llvm::ARM::NeonSupportLevel { llvm::ARM::None = 0
, llvm::ARM::Neon
, llvm::ARM::Crypto
} |
|
enum class | llvm::ARM::ProfileKind { llvm::ARM::INVALID = 0
, llvm::ARM::A
, llvm::ARM::R
, llvm::ARM::M
} |
|
|
bool | llvm::ARM::isDoublePrecision (const FPURestriction restriction) |
|
bool | llvm::ARM::has32Regs (const FPURestriction restriction) |
|
ArchKind & | llvm::ARM::operator-- (ArchKind &Kind) |
|
StringRef | llvm::ARM::getFPUName (FPUKind FPUKind) |
|
FPUVersion | llvm::ARM::getFPUVersion (FPUKind FPUKind) |
|
NeonSupportLevel | llvm::ARM::getFPUNeonSupportLevel (FPUKind FPUKind) |
|
FPURestriction | llvm::ARM::getFPURestriction (FPUKind FPUKind) |
|
bool | llvm::ARM::getFPUFeatures (FPUKind FPUKind, std::vector< StringRef > &Features) |
|
bool | llvm::ARM::getHWDivFeatures (uint64_t HWDivKind, std::vector< StringRef > &Features) |
|
bool | llvm::ARM::getExtensionFeatures (uint64_t Extensions, std::vector< StringRef > &Features) |
|
StringRef | llvm::ARM::getArchName (ArchKind AK) |
|
unsigned | llvm::ARM::getArchAttr (ArchKind AK) |
|
StringRef | llvm::ARM::getCPUAttr (ArchKind AK) |
|
StringRef | llvm::ARM::getSubArch (ArchKind AK) |
|
StringRef | llvm::ARM::getArchExtName (uint64_t ArchExtKind) |
|
StringRef | llvm::ARM::getArchExtFeature (StringRef ArchExt) |
|
bool | llvm::ARM::appendArchExtFeatures (StringRef CPU, ARM::ArchKind AK, StringRef ArchExt, std::vector< StringRef > &Features, FPUKind &ArgFPUKind) |
|
ArchKind | llvm::ARM::convertV9toV8 (ArchKind AK) |
|
FPUKind | llvm::ARM::getDefaultFPU (StringRef CPU, ArchKind AK) |
|
uint64_t | llvm::ARM::getDefaultExtensions (StringRef CPU, ArchKind AK) |
|
StringRef | llvm::ARM::getDefaultCPU (StringRef Arch) |
|
StringRef | llvm::ARM::getCanonicalArchName (StringRef Arch) |
| MArch is expected to be of the form (arm|thumb)?(eb)?(v.
|
|
StringRef | llvm::ARM::getFPUSynonym (StringRef FPU) |
|
uint64_t | llvm::ARM::parseHWDiv (StringRef HWDiv) |
|
FPUKind | llvm::ARM::parseFPU (StringRef FPU) |
|
ArchKind | llvm::ARM::parseArch (StringRef Arch) |
|
uint64_t | llvm::ARM::parseArchExt (StringRef ArchExt) |
|
ArchKind | llvm::ARM::parseCPUArch (StringRef CPU) |
|
ProfileKind | llvm::ARM::parseArchProfile (StringRef Arch) |
|
unsigned | llvm::ARM::parseArchVersion (StringRef Arch) |
|
void | llvm::ARM::fillValidCPUArchList (SmallVectorImpl< StringRef > &Values) |
|
StringRef | llvm::ARM::computeDefaultTargetABI (const Triple &TT, StringRef CPU) |
|
StringRef | llvm::ARM::getARMCPUForArch (const llvm::Triple &Triple, StringRef MArch={}) |
| Get the (LLVM) name of the minimum ARM CPU for the arch we are targeting.
|
|
void | llvm::ARM::PrintSupportedExtensions (StringMap< StringRef > DescMap) |
|