1 # RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mcpu=mips64r6 -mattr=micromips | FileCheck %s 2 3 0x6f 0x83 # CHECK: addiur1sp $7, 4 4 0x6f 0x7e # CHECK: addiur2 $6, $7, -1 5 0x6f 0x76 # CHECK: addiur2 $6, $7, 12 6 0x4c 0xfc # CHECK: addius5 $7, -2 7 0x4f 0xff # CHECK: addiusp -1028 8 0x4f 0xfd # CHECK: addiusp -1032 9 0x4c 0x01 # CHECK: addiusp 1024 10 0x4c 0x03 # CHECK: addiusp 1028 11 0x4f 0xf9 # CHECK: addiusp -16 12 0xcc 0x42 # CHECK: bc16 132 13 0x8f 0x0a # CHECK: beqzc16 $6, 20 14 0xaf 0x0a # CHECK: bnezc16 $6, 20 15 0x65 0x88 # CHECK: lw $3, 32($gp) 16 0x48 0x66 # CHECK: lw $3, 24($sp) 17 0x6a 0x12 # CHECK: lw16 $4, 8($17) 18 0x29 0x82 # CHECK: lhu16 $3, 4($16) 19 0x09 0x94 # CHECK: lbu16 $3, 4($17) 20 0x09 0x9f # CHECK: lbu16 $3, -1($17) 21 0x45 0x2b # CHECK: jalr $9 22 0x45 0x23 # CHECK: jrc16 $9 23 0x44 0xb3 # CHECK: jrcaddiusp 20 24 0xf0 0x64 0x00 0x05 # CHECK: daui $3, $4, 5 25 0x42 0x23 0x00 0x04 # CHECK: dahi $3, 4 26 0x42 0x03 0x00 0x04 # CHECK: dati $3, 4 27 0x59 0x26 0x30 0xec # CHECK: dext $9, $6, 3, 7 28 0x59 0x26 0x30 0xe4 # CHECK: dextm $9, $6, 3, 7 29 0x59 0x26 0x30 0xd4 # CHECK: dextu $9, $6, 3, 7 30 0x58 0x43 0x25 0x1c # CHECK: dalign $4, $2, $3, 5 31 0x58 0x64 0x29 0x18 # CHECK: ddiv $3, $4, $5 32 0x58 0x64 0x29 0x58 # CHECK: dmod $3, $4, $5 33 0x58 0x64 0x29 0x98 # CHECK: ddivu $3, $4, $5 34 0x58 0x64 0x29 0xd8 # CHECK: dmodu $3, $4, $5 35 0x54 0xa4 0x18 0x30 # CHECK: add.s $f3, $f4, $f5 36 0x54 0xc4 0x11 0x30 # CHECK: add.d $f2, $f4, $f6 37 0x54 0xa4 0x18 0x70 # CHECK: sub.s $f3, $f4, $f5 38 0x54 0xc4 0x11 0x70 # CHECK: sub.d $f2, $f4, $f6 39 0x54 0xa4 0x18 0xb0 # CHECK: mul.s $f3, $f4, $f5 40 0x54 0xc4 0x11 0xb0 # CHECK: mul.d $f2, $f4, $f6 41 0x54 0xa4 0x18 0xf0 # CHECK: div.s $f3, $f4, $f5 42 0x54 0xc4 0x11 0xf0 # CHECK: div.d $f2, $f4, $f6 43 0x54 0xa4 0x19 0xb8 # CHECK: maddf.s $f3, $f4, $f5 44 0x54 0xa4 0x1b 0xb8 # CHECK: maddf.d $f3, $f4, $f5 45 0x54 0xa4 0x19 0xf8 # CHECK: msubf.s $f3, $f4, $f5 46 0x54 0xa4 0x1b 0xf8 # CHECK: msubf.d $f3, $f4, $f5 47 0x54 0xc7 0x00 0x7b # CHECK: mov.s $f6, $f7 48 0x54 0x86 0x20 0x7b # CHECK: mov.d $f4, $f6 49 0x54 0xc7 0x0b 0x7b # CHECK: neg.s $f6, $f7 50 0x54 0x86 0x2b 0x7b # CHECK: neg.d $f4, $f6 51 0x54 0x64 0x28 0x0b # CHECK: max.s $f5, $f4, $f3 52 0x54 0x64 0x2a 0x0b # CHECK: max.d $f5, $f4, $f3 53 0x54 0x64 0x28 0x2b # CHECK: maxa.s $f5, $f4, $f3 54 0x54 0x64 0x2a 0x2b # CHECK: maxa.d $f5, $f4, $f3 55 0x54 0x64 0x28 0x03 # CHECK: min.s $f5, $f4, $f3 56 0x54 0x64 0x2a 0x03 # CHECK: min.d $f5, $f4, $f3 57 0x54 0x64 0x28 0x23 # CHECK: mina.s $f5, $f4, $f3 58 0x54 0x64 0x2a 0x23 # CHECK: mina.d $f5, $f4, $f3 59 0x54 0x83 0x10 0x05 # CHECK: cmp.af.s $f2, $f3, $f4 60 0x54 0x83 0x10 0x45 # CHECK: cmp.un.s $f2, $f3, $f4 61 0x54 0x83 0x10 0x85 # CHECK: cmp.eq.s $f2, $f3, $f4 62 0x54 0x83 0x10 0xc5 # CHECK: cmp.ueq.s $f2, $f3, $f4 63 0x54 0x83 0x11 0x05 # CHECK: cmp.lt.s $f2, $f3, $f4 64 0x54 0x83 0x11 0x45 # CHECK: cmp.ult.s $f2, $f3, $f4 65 0x54 0x83 0x11 0x85 # CHECK: cmp.le.s $f2, $f3, $f4 66 0x54 0x83 0x11 0xc5 # CHECK: cmp.ule.s $f2, $f3, $f4 67 0x54 0x83 0x12 0x05 # CHECK: cmp.saf.s $f2, $f3, $f4 68 0x54 0x83 0x12 0x45 # CHECK: cmp.sun.s $f2, $f3, $f4 69 0x54 0x83 0x12 0x85 # CHECK: cmp.seq.s $f2, $f3, $f4 70 0x54 0x83 0x12 0xc5 # CHECK: cmp.sueq.s $f2, $f3, $f4 71 0x54 0x83 0x13 0x05 # CHECK: cmp.slt.s $f2, $f3, $f4 72 0x54 0x83 0x13 0x45 # CHECK: cmp.sult.s $f2, $f3, $f4 73 0x54 0x83 0x13 0x85 # CHECK: cmp.sle.s $f2, $f3, $f4 74 0x54 0x83 0x13 0xc5 # CHECK: cmp.sule.s $f2, $f3, $f4 75 0x54 0x83 0x10 0x15 # CHECK: cmp.af.d $f2, $f3, $f4 76 0x54 0x83 0x10 0x55 # CHECK: cmp.un.d $f2, $f3, $f4 77 0x54 0x83 0x10 0x95 # CHECK: cmp.eq.d $f2, $f3, $f4 78 0x54 0x83 0x10 0xd5 # CHECK: cmp.ueq.d $f2, $f3, $f4 79 0x54 0x83 0x11 0x15 # CHECK: cmp.lt.d $f2, $f3, $f4 80 0x54 0x83 0x11 0x55 # CHECK: cmp.ult.d $f2, $f3, $f4 81 0x54 0x83 0x11 0x95 # CHECK: cmp.le.d $f2, $f3, $f4 82 0x54 0x83 0x11 0xd5 # CHECK: cmp.ule.d $f2, $f3, $f4 83 0x54 0x83 0x12 0x15 # CHECK: cmp.saf.d $f2, $f3, $f4 84 0x54 0x83 0x12 0x55 # CHECK: cmp.sun.d $f2, $f3, $f4 85 0x54 0x83 0x12 0x95 # CHECK: cmp.seq.d $f2, $f3, $f4 86 0x54 0x83 0x12 0xd5 # CHECK: cmp.sueq.d $f2, $f3, $f4 87 0x54 0x83 0x13 0x15 # CHECK: cmp.slt.d $f2, $f3, $f4 88 0x54 0x83 0x13 0x55 # CHECK: cmp.sult.d $f2, $f3, $f4 89 0x54 0x83 0x13 0x95 # CHECK: cmp.sle.d $f2, $f3, $f4 90 0x54 0x83 0x13 0xd5 # CHECK: cmp.sule.d $f2, $f3, $f4 91 0x54 0x64 0x01 0x3b # CHECK: cvt.l.s $f3, $f4 92 0x54 0x64 0x41 0x3b # CHECK: cvt.l.d $f3, $f4 93 0x54 0x64 0x09 0x3b # CHECK: cvt.w.s $f3, $f4 94 0x54 0x64 0x49 0x3b # CHECK: cvt.w.d $f3, $f4 95 0x54 0x44 0x13 0x7b # CHECK: cvt.d.s $f2, $f4 96 0x54 0x44 0x33 0x7b # CHECK: cvt.d.w $f2, $f4 97 0x54 0x44 0x53 0x7b # CHECK: cvt.d.l $f2, $f4 98 0x54 0x44 0x1b 0x7b # CHECK: cvt.s.d $f2, $f4 99 0x54 0x64 0x3b 0x7b # CHECK: cvt.s.w $f3, $f4 100 0x54 0x64 0x5b 0x7b # CHECK: cvt.s.l $f3, $f4 101 0x54 0x65 0x03 0x7b # CHECK: abs.s $f3, $f5 102 0x54 0x44 0x23 0x7b # CHECK: abs.d $f2, $f4 103 0x54 0x65 0x03 0x3b # CHECK: floor.l.s $f3, $f5 104 0x54 0x44 0x43 0x3b # CHECK: floor.l.d $f2, $f4 105 0x54 0x65 0x0b 0x3b # CHECK: floor.w.s $f3, $f5 106 0x54 0x44 0x4b 0x3b # CHECK: floor.w.d $f2, $f4 107 0x54 0x65 0x13 0x3b # CHECK: ceil.l.s $f3, $f5 108 0x54 0x44 0x53 0x3b # CHECK: ceil.l.d $f2, $f4 109 0x54 0x65 0x1b 0x3b # CHECK: ceil.w.s $f3, $f5 110 0x54 0x44 0x5b 0x3b # CHECK: ceil.w.d $f2, $f4 111 0x54 0x65 0x23 0x3b # CHECK: trunc.l.s $f3, $f5 112 0x54 0x44 0x63 0x3b # CHECK: trunc.l.d $f2, $f4 113 0x54 0x65 0x2b 0x3b # CHECK: trunc.w.s $f3, $f5 114 0x54 0x44 0x6b 0x3b # CHECK: trunc.w.d $f2, $f4 115 0x54 0x65 0x0a 0x3b # CHECK: sqrt.s $f3, $f5 116 0x54 0x44 0x4a 0x3b # CHECK: sqrt.d $f2, $f4 117 0x54 0x65 0x02 0x3b # CHECK: rsqrt.s $f3, $f5 118 0x54 0x44 0x42 0x3b # CHECK: rsqrt.d $f2, $f4 119 0x01 0x28 0x00 0x3c # CHECK: teq $8, $9 120 0x00 0xe5 0xf0 0x3c # CHECK: teq $5, $7, 15 121 0x01 0x47 0x02 0x3c # CHECK: tge $7, $10 122 0x02 0x67 0xf2 0x3c # CHECK: tge $7, $19, 15 123 0x03 0x96 0x04 0x3c # CHECK: tgeu $22, $gp 124 0x01 0xd4 0xf4 0x3c # CHECK: tgeu $20, $14, 15 125 0x01 0xaf 0x08 0x3c # CHECK: tlt $15, $13 126 0x02 0x62 0xf8 0x3c # CHECK: tlt $2, $19, 15 127 0x02 0x0b 0x0a 0x3c # CHECK: tltu $11, $16 128 0x03 0xb0 0xfa 0x3c # CHECK: tltu $16, $sp, 15 129 0x02 0x26 0x0c 0x3c # CHECK: tne $6, $17 130 0x01 0x07 0xfc 0x3c # CHECK: tne $7, $8, 15 131 0x60 0x25 0xa6 0x08 # CHECK: cachee 1, 8($5) 132 0x00 0x64 0xf1 0x7c # CHECK: wrpgpr $3, $4 133 0x00 0x64 0x7b 0x3c # CHECK: wsbh $3, $4 134 0x65 0x88 # CHECK: lw $3, 32($gp) 135 0x48 0x66 # CHECK: lw $3, 24($sp) 136 0x6a 0x12 # CHECK: lw16 $4, 8($17) 137 0x29 0x82 # CHECK: lhu16 $3, 4($16) 138 0x09 0x94 # CHECK: lbu16 $3, 4($17) 139 0x09 0x9f # CHECK: lbu16 $3, -1($17) 140 0x46 0x1B # CHECK: break16 8 141 0xed 0xff # CHECK: li16 $3, -1 142 0x0c 0x65 # CHECK: move16 $3, $5 143 0x46 0x3b # CHECK: sdbbp16 8 144 0x04 0x3b # CHECK: subu16 $5, $16, $3 145 0x44 0xd8 # CHECK: xor16 $17, $5 146 0x45 0x22 # CHECK: lwm16 $16, $17, $ra, 8($sp) 147 0x89 0x84 # CHECK: sb16 $3, 4($16) 148 0xaa 0x14 # CHECK: sh16 $4, 8($17) 149 0xc8 0x9f # CHECK: sw $4, 124($sp) 150 0xea 0x11 # CHECK: sw16 $4, 4($17) 151 0xe8 0x11 # CHECK: sw16 $zero, 4($17) 152 0x45 0x2a # CHECK: swm16 $16, $17, $ra, 8($sp) 153 0x54 0x44 0x12 0x3b # CHECK: recip.s $f2, $f4 154 0x54 0x44 0x52 0x3b # CHECK: recip.d $f2, $f4 155 0x54 0x82 0x00 0x20 # CHECK: rint.s $f2, $f4 156 0x54 0x82 0x02 0x20 # CHECK: rint.d $f2, $f4 157 0x54 0x44 0x33 0x3b # CHECK: round.l.s $f2, $f4 158 0x54 0x44 0x73 0x3b # CHECK: round.l.d $f2, $f4 159 0x54 0x44 0x3b 0x3b # CHECK: round.w.s $f2, $f4 160 0x54 0x44 0x7b 0x3b # CHECK: round.w.d $f2, $f4 161 0x54 0x41 0x08 0xb8 # CHECK: sel.s $f1, $f1, $f2 162 0x54 0x82 0x02 0xb8 # CHECK: sel.d $f0, $f2, $f4 163 0x54 0x62 0x08 0x38 # CHECK: seleqz.s $f1, $f2, $f3 164 0x55 0x04 0x12 0x38 # CHECK: seleqz.d $f2, $f4, $f8 165 0x54 0x62 0x08 0x78 # CHECK: selnez.s $f1, $f2, $f3 166 0x55 0x04 0x12 0x78 # CHECK: selnez.d $f2, $f4, $f8 167 0x54 0x62 0x00 0x60 # CHECK: class.s $f2, $f3 168 0x54 0x82 0x02 0x60 # CHECK: class.d $f2, $f4 169 0x00 0x00 0xe3 0x7c # CHECK: deret 170 0x00 0x00 0x47 0x7c # CHECK: di 171 0x00 0x0f 0x47 0x7c # CHECK: di $15 172