xref: /openbsd-src/gnu/usr.bin/binutils-2.17/include/opcode/convex.h (revision 3d8817e467ea46cf4772788d6804dd293abfb01a)
1*3d8817e4Smiod /* Information for instruction disassembly on the Convex.
2*3d8817e4Smiod    Copyright 1989, 1993, 2002 Free Software Foundation, Inc.
3*3d8817e4Smiod 
4*3d8817e4Smiod This file is part of GDB.
5*3d8817e4Smiod 
6*3d8817e4Smiod This program is free software; you can redistribute it and/or modify
7*3d8817e4Smiod it under the terms of the GNU General Public License as published by
8*3d8817e4Smiod the Free Software Foundation; either version 2 of the License, or
9*3d8817e4Smiod (at your option) any later version.
10*3d8817e4Smiod 
11*3d8817e4Smiod This program is distributed in the hope that it will be useful,
12*3d8817e4Smiod but WITHOUT ANY WARRANTY; without even the implied warranty of
13*3d8817e4Smiod MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14*3d8817e4Smiod GNU General Public License for more details.
15*3d8817e4Smiod 
16*3d8817e4Smiod You should have received a copy of the GNU General Public License
17*3d8817e4Smiod along with this program; if not, write to the Free Software
18*3d8817e4Smiod Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
19*3d8817e4Smiod 
20*3d8817e4Smiod #define xxx 0
21*3d8817e4Smiod #define rrr 1
22*3d8817e4Smiod #define rr 2
23*3d8817e4Smiod #define rxr 3
24*3d8817e4Smiod #define r 4
25*3d8817e4Smiod #define nops 5
26*3d8817e4Smiod #define nr 6
27*3d8817e4Smiod #define pcrel 7
28*3d8817e4Smiod #define lr 8
29*3d8817e4Smiod #define rxl 9
30*3d8817e4Smiod #define rlr 10
31*3d8817e4Smiod #define rrl 11
32*3d8817e4Smiod #define iml 12
33*3d8817e4Smiod #define imr 13
34*3d8817e4Smiod #define a1r 14
35*3d8817e4Smiod #define a1l 15
36*3d8817e4Smiod #define a2r 16
37*3d8817e4Smiod #define a2l 17
38*3d8817e4Smiod #define a3 18
39*3d8817e4Smiod #define a4 19
40*3d8817e4Smiod #define a5 20
41*3d8817e4Smiod #define V 1
42*3d8817e4Smiod #define S 2
43*3d8817e4Smiod #define VM 3
44*3d8817e4Smiod #define A 4
45*3d8817e4Smiod #define VL 5
46*3d8817e4Smiod #define VS 6
47*3d8817e4Smiod #define VLS 7
48*3d8817e4Smiod #define PSW 8
49*3d8817e4Smiod /* Prevent an error during "make depend".  */
50*3d8817e4Smiod #if !defined (PC)
51*3d8817e4Smiod #define PC 9
52*3d8817e4Smiod #endif
53*3d8817e4Smiod #define ITR 10
54*3d8817e4Smiod #define VV 11
55*3d8817e4Smiod #define ITSR 12
56*3d8817e4Smiod #define TOC 13
57*3d8817e4Smiod #define CIR 14
58*3d8817e4Smiod #define TTR 15
59*3d8817e4Smiod #define VMU 16
60*3d8817e4Smiod #define VML 17
61*3d8817e4Smiod #define ICR 18
62*3d8817e4Smiod #define TCPU 19
63*3d8817e4Smiod #define CPUID 20
64*3d8817e4Smiod #define TID 21
65*3d8817e4Smiod 
66*3d8817e4Smiod const char *op[] = {
67*3d8817e4Smiod   "",
68*3d8817e4Smiod   "v0\0v1\0v2\0v3\0v4\0v5\0v6\0v7",
69*3d8817e4Smiod   "s0\0s1\0s2\0s3\0s4\0s5\0s6\0s7",
70*3d8817e4Smiod   "vm",
71*3d8817e4Smiod   "sp\0a1\0a2\0a3\0a4\0a5\0ap\0fp",
72*3d8817e4Smiod   "vl",
73*3d8817e4Smiod   "vs",
74*3d8817e4Smiod   "vls",
75*3d8817e4Smiod   "psw",
76*3d8817e4Smiod   "pc",
77*3d8817e4Smiod   "itr",
78*3d8817e4Smiod   "vv",
79*3d8817e4Smiod   "itsr",
80*3d8817e4Smiod   "toc",
81*3d8817e4Smiod   "cir",
82*3d8817e4Smiod   "ttr",
83*3d8817e4Smiod   "vmu",
84*3d8817e4Smiod   "vml",
85*3d8817e4Smiod   "icr",
86*3d8817e4Smiod   "tcpu",
87*3d8817e4Smiod   "cpuid",
88*3d8817e4Smiod   "tid",
89*3d8817e4Smiod };
90*3d8817e4Smiod 
91*3d8817e4Smiod const struct formstr format0[] = {
92*3d8817e4Smiod   {0,0,rrr,V,S,S},	/* mov */
93*3d8817e4Smiod   {0,0,rrr,S,S,V},	/* mov */
94*3d8817e4Smiod   {1,1,rrr,V,V,V},	/* merg.t */
95*3d8817e4Smiod   {2,1,rrr,V,V,V},	/* mask.t */
96*3d8817e4Smiod   {1,2,rrr,V,S,V},	/* merg.f */
97*3d8817e4Smiod   {2,2,rrr,V,S,V},	/* mask.f */
98*3d8817e4Smiod   {1,1,rrr,V,S,V},	/* merg.t */
99*3d8817e4Smiod   {2,1,rrr,V,S,V},	/* mask.t */
100*3d8817e4Smiod   {3,3,rrr,V,V,V},	/* mul.s */
101*3d8817e4Smiod   {3,4,rrr,V,V,V},	/* mul.d */
102*3d8817e4Smiod   {4,3,rrr,V,V,V},	/* div.s */
103*3d8817e4Smiod   {4,4,rrr,V,V,V},	/* div.d */
104*3d8817e4Smiod   {3,3,rrr,V,S,V},	/* mul.s */
105*3d8817e4Smiod   {3,4,rrr,V,S,V},	/* mul.d */
106*3d8817e4Smiod   {4,3,rrr,V,S,V},	/* div.s */
107*3d8817e4Smiod   {4,4,rrr,V,S,V},	/* div.d */
108*3d8817e4Smiod   {5,0,rrr,V,V,V},	/* and */
109*3d8817e4Smiod   {6,0,rrr,V,V,V},	/* or */
110*3d8817e4Smiod   {7,0,rrr,V,V,V},	/* xor */
111*3d8817e4Smiod   {8,0,rrr,V,V,V},	/* shf */
112*3d8817e4Smiod   {5,0,rrr,V,S,V},	/* and */
113*3d8817e4Smiod   {6,0,rrr,V,S,V},	/* or */
114*3d8817e4Smiod   {7,0,rrr,V,S,V},	/* xor */
115*3d8817e4Smiod   {8,0,rrr,V,S,V},	/* shf */
116*3d8817e4Smiod   {9,3,rrr,V,V,V},	/* add.s */
117*3d8817e4Smiod   {9,4,rrr,V,V,V},	/* add.d */
118*3d8817e4Smiod   {10,3,rrr,V,V,V},	/* sub.s */
119*3d8817e4Smiod   {10,4,rrr,V,V,V},	/* sub.d */
120*3d8817e4Smiod   {9,3,rrr,V,S,V},	/* add.s */
121*3d8817e4Smiod   {9,4,rrr,V,S,V},	/* add.d */
122*3d8817e4Smiod   {10,3,rrr,V,S,V},	/* sub.s */
123*3d8817e4Smiod   {10,4,rrr,V,S,V},	/* sub.d */
124*3d8817e4Smiod   {9,5,rrr,V,V,V},	/* add.b */
125*3d8817e4Smiod   {9,6,rrr,V,V,V},	/* add.h */
126*3d8817e4Smiod   {9,7,rrr,V,V,V},	/* add.w */
127*3d8817e4Smiod   {9,8,rrr,V,V,V},	/* add.l */
128*3d8817e4Smiod   {9,5,rrr,V,S,V},	/* add.b */
129*3d8817e4Smiod   {9,6,rrr,V,S,V},	/* add.h */
130*3d8817e4Smiod   {9,7,rrr,V,S,V},	/* add.w */
131*3d8817e4Smiod   {9,8,rrr,V,S,V},	/* add.l */
132*3d8817e4Smiod   {10,5,rrr,V,V,V},	/* sub.b */
133*3d8817e4Smiod   {10,6,rrr,V,V,V},	/* sub.h */
134*3d8817e4Smiod   {10,7,rrr,V,V,V},	/* sub.w */
135*3d8817e4Smiod   {10,8,rrr,V,V,V},	/* sub.l */
136*3d8817e4Smiod   {10,5,rrr,V,S,V},	/* sub.b */
137*3d8817e4Smiod   {10,6,rrr,V,S,V},	/* sub.h */
138*3d8817e4Smiod   {10,7,rrr,V,S,V},	/* sub.w */
139*3d8817e4Smiod   {10,8,rrr,V,S,V},	/* sub.l */
140*3d8817e4Smiod   {3,5,rrr,V,V,V},	/* mul.b */
141*3d8817e4Smiod   {3,6,rrr,V,V,V},	/* mul.h */
142*3d8817e4Smiod   {3,7,rrr,V,V,V},	/* mul.w */
143*3d8817e4Smiod   {3,8,rrr,V,V,V},	/* mul.l */
144*3d8817e4Smiod   {3,5,rrr,V,S,V},	/* mul.b */
145*3d8817e4Smiod   {3,6,rrr,V,S,V},	/* mul.h */
146*3d8817e4Smiod   {3,7,rrr,V,S,V},	/* mul.w */
147*3d8817e4Smiod   {3,8,rrr,V,S,V},	/* mul.l */
148*3d8817e4Smiod   {4,5,rrr,V,V,V},	/* div.b */
149*3d8817e4Smiod   {4,6,rrr,V,V,V},	/* div.h */
150*3d8817e4Smiod   {4,7,rrr,V,V,V},	/* div.w */
151*3d8817e4Smiod   {4,8,rrr,V,V,V},	/* div.l */
152*3d8817e4Smiod   {4,5,rrr,V,S,V},	/* div.b */
153*3d8817e4Smiod   {4,6,rrr,V,S,V},	/* div.h */
154*3d8817e4Smiod   {4,7,rrr,V,S,V},	/* div.w */
155*3d8817e4Smiod   {4,8,rrr,V,S,V},	/* div.l */
156*3d8817e4Smiod };
157*3d8817e4Smiod 
158*3d8817e4Smiod const struct formstr format1[] = {
159*3d8817e4Smiod   {11,0,xxx,0,0,0},	/* exit */
160*3d8817e4Smiod   {12,0,a3,0,0,0},	/* jmp */
161*3d8817e4Smiod   {13,2,a3,0,0,0},	/* jmpi.f */
162*3d8817e4Smiod   {13,1,a3,0,0,0},	/* jmpi.t */
163*3d8817e4Smiod   {14,2,a3,0,0,0},	/* jmpa.f */
164*3d8817e4Smiod   {14,1,a3,0,0,0},	/* jmpa.t */
165*3d8817e4Smiod   {15,2,a3,0,0,0},	/* jmps.f */
166*3d8817e4Smiod   {15,1,a3,0,0,0},	/* jmps.t */
167*3d8817e4Smiod   {16,0,a3,0,0,0},	/* tac */
168*3d8817e4Smiod   {17,0,a1r,A,0,0},	/* ldea */
169*3d8817e4Smiod   {18,8,a1l,VLS,0,0},	/* ld.l */
170*3d8817e4Smiod   {18,9,a1l,VM,0,0},	/* ld.x */
171*3d8817e4Smiod   {19,0,a3,0,0,0},	/* tas */
172*3d8817e4Smiod   {20,0,a3,0,0,0},	/* pshea */
173*3d8817e4Smiod   {21,8,a2l,VLS,0,0},	/* st.l */
174*3d8817e4Smiod   {21,9,a2l,VM,0,0},	/* st.x */
175*3d8817e4Smiod   {0,0,0,0,0,0},
176*3d8817e4Smiod   {0,0,0,0,0,0},
177*3d8817e4Smiod   {0,0,0,0,0,0},
178*3d8817e4Smiod   {0,0,0,0,0,0},
179*3d8817e4Smiod   {0,0,0,0,0,0},
180*3d8817e4Smiod   {0,0,0,0,0,0},
181*3d8817e4Smiod   {0,0,0,0,0,0},
182*3d8817e4Smiod   {0,0,0,0,0,0},
183*3d8817e4Smiod   {0,0,0,0,0,0},
184*3d8817e4Smiod   {0,0,0,0,0,0},
185*3d8817e4Smiod   {0,0,0,0,0,0},
186*3d8817e4Smiod   {0,0,0,0,0,0},
187*3d8817e4Smiod   {0,0,0,0,0,0},
188*3d8817e4Smiod   {0,0,0,0,0,0},
189*3d8817e4Smiod   {0,0,0,0,0,0},
190*3d8817e4Smiod   {0,0,0,0,0,0},
191*3d8817e4Smiod   {22,0,a3,0,0,0},	/* call */
192*3d8817e4Smiod   {23,0,a3,0,0,0},	/* calls */
193*3d8817e4Smiod   {24,0,a3,0,0,0},	/* callq */
194*3d8817e4Smiod   {25,0,a1r,A,0,0},	/* pfork */
195*3d8817e4Smiod   {26,5,a2r,S,0,0},	/* ste.b */
196*3d8817e4Smiod   {26,6,a2r,S,0,0},	/* ste.h */
197*3d8817e4Smiod   {26,7,a2r,S,0,0},	/* ste.w */
198*3d8817e4Smiod   {26,8,a2r,S,0,0},	/* ste.l */
199*3d8817e4Smiod   {18,5,a1r,A,0,0},	/* ld.b */
200*3d8817e4Smiod   {18,6,a1r,A,0,0},	/* ld.h */
201*3d8817e4Smiod   {18,7,a1r,A,0,0},	/* ld.w */
202*3d8817e4Smiod   {27,7,a1r,A,0,0},	/* incr.w */
203*3d8817e4Smiod   {21,5,a2r,A,0,0},	/* st.b */
204*3d8817e4Smiod   {21,6,a2r,A,0,0},	/* st.h */
205*3d8817e4Smiod   {21,7,a2r,A,0,0},	/* st.w */
206*3d8817e4Smiod   {27,8,a1r,S,0,0},	/* incr.l */
207*3d8817e4Smiod   {18,5,a1r,S,0,0},	/* ld.b */
208*3d8817e4Smiod   {18,6,a1r,S,0,0},	/* ld.h */
209*3d8817e4Smiod   {18,7,a1r,S,0,0},	/* ld.w */
210*3d8817e4Smiod   {18,8,a1r,S,0,0},	/* ld.l */
211*3d8817e4Smiod   {21,5,a2r,S,0,0},	/* st.b */
212*3d8817e4Smiod   {21,6,a2r,S,0,0},	/* st.h */
213*3d8817e4Smiod   {21,7,a2r,S,0,0},	/* st.w */
214*3d8817e4Smiod   {21,8,a2r,S,0,0},	/* st.l */
215*3d8817e4Smiod   {18,5,a1r,V,0,0},	/* ld.b */
216*3d8817e4Smiod   {18,6,a1r,V,0,0},	/* ld.h */
217*3d8817e4Smiod   {18,7,a1r,V,0,0},	/* ld.w */
218*3d8817e4Smiod   {18,8,a1r,V,0,0},	/* ld.l */
219*3d8817e4Smiod   {21,5,a2r,V,0,0},	/* st.b */
220*3d8817e4Smiod   {21,6,a2r,V,0,0},	/* st.h */
221*3d8817e4Smiod   {21,7,a2r,V,0,0},	/* st.w */
222*3d8817e4Smiod   {21,8,a2r,V,0,0},	/* st.l */
223*3d8817e4Smiod };
224*3d8817e4Smiod 
225*3d8817e4Smiod const struct formstr format2[] = {
226*3d8817e4Smiod   {28,5,rr,A,A,0},	/* cvtw.b */
227*3d8817e4Smiod   {28,6,rr,A,A,0},	/* cvtw.h */
228*3d8817e4Smiod   {29,7,rr,A,A,0},	/* cvtb.w */
229*3d8817e4Smiod   {30,7,rr,A,A,0},	/* cvth.w */
230*3d8817e4Smiod   {28,5,rr,S,S,0},	/* cvtw.b */
231*3d8817e4Smiod   {28,6,rr,S,S,0},	/* cvtw.h */
232*3d8817e4Smiod   {29,7,rr,S,S,0},	/* cvtb.w */
233*3d8817e4Smiod   {30,7,rr,S,S,0},	/* cvth.w */
234*3d8817e4Smiod   {28,3,rr,S,S,0},	/* cvtw.s */
235*3d8817e4Smiod   {31,7,rr,S,S,0},	/* cvts.w */
236*3d8817e4Smiod   {32,3,rr,S,S,0},	/* cvtd.s */
237*3d8817e4Smiod   {31,4,rr,S,S,0},	/* cvts.d */
238*3d8817e4Smiod   {31,8,rr,S,S,0},	/* cvts.l */
239*3d8817e4Smiod   {32,8,rr,S,S,0},	/* cvtd.l */
240*3d8817e4Smiod   {33,3,rr,S,S,0},	/* cvtl.s */
241*3d8817e4Smiod   {33,4,rr,S,S,0},	/* cvtl.d */
242*3d8817e4Smiod   {34,0,rr,A,A,0},	/* ldpa */
243*3d8817e4Smiod   {8,0,nr,A,0,0},	/* shf */
244*3d8817e4Smiod   {18,6,nr,A,0,0},	/* ld.h */
245*3d8817e4Smiod   {18,7,nr,A,0,0},	/* ld.w */
246*3d8817e4Smiod   {33,7,rr,S,S,0},	/* cvtl.w */
247*3d8817e4Smiod   {28,8,rr,S,S,0},	/* cvtw.l */
248*3d8817e4Smiod   {35,1,rr,S,S,0},	/* plc.t */
249*3d8817e4Smiod   {36,0,rr,S,S,0},	/* tzc */
250*3d8817e4Smiod   {37,6,rr,A,A,0},	/* eq.h */
251*3d8817e4Smiod   {37,7,rr,A,A,0},	/* eq.w */
252*3d8817e4Smiod   {37,6,nr,A,0,0},	/* eq.h */
253*3d8817e4Smiod   {37,7,nr,A,0,0},	/* eq.w */
254*3d8817e4Smiod   {37,5,rr,S,S,0},	/* eq.b */
255*3d8817e4Smiod   {37,6,rr,S,S,0},	/* eq.h */
256*3d8817e4Smiod   {37,7,rr,S,S,0},	/* eq.w */
257*3d8817e4Smiod   {37,8,rr,S,S,0},	/* eq.l */
258*3d8817e4Smiod   {38,6,rr,A,A,0},	/* leu.h */
259*3d8817e4Smiod   {38,7,rr,A,A,0},	/* leu.w */
260*3d8817e4Smiod   {38,6,nr,A,0,0},	/* leu.h */
261*3d8817e4Smiod   {38,7,nr,A,0,0},	/* leu.w */
262*3d8817e4Smiod   {38,5,rr,S,S,0},	/* leu.b */
263*3d8817e4Smiod   {38,6,rr,S,S,0},	/* leu.h */
264*3d8817e4Smiod   {38,7,rr,S,S,0},	/* leu.w */
265*3d8817e4Smiod   {38,8,rr,S,S,0},	/* leu.l */
266*3d8817e4Smiod   {39,6,rr,A,A,0},	/* ltu.h */
267*3d8817e4Smiod   {39,7,rr,A,A,0},	/* ltu.w */
268*3d8817e4Smiod   {39,6,nr,A,0,0},	/* ltu.h */
269*3d8817e4Smiod   {39,7,nr,A,0,0},	/* ltu.w */
270*3d8817e4Smiod   {39,5,rr,S,S,0},	/* ltu.b */
271*3d8817e4Smiod   {39,6,rr,S,S,0},	/* ltu.h */
272*3d8817e4Smiod   {39,7,rr,S,S,0},	/* ltu.w */
273*3d8817e4Smiod   {39,8,rr,S,S,0},	/* ltu.l */
274*3d8817e4Smiod   {40,6,rr,A,A,0},	/* le.h */
275*3d8817e4Smiod   {40,7,rr,A,A,0},	/* le.w */
276*3d8817e4Smiod   {40,6,nr,A,0,0},	/* le.h */
277*3d8817e4Smiod   {40,7,nr,A,0,0},	/* le.w */
278*3d8817e4Smiod   {40,5,rr,S,S,0},	/* le.b */
279*3d8817e4Smiod   {40,6,rr,S,S,0},	/* le.h */
280*3d8817e4Smiod   {40,7,rr,S,S,0},	/* le.w */
281*3d8817e4Smiod   {40,8,rr,S,S,0},	/* le.l */
282*3d8817e4Smiod   {41,6,rr,A,A,0},	/* lt.h */
283*3d8817e4Smiod   {41,7,rr,A,A,0},	/* lt.w */
284*3d8817e4Smiod   {41,6,nr,A,0,0},	/* lt.h */
285*3d8817e4Smiod   {41,7,nr,A,0,0},	/* lt.w */
286*3d8817e4Smiod   {41,5,rr,S,S,0},	/* lt.b */
287*3d8817e4Smiod   {41,6,rr,S,S,0},	/* lt.h */
288*3d8817e4Smiod   {41,7,rr,S,S,0},	/* lt.w */
289*3d8817e4Smiod   {41,8,rr,S,S,0},	/* lt.l */
290*3d8817e4Smiod   {9,7,rr,S,A,0},	/* add.w */
291*3d8817e4Smiod   {8,0,rr,A,A,0},	/* shf */
292*3d8817e4Smiod   {0,0,rr,A,A,0},	/* mov */
293*3d8817e4Smiod   {0,0,rr,S,A,0},	/* mov */
294*3d8817e4Smiod   {0,7,rr,S,S,0},	/* mov.w */
295*3d8817e4Smiod   {8,0,rr,S,S,0},	/* shf */
296*3d8817e4Smiod   {0,0,rr,S,S,0},	/* mov */
297*3d8817e4Smiod   {0,0,rr,A,S,0},	/* mov */
298*3d8817e4Smiod   {5,0,rr,A,A,0},	/* and */
299*3d8817e4Smiod   {6,0,rr,A,A,0},	/* or */
300*3d8817e4Smiod   {7,0,rr,A,A,0},	/* xor */
301*3d8817e4Smiod   {42,0,rr,A,A,0},	/* not */
302*3d8817e4Smiod   {5,0,rr,S,S,0},	/* and */
303*3d8817e4Smiod   {6,0,rr,S,S,0},	/* or */
304*3d8817e4Smiod   {7,0,rr,S,S,0},	/* xor */
305*3d8817e4Smiod   {42,0,rr,S,S,0},	/* not */
306*3d8817e4Smiod   {40,3,rr,S,S,0},	/* le.s */
307*3d8817e4Smiod   {40,4,rr,S,S,0},	/* le.d */
308*3d8817e4Smiod   {41,3,rr,S,S,0},	/* lt.s */
309*3d8817e4Smiod   {41,4,rr,S,S,0},	/* lt.d */
310*3d8817e4Smiod   {9,3,rr,S,S,0},	/* add.s */
311*3d8817e4Smiod   {9,4,rr,S,S,0},	/* add.d */
312*3d8817e4Smiod   {10,3,rr,S,S,0},	/* sub.s */
313*3d8817e4Smiod   {10,4,rr,S,S,0},	/* sub.d */
314*3d8817e4Smiod   {37,3,rr,S,S,0},	/* eq.s */
315*3d8817e4Smiod   {37,4,rr,S,S,0},	/* eq.d */
316*3d8817e4Smiod   {43,6,rr,A,A,0},	/* neg.h */
317*3d8817e4Smiod   {43,7,rr,A,A,0},	/* neg.w */
318*3d8817e4Smiod   {3,3,rr,S,S,0},	/* mul.s */
319*3d8817e4Smiod   {3,4,rr,S,S,0},	/* mul.d */
320*3d8817e4Smiod   {4,3,rr,S,S,0},	/* div.s */
321*3d8817e4Smiod   {4,4,rr,S,S,0},	/* div.d */
322*3d8817e4Smiod   {9,6,rr,A,A,0},	/* add.h */
323*3d8817e4Smiod   {9,7,rr,A,A,0},	/* add.w */
324*3d8817e4Smiod   {9,6,nr,A,0,0},	/* add.h */
325*3d8817e4Smiod   {9,7,nr,A,0,0},	/* add.w */
326*3d8817e4Smiod   {9,5,rr,S,S,0},	/* add.b */
327*3d8817e4Smiod   {9,6,rr,S,S,0},	/* add.h */
328*3d8817e4Smiod   {9,7,rr,S,S,0},	/* add.w */
329*3d8817e4Smiod   {9,8,rr,S,S,0},	/* add.l */
330*3d8817e4Smiod   {10,6,rr,A,A,0},	/* sub.h */
331*3d8817e4Smiod   {10,7,rr,A,A,0},	/* sub.w */
332*3d8817e4Smiod   {10,6,nr,A,0,0},	/* sub.h */
333*3d8817e4Smiod   {10,7,nr,A,0,0},	/* sub.w */
334*3d8817e4Smiod   {10,5,rr,S,S,0},	/* sub.b */
335*3d8817e4Smiod   {10,6,rr,S,S,0},	/* sub.h */
336*3d8817e4Smiod   {10,7,rr,S,S,0},	/* sub.w */
337*3d8817e4Smiod   {10,8,rr,S,S,0},	/* sub.l */
338*3d8817e4Smiod   {3,6,rr,A,A,0},	/* mul.h */
339*3d8817e4Smiod   {3,7,rr,A,A,0},	/* mul.w */
340*3d8817e4Smiod   {3,6,nr,A,0,0},	/* mul.h */
341*3d8817e4Smiod   {3,7,nr,A,0,0},	/* mul.w */
342*3d8817e4Smiod   {3,5,rr,S,S,0},	/* mul.b */
343*3d8817e4Smiod   {3,6,rr,S,S,0},	/* mul.h */
344*3d8817e4Smiod   {3,7,rr,S,S,0},	/* mul.w */
345*3d8817e4Smiod   {3,8,rr,S,S,0},	/* mul.l */
346*3d8817e4Smiod   {4,6,rr,A,A,0},	/* div.h */
347*3d8817e4Smiod   {4,7,rr,A,A,0},	/* div.w */
348*3d8817e4Smiod   {4,6,nr,A,0,0},	/* div.h */
349*3d8817e4Smiod   {4,7,nr,A,0,0},	/* div.w */
350*3d8817e4Smiod   {4,5,rr,S,S,0},	/* div.b */
351*3d8817e4Smiod   {4,6,rr,S,S,0},	/* div.h */
352*3d8817e4Smiod   {4,7,rr,S,S,0},	/* div.w */
353*3d8817e4Smiod   {4,8,rr,S,S,0},	/* div.l */
354*3d8817e4Smiod };
355*3d8817e4Smiod 
356*3d8817e4Smiod const struct formstr format3[] = {
357*3d8817e4Smiod   {32,3,rr,V,V,0},	/* cvtd.s */
358*3d8817e4Smiod   {31,4,rr,V,V,0},	/* cvts.d */
359*3d8817e4Smiod   {33,4,rr,V,V,0},	/* cvtl.d */
360*3d8817e4Smiod   {32,8,rr,V,V,0},	/* cvtd.l */
361*3d8817e4Smiod   {0,0,rrl,S,S,VM},	/* mov */
362*3d8817e4Smiod   {0,0,rlr,S,VM,S},	/* mov */
363*3d8817e4Smiod   {0,0,0,0,0,0},
364*3d8817e4Smiod   {44,0,rr,S,S,0},	/* lop */
365*3d8817e4Smiod   {36,0,rr,V,V,0},	/* tzc */
366*3d8817e4Smiod   {44,0,rr,V,V,0},	/* lop */
367*3d8817e4Smiod   {0,0,0,0,0,0},
368*3d8817e4Smiod   {42,0,rr,V,V,0},	/* not */
369*3d8817e4Smiod   {8,0,rr,S,V,0},	/* shf */
370*3d8817e4Smiod   {35,1,rr,V,V,0},	/* plc.t */
371*3d8817e4Smiod   {45,2,rr,V,V,0},	/* cprs.f */
372*3d8817e4Smiod   {45,1,rr,V,V,0},	/* cprs.t */
373*3d8817e4Smiod   {37,3,rr,V,V,0},	/* eq.s */
374*3d8817e4Smiod   {37,4,rr,V,V,0},	/* eq.d */
375*3d8817e4Smiod   {43,3,rr,V,V,0},	/* neg.s */
376*3d8817e4Smiod   {43,4,rr,V,V,0},	/* neg.d */
377*3d8817e4Smiod   {37,3,rr,S,V,0},	/* eq.s */
378*3d8817e4Smiod   {37,4,rr,S,V,0},	/* eq.d */
379*3d8817e4Smiod   {43,3,rr,S,S,0},	/* neg.s */
380*3d8817e4Smiod   {43,4,rr,S,S,0},	/* neg.d */
381*3d8817e4Smiod   {40,3,rr,V,V,0},	/* le.s */
382*3d8817e4Smiod   {40,4,rr,V,V,0},	/* le.d */
383*3d8817e4Smiod   {41,3,rr,V,V,0},	/* lt.s */
384*3d8817e4Smiod   {41,4,rr,V,V,0},	/* lt.d */
385*3d8817e4Smiod   {40,3,rr,S,V,0},	/* le.s */
386*3d8817e4Smiod   {40,4,rr,S,V,0},	/* le.d */
387*3d8817e4Smiod   {41,3,rr,S,V,0},	/* lt.s */
388*3d8817e4Smiod   {41,4,rr,S,V,0},	/* lt.d */
389*3d8817e4Smiod   {37,5,rr,V,V,0},	/* eq.b */
390*3d8817e4Smiod   {37,6,rr,V,V,0},	/* eq.h */
391*3d8817e4Smiod   {37,7,rr,V,V,0},	/* eq.w */
392*3d8817e4Smiod   {37,8,rr,V,V,0},	/* eq.l */
393*3d8817e4Smiod   {37,5,rr,S,V,0},	/* eq.b */
394*3d8817e4Smiod   {37,6,rr,S,V,0},	/* eq.h */
395*3d8817e4Smiod   {37,7,rr,S,V,0},	/* eq.w */
396*3d8817e4Smiod   {37,8,rr,S,V,0},	/* eq.l */
397*3d8817e4Smiod   {40,5,rr,V,V,0},	/* le.b */
398*3d8817e4Smiod   {40,6,rr,V,V,0},	/* le.h */
399*3d8817e4Smiod   {40,7,rr,V,V,0},	/* le.w */
400*3d8817e4Smiod   {40,8,rr,V,V,0},	/* le.l */
401*3d8817e4Smiod   {40,5,rr,S,V,0},	/* le.b */
402*3d8817e4Smiod   {40,6,rr,S,V,0},	/* le.h */
403*3d8817e4Smiod   {40,7,rr,S,V,0},	/* le.w */
404*3d8817e4Smiod   {40,8,rr,S,V,0},	/* le.l */
405*3d8817e4Smiod   {41,5,rr,V,V,0},	/* lt.b */
406*3d8817e4Smiod   {41,6,rr,V,V,0},	/* lt.h */
407*3d8817e4Smiod   {41,7,rr,V,V,0},	/* lt.w */
408*3d8817e4Smiod   {41,8,rr,V,V,0},	/* lt.l */
409*3d8817e4Smiod   {41,5,rr,S,V,0},	/* lt.b */
410*3d8817e4Smiod   {41,6,rr,S,V,0},	/* lt.h */
411*3d8817e4Smiod   {41,7,rr,S,V,0},	/* lt.w */
412*3d8817e4Smiod   {41,8,rr,S,V,0},	/* lt.l */
413*3d8817e4Smiod   {43,5,rr,V,V,0},	/* neg.b */
414*3d8817e4Smiod   {43,6,rr,V,V,0},	/* neg.h */
415*3d8817e4Smiod   {43,7,rr,V,V,0},	/* neg.w */
416*3d8817e4Smiod   {43,8,rr,V,V,0},	/* neg.l */
417*3d8817e4Smiod   {43,5,rr,S,S,0},	/* neg.b */
418*3d8817e4Smiod   {43,6,rr,S,S,0},	/* neg.h */
419*3d8817e4Smiod   {43,7,rr,S,S,0},	/* neg.w */
420*3d8817e4Smiod   {43,8,rr,S,S,0},	/* neg.l */
421*3d8817e4Smiod };
422*3d8817e4Smiod 
423*3d8817e4Smiod const struct formstr format4[] = {
424*3d8817e4Smiod   {46,0,nops,0,0,0},	/* nop */
425*3d8817e4Smiod   {47,0,pcrel,0,0,0},	/* br */
426*3d8817e4Smiod   {48,2,pcrel,0,0,0},	/* bri.f */
427*3d8817e4Smiod   {48,1,pcrel,0,0,0},	/* bri.t */
428*3d8817e4Smiod   {49,2,pcrel,0,0,0},	/* bra.f */
429*3d8817e4Smiod   {49,1,pcrel,0,0,0},	/* bra.t */
430*3d8817e4Smiod   {50,2,pcrel,0,0,0},	/* brs.f */
431*3d8817e4Smiod   {50,1,pcrel,0,0,0},	/* brs.t */
432*3d8817e4Smiod };
433*3d8817e4Smiod 
434*3d8817e4Smiod const struct formstr format5[] = {
435*3d8817e4Smiod   {51,5,rr,V,V,0},	/* ldvi.b */
436*3d8817e4Smiod   {51,6,rr,V,V,0},	/* ldvi.h */
437*3d8817e4Smiod   {51,7,rr,V,V,0},	/* ldvi.w */
438*3d8817e4Smiod   {51,8,rr,V,V,0},	/* ldvi.l */
439*3d8817e4Smiod   {28,3,rr,V,V,0},	/* cvtw.s */
440*3d8817e4Smiod   {31,7,rr,V,V,0},	/* cvts.w */
441*3d8817e4Smiod   {28,8,rr,V,V,0},	/* cvtw.l */
442*3d8817e4Smiod   {33,7,rr,V,V,0},	/* cvtl.w */
443*3d8817e4Smiod   {52,5,rxr,V,V,0},	/* stvi.b */
444*3d8817e4Smiod   {52,6,rxr,V,V,0},	/* stvi.h */
445*3d8817e4Smiod   {52,7,rxr,V,V,0},	/* stvi.w */
446*3d8817e4Smiod   {52,8,rxr,V,V,0},	/* stvi.l */
447*3d8817e4Smiod   {52,5,rxr,S,V,0},	/* stvi.b */
448*3d8817e4Smiod   {52,6,rxr,S,V,0},	/* stvi.h */
449*3d8817e4Smiod   {52,7,rxr,S,V,0},	/* stvi.w */
450*3d8817e4Smiod   {52,8,rxr,S,V,0},	/* stvi.l */
451*3d8817e4Smiod };
452*3d8817e4Smiod 
453*3d8817e4Smiod const struct formstr format6[] = {
454*3d8817e4Smiod   {53,0,r,A,0,0},	/* ldsdr */
455*3d8817e4Smiod   {54,0,r,A,0,0},	/* ldkdr */
456*3d8817e4Smiod   {55,3,r,S,0,0},	/* ln.s */
457*3d8817e4Smiod   {55,4,r,S,0,0},	/* ln.d */
458*3d8817e4Smiod   {56,0,nops,0,0,0},	/* patu */
459*3d8817e4Smiod   {57,0,r,A,0,0},	/* pate */
460*3d8817e4Smiod   {58,0,nops,0,0,0},	/* pich */
461*3d8817e4Smiod   {59,0,nops,0,0,0},	/* plch */
462*3d8817e4Smiod   {0,0,lr,PSW,A,0},	/* mov */
463*3d8817e4Smiod   {0,0,rxl,A,PSW,0},	/* mov */
464*3d8817e4Smiod   {0,0,lr,PC,A,0},	/* mov */
465*3d8817e4Smiod   {60,0,r,S,0,0},	/* idle */
466*3d8817e4Smiod   {0,0,lr,ITR,S,0},	/* mov */
467*3d8817e4Smiod   {0,0,rxl,S,ITR,0},	/* mov */
468*3d8817e4Smiod   {0,0,0,0,0,0},
469*3d8817e4Smiod   {0,0,rxl,S,ITSR,0},	/* mov */
470*3d8817e4Smiod   {61,0,nops,0,0,0},	/* rtnq */
471*3d8817e4Smiod   {62,0,nops,0,0,0},	/* cfork */
472*3d8817e4Smiod   {63,0,nops,0,0,0},	/* rtn */
473*3d8817e4Smiod   {64,0,nops,0,0,0},	/* wfork */
474*3d8817e4Smiod   {65,0,nops,0,0,0},	/* join */
475*3d8817e4Smiod   {66,0,nops,0,0,0},	/* rtnc */
476*3d8817e4Smiod   {67,3,r,S,0,0},	/* exp.s */
477*3d8817e4Smiod   {67,4,r,S,0,0},	/* exp.d */
478*3d8817e4Smiod   {68,3,r,S,0,0},	/* sin.s */
479*3d8817e4Smiod   {68,4,r,S,0,0},	/* sin.d */
480*3d8817e4Smiod   {0,0,0,0,0,0},
481*3d8817e4Smiod   {0,0,0,0,0,0},
482*3d8817e4Smiod   {69,3,r,S,0,0},	/* cos.s */
483*3d8817e4Smiod   {69,4,r,S,0,0},	/* cos.d */
484*3d8817e4Smiod   {0,0,0,0,0,0},
485*3d8817e4Smiod   {0,0,0,0,0,0},
486*3d8817e4Smiod   {70,7,r,A,0,0},	/* psh.w */
487*3d8817e4Smiod   {0,0,0,0,0,0},
488*3d8817e4Smiod   {71,7,r,A,0,0},	/* pop.w */
489*3d8817e4Smiod   {0,0,0,0,0,0},
490*3d8817e4Smiod   {70,7,r,S,0,0},	/* psh.w */
491*3d8817e4Smiod   {70,8,r,S,0,0},	/* psh.l */
492*3d8817e4Smiod   {71,7,r,S,0,0},	/* pop.w */
493*3d8817e4Smiod   {71,8,r,S,0,0},	/* pop.l */
494*3d8817e4Smiod   {72,0,nops,0,0,0},	/* eni */
495*3d8817e4Smiod   {73,0,nops,0,0,0},	/* dsi */
496*3d8817e4Smiod   {74,0,nops,0,0,0},	/* bkpt */
497*3d8817e4Smiod   {75,0,nops,0,0,0},	/* msync */
498*3d8817e4Smiod   {76,0,r,S,0,0},	/* mski */
499*3d8817e4Smiod   {77,0,r,S,0,0},	/* xmti */
500*3d8817e4Smiod   {0,0,rxl,S,VV,0},	/* mov */
501*3d8817e4Smiod   {78,0,nops,0,0,0},	/* tstvv */
502*3d8817e4Smiod   {0,0,lr,VS,A,0},	/* mov */
503*3d8817e4Smiod   {0,0,rxl,A,VS,0},	/* mov */
504*3d8817e4Smiod   {0,0,lr,VL,A,0},	/* mov */
505*3d8817e4Smiod   {0,0,rxl,A,VL,0},	/* mov */
506*3d8817e4Smiod   {0,7,lr,VS,S,0},	/* mov.w */
507*3d8817e4Smiod   {0,7,rxl,S,VS,0},	/* mov.w */
508*3d8817e4Smiod   {0,7,lr,VL,S,0},	/* mov.w */
509*3d8817e4Smiod   {0,7,rxl,S,VL,0},	/* mov.w */
510*3d8817e4Smiod   {79,0,r,A,0,0},	/* diag */
511*3d8817e4Smiod   {80,0,nops,0,0,0},	/* pbkpt */
512*3d8817e4Smiod   {81,3,r,S,0,0},	/* sqrt.s */
513*3d8817e4Smiod   {81,4,r,S,0,0},	/* sqrt.d */
514*3d8817e4Smiod   {82,0,nops,0,0,0},	/* casr */
515*3d8817e4Smiod   {0,0,0,0,0,0},
516*3d8817e4Smiod   {83,3,r,S,0,0},	/* atan.s */
517*3d8817e4Smiod   {83,4,r,S,0,0},	/* atan.d */
518*3d8817e4Smiod };
519*3d8817e4Smiod 
520*3d8817e4Smiod const struct formstr format7[] = {
521*3d8817e4Smiod   {84,5,r,V,0,0},	/* sum.b */
522*3d8817e4Smiod   {84,6,r,V,0,0},	/* sum.h */
523*3d8817e4Smiod   {84,7,r,V,0,0},	/* sum.w */
524*3d8817e4Smiod   {84,8,r,V,0,0},	/* sum.l */
525*3d8817e4Smiod   {85,0,r,V,0,0},	/* all */
526*3d8817e4Smiod   {86,0,r,V,0,0},	/* any */
527*3d8817e4Smiod   {87,0,r,V,0,0},	/* parity */
528*3d8817e4Smiod   {0,0,0,0,0,0},
529*3d8817e4Smiod   {88,5,r,V,0,0},	/* max.b */
530*3d8817e4Smiod   {88,6,r,V,0,0},	/* max.h */
531*3d8817e4Smiod   {88,7,r,V,0,0},	/* max.w */
532*3d8817e4Smiod   {88,8,r,V,0,0},	/* max.l */
533*3d8817e4Smiod   {89,5,r,V,0,0},	/* min.b */
534*3d8817e4Smiod   {89,6,r,V,0,0},	/* min.h */
535*3d8817e4Smiod   {89,7,r,V,0,0},	/* min.w */
536*3d8817e4Smiod   {89,8,r,V,0,0},	/* min.l */
537*3d8817e4Smiod   {84,3,r,V,0,0},	/* sum.s */
538*3d8817e4Smiod   {84,4,r,V,0,0},	/* sum.d */
539*3d8817e4Smiod   {90,3,r,V,0,0},	/* prod.s */
540*3d8817e4Smiod   {90,4,r,V,0,0},	/* prod.d */
541*3d8817e4Smiod   {88,3,r,V,0,0},	/* max.s */
542*3d8817e4Smiod   {88,4,r,V,0,0},	/* max.d */
543*3d8817e4Smiod   {89,3,r,V,0,0},	/* min.s */
544*3d8817e4Smiod   {89,4,r,V,0,0},	/* min.d */
545*3d8817e4Smiod   {90,5,r,V,0,0},	/* prod.b */
546*3d8817e4Smiod   {90,6,r,V,0,0},	/* prod.h */
547*3d8817e4Smiod   {90,7,r,V,0,0},	/* prod.w */
548*3d8817e4Smiod   {90,8,r,V,0,0},	/* prod.l */
549*3d8817e4Smiod   {35,2,lr,VM,S,0},	/* plc.f */
550*3d8817e4Smiod   {35,1,lr,VM,S,0},	/* plc.t */
551*3d8817e4Smiod   {0,0,0,0,0,0},
552*3d8817e4Smiod   {0,0,0,0,0,0},
553*3d8817e4Smiod };
554*3d8817e4Smiod 
555*3d8817e4Smiod const struct formstr formatx[] = {
556*3d8817e4Smiod   {0,0,0,0,0,0},
557*3d8817e4Smiod };
558*3d8817e4Smiod 
559*3d8817e4Smiod const struct formstr format1a[] = {
560*3d8817e4Smiod   {91,0,imr,A,0,0},	/* halt */
561*3d8817e4Smiod   {92,0,a4,0,0,0},	/* sysc */
562*3d8817e4Smiod   {18,6,imr,A,0,0},	/* ld.h */
563*3d8817e4Smiod   {18,7,imr,A,0,0},	/* ld.w */
564*3d8817e4Smiod   {5,0,imr,A,0,0},	/* and */
565*3d8817e4Smiod   {6,0,imr,A,0,0},	/* or */
566*3d8817e4Smiod   {7,0,imr,A,0,0},	/* xor */
567*3d8817e4Smiod   {8,0,imr,A,0,0},	/* shf */
568*3d8817e4Smiod   {9,6,imr,A,0,0},	/* add.h */
569*3d8817e4Smiod   {9,7,imr,A,0,0},	/* add.w */
570*3d8817e4Smiod   {10,6,imr,A,0,0},	/* sub.h */
571*3d8817e4Smiod   {10,7,imr,A,0,0},	/* sub.w */
572*3d8817e4Smiod   {3,6,imr,A,0,0},	/* mul.h */
573*3d8817e4Smiod   {3,7,imr,A,0,0},	/* mul.w */
574*3d8817e4Smiod   {4,6,imr,A,0,0},	/* div.h */
575*3d8817e4Smiod   {4,7,imr,A,0,0},	/* div.w */
576*3d8817e4Smiod   {18,7,iml,VL,0,0},	/* ld.w */
577*3d8817e4Smiod   {18,7,iml,VS,0,0},	/* ld.w */
578*3d8817e4Smiod   {0,0,0,0,0,0},
579*3d8817e4Smiod   {8,7,imr,S,0,0},	/* shf.w */
580*3d8817e4Smiod   {93,0,a5,0,0,0},	/* trap */
581*3d8817e4Smiod   {0,0,0,0,0,0},
582*3d8817e4Smiod   {37,6,imr,A,0,0},	/* eq.h */
583*3d8817e4Smiod   {37,7,imr,A,0,0},	/* eq.w */
584*3d8817e4Smiod   {38,6,imr,A,0,0},	/* leu.h */
585*3d8817e4Smiod   {38,7,imr,A,0,0},	/* leu.w */
586*3d8817e4Smiod   {39,6,imr,A,0,0},	/* ltu.h */
587*3d8817e4Smiod   {39,7,imr,A,0,0},	/* ltu.w */
588*3d8817e4Smiod   {40,6,imr,A,0,0},	/* le.h */
589*3d8817e4Smiod   {40,7,imr,A,0,0},	/* le.w */
590*3d8817e4Smiod   {41,6,imr,A,0,0},	/* lt.h */
591*3d8817e4Smiod   {41,7,imr,A,0,0},	/* lt.w */
592*3d8817e4Smiod };
593*3d8817e4Smiod 
594*3d8817e4Smiod const struct formstr format1b[] = {
595*3d8817e4Smiod   {18,4,imr,S,0,0},	/* ld.d */
596*3d8817e4Smiod   {18,10,imr,S,0,0},	/* ld.u */
597*3d8817e4Smiod   {18,8,imr,S,0,0},	/* ld.l */
598*3d8817e4Smiod   {18,7,imr,S,0,0},	/* ld.w */
599*3d8817e4Smiod   {5,0,imr,S,0,0},	/* and */
600*3d8817e4Smiod   {6,0,imr,S,0,0},	/* or */
601*3d8817e4Smiod   {7,0,imr,S,0,0},	/* xor */
602*3d8817e4Smiod   {8,0,imr,S,0,0},	/* shf */
603*3d8817e4Smiod   {9,6,imr,S,0,0},	/* add.h */
604*3d8817e4Smiod   {9,7,imr,S,0,0},	/* add.w */
605*3d8817e4Smiod   {10,6,imr,S,0,0},	/* sub.h */
606*3d8817e4Smiod   {10,7,imr,S,0,0},	/* sub.w */
607*3d8817e4Smiod   {3,6,imr,S,0,0},	/* mul.h */
608*3d8817e4Smiod   {3,7,imr,S,0,0},	/* mul.w */
609*3d8817e4Smiod   {4,6,imr,S,0,0},	/* div.h */
610*3d8817e4Smiod   {4,7,imr,S,0,0},	/* div.w */
611*3d8817e4Smiod   {9,3,imr,S,0,0},	/* add.s */
612*3d8817e4Smiod   {10,3,imr,S,0,0},	/* sub.s */
613*3d8817e4Smiod   {3,3,imr,S,0,0},	/* mul.s */
614*3d8817e4Smiod   {4,3,imr,S,0,0},	/* div.s */
615*3d8817e4Smiod   {40,3,imr,S,0,0},	/* le.s */
616*3d8817e4Smiod   {41,3,imr,S,0,0},	/* lt.s */
617*3d8817e4Smiod   {37,6,imr,S,0,0},	/* eq.h */
618*3d8817e4Smiod   {37,7,imr,S,0,0},	/* eq.w */
619*3d8817e4Smiod   {38,6,imr,S,0,0},	/* leu.h */
620*3d8817e4Smiod   {38,7,imr,S,0,0},	/* leu.w */
621*3d8817e4Smiod   {39,6,imr,S,0,0},	/* ltu.h */
622*3d8817e4Smiod   {39,7,imr,S,0,0},	/* ltu.w */
623*3d8817e4Smiod   {40,6,imr,S,0,0},	/* le.h */
624*3d8817e4Smiod   {40,7,imr,S,0,0},	/* le.w */
625*3d8817e4Smiod   {41,6,imr,S,0,0},	/* lt.h */
626*3d8817e4Smiod   {41,7,imr,S,0,0},	/* lt.w */
627*3d8817e4Smiod };
628*3d8817e4Smiod 
629*3d8817e4Smiod const struct formstr e0_format0[] = {
630*3d8817e4Smiod   {10,3,rrr,S,V,V},	/* sub.s */
631*3d8817e4Smiod   {10,4,rrr,S,V,V},	/* sub.d */
632*3d8817e4Smiod   {4,3,rrr,S,V,V},	/* div.s */
633*3d8817e4Smiod   {4,4,rrr,S,V,V},	/* div.d */
634*3d8817e4Smiod   {10,11,rrr,S,V,V},	/* sub.s.f */
635*3d8817e4Smiod   {10,12,rrr,S,V,V},	/* sub.d.f */
636*3d8817e4Smiod   {4,11,rrr,S,V,V},	/* div.s.f */
637*3d8817e4Smiod   {4,12,rrr,S,V,V},	/* div.d.f */
638*3d8817e4Smiod   {3,11,rrr,V,V,V},	/* mul.s.f */
639*3d8817e4Smiod   {3,12,rrr,V,V,V},	/* mul.d.f */
640*3d8817e4Smiod   {4,11,rrr,V,V,V},	/* div.s.f */
641*3d8817e4Smiod   {4,12,rrr,V,V,V},	/* div.d.f */
642*3d8817e4Smiod   {3,11,rrr,V,S,V},	/* mul.s.f */
643*3d8817e4Smiod   {3,12,rrr,V,S,V},	/* mul.d.f */
644*3d8817e4Smiod   {4,11,rrr,V,S,V},	/* div.s.f */
645*3d8817e4Smiod   {4,12,rrr,V,S,V},	/* div.d.f */
646*3d8817e4Smiod   {5,2,rrr,V,V,V},	/* and.f */
647*3d8817e4Smiod   {6,2,rrr,V,V,V},	/* or.f */
648*3d8817e4Smiod   {7,2,rrr,V,V,V},	/* xor.f */
649*3d8817e4Smiod   {8,2,rrr,V,V,V},	/* shf.f */
650*3d8817e4Smiod   {5,2,rrr,V,S,V},	/* and.f */
651*3d8817e4Smiod   {6,2,rrr,V,S,V},	/* or.f */
652*3d8817e4Smiod   {7,2,rrr,V,S,V},	/* xor.f */
653*3d8817e4Smiod   {8,2,rrr,V,S,V},	/* shf.f */
654*3d8817e4Smiod   {9,11,rrr,V,V,V},	/* add.s.f */
655*3d8817e4Smiod   {9,12,rrr,V,V,V},	/* add.d.f */
656*3d8817e4Smiod   {10,11,rrr,V,V,V},	/* sub.s.f */
657*3d8817e4Smiod   {10,12,rrr,V,V,V},	/* sub.d.f */
658*3d8817e4Smiod   {9,11,rrr,V,S,V},	/* add.s.f */
659*3d8817e4Smiod   {9,12,rrr,V,S,V},	/* add.d.f */
660*3d8817e4Smiod   {10,11,rrr,V,S,V},	/* sub.s.f */
661*3d8817e4Smiod   {10,12,rrr,V,S,V},	/* sub.d.f */
662*3d8817e4Smiod   {9,13,rrr,V,V,V},	/* add.b.f */
663*3d8817e4Smiod   {9,14,rrr,V,V,V},	/* add.h.f */
664*3d8817e4Smiod   {9,15,rrr,V,V,V},	/* add.w.f */
665*3d8817e4Smiod   {9,16,rrr,V,V,V},	/* add.l.f */
666*3d8817e4Smiod   {9,13,rrr,V,S,V},	/* add.b.f */
667*3d8817e4Smiod   {9,14,rrr,V,S,V},	/* add.h.f */
668*3d8817e4Smiod   {9,15,rrr,V,S,V},	/* add.w.f */
669*3d8817e4Smiod   {9,16,rrr,V,S,V},	/* add.l.f */
670*3d8817e4Smiod   {10,13,rrr,V,V,V},	/* sub.b.f */
671*3d8817e4Smiod   {10,14,rrr,V,V,V},	/* sub.h.f */
672*3d8817e4Smiod   {10,15,rrr,V,V,V},	/* sub.w.f */
673*3d8817e4Smiod   {10,16,rrr,V,V,V},	/* sub.l.f */
674*3d8817e4Smiod   {10,13,rrr,V,S,V},	/* sub.b.f */
675*3d8817e4Smiod   {10,14,rrr,V,S,V},	/* sub.h.f */
676*3d8817e4Smiod   {10,15,rrr,V,S,V},	/* sub.w.f */
677*3d8817e4Smiod   {10,16,rrr,V,S,V},	/* sub.l.f */
678*3d8817e4Smiod   {3,13,rrr,V,V,V},	/* mul.b.f */
679*3d8817e4Smiod   {3,14,rrr,V,V,V},	/* mul.h.f */
680*3d8817e4Smiod   {3,15,rrr,V,V,V},	/* mul.w.f */
681*3d8817e4Smiod   {3,16,rrr,V,V,V},	/* mul.l.f */
682*3d8817e4Smiod   {3,13,rrr,V,S,V},	/* mul.b.f */
683*3d8817e4Smiod   {3,14,rrr,V,S,V},	/* mul.h.f */
684*3d8817e4Smiod   {3,15,rrr,V,S,V},	/* mul.w.f */
685*3d8817e4Smiod   {3,16,rrr,V,S,V},	/* mul.l.f */
686*3d8817e4Smiod   {4,13,rrr,V,V,V},	/* div.b.f */
687*3d8817e4Smiod   {4,14,rrr,V,V,V},	/* div.h.f */
688*3d8817e4Smiod   {4,15,rrr,V,V,V},	/* div.w.f */
689*3d8817e4Smiod   {4,16,rrr,V,V,V},	/* div.l.f */
690*3d8817e4Smiod   {4,13,rrr,V,S,V},	/* div.b.f */
691*3d8817e4Smiod   {4,14,rrr,V,S,V},	/* div.h.f */
692*3d8817e4Smiod   {4,15,rrr,V,S,V},	/* div.w.f */
693*3d8817e4Smiod   {4,16,rrr,V,S,V},	/* div.l.f */
694*3d8817e4Smiod };
695*3d8817e4Smiod 
696*3d8817e4Smiod const struct formstr e0_format1[] = {
697*3d8817e4Smiod   {0,0,0,0,0,0},
698*3d8817e4Smiod   {94,0,a3,0,0,0},	/* tst */
699*3d8817e4Smiod   {95,0,a3,0,0,0},	/* lck */
700*3d8817e4Smiod   {96,0,a3,0,0,0},	/* ulk */
701*3d8817e4Smiod   {17,0,a1r,S,0,0},	/* ldea */
702*3d8817e4Smiod   {97,0,a1r,A,0,0},	/* spawn */
703*3d8817e4Smiod   {98,0,a1r,A,0,0},	/* ldcmr */
704*3d8817e4Smiod   {99,0,a2r,A,0,0},	/* stcmr */
705*3d8817e4Smiod   {100,0,a1r,A,0,0},	/* popr */
706*3d8817e4Smiod   {101,0,a2r,A,0,0},	/* pshr */
707*3d8817e4Smiod   {102,7,a1r,A,0,0},	/* rcvr.w */
708*3d8817e4Smiod   {103,7,a2r,A,0,0},	/* matm.w */
709*3d8817e4Smiod   {104,7,a2r,A,0,0},	/* sndr.w */
710*3d8817e4Smiod   {104,8,a2r,S,0,0},	/* sndr.l */
711*3d8817e4Smiod   {102,8,a1r,S,0,0},	/* rcvr.l */
712*3d8817e4Smiod   {103,8,a2r,S,0,0},	/* matm.l */
713*3d8817e4Smiod   {0,0,0,0,0,0},
714*3d8817e4Smiod   {0,0,0,0,0,0},
715*3d8817e4Smiod   {0,0,0,0,0,0},
716*3d8817e4Smiod   {0,0,0,0,0,0},
717*3d8817e4Smiod   {0,0,0,0,0,0},
718*3d8817e4Smiod   {0,0,0,0,0,0},
719*3d8817e4Smiod   {0,0,0,0,0,0},
720*3d8817e4Smiod   {0,0,0,0,0,0},
721*3d8817e4Smiod   {0,0,0,0,0,0},
722*3d8817e4Smiod   {0,0,0,0,0,0},
723*3d8817e4Smiod   {0,0,0,0,0,0},
724*3d8817e4Smiod   {0,0,0,0,0,0},
725*3d8817e4Smiod   {0,0,0,0,0,0},
726*3d8817e4Smiod   {0,0,0,0,0,0},
727*3d8817e4Smiod   {0,0,0,0,0,0},
728*3d8817e4Smiod   {0,0,0,0,0,0},
729*3d8817e4Smiod   {105,7,a2r,A,0,0},	/* putr.w */
730*3d8817e4Smiod   {105,8,a2r,S,0,0},	/* putr.l */
731*3d8817e4Smiod   {106,7,a1r,A,0,0},	/* getr.w */
732*3d8817e4Smiod   {106,8,a1r,S,0,0},	/* getr.l */
733*3d8817e4Smiod   {26,13,a2r,S,0,0},	/* ste.b.f */
734*3d8817e4Smiod   {26,14,a2r,S,0,0},	/* ste.h.f */
735*3d8817e4Smiod   {26,15,a2r,S,0,0},	/* ste.w.f */
736*3d8817e4Smiod   {26,16,a2r,S,0,0},	/* ste.l.f */
737*3d8817e4Smiod   {107,7,a2r,A,0,0},	/* matr.w */
738*3d8817e4Smiod   {108,7,a2r,A,0,0},	/* mat.w */
739*3d8817e4Smiod   {109,7,a1r,A,0,0},	/* get.w */
740*3d8817e4Smiod   {110,7,a1r,A,0,0},	/* rcv.w */
741*3d8817e4Smiod   {0,0,0,0,0,0},
742*3d8817e4Smiod   {111,7,a1r,A,0,0},	/* inc.w */
743*3d8817e4Smiod   {112,7,a2r,A,0,0},	/* put.w */
744*3d8817e4Smiod   {113,7,a2r,A,0,0},	/* snd.w */
745*3d8817e4Smiod   {107,8,a2r,S,0,0},	/* matr.l */
746*3d8817e4Smiod   {108,8,a2r,S,0,0},	/* mat.l */
747*3d8817e4Smiod   {109,8,a1r,S,0,0},	/* get.l */
748*3d8817e4Smiod   {110,8,a1r,S,0,0},	/* rcv.l */
749*3d8817e4Smiod   {0,0,0,0,0,0},
750*3d8817e4Smiod   {111,8,a1r,S,0,0},	/* inc.l */
751*3d8817e4Smiod   {112,8,a2r,S,0,0},	/* put.l */
752*3d8817e4Smiod   {113,8,a2r,S,0,0},	/* snd.l */
753*3d8817e4Smiod   {18,13,a1r,V,0,0},	/* ld.b.f */
754*3d8817e4Smiod   {18,14,a1r,V,0,0},	/* ld.h.f */
755*3d8817e4Smiod   {18,15,a1r,V,0,0},	/* ld.w.f */
756*3d8817e4Smiod   {18,16,a1r,V,0,0},	/* ld.l.f */
757*3d8817e4Smiod   {21,13,a2r,V,0,0},	/* st.b.f */
758*3d8817e4Smiod   {21,14,a2r,V,0,0},	/* st.h.f */
759*3d8817e4Smiod   {21,15,a2r,V,0,0},	/* st.w.f */
760*3d8817e4Smiod   {21,16,a2r,V,0,0},	/* st.l.f */
761*3d8817e4Smiod };
762*3d8817e4Smiod 
763*3d8817e4Smiod const struct formstr e0_format2[] = {
764*3d8817e4Smiod   {28,5,rr,V,V,0},	/* cvtw.b */
765*3d8817e4Smiod   {28,6,rr,V,V,0},	/* cvtw.h */
766*3d8817e4Smiod   {29,7,rr,V,V,0},	/* cvtb.w */
767*3d8817e4Smiod   {30,7,rr,V,V,0},	/* cvth.w */
768*3d8817e4Smiod   {28,13,rr,V,V,0},	/* cvtw.b.f */
769*3d8817e4Smiod   {28,14,rr,V,V,0},	/* cvtw.h.f */
770*3d8817e4Smiod   {29,15,rr,V,V,0},	/* cvtb.w.f */
771*3d8817e4Smiod   {30,15,rr,V,V,0},	/* cvth.w.f */
772*3d8817e4Smiod   {31,8,rr,V,V,0},	/* cvts.l */
773*3d8817e4Smiod   {32,7,rr,V,V,0},	/* cvtd.w */
774*3d8817e4Smiod   {33,3,rr,V,V,0},	/* cvtl.s */
775*3d8817e4Smiod   {28,4,rr,V,V,0},	/* cvtw.d */
776*3d8817e4Smiod   {31,16,rr,V,V,0},	/* cvts.l.f */
777*3d8817e4Smiod   {32,15,rr,V,V,0},	/* cvtd.w.f */
778*3d8817e4Smiod   {33,11,rr,V,V,0},	/* cvtl.s.f */
779*3d8817e4Smiod   {28,12,rr,V,V,0},	/* cvtw.d.f */
780*3d8817e4Smiod   {114,0,rr,S,S,0},	/* enal */
781*3d8817e4Smiod   {8,7,rr,S,S,0},	/* shf.w */
782*3d8817e4Smiod   {115,0,rr,S,S,0},	/* enag */
783*3d8817e4Smiod   {0,0,0,0,0,0},
784*3d8817e4Smiod   {28,4,rr,S,S,0},	/* cvtw.d */
785*3d8817e4Smiod   {32,7,rr,S,S,0},	/* cvtd.w */
786*3d8817e4Smiod   {0,0,0,0,0,0},
787*3d8817e4Smiod   {0,0,0,0,0,0},
788*3d8817e4Smiod   {0,0,0,0,0,0},
789*3d8817e4Smiod   {0,0,0,0,0,0},
790*3d8817e4Smiod   {0,0,0,0,0,0},
791*3d8817e4Smiod   {0,0,0,0,0,0},
792*3d8817e4Smiod   {116,3,rr,S,S,0},	/* frint.s */
793*3d8817e4Smiod   {116,4,rr,S,S,0},	/* frint.d */
794*3d8817e4Smiod   {0,0,0,0,0,0},
795*3d8817e4Smiod   {0,0,0,0,0,0},
796*3d8817e4Smiod   {0,0,0,0,0,0},
797*3d8817e4Smiod   {0,0,0,0,0,0},
798*3d8817e4Smiod   {0,0,0,0,0,0},
799*3d8817e4Smiod   {0,0,0,0,0,0},
800*3d8817e4Smiod   {0,0,0,0,0,0},
801*3d8817e4Smiod   {0,0,0,0,0,0},
802*3d8817e4Smiod   {0,0,0,0,0,0},
803*3d8817e4Smiod   {0,0,0,0,0,0},
804*3d8817e4Smiod   {0,0,0,0,0,0},
805*3d8817e4Smiod   {0,0,0,0,0,0},
806*3d8817e4Smiod   {0,0,0,0,0,0},
807*3d8817e4Smiod   {0,0,0,0,0,0},
808*3d8817e4Smiod   {0,0,0,0,0,0},
809*3d8817e4Smiod   {0,0,0,0,0,0},
810*3d8817e4Smiod   {0,0,0,0,0,0},
811*3d8817e4Smiod   {0,0,0,0,0,0},
812*3d8817e4Smiod   {0,0,0,0,0,0},
813*3d8817e4Smiod   {0,0,0,0,0,0},
814*3d8817e4Smiod   {0,0,0,0,0,0},
815*3d8817e4Smiod   {0,0,0,0,0,0},
816*3d8817e4Smiod   {0,0,0,0,0,0},
817*3d8817e4Smiod   {0,0,0,0,0,0},
818*3d8817e4Smiod   {0,0,0,0,0,0},
819*3d8817e4Smiod   {0,0,0,0,0,0},
820*3d8817e4Smiod   {0,0,0,0,0,0},
821*3d8817e4Smiod   {0,0,0,0,0,0},
822*3d8817e4Smiod   {0,0,0,0,0,0},
823*3d8817e4Smiod   {0,0,0,0,0,0},
824*3d8817e4Smiod   {0,0,0,0,0,0},
825*3d8817e4Smiod   {0,0,0,0,0,0},
826*3d8817e4Smiod   {0,0,0,0,0,0},
827*3d8817e4Smiod   {0,0,0,0,0,0},
828*3d8817e4Smiod   {0,0,0,0,0,0},
829*3d8817e4Smiod   {0,0,0,0,0,0},
830*3d8817e4Smiod   {0,0,0,0,0,0},
831*3d8817e4Smiod   {0,0,0,0,0,0},
832*3d8817e4Smiod   {0,0,0,0,0,0},
833*3d8817e4Smiod   {0,0,0,0,0,0},
834*3d8817e4Smiod   {0,0,0,0,0,0},
835*3d8817e4Smiod   {0,0,0,0,0,0},
836*3d8817e4Smiod   {0,0,0,0,0,0},
837*3d8817e4Smiod   {0,0,0,0,0,0},
838*3d8817e4Smiod   {0,0,0,0,0,0},
839*3d8817e4Smiod   {0,0,0,0,0,0},
840*3d8817e4Smiod   {0,0,0,0,0,0},
841*3d8817e4Smiod   {0,0,0,0,0,0},
842*3d8817e4Smiod   {0,0,0,0,0,0},
843*3d8817e4Smiod   {0,0,0,0,0,0},
844*3d8817e4Smiod   {0,0,0,0,0,0},
845*3d8817e4Smiod   {0,0,0,0,0,0},
846*3d8817e4Smiod   {0,0,0,0,0,0},
847*3d8817e4Smiod   {0,0,0,0,0,0},
848*3d8817e4Smiod   {0,0,0,0,0,0},
849*3d8817e4Smiod   {0,0,0,0,0,0},
850*3d8817e4Smiod   {0,0,0,0,0,0},
851*3d8817e4Smiod   {0,0,0,0,0,0},
852*3d8817e4Smiod   {0,0,0,0,0,0},
853*3d8817e4Smiod   {0,0,0,0,0,0},
854*3d8817e4Smiod   {0,0,0,0,0,0},
855*3d8817e4Smiod   {0,0,0,0,0,0},
856*3d8817e4Smiod   {0,0,0,0,0,0},
857*3d8817e4Smiod   {0,0,0,0,0,0},
858*3d8817e4Smiod   {0,0,0,0,0,0},
859*3d8817e4Smiod   {0,0,0,0,0,0},
860*3d8817e4Smiod   {0,0,0,0,0,0},
861*3d8817e4Smiod   {0,0,0,0,0,0},
862*3d8817e4Smiod   {116,3,rr,V,V,0},	/* frint.s */
863*3d8817e4Smiod   {116,4,rr,V,V,0},	/* frint.d */
864*3d8817e4Smiod   {0,0,0,0,0,0},
865*3d8817e4Smiod   {0,0,0,0,0,0},
866*3d8817e4Smiod   {116,11,rr,V,V,0},	/* frint.s.f */
867*3d8817e4Smiod   {116,12,rr,V,V,0},	/* frint.d.f */
868*3d8817e4Smiod   {0,0,0,0,0,0},
869*3d8817e4Smiod   {0,0,0,0,0,0},
870*3d8817e4Smiod   {0,0,0,0,0,0},
871*3d8817e4Smiod   {0,0,0,0,0,0},
872*3d8817e4Smiod   {0,0,0,0,0,0},
873*3d8817e4Smiod   {0,0,0,0,0,0},
874*3d8817e4Smiod   {0,0,0,0,0,0},
875*3d8817e4Smiod   {0,0,0,0,0,0},
876*3d8817e4Smiod   {0,0,0,0,0,0},
877*3d8817e4Smiod   {0,0,0,0,0,0},
878*3d8817e4Smiod   {0,0,0,0,0,0},
879*3d8817e4Smiod   {0,0,0,0,0,0},
880*3d8817e4Smiod   {81,3,rr,V,V,0},	/* sqrt.s */
881*3d8817e4Smiod   {81,4,rr,V,V,0},	/* sqrt.d */
882*3d8817e4Smiod   {0,0,0,0,0,0},
883*3d8817e4Smiod   {0,0,0,0,0,0},
884*3d8817e4Smiod   {0,0,0,0,0,0},
885*3d8817e4Smiod   {0,0,0,0,0,0},
886*3d8817e4Smiod   {0,0,0,0,0,0},
887*3d8817e4Smiod   {0,0,0,0,0,0},
888*3d8817e4Smiod   {81,11,rr,V,V,0},	/* sqrt.s.f */
889*3d8817e4Smiod   {81,12,rr,V,V,0},	/* sqrt.d.f */
890*3d8817e4Smiod   {0,0,0,0,0,0},
891*3d8817e4Smiod   {0,0,0,0,0,0},
892*3d8817e4Smiod };
893*3d8817e4Smiod 
894*3d8817e4Smiod const struct formstr e0_format3[] = {
895*3d8817e4Smiod   {32,11,rr,V,V,0},	/* cvtd.s.f */
896*3d8817e4Smiod   {31,12,rr,V,V,0},	/* cvts.d.f */
897*3d8817e4Smiod   {33,12,rr,V,V,0},	/* cvtl.d.f */
898*3d8817e4Smiod   {32,16,rr,V,V,0},	/* cvtd.l.f */
899*3d8817e4Smiod   {0,0,0,0,0,0},
900*3d8817e4Smiod   {0,0,0,0,0,0},
901*3d8817e4Smiod   {0,0,0,0,0,0},
902*3d8817e4Smiod   {0,0,0,0,0,0},
903*3d8817e4Smiod   {36,2,rr,V,V,0},	/* tzc.f */
904*3d8817e4Smiod   {44,2,rr,V,V,0},	/* lop.f */
905*3d8817e4Smiod   {117,2,rr,V,V,0},	/* xpnd.f */
906*3d8817e4Smiod   {42,2,rr,V,V,0},	/* not.f */
907*3d8817e4Smiod   {8,2,rr,S,V,0},	/* shf.f */
908*3d8817e4Smiod   {35,17,rr,V,V,0},	/* plc.t.f */
909*3d8817e4Smiod   {0,0,0,0,0,0},
910*3d8817e4Smiod   {0,0,0,0,0,0},
911*3d8817e4Smiod   {37,11,rr,V,V,0},	/* eq.s.f */
912*3d8817e4Smiod   {37,12,rr,V,V,0},	/* eq.d.f */
913*3d8817e4Smiod   {43,11,rr,V,V,0},	/* neg.s.f */
914*3d8817e4Smiod   {43,12,rr,V,V,0},	/* neg.d.f */
915*3d8817e4Smiod   {37,11,rr,S,V,0},	/* eq.s.f */
916*3d8817e4Smiod   {37,12,rr,S,V,0},	/* eq.d.f */
917*3d8817e4Smiod   {0,0,0,0,0,0},
918*3d8817e4Smiod   {0,0,0,0,0,0},
919*3d8817e4Smiod   {40,11,rr,V,V,0},	/* le.s.f */
920*3d8817e4Smiod   {40,12,rr,V,V,0},	/* le.d.f */
921*3d8817e4Smiod   {41,11,rr,V,V,0},	/* lt.s.f */
922*3d8817e4Smiod   {41,12,rr,V,V,0},	/* lt.d.f */
923*3d8817e4Smiod   {40,11,rr,S,V,0},	/* le.s.f */
924*3d8817e4Smiod   {40,12,rr,S,V,0},	/* le.d.f */
925*3d8817e4Smiod   {41,11,rr,S,V,0},	/* lt.s.f */
926*3d8817e4Smiod   {41,12,rr,S,V,0},	/* lt.d.f */
927*3d8817e4Smiod   {37,13,rr,V,V,0},	/* eq.b.f */
928*3d8817e4Smiod   {37,14,rr,V,V,0},	/* eq.h.f */
929*3d8817e4Smiod   {37,15,rr,V,V,0},	/* eq.w.f */
930*3d8817e4Smiod   {37,16,rr,V,V,0},	/* eq.l.f */
931*3d8817e4Smiod   {37,13,rr,S,V,0},	/* eq.b.f */
932*3d8817e4Smiod   {37,14,rr,S,V,0},	/* eq.h.f */
933*3d8817e4Smiod   {37,15,rr,S,V,0},	/* eq.w.f */
934*3d8817e4Smiod   {37,16,rr,S,V,0},	/* eq.l.f */
935*3d8817e4Smiod   {40,13,rr,V,V,0},	/* le.b.f */
936*3d8817e4Smiod   {40,14,rr,V,V,0},	/* le.h.f */
937*3d8817e4Smiod   {40,15,rr,V,V,0},	/* le.w.f */
938*3d8817e4Smiod   {40,16,rr,V,V,0},	/* le.l.f */
939*3d8817e4Smiod   {40,13,rr,S,V,0},	/* le.b.f */
940*3d8817e4Smiod   {40,14,rr,S,V,0},	/* le.h.f */
941*3d8817e4Smiod   {40,15,rr,S,V,0},	/* le.w.f */
942*3d8817e4Smiod   {40,16,rr,S,V,0},	/* le.l.f */
943*3d8817e4Smiod   {41,13,rr,V,V,0},	/* lt.b.f */
944*3d8817e4Smiod   {41,14,rr,V,V,0},	/* lt.h.f */
945*3d8817e4Smiod   {41,15,rr,V,V,0},	/* lt.w.f */
946*3d8817e4Smiod   {41,16,rr,V,V,0},	/* lt.l.f */
947*3d8817e4Smiod   {41,13,rr,S,V,0},	/* lt.b.f */
948*3d8817e4Smiod   {41,14,rr,S,V,0},	/* lt.h.f */
949*3d8817e4Smiod   {41,15,rr,S,V,0},	/* lt.w.f */
950*3d8817e4Smiod   {41,16,rr,S,V,0},	/* lt.l.f */
951*3d8817e4Smiod   {43,13,rr,V,V,0},	/* neg.b.f */
952*3d8817e4Smiod   {43,14,rr,V,V,0},	/* neg.h.f */
953*3d8817e4Smiod   {43,15,rr,V,V,0},	/* neg.w.f */
954*3d8817e4Smiod   {43,16,rr,V,V,0},	/* neg.l.f */
955*3d8817e4Smiod   {0,0,0,0,0,0},
956*3d8817e4Smiod   {0,0,0,0,0,0},
957*3d8817e4Smiod   {0,0,0,0,0,0},
958*3d8817e4Smiod   {0,0,0,0,0,0},
959*3d8817e4Smiod };
960*3d8817e4Smiod 
961*3d8817e4Smiod const struct formstr e0_format4[] = {
962*3d8817e4Smiod   {0,0,0,0,0,0},
963*3d8817e4Smiod   {0,0,0,0,0,0},
964*3d8817e4Smiod   {0,0,0,0,0,0},
965*3d8817e4Smiod   {0,0,0,0,0,0},
966*3d8817e4Smiod   {0,0,0,0,0,0},
967*3d8817e4Smiod   {0,0,0,0,0,0},
968*3d8817e4Smiod   {0,0,0,0,0,0},
969*3d8817e4Smiod   {0,0,0,0,0,0},
970*3d8817e4Smiod };
971*3d8817e4Smiod 
972*3d8817e4Smiod const struct formstr e0_format5[] = {
973*3d8817e4Smiod   {51,13,rr,V,V,0},	/* ldvi.b.f */
974*3d8817e4Smiod   {51,14,rr,V,V,0},	/* ldvi.h.f */
975*3d8817e4Smiod   {51,15,rr,V,V,0},	/* ldvi.w.f */
976*3d8817e4Smiod   {51,16,rr,V,V,0},	/* ldvi.l.f */
977*3d8817e4Smiod   {28,11,rr,V,V,0},	/* cvtw.s.f */
978*3d8817e4Smiod   {31,15,rr,V,V,0},	/* cvts.w.f */
979*3d8817e4Smiod   {28,16,rr,V,V,0},	/* cvtw.l.f */
980*3d8817e4Smiod   {33,15,rr,V,V,0},	/* cvtl.w.f */
981*3d8817e4Smiod   {52,13,rxr,V,V,0},	/* stvi.b.f */
982*3d8817e4Smiod   {52,14,rxr,V,V,0},	/* stvi.h.f */
983*3d8817e4Smiod   {52,15,rxr,V,V,0},	/* stvi.w.f */
984*3d8817e4Smiod   {52,16,rxr,V,V,0},	/* stvi.l.f */
985*3d8817e4Smiod   {52,13,rxr,S,V,0},	/* stvi.b.f */
986*3d8817e4Smiod   {52,14,rxr,S,V,0},	/* stvi.h.f */
987*3d8817e4Smiod   {52,15,rxr,S,V,0},	/* stvi.w.f */
988*3d8817e4Smiod   {52,16,rxr,S,V,0},	/* stvi.l.f */
989*3d8817e4Smiod };
990*3d8817e4Smiod 
991*3d8817e4Smiod const struct formstr e0_format6[] = {
992*3d8817e4Smiod   {0,0,rxl,S,CIR,0},	/* mov */
993*3d8817e4Smiod   {0,0,lr,CIR,S,0},	/* mov */
994*3d8817e4Smiod   {0,0,lr,TOC,S,0},	/* mov */
995*3d8817e4Smiod   {0,0,lr,CPUID,S,0},	/* mov */
996*3d8817e4Smiod   {0,0,rxl,S,TTR,0},	/* mov */
997*3d8817e4Smiod   {0,0,lr,TTR,S,0},	/* mov */
998*3d8817e4Smiod   {118,0,nops,0,0,0},	/* ctrsl */
999*3d8817e4Smiod   {119,0,nops,0,0,0},	/* ctrsg */
1000*3d8817e4Smiod   {0,0,rxl,S,VMU,0},	/* mov */
1001*3d8817e4Smiod   {0,0,lr,VMU,S,0},	/* mov */
1002*3d8817e4Smiod   {0,0,rxl,S,VML,0},	/* mov */
1003*3d8817e4Smiod   {0,0,lr,VML,S,0},	/* mov */
1004*3d8817e4Smiod   {0,0,rxl,S,ICR,0},	/* mov */
1005*3d8817e4Smiod   {0,0,lr,ICR,S,0},	/* mov */
1006*3d8817e4Smiod   {0,0,rxl,S,TCPU,0},	/* mov */
1007*3d8817e4Smiod   {0,0,lr,TCPU,S,0},	/* mov */
1008*3d8817e4Smiod   {0,0,0,0,0,0},
1009*3d8817e4Smiod   {0,0,0,0,0,0},
1010*3d8817e4Smiod   {0,0,0,0,0,0},
1011*3d8817e4Smiod   {0,0,0,0,0,0},
1012*3d8817e4Smiod   {120,0,nops,0,0,0},	/* stop */
1013*3d8817e4Smiod   {0,0,0,0,0,0},
1014*3d8817e4Smiod   {0,0,rxl,S,TID,0},	/* mov */
1015*3d8817e4Smiod   {0,0,lr,TID,S,0},	/* mov */
1016*3d8817e4Smiod   {0,0,0,0,0,0},
1017*3d8817e4Smiod   {0,0,0,0,0,0},
1018*3d8817e4Smiod   {0,0,0,0,0,0},
1019*3d8817e4Smiod   {0,0,0,0,0,0},
1020*3d8817e4Smiod   {0,0,0,0,0,0},
1021*3d8817e4Smiod   {0,0,0,0,0,0},
1022*3d8817e4Smiod   {0,0,0,0,0,0},
1023*3d8817e4Smiod   {0,0,0,0,0,0},
1024*3d8817e4Smiod   {0,0,0,0,0,0},
1025*3d8817e4Smiod   {0,0,0,0,0,0},
1026*3d8817e4Smiod   {0,0,0,0,0,0},
1027*3d8817e4Smiod   {0,0,0,0,0,0},
1028*3d8817e4Smiod   {0,0,0,0,0,0},
1029*3d8817e4Smiod   {0,0,0,0,0,0},
1030*3d8817e4Smiod   {0,0,0,0,0,0},
1031*3d8817e4Smiod   {0,0,0,0,0,0},
1032*3d8817e4Smiod   {0,0,0,0,0,0},
1033*3d8817e4Smiod   {0,0,0,0,0,0},
1034*3d8817e4Smiod   {0,0,0,0,0,0},
1035*3d8817e4Smiod   {0,0,0,0,0,0},
1036*3d8817e4Smiod   {0,0,0,0,0,0},
1037*3d8817e4Smiod   {0,0,0,0,0,0},
1038*3d8817e4Smiod   {0,0,0,0,0,0},
1039*3d8817e4Smiod   {0,0,0,0,0,0},
1040*3d8817e4Smiod   {0,0,0,0,0,0},
1041*3d8817e4Smiod   {0,0,0,0,0,0},
1042*3d8817e4Smiod   {0,0,0,0,0,0},
1043*3d8817e4Smiod   {0,0,0,0,0,0},
1044*3d8817e4Smiod   {0,0,0,0,0,0},
1045*3d8817e4Smiod   {0,0,0,0,0,0},
1046*3d8817e4Smiod   {0,0,0,0,0,0},
1047*3d8817e4Smiod   {0,0,0,0,0,0},
1048*3d8817e4Smiod   {0,0,0,0,0,0},
1049*3d8817e4Smiod   {0,0,0,0,0,0},
1050*3d8817e4Smiod   {0,0,0,0,0,0},
1051*3d8817e4Smiod   {0,0,0,0,0,0},
1052*3d8817e4Smiod   {0,0,0,0,0,0},
1053*3d8817e4Smiod   {0,0,0,0,0,0},
1054*3d8817e4Smiod   {0,0,0,0,0,0},
1055*3d8817e4Smiod   {0,0,0,0,0,0},
1056*3d8817e4Smiod };
1057*3d8817e4Smiod 
1058*3d8817e4Smiod const struct formstr e0_format7[] = {
1059*3d8817e4Smiod   {84,13,r,V,0,0},	/* sum.b.f */
1060*3d8817e4Smiod   {84,14,r,V,0,0},	/* sum.h.f */
1061*3d8817e4Smiod   {84,15,r,V,0,0},	/* sum.w.f */
1062*3d8817e4Smiod   {84,16,r,V,0,0},	/* sum.l.f */
1063*3d8817e4Smiod   {85,2,r,V,0,0},	/* all.f */
1064*3d8817e4Smiod   {86,2,r,V,0,0},	/* any.f */
1065*3d8817e4Smiod   {87,2,r,V,0,0},	/* parity.f */
1066*3d8817e4Smiod   {0,0,0,0,0,0},
1067*3d8817e4Smiod   {88,13,r,V,0,0},	/* max.b.f */
1068*3d8817e4Smiod   {88,14,r,V,0,0},	/* max.h.f */
1069*3d8817e4Smiod   {88,15,r,V,0,0},	/* max.w.f */
1070*3d8817e4Smiod   {88,16,r,V,0,0},	/* max.l.f */
1071*3d8817e4Smiod   {89,13,r,V,0,0},	/* min.b.f */
1072*3d8817e4Smiod   {89,14,r,V,0,0},	/* min.h.f */
1073*3d8817e4Smiod   {89,15,r,V,0,0},	/* min.w.f */
1074*3d8817e4Smiod   {89,16,r,V,0,0},	/* min.l.f */
1075*3d8817e4Smiod   {84,11,r,V,0,0},	/* sum.s.f */
1076*3d8817e4Smiod   {84,12,r,V,0,0},	/* sum.d.f */
1077*3d8817e4Smiod   {90,11,r,V,0,0},	/* prod.s.f */
1078*3d8817e4Smiod   {90,12,r,V,0,0},	/* prod.d.f */
1079*3d8817e4Smiod   {88,11,r,V,0,0},	/* max.s.f */
1080*3d8817e4Smiod   {88,12,r,V,0,0},	/* max.d.f */
1081*3d8817e4Smiod   {89,11,r,V,0,0},	/* min.s.f */
1082*3d8817e4Smiod   {89,12,r,V,0,0},	/* min.d.f */
1083*3d8817e4Smiod   {90,13,r,V,0,0},	/* prod.b.f */
1084*3d8817e4Smiod   {90,14,r,V,0,0},	/* prod.h.f */
1085*3d8817e4Smiod   {90,15,r,V,0,0},	/* prod.w.f */
1086*3d8817e4Smiod   {90,16,r,V,0,0},	/* prod.l.f */
1087*3d8817e4Smiod   {0,0,0,0,0,0},
1088*3d8817e4Smiod   {0,0,0,0,0,0},
1089*3d8817e4Smiod   {0,0,0,0,0,0},
1090*3d8817e4Smiod   {0,0,0,0,0,0},
1091*3d8817e4Smiod };
1092*3d8817e4Smiod 
1093*3d8817e4Smiod const struct formstr e1_format0[] = {
1094*3d8817e4Smiod   {0,0,0,0,0,0},
1095*3d8817e4Smiod   {0,0,0,0,0,0},
1096*3d8817e4Smiod   {0,0,0,0,0,0},
1097*3d8817e4Smiod   {0,0,0,0,0,0},
1098*3d8817e4Smiod   {10,18,rrr,S,V,V},	/* sub.s.t */
1099*3d8817e4Smiod   {10,19,rrr,S,V,V},	/* sub.d.t */
1100*3d8817e4Smiod   {4,18,rrr,S,V,V},	/* div.s.t */
1101*3d8817e4Smiod   {4,19,rrr,S,V,V},	/* div.d.t */
1102*3d8817e4Smiod   {3,18,rrr,V,V,V},	/* mul.s.t */
1103*3d8817e4Smiod   {3,19,rrr,V,V,V},	/* mul.d.t */
1104*3d8817e4Smiod   {4,18,rrr,V,V,V},	/* div.s.t */
1105*3d8817e4Smiod   {4,19,rrr,V,V,V},	/* div.d.t */
1106*3d8817e4Smiod   {3,18,rrr,V,S,V},	/* mul.s.t */
1107*3d8817e4Smiod   {3,19,rrr,V,S,V},	/* mul.d.t */
1108*3d8817e4Smiod   {4,18,rrr,V,S,V},	/* div.s.t */
1109*3d8817e4Smiod   {4,19,rrr,V,S,V},	/* div.d.t */
1110*3d8817e4Smiod   {5,1,rrr,V,V,V},	/* and.t */
1111*3d8817e4Smiod   {6,1,rrr,V,V,V},	/* or.t */
1112*3d8817e4Smiod   {7,1,rrr,V,V,V},	/* xor.t */
1113*3d8817e4Smiod   {8,1,rrr,V,V,V},	/* shf.t */
1114*3d8817e4Smiod   {5,1,rrr,V,S,V},	/* and.t */
1115*3d8817e4Smiod   {6,1,rrr,V,S,V},	/* or.t */
1116*3d8817e4Smiod   {7,1,rrr,V,S,V},	/* xor.t */
1117*3d8817e4Smiod   {8,1,rrr,V,S,V},	/* shf.t */
1118*3d8817e4Smiod   {9,18,rrr,V,V,V},	/* add.s.t */
1119*3d8817e4Smiod   {9,19,rrr,V,V,V},	/* add.d.t */
1120*3d8817e4Smiod   {10,18,rrr,V,V,V},	/* sub.s.t */
1121*3d8817e4Smiod   {10,19,rrr,V,V,V},	/* sub.d.t */
1122*3d8817e4Smiod   {9,18,rrr,V,S,V},	/* add.s.t */
1123*3d8817e4Smiod   {9,19,rrr,V,S,V},	/* add.d.t */
1124*3d8817e4Smiod   {10,18,rrr,V,S,V},	/* sub.s.t */
1125*3d8817e4Smiod   {10,19,rrr,V,S,V},	/* sub.d.t */
1126*3d8817e4Smiod   {9,20,rrr,V,V,V},	/* add.b.t */
1127*3d8817e4Smiod   {9,21,rrr,V,V,V},	/* add.h.t */
1128*3d8817e4Smiod   {9,22,rrr,V,V,V},	/* add.w.t */
1129*3d8817e4Smiod   {9,23,rrr,V,V,V},	/* add.l.t */
1130*3d8817e4Smiod   {9,20,rrr,V,S,V},	/* add.b.t */
1131*3d8817e4Smiod   {9,21,rrr,V,S,V},	/* add.h.t */
1132*3d8817e4Smiod   {9,22,rrr,V,S,V},	/* add.w.t */
1133*3d8817e4Smiod   {9,23,rrr,V,S,V},	/* add.l.t */
1134*3d8817e4Smiod   {10,20,rrr,V,V,V},	/* sub.b.t */
1135*3d8817e4Smiod   {10,21,rrr,V,V,V},	/* sub.h.t */
1136*3d8817e4Smiod   {10,22,rrr,V,V,V},	/* sub.w.t */
1137*3d8817e4Smiod   {10,23,rrr,V,V,V},	/* sub.l.t */
1138*3d8817e4Smiod   {10,20,rrr,V,S,V},	/* sub.b.t */
1139*3d8817e4Smiod   {10,21,rrr,V,S,V},	/* sub.h.t */
1140*3d8817e4Smiod   {10,22,rrr,V,S,V},	/* sub.w.t */
1141*3d8817e4Smiod   {10,23,rrr,V,S,V},	/* sub.l.t */
1142*3d8817e4Smiod   {3,20,rrr,V,V,V},	/* mul.b.t */
1143*3d8817e4Smiod   {3,21,rrr,V,V,V},	/* mul.h.t */
1144*3d8817e4Smiod   {3,22,rrr,V,V,V},	/* mul.w.t */
1145*3d8817e4Smiod   {3,23,rrr,V,V,V},	/* mul.l.t */
1146*3d8817e4Smiod   {3,20,rrr,V,S,V},	/* mul.b.t */
1147*3d8817e4Smiod   {3,21,rrr,V,S,V},	/* mul.h.t */
1148*3d8817e4Smiod   {3,22,rrr,V,S,V},	/* mul.w.t */
1149*3d8817e4Smiod   {3,23,rrr,V,S,V},	/* mul.l.t */
1150*3d8817e4Smiod   {4,20,rrr,V,V,V},	/* div.b.t */
1151*3d8817e4Smiod   {4,21,rrr,V,V,V},	/* div.h.t */
1152*3d8817e4Smiod   {4,22,rrr,V,V,V},	/* div.w.t */
1153*3d8817e4Smiod   {4,23,rrr,V,V,V},	/* div.l.t */
1154*3d8817e4Smiod   {4,20,rrr,V,S,V},	/* div.b.t */
1155*3d8817e4Smiod   {4,21,rrr,V,S,V},	/* div.h.t */
1156*3d8817e4Smiod   {4,22,rrr,V,S,V},	/* div.w.t */
1157*3d8817e4Smiod   {4,23,rrr,V,S,V},	/* div.l.t */
1158*3d8817e4Smiod };
1159*3d8817e4Smiod 
1160*3d8817e4Smiod const struct formstr e1_format1[] = {
1161*3d8817e4Smiod   {0,0,0,0,0,0},
1162*3d8817e4Smiod   {0,0,0,0,0,0},
1163*3d8817e4Smiod   {0,0,0,0,0,0},
1164*3d8817e4Smiod   {0,0,0,0,0,0},
1165*3d8817e4Smiod   {0,0,0,0,0,0},
1166*3d8817e4Smiod   {0,0,0,0,0,0},
1167*3d8817e4Smiod   {0,0,0,0,0,0},
1168*3d8817e4Smiod   {0,0,0,0,0,0},
1169*3d8817e4Smiod   {0,0,0,0,0,0},
1170*3d8817e4Smiod   {0,0,0,0,0,0},
1171*3d8817e4Smiod   {0,0,0,0,0,0},
1172*3d8817e4Smiod   {0,0,0,0,0,0},
1173*3d8817e4Smiod   {0,0,0,0,0,0},
1174*3d8817e4Smiod   {0,0,0,0,0,0},
1175*3d8817e4Smiod   {0,0,0,0,0,0},
1176*3d8817e4Smiod   {0,0,0,0,0,0},
1177*3d8817e4Smiod   {0,0,0,0,0,0},
1178*3d8817e4Smiod   {0,0,0,0,0,0},
1179*3d8817e4Smiod   {0,0,0,0,0,0},
1180*3d8817e4Smiod   {0,0,0,0,0,0},
1181*3d8817e4Smiod   {0,0,0,0,0,0},
1182*3d8817e4Smiod   {0,0,0,0,0,0},
1183*3d8817e4Smiod   {0,0,0,0,0,0},
1184*3d8817e4Smiod   {0,0,0,0,0,0},
1185*3d8817e4Smiod   {0,0,0,0,0,0},
1186*3d8817e4Smiod   {0,0,0,0,0,0},
1187*3d8817e4Smiod   {0,0,0,0,0,0},
1188*3d8817e4Smiod   {0,0,0,0,0,0},
1189*3d8817e4Smiod   {0,0,0,0,0,0},
1190*3d8817e4Smiod   {0,0,0,0,0,0},
1191*3d8817e4Smiod   {0,0,0,0,0,0},
1192*3d8817e4Smiod   {0,0,0,0,0,0},
1193*3d8817e4Smiod   {0,0,0,0,0,0},
1194*3d8817e4Smiod   {0,0,0,0,0,0},
1195*3d8817e4Smiod   {0,0,0,0,0,0},
1196*3d8817e4Smiod   {0,0,0,0,0,0},
1197*3d8817e4Smiod   {26,20,a2r,S,0,0},	/* ste.b.t */
1198*3d8817e4Smiod   {26,21,a2r,S,0,0},	/* ste.h.t */
1199*3d8817e4Smiod   {26,22,a2r,S,0,0},	/* ste.w.t */
1200*3d8817e4Smiod   {26,23,a2r,S,0,0},	/* ste.l.t */
1201*3d8817e4Smiod   {0,0,0,0,0,0},
1202*3d8817e4Smiod   {0,0,0,0,0,0},
1203*3d8817e4Smiod   {0,0,0,0,0,0},
1204*3d8817e4Smiod   {0,0,0,0,0,0},
1205*3d8817e4Smiod   {0,0,0,0,0,0},
1206*3d8817e4Smiod   {0,0,0,0,0,0},
1207*3d8817e4Smiod   {0,0,0,0,0,0},
1208*3d8817e4Smiod   {0,0,0,0,0,0},
1209*3d8817e4Smiod   {0,0,0,0,0,0},
1210*3d8817e4Smiod   {0,0,0,0,0,0},
1211*3d8817e4Smiod   {0,0,0,0,0,0},
1212*3d8817e4Smiod   {0,0,0,0,0,0},
1213*3d8817e4Smiod   {0,0,0,0,0,0},
1214*3d8817e4Smiod   {0,0,0,0,0,0},
1215*3d8817e4Smiod   {0,0,0,0,0,0},
1216*3d8817e4Smiod   {0,0,0,0,0,0},
1217*3d8817e4Smiod   {18,20,a1r,V,0,0},	/* ld.b.t */
1218*3d8817e4Smiod   {18,21,a1r,V,0,0},	/* ld.h.t */
1219*3d8817e4Smiod   {18,22,a1r,V,0,0},	/* ld.w.t */
1220*3d8817e4Smiod   {18,23,a1r,V,0,0},	/* ld.l.t */
1221*3d8817e4Smiod   {21,20,a2r,V,0,0},	/* st.b.t */
1222*3d8817e4Smiod   {21,21,a2r,V,0,0},	/* st.h.t */
1223*3d8817e4Smiod   {21,22,a2r,V,0,0},	/* st.w.t */
1224*3d8817e4Smiod   {21,23,a2r,V,0,0},	/* st.l.t */
1225*3d8817e4Smiod };
1226*3d8817e4Smiod 
1227*3d8817e4Smiod const struct formstr e1_format2[] = {
1228*3d8817e4Smiod   {0,0,0,0,0,0},
1229*3d8817e4Smiod   {0,0,0,0,0,0},
1230*3d8817e4Smiod   {0,0,0,0,0,0},
1231*3d8817e4Smiod   {0,0,0,0,0,0},
1232*3d8817e4Smiod   {28,20,rr,V,V,0},	/* cvtw.b.t */
1233*3d8817e4Smiod   {28,21,rr,V,V,0},	/* cvtw.h.t */
1234*3d8817e4Smiod   {29,22,rr,V,V,0},	/* cvtb.w.t */
1235*3d8817e4Smiod   {30,22,rr,V,V,0},	/* cvth.w.t */
1236*3d8817e4Smiod   {0,0,0,0,0,0},
1237*3d8817e4Smiod   {0,0,0,0,0,0},
1238*3d8817e4Smiod   {0,0,0,0,0,0},
1239*3d8817e4Smiod   {0,0,0,0,0,0},
1240*3d8817e4Smiod   {31,23,rr,V,V,0},	/* cvts.l.t */
1241*3d8817e4Smiod   {32,22,rr,V,V,0},	/* cvtd.w.t */
1242*3d8817e4Smiod   {33,18,rr,V,V,0},	/* cvtl.s.t */
1243*3d8817e4Smiod   {28,19,rr,V,V,0},	/* cvtw.d.t */
1244*3d8817e4Smiod   {0,0,0,0,0,0},
1245*3d8817e4Smiod   {0,0,0,0,0,0},
1246*3d8817e4Smiod   {0,0,0,0,0,0},
1247*3d8817e4Smiod   {0,0,0,0,0,0},
1248*3d8817e4Smiod   {0,0,0,0,0,0},
1249*3d8817e4Smiod   {0,0,0,0,0,0},
1250*3d8817e4Smiod   {0,0,0,0,0,0},
1251*3d8817e4Smiod   {0,0,0,0,0,0},
1252*3d8817e4Smiod   {0,0,0,0,0,0},
1253*3d8817e4Smiod   {0,0,0,0,0,0},
1254*3d8817e4Smiod   {0,0,0,0,0,0},
1255*3d8817e4Smiod   {0,0,0,0,0,0},
1256*3d8817e4Smiod   {0,0,0,0,0,0},
1257*3d8817e4Smiod   {0,0,0,0,0,0},
1258*3d8817e4Smiod   {0,0,0,0,0,0},
1259*3d8817e4Smiod   {0,0,0,0,0,0},
1260*3d8817e4Smiod   {0,0,0,0,0,0},
1261*3d8817e4Smiod   {0,0,0,0,0,0},
1262*3d8817e4Smiod   {0,0,0,0,0,0},
1263*3d8817e4Smiod   {0,0,0,0,0,0},
1264*3d8817e4Smiod   {0,0,0,0,0,0},
1265*3d8817e4Smiod   {0,0,0,0,0,0},
1266*3d8817e4Smiod   {0,0,0,0,0,0},
1267*3d8817e4Smiod   {0,0,0,0,0,0},
1268*3d8817e4Smiod   {0,0,0,0,0,0},
1269*3d8817e4Smiod   {0,0,0,0,0,0},
1270*3d8817e4Smiod   {0,0,0,0,0,0},
1271*3d8817e4Smiod   {0,0,0,0,0,0},
1272*3d8817e4Smiod   {0,0,0,0,0,0},
1273*3d8817e4Smiod   {0,0,0,0,0,0},
1274*3d8817e4Smiod   {0,0,0,0,0,0},
1275*3d8817e4Smiod   {0,0,0,0,0,0},
1276*3d8817e4Smiod   {0,0,0,0,0,0},
1277*3d8817e4Smiod   {0,0,0,0,0,0},
1278*3d8817e4Smiod   {0,0,0,0,0,0},
1279*3d8817e4Smiod   {0,0,0,0,0,0},
1280*3d8817e4Smiod   {0,0,0,0,0,0},
1281*3d8817e4Smiod   {0,0,0,0,0,0},
1282*3d8817e4Smiod   {0,0,0,0,0,0},
1283*3d8817e4Smiod   {0,0,0,0,0,0},
1284*3d8817e4Smiod   {0,0,0,0,0,0},
1285*3d8817e4Smiod   {0,0,0,0,0,0},
1286*3d8817e4Smiod   {0,0,0,0,0,0},
1287*3d8817e4Smiod   {0,0,0,0,0,0},
1288*3d8817e4Smiod   {0,0,0,0,0,0},
1289*3d8817e4Smiod   {0,0,0,0,0,0},
1290*3d8817e4Smiod   {0,0,0,0,0,0},
1291*3d8817e4Smiod   {0,0,0,0,0,0},
1292*3d8817e4Smiod   {0,0,0,0,0,0},
1293*3d8817e4Smiod   {0,0,0,0,0,0},
1294*3d8817e4Smiod   {0,0,0,0,0,0},
1295*3d8817e4Smiod   {0,0,0,0,0,0},
1296*3d8817e4Smiod   {0,0,0,0,0,0},
1297*3d8817e4Smiod   {0,0,0,0,0,0},
1298*3d8817e4Smiod   {0,0,0,0,0,0},
1299*3d8817e4Smiod   {0,0,0,0,0,0},
1300*3d8817e4Smiod   {0,0,0,0,0,0},
1301*3d8817e4Smiod   {0,0,0,0,0,0},
1302*3d8817e4Smiod   {0,0,0,0,0,0},
1303*3d8817e4Smiod   {0,0,0,0,0,0},
1304*3d8817e4Smiod   {0,0,0,0,0,0},
1305*3d8817e4Smiod   {0,0,0,0,0,0},
1306*3d8817e4Smiod   {0,0,0,0,0,0},
1307*3d8817e4Smiod   {0,0,0,0,0,0},
1308*3d8817e4Smiod   {0,0,0,0,0,0},
1309*3d8817e4Smiod   {0,0,0,0,0,0},
1310*3d8817e4Smiod   {0,0,0,0,0,0},
1311*3d8817e4Smiod   {0,0,0,0,0,0},
1312*3d8817e4Smiod   {0,0,0,0,0,0},
1313*3d8817e4Smiod   {0,0,0,0,0,0},
1314*3d8817e4Smiod   {0,0,0,0,0,0},
1315*3d8817e4Smiod   {0,0,0,0,0,0},
1316*3d8817e4Smiod   {0,0,0,0,0,0},
1317*3d8817e4Smiod   {0,0,0,0,0,0},
1318*3d8817e4Smiod   {0,0,0,0,0,0},
1319*3d8817e4Smiod   {0,0,0,0,0,0},
1320*3d8817e4Smiod   {0,0,0,0,0,0},
1321*3d8817e4Smiod   {0,0,0,0,0,0},
1322*3d8817e4Smiod   {0,0,0,0,0,0},
1323*3d8817e4Smiod   {0,0,0,0,0,0},
1324*3d8817e4Smiod   {0,0,0,0,0,0},
1325*3d8817e4Smiod   {0,0,0,0,0,0},
1326*3d8817e4Smiod   {0,0,0,0,0,0},
1327*3d8817e4Smiod   {0,0,0,0,0,0},
1328*3d8817e4Smiod   {0,0,0,0,0,0},
1329*3d8817e4Smiod   {0,0,0,0,0,0},
1330*3d8817e4Smiod   {116,18,rr,V,V,0},	/* frint.s.t */
1331*3d8817e4Smiod   {116,19,rr,V,V,0},	/* frint.d.t */
1332*3d8817e4Smiod   {0,0,0,0,0,0},
1333*3d8817e4Smiod   {0,0,0,0,0,0},
1334*3d8817e4Smiod   {0,0,0,0,0,0},
1335*3d8817e4Smiod   {0,0,0,0,0,0},
1336*3d8817e4Smiod   {0,0,0,0,0,0},
1337*3d8817e4Smiod   {0,0,0,0,0,0},
1338*3d8817e4Smiod   {0,0,0,0,0,0},
1339*3d8817e4Smiod   {0,0,0,0,0,0},
1340*3d8817e4Smiod   {0,0,0,0,0,0},
1341*3d8817e4Smiod   {0,0,0,0,0,0},
1342*3d8817e4Smiod   {0,0,0,0,0,0},
1343*3d8817e4Smiod   {0,0,0,0,0,0},
1344*3d8817e4Smiod   {0,0,0,0,0,0},
1345*3d8817e4Smiod   {0,0,0,0,0,0},
1346*3d8817e4Smiod   {0,0,0,0,0,0},
1347*3d8817e4Smiod   {0,0,0,0,0,0},
1348*3d8817e4Smiod   {0,0,0,0,0,0},
1349*3d8817e4Smiod   {0,0,0,0,0,0},
1350*3d8817e4Smiod   {0,0,0,0,0,0},
1351*3d8817e4Smiod   {0,0,0,0,0,0},
1352*3d8817e4Smiod   {81,18,rr,V,V,0},	/* sqrt.s.t */
1353*3d8817e4Smiod   {81,19,rr,V,V,0},	/* sqrt.d.t */
1354*3d8817e4Smiod   {0,0,0,0,0,0},
1355*3d8817e4Smiod   {0,0,0,0,0,0},
1356*3d8817e4Smiod };
1357*3d8817e4Smiod 
1358*3d8817e4Smiod const struct formstr e1_format3[] = {
1359*3d8817e4Smiod   {32,18,rr,V,V,0},	/* cvtd.s.t */
1360*3d8817e4Smiod   {31,19,rr,V,V,0},	/* cvts.d.t */
1361*3d8817e4Smiod   {33,19,rr,V,V,0},	/* cvtl.d.t */
1362*3d8817e4Smiod   {32,23,rr,V,V,0},	/* cvtd.l.t */
1363*3d8817e4Smiod   {0,0,0,0,0,0},
1364*3d8817e4Smiod   {0,0,0,0,0,0},
1365*3d8817e4Smiod   {0,0,0,0,0,0},
1366*3d8817e4Smiod   {0,0,0,0,0,0},
1367*3d8817e4Smiod   {36,1,rr,V,V,0},	/* tzc.t */
1368*3d8817e4Smiod   {44,1,rr,V,V,0},	/* lop.t */
1369*3d8817e4Smiod   {117,1,rr,V,V,0},	/* xpnd.t */
1370*3d8817e4Smiod   {42,1,rr,V,V,0},	/* not.t */
1371*3d8817e4Smiod   {8,1,rr,S,V,0},	/* shf.t */
1372*3d8817e4Smiod   {35,24,rr,V,V,0},	/* plc.t.t */
1373*3d8817e4Smiod   {0,0,0,0,0,0},
1374*3d8817e4Smiod   {0,0,0,0,0,0},
1375*3d8817e4Smiod   {37,18,rr,V,V,0},	/* eq.s.t */
1376*3d8817e4Smiod   {37,19,rr,V,V,0},	/* eq.d.t */
1377*3d8817e4Smiod   {43,18,rr,V,V,0},	/* neg.s.t */
1378*3d8817e4Smiod   {43,19,rr,V,V,0},	/* neg.d.t */
1379*3d8817e4Smiod   {37,18,rr,S,V,0},	/* eq.s.t */
1380*3d8817e4Smiod   {37,19,rr,S,V,0},	/* eq.d.t */
1381*3d8817e4Smiod   {0,0,0,0,0,0},
1382*3d8817e4Smiod   {0,0,0,0,0,0},
1383*3d8817e4Smiod   {40,18,rr,V,V,0},	/* le.s.t */
1384*3d8817e4Smiod   {40,19,rr,V,V,0},	/* le.d.t */
1385*3d8817e4Smiod   {41,18,rr,V,V,0},	/* lt.s.t */
1386*3d8817e4Smiod   {41,19,rr,V,V,0},	/* lt.d.t */
1387*3d8817e4Smiod   {40,18,rr,S,V,0},	/* le.s.t */
1388*3d8817e4Smiod   {40,19,rr,S,V,0},	/* le.d.t */
1389*3d8817e4Smiod   {41,18,rr,S,V,0},	/* lt.s.t */
1390*3d8817e4Smiod   {41,19,rr,S,V,0},	/* lt.d.t */
1391*3d8817e4Smiod   {37,20,rr,V,V,0},	/* eq.b.t */
1392*3d8817e4Smiod   {37,21,rr,V,V,0},	/* eq.h.t */
1393*3d8817e4Smiod   {37,22,rr,V,V,0},	/* eq.w.t */
1394*3d8817e4Smiod   {37,23,rr,V,V,0},	/* eq.l.t */
1395*3d8817e4Smiod   {37,20,rr,S,V,0},	/* eq.b.t */
1396*3d8817e4Smiod   {37,21,rr,S,V,0},	/* eq.h.t */
1397*3d8817e4Smiod   {37,22,rr,S,V,0},	/* eq.w.t */
1398*3d8817e4Smiod   {37,23,rr,S,V,0},	/* eq.l.t */
1399*3d8817e4Smiod   {40,20,rr,V,V,0},	/* le.b.t */
1400*3d8817e4Smiod   {40,21,rr,V,V,0},	/* le.h.t */
1401*3d8817e4Smiod   {40,22,rr,V,V,0},	/* le.w.t */
1402*3d8817e4Smiod   {40,23,rr,V,V,0},	/* le.l.t */
1403*3d8817e4Smiod   {40,20,rr,S,V,0},	/* le.b.t */
1404*3d8817e4Smiod   {40,21,rr,S,V,0},	/* le.h.t */
1405*3d8817e4Smiod   {40,22,rr,S,V,0},	/* le.w.t */
1406*3d8817e4Smiod   {40,23,rr,S,V,0},	/* le.l.t */
1407*3d8817e4Smiod   {41,20,rr,V,V,0},	/* lt.b.t */
1408*3d8817e4Smiod   {41,21,rr,V,V,0},	/* lt.h.t */
1409*3d8817e4Smiod   {41,22,rr,V,V,0},	/* lt.w.t */
1410*3d8817e4Smiod   {41,23,rr,V,V,0},	/* lt.l.t */
1411*3d8817e4Smiod   {41,20,rr,S,V,0},	/* lt.b.t */
1412*3d8817e4Smiod   {41,21,rr,S,V,0},	/* lt.h.t */
1413*3d8817e4Smiod   {41,22,rr,S,V,0},	/* lt.w.t */
1414*3d8817e4Smiod   {41,23,rr,S,V,0},	/* lt.l.t */
1415*3d8817e4Smiod   {43,20,rr,V,V,0},	/* neg.b.t */
1416*3d8817e4Smiod   {43,21,rr,V,V,0},	/* neg.h.t */
1417*3d8817e4Smiod   {43,22,rr,V,V,0},	/* neg.w.t */
1418*3d8817e4Smiod   {43,23,rr,V,V,0},	/* neg.l.t */
1419*3d8817e4Smiod   {0,0,0,0,0,0},
1420*3d8817e4Smiod   {0,0,0,0,0,0},
1421*3d8817e4Smiod   {0,0,0,0,0,0},
1422*3d8817e4Smiod   {0,0,0,0,0,0},
1423*3d8817e4Smiod };
1424*3d8817e4Smiod 
1425*3d8817e4Smiod const struct formstr e1_format4[] = {
1426*3d8817e4Smiod   {0,0,0,0,0,0},
1427*3d8817e4Smiod   {0,0,0,0,0,0},
1428*3d8817e4Smiod   {0,0,0,0,0,0},
1429*3d8817e4Smiod   {0,0,0,0,0,0},
1430*3d8817e4Smiod   {0,0,0,0,0,0},
1431*3d8817e4Smiod   {0,0,0,0,0,0},
1432*3d8817e4Smiod   {0,0,0,0,0,0},
1433*3d8817e4Smiod   {0,0,0,0,0,0},
1434*3d8817e4Smiod };
1435*3d8817e4Smiod 
1436*3d8817e4Smiod const struct formstr e1_format5[] = {
1437*3d8817e4Smiod   {51,20,rr,V,V,0},	/* ldvi.b.t */
1438*3d8817e4Smiod   {51,21,rr,V,V,0},	/* ldvi.h.t */
1439*3d8817e4Smiod   {51,22,rr,V,V,0},	/* ldvi.w.t */
1440*3d8817e4Smiod   {51,23,rr,V,V,0},	/* ldvi.l.t */
1441*3d8817e4Smiod   {28,18,rr,V,V,0},	/* cvtw.s.t */
1442*3d8817e4Smiod   {31,22,rr,V,V,0},	/* cvts.w.t */
1443*3d8817e4Smiod   {28,23,rr,V,V,0},	/* cvtw.l.t */
1444*3d8817e4Smiod   {33,22,rr,V,V,0},	/* cvtl.w.t */
1445*3d8817e4Smiod   {52,20,rxr,V,V,0},	/* stvi.b.t */
1446*3d8817e4Smiod   {52,21,rxr,V,V,0},	/* stvi.h.t */
1447*3d8817e4Smiod   {52,22,rxr,V,V,0},	/* stvi.w.t */
1448*3d8817e4Smiod   {52,23,rxr,V,V,0},	/* stvi.l.t */
1449*3d8817e4Smiod   {52,20,rxr,S,V,0},	/* stvi.b.t */
1450*3d8817e4Smiod   {52,21,rxr,S,V,0},	/* stvi.h.t */
1451*3d8817e4Smiod   {52,22,rxr,S,V,0},	/* stvi.w.t */
1452*3d8817e4Smiod   {52,23,rxr,S,V,0},	/* stvi.l.t */
1453*3d8817e4Smiod };
1454*3d8817e4Smiod 
1455*3d8817e4Smiod const struct formstr e1_format6[] = {
1456*3d8817e4Smiod   {0,0,0,0,0,0},
1457*3d8817e4Smiod   {0,0,0,0,0,0},
1458*3d8817e4Smiod   {0,0,0,0,0,0},
1459*3d8817e4Smiod   {0,0,0,0,0,0},
1460*3d8817e4Smiod   {0,0,0,0,0,0},
1461*3d8817e4Smiod   {0,0,0,0,0,0},
1462*3d8817e4Smiod   {0,0,0,0,0,0},
1463*3d8817e4Smiod   {0,0,0,0,0,0},
1464*3d8817e4Smiod   {0,0,0,0,0,0},
1465*3d8817e4Smiod   {0,0,0,0,0,0},
1466*3d8817e4Smiod   {0,0,0,0,0,0},
1467*3d8817e4Smiod   {0,0,0,0,0,0},
1468*3d8817e4Smiod   {0,0,0,0,0,0},
1469*3d8817e4Smiod   {0,0,0,0,0,0},
1470*3d8817e4Smiod   {0,0,0,0,0,0},
1471*3d8817e4Smiod   {0,0,0,0,0,0},
1472*3d8817e4Smiod   {0,0,0,0,0,0},
1473*3d8817e4Smiod   {0,0,0,0,0,0},
1474*3d8817e4Smiod   {0,0,0,0,0,0},
1475*3d8817e4Smiod   {0,0,0,0,0,0},
1476*3d8817e4Smiod   {0,0,0,0,0,0},
1477*3d8817e4Smiod   {0,0,0,0,0,0},
1478*3d8817e4Smiod   {0,0,0,0,0,0},
1479*3d8817e4Smiod   {0,0,0,0,0,0},
1480*3d8817e4Smiod   {0,0,0,0,0,0},
1481*3d8817e4Smiod   {0,0,0,0,0,0},
1482*3d8817e4Smiod   {0,0,0,0,0,0},
1483*3d8817e4Smiod   {0,0,0,0,0,0},
1484*3d8817e4Smiod   {0,0,0,0,0,0},
1485*3d8817e4Smiod   {0,0,0,0,0,0},
1486*3d8817e4Smiod   {0,0,0,0,0,0},
1487*3d8817e4Smiod   {0,0,0,0,0,0},
1488*3d8817e4Smiod   {0,0,0,0,0,0},
1489*3d8817e4Smiod   {0,0,0,0,0,0},
1490*3d8817e4Smiod   {0,0,0,0,0,0},
1491*3d8817e4Smiod   {0,0,0,0,0,0},
1492*3d8817e4Smiod   {0,0,0,0,0,0},
1493*3d8817e4Smiod   {0,0,0,0,0,0},
1494*3d8817e4Smiod   {0,0,0,0,0,0},
1495*3d8817e4Smiod   {0,0,0,0,0,0},
1496*3d8817e4Smiod   {0,0,0,0,0,0},
1497*3d8817e4Smiod   {0,0,0,0,0,0},
1498*3d8817e4Smiod   {0,0,0,0,0,0},
1499*3d8817e4Smiod   {0,0,0,0,0,0},
1500*3d8817e4Smiod   {0,0,0,0,0,0},
1501*3d8817e4Smiod   {0,0,0,0,0,0},
1502*3d8817e4Smiod   {0,0,0,0,0,0},
1503*3d8817e4Smiod   {0,0,0,0,0,0},
1504*3d8817e4Smiod   {0,0,0,0,0,0},
1505*3d8817e4Smiod   {0,0,0,0,0,0},
1506*3d8817e4Smiod   {0,0,0,0,0,0},
1507*3d8817e4Smiod   {0,0,0,0,0,0},
1508*3d8817e4Smiod   {0,0,0,0,0,0},
1509*3d8817e4Smiod   {0,0,0,0,0,0},
1510*3d8817e4Smiod   {0,0,0,0,0,0},
1511*3d8817e4Smiod   {0,0,0,0,0,0},
1512*3d8817e4Smiod   {0,0,0,0,0,0},
1513*3d8817e4Smiod   {0,0,0,0,0,0},
1514*3d8817e4Smiod   {0,0,0,0,0,0},
1515*3d8817e4Smiod   {0,0,0,0,0,0},
1516*3d8817e4Smiod   {0,0,0,0,0,0},
1517*3d8817e4Smiod   {0,0,0,0,0,0},
1518*3d8817e4Smiod   {0,0,0,0,0,0},
1519*3d8817e4Smiod   {0,0,0,0,0,0},
1520*3d8817e4Smiod };
1521*3d8817e4Smiod 
1522*3d8817e4Smiod const struct formstr e1_format7[] = {
1523*3d8817e4Smiod   {84,20,r,V,0,0},	/* sum.b.t */
1524*3d8817e4Smiod   {84,21,r,V,0,0},	/* sum.h.t */
1525*3d8817e4Smiod   {84,22,r,V,0,0},	/* sum.w.t */
1526*3d8817e4Smiod   {84,23,r,V,0,0},	/* sum.l.t */
1527*3d8817e4Smiod   {85,1,r,V,0,0},	/* all.t */
1528*3d8817e4Smiod   {86,1,r,V,0,0},	/* any.t */
1529*3d8817e4Smiod   {87,1,r,V,0,0},	/* parity.t */
1530*3d8817e4Smiod   {0,0,0,0,0,0},
1531*3d8817e4Smiod   {88,20,r,V,0,0},	/* max.b.t */
1532*3d8817e4Smiod   {88,21,r,V,0,0},	/* max.h.t */
1533*3d8817e4Smiod   {88,22,r,V,0,0},	/* max.w.t */
1534*3d8817e4Smiod   {88,23,r,V,0,0},	/* max.l.t */
1535*3d8817e4Smiod   {89,20,r,V,0,0},	/* min.b.t */
1536*3d8817e4Smiod   {89,21,r,V,0,0},	/* min.h.t */
1537*3d8817e4Smiod   {89,22,r,V,0,0},	/* min.w.t */
1538*3d8817e4Smiod   {89,23,r,V,0,0},	/* min.l.t */
1539*3d8817e4Smiod   {84,18,r,V,0,0},	/* sum.s.t */
1540*3d8817e4Smiod   {84,19,r,V,0,0},	/* sum.d.t */
1541*3d8817e4Smiod   {90,18,r,V,0,0},	/* prod.s.t */
1542*3d8817e4Smiod   {90,19,r,V,0,0},	/* prod.d.t */
1543*3d8817e4Smiod   {88,18,r,V,0,0},	/* max.s.t */
1544*3d8817e4Smiod   {88,19,r,V,0,0},	/* max.d.t */
1545*3d8817e4Smiod   {89,18,r,V,0,0},	/* min.s.t */
1546*3d8817e4Smiod   {89,19,r,V,0,0},	/* min.d.t */
1547*3d8817e4Smiod   {90,20,r,V,0,0},	/* prod.b.t */
1548*3d8817e4Smiod   {90,21,r,V,0,0},	/* prod.h.t */
1549*3d8817e4Smiod   {90,22,r,V,0,0},	/* prod.w.t */
1550*3d8817e4Smiod   {90,23,r,V,0,0},	/* prod.l.t */
1551*3d8817e4Smiod   {0,0,0,0,0,0},
1552*3d8817e4Smiod   {0,0,0,0,0,0},
1553*3d8817e4Smiod   {0,0,0,0,0,0},
1554*3d8817e4Smiod   {0,0,0,0,0,0},
1555*3d8817e4Smiod };
1556*3d8817e4Smiod 
1557*3d8817e4Smiod char *lop[] = {
1558*3d8817e4Smiod   "mov",	/* 0 */
1559*3d8817e4Smiod   "merg",	/* 1 */
1560*3d8817e4Smiod   "mask",	/* 2 */
1561*3d8817e4Smiod   "mul",	/* 3 */
1562*3d8817e4Smiod   "div",	/* 4 */
1563*3d8817e4Smiod   "and",	/* 5 */
1564*3d8817e4Smiod   "or",	/* 6 */
1565*3d8817e4Smiod   "xor",	/* 7 */
1566*3d8817e4Smiod   "shf",	/* 8 */
1567*3d8817e4Smiod   "add",	/* 9 */
1568*3d8817e4Smiod   "sub",	/* 10 */
1569*3d8817e4Smiod   "exit",	/* 11 */
1570*3d8817e4Smiod   "jmp",	/* 12 */
1571*3d8817e4Smiod   "jmpi",	/* 13 */
1572*3d8817e4Smiod   "jmpa",	/* 14 */
1573*3d8817e4Smiod   "jmps",	/* 15 */
1574*3d8817e4Smiod   "tac",	/* 16 */
1575*3d8817e4Smiod   "ldea",	/* 17 */
1576*3d8817e4Smiod   "ld",	/* 18 */
1577*3d8817e4Smiod   "tas",	/* 19 */
1578*3d8817e4Smiod   "pshea",	/* 20 */
1579*3d8817e4Smiod   "st",	/* 21 */
1580*3d8817e4Smiod   "call",	/* 22 */
1581*3d8817e4Smiod   "calls",	/* 23 */
1582*3d8817e4Smiod   "callq",	/* 24 */
1583*3d8817e4Smiod   "pfork",	/* 25 */
1584*3d8817e4Smiod   "ste",	/* 26 */
1585*3d8817e4Smiod   "incr",	/* 27 */
1586*3d8817e4Smiod   "cvtw",	/* 28 */
1587*3d8817e4Smiod   "cvtb",	/* 29 */
1588*3d8817e4Smiod   "cvth",	/* 30 */
1589*3d8817e4Smiod   "cvts",	/* 31 */
1590*3d8817e4Smiod   "cvtd",	/* 32 */
1591*3d8817e4Smiod   "cvtl",	/* 33 */
1592*3d8817e4Smiod   "ldpa",	/* 34 */
1593*3d8817e4Smiod   "plc",	/* 35 */
1594*3d8817e4Smiod   "tzc",	/* 36 */
1595*3d8817e4Smiod   "eq",	/* 37 */
1596*3d8817e4Smiod   "leu",	/* 38 */
1597*3d8817e4Smiod   "ltu",	/* 39 */
1598*3d8817e4Smiod   "le",	/* 40 */
1599*3d8817e4Smiod   "lt",	/* 41 */
1600*3d8817e4Smiod   "not",	/* 42 */
1601*3d8817e4Smiod   "neg",	/* 43 */
1602*3d8817e4Smiod   "lop",	/* 44 */
1603*3d8817e4Smiod   "cprs",	/* 45 */
1604*3d8817e4Smiod   "nop",	/* 46 */
1605*3d8817e4Smiod   "br",	/* 47 */
1606*3d8817e4Smiod   "bri",	/* 48 */
1607*3d8817e4Smiod   "bra",	/* 49 */
1608*3d8817e4Smiod   "brs",	/* 50 */
1609*3d8817e4Smiod   "ldvi",	/* 51 */
1610*3d8817e4Smiod   "stvi",	/* 52 */
1611*3d8817e4Smiod   "ldsdr",	/* 53 */
1612*3d8817e4Smiod   "ldkdr",	/* 54 */
1613*3d8817e4Smiod   "ln",	/* 55 */
1614*3d8817e4Smiod   "patu",	/* 56 */
1615*3d8817e4Smiod   "pate",	/* 57 */
1616*3d8817e4Smiod   "pich",	/* 58 */
1617*3d8817e4Smiod   "plch",	/* 59 */
1618*3d8817e4Smiod   "idle",	/* 60 */
1619*3d8817e4Smiod   "rtnq",	/* 61 */
1620*3d8817e4Smiod   "cfork",	/* 62 */
1621*3d8817e4Smiod   "rtn",	/* 63 */
1622*3d8817e4Smiod   "wfork",	/* 64 */
1623*3d8817e4Smiod   "join",	/* 65 */
1624*3d8817e4Smiod   "rtnc",	/* 66 */
1625*3d8817e4Smiod   "exp",	/* 67 */
1626*3d8817e4Smiod   "sin",	/* 68 */
1627*3d8817e4Smiod   "cos",	/* 69 */
1628*3d8817e4Smiod   "psh",	/* 70 */
1629*3d8817e4Smiod   "pop",	/* 71 */
1630*3d8817e4Smiod   "eni",	/* 72 */
1631*3d8817e4Smiod   "dsi",	/* 73 */
1632*3d8817e4Smiod   "bkpt",	/* 74 */
1633*3d8817e4Smiod   "msync",	/* 75 */
1634*3d8817e4Smiod   "mski",	/* 76 */
1635*3d8817e4Smiod   "xmti",	/* 77 */
1636*3d8817e4Smiod   "tstvv",	/* 78 */
1637*3d8817e4Smiod   "diag",	/* 79 */
1638*3d8817e4Smiod   "pbkpt",	/* 80 */
1639*3d8817e4Smiod   "sqrt",	/* 81 */
1640*3d8817e4Smiod   "casr",	/* 82 */
1641*3d8817e4Smiod   "atan",	/* 83 */
1642*3d8817e4Smiod   "sum",	/* 84 */
1643*3d8817e4Smiod   "all",	/* 85 */
1644*3d8817e4Smiod   "any",	/* 86 */
1645*3d8817e4Smiod   "parity",	/* 87 */
1646*3d8817e4Smiod   "max",	/* 88 */
1647*3d8817e4Smiod   "min",	/* 89 */
1648*3d8817e4Smiod   "prod",	/* 90 */
1649*3d8817e4Smiod   "halt",	/* 91 */
1650*3d8817e4Smiod   "sysc",	/* 92 */
1651*3d8817e4Smiod   "trap",	/* 93 */
1652*3d8817e4Smiod   "tst",	/* 94 */
1653*3d8817e4Smiod   "lck",	/* 95 */
1654*3d8817e4Smiod   "ulk",	/* 96 */
1655*3d8817e4Smiod   "spawn",	/* 97 */
1656*3d8817e4Smiod   "ldcmr",	/* 98 */
1657*3d8817e4Smiod   "stcmr",	/* 99 */
1658*3d8817e4Smiod   "popr",	/* 100 */
1659*3d8817e4Smiod   "pshr",	/* 101 */
1660*3d8817e4Smiod   "rcvr",	/* 102 */
1661*3d8817e4Smiod   "matm",	/* 103 */
1662*3d8817e4Smiod   "sndr",	/* 104 */
1663*3d8817e4Smiod   "putr",	/* 105 */
1664*3d8817e4Smiod   "getr",	/* 106 */
1665*3d8817e4Smiod   "matr",	/* 107 */
1666*3d8817e4Smiod   "mat",	/* 108 */
1667*3d8817e4Smiod   "get",	/* 109 */
1668*3d8817e4Smiod   "rcv",	/* 110 */
1669*3d8817e4Smiod   "inc",	/* 111 */
1670*3d8817e4Smiod   "put",	/* 112 */
1671*3d8817e4Smiod   "snd",	/* 113 */
1672*3d8817e4Smiod   "enal",	/* 114 */
1673*3d8817e4Smiod   "enag",	/* 115 */
1674*3d8817e4Smiod   "frint",	/* 116 */
1675*3d8817e4Smiod   "xpnd",	/* 117 */
1676*3d8817e4Smiod   "ctrsl",	/* 118 */
1677*3d8817e4Smiod   "ctrsg",	/* 119 */
1678*3d8817e4Smiod   "stop",	/* 120 */
1679*3d8817e4Smiod };
1680*3d8817e4Smiod 
1681*3d8817e4Smiod char *rop[] = {
1682*3d8817e4Smiod   "",	/* 0 */
1683*3d8817e4Smiod   ".t",	/* 1 */
1684*3d8817e4Smiod   ".f",	/* 2 */
1685*3d8817e4Smiod   ".s",	/* 3 */
1686*3d8817e4Smiod   ".d",	/* 4 */
1687*3d8817e4Smiod   ".b",	/* 5 */
1688*3d8817e4Smiod   ".h",	/* 6 */
1689*3d8817e4Smiod   ".w",	/* 7 */
1690*3d8817e4Smiod   ".l",	/* 8 */
1691*3d8817e4Smiod   ".x",	/* 9 */
1692*3d8817e4Smiod   ".u",	/* 10 */
1693*3d8817e4Smiod   ".s.f",	/* 11 */
1694*3d8817e4Smiod   ".d.f",	/* 12 */
1695*3d8817e4Smiod   ".b.f",	/* 13 */
1696*3d8817e4Smiod   ".h.f",	/* 14 */
1697*3d8817e4Smiod   ".w.f",	/* 15 */
1698*3d8817e4Smiod   ".l.f",	/* 16 */
1699*3d8817e4Smiod   ".t.f",	/* 17 */
1700*3d8817e4Smiod   ".s.t",	/* 18 */
1701*3d8817e4Smiod   ".d.t",	/* 19 */
1702*3d8817e4Smiod   ".b.t",	/* 20 */
1703*3d8817e4Smiod   ".h.t",	/* 21 */
1704*3d8817e4Smiod   ".w.t",	/* 22 */
1705*3d8817e4Smiod   ".l.t",	/* 23 */
1706*3d8817e4Smiod   ".t.t",	/* 24 */
1707*3d8817e4Smiod };
1708