[DAGCombiner] Add target hook function to decide folding (mul (add x, c1), c2)
[llvm-project.git] / llvm / test / MC / RISCV / machine-csr-names.s
blobdbc4f5fcb82440f39744afe0dc20f29695a4d54a
1 # RUN: llvm-mc %s -triple=riscv32 -riscv-no-aliases -show-encoding \
2 # RUN: | FileCheck -check-prefixes=CHECK-INST,CHECK-ENC %s
3 # RUN: llvm-mc -filetype=obj -triple riscv32 < %s \
4 # RUN: | llvm-objdump -d - \
5 # RUN: | FileCheck -check-prefix=CHECK-INST-ALIAS %s
7 # RUN: llvm-mc %s -triple=riscv64 -riscv-no-aliases -show-encoding \
8 # RUN: | FileCheck -check-prefixes=CHECK-INST,CHECK-ENC %s
9 # RUN: llvm-mc -filetype=obj -triple riscv64 < %s \
10 # RUN: | llvm-objdump -d - \
11 # RUN: | FileCheck -check-prefix=CHECK-INST-ALIAS %s
13 ##################################
14 # Machine Information Registers
15 ##################################
17 # mvendorid
18 # name
19 # CHECK-INST: csrrs t1, mvendorid, zero
20 # CHECK-ENC: encoding: [0x73,0x23,0x10,0xf1]
21 # CHECK-INST-ALIAS: csrr t1, mvendorid
22 # uimm12
23 # CHECK-INST: csrrs t2, mvendorid, zero
24 # CHECK-ENC: encoding: [0xf3,0x23,0x10,0xf1]
25 # CHECK-INST-ALIAS: csrr t2, mvendorid
26 # name
27 csrrs t1, mvendorid, zero
28 # uimm12
29 csrrs t2, 0xF11, zero
31 # marchid
32 # name
33 # CHECK-INST: csrrs t1, marchid, zero
34 # CHECK-ENC: encoding: [0x73,0x23,0x20,0xf1]
35 # CHECK-INST-ALIAS: csrr t1, marchid
36 # uimm12
37 # CHECK-INST: csrrs t2, marchid, zero
38 # CHECK-ENC: encoding: [0xf3,0x23,0x20,0xf1]
39 # CHECK-INST-ALIAS: csrr t2, marchid
40 # name
41 csrrs t1, marchid, zero
42 # uimm12
43 csrrs t2, 0xF12, zero
45 # mimpid
46 # name
47 # CHECK-INST: csrrs t1, mimpid, zero
48 # CHECK-ENC: encoding: [0x73,0x23,0x30,0xf1]
49 # CHECK-INST-ALIAS: csrr t1, mimpid
50 # uimm12
51 # CHECK-INST: csrrs t2, mimpid, zero
52 # CHECK-ENC: encoding: [0xf3,0x23,0x30,0xf1]
53 # CHECK-INST-ALIAS: csrr t2, mimpid
54 csrrs t1, mimpid, zero
55 # uimm12
56 csrrs t2, 0xF13, zero
58 # mhartid
59 # name
60 # CHECK-INST: csrrs t1, mhartid, zero
61 # CHECK-ENC: encoding: [0x73,0x23,0x40,0xf1]
62 # CHECK-INST-ALIAS: csrr t1, mhartid
63 # uimm12
64 # CHECK-INST: csrrs t2, mhartid, zero
65 # CHECK-ENC: encoding: [0xf3,0x23,0x40,0xf1]
66 # CHECK-INST-ALIAS: csrr t2, mhartid
67 # name
68 csrrs t1, mhartid, zero
69 # uimm12
70 csrrs t2, 0xF14, zero
72 ##################################
73 # Machine Trap Setup
74 ##################################
76 # mstatus
77 # name
78 # CHECK-INST: csrrs t1, mstatus, zero
79 # CHECK-ENC: encoding: [0x73,0x23,0x00,0x30]
80 # CHECK-INST-ALIAS: csrr t1, mstatus
81 # uimm12
82 # CHECK-INST: csrrs t2, mstatus, zero
83 # CHECK-ENC: encoding: [0xf3,0x23,0x00,0x30]
84 # CHECK-INST-ALIAS: csrr t2, mstatus
85 # name
86 csrrs t1, mstatus, zero
87 # uimm12
88 csrrs t2, 0x300, zero
90 # misa
91 # name
92 # CHECK-INST: csrrs t1, misa, zero
93 # CHECK-ENC: encoding: [0x73,0x23,0x10,0x30]
94 # CHECK-INST-ALIAS: csrr t1, misa
95 # uimm12
96 # CHECK-INST: csrrs t2, misa, zero
97 # CHECK-ENC: encoding: [0xf3,0x23,0x10,0x30]
98 # CHECK-INST-ALIAS: csrr t2, misa
99 # name
100 csrrs t1, misa, zero
101 # uimm12
102 csrrs t2, 0x301, zero
104 # medeleg
105 # name
106 # CHECK-INST: csrrs t1, medeleg, zero
107 # CHECK-ENC: encoding: [0x73,0x23,0x20,0x30]
108 # CHECK-INST-ALIAS: csrr t1, medeleg
109 # uimm12
110 # CHECK-INST: csrrs t2, medeleg, zero
111 # CHECK-ENC: encoding: [0xf3,0x23,0x20,0x30]
112 # CHECK-INST-ALIAS: csrr t2, medeleg
113 # name
114 csrrs t1, medeleg, zero
115 # uimm12
116 csrrs t2, 0x302, zero
117 # aliases
119 # mideleg
120 # name
121 # CHECK-INST: csrrs t1, mideleg, zero
122 # CHECK-ENC: encoding: [0x73,0x23,0x30,0x30]
123 # CHECK-INST-ALIAS: csrr t1, mideleg
124 # uimm12
125 # CHECK-INST: csrrs t2, mideleg, zero
126 # CHECK-ENC: encoding: [0xf3,0x23,0x30,0x30]
127 # CHECK-INST-ALIAS: csrr t2, mideleg
128 # aliases
129 # name
130 csrrs t1, mideleg, zero
131 # uimm12
132 csrrs t2, 0x303, zero
134 # mie
135 # name
136 # CHECK-INST: csrrs t1, mie, zero
137 # CHECK-ENC: encoding: [0x73,0x23,0x40,0x30]
138 # CHECK-INST-ALIAS: csrr t1, mie
139 # uimm12
140 # CHECK-INST: csrrs t2, mie, zero
141 # CHECK-ENC: encoding: [0xf3,0x23,0x40,0x30]
142 # CHECK-INST-ALIAS: csrr t2, mie
143 # name
144 csrrs t1, mie, zero
145 # uimm12
146 csrrs t2, 0x304, zero
148 # mtvec
149 # name
150 # CHECK-INST: csrrs t1, mtvec, zero
151 # CHECK-ENC: encoding: [0x73,0x23,0x50,0x30]
152 # CHECK-INST-ALIAS: csrr t1, mtvec
153 # uimm12
154 # CHECK-INST: csrrs t2, mtvec, zero
155 # CHECK-ENC: encoding: [0xf3,0x23,0x50,0x30]
156 # CHECK-INST-ALIAS: csrr t2, mtvec
157 # name
158 csrrs t1, mtvec, zero
159 # uimm12
160 csrrs t2, 0x305, zero
162 # mcounteren
163 # name
164 # CHECK-INST: csrrs t1, mcounteren, zero
165 # CHECK-ENC: encoding: [0x73,0x23,0x60,0x30]
166 # CHECK-INST-ALIAS: csrr t1, mcounteren
167 # uimm12
168 # CHECK-INST: csrrs t2, mcounteren, zero
169 # CHECK-ENC: encoding: [0xf3,0x23,0x60,0x30]
170 # CHECK-INST-ALIAS: csrr t2, mcounteren
171 # name
172 csrrs t1, mcounteren, zero
173 # uimm12
174 csrrs t2, 0x306, zero
176 # mscratch
177 # name
178 # CHECK-INST: csrrs t1, mscratch, zero
179 # CHECK-ENC: encoding: [0x73,0x23,0x00,0x34]
180 # CHECK-INST-ALIAS: csrr t1, mscratch
181 # uimm12
182 # CHECK-INST: csrrs t2, mscratch, zero
183 # CHECK-ENC: encoding: [0xf3,0x23,0x00,0x34]
184 # CHECK-INST-ALIAS: csrr t2, mscratch
185 # name
186 csrrs t1, mscratch, zero
187 # uimm12
188 csrrs t2, 0x340, zero
190 # mepc
191 # name
192 # CHECK-INST: csrrs t1, mepc, zero
193 # CHECK-ENC: encoding: [0x73,0x23,0x10,0x34]
194 # CHECK-INST-ALIAS: csrr t1, mepc
195 # uimm12
196 # CHECK-INST: csrrs t2, mepc, zero
197 # CHECK-ENC: encoding: [0xf3,0x23,0x10,0x34]
198 # CHECK-INST-ALIAS: csrr t2, mepc
199 # name
200 csrrs t1, mepc, zero
201 # uimm12
202 csrrs t2, 0x341, zero
204 # mcause
205 # name
206 # CHECK-INST: csrrs t1, mcause, zero
207 # CHECK-ENC: encoding: [0x73,0x23,0x20,0x34]
208 # CHECK-INST-ALIAS: csrr t1, mcause
209 # uimm12
210 # CHECK-INST: csrrs t2, mcause, zero
211 # CHECK-ENC: encoding: [0xf3,0x23,0x20,0x34]
212 # CHECK-INST-ALIAS: csrr t2, mcause
213 # name
214 csrrs t1, mcause, zero
215 # uimm12
216 csrrs t2, 0x342, zero
218 # mtval
219 # name
220 # CHECK-INST: csrrs t1, mtval, zero
221 # CHECK-ENC: encoding: [0x73,0x23,0x30,0x34]
222 # CHECK-INST-ALIAS: csrr t1, mtval
223 # uimm12
224 # CHECK-INST: csrrs t2, mtval, zero
225 # CHECK-ENC: encoding: [0xf3,0x23,0x30,0x34]
226 # CHECK-INST-ALIAS: csrr t2, mtval
227 # name
228 csrrs t1, mtval, zero
229 # uimm12
230 csrrs t2, 0x343, zero
232 # mip
233 # name
234 # CHECK-INST: csrrs t1, mip, zero
235 # CHECK-ENC: encoding: [0x73,0x23,0x40,0x34]
236 # CHECK-INST-ALIAS: csrr t1, mip
237 # uimm12
238 # CHECK-INST: csrrs t2, mip, zero
239 # CHECK-ENC: encoding: [0xf3,0x23,0x40,0x34]
240 # CHECK-INST-ALIAS: csrr t2, mip
241 # name
242 csrrs t1, mip, zero
243 # uimm12
244 csrrs t2, 0x344, zero
246 ######################################
247 # Machine Protection and Translation
248 ######################################
249 # Tests for pmpcfg1, pmpcfg2 in rv32-machine-csr-names.s
251 # pmpcfg0
252 # name
253 # CHECK-INST: csrrs t1, pmpcfg0, zero
254 # CHECK-ENC: encoding: [0x73,0x23,0x00,0x3a]
255 # CHECK-INST-ALIAS: csrr t1, pmpcfg0
256 # uimm12
257 # CHECK-INST: csrrs t2, pmpcfg0, zero
258 # CHECK-ENC: encoding: [0xf3,0x23,0x00,0x3a]
259 # CHECK-INST-ALIAS: csrr t2, pmpcfg0
260 # name
261 csrrs t1, pmpcfg0, zero
262 # uimm12
263 csrrs t2, 0x3A0, zero
265 # pmpcfg2
266 # name
267 # CHECK-INST: csrrs t1, pmpcfg2, zero
268 # CHECK-ENC: encoding: [0x73,0x23,0x20,0x3a]
269 # CHECK-INST-ALIAS: csrr t1, pmpcfg2
270 # uimm12
271 # CHECK-INST: csrrs t2, pmpcfg2, zero
272 # CHECK-ENC: encoding: [0xf3,0x23,0x20,0x3a]
273 # CHECK-INST-ALIAS: csrr t2, pmpcfg2
274 # name
275 csrrs t1, pmpcfg2, zero
276 # uimm12
277 csrrs t2, 0x3A2, zero
280 ######################################
281 # Machine Counter and Timers
282 ######################################
283 # mcycle
284 # name
285 # CHECK-INST: csrrs t1, mcycle, zero
286 # CHECK-ENC: encoding: [0x73,0x23,0x00,0xb0]
287 # CHECK-INST-ALIAS: csrr t1, mcycle
288 # uimm12
289 # CHECK-INST: csrrs t2, mcycle, zero
290 # CHECK-ENC: encoding: [0xf3,0x23,0x00,0xb0]
291 # CHECK-INST-ALIAS: csrr t2, mcycle
292 csrrs t1, mcycle, zero
293 # uimm12
294 csrrs t2, 0xB00, zero
296 # minstret
297 # name
298 # CHECK-INST: csrrs t1, minstret, zero
299 # CHECK-ENC: encoding: [0x73,0x23,0x20,0xb0]
300 # CHECK-INST-ALIAS: csrr t1, minstret
301 # uimm12
302 # CHECK-INST: csrrs t2, minstret, zero
303 # CHECK-ENC: encoding: [0xf3,0x23,0x20,0xb0]
304 # CHECK-INST-ALIAS: csrr t2, minstret
305 # name
306 csrrs t1, minstret, zero
307 # uimm12
308 csrrs t2, 0xB02, zero
311 ######################################################
312 # Debug and Trace Registers (shared with Debug Mode)
313 ######################################################
314 # tselect
315 # name
316 # CHECK-INST: csrrs t1, tselect, zero
317 # CHECK-ENC: encoding: [0x73,0x23,0x00,0x7a]
318 # CHECK-INST-ALIAS: csrr t1, tselect
319 # uimm12
320 # CHECK-INST: csrrs t2, tselect, zero
321 # CHECK-ENC: encoding: [0xf3,0x23,0x00,0x7a]
322 # CHECK-INST-ALIAS: csrr t2, tselect
323 # name
324 csrrs t1, tselect, zero
325 # uimm12
326 csrrs t2, 0x7A0, zero
328 # tdata1
329 # name
330 # CHECK-INST: csrrs t1, tdata1, zero
331 # CHECK-ENC: encoding: [0x73,0x23,0x10,0x7a]
332 # CHECK-INST-ALIAS: csrr t1, tdata1
333 # uimm12
334 # CHECK-INST: csrrs t2, tdata1, zero
335 # CHECK-ENC: encoding: [0xf3,0x23,0x10,0x7a]
336 # CHECK-INST-ALIAS: csrr t2, tdata1
337 # name
338 csrrs t1, tdata1, zero
339 # uimm12
340 csrrs t2, 0x7A1, zero
342 # tdata2
343 # name
344 # CHECK-INST: csrrs t1, tdata2, zero
345 # CHECK-ENC: encoding: [0x73,0x23,0x20,0x7a]
346 # CHECK-INST-ALIAS: csrr t1, tdata2
347 # uimm12
348 # CHECK-INST: csrrs t2, tdata2, zero
349 # CHECK-ENC: encoding: [0xf3,0x23,0x20,0x7a]
350 # CHECK-INST-ALIAS: csrr t2, tdata2
351 csrrs t1, tdata2, zero
352 # uimm12
353 csrrs t2, 0x7A2, zero
355 #tdata3
356 # name
357 # CHECK-INST: csrrs t1, tdata3, zero
358 # CHECK-ENC: encoding: [0x73,0x23,0x30,0x7a]
359 # CHECK-INST-ALIAS: csrr t1, tdata3
360 # uimm12
361 # CHECK-INST: csrrs t2, tdata3, zero
362 # CHECK-ENC: encoding: [0xf3,0x23,0x30,0x7a]
363 # CHECK-INST-ALIAS: csrr t2, tdata3
364 # name
365 csrrs t1, tdata3, zero
366 # uimm12
367 csrrs t2, 0x7A3, zero
369 #######################
370 # Debug Mode Registers
371 ########################
372 # dcsr
373 # name
374 # CHECK-INST: csrrs t1, dcsr, zero
375 # CHECK-ENC: encoding: [0x73,0x23,0x00,0x7b]
376 # CHECK-INST-ALIAS: csrr t1, dcsr
377 # uimm12
378 # CHECK-INST: csrrs t2, dcsr, zero
379 # CHECK-ENC: encoding: [0xf3,0x23,0x00,0x7b]
380 # CHECK-INST-ALIAS: csrr t2, dcsr
381 # name
382 csrrs t1, dcsr, zero
383 # uimm12
384 csrrs t2, 0x7B0, zero
386 # dpc
387 # name
388 # CHECK-INST: csrrs t1, dpc, zero
389 # CHECK-ENC: encoding: [0x73,0x23,0x10,0x7b]
390 # CHECK-INST-ALIAS: csrr t1, dpc
391 # uimm12
392 # CHECK-INST: csrrs t2, dpc, zero
393 # CHECK-ENC: encoding: [0xf3,0x23,0x10,0x7b]
394 # CHECK-INST-ALIAS: csrr t2, dpc
395 # name
396 csrrs t1, dpc, zero
397 # uimm12
398 csrrs t2, 0x7B1, zero
400 # dscratch0
401 # name
402 # CHECK-INST: csrrs t1, dscratch0, zero
403 # CHECK-ENC: encoding: [0x73,0x23,0x20,0x7b]
404 # CHECK-INST-ALIAS: csrr t1, dscratch0
405 # uimm12
406 # CHECK-INST: csrrs t2, dscratch0, zero
407 # CHECK-ENC: encoding: [0xf3,0x23,0x20,0x7b]
408 # CHECK-INST-ALIAS: csrr t2, dscratch0
409 # name
410 csrrs t1, dscratch0, zero
411 # uimm12
412 csrrs t2, 0x7B2, zero
414 # dscratch
415 # name
416 # CHECK-INST: csrrs t1, dscratch0, zero
417 # CHECK-ENC: encoding: [0x73,0x23,0x20,0x7b]
418 # CHECK-INST-ALIAS: csrr t1, dscratch0
419 # uimm12
420 # CHECK-INST: csrrs t2, dscratch0, zero
421 # CHECK-ENC: encoding: [0xf3,0x23,0x20,0x7b]
422 # CHECK-INST-ALIAS: csrr t2, dscratch0
423 # name
424 csrrs t1, dscratch, zero
425 # uimm12
426 csrrs t2, 0x7B2, zero
428 # dscratch1
429 # name
430 # CHECK-INST: csrrs t1, dscratch1, zero
431 # CHECK-ENC: encoding: [0x73,0x23,0x30,0x7b]
432 # CHECK-INST-ALIAS: csrr t1, dscratch1
433 # uimm12
434 # CHECK-INST: csrrs t2, dscratch1, zero
435 # CHECK-ENC: encoding: [0xf3,0x23,0x30,0x7b]
436 # CHECK-INST-ALIAS: csrr t2, dscratch1
437 # name
438 csrrs t1, dscratch1, zero
439 # uimm12
440 csrrs t2, 0x7B3, zero
442 # mhpmcounter3
443 # name
444 # CHECK-INST: csrrs t1, mhpmcounter3, zero
445 # CHECK-ENC: encoding: [0x73,0x23,0x30,0xb0]
446 # CHECK-INST-ALIAS: csrr t1, mhpmcounter3
447 # uimm12
448 # CHECK-INST: csrrs t2, mhpmcounter3, zero
449 # CHECK-ENC: encoding: [0xf3,0x23,0x30,0xb0]
450 # CHECK-INST-ALIAS: csrr t2, mhpmcounter3
451 # name
452 csrrs t1, mhpmcounter3, zero
453 # uimm12
454 csrrs t2, 0xB03, zero
456 # mhpmcounter4
457 # name
458 # CHECK-INST: csrrs t1, mhpmcounter4, zero
459 # CHECK-ENC: encoding: [0x73,0x23,0x40,0xb0]
460 # CHECK-INST-ALIAS: csrr t1, mhpmcounter4
461 # uimm12
462 # CHECK-INST: csrrs t2, mhpmcounter4, zero
463 # CHECK-ENC: encoding: [0xf3,0x23,0x40,0xb0]
464 # CHECK-INST-ALIAS: csrr t2, mhpmcounter4
465 # name
466 csrrs t1, mhpmcounter4, zero
467 # uimm12
468 csrrs t2, 0xB04, zero
470 # mhpmcounter5
471 # name
472 # CHECK-INST: csrrs t1, mhpmcounter5, zero
473 # CHECK-ENC: encoding: [0x73,0x23,0x50,0xb0]
474 # CHECK-INST-ALIAS: csrr t1, mhpmcounter5
475 # uimm12
476 # CHECK-INST: csrrs t2, mhpmcounter5, zero
477 # CHECK-ENC: encoding: [0xf3,0x23,0x50,0xb0]
478 # CHECK-INST-ALIAS: csrr t2, mhpmcounter5
479 # name
480 csrrs t1, mhpmcounter5, zero
481 # uimm12
482 csrrs t2, 0xB05, zero
484 # mhpmcounter6
485 # name
486 # CHECK-INST: csrrs t1, mhpmcounter6, zero
487 # CHECK-ENC: encoding: [0x73,0x23,0x60,0xb0]
488 # CHECK-INST-ALIAS: csrr t1, mhpmcounter6
489 # uimm12
490 # CHECK-INST: csrrs t2, mhpmcounter6, zero
491 # CHECK-ENC: encoding: [0xf3,0x23,0x60,0xb0]
492 # CHECK-INST-ALIAS: csrr t2, mhpmcounter6
493 # name
494 csrrs t1, mhpmcounter6, zero
495 # uimm12
496 csrrs t2, 0xB06, zero
498 # mhpmcounter7
499 # name
500 # CHECK-INST: csrrs t1, mhpmcounter7, zero
501 # CHECK-ENC: encoding: [0x73,0x23,0x70,0xb0]
502 # CHECK-INST-ALIAS: csrr t1, mhpmcounter7
503 # uimm12
504 # CHECK-INST: csrrs t2, mhpmcounter7, zero
505 # CHECK-ENC: encoding: [0xf3,0x23,0x70,0xb0]
506 # CHECK-INST-ALIAS: csrr t2, mhpmcounter7
507 # name
508 csrrs t1, mhpmcounter7, zero
509 # uimm12
510 csrrs t2, 0xB07, zero
512 # mhpmcounter8
513 # name
514 # CHECK-INST: csrrs t1, mhpmcounter8, zero
515 # CHECK-ENC: encoding: [0x73,0x23,0x80,0xb0]
516 # CHECK-INST-ALIAS: csrr t1, mhpmcounter8
517 # uimm12
518 # CHECK-INST: csrrs t2, mhpmcounter8, zero
519 # CHECK-ENC: encoding: [0xf3,0x23,0x80,0xb0]
520 # CHECK-INST-ALIAS: csrr t2, mhpmcounter8
521 # name
522 csrrs t1, mhpmcounter8, zero
523 # uimm12
524 csrrs t2, 0xB08, zero
526 # mhpmcounter9
527 # name
528 # CHECK-INST: csrrs t1, mhpmcounter9, zero
529 # CHECK-ENC: encoding: [0x73,0x23,0x90,0xb0]
530 # CHECK-INST-ALIAS: csrr t1, mhpmcounter9
531 # uimm12
532 # CHECK-INST: csrrs t2, mhpmcounter9, zero
533 # CHECK-ENC: encoding: [0xf3,0x23,0x90,0xb0]
534 # CHECK-INST-ALIAS: csrr t2, mhpmcounter9
535 # name
536 csrrs t1, mhpmcounter9, zero
537 # uimm12
538 csrrs t2, 0xB09, zero
540 # mhpmcounter10
541 # name
542 # CHECK-INST: csrrs t1, mhpmcounter10, zero
543 # CHECK-ENC: encoding: [0x73,0x23,0xa0,0xb0]
544 # CHECK-INST-ALIAS: csrr t1, mhpmcounter10
545 # uimm12
546 # CHECK-INST: csrrs t2, mhpmcounter10, zero
547 # CHECK-ENC: encoding: [0xf3,0x23,0xa0,0xb0]
548 # CHECK-INST-ALIAS: csrr t2, mhpmcounter10
549 # name
550 csrrs t1, mhpmcounter10, zero
551 # uimm12
552 csrrs t2, 0xB0A, zero
554 # mhpmcounter11
555 # name
556 # CHECK-INST: csrrs t1, mhpmcounter11, zero
557 # CHECK-ENC: encoding: [0x73,0x23,0xb0,0xb0]
558 # CHECK-INST-ALIAS: csrr t1, mhpmcounter11
559 # uimm12
560 # CHECK-INST: csrrs t2, mhpmcounter11, zero
561 # CHECK-ENC: encoding: [0xf3,0x23,0xb0,0xb0]
562 # CHECK-INST-ALIAS: csrr t2, mhpmcounter11
563 # name
564 csrrs t1, mhpmcounter11, zero
565 # uimm12
566 csrrs t2, 0xB0B, zero
568 # mhpmcounter12
569 # name
570 # CHECK-INST: csrrs t1, mhpmcounter12, zero
571 # CHECK-ENC: encoding: [0x73,0x23,0xc0,0xb0]
572 # CHECK-INST-ALIAS: csrr t1, mhpmcounter12
573 # uimm12
574 # CHECK-INST: csrrs t2, mhpmcounter12, zero
575 # CHECK-ENC: encoding: [0xf3,0x23,0xc0,0xb0]
576 # CHECK-INST-ALIAS: csrr t2, mhpmcounter12
577 # name
578 csrrs t1, mhpmcounter12, zero
579 # uimm12
580 csrrs t2, 0xB0C, zero
582 # mhpmcounter13
583 # name
584 # CHECK-INST: csrrs t1, mhpmcounter13, zero
585 # CHECK-ENC: encoding: [0x73,0x23,0xd0,0xb0]
586 # CHECK-INST-ALIAS: csrr t1, mhpmcounter13
587 # uimm12
588 # CHECK-INST: csrrs t2, mhpmcounter13, zero
589 # CHECK-ENC: encoding: [0xf3,0x23,0xd0,0xb0]
590 # CHECK-INST-ALIAS: csrr t2, mhpmcounter13
591 # name
592 csrrs t1, mhpmcounter13, zero
593 # uimm12
594 csrrs t2, 0xB0D, zero
596 # mhpmcounter14
597 # name
598 # CHECK-INST: csrrs t1, mhpmcounter14, zero
599 # CHECK-ENC: encoding: [0x73,0x23,0xe0,0xb0]
600 # CHECK-INST-ALIAS: csrr t1, mhpmcounter14
601 # uimm12
602 # CHECK-INST: csrrs t2, mhpmcounter14, zero
603 # CHECK-ENC: encoding: [0xf3,0x23,0xe0,0xb0]
604 # CHECK-INST-ALIAS: csrr t2, mhpmcounter14
605 # name
606 csrrs t1, mhpmcounter14, zero
607 # uimm12
608 csrrs t2, 0xB0E, zero
610 # mhpmcounter15
611 # name
612 # CHECK-INST: csrrs t1, mhpmcounter15, zero
613 # CHECK-ENC: encoding: [0x73,0x23,0xf0,0xb0]
614 # CHECK-INST-ALIAS: csrr t1, mhpmcounter15
615 # uimm12
616 # CHECK-INST: csrrs t2, mhpmcounter15, zero
617 # CHECK-ENC: encoding: [0xf3,0x23,0xf0,0xb0]
618 # CHECK-INST-ALIAS: csrr t2, mhpmcounter15
619 # name
620 csrrs t1, mhpmcounter15, zero
621 # uimm12
622 csrrs t2, 0xB0F, zero
624 # mhpmcounter16
625 # name
626 # CHECK-INST: csrrs t1, mhpmcounter16, zero
627 # CHECK-ENC: encoding: [0x73,0x23,0x00,0xb1]
628 # CHECK-INST-ALIAS: csrr t1, mhpmcounter16
629 # uimm12
630 # CHECK-INST: csrrs t2, mhpmcounter16, zero
631 # CHECK-ENC: encoding: [0xf3,0x23,0x00,0xb1]
632 # CHECK-INST-ALIAS: csrr t2, mhpmcounter16
633 # name
634 csrrs t1, mhpmcounter16, zero
635 # uimm12
636 csrrs t2, 0xB10, zero
638 # mhpmcounter17
639 # name
640 # CHECK-INST: csrrs t1, mhpmcounter17, zero
641 # CHECK-ENC: encoding: [0x73,0x23,0x10,0xb1]
642 # CHECK-INST-ALIAS: csrr t1, mhpmcounter17
643 # uimm12
644 # CHECK-INST: csrrs t2, mhpmcounter17, zero
645 # CHECK-ENC: encoding: [0xf3,0x23,0x10,0xb1]
646 # CHECK-INST-ALIAS: csrr t2, mhpmcounter17
647 # name
648 csrrs t1, mhpmcounter17, zero
649 # uimm12
650 csrrs t2, 0xB11, zero
652 # mhpmcounter18
653 # name
654 # CHECK-INST: csrrs t1, mhpmcounter18, zero
655 # CHECK-ENC: encoding: [0x73,0x23,0x20,0xb1]
656 # CHECK-INST-ALIAS: csrr t1, mhpmcounter18
657 # uimm12
658 # CHECK-INST: csrrs t2, mhpmcounter18, zero
659 # CHECK-ENC: encoding: [0xf3,0x23,0x20,0xb1]
660 # CHECK-INST-ALIAS: csrr t2, mhpmcounter18
661 # name
662 csrrs t1, mhpmcounter18, zero
663 # uimm12
664 csrrs t2, 0xB12, zero
666 # mhpmcounter19
667 # name
668 # CHECK-INST: csrrs t1, mhpmcounter19, zero
669 # CHECK-ENC: encoding: [0x73,0x23,0x30,0xb1]
670 # CHECK-INST-ALIAS: csrr t1, mhpmcounter19
671 # uimm12
672 # CHECK-INST: csrrs t2, mhpmcounter19, zero
673 # CHECK-ENC: encoding: [0xf3,0x23,0x30,0xb1]
674 # CHECK-INST-ALIAS: csrr t2, mhpmcounter19
675 # name
676 csrrs t1, mhpmcounter19, zero
677 # uimm12
678 csrrs t2, 0xB13, zero
680 # mhpmcounter20
681 # name
682 # CHECK-INST: csrrs t1, mhpmcounter20, zero
683 # CHECK-ENC: encoding: [0x73,0x23,0x40,0xb1]
684 # CHECK-INST-ALIAS: csrr t1, mhpmcounter20
685 # uimm12
686 # CHECK-INST: csrrs t2, mhpmcounter20, zero
687 # CHECK-ENC: encoding: [0xf3,0x23,0x40,0xb1]
688 # CHECK-INST-ALIAS: csrr t2, mhpmcounter20
689 # name
690 csrrs t1, mhpmcounter20, zero
691 # uimm12
692 csrrs t2, 0xB14, zero
694 # mhpmcounter21
695 # name
696 # CHECK-INST: csrrs t1, mhpmcounter21, zero
697 # CHECK-ENC: encoding: [0x73,0x23,0x50,0xb1]
698 # CHECK-INST-ALIAS: csrr t1, mhpmcounter21
699 # uimm12
700 # CHECK-INST: csrrs t2, mhpmcounter21, zero
701 # CHECK-ENC: encoding: [0xf3,0x23,0x50,0xb1]
702 # CHECK-INST-ALIAS: csrr t2, mhpmcounter21
703 # name
704 csrrs t1, mhpmcounter21, zero
705 # uimm12
706 csrrs t2, 0xB15, zero
708 # mhpmcounter22
709 # name
710 # CHECK-INST: csrrs t1, mhpmcounter22, zero
711 # CHECK-ENC: encoding: [0x73,0x23,0x60,0xb1]
712 # CHECK-INST-ALIAS: csrr t1, mhpmcounter22
713 # uimm12
714 # CHECK-INST: csrrs t2, mhpmcounter22, zero
715 # CHECK-ENC: encoding: [0xf3,0x23,0x60,0xb1]
716 # CHECK-INST-ALIAS: csrr t2, mhpmcounter22
717 # name
718 csrrs t1, mhpmcounter22, zero
719 # uimm12
720 csrrs t2, 0xB16, zero
722 # mhpmcounter23
723 # name
724 # CHECK-INST: csrrs t1, mhpmcounter23, zero
725 # CHECK-ENC: encoding: [0x73,0x23,0x70,0xb1]
726 # CHECK-INST-ALIAS: csrr t1, mhpmcounter23
727 # uimm12
728 # CHECK-INST: csrrs t2, mhpmcounter23, zero
729 # CHECK-ENC: encoding: [0xf3,0x23,0x70,0xb1]
730 # CHECK-INST-ALIAS: csrr t2, mhpmcounter23
731 # name
732 csrrs t1, mhpmcounter23, zero
733 # uimm12
734 csrrs t2, 0xB17, zero
736 # mhpmcounter24
737 # name
738 # CHECK-INST: csrrs t1, mhpmcounter24, zero
739 # CHECK-ENC: encoding: [0x73,0x23,0x80,0xb1]
740 # CHECK-INST-ALIAS: csrr t1, mhpmcounter24
741 # uimm12
742 # CHECK-INST: csrrs t2, mhpmcounter24, zero
743 # CHECK-ENC: encoding: [0xf3,0x23,0x80,0xb1]
744 # CHECK-INST-ALIAS: csrr t2, mhpmcounter24
745 # name
746 csrrs t1, mhpmcounter24, zero
747 # uimm12
748 csrrs t2, 0xB18, zero
750 # mhpmcounter25
751 # name
752 # CHECK-INST: csrrs t1, mhpmcounter25, zero
753 # CHECK-ENC: encoding: [0x73,0x23,0x90,0xb1]
754 # CHECK-INST-ALIAS: csrr t1, mhpmcounter25
755 # uimm12
756 # CHECK-INST: csrrs t2, mhpmcounter25, zero
757 # CHECK-ENC: encoding: [0xf3,0x23,0x90,0xb1]
758 # CHECK-INST-ALIAS: csrr t2, mhpmcounter25
759 # name
760 csrrs t1, mhpmcounter25, zero
761 # uimm12
762 csrrs t2, 0xB19, zero
764 # mhpmcounter26
765 # name
766 # CHECK-INST: csrrs t1, mhpmcounter26, zero
767 # CHECK-ENC: encoding: [0x73,0x23,0xa0,0xb1]
768 # CHECK-INST-ALIAS: csrr t1, mhpmcounter26
769 # uimm12
770 # CHECK-INST: csrrs t2, mhpmcounter26, zero
771 # CHECK-ENC: encoding: [0xf3,0x23,0xa0,0xb1]
772 # CHECK-INST-ALIAS: csrr t2, mhpmcounter26
773 # name
774 csrrs t1, mhpmcounter26, zero
775 # uimm12
776 csrrs t2, 0xB1A, zero
778 # mhpmcounter27
779 # name
780 # CHECK-INST: csrrs t1, mhpmcounter27, zero
781 # CHECK-ENC: encoding: [0x73,0x23,0xb0,0xb1]
782 # CHECK-INST-ALIAS: csrr t1, mhpmcounter27
783 # uimm12
784 # CHECK-INST: csrrs t2, mhpmcounter27, zero
785 # CHECK-ENC: encoding: [0xf3,0x23,0xb0,0xb1]
786 # CHECK-INST-ALIAS: csrr t2, mhpmcounter27
787 # name
788 csrrs t1, mhpmcounter27, zero
789 # uimm12
790 csrrs t2, 0xB1B, zero
792 # mhpmcounter28
793 # name
794 # CHECK-INST: csrrs t1, mhpmcounter28, zero
795 # CHECK-ENC: encoding: [0x73,0x23,0xc0,0xb1]
796 # CHECK-INST-ALIAS: csrr t1, mhpmcounter28
797 # uimm12
798 # CHECK-INST: csrrs t2, mhpmcounter28, zero
799 # CHECK-ENC: encoding: [0xf3,0x23,0xc0,0xb1]
800 # CHECK-INST-ALIAS: csrr t2, mhpmcounter28
801 # name
802 csrrs t1, mhpmcounter28, zero
803 # uimm12
804 csrrs t2, 0xB1C, zero
806 # mhpmcounter29
807 # name
808 # CHECK-INST: csrrs t1, mhpmcounter29, zero
809 # CHECK-ENC: encoding: [0x73,0x23,0xd0,0xb1]
810 # CHECK-INST-ALIAS: csrr t1, mhpmcounter29
811 # uimm12
812 # CHECK-INST: csrrs t2, mhpmcounter29, zero
813 # CHECK-ENC: encoding: [0xf3,0x23,0xd0,0xb1]
814 # CHECK-INST-ALIAS: csrr t2, mhpmcounter29
815 # name
816 csrrs t1, mhpmcounter29, zero
817 # uimm12
818 csrrs t2, 0xB1D, zero
820 # mhpmcounter30
821 # name
822 # CHECK-INST: csrrs t1, mhpmcounter30, zero
823 # CHECK-ENC: encoding: [0x73,0x23,0xe0,0xb1]
824 # CHECK-INST-ALIAS: csrr t1, mhpmcounter30
825 # uimm12
826 # CHECK-INST: csrrs t2, mhpmcounter30, zero
827 # CHECK-ENC: encoding: [0xf3,0x23,0xe0,0xb1]
828 # CHECK-INST-ALIAS: csrr t2, mhpmcounter30
829 # name
830 csrrs t1, mhpmcounter30, zero
831 # uimm12
832 csrrs t2, 0xB1E, zero
834 # mhpmcounter31
835 # name
836 # CHECK-INST: csrrs t1, mhpmcounter31, zero
837 # CHECK-ENC: encoding: [0x73,0x23,0xf0,0xb1]
838 # CHECK-INST-ALIAS: csrr t1, mhpmcounter31
839 # uimm12
840 # CHECK-INST: csrrs t2, mhpmcounter31, zero
841 # CHECK-ENC: encoding: [0xf3,0x23,0xf0,0xb1]
842 # CHECK-INST-ALIAS: csrr t2, mhpmcounter31
843 # name
844 csrrs t1, mhpmcounter31, zero
845 # uimm12
846 csrrs t2, 0xB1F, zero
849 ######################################
850 # Machine Counter Setup
851 ######################################
852 # mcountinhibit
853 # name
854 # CHECK-INST: csrrs t1, mcountinhibit, zero
855 # CHECK-ENC: encoding: [0x73,0x23,0x00,0x32]
856 # CHECK-INST-ALIAS: csrr t1, mcountinhibit
857 # uimm12
858 # CHECK-INST: csrrs t2, mcountinhibit, zero
859 # CHECK-ENC: encoding: [0xf3,0x23,0x00,0x32]
860 # CHECK-INST-ALIAS: csrr t2, mcountinhibit
861 # name
862 csrrs t1, mcountinhibit, zero
863 # uimm12
864 csrrs t2, 0x320, zero
866 # mucounteren
867 # name
868 # CHECK-INST: csrrs t1, mcountinhibit, zero
869 # CHECK-ENC: encoding: [0x73,0x23,0x00,0x32]
870 # CHECK-INST-ALIAS: csrr t1, mcountinhibit
871 # uimm12
872 # CHECK-INST: csrrs t2, mcountinhibit, zero
873 # CHECK-ENC: encoding: [0xf3,0x23,0x00,0x32]
874 # CHECK-INST-ALIAS: csrr t2, mcountinhibit
875 # name
876 csrrs t1, mucounteren, zero
877 # uimm12
878 csrrs t2, 0x320, zero
880 # mhpmevent3
881 # name
882 # CHECK-INST: csrrs t1, mhpmevent3, zero
883 # CHECK-ENC: encoding: [0x73,0x23,0x30,0x32]
884 # CHECK-INST-ALIAS: csrr t1, mhpmevent3
885 # uimm12
886 # CHECK-INST: csrrs t2, mhpmevent3, zero
887 # CHECK-ENC: encoding: [0xf3,0x23,0x30,0x32]
888 # CHECK-INST-ALIAS: csrr t2, mhpmevent3
889 # name
890 csrrs t1, mhpmevent3, zero
891 # uimm12
892 csrrs t2, 0x323, zero
894 # mhpmevent4
895 # name
896 # CHECK-INST: csrrs t1, mhpmevent4, zero
897 # CHECK-ENC: encoding: [0x73,0x23,0x40,0x32]
898 # CHECK-INST-ALIAS: csrr t1, mhpmevent4
899 # uimm12
900 # CHECK-INST: csrrs t2, mhpmevent4, zero
901 # CHECK-ENC: encoding: [0xf3,0x23,0x40,0x32]
902 # CHECK-INST-ALIAS: csrr t2, mhpmevent4
903 # name
904 csrrs t1, mhpmevent4, zero
905 # uimm12
906 csrrs t2, 0x324, zero
908 # mhpmevent5
909 # name
910 # CHECK-INST: csrrs t1, mhpmevent5, zero
911 # CHECK-ENC: encoding: [0x73,0x23,0x50,0x32]
912 # CHECK-INST-ALIAS: csrr t1, mhpmevent5
913 # uimm12
914 # CHECK-INST: csrrs t2, mhpmevent5, zero
915 # CHECK-ENC: encoding: [0xf3,0x23,0x50,0x32]
916 # CHECK-INST-ALIAS: csrr t2, mhpmevent5
917 # name
918 csrrs t1, mhpmevent5, zero
919 # uimm12
920 csrrs t2, 0x325, zero
922 # mhpmevent6
923 # name
924 # CHECK-INST: csrrs t1, mhpmevent6, zero
925 # CHECK-ENC: encoding: [0x73,0x23,0x60,0x32]
926 # CHECK-INST-ALIAS: csrr t1, mhpmevent6
927 # uimm12
928 # CHECK-INST: csrrs t2, mhpmevent6, zero
929 # CHECK-ENC: encoding: [0xf3,0x23,0x60,0x32]
930 # CHECK-INST-ALIAS: csrr t2, mhpmevent6
931 # name
932 csrrs t1, mhpmevent6, zero
933 # uimm12
934 csrrs t2, 0x326, zero
936 # mhpmevent7
937 # name
938 # CHECK-INST: csrrs t1, mhpmevent7, zero
939 # CHECK-ENC: encoding: [0x73,0x23,0x70,0x32]
940 # CHECK-INST-ALIAS: csrr t1, mhpmevent7
941 # uimm12
942 # CHECK-INST: csrrs t2, mhpmevent7, zero
943 # CHECK-ENC: encoding: [0xf3,0x23,0x70,0x32]
944 # CHECK-INST-ALIAS: csrr t2, mhpmevent7
945 # name
946 csrrs t1, mhpmevent7, zero
947 # uimm12
948 csrrs t2, 0x327, zero
950 # mhpmevent8
951 # name
952 # CHECK-INST: csrrs t1, mhpmevent8, zero
953 # CHECK-ENC: encoding: [0x73,0x23,0x80,0x32]
954 # CHECK-INST-ALIAS: csrr t1, mhpmevent8
955 # uimm12
956 # CHECK-INST: csrrs t2, mhpmevent8, zero
957 # CHECK-ENC: encoding: [0xf3,0x23,0x80,0x32]
958 # CHECK-INST-ALIAS: csrr t2, mhpmevent8
959 # name
960 csrrs t1, mhpmevent8, zero
961 # uimm12
962 csrrs t2, 0x328, zero
964 # mhpmevent9
965 # name
966 # CHECK-INST: csrrs t1, mhpmevent9, zero
967 # CHECK-ENC: encoding: [0x73,0x23,0x90,0x32]
968 # CHECK-INST-ALIAS: csrr t1, mhpmevent9
969 # uimm12
970 # CHECK-INST: csrrs t2, mhpmevent9, zero
971 # CHECK-ENC: encoding: [0xf3,0x23,0x90,0x32]
972 # CHECK-INST-ALIAS: csrr t2, mhpmevent9
973 # name
974 csrrs t1, mhpmevent9, zero
975 # uimm12
976 csrrs t2, 0x329, zero
978 # mhpmevent10
979 # name
980 # CHECK-INST: csrrs t1, mhpmevent10, zero
981 # CHECK-ENC: encoding: [0x73,0x23,0xa0,0x32]
982 # CHECK-INST-ALIAS: csrr t1, mhpmevent10
983 # uimm12
984 # CHECK-INST: csrrs t2, mhpmevent10, zero
985 # CHECK-ENC: encoding: [0xf3,0x23,0xa0,0x32]
986 # CHECK-INST-ALIAS: csrr t2, mhpmevent10
987 # name
988 csrrs t1, mhpmevent10, zero
989 # uimm12
990 csrrs t2, 0x32A, zero
992 # mhpmevent11
993 # name
994 # CHECK-INST: csrrs t1, mhpmevent11, zero
995 # CHECK-ENC: encoding: [0x73,0x23,0xb0,0x32]
996 # CHECK-INST-ALIAS: csrr t1, mhpmevent11
997 # uimm12
998 # CHECK-INST: csrrs t2, mhpmevent11, zero
999 # CHECK-ENC: encoding: [0xf3,0x23,0xb0,0x32]
1000 # CHECK-INST-ALIAS: csrr t2, mhpmevent11
1001 # name
1002 csrrs t1, mhpmevent11, zero
1003 # uimm12
1004 csrrs t2, 0x32B, zero
1006 # mhpmevent12
1007 # name
1008 # CHECK-INST: csrrs t1, mhpmevent12, zero
1009 # CHECK-ENC: encoding: [0x73,0x23,0xc0,0x32]
1010 # CHECK-INST-ALIAS: csrr t1, mhpmevent12
1011 # uimm12
1012 # CHECK-INST: csrrs t2, mhpmevent12, zero
1013 # CHECK-ENC: encoding: [0xf3,0x23,0xc0,0x32]
1014 # CHECK-INST-ALIAS: csrr t2, mhpmevent12
1015 # name
1016 csrrs t1, mhpmevent12, zero
1017 # uimm12
1018 csrrs t2, 0x32C, zero
1020 # mhpmevent13
1021 # name
1022 # CHECK-INST: csrrs t1, mhpmevent13, zero
1023 # CHECK-ENC: encoding: [0x73,0x23,0xd0,0x32]
1024 # CHECK-INST-ALIAS: csrr t1, mhpmevent13
1025 # uimm12
1026 # CHECK-INST: csrrs t2, mhpmevent13, zero
1027 # CHECK-ENC: encoding: [0xf3,0x23,0xd0,0x32]
1028 # CHECK-INST-ALIAS: csrr t2, mhpmevent13
1029 # name
1030 csrrs t1, mhpmevent13, zero
1031 # uimm12
1032 csrrs t2, 0x32D, zero
1034 # mhpmevent14
1035 # name
1036 # CHECK-INST: csrrs t1, mhpmevent14, zero
1037 # CHECK-ENC: encoding: [0x73,0x23,0xe0,0x32]
1038 # CHECK-INST-ALIAS: csrr t1, mhpmevent14
1039 # uimm12
1041 # CHECK-INST: csrrs t2, mhpmevent14, zero
1042 # CHECK-ENC: encoding: [0xf3,0x23,0xe0,0x32]
1043 # CHECK-INST-ALIAS: csrr t2, mhpmevent14
1044 # name
1045 csrrs t1, mhpmevent14, zero
1046 # uimm12
1047 csrrs t2, 0x32E, zero
1049 # mhpmevent15
1050 # name
1051 # CHECK-INST: csrrs t1, mhpmevent15, zero
1052 # CHECK-ENC: encoding: [0x73,0x23,0xf0,0x32]
1053 # CHECK-INST-ALIAS: csrr t1, mhpmevent15
1054 # uimm12
1055 # CHECK-INST: csrrs t2, mhpmevent15, zero
1056 # CHECK-ENC: encoding: [0xf3,0x23,0xf0,0x32]
1057 # CHECK-INST-ALIAS: csrr t2, mhpmevent15
1058 # name
1059 csrrs t1, mhpmevent15, zero
1060 # uimm12
1061 csrrs t2, 0x32F, zero
1063 # mhpmevent16
1064 # name
1065 # CHECK-INST: csrrs t1, mhpmevent16, zero
1066 # CHECK-ENC: encoding: [0x73,0x23,0x00,0x33]
1067 # CHECK-INST-ALIAS: csrr t1, mhpmevent16
1068 # uimm12
1069 # CHECK-INST: csrrs t2, mhpmevent16, zero
1070 # CHECK-ENC: encoding: [0xf3,0x23,0x00,0x33]
1071 # CHECK-INST-ALIAS: csrr t2, mhpmevent16
1072 # name
1073 csrrs t1, mhpmevent16, zero
1074 # uimm12
1075 csrrs t2, 0x330, zero
1077 # mhpmevent17
1078 # name
1079 # CHECK-INST: csrrs t1, mhpmevent17, zero
1080 # CHECK-ENC: encoding: [0x73,0x23,0x10,0x33]
1081 # CHECK-INST-ALIAS: csrr t1, mhpmevent17
1082 # uimm12
1083 # CHECK-INST: csrrs t2, mhpmevent17, zero
1084 # CHECK-ENC: encoding: [0xf3,0x23,0x10,0x33]
1085 # CHECK-INST-ALIAS: csrr t2, mhpmevent17
1086 # name
1087 csrrs t1, mhpmevent17, zero
1088 # uimm12
1089 csrrs t2, 0x331, zero
1091 # mhpmevent18
1092 # name
1093 # CHECK-INST: csrrs t1, mhpmevent18, zero
1094 # CHECK-ENC: encoding: [0x73,0x23,0x20,0x33]
1095 # CHECK-INST-ALIAS: csrr t1, mhpmevent18
1096 # uimm12
1097 # CHECK-INST: csrrs t2, mhpmevent18, zero
1098 # CHECK-ENC: encoding: [0xf3,0x23,0x20,0x33]
1099 # CHECK-INST-ALIAS: csrr t2, mhpmevent18
1100 # name
1101 csrrs t1, mhpmevent18, zero
1102 # uimm12
1103 csrrs t2, 0x332, zero
1105 # mhpmevent19
1106 # name
1107 # CHECK-INST: csrrs t1, mhpmevent19, zero
1108 # CHECK-ENC: encoding: [0x73,0x23,0x30,0x33]
1109 # CHECK-INST-ALIAS: csrr t1, mhpmevent19
1110 # uimm12
1111 # CHECK-INST: csrrs t2, mhpmevent19, zero
1112 # CHECK-ENC: encoding: [0xf3,0x23,0x30,0x33]
1113 # CHECK-INST-ALIAS: csrr t2, mhpmevent19
1114 # name
1115 csrrs t1, mhpmevent19, zero
1116 # uimm12
1117 csrrs t2, 0x333, zero
1119 # mhpmevent20
1120 # name
1121 # CHECK-INST: csrrs t1, mhpmevent20, zero
1122 # CHECK-ENC: encoding: [0x73,0x23,0x40,0x33]
1123 # CHECK-INST-ALIAS: csrr t1, mhpmevent20
1124 # uimm12
1125 # CHECK-INST: csrrs t2, mhpmevent20, zero
1126 # CHECK-ENC: encoding: [0xf3,0x23,0x40,0x33]
1127 # CHECK-INST-ALIAS: csrr t2, mhpmevent20
1128 # name
1129 csrrs t1, mhpmevent20, zero
1130 # uimm12
1131 csrrs t2, 0x334, zero
1133 # mhpmevent21
1134 # name
1135 # CHECK-INST: csrrs t1, mhpmevent21, zero
1136 # CHECK-ENC: encoding: [0x73,0x23,0x50,0x33]
1137 # CHECK-INST-ALIAS: csrr t1, mhpmevent21
1138 # uimm12
1139 # CHECK-INST: csrrs t2, mhpmevent21, zero
1140 # CHECK-ENC: encoding: [0xf3,0x23,0x50,0x33]
1141 # CHECK-INST-ALIAS: csrr t2, mhpmevent21
1142 # name
1143 csrrs t1, mhpmevent21, zero
1144 # uimm12
1145 csrrs t2, 0x335, zero
1147 # mhpmevent22
1148 # name
1149 # CHECK-INST: csrrs t1, mhpmevent22, zero
1150 # CHECK-ENC: encoding: [0x73,0x23,0x60,0x33]
1151 # CHECK-INST-ALIAS: csrr t1, mhpmevent22
1152 # uimm12
1153 # CHECK-INST: csrrs t2, mhpmevent22, zero
1154 # CHECK-ENC: encoding: [0xf3,0x23,0x60,0x33]
1155 # CHECK-INST-ALIAS: csrr t2, mhpmevent22
1156 # name
1157 csrrs t1, mhpmevent22, zero
1158 # uimm12
1159 csrrs t2, 0x336, zero
1161 # mhpmevent23
1162 # name
1163 # CHECK-INST: csrrs t1, mhpmevent23, zero
1164 # CHECK-ENC: encoding: [0x73,0x23,0x70,0x33]
1165 # CHECK-INST-ALIAS: csrr t1, mhpmevent23
1166 # uimm12
1167 # CHECK-INST: csrrs t2, mhpmevent23, zero
1168 # CHECK-ENC: encoding: [0xf3,0x23,0x70,0x33]
1169 # CHECK-INST-ALIAS: csrr t2, mhpmevent23
1170 # name
1171 csrrs t1, mhpmevent23, zero
1172 # uimm12
1173 csrrs t2, 0x337, zero
1175 # mhpmevent24
1176 # name
1177 # CHECK-INST: csrrs t1, mhpmevent24, zero
1178 # CHECK-ENC: encoding: [0x73,0x23,0x80,0x33]
1179 # CHECK-INST-ALIAS: csrr t1, mhpmevent24
1180 # uimm12
1181 # CHECK-INST: csrrs t2, mhpmevent24, zero
1182 # CHECK-ENC: encoding: [0xf3,0x23,0x80,0x33]
1183 # CHECK-INST-ALIAS: csrr t2, mhpmevent24
1184 # name
1185 csrrs t1, mhpmevent24, zero
1186 # uimm12
1187 csrrs t2, 0x338, zero
1189 # mhpmevent25
1190 # name
1191 # CHECK-INST: csrrs t1, mhpmevent25, zero
1192 # CHECK-ENC: encoding: [0x73,0x23,0x90,0x33]
1193 # CHECK-INST-ALIAS: csrr t1, mhpmevent25
1194 # uimm12
1195 # CHECK-INST: csrrs t2, mhpmevent25, zero
1196 # CHECK-ENC: encoding: [0xf3,0x23,0x90,0x33]
1197 # CHECK-INST-ALIAS: csrr t2, mhpmevent25
1198 # name
1199 csrrs t1, mhpmevent25, zero
1200 # uimm12
1201 csrrs t2, 0x339, zero
1203 # mhpmevent26
1204 # name
1205 # CHECK-INST: csrrs t1, mhpmevent26, zero
1206 # CHECK-ENC: encoding: [0x73,0x23,0xa0,0x33]
1207 # CHECK-INST-ALIAS: csrr t1, mhpmevent26
1208 # uimm12
1209 # CHECK-INST: csrrs t2, mhpmevent26, zero
1210 # CHECK-ENC: encoding: [0xf3,0x23,0xa0,0x33]
1211 # CHECK-INST-ALIAS: csrr t2, mhpmevent26
1212 # name
1213 csrrs t1, mhpmevent26, zero
1214 # uimm12
1215 csrrs t2, 0x33A, zero
1217 # mhpmevent27
1218 # name
1219 # CHECK-INST: csrrs t1, mhpmevent27, zero
1220 # CHECK-ENC: encoding: [0x73,0x23,0xb0,0x33]
1221 # CHECK-INST-ALIAS: csrr t1, mhpmevent27
1222 # uimm12
1223 # CHECK-INST: csrrs t2, mhpmevent27, zero
1224 # CHECK-ENC: encoding: [0xf3,0x23,0xb0,0x33]
1225 # CHECK-INST-ALIAS: csrr t2, mhpmevent27
1226 # name
1227 csrrs t1, mhpmevent27, zero
1228 # uimm12
1229 csrrs t2, 0x33B, zero
1231 # mhpmevent28
1232 # name
1233 # CHECK-INST: csrrs t1, mhpmevent28, zero
1234 # CHECK-ENC: encoding: [0x73,0x23,0xc0,0x33]
1235 # CHECK-INST-ALIAS: csrr t1, mhpmevent28
1236 # uimm12
1237 # CHECK-INST: csrrs t2, mhpmevent28, zero
1238 # CHECK-ENC: encoding: [0xf3,0x23,0xc0,0x33]
1239 # CHECK-INST-ALIAS: csrr t2, mhpmevent28
1240 # name
1241 csrrs t1, mhpmevent28, zero
1242 # uimm12
1243 csrrs t2, 0x33C, zero
1245 # mhpmevent29
1246 # name
1247 # CHECK-INST: csrrs t1, mhpmevent29, zero
1248 # CHECK-ENC: encoding: [0x73,0x23,0xd0,0x33]
1249 # CHECK-INST-ALIAS: csrr t1, mhpmevent29
1250 # uimm12
1251 # CHECK-INST: csrrs t2, mhpmevent29, zero
1252 # CHECK-ENC: encoding: [0xf3,0x23,0xd0,0x33]
1253 # CHECK-INST-ALIAS: csrr t2, mhpmevent29
1254 # name
1255 csrrs t1, mhpmevent29, zero
1256 # uimm12
1257 csrrs t2, 0x33D, zero
1259 # mhpmevent30
1260 # name
1261 # CHECK-INST: csrrs t1, mhpmevent30, zero
1262 # CHECK-ENC: encoding: [0x73,0x23,0xe0,0x33]
1263 # CHECK-INST-ALIAS: csrr t1, mhpmevent30
1264 # uimm12
1265 # CHECK-INST: csrrs t2, mhpmevent30, zero
1266 # CHECK-ENC: encoding: [0xf3,0x23,0xe0,0x33]
1267 # CHECK-INST-ALIAS: csrr t2, mhpmevent30
1268 # name
1269 csrrs t1, mhpmevent30, zero
1270 # uimm12
1271 csrrs t2, 0x33E, zero
1273 # mhpmevent31
1274 # name
1275 # CHECK-INST: csrrs t1, mhpmevent31, zero
1276 # CHECK-ENC: encoding: [0x73,0x23,0xf0,0x33]
1277 # CHECK-INST-ALIAS: csrr t1, mhpmevent31
1278 # uimm12
1279 # CHECK-INST: csrrs t2, mhpmevent31, zero
1280 # CHECK-ENC: encoding: [0xf3,0x23,0xf0,0x33]
1281 # CHECK-INST-ALIAS: csrr t2, mhpmevent31
1282 # name
1283 csrrs t1, mhpmevent31, zero
1284 # uimm12
1285 csrrs t2, 0x33F, zero