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