1# RUN: llvm-mc --triple=loongarch64 --show-encoding %s | \ 2# RUN: FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST 3# RUN: llvm-mc --triple=loongarch64 --filetype=obj %s | \ 4# RUN: llvm-objdump -d - | FileCheck %s --check-prefix=CHECK-INST 5 6addu12i.w $a0, $a1, 1 7# CHECK-INST: addu12i.w $a0, $a1, 1 8# CHECK-ENCODING: encoding: [0xa4,0x04,0x29,0x00] 9 10addu12i.d $a0, $a1, 1 11# CHECK-INST: addu12i.d $a0, $a1, 1 12# CHECK-ENCODING: encoding: [0xa4,0x84,0x29,0x00] 13 14adc.b $a0, $a1, $a2 15# CHECK-INST: adc.b $a0, $a1, $a2 16# CHECK-ENCODING: encoding: [0xa4,0x18,0x30,0x00] 17 18adc.h $a0, $a1, $a2 19# CHECK-INST: adc.h $a0, $a1, $a2 20# CHECK-ENCODING: encoding: [0xa4,0x98,0x30,0x00] 21 22adc.w $a0, $a1, $a2 23# CHECK-INST: adc.w $a0, $a1, $a2 24# CHECK-ENCODING: encoding: [0xa4,0x18,0x31,0x00] 25 26adc.d $a0, $a1, $a2 27# CHECK-INST: adc.d $a0, $a1, $a2 28# CHECK-ENCODING: encoding: [0xa4,0x98,0x31,0x00] 29 30sbc.b $a0, $a1, $a2 31# CHECK-INST: sbc.b $a0, $a1, $a2 32# CHECK-ENCODING: encoding: [0xa4,0x18,0x32,0x00] 33 34sbc.h $a0, $a1, $a2 35# CHECK-INST: sbc.h $a0, $a1, $a2 36# CHECK-ENCODING: encoding: [0xa4,0x98,0x32,0x00] 37 38sbc.w $a0, $a1, $a2 39# CHECK-INST: sbc.w $a0, $a1, $a2 40# CHECK-ENCODING: encoding: [0xa4,0x18,0x33,0x00] 41 42sbc.d $a0, $a1, $a2 43# CHECK-INST: sbc.d $a0, $a1, $a2 44# CHECK-ENCODING: encoding: [0xa4,0x98,0x33,0x00] 45 46rotr.b $a0, $a1, $a2 47# CHECK-INST: rotr.b $a0, $a1, $a2 48# CHECK-ENCODING: encoding: [0xa4,0x18,0x1a,0x00] 49 50rotr.h $a0, $a1, $a2 51# CHECK-INST: rotr.h $a0, $a1, $a2 52# CHECK-ENCODING: encoding: [0xa4,0x98,0x1a,0x00] 53 54rotri.b $a0, $a1, 1 55# CHECK-INST: rotri.b $a0, $a1, 1 56# CHECK-ENCODING: encoding: [0xa4,0x24,0x4c,0x00] 57 58rotri.h $a0, $a1, 1 59# CHECK-INST: rotri.h $a0, $a1, 1 60# CHECK-ENCODING: encoding: [0xa4,0x44,0x4c,0x00] 61 62rcr.b $a0, $a1, $a2 63# CHECK-INST: rcr.b $a0, $a1, $a2 64# CHECK-ENCODING: encoding: [0xa4,0x18,0x34,0x00] 65 66rcr.h $a0, $a1, $a2 67# CHECK-INST: rcr.h $a0, $a1, $a2 68# CHECK-ENCODING: encoding: [0xa4,0x98,0x34,0x00] 69 70rcr.w $a0, $a1, $a2 71# CHECK-INST: rcr.w $a0, $a1, $a2 72# CHECK-ENCODING: encoding: [0xa4,0x18,0x35,0x00] 73 74rcr.d $a0, $a1, $a2 75# CHECK-INST: rcr.d $a0, $a1, $a2 76# CHECK-ENCODING: encoding: [0xa4,0x98,0x35,0x00] 77 78rcri.b $a0, $a1, 1 79# CHECK-INST: rcri.b $a0, $a1, 1 80# CHECK-ENCODING: encoding: [0xa4,0x24,0x50,0x00] 81 82rcri.h $a0, $a1, 1 83# CHECK-INST: rcri.h $a0, $a1, 1 84# CHECK-ENCODING: encoding: [0xa4,0x44,0x50,0x00] 85 86rcri.w $a0, $a1, 1 87# CHECK-INST: rcri.w $a0, $a1, 1 88# CHECK-ENCODING: encoding: [0xa4,0x84,0x50,0x00] 89 90rcri.d $a0, $a1, 1 91# CHECK-INST: rcri.d $a0, $a1, 1 92# CHECK-ENCODING: encoding: [0xa4,0x04,0x51,0x00] 93 94fcvt.ud.d $f0, $f1 95# CHECK-INST: fcvt.ud.d $fa0, $fa1 96# CHECK-ENCODING: encoding: [0x20,0xe4,0x14,0x01] 97 98fcvt.ld.d $f0, $f1 99# CHECK-INST: fcvt.ld.d $fa0, $fa1 100# CHECK-ENCODING: encoding: [0x20,0xe0,0x14,0x01] 101 102fcvt.d.ld $f0, $f1, $f2 103# CHECK-INST: fcvt.d.ld $fa0, $fa1, $fa2 104# CHECK-ENCODING: encoding: [0x20,0x08,0x15,0x01] 105 106ldl.d $a0, $a1, 1 107# CHECK-INST: ldl.d $a0, $a1, 1 108# CHECK-ENCODING: encoding: [0xa4,0x04,0x80,0x2e] 109 110ldl.w $a0, $a1, 1 111# CHECK-INST: ldl.w $a0, $a1, 1 112# CHECK-ENCODING: encoding: [0xa4,0x04,0x00,0x2e] 113 114ldr.w $a0, $a1, 1 115# CHECK-INST: ldr.w $a0, $a1, 1 116# CHECK-ENCODING: encoding: [0xa4,0x04,0x40,0x2e] 117 118ldr.d $a0, $a1, 1 119# CHECK-INST: ldr.d $a0, $a1, 1 120# CHECK-ENCODING: encoding: [0xa4,0x04,0xc0,0x2e] 121 122stl.w $a0, $a1, 1 123# CHECK-INST: stl.w $a0, $a1, 1 124# CHECK-ENCODING: encoding: [0xa4,0x04,0x00,0x2f] 125 126stl.d $a0, $a1, 1 127# CHECK-INST: stl.d $a0, $a1, 1 128# CHECK-ENCODING: encoding: [0xa4,0x04,0x80,0x2f] 129 130str.w $a0, $a1, 1 131# CHECK-INST: str.w $a0, $a1, 1 132# CHECK-ENCODING: encoding: [0xa4,0x04,0x40,0x2f] 133 134str.d $a0, $a1, 1 135# CHECK-INST: str.d $a0, $a1, 1 136# CHECK-ENCODING: encoding: [0xa4,0x04,0xc0,0x2f] 137