Initial revision
[binutils.git] / gas / testsuite / gas / mips / mips16.s
blob6268fb16506d4b797ed39a6eae2123fd8ce60f41
1 # Test the mips16 instruction set.
3 .set mips16
5 .macro ldst op, reg, base
6 \op \reg,0(\base)
7 \op \reg,1(\base)
8 \op \reg,2(\base)
9 \op \reg,3(\base)
10 \op \reg,4(\base)
11 \op \reg,8(\base)
12 \op \reg,16(\base)
13 \op \reg,32(\base)
14 \op \reg,64(\base)
15 \op \reg,128(\base)
16 \op \reg,256(\base)
17 \op \reg,512(\base)
18 \op \reg,1024(\base)
19 \op \reg,2048(\base)
20 \op \reg,-1(\base)
21 \op \reg,-2(\base)
22 \op \reg,-3(\base)
23 \op \reg,-4(\base)
24 \op \reg,-8(\base)
25 \op \reg,-16(\base)
26 \op \reg,-32(\base)
27 \op \reg,-64(\base)
28 \op \reg,-128(\base)
29 \op \reg,-256(\base)
30 \op \reg,-512(\base)
31 \op \reg,-1024(\base)
32 \op \reg,-2048(\base)
33 .endm
35 .p2align 3
36 data1:
37 .word 0
38 insns1:
39 ldst ld, $2, $3
40 ld $2,data1
41 ld $2,data2
42 ld $2,bar
43 ld $2,quux
44 ldst ld, $2, $sp
45 ldst lwu, $2, $3
46 ldst lw, $2, $3
47 lw $2,data1
48 lw $2,data2
49 lw $2,bar
50 lw $2,quux
51 ldst lw, $2, $sp
52 ldst lh, $2, $3
53 ldst lhu, $2, $3
54 ldst lb, $2, $3
55 ldst lbu, $2, $3
56 ldst sd, $2, $3
57 ldst sd, $2, $sp
58 ldst sd, $31, $sp
59 ldst sw, $2, $3
60 ldst sw, $2, $sp
61 ldst sw, $31, $sp
62 ldst sh, $2, $3
63 ldst sb, $2, $3
65 li $2,0
66 li $2,1
67 li $2,256
69 move $2,$30
70 move $20,$2
72 daddu $2,$3,0
73 daddu $2,$3,1
74 daddu $2,$3,-1
75 daddu $2,$3,16
76 daddu $2,$3,-16
77 daddu $2,$3,$4
78 daddu $2,0
79 daddu $2,1
80 daddu $2,-1
81 daddu $2,32
82 daddu $2,-32
83 daddu $2,128
84 daddu $2,-128
85 dla $2,data1
86 dla $2,data2
87 dla $2,bar
88 dla $2,quux
89 daddu $sp,0
90 daddu $sp,1
91 daddu $sp,-1
92 daddu $sp,256
93 daddu $sp,-256
94 daddu $2,$sp,0
95 daddu $2,$sp,1
96 daddu $2,$sp,-1
97 daddu $2,$sp,32
98 daddu $2,$sp,-32
99 daddu $2,$sp,128
100 daddu $2,$sp,-128
102 addu $2,$3,0
103 addu $2,$3,1
104 addu $2,$3,-1
105 addu $2,$3,16
106 addu $2,$3,-16
107 addu $2,$3,$4
108 addu $2,0
109 addu $2,1
110 addu $2,-1
111 addu $2,32
112 addu $2,-32
113 addu $2,128
114 addu $2,-128
115 la $2,data1
116 la $2,data2
117 la $2,bar
118 la $2,quux
119 addu $sp,0
120 addu $sp,1
121 addu $sp,-1
122 addu $sp,256
123 addu $sp,-256
124 addu $2,$sp,0
125 addu $2,$sp,1
126 addu $2,$sp,-1
127 addu $2,$sp,32
128 addu $2,$sp,-32
129 addu $2,$sp,128
130 addu $2,$sp,-128
132 data2:
133 .word 0
134 insns2:
135 dsubu $2,$3,$4
136 subu $2,$3,$4
137 neg $2,$3
139 and $2,$3
140 or $2,$3
141 xor $2,$3
142 not $2,$3
144 slt $2,0
145 slt $2,1
146 slt $2,-1
147 slt $2,255
148 slt $2,256
149 slt $2,$3
150 sltu $2,0
151 sltu $2,1
152 sltu $2,-1
153 sltu $2,255
154 sltu $2,256
155 sltu $2,$3
156 cmp $2,0
157 cmp $2,1
158 cmp $2,255
159 cmp $2,256
160 cmp $2,$3
162 dsll $2,$3,0
163 dsll $2,$3,1
164 dsll $2,$3,8
165 dsll $2,$3,9
166 dsll $2,$3,63
167 dsll $2,$3
168 dsrl $2,0
169 dsrl $2,1
170 dsrl $2,8
171 dsrl $2,9
172 dsrl $2,63
173 dsrl $2,$3
174 dsra $2,0
175 dsra $2,1
176 dsra $2,8
177 dsra $2,9
178 dsra $2,63
179 dsra $2,$3
181 mflo $2
182 mfhi $3
184 sll $2,$3,0
185 sll $2,$3,1
186 sll $2,$3,8
187 sll $2,$3,9
188 sll $2,$3,31
189 sll $2,$3
190 srl $2,$3,0
191 srl $2,$3,1
192 srl $2,$3,8
193 srl $2,$3,9
194 srl $2,$3,31
195 srl $2,$3
196 sra $2,$3,0
197 sra $2,$3,1
198 sra $2,$3,8
199 sra $2,$3,9
200 sra $2,$3,31
201 sra $2,$3
203 dmult $2,$3
204 dmultu $2,$3
205 ddiv $2,$3
206 ddivu $2,$3
208 mult $2,$3
209 multu $2,$3
210 div $2,$3
211 divu $2,$3
213 jr $2
214 jr $31
215 jalr $31,$2
217 beqz $2,insns1
218 beqz $2,insns2
219 beqz $2,bar
220 beqz $2,quux
221 bnez $2,insns1
222 bnez $2,insns2
223 bnez $2,bar
224 bnez $2,quux
225 bteqz insns1
226 bteqz insns2
227 bteqz bar
228 bteqz quux
229 btnez insns1
230 btnez insns2
231 btnez bar
232 btnez quux
233 b insns1
234 b insns2
235 b bar
236 b quux
238 break 0
239 break 1
240 break 63
242 jal extern
244 entry
245 entry $4
246 entry $4-$6,$16
247 entry $16-$17,$31
248 entry $31
249 exit
250 exit $16
251 exit $16-$17,$31
252 exit $31
254 .p2align 3
255 bar:
257 .skip 200
258 quux: