1# RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mcpu=mips32r2 | FileCheck %s 2# CHECK: .section __TEXT,__text,regular,pure_instructions 3# CHECK: abs.d $f12, $f14 40x46 0x20 0x73 0x05 5 6# CHECK: abs.s $f6, $f7 70x46 0x00 0x39 0x85 8 9# CHECK: add $9, $6, $7 100x00 0xc7 0x48 0x20 11 12# CHECK: add.d $f8, $f12, $f14 130x46 0x2e 0x62 0x00 14 15# CHECK: add.s $f9, $f6, $f7 160x46 0x07 0x32 0x40 17 18# CHECK: addi $9, $6, 17767 190x20 0xc9 0x45 0x67 20 21# CHECK: addiu $9, $6, -15001 220x24 0xc9 0xc5 0x67 23 24# CHECK: addu $9, $6, $7 250x00 0xc7 0x48 0x21 26 27# CHECK: and $9, $6, $7 280x00 0xc7 0x48 0x24 29 30# CHECK: andi $9, $6, 17767 310x30 0xc9 0x45 0x67 32 33# CHECK: b 1332 340x10 0x00 0x01 0x4c 35 36# CHECK: bc1f 1332 370x45 0x00 0x01 0x4c 38 39# CHECK: bc1t 1332 400x45 0x01 0x01 0x4c 41 42# CHECK: beq $9, $6, 1332 430x11 0x26 0x01 0x4c 44 45# CHECK: bgez $6, 1332 460x04 0xc1 0x01 0x4c 47 48# CHECK: bgezal $6, 1332 490x04 0xd1 0x01 0x4c 50 51# CHECK: bgtz $6, 1332 520x1c 0xc0 0x01 0x4c 53 54# CHECK: blez $6, 1332 550x18 0xc0 0x01 0x4c 56 57# CHECK: bne $9, $6, 1332 580x15 0x26 0x01 0x4c 59 60# CHECK: c.eq.d $f12, $f14 610x46 0x2e 0x60 0x32 62 63# CHECK: c.eq.s $f6, $f7 640x46 0x07 0x30 0x32 65 66# CHECK: c.f.d $f12, $f14 670x46 0x2e 0x60 0x30 68 69# CHECK: c.f.s $f6, $f7 700x46 0x07 0x30 0x30 71 72# CHECK: c.le.d $f12, $f14 730x46 0x2e 0x60 0x3e 74 75# CHECK: c.le.s $f6, $f7 760x46 0x07 0x30 0x3e 77 78# CHECK: c.lt.d $f12, $f14 790x46 0x2e 0x60 0x3c 80 81# CHECK: c.lt.s $f6, $f7 820x46 0x07 0x30 0x3c 83 84# CHECK: c.nge.d $f12, $f14 850x46 0x2e 0x60 0x3d 86 87# CHECK: c.nge.s $f6, $f7 880x46 0x07 0x30 0x3d 89 90# CHECK: c.ngl.d $f12, $f14 910x46 0x2e 0x60 0x3b 92 93# CHECK: c.ngl.s $f6, $f7 940x46 0x07 0x30 0x3b 95 96# CHECK: c.ngle.d $f12, $f14 970x46 0x2e 0x60 0x39 98 99# CHECK: c.ngle.s $f6, $f7 1000x46 0x07 0x30 0x39 101 102# CHECK: c.ngt.d $f12, $f14 1030x46 0x2e 0x60 0x3f 104 105# CHECK: c.ngt.s $f6, $f7 1060x46 0x07 0x30 0x3f 107 108# CHECK: c.ole.d $f12, $f14 1090x46 0x2e 0x60 0x36 110 111# CHECK: c.ole.s $f6, $f7 1120x46 0x07 0x30 0x36 113 114# CHECK: c.olt.d $f12, $f14 1150x46 0x2e 0x60 0x34 116 117# CHECK: c.olt.s $f6, $f7 1180x46 0x07 0x30 0x34 119 120# CHECK: c.seq.d $f12, $f14 1210x46 0x2e 0x60 0x3a 122 123# CHECK: c.seq.s $f6, $f7 1240x46 0x07 0x30 0x3a 125 126# CHECK: c.sf.d $f12, $f14 1270x46 0x2e 0x60 0x38 128 129# CHECK: c.sf.s $f6, $f7 1300x46 0x07 0x30 0x38 131 132# CHECK: c.ueq.d $f12, $f14 1330x46 0x2e 0x60 0x33 134 135# CHECK: c.ueq.s $f28, $f18 1360x46 0x12 0xe0 0x33 137 138# CHECK: c.ule.d $f12, $f14 1390x46 0x2e 0x60 0x37 140 141# CHECK: c.ule.s $f6, $f7 1420x46 0x07 0x30 0x37 143 144# CHECK: c.ult.d $f12, $f14 1450x46 0x2e 0x60 0x35 146 147# CHECK: c.ult.s $f6, $f7 1480x46 0x07 0x30 0x35 149 150# CHECK: c.un.d $f12, $f14 1510x46 0x2e 0x60 0x31 152 153# CHECK: c.un.s $f6, $f7 1540x46 0x07 0x30 0x31 155 156# CHECK: ceil.w.d $f12, $f14 1570x46 0x20 0x73 0x0e 158 159# CHECK: ceil.w.s $f6, $f7 1600x46 0x00 0x39 0x8e 161 162# CHECK: cfc1 $6, $7 1630x44 0x46 0x38 0x00 164 165# CHECK: clo $6, $7 1660x70 0xe6 0x30 0x21 167 168# CHECK: clz $6, $7 1690x70 0xe6 0x30 0x20 170 171# CHECK: ctc1 $6, $7 1720x44 0xc6 0x38 0x00 173 174# CHECK: cvt.d.s $f6, $f7 1750x46 0x00 0x39 0xa1 176 177# CHECK: cvt.d.w $f12, $f14 1780x46 0x80 0x73 0x21 179 180# CHECK: cvt.l.d $f12, $f14 1810x46 0x20 0x73 0x25 182 183# CHECK: cvt.l.s $f6, $f7 1840x46 0x00 0x39 0xa5 185 186# CHECK: cvt.s.d $f12, $f14 1870x46 0x20 0x73 0x20 188 189# CHECK: cvt.s.w $f6, $f7 1900x46 0x80 0x39 0xa0 191 192# CHECK: cvt.w.d $f12, $f14 1930x46 0x20 0x73 0x24 194 195# CHECK: cvt.w.s $f6, $f7 1960x46 0x00 0x39 0xa4 197 198# CHECK: floor.w.d $f12, $f14 1990x46 0x20 0x73 0x0f 200 201# CHECK: floor.w.s $f6, $f7 2020x46 0x00 0x39 0x8f 203 204# CHECK: ins $19, $9, 6, 7 2050x7d 0x33 0x61 0x84 206 207# CHECK: j 1328 2080x08 0x00 0x01 0x4c 209 210# CHECK: jal 1328 2110x0c 0x00 0x01 0x4c 212 213# CHECK: jalr $7 2140x00 0xe0 0xf8 0x09 215 216# CHECK: jr $7 2170x00 0xe0 0x00 0x08 218 219# CHECK: lb $4, 9158($5) 2200x80 0xa4 0x23 0xc6 221 222# CHECK: lbu $4, 6($5) 2230x90 0xa4 0x00 0x06 224 225# CHECK: ldc1 $f9, 9158($7) 2260xd4 0xe9 0x23 0xc6 227 228# CHECK: lh $4, 12($5) 2290x84 0xa4 0x00 0x0c 230 231# CHECK: lh $4, 12($5) 2320x84 0xa4 0x00 0x0c 233 234# CHECK: ll $9, 9158($7) 2350xc0 0xe9 0x23 0xc6 236 237# CHECK: lui $6, 17767 2380x3c 0x06 0x45 0x67 239 240# CHECK: lw $4, 24($5) 2410x8c 0xa4 0x00 0x18 242 243# CHECK: lwc1 $f9, 9158($7) 2440xc4 0xe9 0x23 0xc6 245 246# CHECK: lwl $2, 3($4) 2470x88 0x82 0x00 0x03 248 249# CHECK: lwr $3, 16($5) 2500x98 0xa3 0x00 0x10 251 252# CHECK: madd $6, $7 2530x70 0xc7 0x00 0x00 254 255# CHECK: maddu $6, $7 2560x70 0xc7 0x00 0x01 257 258# CHECK: mfc1 $6, $f7 2590x44 0x06 0x38 0x00 260 261# CHECK: mfhi $5 2620x00 0x00 0x28 0x10 263 264# CHECK: mflo $5 2650x00 0x00 0x28 0x12 266 267# CHECK: mov.d $f6, $f8 2680x46 0x20 0x41 0x86 269 270# CHECK: mov.s $f6, $f7 2710x46 0x00 0x39 0x86 272 273# CHECK: msub $6, $7 2740x70 0xc7 0x00 0x04 275 276# CHECK: msubu $6, $7 2770x70 0xc7 0x00 0x05 278 279# CHECK: mtc1 $6, $f7 2800x44 0x86 0x38 0x00 281 282# CHECK: mthi $7 2830x00 0xe0 0x00 0x11 284 285# CHECK: mtlo $7 2860x00 0xe0 0x00 0x13 287 288# CHECK: mul.d $f8, $f12, $f14 2890x46 0x2e 0x62 0x02 290 291# CHECK: mul.s $f9, $f6, $f7 2920x46 0x07 0x32 0x42 293 294# CHECK: mul $9, $6, $7 2950x70 0xc7 0x48 0x02 296 297# CHECK: mult $3, $5 2980x00 0x65 0x00 0x18 299 300# CHECK: multu $3, $5 3010x00 0x65 0x00 0x19 302 303# CHECK: neg.d $f12, $f14 3040x46 0x20 0x73 0x07 305 306# CHECK: neg.s $f6, $f7 3070x46 0x00 0x39 0x87 308 309# CHECK: nop 3100x00 0x00 0x00 0x00 311 312# CHECK: nor $9, $6, $7 3130x00 0xc7 0x48 0x27 314 315# CHECK: or $3, $3, $5 3160x00 0x65 0x18 0x25 317 318# CHECK: ori $9, $6, 17767 3190x34 0xc9 0x45 0x67 320 321# CHECK: rotr $9, $6, 7 3220x00 0x26 0x49 0xc2 323 324# CHECK: rotrv $9, $6, $7 3250x00 0xe6 0x48 0x46 326 327# CHECK: round.w.d $f12, $f14 3280x46 0x20 0x73 0x0c 329 330# CHECK: round.w.s $f6, $f7 3310x46 0x00 0x39 0x8c 332 333# CHECK: sb $4, 9158($5) 3340xa0 0xa4 0x23 0xc6 335 336# CHECK: sb $4, 6($5) 3370xa0 0xa4 0x00 0x06 338 339# CHECK: sc $9, 9158($7) 3400xe0 0xe9 0x23 0xc6 341 342# CHECK: sdc1 $f9, 9158($7) 3430xf4 0xe9 0x23 0xc6 344 345# CHECK: seb $6, $7 3460x7c 0x07 0x34 0x20 347 348# CHECK: seh $6, $7 3490x7c 0x07 0x36 0x20 350 351# CHECK: sh $4, 9158($5) 3520xa4 0xa4 0x23 0xc6 353 354# CHECK: sll $4, $3, 7 3550x00 0x03 0x21 0xc0 356 357# CHECK: sllv $2, $3, $5 3580x00 0xa3 0x10 0x04 359 360# CHECK: slt $3, $3, $5 3610x00 0x65 0x18 0x2a 362 363# CHECK: slti $3, $3, 103 3640x28 0x63 0x00 0x67 365 366# CHECK: sltiu $3, $3, 103 3670x2c 0x63 0x00 0x67 368 369# CHECK: sltu $3, $3, $5 3700x00 0x65 0x18 0x2b 371 372# CHECK: sqrt.d $f12, $f14 3730x46 0x20 0x73 0x04 374 375# CHECK: sqrt.s $f6, $f7 3760x46 0x00 0x39 0x84 377 378# CHECK: sra $4, $3, 7 3790x00 0x03 0x21 0xc3 380 381# CHECK: srav $2, $3, $5 3820x00 0xa3 0x10 0x07 383 384# CHECK: srl $4, $3, 7 3850x00 0x03 0x21 0xc2 386 387# CHECK: srlv $2, $3, $5 3880x00 0xa3 0x10 0x06 389 390# CHECK: sub.d $f8, $f12, $f14 3910x46 0x2e 0x62 0x01 392 393# CHECK: sub.s $f9, $f6, $f7 3940x46 0x07 0x32 0x41 395 396# CHECK: sub $9, $6, $7 3970x00 0xc7 0x48 0x22 398 399# CHECK: subu $4, $3, $5 4000x00 0x65 0x20 0x23 401 402# CHECK: sw $4, 24($5) 4030xac 0xa4 0x00 0x18 404 405# CHECK: swc1 $f9, 9158($7) 4060xe4 0xe9 0x23 0xc6 407 408# CHECK: swl $4, 16($5) 4090xa8 0xa4 0x00 0x10 410 411# CHECK: swr $6, 16($7) 4120xb8 0xe6 0x00 0x10 413 414# CHECK: sync 7 4150x00 0x00 0x01 0xcf 416 417# CHECK: trunc.w.d $f12, $f14 4180x46 0x20 0x73 0x0d 419 420# CHECK: trunc.w.s $f6, $f7 4210x46 0x00 0x39 0x8d 422 423# CHECK: wsbh $6, $7 4240x7c 0x07 0x30 0xa0 425 426# CHECK: xor $3, $3, $5 4270x00 0x65 0x18 0x26 428 429# CHECK: xori $9, $6, 17767 4300x38 0xc9 0x45 0x67 431