146 lines · plain
1# RUN: llvm-mc %s -triple=riscv32 -mattr=+xwchc -M no-aliases -show-encoding \2# RUN: | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s3# RUN: llvm-mc -filetype=obj -triple=riscv32 -mattr=+xwchc < %s \4# RUN: | llvm-objdump --mattr=+xwchc --no-print-imm-hex -M no-aliases -d -r - \5# RUN: | FileCheck --check-prefix=CHECK-ASM-AND-OBJ %s6 7# CHECK-ASM-AND-OBJ: qk.c.lbu s0, 0(s0)8# CHECK-ASM: encoding: [0x00,0x20]9qk.c.lbu s0, 0(s0)10# CHECK-ASM-AND-OBJ: qk.c.lbu s0, 1(s0)11# CHECK-ASM: encoding: [0x00,0x30]12qk.c.lbu s0, 1(s0)13# CHECK-ASM-AND-OBJ: qk.c.lbu s0, 2(s0)14# CHECK-ASM: encoding: [0x20,0x20]15qk.c.lbu s0, 2(s0)16# CHECK-ASM-AND-OBJ: qk.c.lbu s0, 4(s0)17# CHECK-ASM: encoding: [0x40,0x20]18qk.c.lbu s0, 4(s0)19# CHECK-ASM-AND-OBJ: qk.c.lbu s0, 8(s0)20# CHECK-ASM: encoding: [0x00,0x24]21qk.c.lbu s0, 8(s0)22# CHECK-ASM-AND-OBJ: qk.c.lbu s0, 16(s0)23# CHECK-ASM: encoding: [0x00,0x28]24qk.c.lbu s0, 16(s0)25 26# CHECK-ASM-AND-OBJ: qk.c.sb s0, 0(s0)27# CHECK-ASM: encoding: [0x00,0xa0]28qk.c.sb s0, 0(s0)29# CHECK-ASM-AND-OBJ: qk.c.sb s0, 1(s0)30# CHECK-ASM: encoding: [0x00,0xb0]31qk.c.sb s0, 1(s0)32# CHECK-ASM-AND-OBJ: qk.c.sb s0, 2(s0)33# CHECK-ASM: encoding: [0x20,0xa0]34qk.c.sb s0, 2(s0)35# CHECK-ASM-AND-OBJ: qk.c.sb s0, 4(s0)36# CHECK-ASM: encoding: [0x40,0xa0]37qk.c.sb s0, 4(s0)38# CHECK-ASM-AND-OBJ: qk.c.sb s0, 8(s0)39# CHECK-ASM: encoding: [0x00,0xa4]40qk.c.sb s0, 8(s0)41# CHECK-ASM-AND-OBJ: qk.c.sb s0, 16(s0)42# CHECK-ASM: encoding: [0x00,0xa8]43qk.c.sb s0, 16(s0)44 45# CHECK-ASM-AND-OBJ: qk.c.lhu s0, 0(s0)46# CHECK-ASM: encoding: [0x02,0x20]47qk.c.lhu s0, 0(s0)48# CHECK-ASM-AND-OBJ: qk.c.lhu s0, 2(s0)49# CHECK-ASM: encoding: [0x22,0x20]50qk.c.lhu s0, 2(s0)51# CHECK-ASM-AND-OBJ: qk.c.lhu s0, 4(s0)52# CHECK-ASM: encoding: [0x42,0x20]53qk.c.lhu s0, 4(s0)54# CHECK-ASM-AND-OBJ: qk.c.lhu s0, 8(s0)55# CHECK-ASM: encoding: [0x02,0x24]56qk.c.lhu s0, 8(s0)57# CHECK-ASM-AND-OBJ: qk.c.lhu s0, 16(s0)58# CHECK-ASM: encoding: [0x02,0x28]59qk.c.lhu s0, 16(s0)60# CHECK-ASM-AND-OBJ: qk.c.lhu s0, 32(s0)61# CHECK-ASM: encoding: [0x02,0x30]62qk.c.lhu s0, 32(s0)63 64# CHECK-ASM-AND-OBJ: qk.c.sh s0, 0(s0)65# CHECK-ASM: encoding: [0x02,0xa0]66qk.c.sh s0, 0(s0)67# CHECK-ASM-AND-OBJ: qk.c.sh s0, 2(s0)68# CHECK-ASM: encoding: [0x22,0xa0]69qk.c.sh s0, 2(s0)70# CHECK-ASM-AND-OBJ: qk.c.sh s0, 4(s0)71# CHECK-ASM: encoding: [0x42,0xa0]72qk.c.sh s0, 4(s0)73# CHECK-ASM-AND-OBJ: qk.c.sh s0, 8(s0)74# CHECK-ASM: encoding: [0x02,0xa4]75qk.c.sh s0, 8(s0)76# CHECK-ASM-AND-OBJ: qk.c.sh s0, 16(s0)77# CHECK-ASM: encoding: [0x02,0xa8]78qk.c.sh s0, 16(s0)79# CHECK-ASM-AND-OBJ: qk.c.sh s0, 32(s0)80# CHECK-ASM: encoding: [0x02,0xb0]81qk.c.sh s0, 32(s0)82 83# CHECK-ASM-AND-OBJ: qk.c.lbusp s0, 0(sp)84# CHECK-ASM: encoding: [0x00,0x80]85qk.c.lbusp s0, 0(sp)86# CHECK-ASM-AND-OBJ: qk.c.lbusp s0, 1(sp)87# CHECK-ASM: encoding: [0x80,0x80]88qk.c.lbusp s0, 1(sp)89# CHECK-ASM-AND-OBJ: qk.c.lbusp s0, 2(sp)90# CHECK-ASM: encoding: [0x00,0x81]91qk.c.lbusp s0, 2(sp)92# CHECK-ASM-AND-OBJ: qk.c.lbusp s0, 4(sp)93# CHECK-ASM: encoding: [0x00,0x82]94qk.c.lbusp s0, 4(sp)95# CHECK-ASM-AND-OBJ: qk.c.lbusp s0, 8(sp)96# CHECK-ASM: encoding: [0x00,0x84]97qk.c.lbusp s0, 8(sp)98 99# CHECK-ASM-AND-OBJ: qk.c.sbsp s0, 0(sp)100# CHECK-ASM: encoding: [0x40,0x80]101qk.c.sbsp s0, 0(sp)102# CHECK-ASM-AND-OBJ: qk.c.sbsp s0, 1(sp)103# CHECK-ASM: encoding: [0xc0,0x80]104qk.c.sbsp s0, 1(sp)105# CHECK-ASM-AND-OBJ: qk.c.sbsp s0, 2(sp)106# CHECK-ASM: encoding: [0x40,0x81]107qk.c.sbsp s0, 2(sp)108# CHECK-ASM-AND-OBJ: qk.c.sbsp s0, 4(sp)109# CHECK-ASM: encoding: [0x40,0x82]110qk.c.sbsp s0, 4(sp)111# CHECK-ASM-AND-OBJ: qk.c.sbsp s0, 8(sp)112# CHECK-ASM: encoding: [0x40,0x84]113qk.c.sbsp s0, 8(sp)114 115# CHECK-ASM-AND-OBJ: qk.c.lhusp s0, 0(sp)116# CHECK-ASM: encoding: [0x20,0x80]117qk.c.lhusp s0, 0(sp)118# CHECK-ASM-AND-OBJ: qk.c.lhusp s0, 2(sp)119# CHECK-ASM: encoding: [0x20,0x81]120qk.c.lhusp s0, 2(sp)121# CHECK-ASM-AND-OBJ: qk.c.lhusp s0, 4(sp)122# CHECK-ASM: encoding: [0x20,0x82]123qk.c.lhusp s0, 4(sp)124# CHECK-ASM-AND-OBJ: qk.c.lhusp s0, 8(sp)125# CHECK-ASM: encoding: [0x20,0x84]126qk.c.lhusp s0, 8(sp)127# CHECK-ASM-AND-OBJ: qk.c.lhusp s0, 16(sp)128# CHECK-ASM: encoding: [0xa0,0x80]129qk.c.lhusp s0, 16(sp)130 131# CHECK-ASM-AND-OBJ: qk.c.shsp s0, 0(sp)132# CHECK-ASM: encoding: [0x60,0x80]133qk.c.shsp s0, 0(sp)134# CHECK-ASM-AND-OBJ: qk.c.shsp s0, 2(sp)135# CHECK-ASM: encoding: [0x60,0x81]136qk.c.shsp s0, 2(sp)137# CHECK-ASM-AND-OBJ: qk.c.shsp s0, 4(sp)138# CHECK-ASM: encoding: [0x60,0x82]139qk.c.shsp s0, 4(sp)140# CHECK-ASM-AND-OBJ: qk.c.shsp s0, 8(sp)141# CHECK-ASM: encoding: [0x60,0x84]142qk.c.shsp s0, 8(sp)143# CHECK-ASM-AND-OBJ: qk.c.shsp s0, 16(sp)144# CHECK-ASM: encoding: [0xe0,0x80]145qk.c.shsp s0, 16(sp)146