tsv110

Name tsv110
Architecture aarch64
Endianess little

Targets:

Name Explanation LLVM only Enabled
neon Enable Advanced SIMD instructions. ⛔️ ✅
fp16 Full FP16. ⛔️ ✅
sve Enable Scalable Vector Extension (SVE) instructions. ⛔️ ⛔️
crc Enable ARMv8 CRC-32 checksum instructions. ⛔️ ✅
ras Enable ARMv8 Reliability, Availability and Serviceability Extensions. ⛔️ ✅
lse Enable ARMv8.1 Large System Extension (LSE) atomic instructions. ⛔️ ✅
rdm Enable ARMv8.1 Rounding Double Multiply Add/Subtract instructions. ⛔️ ✅
rcpc Enable support for RCPC extension. ⛔️ ⛔️
rcpc2 Enable v8.4-A RCPC instructions with Immediate Offsets. ⛔️ ⛔️
dotprod Enable dot product support. ⛔️ ✅
tme Enable Transactional Memory Extension. ⛔️ ⛔️
fhm Enable FP16 FML instructions. ⛔️ ✅
dit Enable v8.4-A Data Independent Timing instructions. ⛔️ ⛔️
flagm Enable v8.4-A Flag Manipulation Instructions. ⛔️ ⛔️
ssbs Enable Speculative Store Bypass Safe bit. ⛔️ ⛔️
sb Enable v8.5 Speculation Barrier. ⛔️ ⛔️
paca Enable v8.3-A Pointer Authentication extension. ⛔️ ⛔️
dpb Enable v8.2 data Cache Clean to Point of Persistence. ⛔️ ✅
dpb2 Enable v8.5 Cache Clean to Point of Deep Persistence. ⛔️ ⛔️
sve2 Enable Scalable Vector Extension 2 (SVE2) instructions. ⛔️ ⛔️
sve2-aes Enable AES SVE2 instructions. ⛔️ ⛔️
sve2-sm4 Enable SM4 SVE2 instructions. ⛔️ ⛔️
sve2-sha3 Enable SHA3 SVE2 instructions. ⛔️ ⛔️
sve2-bitperm Enable bit permutation SVE2 instructions. ⛔️ ⛔️
frintts Enable FRInt[32|64][Z|X] instructions that round a floating-point number to an integer (in FP format) forcing it to fit into a 32- or 64-bit int. ⛔️ ⛔️
i8mm Enable Matrix Multiply Int8 Extension. ⛔️ ⛔️
f32mm Enable Matrix Multiply FP32 Extension. ⛔️ ⛔️
f64mm Enable Matrix Multiply FP64 Extension. ⛔️ ⛔️
bf16 Enable BFloat16 Extension. ⛔️ ⛔️
rand Enable Random Number generation instructions. ⛔️ ⛔️
bti Enable Branch Target Identification. ⛔️ ⛔️
mte Enable Memory Tagging Extension. ⛔️ ⛔️
jsconv Enable v8.3-A JavaScript FP conversion instructions. ⛔️ ⛔️
fcma Enable v8.3-A Floating-point complex number support. ⛔️ ⛔️
aes Enable AES support. ⛔️ ✅
sha2 Enable SHA1 and SHA256 support. ⛔️ ✅
sha3 Enable SHA512 and SHA3 support. ⛔️ ⛔️
sm4 Enable SM3 and SM4 support. ⛔️ ⛔️
pan Enables ARM v8.1 Privileged Access-Never extension. ⛔️ ✅
lor Enables ARM v8.1 Limited Ordering Regions extension. ⛔️ ✅
vh Enables ARM v8.1 Virtual Host extension. ⛔️ ✅
pmuv3 Enable ARMv8 PMUv3 Performance Monitors extension. ⛔️ ✅
spe Enable Statistical Profiling extension. ⛔️ ✅
v8.1a Support ARM v8.1a instructions. ⛔️ ✅
v8.2a Support ARM v8.2a instructions. ⛔️ ✅
v8.3a Support ARM v8.3a instructions. ⛔️ ⛔️
v8.4a Support ARM v8.4a instructions. ⛔️ ⛔️
v8.5a Support ARM v8.5a instructions. ⛔️ ⛔️
v8.6a Support ARM v8.6a instructions. ⛔️ ⛔️
v8.7a Support ARM v8.7a instructions. ⛔️ ⛔️
crt-static Enables C Run-time Libraries to be statically linked. ⛔️ ⛔️
CONTEXTIDREL2 Enable RW operand CONTEXTIDR_EL2. ✅ ⛔️
a35 Cortex-A35 ARM processors. ✅ ⛔️
a510 Cortex-A510 ARM processors. ✅ ⛔️
a53 Cortex-A53 ARM processors. ✅ ⛔️
a55 Cortex-A55 ARM processors. ✅ ⛔️
a57 Cortex-A57 ARM processors. ✅ ⛔️
a64fx Fujitsu A64FX processors. ✅ ⛔️
a65 Cortex-A65 ARM processors. ✅ ⛔️
a710 Cortex-A710 ARM processors. ✅ ⛔️
a72 Cortex-A72 ARM processors. ✅ ⛔️
a73 Cortex-A73 ARM processors. ✅ ⛔️
a75 Cortex-A75 ARM processors. ✅ ⛔️
a76 Cortex-A76 ARM processors. ✅ ⛔️
a77 Cortex-A77 ARM processors. ✅ ⛔️
a78 Cortex-A78 ARM processors. ✅ ⛔️
a78c Cortex-A78C ARM processors. ✅ ⛔️
aggressive-fma Enable Aggressive FMA for floating-point.. ✅ ⛔️
all Enable all instructions. ✅ ⛔️
alternate-sextload-cvt-f32-pattern Use alternative pattern for sextload convert to f32. ✅ ⛔️
altnzcv Enable alternative NZCV format for floating point comparisons. ✅ ⛔️
am Enable v8.4-A Activity Monitors extension. ✅ ⛔️
ampere1 Ampere Computing Ampere-1 processors. ✅ ⛔️
amvs Enable v8.6-A Activity Monitors Virtualization support. ✅ ⛔️
apple-a10 Apple A10. ✅ ⛔️
apple-a11 Apple A11. ✅ ⛔️
apple-a12 Apple A12. ✅ ⛔️
apple-a13 Apple A13. ✅ ⛔️
apple-a14 Apple A14. ✅ ⛔️
apple-a7 Apple A7 (the CPU formerly known as Cyclone). ✅ ⛔️
apple-a7-sysreg Apple A7 (the CPU formerly known as Cyclone). ✅ ⛔️
arith-bcc-fusion CPU fuses arithmetic+bcc operations. ✅ ⛔️
arith-cbz-fusion CPU fuses arithmetic + cbz/cbnz operations. ✅ ⛔️
ascend-store-address Schedule vector stores by ascending address. ✅ ⛔️
balance-fp-ops balance mix of odd and even D-registers for fp multiply(-accumulate) ops. ✅ ⛔️
brbe Enable Branch Record Buffer Extension. ✅ ⛔️
call-saved-x10 Make X10 callee saved.. ✅ ⛔️
call-saved-x11 Make X11 callee saved.. ✅ ⛔️
call-saved-x12 Make X12 callee saved.. ✅ ⛔️
call-saved-x13 Make X13 callee saved.. ✅ ⛔️
call-saved-x14 Make X14 callee saved.. ✅ ⛔️
call-saved-x15 Make X15 callee saved.. ✅ ⛔️
call-saved-x18 Make X18 callee saved.. ✅ ⛔️
call-saved-x8 Make X8 callee saved.. ✅ ⛔️
call-saved-x9 Make X9 callee saved.. ✅ ⛔️
carmel Nvidia Carmel processors. ✅ ⛔️
ccidx Enable v8.3-A Extend of the CCSIDR number of sets. ✅ ⛔️
cmp-bcc-fusion CPU fuses cmp+bcc operations. ✅ ⛔️
cortex-r82 Cortex-R82 ARM processors. ✅ ⛔️
cortex-x1 Cortex-X1 ARM processors. ✅ ⛔️
cortex-x2 Cortex-X2 ARM processors. ✅ ⛔️
crypto Enable cryptographic instructions. ✅ ⛔️
custom-cheap-as-move Use custom handling of cheap instructions. ✅ ⛔️
disable-latency-sched-heuristic Disable latency scheduling heuristic. ✅ ⛔️
ecv Enable enhanced counter virtualization extension. ✅ ⛔️
el2vmsa Enable Exception Level 2 Virtual Memory System Architecture. ✅ ⛔️
el3 Enable Exception Level 3. ✅ ⛔️
ete Enable Embedded Trace Extension. ✅ ⛔️
exynos-cheap-as-move Use Exynos specific handling of cheap instructions. ✅ ⛔️
exynosm3 Samsung Exynos-M3 processors. ✅ ⛔️
exynosm4 Samsung Exynos-M4 processors. ✅ ⛔️
falkor Qualcomm Falkor processors. ✅ ⛔️
fgt Enable fine grained virtualization traps extension. ✅ ⛔️
fix-cortex-a53-835769 Mitigate Cortex-A53 Erratum 835769. ✅ ⛔️
force-32bit-jump-tables Force jump table entries to be 32-bits wide except at MinSize. ✅ ⛔️
fp-armv8 Enable ARMv8 FP. ✅ ⛔️
fuse-address CPU fuses address generation and memory operations. ✅ ⛔️
fuse-adrp-add CPU fuses adrp+add operations. ✅ ⛔️
fuse-aes CPU fuses AES crypto operations. ✅ ⛔️
fuse-arith-logic CPU fuses arithmetic and logic operations. ✅ ⛔️
fuse-crypto-eor CPU fuses AES/PMULL and EOR operations. ✅ ⛔️
fuse-csel CPU fuses conditional select operations. ✅ ⛔️
fuse-literals CPU fuses literal generation operations. ✅ ⛔️
harden-sls-blr Harden against straight line speculation across BLR instructions. ✅ ⛔️
harden-sls-nocomdat Generate thunk code for SLS mitigation in the normal text section. ✅ ⛔️
harden-sls-retbr Harden against straight line speculation across RET and BR instructions. ✅ ⛔️
hbc Enable Armv8.8-A Hinted Conditional Branches Extension. ✅ ⛔️
hcx Enable Armv8.7-A HCRX_EL2 system register. ✅ ⛔️
kryo Qualcomm Kryo processors. ✅ ⛔️
ldapr Use LDAPR to lower atomic loads; experimental until we have more testing/a formal correctness proof. ✅ ⛔️
ls64 Enable Armv8.7-A LD64B/ST64B Accelerator Extension. ✅ ⛔️
lse2 Enable ARMv8.4 Large System Extension 2 (LSE2) atomicity rules. ✅ ⛔️
lsl-fast CPU has a fastpath logical shift of up to 3 places. ✅ ⛔️
mops Enable Armv8.8-A memcpy and memset acceleration instructions. ✅ ⛔️
mpam Enable v8.4-A Memory system Partitioning and Monitoring extension. ✅ ⛔️
neoverse512tvb Neoverse 512-TVB ARM processors. ✅ ⛔️
neoversee1 Neoverse E1 ARM processors. ✅ ⛔️
neoversen1 Neoverse N1 ARM processors. ✅ ⛔️
neoversen2 Neoverse N2 ARM processors. ✅ ⛔️
neoversev1 Neoverse V1 ARM processors. ✅ ⛔️
no-bti-at-return-twice Don't place a BTI instruction after a return-twice. ✅ ⛔️
no-neg-immediates Convert immediates and instructions to their negated or complemented equivalent when the immediate does not fit in the encoding.. ✅ ⛔️
no-zcz-fp Has no zero-cycle zeroing instructions for FP registers. ✅ ⛔️
nv Enable v8.4-A Nested Virtualization Enchancement. ✅ ⛔️
outline-atomics Enable out of line atomics to support LSE instructions. ✅ ⛔️
pan-rwv Enable v8.2 PAN s1e1R and s1e1W Variants. ✅ ⛔️
predictable-select-expensive Prefer likely predicted branches over selects. ✅ ⛔️
predres Enable v8.5a execution and data prediction invalidation instructions. ✅ ⛔️
reserve-x1 Reserve X1, making it unavailable as a GPR. ✅ ⛔️
reserve-x10 Reserve X10, making it unavailable as a GPR. ✅ ⛔️
reserve-x11 Reserve X11, making it unavailable as a GPR. ✅ ⛔️
reserve-x12 Reserve X12, making it unavailable as a GPR. ✅ ⛔️
reserve-x13 Reserve X13, making it unavailable as a GPR. ✅ ⛔️
reserve-x14 Reserve X14, making it unavailable as a GPR. ✅ ⛔️
reserve-x15 Reserve X15, making it unavailable as a GPR. ✅ ⛔️
reserve-x18 Reserve X18, making it unavailable as a GPR. ✅ ⛔️
reserve-x2 Reserve X2, making it unavailable as a GPR. ✅ ⛔️
reserve-x20 Reserve X20, making it unavailable as a GPR. ✅ ⛔️
reserve-x21 Reserve X21, making it unavailable as a GPR. ✅ ⛔️
reserve-x22 Reserve X22, making it unavailable as a GPR. ✅ ⛔️
reserve-x23 Reserve X23, making it unavailable as a GPR. ✅ ⛔️
reserve-x24 Reserve X24, making it unavailable as a GPR. ✅ ⛔️
reserve-x25 Reserve X25, making it unavailable as a GPR. ✅ ⛔️
reserve-x26 Reserve X26, making it unavailable as a GPR. ✅ ⛔️
reserve-x27 Reserve X27, making it unavailable as a GPR. ✅ ⛔️
reserve-x28 Reserve X28, making it unavailable as a GPR. ✅ ⛔️
reserve-x3 Reserve X3, making it unavailable as a GPR. ✅ ⛔️
reserve-x30 Reserve X30, making it unavailable as a GPR. ✅ ⛔️
reserve-x4 Reserve X4, making it unavailable as a GPR. ✅ ⛔️
reserve-x5 Reserve X5, making it unavailable as a GPR. ✅ ⛔️
reserve-x6 Reserve X6, making it unavailable as a GPR. ✅ ⛔️
reserve-x7 Reserve X7, making it unavailable as a GPR. ✅ ⛔️
reserve-x9 Reserve X9, making it unavailable as a GPR. ✅ ⛔️
rme Enable Realm Management Extension. ✅ ⛔️
saphira Qualcomm Saphira processors. ✅ ⛔️
sel2 Enable v8.4-A Secure Exception Level 2 extension. ✅ ⛔️
slow-misaligned-128store Misaligned 128 bit stores are slow. ✅ ⛔️
slow-paired-128 Paired 128 bit loads and stores are slow. ✅ ⛔️
slow-strqro-store STR of Q register with register offset is slow. ✅ ⛔️
sme Enable Scalable Matrix Extension (SME). ✅ ⛔️
sme-f64 Enable Scalable Matrix Extension (SME) F64F64 instructions. ✅ ⛔️
sme-i64 Enable Scalable Matrix Extension (SME) I16I64 instructions. ✅ ⛔️
spe-eef Enable extra register in the Statistical Profiling Extension. ✅ ⛔️
specrestrict Enable architectural speculation restriction. ✅ ⛔️
strict-align Disallow all unaligned memory access. ✅ ⛔️
tagged-globals Use an instruction sequence for taking the address of a global that allows a memory tag in the upper address bits. ✅ ⛔️
thunderx Cavium ThunderX processors. ✅ ⛔️
thunderx2t99 Cavium ThunderX2 processors. ✅ ⛔️
thunderx3t110 Marvell ThunderX3 processors. ✅ ⛔️
thunderxt81 Cavium ThunderX processors. ✅ ⛔️
thunderxt83 Cavium ThunderX processors. ✅ ⛔️
thunderxt88 Cavium ThunderX processors. ✅ ⛔️
tlb-rmi Enable v8.4-A TLB Range and Maintenance Instructions. ✅ ⛔️
tpidr-el1 Permit use of TPIDR_EL1 for the TLS base. ✅ ⛔️
tpidr-el2 Permit use of TPIDR_EL2 for the TLS base. ✅ ⛔️
tpidr-el3 Permit use of TPIDR_EL3 for the TLS base. ✅ ⛔️
tracev8.4 Enable v8.4-A Trace extension. ✅ ⛔️
trbe Enable Trace Buffer Extension. ✅ ⛔️
tsv110 HiSilicon TS-V110 processors. ✅ ⛔️
uaops Enable v8.2 UAO PState. ✅ ⛔️
use-experimental-zeroing-pseudos Hint to the compiler that the MOVPRFX instruction is merged with destructive operations. ✅ ⛔️
use-postra-scheduler Schedule again after register allocation. ✅ ⛔️
use-reciprocal-square-root Use the reciprocal square root approximation. ✅ ⛔️
use-scalar-inc-vl Prefer inc/dec over add+cnt. ✅ ⛔️
v8.8a Support ARM v8.8a instructions. ✅ ⛔️
v8a Support ARM v8.0a instructions. ✅ ⛔️
v8r Support ARM v8r instructions. ✅ ⛔️
v9.1a Support ARM v9.1a instructions. ✅ ⛔️
v9.2a Support ARM v9.2a instructions. ✅ ⛔️
v9.3a Support ARM v9.3a instructions. ✅ ⛔️
v9a Support ARM v9a instructions. ✅ ⛔️
wfxt Enable Armv8.7-A WFET and WFIT instruction. ✅ ⛔️
xs Enable Armv8.7-A limited-TLB-maintenance instruction. ✅ ⛔️
zcm Has zero-cycle register moves. ✅ ⛔️
zcz Has zero-cycle zeroing instructions. ✅ ⛔️
zcz-fp-workaround The zero-cycle floating-point zeroing instruction has a bug. ✅ ⛔️
zcz-gp Has zero-cycle zeroing instructions for generic registers. ✅ ⛔️