# RUN: llvm-mc %s -triple=riscv32 -mattr=+xtheadmemidx -show-encoding \ # RUN: | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s # RUN: llvm-mc -filetype=obj -triple=riscv32 -mattr=+xtheadmemidx < %s \ # RUN: | llvm-objdump --mattr=+xtheadmemidx -d -r - \ # RUN: | FileCheck --check-prefix=CHECK-ASM-AND-OBJ %s # CHECK-ASM-AND-OBJ: th.lwia # CHECK-ASM: encoding: [0x0b,0xc5,0x05,0x5c] th.lwia a0, (a1), 0, 2 # CHECK-ASM-AND-OBJ: th.lwib # CHECK-ASM: encoding: [0x0b,0xc5,0x05,0x4f] th.lwib a0, (a1), -16, 3 # CHECK-ASM-AND-OBJ: th.lhia # CHECK-ASM: encoding: [0x0b,0xc5,0x05,0x3c] th.lhia a0, (a1), 0, 2 # CHECK-ASM-AND-OBJ: th.lhib # CHECK-ASM: encoding: [0x0b,0xc5,0x05,0x2f] th.lhib a0, (a1), -16, 3 # CHECK-ASM-AND-OBJ: th.lhuia # CHECK-ASM: encoding: [0x0b,0xc5,0x05,0xb8] th.lhuia a0, (a1), 0, 0 # CHECK-ASM-AND-OBJ: th.lhuib # CHECK-ASM: encoding: [0x0b,0xc5,0xf5,0xaa] th.lhuib a0, (a1), 15, 1 # CHECK-ASM-AND-OBJ: th.lbia # CHECK-ASM: encoding: [0x0b,0xc5,0x05,0x1c] th.lbia a0, (a1), 0, 2 # CHECK-ASM-AND-OBJ: th.lbib # CHECK-ASM: encoding: [0x0b,0xc5,0x05,0x0f] th.lbib a0, (a1), -16, 3 # CHECK-ASM-AND-OBJ: th.lbuia # CHECK-ASM: encoding: [0x0b,0xc5,0x05,0x98] th.lbuia a0, (a1), 0, 0 # CHECK-ASM-AND-OBJ: th.lbuib # CHECK-ASM: encoding: [0x0b,0xc5,0xf5,0x8a] th.lbuib a0, (a1), 15, 1 # CHECK-ASM-AND-OBJ: th.swia # CHECK-ASM: encoding: [0x0b,0xd5,0x05,0x5c] th.swia a0, (a1), 0, 2 # CHECK-ASM-AND-OBJ: th.swib # CHECK-ASM: encoding: [0x0b,0xd5,0x15,0x4e] th.swib a0, (a1), 1, 3 # CHECK-ASM-AND-OBJ: th.shia # CHECK-ASM: encoding: [0x0b,0xd5,0x45,0x38] th.shia a0, (a1), 4, 0 # CHECK-ASM-AND-OBJ: th.shib # CHECK-ASM: encoding: [0x0b,0xd5,0xd5,0x2a] th.shib a0, (a1), 13, 1 # CHECK-ASM-AND-OBJ: th.sbia # CHECK-ASM: encoding: [0x0b,0xd5,0xe5,0x1c] th.sbia a0, (a1), 14, 2 # CHECK-ASM-AND-OBJ: th.sbib # CHECK-ASM: encoding: [0x0b,0xd5,0xf5,0x0e] th.sbib a0, (a1), 15, 3 # CHECK-ASM-AND-OBJ: th.lrw # CHECK-ASM: encoding: [0x0b,0xc5,0xc5,0x42] th.lrw a0, a1, a2, 1 # CHECK-ASM-AND-OBJ: th.lrh # CHECK-ASM: encoding: [0x0b,0xc5,0xc5,0x26] th.lrh a0, a1, a2, 3 # CHECK-ASM-AND-OBJ: th.lrhu # CHECK-ASM: encoding: [0x0b,0xc5,0xc5,0xa0] th.lrhu a0, a1, a2, 0 # CHECK-ASM-AND-OBJ: th.lrb # CHECK-ASM: encoding: [0x0b,0xc5,0xc5,0x02] th.lrb a0, a1, a2, 1 # CHECK-ASM-AND-OBJ: th.lrbu # CHECK-ASM: encoding: [0x0b,0xc5,0xc5,0x84] th.lrbu a0, a1, a2, 2 # CHECK-ASM-AND-OBJ: th.srw # CHECK-ASM: encoding: [0x0b,0xd5,0xc5,0x40] th.srw a0, a1, a2, 0 # CHECK-ASM-AND-OBJ: th.srh # CHECK-ASM: encoding: [0x0b,0xd5,0xc5,0x22] th.srh a0, a1, a2, 1 # CHECK-ASM-AND-OBJ: th.srb # CHECK-ASM: encoding: [0x0b,0xd5,0xc5,0x04] th.srb a0, a1, a2, 2 # CHECK-ASM-AND-OBJ: th.lurw # CHECK-ASM: encoding: [0x0b,0xc5,0xc5,0x52] th.lurw a0, a1, a2, 1 # CHECK-ASM-AND-OBJ: th.lurh # CHECK-ASM: encoding: [0x0b,0xc5,0xc5,0x36] th.lurh a0, a1, a2, 3 # CHECK-ASM-AND-OBJ: th.lurhu # CHECK-ASM: encoding: [0x0b,0xc5,0xc5,0xb0] th.lurhu a0, a1, a2, 0 # CHECK-ASM-AND-OBJ: th.lurb # CHECK-ASM: encoding: [0x0b,0xc5,0xc5,0x12] th.lurb a0, a1, a2, 1 # CHECK-ASM-AND-OBJ: th.lurbu # CHECK-ASM: encoding: [0x0b,0xc5,0xc5,0x94] th.lurbu a0, a1, a2, 2 # CHECK-ASM-AND-OBJ: th.surw # CHECK-ASM: encoding: [0x0b,0xd5,0xc5,0x50] th.surw a0, a1, a2, 0 # CHECK-ASM-AND-OBJ: th.surh # CHECK-ASM: encoding: [0x0b,0xd5,0xc5,0x32] th.surh a0, a1, a2, 1 # CHECK-ASM-AND-OBJ: th.surb # CHECK-ASM: encoding: [0x0b,0xd5,0xc5,0x14] th.surb a0, a1, a2, 2