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
8if [ $# = 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
14else
15  BUILD=$1
16fi
17
18if [ ! -x $BUILD/as-new ] ; then
19  echo "$BUILD is not a gas build directory"
20  exit 1
21fi
22
23# Put results here, so we preserve the existing set for comparison.
24rm -rf tmpdir
25mkdir tmpdir
26cd tmpdir
27
28function 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.
39cat > allinsn.s <<EOF
40 .data
41foodata: .word 42
42 .text
43footext:
44	.text
45	.global movlmemimm
46movlmemimm:
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
57movhmemimm:
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
68movlgrmem:
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
79movhgrmem:
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
90movlmemgr:
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
101movhmemgr:
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
112movgrgri:
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
123movgrgripostinc:
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
134movgrgripredec:
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
145movgrigr:
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
156movgripostincgr:
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
167movgripredecgr:
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
178movgrgrii:
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
189movgrgriipostinc:
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
200movgrgriipredec:
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
211movgriigr:
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
222movgriipostincgr:
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
233movgriipredecgr:
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
244movgrgr:
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
255movimm8:
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
266movwimm8:
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
277movgrimm8:
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
288movwgrimm8:
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
299movgrimm16:
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
310movwgrimm16:
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
321movlowgr:
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
332movhighgr:
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
343movfgrgri:
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
354movfgrgripostinc:
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
365movfgrgripredec:
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
376movfgrigr:
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
387movfgripostincgr:
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
398movfgripredecgr:
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
409movfgrgrii:
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
420movfgrgriipostinc:
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
431movfgrgriipredec:
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
442movfgriigr:
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
453movfgriipostincgr:
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
464movfgriipredecgr:
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
475maskgrgr:
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
486maskgrimm16:
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
497pushgr:
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
508popgr:
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
519swpn:
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
530swpb:
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
541swpw:
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
552andgrgr:
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
563andimm8:
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
574andgrimm16:
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
585orgrgr:
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
596orimm8:
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
607orgrimm16:
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
618xorgrgr:
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
629xorimm8:
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
640xorgrimm16:
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
651notgr:
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
662addgrgr:
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
673addgrimm4:
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
684addimm8:
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
695addgrimm16:
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
706adcgrgr:
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
717adcgrimm4:
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
728adcimm8:
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
739adcgrimm16:
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
750subgrgr:
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
761subgrimm4:
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
772subimm8:
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
783subgrimm16:
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
794sbcgrgr:
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
805sbcgrimm4:
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
816sbcgrimm8:
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
827sbcgrimm16:
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
838incgr:
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
849incgrimm2:
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
860decgr:
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
871decgrimm2:
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
882rrcgrgr:
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
893rrcgrimm4:
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
904rlcgrgr:
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
915rlcgrimm4:
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
926shrgrgr:
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
937shrgrimm:
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
948shlgrgr:
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
959shlgrimm:
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
970asrgrgr:
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
981asrgrimm:
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
992set1grimm:
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
1003set1grgr:
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
1014set1lmemimm:
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
1025set1hmemimm:
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
1036clr1grimm:
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
1047clr1grgr:
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
1058clr1lmemimm:
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
1069clr1hmemimm:
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
1080cbwgr:
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
1091revgr:
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
1102bgr:
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
1113jmp:
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
1124jmpf:
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
1135callrgr:
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
1146callgr:
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
1157callfimm:
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
1168icallrgr:
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
1179icallgr:
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
1190icallfimm:
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
1201iret:
1202	iret
1203	.text
1204	.global ret
1205ret:
1206	ret
1207	.text
1208	.global mul
1209mul:
1210	mul
1211	.text
1212	.global div
1213div:
1214	div
1215	.text
1216	.global sdiv
1217sdiv:
1218	sdiv
1219	.text
1220	.global divlh
1221divlh:
1222	divlh
1223	.text
1224	.global sdivlh
1225sdivlh:
1226	sdivlh
1227	.text
1228	.global nop
1229nop:
1230	nop
1231	ret
1232	.text
1233	.global halt
1234halt:
1235	halt
1236	.text
1237	.global hold
1238hold:
1239	hold
1240	.text
1241	.global holdx
1242holdx:
1243	holdx
1244	.text
1245	.global brk
1246brk:
1247	brk
1248	.text
1249	.global bccgrgr
1250bccgrgr:
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
1261bccgrimm8:
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
1272bccimm16:
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
1283bngrimm4:
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
1294bngrgr:
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
1305bnlmemimm:
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
1316bnhmemimm:
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
1327bpgrimm4:
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
1338bpgrgr:
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
1349bplmemimm:
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
1360bphmemimm:
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
1371bcc:
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
1382br:
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
1393callrimm:
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
1403movgrgrsi:
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
1414movgrgrsipostinc:
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
1425movgrgrsipredec:
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
1436movgrsigr:
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
1447movgrsipostincgr:
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
1458movgrsipredecgr:
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
1467EOF
1468
1469# Finally, generate the .d file.
1470gentest allinsn
1471