Commit | Line | Data |
---|---|---|
bb7c5d2a NC |
1 | .data |
2 | foodata: .word 42 | |
a88a845a | 3 | .text |
bb7c5d2a | 4 | footext: |
bb7c5d2a NC |
5 | .global add |
6 | add: | |
7 | add r0, r1 | |
8 | add #0, r2 | |
bb7c5d2a NC |
9 | .global add2 |
10 | add2: | |
11 | add2 #-1, r3 | |
bb7c5d2a NC |
12 | .global addc |
13 | addc: | |
14 | addc r4, r5 | |
bb7c5d2a NC |
15 | .global addn |
16 | addn: | |
17 | addn r6, r7 | |
18 | addn #15, r8 | |
bb7c5d2a NC |
19 | .global addn2 |
20 | addn2: | |
21 | addn2 #-16, r9 | |
bb7c5d2a NC |
22 | .global sub |
23 | sub: | |
24 | sub r10, r11 | |
bb7c5d2a NC |
25 | .global subc |
26 | subc: | |
27 | subc r12, r13 | |
bb7c5d2a NC |
28 | .global subn |
29 | subn: | |
30 | subn r14, r15 | |
bb7c5d2a NC |
31 | .global cmp |
32 | cmp: | |
33 | cmp ac, fp | |
34 | cmp #1, sp | |
bb7c5d2a NC |
35 | .global cmp2 |
36 | cmp2: | |
37 | cmp2 #-15, r0 | |
bb7c5d2a NC |
38 | .global and |
39 | and: | |
40 | and r1, r2 | |
41 | and r3, @r4 | |
bb7c5d2a NC |
42 | .global andh |
43 | andh: | |
44 | andh r5, @r6 | |
bb7c5d2a NC |
45 | .global andb |
46 | andb: | |
47 | andb r7, @r8 | |
bb7c5d2a NC |
48 | .global or |
49 | or: | |
50 | or r9, r10 | |
51 | or r11, @r12 | |
bb7c5d2a NC |
52 | .global orh |
53 | orh: | |
54 | orh r13, @r14 | |
bb7c5d2a NC |
55 | .global orb |
56 | orb: | |
57 | orb r15, @ac | |
bb7c5d2a NC |
58 | .global eor |
59 | eor: | |
60 | eor fp, sp | |
61 | eor r0, @r1 | |
bb7c5d2a NC |
62 | .global eorh |
63 | eorh: | |
64 | eorh r2, @r3 | |
bb7c5d2a NC |
65 | .global eorb |
66 | eorb: | |
67 | eorb r4, @r5 | |
bb7c5d2a NC |
68 | .global bandl |
69 | bandl: | |
3c0b1a5c | 70 | bandl #15, @r6 |
bb7c5d2a NC |
71 | .global bandh |
72 | nadh: | |
73 | bandh #7, @r7 | |
bb7c5d2a NC |
74 | .global borl |
75 | borl: | |
76 | borl #3, @r8 | |
bb7c5d2a NC |
77 | .global borh |
78 | borh: | |
79 | borh #13, @r9 | |
bb7c5d2a NC |
80 | .global beorl |
81 | beorl: | |
82 | beorl #15, @r10 | |
bb7c5d2a NC |
83 | .global beorh |
84 | beorh: | |
85 | beorh #1, @r11 | |
bb7c5d2a NC |
86 | .global btstl |
87 | btstl: | |
3c0b1a5c | 88 | btstl #0, @r12 |
bb7c5d2a NC |
89 | .global btsth |
90 | btsth: | |
3c0b1a5c | 91 | btsth #8, @r13 |
bb7c5d2a NC |
92 | .global mul |
93 | mul: | |
94 | mul r14, r15 | |
bb7c5d2a NC |
95 | .global mulu |
96 | mulu: | |
97 | mulu ac, fp | |
bb7c5d2a NC |
98 | .global muluh |
99 | muluh: | |
100 | muluh sp, r0 | |
bb7c5d2a NC |
101 | .global mulh |
102 | mulh: | |
103 | mulh r1, r2 | |
bb7c5d2a NC |
104 | .global div0s |
105 | div0s: | |
106 | div0s r3 | |
bb7c5d2a NC |
107 | .global div0u |
108 | div0u: | |
109 | div0u r4 | |
bb7c5d2a NC |
110 | .global div1 |
111 | div1: | |
112 | div1 r5 | |
bb7c5d2a NC |
113 | .global div2 |
114 | div2: | |
115 | div2 r6 | |
bb7c5d2a NC |
116 | .global div3 |
117 | div3: | |
118 | div3 | |
bb7c5d2a NC |
119 | .global div4s |
120 | div4s: | |
121 | div4s | |
bb7c5d2a NC |
122 | .global lsl |
123 | lsl: | |
124 | lsl r7, r8 | |
125 | lsl #3, r9 | |
bb7c5d2a NC |
126 | .global lsl2 |
127 | lsl2: | |
128 | lsl2 #0, r10 | |
bb7c5d2a NC |
129 | .global lsr |
130 | lsr: | |
131 | lsr r11, r12 | |
132 | lsr #15, r13 | |
bb7c5d2a NC |
133 | .global lsr2 |
134 | lsr2: | |
135 | lsr2 #15, r14 | |
bb7c5d2a NC |
136 | .global asr |
137 | asr: | |
138 | asr r15, ac | |
139 | asr #6, fp | |
bb7c5d2a NC |
140 | .global asr2 |
141 | asr2: | |
142 | asr2 #7, sp | |
bb7c5d2a NC |
143 | .global ldi_8 |
144 | ldi_8: | |
145 | ldi:8 #0xff, r2 | |
bb7c5d2a NC |
146 | .global ld |
147 | ld: | |
148 | ld @r3, r4 | |
3c0b1a5c NC |
149 | ld @(R13, r5), r6 |
150 | ld @(R14, 0x1fc), r7 | |
151 | ld @(R15, 0x3c), r8 | |
bb7c5d2a | 152 | ld @r15+, r9 |
bb7c5d2a | 153 | ld @r15+, ps |
3c0b1a5c | 154 | ld @R15+, tbr |
bb7c5d2a | 155 | ld @r15+, rp |
3c0b1a5c | 156 | ld @R15+, ssp |
bb7c5d2a NC |
157 | .global lduh |
158 | lduh: | |
3c0b1a5c | 159 | lduh @r10, r11 |
bb7c5d2a | 160 | lduh @(r13, r12), r13 |
4229bee9 | 161 | lduh @(r14, #-256), r15 |
bb7c5d2a NC |
162 | .global ldub |
163 | ldub: | |
164 | ldub @ac, fp | |
165 | ldub @(r13, sp), r0 | |
166 | ldub @(r14, -128), r1 | |
bb7c5d2a NC |
167 | .global st |
168 | st: | |
169 | st r2, @r3 | |
170 | st r4, @(r13, r5) | |
171 | st r6, @(r14, -512) | |
172 | st r7, @(r15, 0x3c) | |
173 | st r8, @ - r15 | |
3c0b1a5c NC |
174 | st MDH, @-r15 |
175 | st PS, @ - r15 | |
bb7c5d2a NC |
176 | .global lsth |
177 | sth: | |
178 | sth r9, @r10 | |
179 | sth r11, @(r13, r12) | |
180 | sth r13, @(r14, 128) | |
bb7c5d2a NC |
181 | .global stb |
182 | stb: | |
3c0b1a5c | 183 | STB r14, @r15 |
bb7c5d2a | 184 | stb r0, @(r13, r1) |
3c0b1a5c | 185 | STB r2, @(r14, -128) |
bb7c5d2a NC |
186 | .global mov |
187 | mov: | |
188 | mov r3, r4 | |
3c0b1a5c | 189 | MOV mdl, r5 |
bb7c5d2a NC |
190 | mov ps, r6 |
191 | mov r7, usp | |
192 | mov r8, ps | |
bb7c5d2a NC |
193 | .global jmp |
194 | jmp: | |
195 | jmp @r9 | |
bb7c5d2a NC |
196 | .global ret |
197 | ret: | |
198 | ret | |
bb7c5d2a NC |
199 | .global int |
200 | int: | |
201 | int #255 | |
bb7c5d2a NC |
202 | .global inte |
203 | inte: | |
204 | inte | |
bb7c5d2a NC |
205 | .global reti |
206 | reti: | |
207 | reti | |
bb7c5d2a NC |
208 | .global bra |
209 | bra: | |
210 | bra footext | |
bb7c5d2a NC |
211 | .global bno |
212 | bno: | |
213 | bno footext | |
bb7c5d2a NC |
214 | .global beq |
215 | beq: | |
216 | beq footext | |
bb7c5d2a NC |
217 | .global bne |
218 | bne: | |
219 | bne footext | |
bb7c5d2a NC |
220 | .global bc |
221 | bc: | |
222 | bc footext | |
bb7c5d2a NC |
223 | .global bnc |
224 | bnc: | |
225 | bnc footext | |
bb7c5d2a NC |
226 | .global bn |
227 | bn: | |
228 | bn footext | |
bb7c5d2a NC |
229 | .global bp |
230 | bp: | |
231 | bp footext | |
bb7c5d2a NC |
232 | .global bv |
233 | bv: | |
234 | bv footext | |
bb7c5d2a NC |
235 | .global bnv |
236 | bnv: | |
237 | bnv footext | |
bb7c5d2a NC |
238 | .global blt |
239 | blt: | |
240 | blt footext | |
bb7c5d2a NC |
241 | .global bge |
242 | bge: | |
243 | bge footext | |
bb7c5d2a NC |
244 | .global ble |
245 | ble: | |
246 | ble footext | |
bb7c5d2a NC |
247 | .global bgt |
248 | bgt: | |
249 | bgt footext | |
bb7c5d2a NC |
250 | .global bls |
251 | bls: | |
252 | bls footext | |
bb7c5d2a NC |
253 | .global bhi |
254 | bhi: | |
255 | bhi footext | |
bb7c5d2a NC |
256 | .global jmp_d |
257 | jmp_d: | |
258 | jmp:d @r11 | |
259 | nop | |
bb7c5d2a NC |
260 | .global ret_d |
261 | ret_d: | |
262 | ret:d | |
263 | nop | |
bb7c5d2a NC |
264 | .global bra_d |
265 | bra_d: | |
3c0b1a5c | 266 | bra:D footext |
bb7c5d2a NC |
267 | .global bno_d |
268 | bno_d: | |
269 | bno:d footext | |
bb7c5d2a NC |
270 | .global beq_d |
271 | beq_d: | |
3c0b1a5c | 272 | beq:D footext |
bb7c5d2a NC |
273 | .global bne_d |
274 | bne_d: | |
275 | bne:d footext | |
bb7c5d2a NC |
276 | .global bc_d |
277 | bc_d: | |
278 | bc:d footext | |
bb7c5d2a NC |
279 | .global bnc_d |
280 | bnc_d: | |
281 | bnc:d footext | |
bb7c5d2a NC |
282 | .global bn_d |
283 | bn_d: | |
284 | bn:d footext | |
bb7c5d2a NC |
285 | .global bp_d |
286 | bp_d: | |
287 | bp:d footext | |
bb7c5d2a NC |
288 | .global bv_d |
289 | bv_d: | |
290 | bv:d footext | |
bb7c5d2a NC |
291 | .global bnv_d |
292 | bnv_d: | |
293 | bnv:d footext | |
bb7c5d2a NC |
294 | .global blt_d |
295 | blt_d: | |
296 | blt:d footext | |
bb7c5d2a NC |
297 | .global bge_d |
298 | bge_d: | |
299 | bge:d footext | |
bb7c5d2a NC |
300 | .global ble_d |
301 | ble_d: | |
302 | ble:d footext | |
bb7c5d2a NC |
303 | .global bgt_d |
304 | bgt_d: | |
305 | bgt:d footext | |
bb7c5d2a NC |
306 | .global bls_d |
307 | bls_d: | |
308 | bls:d footext | |
bb7c5d2a NC |
309 | .global bhi_d |
310 | bhi_d: | |
311 | bhi:d footext | |
bb7c5d2a NC |
312 | .global ldres |
313 | ldres: | |
314 | ldres @r2+, #8 | |
bb7c5d2a NC |
315 | .global stres |
316 | stres: | |
317 | stres #15, @r3+ | |
bb7c5d2a NC |
318 | .global nop |
319 | nop: | |
320 | nop | |
bb7c5d2a NC |
321 | .global andccr |
322 | andccr: | |
323 | andccr #255 | |
bb7c5d2a NC |
324 | .global orccr |
325 | orccr: | |
326 | orccr #125 | |
bb7c5d2a NC |
327 | .global stilm |
328 | stilm: | |
329 | stilm #97 | |
bb7c5d2a NC |
330 | .global addsp |
331 | addsp: | |
332 | addsp #-512 | |
bb7c5d2a NC |
333 | .global extsb |
334 | extsb: | |
335 | extsb r9 | |
bb7c5d2a NC |
336 | .global extub |
337 | extub: | |
338 | extub r10 | |
bb7c5d2a NC |
339 | .global extsh |
340 | extsh: | |
341 | extsh r11 | |
bb7c5d2a NC |
342 | .global extuh |
343 | extuh: | |
344 | extuh r12 | |
a88a845a NC |
345 | .global enter |
346 | enter: | |
347 | enter #1020 | |
348 | .global leave | |
349 | leave: | |
350 | leave | |
351 | .global xchb | |
352 | xchb: | |
353 | xchb @r14, r15 | |
354 | .global ldi_32 | |
355 | ldi_32: | |
356 | ldi:32 #0x12345678, r0 | |
357 | .global ldi_20 | |
358 | ldi_20: | |
359 | ldi:20 #0x000fffff, r1 | |
bb7c5d2a NC |
360 | .global ldm0 |
361 | ldm0: | |
362 | ldm0 (r0, r2, r3, r7) | |
bb7c5d2a NC |
363 | .global ldm1 |
364 | ldm1: | |
365 | ldm1 (r8, r11, sp) | |
bb7c5d2a NC |
366 | .global stm0 |
367 | stm0: | |
368 | stm0 (r2, r3) | |
bb7c5d2a NC |
369 | .global stm1 |
370 | stm1: | |
371 | stm1 (ac, fp) | |
a88a845a NC |
372 | .global call |
373 | call: | |
374 | call footext | |
375 | call @r10 | |
376 | .global call_d | |
377 | call_d: | |
378 | call:D footext | |
379 | nop | |
380 | call:d @r12 | |
381 | nop | |
382 | .global dmov | |
383 | dmov: | |
a20d4331 DB |
384 | dmov @0x88, r13 |
385 | dmov r13, @0x54 | |
a88a845a NC |
386 | dmov @0x44, @r13+ |
387 | dmov @R13+, @0x2 | |
a20d4331 DB |
388 | dmov @0x2c, @-r15 |
389 | dmov @r15+, @38 | |
a88a845a NC |
390 | .global dmovh |
391 | dmovh: | |
a20d4331 DB |
392 | dmovh @0x88, r13 |
393 | dmovh r13, @0x52 | |
a88a845a NC |
394 | dmovh @0x34, @r13 + |
395 | dmovh @r13+, @0x52 | |
396 | .global dmovb | |
397 | dmovb: | |
a20d4331 | 398 | dmovb @0x91, r13 |
a88a845a NC |
399 | dmovb r13, @0x53 |
400 | dmovb @71, @r13+ | |
401 | dmovb @r13+, @0x0 | |
402 | .global copop | |
403 | copop: | |
404 | copop #15, #1, cr3, cr4 | |
405 | copop #15, #4, cr5, cr6 | |
406 | copop #15, #255, cr7, cr0 | |
407 | .global copld | |
408 | copld: | |
409 | copld #0, #0, r4, cr0 | |
410 | .global copst | |
411 | copst: | |
412 | copst #7, #2, cr1, r5 | |
413 | .global copsv | |
414 | copsv: | |
415 | copsv #8, #3, cr2, r6 |