[AMDGPU] Add True16 register classes.
[llvm-project.git] / llvm / test / MC / AArch64 / directive-arch_extension.s
blob8a0e1ac471cea78bec6d12f1862229b08bb5a100
1 // RUN: llvm-mc -triple aarch64 -filetype asm -o - %s | FileCheck %s
3 .arch_extension crc
4 crc32cx w0, w1, x3
5 // CHECK: crc32cx w0, w1, x3
7 .arch_extension sm4
8 sm4e v2.4s, v15.4s
9 // CHECK: sm4e v2.4s, v15.4s
11 .arch_extension sha3
12 sha512h q0, q1, v2.2d
13 // CHECK: sha512h q0, q1, v2.2d
15 .arch_extension sha2
16 sha1h s0, s1
17 // CHECK: sha1h s0, s1
19 .arch_extension aes
20 aese v0.16b, v1.16b
21 // CHECK: aese v0.16b, v1.16b
23 .arch_extension fp
24 fminnm d0, d0, d1
25 // CHECK: fminnm d0, d0, d1
27 .arch_extension simd
28 addp v0.4s, v0.4s, v0.4s
29 // CHECK: addp v0.4s, v0.4s, v0.4s
31 .arch_extension ras
32 esb
33 // CHECK: esb
35 .arch_extension lse
36 casa w5, w7, [x20]
37 // CHECK: casa w5, w7, [x20]
39 .arch_extension lse128
40 swpp x0, x2, [x3]
41 // CHECK: swpp x0, x2, [x3]
43 .arch_extension predres
44 cfp rctx, x0
45 // CHECK: cfp rctx, x0
47 .arch_extension predres2
48 cosp rctx, x0
49 // CHECK: cosp rctx, x0
51 .arch_extension ccdp
52 dc cvadp, x7
53 // CHECK: dc cvadp, x7
55 .arch_extension mte
56 irg x0, x1
57 // CHECK: irg x0, x1
59 .arch_extension memtag
60 irg x0, x1
61 // CHECK: irg x0, x1
63 .arch_extension tlb-rmi
64 tlbi vmalle1os
65 // CHECK: tlbi vmalle1os
67 .arch_extension pan
68 mrs x0, pan
69 // CHECK: mrs x0, PAN
71 .arch_extension pan-rwv
72 at s1e1wp, x2
73 // CHECK: at s1e1wp, x2
75 .arch_extension ccpp
76 dc cvap, x7
77 // CHECK: dc cvap, x7
79 .arch_extension rcpc
80 ldapr x0, [x1]
81 // CHECK: ldapr x0, [x1]
83 .arch_extension rcpc3
84 stilp w24, w0, [x16, #-8]!
85 // CHECK: stilp w24, w0, [x16, #-8]!
87 .arch_extension ls64
88 ld64b x0, [x13]
89 // CHECK: ld64b x0, [x13]
91 .arch_extension pauth
92 paciasp
93 // CHECK: paciasp
95 .arch_extension flagm
96 cfinv
97 // CHECK: cfinv
99 .arch_extension hbc
100 lbl:
101 bc.eq lbl
102 // CHECK: bc.eq lbl
104 .arch_extension mops
105 cpyfp [x0]!, [x1]!, x2!
106 // CHECK: cpyfp [x0]!, [x1]!, x2!
108 .arch_extension the
109 rcwswp x0, x1, [x2]
110 // CHECK: rcwswp x0, x1, [x2]
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
115 sysp #0, c2, c0, #0, x0, x1
116 rcwcasp x0, x1, x6, x7, [x4]
117 // CHECK: sysp #0, c2, c0, #0, x0, x1
118 // CHECK: rcwcasp x0, x1, x6, x7, [x4]
120 .arch_extension rasv2
121 mrs x0, ERXGSR_EL1
122 // CHECK: mrs x0, ERXGSR_EL1
124 .arch_extension ite
125 trcit x0
126 // CHECK: trcit x0
128 .arch_extension cssc
129 umax x0, x1, x2
130 // CHECK: umax x0, x1, x2
132 .arch_extension gcs
133 gcspushm x0
134 // CHECK: gcspushm x0
136 .arch_extension bf16
137 bfdot v0.2s, v0.4h, v0.4h
138 // CHECK: bfdot v0.2s, v0.4h, v0.4h
140 .arch_extension compnum
141 fcmla v1.2d, v2.2d, v3.2d, #0
142 // CHECK: fcmla v1.2d, v2.2d, v3.2d, #0
144 .arch_extension dotprod
145 udot v0.4s, v0.16b, v0.16b
146 // CHECK: udot v0.4s, v0.16b, v0.16b
148 .arch_extension f32mm
149 fmmla z0.s, z1.s, z2.s
150 // CHECK: fmmla z0.s, z1.s, z2.s
152 .arch_extension f64mm
153 fmmla z0.d, z1.d, z2.d
154 // CHECK: fmmla z0.d, z1.d, z2.d
156 .arch_extension fp16
157 fadd v0.8h, v0.8h, v0.8h
158 // CHECK: fadd v0.8h, v0.8h, v0.8h
160 .arch_extension fp16fml
161 fmlal v0.2s, v1.2h, v2.2h
162 // CHECK: fmlal v0.2s, v1.2h, v2.2h
164 .arch_extension i8mm
165 usdot v0.4s, v0.16b, v0.16b
166 // CHECK: usdot v0.4s, v0.16b, v0.16b
168 .arch_extension lor
169 stllr x0, [x0]
170 // CHECK: stllr x0, [x0]
172 .arch_extension profile
173 msr PMBLIMITR_EL1, x0
174 // CHECK: msr PMBLIMITR_EL1, x0
176 .arch_extension rdm
177 .arch_extension rdma
178 sqrdmlah v0.8h, v0.8h, v0.8h
179 // CHECK: sqrdmlah v0.8h, v0.8h, v0.8h
181 .arch_extension sb
183 // CHECK: sb
185 .arch_extension ssbs
186 msr SSBS, #1
187 // CHECK: msr SSBS, #1
189 .arch_extension tme
190 tstart x0
191 // CHECK: tstart x0