1# RUN: llvm-mc %s -triple=mips64-unknown-linux -show-encoding -mcpu=mips64r2 | \ 2# RUN: FileCheck %s 3# RUN: llvm-mc %s -triple=mips64-unknown-linux -show-encoding -mcpu=mips64r6 | \ 4# RUN: FileCheck %s 5 6bits_32_to_47_0x0000: # CHECK-LABEL: bits_32_to_47_0x0000: 7dli $5, 0x0000000000000001 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 8dli $5, 0x0000000000000002 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 9dli $5, 0x0000000000004000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 10dli $5, 0x0000000000008000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 11dli $5, 0x00000000ffff8000 # CHECK: ori $5, $zero, 65535 # encoding: [0x34,0x05,0xff,0xff] 12 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 13 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 14dli $5, 0x00000000ffffc000 # CHECK: ori $5, $zero, 65535 # encoding: [0x34,0x05,0xff,0xff] 15 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 16 # CHECK: ori $5, $5, 49152 # encoding: [0x34,0xa5,0xc0,0x00] 17dli $5, 0x00000000fffffffe # CHECK: ori $5, $zero, 65535 # encoding: [0x34,0x05,0xff,0xff] 18 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 19 # CHECK: ori $5, $5, 65534 # encoding: [0x34,0xa5,0xff,0xfe] 20dli $5, 0x00000000ffffffff # CHECK: lui $5, 65535 # encoding: [0x3c,0x05,0xff,0xff] 21 # CHECK: dsrl32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3e] 22dli $5, 0x0000000000010000 # CHECK: lui $5, 1 # encoding: [0x3c,0x05,0x00,0x01] 23dli $5, 0x0000000000020000 # CHECK: lui $5, 2 # encoding: [0x3c,0x05,0x00,0x02] 24dli $5, 0x0000000040000000 # CHECK: lui $5, 16384 # encoding: [0x3c,0x05,0x40,0x00] 25dli $5, 0x0000000080000000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 26 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 27dli $5, 0x00000000c0000000 # CHECK: ori $5, $zero, 49152 # encoding: [0x34,0x05,0xc0,0x00] 28 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 29dli $5, 0x00000000fffe0000 # CHECK: ori $5, $zero, 65534 # encoding: [0x34,0x05,0xff,0xfe] 30 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 31dli $5, 0x00000000ffff0000 # CHECK: ori $5, $zero, 65535 # encoding: [0x34,0x05,0xff,0xff] 32 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 33dli $5, 0x0000000000010001 # CHECK: lui $5, 1 # encoding: [0x3c,0x05,0x00,0x01] 34 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 35dli $5, 0x0000000000020001 # CHECK: lui $5, 2 # encoding: [0x3c,0x05,0x00,0x02] 36 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 37dli $5, 0x0000000040000001 # CHECK: lui $5, 16384 # encoding: [0x3c,0x05,0x40,0x00] 38 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 39dli $5, 0x0000000080000001 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 40 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 41 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 42dli $5, 0x0000000000010002 # CHECK: lui $5, 1 # encoding: [0x3c,0x05,0x00,0x01] 43 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 44dli $5, 0x0000000000020002 # CHECK: lui $5, 2 # encoding: [0x3c,0x05,0x00,0x02] 45 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 46dli $5, 0x0000000040000002 # CHECK: lui $5, 16384 # encoding: [0x3c,0x05,0x40,0x00] 47 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 48dli $5, 0x0000000080000002 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 49 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 50 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 51dli $5, 0x0000000000014000 # CHECK: lui $5, 1 # encoding: [0x3c,0x05,0x00,0x01] 52 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 53dli $5, 0x0000000000024000 # CHECK: lui $5, 2 # encoding: [0x3c,0x05,0x00,0x02] 54 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 55dli $5, 0x0000000040004000 # CHECK: lui $5, 16384 # encoding: [0x3c,0x05,0x40,0x00] 56 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 57dli $5, 0x0000000080004000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 58 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 59 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 60dli $5, 0x0000000000018000 # CHECK: lui $5, 1 # encoding: [0x3c,0x05,0x00,0x01] 61 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 62dli $5, 0x0000000000028000 # CHECK: lui $5, 2 # encoding: [0x3c,0x05,0x00,0x02] 63 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 64dli $5, 0x0000000040008000 # CHECK: lui $5, 16384 # encoding: [0x3c,0x05,0x40,0x00] 65 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 66dli $5, 0x0000000080008000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 67 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 68 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 69dli $5, 0x00000000c0008000 # CHECK: ori $5, $zero, 49152 # encoding: [0x34,0x05,0xc0,0x00] 70 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 71 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 72dli $5, 0x00000000fffe8000 # CHECK: ori $5, $zero, 65534 # encoding: [0x34,0x05,0xff,0xfe] 73 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 74 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 75dli $5, 0x00000000ffff8000 # CHECK: ori $5, $zero, 65535 # encoding: [0x34,0x05,0xff,0xff] 76 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 77 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 78bits_32_to_47_0x0001: # CHECK-LABEL: bits_32_to_47_0x0001: 79dli $5, 0x0000000100000000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 80 # CHECK: dsll $5, $5, 17 # encoding: [0x00,0x05,0x2c,0x78] 81dli $5, 0x0000000100000001 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 82 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 83 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 84dli $5, 0x0000000100000002 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 85 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 86 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 87dli $5, 0x0000000100004000 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 88 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 89 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 90dli $5, 0x0000000100008000 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 91 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 92 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 93dli $5, 0x0000000100010000 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 94 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 95 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 96 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 97dli $5, 0x0000000100010001 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 98 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 99 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 100 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 101 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 102dli $5, 0x0000000100010002 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 103 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 104 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 105 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 106 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 107dli $5, 0x0000000100014000 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 108 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 109 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 110 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 111 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 112dli $5, 0x0000000100018000 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 113 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 114 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 115 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 116 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 117dli $5, 0x0000000100020000 # CHECK: ori $5, $zero, 32769 # encoding: [0x34,0x05,0x80,0x01] 118 # CHECK: dsll $5, $5, 17 # encoding: [0x00,0x05,0x2c,0x78] 119dli $5, 0x0000000100020001 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 120 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 121 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 122 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 123 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 124dli $5, 0x0000000100020002 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 125 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 126 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 127 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 128 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 129dli $5, 0x0000000100024000 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 130 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 131 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 132 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 133 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 134dli $5, 0x0000000100028000 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 135 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 136 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 137 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 138 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 139dli $5, 0x0000000140000000 # CHECK: ori $5, $zero, 40960 # encoding: [0x34,0x05,0xa0,0x00] 140 # CHECK: dsll $5, $5, 17 # encoding: [0x00,0x05,0x2c,0x78] 141dli $5, 0x0000000140000001 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 142 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 143 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 144 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 145 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 146dli $5, 0x0000000140000002 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 147 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 148 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 149 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 150 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 151dli $5, 0x0000000140004000 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 152 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 153 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 154 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 155 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 156dli $5, 0x0000000140008000 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 157 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 158 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 159 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 160 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 161dli $5, 0x0000000180000000 # CHECK: ori $5, $zero, 49152 # encoding: [0x34,0x05,0xc0,0x00] 162 # CHECK: dsll $5, $5, 17 # encoding: [0x00,0x05,0x2c,0x78] 163dli $5, 0x0000000180000001 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 164 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 165 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 166 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 167 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 168dli $5, 0x0000000180000002 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 169 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 170 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 171 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 172 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 173dli $5, 0x0000000180004000 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 174 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 175 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 176 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 177 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 178dli $5, 0x0000000180008000 # CHECK: addiu $5, $zero, 1 # encoding: [0x24,0x05,0x00,0x01] 179 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 180 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 181 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 182 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 183bits_32_to_47_0x0002: # CHECK-LABEL: bits_32_to_47_0x0002: 184dli $5, 0x0000000200000000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 185 # CHECK: dsll $5, $5, 18 # encoding: [0x00,0x05,0x2c,0xb8] 186dli $5, 0x0000000200000001 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 187 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 188 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 189dli $5, 0x0000000200000002 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 190 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 191 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 192dli $5, 0x0000000200004000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 193 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 194 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 195dli $5, 0x0000000200008000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 196 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 197 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 198dli $5, 0x0000000200010000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 199 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 200 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 201 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 202dli $5, 0x0000000200010001 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 203 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 204 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 205 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 206 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 207dli $5, 0x0000000200010002 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 208 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 209 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 210 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 211 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 212dli $5, 0x0000000200014000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 213 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 214 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 215 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 216 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 217dli $5, 0x0000000200018000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 218 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 219 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 220 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 221 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 222dli $5, 0x0000000200020000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 223 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 224 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 225 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 226dli $5, 0x0000000200020001 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 227 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 228 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 229 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 230 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 231dli $5, 0x0000000200020002 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 232 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 233 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 234 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 235 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 236dli $5, 0x0000000200024000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 237 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 238 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 239 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 240 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 241dli $5, 0x0000000200028000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 242 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 243 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 244 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 245 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 246dli $5, 0x0000000240000000 # CHECK: ori $5, $zero, 36864 # encoding: [0x34,0x05,0x90,0x00] 247 # CHECK: dsll $5, $5, 18 # encoding: [0x00,0x05,0x2c,0xb8] 248dli $5, 0x0000000240000001 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 249 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 250 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 251 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 252 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 253dli $5, 0x0000000240000002 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 254 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 255 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 256 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 257 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 258dli $5, 0x0000000240004000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 259 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 260 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 261 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 262 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 263dli $5, 0x0000000240008000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 264 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 265 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 266 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 267 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 268dli $5, 0x0000000280000000 # CHECK: ori $5, $zero, 40960 # encoding: [0x34,0x05,0xa0,0x00] 269 # CHECK: dsll $5, $5, 18 # encoding: [0x00,0x05,0x2c,0xb8] 270dli $5, 0x0000000280000001 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 271 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 272 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 273 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 274 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 275dli $5, 0x0000000280000002 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 276 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 277 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 278 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 279 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 280dli $5, 0x0000000280004000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 281 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 282 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 283 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 284 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 285dli $5, 0x0000000280008000 # CHECK: addiu $5, $zero, 2 # encoding: [0x24,0x05,0x00,0x02] 286 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 287 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 288 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 289 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 290bits_32_to_47_0x4000: # CHECK-LABEL: bits_32_to_47_0x4000: 291dli $5, 0x0000400000000000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 292 # CHECK: dsll $5, $5, 31 # encoding: [0x00,0x05,0x2f,0xf8] 293dli $5, 0x0000400000000001 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 294 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 295 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 296dli $5, 0x0000400000000002 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 297 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 298 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 299dli $5, 0x0000400000004000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 300 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 301 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 302dli $5, 0x0000400000008000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 303 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 304 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 305dli $5, 0x0000400000010000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 306 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 307 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 308 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 309dli $5, 0x0000400000010001 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 310 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 311 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 312 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 313 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 314dli $5, 0x0000400000010002 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 315 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 316 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 317 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 318 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 319dli $5, 0x0000400000014000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 320 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 321 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 322 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 323 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 324dli $5, 0x0000400000018000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 325 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 326 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 327 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 328 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 329dli $5, 0x0000400000020000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 330 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 331 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 332 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 333dli $5, 0x0000400000020001 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 334 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 335 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 336 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 337 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 338dli $5, 0x0000400000020002 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 339 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 340 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 341 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 342 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 343dli $5, 0x0000400000024000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 344 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 345 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 346 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 347 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 348dli $5, 0x0000400000028000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 349 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 350 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 351 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 352 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 353dli $5, 0x0000400040000000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 354 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 355 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 356 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 357dli $5, 0x0000400040000001 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 358 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 359 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 360 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 361 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 362dli $5, 0x0000400040000002 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 363 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 364 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 365 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 366 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 367dli $5, 0x0000400040004000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 368 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 369 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 370 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 371 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 372dli $5, 0x0000400040008000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 373 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 374 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 375 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 376 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 377dli $5, 0x0000400080000000 # CHECK: ori $5, $zero, 32769 # encoding: [0x34,0x05,0x80,0x01] 378 # CHECK: dsll $5, $5, 31 # encoding: [0x00,0x05,0x2f,0xf8] 379dli $5, 0x0000400080000001 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 380 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 381 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 382 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 383 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 384dli $5, 0x0000400080000002 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 385 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 386 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 387 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 388 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 389dli $5, 0x0000400080004000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 390 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 391 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 392 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 393 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 394dli $5, 0x0000400080008000 # CHECK: addiu $5, $zero, 16384 # encoding: [0x24,0x05,0x40,0x00] 395 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 396 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 397 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 398 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 399bits_32_to_47_0x8000: # CHECK-LABEL: bits_32_to_47_0x8000: 400dli $5, 0x0000800000000000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 401 # CHECK: dsll $5, $5, 32 # encoding: [0x00,0x05,0x28,0x3c] 402dli $5, 0x0000800000000001 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 403 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 404 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 405dli $5, 0x0000800000000002 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 406 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 407 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 408dli $5, 0x0000800000004000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 409 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 410 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 411dli $5, 0x0000800000008000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 412 # CHECK: dsll32 $5, $5, 0 # encoding: [0x00,0x05,0x28,0x3c] 413 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 414dli $5, 0x0000800000010000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 415 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 416 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 417 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 418dli $5, 0x0000800000010001 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 419 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 420 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 421 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 422 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 423dli $5, 0x0000800000010002 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 424 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 425 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 426 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 427 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 428dli $5, 0x0000800000014000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 429 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 430 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 431 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 432 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 433dli $5, 0x0000800000018000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 434 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 435 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 436 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 437 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 438dli $5, 0x0000800000020000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 439 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 440 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 441 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 442dli $5, 0x0000800000020001 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 443 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 444 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 445 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 446 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 447dli $5, 0x0000800000020002 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 448 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 449 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 450 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 451 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 452dli $5, 0x0000800000024000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 453 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 454 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 455 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 456 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 457dli $5, 0x0000800000028000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 458 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 459 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 460 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 461 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 462dli $5, 0x0000800040000000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 463 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 464 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 465 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 466dli $5, 0x0000800040000001 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 467 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 468 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 469 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 470 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 471dli $5, 0x0000800040000002 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 472 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 473 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 474 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 475 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 476dli $5, 0x0000800040004000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 477 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 478 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 479 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 480 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 481dli $5, 0x0000800040008000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 482 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 483 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 484 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 485 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 486dli $5, 0x0000800080000000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 487 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 488 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 489 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 490dli $5, 0x0000800080000001 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 491 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 492 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 493 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 494 # CHECK: ori $5, $5, 1 # encoding: [0x34,0xa5,0x00,0x01] 495dli $5, 0x0000800080000002 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 496 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 497 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 498 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 499 # CHECK: ori $5, $5, 2 # encoding: [0x34,0xa5,0x00,0x02] 500dli $5, 0x0000800080004000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 501 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 502 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 503 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 504 # CHECK: ori $5, $5, 16384 # encoding: [0x34,0xa5,0x40,0x00] 505dli $5, 0x0000800080008000 # CHECK: ori $5, $zero, 32768 # encoding: [0x34,0x05,0x80,0x00] 506 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 507 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 508 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 509 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 510# Only test a few with bits 48-63 non-zero. It just adds an lui to the cases we've already done. 511dli $5, 0x0001800080008000 # CHECK: lui $5, 1 # encoding: [0x3c,0x05,0x00,0x01] 512 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 513 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 514 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 515 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 516 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 517dli $5, 0x0002800080008000 # CHECK: lui $5, 2 # encoding: [0x3c,0x05,0x00,0x02] 518 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 519 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 520 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 521 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 522 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 523dli $5, 0x4000800080008000 # CHECK: lui $5, 16384 # encoding: [0x3c,0x05,0x40,0x00] 524 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 525 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 526 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 527 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 528 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 529dli $5, 0x8000800080008000 # CHECK: lui $5, 32768 # encoding: [0x3c,0x05,0x80,0x00] 530 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 531 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 532 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 533 # CHECK: dsll $5, $5, 16 # encoding: [0x00,0x05,0x2c,0x38] 534 # CHECK: ori $5, $5, 32768 # encoding: [0x34,0xa5,0x80,0x00] 535