[mips] Add missing MIPS-I disassembler tests.
authorDaniel Sanders <daniel.sanders@imgtec.com>
Fri, 11 Sep 2015 12:24:06 +0000 (12:24 +0000)
committerDaniel Sanders <daniel.sanders@imgtec.com>
Fri, 11 Sep 2015 12:24:06 +0000 (12:24 +0000)
These tests were found by llvm-mc-fuzzer (see http://reviews.llvm.org/D12723)
and verified by checking the disassembler output is accepted by GAS.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@247405 91177308-0d34-0410-b5e6-96231b3b80d8

test/MC/Disassembler/Mips/mips1/valid-mips1.txt

index 5c4c5612e8460c4a85eed5b0d86a4312bb093779..3f95e0f5b1cc5049363d032269abc76312ed7cc2 100644 (file)
@@ -1,11 +1,19 @@
 # RUN: llvm-mc %s -triple=mips-unknown-linux -disassemble -mcpu=mips1 | FileCheck %s
 # CHECK: .text
 0x00 0x00 0x00 0x00 # CHECK: nop
 # RUN: llvm-mc %s -triple=mips-unknown-linux -disassemble -mcpu=mips1 | FileCheck %s
 # CHECK: .text
 0x00 0x00 0x00 0x00 # CHECK: nop
+0x00 0x00 0x00 0x09 # CHECK: jr $zero
+0x00 0x00 0x00 0x0c # CHECK: syscall
+0x00 0x00 0x00 0x0d # CHECK: break
+0x00 0x00 0x00 0x20 # CHECK: add $zero, $zero, $zero
 0x00 0x00 0x00 0x40 # CHECK: ssnop
 0x00 0x00 0x00 0x40 # CHECK: ssnop
+0x00 0x00 0x01 0x00 # CHECK: sll $zero, $zero, 4
+0x00 0x00 0x01 0x4d # CHECK: break 0, 5
 0x00 0x00 0x3c 0x80 # CHECK: sll $7, $zero, 18
 0x00 0x00 0x88 0x12 # CHECK: mflo $17
 0x00 0x00 0x98 0x10 # CHECK: mfhi $19
 0x00 0x00 0xe8 0x10 # CHECK: mfhi $sp
 0x00 0x00 0x3c 0x80 # CHECK: sll $7, $zero, 18
 0x00 0x00 0x88 0x12 # CHECK: mflo $17
 0x00 0x00 0x98 0x10 # CHECK: mfhi $19
 0x00 0x00 0xe8 0x10 # CHECK: mfhi $sp
+0x00 0x02 0x01 0x00 # CHECK: sll $zero, $2, 4
+0x00 0x02 0x10 0x22 # CHECK: neg $2, $2
 0x00 0x02 0x10 0x23 # CHECK: negu $2, $2
 0x00 0x02 0x11 0xc2 # CHECK: srl $2, $2, 7
 0x00 0x02 0x11 0xc2 # CHECK: srl $2, $2, 7
 0x00 0x02 0x10 0x23 # CHECK: negu $2, $2
 0x00 0x02 0x11 0xc2 # CHECK: srl $2, $2, 7
 0x00 0x02 0x11 0xc2 # CHECK: srl $2, $2, 7
 0x00 0x07 0x3c 0x80 # CHECK: sll $7, $7, 18
 0x00 0x11 0x8b 0xc3 # CHECK: sra $17, $17, 15
 0x00 0x17 0x8b 0xc3 # CHECK: sra $17, $23, 15
 0x00 0x07 0x3c 0x80 # CHECK: sll $7, $7, 18
 0x00 0x11 0x8b 0xc3 # CHECK: sra $17, $17, 15
 0x00 0x17 0x8b 0xc3 # CHECK: sra $17, $23, 15
+0x00 0x28 0x40 0x0d # CHECK: break 40, 256
+0x00 0x3b 0x00 0x4c # CHECK: syscall 60417
 0x00 0x4c 0xb8 0x24 # CHECK: and $23, $2, $12
 0x00 0x4c 0xb8 0x24 # CHECK: and $23, $2, $12
+0x00 0x80 0xf0 0x09 # CHECK: jalr $fp, $4
 0x00 0x80 0xf0 0x21 # CHECK: move $fp, $4
 0x00 0x80 0xf0 0x25 # CHECK: move $fp, $4
 0x00 0x80 0xf0 0x21 # CHECK: move $fp, $4
 0x00 0x80 0xf0 0x25 # CHECK: move $fp, $4
+0x00 0x80 0xf8 0x09 # CHECK: jalr $4
 0x00 0x86 0x48 0x21 # CHECK: addu $9, $4, $6
 0x00 0x94 0xc8 0x06 # CHECK: srlv $25, $20, $4
 0x00 0x94 0xc8 0x06 # CHECK: srlv $25, $20, $4
 0x00 0x9e 0x90 0x26 # CHECK: xor $18, $4, $fp
 0x00 0xc0 0xc8 0x21 # CHECK: move $25, $6
 0x00 0xc0 0xc8 0x25 # CHECK: move $25, $6
 0x00 0x86 0x48 0x21 # CHECK: addu $9, $4, $6
 0x00 0x94 0xc8 0x06 # CHECK: srlv $25, $20, $4
 0x00 0x94 0xc8 0x06 # CHECK: srlv $25, $20, $4
 0x00 0x9e 0x90 0x26 # CHECK: xor $18, $4, $fp
 0x00 0xc0 0xc8 0x21 # CHECK: move $25, $6
 0x00 0xc0 0xc8 0x25 # CHECK: move $25, $6
+0x00 0xdd 0x00 0x0d # CHECK: break 221
+0x01 0x00 0x20 0x27 # CHECK: not $4, $8
 0x01 0x20 0x38 0x04 # CHECK: sllv $7, $zero, $9
 0x01 0x20 0x38 0x04 # CHECK: sllv $7, $zero, $9
 0x01 0x32 0x00 0x19 # CHECK: multu $9, $18
 0x01 0x20 0x38 0x04 # CHECK: sllv $7, $zero, $9
 0x01 0x20 0x38 0x04 # CHECK: sllv $7, $zero, $9
 0x01 0x32 0x00 0x19 # CHECK: multu $9, $18
 0x04 0x11 0x14 0x9b # CHECK: bal 21104
 0x04 0xd0 0x14 0x9b # CHECK: bltzal $6, 21104
 0x04 0xd1 0x14 0x9b # CHECK: bgezal $6, 21104
 0x04 0x11 0x14 0x9b # CHECK: bal 21104
 0x04 0xd0 0x14 0x9b # CHECK: bltzal $6, 21104
 0x04 0xd1 0x14 0x9b # CHECK: bgezal $6, 21104
+0x08 0x00 0x00 0x01 # CHECK: j 4
+0x09 0x33 0x00 0x2a # CHECK: j 80478376
+0x0b 0x2a 0xd1 0x44 # CHECK: j 212550928
+0x10 0x00 0x00 0x02 # CHECK: b 8
+0x10 0x00 0x00 0x05 # CHECK: b 20
+0x10 0x00 0x28 0x09 # CHECK: b 40996
+0x10 0x04 0x14 0xe1 # CHECK: beq $zero, $4, 21380
+0x11 0x00 0x00 0xc3 # CHECK: beqz $8, 780
+0x12 0x88 0x00 0x16 # CHECK: beq $20, $8, 88
+0x15 0x00 0x88 0x13 # CHECK: bnez $8, -122804
+0x15 0x8a 0x9f 0x89 # CHECK: bne $12, $10, -98780
 0x21 0x08 0xff 0xfe # CHECK: addi $8, $8, -2
 0x21 0x2d 0x66 0xd2 # CHECK: addi $13, $9, 26322
 0x21 0xad 0xe6 0x90 # CHECK: addi $13, $13, -6512
 0x21 0x08 0xff 0xfe # CHECK: addi $8, $8, -2
 0x21 0x2d 0x66 0xd2 # CHECK: addi $13, $9, 26322
 0x21 0xad 0xe6 0x90 # CHECK: addi $13, $13, -6512
 0x23 0x18 0xe3 0xe7 # CHECK: addi $24, $24, -7193
 0x24 0x00 0x8b 0x3f # CHECK: addiu $zero, $zero, -29889
 0x24 0x01 0x8b 0xb3 # CHECK: addiu $1, $zero, -29773
 0x23 0x18 0xe3 0xe7 # CHECK: addi $24, $24, -7193
 0x24 0x00 0x8b 0x3f # CHECK: addiu $zero, $zero, -29889
 0x24 0x01 0x8b 0xb3 # CHECK: addiu $1, $zero, -29773
+0x24 0x11 0x8b 0xb3 # CHECK: addiu $17, $zero, -29773
 0x25 0x29 0x00 0x0a # CHECK: addiu $9, $9, 10
 0x29 0x51 0x25 0x11 # CHECK: slti $17, $10, 9489
 0x25 0x29 0x00 0x0a # CHECK: addiu $9, $9, 10
 0x29 0x51 0x25 0x11 # CHECK: slti $17, $10, 9489
+0x2a 0x19 0xea 0x30 # CHECK: slti $25, $16, -5584
 0x2f 0x38 0xc3 0x55 # CHECK: sltiu $24, $25, -15531
 0x2f 0x39 0xc3 0x55 # CHECK: sltiu $25, $25, -15531
 0x30 0x42 0x00 0x04 # CHECK: andi $2, $2, 4
 0x34 0x42 0x00 0x04 # CHECK: ori $2, $2, 4
 0x2f 0x38 0xc3 0x55 # CHECK: sltiu $24, $25, -15531
 0x2f 0x39 0xc3 0x55 # CHECK: sltiu $25, $25, -15531
 0x30 0x42 0x00 0x04 # CHECK: andi $2, $2, 4
 0x34 0x42 0x00 0x04 # CHECK: ori $2, $2, 4
+0x3c 0x00 0x00 0x80 # CHECK: lui $zero, 128
 0x42 0x00 0x00 0x01 # CHECK: tlbr
 0x42 0x00 0x00 0x02 # CHECK: tlbwi
 0x42 0x00 0x00 0x06 # CHECK: tlbwr
 0x42 0x00 0x00 0x01 # CHECK: tlbr
 0x42 0x00 0x00 0x02 # CHECK: tlbwi
 0x42 0x00 0x00 0x06 # CHECK: tlbwr
 0xcf 0x4a 0x81 0xf7 # CHECK: lwc3 $10, -32265($26)
 0xe7 0x06 0xde 0xef # CHECK: swc1 $f6, -8465($24)
 0xea 0x19 0x61 0x30 # CHECK: swc2 $25, 24880($16)
 0xcf 0x4a 0x81 0xf7 # CHECK: lwc3 $10, -32265($26)
 0xe7 0x06 0xde 0xef # CHECK: swc1 $f6, -8465($24)
 0xea 0x19 0x61 0x30 # CHECK: swc2 $25, 24880($16)
+0xee 0x28 0x3c 0x00 # CHECK: swc3 $8, 15360($17)