Upload Tizen:Base source
[external/binutils.git] / gas / testsuite / gas / cris / binop.s
1 ; @OC@ test
2 ; Generic binary operations supporting all sizes and their various
3 ; addressing modes.
4
5 ; Some fairly big pseudorandom numbers we don't want to compute
6 ; as differences in actual data or code.
7
8  .set const_int_32, 0x1b94452b
9  .set const_int_m32, -3513208907
10  .set two701867, 2701867
11
12 ; Other constants that are not differences
13  .set forty2, 42
14  .set mforty2, -42
15
16  .set three2767, 32767
17  .set six5535, 65535
18
19  .text
20  .syntax no_register_prefix
21 notstart:
22  .dword 0
23
24 start:
25
26 ;;;;;;;;;;;;;;;;;
27 ;
28 ; r,r
29  @OC@.b r3,r5
30  @OC@.w r5,r13
31  @OC@.d r10,r1
32
33 ;;;;;;;;;;;;;;;;;
34 ;
35 ; [r],r
36  @OC@.b [r0],r5
37  @OC@.w [r5],r13
38  @OC@.d [r10],r1
39
40  @OC@ r13,[r5]
41  @OC@ r1,[r10]
42
43 ;;;;;;;;;;;;;;;;;
44 ;
45 ; [r+],r
46  @OC@.b [r0+],r5
47  @OC@.w [r5+],r13
48  @OC@.d [r10+],r1
49
50  @OC@ r13,[r5+]
51  @OC@ r4,[r10+]
52
53 ;;;;;;;;;;;;;;;;;
54 ;
55 ; const,r
56  @OC@.b 0,r5
57  @OC@.b 1,r5
58  @OC@.b 127,r5
59  @OC@.b 128,r5
60  @OC@.b -1,r5
61  @OC@.b -127,r5
62  @OC@.b -128,r5
63  @OC@.b 255,r5
64
65  @OC@.b 42,r5
66  @OC@.b -42,r5
67  @OC@.b forty2,r5
68  @OC@.b mforty2,r5
69  @OC@.b -forty2,r5
70  @OC@.b -mforty2,r5
71  @OC@.b externalsym,r5
72
73  @OC@.w 0,r13
74  @OC@.w 1,r13
75  @OC@.w 127,r13
76  @OC@.w 128,r13
77  @OC@.w -1,r13
78  @OC@.w -127,r13
79  @OC@.w -128,r13
80  @OC@.w -129,r13
81  @OC@.w 255,r13
82  @OC@.w -255,r13
83  @OC@.w 256,r13
84  @OC@.w -8856,r13
85  @OC@.w 8856,r13
86
87  @OC@.w 42,r13
88  @OC@.w -42,r13
89  @OC@.w forty2,r13
90  @OC@.w mforty2,r13
91  @OC@.w -forty2,r5
92  @OC@.w -mforty2,r5
93
94  @OC@.w three2767,r5
95  @OC@.w three2767+1,r5
96  @OC@.w three2767+2,r13
97  @OC@.w -three2767,r13
98  @OC@.w -(three2767+1),r13
99  @OC@.w six5535,r5
100  @OC@.w externalsym,r5
101
102  @OC@.d 0,r1
103  @OC@.d 1,r1
104  @OC@.d 127,r1
105  @OC@.d 128,r1
106  @OC@.d -1,r1
107  @OC@.d -127,r1
108  @OC@.d -128,r1
109  @OC@.d 255,r1
110  @OC@.d -255,r1
111  @OC@.d 256,r1
112  @OC@.d -8856,r1
113  @OC@.d 8856,r1
114
115  @OC@.d 2781868,r1
116  @OC@.d -2701867,r1
117
118  @OC@.d 0x9ec0ceac,r1
119  @OC@.d -0x7ec0cead,r1
120  @OC@.d const_int_m32,r1
121  @OC@.d const_int_32,r1
122
123  @OC@.d 42,r13
124  @OC@.d -42,r5
125  @OC@.d forty2,r5
126  @OC@.d mforty2,r5
127  @OC@.d -forty2,r5
128  @OC@.d -mforty2,r5
129
130  @OC@.d three2767,r5
131  @OC@.d three2767+1,r5
132  @OC@.d three2767+2,r5
133  @OC@.d -three2767,r5
134  @OC@.d -(three2767+1),r13
135  @OC@.d -(three2767+2),r13
136  @OC@.d six5535,r5
137  @OC@.d six5535+1,r13
138  @OC@.d two701867,r5
139  @OC@.d -two701867,r5
140
141  @OC@.d externalsym,r5
142
143 ;;;;;;;;;;;;;;;;;
144 ;
145 ; [r+X],r
146
147 ; [r+r.b],r
148
149  @OC@.b [r2+r0.b],r5
150  @OC@.w [r2+r5.b],r13
151  @OC@.d [r2+r10.b],r1
152
153  @OC@ r13,[r2+r5.b]
154  @OC@ r3,[r2+r10.b]
155
156 ; [r+[r].b],r
157  @OC@.b [r2+[r0].b],r5
158  @OC@.w [r2+[r5].b],r13
159  @OC@.d [r2+[r10].b],r1
160
161  @OC@ r13,[r2+[r5].b]
162  @OC@ r2,[r2+[r10].b]
163
164 ; [r+[r+].b],r
165  @OC@.b [r2+[r0+].b],r5
166  @OC@.w [r2+[r5+].b],r13
167  @OC@.d [r2+[r10+].b],r1
168
169  @OC@.w [r2+[r5+].b],r13
170
171  @OC@.d [r2+[r10+].b],r1
172
173  @OC@ r0,[r2+[r5+].b]
174  @OC@ r12,[r2+[r10+].b]
175
176 ; [r+r.w],r
177
178  @OC@.b [r2+r0.w],r5
179  @OC@.w [r2+r5.w],r13
180  @OC@.d [r2+r10.w],r1
181
182 ; [r+[r].w],r
183  @OC@.b [r2+[r0].w],r5
184  @OC@.w [r2+[r5].w],r13
185  @OC@.d [r2+[r10].w],r1
186
187  @OC@ r2,[r2+[r5].w]
188  @OC@ r6,[r2+[r10].w]
189
190 ; [r+[r+].w],r
191  @OC@.b [r2+[r0+].w],r5
192  @OC@.w [r2+[r5+].w],r13
193  @OC@.d [r2+[r10+].w],r1
194
195  @OC@.w [r2+[r5+].w],r13
196
197  @OC@.d [r2+[r10+].w],r1
198
199  @OC@ r7,[r2+[r5+].w]
200  @OC@ r8,[r2+[r10+].w]
201
202 ; [r+r.d],r
203
204  @OC@.b [r2+r0.d],r5
205  @OC@.w [r2+r5.d],r13
206  @OC@.d [r2+r10.d],r1
207
208  @OC@ r12,[r2+r5.d]
209  @OC@ r9,[r2+r10.d]
210
211 ; [r+[r].d],r
212  @OC@.b [r2+[r0].d],r5
213  @OC@.w [r2+[r5].d],r13
214  @OC@.d [r2+[r10].d],r1
215
216  @OC@ r13,[r2+[r5].d]
217  @OC@ r8,[r2+[r10].d]
218
219 ; [r+[r+].d],r
220  @OC@.b [r2+[r0+].d],r5
221  @OC@.w [r2+[r5+].d],r13
222  @OC@.d [r2+[r10+].d],r1
223
224  @OC@.w [r2+[r5+].d],r13
225
226  @OC@.d [r2+[r10+].d],r1
227
228  @OC@ r0,[r2+[r5+].d]
229  @OC@ r5,[r2+[r10+].d]
230
231 ; [r+const],r
232
233 ; Note that I forgot 16-bit offsets and 32-bit offsets here and later.
234 ; Maybe add them later if it feels necessary.
235
236  @OC@.b [r2+0],r5
237  @OC@.b [r2+1],r5
238  @OC@.b [r2+127],r5
239  @OC@.b [r2+128],r5
240  @OC@.b [r2+-1],r5
241  @OC@.b [r2+-127],r5
242  @OC@.b [r2+-128],r5
243  @OC@.b [r2+255],r5
244
245  @OC@.b [r2+42],r5
246  @OC@.b [r2+-42],r5
247  @OC@.b [r2-42],r5
248  @OC@.b [r2+forty2],r5
249  @OC@.b [r2+mforty2],r5
250  @OC@.b [r2+-forty2],r5
251  @OC@.b [r2+-mforty2],r5
252  @OC@.b [r2-forty2],r5
253  @OC@.b [r2-mforty2],r5
254  @OC@.b [r2+externalsym],r5
255
256 ; Note that I missed 32-bit offsets (except -32769) here and later.
257 ; Maybe add them later if it feels necessary.
258
259  @OC@.w [r2+0],r13
260  @OC@.w [r2+1],r13
261  @OC@.w [r2+127],r13
262  @OC@.w [r2+128],r13
263  @OC@.w [r2+-1],r13
264  @OC@.w [r2-1],r13
265  @OC@.w [r2+-127],r13
266  @OC@.w [r2+-128],r13
267  @OC@.w [r2+-129],r13
268  @OC@.w [r2-127],r13
269  @OC@.w [r2-128],r13
270  @OC@.w [r2-129],r13
271  @OC@.w [r2+255],r13
272  @OC@.w [r2+-255],r13
273  @OC@.w [r2-255],r13
274  @OC@.w [r2+256],r13
275  @OC@.w [r2-256],r13
276  @OC@.w [r2+-8856],r13
277  @OC@.w [r2-8856],r13
278  @OC@.w [r2+8856],r13
279
280  @OC@.w [r2+42],r13
281  @OC@.w [r2+-42],r13
282  @OC@.w [r2-42],r13
283  @OC@.w [r2+forty2],r13
284  @OC@.w [r2+mforty2],r13
285  @OC@.w [r2+-forty2],r5
286  @OC@.w [r2-forty2],r5
287  @OC@.w [r2+-mforty2],r5
288
289  @OC@.w [r2+three2767],r5
290  @OC@.w [r2+three2767+1],r5
291  @OC@.w [r2+three2767+2],r13
292  @OC@.w [r2+-three2767],r13
293  @OC@.w [r2+-(three2767+1)],r13
294  @OC@.w [r2+-(three2767+2)],r5
295  @OC@.w [r2-three2767],r13
296  @OC@.w [r2-(three2767+1)],r13
297  @OC@.w [r2-(three2767+2)],r5
298  @OC@.w [r2+six5535],r5
299  @OC@.w [r2+externalsym],r5
300
301  @OC@.d [r2+0],r1
302  @OC@.d [r2+1],r1
303  @OC@.d [r2+127],r1
304  @OC@.d [r2+128],r1
305  @OC@.d [r2+-1],r1
306  @OC@.d [r2-1],r1
307  @OC@.d [r2+-127],r1
308  @OC@.d [r2+-128],r1
309  @OC@.d [r2-127],r1
310  @OC@.d [r2-128],r1
311  @OC@.d [r2+255],r1
312  @OC@.d [r2+-255],r1
313  @OC@.d [r2-255],r1
314  @OC@.d [r2+256],r1
315  @OC@.d [r2-256],r1
316  @OC@.d [r2-8856],r1
317  @OC@.d [r2+-256],r1
318  @OC@.d [r2+-8856],r1
319  @OC@.d [r2+8856],r1
320
321  @OC@.d [r2+2781868],r1
322  @OC@.d [r2+-2701867],r1
323
324  @OC@.d [r2+0x9ec0ceac],r1
325  @OC@.d [r2+-0x7ec0cead],r1
326  @OC@.d [r2-0x7ec0cead],r1
327  @OC@.d [r2+const_int_m32],r1
328  @OC@.d [r2+const_int_32],r1
329
330  @OC@.d [r2+42],r13
331  @OC@.d [r2-42],r5
332  @OC@.d [r2+-42],r5
333  @OC@.d [r2+forty2],r5
334  @OC@.d [r2+mforty2],r5
335  @OC@.d [r2-forty2],r5
336  @OC@.d [r2-mforty2],r5
337  @OC@.d [r2+-forty2],r5
338  @OC@.d [r2+-mforty2],r5
339
340  @OC@.d [r2+three2767],r5
341  @OC@.d [r2+three2767+1],r5
342  @OC@.d [r2+three2767+2],r5
343  @OC@.d [r2+-three2767],r5
344  @OC@.d [r2+-(three2767+1)],r13
345  @OC@.d [r2+-(three2767+2)],r13
346  @OC@.d [r2-three2767],r5
347  @OC@.d [r2-(three2767+1)],r13
348  @OC@.d [r2-(three2767+2)],r13
349  @OC@.d [r2+six5535],r5
350  @OC@.d [r2+six5535+1],r13
351  @OC@.d [r2+two701867],r5
352  @OC@.d [r2+-two701867],r5
353  @OC@.d [r2-two701867],r5
354
355  @OC@.d [r2+externalsym],r5
356
357  @OC@ r1,[r2+0]
358  @OC@ r1,[r2+1]
359  @OC@ r1,[r2+127]
360  @OC@ r1,[r2+128]
361  @OC@ r1,[r2+-1]
362  @OC@ r1,[r2-1]
363  @OC@ r1,[r2+-127]
364  @OC@ r1,[r2+-128]
365  @OC@ r1,[r2-127]
366  @OC@ r1,[r2-128]
367  @OC@ r1,[r2+255]
368  @OC@ r1,[r2+-255]
369  @OC@ r1,[r2-255]
370  @OC@ r1,[r2+256]
371  @OC@ r1,[r2-256]
372  @OC@ r1,[r2-8856]
373  @OC@ r1,[r2+-256]
374  @OC@ r1,[r2+-8856]
375  @OC@ r1,[r2+8856]
376
377  @OC@ r1,[r2+2781868]
378  @OC@ r1,[r2+-2701867]
379
380  @OC@ r1,[r2+0x9ec0ceac]
381  @OC@ r1,[r2+-0x7ec0cead]
382  @OC@ r1,[r2-0x7ec0cead]
383  @OC@ r1,[r2+const_int_m32]
384  @OC@ r1,[r2+const_int_32]
385
386  @OC@ r13,[r2+42]
387  @OC@ r5,[r2-42]
388  @OC@ r5,[r2+-42]
389  @OC@ r5,[r2+forty2]
390  @OC@ r5,[r2+mforty2]
391  @OC@ r5,[r2-forty2]
392  @OC@ r5,[r2-mforty2]
393  @OC@ r5,[r2+-forty2]
394  @OC@ r5,[r2+-mforty2]
395
396  @OC@ r5,[r2+three2767]
397  @OC@ r5,[r2+three2767+1]
398  @OC@ r5,[r2+three2767+2]
399  @OC@ r5,[r2+-three2767]
400  @OC@ r13,[r2+-(three2767+1)]
401  @OC@ r13,[r2+-(three2767+2)]
402  @OC@ r5,[r2-three2767]
403  @OC@ r13,[r2-(three2767+1)]
404  @OC@ r13,[r2-(three2767+2)]
405  @OC@ r5,[r2+six5535]
406  @OC@ r13,[r2+six5535+1]
407  @OC@ r5,[r2+two701867]
408  @OC@ r5,[r2+-two701867]
409  @OC@ r5,[r2-two701867]
410
411  @OC@ r5,[r2+externalsym]
412
413 ;;;;;;;;;;;;;;;;;
414 ;
415 ; [r+X],r,r
416
417 ; [r+r.b],r,r
418
419  @OC@.b [r2+r0.b],r5,r8
420  @OC@.w [r2+r5.b],r13,r8
421  @OC@.d [r2+r10.b],r1,r8
422
423 ; [r+[r].b],r,r
424  @OC@.b [r2+[r0].b],r5,r8
425  @OC@.w [r2+[r5].b],r13,r8
426  @OC@.d [r2+[r10].b],r1,r8
427
428 ; [r+[r+].b],r,r
429  @OC@.b [r2+[r0+].b],r5,r8
430  @OC@.w [r2+[r5+].b],r13,r8
431  @OC@.d [r2+[r10+].b],r1,r8
432
433  @OC@.w [r2+[r5+].b],r13,r8
434
435  @OC@.d [r2+[r10+].b],r1,r8
436
437 ; [r+r.w],r,r
438
439  @OC@.b [r2+r0.w],r5,r8
440  @OC@.w [r2+r5.w],r13,r8
441  @OC@.d [r2+r10.w],r1,r8
442
443 ; [r+[r].w],r,r
444  @OC@.b [r2+[r0].w],r5,r8
445  @OC@.w [r2+[r5].w],r13,r8
446  @OC@.d [r2+[r10].w],r1,r8
447
448 ; [r+[r+].w],r,r
449  @OC@.b [r2+[r0+].w],r5,r8
450  @OC@.w [r2+[r5+].w],r13,r8
451  @OC@.d [r2+[r10+].w],r1,r8
452
453  @OC@.w [r2+[r5+].w],r13,r8
454
455  @OC@.d [r2+[r10+].w],r1,r8
456
457 ; [r+r.d],r,r
458
459  @OC@.b [r2+r0.d],r5,r8
460  @OC@.w [r2+r5.d],r13,r8
461  @OC@.d [r2+r10.d],r1,r8
462
463 ; [r+[r].d],r,r
464  @OC@.b [r2+[r0].d],r5,r8
465  @OC@.w [r2+[r5].d],r13,r8
466  @OC@.d [r2+[r10].d],r1,r8
467
468 ; [r+[r+].d],r,r
469  @OC@.b [r2+[r0+].d],r5,r8
470  @OC@.w [r2+[r5+].d],r13,r8
471  @OC@.d [r2+[r10+].d],r1,r8
472
473  @OC@.w [r2+[r5+].d],r13,r8
474
475  @OC@.d [r2+[r10+].d],r1,r8
476
477 ; [r+const],r,r
478  @OC@.b [r2+0],r5,r8
479  @OC@.b [r2+1],r5,r8
480  @OC@.b [r2+127],r5,r8
481  @OC@.b [r2+128],r5,r8
482  @OC@.b [r2+-1],r5,r8
483  @OC@.b [r2+-127],r5,r8
484  @OC@.b [r2+-128],r5,r8
485  @OC@.b [r2+255],r5,r8
486
487  @OC@.b [r2+42],r5,r8
488  @OC@.b [r2+-42],r5,r8
489  @OC@.b [r2-42],r5,r8
490  @OC@.b [r2+forty2],r5,r8
491  @OC@.b [r2+mforty2],r5,r8
492  @OC@.b [r2+-forty2],r5,r8
493  @OC@.b [r2+-mforty2],r5,r8
494  @OC@.b [r2-forty2],r5,r8
495  @OC@.b [r2-mforty2],r5,r8
496  @OC@.b [r2+externalsym],r5,r8
497
498  @OC@.w [r2+0],r13,r8
499  @OC@.w [r2+1],r13,r8
500  @OC@.w [r2+127],r13,r8
501  @OC@.w [r2+128],r13,r8
502  @OC@.w [r2+-1],r13,r8
503  @OC@.w [r2-1],r13,r8
504  @OC@.w [r2+-127],r13,r8
505  @OC@.w [r2+-128],r13,r8
506  @OC@.w [r2+-129],r13,r8
507  @OC@.w [r2-127],r13,r8
508  @OC@.w [r2-128],r13,r8
509  @OC@.w [r2-129],r13,r8
510  @OC@.w [r2+255],r13,r8
511  @OC@.w [r2+-255],r13,r8
512  @OC@.w [r2-255],r13,r8
513  @OC@.w [r2+256],r13,r8
514  @OC@.w [r2-256],r13,r8
515  @OC@.w [r2+-8856],r13,r8
516  @OC@.w [r2-8856],r13,r8
517  @OC@.w [r2+8856],r13,r8
518
519  @OC@.w [r2+42],r13,r8
520  @OC@.w [r2+-42],r13,r8
521  @OC@.w [r2-42],r13,r8
522  @OC@.w [r2+forty2],r13,r8
523  @OC@.w [r2+mforty2],r13,r8
524  @OC@.w [r2+-forty2],r5,r8
525  @OC@.w [r2-forty2],r5,r8
526  @OC@.w [r2+-mforty2],r5,r8
527
528  @OC@.w [r2+three2767],r5,r8
529  @OC@.w [r2+three2767+1],r5,r8
530  @OC@.w [r2+three2767+2],r13,r8
531  @OC@.w [r2+-three2767],r13,r8
532  @OC@.w [r2+-(three2767+1)],r13,r8
533  @OC@.w [r2+-(three2767+2)],r5,r8
534  @OC@.w [r2-three2767],r13,r8
535  @OC@.w [r2-(three2767+1)],r13,r8
536  @OC@.w [r2-(three2767+2)],r5,r8
537  @OC@.w [r2+six5535],r5,r8
538  @OC@.w [r2+externalsym],r5,r8
539
540  @OC@.d [r2+0],r1,r8
541  @OC@.d [r2+1],r1,r8
542  @OC@.d [r2+127],r1,r8
543  @OC@.d [r2+128],r1,r8
544  @OC@.d [r2+-1],r1,r8
545  @OC@.d [r2-1],r1,r8
546  @OC@.d [r2+-127],r1,r8
547  @OC@.d [r2+-128],r1,r8
548  @OC@.d [r2-127],r1,r8
549  @OC@.d [r2-128],r1,r8
550  @OC@.d [r2+255],r1,r8
551  @OC@.d [r2+-255],r1,r8
552  @OC@.d [r2-255],r1,r8
553  @OC@.d [r2+256],r1,r8
554  @OC@.d [r2-256],r1,r8
555  @OC@.d [r2-8856],r1,r8
556  @OC@.d [r2+-256],r1,r8
557  @OC@.d [r2+-8856],r1,r8
558  @OC@.d [r2+8856],r1,r8
559
560  @OC@.d [r2+2781868],r1,r8
561  @OC@.d [r2+-2701867],r1,r8
562
563  @OC@.d [r2+0x9ec0ceac],r1,r8
564  @OC@.d [r2+-0x7ec0cead],r1,r8
565  @OC@.d [r2-0x7ec0cead],r1,r8
566  @OC@.d [r2+const_int_m32],r1,r8
567  @OC@.d [r2+const_int_32],r1,r8
568
569  @OC@.d [r2+42],r13,r8
570  @OC@.d [r2-42],r5,r8
571  @OC@.d [r2+-42],r5,r8
572  @OC@.d [r2+forty2],r5,r8
573  @OC@.d [r2+mforty2],r5,r8
574  @OC@.d [r2-forty2],r5,r8
575  @OC@.d [r2-mforty2],r5,r8
576  @OC@.d [r2+-forty2],r5,r8
577  @OC@.d [r2+-mforty2],r5,r8
578
579  @OC@.d [r2+three2767],r5,r8
580  @OC@.d [r2+three2767+1],r5,r8
581  @OC@.d [r2+three2767+2],r5,r8
582  @OC@.d [r2+-three2767],r5,r8
583  @OC@.d [r2+-(three2767+1)],r13,r8
584  @OC@.d [r2+-(three2767+2)],r13,r8
585  @OC@.d [r2-three2767],r5,r8
586  @OC@.d [r2-(three2767+1)],r13,r8
587  @OC@.d [r2-(three2767+2)],r13,r8
588  @OC@.d [r2+six5535],r5,r8
589  @OC@.d [r2+six5535+1],r13,r8
590  @OC@.d [r2+two701867],r5,r8
591  @OC@.d [r2+-two701867],r5,r8
592  @OC@.d [r2-two701867],r5,r8
593
594  @OC@.d [r2+externalsym],r5,r8
595
596 ;;;;;;;;;;;;;;;;;
597 ;
598 ; [r=r+X],r
599
600 ; [r=r+r.b],r
601
602  @OC@.b [r12=r2+r0.b],r5
603  @OC@.w [r12=r2+r5.b],r13
604  @OC@.d [r12=r2+r10.b],r1
605
606  @OC@ r13,[r12=r2+r5.b]
607  @OC@ r1,[r12=r2+r10.b]
608
609 ; [r=r+[r].b],r
610  @OC@.b [r12=r2+[r0].b],r5
611  @OC@.w [r12=r2+[r5].b],r13
612  @OC@.d [r12=r2+[r10].b],r1
613
614  @OC@ r4,[r12=r2+[r5].b]
615  @OC@ r6,[r12=r2+[r10].b]
616
617 ; [r=r+[r+].b],r
618  @OC@.b [r12=r2+[r0+].b],r5
619  @OC@.w [r12=r2+[r5+].b],r13
620  @OC@.d [r12=r2+[r10+].b],r1
621
622  @OC@.w [r12=r2+[r5+].b],r13
623
624  @OC@.d [r12=r2+[r10+].b],r1
625
626  @OC@ r3,[r12=r2+[r5+].b]
627  @OC@ r2,[r12=r2+[r10+].b]
628
629 ; [r=r+r.w],r
630
631  @OC@.b [r12=r2+r0.w],r5
632  @OC@.w [r12=r2+r5.w],r13
633  @OC@.d [r12=r2+r10.w],r1
634
635  @OC@ r5,[r12=r2+r5.w]
636  @OC@ r8,[r12=r2+r10.w]
637
638 ; [r=r+[r].w],r
639  @OC@.b [r12=r2+[r0].w],r5
640  @OC@.w [r12=r2+[r5].w],r13
641  @OC@.d [r12=r2+[r10].w],r1
642
643  @OC@ r4,[r12=r2+[r5].w]
644  @OC@ r3,[r12=r2+[r10].w]
645
646 ; [r=r+[r+].w],r
647  @OC@.b [r12=r2+[r0+].w],r5
648  @OC@.w [r12=r2+[r5+].w],r13
649  @OC@.d [r12=r2+[r10+].w],r1
650
651  @OC@.w [r12=r2+[r5+].w],r13
652
653  @OC@.d [r12=r2+[r10+].w],r1
654
655  @OC@ r2,[r12=r2+[r5+].w]
656  @OC@ r7,[r12=r2+[r10+].w]
657
658 ; [r=r+r.d],r
659
660  @OC@.b [r12=r2+r0.d],r5
661  @OC@.w [r12=r2+r5.d],r13
662  @OC@.d [r12=r2+r10.d],r1
663
664  @OC@ r4,[r12=r2+r5.d]
665  @OC@ r8,[r12=r2+r10.d]
666
667 ; [r=r+[r].d],r
668  @OC@.b [r12=r2+[r0].d],r5
669  @OC@.w [r12=r2+[r5].d],r13
670  @OC@.d [r12=r2+[r10].d],r1
671
672  @OC@ r2,[r12=r2+[r5].d]
673  @OC@ r0,[r12=r2+[r10].d]
674
675 ; [r=r+[r+].d],r
676  @OC@.b [r12=r2+[r0+].d],r5
677  @OC@.w [r12=r2+[r5+].d],r13
678  @OC@.d [r12=r2+[r10+].d],r1
679
680  @OC@.w [r12=r2+[r5+].d],r13
681
682  @OC@.d [r12=r2+[r10+].d],r1
683
684  @OC@ r3,[r12=r2+[r5+].d]
685  @OC@ r2,[r12=r2+[r10+].d]
686
687 ; [r=r+const],r
688  @OC@.b [r12=r2+0],r5
689  @OC@.b [r12=r2+1],r5
690  @OC@.b [r12=r2+127],r5
691  @OC@.b [r12=r2+128],r5
692  @OC@.b [r12=r2+-1],r5
693  @OC@.b [r12=r2+-127],r5
694  @OC@.b [r12=r2+-128],r5
695  @OC@.b [r12=r2+255],r5
696
697  @OC@.b [r12=r2+42],r5
698  @OC@.b [r12=r2+-42],r5
699  @OC@.b [r12=r2-42],r5
700  @OC@.b [r12=r2+forty2],r5
701  @OC@.b [r12=r2+mforty2],r5
702  @OC@.b [r12=r2+-forty2],r5
703  @OC@.b [r12=r2+-mforty2],r5
704  @OC@.b [r12=r2-forty2],r5
705  @OC@.b [r12=r2-mforty2],r5
706  @OC@.b [r12=r2+externalsym],r5
707
708  @OC@.w [r12=r2+0],r13
709  @OC@.w [r12=r2+1],r13
710  @OC@.w [r12=r2+127],r13
711  @OC@.w [r12=r2+128],r13
712  @OC@.w [r12=r2+-1],r13
713  @OC@.w [r12=r2-1],r13
714  @OC@.w [r12=r2+-127],r13
715  @OC@.w [r12=r2+-128],r13
716  @OC@.w [r12=r2+-129],r13
717  @OC@.w [r12=r2-127],r13
718  @OC@.w [r12=r2-128],r13
719  @OC@.w [r12=r2-129],r13
720  @OC@.w [r12=r2+255],r13
721  @OC@.w [r12=r2+-255],r13
722  @OC@.w [r12=r2-255],r13
723  @OC@.w [r12=r2+256],r13
724  @OC@.w [r12=r2-256],r13
725  @OC@.w [r12=r2+-8856],r13
726  @OC@.w [r12=r2-8856],r13
727  @OC@.w [r12=r2+8856],r13
728
729  @OC@.w [r12=r2+42],r13
730  @OC@.w [r12=r2+-42],r13
731  @OC@.w [r12=r2-42],r13
732  @OC@.w [r12=r2+forty2],r13
733  @OC@.w [r12=r2+mforty2],r13
734  @OC@.w [r12=r2+-forty2],r5
735  @OC@.w [r12=r2-forty2],r5
736  @OC@.w [r12=r2+-mforty2],r5
737
738  @OC@.w [r12=r2+three2767],r5
739  @OC@.w [r12=r2+three2767+1],r5
740  @OC@.w [r12=r2+three2767+2],r13
741  @OC@.w [r12=r2+-three2767],r13
742  @OC@.w [r12=r2+-(three2767+1)],r13
743  @OC@.w [r12=r2+-(three2767+2)],r5
744  @OC@.w [r12=r2-three2767],r13
745  @OC@.w [r12=r2-(three2767+1)],r13
746  @OC@.w [r12=r2-(three2767+2)],r5
747  @OC@.w [r12=r2+six5535],r5
748  @OC@.w [r12=r2+externalsym],r5
749
750  @OC@.d [r12=r2+0],r1
751  @OC@.d [r12=r2+1],r1
752  @OC@.d [r12=r2+127],r1
753  @OC@.d [r12=r2+128],r1
754  @OC@.d [r12=r2+-1],r1
755  @OC@.d [r12=r2-1],r1
756  @OC@.d [r12=r2+-127],r1
757  @OC@.d [r12=r2+-128],r1
758  @OC@.d [r12=r2-127],r1
759  @OC@.d [r12=r2-128],r1
760  @OC@.d [r12=r2+255],r1
761  @OC@.d [r12=r2+-255],r1
762  @OC@.d [r12=r2-255],r1
763  @OC@.d [r12=r2+256],r1
764  @OC@.d [r12=r2-256],r1
765  @OC@.d [r12=r2-8856],r1
766  @OC@.d [r12=r2+-256],r1
767  @OC@.d [r12=r2+-8856],r1
768  @OC@.d [r12=r2+8856],r1
769
770  @OC@.d [r12=r2+2781868],r1
771  @OC@.d [r12=r2+-2701867],r1
772
773  @OC@.d [r12=r2+0x9ec0ceac],r1
774  @OC@.d [r12=r2+-0x7ec0cead],r1
775  @OC@.d [r12=r2-0x7ec0cead],r1
776  @OC@.d [r12=r2+const_int_m32],r1
777  @OC@.d [r12=r2+const_int_32],r1
778
779  @OC@.d [r12=r2+42],r13
780  @OC@.d [r12=r2-42],r5
781  @OC@.d [r12=r2+-42],r5
782  @OC@.d [r12=r2+forty2],r5
783  @OC@.d [r12=r2+mforty2],r5
784  @OC@.d [r12=r2-forty2],r5
785  @OC@.d [r12=r2-mforty2],r5
786  @OC@.d [r12=r2+-forty2],r5
787  @OC@.d [r12=r2+-mforty2],r5
788
789  @OC@.d [r12=r2+three2767],r5
790  @OC@.d [r12=r2+three2767+1],r5
791  @OC@.d [r12=r2+three2767+2],r5
792  @OC@.d [r12=r2+-three2767],r5
793  @OC@.d [r12=r2+-(three2767+1)],r13
794  @OC@.d [r12=r2+-(three2767+2)],r13
795  @OC@.d [r12=r2-three2767],r5
796  @OC@.d [r12=r2-(three2767+1)],r13
797  @OC@.d [r12=r2-(three2767+2)],r13
798  @OC@.d [r12=r2+six5535],r5
799  @OC@.d [r12=r2+six5535+1],r13
800  @OC@.d [r12=r2+two701867],r5
801  @OC@.d [r12=r2+-two701867],r5
802  @OC@.d [r12=r2-two701867],r5
803
804  @OC@.d [r12=r2+externalsym],r5
805
806  @OC@ r1,[r12=r2+0]
807  @OC@ r1,[r12=r2+1]
808  @OC@ r1,[r12=r2+127]
809  @OC@ r1,[r12=r2+128]
810  @OC@ r1,[r12=r2+-1]
811  @OC@ r1,[r12=r2-1]
812  @OC@ r1,[r12=r2+-127]
813  @OC@ r1,[r12=r2+-128]
814  @OC@ r1,[r12=r2-127]
815  @OC@ r1,[r12=r2-128]
816  @OC@ r1,[r12=r2+255]
817  @OC@ r1,[r12=r2+-255]
818  @OC@ r1,[r12=r2-255]
819  @OC@ r1,[r12=r2+256]
820  @OC@ r1,[r12=r2-256]
821  @OC@ r1,[r12=r2-8856]
822  @OC@ r1,[r12=r2+-256]
823  @OC@ r1,[r12=r2+-8856]
824  @OC@ r1,[r12=r2+8856]
825
826  @OC@ r1,[r12=r2+2781868]
827  @OC@ r1,[r12=r2+-2701867]
828
829  @OC@ r1,[r12=r2+0x9ec0ceac]
830  @OC@ r1,[r12=r2+-0x7ec0cead]
831  @OC@ r1,[r12=r2-0x7ec0cead]
832  @OC@ r1,[r12=r2+const_int_m32]
833  @OC@ r1,[r12=r2+const_int_32]
834
835  @OC@ r13,[r12=r2+42]
836  @OC@ r5,[r12=r2-42]
837  @OC@ r5,[r12=r2+-42]
838  @OC@ r5,[r12=r2+forty2]
839  @OC@ r5,[r12=r2+mforty2]
840  @OC@ r5,[r12=r2-forty2]
841  @OC@ r5,[r12=r2-mforty2]
842  @OC@ r5,[r12=r2+-forty2]
843  @OC@ r5,[r12=r2+-mforty2]
844
845  @OC@ r5,[r12=r2+three2767]
846  @OC@ r5,[r12=r2+three2767+1]
847  @OC@ r5,[r12=r2+three2767+2]
848  @OC@ r5,[r12=r2+-three2767]
849  @OC@ r13,[r12=r2+-(three2767+1)]
850  @OC@ r13,[r12=r2+-(three2767+2)]
851  @OC@ r5,[r12=r2-three2767]
852  @OC@ r13,[r12=r2-(three2767+1)]
853  @OC@ r13,[r12=r2-(three2767+2)]
854  @OC@ r5,[r12=r2+six5535]
855  @OC@ r13,[r12=r2+six5535+1]
856  @OC@ r5,[r12=r2+two701867]
857  @OC@ r5,[r12=r2+-two701867]
858  @OC@ r5,[r12=r2-two701867]
859
860  @OC@ r5,[r12=r2+externalsym]
861
862 ;;;;;;;;;;;;;;;;;;;
863 ;
864 ; [[r(+)]],r
865
866  @OC@.b [[r3]],r5
867  @OC@.w [[r2]],r4
868  @OC@.d [[r3]],r7
869
870  @OC@ r4,[[r2]]
871  @OC@ r7,[[r3]]
872
873  @OC@.b [[r9+]],r7
874  @OC@.w [[r3+]],r5
875  @OC@.d [[r1+]],r6
876
877  @OC@ r5,[[r3+]]
878  @OC@ r6,[[r1+]]
879
880  @OC@.b [externalsym],r5
881  @OC@.w [externalsym],r4
882  @OC@.d [externalsym],r7
883
884  @OC@ r4,[externalsym]
885  @OC@ r7,[externalsym]
886
887  @OC@.b [notstart],r5
888  @OC@.w [notstart],r4
889  @OC@.d [notstart],r7
890
891  @OC@ r3,[notstart]
892  @OC@ r7,[notstart]
893
894 ;;;;;;;;;;;;;;;;;;;
895 ;
896 ; [[r(+)]],r,r
897
898  @OC@.b [[r3]],r5,r12
899  @OC@.w [[r2]],r4,r9
900  @OC@.d [[r3]],r7,r9
901
902  @OC@.b [[r9+]],r7,r10
903  @OC@.w [[r3+]],r5,r9
904  @OC@.d [[r1+]],r6,r9
905
906  @OC@.b [externalsym],r5,r7
907  @OC@.w [externalsym],r4,r9
908  @OC@.d [externalsym],r7,r9
909
910  @OC@.b [notstart],r5,r9
911  @OC@.w [notstart],r4,r12
912  @OC@.d [notstart],r7,r9
913
914 end: