Upload Tizen:Base source
[external/binutils.git] / gas / testsuite / gas / xstormy16 / allinsn.sh
1 #/bin/sh
2 # Generate test result data for xstormy16 GAS testing.
3 # This script is machine generated.
4 # It is intended to be run in the testsuite source directory.
5 #
6 # Syntax: build.sh /path/to/build/gas
7
8 if [ $# = 0 ] ; then
9   if [ ! -x ../gas/as-new ] ; then
10     echo "Usage: $0 [/path/to/gas/build]"
11   else
12     BUILD=`pwd`/../gas
13   fi
14 else
15   BUILD=$1
16 fi
17
18 if [ ! -x $BUILD/as-new ] ; then
19   echo "$BUILD is not a gas build directory"
20   exit 1
21 fi
22
23 # Put results here, so we preserve the existing set for comparison.
24 rm -rf tmpdir
25 mkdir tmpdir
26 cd tmpdir
27
28 function gentest {
29     rm -f a.out
30     $BUILD/as-new ${1}.s -o a.out
31     echo "#as:" >${1}.d
32     echo "#objdump: -dr" >>${1}.d
33     echo "#name: $1" >>${1}.d
34     $BUILD/../binutils/objdump -dr a.out |      sed -e 's/(/\\(/g'             -e 's/)/\\)/g'             -e 's/\$/\\$/g'             -e 's/\[/\\\[/g'             -e 's/\]/\\\]/g'             -e 's/[+]/\\+/g'             -e 's/[.]/\\./g'             -e 's/[*]/\\*/g' |    sed -e 's/^.*file format.*$/.*: +file format .*/'       >>${1}.d
35     rm -f a.out
36 }
37
38 # Now come all the testcases.
39 cat > allinsn.s <<EOF
40  .data
41 foodata: .word 42
42  .text
43 footext:
44         .text
45         .global movlmemimm
46 movlmemimm:
47         mov.b 0,#0
48         mov.w 255,#65535
49         mov.w 128,#32768
50         mov.b 127,#32767
51         mov.w 1,#1
52         mov.w 81,#64681
53         mov.w 247,#42230
54         mov.b 84,#16647
55         .text
56         .global movhmemimm
57 movhmemimm:
58         mov.b 0x7f00+0,#0
59         mov.w 0x7f00+255,#65535
60         mov.w 0x7f00+128,#32768
61         mov.b 0x7f00+127,#32767
62         mov.w 0x7f00+1,#1
63         mov.b 0x7f00+165,#1944
64         mov.w 0x7f00+186,#11517
65         mov.b 0x7f00+63,#25556
66         .text
67         .global movlgrmem
68 movlgrmem:
69         mov.b r0,0
70         mov.w r7,255
71         mov.w r4,128
72         mov.b r3,127
73         mov.w r1,1
74         mov.w r6,179
75         mov.w r0,183
76         mov.b r3,41
77         .text
78         .global movhgrmem
79 movhgrmem:
80         mov.b r0,0x7f00+0
81         mov.w r7,0x7f00+255
82         mov.w r4,0x7f00+128
83         mov.b r3,0x7f00+127
84         mov.w r1,0x7f00+1
85         mov.b r2,0x7f00+114
86         mov.w r2,0x7f00+210
87         mov.w r5,0x7f00+181
88         .text
89         .global movlmemgr
90 movlmemgr:
91         mov.b 0,r0
92         mov.w 255,r7
93         mov.w 128,r4
94         mov.b 127,r3
95         mov.w 1,r1
96         mov.w 137,r0
97         mov.w 26,r0
98         mov.b 127,r4
99         .text
100         .global movhmemgr
101 movhmemgr:
102         mov.b 0x7f00+0,r0
103         mov.w 0x7f00+255,r7
104         mov.w 0x7f00+128,r4
105         mov.b 0x7f00+127,r3
106         mov.w 0x7f00+1,r1
107         mov.w 0x7f00+98,r3
108         mov.w 0x7f00+135,r7
109         mov.b 0x7f00+229,r2
110         .text
111         .global movgrgri
112 movgrgri:
113         mov.b r0,(r0)
114         mov.w r7,(r15)
115         mov.w r4,(r8)
116         mov.b r3,(r7)
117         mov.w r1,(r1)
118         mov.w r6,(r4)
119         mov.b r0,(r12)
120         mov.w r5,(r9)
121         .text
122         .global movgrgripostinc
123 movgrgripostinc:
124         mov.b r0,(r0++)
125         mov.w r7,(r15++)
126         mov.w r4,(r8++)
127         mov.b r3,(r7++)
128         mov.w r1,(r1++)
129         mov.w r4,(r8++)
130         mov.w r3,(r12++)
131         mov.b r6,(r4++)
132         .text
133         .global movgrgripredec
134 movgrgripredec:
135         mov.b r0,(--r0)
136         mov.w r7,(--r15)
137         mov.w r4,(--r8)
138         mov.b r3,(--r7)
139         mov.w r1,(--r1)
140         mov.w r5,(--r9)
141         mov.w r4,(--r14)
142         mov.b r4,(--r7)
143         .text
144         .global movgrigr
145 movgrigr:
146         mov.b (r0),r0
147         mov.w (r15),r7
148         mov.w (r8),r4
149         mov.b (r7),r3
150         mov.w (r1),r1
151         mov.w (r4),r3
152         mov.b (r3),r6
153         mov.w (r7),r0
154         .text
155         .global movgripostincgr
156 movgripostincgr:
157         mov.b (r0++),r0
158         mov.w (r15++),r7
159         mov.w (r8++),r4
160         mov.b (r7++),r3
161         mov.w (r1++),r1
162         mov.w (r12++),r5
163         mov.b (r4++),r2
164         mov.b (r11++),r6
165         .text
166         .global movgripredecgr
167 movgripredecgr:
168         mov.b (--r0),r0
169         mov.w (--r15),r7
170         mov.w (--r8),r4
171         mov.b (--r7),r3
172         mov.w (--r1),r1
173         mov.b (--r8),r3
174         mov.b (--r11),r4
175         mov.w (--r1),r6
176         .text
177         .global movgrgrii
178 movgrgrii:
179         mov.b r0,(r0,0)
180         mov.w r7,(r15,-1)
181         mov.w r4,(r8,-2048)
182         mov.b r3,(r7,2047)
183         mov.w r1,(r1,1)
184         mov.w r6,(r8,-452)
185         mov.w r4,(r11,572)
186         mov.b r1,(r1,-1718)
187         .text
188         .global movgrgriipostinc
189 movgrgriipostinc:
190         mov.b r0,(r0++,0)
191         mov.w r7,(r15++,-1)
192         mov.w r4,(r8++,-2048)
193         mov.b r3,(r7++,2047)
194         mov.w r1,(r1++,1)
195         mov.w r6,(r0++,-64)
196         mov.b r7,(r15++,1060)
197         mov.b r0,(r7++,847)
198         .text
199         .global movgrgriipredec
200 movgrgriipredec:
201         mov.b r0,(--r0,0)
202         mov.w r7,(--r15,-1)
203         mov.w r4,(--r8,-2048)
204         mov.b r3,(--r7,2047)
205         mov.w r1,(--r1,1)
206         mov.w r0,(--r15,1780)
207         mov.w r6,(--r1,1506)
208         mov.w r7,(--r3,-2033)
209         .text
210         .global movgriigr
211 movgriigr:
212         mov.b (r0,0),r0
213         mov.w (r15,-1),r7
214         mov.w (r8,-2048),r4
215         mov.b (r7,2047),r3
216         mov.w (r1,1),r1
217         mov.w (r7,1948),r5
218         mov.b (r3,-844),r4
219         mov.w (r15,1704),r0
220         .text
221         .global movgriipostincgr
222 movgriipostincgr:
223         mov.b (r0++,0),r0
224         mov.w (r15++,-1),r7
225         mov.w (r8++,-2048),r4
226         mov.b (r7++,2047),r3
227         mov.w (r1++,1),r1
228         mov.w (r2++,-176),r7
229         mov.w (r8++,1389),r4
230         mov.b (r3++,47),r0
231         .text
232         .global movgriipredecgr
233 movgriipredecgr:
234         mov.b (--r0,0),r0
235         mov.w (--r15,-1),r7
236         mov.w (--r8,-2048),r4
237         mov.b (--r7,2047),r3
238         mov.w (--r1,1),r1
239         mov.b (--r8,1004),r4
240         mov.w (--r14,-1444),r2
241         mov.b (--r5,-927),r4
242         .text
243         .global movgrgr
244 movgrgr:
245         mov r0,r0
246         mov r15,r15
247         mov r8,r8
248         mov r7,r7
249         mov r1,r1
250         mov r9,r14
251         mov r7,r15
252         mov r12,r15
253         .text
254         .global movimm8
255 movimm8:
256         mov Rx,#0
257         mov Rx,#255
258         mov Rx,#128
259         mov Rx,#127
260         mov Rx,#1
261         mov Rx,#136
262         mov Rx,#83
263         mov Rx,#104
264         .text
265         .global movwimm8
266 movwimm8:
267         mov.w Rx,#0
268         mov.w Rx,#255
269         mov.w Rx,#128
270         mov.w Rx,#127
271         mov.w Rx,#1
272         mov.w Rx,#92
273         mov.w Rx,#97
274         mov.w Rx,#4
275         .text
276         .global movgrimm8
277 movgrimm8:
278         mov r0,#0
279         mov r7,#255
280         mov r4,#128
281         mov r3,#127
282         mov r1,#1
283         mov r2,#206
284         mov r4,#55
285         mov r2,#3
286         .text
287         .global movwgrimm8
288 movwgrimm8:
289         mov.w r0,#0
290         mov.w r7,#255
291         mov.w r4,#128
292         mov.w r3,#127
293         mov.w r1,#1
294         mov.w r4,#243
295         mov.w r3,#55
296         mov.w r2,#108
297         .text
298         .global movgrimm16
299 movgrimm16:
300         mov r0,#0
301         mov r15,#65535
302         mov r8,#32768
303         mov r7,#32767
304         mov r1,#1
305         mov r4,#20066
306         mov r3,#7190
307         mov r2,#15972
308         .text
309         .global movwgrimm16
310 movwgrimm16:
311         mov.w r0,#0
312         mov.w r15,#65535
313         mov.w r8,#32768
314         mov.w r7,#32767
315         mov.w r1,#1
316         mov.w r6,#16648
317         mov.w r8,#26865
318         mov.w r10,#20010
319         .text
320         .global movlowgr
321 movlowgr:
322         mov.b r0,RxL
323         mov.b r15,RxL
324         mov.b r8,RxL
325         mov.b r7,RxL
326         mov.b r1,RxL
327         mov.b r11,RxL
328         mov.b r5,RxL
329         mov.b r2,RxL
330         .text
331         .global movhighgr
332 movhighgr:
333         mov.b r0,RxH
334         mov.b r15,RxH
335         mov.b r8,RxH
336         mov.b r7,RxH
337         mov.b r1,RxH
338         mov.b r2,RxH
339         mov.b r7,RxH
340         mov.b r2,RxH
341         .text
342         .global movfgrgri
343 movfgrgri:
344         movf.b r0,(r0)
345         movf.w r7,(r15)
346         movf.w r4,(r8)
347         movf.b r3,(r7)
348         movf.w r1,(r1)
349         movf.b r6,(r15)
350         movf.b r1,(r10)
351         movf.b r6,(r1)
352         .text
353         .global movfgrgripostinc
354 movfgrgripostinc:
355         movf.b r0,(r0++)
356         movf.w r7,(r15++)
357         movf.w r4,(r8++)
358         movf.b r3,(r7++)
359         movf.w r1,(r1++)
360         movf.b r2,(r5++)
361         movf.w r5,(r10++)
362         movf.w r7,(r5++)
363         .text
364         .global movfgrgripredec
365 movfgrgripredec:
366         movf.b r0,(--r0)
367         movf.w r7,(--r15)
368         movf.w r4,(--r8)
369         movf.b r3,(--r7)
370         movf.w r1,(--r1)
371         movf.w r6,(--r10)
372         movf.b r1,(--r14)
373         movf.w r3,(--r7)
374         .text
375         .global movfgrigr
376 movfgrigr:
377         movf.b (r0),r0
378         movf.w (r15),r7
379         movf.w (r8),r4
380         movf.b (r7),r3
381         movf.w (r1),r1
382         movf.b (r5),r4
383         movf.b (r3),r4
384         movf.w (r12),r3
385         .text
386         .global movfgripostincgr
387 movfgripostincgr:
388         movf.b (r0++),r0
389         movf.w (r15++),r7
390         movf.w (r8++),r4
391         movf.b (r7++),r3
392         movf.w (r1++),r1
393         movf.b (r9++),r5
394         movf.w (r10++),r4
395         movf.b (r9++),r1
396         .text
397         .global movfgripredecgr
398 movfgripredecgr:
399         movf.b (--r0),r0
400         movf.w (--r15),r7
401         movf.w (--r8),r4
402         movf.b (--r7),r3
403         movf.w (--r1),r1
404         movf.b (--r0),r2
405         movf.w (--r11),r2
406         movf.b (--r10),r5
407         .text
408         .global movfgrgrii
409 movfgrgrii:
410         movf.b r0,(r8,r0,0)
411         movf.w r7,(r15,r15,-1)
412         movf.w r4,(r12,r8,-2048)
413         movf.b r3,(r11,r7,2047)
414         movf.w r1,(r9,r1,1)
415         movf.b r7,(r15,r0,1473)
416         movf.w r2,(r8,r9,-1522)
417         movf.w r2,(r13,r1,480)
418         .text
419         .global movfgrgriipostinc
420 movfgrgriipostinc:
421         movf.b r0,(r8,r0++,0)
422         movf.w r7,(r15,r15++,-1)
423         movf.w r4,(r12,r8++,-2048)
424         movf.b r3,(r11,r7++,2047)
425         movf.w r1,(r9,r1++,1)
426         movf.b r1,(r8,r2++,1398)
427         movf.w r4,(r8,r9++,-778)
428         movf.w r1,(r13,r14++,1564)
429         .text
430         .global movfgrgriipredec
431 movfgrgriipredec:
432         movf.b r0,(r8,--r0,0)
433         movf.w r7,(r15,--r15,-1)
434         movf.w r4,(r12,--r8,-2048)
435         movf.b r3,(r11,--r7,2047)
436         movf.w r1,(r9,--r1,1)
437         movf.b r6,(r8,--r7,254)
438         movf.w r5,(r12,--r12,1673)
439         movf.b r0,(r8,--r10,-38)
440         .text
441         .global movfgriigr
442 movfgriigr:
443         movf.b (r8,r0,0),r0
444         movf.w (r15,r15,-1),r7
445         movf.w (r12,r8,-2048),r4
446         movf.b (r11,r7,2047),r3
447         movf.w (r9,r1,1),r1
448         movf.w (r15,r2,-1636),r3
449         movf.w (r14,r12,1626),r1
450         movf.b (r11,r14,1540),r0
451         .text
452         .global movfgriipostincgr
453 movfgriipostincgr:
454         movf.b (r8,r0++,0),r0
455         movf.w (r15,r15++,-1),r7
456         movf.w (r12,r8++,-2048),r4
457         movf.b (r11,r7++,2047),r3
458         movf.w (r9,r1++,1),r1
459         movf.b (r15,r13++,466),r3
460         movf.b (r11,r11++,250),r4
461         movf.b (r10,r10++,-1480),r7
462         .text
463         .global movfgriipredecgr
464 movfgriipredecgr:
465         movf.b (r8,--r0,0),r0
466         movf.w (r15,--r15,-1),r7
467         movf.w (r12,--r8,-2048),r4
468         movf.b (r11,--r7,2047),r3
469         movf.w (r9,--r1,1),r1
470         movf.b (r13,--r10,-608),r0
471         movf.b (r9,--r11,831),r7
472         movf.w (r15,--r15,-2036),r6
473         .text
474         .global maskgrgr
475 maskgrgr:
476         mask r0,r0
477         mask r15,r15
478         mask r8,r8
479         mask r7,r7
480         mask r1,r1
481         mask r4,r0
482         mask r6,r11
483         mask r8,r4
484         .text
485         .global maskgrimm16
486 maskgrimm16:
487         mask r0,#0
488         mask r15,#65535
489         mask r8,#32768
490         mask r7,#32767
491         mask r1,#1
492         mask r7,#18153
493         mask r15,#7524
494         mask r14,#34349
495         .text
496         .global pushgr
497 pushgr:
498         push r0
499         push r15
500         push r8
501         push r7
502         push r1
503         push r9
504         push r4
505         push r3
506         .text
507         .global popgr
508 popgr:
509         pop r0
510         pop r15
511         pop r8
512         pop r7
513         pop r1
514         pop r3
515         pop r2
516         pop r12
517         .text
518         .global swpn
519 swpn:
520         swpn r0
521         swpn r15
522         swpn r8
523         swpn r7
524         swpn r1
525         swpn r15
526         swpn r4
527         swpn r3
528         .text
529         .global swpb
530 swpb:
531         swpb r0
532         swpb r15
533         swpb r8
534         swpb r7
535         swpb r1
536         swpb r2
537         swpb r12
538         swpb r2
539         .text
540         .global swpw
541 swpw:
542         swpw r0,r0
543         swpw r15,r15
544         swpw r8,r8
545         swpw r7,r7
546         swpw r1,r1
547         swpw r12,r4
548         swpw r8,r2
549         swpw r5,r13
550         .text
551         .global andgrgr
552 andgrgr:
553         and r0,r0
554         and r15,r15
555         and r8,r8
556         and r7,r7
557         and r1,r1
558         and r2,r2
559         and r15,r5
560         and r7,r5
561         .text
562         .global andimm8
563 andimm8:
564         and Rx,#0
565         and Rx,#255
566         and Rx,#128
567         and Rx,#127
568         and Rx,#1
569         and Rx,#206
570         and Rx,#11
571         and Rx,#232
572         .text
573         .global andgrimm16
574 andgrimm16:
575         and r0,#0
576         and r15,#65535
577         and r8,#32768
578         and r7,#32767
579         and r1,#1
580         and r10,#17229
581         and r11,#61451
582         and r5,#46925
583         .text
584         .global orgrgr
585 orgrgr:
586         or r0,r0
587         or r15,r15
588         or r8,r8
589         or r7,r7
590         or r1,r1
591         or r3,r5
592         or r14,r15
593         or r5,r12
594         .text
595         .global orimm8
596 orimm8:
597         or Rx,#0
598         or Rx,#255
599         or Rx,#128
600         or Rx,#127
601         or Rx,#1
602         or Rx,#4
603         or Rx,#38
604         or Rx,#52
605         .text
606         .global orgrimm16
607 orgrimm16:
608         or r0,#0
609         or r15,#65535
610         or r8,#32768
611         or r7,#32767
612         or r1,#1
613         or r2,#64563
614         or r2,#18395
615         or r1,#63059
616         .text
617         .global xorgrgr
618 xorgrgr:
619         xor r0,r0
620         xor r15,r15
621         xor r8,r8
622         xor r7,r7
623         xor r1,r1
624         xor r14,r1
625         xor r9,r9
626         xor r12,r8
627         .text
628         .global xorimm8
629 xorimm8:
630         xor Rx,#0
631         xor Rx,#255
632         xor Rx,#128
633         xor Rx,#127
634         xor Rx,#1
635         xor Rx,#208
636         xor Rx,#126
637         xor Rx,#55
638         .text
639         .global xorgrimm16
640 xorgrimm16:
641         xor r0,#0
642         xor r15,#65535
643         xor r8,#32768
644         xor r7,#32767
645         xor r1,#1
646         xor r15,#56437
647         xor r3,#901
648         xor r2,#37017
649         .text
650         .global notgr
651 notgr:
652         not r0
653         not r15
654         not r8
655         not r7
656         not r1
657         not r4
658         not r3
659         not r3
660         .text
661         .global addgrgr
662 addgrgr:
663         add r0,r0
664         add r15,r15
665         add r8,r8
666         add r7,r7
667         add r1,r1
668         add r12,r7
669         add r1,r10
670         add r14,r14
671         .text
672         .global addgrimm4
673 addgrimm4:
674         add r0,#0
675         add r15,#15
676         add r8,#8
677         add r7,#7
678         add r1,#1
679         add r7,#0
680         add r10,#9
681         add r7,#8
682         .text
683         .global addimm8
684 addimm8:
685         add Rx,#0
686         add Rx,#255
687         add Rx,#128
688         add Rx,#127
689         add Rx,#1
690         add Rx,#25
691         add Rx,#247
692         add Rx,#221
693         .text
694         .global addgrimm16
695 addgrimm16:
696         add r0,#0
697         add r15,#255
698         add r8,#128
699         add r7,#127
700         add r1,#1
701         add r3,#99
702         add r0,#15
703         add r7,#214
704         .text
705         .global adcgrgr
706 adcgrgr:
707         adc r0,r0
708         adc r15,r15
709         adc r8,r8
710         adc r7,r7
711         adc r1,r1
712         adc r2,r13
713         adc r14,r10
714         adc r2,r15
715         .text
716         .global adcgrimm4
717 adcgrimm4:
718         adc r0,#0
719         adc r15,#15
720         adc r8,#8
721         adc r7,#7
722         adc r1,#1
723         adc r15,#1
724         adc r1,#3
725         adc r6,#11
726         .text
727         .global adcimm8
728 adcimm8:
729         adc Rx,#0
730         adc Rx,#255
731         adc Rx,#128
732         adc Rx,#127
733         adc Rx,#1
734         adc Rx,#225
735         adc Rx,#75
736         adc Rx,#18
737         .text
738         .global adcgrimm16
739 adcgrimm16:
740         adc r0,#0
741         adc r15,#65535
742         adc r8,#32768
743         adc r7,#32767
744         adc r1,#1
745         adc r13,#63129
746         adc r3,#23795
747         adc r11,#49245
748         .text
749         .global subgrgr
750 subgrgr:
751         sub r0,r0
752         sub r15,r15
753         sub r8,r8
754         sub r7,r7
755         sub r1,r1
756         sub r8,r8
757         sub r9,r9
758         sub r9,r15
759         .text
760         .global subgrimm4
761 subgrimm4:
762         sub r0,#0
763         sub r15,#15
764         sub r8,#8
765         sub r7,#7
766         sub r1,#1
767         sub r2,#15
768         sub r12,#9
769         sub r8,#4
770         .text
771         .global subimm8
772 subimm8:
773         sub Rx,#0
774         sub Rx,#255
775         sub Rx,#128
776         sub Rx,#127
777         sub Rx,#1
778         sub Rx,#205
779         sub Rx,#153
780         sub Rx,#217
781         .text
782         .global subgrimm16
783 subgrimm16:
784         sub r0,#0
785         sub r15,#65535
786         sub r8,#32768
787         sub r7,#32767
788         sub r1,#1
789         sub r3,#51895
790         sub r11,#23617
791         sub r10,#7754
792         .text
793         .global sbcgrgr
794 sbcgrgr:
795         sbc r0,r0
796         sbc r15,r15
797         sbc r8,r8
798         sbc r7,r7
799         sbc r1,r1
800         sbc r11,r2
801         sbc r9,r1
802         sbc r4,r15
803         .text
804         .global sbcgrimm4
805 sbcgrimm4:
806         sbc r0,#0
807         sbc r15,#15
808         sbc r8,#8
809         sbc r7,#7
810         sbc r1,#1
811         sbc r10,#11
812         sbc r11,#10
813         sbc r13,#10
814         .text
815         .global sbcgrimm8
816 sbcgrimm8:
817         sbc Rx,#0
818         sbc Rx,#255
819         sbc Rx,#128
820         sbc Rx,#127
821         sbc Rx,#1
822         sbc Rx,#137
823         sbc Rx,#224
824         sbc Rx,#156
825         .text
826         .global sbcgrimm16
827 sbcgrimm16:
828         sbc r0,#0
829         sbc r15,#65535
830         sbc r8,#32768
831         sbc r7,#32767
832         sbc r1,#1
833         sbc r0,#32507
834         sbc r7,#8610
835         sbc r14,#20373
836         .text
837         .global incgr
838 incgr:
839         inc r0
840         inc r15
841         inc r8
842         inc r7
843         inc r1
844         inc r13
845         inc r1
846         inc r11
847         .text
848         .global incgrimm2
849 incgrimm2:
850         inc r0,#0
851         inc r15,#3
852         inc r8,#2
853         inc r7,#1
854         inc r1,#1
855         inc r14,#1
856         inc r5,#0
857         inc r12,#3
858         .text
859         .global decgr
860 decgr:
861         dec r0
862         dec r15
863         dec r8
864         dec r7
865         dec r1
866         dec r12
867         dec r8
868         dec r10
869         .text
870         .global decgrimm2
871 decgrimm2:
872         dec r0,#0
873         dec r15,#3
874         dec r8,#2
875         dec r7,#1
876         dec r1,#1
877         dec r5,#0
878         dec r13,#0
879         dec r13,#2
880         .text
881         .global rrcgrgr
882 rrcgrgr:
883         rrc r0,r0
884         rrc r15,r15
885         rrc r8,r8
886         rrc r7,r7
887         rrc r1,r1
888         rrc r8,r4
889         rrc r10,r14
890         rrc r15,r9
891         .text
892         .global rrcgrimm4
893 rrcgrimm4:
894         rrc r0,#0
895         rrc r15,#15
896         rrc r8,#8
897         rrc r7,#7
898         rrc r1,#1
899         rrc r11,#3
900         rrc r14,#12
901         rrc r2,#15
902         .text
903         .global rlcgrgr
904 rlcgrgr:
905         rlc r0,r0
906         rlc r15,r15
907         rlc r8,r8
908         rlc r7,r7
909         rlc r1,r1
910         rlc r15,r3
911         rlc r15,r7
912         rlc r15,r10
913         .text
914         .global rlcgrimm4
915 rlcgrimm4:
916         rlc r0,#0
917         rlc r15,#15
918         rlc r8,#8
919         rlc r7,#7
920         rlc r1,#1
921         rlc r8,#2
922         rlc r2,#6
923         rlc r6,#10
924         .text
925         .global shrgrgr
926 shrgrgr:
927         shr r0,r0
928         shr r15,r15
929         shr r8,r8
930         shr r7,r7
931         shr r1,r1
932         shr r13,r2
933         shr r7,r8
934         shr r6,r8
935         .text
936         .global shrgrimm
937 shrgrimm:
938         shr r0,#0
939         shr r15,#15
940         shr r8,#8
941         shr r7,#7
942         shr r1,#1
943         shr r9,#13
944         shr r2,#7
945         shr r8,#8
946         .text
947         .global shlgrgr
948 shlgrgr:
949         shl r0,r0
950         shl r15,r15
951         shl r8,r8
952         shl r7,r7
953         shl r1,r1
954         shl r2,r3
955         shl r0,r3
956         shl r2,r1
957         .text
958         .global shlgrimm
959 shlgrimm:
960         shl r0,#0
961         shl r15,#15
962         shl r8,#8
963         shl r7,#7
964         shl r1,#1
965         shl r6,#13
966         shl r3,#6
967         shl r15,#15
968         .text
969         .global asrgrgr
970 asrgrgr:
971         asr r0,r0
972         asr r15,r15
973         asr r8,r8
974         asr r7,r7
975         asr r1,r1
976         asr r5,r10
977         asr r3,r5
978         asr r6,r11
979         .text
980         .global asrgrimm
981 asrgrimm:
982         asr r0,#0
983         asr r15,#15
984         asr r8,#8
985         asr r7,#7
986         asr r1,#1
987         asr r13,#4
988         asr r0,#13
989         asr r6,#3
990         .text
991         .global set1grimm
992 set1grimm:
993         set1 r0,#0
994         set1 r15,#15
995         set1 r8,#8
996         set1 r7,#7
997         set1 r1,#1
998         set1 r6,#10
999         set1 r13,#1
1000         set1 r13,#15
1001         .text
1002         .global set1grgr
1003 set1grgr:
1004         set1 r0,r0
1005         set1 r15,r15
1006         set1 r8,r8
1007         set1 r7,r7
1008         set1 r1,r1
1009         set1 r6,r0
1010         set1 r6,r7
1011         set1 r14,r2
1012         .text
1013         .global set1lmemimm
1014 set1lmemimm:
1015         set1 0,#0
1016         set1 255,#7
1017         set1 128,#4
1018         set1 127,#3
1019         set1 1,#1
1020         set1 244,#3
1021         set1 55,#7
1022         set1 252,#5
1023         .text
1024         .global set1hmemimm
1025 set1hmemimm:
1026         set1 0x7f00+0,#0
1027         set1 0x7f00+255,#7
1028         set1 0x7f00+128,#4
1029         set1 0x7f00+127,#3
1030         set1 0x7f00+1,#1
1031         set1 0x7f00+10,#3
1032         set1 0x7f00+99,#4
1033         set1 0x7f00+148,#3
1034         .text
1035         .global clr1grimm
1036 clr1grimm:
1037         clr1 r0,#0
1038         clr1 r15,#15
1039         clr1 r8,#8
1040         clr1 r7,#7
1041         clr1 r1,#1
1042         clr1 r12,#0
1043         clr1 r8,#11
1044         clr1 r7,#7
1045         .text
1046         .global clr1grgr
1047 clr1grgr:
1048         clr1 r0,r0
1049         clr1 r15,r15
1050         clr1 r8,r8
1051         clr1 r7,r7
1052         clr1 r1,r1
1053         clr1 r3,r3
1054         clr1 r0,r1
1055         clr1 r15,r0
1056         .text
1057         .global clr1lmemimm
1058 clr1lmemimm:
1059         clr1 0,#0
1060         clr1 255,#7
1061         clr1 128,#4
1062         clr1 127,#3
1063         clr1 1,#1
1064         clr1 114,#7
1065         clr1 229,#4
1066         clr1 86,#1
1067         .text
1068         .global clr1hmemimm
1069 clr1hmemimm:
1070         clr1 0x7f00+0,#0
1071         clr1 0x7f00+255,#7
1072         clr1 0x7f00+128,#4
1073         clr1 0x7f00+127,#3
1074         clr1 0x7f00+1,#1
1075         clr1 0x7f00+44,#3
1076         clr1 0x7f00+212,#5
1077         clr1 0x7f00+67,#7
1078         .text
1079         .global cbwgr
1080 cbwgr:
1081         cbw r0
1082         cbw r15
1083         cbw r8
1084         cbw r7
1085         cbw r1
1086         cbw r8
1087         cbw r11
1088         cbw r3
1089         .text
1090         .global revgr
1091 revgr:
1092         rev r0
1093         rev r15
1094         rev r8
1095         rev r7
1096         rev r1
1097         rev r1
1098         rev r1
1099         rev r14
1100         .text
1101         .global bgr
1102 bgr:
1103         br r0
1104         br r15
1105         br r8
1106         br r7
1107         br r1
1108         br r0
1109         br r15
1110         br r12
1111         .text
1112         .global jmp
1113 jmp:
1114         jmp r8,r0
1115         jmp r9,r15
1116         jmp r9,r8
1117         jmp r8,r7
1118         jmp r9,r1
1119         jmp r9,r7
1120         jmp r9,r5
1121         jmp r8,r12
1122         .text
1123         .global jmpf
1124 jmpf:
1125         jmpf 0
1126         jmpf 16777215
1127         jmpf 8388608
1128         jmpf 8388607
1129         jmpf 1
1130         jmpf 10731629
1131         jmpf 15094866
1132         jmpf 1464024
1133         .text
1134         .global callrgr
1135 callrgr:
1136         callr r0
1137         callr r15
1138         callr r8
1139         callr r7
1140         callr r1
1141         callr r1
1142         callr r12
1143         callr r8
1144         .text
1145         .global callgr
1146 callgr:
1147         call r8,r0
1148         call r9,r15
1149         call r9,r8
1150         call r8,r7
1151         call r9,r1
1152         call r9,r6
1153         call r9,r14
1154         call r8,r12
1155         .text
1156         .global callfimm
1157 callfimm:
1158         callf 0
1159         callf 16777215
1160         callf 8388608
1161         callf 8388607
1162         callf 1
1163         callf 13546070
1164         callf 10837983
1165         callf 15197875
1166         .text
1167         .global icallrgr
1168 icallrgr:
1169         icallr r0
1170         icallr r15
1171         icallr r8
1172         icallr r7
1173         icallr r1
1174         icallr r15
1175         icallr r12
1176         icallr r9
1177         .text
1178         .global icallgr
1179 icallgr:
1180         icall r8,r0
1181         icall r9,r15
1182         icall r9,r8
1183         icall r8,r7
1184         icall r9,r1
1185         icall r9,r10
1186         icall r8,r15
1187         icall r8,r10
1188         .text
1189         .global icallfimm
1190 icallfimm:
1191         icallf 0
1192         icallf 16777215
1193         icallf 8388608
1194         icallf 8388607
1195         icallf 1
1196         icallf 9649954
1197         icallf 1979758
1198         icallf 7661640
1199         .text
1200         .global iret
1201 iret:
1202         iret
1203         .text
1204         .global ret
1205 ret:
1206         ret
1207         .text
1208         .global mul
1209 mul:
1210         mul
1211         .text
1212         .global div
1213 div:
1214         div
1215         .text
1216         .global sdiv
1217 sdiv:
1218         sdiv
1219         .text
1220         .global divlh
1221 divlh:
1222         divlh
1223         .text
1224         .global sdivlh
1225 sdivlh:
1226         sdivlh
1227         .text
1228         .global nop
1229 nop:
1230         nop
1231         ret
1232         .text
1233         .global halt
1234 halt:
1235         halt
1236         .text
1237         .global hold
1238 hold:
1239         hold
1240         .text
1241         .global holdx
1242 holdx:
1243         holdx
1244         .text
1245         .global brk
1246 brk:
1247         brk
1248         .text
1249         .global bccgrgr
1250 bccgrgr:
1251         bge r0,r0,0+(.+4)
1252         bz r15,r15,-1+(.+4)
1253         bpl r8,r8,-2048+(.+4)
1254         bls r7,r7,2047+(.+4)
1255         bnc r1,r1,1+(.+4)
1256         bc r3,r13,1799+(.+4)
1257         bge r1,r10,-2019+(.+4)
1258         bz r0,r5,-1132+(.+4)
1259         .text
1260         .global bccgrimm8
1261 bccgrimm8:
1262         bge r0,#0,0+(.+4)
1263         bz r7,#255,-1+(.+4)
1264         bpl r4,#128,-2048+(.+4)
1265         bls r3,#127,2047+(.+4)
1266         bnc r1,#1,1+(.+4)
1267         bnc r3,#8,1473+(.+4)
1268         bnz.b r5,#203,1619+(.+4)
1269         bc r7,#225,978+(.+4)
1270         .text
1271         .global bccimm16
1272 bccimm16:
1273         bge Rx,#0,0+(.+4)
1274         bz Rx,#65535,-1+(.+4)
1275         bpl Rx,#32768,-128+(.+4)
1276         bls Rx,#32767,127+(.+4)
1277         bnc Rx,#1,1+(.+4)
1278         bz.b Rx,#30715,4+(.+4)
1279         bnv Rx,#62266,-13+(.+4)
1280         bnv Rx,#48178,108+(.+4)
1281         .text
1282         .global bngrimm4
1283 bngrimm4:
1284         bn r0,#0,0+(.+4)
1285         bn r15,#15,-1+(.+4)
1286         bn r8,#8,-2048+(.+4)
1287         bn r7,#7,2047+(.+4)
1288         bn r1,#1,1+(.+4)
1289         bn r11,#3,-1975+(.+4)
1290         bn r15,#4,-1205+(.+4)
1291         bn r10,#8,1691+(.+4)
1292         .text
1293         .global bngrgr
1294 bngrgr:
1295         bn r0,r0,0+(.+4)
1296         bn r15,r15,-1+(.+4)
1297         bn r8,r8,-2048+(.+4)
1298         bn r7,r7,2047+(.+4)
1299         bn r1,r1,1+(.+4)
1300         bn r4,r3,1181+(.+4)
1301         bn r5,r2,77+(.+4)
1302         bn r3,r7,631+(.+4)
1303         .text
1304         .global bnlmemimm
1305 bnlmemimm:
1306         bn 0,#0,0+(.+4)
1307         bn 255,#7,-1+(.+4)
1308         bn 128,#4,-2048+(.+4)
1309         bn 127,#3,2047+(.+4)
1310         bn 1,#1,1+(.+4)
1311         bn 153,#7,-847+(.+4)
1312         bn 204,#0,-1881+(.+4)
1313         bn 242,#7,1396+(.+4)
1314         .text
1315         .global bnhmemimm
1316 bnhmemimm:
1317         bn 0x7f00+0,#0,0+(.+4)
1318         bn 0x7f00+255,#7,-1+(.+4)
1319         bn 0x7f00+128,#4,-2048+(.+4)
1320         bn 0x7f00+127,#3,2047+(.+4)
1321         bn 0x7f00+1,#1,1+(.+4)
1322         bn 0x7f00+185,#3,-614+(.+4)
1323         bn 0x7f00+105,#1,-668+(.+4)
1324         bn 0x7f00+79,#7,1312+(.+4)
1325         .text
1326         .global bpgrimm4
1327 bpgrimm4:
1328         bp r0,#0,0+(.+4)
1329         bp r15,#15,-1+(.+4)
1330         bp r8,#8,-2048+(.+4)
1331         bp r7,#7,2047+(.+4)
1332         bp r1,#1,1+(.+4)
1333         bp r0,#12,1075+(.+4)
1334         bp r1,#5,551+(.+4)
1335         bp r6,#8,1588+(.+4)
1336         .text
1337         .global bpgrgr
1338 bpgrgr:
1339         bp r0,r0,0+(.+4)
1340         bp r15,r15,-1+(.+4)
1341         bp r8,r8,-2048+(.+4)
1342         bp r7,r7,2047+(.+4)
1343         bp r1,r1,1+(.+4)
1344         bp r4,r9,-614+(.+4)
1345         bp r9,r10,-1360+(.+4)
1346         bp r4,r1,407+(.+4)
1347         .text
1348         .global bplmemimm
1349 bplmemimm:
1350         bp 0,#0,0+(.+4)
1351         bp 255,#7,-1+(.+4)
1352         bp 128,#4,-2048+(.+4)
1353         bp 127,#3,2047+(.+4)
1354         bp 1,#1,1+(.+4)
1355         bp 193,#3,-398+(.+4)
1356         bp 250,#2,-1553+(.+4)
1357         bp 180,#6,579+(.+4)
1358         .text
1359         .global bphmemimm
1360 bphmemimm:
1361         bp 0x7f00+0,#0,0+(.+4)
1362         bp 0x7f00+255,#7,-1+(.+4)
1363         bp 0x7f00+128,#4,-2048+(.+4)
1364         bp 0x7f00+127,#3,2047+(.+4)
1365         bp 0x7f00+1,#1,1+(.+4)
1366         bp 0x7f00+195,#1,-432+(.+4)
1367         bp 0x7f00+129,#5,-1508+(.+4)
1368         bp 0x7f00+56,#3,1723+(.+4)
1369         .text
1370         .global bcc
1371 bcc:
1372         bge 0+(.+2)
1373         bz -1+(.+2)
1374         bpl -128+(.+2)
1375         bls 127+(.+2)
1376         bnc 1+(.+2)
1377         bnz.b 48+(.+2)
1378         bnc -7+(.+2)
1379         bnz.b 74+(.+2)
1380         .text
1381         .global br
1382 br:
1383         br 0+(.+2)
1384         br -2+(.+2)
1385         br -2048+(.+2)
1386         br 2046+(.+2)
1387         br 1+(.+2)
1388         br 1472+(.+2)
1389         br 1618+(.+2)
1390         br 978+(.+2)
1391         .text
1392         .global callrimm
1393 callrimm:
1394         callr 0+(.+2)
1395         callr -2+(.+2)
1396         callr -2048+(.+2)
1397         callr 2046+(.+2)
1398         callr 1+(.+2)
1399         callr 1472+(.+2)
1400         callr 1618+(.+2)
1401         callr 978+(.+2)
1402
1403 movgrgrsi:
1404         mov.b r0,(r0,extsym)
1405         mov.w r7,(r15,extsym-1)
1406         mov.w r4,(r8,extsym-2048)
1407         mov.b r3,(r7,extsym+2047)
1408         mov.w r1,(r1,extsym+1)
1409         mov.w r6,(r8,extsym-452)
1410         mov.w r4,(r11,extsym+572)
1411         mov.b r1,(r1,extsym-1718)
1412         .text
1413         .global movgrgriipostinc
1414 movgrgrsipostinc:
1415         mov.b r0,(r0++,extsym)
1416         mov.w r7,(r15++,extsym-1)
1417         mov.w r4,(r8++,extsym-2048)
1418         mov.b r3,(r7++,extsym+2047)
1419         mov.w r1,(r1++,extsym+1)
1420         mov.w r6,(r0++,extsym-64)
1421         mov.b r7,(r15++,extsym+1060)
1422         mov.b r0,(r7++,extsym+847)
1423         .text
1424         .global movgrgriipredec
1425 movgrgrsipredec:
1426         mov.b r0,(--r0,extsym)
1427         mov.w r7,(--r15,extsym-1)
1428         mov.w r4,(--r8,extsym-2048)
1429         mov.b r3,(--r7,extsym+2047)
1430         mov.w r1,(--r1,extsym+1)
1431         mov.w r0,(--r15,extsym+1780)
1432         mov.w r6,(--r1,extsym+1506)
1433         mov.w r7,(--r3,extsym-2033)
1434         .text
1435         .global movgriigr
1436 movgrsigr:
1437         mov.b (r0,extsym),r0
1438         mov.w (r15,extsym-1),r7
1439         mov.w (r8,extsym-2048),r4
1440         mov.b (r7,extsym+2047),r3
1441         mov.w (r1,extsym+1),r1
1442         mov.w (r7,extsym+1948),r5
1443         mov.b (r3,extsym-844),r4
1444         mov.w (r15,extsym+1704),r0
1445         .text
1446         .global movgriipostincgr
1447 movgrsipostincgr:
1448         mov.b (r0++,extsym),r0
1449         mov.w (r15++,extsym-1),r7
1450         mov.w (r8++,extsym-2048),r4
1451         mov.b (r7++,extsym+2047),r3
1452         mov.w (r1++,extsym+1),r1
1453         mov.w (r2++,extsym-176),r7
1454         mov.w (r8++,extsym+1389),r4
1455         mov.b (r3++,extsym+47),r0
1456         .text
1457         .global movgriipredecgr
1458 movgrsipredecgr:
1459         mov.b (--r0,extsym),r0
1460         mov.w (--r15,extsym-1),r7
1461         mov.w (--r8,extsym-2048),r4
1462         mov.b (--r7,extsym+2047),r3
1463         mov.w (--r1,extsym+1),r1
1464         mov.b (--r8,extsym+1004),r4
1465         mov.w (--r14,extsym-1444),r2
1466         mov.b (--r5,extsym-927),r4
1467 EOF
1468
1469 # Finally, generate the .d file.
1470 gentest allinsn