1// RUN: llvm-mc -triple aarch64 -filetype asm -o - %s | FileCheck %s 2 3.arch_extension crc 4crc32cx w0, w1, x3 5// CHECK: crc32cx w0, w1, x3 6 7.arch_extension sm4 8sm4e v2.4s, v15.4s 9// CHECK: sm4e v2.4s, v15.4s 10 11.arch_extension sha3 12sha512h q0, q1, v2.2d 13// CHECK: sha512h q0, q1, v2.2d 14 15.arch_extension sha2 16sha1h s0, s1 17// CHECK: sha1h s0, s1 18 19.arch_extension aes 20aese v0.16b, v1.16b 21// CHECK: aese v0.16b, v1.16b 22 23.arch_extension fp 24fminnm d0, d0, d1 25// CHECK: fminnm d0, d0, d1 26 27.arch_extension simd 28addp v0.4s, v0.4s, v0.4s 29// CHECK: addp v0.4s, v0.4s, v0.4s 30 31.arch_extension ras 32esb 33// CHECK: esb 34 35.arch_extension lse 36casa w5, w7, [x20] 37// CHECK: casa w5, w7, [x20] 38 39.arch_extension lse128 40swpp x0, x2, [x3] 41// CHECK: swpp x0, x2, [x3] 42 43.arch_extension predres 44cfp rctx, x0 45// CHECK: cfp rctx, x0 46 47.arch_extension predres2 48cosp rctx, x0 49// CHECK: cosp rctx, x0 50 51.arch_extension ccdp 52dc cvadp, x7 53// CHECK: dc cvadp, x7 54 55.arch_extension mte 56irg x0, x1 57// CHECK: irg x0, x1 58 59.arch_extension memtag 60irg x0, x1 61// CHECK: irg x0, x1 62 63.arch_extension tlb-rmi 64tlbi vmalle1os 65// CHECK: tlbi vmalle1os 66 67.arch_extension pan 68mrs x0, pan 69// CHECK: mrs x0, PAN 70 71.arch_extension pan-rwv 72at s1e1wp, x2 73// CHECK: at s1e1wp, x2 74 75.arch_extension ccpp 76dc cvap, x7 77// CHECK: dc cvap, x7 78 79.arch_extension rcpc 80ldapr x0, [x1] 81// CHECK: ldapr x0, [x1] 82 83.arch_extension rcpc3 84stilp w24, w0, [x16, #-8]! 85// CHECK: stilp w24, w0, [x16, #-8]! 86 87.arch_extension ls64 88ld64b x0, [x13] 89// CHECK: ld64b x0, [x13] 90 91.arch_extension pauth 92paciasp 93// CHECK: paciasp 94 95.arch_extension flagm 96cfinv 97// CHECK: cfinv 98 99.arch_extension hbc 100lbl: 101 bc.eq lbl 102// CHECK: bc.eq lbl 103 104.arch_extension mops 105cpyfp [x0]!, [x1]!, x2! 106// CHECK: cpyfp [x0]!, [x1]!, x2! 107 108.arch_extension the 109rcwswp x0, x1, [x2] 110// CHECK: rcwswp x0, x1, [x2] 111 112// This needs to come after `.arch_extension the` as it uses an instruction that 113// requires both the and d128 114.arch_extension d128 115sysp #0, c2, c0, #0, x0, x1 116rcwcasp x0, x1, x6, x7, [x4] 117// CHECK: sysp #0, c2, c0, #0, x0, x1 118// CHECK: rcwcasp x0, x1, x6, x7, [x4] 119 120.arch_extension rasv2 121mrs x0, ERXGSR_EL1 122// CHECK: mrs x0, ERXGSR_EL1 123 124.arch_extension ite 125trcit x0 126// CHECK: trcit x0 127 128.arch_extension cssc 129umax x0, x1, x2 130// CHECK: umax x0, x1, x2 131 132.arch_extension gcs 133gcspushm x0 134// CHECK: gcspushm x0 135 136.arch_extension bf16 137bfdot v0.2s, v0.4h, v0.4h 138// CHECK: bfdot v0.2s, v0.4h, v0.4h 139 140.arch_extension compnum 141fcmla v1.2d, v2.2d, v3.2d, #0 142// CHECK: fcmla v1.2d, v2.2d, v3.2d, #0 143 144.arch_extension dotprod 145udot v0.4s, v0.16b, v0.16b 146// CHECK: udot v0.4s, v0.16b, v0.16b 147 148.arch_extension f32mm 149fmmla z0.s, z1.s, z2.s 150// CHECK: fmmla z0.s, z1.s, z2.s 151 152.arch_extension f64mm 153fmmla z0.d, z1.d, z2.d 154// CHECK: fmmla z0.d, z1.d, z2.d 155 156.arch_extension fp16 157fadd v0.8h, v0.8h, v0.8h 158// CHECK: fadd v0.8h, v0.8h, v0.8h 159 160.arch_extension fp16fml 161fmlal v0.2s, v1.2h, v2.2h 162// CHECK: fmlal v0.2s, v1.2h, v2.2h 163 164.arch_extension i8mm 165usdot v0.4s, v0.16b, v0.16b 166// CHECK: usdot v0.4s, v0.16b, v0.16b 167 168.arch_extension lor 169stllr x0, [x0] 170// CHECK: stllr x0, [x0] 171 172.arch_extension profile 173msr PMBLIMITR_EL1, x0 174// CHECK: msr PMBLIMITR_EL1, x0 175 176.arch_extension rdm 177.arch_extension rdma 178sqrdmlah v0.8h, v0.8h, v0.8h 179// CHECK: sqrdmlah v0.8h, v0.8h, v0.8h 180 181.arch_extension sb 182sb 183// CHECK: sb 184 185.arch_extension ssbs 186msr SSBS, #1 187// CHECK: msr SSBS, #1 188 189.arch_extension tme 190tstart x0 191// CHECK: tstart x0 192 193.arch_extension fprcvt 194fcvtns s0, d1 195// CHECK: fcvtns s0, d1 196 197.arch_extension f8f16mm 198fmmla v1.8h, v2.16b, v3.16b 199// CHECK: fmmla v1.8h, v2.16b, v3.16b 200 201.arch_extension f8f32mm 202fmmla v1.4s, v2.16b, v3.16b 203// CHECK: fmmla v1.4s, v2.16b, v3.16b 204