Home | History | Annotate | Download | only in Mips
      1 # RUN: llvm-mc %s -arch=mips -mcpu=mips32 2>&1 | FileCheck %s
      2 
      3 # CHECK-NOT: warning: macro instruction expanded into multiple instructions
      4   .set macro
      5   li  $8, -16
      6   li  $8, 16
      7   li  $8, 161616
      8 
      9   la  $8, 16
     10   la  $8, 161616
     11   la  $8, 16($9)
     12   la  $8, 161616($9)
     13   la  $8, symbol
     14 
     15   jal $25
     16   jal $4, $25
     17 
     18   bne $2, 0, 1332
     19   bne $2, 1, 1332
     20   beq $2, 0, 1332
     21   beq $2, 1, 1332
     22 
     23   blt $7, $8, local_label
     24   blt $7, $0, local_label
     25   blt $0, $8, local_label
     26   blt $0, $0, local_label
     27 
     28   bltu $7, $8, local_label
     29   bltu $7, $0, local_label
     30   bltu $0, $8, local_label
     31   bltu $0, $0, local_label
     32 
     33   ble $7, $8, local_label
     34   ble $7, $0, local_label
     35   ble $0, $8, local_label
     36   ble $0, $0, local_label
     37 
     38   bleu $7, $8, local_label
     39   bleu $7, $0, local_label
     40   bleu $0, $8, local_label
     41   bleu $0, $0, local_label
     42 
     43   bge $7, $8, local_label
     44   bge $7, $0, local_label
     45   bge $0, $8, local_label
     46   bge $0, $0, local_label
     47 
     48   bgeu $7, $8, local_label
     49   bgeu $7, $0, local_label
     50   bgeu $0, $8, local_label
     51   bgeu $0, $0, local_label
     52 
     53   bgt $7, $8, local_label
     54   bgt $7, $0, local_label
     55   bgt $0, $8, local_label
     56   bgt $0, $0, local_label
     57 
     58   bgtu $7, $8, local_label
     59   bgtu $7, $0, local_label
     60   bgtu $0, $8, local_label
     61   bgtu $0, $0, local_label
     62 
     63   ulh $5, 0
     64   ulhu $5, 0
     65 
     66   ulw $8, 2
     67   ulw $8, 0x8000
     68   ulw $8, 2($9)
     69   ulw $8, 0x8000($9)
     70 
     71   jal foo
     72   .option pic2
     73   jal foo
     74   .option pic0
     75 
     76   add $4, $5, $6
     77 
     78   .set noreorder
     79   .set nomacro
     80   li  $8, -16
     81 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
     82   li  $8, 16
     83 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
     84   li  $8, 161616
     85 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
     86 
     87   la  $8, 16
     88 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
     89   la  $8, 161616
     90 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
     91   la  $8, 16($9)
     92 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
     93   la  $8, 161616($9)
     94 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
     95   la  $8, symbol
     96 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
     97 
     98   jal $25
     99 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    100   jal $4, $25
    101 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    102 
    103   bne $2, 0, 1332
    104 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    105   bne $2, 1, 1332
    106 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    107   beq $2, 0, 1332
    108 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    109   beq $2, 1, 1332
    110 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    111 
    112   blt $7, $8, local_label
    113 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    114   blt $7, $0, local_label
    115 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    116   blt $0, $8, local_label
    117 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    118   blt $0, $0, local_label
    119 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    120 
    121   bltu $7, $8, local_label
    122 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    123   bltu $7, $0, local_label
    124 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    125   bltu $0, $8, local_label
    126 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    127   bltu $0, $0, local_label
    128 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    129 
    130   ble $7, $8, local_label
    131 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    132   ble $7, $0, local_label
    133 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    134   ble $0, $8, local_label
    135 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    136   ble $0, $0, local_label
    137 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    138 
    139   bleu $7, $8, local_label
    140 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    141   bleu $7, $0, local_label
    142 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    143   bleu $0, $8, local_label
    144 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    145   bleu $0, $0, local_label
    146 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    147 
    148   bge $7, $8, local_label
    149 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    150   bge $7, $0, local_label
    151 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    152   bge $0, $8, local_label
    153 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    154   bge $0, $0, local_label
    155 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    156 
    157   bgeu $7, $8, local_label
    158 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    159   bgeu $7, $0, local_label
    160 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    161   bgeu $0, $8, local_label
    162 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    163   bgeu $0, $0, local_label
    164 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    165 
    166   bgt $7, $8, local_label
    167 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    168   bgt $7, $0, local_label
    169 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    170   bgt $0, $8, local_label
    171 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    172   bgt $0, $0, local_label
    173 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    174 
    175   bgtu $7, $8, local_label
    176 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    177   bgtu $7, $0, local_label
    178 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    179   bgtu $0, $8, local_label
    180 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    181   bgtu $0, $0, local_label
    182 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    183 
    184   ulh $5, 0
    185 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    186   ulhu $5, 0
    187 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    188 
    189   ulw $8, 2
    190 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    191   ulw $8, 0x8000
    192 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    193   ulw $8, 2($9)
    194 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    195   ulw $8, 0x8000($9)
    196 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    197 
    198   jal foo
    199 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    200   .option pic2
    201   jal foo
    202 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    203   .option pic0
    204 
    205   add $4, $5, $6
    206 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
    207