1 // RUN
: llvm-mc
-triple aarch64-none-linux-gnu
-show-encoding
< %s | FileCheck
%s
6 mrs x17
, icc_hppir0_el1
19 mrs x22
, icc_igrpen0_el1
20 mrs x5
, icc_igrpen1_el1
21 mrs x7
, icc_igrpen1_el3
22 mrs x22
, icc_seien_el1
24 mrs x11
, icc_ap0r1_el1
25 mrs x27
, icc_ap0r2_el1
26 mrs x21
, icc_ap0r3_el1
28 mrs x21
, icc_ap1r1_el1
29 mrs x10
, icc_ap1r2_el1
30 mrs x27
, icc_ap1r3_el1
31 mrs x20
, ich_ap0r0_el2
32 mrs x21
, ich_ap0r1_el2
35 mrs x15
, ich_ap1r0_el2
36 mrs x12
, ich_ap1r1_el2
37 mrs x27
, ich_ap1r2_el2
38 mrs x20
, ich_ap1r3_el2
42 mrs x19
, ich_vseir_el2
59 // CHECK
: mrs x8
, {{icc_iar1_el1|ICC_IAR1_EL1
}} // encoding
: [0x08,0xcc,0x38,0xd5]
60 // CHECK
: mrs x26
, {{icc_iar0_el1|ICC_IAR0_EL1
}} // encoding
: [0x1a,0xc8,0x38,0xd5]
61 // CHECK
: mrs x2
, {{icc_hppir1_el1|ICC_HPPIR1_EL1
}} // encoding
: [0x42,0xcc,0x38,0xd5]
62 // CHECK
: mrs x17
, {{icc_hppir0_el1|ICC_HPPIR0_EL1
}} // encoding
: [0x51,0xc8,0x38,0xd5]
63 // CHECK
: mrs x29
, {{icc_rpr_el1|ICC_RPR_EL1
}} // encoding
: [0x7d,0xcb,0x38,0xd5]
64 // CHECK
: mrs x4
, {{ich_vtr_el2|ICH_VTR_EL2
}} // encoding
: [0x24,0xcb,0x3c,0xd5]
65 // CHECK
: mrs x24
, {{ich_eisr_el2|ICH_EISR_EL2
}} // encoding
: [0x78,0xcb,0x3c,0xd5]
66 // CHECK
: mrs x9
, {{ich_elrsr_el2|ICH_ELRSR_EL2
}} // encoding
: [0xa9,0xcb,0x3c,0xd5]
67 // CHECK
: mrs x24
, {{icc_bpr1_el1|ICC_BPR1_EL1
}} // encoding
: [0x78,0xcc,0x38,0xd5]
68 // CHECK
: mrs x14
, {{icc_bpr0_el1|ICC_BPR0_EL1
}} // encoding
: [0x6e,0xc8,0x38,0xd5]
69 // CHECK
: mrs x19
, {{icc_pmr_el1|ICC_PMR_EL1
}} // encoding
: [0x13,0x46,0x38,0xd5]
70 // CHECK
: mrs x23
, {{icc_ctlr_el1|ICC_CTLR_EL1
}} // encoding
: [0x97,0xcc,0x38,0xd5]
71 // CHECK
: mrs x20
, {{icc_ctlr_el3|ICC_CTLR_EL3
}} // encoding
: [0x94,0xcc,0x3e,0xd5]
72 // CHECK
: mrs x28
, {{icc_sre_el1|ICC_SRE_EL1
}} // encoding
: [0xbc,0xcc,0x38,0xd5]
73 // CHECK
: mrs x25
, {{icc_sre_el2|ICC_SRE_EL2
}} // encoding
: [0xb9,0xc9,0x3c,0xd5]
74 // CHECK
: mrs x8
, {{icc_sre_el3|ICC_SRE_EL3
}} // encoding
: [0xa8,0xcc,0x3e,0xd5]
75 // CHECK
: mrs x22
, {{icc_igrpen0_el1|ICC_IGRPEN0_EL1
}} // encoding
: [0xd6,0xcc,0x38,0xd5]
76 // CHECK
: mrs x5
, {{icc_igrpen1_el1|ICC_IGRPEN1_EL1
}} // encoding
: [0xe5,0xcc,0x38,0xd5]
77 // CHECK
: mrs x7
, {{icc_igrpen1_el3|ICC_IGRPEN1_EL3
}} // encoding
: [0xe7,0xcc,0x3e,0xd5]
78 // CHECK
: mrs x22
, {{icc_seien_el1|ICC_SEIEN_EL1
}} // encoding
: [0x16,0xcd,0x38,0xd5]
79 // CHECK
: mrs x4
, {{icc_ap0r0_el1|ICC_AP0R0_EL1
}} // encoding
: [0x84,0xc8,0x38,0xd5]
80 // CHECK
: mrs x11
, {{icc_ap0r1_el1|ICC_AP0R1_EL1
}} // encoding
: [0xab,0xc8,0x38,0xd5]
81 // CHECK
: mrs x27
, {{icc_ap0r2_el1|ICC_AP0R2_EL1
}} // encoding
: [0xdb,0xc8,0x38,0xd5]
82 // CHECK
: mrs x21
, {{icc_ap0r3_el1|ICC_AP0R3_EL1
}} // encoding
: [0xf5,0xc8,0x38,0xd5]
83 // CHECK
: mrs x2
, {{icc_ap1r0_el1|ICC_AP1R0_EL1
}} // encoding
: [0x02,0xc9,0x38,0xd5]
84 // CHECK
: mrs x21
, {{icc_ap1r1_el1|ICC_AP1R1_EL1
}} // encoding
: [0x35,0xc9,0x38,0xd5]
85 // CHECK
: mrs x10
, {{icc_ap1r2_el1|ICC_AP1R2_EL1
}} // encoding
: [0x4a,0xc9,0x38,0xd5]
86 // CHECK
: mrs x27
, {{icc_ap1r3_el1|ICC_AP1R3_EL1
}} // encoding
: [0x7b,0xc9,0x38,0xd5]
87 // CHECK
: mrs x20
, {{ich_ap0r0_el2|ICH_AP0R0_EL2
}} // encoding
: [0x14,0xc8,0x3c,0xd5]
88 // CHECK
: mrs x21
, {{ich_ap0r1_el2|ICH_AP0R1_EL2
}} // encoding
: [0x35,0xc8,0x3c,0xd5]
89 // CHECK
: mrs x5
, {{ich_ap0r2_el2|ICH_AP0R2_EL2
}} // encoding
: [0x45,0xc8,0x3c,0xd5]
90 // CHECK
: mrs x4
, {{ich_ap0r3_el2|ICH_AP0R3_EL2
}} // encoding
: [0x64,0xc8,0x3c,0xd5]
91 // CHECK
: mrs x15
, {{ich_ap1r0_el2|ICH_AP1R0_EL2
}} // encoding
: [0x0f,0xc9,0x3c,0xd5]
92 // CHECK
: mrs x12
, {{ich_ap1r1_el2|ICH_AP1R1_EL2
}} // encoding
: [0x2c,0xc9,0x3c,0xd5]
93 // CHECK
: mrs x27
, {{ich_ap1r2_el2|ICH_AP1R2_EL2
}} // encoding
: [0x5b,0xc9,0x3c,0xd5]
94 // CHECK
: mrs x20
, {{ich_ap1r3_el2|ICH_AP1R3_EL2
}} // encoding
: [0x74,0xc9,0x3c,0xd5]
95 // CHECK
: mrs x10
, {{ich_hcr_el2|ICH_HCR_EL2
}} // encoding
: [0x0a,0xcb,0x3c,0xd5]
96 // CHECK
: mrs x27
, {{ich_misr_el2|ICH_MISR_EL2
}} // encoding
: [0x5b,0xcb,0x3c,0xd5]
97 // CHECK
: mrs x6
, {{ich_vmcr_el2|ICH_VMCR_EL2
}} // encoding
: [0xe6,0xcb,0x3c,0xd5]
98 // CHECK
: mrs x19
, {{ich_vseir_el2|ICH_VSEIR_EL2
}} // encoding
: [0x93,0xc9,0x3c,0xd5]
99 // CHECK
: mrs x3
, {{ich_lr0_el2|ICH_LR0_EL2
}} // encoding
: [0x03,0xcc,0x3c,0xd5]
100 // CHECK
: mrs x1
, {{ich_lr1_el2|ICH_LR1_EL2
}} // encoding
: [0x21,0xcc,0x3c,0xd5]
101 // CHECK
: mrs x22
, {{ich_lr2_el2|ICH_LR2_EL2
}} // encoding
: [0x56,0xcc,0x3c,0xd5]
102 // CHECK
: mrs x21
, {{ich_lr3_el2|ICH_LR3_EL2
}} // encoding
: [0x75,0xcc,0x3c,0xd5]
103 // CHECK
: mrs x6
, {{ich_lr4_el2|ICH_LR4_EL2
}} // encoding
: [0x86,0xcc,0x3c,0xd5]
104 // CHECK
: mrs x10
, {{ich_lr5_el2|ICH_LR5_EL2
}} // encoding
: [0xaa,0xcc,0x3c,0xd5]
105 // CHECK
: mrs x11
, {{ich_lr6_el2|ICH_LR6_EL2
}} // encoding
: [0xcb,0xcc,0x3c,0xd5]
106 // CHECK
: mrs x12
, {{ich_lr7_el2|ICH_LR7_EL2
}} // encoding
: [0xec,0xcc,0x3c,0xd5]
107 // CHECK
: mrs x0
, {{ich_lr8_el2|ICH_LR8_EL2
}} // encoding
: [0x00,0xcd,0x3c,0xd5]
108 // CHECK
: mrs x21
, {{ich_lr9_el2|ICH_LR9_EL2
}} // encoding
: [0x35,0xcd,0x3c,0xd5]
109 // CHECK
: mrs x13
, {{ich_lr10_el2|ICH_LR10_EL2
}} // encoding
: [0x4d,0xcd,0x3c,0xd5]
110 // CHECK
: mrs x26
, {{ich_lr11_el2|ICH_LR11_EL2
}} // encoding
: [0x7a,0xcd,0x3c,0xd5]
111 // CHECK
: mrs x1
, {{ich_lr12_el2|ICH_LR12_EL2
}} // encoding
: [0x81,0xcd,0x3c,0xd5]
112 // CHECK
: mrs x8
, {{ich_lr13_el2|ICH_LR13_EL2
}} // encoding
: [0xa8,0xcd,0x3c,0xd5]
113 // CHECK
: mrs x2
, {{ich_lr14_el2|ICH_LR14_EL2
}} // encoding
: [0xc2,0xcd,0x3c,0xd5]
114 // CHECK
: mrs x8
, {{ich_lr15_el2|ICH_LR15_EL2
}} // encoding
: [0xe8,0xcd,0x3c,0xd5]
116 msr icc_eoir1_el1
, x27
117 msr icc_eoir0_el1
, x5
119 msr icc_sgi1r_el1
, x21
120 msr icc_asgi1r_el1
, x25
121 msr icc_sgi0r_el1
, x28
125 msr icc_ctlr_el1
, x24
130 msr icc_igrpen0_el1
, x22
131 msr icc_igrpen1_el1
, x11
132 msr icc_igrpen1_el3
, x8
133 msr icc_seien_el1
, x4
134 msr icc_ap0r0_el1
, x27
135 msr icc_ap0r1_el1
, x5
136 msr icc_ap0r2_el1
, x20
137 msr icc_ap0r3_el1
, x0
138 msr icc_ap1r0_el1
, x2
139 msr icc_ap1r1_el1
, x29
140 msr icc_ap1r2_el1
, x23
141 msr icc_ap1r3_el1
, x11
142 msr ich_ap0r0_el2
, x2
143 msr ich_ap0r1_el2
, x27
144 msr ich_ap0r2_el2
, x7
145 msr ich_ap0r3_el2
, x1
146 msr ich_ap1r0_el2
, x7
147 msr ich_ap1r1_el2
, x12
148 msr ich_ap1r2_el2
, x14
149 msr ich_ap1r3_el2
, x13
151 msr ich_misr_el2
, x10
152 msr ich_vmcr_el2
, x24
153 msr ich_vseir_el2
, x29
164 msr ich_lr10_el2
, x17
166 msr ich_lr12_el2
, x29
168 msr ich_lr14_el2
, x13
169 msr ich_lr15_el2
, x27
170 // CHECK
: msr {{icc_eoir1_el1|ICC_EOIR1_EL1
}}, x27
// encoding
: [0x3b,0xcc,0x18,0xd5]
171 // CHECK
: msr {{icc_eoir0_el1|ICC_EOIR0_EL1
}}, x5
// encoding
: [0x25,0xc8,0x18,0xd5]
172 // CHECK
: msr {{icc_dir_el1|ICC_DIR_EL1
}}, x13
// encoding
: [0x2d,0xcb,0x18,0xd5]
173 // CHECK
: msr {{icc_sgi1r_el1|ICC_SGI1R_EL1
}}, x21
// encoding
: [0xb5,0xcb,0x18,0xd5]
174 // CHECK
: msr {{icc_asgi1r_el1|ICC_ASGI1R_EL1
}}, x25
// encoding
: [0xd9,0xcb,0x18,0xd5]
175 // CHECK
: msr {{icc_sgi0r_el1|ICC_SGI0R_EL1
}}, x28
// encoding
: [0xfc,0xcb,0x18,0xd5]
176 // CHECK
: msr {{icc_bpr1_el1|ICC_BPR1_EL1
}}, x7
// encoding
: [0x67,0xcc,0x18,0xd5]
177 // CHECK
: msr {{icc_bpr0_el1|ICC_BPR0_EL1
}}, x9
// encoding
: [0x69,0xc8,0x18,0xd5]
178 // CHECK
: msr {{icc_pmr_el1|ICC_PMR_EL1
}}, x29
// encoding
: [0x1d,0x46,0x18,0xd5]
179 // CHECK
: msr {{icc_ctlr_el1|ICC_CTLR_EL1
}}, x24
// encoding
: [0x98,0xcc,0x18,0xd5]
180 // CHECK
: msr {{icc_ctlr_el3|ICC_CTLR_EL3
}}, x0
// encoding
: [0x80,0xcc,0x1e,0xd5]
181 // CHECK
: msr {{icc_sre_el1|ICC_SRE_EL1
}}, x2
// encoding
: [0xa2,0xcc,0x18,0xd5]
182 // CHECK
: msr {{icc_sre_el2|ICC_SRE_EL2
}}, x5
// encoding
: [0xa5,0xc9,0x1c,0xd5]
183 // CHECK
: msr {{icc_sre_el3|ICC_SRE_EL3
}}, x10
// encoding
: [0xaa,0xcc,0x1e,0xd5]
184 // CHECK
: msr {{icc_igrpen0_el1|ICC_IGRPEN0_EL1
}}, x22
// encoding
: [0xd6,0xcc,0x18,0xd5]
185 // CHECK
: msr {{icc_igrpen1_el1|ICC_IGRPEN1_EL1
}}, x11
// encoding
: [0xeb,0xcc,0x18,0xd5]
186 // CHECK
: msr {{icc_igrpen1_el3|ICC_IGRPEN1_EL3
}}, x8
// encoding
: [0xe8,0xcc,0x1e,0xd5]
187 // CHECK
: msr {{icc_seien_el1|ICC_SEIEN_EL1
}}, x4
// encoding
: [0x04,0xcd,0x18,0xd5]
188 // CHECK
: msr {{icc_ap0r0_el1|ICC_AP0R0_EL1
}}, x27
// encoding
: [0x9b,0xc8,0x18,0xd5]
189 // CHECK
: msr {{icc_ap0r1_el1|ICC_AP0R1_EL1
}}, x5
// encoding
: [0xa5,0xc8,0x18,0xd5]
190 // CHECK
: msr {{icc_ap0r2_el1|ICC_AP0R2_EL1
}}, x20
// encoding
: [0xd4,0xc8,0x18,0xd5]
191 // CHECK
: msr {{icc_ap0r3_el1|ICC_AP0R3_EL1
}}, x0
// encoding
: [0xe0,0xc8,0x18,0xd5]
192 // CHECK
: msr {{icc_ap1r0_el1|ICC_AP1R0_EL1
}}, x2
// encoding
: [0x02,0xc9,0x18,0xd5]
193 // CHECK
: msr {{icc_ap1r1_el1|ICC_AP1R1_EL1
}}, x29
// encoding
: [0x3d,0xc9,0x18,0xd5]
194 // CHECK
: msr {{icc_ap1r2_el1|ICC_AP1R2_EL1
}}, x23
// encoding
: [0x57,0xc9,0x18,0xd5]
195 // CHECK
: msr {{icc_ap1r3_el1|ICC_AP1R3_EL1
}}, x11
// encoding
: [0x6b,0xc9,0x18,0xd5]
196 // CHECK
: msr {{ich_ap0r0_el2|ICH_AP0R0_EL2
}}, x2
// encoding
: [0x02,0xc8,0x1c,0xd5]
197 // CHECK
: msr {{ich_ap0r1_el2|ICH_AP0R1_EL2
}}, x27
// encoding
: [0x3b,0xc8,0x1c,0xd5]
198 // CHECK
: msr {{ich_ap0r2_el2|ICH_AP0R2_EL2
}}, x7
// encoding
: [0x47,0xc8,0x1c,0xd5]
199 // CHECK
: msr {{ich_ap0r3_el2|ICH_AP0R3_EL2
}}, x1
// encoding
: [0x61,0xc8,0x1c,0xd5]
200 // CHECK
: msr {{ich_ap1r0_el2|ICH_AP1R0_EL2
}}, x7
// encoding
: [0x07,0xc9,0x1c,0xd5]
201 // CHECK
: msr {{ich_ap1r1_el2|ICH_AP1R1_EL2
}}, x12
// encoding
: [0x2c,0xc9,0x1c,0xd5]
202 // CHECK
: msr {{ich_ap1r2_el2|ICH_AP1R2_EL2
}}, x14
// encoding
: [0x4e,0xc9,0x1c,0xd5]
203 // CHECK
: msr {{ich_ap1r3_el2|ICH_AP1R3_EL2
}}, x13
// encoding
: [0x6d,0xc9,0x1c,0xd5]
204 // CHECK
: msr {{ich_hcr_el2|ICH_HCR_EL2
}}, x1
// encoding
: [0x01,0xcb,0x1c,0xd5]
205 // CHECK
: msr {{ich_misr_el2|ICH_MISR_EL2
}}, x10
// encoding
: [0x4a,0xcb,0x1c,0xd5]
206 // CHECK
: msr {{ich_vmcr_el2|ICH_VMCR_EL2
}}, x24
// encoding
: [0xf8,0xcb,0x1c,0xd5]
207 // CHECK
: msr {{ich_vseir_el2|ICH_VSEIR_EL2
}}, x29
// encoding
: [0x9d,0xc9,0x1c,0xd5]
208 // CHECK
: msr {{ich_lr0_el2|ICH_LR0_EL2
}}, x26
// encoding
: [0x1a,0xcc,0x1c,0xd5]
209 // CHECK
: msr {{ich_lr1_el2|ICH_LR1_EL2
}}, x9
// encoding
: [0x29,0xcc,0x1c,0xd5]
210 // CHECK
: msr {{ich_lr2_el2|ICH_LR2_EL2
}}, x18
// encoding
: [0x52,0xcc,0x1c,0xd5]
211 // CHECK
: msr {{ich_lr3_el2|ICH_LR3_EL2
}}, x26
// encoding
: [0x7a,0xcc,0x1c,0xd5]
212 // CHECK
: msr {{ich_lr4_el2|ICH_LR4_EL2
}}, x22
// encoding
: [0x96,0xcc,0x1c,0xd5]
213 // CHECK
: msr {{ich_lr5_el2|ICH_LR5_EL2
}}, x26
// encoding
: [0xba,0xcc,0x1c,0xd5]
214 // CHECK
: msr {{ich_lr6_el2|ICH_LR6_EL2
}}, x27
// encoding
: [0xdb,0xcc,0x1c,0xd5]
215 // CHECK
: msr {{ich_lr7_el2|ICH_LR7_EL2
}}, x8
// encoding
: [0xe8,0xcc,0x1c,0xd5]
216 // CHECK
: msr {{ich_lr8_el2|ICH_LR8_EL2
}}, x17
// encoding
: [0x11,0xcd,0x1c,0xd5]
217 // CHECK
: msr {{ich_lr9_el2|ICH_LR9_EL2
}}, x19
// encoding
: [0x33,0xcd,0x1c,0xd5]
218 // CHECK
: msr {{ich_lr10_el2|ICH_LR10_EL2
}}, x17
// encoding
: [0x51,0xcd,0x1c,0xd5]
219 // CHECK
: msr {{ich_lr11_el2|ICH_LR11_EL2
}}, x5
// encoding
: [0x65,0xcd,0x1c,0xd5]
220 // CHECK
: msr {{ich_lr12_el2|ICH_LR12_EL2
}}, x29
// encoding
: [0x9d,0xcd,0x1c,0xd5]
221 // CHECK
: msr {{ich_lr13_el2|ICH_LR13_EL2
}}, x2
// encoding
: [0xa2,0xcd,0x1c,0xd5]
222 // CHECK
: msr {{ich_lr14_el2|ICH_LR14_EL2
}}, x13
// encoding
: [0xcd,0xcd,0x1c,0xd5]
223 // CHECK
: msr {{ich_lr15_el2|ICH_LR15_EL2
}}, x27
// encoding
: [0xfb,0xcd,0x1c,0xd5]