192 lines
3.3 KiB
ArmAsm
192 lines
3.3 KiB
ArmAsm
|
// RUN: llvm-mc -triple aarch64 -filetype asm -o - %s | FileCheck %s
|
||
|
|
||
|
.arch_extension crc
|
||
|
crc32cx w0, w1, x3
|
||
|
// CHECK: crc32cx w0, w1, x3
|
||
|
|
||
|
.arch_extension sm4
|
||
|
sm4e v2.4s, v15.4s
|
||
|
// CHECK: sm4e v2.4s, v15.4s
|
||
|
|
||
|
.arch_extension sha3
|
||
|
sha512h q0, q1, v2.2d
|
||
|
// CHECK: sha512h q0, q1, v2.2d
|
||
|
|
||
|
.arch_extension sha2
|
||
|
sha1h s0, s1
|
||
|
// CHECK: sha1h s0, s1
|
||
|
|
||
|
.arch_extension aes
|
||
|
aese v0.16b, v1.16b
|
||
|
// CHECK: aese v0.16b, v1.16b
|
||
|
|
||
|
.arch_extension fp
|
||
|
fminnm d0, d0, d1
|
||
|
// CHECK: fminnm d0, d0, d1
|
||
|
|
||
|
.arch_extension simd
|
||
|
addp v0.4s, v0.4s, v0.4s
|
||
|
// CHECK: addp v0.4s, v0.4s, v0.4s
|
||
|
|
||
|
.arch_extension ras
|
||
|
esb
|
||
|
// CHECK: esb
|
||
|
|
||
|
.arch_extension lse
|
||
|
casa w5, w7, [x20]
|
||
|
// CHECK: casa w5, w7, [x20]
|
||
|
|
||
|
.arch_extension lse128
|
||
|
swpp x0, x2, [x3]
|
||
|
// CHECK: swpp x0, x2, [x3]
|
||
|
|
||
|
.arch_extension predres
|
||
|
cfp rctx, x0
|
||
|
// CHECK: cfp rctx, x0
|
||
|
|
||
|
.arch_extension predres2
|
||
|
cosp rctx, x0
|
||
|
// CHECK: cosp rctx, x0
|
||
|
|
||
|
.arch_extension ccdp
|
||
|
dc cvadp, x7
|
||
|
// CHECK: dc cvadp, x7
|
||
|
|
||
|
.arch_extension mte
|
||
|
irg x0, x1
|
||
|
// CHECK: irg x0, x1
|
||
|
|
||
|
.arch_extension memtag
|
||
|
irg x0, x1
|
||
|
// CHECK: irg x0, x1
|
||
|
|
||
|
.arch_extension tlb-rmi
|
||
|
tlbi vmalle1os
|
||
|
// CHECK: tlbi vmalle1os
|
||
|
|
||
|
.arch_extension pan
|
||
|
mrs x0, pan
|
||
|
// CHECK: mrs x0, PAN
|
||
|
|
||
|
.arch_extension pan-rwv
|
||
|
at s1e1wp, x2
|
||
|
// CHECK: at s1e1wp, x2
|
||
|
|
||
|
.arch_extension ccpp
|
||
|
dc cvap, x7
|
||
|
// CHECK: dc cvap, x7
|
||
|
|
||
|
.arch_extension rcpc
|
||
|
ldapr x0, [x1]
|
||
|
// CHECK: ldapr x0, [x1]
|
||
|
|
||
|
.arch_extension rcpc3
|
||
|
stilp w24, w0, [x16, #-8]!
|
||
|
// CHECK: stilp w24, w0, [x16, #-8]!
|
||
|
|
||
|
.arch_extension ls64
|
||
|
ld64b x0, [x13]
|
||
|
// CHECK: ld64b x0, [x13]
|
||
|
|
||
|
.arch_extension pauth
|
||
|
paciasp
|
||
|
// CHECK: paciasp
|
||
|
|
||
|
.arch_extension flagm
|
||
|
cfinv
|
||
|
// CHECK: cfinv
|
||
|
|
||
|
.arch_extension hbc
|
||
|
lbl:
|
||
|
bc.eq lbl
|
||
|
// CHECK: bc.eq lbl
|
||
|
|
||
|
.arch_extension mops
|
||
|
cpyfp [x0]!, [x1]!, x2!
|
||
|
// CHECK: cpyfp [x0]!, [x1]!, x2!
|
||
|
|
||
|
.arch_extension the
|
||
|
rcwswp x0, x1, [x2]
|
||
|
// CHECK: rcwswp x0, x1, [x2]
|
||
|
|
||
|
// This needs to come after `.arch_extension the` as it uses an instruction that
|
||
|
// requires both the and d128
|
||
|
.arch_extension d128
|
||
|
sysp #0, c2, c0, #0, x0, x1
|
||
|
rcwcasp x0, x1, x6, x7, [x4]
|
||
|
// CHECK: sysp #0, c2, c0, #0, x0, x1
|
||
|
// CHECK: rcwcasp x0, x1, x6, x7, [x4]
|
||
|
|
||
|
.arch_extension rasv2
|
||
|
mrs x0, ERXGSR_EL1
|
||
|
// CHECK: mrs x0, ERXGSR_EL1
|
||
|
|
||
|
.arch_extension ite
|
||
|
trcit x0
|
||
|
// CHECK: trcit x0
|
||
|
|
||
|
.arch_extension cssc
|
||
|
umax x0, x1, x2
|
||
|
// CHECK: umax x0, x1, x2
|
||
|
|
||
|
.arch_extension gcs
|
||
|
gcspushm x0
|
||
|
// CHECK: gcspushm x0
|
||
|
|
||
|
.arch_extension bf16
|
||
|
bfdot v0.2s, v0.4h, v0.4h
|
||
|
// CHECK: bfdot v0.2s, v0.4h, v0.4h
|
||
|
|
||
|
.arch_extension compnum
|
||
|
fcmla v1.2d, v2.2d, v3.2d, #0
|
||
|
// CHECK: fcmla v1.2d, v2.2d, v3.2d, #0
|
||
|
|
||
|
.arch_extension dotprod
|
||
|
udot v0.4s, v0.16b, v0.16b
|
||
|
// CHECK: udot v0.4s, v0.16b, v0.16b
|
||
|
|
||
|
.arch_extension f32mm
|
||
|
fmmla z0.s, z1.s, z2.s
|
||
|
// CHECK: fmmla z0.s, z1.s, z2.s
|
||
|
|
||
|
.arch_extension f64mm
|
||
|
fmmla z0.d, z1.d, z2.d
|
||
|
// CHECK: fmmla z0.d, z1.d, z2.d
|
||
|
|
||
|
.arch_extension fp16
|
||
|
fadd v0.8h, v0.8h, v0.8h
|
||
|
// CHECK: fadd v0.8h, v0.8h, v0.8h
|
||
|
|
||
|
.arch_extension fp16fml
|
||
|
fmlal v0.2s, v1.2h, v2.2h
|
||
|
// CHECK: fmlal v0.2s, v1.2h, v2.2h
|
||
|
|
||
|
.arch_extension i8mm
|
||
|
usdot v0.4s, v0.16b, v0.16b
|
||
|
// CHECK: usdot v0.4s, v0.16b, v0.16b
|
||
|
|
||
|
.arch_extension lor
|
||
|
stllr x0, [x0]
|
||
|
// CHECK: stllr x0, [x0]
|
||
|
|
||
|
.arch_extension profile
|
||
|
msr PMBLIMITR_EL1, x0
|
||
|
// CHECK: msr PMBLIMITR_EL1, x0
|
||
|
|
||
|
.arch_extension rdm
|
||
|
.arch_extension rdma
|
||
|
sqrdmlah v0.8h, v0.8h, v0.8h
|
||
|
// CHECK: sqrdmlah v0.8h, v0.8h, v0.8h
|
||
|
|
||
|
.arch_extension sb
|
||
|
sb
|
||
|
// CHECK: sb
|
||
|
|
||
|
.arch_extension ssbs
|
||
|
msr SSBS, #1
|
||
|
// CHECK: msr SSBS, #1
|
||
|
|
||
|
.arch_extension tme
|
||
|
tstart x0
|
||
|
// CHECK: tstart x0
|