diff --git a/llvm/test/MC/Disassembler/Mips/mips2.txt b/llvm/test/MC/Disassembler/Mips/mips2.txt deleted file mode 100644 index a604055e62ef..000000000000 --- a/llvm/test/MC/Disassembler/Mips/mips2.txt +++ /dev/null @@ -1,13 +0,0 @@ -# RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mcpu=mips2 | FileCheck %s - -# CHECK: sdc3 $5, 9154($6) -0xfc 0xc5 0x23 0xc2 - -# CHECK: swc3 $6, 9158($7) -0xec 0xe6 0x23 0xc6 - -# CHECK: ldc3 $7, 9162($8) -0xdd 0x07 0x23 0xca - -# CHECK: lwc3 $8, 9166($9) -0xcd 0x28 0x23 0xce diff --git a/llvm/test/MC/Disassembler/Mips/mips2/valid-mips2.txt b/llvm/test/MC/Disassembler/Mips/mips2/valid-mips2.txt index 73c747f18336..268bb2900903 100644 --- a/llvm/test/MC/Disassembler/Mips/mips2/valid-mips2.txt +++ b/llvm/test/MC/Disassembler/Mips/mips2/valid-mips2.txt @@ -144,14 +144,18 @@ 0xc2 0x42 0xe3 0x67 # CHECK: ll $2, -7321($18) 0xc7 0x50 0x27 0xf1 # CHECK: lwc1 $f16, 10225($26) 0xc8 0xd2 0xfc 0xb7 # CHECK: lwc2 $18, -841($6) +0xcd 0x28 0x23 0xce # CHECK: lwc3 $8, 9166($9) 0xcf 0x4a 0x81 0xf7 # CHECK: lwc3 $10, -32265($26) 0xd6 0x0a 0x40 0x07 # CHECK: ldc1 $f10, 16391($16) 0xd8 0x28 0xad 0x43 # CHECK: ldc2 $8, -21181($1) +0xdd 0x07 0x23 0xca # CHECK: ldc3 $7, 9162($8) 0xde 0x3d 0x90 0x1b # CHECK: ldc3 $29, -28645($17) 0xe2 0x6f 0x49 0xd8 # CHECK: sc $15, 18904($19) 0xe7 0x06 0xde 0xef # CHECK: swc1 $f6, -8465($24) 0xea 0x19 0x61 0x30 # CHECK: swc2 $25, 24880($16) +0xec 0xe6 0x23 0xc6 # CHECK: swc3 $6, 9158($7) 0xef 0x4a 0x81 0xf7 # CHECK: swc3 $10, -32265($26) 0xf5 0xbe 0x77 0x6e # CHECK: sdc1 $f30, 30574($13) 0xfa 0x54 0x5a 0x75 # CHECK: sdc2 $20, 23157($18) +0xfc 0xc5 0x23 0xc2 # CHECK: sdc3 $5, 9154($6) 0xfd 0x4c 0x16 0xcb # CHECK: sdc3 $12, 5835($10) diff --git a/llvm/test/MC/Disassembler/Mips/mips32.txt b/llvm/test/MC/Disassembler/Mips/mips32.txt deleted file mode 100644 index b9360ea9c8bb..000000000000 --- a/llvm/test/MC/Disassembler/Mips/mips32.txt +++ /dev/null @@ -1,457 +0,0 @@ -# RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux | FileCheck %s - -# CHECK: abs.d $f12, $f14 -0x46 0x20 0x73 0x05 - -# CHECK: abs.s $f6, $f7 -0x46 0x00 0x39 0x85 - -# CHECK: add $9, $6, $7 -0x00 0xc7 0x48 0x20 - -# CHECK: add.d $f8, $f12, $f14 -0x46 0x2e 0x62 0x00 - -# CHECK: add.s $f9, $f6, $f7 -0x46 0x07 0x32 0x40 - -# CHECK: addi $9, $6, 17767 -0x20 0xc9 0x45 0x67 - -# CHECK: addiu $9, $6, -15001 -0x24 0xc9 0xc5 0x67 - -# CHECK: addu $9, $6, $7 -0x00 0xc7 0x48 0x21 - -# CHECK: and $9, $6, $7 -0x00 0xc7 0x48 0x24 - -# CHECK: andi $9, $6, 17767 -0x30 0xc9 0x45 0x67 - -# CHECK: b 1332 -0x10 0x00 0x01 0x4c - -# CHECK: bc1f 1332 -0x45 0x00 0x01 0x4c - -# CHECK: bc1f $fcc7, 1332 -0x45 0x1c 0x01 0x4c - -# CHECK: bc1t 1332 -0x45 0x01 0x01 0x4c - -# CHECK: bc1t $fcc7, 1332 -0x45 0x1d 0x01 0x4c - -# CHECK: beq $9, $6, 1332 -0x11 0x26 0x01 0x4c - -# CHECK: bgez $6, 1332 -0x04 0xc1 0x01 0x4c - -# CHECK: bgezal $6, 1332 -0x04 0xd1 0x01 0x4c - -# CHECK: bgtz $6, 1332 -0x1c 0xc0 0x01 0x4c - -# CHECK: blez $6, 1332 -0x18 0xc0 0x01 0x4c - -# CHECK: bne $9, $6, 1332 -0x15 0x26 0x01 0x4c - -# CHECK: c.eq.d $f12, $f14 -0x46 0x2e 0x60 0x32 - -# CHECK: c.eq.s $f6, $f7 -0x46 0x07 0x30 0x32 - -# CHECK: c.f.d $f12, $f14 -0x46 0x2e 0x60 0x30 - -# CHECK: c.f.s $f6, $f7 -0x46 0x07 0x30 0x30 - -# CHECK: c.le.d $f12, $f14 -0x46 0x2e 0x60 0x3e - -# CHECK: c.le.s $f6, $f7 -0x46 0x07 0x30 0x3e - -# CHECK: c.lt.d $f12, $f14 -0x46 0x2e 0x60 0x3c - -# CHECK: c.lt.s $f6, $f7 -0x46 0x07 0x30 0x3c - -# CHECK: c.nge.d $f12, $f14 -0x46 0x2e 0x60 0x3d - -# CHECK: c.nge.s $f6, $f7 -0x46 0x07 0x30 0x3d - -# CHECK: c.ngl.d $f12, $f14 -0x46 0x2e 0x60 0x3b - -# CHECK: c.ngl.s $f6, $f7 -0x46 0x07 0x30 0x3b - -# CHECK: c.ngle.d $f12, $f14 -0x46 0x2e 0x60 0x39 - -# CHECK: c.ngle.s $f6, $f7 -0x46 0x07 0x30 0x39 - -# CHECK: c.ngt.d $f12, $f14 -0x46 0x2e 0x60 0x3f - -# CHECK: c.ngt.s $f6, $f7 -0x46 0x07 0x30 0x3f - -# CHECK: c.ole.d $f12, $f14 -0x46 0x2e 0x60 0x36 - -# CHECK: c.ole.s $f6, $f7 -0x46 0x07 0x30 0x36 - -# CHECK: c.olt.d $f12, $f14 -0x46 0x2e 0x60 0x34 - -# CHECK: c.olt.s $f6, $f7 -0x46 0x07 0x30 0x34 - -# CHECK: c.seq.d $f12, $f14 -0x46 0x2e 0x60 0x3a - -# CHECK: c.seq.s $f6, $f7 -0x46 0x07 0x30 0x3a - -# CHECK: c.sf.d $f12, $f14 -0x46 0x2e 0x60 0x38 - -# CHECK: c.sf.s $f6, $f7 -0x46 0x07 0x30 0x38 - -# CHECK: c.ueq.d $f12, $f14 -0x46 0x2e 0x60 0x33 - -# CHECK: c.ueq.s $f28, $f18 -0x46 0x12 0xe0 0x33 - -# CHECK: c.ule.d $f12, $f14 -0x46 0x2e 0x60 0x37 - -# CHECK: c.ule.s $f6, $f7 -0x46 0x07 0x30 0x37 - -# CHECK: c.ult.d $f12, $f14 -0x46 0x2e 0x60 0x35 - -# CHECK: c.ult.s $f6, $f7 -0x46 0x07 0x30 0x35 - -# CHECK: c.un.d $f12, $f14 -0x46 0x2e 0x60 0x31 - -# CHECK: c.un.s $f6, $f7 -0x46 0x07 0x30 0x31 - -# CHECK: ceil.w.d $f12, $f14 -0x46 0x20 0x73 0x0e - -# CHECK: ceil.w.s $f6, $f7 -0x46 0x00 0x39 0x8e - -# CHECK: cfc1 $6, $7 -0x44 0x46 0x38 0x00 - -# CHECK: clo $6, $7 -0x70 0xe6 0x30 0x21 - -# CHECK: clz $6, $7 -0x70 0xe6 0x30 0x20 - -# CHECK: ctc1 $6, $7 -0x44 0xc6 0x38 0x00 - -# CHECK: cvt.d.s $f6, $f7 -0x46 0x00 0x39 0xa1 - -# CHECK: cvt.d.w $f12, $f14 -0x46 0x80 0x73 0x21 - -# CHECK: cvt.s.d $f12, $f14 -0x46 0x20 0x73 0x20 - -# CHECK: cvt.s.w $f6, $f7 -0x46 0x80 0x39 0xa0 - -# CHECK: cvt.w.d $f12, $f14 -0x46 0x20 0x73 0x24 - -# CHECK: cvt.w.s $f6, $f7 -0x46 0x00 0x39 0xa4 - -# CHECK: floor.w.d $f12, $f14 -0x46 0x20 0x73 0x0f - -# CHECK: floor.w.s $f6, $f7 -0x46 0x00 0x39 0x8f - -# CHECK: j 1328 -0x08 0x00 0x01 0x4c - -# CHECK: jal 1328 -0x0c 0x00 0x01 0x4c - -# CHECK: jalx 1328 -0x74 0x00 0x01 0x4c - -# CHECK: jalr $7 -0x00 0xe0 0xf8 0x09 - -# CHECK: jr $7 -0x00 0xe0 0x00 0x08 - -# CHECK: lb $4, 9158($5) -0x80 0xa4 0x23 0xc6 - -# CHECK: lbu $4, 6($5) -0x90 0xa4 0x00 0x06 - -# CHECK: ldc1 $f9, 9158($7) -0xd4 0xe9 0x23 0xc6 - -# CHECK: lh $4, 12($5) -0x84 0xa4 0x00 0x0c - -# CHECK: lh $4, 12($5) -0x84 0xa4 0x00 0x0c - -# CHECK: ll $9, 9158($7) -0xc0 0xe9 0x23 0xc6 - -# CHECK: lui $6, 17767 -0x3c 0x06 0x45 0x67 - -# CHECK: lw $4, 24($5) -0x8c 0xa4 0x00 0x18 - -# CHECK: lwc1 $f9, 9158($7) -0xc4 0xe9 0x23 0xc6 - -# CHECK: lwl $2, 3($4) -0x88 0x82 0x00 0x03 - -# CHECK: lwr $3, 16($5) -0x98 0xa3 0x00 0x10 - -# CHECK: madd $6, $7 -0x70 0xc7 0x00 0x00 - -# CHECK: maddu $6, $7 -0x70 0xc7 0x00 0x01 - -# CHECK: mfc0 $8, $16, 4 -0x40 0x08 0x80 0x04 - -# CHECK: mfc1 $6, $f7 -0x44 0x06 0x38 0x00 - -# CHECK: mfhi $5 -0x00 0x00 0x28 0x10 - -# CHECK: mflo $5 -0x00 0x00 0x28 0x12 - -# CHECK: mov.d $f6, $f8 -0x46 0x20 0x41 0x86 - -# CHECK: mov.s $f6, $f7 -0x46 0x00 0x39 0x86 - -# CHECK: movf $3, $2, $fcc7 -0x00,0x5c,0x18,0x01 - -# CHECK: movf.d $f4, $f2, $fcc7 -0x46,0x3c,0x11,0x11 - -# CHECK: movf.s $f4, $f2, $fcc7 -0x46,0x1c,0x11,0x11 - -# CHECK: movt $3, $2, $fcc7 -0x00,0x5d,0x18,0x01 - -# CHECK: movt.d $f4, $f2, $fcc7 -0x46,0x3d,0x11,0x11 - -# CHECK: movt.s $f4, $f2, $fcc7 -0x46,0x1d,0x11,0x11 - -# CHECK: msub $6, $7 -0x70 0xc7 0x00 0x04 - -# CHECK: msubu $6, $7 -0x70 0xc7 0x00 0x05 - -# CHECK: mtc0 $9, $15, 1 -0x40 0x89 0x78 0x01 - -# CHECK: mtc1 $6, $f7 -0x44 0x86 0x38 0x00 - -# CHECK: mthi $7 -0x00 0xe0 0x00 0x11 - -# CHECK: mtlo $7 -0x00 0xe0 0x00 0x13 - -# CHECK: mul.d $f8, $f12, $f14 -0x46 0x2e 0x62 0x02 - -# CHECK: mul.s $f9, $f6, $f7 -0x46 0x07 0x32 0x42 - -# CHECK: mul $9, $6, $7 -0x70 0xc7 0x48 0x02 - -# CHECK: mult $3, $5 -0x00 0x65 0x00 0x18 - -# CHECK: multu $3, $5 -0x00 0x65 0x00 0x19 - -# CHECK: neg.d $f12, $f14 -0x46 0x20 0x73 0x07 - -# CHECK: neg.s $f6, $f7 -0x46 0x00 0x39 0x87 - -# CHECK: nop -0x00 0x00 0x00 0x00 - -# CHECK: nor $9, $6, $7 -0x00 0xc7 0x48 0x27 - -# CHECK: or $3, $3, $5 -0x00 0x65 0x18 0x25 - -# CHECK: ori $9, $6, 17767 -0x34 0xc9 0x45 0x67 - -# CHECK: round.w.d $f12, $f14 -0x46 0x20 0x73 0x0c - -# CHECK: round.w.s $f6, $f7 -0x46 0x00 0x39 0x8c - -# CHECK: sb $4, 9158($5) -0xa0 0xa4 0x23 0xc6 - -# CHECK: sb $4, 6($5) -0xa0 0xa4 0x00 0x06 - -# CHECK: sc $9, 9158($7) -0xe0 0xe9 0x23 0xc6 - -# CHECK: sdc1 $f9, 9158($7) -0xf4 0xe9 0x23 0xc6 - -# CHECK: sh $4, 9158($5) -0xa4 0xa4 0x23 0xc6 - -# CHECK: sll $4, $3, 7 -0x00 0x03 0x21 0xc0 - -# CHECK: sllv $2, $3, $5 -0x00 0xa3 0x10 0x04 - -# CHECK: slt $3, $3, $5 -0x00 0x65 0x18 0x2a - -# CHECK: slti $3, $3, 103 -0x28 0x63 0x00 0x67 - -# CHECK: sltiu $3, $3, 103 -0x2c 0x63 0x00 0x67 - -# CHECK: sltu $3, $3, $5 -0x00 0x65 0x18 0x2b - -# CHECK: sqrt.d $f12, $f14 -0x46 0x20 0x73 0x04 - -# CHECK: sqrt.s $f6, $f7 -0x46 0x00 0x39 0x84 - -# CHECK: sra $4, $3, 7 -0x00 0x03 0x21 0xc3 - -# CHECK: srav $2, $3, $5 -0x00 0xa3 0x10 0x07 - -# CHECK: srl $4, $3, 7 -0x00 0x03 0x21 0xc2 - -# CHECK: srlv $2, $3, $5 -0x00 0xa3 0x10 0x06 - -# CHECK: sub.d $f8, $f12, $f14 -0x46 0x2e 0x62 0x01 - -# CHECK: sub.s $f9, $f6, $f7 -0x46 0x07 0x32 0x41 - -# CHECK: sub $9, $6, $7 -0x00 0xc7 0x48 0x22 - -# CHECK: subu $4, $3, $5 -0x00 0x65 0x20 0x23 - -# CHECK: sw $4, 24($5) -0xac 0xa4 0x00 0x18 - -# CHECK: swc1 $f9, 9158($7) -0xe4 0xe9 0x23 0xc6 - -# CHECK: swl $4, 16($5) -0xa8 0xa4 0x00 0x10 - -# CHECK: swr $6, 16($7) -0xb8 0xe6 0x00 0x10 - -# CHECK: sync 7 -0x00 0x00 0x01 0xcf - -# CHECK: trunc.w.d $f12, $f14 -0x46 0x20 0x73 0x0d - -# CHECK: trunc.w.s $f6, $f7 -0x46 0x00 0x39 0x8d - -# CHECK: xor $3, $3, $5 -0x00 0x65 0x18 0x26 - -# CHECK: xori $9, $6, 17767 -0x38 0xc9 0x45 0x67 - -# CHECK: .set push -# CHECK: .set mips32r2 -# CHECK: rdhwr $5, $29 -# CHECK: .set pop -0x7c 0x05 0xe8 0x3b - -# CHECK: cache 1, 2($3) -0xbc 0x61 0x00 0x02 - -# CHECK: pref 3, 4($2) -0xcc 0x43 0x00 0x04 - -# CHECK: swc2 $9, 9158($7) -0xe8 0xe9 0x23 0xc6 - -# CHECK: lwc2 $8, 9162($6) -0xc8 0xc8 0x23 0xca diff --git a/llvm/test/MC/Disassembler/Mips/mips32/valid-mips32.txt b/llvm/test/MC/Disassembler/Mips/mips32/valid-mips32.txt index be371974db98..09f1e56fff43 100644 --- a/llvm/test/MC/Disassembler/Mips/mips32/valid-mips32.txt +++ b/llvm/test/MC/Disassembler/Mips/mips32/valid-mips32.txt @@ -6,6 +6,8 @@ 0x00 0x03 0x21 0xc0 # CHECK: sll $4, $3, 7 0x00 0x03 0x21 0xc2 # CHECK: srl $4, $3, 7 0x00 0x03 0x21 0xc3 # CHECK: sra $4, $3, 7 +0x00 0x5c 0x18 0x01 # CHECK: movf $3, $2, $fcc7 +0x00 0x5d 0x18 0x01 # CHECK: movt $3, $2, $fcc7 0x00 0x65 0x00 0x18 # CHECK: mult $3, $5 0x00 0x65 0x00 0x19 # CHECK: multu $3, $5 0x00 0x65 0x18 0x25 # CHECK: or $3, $3, $5 @@ -45,6 +47,7 @@ 0x38 0xc9 0x45 0x67 # CHECK: xori $9, $6, 17767 0x3c 0x06 0x45 0x67 # CHECK: lui $6, 17767 0x40 0x08 0x78 0x01 # CHECK: mfc0 $8, $15, 1 +0x40 0x08 0x80 0x04 # CHECK: mfc0 $8, $16, 4 0x40 0x89 0x78 0x01 # CHECK: mtc0 $9, $15, 1 0x44 0x06 0x38 0x00 # CHECK: mfc1 $6, $f7 0x44 0x46 0x38 0x00 # CHECK: cfc1 $6, $7 @@ -83,6 +86,8 @@ 0x46 0x07 0x32 0x41 # CHECK: sub.s $f9, $f6, $f7 0x46 0x07 0x32 0x42 # CHECK: mul.s $f9, $f6, $f7 0x46 0x12 0xe0 0x33 # CHECK: c.ueq.s $f28, $f18 +0x46 0x1c 0x11 0x11 # CHECK: movf.s $f4, $f2, $fcc7 +0x46 0x1d 0x11 0x11 # CHECK: movt.s $f4, $f2, $fcc7 0x46 0x20 0x41 0x86 # CHECK: mov.d $f6, $f8 0x46 0x20 0x73 0x04 # CHECK: sqrt.d $f12, $f14 0x46 0x20 0x73 0x05 # CHECK: abs.d $f12, $f14 @@ -112,6 +117,8 @@ 0x46 0x2e 0x62 0x00 # CHECK: add.d $f8, $f12, $f14 0x46 0x2e 0x62 0x01 # CHECK: sub.d $f8, $f12, $f14 0x46 0x2e 0x62 0x02 # CHECK: mul.d $f8, $f12, $f14 +0x46 0x3c 0x11 0x11 # CHECK: movf.d $f4, $f2, $fcc7 +0x46 0x3d 0x11 0x11 # CHECK: movt.d $f4, $f2, $fcc7 0x46 0x80 0x39 0xa0 # CHECK: cvt.s.w $f6, $f7 0x46 0x80 0x73 0x21 # CHECK: cvt.d.w $f12, $f14 0x70 0xc7 0x00 0x00 # CHECK: madd $6, $7 diff --git a/llvm/test/MC/Disassembler/Mips/mips32r2.txt b/llvm/test/MC/Disassembler/Mips/mips32r2.txt deleted file mode 100644 index c553c03a2cf7..000000000000 --- a/llvm/test/MC/Disassembler/Mips/mips32r2.txt +++ /dev/null @@ -1,459 +0,0 @@ -# RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mcpu=mips32r2 | FileCheck %s -# CHECK: abs.d $f12, $f14 -0x46 0x20 0x73 0x05 - -# CHECK: abs.s $f6, $f7 -0x46 0x00 0x39 0x85 - -# CHECK: add $9, $6, $7 -0x00 0xc7 0x48 0x20 - -# CHECK: add.d $f8, $f12, $f14 -0x46 0x2e 0x62 0x00 - -# CHECK: add.s $f9, $f6, $f7 -0x46 0x07 0x32 0x40 - -# CHECK: addi $9, $6, 17767 -0x20 0xc9 0x45 0x67 - -# CHECK: addiu $9, $6, -15001 -0x24 0xc9 0xc5 0x67 - -# CHECK: addu $9, $6, $7 -0x00 0xc7 0x48 0x21 - -# CHECK: and $9, $6, $7 -0x00 0xc7 0x48 0x24 - -# CHECK: andi $9, $6, 17767 -0x30 0xc9 0x45 0x67 - -# CHECK: b 1332 -0x10 0x00 0x01 0x4c - -# CHECK: bc1f 1332 -0x45 0x00 0x01 0x4c - -# CHECK: bc1f $fcc7, 1332 -0x45 0x1c 0x01 0x4c - -# CHECK: bc1t 1332 -0x45 0x01 0x01 0x4c - -# CHECK: bc1t $fcc7, 1332 -0x45 0x1d 0x01 0x4c - -# CHECK: beq $9, $6, 1332 -0x11 0x26 0x01 0x4c - -# CHECK: bgez $6, 1332 -0x04 0xc1 0x01 0x4c - -# CHECK: bgezal $6, 1332 -0x04 0xd1 0x01 0x4c - -# CHECK: bgtz $6, 1332 -0x1c 0xc0 0x01 0x4c - -# CHECK: blez $6, 1332 -0x18 0xc0 0x01 0x4c - -# CHECK: bne $9, $6, 1332 -0x15 0x26 0x01 0x4c - -# CHECK: c.eq.d $f12, $f14 -0x46 0x2e 0x60 0x32 - -# CHECK: c.eq.s $f6, $f7 -0x46 0x07 0x30 0x32 - -# CHECK: c.f.d $f12, $f14 -0x46 0x2e 0x60 0x30 - -# CHECK: c.f.s $f6, $f7 -0x46 0x07 0x30 0x30 - -# CHECK: c.le.d $f12, $f14 -0x46 0x2e 0x60 0x3e - -# CHECK: c.le.s $f6, $f7 -0x46 0x07 0x30 0x3e - -# CHECK: c.lt.d $f12, $f14 -0x46 0x2e 0x60 0x3c - -# CHECK: c.lt.s $f6, $f7 -0x46 0x07 0x30 0x3c - -# CHECK: c.nge.d $f12, $f14 -0x46 0x2e 0x60 0x3d - -# CHECK: c.nge.s $f6, $f7 -0x46 0x07 0x30 0x3d - -# CHECK: c.ngl.d $f12, $f14 -0x46 0x2e 0x60 0x3b - -# CHECK: c.ngl.s $f6, $f7 -0x46 0x07 0x30 0x3b - -# CHECK: c.ngle.d $f12, $f14 -0x46 0x2e 0x60 0x39 - -# CHECK: c.ngle.s $f6, $f7 -0x46 0x07 0x30 0x39 - -# CHECK: c.ngt.d $f12, $f14 -0x46 0x2e 0x60 0x3f - -# CHECK: c.ngt.s $f6, $f7 -0x46 0x07 0x30 0x3f - -# CHECK: c.ole.d $f12, $f14 -0x46 0x2e 0x60 0x36 - -# CHECK: c.ole.s $f6, $f7 -0x46 0x07 0x30 0x36 - -# CHECK: c.olt.d $f12, $f14 -0x46 0x2e 0x60 0x34 - -# CHECK: c.olt.s $f6, $f7 -0x46 0x07 0x30 0x34 - -# CHECK: c.seq.d $f12, $f14 -0x46 0x2e 0x60 0x3a - -# CHECK: c.seq.s $f6, $f7 -0x46 0x07 0x30 0x3a - -# CHECK: c.sf.d $f12, $f14 -0x46 0x2e 0x60 0x38 - -# CHECK: c.sf.s $f6, $f7 -0x46 0x07 0x30 0x38 - -# CHECK: c.ueq.d $f12, $f14 -0x46 0x2e 0x60 0x33 - -# CHECK: c.ueq.s $f28, $f18 -0x46 0x12 0xe0 0x33 - -# CHECK: c.ule.d $f12, $f14 -0x46 0x2e 0x60 0x37 - -# CHECK: c.ule.s $f6, $f7 -0x46 0x07 0x30 0x37 - -# CHECK: c.ult.d $f12, $f14 -0x46 0x2e 0x60 0x35 - -# CHECK: c.ult.s $f6, $f7 -0x46 0x07 0x30 0x35 - -# CHECK: c.un.d $f12, $f14 -0x46 0x2e 0x60 0x31 - -# CHECK: c.un.s $f6, $f7 -0x46 0x07 0x30 0x31 - -# CHECK: ceil.w.d $f12, $f14 -0x46 0x20 0x73 0x0e - -# CHECK: ceil.w.s $f6, $f7 -0x46 0x00 0x39 0x8e - -# CHECK: cfc1 $6, $7 -0x44 0x46 0x38 0x00 - -# CHECK: clo $6, $7 -0x70 0xe6 0x30 0x21 - -# CHECK: clz $6, $7 -0x70 0xe6 0x30 0x20 - -# CHECK: ctc1 $6, $7 -0x44 0xc6 0x38 0x00 - -# CHECK: cvt.d.s $f6, $f7 -0x46 0x00 0x39 0xa1 - -# CHECK: cvt.d.w $f12, $f14 -0x46 0x80 0x73 0x21 - -# CHECK: cvt.l.d $f12, $f14 -0x46 0x20 0x73 0x25 - -# CHECK: cvt.l.s $f6, $f7 -0x46 0x00 0x39 0xa5 - -# CHECK: cvt.s.d $f12, $f14 -0x46 0x20 0x73 0x20 - -# CHECK: cvt.s.w $f6, $f7 -0x46 0x80 0x39 0xa0 - -# CHECK: cvt.w.d $f12, $f14 -0x46 0x20 0x73 0x24 - -# CHECK: cvt.w.s $f6, $f7 -0x46 0x00 0x39 0xa4 - -# CHECK: floor.w.d $f12, $f14 -0x46 0x20 0x73 0x0f - -# CHECK: floor.w.s $f6, $f7 -0x46 0x00 0x39 0x8f - -# CHECK: ins $19, $9, 6, 7 -0x7d 0x33 0x61 0x84 - -# CHECK: j 1328 -0x08 0x00 0x01 0x4c - -# CHECK: jal 1328 -0x0c 0x00 0x01 0x4c - -# CHECK: jalx 1328 -0x74 0x00 0x01 0x4c - -# CHECK: jalr $7 -0x00 0xe0 0xf8 0x09 - -# CHECK: jr $7 -0x00 0xe0 0x00 0x08 - -# CHECK: lb $4, 9158($5) -0x80 0xa4 0x23 0xc6 - -# CHECK: lbu $4, 6($5) -0x90 0xa4 0x00 0x06 - -# CHECK: ldc1 $f9, 9158($7) -0xd4 0xe9 0x23 0xc6 - -# CHECK: lh $4, 12($5) -0x84 0xa4 0x00 0x0c - -# CHECK: lh $4, 12($5) -0x84 0xa4 0x00 0x0c - -# CHECK: ll $9, 9158($7) -0xc0 0xe9 0x23 0xc6 - -# CHECK: lui $6, 17767 -0x3c 0x06 0x45 0x67 - -# CHECK: luxc1 $f0, $6($5) -0x4c 0xa6 0x00 0x05 - -# CHECK: lw $4, 24($5) -0x8c 0xa4 0x00 0x18 - -# CHECK: lwc1 $f9, 9158($7) -0xc4 0xe9 0x23 0xc6 - -# CHECK: lwl $2, 3($4) -0x88 0x82 0x00 0x03 - -# CHECK: lwr $3, 16($5) -0x98 0xa3 0x00 0x10 - -# CHECK: lwxc1 $f20, $12($14) -0x4d 0xcc 0x05 0x00 - -# CHECK: madd $6, $7 -0x70 0xc7 0x00 0x00 - -# CHECK: maddu $6, $7 -0x70 0xc7 0x00 0x01 - -# CHECK: mfc0 $8, $16, 4 -0x40 0x08 0x80 0x04 - -# CHECK: mfc1 $6, $f7 -0x44 0x06 0x38 0x00 - -# CHECK: mfhi $5 -0x00 0x00 0x28 0x10 - -# CHECK: mflo $5 -0x00 0x00 0x28 0x12 - -# CHECK: mov.d $f6, $f8 -0x46 0x20 0x41 0x86 - -# CHECK: mov.s $f6, $f7 -0x46 0x00 0x39 0x86 - -# CHECK: msub $6, $7 -0x70 0xc7 0x00 0x04 - -# CHECK: msubu $6, $7 -0x70 0xc7 0x00 0x05 - -# CHECK: mtc0 $9, $15, 1 -0x40 0x89 0x78 0x01 - -# CHECK: mtc1 $6, $f7 -0x44 0x86 0x38 0x00 - -# CHECK: mthi $7 -0x00 0xe0 0x00 0x11 - -# CHECK: mtlo $7 -0x00 0xe0 0x00 0x13 - -# CHECK: mul.d $f8, $f12, $f14 -0x46 0x2e 0x62 0x02 - -# CHECK: mul.s $f9, $f6, $f7 -0x46 0x07 0x32 0x42 - -# CHECK: mul $9, $6, $7 -0x70 0xc7 0x48 0x02 - -# CHECK: mult $3, $5 -0x00 0x65 0x00 0x18 - -# CHECK: multu $3, $5 -0x00 0x65 0x00 0x19 - -# CHECK: neg.d $f12, $f14 -0x46 0x20 0x73 0x07 - -# CHECK: neg.s $f6, $f7 -0x46 0x00 0x39 0x87 - -# CHECK: nop -0x00 0x00 0x00 0x00 - -# CHECK: nor $9, $6, $7 -0x00 0xc7 0x48 0x27 - -# CHECK: or $3, $3, $5 -0x00 0x65 0x18 0x25 - -# CHECK: ori $9, $6, 17767 -0x34 0xc9 0x45 0x67 - -# CHECK: rotr $9, $6, 7 -0x00 0x26 0x49 0xc2 - -# CHECK: rotrv $9, $6, $7 -0x00 0xe6 0x48 0x46 - -# CHECK: round.w.d $f12, $f14 -0x46 0x20 0x73 0x0c - -# CHECK: round.w.s $f6, $f7 -0x46 0x00 0x39 0x8c - -# CHECK: sb $4, 9158($5) -0xa0 0xa4 0x23 0xc6 - -# CHECK: sb $4, 6($5) -0xa0 0xa4 0x00 0x06 - -# CHECK: sc $9, 9158($7) -0xe0 0xe9 0x23 0xc6 - -# CHECK: sdc1 $f9, 9158($7) -0xf4 0xe9 0x23 0xc6 - -# CHECK: seb $6, $7 -0x7c 0x07 0x34 0x20 - -# CHECK: seh $6, $7 -0x7c 0x07 0x36 0x20 - -# CHECK: sh $4, 9158($5) -0xa4 0xa4 0x23 0xc6 - -# CHECK: sll $4, $3, 7 -0x00 0x03 0x21 0xc0 - -# CHECK: sllv $2, $3, $5 -0x00 0xa3 0x10 0x04 - -# CHECK: slt $3, $3, $5 -0x00 0x65 0x18 0x2a - -# CHECK: slti $3, $3, 103 -0x28 0x63 0x00 0x67 - -# CHECK: sltiu $3, $3, 103 -0x2c 0x63 0x00 0x67 - -# CHECK: sltu $3, $3, $5 -0x00 0x65 0x18 0x2b - -# CHECK: sqrt.d $f12, $f14 -0x46 0x20 0x73 0x04 - -# CHECK: sqrt.s $f6, $f7 -0x46 0x00 0x39 0x84 - -# CHECK: sra $4, $3, 7 -0x00 0x03 0x21 0xc3 - -# CHECK: srav $2, $3, $5 -0x00 0xa3 0x10 0x07 - -# CHECK: srl $4, $3, 7 -0x00 0x03 0x21 0xc2 - -# CHECK: srlv $2, $3, $5 -0x00 0xa3 0x10 0x06 - -# CHECK: sub.d $f8, $f12, $f14 -0x46 0x2e 0x62 0x01 - -# CHECK: sub.s $f9, $f6, $f7 -0x46 0x07 0x32 0x41 - -# CHECK: sub $9, $6, $7 -0x00 0xc7 0x48 0x22 - -# CHECK: subu $4, $3, $5 -0x00 0x65 0x20 0x23 - -# CHECK: suxc1 $f4, $24($5) -0x4c 0xb8 0x20 0x0d - -# CHECK: sw $4, 24($5) -0xac 0xa4 0x00 0x18 - -# CHECK: swc1 $f9, 9158($7) -0xe4 0xe9 0x23 0xc6 - -# CHECK: swl $4, 16($5) -0xa8 0xa4 0x00 0x10 - -# CHECK: swr $6, 16($7) -0xb8 0xe6 0x00 0x10 - -# CHECK: swxc1 $f26, $18($22) -0x4e 0xd2 0xd0 0x08 - -# CHECK: sync 7 -0x00 0x00 0x01 0xcf - -# CHECK: trunc.w.d $f12, $f14 -0x46 0x20 0x73 0x0d - -# CHECK: trunc.w.s $f6, $f7 -0x46 0x00 0x39 0x8d - -# CHECK: wsbh $6, $7 -0x7c 0x07 0x30 0xa0 - -# CHECK: xor $3, $3, $5 -0x00 0x65 0x18 0x26 - -# CHECK: xori $9, $6, 17767 -0x38 0xc9 0x45 0x67 - -# CHECK: synci -6137($fp) -0x07 0xdf 0xe8 0x07 diff --git a/llvm/test/MC/Disassembler/Mips/mips32r2/valid-mips32r2.txt b/llvm/test/MC/Disassembler/Mips/mips32r2/valid-mips32r2.txt index 9d68169c6f26..d01384752907 100644 --- a/llvm/test/MC/Disassembler/Mips/mips32r2/valid-mips32r2.txt +++ b/llvm/test/MC/Disassembler/Mips/mips32r2/valid-mips32r2.txt @@ -34,6 +34,7 @@ 0x00 0xe6 0x48 0x46 # CHECK: rotrv $9, $6, $7 0x04 0xc1 0x01 0x4c # CHECK: bgez $6, 1332 0x04 0xd1 0x01 0x4c # CHECK: bgezal $6, 1332 +0x07 0xdf 0xe8 0x07 # CHECK: synci -6137($fp) 0x08 0x00 0x01 0x4c # CHECK: j 1328 0x0c 0x00 0x01 0x4c # CHECK: jal 1328 0x10 0x00 0x01 0x4c # CHECK: b 1332 @@ -50,6 +51,7 @@ 0x38 0xc9 0x45 0x67 # CHECK: xori $9, $6, 17767 0x3c 0x06 0x45 0x67 # CHECK: lui $6, 17767 0x40 0x08 0x78 0x01 # CHECK: mfc0 $8, $15, 1 +0x40 0x08 0x80 0x04 # CHECK: mfc0 $8, $16, 4 0x40 0x89 0x78 0x01 # CHECK: mtc0 $9, $15, 1 0x41 0x60 0x60 0x00 # CHECK: di 0x41 0x60 0x60 0x20 # CHECK: ei diff --git a/llvm/test/MC/Disassembler/Mips/mips32r6.txt b/llvm/test/MC/Disassembler/Mips/mips32r6.txt deleted file mode 100644 index 12dc7321922f..000000000000 --- a/llvm/test/MC/Disassembler/Mips/mips32r6.txt +++ /dev/null @@ -1,129 +0,0 @@ -# RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mcpu=mips32r6 | FileCheck %s - -0xec 0x80 0x00 0x19 # CHECK: addiupc $4, 100 -0x7c 0x43 0x22 0xa0 # CHECK: align $4, $2, $3, 2 -0xec 0x7f 0x00 0x38 # CHECK: aluipc $3, 56 -0x3c 0x62 0xff 0xe9 # CHECK: aui $3, $2, -23 -0xec 0x7e 0xff 0xff # CHECK: auipc $3, -1 -0xe8 0x37 0x96 0xb8 # CHECK: balc 14572256 -0xc8 0x37 0x96 0xb8 # CHECK: bc 14572256 - -# FIXME: Don't check the immediate on these for the moment, the encode/decode -# functions are not inverses of eachother. -# The immediate should be 4 but the disassembler currently emits 8 -0x45 0x20 0x00 0x01 # CHECK: bc1eqz $f0, -0x45 0x3f 0x00 0x01 # CHECK: bc1eqz $f31, -0x45 0xa0 0x00 0x01 # CHECK: bc1nez $f0, -0x45 0xbf 0x00 0x01 # CHECK: bc1nez $f31, -# FIXME: Don't check the immediate on these for the moment, the encode/decode -# functions are not inverses of eachother. -# The immediate should be 8 but the disassembler currently emits 12 -0x49 0x20 0x00 0x02 # CHECK: bc2eqz $0, -0x49 0x3f 0x00 0x02 # CHECK: bc2eqz $31, -0x49 0xa0 0x00 0x02 # CHECK: bc2nez $0, -0x49 0xbf 0x00 0x02 # CHECK: bc2nez $31, - -0x20 0xa6 0x00 0x40 # CHECK: beqc $5, $6, 256 -# FIXME: Don't check the immediate on the bcczal's for the moment, the -# encode/decode functions are not inverses of eachother. -0x20 0x02 0x01 0x4d # CHECK: beqzalc $2, -0x60 0xa6 0x00 0x40 # CHECK: bnec $5, $6, 256 -0x60 0x02 0x01 0x4d # CHECK: bnezalc $2, -0xd8 0xa0 0x46 0x90 # CHECK: beqzc $5, 72256 -0x58 0x43 0x00 0x40 # CHECK: bgec $2, $3, 256 -0x18 0x43 0x00 0x40 # CHECK: bgeuc $2, $3, 256 -0x18 0x42 0x01 0x4d # CHECK: bgezalc $2, -0xf8 0xa0 0x46 0x90 # CHECK: bnezc $5, 72256 -0x5c 0xa5 0x00 0x40 # CHECK: bltzc $5, 256 -0x58 0xa5 0x00 0x40 # CHECK: bgezc $5, 256 -0x1c 0x02 0x01 0x4d # CHECK: bgtzalc $2, -0x58 0x05 0x00 0x40 # CHECK: blezc $5, 256 -0x1c 0x42 0x01 0x4d # CHECK: bltzalc $2, -0x5c 0x05 0x00 0x40 # CHECK: bgtzc $5, 256 -0x7c 0x02 0x20 0x20 # CHECK: bitswap $4, $2 -0x18 0x02 0x01 0x4d # CHECK: blezalc $2, -0x5c 0xa6 0x00 0x40 # CHECK: bltc $5, $6, 256 -0x1c 0xa6 0x00 0x40 # CHECK: bltuc $5, $6, 256 -0x60 0x00 0x00 0x01 # CHECK: bnvc $zero, $zero, 4 -0x60 0x40 0x00 0x01 # CHECK: bnvc $2, $zero, 4 -0x60 0x82 0x00 0x01 # CHECK: bnvc $4, $2, 4 -0x20 0x00 0x00 0x01 # CHECK: bovc $zero, $zero, 4 -0x20 0x40 0x00 0x01 # CHECK: bovc $2, $zero, 4 -0x20 0x82 0x00 0x01 # CHECK: bovc $4, $2, 4 -0x46 0x84 0x18 0x80 # CHECK: cmp.af.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x80 # CHECK: cmp.af.d $f2, $f3, $f4 -0x46 0x84 0x18 0x81 # CHECK: cmp.un.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x81 # CHECK: cmp.un.d $f2, $f3, $f4 -0x46 0x84 0x18 0x82 # CHECK: cmp.eq.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x82 # CHECK: cmp.eq.d $f2, $f3, $f4 -0x46 0x84 0x18 0x83 # CHECK: cmp.ueq.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x83 # CHECK: cmp.ueq.d $f2, $f3, $f4 -0x46 0x84 0x18 0x84 # CHECK: cmp.lt.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x84 # CHECK: cmp.lt.d $f2, $f3, $f4 -0x46 0x84 0x18 0x85 # CHECK: cmp.ult.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x85 # CHECK: cmp.ult.d $f2, $f3, $f4 -0x46 0x84 0x18 0x86 # CHECK: cmp.le.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x86 # CHECK: cmp.le.d $f2, $f3, $f4 -0x46 0x84 0x18 0x87 # CHECK: cmp.ule.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x87 # CHECK: cmp.ule.d $f2, $f3, $f4 -0x46 0x84 0x18 0x88 # CHECK: cmp.saf.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x88 # CHECK: cmp.saf.d $f2, $f3, $f4 -0x46 0x84 0x18 0x89 # CHECK: cmp.sun.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x89 # CHECK: cmp.sun.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8a # CHECK: cmp.seq.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8a # CHECK: cmp.seq.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8b # CHECK: cmp.sueq.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8b # CHECK: cmp.sueq.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8c # CHECK: cmp.slt.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8c # CHECK: cmp.slt.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8d # CHECK: cmp.sult.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8d # CHECK: cmp.sult.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8e # CHECK: cmp.sle.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8e # CHECK: cmp.sle.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8f # CHECK: cmp.sule.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8f # CHECK: cmp.sule.d $f2, $f3, $f4 -0x00 0x64 0x10 0x9a # CHECK: div $2, $3, $4 -0x00 0x64 0x10 0x9b # CHECK: divu $2, $3, $4 -# 0xf8 0x05 0x01 0x00 # CHECK-TODO: jialc $5, 256 -# 0xd8 0x05 0x01 0x00 # CHECK-TODO: jic $5, 256 -0xec 0x48 0x00 0x43 # CHECK: lwpc $2, 268 -0xec 0x50 0x00 0x43 # CHECK: lwupc $2, 268 -0x40 0x08 0x80 0x03 # CHECK: mfc0 $8, $16, 3 -0x00 0x64 0x10 0xda # CHECK: mod $2, $3, $4 -0x00 0x64 0x10 0xdb # CHECK: modu $2, $3, $4 -0x40 0x89 0x78 0x01 # CHECK: mtc0 $9, $15, 1 -0x00 0x64 0x10 0x98 # CHECK: mul $2, $3, $4 -0x00 0x64 0x10 0xd8 # CHECK: muh $2, $3, $4 -0x00 0x64 0x10 0x99 # CHECK: mulu $2, $3, $4 -0x00 0x64 0x10 0xd9 # CHECK: muhu $2, $3, $4 -0x46 0x04 0x18 0x98 # CHECK: maddf.s $f2, $f3, $f4 -0x46 0x24 0x18 0x98 # CHECK: maddf.d $f2, $f3, $f4 -0x46 0x04 0x18 0x99 # CHECK: msubf.s $f2, $f3, $f4 -0x46 0x24 0x18 0x99 # CHECK: msubf.d $f2, $f3, $f4 -0x46 0x22 0x08 0x10 # CHECK: sel.d $f0, $f1, $f2 -0x46 0x02 0x08 0x10 # CHECK: sel.s $f0, $f1, $f2 -0x00 0x64 0x10 0x35 # CHECK: seleqz $2, $3, $4 -0x00 0x64 0x10 0x37 # CHECK: selnez $2, $3, $4 -0x46 0x04 0x10 0x1d # CHECK: max.s $f0, $f2, $f4 -0x46 0x24 0x10 0x1d # CHECK: max.d $f0, $f2, $f4 -0x46 0x04 0x10 0x1c # CHECK: min.s $f0, $f2, $f4 -0x46 0x24 0x10 0x1c # CHECK: min.d $f0, $f2, $f4 -0x46 0x04 0x10 0x1f # CHECK: maxa.s $f0, $f2, $f4 -0x46 0x24 0x10 0x1f # CHECK: maxa.d $f0, $f2, $f4 -0x46 0x04 0x10 0x1e # CHECK: mina.s $f0, $f2, $f4 -0x46 0x24 0x10 0x1e # CHECK: mina.d $f0, $f2, $f4 -0x46 0x04 0x10 0x14 # CHECK: seleqz.s $f0, $f2, $f4 -0x46 0x24 0x10 0x14 # CHECK: seleqz.d $f0, $f2, $f4 -0x46 0x04 0x10 0x17 # CHECK: selnez.s $f0, $f2, $f4 -0x46 0x24 0x10 0x17 # CHECK: selnez.d $f0, $f2, $f4 -0x46 0x00 0x20 0x9a # CHECK: rint.s $f2, $f4 -0x46 0x20 0x20 0x9a # CHECK: rint.d $f2, $f4 -0x46 0x00 0x20 0x9b # CHECK: class.s $f2, $f4 -0x46 0x20 0x20 0x9b # CHECK: class.d $f2, $f4 -0x00 0x80 0x04 0x09 # CHECK: jr.hb $4 -0x00 0x80 0xfc 0x09 # CHECK: jalr.hb $4 -0x00 0xa0 0x24 0x09 # CHECK: jalr.hb $4, $5 -0x7e 0x42 0xb3 0xb6 # CHECK: ll $2, -153($18) -0x7e 0x6f 0xec 0x26 # CHECK: sc $15, -40($19) -0x00 0xa0 0x58 0x51 # CHECK: clo $11, $5 -0x03 0x80 0xe8 0x50 # CHECK: clz $sp, $gp diff --git a/llvm/test/MC/Disassembler/Mips/mips32r6/valid-mips32r6.txt b/llvm/test/MC/Disassembler/Mips/mips32r6/valid-mips32r6.txt index 8eae2762dbcd..e1721b934835 100644 --- a/llvm/test/MC/Disassembler/Mips/mips32r6/valid-mips32r6.txt +++ b/llvm/test/MC/Disassembler/Mips/mips32r6/valid-mips32r6.txt @@ -33,13 +33,18 @@ 0x02 0xdc 0x00 0x31 # CHECK: tgeu $22, $gp 0x03 0x80 0xe8 0x50 # CHECK: clz $sp, $gp 0x04 0x11 0x14 0x9b # CHECK: bal 21104 +# FIXME: The encode/decode functions are not inverses of each other. 0x18 0x02 0x01 0x4d # CHECK: blezalc $2, 1332 +# FIXME: The encode/decode functions are not inverses of each other. 0x18 0x42 0x01 0x4d # CHECK: bgezalc $2, 1332 0x18 0x43 0x00 0x40 # CHECK: bgeuc $2, $3, 256 +# FIXME: The encode/decode functions are not inverses of each other. 0x1c 0x02 0x01 0x4d # CHECK: bgtzalc $2, 1332 +# FIXME: The encode/decode functions are not inverses of each other. 0x1c 0x42 0x01 0x4d # CHECK: bltzalc $2, 1332 0x1c 0xa6 0x00 0x40 # CHECK: bltuc $5, $6, 256 0x20 0x00 0x00 0x01 # CHECK: bovc $zero, $zero, 4 +# FIXME: The encode/decode functions are not inverses of each other. 0x20 0x02 0x01 0x4d # CHECK: beqzalc $2, 1332 0x20 0x40 0x00 0x01 # CHECK: bovc $2, $zero, 4 0x20 0x82 0x00 0x01 # CHECK: bovc $4, $2, 4 @@ -49,14 +54,23 @@ 0x34 0x42 0x00 0x04 # CHECK: ori $2, $2, 4 0x3c 0x62 0xff 0xe9 # CHECK: aui $3, $2, -23 0x40 0x08 0x78 0x01 # CHECK: mfc0 $8, $15, 1 +0x40 0x08 0x80 0x03 # CHECK: mfc0 $8, $16, 3 0x40 0x89 0x78 0x01 # CHECK: mtc0 $9, $15, 1 0x41 0x60 0x60 0x00 # CHECK: di 0x41 0x60 0x60 0x20 # CHECK: ei 0x41 0x6e 0x60 0x20 # CHECK: ei $14 0x41 0x7e 0x60 0x00 # CHECK: di $fp +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 4 but the disassembler currently emits 8 0x45 0x20 0x00 0x01 # CHECK: bc1eqz $f0, 8 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 4 but the disassembler currently emits 8 0x45 0x3f 0x00 0x01 # CHECK: bc1eqz $f31, 8 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 4 but the disassembler currently emits 8 0x45 0xa0 0x00 0x01 # CHECK: bc1nez $f0, 8 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 4 but the disassembler currently emits 8 0x45 0xbf 0x00 0x01 # CHECK: bc1nez $f31, 8 0x46 0x00 0x20 0x9a # CHECK: rint.s $f2, $f4 0x46 0x00 0x20 0x9b # CHECK: class.s $f2, $f4 @@ -112,11 +126,19 @@ 0x46 0xa4 0x18 0x8d # CHECK: cmp.sult.d $f2, $f3, $f4 0x46 0xa4 0x18 0x8e # CHECK: cmp.sle.d $f2, $f3, $f4 0x46 0xa4 0x18 0x8f # CHECK: cmp.sule.d $f2, $f3, $f4 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 8 but the disassembler currently emits 12 0x49 0x20 0x00 0x02 # CHECK: bc2eqz $0, 12 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 8 but the disassembler currently emits 12 0x49 0x3f 0x00 0x02 # CHECK: bc2eqz $31, 12 0x49 0x52 0x34 0xb7 # CHECK: lwc2 $18, -841($6) 0x49 0x79 0x81 0x30 # CHECK: swc2 $25, 304($16) +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 8 but the disassembler currently emits 12 0x49 0xa0 0x00 0x02 # CHECK: bc2nez $0, 12 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 8 but the disassembler currently emits 12 0x49 0xbf 0x00 0x02 # CHECK: bc2nez $31, 12 0x49 0xc8 0x0d 0x43 # CHECK: ldc2 $8, -701($1) 0x49 0xf4 0x92 0x75 # CHECK: sdc2 $20, 629($18) @@ -127,6 +149,7 @@ 0x5c 0xa5 0x00 0x40 # CHECK: bltzc $5, 256 0x5c 0xa6 0x00 0x40 # CHECK: bltc $5, $6, 256 0x60 0x00 0x00 0x01 # CHECK: bnvc $zero, $zero, 4 +# FIXME: The encode/decode functions are not inverses of each other. 0x60 0x02 0x01 0x4d # CHECK: bnezalc $2, 1332 0x60 0x40 0x00 0x01 # CHECK: bnvc $2, $zero, 4 0x60 0x82 0x00 0x01 # CHECK: bnvc $4, $2, 4 diff --git a/llvm/test/MC/Disassembler/Mips/mips64.txt b/llvm/test/MC/Disassembler/Mips/mips64.txt deleted file mode 100644 index c3abaf4cf477..000000000000 --- a/llvm/test/MC/Disassembler/Mips/mips64.txt +++ /dev/null @@ -1,105 +0,0 @@ -# RUN: llvm-mc --disassemble %s -triple=mips64-unknown-linux | FileCheck %s -# CHECK: daddiu $11, $26, 31949 -0x67 0x4b 0x7c 0xcd - -# CHECK: daddiu $sp, $sp, -32 -0x67 0xbd 0xff 0xe0 - -# CHECK: daddu $26, $1, $11 -0x00 0x2b 0xd0 0x2d - -# CHECK: ddiv $zero, $26, $22 -0x03 0x56 0x00 0x1e - -# CHECK: ddivu $zero, $9, $24 -0x01 0x38 0x00 0x1f - -# CHECK: dmfc0 $24, $10, 0 -0x40 0x38 0x50 0x00 - -# CHECK: dmfc1 $2, $f14 -0x44 0x22 0x70 0x00 - -# CHECK: dmtc0 $4, $10, 0 -0x40 0xa4 0x50 0x00 - -# CHECK: dmtc1 $23, $f5 -0x44 0xb7 0x28 0x00 - -# CHECK: dmult $11, $26 -0x01 0x7a 0x00 0x1c - -# CHECK: dmultu $23, $13 -0x02 0xed 0x00 0x1d - -# CHECK: dsll $3, $24, 17 -0x00 0x18 0x1c 0x78 - -# CHECK: dsllv $gp, $27, $24 -0x03 0x1b 0xe0 0x14 - -# CHECK: dsra $1, $1, 30 -0x00 0x01 0x0f 0xbb - -# CHECK: dsrav $1, $1, $fp -0x03 0xc1 0x08 0x17 - -# CHECK: dsrl $10, $gp, 24 -0x00 0x1c 0x56 0x3a - -# CHECK: dsrlv $gp, $10, $23 -0x02 0xea 0xe0 0x16 - -# CHECK: dsubu $gp, $27, $24 -0x03 0x78 0xe0 0x2f - -# CHECK: mfc0 $8, $16, 4 -0x40 0x08 0x80 0x04 - -# CHECK: mtc0 $9, $15, 1 -0x40 0x89 0x78 0x01 - -# CHECK: lw $27, -15155($1) -0x8c 0x3b 0xc4 0xcd - -# CHECK: lui $1, 1 -0x3c 0x01 0x00 0x01 - -# CHECK: lwu $3, -1746($3) -0x9c 0x63 0xf9 0x2e - -# CHECK: lui $ra, 1 -0x3c 0x1f 0x00 0x01 - -# CHECK: sw $26, -15159($1) -0xac 0x3a 0xc4 0xc9 - -# CHECK: ld $26, 3958($zero) -0xdc 0x1a 0x0f 0x76 - -# CHECK: sd $6, 17767($zero) -0xfc 0x06 0x45 0x67 - -# CHECK: luxc1 $f0, $6($5) -0x4c 0xa6 0x00 0x05 - -# CHECK: lwxc1 $f20, $12($14) -0x4d 0xcc 0x05 0x00 - -# CHECK: suxc1 $f4, $24($5) -0x4c 0xb8 0x20 0x0d - -# CHECK: swxc1 $f26, $18($22) -0x4e 0xd2 0xd0 0x08 - -# CHECK: ldxc1 $f2, $2($10) -0x4d 0x42 0x00 0x81 - -# CHECK: sdxc1 $f8, $4($25) -0x4f 0x24 0x40 0x09 - -# CHECK: sdc2 $9, 9158($7) -0xf8 0xe9 0x23 0xc6 - -# CHECK: ldc2 $3, 9162($8) -0xd9 0x03 0x23 0xca diff --git a/llvm/test/MC/Disassembler/Mips/mips64/valid-mips64.txt b/llvm/test/MC/Disassembler/Mips/mips64/valid-mips64.txt index a2c4387ac460..6cbf5d3206b0 100644 --- a/llvm/test/MC/Disassembler/Mips/mips64/valid-mips64.txt +++ b/llvm/test/MC/Disassembler/Mips/mips64/valid-mips64.txt @@ -6,6 +6,7 @@ 0x00 0x00 0x04 0xbc # CHECK: dsll32 $zero, $zero, 18 0x00 0x00 0x28 0x10 # CHECK: mfhi $5 0x00 0x00 0x28 0x12 # CHECK: mflo $5 +0x00 0x01 0x0f 0xbb # CHECK: dsra $1, $1, 30 0x00 0x03 0x10 0x2e # CHECK: dneg $2, $3 0x00 0x03 0x10 0x2f # CHECK: dnegu $2, $3 0x00 0x03 0x21 0xc0 # CHECK: sll $4, $3, 7 @@ -18,8 +19,11 @@ 0x00 0x13 0x9d 0xfa # CHECK: dsrl $19, $19, 23 0x00 0x13 0x9d 0xfe # CHECK: dsrl32 $19, $19, 23 0x00 0x14 0x04 0xb8 # CHECK: dsll $zero, $20, 18 +0x00 0x18 0x1c 0x78 # CHECK: dsll $3, $24, 17 +0x00 0x1c 0x56 0x3a # CHECK: dsrl $10, $gp, 24 0x00 0x1c 0xe2 0xbb # CHECK: dsra $gp, $gp, 10 0x00 0x1c 0xe2 0xbf # CHECK: dsra32 $gp, $gp, 10 +0x00 0x2b 0xd0 0x2d # CHECK: daddu $26, $1, $11 0x00 0x3f 0x98 0x2c # CHECK: dadd $19, $1, $ra 0x00 0x3f 0x98 0x2d # CHECK: daddu $19, $1, $ra 0x00 0x65 0x00 0x18 # CHECK: mult $3, $5 @@ -45,6 +49,8 @@ 0x00 0xe0 0x00 0x11 # CHECK: mthi $7 0x00 0xe0 0x00 0x13 # CHECK: mtlo $7 0x00 0xe0 0xf8 0x09 # CHECK: jalr $7 +0x01 0x38 0x00 0x1f # CHECK: ddivu $zero, $9, $24 +0x01 0x7a 0x00 0x1c # CHECK: dmult $11, $26 0x01 0x94 0x00 0x14 # CHECK: dsllv $zero, $20, $12 0x01 0x94 0x00 0x14 # CHECK: dsllv $zero, $20, $12 0x02 0x11 0x00 0x1f # CHECK: ddivu $zero, $16, $17 @@ -54,7 +60,13 @@ 0x02 0x86 0x98 0x16 # CHECK: dsrlv $19, $6, $20 0x02 0xc8 0x38 0x2e # CHECK: dsub $7, $22, $8 0x02 0xe9 0x00 0x1c # CHECK: dmult $23, $9 +0x02 0xea 0xe0 0x16 # CHECK: dsrlv $gp, $10, $23 +0x02 0xed 0x00 0x1d # CHECK: dmultu $23, $13 +0x03 0x1b 0xe0 0x14 # CHECK: dsllv $gp, $27, $24 0x03 0x53 0x00 0x1e # CHECK: ddiv $zero, $26, $19 +0x03 0x56 0x00 0x1e # CHECK: ddiv $zero, $26, $22 +0x03 0x78 0xe0 0x2f # CHECK: dsubu $gp, $27, $24 +0x03 0xc1 0x08 0x17 # CHECK: dsrav $1, $1, $fp 0x04 0xc1 0x01 0x4c # CHECK: bgez $6, 1332 0x04 0xd1 0x01 0x4c # CHECK: bgezal $6, 1332 0x08 0x00 0x01 0x4c # CHECK: j 1328 @@ -71,16 +83,21 @@ 0x30 0xc9 0x45 0x67 # CHECK: andi $9, $6, 17767 0x34 0xc9 0x45 0x67 # CHECK: ori $9, $6, 17767 0x38 0xc9 0x45 0x67 # CHECK: xori $9, $6, 17767 +0x3c 0x01 0x00 0x01 # CHECK: lui $1, 1 0x3c 0x06 0x45 0x67 # CHECK: lui $6, 17767 +0x3c 0x1f 0x00 0x01 # CHECK: lui $ra, 1 0x40 0x08 0x78 0x01 # CHECK: mfc0 $8, $15, 1 +0x40 0x08 0x80 0x04 # CHECK: mfc0 $8, $16, 4 0x40 0x38 0x50 0x00 # CHECK: dmfc0 $24, $10, 0 0x40 0x89 0x78 0x01 # CHECK: mtc0 $9, $15, 1 0x40 0xa4 0x50 0x00 # CHECK: dmtc0 $4, $10, 0 0x44 0x06 0x38 0x00 # CHECK: mfc1 $6, $f7 +0x44 0x22 0x70 0x00 # CHECK: dmfc1 $2, $f14 0x44 0x2c 0x68 0x00 # CHECK: dmfc1 $12, $f13 0x44 0x46 0x38 0x00 # CHECK: cfc1 $6, $7 0x44 0x86 0x38 0x00 # CHECK: mtc1 $6, $f7 0x44 0xb0 0x70 0x00 # CHECK: dmtc1 $16, $f14 +0x44 0xb7 0x28 0x00 # CHECK: dmtc1 $23, $f5 0x44 0xc6 0x38 0x00 # CHECK: ctc1 $6, $7 0x45 0x00 0x01 0x4c # CHECK: bc1f 1332 0x45 0x01 0x01 0x4c # CHECK: bc1t 1332 @@ -156,10 +173,16 @@ 0x46 0x80 0x73 0x21 # CHECK: cvt.d.w $f12, $f14 0x46 0xa0 0x81 0x21 # CHECK: cvt.d.l $f4, $f16 0x46 0xa0 0xf3 0xe0 # CHECK: cvt.s.l $f15, $f30 +0x4c 0xa6 0x00 0x05 # CHECK: luxc1 $f0, $6($5) +0x4c 0xb8 0x20 0x0d # CHECK: suxc1 $f4, $24($5) +0x4d 0x42 0x00 0x81 # CHECK: ldxc1 $f2, $2($10) 0x4d 0xbb 0x60 0x0d # CHECK: suxc1 $f12, $27($13) 0x4d 0xca 0x58 0x09 # CHECK: sdxc1 $f11, $10($14) +0x4d 0xcc 0x05 0x00 # CHECK: lwxc1 $f20, $12($14) 0x4d 0xf7 0x02 0x01 # CHECK: ldxc1 $f8, $23($15) 0x4e 0xb6 0x04 0xc5 # CHECK: luxc1 $f19, $22($21) +0x4e 0xd2 0xd0 0x08 # CHECK: swxc1 $f26, $18($22) +0x4f 0x24 0x40 0x09 # CHECK: sdxc1 $f8, $4($25) 0x4f 0x4c 0x98 0x08 # CHECK: swxc1 $f19, $12($26) 0x4f 0xd1 0x03 0x00 # CHECK: lwxc1 $f12, $17($fp) 0x62 0x9d 0x6c 0x39 # CHECK: daddi $sp, $20, 27705 @@ -174,6 +197,8 @@ 0x65 0xce 0x11 0xea # CHECK: daddiu $14, $14, 4586 0x66 0x73 0x69 0x3f # CHECK: daddiu $19, $19, 26943 0x66 0xda 0xee 0x16 # CHECK: daddiu $26, $22, -4586 +0x67 0x4b 0x7c 0xcd # CHECK: daddiu $11, $26, 31949 +0x67 0xbd 0xff 0xe0 # CHECK: daddiu $sp, $sp, -32 0x6b 0x18 0xef 0xb9 # CHECK: ldl $24, -4167($24) 0x6e 0x8e 0x89 0x6a # CHECK: ldr $14, -30358($20) 0x70 0xc7 0x00 0x00 # CHECK: madd $6, $7 @@ -194,14 +219,17 @@ 0x84 0xa4 0x00 0x0c # CHECK: lh $4, 12($5) 0x84 0xa4 0x00 0x0c # CHECK: lh $4, 12($5) 0x88 0x82 0x00 0x03 # CHECK: lwl $2, 3($4) +0x8c 0x3b 0xc4 0xcd # CHECK: lw $27, -15155($1) 0x8c 0xa4 0x00 0x18 # CHECK: lw $4, 24($5) 0x90 0xa4 0x00 0x06 # CHECK: lbu $4, 6($5) 0x98 0xa3 0x00 0x10 # CHECK: lwr $3, 16($5) +0x9c 0x63 0xf9 0x2e # CHECK: lwu $3, -1746($3) 0x9c 0x73 0xa1 0xea # CHECK: lwu $19, -24086($3) 0xa0 0xa4 0x00 0x06 # CHECK: sb $4, 6($5) 0xa0 0xa4 0x23 0xc6 # CHECK: sb $4, 9158($5) 0xa4 0xa4 0x23 0xc6 # CHECK: sh $4, 9158($5) 0xa8 0xa4 0x00 0x10 # CHECK: swl $4, 16($5) +0xac 0x3a 0xc4 0xc9 # CHECK: sw $26, -15159($1) 0xac 0xa4 0x00 0x18 # CHECK: sw $4, 24($5) 0xb3 0xc7 0xae 0x1f # CHECK: sdl $7, -20961($fp) 0xb5 0x8b 0xb0 0x39 # CHECK: sdr $11, -20423($12) @@ -213,10 +241,14 @@ 0xcc 0x43 0x00 0x04 # CHECK: pref 3, 4($2) 0xd3 0xe0 0xc6 0x70 # CHECK: lld $zero, -14736($ra) 0xd4 0xe9 0x23 0xc6 # CHECK: ldc1 $f9, 9158($7) +0xd9 0x03 0x23 0xca # CHECK: ldc2 $3, 9162($8) +0xdc 0x1a 0x0f 0x76 # CHECK: ld $26, 3958($zero) 0xde 0x3d 0x90 0x1b # CHECK: ld $sp, -28645($17) 0xe0 0xe9 0x23 0xc6 # CHECK: sc $9, 9158($7) 0xe4 0xe9 0x23 0xc6 # CHECK: swc1 $f9, 9158($7) 0xe8 0xe9 0x23 0xc6 # CHECK: swc2 $9, 9158($7) 0xf3 0xaf 0xdf 0xcd # CHECK: scd $15, -8243($sp) 0xf4 0xe9 0x23 0xc6 # CHECK: sdc1 $f9, 9158($7) +0xf8 0xe9 0x23 0xc6 # CHECK: sdc2 $9, 9158($7) +0xfc 0x06 0x45 0x67 # CHECK: sd $6, 17767($zero) 0xfd 0x4c 0x16 0xcb # CHECK: sd $12, 5835($10) diff --git a/llvm/test/MC/Disassembler/Mips/mips64r2.txt b/llvm/test/MC/Disassembler/Mips/mips64r2.txt deleted file mode 100644 index cee6f3c21f72..000000000000 --- a/llvm/test/MC/Disassembler/Mips/mips64r2.txt +++ /dev/null @@ -1,90 +0,0 @@ -# RUN: llvm-mc --disassemble %s -triple=mips64-unknown-linux -mattr +mips64r2 | FileCheck %s -# CHECK: daddiu $11, $26, 31949 -0x67 0x4b 0x7c 0xcd - -# CHECK: daddu $26, $1, $11 -0x00 0x2b 0xd0 0x2d - -# CHECK: ddiv $zero, $26, $22 -0x03 0x56 0x00 0x1e - -# CHECK: ddivu $zero, $9, $24 -0x01 0x38 0x00 0x1f - -# CHECK: dmfc1 $2, $f14 -0x44 0x22 0x70 0x00 - -# CHECK: dmtc1 $23, $f5 -0x44 0xb7 0x28 0x00 - -# CHECK: dmult $11, $26 -0x01 0x7a 0x00 0x1c - -# CHECK: dmultu $23, $13 -0x02 0xed 0x00 0x1d - -# CHECK: dsll $3, $24, 17 -0x00 0x18 0x1c 0x78 - -# CHECK: dsllv $gp, $27, $24 -0x03 0x1b 0xe0 0x14 - -# CHECK: dsra $1, $1, 30 -0x00 0x01 0x0f 0xbb - -# CHECK: dsrav $1, $1, $fp -0x03 0xc1 0x08 0x17 - -# CHECK: dsrl $10, $gp, 24 -0x00 0x1c 0x56 0x3a - -# CHECK: dsrlv $gp, $10, $23 -0x02 0xea 0xe0 0x16 - -# CHECK: dsubu $gp, $27, $24 -0x03 0x78 0xe0 0x2f - -# CHECK: lw $27, -15155($1) -0x8c 0x3b 0xc4 0xcd - -# CHECK: lui $1, 1 -0x3c 0x01 0x00 0x01 - -# CHECK: lwu $3, -1746($3) -0x9c 0x63 0xf9 0x2e - -# CHECK: lui $ra, 1 -0x3c 0x1f 0x00 0x01 - -# CHECK: sw $26, -15159($1) -0xac 0x3a 0xc4 0xc9 - -# CHECK: ld $26, 3958($zero) -0xdc 0x1a 0x0f 0x76 - -# CHECK: sd $6, 17767($zero) -0xfc 0x06 0x45 0x67 - -# CHECK: dclo $9, $24 -0x73 0x09 0x48 0x25 - -# CHECK: dclz $26, $9 -0x71 0x3a 0xd0 0x24 - -# CHECK: dext $7, $gp, 29, 31 -0x7f 0x87 0xf7 0x43 - -# CHECK: dins $20, $gp, 15, 1 -0x7f 0x94 0x7b 0xc7 - -# CHECK: dsbh $7, $gp -0x7c 0x1c 0x38 0xa4 - -# CHECK: dshd $3, $14 -0x7c 0x0e 0x19 0x64 - -# CHECK: drotr $20, $27, 6 -0x00 0x3b 0xa1 0xba - -# CHECK: drotrv $24, $23, $5 -0x00 0xb7 0xc0 0x56 diff --git a/llvm/test/MC/Disassembler/Mips/mips64r2/valid-mips64r2.txt b/llvm/test/MC/Disassembler/Mips/mips64r2/valid-mips64r2.txt index cbb6b29081c8..0c6e10ee37ce 100644 --- a/llvm/test/MC/Disassembler/Mips/mips64r2/valid-mips64r2.txt +++ b/llvm/test/MC/Disassembler/Mips/mips64r2/valid-mips64r2.txt @@ -10,6 +10,7 @@ 0x00 0x00 0x04 0xbc # CHECK: dsll32 $zero, $zero, 18 0x00 0x00 0x28 0x10 # CHECK: mfhi $5 0x00 0x00 0x28 0x12 # CHECK: mflo $5 +0x00 0x01 0x0f 0xbb # CHECK: dsra $1, $1, 30 0x00 0x03 0x10 0x2e # CHECK: dneg $2, $3 0x00 0x03 0x10 0x2f # CHECK: dnegu $2, $3 0x00 0x03 0x21 0xc0 # CHECK: sll $4, $3, 7 @@ -22,13 +23,17 @@ 0x00 0x13 0x9d 0xfa # CHECK: dsrl $19, $19, 23 0x00 0x13 0x9d 0xfe # CHECK: dsrl32 $19, $19, 23 0x00 0x14 0x04 0xb8 # CHECK: dsll $zero, $20, 18 +0x00 0x18 0x1c 0x78 # CHECK: dsll $3, $24, 17 +0x00 0x1c 0x56 0x3a # CHECK: dsrl $10, $gp, 24 0x00 0x1c 0xe2 0xbb # CHECK: dsra $gp, $gp, 10 0x00 0x1c 0xe2 0xbf # CHECK: dsra32 $gp, $gp, 10 0x00 0x21 0x0b 0xfa # CHECK: drotr $1, $1, 15 0x00 0x21 0x0b 0xfe # CHECK: drotr32 $1, $1, 15 0x00 0x26 0x49 0xc2 # CHECK: rotr $9, $6, 7 +0x00 0x2b 0xd0 0x2d # CHECK: daddu $26, $1, $11 0x00 0x2e 0x0b 0xfa # CHECK: drotr $1, $14, 15 0x00 0x2e 0x0b 0xfe # CHECK: drotr32 $1, $14, 15 +0x00 0x3b 0xa1 0xba # CHECK: drotr $20, $27, 6 0x00 0x3f 0x98 0x2c # CHECK: dadd $19, $1, $ra 0x00 0x3f 0x98 0x2d # CHECK: daddu $19, $1, $ra 0x00 0x65 0x00 0x18 # CHECK: mult $3, $5 @@ -44,6 +49,7 @@ 0x00 0xa3 0x10 0x06 # CHECK: srlv $2, $3, $5 0x00 0xa3 0x10 0x07 # CHECK: srav $2, $3, $5 0x00 0xa6 0x00 0x1d # CHECK: dmultu $5, $6 +0x00 0xb7 0xc0 0x56 # CHECK: drotrv $24, $23, $5 0x00 0xba 0x28 0x2f # CHECK: dsubu $5, $5, $26 0x00 0xc7 0x48 0x20 # CHECK: add $9, $6, $7 0x00 0xc7 0x48 0x21 # CHECK: addu $9, $6, $7 @@ -55,6 +61,8 @@ 0x00 0xe0 0x00 0x13 # CHECK: mtlo $7 0x00 0xe0 0xf8 0x09 # CHECK: jalr $7 0x00 0xe6 0x48 0x46 # CHECK: rotrv $9, $6, $7 +0x01 0x38 0x00 0x1f # CHECK: ddivu $zero, $9, $24 +0x01 0x7a 0x00 0x1c # CHECK: dmult $11, $26 0x01 0x94 0x00 0x14 # CHECK: dsllv $zero, $20, $12 0x01 0x94 0x00 0x14 # CHECK: dsllv $zero, $20, $12 0x01 0xee 0x08 0x56 # CHECK: drotrv $1, $14, $15 @@ -65,7 +73,13 @@ 0x02 0x86 0x98 0x16 # CHECK: dsrlv $19, $6, $20 0x02 0xc8 0x38 0x2e # CHECK: dsub $7, $22, $8 0x02 0xe9 0x00 0x1c # CHECK: dmult $23, $9 +0x02 0xea 0xe0 0x16 # CHECK: dsrlv $gp, $10, $23 +0x02 0xed 0x00 0x1d # CHECK: dmultu $23, $13 +0x03 0x1b 0xe0 0x14 # CHECK: dsllv $gp, $27, $24 0x03 0x53 0x00 0x1e # CHECK: ddiv $zero, $26, $19 +0x03 0x56 0x00 0x1e # CHECK: ddiv $zero, $26, $22 +0x03 0x78 0xe0 0x2f # CHECK: dsubu $gp, $27, $24 +0x03 0xc1 0x08 0x17 # CHECK: dsrav $1, $1, $fp 0x04 0xc1 0x01 0x4c # CHECK: bgez $6, 1332 0x04 0xd1 0x01 0x4c # CHECK: bgezal $6, 1332 0x08 0x00 0x01 0x4c # CHECK: j 1328 @@ -82,7 +96,9 @@ 0x30 0xc9 0x45 0x67 # CHECK: andi $9, $6, 17767 0x34 0xc9 0x45 0x67 # CHECK: ori $9, $6, 17767 0x38 0xc9 0x45 0x67 # CHECK: xori $9, $6, 17767 +0x3c 0x01 0x00 0x01 # CHECK: lui $1, 1 0x3c 0x06 0x45 0x67 # CHECK: lui $6, 17767 +0x3c 0x1f 0x00 0x01 # CHECK: lui $ra, 1 0x40 0x08 0x78 0x01 # CHECK: mfc0 $8, $15, 1 0x40 0x38 0x50 0x00 # CHECK: dmfc0 $24, $10, 0 0x40 0x89 0x78 0x01 # CHECK: mtc0 $9, $15, 1 @@ -92,11 +108,13 @@ 0x41 0x6e 0x60 0x20 # CHECK: ei $14 0x41 0x7e 0x60 0x00 # CHECK: di $fp 0x44 0x06 0x38 0x00 # CHECK: mfc1 $6, $f7 +0x44 0x22 0x70 0x00 # CHECK: dmfc1 $2, $f14 0x44 0x2c 0x68 0x00 # CHECK: dmfc1 $12, $f13 0x44 0x46 0x38 0x00 # CHECK: cfc1 $6, $7 0x44 0x7e 0xc0 0x00 # CHECK: mfhc1 $fp, $f24 0x44 0x86 0x38 0x00 # CHECK: mtc1 $6, $f7 0x44 0xb0 0x70 0x00 # CHECK: dmtc1 $16, $f14 +0x44 0xb7 0x28 0x00 # CHECK: dmtc1 $23, $f5 0x44 0xc6 0x38 0x00 # CHECK: ctc1 $6, $7 0x44 0xe0 0x80 0x00 # CHECK: mthc1 $zero, $f16 0x45 0x00 0x01 0x4c # CHECK: bc1f 1332 @@ -197,6 +215,7 @@ 0x65 0xce 0x11 0xea # CHECK: daddiu $14, $14, 4586 0x66 0x73 0x69 0x3f # CHECK: daddiu $19, $19, 26943 0x66 0xda 0xee 0x16 # CHECK: daddiu $26, $22, -4586 +0x67 0x4b 0x7c 0xcd # CHECK: daddiu $11, $26, 31949 0x6b 0x18 0xef 0xb9 # CHECK: ldl $24, -4167($24) 0x6e 0x8e 0x89 0x6a # CHECK: ldr $14, -30358($20) 0x70 0xc7 0x00 0x00 # CHECK: madd $6, $7 @@ -207,26 +226,35 @@ 0x70 0xd2 0x90 0x25 # CHECK: dclo $18, $6 0x70 0xe6 0x30 0x20 # CHECK: clz $6, $7 0x70 0xe6 0x30 0x21 # CHECK: clo $6, $7 +0x71 0x3a 0xd0 0x24 # CHECK: dclz $26, $9 +0x73 0x09 0x48 0x25 # CHECK: dclo $9, $24 0x73 0x30 0x80 0x24 # CHECK: dclz $16, $25 0x74 0x00 0x01 0x4c # CHECK: jalx 1328 0x7c 0x07 0x30 0xa0 # CHECK: wsbh $6, $7 0x7c 0x07 0x34 0x20 # CHECK: seb $6, $7 0x7c 0x07 0x36 0x20 # CHECK: seh $6, $7 0x7c 0x0e 0x18 0xa4 # CHECK: dsbh $3, $14 +0x7c 0x0e 0x19 0x64 # CHECK: dshd $3, $14 +0x7c 0x1c 0x38 0xa4 # CHECK: dsbh $7, $gp 0x7c 0x1d 0x11 0x64 # CHECK: dshd $2, $sp 0x7d 0x33 0x61 0x84 # CHECK: ins $19, $9, 6, 7 +0x7f 0x87 0xf7 0x43 # CHECK: dext $7, $gp, 29, 31 +0x7f 0x94 0x7b 0xc7 # CHECK: dins $20, $gp, 15, 1 0x80 0xa4 0x23 0xc6 # CHECK: lb $4, 9158($5) 0x84 0xa4 0x00 0x0c # CHECK: lh $4, 12($5) 0x84 0xa4 0x00 0x0c # CHECK: lh $4, 12($5) 0x88 0x82 0x00 0x03 # CHECK: lwl $2, 3($4) +0x8c 0x3b 0xc4 0xcd # CHECK: lw $27, -15155($1) 0x8c 0xa4 0x00 0x18 # CHECK: lw $4, 24($5) 0x90 0xa4 0x00 0x06 # CHECK: lbu $4, 6($5) 0x98 0xa3 0x00 0x10 # CHECK: lwr $3, 16($5) +0x9c 0x63 0xf9 0x2e # CHECK: lwu $3, -1746($3) 0x9c 0x73 0xa1 0xea # CHECK: lwu $19, -24086($3) 0xa0 0xa4 0x00 0x06 # CHECK: sb $4, 6($5) 0xa0 0xa4 0x23 0xc6 # CHECK: sb $4, 9158($5) 0xa4 0xa4 0x23 0xc6 # CHECK: sh $4, 9158($5) 0xa8 0xa4 0x00 0x10 # CHECK: swl $4, 16($5) +0xac 0x3a 0xc4 0xc9 # CHECK: sw $26, -15159($1) 0xac 0xa4 0x00 0x18 # CHECK: sw $4, 24($5) 0xb3 0xc7 0xae 0x1f # CHECK: sdl $7, -20961($fp) 0xb5 0x8b 0xb0 0x39 # CHECK: sdr $11, -20423($12) @@ -235,9 +263,11 @@ 0xc4 0xe9 0x23 0xc6 # CHECK: lwc1 $f9, 9158($7) 0xd3 0xe0 0xc6 0x70 # CHECK: lld $zero, -14736($ra) 0xd4 0xe9 0x23 0xc6 # CHECK: ldc1 $f9, 9158($7) +0xdc 0x1a 0x0f 0x76 # CHECK: ld $26, 3958($zero) 0xde 0x3d 0x90 0x1b # CHECK: ld $sp, -28645($17) 0xe0 0xe9 0x23 0xc6 # CHECK: sc $9, 9158($7) 0xe4 0xe9 0x23 0xc6 # CHECK: swc1 $f9, 9158($7) 0xf3 0xaf 0xdf 0xcd # CHECK: scd $15, -8243($sp) 0xf4 0xe9 0x23 0xc6 # CHECK: sdc1 $f9, 9158($7) +0xfc 0x06 0x45 0x67 # CHECK: sd $6, 17767($zero) 0xfd 0x4c 0x16 0xcb # CHECK: sd $12, 5835($10) diff --git a/llvm/test/MC/Disassembler/Mips/mips64r6.txt b/llvm/test/MC/Disassembler/Mips/mips64r6.txt deleted file mode 100644 index 3ddef9ab42ab..000000000000 --- a/llvm/test/MC/Disassembler/Mips/mips64r6.txt +++ /dev/null @@ -1,145 +0,0 @@ -# RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mcpu=mips64r6 | FileCheck %s - -0xec 0x80 0x00 0x19 # CHECK: addiupc $4, 100 -0x7c 0x43 0x22 0xa0 # CHECK: align $4, $2, $3, 2 -0xec 0x7f 0x00 0x38 # CHECK: aluipc $3, 56 -0x3c 0x62 0xff 0xe9 # CHECK: aui $3, $2, -23 -0xec 0x7e 0xff 0xff # CHECK: auipc $3, -1 -0xe8 0x37 0x96 0xb8 # CHECK: balc 14572256 -0xc8 0x37 0x96 0xb8 # CHECK: bc 14572256 - -# FIXME: Don't check the immediate on these for the moment, the encode/decode -# functions are not inverses of eachother. -# The immediate should be 4 but the disassembler currently emits 8 -0x45 0x20 0x00 0x01 # CHECK: bc1eqz $f0, -0x45 0x3f 0x00 0x01 # CHECK: bc1eqz $f31, -0x45 0xa0 0x00 0x01 # CHECK: bc1nez $f0, -0x45 0xbf 0x00 0x01 # CHECK: bc1nez $f31, -# FIXME: Don't check the immediate on these for the moment, the encode/decode -# functions are not inverses of eachother. -# The immediate should be 8 but the disassembler currently emits 12 -0x49 0x20 0x00 0x02 # CHECK: bc2eqz $0, -0x49 0x3f 0x00 0x02 # CHECK: bc2eqz $31, -0x49 0xa0 0x00 0x02 # CHECK: bc2nez $0, -0x49 0xbf 0x00 0x02 # CHECK: bc2nez $31, - -0x20 0xa6 0x00 0x40 # CHECK: beqc $5, $6, 256 -# FIXME: Don't check the immediate on the bcczal's for the moment, the -# encode/decode functions are not inverses of eachother. -0x20 0x02 0x01 0x4d # CHECK: beqzalc $2, -0x60 0xa6 0x00 0x40 # CHECK: bnec $5, $6, 256 -0x60 0x02 0x01 0x4d # CHECK: bnezalc $2, -0xd8 0xa0 0x46 0x90 # CHECK: beqzc $5, 72256 -0x58 0x43 0x00 0x40 # CHECK: bgec $2, $3, 256 -0x18 0x43 0x00 0x40 # CHECK: bgeuc $2, $3, 256 -0x18 0x42 0x01 0x4d # CHECK: bgezalc $2, -0xf8 0xa0 0x46 0x90 # CHECK: bnezc $5, 72256 -0x5c 0xa5 0x00 0x40 # CHECK: bltzc $5, 256 -0x58 0xa5 0x00 0x40 # CHECK: bgezc $5, 256 -0x1c 0x02 0x01 0x4d # CHECK: bgtzalc $2, -0x58 0x05 0x00 0x40 # CHECK: blezc $5, 256 -0x1c 0x42 0x01 0x4d # CHECK: bltzalc $2, -0x5c 0x05 0x00 0x40 # CHECK: bgtzc $5, 256 -0x7c 0x02 0x20 0x20 # CHECK: bitswap $4, $2 -0x18 0x02 0x01 0x4d # CHECK: blezalc $2, -0x5c 0xa6 0x00 0x40 # CHECK: bltc $5, $6, 256 -0x1c 0xa6 0x00 0x40 # CHECK: bltuc $5, $6, 256 -0x60 0x00 0x00 0x01 # CHECK: bnvc $zero, $zero, 4 -0x60 0x40 0x00 0x01 # CHECK: bnvc $2, $zero, 4 -0x60 0x82 0x00 0x01 # CHECK: bnvc $4, $2, 4 -0x20 0x00 0x00 0x01 # CHECK: bovc $zero, $zero, 4 -0x20 0x40 0x00 0x01 # CHECK: bovc $2, $zero, 4 -0x20 0x82 0x00 0x01 # CHECK: bovc $4, $2, 4 -0x46 0x84 0x18 0x80 # CHECK: cmp.af.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x80 # CHECK: cmp.af.d $f2, $f3, $f4 -0x46 0x84 0x18 0x81 # CHECK: cmp.un.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x81 # CHECK: cmp.un.d $f2, $f3, $f4 -0x46 0x84 0x18 0x82 # CHECK: cmp.eq.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x82 # CHECK: cmp.eq.d $f2, $f3, $f4 -0x46 0x84 0x18 0x83 # CHECK: cmp.ueq.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x83 # CHECK: cmp.ueq.d $f2, $f3, $f4 -0x46 0x84 0x18 0x84 # CHECK: cmp.lt.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x84 # CHECK: cmp.lt.d $f2, $f3, $f4 -0x46 0x84 0x18 0x85 # CHECK: cmp.ult.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x85 # CHECK: cmp.ult.d $f2, $f3, $f4 -0x46 0x84 0x18 0x86 # CHECK: cmp.le.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x86 # CHECK: cmp.le.d $f2, $f3, $f4 -0x46 0x84 0x18 0x87 # CHECK: cmp.ule.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x87 # CHECK: cmp.ule.d $f2, $f3, $f4 -0x46 0x84 0x18 0x88 # CHECK: cmp.saf.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x88 # CHECK: cmp.saf.d $f2, $f3, $f4 -0x46 0x84 0x18 0x89 # CHECK: cmp.sun.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x89 # CHECK: cmp.sun.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8a # CHECK: cmp.seq.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8a # CHECK: cmp.seq.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8b # CHECK: cmp.sueq.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8b # CHECK: cmp.sueq.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8c # CHECK: cmp.slt.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8c # CHECK: cmp.slt.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8d # CHECK: cmp.sult.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8d # CHECK: cmp.sult.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8e # CHECK: cmp.sle.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8e # CHECK: cmp.sle.d $f2, $f3, $f4 -0x46 0x84 0x18 0x8f # CHECK: cmp.sule.s $f2, $f3, $f4 -0x46 0xa4 0x18 0x8f # CHECK: cmp.sule.d $f2, $f3, $f4 -0x7c 0x43 0x23 0x64 # CHECK: dalign $4, $2, $3, 5 -0x74 0x62 0x12 0x34 # CHECK: daui $3, $2, 4660 -0x04 0x66 0x56 0x78 # CHECK: dahi $3, 22136 -0x04 0x7e 0xab 0xcd # CHECK: dati $3, -21555 -0x7c 0x02 0x20 0x24 # CHECK: dbitswap $4, $2 -0x00 0x64 0x10 0x9a # CHECK: div $2, $3, $4 -0x00 0x64 0x10 0x9b # CHECK: divu $2, $3, $4 -# 0xf8 0x05 0x01 0x00 # CHECK-TODO: jialc $5, 256 -# 0xd8 0x05 0x01 0x00 # CHECK-TODO: jic $5, 256 -0xec 0x48 0x00 0x43 # CHECK: lwpc $2, 268 -0xec 0x50 0x00 0x43 # CHECK: lwupc $2, 268 -0x00 0x64 0x10 0xda # CHECK: mod $2, $3, $4 -0x00 0x64 0x10 0xdb # CHECK: modu $2, $3, $4 -0x00 0x64 0x10 0x9e # CHECK: ddiv $2, $3, $4 -0x00 0x64 0x10 0x9f # CHECK: ddivu $2, $3, $4 -0x00 0x64 0x10 0xde # CHECK: dmod $2, $3, $4 -0x00 0x64 0x10 0xdf # CHECK: dmodu $2, $3, $4 -0x00 0x64 0x10 0x98 # CHECK: mul $2, $3, $4 -0x00 0x64 0x10 0xd8 # CHECK: muh $2, $3, $4 -0x00 0x64 0x10 0x99 # CHECK: mulu $2, $3, $4 -0x00 0x64 0x10 0xd9 # CHECK: muhu $2, $3, $4 -0x00 0x64 0x10 0x9c # CHECK: dmul $2, $3, $4 -0x00 0x64 0x10 0xdc # CHECK: dmuh $2, $3, $4 -0x00 0x64 0x10 0x9d # CHECK: dmulu $2, $3, $4 -0x00 0x64 0x10 0xdd # CHECK: dmuhu $2, $3, $4 -0x46 0x04 0x18 0x98 # CHECK: maddf.s $f2, $f3, $f4 -0x46 0x24 0x18 0x98 # CHECK: maddf.d $f2, $f3, $f4 -0x46 0x04 0x18 0x99 # CHECK: msubf.s $f2, $f3, $f4 -0x46 0x24 0x18 0x99 # CHECK: msubf.d $f2, $f3, $f4 -0x46 0x22 0x08 0x10 # CHECK: sel.d $f0, $f1, $f2 -0x46 0x02 0x08 0x10 # CHECK: sel.s $f0, $f1, $f2 -0x00 0x64 0x10 0x35 # CHECK: seleqz $2, $3, $4 -0x00 0x64 0x10 0x37 # CHECK: selnez $2, $3, $4 -0x46 0x04 0x10 0x1d # CHECK: max.s $f0, $f2, $f4 -0x46 0x24 0x10 0x1d # CHECK: max.d $f0, $f2, $f4 -0x46 0x04 0x10 0x1c # CHECK: min.s $f0, $f2, $f4 -0x46 0x24 0x10 0x1c # CHECK: min.d $f0, $f2, $f4 -0x46 0x04 0x10 0x1f # CHECK: maxa.s $f0, $f2, $f4 -0x46 0x24 0x10 0x1f # CHECK: maxa.d $f0, $f2, $f4 -0x46 0x04 0x10 0x1e # CHECK: mina.s $f0, $f2, $f4 -0x46 0x24 0x10 0x1e # CHECK: mina.d $f0, $f2, $f4 -0x46 0x04 0x10 0x14 # CHECK: seleqz.s $f0, $f2, $f4 -0x46 0x24 0x10 0x14 # CHECK: seleqz.d $f0, $f2, $f4 -0x46 0x04 0x10 0x17 # CHECK: selnez.s $f0, $f2, $f4 -0x46 0x24 0x10 0x17 # CHECK: selnez.d $f0, $f2, $f4 -0x46 0x00 0x20 0x9a # CHECK: rint.s $f2, $f4 -0x46 0x20 0x20 0x9a # CHECK: rint.d $f2, $f4 -0x46 0x00 0x20 0x9b # CHECK: class.s $f2, $f4 -0x46 0x20 0x20 0x9b # CHECK: class.d $f2, $f4 -0xec 0x58 0x3c 0x48 # CHECK: ldpc $2, 123456 -0x00 0x80 0x04 0x09 # CHECK: jr.hb $4 -0x00 0x80 0xfc 0x09 # CHECK: jalr.hb $4 -0x00 0xa0 0x24 0x09 # CHECK: jalr.hb $4, $5 -0x7e 0x42 0xb3 0xb6 # CHECK: ll $2, -153($18) -0x7f 0xe0 0x38 0x37 # CHECK: lld $zero, 112($ra) -0x7e 0x6f 0xec 0x26 # CHECK: sc $15, -40($19) -0x7f 0xaf 0xe6 0xa7 # CHECK: scd $15, -51($sp) -0x00 0xa0 0x58 0x51 # CHECK: clo $11, $5 -0x03 0x80 0xe8 0x50 # CHECK: clz $sp, $gp -0x00 0xc0 0x90 0x53 # CHECK: dclo $18, $6 -0x03 0x20 0x80 0x52 # CHECK: dclz $16, $25 diff --git a/llvm/test/MC/Disassembler/Mips/mips64r6/valid-mips64r6.txt b/llvm/test/MC/Disassembler/Mips/mips64r6/valid-mips64r6.txt index 8af7fbc54616..45379d9c8988 100644 --- a/llvm/test/MC/Disassembler/Mips/mips64r6/valid-mips64r6.txt +++ b/llvm/test/MC/Disassembler/Mips/mips64r6/valid-mips64r6.txt @@ -47,13 +47,19 @@ 0x03 0x80 0xe8 0x50 # CHECK: clz $sp, $gp 0x04 0x11 0x14 0x9b # CHECK: bal 21104 0x04 0x66 0x56 0x78 # CHECK: dahi $3, 22136 +0x04 0x7e 0xab 0xcd # CHECK: dati $3, -21555 +# FIXME: The encode/decode functions are not inverses of each other. 0x18 0x02 0x01 0x4d # CHECK: blezalc $2, 1332 +# FIXME: The encode/decode functions are not inverses of each other. 0x18 0x42 0x01 0x4d # CHECK: bgezalc $2, 1332 0x18 0x43 0x00 0x40 # CHECK: bgeuc $2, $3, 256 +# FIXME: The encode/decode functions are not inverses of each other. 0x1c 0x02 0x01 0x4d # CHECK: bgtzalc $2, 1332 +# FIXME: The encode/decode functions are not inverses of each other. 0x1c 0x42 0x01 0x4d # CHECK: bltzalc $2, 1332 0x1c 0xa6 0x00 0x40 # CHECK: bltuc $5, $6, 256 0x20 0x00 0x00 0x01 # CHECK: bovc $zero, $zero, 4 +# FIXME: The encode/decode functions are not inverses of each other. 0x20 0x02 0x01 0x4d # CHECK: beqzalc $2, 1332 0x20 0x40 0x00 0x01 # CHECK: bovc $2, $zero, 4 0x20 0x82 0x00 0x01 # CHECK: bovc $4, $2, 4 @@ -63,6 +69,7 @@ 0x34 0x42 0x00 0x04 # CHECK: ori $2, $2, 4 0x3c 0x62 0xff 0xe9 # CHECK: aui $3, $2, -23 0x40 0x08 0x78 0x01 # CHECK: mfc0 $8, $15, 1 +0x40 0x08 0x80 0x03 # CHECK: mfc0 $8, $16, 3 0x40 0x38 0x50 0x00 # CHECK: dmfc0 $24, $10, 0 0x40 0x89 0x78 0x01 # CHECK: mtc0 $9, $15, 1 0x40 0xa4 0x50 0x00 # CHECK: dmtc0 $4, $10, 0 @@ -70,9 +77,17 @@ 0x41 0x60 0x60 0x20 # CHECK: ei 0x41 0x6e 0x60 0x20 # CHECK: ei $14 0x41 0x7e 0x60 0x00 # CHECK: di $fp +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 4 but the disassembler currently emits 8 0x45 0x20 0x00 0x01 # CHECK: bc1eqz $f0, 8 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 4 but the disassembler currently emits 8 0x45 0x3f 0x00 0x01 # CHECK: bc1eqz $f31, 8 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 4 but the disassembler currently emits 8 0x45 0xa0 0x00 0x01 # CHECK: bc1nez $f0, 8 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 4 but the disassembler currently emits 8 0x45 0xbf 0x00 0x01 # CHECK: bc1nez $f31, 8 0x46 0x00 0x20 0x9a # CHECK: rint.s $f2, $f4 0x46 0x00 0x20 0x9b # CHECK: class.s $f2, $f4 @@ -128,11 +143,19 @@ 0x46 0xa4 0x18 0x8d # CHECK: cmp.sult.d $f2, $f3, $f4 0x46 0xa4 0x18 0x8e # CHECK: cmp.sle.d $f2, $f3, $f4 0x46 0xa4 0x18 0x8f # CHECK: cmp.sule.d $f2, $f3, $f4 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 8 but the disassembler currently emits 12 0x49 0x20 0x00 0x02 # CHECK: bc2eqz $0, 12 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 8 but the disassembler currently emits 12 0x49 0x3f 0x00 0x02 # CHECK: bc2eqz $31, 12 0x49 0x52 0x34 0xb7 # CHECK: lwc2 $18, -841($6) 0x49 0x79 0x81 0x30 # CHECK: swc2 $25, 304($16) +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 8 but the disassembler currently emits 12 0x49 0xa0 0x00 0x02 # CHECK: bc2nez $0, 12 +# FIXME: The encode/decode functions are not inverses of each other. +# The immediate should be 8 but the disassembler currently emits 12 0x49 0xbf 0x00 0x02 # CHECK: bc2nez $31, 12 0x49 0xc8 0x0d 0x43 # CHECK: ldc2 $8, -701($1) 0x49 0xf4 0x92 0x75 # CHECK: sdc2 $20, 629($18) @@ -143,6 +166,7 @@ 0x5c 0xa5 0x00 0x40 # CHECK: bltzc $5, 256 0x5c 0xa6 0x00 0x40 # CHECK: bltc $5, $6, 256 0x60 0x00 0x00 0x01 # CHECK: bnvc $zero, $zero, 4 +# FIXME: The encode/decode functions are not inverses of each other. 0x60 0x02 0x01 0x4d # CHECK: bnezalc $2, 1332 0x60 0x40 0x00 0x01 # CHECK: bnvc $2, $zero, 4 0x60 0x82 0x00 0x01 # CHECK: bnvc $4, $2, 4