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