Home | History | Annotate | Download | only in Mips
      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 
      6 bits_32_to_47_0x0000:           # CHECK-LABEL: bits_32_to_47_0x0000:
      7 dli $5, 0x0000000000000001      # CHECK: addiu $5, $zero, 1          # encoding: [0x24,0x05,0x00,0x01]
      8 dli $5, 0x0000000000000002      # CHECK: addiu $5, $zero, 2          # encoding: [0x24,0x05,0x00,0x02]
      9 dli $5, 0x0000000000004000      # CHECK: addiu $5, $zero, 16384      # encoding: [0x24,0x05,0x40,0x00]
     10 dli $5, 0x0000000000008000      # CHECK: ori $5, $zero, 32768        # encoding: [0x34,0x05,0x80,0x00]
     11 dli $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]
     14 dli $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]
     17 dli $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]
     20 dli $5, 0x00000000ffffffff      # CHECK: lui $5, 65535               # encoding: [0x3c,0x05,0xff,0xff]
     21                                 # CHECK: dsrl32 $5, $5, 0            # encoding: [0x00,0x05,0x28,0x3e]
     22 dli $5, 0x0000000000010000      # CHECK: lui $5, 1                   # encoding: [0x3c,0x05,0x00,0x01]
     23 dli $5, 0x0000000000020000      # CHECK: lui $5, 2                   # encoding: [0x3c,0x05,0x00,0x02]
     24 dli $5, 0x0000000040000000      # CHECK: lui $5, 16384               # encoding: [0x3c,0x05,0x40,0x00]
     25 dli $5, 0x0000000080000000      # CHECK: ori $5, $zero, 32768        # encoding: [0x34,0x05,0x80,0x00]
     26                                 # CHECK: dsll $5, $5, 16             # encoding: [0x00,0x05,0x2c,0x38]
     27 dli $5, 0x00000000c0000000      # CHECK: ori $5, $zero, 49152        # encoding: [0x34,0x05,0xc0,0x00]
     28                                 # CHECK: dsll $5, $5, 16             # encoding: [0x00,0x05,0x2c,0x38]
     29 dli $5, 0x00000000fffe0000      # CHECK: ori $5, $zero, 65534        # encoding: [0x34,0x05,0xff,0xfe]
     30                                 # CHECK: dsll $5, $5, 16             # encoding: [0x00,0x05,0x2c,0x38]
     31 dli $5, 0x00000000ffff0000      # CHECK: ori $5, $zero, 65535        # encoding: [0x34,0x05,0xff,0xff]
     32                                 # CHECK: dsll $5, $5, 16             # encoding: [0x00,0x05,0x2c,0x38]
     33 dli $5, 0x0000000000010001      # CHECK: lui $5, 1                   # encoding: [0x3c,0x05,0x00,0x01]
     34                                 # CHECK: ori $5, $5, 1               # encoding: [0x34,0xa5,0x00,0x01]
     35 dli $5, 0x0000000000020001      # CHECK: lui $5, 2                   # encoding: [0x3c,0x05,0x00,0x02]
     36                                 # CHECK: ori $5, $5, 1               # encoding: [0x34,0xa5,0x00,0x01]
     37 dli $5, 0x0000000040000001      # CHECK: lui $5, 16384               # encoding: [0x3c,0x05,0x40,0x00]
     38                                 # CHECK: ori $5, $5, 1               # encoding: [0x34,0xa5,0x00,0x01]
     39 dli $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]
     42 dli $5, 0x0000000000010002      # CHECK: lui $5, 1                   # encoding: [0x3c,0x05,0x00,0x01]
     43                                 # CHECK: ori $5, $5, 2               # encoding: [0x34,0xa5,0x00,0x02]
     44 dli $5, 0x0000000000020002      # CHECK: lui $5, 2                   # encoding: [0x3c,0x05,0x00,0x02]
     45                                 # CHECK: ori $5, $5, 2               # encoding: [0x34,0xa5,0x00,0x02]
     46 dli $5, 0x0000000040000002      # CHECK: lui $5, 16384               # encoding: [0x3c,0x05,0x40,0x00]
     47                                 # CHECK: ori $5, $5, 2               # encoding: [0x34,0xa5,0x00,0x02]
     48 dli $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]
     51 dli $5, 0x0000000000014000      # CHECK: lui $5, 1                   # encoding: [0x3c,0x05,0x00,0x01]
     52                                 # CHECK: ori $5, $5, 16384           # encoding: [0x34,0xa5,0x40,0x00]
     53 dli $5, 0x0000000000024000      # CHECK: lui $5, 2                   # encoding: [0x3c,0x05,0x00,0x02]
     54                                 # CHECK: ori $5, $5, 16384           # encoding: [0x34,0xa5,0x40,0x00]
     55 dli $5, 0x0000000040004000      # CHECK: lui $5, 16384               # encoding: [0x3c,0x05,0x40,0x00]
     56                                 # CHECK: ori $5, $5, 16384           # encoding: [0x34,0xa5,0x40,0x00]
     57 dli $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]
     60 dli $5, 0x0000000000018000      # CHECK: lui $5, 1                   # encoding: [0x3c,0x05,0x00,0x01]
     61                                 # CHECK: ori $5, $5, 32768           # encoding: [0x34,0xa5,0x80,0x00]
     62 dli $5, 0x0000000000028000      # CHECK: lui $5, 2                   # encoding: [0x3c,0x05,0x00,0x02]
     63                                 # CHECK: ori $5, $5, 32768           # encoding: [0x34,0xa5,0x80,0x00]
     64 dli $5, 0x0000000040008000      # CHECK: lui $5, 16384               # encoding: [0x3c,0x05,0x40,0x00]
     65                                 # CHECK: ori $5, $5, 32768           # encoding: [0x34,0xa5,0x80,0x00]
     66 dli $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]
     69 dli $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]
     72 dli $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]
     75 dli $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]
     78 bits_32_to_47_0x0001:           # CHECK-LABEL: bits_32_to_47_0x0001:
     79 dli $5, 0x0000000100000000      # CHECK: ori $5, $zero, 32768        # encoding: [0x34,0x05,0x80,0x00]
     80                                 # CHECK: dsll $5, $5, 17             # encoding: [0x00,0x05,0x2c,0x78]
     81 dli $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]
     84 dli $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]
     87 dli $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]
     90 dli $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]
     93 dli $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]
     97 dli $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]
    102 dli $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]
    107 dli $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]
    112 dli $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]
    117 dli $5, 0x0000000100020000      # CHECK: ori $5, $zero, 32769        # encoding: [0x34,0x05,0x80,0x01]
    118                                 # CHECK: dsll $5, $5, 17             # encoding: [0x00,0x05,0x2c,0x78]
    119 dli $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]
    124 dli $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]
    129 dli $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]
    134 dli $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]
    139 dli $5, 0x0000000140000000      # CHECK: ori $5, $zero, 40960        # encoding: [0x34,0x05,0xa0,0x00]
    140                                 # CHECK: dsll $5, $5, 17             # encoding: [0x00,0x05,0x2c,0x78]
    141 dli $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]
    146 dli $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]
    151 dli $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]
    156 dli $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]
    161 dli $5, 0x0000000180000000      # CHECK: ori $5, $zero, 49152        # encoding: [0x34,0x05,0xc0,0x00]
    162                                 # CHECK: dsll $5, $5, 17             # encoding: [0x00,0x05,0x2c,0x78]
    163 dli $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]
    168 dli $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]
    173 dli $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]
    178 dli $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]
    183 bits_32_to_47_0x0002:           # CHECK-LABEL: bits_32_to_47_0x0002:
    184 dli $5, 0x0000000200000000      # CHECK: ori $5, $zero, 32768        # encoding: [0x34,0x05,0x80,0x00]
    185                                 # CHECK: dsll $5, $5, 18             # encoding: [0x00,0x05,0x2c,0xb8]
    186 dli $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]
    189 dli $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]
    192 dli $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]
    195 dli $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]
    198 dli $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]
    202 dli $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]
    207 dli $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]
    212 dli $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]
    217 dli $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]
    222 dli $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]
    226 dli $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]
    231 dli $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]
    236 dli $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]
    241 dli $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]
    246 dli $5, 0x0000000240000000      # CHECK: ori $5, $zero, 36864        # encoding: [0x34,0x05,0x90,0x00]
    247                                 # CHECK: dsll $5, $5, 18             # encoding: [0x00,0x05,0x2c,0xb8]
    248 dli $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]
    253 dli $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]
    258 dli $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]
    263 dli $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]
    268 dli $5, 0x0000000280000000      # CHECK: ori $5, $zero, 40960        # encoding: [0x34,0x05,0xa0,0x00]
    269                                 # CHECK: dsll $5, $5, 18             # encoding: [0x00,0x05,0x2c,0xb8]
    270 dli $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]
    275 dli $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]
    280 dli $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]
    285 dli $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]
    290 bits_32_to_47_0x4000:           # CHECK-LABEL: bits_32_to_47_0x4000:
    291 dli $5, 0x0000400000000000      # CHECK: ori $5, $zero, 32768        # encoding: [0x34,0x05,0x80,0x00]
    292                                 # CHECK: dsll $5, $5, 31             # encoding: [0x00,0x05,0x2f,0xf8]
    293 dli $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]
    296 dli $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]
    299 dli $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]
    302 dli $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]
    305 dli $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]
    309 dli $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]
    314 dli $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]
    319 dli $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]
    324 dli $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]
    329 dli $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]
    333 dli $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]
    338 dli $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]
    343 dli $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]
    348 dli $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]
    353 dli $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]
    357 dli $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]
    362 dli $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]
    367 dli $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]
    372 dli $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]
    377 dli $5, 0x0000400080000000      # CHECK: ori $5, $zero, 32769        # encoding: [0x34,0x05,0x80,0x01]
    378                                 # CHECK: dsll $5, $5, 31             # encoding: [0x00,0x05,0x2f,0xf8]
    379 dli $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]
    384 dli $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]
    389 dli $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]
    394 dli $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]
    399 bits_32_to_47_0x8000:           # CHECK-LABEL: bits_32_to_47_0x8000:
    400 dli $5, 0x0000800000000000      # CHECK: ori $5, $zero, 32768        # encoding: [0x34,0x05,0x80,0x00]
    401                                 # CHECK: dsll $5, $5, 32             # encoding: [0x00,0x05,0x28,0x3c]
    402 dli $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]
    405 dli $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]
    408 dli $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]
    411 dli $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]
    414 dli $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]
    418 dli $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]
    423 dli $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]
    428 dli $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]
    433 dli $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]
    438 dli $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]
    442 dli $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]
    447 dli $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]
    452 dli $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]
    457 dli $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]
    462 dli $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]
    466 dli $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]
    471 dli $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]
    476 dli $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]
    481 dli $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]
    486 dli $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]
    490 dli $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]
    495 dli $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]
    500 dli $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]
    505 dli $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.
    511 dli $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]
    517 dli $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]
    523 dli $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]
    529 dli $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