xref: /llvm-project/llvm/test/MC/RISCV/xtheadcmo-valid.s (revision f5b484c56f7b0bbf265c06de70ed0c432543847f)
1# RUN: llvm-mc %s -triple=riscv32 -mattr=+xtheadcmo -show-encoding \
2# RUN:     | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s
3# RUN: llvm-mc -filetype=obj -triple=riscv32 -mattr=+xtheadcmo < %s \
4# RUN:     | llvm-objdump --mattr=+xtheadcmo -d -r - \
5# RUN:     | FileCheck --check-prefix=CHECK-ASM-AND-OBJ %s
6# RUN: llvm-mc %s -triple=riscv64 -mattr=+xtheadcmo -show-encoding \
7# RUN:     | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s
8# RUN: llvm-mc -filetype=obj -triple=riscv64 -mattr=+xtheadcmo < %s \
9# RUN:     | llvm-objdump --mattr=+xtheadcmo -d -r - \
10# RUN:     | FileCheck --check-prefix=CHECK-ASM-AND-OBJ %s
11
12# CHECK-ASM-AND-OBJ: th.dcache.csw a6
13# CHECK-ASM: encoding: [0x0b,0x00,0x18,0x02]
14th.dcache.csw a6
15
16# CHECK-ASM-AND-OBJ: th.dcache.isw t0
17# CHECK-ASM: encoding: [0x0b,0x80,0x22,0x02]
18th.dcache.isw t0
19
20# CHECK-ASM-AND-OBJ: th.dcache.cisw a7
21# CHECK-ASM: encoding: [0x0b,0x80,0x38,0x02]
22th.dcache.cisw a7
23
24# CHECK-ASM-AND-OBJ: th.dcache.cval1 t2
25# CHECK-ASM: encoding: [0x0b,0x80,0x43,0x02]
26th.dcache.cval1 t2
27
28# CHECK-ASM-AND-OBJ: th.dcache.cva a3
29# CHECK-ASM: encoding: [0x0b,0x80,0x56,0x02]
30th.dcache.cva a3
31
32# CHECK-ASM-AND-OBJ: th.dcache.iva a5
33# CHECK-ASM: encoding: [0x0b,0x80,0x67,0x02]
34th.dcache.iva a5
35
36# CHECK-ASM-AND-OBJ: th.dcache.civa a4
37# CHECK-ASM: encoding: [0x0b,0x00,0x77,0x02]
38th.dcache.civa a4
39
40# CHECK-ASM-AND-OBJ: th.dcache.cpal1 t1
41# CHECK-ASM: encoding: [0x0b,0x00,0x83,0x02]
42th.dcache.cpal1 t1
43
44# CHECK-ASM-AND-OBJ: th.dcache.cpa a0
45# CHECK-ASM: encoding: [0x0b,0x00,0x95,0x02]
46th.dcache.cpa a0
47
48# CHECK-ASM-AND-OBJ: th.dcache.ipa a2
49# CHECK-ASM: encoding: [0x0b,0x00,0xa6,0x02]
50th.dcache.ipa a2
51
52# CHECK-ASM-AND-OBJ: th.dcache.cipa a1
53# CHECK-ASM: encoding: [0x0b,0x80,0xb5,0x02]
54th.dcache.cipa a1
55
56# CHECK-ASM-AND-OBJ: th.icache.iva t4
57# CHECK-ASM: encoding: [0x0b,0x80,0x0e,0x03]
58th.icache.iva t4
59
60# CHECK-ASM-AND-OBJ: th.icache.ipa t3
61# CHECK-ASM: encoding: [0x0b,0x00,0x8e,0x03]
62th.icache.ipa t3
63
64# CHECK-ASM-AND-OBJ: th.dcache.call
65# CHECK-ASM: encoding: [0x0b,0x00,0x10,0x00]
66th.dcache.call
67
68# CHECK-ASM-AND-OBJ: th.dcache.iall
69# CHECK-ASM: encoding: [0x0b,0x00,0x20,0x00]
70th.dcache.iall
71
72# CHECK-ASM-AND-OBJ: th.dcache.ciall
73# CHECK-ASM: encoding: [0x0b,0x00,0x30,0x00]
74th.dcache.ciall
75
76# CHECK-ASM-AND-OBJ: th.icache.iall
77# CHECK-ASM: encoding: [0x0b,0x00,0x00,0x01]
78th.icache.iall
79
80# CHECK-ASM-AND-OBJ: th.icache.ialls
81# CHECK-ASM: encoding: [0x0b,0x00,0x10,0x01]
82th.icache.ialls
83
84# CHECK-ASM-AND-OBJ: th.l2cache.call
85# CHECK-ASM: encoding: [0x0b,0x00,0x50,0x01]
86th.l2cache.call
87
88# CHECK-ASM-AND-OBJ: th.l2cache.iall
89# CHECK-ASM: encoding: [0x0b,0x00,0x60,0x01]
90th.l2cache.iall
91
92# CHECK-ASM-AND-OBJ: th.l2cache.ciall
93# CHECK-ASM: encoding: [0x0b,0x00,0x70,0x01]
94th.l2cache.ciall
95