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