1# RUN: llvm-mc --disassemble %s -triple=mipsel-unknown-linux -mcpu=mips32r2 | FileCheck %s 2# CHECK: abs.d $f12, $f14 30x05 0x73 0x20 0x46 4 5# CHECK: abs.s $f6, $f7 60x85 0x39 0x00 0x46 7 8# CHECK: add $9, $6, $7 90x20 0x48 0xc7 0x00 10 11# CHECK: add.d $f8, $f12, $f14 120x00 0x62 0x2e 0x46 13 14# CHECK: add.s $f9, $f6, $f7 150x40 0x32 0x07 0x46 16 17# CHECK: addi $9, $6, 17767 180x67 0x45 0xc9 0x20 19 20# CHECK: addiu $9, $6, -15001 210x67 0xc5 0xc9 0x24 22 23# CHECK: addu $9, $6, $7 240x21 0x48 0xc7 0x00 25 26# CHECK: and $9, $6, $7 270x24 0x48 0xc7 0x00 28 29# CHECK: andi $9, $6, 17767 300x67 0x45 0xc9 0x30 31 32# CHECK: b 1332 330x4c 0x01 0x00 0x10 34 35# CHECK: bc1f 1332 360x4c 0x01 0x00 0x45 37 38# CHECK: bc1f $fcc7, 1332 390x4c 0x01 0x1c 0x45 40 41# CHECK: bc1t 1332 420x4c 0x01 0x01 0x45 43 44# CHECK: bc1t $fcc7, 1332 450x4c 0x01 0x1d 0x45 46 47# CHECK: beq $9, $6, 1332 480x4c 0x01 0x26 0x11 49 50# CHECK: bgez $6, 1332 510x4c 0x01 0xc1 0x04 52 53# CHECK: bgezal $6, 1332 540x4c 0x01 0xd1 0x04 55 56# CHECK: bgtz $6, 1332 570x4c 0x01 0xc0 0x1c 58 59# CHECK: blez $6, 1332 600x4c 0x01 0xc0 0x18 61 62# CHECK: bne $9, $6, 1332 630x4c 0x01 0x26 0x15 64 65# CHECK: c.eq.d $f12, $f14 660x32 0x60 0x2e 0x46 67 68# CHECK: c.eq.s $f6, $f7 690x32 0x30 0x07 0x46 70 71# CHECK: c.f.d $f12, $f14 720x30 0x60 0x2e 0x46 73 74# CHECK: c.f.s $f6, $f7 750x30 0x30 0x07 0x46 76 77# CHECK: c.le.d $f12, $f14 780x3e 0x60 0x2e 0x46 79 80# CHECK: c.le.s $f6, $f7 810x3e 0x30 0x07 0x46 82 83# CHECK: c.lt.d $f12, $f14 840x3c 0x60 0x2e 0x46 85 86# CHECK: c.lt.s $f6, $f7 870x3c 0x30 0x07 0x46 88 89# CHECK: c.nge.d $f12, $f14 900x3d 0x60 0x2e 0x46 91 92# CHECK: c.nge.s $f6, $f7 930x3d 0x30 0x07 0x46 94 95# CHECK: c.ngl.d $f12, $f14 960x3b 0x60 0x2e 0x46 97 98# CHECK: c.ngl.s $f6, $f7 990x3b 0x30 0x07 0x46 100 101# CHECK: c.ngle.d $f12, $f14 1020x39 0x60 0x2e 0x46 103 104# CHECK: c.ngle.s $f6, $f7 1050x39 0x30 0x07 0x46 106 107# CHECK: c.ngt.d $f12, $f14 1080x3f 0x60 0x2e 0x46 109 110# CHECK: c.ngt.s $f6, $f7 1110x3f 0x30 0x07 0x46 112 113# CHECK: c.ole.d $f12, $f14 1140x36 0x60 0x2e 0x46 115 116# CHECK: c.ole.s $f6, $f7 1170x36 0x30 0x07 0x46 118 119# CHECK: c.olt.d $f12, $f14 1200x34 0x60 0x2e 0x46 121 122# CHECK: c.olt.s $f6, $f7 1230x34 0x30 0x07 0x46 124 125# CHECK: c.seq.d $f12, $f14 1260x3a 0x60 0x2e 0x46 127 128# CHECK: c.seq.s $f6, $f7 1290x3a 0x30 0x07 0x46 130 131# CHECK: c.sf.d $f12, $f14 1320x38 0x60 0x2e 0x46 133 134# CHECK: c.sf.s $f6, $f7 1350x38 0x30 0x07 0x46 136 137# CHECK: c.ueq.d $f12, $f14 1380x33 0x60 0x2e 0x46 139 140# CHECK: c.ueq.s $f28, $f18 1410x33 0xe0 0x12 0x46 142 143# CHECK: c.ule.d $f12, $f14 1440x37 0x60 0x2e 0x46 145 146# CHECK: c.ule.s $f6, $f7 1470x37 0x30 0x07 0x46 148 149# CHECK: c.ult.d $f12, $f14 1500x35 0x60 0x2e 0x46 151 152# CHECK: c.ult.s $f6, $f7 1530x35 0x30 0x07 0x46 154 155# CHECK: c.un.d $f12, $f14 1560x31 0x60 0x2e 0x46 157 158# CHECK: c.un.s $f6, $f7 1590x31 0x30 0x07 0x46 160 161# CHECK: ceil.w.d $f12, $f14 1620x0e 0x73 0x20 0x46 163 164# CHECK: ceil.w.s $f6, $f7 1650x8e 0x39 0x00 0x46 166 167# CHECK: cfc1 $6, $7 1680x00 0x38 0x46 0x44 169 170# CHECK: clo $6, $7 1710x21 0x30 0xe6 0x70 172 173# CHECK: clz $6, $7 1740x20 0x30 0xe6 0x70 175 176# CHECK: ctc1 $6, $7 1770x00 0x38 0xc6 0x44 178 179# CHECK: cvt.d.s $f6, $f7 1800xa1 0x39 0x00 0x46 181 182# CHECK: cvt.d.w $f12, $f14 1830x21 0x73 0x80 0x46 184 185# CHECK: cvt.l.d $f12, $f14 1860x25 0x73 0x20 0x46 187 188# CHECK: cvt.l.s $f6, $f7 1890xa5 0x39 0x00 0x46 190 191# CHECK: cvt.s.d $f12, $f14 1920x20 0x73 0x20 0x46 193 194# CHECK: cvt.s.w $f6, $f7 1950xa0 0x39 0x80 0x46 196 197# CHECK: cvt.w.d $f12, $f14 1980x24 0x73 0x20 0x46 199 200# CHECK: cvt.w.s $f6, $f7 2010xa4 0x39 0x00 0x46 202 203# CHECK: floor.w.d $f12, $f14 2040x0f 0x73 0x20 0x46 205 206# CHECK: floor.w.s $f6, $f7 2070x8f 0x39 0x00 0x46 208 209# CHECK: ins $19, $9, 6, 7 2100x84 0x61 0x33 0x7d 211 212# CHECK: j 1328 2130x4c 0x01 0x00 0x08 214 215# CHECK: jal 1328 2160x4c 0x01 0x00 0x0c 217 218# CHECK: jalr $7 2190x09 0xf8 0xe0 0x00 220 221# CHECK: jr $7 2220x08 0x00 0xe0 0x00 223 224# CHECK: lb $4, 9158($5) 2250xc6 0x23 0xa4 0x80 226 227# CHECK: lbu $4, 6($5) 2280x06 0x00 0xa4 0x90 229 230# CHECK: ldc1 $f9, 9158($7) 2310xc6 0x23 0xe9 0xd4 232 233# CHECK: lh $4, 12($5) 2340x0c 0x00 0xa4 0x84 235 236# CHECK: lh $4, 12($5) 2370x0c 0x00 0xa4 0x84 238 239# CHECK: ll $9, 9158($7) 2400xc6 0x23 0xe9 0xc0 241 242# CHECK: lui $6, 17767 2430x67 0x45 0x06 0x3c 244 245# CHECK: luxc1 $f0, $6($5) 2460x05 0x00 0xa6 0x4c 247 248# CHECK: lw $4, 24($5) 2490x18 0x00 0xa4 0x8c 250 251# CHECK: lwc1 $f9, 9158($7) 2520xc6 0x23 0xe9 0xc4 253 254# CHECK: lwl $2, 3($4) 2550x03 0x00 0x82 0x88 256 257# CHECK: lwr $3, 16($5) 2580x10 0x00 0xa3 0x98 259 260# CHECK: lwxc1 $f20, $12($14) 2610x00 0x05 0xcc 0x4d 262 263# CHECK: madd $6, $7 2640x00 0x00 0xc7 0x70 265 266# CHECK: maddu $6, $7 2670x01 0x00 0xc7 0x70 268 269# CHECK: mfc1 $6, $f7 2700x00 0x38 0x06 0x44 271 272# CHECK: mfhi $5 2730x10 0x28 0x00 0x00 274 275# CHECK: mflo $5 2760x12 0x28 0x00 0x00 277 278# CHECK: mov.d $f6, $f8 2790x86 0x41 0x20 0x46 280 281# CHECK: mov.s $f6, $f7 2820x86 0x39 0x00 0x46 283 284# CHECK: msub $6, $7 2850x04 0x00 0xc7 0x70 286 287# CHECK: msubu $6, $7 2880x05 0x00 0xc7 0x70 289 290# CHECK: mtc1 $6, $f7 2910x00 0x38 0x86 0x44 292 293# CHECK: mthi $7 2940x11 0x00 0xe0 0x00 295 296# CHECK: mtlo $7 2970x13 0x00 0xe0 0x00 298 299# CHECK: mul.d $f8, $f12, $f14 3000x02 0x62 0x2e 0x46 301 302# CHECK: mul.s $f9, $f6, $f7 3030x42 0x32 0x07 0x46 304 305# CHECK: mul $9, $6, $7 3060x02 0x48 0xc7 0x70 307 308# CHECK: mult $3, $5 3090x18 0x00 0x65 0x00 310 311# CHECK: multu $3, $5 3120x19 0x00 0x65 0x00 313 314# CHECK: neg.d $f12, $f14 3150x07 0x73 0x20 0x46 316 317# CHECK: neg.s $f6, $f7 3180x87 0x39 0x00 0x46 319 320# CHECK: nop 3210x00 0x00 0x00 0x00 322 323# CHECK: nor $9, $6, $7 3240x27 0x48 0xc7 0x00 325 326# CHECK: or $3, $3, $5 3270x25 0x18 0x65 0x00 328 329# CHECK: ori $9, $6, 17767 3300x67 0x45 0xc9 0x34 331 332# CHECK: rotr $9, $6, 7 3330xc2 0x49 0x26 0x00 334 335# CHECK: rotrv $9, $6, $7 3360x46 0x48 0xe6 0x00 337 338# CHECK: round.w.d $f12, $f14 3390x0c 0x73 0x20 0x46 340 341# CHECK: round.w.s $f6, $f7 3420x8c 0x39 0x00 0x46 343 344# CHECK: sb $4, 9158($5) 3450xc6 0x23 0xa4 0xa0 346 347# CHECK: sb $4, 6($5) 3480x06 0x00 0xa4 0xa0 349 350# CHECK: sc $9, 9158($7) 3510xc6 0x23 0xe9 0xe0 352 353# CHECK: sdc1 $f9, 9158($7) 3540xc6 0x23 0xe9 0xf4 355 356# CHECK: seb $6, $7 3570x20 0x34 0x07 0x7c 358 359# CHECK: seh $6, $7 3600x20 0x36 0x07 0x7c 361 362# CHECK: sh $4, 9158($5) 3630xc6 0x23 0xa4 0xa4 364 365# CHECK: sll $4, $3, 7 3660xc0 0x21 0x03 0x00 367 368# CHECK: sllv $2, $3, $5 3690x04 0x10 0xa3 0x00 370 371# CHECK: slt $3, $3, $5 3720x2a 0x18 0x65 0x00 373 374# CHECK: slti $3, $3, 103 3750x67 0x00 0x63 0x28 376 377# CHECK: sltiu $3, $3, 103 3780x67 0x00 0x63 0x2c 379 380# CHECK: sltu $3, $3, $5 3810x2b 0x18 0x65 0x00 382 383# CHECK: sqrt.d $f12, $f14 3840x04 0x73 0x20 0x46 385 386# CHECK: sqrt.s $f6, $f7 3870x84 0x39 0x00 0x46 388 389# CHECK: sra $4, $3, 7 3900xc3 0x21 0x03 0x00 391 392# CHECK: srav $2, $3, $5 3930x07 0x10 0xa3 0x00 394 395# CHECK: srl $4, $3, 7 3960xc2 0x21 0x03 0x00 397 398# CHECK: srlv $2, $3, $5 3990x06 0x10 0xa3 0x00 400 401# CHECK: sub.d $f8, $f12, $f14 4020x01 0x62 0x2e 0x46 403 404# CHECK: sub.s $f9, $f6, $f7 4050x41 0x32 0x07 0x46 406 407# CHECK: sub $9, $6, $7 4080x22 0x48 0xc7 0x00 409 410# CHECK: subu $4, $3, $5 4110x23 0x20 0x65 0x00 412 413# CHECK: suxc1 $f4, $24($5) 4140x0d 0x20 0xb8 0x4c 415 416# CHECK: sw $4, 24($5) 4170x18 0x00 0xa4 0xac 418 419# CHECK: swc1 $f9, 9158($7) 4200xc6 0x23 0xe9 0xe4 421 422# CHECK: swl $4, 16($5) 4230x10 0x00 0xa4 0xa8 424 425# CHECK: swr $6, 16($7) 4260x10 0x00 0xe6 0xb8 427 428# CHECK: swxc1 $f26, $18($22) 4290x08 0xd0 0xd2 0x4e 430 431# CHECK: sync 7 4320xcf 0x01 0x00 0x00 433 434# CHECK: trunc.w.d $f12, $f14 4350x0d 0x73 0x20 0x46 436 437# CHECK: trunc.w.s $f6, $f7 4380x8d 0x39 0x00 0x46 439 440# CHECK: wsbh $6, $7 4410xa0 0x30 0x07 0x7c 442 443# CHECK: xor $3, $3, $5 4440x26 0x18 0x65 0x00 445 446# CHECK: xori $9, $6, 17767 4470x67 0x45 0xc9 0x38 448