1 // RUN
: llvm-mc
-triple aarch64-none-linux-gnu
-show-encoding
-mattr
=+ite
< %s | FileCheck
%s
2 // RUN
: llvm-mc
-triple aarch64-none-linux-gnu
-show-encoding
-mattr
=+v8.8
a -mattr
=+ite
< %s | FileCheck
%s
3 // RUN
: llvm-mc
-triple aarch64-none-linux-gnu
-show-encoding
-mattr
=+v8.9
a -mattr
=+ite
< %s | FileCheck
%s
4 // RUN
: llvm-mc
-triple aarch64-none-linux-gnu
-show-encoding
-mattr
=+v9.3
a -mattr
=+ite
< %s | FileCheck
%s
5 // RUN
: llvm-mc
-triple aarch64-none-linux-gnu
-show-encoding
-mattr
=+v9.4
a -mattr
=+ite
< %s | FileCheck
%s
7 // RUN
: not llvm-mc
-triple aarch64-none-linux-gnu
-show-encoding
< %s
2>&1 | FileCheck
--check-prefix
=ERROR-NO-ITE
%s
8 // RUN
: not llvm-mc
-triple aarch64-none-linux-gnu
-show-encoding
-mattr
=+v8.8
a < %s
2>&1 | FileCheck
--check-prefix
=ERROR-NO-ITE
%s
9 // RUN
: not llvm-mc
-triple aarch64-none-linux-gnu
-show-encoding
-mattr
=+v8.9
a < %s
2>&1 | FileCheck
--check-prefix
=ERROR-NO-ITE
%s
10 // RUN
: not llvm-mc
-triple aarch64-none-linux-gnu
-show-encoding
-mattr
=+v9.3
a < %s
2>&1 | FileCheck
--check-prefix
=ERROR-NO-ITE
%s
11 // RUN
: not llvm-mc
-triple aarch64-none-linux-gnu
-show-encoding
-mattr
=+v9.4
a < %s
2>&1 | FileCheck
--check-prefix
=ERROR-NO-ITE
%s
15 // CHECK
: mrs x3
, MDSELR_EL1
// encoding
: [0x43,0x04,0x30,0xd5]
17 // CHECK
: msr MDSELR_EL1
, x1
// encoding
: [0x41,0x04,0x10,0xd5]
21 // CHECK
: mrs x3
, PMUACR_EL1
// encoding
: [0x83,0x9e,0x38,0xd5]
23 // CHECK
: msr PMUACR_EL1
, x1
// encoding
: [0x81,0x9e,0x18,0xd5]
27 // CHECK
: mrs x3
, PMCCNTSVR_EL1
// encoding
: [0xe3,0xeb,0x30,0xd5]
29 // CHECK
: mrs x3
, PMICNTSVR_EL1
// encoding
: [0x03,0xec,0x30,0xd5]
31 // CHECK
: mrs x3
, PMSSCR_EL1
// encoding
: [0x63,0x9d,0x38,0xd5]
33 // CHECK
: msr PMSSCR_EL1
, x1
// encoding
: [0x61,0x9d,0x18,0xd5]
34 mrs x3
, PMEVCNTSVR0_EL1
35 // CHECK
: mrs x3
, PMEVCNTSVR0_EL1
// encoding
: [0x03,0xe8,0x30,0xd5]
36 mrs x3
, PMEVCNTSVR1_EL1
37 // CHECK
: mrs x3
, PMEVCNTSVR1_EL1
// encoding
: [0x23,0xe8,0x30,0xd5]
38 mrs x3
, PMEVCNTSVR2_EL1
39 // CHECK
: mrs x3
, PMEVCNTSVR2_EL1
// encoding
: [0x43,0xe8,0x30,0xd5]
40 mrs x3
, PMEVCNTSVR3_EL1
41 // CHECK
: mrs x3
, PMEVCNTSVR3_EL1
// encoding
: [0x63,0xe8,0x30,0xd5]
42 mrs x3
, PMEVCNTSVR4_EL1
43 // CHECK
: mrs x3
, PMEVCNTSVR4_EL1
// encoding
: [0x83,0xe8,0x30,0xd5]
44 mrs x3
, PMEVCNTSVR5_EL1
45 // CHECK
: mrs x3
, PMEVCNTSVR5_EL1
// encoding
: [0xa3,0xe8,0x30,0xd5]
46 mrs x3
, PMEVCNTSVR6_EL1
47 // CHECK
: mrs x3
, PMEVCNTSVR6_EL1
// encoding
: [0xc3,0xe8,0x30,0xd5]
48 mrs x3
, PMEVCNTSVR7_EL1
49 // CHECK
: mrs x3
, PMEVCNTSVR7_EL1
// encoding
: [0xe3,0xe8,0x30,0xd5]
50 mrs x3
, PMEVCNTSVR8_EL1
51 // CHECK
: mrs x3
, PMEVCNTSVR8_EL1
// encoding
: [0x03,0xe9,0x30,0xd5]
52 mrs x3
, PMEVCNTSVR9_EL1
53 // CHECK
: mrs x3
, PMEVCNTSVR9_EL1
// encoding
: [0x23,0xe9,0x30,0xd5]
54 mrs x3
, PMEVCNTSVR10_EL1
55 // CHECK
: mrs x3
, PMEVCNTSVR10_EL1
// encoding
: [0x43,0xe9,0x30,0xd5]
56 mrs x3
, PMEVCNTSVR11_EL1
57 // CHECK
: mrs x3
, PMEVCNTSVR11_EL1
// encoding
: [0x63,0xe9,0x30,0xd5]
58 mrs x3
, PMEVCNTSVR12_EL1
59 // CHECK
: mrs x3
, PMEVCNTSVR12_EL1
// encoding
: [0x83,0xe9,0x30,0xd5]
60 mrs x3
, PMEVCNTSVR13_EL1
61 // CHECK
: mrs x3
, PMEVCNTSVR13_EL1
// encoding
: [0xa3,0xe9,0x30,0xd5]
62 mrs x3
, PMEVCNTSVR14_EL1
63 // CHECK
: mrs x3
, PMEVCNTSVR14_EL1
// encoding
: [0xc3,0xe9,0x30,0xd5]
64 mrs x3
, PMEVCNTSVR15_EL1
65 // CHECK
: mrs x3
, PMEVCNTSVR15_EL1
// encoding
: [0xe3,0xe9,0x30,0xd5]
66 mrs x3
, PMEVCNTSVR16_EL1
67 // CHECK
: mrs x3
, PMEVCNTSVR16_EL1
// encoding
: [0x03,0xea,0x30,0xd5]
68 mrs x3
, PMEVCNTSVR17_EL1
69 // CHECK
: mrs x3
, PMEVCNTSVR17_EL1
// encoding
: [0x23,0xea,0x30,0xd5]
70 mrs x3
, PMEVCNTSVR18_EL1
71 // CHECK
: mrs x3
, PMEVCNTSVR18_EL1
// encoding
: [0x43,0xea,0x30,0xd5]
72 mrs x3
, PMEVCNTSVR19_EL1
73 // CHECK
: mrs x3
, PMEVCNTSVR19_EL1
// encoding
: [0x63,0xea,0x30,0xd5]
74 mrs x3
, PMEVCNTSVR20_EL1
75 // CHECK
: mrs x3
, PMEVCNTSVR20_EL1
// encoding
: [0x83,0xea,0x30,0xd5]
76 mrs x3
, PMEVCNTSVR21_EL1
77 // CHECK
: mrs x3
, PMEVCNTSVR21_EL1
// encoding
: [0xa3,0xea,0x30,0xd5]
78 mrs x3
, PMEVCNTSVR22_EL1
79 // CHECK
: mrs x3
, PMEVCNTSVR22_EL1
// encoding
: [0xc3,0xea,0x30,0xd5]
80 mrs x3
, PMEVCNTSVR23_EL1
81 // CHECK
: mrs x3
, PMEVCNTSVR23_EL1
// encoding
: [0xe3,0xea,0x30,0xd5]
82 mrs x3
, PMEVCNTSVR24_EL1
83 // CHECK
: mrs x3
, PMEVCNTSVR24_EL1
// encoding
: [0x03,0xeb,0x30,0xd5]
84 mrs x3
, PMEVCNTSVR25_EL1
85 // CHECK
: mrs x3
, PMEVCNTSVR25_EL1
// encoding
: [0x23,0xeb,0x30,0xd5]
86 mrs x3
, PMEVCNTSVR26_EL1
87 // CHECK
: mrs x3
, PMEVCNTSVR26_EL1
// encoding
: [0x43,0xeb,0x30,0xd5]
88 mrs x3
, PMEVCNTSVR27_EL1
89 // CHECK
: mrs x3
, PMEVCNTSVR27_EL1
// encoding
: [0x63,0xeb,0x30,0xd5]
90 mrs x3
, PMEVCNTSVR28_EL1
91 // CHECK
: mrs x3
, PMEVCNTSVR28_EL1
// encoding
: [0x83,0xeb,0x30,0xd5]
92 mrs x3
, PMEVCNTSVR29_EL1
93 // CHECK
: mrs x3
, PMEVCNTSVR29_EL1
// encoding
: [0xa3,0xeb,0x30,0xd5]
94 mrs x3
, PMEVCNTSVR30_EL1
95 // CHECK
: mrs x3
, PMEVCNTSVR30_EL1
// encoding
: [0xc3,0xeb,0x30,0xd5]
99 // CHECK
: mrs x3
, PMICNTR_EL0
// encoding
: [0x03,0x94,0x3b,0xd5]
101 // CHECK
: msr PMICNTR_EL0
, x3
// encoding
: [0x03,0x94,0x1b,0xd5]
102 mrs x3
, PMICFILTR_EL0
103 // CHECK
: mrs x3
, PMICFILTR_EL0
// encoding
: [0x03,0x96,0x3b,0xd5]
104 msr PMICFILTR_EL0
, x3
105 // CHECK
: msr PMICFILTR_EL0
, x3
// encoding
: [0x03,0x96,0x1b,0xd5]
107 // FEAT_PMUv3p9
/FEAT_PMUV3_ICNTR
109 // CHECK
: msr PMZR_EL0
, x3
// encoding
: [0x83,0x9d,0x1b,0xd5]
113 // CHECK
: mrs x3
, PMECR_EL1
// encoding
: [0xa3,0x9e,0x38,0xd5]
115 // CHECK
: msr PMECR_EL1
, x1
// encoding
: [0xa1,0x9e,0x18,0xd5]
117 // CHECK
: mrs x3
, PMIAR_EL1
// encoding
: [0xe3,0x9e,0x38,0xd5]
119 // CHECK
: msr PMIAR_EL1
, x1
// encoding
: [0xe1,0x9e,0x18,0xd5]
122 mrs x3
, SPMACCESSR_EL1
123 // CHECK
: mrs x3
, SPMACCESSR_EL1
// encoding
: [0x63,0x9d,0x30,0xd5]
124 msr SPMACCESSR_EL1
, x1
125 // CHECK
: msr SPMACCESSR_EL1
, x1
// encoding
: [0x61,0x9d,0x10,0xd5]
126 mrs x3
, SPMACCESSR_EL12
127 // CHECK
: mrs x3
, SPMACCESSR_EL12
// encoding
: [0x63,0x9d,0x35,0xd5]
128 msr SPMACCESSR_EL12
, x1
129 // CHECK
: msr SPMACCESSR_EL12
, x1
// encoding
: [0x61,0x9d,0x15,0xd5]
130 mrs x3
, SPMACCESSR_EL2
131 // CHECK
: mrs x3
, SPMACCESSR_EL2
// encoding
: [0x63,0x9d,0x34,0xd5]
132 msr SPMACCESSR_EL2
, x1
133 // CHECK
: msr SPMACCESSR_EL2
, x1
// encoding
: [0x61,0x9d,0x14,0xd5]
134 mrs x3
, SPMACCESSR_EL3
135 // CHECK
: mrs x3
, SPMACCESSR_EL3
// encoding
: [0x63,0x9d,0x36,0xd5]
136 msr SPMACCESSR_EL3
, x1
137 // CHECK
: msr SPMACCESSR_EL3
, x1
// encoding
: [0x61,0x9d,0x16,0xd5]
138 mrs x3
, SPMCNTENCLR_EL0
139 // CHECK
: mrs x3
, SPMCNTENCLR_EL0
// encoding
: [0x43,0x9c,0x33,0xd5]
140 msr SPMCNTENCLR_EL0
, x1
141 // CHECK
: msr SPMCNTENCLR_EL0
, x1
// encoding
: [0x41,0x9c,0x13,0xd5]
142 mrs x3
, SPMCNTENSET_EL0
143 // CHECK
: mrs x3
, SPMCNTENSET_EL0
// encoding
: [0x23,0x9c,0x33,0xd5]
144 msr SPMCNTENSET_EL0
, x1
145 // CHECK
: msr SPMCNTENSET_EL0
, x1
// encoding
: [0x21,0x9c,0x13,0xd5]
147 // CHECK
: mrs x3
, SPMCR_EL0
// encoding
: [0x03,0x9c,0x33,0xd5]
149 // CHECK
: msr SPMCR_EL0
, x1
// encoding
: [0x01,0x9c,0x13,0xd5]
150 mrs x3
, SPMDEVAFF_EL1
151 // CHECK
: mrs x3
, SPMDEVAFF_EL1
// encoding
: [0xc3,0x9d,0x30,0xd5]
152 mrs x3
, SPMDEVARCH_EL1
153 // CHECK
: mrs x3
, SPMDEVARCH_EL1
// encoding
: [0xa3,0x9d,0x30,0xd5]
155 mrs x3
, SPMEVCNTR0_EL0
156 // CHECK
: mrs x3
, SPMEVCNTR0_EL0
// encoding
: [0x03,0xe0,0x33,0xd5]
157 msr SPMEVCNTR0_EL0
, x1
158 // CHECK
: msr SPMEVCNTR0_EL0
, x1
// encoding
: [0x01,0xe0,0x13,0xd5]
159 mrs x3
, SPMEVCNTR1_EL0
160 // CHECK
: mrs x3
, SPMEVCNTR1_EL0
// encoding
: [0x23,0xe0,0x33,0xd5]
161 msr SPMEVCNTR1_EL0
, x1
162 // CHECK
: msr SPMEVCNTR1_EL0
, x1
// encoding
: [0x21,0xe0,0x13,0xd5]
163 mrs x3
, SPMEVCNTR2_EL0
164 // CHECK
: mrs x3
, SPMEVCNTR2_EL0
// encoding
: [0x43,0xe0,0x33,0xd5]
165 msr SPMEVCNTR2_EL0
, x1
166 // CHECK
: msr SPMEVCNTR2_EL0
, x1
// encoding
: [0x41,0xe0,0x13,0xd5]
167 mrs x3
, SPMEVCNTR3_EL0
168 // CHECK
: mrs x3
, SPMEVCNTR3_EL0
// encoding
: [0x63,0xe0,0x33,0xd5]
169 msr SPMEVCNTR3_EL0
, x1
170 // CHECK
: msr SPMEVCNTR3_EL0
, x1
// encoding
: [0x61,0xe0,0x13,0xd5]
171 mrs x3
, SPMEVCNTR4_EL0
172 // CHECK
: mrs x3
, SPMEVCNTR4_EL0
// encoding
: [0x83,0xe0,0x33,0xd5]
173 msr SPMEVCNTR4_EL0
, x1
174 // CHECK
: msr SPMEVCNTR4_EL0
, x1
// encoding
: [0x81,0xe0,0x13,0xd5]
175 mrs x3
, SPMEVCNTR5_EL0
176 // CHECK
: mrs x3
, SPMEVCNTR5_EL0
// encoding
: [0xa3,0xe0,0x33,0xd5]
177 msr SPMEVCNTR5_EL0
, x1
178 // CHECK
: msr SPMEVCNTR5_EL0
, x1
// encoding
: [0xa1,0xe0,0x13,0xd5]
179 mrs x3
, SPMEVCNTR6_EL0
180 // CHECK
: mrs x3
, SPMEVCNTR6_EL0
// encoding
: [0xc3,0xe0,0x33,0xd5]
181 msr SPMEVCNTR6_EL0
, x1
182 // CHECK
: msr SPMEVCNTR6_EL0
, x1
// encoding
: [0xc1,0xe0,0x13,0xd5]
183 mrs x3
, SPMEVCNTR7_EL0
184 // CHECK
: mrs x3
, SPMEVCNTR7_EL0
// encoding
: [0xe3,0xe0,0x33,0xd5]
185 msr SPMEVCNTR7_EL0
, x1
186 // CHECK
: msr SPMEVCNTR7_EL0
, x1
// encoding
: [0xe1,0xe0,0x13,0xd5]
187 mrs x3
, SPMEVCNTR8_EL0
188 // CHECK
: mrs x3
, SPMEVCNTR8_EL0
// encoding
: [0x03,0xe1,0x33,0xd5]
189 msr SPMEVCNTR8_EL0
, x1
190 // CHECK
: msr SPMEVCNTR8_EL0
, x1
// encoding
: [0x01,0xe1,0x13,0xd5]
191 mrs x3
, SPMEVCNTR9_EL0
192 // CHECK
: mrs x3
, SPMEVCNTR9_EL0
// encoding
: [0x23,0xe1,0x33,0xd5]
193 msr SPMEVCNTR9_EL0
, x1
194 // CHECK
: msr SPMEVCNTR9_EL0
, x1
// encoding
: [0x21,0xe1,0x13,0xd5]
195 mrs x3
, SPMEVCNTR10_EL0
196 // CHECK
: mrs x3
, SPMEVCNTR10_EL0
// encoding
: [0x43,0xe1,0x33,0xd5]
197 msr SPMEVCNTR10_EL0
, x1
198 // CHECK
: msr SPMEVCNTR10_EL0
, x1
// encoding
: [0x41,0xe1,0x13,0xd5]
199 mrs x3
, SPMEVCNTR11_EL0
200 // CHECK
: mrs x3
, SPMEVCNTR11_EL0
// encoding
: [0x63,0xe1,0x33,0xd5]
201 msr SPMEVCNTR11_EL0
, x1
202 // CHECK
: msr SPMEVCNTR11_EL0
, x1
// encoding
: [0x61,0xe1,0x13,0xd5]
203 mrs x3
, SPMEVCNTR12_EL0
204 // CHECK
: mrs x3
, SPMEVCNTR12_EL0
// encoding
: [0x83,0xe1,0x33,0xd5]
205 msr SPMEVCNTR12_EL0
, x1
206 // CHECK
: msr SPMEVCNTR12_EL0
, x1
// encoding
: [0x81,0xe1,0x13,0xd5]
207 mrs x3
, SPMEVCNTR13_EL0
208 // CHECK
: mrs x3
, SPMEVCNTR13_EL0
// encoding
: [0xa3,0xe1,0x33,0xd5]
209 msr SPMEVCNTR13_EL0
, x1
210 // CHECK
: msr SPMEVCNTR13_EL0
, x1
// encoding
: [0xa1,0xe1,0x13,0xd5]
211 mrs x3
, SPMEVCNTR14_EL0
212 // CHECK
: mrs x3
, SPMEVCNTR14_EL0
// encoding
: [0xc3,0xe1,0x33,0xd5]
213 msr SPMEVCNTR14_EL0
, x1
214 // CHECK
: msr SPMEVCNTR14_EL0
, x1
// encoding
: [0xc1,0xe1,0x13,0xd5]
215 mrs x3
, SPMEVCNTR15_EL0
216 // CHECK
: mrs x3
, SPMEVCNTR15_EL0
// encoding
: [0xe3,0xe1,0x33,0xd5]
217 msr SPMEVCNTR15_EL0
, x1
218 // CHECK
: msr SPMEVCNTR15_EL0
, x1
// encoding
: [0xe1,0xe1,0x13,0xd5]
220 mrs x3
, SPMEVFILT2R0_EL0
221 // CHECK
: mrs x3
, SPMEVFILT2R0_EL0
// encoding
: [0x03,0xe6,0x33,0xd5]
222 msr SPMEVFILT2R0_EL0
, x1
223 // CHECK
: msr SPMEVFILT2R0_EL0
, x1
// encoding
: [0x01,0xe6,0x13,0xd5]
224 mrs x3
, SPMEVFILT2R1_EL0
225 // CHECK
: mrs x3
, SPMEVFILT2R1_EL0
// encoding
: [0x23,0xe6,0x33,0xd5]
226 msr SPMEVFILT2R1_EL0
, x1
227 // CHECK
: msr SPMEVFILT2R1_EL0
, x1
// encoding
: [0x21,0xe6,0x13,0xd5]
228 mrs x3
, SPMEVFILT2R2_EL0
229 // CHECK
: mrs x3
, SPMEVFILT2R2_EL0
// encoding
: [0x43,0xe6,0x33,0xd5]
230 msr SPMEVFILT2R2_EL0
, x1
231 // CHECK
: msr SPMEVFILT2R2_EL0
, x1
// encoding
: [0x41,0xe6,0x13,0xd5]
232 mrs x3
, SPMEVFILT2R3_EL0
233 // CHECK
: mrs x3
, SPMEVFILT2R3_EL0
// encoding
: [0x63,0xe6,0x33,0xd5]
234 msr SPMEVFILT2R3_EL0
, x1
235 // CHECK
: msr SPMEVFILT2R3_EL0
, x1
// encoding
: [0x61,0xe6,0x13,0xd5]
236 mrs x3
, SPMEVFILT2R4_EL0
237 // CHECK
: mrs x3
, SPMEVFILT2R4_EL0
// encoding
: [0x83,0xe6,0x33,0xd5]
238 msr SPMEVFILT2R4_EL0
, x1
239 // CHECK
: msr SPMEVFILT2R4_EL0
, x1
// encoding
: [0x81,0xe6,0x13,0xd5]
240 mrs x3
, SPMEVFILT2R5_EL0
241 // CHECK
: mrs x3
, SPMEVFILT2R5_EL0
// encoding
: [0xa3,0xe6,0x33,0xd5]
242 msr SPMEVFILT2R5_EL0
, x1
243 // CHECK
: msr SPMEVFILT2R5_EL0
, x1
// encoding
: [0xa1,0xe6,0x13,0xd5]
244 mrs x3
, SPMEVFILT2R6_EL0
245 // CHECK
: mrs x3
, SPMEVFILT2R6_EL0
// encoding
: [0xc3,0xe6,0x33,0xd5]
246 msr SPMEVFILT2R6_EL0
, x1
247 // CHECK
: msr SPMEVFILT2R6_EL0
, x1
// encoding
: [0xc1,0xe6,0x13,0xd5]
248 mrs x3
, SPMEVFILT2R7_EL0
249 // CHECK
: mrs x3
, SPMEVFILT2R7_EL0
// encoding
: [0xe3,0xe6,0x33,0xd5]
250 msr SPMEVFILT2R7_EL0
, x1
251 // CHECK
: msr SPMEVFILT2R7_EL0
, x1
// encoding
: [0xe1,0xe6,0x13,0xd5]
252 mrs x3
, SPMEVFILT2R8_EL0
253 // CHECK
: mrs x3
, SPMEVFILT2R8_EL0
// encoding
: [0x03,0xe7,0x33,0xd5]
254 msr SPMEVFILT2R8_EL0
, x1
255 // CHECK
: msr SPMEVFILT2R8_EL0
, x1
// encoding
: [0x01,0xe7,0x13,0xd5]
256 mrs x3
, SPMEVFILT2R9_EL0
257 // CHECK
: mrs x3
, SPMEVFILT2R9_EL0
// encoding
: [0x23,0xe7,0x33,0xd5]
258 msr SPMEVFILT2R9_EL0
, x1
259 // CHECK
: msr SPMEVFILT2R9_EL0
, x1
// encoding
: [0x21,0xe7,0x13,0xd5]
260 mrs x3
, SPMEVFILT2R10_EL0
261 // CHECK
: mrs x3
, SPMEVFILT2R10_EL0
// encoding
: [0x43,0xe7,0x33,0xd5]
262 msr SPMEVFILT2R10_EL0
, x1
263 // CHECK
: msr SPMEVFILT2R10_EL0
, x1
// encoding
: [0x41,0xe7,0x13,0xd5]
264 mrs x3
, SPMEVFILT2R11_EL0
265 // CHECK
: mrs x3
, SPMEVFILT2R11_EL0
// encoding
: [0x63,0xe7,0x33,0xd5]
266 msr SPMEVFILT2R11_EL0
, x1
267 // CHECK
: msr SPMEVFILT2R11_EL0
, x1
// encoding
: [0x61,0xe7,0x13,0xd5]
268 mrs x3
, SPMEVFILT2R12_EL0
269 // CHECK
: mrs x3
, SPMEVFILT2R12_EL0
// encoding
: [0x83,0xe7,0x33,0xd5]
270 msr SPMEVFILT2R12_EL0
, x1
271 // CHECK
: msr SPMEVFILT2R12_EL0
, x1
// encoding
: [0x81,0xe7,0x13,0xd5]
272 mrs x3
, SPMEVFILT2R13_EL0
273 // CHECK
: mrs x3
, SPMEVFILT2R13_EL0
// encoding
: [0xa3,0xe7,0x33,0xd5]
274 msr SPMEVFILT2R13_EL0
, x1
275 // CHECK
: msr SPMEVFILT2R13_EL0
, x1
// encoding
: [0xa1,0xe7,0x13,0xd5]
276 mrs x3
, SPMEVFILT2R14_EL0
277 // CHECK
: mrs x3
, SPMEVFILT2R14_EL0
// encoding
: [0xc3,0xe7,0x33,0xd5]
278 msr SPMEVFILT2R14_EL0
, x1
279 // CHECK
: msr SPMEVFILT2R14_EL0
, x1
// encoding
: [0xc1,0xe7,0x13,0xd5]
280 mrs x3
, SPMEVFILT2R15_EL0
281 // CHECK
: mrs x3
, SPMEVFILT2R15_EL0
// encoding
: [0xe3,0xe7,0x33,0xd5]
282 msr SPMEVFILT2R15_EL0
, x1
283 // CHECK
: msr SPMEVFILT2R15_EL0
, x1
// encoding
: [0xe1,0xe7,0x13,0xd5]
285 mrs x3
, SPMEVFILTR0_EL0
286 // CHECK
: mrs x3
, SPMEVFILTR0_EL0
// encoding
: [0x03,0xe4,0x33,0xd5]
287 msr SPMEVFILTR0_EL0
, x1
288 // CHECK
: msr SPMEVFILTR0_EL0
, x1
// encoding
: [0x01,0xe4,0x13,0xd5]
289 mrs x3
, SPMEVFILTR1_EL0
290 // CHECK
: mrs x3
, SPMEVFILTR1_EL0
// encoding
: [0x23,0xe4,0x33,0xd5]
291 msr SPMEVFILTR1_EL0
, x1
292 // CHECK
: msr SPMEVFILTR1_EL0
, x1
// encoding
: [0x21,0xe4,0x13,0xd5]
293 mrs x3
, SPMEVFILTR2_EL0
294 // CHECK
: mrs x3
, SPMEVFILTR2_EL0
// encoding
: [0x43,0xe4,0x33,0xd5]
295 msr SPMEVFILTR2_EL0
, x1
296 // CHECK
: msr SPMEVFILTR2_EL0
, x1
// encoding
: [0x41,0xe4,0x13,0xd5]
297 mrs x3
, SPMEVFILTR3_EL0
298 // CHECK
: mrs x3
, SPMEVFILTR3_EL0
// encoding
: [0x63,0xe4,0x33,0xd5]
299 msr SPMEVFILTR3_EL0
, x1
300 // CHECK
: msr SPMEVFILTR3_EL0
, x1
// encoding
: [0x61,0xe4,0x13,0xd5]
301 mrs x3
, SPMEVFILTR4_EL0
302 // CHECK
: mrs x3
, SPMEVFILTR4_EL0
// encoding
: [0x83,0xe4,0x33,0xd5]
303 msr SPMEVFILTR4_EL0
, x1
304 // CHECK
: msr SPMEVFILTR4_EL0
, x1
// encoding
: [0x81,0xe4,0x13,0xd5]
305 mrs x3
, SPMEVFILTR5_EL0
306 // CHECK
: mrs x3
, SPMEVFILTR5_EL0
// encoding
: [0xa3,0xe4,0x33,0xd5]
307 msr SPMEVFILTR5_EL0
, x1
308 // CHECK
: msr SPMEVFILTR5_EL0
, x1
// encoding
: [0xa1,0xe4,0x13,0xd5]
309 mrs x3
, SPMEVFILTR6_EL0
310 // CHECK
: mrs x3
, SPMEVFILTR6_EL0
// encoding
: [0xc3,0xe4,0x33,0xd5]
311 msr SPMEVFILTR6_EL0
, x1
312 // CHECK
: msr SPMEVFILTR6_EL0
, x1
// encoding
: [0xc1,0xe4,0x13,0xd5]
313 mrs x3
, SPMEVFILTR7_EL0
314 // CHECK
: mrs x3
, SPMEVFILTR7_EL0
// encoding
: [0xe3,0xe4,0x33,0xd5]
315 msr SPMEVFILTR7_EL0
, x1
316 // CHECK
: msr SPMEVFILTR7_EL0
, x1
// encoding
: [0xe1,0xe4,0x13,0xd5]
317 mrs x3
, SPMEVFILTR8_EL0
318 // CHECK
: mrs x3
, SPMEVFILTR8_EL0
// encoding
: [0x03,0xe5,0x33,0xd5]
319 msr SPMEVFILTR8_EL0
, x1
320 // CHECK
: msr SPMEVFILTR8_EL0
, x1
// encoding
: [0x01,0xe5,0x13,0xd5]
321 mrs x3
, SPMEVFILTR9_EL0
322 // CHECK
: mrs x3
, SPMEVFILTR9_EL0
// encoding
: [0x23,0xe5,0x33,0xd5]
323 msr SPMEVFILTR9_EL0
, x1
324 // CHECK
: msr SPMEVFILTR9_EL0
, x1
// encoding
: [0x21,0xe5,0x13,0xd5]
325 mrs x3
, SPMEVFILTR10_EL0
326 // CHECK
: mrs x3
, SPMEVFILTR10_EL0
// encoding
: [0x43,0xe5,0x33,0xd5]
327 msr SPMEVFILTR10_EL0
, x1
328 // CHECK
: msr SPMEVFILTR10_EL0
, x1
// encoding
: [0x41,0xe5,0x13,0xd5]
329 mrs x3
, SPMEVFILTR11_EL0
330 // CHECK
: mrs x3
, SPMEVFILTR11_EL0
// encoding
: [0x63,0xe5,0x33,0xd5]
331 msr SPMEVFILTR11_EL0
, x1
332 // CHECK
: msr SPMEVFILTR11_EL0
, x1
// encoding
: [0x61,0xe5,0x13,0xd5]
333 mrs x3
, SPMEVFILTR12_EL0
334 // CHECK
: mrs x3
, SPMEVFILTR12_EL0
// encoding
: [0x83,0xe5,0x33,0xd5]
335 msr SPMEVFILTR12_EL0
, x1
336 // CHECK
: msr SPMEVFILTR12_EL0
, x1
// encoding
: [0x81,0xe5,0x13,0xd5]
337 mrs x3
, SPMEVFILTR13_EL0
338 // CHECK
: mrs x3
, SPMEVFILTR13_EL0
// encoding
: [0xa3,0xe5,0x33,0xd5]
339 msr SPMEVFILTR13_EL0
, x1
340 // CHECK
: msr SPMEVFILTR13_EL0
, x1
// encoding
: [0xa1,0xe5,0x13,0xd5]
341 mrs x3
, SPMEVFILTR14_EL0
342 // CHECK
: mrs x3
, SPMEVFILTR14_EL0
// encoding
: [0xc3,0xe5,0x33,0xd5]
343 msr SPMEVFILTR14_EL0
, x1
344 // CHECK
: msr SPMEVFILTR14_EL0
, x1
// encoding
: [0xc1,0xe5,0x13,0xd5]
345 mrs x3
, SPMEVFILTR15_EL0
346 // CHECK
: mrs x3
, SPMEVFILTR15_EL0
// encoding
: [0xe3,0xe5,0x33,0xd5]
347 msr SPMEVFILTR15_EL0
, x1
348 // CHECK
: msr SPMEVFILTR15_EL0
, x1
// encoding
: [0xe1,0xe5,0x13,0xd5]
350 mrs x3
, SPMEVTYPER0_EL0
351 // CHECK
: mrs x3
, SPMEVTYPER0_EL0
// encoding
: [0x03,0xe2,0x33,0xd5]
352 msr SPMEVTYPER0_EL0
, x1
353 // CHECK
: msr SPMEVTYPER0_EL0
, x1
// encoding
: [0x01,0xe2,0x13,0xd5]
354 mrs x3
, SPMEVTYPER1_EL0
355 // CHECK
: mrs x3
, SPMEVTYPER1_EL0
// encoding
: [0x23,0xe2,0x33,0xd5]
356 msr SPMEVTYPER1_EL0
, x1
357 // CHECK
: msr SPMEVTYPER1_EL0
, x1
// encoding
: [0x21,0xe2,0x13,0xd5]
358 mrs x3
, SPMEVTYPER2_EL0
359 // CHECK
: mrs x3
, SPMEVTYPER2_EL0
// encoding
: [0x43,0xe2,0x33,0xd5]
360 msr SPMEVTYPER2_EL0
, x1
361 // CHECK
: msr SPMEVTYPER2_EL0
, x1
// encoding
: [0x41,0xe2,0x13,0xd5]
362 mrs x3
, SPMEVTYPER3_EL0
363 // CHECK
: mrs x3
, SPMEVTYPER3_EL0
// encoding
: [0x63,0xe2,0x33,0xd5]
364 msr SPMEVTYPER3_EL0
, x1
365 // CHECK
: msr SPMEVTYPER3_EL0
, x1
// encoding
: [0x61,0xe2,0x13,0xd5]
366 mrs x3
, SPMEVTYPER4_EL0
367 // CHECK
: mrs x3
, SPMEVTYPER4_EL0
// encoding
: [0x83,0xe2,0x33,0xd5]
368 msr SPMEVTYPER4_EL0
, x1
369 // CHECK
: msr SPMEVTYPER4_EL0
, x1
// encoding
: [0x81,0xe2,0x13,0xd5]
370 mrs x3
, SPMEVTYPER5_EL0
371 // CHECK
: mrs x3
, SPMEVTYPER5_EL0
// encoding
: [0xa3,0xe2,0x33,0xd5]
372 msr SPMEVTYPER5_EL0
, x1
373 // CHECK
: msr SPMEVTYPER5_EL0
, x1
// encoding
: [0xa1,0xe2,0x13,0xd5]
374 mrs x3
, SPMEVTYPER6_EL0
375 // CHECK
: mrs x3
, SPMEVTYPER6_EL0
// encoding
: [0xc3,0xe2,0x33,0xd5]
376 msr SPMEVTYPER6_EL0
, x1
377 // CHECK
: msr SPMEVTYPER6_EL0
, x1
// encoding
: [0xc1,0xe2,0x13,0xd5]
378 mrs x3
, SPMEVTYPER7_EL0
379 // CHECK
: mrs x3
, SPMEVTYPER7_EL0
// encoding
: [0xe3,0xe2,0x33,0xd5]
380 msr SPMEVTYPER7_EL0
, x1
381 // CHECK
: msr SPMEVTYPER7_EL0
, x1
// encoding
: [0xe1,0xe2,0x13,0xd5]
382 mrs x3
, SPMEVTYPER8_EL0
383 // CHECK
: mrs x3
, SPMEVTYPER8_EL0
// encoding
: [0x03,0xe3,0x33,0xd5]
384 msr SPMEVTYPER8_EL0
, x1
385 // CHECK
: msr SPMEVTYPER8_EL0
, x1
// encoding
: [0x01,0xe3,0x13,0xd5]
386 mrs x3
, SPMEVTYPER9_EL0
387 // CHECK
: mrs x3
, SPMEVTYPER9_EL0
// encoding
: [0x23,0xe3,0x33,0xd5]
388 msr SPMEVTYPER9_EL0
, x1
389 // CHECK
: msr SPMEVTYPER9_EL0
, x1
// encoding
: [0x21,0xe3,0x13,0xd5]
390 mrs x3
, SPMEVTYPER10_EL0
391 // CHECK
: mrs x3
, SPMEVTYPER10_EL0
// encoding
: [0x43,0xe3,0x33,0xd5]
392 msr SPMEVTYPER10_EL0
, x1
393 // CHECK
: msr SPMEVTYPER10_EL0
, x1
// encoding
: [0x41,0xe3,0x13,0xd5]
394 mrs x3
, SPMEVTYPER11_EL0
395 // CHECK
: mrs x3
, SPMEVTYPER11_EL0
// encoding
: [0x63,0xe3,0x33,0xd5]
396 msr SPMEVTYPER11_EL0
, x1
397 // CHECK
: msr SPMEVTYPER11_EL0
, x1
// encoding
: [0x61,0xe3,0x13,0xd5]
398 mrs x3
, SPMEVTYPER12_EL0
399 // CHECK
: mrs x3
, SPMEVTYPER12_EL0
// encoding
: [0x83,0xe3,0x33,0xd5]
400 msr SPMEVTYPER12_EL0
, x1
401 // CHECK
: msr SPMEVTYPER12_EL0
, x1
// encoding
: [0x81,0xe3,0x13,0xd5]
402 mrs x3
, SPMEVTYPER13_EL0
403 // CHECK
: mrs x3
, SPMEVTYPER13_EL0
// encoding
: [0xa3,0xe3,0x33,0xd5]
404 msr SPMEVTYPER13_EL0
, x1
405 // CHECK
: msr SPMEVTYPER13_EL0
, x1
// encoding
: [0xa1,0xe3,0x13,0xd5]
406 mrs x3
, SPMEVTYPER14_EL0
407 // CHECK
: mrs x3
, SPMEVTYPER14_EL0
// encoding
: [0xc3,0xe3,0x33,0xd5]
408 msr SPMEVTYPER14_EL0
, x1
409 // CHECK
: msr SPMEVTYPER14_EL0
, x1
// encoding
: [0xc1,0xe3,0x13,0xd5]
410 mrs x3
, SPMEVTYPER15_EL0
411 // CHECK
: mrs x3
, SPMEVTYPER15_EL0
// encoding
: [0xe3,0xe3,0x33,0xd5]
412 msr SPMEVTYPER15_EL0
, x1
413 // CHECK
: msr SPMEVTYPER15_EL0
, x1
// encoding
: [0xe1,0xe3,0x13,0xd5]
416 // CHECK
: mrs x3
, SPMIIDR_EL1
// encoding
: [0x83,0x9d,0x30,0xd5]
417 mrs x3
, SPMINTENCLR_EL1
418 // CHECK
: mrs x3
, SPMINTENCLR_EL1
// encoding
: [0x43,0x9e,0x30,0xd5]
419 msr SPMINTENCLR_EL1
, x1
420 // CHECK
: msr SPMINTENCLR_EL1
, x1
// encoding
: [0x41,0x9e,0x10,0xd5]
421 mrs x3
, SPMINTENSET_EL1
422 // CHECK
: mrs x3
, SPMINTENSET_EL1
// encoding
: [0x23,0x9e,0x30,0xd5]
423 msr SPMINTENSET_EL1
, x1
424 // CHECK
: msr SPMINTENSET_EL1
, x1
// encoding
: [0x21,0x9e,0x10,0xd5]
425 mrs x3
, SPMOVSCLR_EL0
426 // CHECK
: mrs x3
, SPMOVSCLR_EL0
// encoding
: [0x63,0x9c,0x33,0xd5]
427 msr SPMOVSCLR_EL0
, x1
428 // CHECK
: msr SPMOVSCLR_EL0
, x1
// encoding
: [0x61,0x9c,0x13,0xd5]
429 mrs x3
, SPMOVSSET_EL0
430 // CHECK
: mrs x3
, SPMOVSSET_EL0
// encoding
: [0x63,0x9e,0x33,0xd5]
431 msr SPMOVSSET_EL0
, x1
432 // CHECK
: msr SPMOVSSET_EL0
, x1
// encoding
: [0x61,0x9e,0x13,0xd5]
434 // CHECK
: mrs x3
, SPMSELR_EL0
// encoding
: [0xa3,0x9c,0x33,0xd5]
436 // CHECK
: msr SPMSELR_EL0
, x1
// encoding
: [0xa1,0x9c,0x13,0xd5]
438 // CHECK
: mrs x3
, SPMCGCR0_EL1
// encoding
: [0x03,0x9d,0x30,0xd5]
440 // CHECK
: mrs x3
, SPMCGCR1_EL1
// encoding
: [0x23,0x9d,0x30,0xd5]
442 // CHECK
: mrs x3
, SPMCFGR_EL1
// encoding
: [0xe3,0x9d,0x30,0xd5]
443 mrs x3
, SPMROOTCR_EL3
444 // CHECK
: mrs x3
, SPMROOTCR_EL3
// encoding
: [0xe3,0x9e,0x36,0xd5]
445 msr SPMROOTCR_EL3
, x3
446 // CHECK
: msr SPMROOTCR_EL3
, x3
// encoding
: [0xe3,0x9e,0x16,0xd5]
448 // CHECK
: mrs x3
, SPMSCR_EL1
// encoding
: [0xe3,0x9e,0x37,0xd5]
450 // CHECK
: msr SPMSCR_EL1
, x3
// encoding
: [0xe3,0x9e,0x17,0xd5]
454 // CHECK
: mrs x3
, TRCITEEDCR
// encoding
: [0x23,0x02,0x31,0xd5]
455 // ERROR-NO-ITE
: [[@LINE-
2]]:21: error
: expected readable system register
457 // CHECK
: msr TRCITEEDCR
, x3
// encoding
: [0x23,0x02,0x11,0xd5]
458 // ERROR-NO-ITE
: [[@LINE-
2]]:17: error
: expected writable system register
460 // CHECK
: mrs x3
, TRCITECR_EL1
// encoding
: [0x63,0x12,0x38,0xd5]
461 // ERROR-NO-ITE
: [[@LINE-
2]]:21: error
: expected readable system register
463 // CHECK
: msr TRCITECR_EL1
, x1
// encoding
: [0x61,0x12,0x18,0xd5]
464 // ERROR-NO-ITE
: [[@LINE-
2]]:17: error
: expected writable system register
or pstate
465 mrs x3
, TRCITECR_EL12
466 // CHECK
: mrs x3
, TRCITECR_EL12
// encoding
: [0x63,0x12,0x3d,0xd5]
467 // ERROR-NO-ITE
: [[@LINE-
2]]:21: error
: expected readable system register
468 msr TRCITECR_EL12
, x1
469 // CHECK
: msr TRCITECR_EL12
, x1
// encoding
: [0x61,0x12,0x1d,0xd5]
470 // ERROR-NO-ITE
: [[@LINE-
2]]:17: error
: expected writable system register
or pstate
472 // CHECK
: mrs x3
, TRCITECR_EL2
// encoding
: [0x63,0x12,0x3c,0xd5]
473 // ERROR-NO-ITE
: [[@LINE-
2]]:21: error
: expected readable system register
475 // CHECK
: msr TRCITECR_EL2
, x1
// encoding
: [0x61,0x12,0x1c,0xd5]
476 // ERROR-NO-ITE
: [[@LINE-
2]]:17: error
: expected writable system register
or pstate
478 // CHECK
: trcit x1
// encoding
: [0xe1,0x72,0x0b,0xd5]
479 // ERROR-NO-ITE
: [[@LINE-
2]]:13: error
: instruction requires
: ite
483 // CHECK
: mrs x3
, PMSDSFR_EL1
// encoding
: [0x83,0x9a,0x38,0xd5]
485 // CHECK
: msr PMSDSFR_EL1
, x3
// encoding
: [0x83,0x9a,0x18,0xd5]