1 # RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux 2 3 # CHECK: abs.d $f12,$f14 4 0x46 0x20 0x39 0x85 5 6 # CHECK: abs.s $f6,$f7 7 0x46 0x00 0x39 0x85 8 9 # CHECK: add t1,a2,a3 10 0x00 0xc7 0x48 0x20 11 12 # CHECK: add.d $f18,$f12,$f14 13 0x46 0x27 0x32 0x40 14 15 # CHECK: add.s $f9,$f6,$f7 16 0x46 0x07 0x32 0x40 17 18 # CHECK: addi t1,a2,17767 19 0x20 0xc9 0x45 0x67 20 21 # CHECK: addiu t1,a2,-15001 22 0x24 0xc9 0xc5 0x67 23 24 # CHECK: addu t1,a2,a3 25 0x00 0xc7 0x48 0x21 26 27 # CHECK: and t1,a2,a3 28 0x00 0xc7 0x48 0x24 29 30 # CHECK: andi t1,a2,0x4567 31 0x30 0xc9 0x45 0x67 32 33 # CHECK: b 00000534 34 0x10 0x00 0x01 0x4c 35 36 # CHECK: bal 00000534 37 0x04 0x11 0x01 0x4c 38 39 # CHECK: bc1f 00000534 40 0x45 0x00 0x01 0x4c 41 42 # CHECK: bc1t 00000534 43 0x45 0x01 0x01 0x4c 44 45 # CHECK: beq t1,a2,00000534 46 0x11 0x26 0x01 0x4c 47 48 # CHECK: bgez a2,00000534 49 0x04 0xc1 0x01 0x4c 50 51 # CHECK: bgezal a2,00000534 52 0x04 0xd1 0x01 0x4c 53 54 # CHECK: bgtz a2,00000534 55 0x1c 0xc0 0x01 0x4c 56 57 # CHECK: blez a2,00000534 58 0x18 0xc0 0x01 0x4c 59 60 # CHECK: bne t1,a2,00000534 61 0x15 0x26 0x01 0x4c 62 63 # CHECK: c.eq.d $f12,$f14 64 0x46 0x27 0x30 0x32 65 66 # CHECK: c.eq.s $f6,$f7 67 0x46 0x07 0x30 0x32 68 69 # CHECK: c.f.d $f12,$f14 70 0x46 0x27 0x30 0x30 71 72 # CHECK: c.f.s $f6,$f7 73 0x46 0x07 0x30 0x30 74 75 # CHECK: c.le.d $f12,$f14 76 0x46 0x27 0x30 0x3e 77 78 # CHECK: c.le.s $f6,$f7 79 0x46 0x07 0x30 0x3e 80 81 # CHECK: c.lt.d $f12,$f14 82 0x46 0x27 0x30 0x3c 83 84 # CHECK: c.lt.s $f6,$f7 85 0x46 0x07 0x30 0x3c 86 87 # CHECK: c.nge.d $f12,$f14 88 0x46 0x27 0x30 0x3d 89 90 # CHECK: c.nge.s $f6,$f7 91 0x46 0x07 0x30 0x3d 92 93 # CHECK: c.ngl.d $f12,$f14 94 0x46 0x27 0x30 0x3b 95 96 # CHECK: c.ngl.s $f6,$f7 97 0x46 0x07 0x30 0x3b 98 99 # CHECK: c.ngle.d $f12,$f14 100 0x46 0x27 0x30 0x39 101 102 # CHECK: c.ngle.s $f6,$f7 103 0x46 0x07 0x30 0x39 104 105 # CHECK: c.ngt.d $f12,$f14 106 0x46 0x27 0x30 0x3f 107 108 # CHECK: c.ngt.s $f6,$f7 109 0x46 0x07 0x30 0x3f 110 111 # CHECK: c.ole.d $f12,$f14 112 0x46 0x27 0x30 0x36 113 114 # CHECK: c.ole.s $f6,$f7 115 0x46 0x07 0x30 0x36 116 117 # CHECK: c.olt.d $f12,$f14 118 0x46 0x27 0x30 0x34 119 120 # CHECK: c.olt.s $f6,$f7 121 0x46 0x07 0x30 0x34 122 123 # CHECK: c.seq.d $f12,$f14 124 0x46 0x27 0x30 0x3a 125 126 # CHECK: c.seq.s $f6,$f7 127 0x46 0x07 0x30 0x3a 128 129 # CHECK: c.sf.d $f12,$f14 130 0x46 0x27 0x30 0x38 131 132 # CHECK: c.sf.s $f6,$f7 133 0x46 0x07 0x30 0x38 134 135 # CHECK: c.ueq.d $f12,$f14 136 0x46 0x27 0x30 0x33 137 138 # CHECK: c.ueq.s $f28,$f18 139 0x46 0x12 0xe0 0x33 140 141 # CHECK: c.ule.d $f12,$f14 142 0x46 0x27 0x30 0x37 143 144 # CHECK: c.ule.s $f6,$f7 145 0x46 0x07 0x30 0x37 146 147 # CHECK: c.ult.d $f12,$f14 148 0x46 0x27 0x30 0x35 149 150 # CHECK: c.ult.s $f6,$f7 151 0x46 0x07 0x30 0x35 152 153 # CHECK: c.un.d $f12,$f14 154 0x46 0x27 0x30 0x31 155 156 # CHECK: c.un.s $f6,$f7 157 0x46 0x07 0x30 0x31 158 159 # CHECK: ceil.w.d $f12,$f14 160 0x46 0x20 0x39 0x8e 161 162 # CHECK: ceil.w.s $f6,$f7 163 0x46 0x00 0x39 0x8e 164 165 # CHECK: cfc1 a2,$7 166 0x44 0x46 0x38 0x00 167 168 # CHECK: clo a2,a3 169 0x70 0xe6 0x30 0x21 170 171 # CHECK: clz a2,a3 172 0x70 0xe6 0x30 0x20 173 174 # CHECK: ctc1 a2,$7 175 0x44 0xc6 0x38 0x00 176 177 # CHECK: cvt.d.s $f6,$f7 178 0x46 0x00 0x38 0xa1 179 180 # CHECK: cvt.d.w $f12,$f14 181 0x46 0x80 0x38 0xa1 182 183 # CHECK: cvt.l.d $f12,$f14 184 0x46 0x20 0x39 0xa5 185 186 # CHECK: cvt.l.s $f6,$f7 187 0x46 0x00 0x39 0xa5 188 189 # CHECK: cvt.s.d $f12,$f14 190 0x46 0x20 0x39 0xa0 191 192 # CHECK: cvt.s.w $f6,$f7 193 0x46 0x80 0x39 0xa0 194 195 # CHECK: cvt.w.d $f12,$f14 196 0x46 0x20 0x39 0xa4 197 198 # CHECK: cvt.w.s $f6,$f7 199 0x46 0x00 0x39 0xa4 200 201 # CHECK: floor.w.d $f12,$f14 202 0x46 0x20 0x39 0x8f 203 204 # CHECK: floor.w.s $f6,$f7 205 0x46 0x00 0x39 0x8f 206 207 # CHECK: j 00000530 208 0x08 0x00 0x01 0x4c 209 210 # CHECK: jal 00000530 211 0x0c 0x00 0x01 0x4c 212 213 # CHECK: jalr a2,a3 214 0x00 0xe0 0xf8 0x09 215 216 # CHECK: jr a3 217 0x00 0xe0 0x00 0x08 218 219 # CHECK: lb a0,9158(a1) 220 0x80 0xa4 0x23 0xc6 221 222 # CHECK: lbu a0,6(a1) 223 0x90 0xa4 0x00 0x06 224 225 # CHECK: ldc1 $f9,9158(a3) 226 0xd4 0xe9 0x23 0xc6 227 228 # CHECK: lh a0,12(a1) 229 0x84 0xa4 0x00 0x0c 230 231 # CHECK: lh a0,12(a1) 232 0x84 0xa4 0x00 0x0c 233 234 # CHECK: li v1,17767 235 0x24 0x03 0x45 0x67 236 237 # CHECK: ll t1,9158(a3) 238 0xc0 0xe9 0x23 0xc6 239 240 # CHECK: lui a2,0x4567 241 0x3c 0x06 0x45 0x67 242 243 # CHECK: lw a0,24(a1) 244 0x8c 0xa4 0x00 0x18 245 246 # CHECK: lwc1 $f9,9158(a3) 247 0xc4 0xe9 0x23 0xc6 248 249 # CHECK: madd a2,a3 250 0x70 0xc7 0x00 0x00 251 252 # CHECK: maddu a2,a3 253 0x70 0xc7 0x00 0x01 254 255 # CHECK: mfc1 a2,$f7 256 0x44 0x06 0x38 0x00 257 258 # CHECK: mfhi a1 259 0x00 0x00 0x28 0x10 260 261 # CHECK: mflo a1 262 0x00 0x00 0x28 0x12 263 264 # CHECK: mov.d $f6,$f7 265 0x46 0x20 0x39 0x86 266 267 # CHECK: mov.s $f6,$f7 268 0x46 0x00 0x39 0x86 269 270 # CHECK: move a2,a1 271 0x00 0xa0 0x30 0x21 272 273 # CHECK: msub a2,a3 274 0x70 0xc7 0x00 0x04 275 276 # CHECK: msubu a2,a3 277 0x70 0xc7 0x00 0x05 278 279 # CHECK: mtc1 a2,$f7 280 0x44 0x86 0x38 0x00 281 282 # CHECK: mthi a3 283 0x00 0xe0 0x00 0x11 284 285 # CHECK: mtlo a3 286 0x00 0xe0 0x00 0x13 287 288 # CHECK: mul.d $f9,$f12,$f14 289 0x46 0x27 0x32 0x42 290 291 # CHECK: mul.s $f9,$f6,$f7 292 0x46 0x07 0x32 0x42 293 294 # CHECK: mul t1,a2,a3 295 0x70 0xc7 0x48 0x02 296 297 # CHECK: mult v1,a1 298 0x00 0x65 0x00 0x18 299 300 # CHECK: multu v1,a1 301 0x00 0x65 0x00 0x19 302 303 # CHECK: neg.d $f12,$f14 304 0x46 0x20 0x39 0x87 305 306 # CHECK: neg.s $f6,$f7 307 0x46 0x00 0x39 0x87 308 309 # CHECK: neg v1,a1 310 0x00 0x05 0x18 0x22 311 312 # CHECK: nop 313 0x00 0x00 0x00 0x00 314 315 # CHECK: nor t1,a2,a3 316 0x00 0xc7 0x48 0x27 317 318 # CHECK: not v1,a1 319 0x00 0xa0 0x18 0x27 320 321 # CHECK: or v1,v1,a1 322 0x00 0x65 0x18 0x25 323 324 # CHECK: ori t1,a2,0x4567 325 0x34 0xc9 0x45 0x67 326 327 # CHECK: rdhwr a2,$29 328 0x7c 0x06 0xe8 0x3b 329 330 # CHECK: round.w.d $f12,$f14 331 0x46 0x20 0x39 0x8c 332 333 # CHECK: round.w.s $f6,$f7 334 0x46 0x00 0x39 0x8c 335 336 # CHECK: sb a0,9158(a1) 337 0xa0 0xa4 0x23 0xc6 338 339 # CHECK: sb a0,6(a1) 340 0xa0 0xa4 0x00 0x06 341 342 # CHECK: sc t1,9158(a3) 343 0xe0 0xe9 0x23 0xc6 344 345 # CHECK: sdc1 $f9,9158(a3) 346 0xf4 0xe9 0x23 0xc6 347 348 # CHECK: sh a0,9158(a1) 349 0xa4 0xa4 0x23 0xc6 350 351 # CHECK: sll a0,v1,0x7 352 0x00 0x03 0x21 0xc0 353 354 # CHECK: sllv v0,v1,a1 355 0x00 0xa3 0x10 0x04 356 357 # CHECK: slt v1,v1,a1 358 0x00 0x65 0x18 0x2a 359 360 # CHECK: slti v1,v1,103 361 0x28 0x63 0x00 0x67 362 363 # CHECK: sltiu v1,v1,103 364 0x2c 0x63 0x00 0x67 365 366 # CHECK: sltu v1,v1,a1 367 0x00 0x65 0x18 0x2b 368 369 # CHECK: sqrt.d $f12,$f14 370 0x46 0x20 0x39 0x84 371 372 # CHECK: sqrt.s $f6,$f7 373 0x46 0x00 0x39 0x84 374 375 # CHECK: sra a0,v1,0x7 376 0x00 0x03 0x21 0xc3 377 378 # CHECK: sra a0,v1,0x7 379 0x00 0x03 0x21 0xc3 380 381 # CHECK: srav v0,v1,a1 382 0x00 0xa3 0x10 0x07 383 384 # CHECK: srl a0,v1,0x7 385 0x00 0x03 0x21 0xc2 386 387 # CHECK: srlv v0,v1,a1 388 0x00 0xa3 0x10 0x06 389 390 # CHECK: sub.d $f9,$f12,$f14 391 0x46 0x27 0x32 0x41 392 393 # CHECK: sub.s $f9,$f6,$f7 394 0x46 0x07 0x32 0x41 395 396 # CHECK: sub t1,a2,a3 397 0x00 0xc7 0x48 0x22 398 399 # CHECK: subu a0,v1,a1 400 0x00 0x65 0x20 0x23 401 402 # CHECK: sw a0,24(a1) 403 0xac 0xa4 0x00 0x18 404 405 # CHECK: swc1 $f9,9158(a3) 406 0xe4 0xe9 0x23 0xc6 407 408 # CHECK: sync 0x7 409 0x00 0x00 0x01 0xcf 410 411 # CHECK: trunc.w.d $f12,$f14 412 0x46 0x20 0x39 0x8d 413 414 # CHECK: trunc.w.s $f6,$f7 415 0x46 0x00 0x39 0x8d 416 417 # CHECK: xor v1,v1,a1 418 0x00 0x65 0x18 0x26 419 420 # CHECK: xori t1,a2,0x4567 421 0x38 0xc9 0x45 0x67 422