[mips][microMIPS] Implement TEQ, TGE, TGEU, TLT, TLTU and TNE instructions
[oota-llvm.git] / test / MC / Disassembler / Mips / micromips32r6.txt
index a2691ee6bc3a71b3b96d0a15edf2287e6ac57d94..fe28c3d281b27b72a3de6b33729ce6261c96657a 100644 (file)
@@ -8,6 +8,24 @@
 
 0x78 0x80 0x00 0x19 # CHECK: addiupc $4, 100
 
+0x6f 0x83 # CHECK: addiur1sp $7, 4
+
+0x6f 0x7e # CHECK: addiur2 $6, $7, -1
+
+0x6f 0x76 # CHECK: addiur2 $6, $7, 12
+
+0x4c 0xfc # CHECK: addius5 $7, -2
+
+0x4f 0xff # CHECK: addiusp -1028
+
+0x4f 0xfd # CHECK: addiusp -1032
+
+0x4c 0x01 # CHECK: addiusp 1024
+
+0x4c 0x03 # CHECK: addiusp 1028
+
+0x4f 0xf9 # CHECK: addiusp -16
+
 0x78 0x7f 0x00 0x38 # CHECK: aluipc $3, 56
 
 0x78 0x7e 0xff 0xff # CHECK: auipc $3, -1
 
 0x94 0x37 0x96 0xb8 # CHECK: bc 14572256
 
+0xcc 0x42 # CHECK: bc16 132
+
+0x8f 0x0a # CHECK: beqzc16 $6, 20
+
+0xaf 0x0a # CHECK: bnezc16 $6, 20
+
 0x00 0x44 0x0b 0x3c # CHECK: bitswap $4, $2
 
 0x00 0x00 0x00 0x07 # CHECK: break
 
 0x70 0x64 0x04 0xd2 # CHECK: xori $3, $4, 1234
 
+0x18 0x85 0x00 0x06 # CHECK: sb  $4, 6($5)
+
+0x60 0x85 0xa8 0x06 # CHECK: sbe $4, 6($5)
+
+0x60 0x85 0xac 0x06 # CHECK: sce $4, 6($5)
+
+0x38 0x85 0x00 0x06 # CHECK: sh $4, 6($5)
+
+0x60 0x85 0xaa 0x06 # CHECK: she $4, 6($5)
+
+0x60 0x85 0x6c 0x06 # CHECK: lle $4, 6($5)
+
+0x60 0x85 0x6e 0x06 # CHECK: lwe $4, 6($5)
+
+0xfc 0x85 0x00 0x06 # CHECK: lw $4, 6($5)
+
+0x10 0xc0 0x45 0x67 # CHECK: lui $6, 17767
+
 0x00 0x64 0x2b 0x3c # CHECK: seb $3, $4
 
 0x00 0x64 0x3b 0x3c # CHECK: seh $3, $4
 
+0xf8,0xa6,0x00,0x04 # CHECK: sw $5, 4($6)
+
+0x60,0xa4,0xae,0x08 # CHECK: swe $5, 8($4)
+
+0x54 0xa4 0x18 0x30 # CHECK: add.s $f3, $f4, $f5
+
+0x54 0xc4 0x11 0x30 # CHECK: add.d $f2, $f4, $f6
+
+0x54 0xa4 0x18 0x70 # CHECK: sub.s $f3, $f4, $f5
+
+0x54 0xc4 0x11 0x70 # CHECK: sub.d $f2, $f4, $f6
+
+0x54 0xa4 0x18 0xb0 # CHECK: mul.s $f3, $f4, $f5
+
+0x54 0xc4 0x11 0xb0 # CHECK: mul.d $f2, $f4, $f6
+
+0x54 0xa4 0x18 0xf0 # CHECK: div.s $f3, $f4, $f5
+
+0x54 0xc4 0x11 0xf0 # CHECK: div.d $f2, $f4, $f6
+
+0x54 0xa4 0x19 0xb8 # CHECK: maddf.s $f3, $f4, $f5
+
+0x54 0xa4 0x1b 0xb8 # CHECK: maddf.d $f3, $f4, $f5
+
+0x54 0xa4 0x19 0xf8 # CHECK: msubf.s $f3, $f4, $f5
+
+0x54 0xa4 0x1b 0xf8 # CHECK: msubf.d $f3, $f4, $f5
+
+0x54,0xc7,0x00,0x7b # CHECK: mov.s $f6, $f7
+
+0x54,0x86,0x20,0x7b # CHECK: mov.d $f4, $f6
+
+0x54,0xc7,0x0b,0x7b # CHECK: neg.s $f6, $f7
+
+0x54,0x86,0x2b,0x7b # CHECK: neg.d $f4, $f6
+
+0x54 0x64 0x28 0x0b # CHECK: max.s $f5, $f4, $f3
+
+0x54 0x64 0x2a 0x0b # CHECK: max.d $f5, $f4, $f3
+
+0x54 0x64 0x28 0x2b # CHECK: maxa.s $f5, $f4, $f3
+
+0x54 0x64 0x2a 0x2b # CHECK: maxa.d $f5, $f4, $f3
+
+0x54 0x64 0x28 0x03 # CHECK: min.s $f5, $f4, $f3
+
+0x54 0x64 0x2a 0x03 # CHECK: min.d $f5, $f4, $f3
+
+0x54 0x64 0x28 0x23 # CHECK: mina.s $f5, $f4, $f3
+
+0x54 0x64 0x2a 0x23 # CHECK: mina.d $f5, $f4, $f3
+
+0x54 0x83 0x10 0x05 # CHECK: cmp.af.s $f2, $f3, $f4
+
+0x54 0x83 0x10 0x45 # CHECK: cmp.un.s $f2, $f3, $f4
+
+0x54 0x83 0x10 0x85 # CHECK: cmp.eq.s $f2, $f3, $f4
+
+0x54 0x83 0x10 0xc5 # CHECK: cmp.ueq.s $f2, $f3, $f4
+
+0x54 0x83 0x11 0x05 # CHECK: cmp.lt.s $f2, $f3, $f4
+
+0x54 0x83 0x11 0x45 # CHECK: cmp.ult.s $f2, $f3, $f4
+
+0x54 0x83 0x11 0x85 # CHECK: cmp.le.s $f2, $f3, $f4
+
+0x54 0x83 0x11 0xc5 # CHECK: cmp.ule.s $f2, $f3, $f4
+
+0x54 0x83 0x12 0x05 # CHECK: cmp.saf.s $f2, $f3, $f4
+
+0x54 0x83 0x12 0x45 # CHECK: cmp.sun.s $f2, $f3, $f4
+
+0x54 0x83 0x12 0x85 # CHECK: cmp.seq.s $f2, $f3, $f4
+
+0x54 0x83 0x12 0xc5 # CHECK: cmp.sueq.s $f2, $f3, $f4
+
+0x54 0x83 0x13 0x05 # CHECK: cmp.slt.s $f2, $f3, $f4
+
+0x54 0x83 0x13 0x45 # CHECK: cmp.sult.s $f2, $f3, $f4
+
+0x54 0x83 0x13 0x85 # CHECK: cmp.sle.s $f2, $f3, $f4
+
+0x54 0x83 0x13 0xc5 # CHECK: cmp.sule.s $f2, $f3, $f4
+
+0x54 0x83 0x10 0x15 # CHECK: cmp.af.d $f2, $f3, $f4
+
+0x54 0x83 0x10 0x55 # CHECK: cmp.un.d $f2, $f3, $f4
+
+0x54 0x83 0x10 0x95 # CHECK: cmp.eq.d $f2, $f3, $f4
+
+0x54 0x83 0x10 0xd5 # CHECK: cmp.ueq.d $f2, $f3, $f4
+
+0x54 0x83 0x11 0x15 # CHECK: cmp.lt.d $f2, $f3, $f4
+
+0x54 0x83 0x11 0x55 # CHECK: cmp.ult.d $f2, $f3, $f4
+
+0x54 0x83 0x11 0x95 # CHECK: cmp.le.d $f2, $f3, $f4
+
+0x54 0x83 0x11 0xd5 # CHECK: cmp.ule.d $f2, $f3, $f4
+
+0x54 0x83 0x12 0x15 # CHECK: cmp.saf.d $f2, $f3, $f4
+
+0x54 0x83 0x12 0x55 # CHECK: cmp.sun.d $f2, $f3, $f4
+
+0x54 0x83 0x12 0x95 # CHECK: cmp.seq.d $f2, $f3, $f4
+
+0x54 0x83 0x12 0xd5 # CHECK: cmp.sueq.d $f2, $f3, $f4
+
+0x54 0x83 0x13 0x15 # CHECK: cmp.slt.d $f2, $f3, $f4
+
+0x54 0x83 0x13 0x55 # CHECK: cmp.sult.d $f2, $f3, $f4
+
+0x54 0x83 0x13 0x95 # CHECK: cmp.sle.d $f2, $f3, $f4
+
+0x54 0x83 0x13 0xd5 # CHECK: cmp.sule.d $f2, $f3, $f4
+
+0x54 0x64 0x01 0x3b # CHECK: cvt.l.s $f3, $f4
+
+0x54 0x64 0x41 0x3b # CHECK: cvt.l.d $f3, $f4
+
+0x54 0x64 0x09 0x3b # CHECK: cvt.w.s $f3, $f4
+
+0x54 0x64 0x49 0x3b # CHECK: cvt.w.d $f3, $f4
+
+0x54 0x44 0x13 0x7b # CHECK: cvt.d.s $f2, $f4
+
+0x54 0x44 0x33 0x7b # CHECK: cvt.d.w $f2, $f4
+
+0x54 0x44 0x53 0x7b # CHECK: cvt.d.l $f2, $f4
+
+0x54,0x44,0x1b,0x7b # CHECK: cvt.s.d $f2, $f4
+
+0x54,0x64,0x3b,0x7b # CHECK: cvt.s.w $f3, $f4
+
+0x54,0x64,0x5b,0x7b # CHECK: cvt.s.l $f3, $f4
+
+0x54 0x65 0x03 0x7b # CHECK: abs.s $f3, $f5
+
+0x54 0x44 0x23 0x7b # CHECK: abs.d $f2, $f4
+
+0x54 0x65 0x03 0x3b # CHECK: floor.l.s $f3, $f5
+
+0x54 0x44 0x43 0x3b # CHECK: floor.l.d $f2, $f4
+
+0x54 0x65 0x0b 0x3b # CHECK: floor.w.s $f3, $f5
+
+0x54 0x44 0x4b 0x3b # CHECK: floor.w.d $f2, $f4
+
+0x54 0x65 0x13 0x3b # CHECK: ceil.l.s $f3, $f5
+
+0x54 0x44 0x53 0x3b # CHECK: ceil.l.d $f2, $f4
+
+0x54 0x65 0x1b 0x3b # CHECK: ceil.w.s $f3, $f5
+
+0x54 0x44 0x5b 0x3b # CHECK: ceil.w.d $f2, $f4
+
+0x54 0x65 0x23 0x3b # CHECK: trunc.l.s $f3, $f5
+
+0x54 0x44 0x63 0x3b # CHECK: trunc.l.d $f2, $f4
+
+0x54 0x65 0x2b 0x3b # CHECK: trunc.w.s $f3, $f5
+
+0x54 0x44 0x6b 0x3b # CHECK: trunc.w.d $f2, $f4
+
+0x54 0x65 0x0a 0x3b # CHECK: sqrt.s $f3, $f5
+
+0x54 0x44 0x4a 0x3b # CHECK: sqrt.d $f2, $f4
+
+0x54 0x65 0x02 0x3b # CHECK: rsqrt.s $f3, $f5
+
+0x54 0x44 0x42 0x3b # CHECK: rsqrt.d $f2, $f4
+
+0x65 0x88 # CHECK: lw $3, 32($gp)
+
+0x48 0x66 # CHECK: lw $3, 24($sp)
+
+0x6a 0x12 # CHECK: lw16 $4, 8($17)
+
+0x29 0x82 # CHECK: lhu16 $3, 4($16)
+
+0x09 0x94 # CHECK: lbu16 $3, 4($17)
+
+0x09 0x9f # CHECK: lbu16 $3, -1($17)
+
+0x04 0xcc # CHECK: addu16 $6, $17, $4
+
+0x44 0x21 # CHECK: and16 $16, $2
+
+0x2e 0x56 # CHECK: andi16 $4, $5, 8
+
+0x46 0x70 # CHECK: not16 $4, $7
+
+0x45 0xf9 # CHECK: or16 $3, $7
+
+0x25 0xe0 # CHECK: sll16 $3, $6, 8
+
+0x25 0xe1 # CHECK: srl16 $3, $6, 8
+
+0x60 0x25 0xa6 0x08 # CHECK: cachee 1, 8($5)
+
+0x60 0x25 0xa4 0x08 # CHECK: prefe 1, 8($5)
+
+0x01 0x28 0x00 0x3c # CHECK: teq $8, $9
+
+0x00 0xe5 0xf0 0x3c # CHECK: teq $5, $7, 15
+
+0x01 0x47 0x02 0x3c # CHECK: tge $7, $10
+
+0x02 0x67 0xf2 0x3c # CHECK: tge $7, $19, 15
+
+0x03 0x96 0x04 0x3c # CHECK: tgeu $22, $gp
+
+0x01 0xd4 0xf4 0x3c # CHECK: tgeu $20, $14, 15
+
+0x01 0xaf 0x08 0x3c # CHECK: tlt $15, $13
+
+0x02 0x62 0xf8 0x3c # CHECK: tlt $2, $19, 15
+
+0x02 0x0b 0x0a 0x3c # CHECK: tltu $11, $16
+
+0x03 0xb0 0xfa 0x3c # CHECK: tltu $16, $sp, 15
+
+0x02 0x26 0x0c 0x3c # CHECK: tne $6, $17
+
+0x01 0x07 0xfc 0x3c # CHECK: tne $7, $8, 15