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