1# source file to test assembly of MIPS DSP ASE for MIPS32 instructions 2 3 .set noreorder 4 .set noat 5 6 .text 7text_label: 8 9 addq.ph $0,$1,$2 10 addq_s.ph $1,$2,$3 11 addq_s.w $2,$3,$4 12 addu.qb $3,$4,$5 13 addu_s.qb $4,$5,$6 14 subq.ph $5,$6,$7 15 subq_s.ph $6,$7,$8 16 subq_s.w $7,$8,$9 17 subu.qb $8,$9,$10 18 subu_s.qb $9,$10,$11 19 addsc $10,$11,$12 20 addwc $11,$12,$13 21 modsub $12,$13,$14 22 raddu.w.qb $13,$14 23 absq_s.ph $14,$15 24 absq_s.w $15,$16 25 precrq.qb.ph $16,$17,$18 26 precrq.ph.w $17,$18,$19 27 precrq_rs.ph.w $18,$19,$20 28 precrqu_s.qb.ph $19,$20,$21 29 preceq.w.phl $20,$21 30 preceq.w.phr $21,$22 31 precequ.ph.qbl $22,$23 32 precequ.ph.qbr $23,$24 33 precequ.ph.qbla $24,$25 34 precequ.ph.qbra $25,$26 35 preceu.ph.qbl $26,$27 36 preceu.ph.qbr $27,$28 37 preceu.ph.qbla $28,$29 38 preceu.ph.qbra $29,$30 39 shll.qb $30,$31,-1 40 shll.qb $30,$31,0 41 shll.qb $30,$31,7 42 shll.qb $30,$31,8 43 shllv.qb $31,$0,$1 44 shll.ph $0,$1,-1 45 shll.ph $0,$1,0 46 shll.ph $0,$1,15 47 shll.ph $0,$1,16 48 shllv.ph $1,$2,$3 49 shll_s.ph $2,$3,-1 50 shll_s.ph $2,$3,0 51 shll_s.ph $2,$3,15 52 shll_s.ph $2,$3,16 53 shllv_s.ph $3,$4,$5 54 shll_s.w $4,$5,-1 55 shll_s.w $4,$5,0 56 shll_s.w $4,$5,31 57 shll_s.w $4,$5,32 58 shllv_s.w $5,$6,$7 59 shrl.qb $6,$7,-1 60 shrl.qb $6,$7,0 61 shrl.qb $6,$7,7 62 shrl.qb $6,$7,8 63 shrlv.qb $7,$8,$9 64 shra.ph $8,$9,-1 65 shra.ph $8,$9,0 66 shra.ph $8,$9,15 67 shra.ph $8,$9,16 68 shrav.ph $9,$10,$11 69 shra_r.ph $10,$11,-1 70 shra_r.ph $10,$11,0 71 shra_r.ph $10,$11,15 72 shra_r.ph $10,$11,16 73 shrav_r.ph $11,$12,$13 74 shra_r.w $12,$13,-1 75 shra_r.w $12,$13,0 76 shra_r.w $12,$13,31 77 shra_r.w $12,$13,32 78 shrav_r.w $13,$14,$15 79 muleu_s.ph.qbl $14,$15,$16 80 muleu_s.ph.qbr $15,$16,$17 81 mulq_rs.ph $16,$17,$18 82 muleq_s.w.phl $17,$18,$19 83 muleq_s.w.phr $18,$19,$20 84 dpau.h.qbl $ac0,$19,$20 85 dpau.h.qbr $ac1,$20,$21 86 dpsu.h.qbl $ac2,$21,$22 87 dpsu.h.qbr $ac3,$22,$23 88 dpaq_s.w.ph $ac0,$23,$24 89 dpsq_s.w.ph $ac1,$24,$25 90 mulsaq_s.w.ph $ac2,$25,$26 91 dpaq_sa.l.w $ac3,$26,$27 92 dpsq_sa.l.w $ac0,$27,$28 93 maq_s.w.phl $ac1,$28,$29 94 maq_s.w.phr $ac2,$29,$30 95 maq_sa.w.phl $ac3,$30,$31 96 maq_sa.w.phr $ac0,$31,$0 97 bitrev $0,$1 98 insv $1,$2 99 repl.qb $2,-1 100 repl.qb $2,0 101 repl.qb $2,255 102 repl.qb $2,256 103 replv.qb $3,$4 104 repl.ph $4,-513 105 repl.ph $4,-512 106 repl.ph $4,511 107 repl.ph $4,512 108 replv.ph $5,$6 109 cmpu.eq.qb $6,$7 110 cmpu.lt.qb $7,$8 111 cmpu.le.qb $8,$9 112 cmpgu.eq.qb $9,$10,$11 113 cmpgu.lt.qb $10,$11,$12 114 cmpgu.le.qb $11,$12,$13 115 cmp.eq.ph $12,$13 116 cmp.lt.ph $13,$14 117 cmp.le.ph $14,$15 118 pick.qb $15,$16,$17 119 pick.ph $16,$17,$18 120 packrl.ph $17,$18,$19 121 extr.w $18,$ac1,-1 122 extr.w $18,$ac1,0 123 extr.w $18,$ac1,31 124 extr.w $18,$ac1,32 125 extr_r.w $19,$ac2,-1 126 extr_r.w $19,$ac2,0 127 extr_r.w $19,$ac2,31 128 extr_r.w $19,$ac2,32 129 extr_rs.w $20,$ac3,-1 130 extr_rs.w $20,$ac3,0 131 extr_rs.w $20,$ac3,31 132 extr_rs.w $20,$ac3,32 133 extr_s.h $21,$ac0,-1 134 extr_s.h $21,$ac0,0 135 extr_s.h $21,$ac0,31 136 extr_s.h $21,$ac0,32 137 extrv_s.h $22,$ac1,$23 138 extrv.w $23,$ac2,$24 139 extrv_r.w $24,$ac3,$25 140 extrv_rs.w $25,$ac0,$26 141 extp $26,$ac1,-1 142 extp $26,$ac1,0 143 extp $26,$ac1,31 144 extp $26,$ac1,32 145 extpv $27,$ac2,$28 146 extpdp $28,$ac3,-1 147 extpdp $28,$ac3,0 148 extpdp $28,$ac3,31 149 extpdp $28,$ac3,32 150 extpdpv $29,$ac0,$30 151 shilo $ac1,-33 152 shilo $ac1,-32 153 shilo $ac1,31 154 shilo $ac1,32 155 shilov $ac2,$30 156 mthlip $31,$ac3 157 mfhi $0,$ac0 158 mflo $1,$ac1 159 mthi $2,$ac2 160 mtlo $3,$ac3 161 wrdsp $4,-1 162 wrdsp $4,0 163 wrdsp $4,63 164 wrdsp $4,64 165 wrdsp $5 166 rddsp $6,-1 167 rddsp $6,0 168 rddsp $6,63 169 rddsp $6,64 170 rddsp $7 171 lbux $8,$9($10) 172 lhx $9,$10($11) 173 lwx $10,$11($12) 174 bposge32 text_label 175 nop 176 177# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ... 178 .space 8 179