1# RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mattr=dspr2 | FileCheck %s 2 3 0x7c 0x02 0x0a 0x52 # CHECK: absq_s.ph $1, $2 4 0x7c 0x04 0x18 0x52 # CHECK: absq_s.qb $3, $4 5 0x7c 0x06 0x2c 0x52 # CHECK: absq_s.w $5, $6 6 0x7d 0x09 0x3a 0x90 # CHECK: addq.ph $7, $8, $9 7 0x7d 0x6c 0x53 0x90 # CHECK: addq_s.ph $10, $11, $12 8 0x7d 0xcf 0x6d 0x90 # CHECK: addq_s.w $13, $14, $15 9 0x7e 0x32 0x82 0x18 # CHECK: addqh.ph $16, $17, $18 10 0x7e 0x95 0x9a 0x98 # CHECK: addqh_r.ph $19, $20, $21 11 0x7e 0xf8 0xb4 0x18 # CHECK: addqh.w $22, $23, $24 12 0x7f 0x5b 0xcc 0x98 # CHECK: addqh_r.w $25, $26, $27 13 0x7f 0xbe 0xe4 0x10 # CHECK: addsc $gp, $sp, $fp 14 0x7c 0x22 0xfa 0x10 # CHECK: addu.ph $ra, $1, $2 15 0x7c 0x85 0x1b 0x10 # CHECK: addu_s.ph $3, $4, $5 16 0x7c 0xe8 0x30 0x10 # CHECK: addu.qb $6, $7, $8 17 0x7d 0x4b 0x49 0x10 # CHECK: addu_s.qb $9, $10, $11 18 0x7d 0xae 0x64 0x50 # CHECK: addwc $12, $13, $14 19 0x7e 0x11 0x78 0x18 # CHECK: adduh.qb $15, $16, $17 20 0x7e 0x74 0x90 0x98 # CHECK: adduh_r.qb $18, $19, $20 21 0x7e 0xd5 0x00 0x31 # CHECK: append $21, $22, 0 22 0x7f 0x17 0x1c 0x31 # CHECK: balign $23, $24, 3 23 0x7c 0x1a 0xce 0xd2 # CHECK: bitrev $25, $26 24 0x04 0x1c 0x14 0x9b # CHECK: bposge32 21104 25 0x7f 0x7c 0x02 0x11 # CHECK: cmp.eq.ph $27, $gp 26 0x7f 0xbe 0x02 0x51 # CHECK: cmp.lt.ph $sp, $fp 27 0x7f 0xe1 0x02 0x91 # CHECK: cmp.le.ph $ra, $1 28 0x7c 0x64 0x16 0x11 # CHECK: cmpgdu.eq.qb $2, $3, $4 29 0x7c 0xc7 0x2e 0x51 # CHECK: cmpgdu.lt.qb $5, $6, $7 30 0x7d 0x2a 0x46 0x91 # CHECK: cmpgdu.le.qb $8, $9, $10 31 0x7d 0x8d 0x59 0x11 # CHECK: cmpgu.eq.qb $11, $12, $13 32 0x7d 0xf0 0x71 0x51 # CHECK: cmpgu.lt.qb $14, $15, $16 33 0x7e 0x53 0x89 0x91 # CHECK: cmpgu.le.qb $17, $18, $19 34 0x7e 0x95 0x00 0x11 # CHECK: cmpu.eq.qb $20, $21 35 0x7e 0xd7 0x00 0x51 # CHECK: cmpu.lt.qb $22, $23 36 0x7f 0x19 0x00 0x91 # CHECK: cmpu.le.qb $24, $25 37 0x7f 0x5b 0x00 0x30 # CHECK: dpa.w.ph $ac0, $26, $27 38 0x7c 0x22 0x09 0x30 # CHECK: dpaq_s.w.ph $ac1, $1, $2 39 0x7c 0x64 0x13 0x30 # CHECK: dpaq_sa.l.w $ac2, $3, $4 40 0x7c 0xa6 0x1e 0x30 # CHECK: dpaqx_s.w.ph $ac3, $5, $6 41 0x7c 0xe8 0x06 0xb0 # CHECK: dpaqx_sa.w.ph $ac0, $7, $8 42 0x7d 0x2a 0x08 0xf0 # CHECK: dpau.h.qbl $ac1, $9, $10 43 0x7d 0x6c 0x09 0xf0 # CHECK: dpau.h.qbr $ac1, $11, $12 44 0x7d 0xae 0x12 0x30 # CHECK: dpax.w.ph $ac2, $13, $14 45 0x7d 0xf0 0x18 0x70 # CHECK: dps.w.ph $ac3, $15, $16 46 0x7e 0x32 0x01 0x70 # CHECK: dpsq_s.w.ph $ac0, $17, $18 47 0x7e 0x74 0x0b 0x70 # CHECK: dpsq_sa.l.w $ac1, $19, $20 48 0x7c 0x22 0x16 0x70 # CHECK: dpsqx_s.w.ph $ac2, $1, $2 49 0x7c 0x64 0x1e 0xf0 # CHECK: dpsqx_sa.w.ph $ac3, $3, $4 50 0x7c 0xa6 0x02 0xf0 # CHECK: dpsu.h.qbl $ac0, $5, $6 51 0x7c 0xe8 0x0b 0xf0 # CHECK: dpsu.h.qbr $ac1, $7, $8 52 0x7d 0x2a 0x12 0x70 # CHECK: dpsx.w.ph $ac2, $9, $10 53 0x7f 0xe1 0x00 0xb8 # CHECK: extp $1, $ac0, 31 54 0x7c 0x02 0x0a 0xb8 # CHECK: extpdp $2, $ac1, 0 55 0x7c 0x83 0x12 0xf8 # CHECK: extpdpv $3, $ac2, $4 56 0x7c 0xc5 0x18 0xf8 # CHECK: extpv $5, $ac3, $6 57 0x7f 0xe7 0x00 0x38 # CHECK: extr.w $7, $ac0, 31 58 0x7d 0xe8 0x09 0x38 # CHECK: extr_r.w $8, $ac1, 15 59 0x7c 0xe9 0x11 0xb8 # CHECK: extr_rs.w $9, $ac2, 7 60 0x7c 0x6a 0x1b 0xb8 # CHECK: extr_s.h $10, $ac3, 3 61 0x7d 0x8b 0x00 0x78 # CHECK: extrv.w $11, $ac0, $12 62 0x7d 0xcd 0x09 0x78 # CHECK: extrv_r.w $13, $ac1, $14 63 0x7e 0x0f 0x11 0xf8 # CHECK: extrv_rs.w $15, $ac2, $16 64 0x7e 0x51 0x1b 0xf8 # CHECK: extrv_s.h $17, $ac3, $18 65 0x7e 0x93 0x00 0x0c # CHECK: insv $19, $20 66 0x7f 0x54 0x51 0x8a # CHECK: lbux $10, $20($26) 67 0x7f 0x75 0x59 0x0a # CHECK: lhx $11, $21($27) 68 0x7f 0x96 0x60 0x0a # CHECK: lwx $12, $22($gp) 69 0x70 0xc7 0x08 0x00 # CHECK: madd $ac1, $6, $7 70 0x71 0x09 0x08 0x01 # CHECK: maddu $ac1, $8, $9 71 0x70 0xc7 0x00 0x00 # CHECK: madd $6, $7 72 0x71 0x09 0x00 0x01 # CHECK: maddu $8, $9 73 0x7c 0x64 0x15 0x30 # CHECK: maq_s.w.phl $ac2, $3, $4 74 0x7c 0xa6 0x1c 0x30 # CHECK: maq_sa.w.phl $ac3, $5, $6 75 0x7c 0xe8 0x05 0xb0 # CHECK: maq_s.w.phr $ac0, $7, $8 76 0x7d 0x2a 0x0c 0xb0 # CHECK: maq_sa.w.phr $ac1, $9, $10 77 0x00 0x20 0x70 0x10 # CHECK: mfhi $14, $ac1 78 0x00 0x20 0x78 0x12 # CHECK: mflo $15, $ac1 79 0x00 0x00 0x70 0x10 # CHECK: mfhi $14 80 0x00 0x00 0x78 0x12 # CHECK: mflo $15 81 0x7d 0x8d 0x5c 0x90 # CHECK: modsub $11, $12, $13 82 0x71 0x4b 0x18 0x04 # CHECK: msub $ac3, $10, $11 83 0x71 0x8d 0x10 0x05 # CHECK: msubu $ac2, $12, $13 84 0x71 0x4b 0x00 0x04 # CHECK: msub $10, $11 85 0x71 0x8d 0x00 0x05 # CHECK: msubu $12, $13 86 0x02 0x00 0x18 0x11 # CHECK: mthi $16, $ac3 87 0x02 0x00 0x00 0x11 # CHECK: mthi $16 88 0x7d 0xc0 0x17 0xf8 # CHECK: mthlip $14, $ac2 89 0x02 0x20 0x10 0x13 # CHECK: mtlo $17, $ac2 90 0x02 0x20 0x00 0x13 # CHECK: mtlo $17 91 0x7e 0x11 0x7b 0x18 # CHECK: mul.ph $15, $16, $17 92 0x7e 0x74 0x93 0x98 # CHECK: mul_s.ph $18, $19, $20 93 0x7e 0xd7 0xaf 0x10 # CHECK: muleq_s.w.phl $21, $22, $23 94 0x7f 0x3a 0xc7 0x50 # CHECK: muleq_s.w.phr $24, $25, $26 95 0x7f 0x9d 0xd9 0x90 # CHECK: muleu_s.ph.qbl $27, $gp, $sp 96 0x7f 0xe1 0xf1 0xd0 # CHECK: muleu_s.ph.qbr $fp, $ra, $1 97 0x7c 0x64 0x17 0xd0 # CHECK: mulq_rs.ph $2, $3, $4 98 0x7c 0xc7 0x2d 0xd8 # CHECK: mulq_rs.w $5, $6, $7 99 0x7d 0x2a 0x47 0x90 # CHECK: mulq_s.ph $8, $9, $10 100 0x7d 0x8d 0x5d 0x98 # CHECK: mulq_s.w $11, $12, $13 101 0x7d 0xcf 0x18 0xb0 # CHECK: mulsa.w.ph $ac3, $14, $15 102 0x7e 0x11 0x01 0xb0 # CHECK: mulsaq_s.w.ph $ac0, $16, $17 103 0x00 0x43 0x18 0x18 # CHECK: mult $ac3, $2, $3 104 0x00 0x85 0x10 0x19 # CHECK: multu $ac2, $4, $5 105 0x00 0x43 0x00 0x18 # CHECK: mult $2, $3 106 0x00 0x85 0x00 0x19 # CHECK: multu $4, $5 107 0x7e 0x74 0x93 0x91 # CHECK: packrl.ph $18, $19, $20 108 0x7d 0xe3 0x3a 0xd1 # CHECK: pick.ph $7, $15, $3 109 0x7c 0x88 0x10 0xd1 # CHECK: pick.qb $2, $4, $8 110 0x7c 0x15 0xa3 0x12 # CHECK: preceq.w.phl $20, $21 111 0x7c 0x16 0xab 0x52 # CHECK: preceq.w.phr $21, $22 112 0x7c 0x17 0xb1 0x12 # CHECK: precequ.ph.qbl $22, $23 113 0x7c 0x19 0xc1 0x92 # CHECK: precequ.ph.qbla $24, $25 114 0x7c 0x18 0xb9 0x52 # CHECK: precequ.ph.qbr $23, $24 115 0x7c 0x1a 0xc9 0xd2 # CHECK: precequ.ph.qbra $25, $26 116 0x7c 0x1b 0xd7 0x12 # CHECK: preceu.ph.qbl $26, $27 117 0x7c 0x1d 0xe7 0x92 # CHECK: preceu.ph.qbla $gp, $sp 118 0x7c 0x1c 0xdf 0x52 # CHECK: preceu.ph.qbr $27, $gp 119 0x7c 0x1e 0xef 0xd2 # CHECK: preceu.ph.qbra $sp, $fp 120 0x7f 0x19 0xbb 0x51 # CHECK: precr.qb.ph $23, $24, $25 121 0x7f 0x38 0x07 0x91 # CHECK: precr_sra.ph.w $24, $25, 0 122 0x7f 0x38 0xff 0x91 # CHECK: precr_sra.ph.w $24, $25, 31 123 0x7f 0x59 0x07 0xd1 # CHECK: precr_sra_r.ph.w $25, $26, 0 124 0x7f 0x59 0xff 0xd1 # CHECK: precr_sra_r.ph.w $25, $26, 31 125 0x7e 0x53 0x8d 0x11 # CHECK: precrq.ph.w $17, $18, $19 126 0x7e 0x32 0x83 0x11 # CHECK: precrq.qb.ph $16, $17, $18 127 0x7e 0x95 0x9b 0xd1 # CHECK: precrqu_s.qb.ph $19, $20, $21 128 0x7e 0x74 0x95 0x51 # CHECK: precrq_rs.ph.w $18, $19, $20 129 0x7c 0x41 0x18 0x71 # CHECK: prepend $1, $2, 3 130 0x7c 0x40 0x0d 0x10 # CHECK: raddu.w.qb $1, $2 131 0x7d 0x00 0x2c 0xb8 # CHECK: rddsp $5, 256 132 0x7c 0x0c 0x12 0x92 # CHECK: repl.ph $2, 12 133 0x7c 0x55 0x08 0x92 # CHECK: repl.qb $1, 85 134 0x7c 0x02 0x0a 0xd2 # CHECK: replv.ph $1, $2 135 0x7c 0x02 0x08 0xd2 # CHECK: replv.qb $1, $2 136 0x7d 0x00 0x0e 0xb8 # CHECK: shilo $ac1, 16 137 0x7c 0x40 0x0e 0xf8 # CHECK: shilov $ac1, $2 138 0x7c 0x62 0x0a 0x13 # CHECK: shll.ph $1, $2, 3 139 0x7c 0x62 0x0b 0x13 # CHECK: shll_s.ph $1, $2, 3 140 0x7c 0x62 0x08 0x13 # CHECK: shll.qb $1, $2, 3 141 0x7c 0x62 0x0a 0x93 # CHECK: shllv.ph $1, $2, $3 142 0x7c 0x62 0x0b 0x93 # CHECK: shllv_s.ph $1, $2, $3 143 0x7c 0x62 0x08 0x93 # CHECK: shllv.qb $1, $2, $3 144 0x7c 0x62 0x0d 0x93 # CHECK: shllv_s.w $1, $2, $3 145 0x7c 0x62 0x0d 0x13 # CHECK: shll_s.w $1, $2, 3 146 0x7c 0x50 0x11 0x13 # CHECK: shra.qb $2, $16, 2 147 0x7c 0x50 0x11 0x53 # CHECK: shra_r.qb $2, $16, 2 148 0x7c 0x22 0x2a 0x53 # CHECK: shra.ph $5, $2, 1 149 0x7c 0x22 0x2b 0x53 # CHECK: shra_r.ph $5, $2, 1 150 0x7c 0x62 0x0a 0xd3 # CHECK: shrav.ph $1, $2, $3 151 0x7c 0x62 0x0b 0xd3 # CHECK: shrav_r.ph $1, $2, $3 152 0x7c 0x62 0x09 0x93 # CHECK: shrav.qb $1, $2, $3 153 0x7c 0x62 0x09 0xd3 # CHECK: shrav_r.qb $1, $2, $3 154 0x7c 0x62 0x0d 0xd3 # CHECK: shrav_r.w $1, $2, $3 155 0x7c 0x22 0x0d 0x53 # CHECK: shra_r.w $1, $2, 1 156 0x7c 0x42 0x0e 0x53 # CHECK: shrl.ph $1, $2, 2 157 0x7c 0x42 0x08 0x53 # CHECK: shrl.qb $1, $2, 2 158 0x7c 0x62 0x0e 0xd3 # CHECK: shrlv.ph $1, $2, $3 159 0x7c 0x62 0x08 0xd3 # CHECK: shrlv.qb $1, $2, $3 160 0x7c 0x43 0x0a 0xd0 # CHECK: subq.ph $1, $2, $3 161 0x7c 0x43 0x0b 0xd0 # CHECK: subq_s.ph $1, $2, $3 162 0x7c 0x43 0x0d 0xd0 # CHECK: subq_s.w $1, $2, $3 163 0x7c 0x43 0x0a 0x58 # CHECK: subqh.ph $1, $2, $3 164 0x7c 0x43 0x0a 0xd8 # CHECK: subqh_r.ph $1, $2, $3 165 0x7c 0x43 0x0c 0x58 # CHECK: subqh.w $1, $2, $3 166 0x7c 0x43 0x0c 0xd8 # CHECK: subqh_r.w $1, $2, $3 167 0x7c 0x49 0x32 0x50 # CHECK: subu.ph $6, $2, $9 168 0x7c 0x64 0x13 0x50 # CHECK: subu_s.ph $2, $3, $4 169 0x7c 0x43 0x08 0x50 # CHECK: subu.qb $1, $2, $3 170 0x7c 0x43 0x09 0x50 # CHECK: subu_s.qb $1, $2, $3 171 0x7c 0x43 0x08 0x58 # CHECK: subuh.qb $1, $2, $3 172 0x7c 0x43 0x08 0xd8 # CHECK: subuh_r.qb $1, $2, $3 173 0x7c 0x20 0x04 0xf8 # CHECK: wrdsp $1, 0 174