1/* Instruction opcode table for frv.
2
3THIS FILE IS MACHINE GENERATED WITH CGEN.
4
5Copyright 1996-2005 Free Software Foundation, Inc.
6
7This file is part of the GNU Binutils and/or GDB, the GNU debugger.
8
9This program is free software; you can redistribute it and/or modify
10it under the terms of the GNU General Public License as published by
11the Free Software Foundation; either version 2, or (at your option)
12any later version.
13
14This program is distributed in the hope that it will be useful,
15but WITHOUT ANY WARRANTY; without even the implied warranty of
16MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17GNU General Public License for more details.
18
19You should have received a copy of the GNU General Public License along
20with this program; if not, write to the Free Software Foundation, Inc.,
2151 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
22
23*/
24
25#include "sysdep.h"
26#include "ansidecl.h"
27#include "bfd.h"
28#include "symcat.h"
29#include "frv-desc.h"
30#include "frv-opc.h"
31#include "libiberty.h"
32
33/* -- opc.c */
34#include "elf/frv.h"
35#include <stdio.h>
36
37/* Returns TRUE if {MAJOR,MACH} is a major branch of the FRV
38   development tree.  */
39
40bfd_boolean
41frv_is_branch_major (CGEN_ATTR_VALUE_ENUM_TYPE major, unsigned long mach)
42{
43  switch (mach)
44    {
45    case bfd_mach_fr400:
46      if (major >= FR400_MAJOR_B_1 && major <= FR400_MAJOR_B_6)
47	return TRUE;
48      break;
49    case bfd_mach_fr450:
50      if (major >= FR450_MAJOR_B_1 && major <= FR450_MAJOR_B_6)
51	return TRUE;
52      break;
53    default:
54      if (major >= FR500_MAJOR_B_1 && major <= FR500_MAJOR_B_6)
55	return TRUE;
56      break;
57    }
58
59  return FALSE;
60}
61
62/* Returns TRUE if {MAJOR,MACH} supports floating point insns.  */
63
64bfd_boolean
65frv_is_float_major (CGEN_ATTR_VALUE_ENUM_TYPE major, unsigned long mach)
66{
67  switch (mach)
68    {
69    case bfd_mach_fr400:
70    case bfd_mach_fr450:
71      return FALSE;
72    default:
73      if (major >= FR500_MAJOR_F_1 && major <= FR500_MAJOR_F_8)
74	return TRUE;
75      break;
76    }
77
78  return FALSE;
79}
80
81/* Returns TRUE if {MAJOR,MACH} supports media insns.  */
82
83bfd_boolean
84frv_is_media_major (CGEN_ATTR_VALUE_ENUM_TYPE major, unsigned long mach)
85{
86  switch (mach)
87    {
88    case bfd_mach_fr400:
89      if (major >= FR400_MAJOR_M_1 && major <= FR400_MAJOR_M_2)
90	return TRUE;
91      break;
92    case bfd_mach_fr450:
93      if (major >= FR450_MAJOR_M_1 && major <= FR450_MAJOR_M_6)
94	return TRUE;
95      break;
96    default:
97      if (major >= FR500_MAJOR_M_1 && major <= FR500_MAJOR_M_8)
98	return TRUE;
99      break;
100    }
101
102  return FALSE;
103}
104
105bfd_boolean
106frv_is_branch_insn (const CGEN_INSN *insn)
107{
108  if (frv_is_branch_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR),
109			   bfd_mach_fr400))
110    return TRUE;
111  if (frv_is_branch_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR),
112			   bfd_mach_fr450))
113    return TRUE;
114  if (frv_is_branch_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR),
115			   bfd_mach_fr500))
116    return TRUE;
117
118  return FALSE;
119}
120
121bfd_boolean
122frv_is_float_insn (const CGEN_INSN *insn)
123{
124  if (frv_is_float_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR),
125			  bfd_mach_fr400))
126    return TRUE;
127  if (frv_is_float_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR),
128			  bfd_mach_fr450))
129    return TRUE;
130  if (frv_is_float_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR),
131			  bfd_mach_fr500))
132    return TRUE;
133
134  return FALSE;
135}
136
137bfd_boolean
138frv_is_media_insn (const CGEN_INSN *insn)
139{
140  if (frv_is_media_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR),
141			  bfd_mach_fr400))
142    return TRUE;
143  if (frv_is_media_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR),
144			  bfd_mach_fr450))
145    return TRUE;
146  if (frv_is_media_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR),
147			  bfd_mach_fr500))
148    return TRUE;
149
150  return FALSE;
151}
152
153/* This table represents the allowable packing for vliw insns for the fr400.
154   The fr400 has only 2 vliw slots. Represent this by not allowing any insns
155   in the extra slots.
156   Subsets of any given row are also allowed.  */
157static VLIW_COMBO fr400_allowed_vliw[] =
158{
159  /*  slot0       slot1       slot2       slot3    */
160  {  UNIT_I0,    UNIT_I1,    UNIT_NIL,   UNIT_NIL  PAD_VLIW_COMBO },
161  {  UNIT_I0,    UNIT_FM0,   UNIT_NIL,   UNIT_NIL  PAD_VLIW_COMBO },
162  {  UNIT_I0,    UNIT_B0,    UNIT_NIL,   UNIT_NIL  PAD_VLIW_COMBO },
163  {  UNIT_FM0,   UNIT_FM1,   UNIT_NIL,   UNIT_NIL  PAD_VLIW_COMBO },
164  {  UNIT_FM0,   UNIT_B0,    UNIT_NIL,   UNIT_NIL  PAD_VLIW_COMBO },
165  {  UNIT_B0,    UNIT_NIL,   UNIT_NIL,   UNIT_NIL  PAD_VLIW_COMBO },
166  {  UNIT_C,     UNIT_NIL,   UNIT_NIL,   UNIT_NIL  PAD_VLIW_COMBO },
167  {  UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL  PAD_VLIW_COMBO }
168};
169
170/* This table represents the allowable packing for vliw insns for the fr500.
171   The fr500 has only 4 vliw slots. Represent this by not allowing any insns
172   in the extra slots.
173   Subsets of any given row are also allowed.  */
174static VLIW_COMBO fr500_allowed_vliw[] =
175{
176  /*  slot0       slot1       slot2       slot3    */
177  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_FM1  PAD_VLIW_COMBO },
178  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_B0   PAD_VLIW_COMBO },
179  {  UNIT_I0,    UNIT_FM0,   UNIT_FM1,   UNIT_B0   PAD_VLIW_COMBO },
180  {  UNIT_I0,    UNIT_FM0,   UNIT_B0,    UNIT_B1   PAD_VLIW_COMBO },
181  {  UNIT_I0,    UNIT_I1,    UNIT_B0,    UNIT_B1   PAD_VLIW_COMBO },
182  {  UNIT_I0,    UNIT_B0,    UNIT_B1,    UNIT_NIL  PAD_VLIW_COMBO },
183  {  UNIT_FM0,   UNIT_FM1,   UNIT_B0,    UNIT_B1   PAD_VLIW_COMBO },
184  {  UNIT_FM0,   UNIT_B0,    UNIT_B1,    UNIT_NIL  PAD_VLIW_COMBO },
185  {  UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL  PAD_VLIW_COMBO },
186  {  UNIT_C,     UNIT_NIL,   UNIT_NIL,   UNIT_NIL  PAD_VLIW_COMBO },
187  {  UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL  PAD_VLIW_COMBO }
188};
189
190/* This table represents the allowable packing for vliw insns for the fr550.
191   Subsets of any given row are also allowed.  */
192static VLIW_COMBO fr550_allowed_vliw[] =
193{
194  /*  slot0       slot1       slot2       slot3       slot4       slot5       slot6       slot7   */
195  {  UNIT_I0,    UNIT_I1,    UNIT_I2,    UNIT_I3,    UNIT_B0,    UNIT_B1 ,   UNIT_NIL,   UNIT_NIL },
196  {  UNIT_I0,    UNIT_I1,    UNIT_I2,    UNIT_B0,    UNIT_B1 ,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL },
197  {  UNIT_I0,    UNIT_I1,    UNIT_B0,    UNIT_B1 ,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL },
198  {  UNIT_I0,    UNIT_B0,    UNIT_B1 ,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL },
199  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_FM1,   UNIT_I2,    UNIT_FM2,   UNIT_I3,    UNIT_FM3 },
200  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_FM1,   UNIT_I2,    UNIT_FM2,   UNIT_I3,    UNIT_B0  },
201  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_FM1,   UNIT_I2,    UNIT_FM2,   UNIT_FM3,   UNIT_B0  },
202  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_FM1,   UNIT_I2,    UNIT_FM2,   UNIT_B0,    UNIT_B1  },
203  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_FM1,   UNIT_I2,    UNIT_I3,    UNIT_B0,    UNIT_B1  },
204  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_FM1,   UNIT_I2,    UNIT_B0,    UNIT_B1,    UNIT_NIL },
205  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_FM1,   UNIT_FM2,   UNIT_FM3,   UNIT_B0,    UNIT_B1  },
206  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_FM1,   UNIT_FM2,   UNIT_FM3,   UNIT_B0,    UNIT_B1  },
207  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_FM1,   UNIT_FM2,   UNIT_B0,    UNIT_B1,    UNIT_NIL },
208  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_FM1,   UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL },
209  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_I2,    UNIT_I3,    UNIT_B0,    UNIT_B1,    UNIT_NIL },
210  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_I2,    UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL },
211  {  UNIT_I0,    UNIT_FM0,   UNIT_I1,    UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL,   UNIT_NIL },
212  {  UNIT_I0,    UNIT_FM0,   UNIT_FM1,   UNIT_FM2,   UNIT_FM3,   UNIT_B0,    UNIT_B1,    UNIT_NIL },
213  {  UNIT_I0,    UNIT_FM0,   UNIT_FM1,   UNIT_FM2,   UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL },
214  {  UNIT_I0,    UNIT_FM0,   UNIT_FM1,   UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL,   UNIT_NIL },
215  {  UNIT_I0,    UNIT_FM0,   UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL },
216  {  UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL },
217  {  UNIT_C,     UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL },
218  {  UNIT_FM0,   UNIT_FM1,   UNIT_FM2,   UNIT_FM3,   UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL },
219  {  UNIT_FM0,   UNIT_FM1,   UNIT_FM2,   UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL,   UNIT_NIL },
220  {  UNIT_FM0,   UNIT_FM1,   UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL },
221  {  UNIT_FM0,   UNIT_B0,    UNIT_B1,    UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL },
222  {  UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL,   UNIT_NIL }
223};
224
225/* Some insns are assigned specialized implementation units which map to
226   different actual implementation units on different machines.  These
227   tables perform that mapping.  */
228static CGEN_ATTR_VALUE_ENUM_TYPE fr400_unit_mapping[] =
229{
230/* unit in insn    actual unit */
231/* NIL      */     UNIT_NIL,
232/* I0       */     UNIT_I0,
233/* I1       */     UNIT_I1,
234/* I01      */     UNIT_I01,
235/* I2       */     UNIT_NIL, /* no I2 or I3 unit */
236/* I3       */     UNIT_NIL,
237/* IALL     */     UNIT_I01, /* only I0 and I1 units */
238/* FM0      */     UNIT_FM0,
239/* FM1      */     UNIT_FM1,
240/* FM01     */     UNIT_FM01,
241/* FM2      */     UNIT_NIL, /* no F2 or M2 units */
242/* FM3      */     UNIT_NIL, /* no F3 or M3 units */
243/* FMALL    */     UNIT_FM01,/* Only F0,F1,M0,M1 units */
244/* FMLOW    */     UNIT_FM0, /* Only F0,M0 units */
245/* B0       */     UNIT_B0,  /* branches only in B0 unit.  */
246/* B1       */     UNIT_B0,
247/* B01      */     UNIT_B0,
248/* C        */     UNIT_C,
249/* MULT-DIV */     UNIT_I0,  /* multiply and divide only in I0  unit.  */
250/* IACC     */     UNIT_I01, /* iacc multiply       in I0 or I1 unit.  */
251/* LOAD     */     UNIT_I0,  /* load                only in I0  unit.  */
252/* STORE    */     UNIT_I0,  /* store               only in I0  unit.  */
253/* SCAN     */     UNIT_I0,  /* scan                only in I0  unit.  */
254/* DCPL     */     UNIT_C,   /* dcpl                only in C   unit.  */
255/* MDUALACC */     UNIT_FM0, /* media dual acc insn only in FM0 unit.  */
256/* MDCUTSSI */     UNIT_FM0, /* mdcutssi            only in FM0 unit.  */
257/* MCLRACC-1*/     UNIT_FM0  /* mclracc,A==1   insn only in FM0 unit.  */
258};
259
260/* Some insns are assigned specialized implementation units which map to
261   different actual implementation units on different machines.  These
262   tables perform that mapping.  */
263static CGEN_ATTR_VALUE_ENUM_TYPE fr450_unit_mapping[] =
264{
265/* unit in insn    actual unit */
266/* NIL      */     UNIT_NIL,
267/* I0       */     UNIT_I0,
268/* I1       */     UNIT_I1,
269/* I01      */     UNIT_I01,
270/* I2       */     UNIT_NIL, /* no I2 or I3 unit */
271/* I3       */     UNIT_NIL,
272/* IALL     */     UNIT_I01, /* only I0 and I1 units */
273/* FM0      */     UNIT_FM0,
274/* FM1      */     UNIT_FM1,
275/* FM01     */     UNIT_FM01,
276/* FM2      */     UNIT_NIL, /* no F2 or M2 units */
277/* FM3      */     UNIT_NIL, /* no F3 or M3 units */
278/* FMALL    */     UNIT_FM01,/* Only F0,F1,M0,M1 units */
279/* FMLOW    */     UNIT_FM0, /* Only F0,M0 units */
280/* B0       */     UNIT_B0,  /* branches only in B0 unit.  */
281/* B1       */     UNIT_B0,
282/* B01      */     UNIT_B0,
283/* C        */     UNIT_C,
284/* MULT-DIV */     UNIT_I0,  /* multiply and divide only in I0  unit.  */
285/* IACC     */     UNIT_I01, /* iacc multiply       in I0 or I1 unit.  */
286/* LOAD     */     UNIT_I0,  /* load                only in I0  unit.  */
287/* STORE    */     UNIT_I0,  /* store               only in I0  unit.  */
288/* SCAN     */     UNIT_I0,  /* scan                only in I0  unit.  */
289/* DCPL     */     UNIT_I0,  /* dcpl                only in I0  unit.  */
290/* MDUALACC */     UNIT_FM0, /* media dual acc insn only in FM0 unit.  */
291/* MDCUTSSI */     UNIT_FM01, /* mdcutssi           in FM0 or FM1.  */
292/* MCLRACC-1*/     UNIT_FM0  /* mclracc,A==1   insn only in FM0 unit.  */
293};
294
295static CGEN_ATTR_VALUE_ENUM_TYPE fr500_unit_mapping[] =
296{
297/* unit in insn    actual unit */
298/* NIL      */     UNIT_NIL,
299/* I0       */     UNIT_I0,
300/* I1       */     UNIT_I1,
301/* I01      */     UNIT_I01,
302/* I2       */     UNIT_NIL, /* no I2 or I3 unit */
303/* I3       */     UNIT_NIL,
304/* IALL     */     UNIT_I01, /* only I0 and I1 units */
305/* FM0      */     UNIT_FM0,
306/* FM1      */     UNIT_FM1,
307/* FM01     */     UNIT_FM01,
308/* FM2      */     UNIT_NIL, /* no F2 or M2 units */
309/* FM3      */     UNIT_NIL, /* no F3 or M2 units */
310/* FMALL    */     UNIT_FM01,/* Only F0,F1,M0,M1 units */
311/* FMLOW    */     UNIT_FM0, /* Only F0,M0 units */
312/* B0       */     UNIT_B0,
313/* B1       */     UNIT_B1,
314/* B01      */     UNIT_B01,
315/* C        */     UNIT_C,
316/* MULT-DIV */     UNIT_I01, /* multiply and divide in I0 or I1 unit.  */
317/* IACC     */     UNIT_NIL, /* iacc multiply       not implemented */
318/* LOAD     */     UNIT_I01, /* load                in I0 or I1 unit.  */
319/* STORE    */     UNIT_I0,  /* store               only in I0 unit.  */
320/* SCAN     */     UNIT_I01, /* scan                in I0 or I1 unit.  */
321/* DCPL     */     UNIT_C,   /* dcpl                only in C unit.  */
322/* MDUALACC */     UNIT_FM0, /* media dual acc insn only in FM0 unit.  */
323/* MDCUTSSI */     UNIT_FM0, /* mdcutssi            only in FM0 unit.  */
324/* MCLRACC-1*/     UNIT_FM01 /* mclracc,A==1 in FM0 or FM1 unit.  */
325};
326
327static CGEN_ATTR_VALUE_ENUM_TYPE fr550_unit_mapping[] =
328{
329/* unit in insn    actual unit */
330/* NIL      */     UNIT_NIL,
331/* I0       */     UNIT_I0,
332/* I1       */     UNIT_I1,
333/* I01      */     UNIT_I01,
334/* I2       */     UNIT_I2,
335/* I3       */     UNIT_I3,
336/* IALL     */     UNIT_IALL,
337/* FM0      */     UNIT_FM0,
338/* FM1      */     UNIT_FM1,
339/* FM01     */     UNIT_FM01,
340/* FM2      */     UNIT_FM2,
341/* FM3      */     UNIT_FM3,
342/* FMALL    */     UNIT_FMALL,
343/* FMLOW    */     UNIT_FM01, /* Only F0,F1,M0,M1 units */
344/* B0       */     UNIT_B0,
345/* B1       */     UNIT_B1,
346/* B01      */     UNIT_B01,
347/* C        */     UNIT_C,
348/* MULT-DIV */     UNIT_I01,  /* multiply and divide in I0 or I1 unit.    */
349/* IACC     */     UNIT_NIL,  /* iacc multiply       not implemented.     */
350/* LOAD     */     UNIT_I01,  /* load                in I0 or I1 unit.    */
351/* STORE    */     UNIT_I01,  /* store               in I0 or I1 unit.    */
352/* SCAN     */     UNIT_IALL, /* scan                in any integer unit. */
353/* DCPL     */     UNIT_I0,   /* dcpl                only in I0 unit.     */
354/* MDUALACC */     UNIT_FMALL,/* media dual acc insn in all media units   */
355/* MDCUTSSI */     UNIT_FM01, /* mdcutssi            in FM0 or FM1 unit.  */
356/* MCLRACC-1*/     UNIT_FM01  /* mclracc,A==1 in FM0 or FM1 unit.         */
357};
358
359void
360frv_vliw_reset (FRV_VLIW *vliw, unsigned long mach, unsigned long elf_flags)
361{
362  vliw->next_slot = 0;
363  vliw->constraint_violation = 0;
364  vliw->mach = mach;
365  vliw->elf_flags = elf_flags;
366
367  switch (mach)
368    {
369    case bfd_mach_fr400:
370      vliw->current_vliw = fr400_allowed_vliw;
371      vliw->unit_mapping = fr400_unit_mapping;
372      break;
373    case bfd_mach_fr450:
374      vliw->current_vliw = fr400_allowed_vliw;
375      vliw->unit_mapping = fr450_unit_mapping;
376      break;
377    case bfd_mach_fr550:
378      vliw->current_vliw = fr550_allowed_vliw;
379      vliw->unit_mapping = fr550_unit_mapping;
380      break;
381    default:
382      vliw->current_vliw = fr500_allowed_vliw;
383      vliw->unit_mapping = fr500_unit_mapping;
384      break;
385    }
386}
387
388/* Return TRUE if unit1 is a match for unit2.
389   Unit1 comes from the insn's UNIT attribute. unit2 comes from one of the
390   *_allowed_vliw tables above.  */
391static bfd_boolean
392match_unit (FRV_VLIW *vliw,
393	    CGEN_ATTR_VALUE_ENUM_TYPE unit1, CGEN_ATTR_VALUE_ENUM_TYPE unit2)
394{
395  /* Map any specialized implementation units to actual ones.  */
396  unit1 = vliw->unit_mapping[unit1];
397
398  if (unit1 == unit2)
399    return TRUE;
400  if (unit1 < unit2)
401    return FALSE;
402
403  switch (unit1)
404    {
405    case UNIT_I01:
406    case UNIT_FM01:
407    case UNIT_B01:
408      /* The 01 versions of these units are within 2 enums of the 0 or 1
409	 versions.  */
410      if (unit1 - unit2 <= 2)
411	return TRUE;
412      break;
413    case UNIT_IALL:
414    case UNIT_FMALL:
415      /* The ALL versions of these units are within 5 enums of the 0, 1, 2 or 3
416	 versions.  */
417      if (unit1 - unit2 <= 5)
418	return TRUE;
419      break;
420    default:
421      break;
422    }
423
424  return FALSE;
425}
426
427/* Return TRUE if the vliws match, FALSE otherwise.  */
428
429static bfd_boolean
430match_vliw (VLIW_COMBO *vliw1, VLIW_COMBO *vliw2, int vliw_size)
431{
432  int i;
433
434  for (i = 0; i < vliw_size; ++i)
435    if ((*vliw1)[i] != (*vliw2)[i])
436      return FALSE;
437
438  return TRUE;
439}
440
441/* Find the next vliw vliw in the table that can accomodate the new insn.
442   If one is found then return it. Otherwise return NULL.  */
443
444static VLIW_COMBO *
445add_next_to_vliw (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE unit)
446{
447  int           next    = vliw->next_slot;
448  VLIW_COMBO    *current = vliw->current_vliw;
449  VLIW_COMBO    *potential;
450
451  if (next <= 0)
452    {
453      fprintf (stderr, "frv-opc.c line %d: bad vliw->next_slot value.\n",
454	       __LINE__);
455      abort (); /* Should never happen.  */
456    }
457
458  /* The table is sorted by units allowed within slots, so vliws with
459     identical starting sequences are together.  */
460  potential = current;
461  do
462    {
463      if (match_unit (vliw, unit, (*potential)[next]))
464	return potential;
465      ++potential;
466    }
467  while (match_vliw (potential, current, next));
468
469  return NULL;
470}
471
472/* Look for the given major insn type in the given vliw.
473   Returns TRUE if found, FALSE otherwise.  */
474
475static bfd_boolean
476find_major_in_vliw (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
477{
478  int i;
479
480  for (i = 0; i < vliw->next_slot; ++i)
481    if (vliw->major[i] == major)
482      return TRUE;
483
484  return FALSE;
485}
486
487/* Check for constraints between the insns in the vliw due to major insn
488   types.  */
489
490static bfd_boolean
491fr400_check_insn_major_constraints (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
492{
493  /* In the cpu file, all media insns are represented as being allowed in
494     both media units. This makes it easier since this is the case for fr500.
495     Catch the invalid combinations here.  Insns of major class FR400_MAJOR_M_2
496     cannot coexist with any other media insn in a vliw.  */
497  switch (major)
498    {
499    case FR400_MAJOR_M_2:
500      return ! find_major_in_vliw (vliw, FR400_MAJOR_M_1)
501	&&   ! find_major_in_vliw (vliw, FR400_MAJOR_M_2);
502    case FR400_MAJOR_M_1:
503      return ! find_major_in_vliw (vliw, FR400_MAJOR_M_2);
504    default:
505      break;
506    }
507  return TRUE;
508}
509
510static bfd_boolean
511fr450_check_insn_major_constraints (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
512{
513  CGEN_ATTR_VALUE_ENUM_TYPE other_major;
514
515  /* Our caller guarantees there's at least one other instruction.  */
516  other_major = CGEN_INSN_ATTR_VALUE (vliw->insn[0], CGEN_INSN_FR450_MAJOR);
517
518  /* (M4, M5) and (M4, M6) are allowed.  */
519  if (other_major == FR450_MAJOR_M_4)
520    if (major == FR450_MAJOR_M_5 || major == FR450_MAJOR_M_6)
521      return TRUE;
522
523  /* Otherwise, instructions in even-numbered media categories cannot be
524     executed in parallel with other media instructions.  */
525  switch (major)
526    {
527    case FR450_MAJOR_M_2:
528    case FR450_MAJOR_M_4:
529    case FR450_MAJOR_M_6:
530      return !(other_major >= FR450_MAJOR_M_1
531	       && other_major <= FR450_MAJOR_M_6);
532
533    case FR450_MAJOR_M_1:
534    case FR450_MAJOR_M_3:
535    case FR450_MAJOR_M_5:
536      return !(other_major == FR450_MAJOR_M_2
537	       || other_major == FR450_MAJOR_M_4
538	       || other_major == FR450_MAJOR_M_6);
539
540    default:
541      return TRUE;
542    }
543}
544
545static bfd_boolean
546find_unit_in_vliw (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE unit)
547{
548  int i;
549
550  for (i = 0; i < vliw->next_slot; ++i)
551    if (CGEN_INSN_ATTR_VALUE (vliw->insn[i], CGEN_INSN_UNIT) == unit)
552      return TRUE;
553
554  return FALSE; /* Not found.  */
555}
556
557static bfd_boolean
558find_major_in_slot (FRV_VLIW *vliw,
559		    CGEN_ATTR_VALUE_ENUM_TYPE major,
560		    CGEN_ATTR_VALUE_ENUM_TYPE slot)
561{
562  int i;
563
564  for (i = 0; i < vliw->next_slot; ++i)
565    if (vliw->major[i] == major && (*vliw->current_vliw)[i] == slot)
566      return TRUE;
567
568  return FALSE;
569}
570
571static bfd_boolean
572fr550_find_media_in_vliw (FRV_VLIW *vliw)
573{
574  int i;
575
576  for (i = 0; i < vliw->next_slot; ++i)
577    {
578      if (vliw->major[i] < FR550_MAJOR_M_1 || vliw->major[i] > FR550_MAJOR_M_5)
579	continue;
580
581      /* Found a media insn, however, MNOP and MCLRACC don't count.  */
582      if (CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_MNOP
583	  || CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_MCLRACC_0
584	  || CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_MCLRACC_1)
585	continue;
586
587      return TRUE; /* Found one.  */
588    }
589
590  return FALSE;
591}
592
593static bfd_boolean
594fr550_find_float_in_vliw (FRV_VLIW *vliw)
595{
596  int i;
597
598  for (i = 0; i < vliw->next_slot; ++i)
599    {
600      if (vliw->major[i] < FR550_MAJOR_F_1 || vliw->major[i] > FR550_MAJOR_F_4)
601	continue;
602
603      /* Found a floating point insn, however, FNOP doesn't count.  */
604      if (CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_FNOP)
605	continue;
606
607      return TRUE; /* Found one.  */
608    }
609
610  return FALSE;
611}
612
613static bfd_boolean
614fr550_check_insn_major_constraints (FRV_VLIW *vliw,
615				    CGEN_ATTR_VALUE_ENUM_TYPE major,
616				    const CGEN_INSN *insn)
617{
618  CGEN_ATTR_VALUE_ENUM_TYPE unit;
619  CGEN_ATTR_VALUE_ENUM_TYPE slot = (*vliw->current_vliw)[vliw->next_slot];
620  switch (slot)
621    {
622    case UNIT_I2:
623      /* If it's a store, then there must be another store in I1 */
624      unit = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_UNIT);
625      if (unit == UNIT_STORE)
626	return find_unit_in_vliw (vliw, UNIT_STORE);
627      break;
628    case UNIT_FM2:
629    case UNIT_FM3:
630      /* Floating point insns other than FNOP in slot f2 or f3 cannot coexist
631	 with media insns.  */
632      if (major >= FR550_MAJOR_F_1 && major <= FR550_MAJOR_F_4
633	  && CGEN_INSN_NUM (insn) != FRV_INSN_FNOP)
634	return ! fr550_find_media_in_vliw (vliw);
635      /* Media insns other than MNOP in slot m2 or m3 cannot coexist with
636	 floating point insns.  */
637      if (major >= FR550_MAJOR_M_1 && major <= FR550_MAJOR_M_5
638	  && CGEN_INSN_NUM (insn) != FRV_INSN_MNOP)
639	return ! fr550_find_float_in_vliw (vliw);
640      /* F-2 in slot f2 or f3 cannot coexist with F-2 or F-4 in slot f1 or f2
641	 respectively.  */
642      if (major == FR550_MAJOR_F_2)
643	return ! find_major_in_slot (vliw, FR550_MAJOR_F_2,
644				     slot - (UNIT_FM2 - UNIT_FM0))
645	  &&   ! find_major_in_slot (vliw, FR550_MAJOR_F_4,
646				     slot - (UNIT_FM2 - UNIT_FM0));
647      /* M-2 or M-5 in slot m2 or m3 cannot coexist with M-2 in slot m1 or m2
648	 respectively.  */
649      if (major == FR550_MAJOR_M_2 || major == FR550_MAJOR_M_5)
650	return ! find_major_in_slot (vliw, FR550_MAJOR_M_2,
651				     slot - (UNIT_FM2 - UNIT_FM0));
652      /* M-4 in slot m2 or m3 cannot coexist with M-4 in slot m1 or m2
653	 respectively.  */
654      if (major == FR550_MAJOR_M_4)
655	return ! find_major_in_slot (vliw, FR550_MAJOR_M_4,
656				     slot - (UNIT_FM2 - UNIT_FM0));
657      break;
658    default:
659      break;
660    }
661  return TRUE; /* All OK.  */
662}
663
664static bfd_boolean
665fr500_check_insn_major_constraints (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
666{
667  /* TODO: A table might be faster for some of the more complex instances
668     here.  */
669  switch (major)
670    {
671    case FR500_MAJOR_I_1:
672    case FR500_MAJOR_I_4:
673    case FR500_MAJOR_I_5:
674    case FR500_MAJOR_I_6:
675    case FR500_MAJOR_B_1:
676    case FR500_MAJOR_B_2:
677    case FR500_MAJOR_B_3:
678    case FR500_MAJOR_B_4:
679    case FR500_MAJOR_B_5:
680    case FR500_MAJOR_B_6:
681    case FR500_MAJOR_F_4:
682    case FR500_MAJOR_F_8:
683    case FR500_MAJOR_M_8:
684      return TRUE; /* OK */
685    case FR500_MAJOR_I_2:
686      /* Cannot coexist with I-3 insn.  */
687      return ! find_major_in_vliw (vliw, FR500_MAJOR_I_3);
688    case FR500_MAJOR_I_3:
689      /* Cannot coexist with I-2 insn.  */
690      return ! find_major_in_vliw (vliw, FR500_MAJOR_I_2);
691    case FR500_MAJOR_F_1:
692    case FR500_MAJOR_F_2:
693      /* Cannot coexist with F-5, F-6, or M-7 insn.  */
694      return ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
695	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
696	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
697    case FR500_MAJOR_F_3:
698      /* Cannot coexist with F-7, or M-7 insn.  */
699      return ! find_major_in_vliw (vliw, FR500_MAJOR_F_7)
700	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
701    case FR500_MAJOR_F_5:
702      /* Cannot coexist with F-1, F-2, F-6, F-7, or M-7 insn.  */
703      return ! find_major_in_vliw (vliw, FR500_MAJOR_F_1)
704	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_2)
705	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
706	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_7)
707	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
708    case FR500_MAJOR_F_6:
709      /* Cannot coexist with F-1, F-2, F-5, F-6, or M-7 insn.  */
710      return ! find_major_in_vliw (vliw, FR500_MAJOR_F_1)
711	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_2)
712	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
713	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
714	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
715    case FR500_MAJOR_F_7:
716      /* Cannot coexist with F-3, F-5, F-7, or M-7 insn.  */
717      return ! find_major_in_vliw (vliw, FR500_MAJOR_F_3)
718	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
719	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_7)
720	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
721    case FR500_MAJOR_M_1:
722      /* Cannot coexist with M-7 insn.  */
723      return ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
724    case FR500_MAJOR_M_2:
725    case FR500_MAJOR_M_3:
726      /* Cannot coexist with M-5, M-6 or M-7 insn.  */
727      return ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
728	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
729	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
730    case FR500_MAJOR_M_4:
731      /* Cannot coexist with M-6 insn.  */
732      return ! find_major_in_vliw (vliw, FR500_MAJOR_M_6);
733    case FR500_MAJOR_M_5:
734      /* Cannot coexist with M-2, M-3, M-5, M-6  or M-7 insn.  */
735      return ! find_major_in_vliw (vliw, FR500_MAJOR_M_2)
736	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_3)
737	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
738	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
739	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
740    case FR500_MAJOR_M_6:
741      /* Cannot coexist with M-2, M-3, M-4, M-5, M-6  or M-7 insn.  */
742      return ! find_major_in_vliw (vliw, FR500_MAJOR_M_2)
743	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_3)
744	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_4)
745	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
746	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
747	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
748    case FR500_MAJOR_M_7:
749      /* Cannot coexist with M-1, M-2, M-3, M-5, M-6  or M-7 insn.  */
750      return ! find_major_in_vliw (vliw, FR500_MAJOR_M_1)
751	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_2)
752	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_3)
753	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
754	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
755	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_M_7)
756	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_1)
757	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_2)
758	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_3)
759	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
760	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
761	&&   ! find_major_in_vliw (vliw, FR500_MAJOR_F_7);
762    default:
763      fprintf (stderr, "frv-opc.c, line %d: bad major code, aborting.\n",
764	       __LINE__);
765      abort ();
766      break;
767    }
768  return TRUE;
769}
770
771static bfd_boolean
772check_insn_major_constraints (FRV_VLIW *vliw,
773			      CGEN_ATTR_VALUE_ENUM_TYPE major,
774			      const CGEN_INSN *insn)
775{
776  switch (vliw->mach)
777    {
778    case bfd_mach_fr400:
779      return fr400_check_insn_major_constraints (vliw, major);
780
781    case bfd_mach_fr450:
782      return fr450_check_insn_major_constraints (vliw, major);
783
784    case bfd_mach_fr550:
785      return fr550_check_insn_major_constraints (vliw, major, insn);
786
787    default:
788      return fr500_check_insn_major_constraints (vliw, major);
789    }
790}
791
792/* Add in insn to the VLIW vliw if possible.
793   Return 0 if successful, non-zero otherwise.  */
794
795int
796frv_vliw_add_insn (FRV_VLIW *vliw, const CGEN_INSN *insn)
797{
798  int index;
799  CGEN_ATTR_VALUE_ENUM_TYPE major;
800  CGEN_ATTR_VALUE_ENUM_TYPE unit;
801  VLIW_COMBO *new_vliw;
802
803  if (vliw->constraint_violation || CGEN_INSN_INVALID_P (insn))
804    return 1;
805
806  index = vliw->next_slot;
807  if (index >= FRV_VLIW_SIZE)
808    return 1;
809
810  unit = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_UNIT);
811  if (unit == UNIT_NIL)
812    {
813      fprintf (stderr, "frv-opc.c line %d: bad insn unit.\n",
814	       __LINE__);
815      abort (); /* No UNIT specified for this insn in frv.cpu.  */
816    }
817
818  switch (vliw->mach)
819    {
820    case bfd_mach_fr400:
821      major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR);
822      break;
823    case bfd_mach_fr450:
824      major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR);
825      break;
826    case bfd_mach_fr550:
827      major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR550_MAJOR);
828      break;
829    default:
830      major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR);
831      break;
832    }
833
834  if (index <= 0)
835    {
836      /* Any insn can be added to slot 0.  */
837      while (! match_unit (vliw, unit, (*vliw->current_vliw)[0]))
838	++vliw->current_vliw;
839      vliw->major[0] = major;
840      vliw->insn[0] = insn;
841      vliw->next_slot = 1;
842      return 0;
843    }
844
845  /* If there are already insns in the vliw(s) check to see that
846     this one can be added.  Do this by finding an allowable vliw
847     combination that can accept the new insn.  */
848  if (! (vliw->elf_flags & EF_FRV_NOPACK))
849    {
850      new_vliw = add_next_to_vliw (vliw, unit);
851      if (new_vliw && check_insn_major_constraints (vliw, major, insn))
852	{
853	  vliw->current_vliw = new_vliw;
854	  vliw->major[index] = major;
855	  vliw->insn[index] = insn;
856	  vliw->next_slot++;
857	  return 0;
858	}
859
860      /* The frv machine supports all packing conbinations.  If we fail,
861	 to add the insn, then it could not be handled as if it was the fr500.
862	 Just return as if it was handled ok.  */
863      if (vliw->mach == bfd_mach_frv)
864	return 0;
865    }
866
867  vliw->constraint_violation = 1;
868  return 1;
869}
870
871bfd_boolean
872spr_valid (long regno)
873{
874  if (regno < 0)     return FALSE;
875  if (regno <= 4095) return TRUE;
876  return FALSE;
877}
878/* -- */
879/* The hash functions are recorded here to help keep assembler code out of
880   the disassembler and vice versa.  */
881
882static int asm_hash_insn_p        (const CGEN_INSN *);
883static unsigned int asm_hash_insn (const char *);
884static int dis_hash_insn_p        (const CGEN_INSN *);
885static unsigned int dis_hash_insn (const char *, CGEN_INSN_INT);
886
887/* Instruction formats.  */
888
889#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
890#define F(f) & frv_cgen_ifld_table[FRV_##f]
891#else
892#define F(f) & frv_cgen_ifld_table[FRV_/**/f]
893#endif
894static const CGEN_IFMT ifmt_empty ATTRIBUTE_UNUSED = {
895  0, 0, 0x0, { { 0 } }
896};
897
898static const CGEN_IFMT ifmt_add ATTRIBUTE_UNUSED = {
899  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1_NULL) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
900};
901
902static const CGEN_IFMT ifmt_not ATTRIBUTE_UNUSED = {
903  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_ICCI_1_NULL) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
904};
905
906static const CGEN_IFMT ifmt_smul ATTRIBUTE_UNUSED = {
907  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1_NULL) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
908};
909
910static const CGEN_IFMT ifmt_smu ATTRIBUTE_UNUSED = {
911  32, 32, 0x7ffc0fc0, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
912};
913
914static const CGEN_IFMT ifmt_slass ATTRIBUTE_UNUSED = {
915  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
916};
917
918static const CGEN_IFMT ifmt_scutss ATTRIBUTE_UNUSED = {
919  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
920};
921
922static const CGEN_IFMT ifmt_cadd ATTRIBUTE_UNUSED = {
923  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
924};
925
926static const CGEN_IFMT ifmt_cnot ATTRIBUTE_UNUSED = {
927  32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
928};
929
930static const CGEN_IFMT ifmt_csmul ATTRIBUTE_UNUSED = {
931  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
932};
933
934static const CGEN_IFMT ifmt_addcc ATTRIBUTE_UNUSED = {
935  32, 32, 0x1fc03c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
936};
937
938static const CGEN_IFMT ifmt_smulcc ATTRIBUTE_UNUSED = {
939  32, 32, 0x1fc03c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
940};
941
942static const CGEN_IFMT ifmt_addi ATTRIBUTE_UNUSED = {
943  32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
944};
945
946static const CGEN_IFMT ifmt_smuli ATTRIBUTE_UNUSED = {
947  32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
948};
949
950static const CGEN_IFMT ifmt_addicc ATTRIBUTE_UNUSED = {
951  32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_S10) }, { 0 } }
952};
953
954static const CGEN_IFMT ifmt_smulicc ATTRIBUTE_UNUSED = {
955  32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_S10) }, { 0 } }
956};
957
958static const CGEN_IFMT ifmt_cmpb ATTRIBUTE_UNUSED = {
959  32, 32, 0x7ffc03c0, { { F (F_PACK) }, { F (F_GRK_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
960};
961
962static const CGEN_IFMT ifmt_setlo ATTRIBUTE_UNUSED = {
963  32, 32, 0x1ff0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_MISC_NULL_4) }, { F (F_U16) }, { 0 } }
964};
965
966static const CGEN_IFMT ifmt_sethi ATTRIBUTE_UNUSED = {
967  32, 32, 0x1ff0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_MISC_NULL_4) }, { F (F_U16) }, { 0 } }
968};
969
970static const CGEN_IFMT ifmt_setlos ATTRIBUTE_UNUSED = {
971  32, 32, 0x1ff0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_MISC_NULL_4) }, { F (F_S16) }, { 0 } }
972};
973
974static const CGEN_IFMT ifmt_ldbf ATTRIBUTE_UNUSED = {
975  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
976};
977
978static const CGEN_IFMT ifmt_ldc ATTRIBUTE_UNUSED = {
979  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_CPRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
980};
981
982static const CGEN_IFMT ifmt_ldd ATTRIBUTE_UNUSED = {
983  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
984};
985
986static const CGEN_IFMT ifmt_lddf ATTRIBUTE_UNUSED = {
987  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
988};
989
990static const CGEN_IFMT ifmt_lddc ATTRIBUTE_UNUSED = {
991  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_CPRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
992};
993
994static const CGEN_IFMT ifmt_ldsbi ATTRIBUTE_UNUSED = {
995  32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
996};
997
998static const CGEN_IFMT ifmt_ldbfi ATTRIBUTE_UNUSED = {
999  32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1000};
1001
1002static const CGEN_IFMT ifmt_lddi ATTRIBUTE_UNUSED = {
1003  32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1004};
1005
1006static const CGEN_IFMT ifmt_lddfi ATTRIBUTE_UNUSED = {
1007  32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1008};
1009
1010static const CGEN_IFMT ifmt_cldbf ATTRIBUTE_UNUSED = {
1011  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1012};
1013
1014static const CGEN_IFMT ifmt_clddf ATTRIBUTE_UNUSED = {
1015  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1016};
1017
1018static const CGEN_IFMT ifmt_movgf ATTRIBUTE_UNUSED = {
1019  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1020};
1021
1022static const CGEN_IFMT ifmt_cmovgf ATTRIBUTE_UNUSED = {
1023  32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1024};
1025
1026static const CGEN_IFMT ifmt_movgs ATTRIBUTE_UNUSED = {
1027  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_OP) }, { F (F_SPR) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1028};
1029
1030static const CGEN_IFMT ifmt_bra ATTRIBUTE_UNUSED = {
1031  32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16) }, { 0 } }
1032};
1033
1034static const CGEN_IFMT ifmt_bno ATTRIBUTE_UNUSED = {
1035  32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16_NULL) }, { 0 } }
1036};
1037
1038static const CGEN_IFMT ifmt_beq ATTRIBUTE_UNUSED = {
1039  32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16) }, { 0 } }
1040};
1041
1042static const CGEN_IFMT ifmt_fbra ATTRIBUTE_UNUSED = {
1043  32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16) }, { 0 } }
1044};
1045
1046static const CGEN_IFMT ifmt_fbno ATTRIBUTE_UNUSED = {
1047  32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16_NULL) }, { 0 } }
1048};
1049
1050static const CGEN_IFMT ifmt_fbne ATTRIBUTE_UNUSED = {
1051  32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16) }, { 0 } }
1052};
1053
1054static const CGEN_IFMT ifmt_bctrlr ATTRIBUTE_UNUSED = {
1055  32, 32, 0x7ffcefff, { { F (F_PACK) }, { F (F_COND_NULL) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND) }, { F (F_S12_NULL) }, { 0 } }
1056};
1057
1058static const CGEN_IFMT ifmt_bralr ATTRIBUTE_UNUSED = {
1059  32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1060};
1061
1062static const CGEN_IFMT ifmt_bnolr ATTRIBUTE_UNUSED = {
1063  32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1064};
1065
1066static const CGEN_IFMT ifmt_beqlr ATTRIBUTE_UNUSED = {
1067  32, 32, 0x79fcffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1068};
1069
1070static const CGEN_IFMT ifmt_fbralr ATTRIBUTE_UNUSED = {
1071  32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1072};
1073
1074static const CGEN_IFMT ifmt_fbnolr ATTRIBUTE_UNUSED = {
1075  32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1076};
1077
1078static const CGEN_IFMT ifmt_fbeqlr ATTRIBUTE_UNUSED = {
1079  32, 32, 0x79fcffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1080};
1081
1082static const CGEN_IFMT ifmt_bcralr ATTRIBUTE_UNUSED = {
1083  32, 32, 0x7ffcefff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND) }, { F (F_S12_NULL) }, { 0 } }
1084};
1085
1086static const CGEN_IFMT ifmt_bceqlr ATTRIBUTE_UNUSED = {
1087  32, 32, 0x79fcefff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND) }, { F (F_S12_NULL) }, { 0 } }
1088};
1089
1090static const CGEN_IFMT ifmt_fcbralr ATTRIBUTE_UNUSED = {
1091  32, 32, 0x7ffcefff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND) }, { F (F_S12_NULL) }, { 0 } }
1092};
1093
1094static const CGEN_IFMT ifmt_fcbeqlr ATTRIBUTE_UNUSED = {
1095  32, 32, 0x79fcefff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND) }, { F (F_S12_NULL) }, { 0 } }
1096};
1097
1098static const CGEN_IFMT ifmt_jmpl ATTRIBUTE_UNUSED = {
1099  32, 32, 0x7ffc0fc0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_OFF) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_2) }, { F (F_GRJ) }, { 0 } }
1100};
1101
1102static const CGEN_IFMT ifmt_calll ATTRIBUTE_UNUSED = {
1103  32, 32, 0x7ffc0fc0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_ON) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_2) }, { F (F_GRJ) }, { 0 } }
1104};
1105
1106static const CGEN_IFMT ifmt_jmpil ATTRIBUTE_UNUSED = {
1107  32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_OFF) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1108};
1109
1110static const CGEN_IFMT ifmt_callil ATTRIBUTE_UNUSED = {
1111  32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_ON) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1112};
1113
1114static const CGEN_IFMT ifmt_call ATTRIBUTE_UNUSED = {
1115  32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_OP) }, { F (F_LABEL24) }, { 0 } }
1116};
1117
1118static const CGEN_IFMT ifmt_rett ATTRIBUTE_UNUSED = {
1119  32, 32, 0x7dffffff, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_DEBUG) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_S12_NULL) }, { 0 } }
1120};
1121
1122static const CGEN_IFMT ifmt_rei ATTRIBUTE_UNUSED = {
1123  32, 32, 0x7ffc0fff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_EIR) }, { F (F_S12_NULL) }, { 0 } }
1124};
1125
1126static const CGEN_IFMT ifmt_tra ATTRIBUTE_UNUSED = {
1127  32, 32, 0x7ffc0fc0, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1128};
1129
1130static const CGEN_IFMT ifmt_tno ATTRIBUTE_UNUSED = {
1131  32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_GRI_NULL) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ_NULL) }, { 0 } }
1132};
1133
1134static const CGEN_IFMT ifmt_teq ATTRIBUTE_UNUSED = {
1135  32, 32, 0x79fc0fc0, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1136};
1137
1138static const CGEN_IFMT ifmt_ftra ATTRIBUTE_UNUSED = {
1139  32, 32, 0x7ffc0fc0, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1140};
1141
1142static const CGEN_IFMT ifmt_ftno ATTRIBUTE_UNUSED = {
1143  32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_GRI_NULL) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ_NULL) }, { 0 } }
1144};
1145
1146static const CGEN_IFMT ifmt_ftne ATTRIBUTE_UNUSED = {
1147  32, 32, 0x79fc0fc0, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1148};
1149
1150static const CGEN_IFMT ifmt_tira ATTRIBUTE_UNUSED = {
1151  32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1152};
1153
1154static const CGEN_IFMT ifmt_tino ATTRIBUTE_UNUSED = {
1155  32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_GRI_NULL) }, { F (F_S12_NULL) }, { 0 } }
1156};
1157
1158static const CGEN_IFMT ifmt_tieq ATTRIBUTE_UNUSED = {
1159  32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1160};
1161
1162static const CGEN_IFMT ifmt_ftira ATTRIBUTE_UNUSED = {
1163  32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1164};
1165
1166static const CGEN_IFMT ifmt_ftino ATTRIBUTE_UNUSED = {
1167  32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_GRI_NULL) }, { F (F_S12_NULL) }, { 0 } }
1168};
1169
1170static const CGEN_IFMT ifmt_ftine ATTRIBUTE_UNUSED = {
1171  32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1172};
1173
1174static const CGEN_IFMT ifmt_break ATTRIBUTE_UNUSED = {
1175  32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ_NULL) }, { 0 } }
1176};
1177
1178static const CGEN_IFMT ifmt_andcr ATTRIBUTE_UNUSED = {
1179  32, 32, 0x71ff8ff8, { { F (F_PACK) }, { F (F_MISC_NULL_6) }, { F (F_CRK) }, { F (F_OP) }, { F (F_MISC_NULL_7) }, { F (F_CRI) }, { F (F_OPE1) }, { F (F_MISC_NULL_8) }, { F (F_CRJ) }, { 0 } }
1180};
1181
1182static const CGEN_IFMT ifmt_notcr ATTRIBUTE_UNUSED = {
1183  32, 32, 0x71fffff8, { { F (F_PACK) }, { F (F_MISC_NULL_6) }, { F (F_CRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_MISC_NULL_8) }, { F (F_CRJ) }, { 0 } }
1184};
1185
1186static const CGEN_IFMT ifmt_ckra ATTRIBUTE_UNUSED = {
1187  32, 32, 0x79ffffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_CRJ_INT) }, { F (F_OP) }, { F (F_MISC_NULL_5) }, { F (F_ICCI_3_NULL) }, { 0 } }
1188};
1189
1190static const CGEN_IFMT ifmt_ckeq ATTRIBUTE_UNUSED = {
1191  32, 32, 0x79fffffc, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_CRJ_INT) }, { F (F_OP) }, { F (F_MISC_NULL_5) }, { F (F_ICCI_3) }, { 0 } }
1192};
1193
1194static const CGEN_IFMT ifmt_fckra ATTRIBUTE_UNUSED = {
1195  32, 32, 0x79fffffc, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_CRJ_FLOAT) }, { F (F_OP) }, { F (F_MISC_NULL_5) }, { F (F_FCCI_3) }, { 0 } }
1196};
1197
1198static const CGEN_IFMT ifmt_cckra ATTRIBUTE_UNUSED = {
1199  32, 32, 0x79fff0ff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_CRJ_INT) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_MISC_NULL_9) }, { F (F_ICCI_3_NULL) }, { 0 } }
1200};
1201
1202static const CGEN_IFMT ifmt_cckeq ATTRIBUTE_UNUSED = {
1203  32, 32, 0x79fff0fc, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_CRJ_INT) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_MISC_NULL_9) }, { F (F_ICCI_3) }, { 0 } }
1204};
1205
1206static const CGEN_IFMT ifmt_cfckra ATTRIBUTE_UNUSED = {
1207  32, 32, 0x79fff0ff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_CRJ_FLOAT) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_MISC_NULL_9) }, { F (F_FCCI_3_NULL) }, { 0 } }
1208};
1209
1210static const CGEN_IFMT ifmt_cfckne ATTRIBUTE_UNUSED = {
1211  32, 32, 0x79fff0fc, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_CRJ_FLOAT) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_MISC_NULL_9) }, { F (F_FCCI_3) }, { 0 } }
1212};
1213
1214static const CGEN_IFMT ifmt_cjmpl ATTRIBUTE_UNUSED = {
1215  32, 32, 0x7ffc00c0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_OFF) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1216};
1217
1218static const CGEN_IFMT ifmt_ccalll ATTRIBUTE_UNUSED = {
1219  32, 32, 0x7ffc00c0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_ON) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1220};
1221
1222static const CGEN_IFMT ifmt_icei ATTRIBUTE_UNUSED = {
1223  32, 32, 0x7dfc0fc0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_AE) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1224};
1225
1226static const CGEN_IFMT ifmt_icpl ATTRIBUTE_UNUSED = {
1227  32, 32, 0x7dfc0fc0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LOCK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1228};
1229
1230static const CGEN_IFMT ifmt_icul ATTRIBUTE_UNUSED = {
1231  32, 32, 0x7ffc0fff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ_NULL) }, { 0 } }
1232};
1233
1234static const CGEN_IFMT ifmt_bar ATTRIBUTE_UNUSED = {
1235  32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ_NULL) }, { 0 } }
1236};
1237
1238static const CGEN_IFMT ifmt_lrai ATTRIBUTE_UNUSED = {
1239  32, 32, 0x1fc0fc7, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_LRAE) }, { F (F_LRAD) }, { F (F_LRAS) }, { F (F_LRA_NULL) }, { 0 } }
1240};
1241
1242static const CGEN_IFMT ifmt_tlbpr ATTRIBUTE_UNUSED = {
1243  32, 32, 0x61fc0fc0, { { F (F_PACK) }, { F (F_TLBPR_NULL) }, { F (F_TLBPROPX) }, { F (F_TLBPRL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1244};
1245
1246static const CGEN_IFMT ifmt_cop1 ATTRIBUTE_UNUSED = {
1247  32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_CPRK) }, { F (F_OP) }, { F (F_CPRI) }, { F (F_S6_1) }, { F (F_CPRJ) }, { 0 } }
1248};
1249
1250static const CGEN_IFMT ifmt_clrgr ATTRIBUTE_UNUSED = {
1251  32, 32, 0x1ffffff, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ_NULL) }, { 0 } }
1252};
1253
1254static const CGEN_IFMT ifmt_clrfr ATTRIBUTE_UNUSED = {
1255  32, 32, 0x1ffffff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ_NULL) }, { 0 } }
1256};
1257
1258static const CGEN_IFMT ifmt_fitos ATTRIBUTE_UNUSED = {
1259  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1260};
1261
1262static const CGEN_IFMT ifmt_fstoi ATTRIBUTE_UNUSED = {
1263  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1264};
1265
1266static const CGEN_IFMT ifmt_fitod ATTRIBUTE_UNUSED = {
1267  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1268};
1269
1270static const CGEN_IFMT ifmt_fdtoi ATTRIBUTE_UNUSED = {
1271  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1272};
1273
1274static const CGEN_IFMT ifmt_cfitos ATTRIBUTE_UNUSED = {
1275  32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1276};
1277
1278static const CGEN_IFMT ifmt_cfstoi ATTRIBUTE_UNUSED = {
1279  32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1280};
1281
1282static const CGEN_IFMT ifmt_fmovs ATTRIBUTE_UNUSED = {
1283  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1284};
1285
1286static const CGEN_IFMT ifmt_fmovd ATTRIBUTE_UNUSED = {
1287  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1288};
1289
1290static const CGEN_IFMT ifmt_cfmovs ATTRIBUTE_UNUSED = {
1291  32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1292};
1293
1294static const CGEN_IFMT ifmt_fadds ATTRIBUTE_UNUSED = {
1295  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1296};
1297
1298static const CGEN_IFMT ifmt_faddd ATTRIBUTE_UNUSED = {
1299  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1300};
1301
1302static const CGEN_IFMT ifmt_cfadds ATTRIBUTE_UNUSED = {
1303  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1304};
1305
1306static const CGEN_IFMT ifmt_fcmps ATTRIBUTE_UNUSED = {
1307  32, 32, 0x79fc0fc0, { { F (F_PACK) }, { F (F_COND_NULL) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1308};
1309
1310static const CGEN_IFMT ifmt_fcmpd ATTRIBUTE_UNUSED = {
1311  32, 32, 0x79fc0fc0, { { F (F_PACK) }, { F (F_COND_NULL) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1312};
1313
1314static const CGEN_IFMT ifmt_cfcmps ATTRIBUTE_UNUSED = {
1315  32, 32, 0x79fc00c0, { { F (F_PACK) }, { F (F_COND_NULL) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1316};
1317
1318static const CGEN_IFMT ifmt_mhsetlos ATTRIBUTE_UNUSED = {
1319  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_OPE1) }, { F (F_U12) }, { 0 } }
1320};
1321
1322static const CGEN_IFMT ifmt_mhsethis ATTRIBUTE_UNUSED = {
1323  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_OPE1) }, { F (F_U12) }, { 0 } }
1324};
1325
1326static const CGEN_IFMT ifmt_mhdsets ATTRIBUTE_UNUSED = {
1327  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_OPE1) }, { F (F_U12) }, { 0 } }
1328};
1329
1330static const CGEN_IFMT ifmt_mhsetloh ATTRIBUTE_UNUSED = {
1331  32, 32, 0x1ffffe0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_MISC_NULL_11) }, { F (F_S5) }, { 0 } }
1332};
1333
1334static const CGEN_IFMT ifmt_mhsethih ATTRIBUTE_UNUSED = {
1335  32, 32, 0x1ffffe0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_MISC_NULL_11) }, { F (F_S5) }, { 0 } }
1336};
1337
1338static const CGEN_IFMT ifmt_mhdseth ATTRIBUTE_UNUSED = {
1339  32, 32, 0x1ffffe0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_MISC_NULL_11) }, { F (F_S5) }, { 0 } }
1340};
1341
1342static const CGEN_IFMT ifmt_mand ATTRIBUTE_UNUSED = {
1343  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1344};
1345
1346static const CGEN_IFMT ifmt_cmand ATTRIBUTE_UNUSED = {
1347  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1348};
1349
1350static const CGEN_IFMT ifmt_mnot ATTRIBUTE_UNUSED = {
1351  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1352};
1353
1354static const CGEN_IFMT ifmt_cmnot ATTRIBUTE_UNUSED = {
1355  32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1356};
1357
1358static const CGEN_IFMT ifmt_mrotli ATTRIBUTE_UNUSED = {
1359  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_U6) }, { 0 } }
1360};
1361
1362static const CGEN_IFMT ifmt_mcut ATTRIBUTE_UNUSED = {
1363  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1364};
1365
1366static const CGEN_IFMT ifmt_mcuti ATTRIBUTE_UNUSED = {
1367  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_S6) }, { 0 } }
1368};
1369
1370static const CGEN_IFMT ifmt_mdcutssi ATTRIBUTE_UNUSED = {
1371  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_S6) }, { 0 } }
1372};
1373
1374static const CGEN_IFMT ifmt_mdrotli ATTRIBUTE_UNUSED = {
1375  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_S6) }, { 0 } }
1376};
1377
1378static const CGEN_IFMT ifmt_mqsaths ATTRIBUTE_UNUSED = {
1379  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1380};
1381
1382static const CGEN_IFMT ifmt_mcmpsh ATTRIBUTE_UNUSED = {
1383  32, 32, 0x79fc0fc0, { { F (F_PACK) }, { F (F_COND_NULL) }, { F (F_FCCK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1384};
1385
1386static const CGEN_IFMT ifmt_mabshs ATTRIBUTE_UNUSED = {
1387  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1388};
1389
1390static const CGEN_IFMT ifmt_cmqaddhss ATTRIBUTE_UNUSED = {
1391  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1392};
1393
1394static const CGEN_IFMT ifmt_mqsllhi ATTRIBUTE_UNUSED = {
1395  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_U6) }, { 0 } }
1396};
1397
1398static const CGEN_IFMT ifmt_maddaccs ATTRIBUTE_UNUSED = {
1399  32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_ACCJ_NULL) }, { 0 } }
1400};
1401
1402static const CGEN_IFMT ifmt_mmulhs ATTRIBUTE_UNUSED = {
1403  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1404};
1405
1406static const CGEN_IFMT ifmt_cmmulhs ATTRIBUTE_UNUSED = {
1407  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1408};
1409
1410static const CGEN_IFMT ifmt_mqmulhs ATTRIBUTE_UNUSED = {
1411  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1412};
1413
1414static const CGEN_IFMT ifmt_cmqmulhs ATTRIBUTE_UNUSED = {
1415  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1416};
1417
1418static const CGEN_IFMT ifmt_mmachu ATTRIBUTE_UNUSED = {
1419  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40UK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1420};
1421
1422static const CGEN_IFMT ifmt_cmmachu ATTRIBUTE_UNUSED = {
1423  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_ACC40UK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1424};
1425
1426static const CGEN_IFMT ifmt_mqmachu ATTRIBUTE_UNUSED = {
1427  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40UK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1428};
1429
1430static const CGEN_IFMT ifmt_cmqmachu ATTRIBUTE_UNUSED = {
1431  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_ACC40UK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1432};
1433
1434static const CGEN_IFMT ifmt_cmexpdhw ATTRIBUTE_UNUSED = {
1435  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_U6) }, { 0 } }
1436};
1437
1438static const CGEN_IFMT ifmt_mexpdhd ATTRIBUTE_UNUSED = {
1439  32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_U6) }, { 0 } }
1440};
1441
1442static const CGEN_IFMT ifmt_cmexpdhd ATTRIBUTE_UNUSED = {
1443  32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_U6) }, { 0 } }
1444};
1445
1446static const CGEN_IFMT ifmt_munpackh ATTRIBUTE_UNUSED = {
1447  32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1448};
1449
1450static const CGEN_IFMT ifmt_mdunpackh ATTRIBUTE_UNUSED = {
1451  32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1452};
1453
1454static const CGEN_IFMT ifmt_mbtoh ATTRIBUTE_UNUSED = {
1455  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1456};
1457
1458static const CGEN_IFMT ifmt_cmbtoh ATTRIBUTE_UNUSED = {
1459  32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1460};
1461
1462static const CGEN_IFMT ifmt_mhtob ATTRIBUTE_UNUSED = {
1463  32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1464};
1465
1466static const CGEN_IFMT ifmt_cmhtob ATTRIBUTE_UNUSED = {
1467  32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1468};
1469
1470static const CGEN_IFMT ifmt_cmbtohe ATTRIBUTE_UNUSED = {
1471  32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1472};
1473
1474static const CGEN_IFMT ifmt_mnop ATTRIBUTE_UNUSED = {
1475  32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_A) }, { F (F_MISC_NULL_10) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1476};
1477
1478static const CGEN_IFMT ifmt_mclracc_0 ATTRIBUTE_UNUSED = {
1479  32, 32, 0x1ffffff, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_A) }, { F (F_MISC_NULL_10) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1480};
1481
1482static const CGEN_IFMT ifmt_mrdacc ATTRIBUTE_UNUSED = {
1483  32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1484};
1485
1486static const CGEN_IFMT ifmt_mrdaccg ATTRIBUTE_UNUSED = {
1487  32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACCGI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1488};
1489
1490static const CGEN_IFMT ifmt_mwtacc ATTRIBUTE_UNUSED = {
1491  32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1492};
1493
1494static const CGEN_IFMT ifmt_mwtaccg ATTRIBUTE_UNUSED = {
1495  32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_ACCGK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1496};
1497
1498static const CGEN_IFMT ifmt_fnop ATTRIBUTE_UNUSED = {
1499  32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1500};
1501
1502#undef F
1503
1504#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
1505#define A(a) (1 << CGEN_INSN_##a)
1506#else
1507#define A(a) (1 << CGEN_INSN_/**/a)
1508#endif
1509#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
1510#define OPERAND(op) FRV_OPERAND_##op
1511#else
1512#define OPERAND(op) FRV_OPERAND_/**/op
1513#endif
1514#define MNEM CGEN_SYNTAX_MNEMONIC /* syntax value for mnemonic */
1515#define OP(field) CGEN_SYNTAX_MAKE_FIELD (OPERAND (field))
1516
1517/* The instruction table.  */
1518
1519static const CGEN_OPCODE frv_cgen_insn_opcode_table[MAX_INSNS] =
1520{
1521  /* Special null first entry.
1522     A `num' value of zero is thus invalid.
1523     Also, the special `invalid' insn resides here.  */
1524  { { 0, 0, 0, 0 }, {{0}}, 0, {0}},
1525/* add$pack $GRi,$GRj,$GRk */
1526  {
1527    { 0, 0, 0, 0 },
1528    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1529    & ifmt_add, { 0x0 }
1530  },
1531/* sub$pack $GRi,$GRj,$GRk */
1532  {
1533    { 0, 0, 0, 0 },
1534    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1535    & ifmt_add, { 0x100 }
1536  },
1537/* and$pack $GRi,$GRj,$GRk */
1538  {
1539    { 0, 0, 0, 0 },
1540    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1541    & ifmt_add, { 0x40000 }
1542  },
1543/* or$pack $GRi,$GRj,$GRk */
1544  {
1545    { 0, 0, 0, 0 },
1546    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1547    & ifmt_add, { 0x40080 }
1548  },
1549/* xor$pack $GRi,$GRj,$GRk */
1550  {
1551    { 0, 0, 0, 0 },
1552    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1553    & ifmt_add, { 0x40100 }
1554  },
1555/* not$pack $GRj,$GRk */
1556  {
1557    { 0, 0, 0, 0 },
1558    { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (GRK), 0 } },
1559    & ifmt_not, { 0x40180 }
1560  },
1561/* sdiv$pack $GRi,$GRj,$GRk */
1562  {
1563    { 0, 0, 0, 0 },
1564    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1565    & ifmt_add, { 0x380 }
1566  },
1567/* nsdiv$pack $GRi,$GRj,$GRk */
1568  {
1569    { 0, 0, 0, 0 },
1570    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1571    & ifmt_add, { 0x40380 }
1572  },
1573/* udiv$pack $GRi,$GRj,$GRk */
1574  {
1575    { 0, 0, 0, 0 },
1576    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1577    & ifmt_add, { 0x3c0 }
1578  },
1579/* nudiv$pack $GRi,$GRj,$GRk */
1580  {
1581    { 0, 0, 0, 0 },
1582    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1583    & ifmt_add, { 0x403c0 }
1584  },
1585/* smul$pack $GRi,$GRj,$GRdoublek */
1586  {
1587    { 0, 0, 0, 0 },
1588    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), 0 } },
1589    & ifmt_smul, { 0x200 }
1590  },
1591/* umul$pack $GRi,$GRj,$GRdoublek */
1592  {
1593    { 0, 0, 0, 0 },
1594    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), 0 } },
1595    & ifmt_smul, { 0x280 }
1596  },
1597/* smu$pack $GRi,$GRj */
1598  {
1599    { 0, 0, 0, 0 },
1600    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
1601    & ifmt_smu, { 0x1180140 }
1602  },
1603/* smass$pack $GRi,$GRj */
1604  {
1605    { 0, 0, 0, 0 },
1606    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
1607    & ifmt_smu, { 0x1180180 }
1608  },
1609/* smsss$pack $GRi,$GRj */
1610  {
1611    { 0, 0, 0, 0 },
1612    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
1613    & ifmt_smu, { 0x11801c0 }
1614  },
1615/* sll$pack $GRi,$GRj,$GRk */
1616  {
1617    { 0, 0, 0, 0 },
1618    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1619    & ifmt_add, { 0x40200 }
1620  },
1621/* srl$pack $GRi,$GRj,$GRk */
1622  {
1623    { 0, 0, 0, 0 },
1624    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1625    & ifmt_add, { 0x40280 }
1626  },
1627/* sra$pack $GRi,$GRj,$GRk */
1628  {
1629    { 0, 0, 0, 0 },
1630    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1631    & ifmt_add, { 0x40300 }
1632  },
1633/* slass$pack $GRi,$GRj,$GRk */
1634  {
1635    { 0, 0, 0, 0 },
1636    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1637    & ifmt_slass, { 0x1180080 }
1638  },
1639/* scutss$pack $GRj,$GRk */
1640  {
1641    { 0, 0, 0, 0 },
1642    { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (GRK), 0 } },
1643    & ifmt_scutss, { 0x1180100 }
1644  },
1645/* scan$pack $GRi,$GRj,$GRk */
1646  {
1647    { 0, 0, 0, 0 },
1648    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1649    & ifmt_add, { 0x2c0000 }
1650  },
1651/* cadd$pack $GRi,$GRj,$GRk,$CCi,$cond */
1652  {
1653    { 0, 0, 0, 0 },
1654    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1655    & ifmt_cadd, { 0x1600000 }
1656  },
1657/* csub$pack $GRi,$GRj,$GRk,$CCi,$cond */
1658  {
1659    { 0, 0, 0, 0 },
1660    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1661    & ifmt_cadd, { 0x1600040 }
1662  },
1663/* cand$pack $GRi,$GRj,$GRk,$CCi,$cond */
1664  {
1665    { 0, 0, 0, 0 },
1666    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1667    & ifmt_cadd, { 0x1680000 }
1668  },
1669/* cor$pack $GRi,$GRj,$GRk,$CCi,$cond */
1670  {
1671    { 0, 0, 0, 0 },
1672    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1673    & ifmt_cadd, { 0x1680040 }
1674  },
1675/* cxor$pack $GRi,$GRj,$GRk,$CCi,$cond */
1676  {
1677    { 0, 0, 0, 0 },
1678    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1679    & ifmt_cadd, { 0x1680080 }
1680  },
1681/* cnot$pack $GRj,$GRk,$CCi,$cond */
1682  {
1683    { 0, 0, 0, 0 },
1684    { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1685    & ifmt_cnot, { 0x16800c0 }
1686  },
1687/* csmul$pack $GRi,$GRj,$GRdoublek,$CCi,$cond */
1688  {
1689    { 0, 0, 0, 0 },
1690    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
1691    & ifmt_csmul, { 0x1600080 }
1692  },
1693/* csdiv$pack $GRi,$GRj,$GRk,$CCi,$cond */
1694  {
1695    { 0, 0, 0, 0 },
1696    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1697    & ifmt_cadd, { 0x16000c0 }
1698  },
1699/* cudiv$pack $GRi,$GRj,$GRk,$CCi,$cond */
1700  {
1701    { 0, 0, 0, 0 },
1702    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1703    & ifmt_cadd, { 0x16400c0 }
1704  },
1705/* csll$pack $GRi,$GRj,$GRk,$CCi,$cond */
1706  {
1707    { 0, 0, 0, 0 },
1708    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1709    & ifmt_cadd, { 0x1700000 }
1710  },
1711/* csrl$pack $GRi,$GRj,$GRk,$CCi,$cond */
1712  {
1713    { 0, 0, 0, 0 },
1714    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1715    & ifmt_cadd, { 0x1700040 }
1716  },
1717/* csra$pack $GRi,$GRj,$GRk,$CCi,$cond */
1718  {
1719    { 0, 0, 0, 0 },
1720    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1721    & ifmt_cadd, { 0x1700080 }
1722  },
1723/* cscan$pack $GRi,$GRj,$GRk,$CCi,$cond */
1724  {
1725    { 0, 0, 0, 0 },
1726    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1727    & ifmt_cadd, { 0x19400c0 }
1728  },
1729/* addcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1730  {
1731    { 0, 0, 0, 0 },
1732    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1733    & ifmt_addcc, { 0x40 }
1734  },
1735/* subcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1736  {
1737    { 0, 0, 0, 0 },
1738    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1739    & ifmt_addcc, { 0x140 }
1740  },
1741/* andcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1742  {
1743    { 0, 0, 0, 0 },
1744    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1745    & ifmt_addcc, { 0x40040 }
1746  },
1747/* orcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1748  {
1749    { 0, 0, 0, 0 },
1750    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1751    & ifmt_addcc, { 0x400c0 }
1752  },
1753/* xorcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1754  {
1755    { 0, 0, 0, 0 },
1756    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1757    & ifmt_addcc, { 0x40140 }
1758  },
1759/* sllcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1760  {
1761    { 0, 0, 0, 0 },
1762    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1763    & ifmt_addcc, { 0x40240 }
1764  },
1765/* srlcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1766  {
1767    { 0, 0, 0, 0 },
1768    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1769    & ifmt_addcc, { 0x402c0 }
1770  },
1771/* sracc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1772  {
1773    { 0, 0, 0, 0 },
1774    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1775    & ifmt_addcc, { 0x40340 }
1776  },
1777/* smulcc$pack $GRi,$GRj,$GRdoublek,$ICCi_1 */
1778  {
1779    { 0, 0, 0, 0 },
1780    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
1781    & ifmt_smulcc, { 0x240 }
1782  },
1783/* umulcc$pack $GRi,$GRj,$GRdoublek,$ICCi_1 */
1784  {
1785    { 0, 0, 0, 0 },
1786    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
1787    & ifmt_smulcc, { 0x2c0 }
1788  },
1789/* caddcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1790  {
1791    { 0, 0, 0, 0 },
1792    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1793    & ifmt_cadd, { 0x1640000 }
1794  },
1795/* csubcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1796  {
1797    { 0, 0, 0, 0 },
1798    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1799    & ifmt_cadd, { 0x1640040 }
1800  },
1801/* csmulcc$pack $GRi,$GRj,$GRdoublek,$CCi,$cond */
1802  {
1803    { 0, 0, 0, 0 },
1804    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
1805    & ifmt_csmul, { 0x1640080 }
1806  },
1807/* candcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1808  {
1809    { 0, 0, 0, 0 },
1810    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1811    & ifmt_cadd, { 0x16c0000 }
1812  },
1813/* corcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1814  {
1815    { 0, 0, 0, 0 },
1816    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1817    & ifmt_cadd, { 0x16c0040 }
1818  },
1819/* cxorcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1820  {
1821    { 0, 0, 0, 0 },
1822    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1823    & ifmt_cadd, { 0x16c0080 }
1824  },
1825/* csllcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1826  {
1827    { 0, 0, 0, 0 },
1828    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1829    & ifmt_cadd, { 0x1740000 }
1830  },
1831/* csrlcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1832  {
1833    { 0, 0, 0, 0 },
1834    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1835    & ifmt_cadd, { 0x1740040 }
1836  },
1837/* csracc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1838  {
1839    { 0, 0, 0, 0 },
1840    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1841    & ifmt_cadd, { 0x1740080 }
1842  },
1843/* addx$pack $GRi,$GRj,$GRk,$ICCi_1 */
1844  {
1845    { 0, 0, 0, 0 },
1846    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1847    & ifmt_addcc, { 0x80 }
1848  },
1849/* subx$pack $GRi,$GRj,$GRk,$ICCi_1 */
1850  {
1851    { 0, 0, 0, 0 },
1852    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1853    & ifmt_addcc, { 0x180 }
1854  },
1855/* addxcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1856  {
1857    { 0, 0, 0, 0 },
1858    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1859    & ifmt_addcc, { 0xc0 }
1860  },
1861/* subxcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1862  {
1863    { 0, 0, 0, 0 },
1864    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1865    & ifmt_addcc, { 0x1c0 }
1866  },
1867/* addss$pack $GRi,$GRj,$GRk */
1868  {
1869    { 0, 0, 0, 0 },
1870    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1871    & ifmt_slass, { 0x1180000 }
1872  },
1873/* subss$pack $GRi,$GRj,$GRk */
1874  {
1875    { 0, 0, 0, 0 },
1876    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1877    & ifmt_slass, { 0x1180040 }
1878  },
1879/* addi$pack $GRi,$s12,$GRk */
1880  {
1881    { 0, 0, 0, 0 },
1882    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1883    & ifmt_addi, { 0x400000 }
1884  },
1885/* subi$pack $GRi,$s12,$GRk */
1886  {
1887    { 0, 0, 0, 0 },
1888    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1889    & ifmt_addi, { 0x500000 }
1890  },
1891/* andi$pack $GRi,$s12,$GRk */
1892  {
1893    { 0, 0, 0, 0 },
1894    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1895    & ifmt_addi, { 0x800000 }
1896  },
1897/* ori$pack $GRi,$s12,$GRk */
1898  {
1899    { 0, 0, 0, 0 },
1900    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1901    & ifmt_addi, { 0x880000 }
1902  },
1903/* xori$pack $GRi,$s12,$GRk */
1904  {
1905    { 0, 0, 0, 0 },
1906    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1907    & ifmt_addi, { 0x900000 }
1908  },
1909/* sdivi$pack $GRi,$s12,$GRk */
1910  {
1911    { 0, 0, 0, 0 },
1912    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1913    & ifmt_addi, { 0x780000 }
1914  },
1915/* nsdivi$pack $GRi,$s12,$GRk */
1916  {
1917    { 0, 0, 0, 0 },
1918    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1919    & ifmt_addi, { 0xb80000 }
1920  },
1921/* udivi$pack $GRi,$s12,$GRk */
1922  {
1923    { 0, 0, 0, 0 },
1924    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1925    & ifmt_addi, { 0x7c0000 }
1926  },
1927/* nudivi$pack $GRi,$s12,$GRk */
1928  {
1929    { 0, 0, 0, 0 },
1930    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1931    & ifmt_addi, { 0xbc0000 }
1932  },
1933/* smuli$pack $GRi,$s12,$GRdoublek */
1934  {
1935    { 0, 0, 0, 0 },
1936    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRDOUBLEK), 0 } },
1937    & ifmt_smuli, { 0x600000 }
1938  },
1939/* umuli$pack $GRi,$s12,$GRdoublek */
1940  {
1941    { 0, 0, 0, 0 },
1942    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRDOUBLEK), 0 } },
1943    & ifmt_smuli, { 0x680000 }
1944  },
1945/* slli$pack $GRi,$s12,$GRk */
1946  {
1947    { 0, 0, 0, 0 },
1948    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1949    & ifmt_addi, { 0xa00000 }
1950  },
1951/* srli$pack $GRi,$s12,$GRk */
1952  {
1953    { 0, 0, 0, 0 },
1954    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1955    & ifmt_addi, { 0xa80000 }
1956  },
1957/* srai$pack $GRi,$s12,$GRk */
1958  {
1959    { 0, 0, 0, 0 },
1960    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1961    & ifmt_addi, { 0xb00000 }
1962  },
1963/* scani$pack $GRi,$s12,$GRk */
1964  {
1965    { 0, 0, 0, 0 },
1966    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1967    & ifmt_addi, { 0x11c0000 }
1968  },
1969/* addicc$pack $GRi,$s10,$GRk,$ICCi_1 */
1970  {
1971    { 0, 0, 0, 0 },
1972    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1973    & ifmt_addicc, { 0x440000 }
1974  },
1975/* subicc$pack $GRi,$s10,$GRk,$ICCi_1 */
1976  {
1977    { 0, 0, 0, 0 },
1978    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1979    & ifmt_addicc, { 0x540000 }
1980  },
1981/* andicc$pack $GRi,$s10,$GRk,$ICCi_1 */
1982  {
1983    { 0, 0, 0, 0 },
1984    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1985    & ifmt_addicc, { 0x840000 }
1986  },
1987/* oricc$pack $GRi,$s10,$GRk,$ICCi_1 */
1988  {
1989    { 0, 0, 0, 0 },
1990    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1991    & ifmt_addicc, { 0x8c0000 }
1992  },
1993/* xoricc$pack $GRi,$s10,$GRk,$ICCi_1 */
1994  {
1995    { 0, 0, 0, 0 },
1996    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1997    & ifmt_addicc, { 0x940000 }
1998  },
1999/* smulicc$pack $GRi,$s10,$GRdoublek,$ICCi_1 */
2000  {
2001    { 0, 0, 0, 0 },
2002    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
2003    & ifmt_smulicc, { 0x640000 }
2004  },
2005/* umulicc$pack $GRi,$s10,$GRdoublek,$ICCi_1 */
2006  {
2007    { 0, 0, 0, 0 },
2008    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
2009    & ifmt_smulicc, { 0x6c0000 }
2010  },
2011/* sllicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2012  {
2013    { 0, 0, 0, 0 },
2014    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2015    & ifmt_addicc, { 0xa40000 }
2016  },
2017/* srlicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2018  {
2019    { 0, 0, 0, 0 },
2020    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2021    & ifmt_addicc, { 0xac0000 }
2022  },
2023/* sraicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2024  {
2025    { 0, 0, 0, 0 },
2026    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2027    & ifmt_addicc, { 0xb40000 }
2028  },
2029/* addxi$pack $GRi,$s10,$GRk,$ICCi_1 */
2030  {
2031    { 0, 0, 0, 0 },
2032    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2033    & ifmt_addicc, { 0x480000 }
2034  },
2035/* subxi$pack $GRi,$s10,$GRk,$ICCi_1 */
2036  {
2037    { 0, 0, 0, 0 },
2038    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2039    & ifmt_addicc, { 0x580000 }
2040  },
2041/* addxicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2042  {
2043    { 0, 0, 0, 0 },
2044    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2045    & ifmt_addicc, { 0x4c0000 }
2046  },
2047/* subxicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2048  {
2049    { 0, 0, 0, 0 },
2050    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2051    & ifmt_addicc, { 0x5c0000 }
2052  },
2053/* cmpb$pack $GRi,$GRj,$ICCi_1 */
2054  {
2055    { 0, 0, 0, 0 },
2056    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (ICCI_1), 0 } },
2057    & ifmt_cmpb, { 0x300 }
2058  },
2059/* cmpba$pack $GRi,$GRj,$ICCi_1 */
2060  {
2061    { 0, 0, 0, 0 },
2062    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (ICCI_1), 0 } },
2063    & ifmt_cmpb, { 0x340 }
2064  },
2065/* setlo$pack $ulo16,$GRklo */
2066  {
2067    { 0, 0, 0, 0 },
2068    { { MNEM, OP (PACK), ' ', OP (ULO16), ',', OP (GRKLO), 0 } },
2069    & ifmt_setlo, { 0xf40000 }
2070  },
2071/* sethi$pack $uhi16,$GRkhi */
2072  {
2073    { 0, 0, 0, 0 },
2074    { { MNEM, OP (PACK), ' ', OP (UHI16), ',', OP (GRKHI), 0 } },
2075    & ifmt_sethi, { 0xf80000 }
2076  },
2077/* setlos$pack $slo16,$GRk */
2078  {
2079    { 0, 0, 0, 0 },
2080    { { MNEM, OP (PACK), ' ', OP (SLO16), ',', OP (GRK), 0 } },
2081    & ifmt_setlos, { 0xfc0000 }
2082  },
2083/* ldsb$pack @($GRi,$GRj),$GRk */
2084  {
2085    { 0, 0, 0, 0 },
2086    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2087    & ifmt_slass, { 0x80000 }
2088  },
2089/* ldub$pack @($GRi,$GRj),$GRk */
2090  {
2091    { 0, 0, 0, 0 },
2092    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2093    & ifmt_slass, { 0x80040 }
2094  },
2095/* ldsh$pack @($GRi,$GRj),$GRk */
2096  {
2097    { 0, 0, 0, 0 },
2098    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2099    & ifmt_slass, { 0x80080 }
2100  },
2101/* lduh$pack @($GRi,$GRj),$GRk */
2102  {
2103    { 0, 0, 0, 0 },
2104    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2105    & ifmt_slass, { 0x800c0 }
2106  },
2107/* ld$pack $ldann($GRi,$GRj),$GRk */
2108  {
2109    { 0, 0, 0, 0 },
2110    { { MNEM, OP (PACK), ' ', OP (LDANN), '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2111    & ifmt_slass, { 0x80100 }
2112  },
2113/* ldbf$pack @($GRi,$GRj),$FRintk */
2114  {
2115    { 0, 0, 0, 0 },
2116    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2117    & ifmt_ldbf, { 0x80200 }
2118  },
2119/* ldhf$pack @($GRi,$GRj),$FRintk */
2120  {
2121    { 0, 0, 0, 0 },
2122    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2123    & ifmt_ldbf, { 0x80240 }
2124  },
2125/* ldf$pack @($GRi,$GRj),$FRintk */
2126  {
2127    { 0, 0, 0, 0 },
2128    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2129    & ifmt_ldbf, { 0x80280 }
2130  },
2131/* ldc$pack @($GRi,$GRj),$CPRk */
2132  {
2133    { 0, 0, 0, 0 },
2134    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2135    & ifmt_ldc, { 0x80340 }
2136  },
2137/* nldsb$pack @($GRi,$GRj),$GRk */
2138  {
2139    { 0, 0, 0, 0 },
2140    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2141    & ifmt_slass, { 0x80800 }
2142  },
2143/* nldub$pack @($GRi,$GRj),$GRk */
2144  {
2145    { 0, 0, 0, 0 },
2146    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2147    & ifmt_slass, { 0x80840 }
2148  },
2149/* nldsh$pack @($GRi,$GRj),$GRk */
2150  {
2151    { 0, 0, 0, 0 },
2152    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2153    & ifmt_slass, { 0x80880 }
2154  },
2155/* nlduh$pack @($GRi,$GRj),$GRk */
2156  {
2157    { 0, 0, 0, 0 },
2158    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2159    & ifmt_slass, { 0x808c0 }
2160  },
2161/* nld$pack @($GRi,$GRj),$GRk */
2162  {
2163    { 0, 0, 0, 0 },
2164    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2165    & ifmt_slass, { 0x80900 }
2166  },
2167/* nldbf$pack @($GRi,$GRj),$FRintk */
2168  {
2169    { 0, 0, 0, 0 },
2170    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2171    & ifmt_ldbf, { 0x80a00 }
2172  },
2173/* nldhf$pack @($GRi,$GRj),$FRintk */
2174  {
2175    { 0, 0, 0, 0 },
2176    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2177    & ifmt_ldbf, { 0x80a40 }
2178  },
2179/* nldf$pack @($GRi,$GRj),$FRintk */
2180  {
2181    { 0, 0, 0, 0 },
2182    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2183    & ifmt_ldbf, { 0x80a80 }
2184  },
2185/* ldd$pack $lddann($GRi,$GRj),$GRdoublek */
2186  {
2187    { 0, 0, 0, 0 },
2188    { { MNEM, OP (PACK), ' ', OP (LDDANN), '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2189    & ifmt_ldd, { 0x80140 }
2190  },
2191/* lddf$pack @($GRi,$GRj),$FRdoublek */
2192  {
2193    { 0, 0, 0, 0 },
2194    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2195    & ifmt_lddf, { 0x802c0 }
2196  },
2197/* lddc$pack @($GRi,$GRj),$CPRdoublek */
2198  {
2199    { 0, 0, 0, 0 },
2200    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRDOUBLEK), 0 } },
2201    & ifmt_lddc, { 0x80380 }
2202  },
2203/* nldd$pack @($GRi,$GRj),$GRdoublek */
2204  {
2205    { 0, 0, 0, 0 },
2206    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2207    & ifmt_ldd, { 0x80940 }
2208  },
2209/* nlddf$pack @($GRi,$GRj),$FRdoublek */
2210  {
2211    { 0, 0, 0, 0 },
2212    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2213    & ifmt_lddf, { 0x80ac0 }
2214  },
2215/* ldq$pack @($GRi,$GRj),$GRk */
2216  {
2217    { 0, 0, 0, 0 },
2218    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2219    & ifmt_slass, { 0x80180 }
2220  },
2221/* ldqf$pack @($GRi,$GRj),$FRintk */
2222  {
2223    { 0, 0, 0, 0 },
2224    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2225    & ifmt_ldbf, { 0x80300 }
2226  },
2227/* ldqc$pack @($GRi,$GRj),$CPRk */
2228  {
2229    { 0, 0, 0, 0 },
2230    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2231    & ifmt_ldc, { 0x803c0 }
2232  },
2233/* nldq$pack @($GRi,$GRj),$GRk */
2234  {
2235    { 0, 0, 0, 0 },
2236    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2237    & ifmt_slass, { 0x80980 }
2238  },
2239/* nldqf$pack @($GRi,$GRj),$FRintk */
2240  {
2241    { 0, 0, 0, 0 },
2242    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2243    & ifmt_ldbf, { 0x80b00 }
2244  },
2245/* ldsbu$pack @($GRi,$GRj),$GRk */
2246  {
2247    { 0, 0, 0, 0 },
2248    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2249    & ifmt_slass, { 0x80400 }
2250  },
2251/* ldubu$pack @($GRi,$GRj),$GRk */
2252  {
2253    { 0, 0, 0, 0 },
2254    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2255    & ifmt_slass, { 0x80440 }
2256  },
2257/* ldshu$pack @($GRi,$GRj),$GRk */
2258  {
2259    { 0, 0, 0, 0 },
2260    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2261    & ifmt_slass, { 0x80480 }
2262  },
2263/* lduhu$pack @($GRi,$GRj),$GRk */
2264  {
2265    { 0, 0, 0, 0 },
2266    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2267    & ifmt_slass, { 0x804c0 }
2268  },
2269/* ldu$pack @($GRi,$GRj),$GRk */
2270  {
2271    { 0, 0, 0, 0 },
2272    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2273    & ifmt_slass, { 0x80500 }
2274  },
2275/* nldsbu$pack @($GRi,$GRj),$GRk */
2276  {
2277    { 0, 0, 0, 0 },
2278    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2279    & ifmt_slass, { 0x80c00 }
2280  },
2281/* nldubu$pack @($GRi,$GRj),$GRk */
2282  {
2283    { 0, 0, 0, 0 },
2284    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2285    & ifmt_slass, { 0x80c40 }
2286  },
2287/* nldshu$pack @($GRi,$GRj),$GRk */
2288  {
2289    { 0, 0, 0, 0 },
2290    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2291    & ifmt_slass, { 0x80c80 }
2292  },
2293/* nlduhu$pack @($GRi,$GRj),$GRk */
2294  {
2295    { 0, 0, 0, 0 },
2296    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2297    & ifmt_slass, { 0x80cc0 }
2298  },
2299/* nldu$pack @($GRi,$GRj),$GRk */
2300  {
2301    { 0, 0, 0, 0 },
2302    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2303    & ifmt_slass, { 0x80d00 }
2304  },
2305/* ldbfu$pack @($GRi,$GRj),$FRintk */
2306  {
2307    { 0, 0, 0, 0 },
2308    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2309    & ifmt_ldbf, { 0x80600 }
2310  },
2311/* ldhfu$pack @($GRi,$GRj),$FRintk */
2312  {
2313    { 0, 0, 0, 0 },
2314    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2315    & ifmt_ldbf, { 0x80640 }
2316  },
2317/* ldfu$pack @($GRi,$GRj),$FRintk */
2318  {
2319    { 0, 0, 0, 0 },
2320    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2321    & ifmt_ldbf, { 0x80680 }
2322  },
2323/* ldcu$pack @($GRi,$GRj),$CPRk */
2324  {
2325    { 0, 0, 0, 0 },
2326    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2327    & ifmt_ldc, { 0x80740 }
2328  },
2329/* nldbfu$pack @($GRi,$GRj),$FRintk */
2330  {
2331    { 0, 0, 0, 0 },
2332    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2333    & ifmt_ldbf, { 0x80e00 }
2334  },
2335/* nldhfu$pack @($GRi,$GRj),$FRintk */
2336  {
2337    { 0, 0, 0, 0 },
2338    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2339    & ifmt_ldbf, { 0x80e40 }
2340  },
2341/* nldfu$pack @($GRi,$GRj),$FRintk */
2342  {
2343    { 0, 0, 0, 0 },
2344    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2345    & ifmt_ldbf, { 0x80e80 }
2346  },
2347/* lddu$pack @($GRi,$GRj),$GRdoublek */
2348  {
2349    { 0, 0, 0, 0 },
2350    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2351    & ifmt_ldd, { 0x80540 }
2352  },
2353/* nlddu$pack @($GRi,$GRj),$GRdoublek */
2354  {
2355    { 0, 0, 0, 0 },
2356    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2357    & ifmt_ldd, { 0x80d40 }
2358  },
2359/* lddfu$pack @($GRi,$GRj),$FRdoublek */
2360  {
2361    { 0, 0, 0, 0 },
2362    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2363    & ifmt_lddf, { 0x806c0 }
2364  },
2365/* lddcu$pack @($GRi,$GRj),$CPRdoublek */
2366  {
2367    { 0, 0, 0, 0 },
2368    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRDOUBLEK), 0 } },
2369    & ifmt_lddc, { 0x80780 }
2370  },
2371/* nlddfu$pack @($GRi,$GRj),$FRdoublek */
2372  {
2373    { 0, 0, 0, 0 },
2374    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2375    & ifmt_lddf, { 0x80ec0 }
2376  },
2377/* ldqu$pack @($GRi,$GRj),$GRk */
2378  {
2379    { 0, 0, 0, 0 },
2380    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2381    & ifmt_slass, { 0x80580 }
2382  },
2383/* nldqu$pack @($GRi,$GRj),$GRk */
2384  {
2385    { 0, 0, 0, 0 },
2386    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2387    & ifmt_slass, { 0x80d80 }
2388  },
2389/* ldqfu$pack @($GRi,$GRj),$FRintk */
2390  {
2391    { 0, 0, 0, 0 },
2392    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2393    & ifmt_ldbf, { 0x80700 }
2394  },
2395/* ldqcu$pack @($GRi,$GRj),$CPRk */
2396  {
2397    { 0, 0, 0, 0 },
2398    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2399    & ifmt_ldc, { 0x807c0 }
2400  },
2401/* nldqfu$pack @($GRi,$GRj),$FRintk */
2402  {
2403    { 0, 0, 0, 0 },
2404    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2405    & ifmt_ldbf, { 0x80f00 }
2406  },
2407/* ldsbi$pack @($GRi,$d12),$GRk */
2408  {
2409    { 0, 0, 0, 0 },
2410    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2411    & ifmt_ldsbi, { 0xc00000 }
2412  },
2413/* ldshi$pack @($GRi,$d12),$GRk */
2414  {
2415    { 0, 0, 0, 0 },
2416    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2417    & ifmt_ldsbi, { 0xc40000 }
2418  },
2419/* ldi$pack @($GRi,$d12),$GRk */
2420  {
2421    { 0, 0, 0, 0 },
2422    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2423    & ifmt_ldsbi, { 0xc80000 }
2424  },
2425/* ldubi$pack @($GRi,$d12),$GRk */
2426  {
2427    { 0, 0, 0, 0 },
2428    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2429    & ifmt_ldsbi, { 0xd40000 }
2430  },
2431/* lduhi$pack @($GRi,$d12),$GRk */
2432  {
2433    { 0, 0, 0, 0 },
2434    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2435    & ifmt_ldsbi, { 0xd80000 }
2436  },
2437/* ldbfi$pack @($GRi,$d12),$FRintk */
2438  {
2439    { 0, 0, 0, 0 },
2440    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2441    & ifmt_ldbfi, { 0xe00000 }
2442  },
2443/* ldhfi$pack @($GRi,$d12),$FRintk */
2444  {
2445    { 0, 0, 0, 0 },
2446    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2447    & ifmt_ldbfi, { 0xe40000 }
2448  },
2449/* ldfi$pack @($GRi,$d12),$FRintk */
2450  {
2451    { 0, 0, 0, 0 },
2452    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2453    & ifmt_ldbfi, { 0xe80000 }
2454  },
2455/* nldsbi$pack @($GRi,$d12),$GRk */
2456  {
2457    { 0, 0, 0, 0 },
2458    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2459    & ifmt_ldsbi, { 0x1000000 }
2460  },
2461/* nldubi$pack @($GRi,$d12),$GRk */
2462  {
2463    { 0, 0, 0, 0 },
2464    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2465    & ifmt_ldsbi, { 0x1040000 }
2466  },
2467/* nldshi$pack @($GRi,$d12),$GRk */
2468  {
2469    { 0, 0, 0, 0 },
2470    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2471    & ifmt_ldsbi, { 0x1080000 }
2472  },
2473/* nlduhi$pack @($GRi,$d12),$GRk */
2474  {
2475    { 0, 0, 0, 0 },
2476    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2477    & ifmt_ldsbi, { 0x10c0000 }
2478  },
2479/* nldi$pack @($GRi,$d12),$GRk */
2480  {
2481    { 0, 0, 0, 0 },
2482    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2483    & ifmt_ldsbi, { 0x1100000 }
2484  },
2485/* nldbfi$pack @($GRi,$d12),$FRintk */
2486  {
2487    { 0, 0, 0, 0 },
2488    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2489    & ifmt_ldbfi, { 0x1200000 }
2490  },
2491/* nldhfi$pack @($GRi,$d12),$FRintk */
2492  {
2493    { 0, 0, 0, 0 },
2494    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2495    & ifmt_ldbfi, { 0x1240000 }
2496  },
2497/* nldfi$pack @($GRi,$d12),$FRintk */
2498  {
2499    { 0, 0, 0, 0 },
2500    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2501    & ifmt_ldbfi, { 0x1280000 }
2502  },
2503/* lddi$pack @($GRi,$d12),$GRdoublek */
2504  {
2505    { 0, 0, 0, 0 },
2506    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRDOUBLEK), 0 } },
2507    & ifmt_lddi, { 0xcc0000 }
2508  },
2509/* lddfi$pack @($GRi,$d12),$FRdoublek */
2510  {
2511    { 0, 0, 0, 0 },
2512    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRDOUBLEK), 0 } },
2513    & ifmt_lddfi, { 0xec0000 }
2514  },
2515/* nlddi$pack @($GRi,$d12),$GRdoublek */
2516  {
2517    { 0, 0, 0, 0 },
2518    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRDOUBLEK), 0 } },
2519    & ifmt_lddi, { 0x1140000 }
2520  },
2521/* nlddfi$pack @($GRi,$d12),$FRdoublek */
2522  {
2523    { 0, 0, 0, 0 },
2524    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRDOUBLEK), 0 } },
2525    & ifmt_lddfi, { 0x12c0000 }
2526  },
2527/* ldqi$pack @($GRi,$d12),$GRk */
2528  {
2529    { 0, 0, 0, 0 },
2530    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2531    & ifmt_ldsbi, { 0xd00000 }
2532  },
2533/* ldqfi$pack @($GRi,$d12),$FRintk */
2534  {
2535    { 0, 0, 0, 0 },
2536    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2537    & ifmt_ldbfi, { 0xf00000 }
2538  },
2539/* nldqfi$pack @($GRi,$d12),$FRintk */
2540  {
2541    { 0, 0, 0, 0 },
2542    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2543    & ifmt_ldbfi, { 0x1300000 }
2544  },
2545/* stb$pack $GRk,@($GRi,$GRj) */
2546  {
2547    { 0, 0, 0, 0 },
2548    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2549    & ifmt_slass, { 0xc0000 }
2550  },
2551/* sth$pack $GRk,@($GRi,$GRj) */
2552  {
2553    { 0, 0, 0, 0 },
2554    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2555    & ifmt_slass, { 0xc0040 }
2556  },
2557/* st$pack $GRk,@($GRi,$GRj) */
2558  {
2559    { 0, 0, 0, 0 },
2560    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2561    & ifmt_slass, { 0xc0080 }
2562  },
2563/* stbf$pack $FRintk,@($GRi,$GRj) */
2564  {
2565    { 0, 0, 0, 0 },
2566    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2567    & ifmt_ldbf, { 0xc0200 }
2568  },
2569/* sthf$pack $FRintk,@($GRi,$GRj) */
2570  {
2571    { 0, 0, 0, 0 },
2572    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2573    & ifmt_ldbf, { 0xc0240 }
2574  },
2575/* stf$pack $FRintk,@($GRi,$GRj) */
2576  {
2577    { 0, 0, 0, 0 },
2578    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2579    & ifmt_ldbf, { 0xc0280 }
2580  },
2581/* stc$pack $CPRk,@($GRi,$GRj) */
2582  {
2583    { 0, 0, 0, 0 },
2584    { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2585    & ifmt_ldc, { 0xc0940 }
2586  },
2587/* std$pack $GRdoublek,@($GRi,$GRj) */
2588  {
2589    { 0, 0, 0, 0 },
2590    { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2591    & ifmt_ldd, { 0xc00c0 }
2592  },
2593/* stdf$pack $FRdoublek,@($GRi,$GRj) */
2594  {
2595    { 0, 0, 0, 0 },
2596    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2597    & ifmt_lddf, { 0xc02c0 }
2598  },
2599/* stdc$pack $CPRdoublek,@($GRi,$GRj) */
2600  {
2601    { 0, 0, 0, 0 },
2602    { { MNEM, OP (PACK), ' ', OP (CPRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2603    & ifmt_lddc, { 0xc0980 }
2604  },
2605/* stq$pack $GRk,@($GRi,$GRj) */
2606  {
2607    { 0, 0, 0, 0 },
2608    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2609    & ifmt_slass, { 0xc0100 }
2610  },
2611/* stqf$pack $FRintk,@($GRi,$GRj) */
2612  {
2613    { 0, 0, 0, 0 },
2614    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2615    & ifmt_ldbf, { 0xc0300 }
2616  },
2617/* stqc$pack $CPRk,@($GRi,$GRj) */
2618  {
2619    { 0, 0, 0, 0 },
2620    { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2621    & ifmt_ldc, { 0xc09c0 }
2622  },
2623/* stbu$pack $GRk,@($GRi,$GRj) */
2624  {
2625    { 0, 0, 0, 0 },
2626    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2627    & ifmt_slass, { 0xc0400 }
2628  },
2629/* sthu$pack $GRk,@($GRi,$GRj) */
2630  {
2631    { 0, 0, 0, 0 },
2632    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2633    & ifmt_slass, { 0xc0440 }
2634  },
2635/* stu$pack $GRk,@($GRi,$GRj) */
2636  {
2637    { 0, 0, 0, 0 },
2638    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2639    & ifmt_slass, { 0xc0480 }
2640  },
2641/* stbfu$pack $FRintk,@($GRi,$GRj) */
2642  {
2643    { 0, 0, 0, 0 },
2644    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2645    & ifmt_ldbf, { 0xc0600 }
2646  },
2647/* sthfu$pack $FRintk,@($GRi,$GRj) */
2648  {
2649    { 0, 0, 0, 0 },
2650    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2651    & ifmt_ldbf, { 0xc0640 }
2652  },
2653/* stfu$pack $FRintk,@($GRi,$GRj) */
2654  {
2655    { 0, 0, 0, 0 },
2656    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2657    & ifmt_ldbf, { 0xc0680 }
2658  },
2659/* stcu$pack $CPRk,@($GRi,$GRj) */
2660  {
2661    { 0, 0, 0, 0 },
2662    { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2663    & ifmt_ldc, { 0xc0b40 }
2664  },
2665/* stdu$pack $GRdoublek,@($GRi,$GRj) */
2666  {
2667    { 0, 0, 0, 0 },
2668    { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2669    & ifmt_ldd, { 0xc04c0 }
2670  },
2671/* stdfu$pack $FRdoublek,@($GRi,$GRj) */
2672  {
2673    { 0, 0, 0, 0 },
2674    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2675    & ifmt_lddf, { 0xc06c0 }
2676  },
2677/* stdcu$pack $CPRdoublek,@($GRi,$GRj) */
2678  {
2679    { 0, 0, 0, 0 },
2680    { { MNEM, OP (PACK), ' ', OP (CPRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2681    & ifmt_lddc, { 0xc0b80 }
2682  },
2683/* stqu$pack $GRk,@($GRi,$GRj) */
2684  {
2685    { 0, 0, 0, 0 },
2686    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2687    & ifmt_slass, { 0xc0500 }
2688  },
2689/* stqfu$pack $FRintk,@($GRi,$GRj) */
2690  {
2691    { 0, 0, 0, 0 },
2692    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2693    & ifmt_ldbf, { 0xc0700 }
2694  },
2695/* stqcu$pack $CPRk,@($GRi,$GRj) */
2696  {
2697    { 0, 0, 0, 0 },
2698    { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2699    & ifmt_ldc, { 0xc0bc0 }
2700  },
2701/* cldsb$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2702  {
2703    { 0, 0, 0, 0 },
2704    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2705    & ifmt_cadd, { 0x1780000 }
2706  },
2707/* cldub$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2708  {
2709    { 0, 0, 0, 0 },
2710    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2711    & ifmt_cadd, { 0x1780040 }
2712  },
2713/* cldsh$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2714  {
2715    { 0, 0, 0, 0 },
2716    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2717    & ifmt_cadd, { 0x1780080 }
2718  },
2719/* clduh$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2720  {
2721    { 0, 0, 0, 0 },
2722    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2723    & ifmt_cadd, { 0x17800c0 }
2724  },
2725/* cld$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2726  {
2727    { 0, 0, 0, 0 },
2728    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2729    & ifmt_cadd, { 0x17c0000 }
2730  },
2731/* cldbf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2732  {
2733    { 0, 0, 0, 0 },
2734    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2735    & ifmt_cldbf, { 0x1800000 }
2736  },
2737/* cldhf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2738  {
2739    { 0, 0, 0, 0 },
2740    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2741    & ifmt_cldbf, { 0x1800040 }
2742  },
2743/* cldf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2744  {
2745    { 0, 0, 0, 0 },
2746    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2747    & ifmt_cldbf, { 0x1800080 }
2748  },
2749/* cldd$pack @($GRi,$GRj),$GRdoublek,$CCi,$cond */
2750  {
2751    { 0, 0, 0, 0 },
2752    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2753    & ifmt_csmul, { 0x17c0040 }
2754  },
2755/* clddf$pack @($GRi,$GRj),$FRdoublek,$CCi,$cond */
2756  {
2757    { 0, 0, 0, 0 },
2758    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2759    & ifmt_clddf, { 0x18000c0 }
2760  },
2761/* cldq$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2762  {
2763    { 0, 0, 0, 0 },
2764    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2765    & ifmt_cadd, { 0x17c0080 }
2766  },
2767/* cldsbu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2768  {
2769    { 0, 0, 0, 0 },
2770    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2771    & ifmt_cadd, { 0x1840000 }
2772  },
2773/* cldubu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2774  {
2775    { 0, 0, 0, 0 },
2776    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2777    & ifmt_cadd, { 0x1840040 }
2778  },
2779/* cldshu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2780  {
2781    { 0, 0, 0, 0 },
2782    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2783    & ifmt_cadd, { 0x1840080 }
2784  },
2785/* clduhu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2786  {
2787    { 0, 0, 0, 0 },
2788    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2789    & ifmt_cadd, { 0x18400c0 }
2790  },
2791/* cldu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2792  {
2793    { 0, 0, 0, 0 },
2794    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2795    & ifmt_cadd, { 0x1880000 }
2796  },
2797/* cldbfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2798  {
2799    { 0, 0, 0, 0 },
2800    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2801    & ifmt_cldbf, { 0x18c0000 }
2802  },
2803/* cldhfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2804  {
2805    { 0, 0, 0, 0 },
2806    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2807    & ifmt_cldbf, { 0x18c0040 }
2808  },
2809/* cldfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2810  {
2811    { 0, 0, 0, 0 },
2812    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2813    & ifmt_cldbf, { 0x18c0080 }
2814  },
2815/* clddu$pack @($GRi,$GRj),$GRdoublek,$CCi,$cond */
2816  {
2817    { 0, 0, 0, 0 },
2818    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2819    & ifmt_csmul, { 0x1880040 }
2820  },
2821/* clddfu$pack @($GRi,$GRj),$FRdoublek,$CCi,$cond */
2822  {
2823    { 0, 0, 0, 0 },
2824    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2825    & ifmt_clddf, { 0x18c00c0 }
2826  },
2827/* cldqu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2828  {
2829    { 0, 0, 0, 0 },
2830    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2831    & ifmt_cadd, { 0x1880080 }
2832  },
2833/* cstb$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2834  {
2835    { 0, 0, 0, 0 },
2836    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2837    & ifmt_cadd, { 0x1900000 }
2838  },
2839/* csth$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2840  {
2841    { 0, 0, 0, 0 },
2842    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2843    & ifmt_cadd, { 0x1900040 }
2844  },
2845/* cst$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2846  {
2847    { 0, 0, 0, 0 },
2848    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2849    & ifmt_cadd, { 0x1900080 }
2850  },
2851/* cstbf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2852  {
2853    { 0, 0, 0, 0 },
2854    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2855    & ifmt_cldbf, { 0x1980000 }
2856  },
2857/* csthf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2858  {
2859    { 0, 0, 0, 0 },
2860    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2861    & ifmt_cldbf, { 0x1980040 }
2862  },
2863/* cstf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2864  {
2865    { 0, 0, 0, 0 },
2866    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2867    & ifmt_cldbf, { 0x1980080 }
2868  },
2869/* cstd$pack $GRdoublek,@($GRi,$GRj),$CCi,$cond */
2870  {
2871    { 0, 0, 0, 0 },
2872    { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2873    & ifmt_csmul, { 0x19000c0 }
2874  },
2875/* cstdf$pack $FRdoublek,@($GRi,$GRj),$CCi,$cond */
2876  {
2877    { 0, 0, 0, 0 },
2878    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2879    & ifmt_clddf, { 0x19800c0 }
2880  },
2881/* cstq$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2882  {
2883    { 0, 0, 0, 0 },
2884    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2885    & ifmt_cadd, { 0x1940000 }
2886  },
2887/* cstbu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2888  {
2889    { 0, 0, 0, 0 },
2890    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2891    & ifmt_cadd, { 0x19c0000 }
2892  },
2893/* csthu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2894  {
2895    { 0, 0, 0, 0 },
2896    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2897    & ifmt_cadd, { 0x19c0040 }
2898  },
2899/* cstu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2900  {
2901    { 0, 0, 0, 0 },
2902    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2903    & ifmt_cadd, { 0x19c0080 }
2904  },
2905/* cstbfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2906  {
2907    { 0, 0, 0, 0 },
2908    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2909    & ifmt_cldbf, { 0x1a00000 }
2910  },
2911/* csthfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2912  {
2913    { 0, 0, 0, 0 },
2914    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2915    & ifmt_cldbf, { 0x1a00040 }
2916  },
2917/* cstfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2918  {
2919    { 0, 0, 0, 0 },
2920    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2921    & ifmt_cldbf, { 0x1a00080 }
2922  },
2923/* cstdu$pack $GRdoublek,@($GRi,$GRj),$CCi,$cond */
2924  {
2925    { 0, 0, 0, 0 },
2926    { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2927    & ifmt_csmul, { 0x19c00c0 }
2928  },
2929/* cstdfu$pack $FRdoublek,@($GRi,$GRj),$CCi,$cond */
2930  {
2931    { 0, 0, 0, 0 },
2932    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2933    & ifmt_clddf, { 0x1a000c0 }
2934  },
2935/* stbi$pack $GRk,@($GRi,$d12) */
2936  {
2937    { 0, 0, 0, 0 },
2938    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2939    & ifmt_ldsbi, { 0x1400000 }
2940  },
2941/* sthi$pack $GRk,@($GRi,$d12) */
2942  {
2943    { 0, 0, 0, 0 },
2944    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2945    & ifmt_ldsbi, { 0x1440000 }
2946  },
2947/* sti$pack $GRk,@($GRi,$d12) */
2948  {
2949    { 0, 0, 0, 0 },
2950    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2951    & ifmt_ldsbi, { 0x1480000 }
2952  },
2953/* stbfi$pack $FRintk,@($GRi,$d12) */
2954  {
2955    { 0, 0, 0, 0 },
2956    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2957    & ifmt_ldbfi, { 0x1380000 }
2958  },
2959/* sthfi$pack $FRintk,@($GRi,$d12) */
2960  {
2961    { 0, 0, 0, 0 },
2962    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2963    & ifmt_ldbfi, { 0x13c0000 }
2964  },
2965/* stfi$pack $FRintk,@($GRi,$d12) */
2966  {
2967    { 0, 0, 0, 0 },
2968    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2969    & ifmt_ldbfi, { 0x1540000 }
2970  },
2971/* stdi$pack $GRdoublek,@($GRi,$d12) */
2972  {
2973    { 0, 0, 0, 0 },
2974    { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2975    & ifmt_lddi, { 0x14c0000 }
2976  },
2977/* stdfi$pack $FRdoublek,@($GRi,$d12) */
2978  {
2979    { 0, 0, 0, 0 },
2980    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2981    & ifmt_lddfi, { 0x1580000 }
2982  },
2983/* stqi$pack $GRk,@($GRi,$d12) */
2984  {
2985    { 0, 0, 0, 0 },
2986    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2987    & ifmt_ldsbi, { 0x1500000 }
2988  },
2989/* stqfi$pack $FRintk,@($GRi,$d12) */
2990  {
2991    { 0, 0, 0, 0 },
2992    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2993    & ifmt_ldbfi, { 0x15c0000 }
2994  },
2995/* swap$pack @($GRi,$GRj),$GRk */
2996  {
2997    { 0, 0, 0, 0 },
2998    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2999    & ifmt_slass, { 0xc0140 }
3000  },
3001/* swapi$pack @($GRi,$d12),$GRk */
3002  {
3003    { 0, 0, 0, 0 },
3004    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
3005    & ifmt_ldsbi, { 0x1340000 }
3006  },
3007/* cswap$pack @($GRi,$GRj),$GRk,$CCi,$cond */
3008  {
3009    { 0, 0, 0, 0 },
3010    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
3011    & ifmt_cadd, { 0x1940080 }
3012  },
3013/* movgf$pack $GRj,$FRintk */
3014  {
3015    { 0, 0, 0, 0 },
3016    { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), 0 } },
3017    & ifmt_movgf, { 0xc0540 }
3018  },
3019/* movfg$pack $FRintk,$GRj */
3020  {
3021    { 0, 0, 0, 0 },
3022    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), 0 } },
3023    & ifmt_movgf, { 0xc0340 }
3024  },
3025/* movgfd$pack $GRj,$FRintk */
3026  {
3027    { 0, 0, 0, 0 },
3028    { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), 0 } },
3029    & ifmt_movgf, { 0xc0580 }
3030  },
3031/* movfgd$pack $FRintk,$GRj */
3032  {
3033    { 0, 0, 0, 0 },
3034    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), 0 } },
3035    & ifmt_movgf, { 0xc0380 }
3036  },
3037/* movgfq$pack $GRj,$FRintk */
3038  {
3039    { 0, 0, 0, 0 },
3040    { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), 0 } },
3041    & ifmt_movgf, { 0xc05c0 }
3042  },
3043/* movfgq$pack $FRintk,$GRj */
3044  {
3045    { 0, 0, 0, 0 },
3046    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), 0 } },
3047    & ifmt_movgf, { 0xc03c0 }
3048  },
3049/* cmovgf$pack $GRj,$FRintk,$CCi,$cond */
3050  {
3051    { 0, 0, 0, 0 },
3052    { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
3053    & ifmt_cmovgf, { 0x1a40000 }
3054  },
3055/* cmovfg$pack $FRintk,$GRj,$CCi,$cond */
3056  {
3057    { 0, 0, 0, 0 },
3058    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), ',', OP (CCI), ',', OP (COND), 0 } },
3059    & ifmt_cmovgf, { 0x1a40080 }
3060  },
3061/* cmovgfd$pack $GRj,$FRintk,$CCi,$cond */
3062  {
3063    { 0, 0, 0, 0 },
3064    { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
3065    & ifmt_cmovgf, { 0x1a40040 }
3066  },
3067/* cmovfgd$pack $FRintk,$GRj,$CCi,$cond */
3068  {
3069    { 0, 0, 0, 0 },
3070    { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), ',', OP (CCI), ',', OP (COND), 0 } },
3071    & ifmt_cmovgf, { 0x1a400c0 }
3072  },
3073/* movgs$pack $GRj,$spr */
3074  {
3075    { 0, 0, 0, 0 },
3076    { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (SPR), 0 } },
3077    & ifmt_movgs, { 0xc0180 }
3078  },
3079/* movsg$pack $spr,$GRj */
3080  {
3081    { 0, 0, 0, 0 },
3082    { { MNEM, OP (PACK), ' ', OP (SPR), ',', OP (GRJ), 0 } },
3083    & ifmt_movgs, { 0xc01c0 }
3084  },
3085/* bra$pack $hint_taken$label16 */
3086  {
3087    { 0, 0, 0, 0 },
3088    { { MNEM, OP (PACK), ' ', OP (HINT_TAKEN), OP (LABEL16), 0 } },
3089    & ifmt_bra, { 0x40180000 }
3090  },
3091/* bno$pack$hint_not_taken */
3092  {
3093    { 0, 0, 0, 0 },
3094    { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3095    & ifmt_bno, { 0x180000 }
3096  },
3097/* beq$pack $ICCi_2,$hint,$label16 */
3098  {
3099    { 0, 0, 0, 0 },
3100    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3101    & ifmt_beq, { 0x20180000 }
3102  },
3103/* bne$pack $ICCi_2,$hint,$label16 */
3104  {
3105    { 0, 0, 0, 0 },
3106    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3107    & ifmt_beq, { 0x60180000 }
3108  },
3109/* ble$pack $ICCi_2,$hint,$label16 */
3110  {
3111    { 0, 0, 0, 0 },
3112    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3113    & ifmt_beq, { 0x38180000 }
3114  },
3115/* bgt$pack $ICCi_2,$hint,$label16 */
3116  {
3117    { 0, 0, 0, 0 },
3118    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3119    & ifmt_beq, { 0x78180000 }
3120  },
3121/* blt$pack $ICCi_2,$hint,$label16 */
3122  {
3123    { 0, 0, 0, 0 },
3124    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3125    & ifmt_beq, { 0x18180000 }
3126  },
3127/* bge$pack $ICCi_2,$hint,$label16 */
3128  {
3129    { 0, 0, 0, 0 },
3130    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3131    & ifmt_beq, { 0x58180000 }
3132  },
3133/* bls$pack $ICCi_2,$hint,$label16 */
3134  {
3135    { 0, 0, 0, 0 },
3136    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3137    & ifmt_beq, { 0x28180000 }
3138  },
3139/* bhi$pack $ICCi_2,$hint,$label16 */
3140  {
3141    { 0, 0, 0, 0 },
3142    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3143    & ifmt_beq, { 0x68180000 }
3144  },
3145/* bc$pack $ICCi_2,$hint,$label16 */
3146  {
3147    { 0, 0, 0, 0 },
3148    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3149    & ifmt_beq, { 0x8180000 }
3150  },
3151/* bnc$pack $ICCi_2,$hint,$label16 */
3152  {
3153    { 0, 0, 0, 0 },
3154    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3155    & ifmt_beq, { 0x48180000 }
3156  },
3157/* bn$pack $ICCi_2,$hint,$label16 */
3158  {
3159    { 0, 0, 0, 0 },
3160    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3161    & ifmt_beq, { 0x30180000 }
3162  },
3163/* bp$pack $ICCi_2,$hint,$label16 */
3164  {
3165    { 0, 0, 0, 0 },
3166    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3167    & ifmt_beq, { 0x70180000 }
3168  },
3169/* bv$pack $ICCi_2,$hint,$label16 */
3170  {
3171    { 0, 0, 0, 0 },
3172    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3173    & ifmt_beq, { 0x10180000 }
3174  },
3175/* bnv$pack $ICCi_2,$hint,$label16 */
3176  {
3177    { 0, 0, 0, 0 },
3178    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3179    & ifmt_beq, { 0x50180000 }
3180  },
3181/* fbra$pack $hint_taken$label16 */
3182  {
3183    { 0, 0, 0, 0 },
3184    { { MNEM, OP (PACK), ' ', OP (HINT_TAKEN), OP (LABEL16), 0 } },
3185    & ifmt_fbra, { 0x781c0000 }
3186  },
3187/* fbno$pack$hint_not_taken */
3188  {
3189    { 0, 0, 0, 0 },
3190    { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3191    & ifmt_fbno, { 0x1c0000 }
3192  },
3193/* fbne$pack $FCCi_2,$hint,$label16 */
3194  {
3195    { 0, 0, 0, 0 },
3196    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3197    & ifmt_fbne, { 0x381c0000 }
3198  },
3199/* fbeq$pack $FCCi_2,$hint,$label16 */
3200  {
3201    { 0, 0, 0, 0 },
3202    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3203    & ifmt_fbne, { 0x401c0000 }
3204  },
3205/* fblg$pack $FCCi_2,$hint,$label16 */
3206  {
3207    { 0, 0, 0, 0 },
3208    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3209    & ifmt_fbne, { 0x301c0000 }
3210  },
3211/* fbue$pack $FCCi_2,$hint,$label16 */
3212  {
3213    { 0, 0, 0, 0 },
3214    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3215    & ifmt_fbne, { 0x481c0000 }
3216  },
3217/* fbul$pack $FCCi_2,$hint,$label16 */
3218  {
3219    { 0, 0, 0, 0 },
3220    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3221    & ifmt_fbne, { 0x281c0000 }
3222  },
3223/* fbge$pack $FCCi_2,$hint,$label16 */
3224  {
3225    { 0, 0, 0, 0 },
3226    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3227    & ifmt_fbne, { 0x501c0000 }
3228  },
3229/* fblt$pack $FCCi_2,$hint,$label16 */
3230  {
3231    { 0, 0, 0, 0 },
3232    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3233    & ifmt_fbne, { 0x201c0000 }
3234  },
3235/* fbuge$pack $FCCi_2,$hint,$label16 */
3236  {
3237    { 0, 0, 0, 0 },
3238    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3239    & ifmt_fbne, { 0x581c0000 }
3240  },
3241/* fbug$pack $FCCi_2,$hint,$label16 */
3242  {
3243    { 0, 0, 0, 0 },
3244    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3245    & ifmt_fbne, { 0x181c0000 }
3246  },
3247/* fble$pack $FCCi_2,$hint,$label16 */
3248  {
3249    { 0, 0, 0, 0 },
3250    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3251    & ifmt_fbne, { 0x601c0000 }
3252  },
3253/* fbgt$pack $FCCi_2,$hint,$label16 */
3254  {
3255    { 0, 0, 0, 0 },
3256    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3257    & ifmt_fbne, { 0x101c0000 }
3258  },
3259/* fbule$pack $FCCi_2,$hint,$label16 */
3260  {
3261    { 0, 0, 0, 0 },
3262    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3263    & ifmt_fbne, { 0x681c0000 }
3264  },
3265/* fbu$pack $FCCi_2,$hint,$label16 */
3266  {
3267    { 0, 0, 0, 0 },
3268    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3269    & ifmt_fbne, { 0x81c0000 }
3270  },
3271/* fbo$pack $FCCi_2,$hint,$label16 */
3272  {
3273    { 0, 0, 0, 0 },
3274    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3275    & ifmt_fbne, { 0x701c0000 }
3276  },
3277/* bctrlr$pack $ccond,$hint */
3278  {
3279    { 0, 0, 0, 0 },
3280    { { MNEM, OP (PACK), ' ', OP (CCOND), ',', OP (HINT), 0 } },
3281    & ifmt_bctrlr, { 0x382000 }
3282  },
3283/* bralr$pack$hint_taken */
3284  {
3285    { 0, 0, 0, 0 },
3286    { { MNEM, OP (PACK), OP (HINT_TAKEN), 0 } },
3287    & ifmt_bralr, { 0x40384000 }
3288  },
3289/* bnolr$pack$hint_not_taken */
3290  {
3291    { 0, 0, 0, 0 },
3292    { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3293    & ifmt_bnolr, { 0x384000 }
3294  },
3295/* beqlr$pack $ICCi_2,$hint */
3296  {
3297    { 0, 0, 0, 0 },
3298    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3299    & ifmt_beqlr, { 0x20384000 }
3300  },
3301/* bnelr$pack $ICCi_2,$hint */
3302  {
3303    { 0, 0, 0, 0 },
3304    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3305    & ifmt_beqlr, { 0x60384000 }
3306  },
3307/* blelr$pack $ICCi_2,$hint */
3308  {
3309    { 0, 0, 0, 0 },
3310    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3311    & ifmt_beqlr, { 0x38384000 }
3312  },
3313/* bgtlr$pack $ICCi_2,$hint */
3314  {
3315    { 0, 0, 0, 0 },
3316    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3317    & ifmt_beqlr, { 0x78384000 }
3318  },
3319/* bltlr$pack $ICCi_2,$hint */
3320  {
3321    { 0, 0, 0, 0 },
3322    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3323    & ifmt_beqlr, { 0x18384000 }
3324  },
3325/* bgelr$pack $ICCi_2,$hint */
3326  {
3327    { 0, 0, 0, 0 },
3328    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3329    & ifmt_beqlr, { 0x58384000 }
3330  },
3331/* blslr$pack $ICCi_2,$hint */
3332  {
3333    { 0, 0, 0, 0 },
3334    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3335    & ifmt_beqlr, { 0x28384000 }
3336  },
3337/* bhilr$pack $ICCi_2,$hint */
3338  {
3339    { 0, 0, 0, 0 },
3340    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3341    & ifmt_beqlr, { 0x68384000 }
3342  },
3343/* bclr$pack $ICCi_2,$hint */
3344  {
3345    { 0, 0, 0, 0 },
3346    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3347    & ifmt_beqlr, { 0x8384000 }
3348  },
3349/* bnclr$pack $ICCi_2,$hint */
3350  {
3351    { 0, 0, 0, 0 },
3352    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3353    & ifmt_beqlr, { 0x48384000 }
3354  },
3355/* bnlr$pack $ICCi_2,$hint */
3356  {
3357    { 0, 0, 0, 0 },
3358    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3359    & ifmt_beqlr, { 0x30384000 }
3360  },
3361/* bplr$pack $ICCi_2,$hint */
3362  {
3363    { 0, 0, 0, 0 },
3364    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3365    & ifmt_beqlr, { 0x70384000 }
3366  },
3367/* bvlr$pack $ICCi_2,$hint */
3368  {
3369    { 0, 0, 0, 0 },
3370    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3371    & ifmt_beqlr, { 0x10384000 }
3372  },
3373/* bnvlr$pack $ICCi_2,$hint */
3374  {
3375    { 0, 0, 0, 0 },
3376    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3377    & ifmt_beqlr, { 0x50384000 }
3378  },
3379/* fbralr$pack$hint_taken */
3380  {
3381    { 0, 0, 0, 0 },
3382    { { MNEM, OP (PACK), OP (HINT_TAKEN), 0 } },
3383    & ifmt_fbralr, { 0x7838c000 }
3384  },
3385/* fbnolr$pack$hint_not_taken */
3386  {
3387    { 0, 0, 0, 0 },
3388    { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3389    & ifmt_fbnolr, { 0x38c000 }
3390  },
3391/* fbeqlr$pack $FCCi_2,$hint */
3392  {
3393    { 0, 0, 0, 0 },
3394    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3395    & ifmt_fbeqlr, { 0x4038c000 }
3396  },
3397/* fbnelr$pack $FCCi_2,$hint */
3398  {
3399    { 0, 0, 0, 0 },
3400    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3401    & ifmt_fbeqlr, { 0x3838c000 }
3402  },
3403/* fblglr$pack $FCCi_2,$hint */
3404  {
3405    { 0, 0, 0, 0 },
3406    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3407    & ifmt_fbeqlr, { 0x3038c000 }
3408  },
3409/* fbuelr$pack $FCCi_2,$hint */
3410  {
3411    { 0, 0, 0, 0 },
3412    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3413    & ifmt_fbeqlr, { 0x4838c000 }
3414  },
3415/* fbullr$pack $FCCi_2,$hint */
3416  {
3417    { 0, 0, 0, 0 },
3418    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3419    & ifmt_fbeqlr, { 0x2838c000 }
3420  },
3421/* fbgelr$pack $FCCi_2,$hint */
3422  {
3423    { 0, 0, 0, 0 },
3424    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3425    & ifmt_fbeqlr, { 0x5038c000 }
3426  },
3427/* fbltlr$pack $FCCi_2,$hint */
3428  {
3429    { 0, 0, 0, 0 },
3430    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3431    & ifmt_fbeqlr, { 0x2038c000 }
3432  },
3433/* fbugelr$pack $FCCi_2,$hint */
3434  {
3435    { 0, 0, 0, 0 },
3436    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3437    & ifmt_fbeqlr, { 0x5838c000 }
3438  },
3439/* fbuglr$pack $FCCi_2,$hint */
3440  {
3441    { 0, 0, 0, 0 },
3442    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3443    & ifmt_fbeqlr, { 0x1838c000 }
3444  },
3445/* fblelr$pack $FCCi_2,$hint */
3446  {
3447    { 0, 0, 0, 0 },
3448    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3449    & ifmt_fbeqlr, { 0x6038c000 }
3450  },
3451/* fbgtlr$pack $FCCi_2,$hint */
3452  {
3453    { 0, 0, 0, 0 },
3454    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3455    & ifmt_fbeqlr, { 0x1038c000 }
3456  },
3457/* fbulelr$pack $FCCi_2,$hint */
3458  {
3459    { 0, 0, 0, 0 },
3460    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3461    & ifmt_fbeqlr, { 0x6838c000 }
3462  },
3463/* fbulr$pack $FCCi_2,$hint */
3464  {
3465    { 0, 0, 0, 0 },
3466    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3467    & ifmt_fbeqlr, { 0x838c000 }
3468  },
3469/* fbolr$pack $FCCi_2,$hint */
3470  {
3471    { 0, 0, 0, 0 },
3472    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3473    & ifmt_fbeqlr, { 0x7038c000 }
3474  },
3475/* bcralr$pack $ccond$hint_taken */
3476  {
3477    { 0, 0, 0, 0 },
3478    { { MNEM, OP (PACK), ' ', OP (CCOND), OP (HINT_TAKEN), 0 } },
3479    & ifmt_bcralr, { 0x40386000 }
3480  },
3481/* bcnolr$pack$hint_not_taken */
3482  {
3483    { 0, 0, 0, 0 },
3484    { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3485    & ifmt_bnolr, { 0x386000 }
3486  },
3487/* bceqlr$pack $ICCi_2,$ccond,$hint */
3488  {
3489    { 0, 0, 0, 0 },
3490    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3491    & ifmt_bceqlr, { 0x20386000 }
3492  },
3493/* bcnelr$pack $ICCi_2,$ccond,$hint */
3494  {
3495    { 0, 0, 0, 0 },
3496    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3497    & ifmt_bceqlr, { 0x60386000 }
3498  },
3499/* bclelr$pack $ICCi_2,$ccond,$hint */
3500  {
3501    { 0, 0, 0, 0 },
3502    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3503    & ifmt_bceqlr, { 0x38386000 }
3504  },
3505/* bcgtlr$pack $ICCi_2,$ccond,$hint */
3506  {
3507    { 0, 0, 0, 0 },
3508    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3509    & ifmt_bceqlr, { 0x78386000 }
3510  },
3511/* bcltlr$pack $ICCi_2,$ccond,$hint */
3512  {
3513    { 0, 0, 0, 0 },
3514    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3515    & ifmt_bceqlr, { 0x18386000 }
3516  },
3517/* bcgelr$pack $ICCi_2,$ccond,$hint */
3518  {
3519    { 0, 0, 0, 0 },
3520    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3521    & ifmt_bceqlr, { 0x58386000 }
3522  },
3523/* bclslr$pack $ICCi_2,$ccond,$hint */
3524  {
3525    { 0, 0, 0, 0 },
3526    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3527    & ifmt_bceqlr, { 0x28386000 }
3528  },
3529/* bchilr$pack $ICCi_2,$ccond,$hint */
3530  {
3531    { 0, 0, 0, 0 },
3532    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3533    & ifmt_bceqlr, { 0x68386000 }
3534  },
3535/* bcclr$pack $ICCi_2,$ccond,$hint */
3536  {
3537    { 0, 0, 0, 0 },
3538    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3539    & ifmt_bceqlr, { 0x8386000 }
3540  },
3541/* bcnclr$pack $ICCi_2,$ccond,$hint */
3542  {
3543    { 0, 0, 0, 0 },
3544    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3545    & ifmt_bceqlr, { 0x48386000 }
3546  },
3547/* bcnlr$pack $ICCi_2,$ccond,$hint */
3548  {
3549    { 0, 0, 0, 0 },
3550    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3551    & ifmt_bceqlr, { 0x30386000 }
3552  },
3553/* bcplr$pack $ICCi_2,$ccond,$hint */
3554  {
3555    { 0, 0, 0, 0 },
3556    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3557    & ifmt_bceqlr, { 0x70386000 }
3558  },
3559/* bcvlr$pack $ICCi_2,$ccond,$hint */
3560  {
3561    { 0, 0, 0, 0 },
3562    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3563    & ifmt_bceqlr, { 0x10386000 }
3564  },
3565/* bcnvlr$pack $ICCi_2,$ccond,$hint */
3566  {
3567    { 0, 0, 0, 0 },
3568    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3569    & ifmt_bceqlr, { 0x50386000 }
3570  },
3571/* fcbralr$pack $ccond$hint_taken */
3572  {
3573    { 0, 0, 0, 0 },
3574    { { MNEM, OP (PACK), ' ', OP (CCOND), OP (HINT_TAKEN), 0 } },
3575    & ifmt_fcbralr, { 0x7838e000 }
3576  },
3577/* fcbnolr$pack$hint_not_taken */
3578  {
3579    { 0, 0, 0, 0 },
3580    { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3581    & ifmt_fbnolr, { 0x38e000 }
3582  },
3583/* fcbeqlr$pack $FCCi_2,$ccond,$hint */
3584  {
3585    { 0, 0, 0, 0 },
3586    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3587    & ifmt_fcbeqlr, { 0x4038e000 }
3588  },
3589/* fcbnelr$pack $FCCi_2,$ccond,$hint */
3590  {
3591    { 0, 0, 0, 0 },
3592    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3593    & ifmt_fcbeqlr, { 0x3838e000 }
3594  },
3595/* fcblglr$pack $FCCi_2,$ccond,$hint */
3596  {
3597    { 0, 0, 0, 0 },
3598    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3599    & ifmt_fcbeqlr, { 0x3038e000 }
3600  },
3601/* fcbuelr$pack $FCCi_2,$ccond,$hint */
3602  {
3603    { 0, 0, 0, 0 },
3604    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3605    & ifmt_fcbeqlr, { 0x4838e000 }
3606  },
3607/* fcbullr$pack $FCCi_2,$ccond,$hint */
3608  {
3609    { 0, 0, 0, 0 },
3610    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3611    & ifmt_fcbeqlr, { 0x2838e000 }
3612  },
3613/* fcbgelr$pack $FCCi_2,$ccond,$hint */
3614  {
3615    { 0, 0, 0, 0 },
3616    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3617    & ifmt_fcbeqlr, { 0x5038e000 }
3618  },
3619/* fcbltlr$pack $FCCi_2,$ccond,$hint */
3620  {
3621    { 0, 0, 0, 0 },
3622    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3623    & ifmt_fcbeqlr, { 0x2038e000 }
3624  },
3625/* fcbugelr$pack $FCCi_2,$ccond,$hint */
3626  {
3627    { 0, 0, 0, 0 },
3628    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3629    & ifmt_fcbeqlr, { 0x5838e000 }
3630  },
3631/* fcbuglr$pack $FCCi_2,$ccond,$hint */
3632  {
3633    { 0, 0, 0, 0 },
3634    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3635    & ifmt_fcbeqlr, { 0x1838e000 }
3636  },
3637/* fcblelr$pack $FCCi_2,$ccond,$hint */
3638  {
3639    { 0, 0, 0, 0 },
3640    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3641    & ifmt_fcbeqlr, { 0x6038e000 }
3642  },
3643/* fcbgtlr$pack $FCCi_2,$ccond,$hint */
3644  {
3645    { 0, 0, 0, 0 },
3646    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3647    & ifmt_fcbeqlr, { 0x1038e000 }
3648  },
3649/* fcbulelr$pack $FCCi_2,$ccond,$hint */
3650  {
3651    { 0, 0, 0, 0 },
3652    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3653    & ifmt_fcbeqlr, { 0x6838e000 }
3654  },
3655/* fcbulr$pack $FCCi_2,$ccond,$hint */
3656  {
3657    { 0, 0, 0, 0 },
3658    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3659    & ifmt_fcbeqlr, { 0x838e000 }
3660  },
3661/* fcbolr$pack $FCCi_2,$ccond,$hint */
3662  {
3663    { 0, 0, 0, 0 },
3664    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3665    & ifmt_fcbeqlr, { 0x7038e000 }
3666  },
3667/* jmpl$pack @($GRi,$GRj) */
3668  {
3669    { 0, 0, 0, 0 },
3670    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
3671    & ifmt_jmpl, { 0x300000 }
3672  },
3673/* calll$pack $callann($GRi,$GRj) */
3674  {
3675    { 0, 0, 0, 0 },
3676    { { MNEM, OP (PACK), ' ', OP (CALLANN), '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
3677    & ifmt_calll, { 0x2300000 }
3678  },
3679/* jmpil$pack @($GRi,$s12) */
3680  {
3681    { 0, 0, 0, 0 },
3682    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (S12), ')', 0 } },
3683    & ifmt_jmpil, { 0x340000 }
3684  },
3685/* callil$pack @($GRi,$s12) */
3686  {
3687    { 0, 0, 0, 0 },
3688    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (S12), ')', 0 } },
3689    & ifmt_callil, { 0x2340000 }
3690  },
3691/* call$pack $label24 */
3692  {
3693    { 0, 0, 0, 0 },
3694    { { MNEM, OP (PACK), ' ', OP (LABEL24), 0 } },
3695    & ifmt_call, { 0x3c0000 }
3696  },
3697/* rett$pack $debug */
3698  {
3699    { 0, 0, 0, 0 },
3700    { { MNEM, OP (PACK), ' ', OP (DEBUG), 0 } },
3701    & ifmt_rett, { 0x140000 }
3702  },
3703/* rei$pack $eir */
3704  {
3705    { 0, 0, 0, 0 },
3706    { { MNEM, OP (PACK), ' ', OP (EIR), 0 } },
3707    & ifmt_rei, { 0xdc0000 }
3708  },
3709/* tra$pack $GRi,$GRj */
3710  {
3711    { 0, 0, 0, 0 },
3712    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
3713    & ifmt_tra, { 0x40100000 }
3714  },
3715/* tno$pack */
3716  {
3717    { 0, 0, 0, 0 },
3718    { { MNEM, OP (PACK), 0 } },
3719    & ifmt_tno, { 0x100000 }
3720  },
3721/* teq$pack $ICCi_2,$GRi,$GRj */
3722  {
3723    { 0, 0, 0, 0 },
3724    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3725    & ifmt_teq, { 0x20100000 }
3726  },
3727/* tne$pack $ICCi_2,$GRi,$GRj */
3728  {
3729    { 0, 0, 0, 0 },
3730    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3731    & ifmt_teq, { 0x60100000 }
3732  },
3733/* tle$pack $ICCi_2,$GRi,$GRj */
3734  {
3735    { 0, 0, 0, 0 },
3736    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3737    & ifmt_teq, { 0x38100000 }
3738  },
3739/* tgt$pack $ICCi_2,$GRi,$GRj */
3740  {
3741    { 0, 0, 0, 0 },
3742    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3743    & ifmt_teq, { 0x78100000 }
3744  },
3745/* tlt$pack $ICCi_2,$GRi,$GRj */
3746  {
3747    { 0, 0, 0, 0 },
3748    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3749    & ifmt_teq, { 0x18100000 }
3750  },
3751/* tge$pack $ICCi_2,$GRi,$GRj */
3752  {
3753    { 0, 0, 0, 0 },
3754    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3755    & ifmt_teq, { 0x58100000 }
3756  },
3757/* tls$pack $ICCi_2,$GRi,$GRj */
3758  {
3759    { 0, 0, 0, 0 },
3760    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3761    & ifmt_teq, { 0x28100000 }
3762  },
3763/* thi$pack $ICCi_2,$GRi,$GRj */
3764  {
3765    { 0, 0, 0, 0 },
3766    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3767    & ifmt_teq, { 0x68100000 }
3768  },
3769/* tc$pack $ICCi_2,$GRi,$GRj */
3770  {
3771    { 0, 0, 0, 0 },
3772    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3773    & ifmt_teq, { 0x8100000 }
3774  },
3775/* tnc$pack $ICCi_2,$GRi,$GRj */
3776  {
3777    { 0, 0, 0, 0 },
3778    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3779    & ifmt_teq, { 0x48100000 }
3780  },
3781/* tn$pack $ICCi_2,$GRi,$GRj */
3782  {
3783    { 0, 0, 0, 0 },
3784    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3785    & ifmt_teq, { 0x30100000 }
3786  },
3787/* tp$pack $ICCi_2,$GRi,$GRj */
3788  {
3789    { 0, 0, 0, 0 },
3790    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3791    & ifmt_teq, { 0x70100000 }
3792  },
3793/* tv$pack $ICCi_2,$GRi,$GRj */
3794  {
3795    { 0, 0, 0, 0 },
3796    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3797    & ifmt_teq, { 0x10100000 }
3798  },
3799/* tnv$pack $ICCi_2,$GRi,$GRj */
3800  {
3801    { 0, 0, 0, 0 },
3802    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3803    & ifmt_teq, { 0x50100000 }
3804  },
3805/* ftra$pack $GRi,$GRj */
3806  {
3807    { 0, 0, 0, 0 },
3808    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
3809    & ifmt_ftra, { 0x78100040 }
3810  },
3811/* ftno$pack */
3812  {
3813    { 0, 0, 0, 0 },
3814    { { MNEM, OP (PACK), 0 } },
3815    & ifmt_ftno, { 0x100040 }
3816  },
3817/* ftne$pack $FCCi_2,$GRi,$GRj */
3818  {
3819    { 0, 0, 0, 0 },
3820    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3821    & ifmt_ftne, { 0x38100040 }
3822  },
3823/* fteq$pack $FCCi_2,$GRi,$GRj */
3824  {
3825    { 0, 0, 0, 0 },
3826    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3827    & ifmt_ftne, { 0x40100040 }
3828  },
3829/* ftlg$pack $FCCi_2,$GRi,$GRj */
3830  {
3831    { 0, 0, 0, 0 },
3832    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3833    & ifmt_ftne, { 0x30100040 }
3834  },
3835/* ftue$pack $FCCi_2,$GRi,$GRj */
3836  {
3837    { 0, 0, 0, 0 },
3838    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3839    & ifmt_ftne, { 0x48100040 }
3840  },
3841/* ftul$pack $FCCi_2,$GRi,$GRj */
3842  {
3843    { 0, 0, 0, 0 },
3844    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3845    & ifmt_ftne, { 0x28100040 }
3846  },
3847/* ftge$pack $FCCi_2,$GRi,$GRj */
3848  {
3849    { 0, 0, 0, 0 },
3850    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3851    & ifmt_ftne, { 0x50100040 }
3852  },
3853/* ftlt$pack $FCCi_2,$GRi,$GRj */
3854  {
3855    { 0, 0, 0, 0 },
3856    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3857    & ifmt_ftne, { 0x20100040 }
3858  },
3859/* ftuge$pack $FCCi_2,$GRi,$GRj */
3860  {
3861    { 0, 0, 0, 0 },
3862    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3863    & ifmt_ftne, { 0x58100040 }
3864  },
3865/* ftug$pack $FCCi_2,$GRi,$GRj */
3866  {
3867    { 0, 0, 0, 0 },
3868    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3869    & ifmt_ftne, { 0x18100040 }
3870  },
3871/* ftle$pack $FCCi_2,$GRi,$GRj */
3872  {
3873    { 0, 0, 0, 0 },
3874    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3875    & ifmt_ftne, { 0x60100040 }
3876  },
3877/* ftgt$pack $FCCi_2,$GRi,$GRj */
3878  {
3879    { 0, 0, 0, 0 },
3880    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3881    & ifmt_ftne, { 0x10100040 }
3882  },
3883/* ftule$pack $FCCi_2,$GRi,$GRj */
3884  {
3885    { 0, 0, 0, 0 },
3886    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3887    & ifmt_ftne, { 0x68100040 }
3888  },
3889/* ftu$pack $FCCi_2,$GRi,$GRj */
3890  {
3891    { 0, 0, 0, 0 },
3892    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3893    & ifmt_ftne, { 0x8100040 }
3894  },
3895/* fto$pack $FCCi_2,$GRi,$GRj */
3896  {
3897    { 0, 0, 0, 0 },
3898    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3899    & ifmt_ftne, { 0x70100040 }
3900  },
3901/* tira$pack $GRi,$s12 */
3902  {
3903    { 0, 0, 0, 0 },
3904    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), 0 } },
3905    & ifmt_tira, { 0x40700000 }
3906  },
3907/* tino$pack */
3908  {
3909    { 0, 0, 0, 0 },
3910    { { MNEM, OP (PACK), 0 } },
3911    & ifmt_tino, { 0x700000 }
3912  },
3913/* tieq$pack $ICCi_2,$GRi,$s12 */
3914  {
3915    { 0, 0, 0, 0 },
3916    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3917    & ifmt_tieq, { 0x20700000 }
3918  },
3919/* tine$pack $ICCi_2,$GRi,$s12 */
3920  {
3921    { 0, 0, 0, 0 },
3922    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3923    & ifmt_tieq, { 0x60700000 }
3924  },
3925/* tile$pack $ICCi_2,$GRi,$s12 */
3926  {
3927    { 0, 0, 0, 0 },
3928    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3929    & ifmt_tieq, { 0x38700000 }
3930  },
3931/* tigt$pack $ICCi_2,$GRi,$s12 */
3932  {
3933    { 0, 0, 0, 0 },
3934    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3935    & ifmt_tieq, { 0x78700000 }
3936  },
3937/* tilt$pack $ICCi_2,$GRi,$s12 */
3938  {
3939    { 0, 0, 0, 0 },
3940    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3941    & ifmt_tieq, { 0x18700000 }
3942  },
3943/* tige$pack $ICCi_2,$GRi,$s12 */
3944  {
3945    { 0, 0, 0, 0 },
3946    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3947    & ifmt_tieq, { 0x58700000 }
3948  },
3949/* tils$pack $ICCi_2,$GRi,$s12 */
3950  {
3951    { 0, 0, 0, 0 },
3952    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3953    & ifmt_tieq, { 0x28700000 }
3954  },
3955/* tihi$pack $ICCi_2,$GRi,$s12 */
3956  {
3957    { 0, 0, 0, 0 },
3958    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3959    & ifmt_tieq, { 0x68700000 }
3960  },
3961/* tic$pack $ICCi_2,$GRi,$s12 */
3962  {
3963    { 0, 0, 0, 0 },
3964    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3965    & ifmt_tieq, { 0x8700000 }
3966  },
3967/* tinc$pack $ICCi_2,$GRi,$s12 */
3968  {
3969    { 0, 0, 0, 0 },
3970    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3971    & ifmt_tieq, { 0x48700000 }
3972  },
3973/* tin$pack $ICCi_2,$GRi,$s12 */
3974  {
3975    { 0, 0, 0, 0 },
3976    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3977    & ifmt_tieq, { 0x30700000 }
3978  },
3979/* tip$pack $ICCi_2,$GRi,$s12 */
3980  {
3981    { 0, 0, 0, 0 },
3982    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3983    & ifmt_tieq, { 0x70700000 }
3984  },
3985/* tiv$pack $ICCi_2,$GRi,$s12 */
3986  {
3987    { 0, 0, 0, 0 },
3988    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3989    & ifmt_tieq, { 0x10700000 }
3990  },
3991/* tinv$pack $ICCi_2,$GRi,$s12 */
3992  {
3993    { 0, 0, 0, 0 },
3994    { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3995    & ifmt_tieq, { 0x50700000 }
3996  },
3997/* ftira$pack $GRi,$s12 */
3998  {
3999    { 0, 0, 0, 0 },
4000    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), 0 } },
4001    & ifmt_ftira, { 0x78740000 }
4002  },
4003/* ftino$pack */
4004  {
4005    { 0, 0, 0, 0 },
4006    { { MNEM, OP (PACK), 0 } },
4007    & ifmt_ftino, { 0x740000 }
4008  },
4009/* ftine$pack $FCCi_2,$GRi,$s12 */
4010  {
4011    { 0, 0, 0, 0 },
4012    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4013    & ifmt_ftine, { 0x38740000 }
4014  },
4015/* ftieq$pack $FCCi_2,$GRi,$s12 */
4016  {
4017    { 0, 0, 0, 0 },
4018    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4019    & ifmt_ftine, { 0x40740000 }
4020  },
4021/* ftilg$pack $FCCi_2,$GRi,$s12 */
4022  {
4023    { 0, 0, 0, 0 },
4024    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4025    & ifmt_ftine, { 0x30740000 }
4026  },
4027/* ftiue$pack $FCCi_2,$GRi,$s12 */
4028  {
4029    { 0, 0, 0, 0 },
4030    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4031    & ifmt_ftine, { 0x48740000 }
4032  },
4033/* ftiul$pack $FCCi_2,$GRi,$s12 */
4034  {
4035    { 0, 0, 0, 0 },
4036    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4037    & ifmt_ftine, { 0x28740000 }
4038  },
4039/* ftige$pack $FCCi_2,$GRi,$s12 */
4040  {
4041    { 0, 0, 0, 0 },
4042    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4043    & ifmt_ftine, { 0x50740000 }
4044  },
4045/* ftilt$pack $FCCi_2,$GRi,$s12 */
4046  {
4047    { 0, 0, 0, 0 },
4048    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4049    & ifmt_ftine, { 0x20740000 }
4050  },
4051/* ftiuge$pack $FCCi_2,$GRi,$s12 */
4052  {
4053    { 0, 0, 0, 0 },
4054    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4055    & ifmt_ftine, { 0x58740000 }
4056  },
4057/* ftiug$pack $FCCi_2,$GRi,$s12 */
4058  {
4059    { 0, 0, 0, 0 },
4060    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4061    & ifmt_ftine, { 0x18740000 }
4062  },
4063/* ftile$pack $FCCi_2,$GRi,$s12 */
4064  {
4065    { 0, 0, 0, 0 },
4066    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4067    & ifmt_ftine, { 0x60740000 }
4068  },
4069/* ftigt$pack $FCCi_2,$GRi,$s12 */
4070  {
4071    { 0, 0, 0, 0 },
4072    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4073    & ifmt_ftine, { 0x10740000 }
4074  },
4075/* ftiule$pack $FCCi_2,$GRi,$s12 */
4076  {
4077    { 0, 0, 0, 0 },
4078    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4079    & ifmt_ftine, { 0x68740000 }
4080  },
4081/* ftiu$pack $FCCi_2,$GRi,$s12 */
4082  {
4083    { 0, 0, 0, 0 },
4084    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4085    & ifmt_ftine, { 0x8740000 }
4086  },
4087/* ftio$pack $FCCi_2,$GRi,$s12 */
4088  {
4089    { 0, 0, 0, 0 },
4090    { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4091    & ifmt_ftine, { 0x70740000 }
4092  },
4093/* break$pack */
4094  {
4095    { 0, 0, 0, 0 },
4096    { { MNEM, OP (PACK), 0 } },
4097    & ifmt_break, { 0x1000c0 }
4098  },
4099/* mtrap$pack */
4100  {
4101    { 0, 0, 0, 0 },
4102    { { MNEM, OP (PACK), 0 } },
4103    & ifmt_break, { 0x100080 }
4104  },
4105/* andcr$pack $CRi,$CRj,$CRk */
4106  {
4107    { 0, 0, 0, 0 },
4108    { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4109    & ifmt_andcr, { 0x280200 }
4110  },
4111/* orcr$pack $CRi,$CRj,$CRk */
4112  {
4113    { 0, 0, 0, 0 },
4114    { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4115    & ifmt_andcr, { 0x280240 }
4116  },
4117/* xorcr$pack $CRi,$CRj,$CRk */
4118  {
4119    { 0, 0, 0, 0 },
4120    { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4121    & ifmt_andcr, { 0x280280 }
4122  },
4123/* nandcr$pack $CRi,$CRj,$CRk */
4124  {
4125    { 0, 0, 0, 0 },
4126    { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4127    & ifmt_andcr, { 0x280300 }
4128  },
4129/* norcr$pack $CRi,$CRj,$CRk */
4130  {
4131    { 0, 0, 0, 0 },
4132    { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4133    & ifmt_andcr, { 0x280340 }
4134  },
4135/* andncr$pack $CRi,$CRj,$CRk */
4136  {
4137    { 0, 0, 0, 0 },
4138    { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4139    & ifmt_andcr, { 0x280400 }
4140  },
4141/* orncr$pack $CRi,$CRj,$CRk */
4142  {
4143    { 0, 0, 0, 0 },
4144    { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4145    & ifmt_andcr, { 0x280440 }
4146  },
4147/* nandncr$pack $CRi,$CRj,$CRk */
4148  {
4149    { 0, 0, 0, 0 },
4150    { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4151    & ifmt_andcr, { 0x280500 }
4152  },
4153/* norncr$pack $CRi,$CRj,$CRk */
4154  {
4155    { 0, 0, 0, 0 },
4156    { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4157    & ifmt_andcr, { 0x280540 }
4158  },
4159/* notcr$pack $CRj,$CRk */
4160  {
4161    { 0, 0, 0, 0 },
4162    { { MNEM, OP (PACK), ' ', OP (CRJ), ',', OP (CRK), 0 } },
4163    & ifmt_notcr, { 0x2802c0 }
4164  },
4165/* ckra$pack $CRj_int */
4166  {
4167    { 0, 0, 0, 0 },
4168    { { MNEM, OP (PACK), ' ', OP (CRJ_INT), 0 } },
4169    & ifmt_ckra, { 0x40200000 }
4170  },
4171/* ckno$pack $CRj_int */
4172  {
4173    { 0, 0, 0, 0 },
4174    { { MNEM, OP (PACK), ' ', OP (CRJ_INT), 0 } },
4175    & ifmt_ckra, { 0x200000 }
4176  },
4177/* ckeq$pack $ICCi_3,$CRj_int */
4178  {
4179    { 0, 0, 0, 0 },
4180    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4181    & ifmt_ckeq, { 0x20200000 }
4182  },
4183/* ckne$pack $ICCi_3,$CRj_int */
4184  {
4185    { 0, 0, 0, 0 },
4186    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4187    & ifmt_ckeq, { 0x60200000 }
4188  },
4189/* ckle$pack $ICCi_3,$CRj_int */
4190  {
4191    { 0, 0, 0, 0 },
4192    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4193    & ifmt_ckeq, { 0x38200000 }
4194  },
4195/* ckgt$pack $ICCi_3,$CRj_int */
4196  {
4197    { 0, 0, 0, 0 },
4198    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4199    & ifmt_ckeq, { 0x78200000 }
4200  },
4201/* cklt$pack $ICCi_3,$CRj_int */
4202  {
4203    { 0, 0, 0, 0 },
4204    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4205    & ifmt_ckeq, { 0x18200000 }
4206  },
4207/* ckge$pack $ICCi_3,$CRj_int */
4208  {
4209    { 0, 0, 0, 0 },
4210    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4211    & ifmt_ckeq, { 0x58200000 }
4212  },
4213/* ckls$pack $ICCi_3,$CRj_int */
4214  {
4215    { 0, 0, 0, 0 },
4216    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4217    & ifmt_ckeq, { 0x28200000 }
4218  },
4219/* ckhi$pack $ICCi_3,$CRj_int */
4220  {
4221    { 0, 0, 0, 0 },
4222    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4223    & ifmt_ckeq, { 0x68200000 }
4224  },
4225/* ckc$pack $ICCi_3,$CRj_int */
4226  {
4227    { 0, 0, 0, 0 },
4228    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4229    & ifmt_ckeq, { 0x8200000 }
4230  },
4231/* cknc$pack $ICCi_3,$CRj_int */
4232  {
4233    { 0, 0, 0, 0 },
4234    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4235    & ifmt_ckeq, { 0x48200000 }
4236  },
4237/* ckn$pack $ICCi_3,$CRj_int */
4238  {
4239    { 0, 0, 0, 0 },
4240    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4241    & ifmt_ckeq, { 0x30200000 }
4242  },
4243/* ckp$pack $ICCi_3,$CRj_int */
4244  {
4245    { 0, 0, 0, 0 },
4246    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4247    & ifmt_ckeq, { 0x70200000 }
4248  },
4249/* ckv$pack $ICCi_3,$CRj_int */
4250  {
4251    { 0, 0, 0, 0 },
4252    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4253    & ifmt_ckeq, { 0x10200000 }
4254  },
4255/* cknv$pack $ICCi_3,$CRj_int */
4256  {
4257    { 0, 0, 0, 0 },
4258    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4259    & ifmt_ckeq, { 0x50200000 }
4260  },
4261/* fckra$pack $CRj_float */
4262  {
4263    { 0, 0, 0, 0 },
4264    { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), 0 } },
4265    & ifmt_fckra, { 0x78240000 }
4266  },
4267/* fckno$pack $CRj_float */
4268  {
4269    { 0, 0, 0, 0 },
4270    { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), 0 } },
4271    & ifmt_fckra, { 0x240000 }
4272  },
4273/* fckne$pack $FCCi_3,$CRj_float */
4274  {
4275    { 0, 0, 0, 0 },
4276    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4277    & ifmt_fckra, { 0x38240000 }
4278  },
4279/* fckeq$pack $FCCi_3,$CRj_float */
4280  {
4281    { 0, 0, 0, 0 },
4282    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4283    & ifmt_fckra, { 0x40240000 }
4284  },
4285/* fcklg$pack $FCCi_3,$CRj_float */
4286  {
4287    { 0, 0, 0, 0 },
4288    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4289    & ifmt_fckra, { 0x30240000 }
4290  },
4291/* fckue$pack $FCCi_3,$CRj_float */
4292  {
4293    { 0, 0, 0, 0 },
4294    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4295    & ifmt_fckra, { 0x48240000 }
4296  },
4297/* fckul$pack $FCCi_3,$CRj_float */
4298  {
4299    { 0, 0, 0, 0 },
4300    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4301    & ifmt_fckra, { 0x28240000 }
4302  },
4303/* fckge$pack $FCCi_3,$CRj_float */
4304  {
4305    { 0, 0, 0, 0 },
4306    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4307    & ifmt_fckra, { 0x50240000 }
4308  },
4309/* fcklt$pack $FCCi_3,$CRj_float */
4310  {
4311    { 0, 0, 0, 0 },
4312    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4313    & ifmt_fckra, { 0x20240000 }
4314  },
4315/* fckuge$pack $FCCi_3,$CRj_float */
4316  {
4317    { 0, 0, 0, 0 },
4318    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4319    & ifmt_fckra, { 0x58240000 }
4320  },
4321/* fckug$pack $FCCi_3,$CRj_float */
4322  {
4323    { 0, 0, 0, 0 },
4324    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4325    & ifmt_fckra, { 0x18240000 }
4326  },
4327/* fckle$pack $FCCi_3,$CRj_float */
4328  {
4329    { 0, 0, 0, 0 },
4330    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4331    & ifmt_fckra, { 0x60240000 }
4332  },
4333/* fckgt$pack $FCCi_3,$CRj_float */
4334  {
4335    { 0, 0, 0, 0 },
4336    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4337    & ifmt_fckra, { 0x10240000 }
4338  },
4339/* fckule$pack $FCCi_3,$CRj_float */
4340  {
4341    { 0, 0, 0, 0 },
4342    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4343    & ifmt_fckra, { 0x68240000 }
4344  },
4345/* fcku$pack $FCCi_3,$CRj_float */
4346  {
4347    { 0, 0, 0, 0 },
4348    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4349    & ifmt_fckra, { 0x8240000 }
4350  },
4351/* fcko$pack $FCCi_3,$CRj_float */
4352  {
4353    { 0, 0, 0, 0 },
4354    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4355    & ifmt_fckra, { 0x70240000 }
4356  },
4357/* cckra$pack $CRj_int,$CCi,$cond */
4358  {
4359    { 0, 0, 0, 0 },
4360    { { MNEM, OP (PACK), ' ', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4361    & ifmt_cckra, { 0x41a80000 }
4362  },
4363/* cckno$pack $CRj_int,$CCi,$cond */
4364  {
4365    { 0, 0, 0, 0 },
4366    { { MNEM, OP (PACK), ' ', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4367    & ifmt_cckra, { 0x1a80000 }
4368  },
4369/* cckeq$pack $ICCi_3,$CRj_int,$CCi,$cond */
4370  {
4371    { 0, 0, 0, 0 },
4372    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4373    & ifmt_cckeq, { 0x21a80000 }
4374  },
4375/* cckne$pack $ICCi_3,$CRj_int,$CCi,$cond */
4376  {
4377    { 0, 0, 0, 0 },
4378    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4379    & ifmt_cckeq, { 0x61a80000 }
4380  },
4381/* cckle$pack $ICCi_3,$CRj_int,$CCi,$cond */
4382  {
4383    { 0, 0, 0, 0 },
4384    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4385    & ifmt_cckeq, { 0x39a80000 }
4386  },
4387/* cckgt$pack $ICCi_3,$CRj_int,$CCi,$cond */
4388  {
4389    { 0, 0, 0, 0 },
4390    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4391    & ifmt_cckeq, { 0x79a80000 }
4392  },
4393/* ccklt$pack $ICCi_3,$CRj_int,$CCi,$cond */
4394  {
4395    { 0, 0, 0, 0 },
4396    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4397    & ifmt_cckeq, { 0x19a80000 }
4398  },
4399/* cckge$pack $ICCi_3,$CRj_int,$CCi,$cond */
4400  {
4401    { 0, 0, 0, 0 },
4402    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4403    & ifmt_cckeq, { 0x59a80000 }
4404  },
4405/* cckls$pack $ICCi_3,$CRj_int,$CCi,$cond */
4406  {
4407    { 0, 0, 0, 0 },
4408    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4409    & ifmt_cckeq, { 0x29a80000 }
4410  },
4411/* cckhi$pack $ICCi_3,$CRj_int,$CCi,$cond */
4412  {
4413    { 0, 0, 0, 0 },
4414    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4415    & ifmt_cckeq, { 0x69a80000 }
4416  },
4417/* cckc$pack $ICCi_3,$CRj_int,$CCi,$cond */
4418  {
4419    { 0, 0, 0, 0 },
4420    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4421    & ifmt_cckeq, { 0x9a80000 }
4422  },
4423/* ccknc$pack $ICCi_3,$CRj_int,$CCi,$cond */
4424  {
4425    { 0, 0, 0, 0 },
4426    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4427    & ifmt_cckeq, { 0x49a80000 }
4428  },
4429/* cckn$pack $ICCi_3,$CRj_int,$CCi,$cond */
4430  {
4431    { 0, 0, 0, 0 },
4432    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4433    & ifmt_cckeq, { 0x31a80000 }
4434  },
4435/* cckp$pack $ICCi_3,$CRj_int,$CCi,$cond */
4436  {
4437    { 0, 0, 0, 0 },
4438    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4439    & ifmt_cckeq, { 0x71a80000 }
4440  },
4441/* cckv$pack $ICCi_3,$CRj_int,$CCi,$cond */
4442  {
4443    { 0, 0, 0, 0 },
4444    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4445    & ifmt_cckeq, { 0x11a80000 }
4446  },
4447/* ccknv$pack $ICCi_3,$CRj_int,$CCi,$cond */
4448  {
4449    { 0, 0, 0, 0 },
4450    { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4451    & ifmt_cckeq, { 0x51a80000 }
4452  },
4453/* cfckra$pack $CRj_float,$CCi,$cond */
4454  {
4455    { 0, 0, 0, 0 },
4456    { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4457    & ifmt_cfckra, { 0x79a80040 }
4458  },
4459/* cfckno$pack $CRj_float,$CCi,$cond */
4460  {
4461    { 0, 0, 0, 0 },
4462    { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4463    & ifmt_cfckra, { 0x1a80040 }
4464  },
4465/* cfckne$pack $FCCi_3,$CRj_float,$CCi,$cond */
4466  {
4467    { 0, 0, 0, 0 },
4468    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4469    & ifmt_cfckne, { 0x39a80040 }
4470  },
4471/* cfckeq$pack $FCCi_3,$CRj_float,$CCi,$cond */
4472  {
4473    { 0, 0, 0, 0 },
4474    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4475    & ifmt_cfckne, { 0x41a80040 }
4476  },
4477/* cfcklg$pack $FCCi_3,$CRj_float,$CCi,$cond */
4478  {
4479    { 0, 0, 0, 0 },
4480    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4481    & ifmt_cfckne, { 0x31a80040 }
4482  },
4483/* cfckue$pack $FCCi_3,$CRj_float,$CCi,$cond */
4484  {
4485    { 0, 0, 0, 0 },
4486    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4487    & ifmt_cfckne, { 0x49a80040 }
4488  },
4489/* cfckul$pack $FCCi_3,$CRj_float,$CCi,$cond */
4490  {
4491    { 0, 0, 0, 0 },
4492    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4493    & ifmt_cfckne, { 0x29a80040 }
4494  },
4495/* cfckge$pack $FCCi_3,$CRj_float,$CCi,$cond */
4496  {
4497    { 0, 0, 0, 0 },
4498    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4499    & ifmt_cfckne, { 0x51a80040 }
4500  },
4501/* cfcklt$pack $FCCi_3,$CRj_float,$CCi,$cond */
4502  {
4503    { 0, 0, 0, 0 },
4504    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4505    & ifmt_cfckne, { 0x21a80040 }
4506  },
4507/* cfckuge$pack $FCCi_3,$CRj_float,$CCi,$cond */
4508  {
4509    { 0, 0, 0, 0 },
4510    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4511    & ifmt_cfckne, { 0x59a80040 }
4512  },
4513/* cfckug$pack $FCCi_3,$CRj_float,$CCi,$cond */
4514  {
4515    { 0, 0, 0, 0 },
4516    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4517    & ifmt_cfckne, { 0x19a80040 }
4518  },
4519/* cfckle$pack $FCCi_3,$CRj_float,$CCi,$cond */
4520  {
4521    { 0, 0, 0, 0 },
4522    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4523    & ifmt_cfckne, { 0x61a80040 }
4524  },
4525/* cfckgt$pack $FCCi_3,$CRj_float,$CCi,$cond */
4526  {
4527    { 0, 0, 0, 0 },
4528    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4529    & ifmt_cfckne, { 0x11a80040 }
4530  },
4531/* cfckule$pack $FCCi_3,$CRj_float,$CCi,$cond */
4532  {
4533    { 0, 0, 0, 0 },
4534    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4535    & ifmt_cfckne, { 0x69a80040 }
4536  },
4537/* cfcku$pack $FCCi_3,$CRj_float,$CCi,$cond */
4538  {
4539    { 0, 0, 0, 0 },
4540    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4541    & ifmt_cfckne, { 0x9a80040 }
4542  },
4543/* cfcko$pack $FCCi_3,$CRj_float,$CCi,$cond */
4544  {
4545    { 0, 0, 0, 0 },
4546    { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4547    & ifmt_cfckne, { 0x71a80040 }
4548  },
4549/* cjmpl$pack @($GRi,$GRj),$CCi,$cond */
4550  {
4551    { 0, 0, 0, 0 },
4552    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
4553    & ifmt_cjmpl, { 0x1a80080 }
4554  },
4555/* ccalll$pack @($GRi,$GRj),$CCi,$cond */
4556  {
4557    { 0, 0, 0, 0 },
4558    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
4559    & ifmt_ccalll, { 0x3a80080 }
4560  },
4561/* ici$pack @($GRi,$GRj) */
4562  {
4563    { 0, 0, 0, 0 },
4564    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4565    & ifmt_smu, { 0xc0e00 }
4566  },
4567/* dci$pack @($GRi,$GRj) */
4568  {
4569    { 0, 0, 0, 0 },
4570    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4571    & ifmt_smu, { 0xc0f00 }
4572  },
4573/* icei$pack @($GRi,$GRj),$ae */
4574  {
4575    { 0, 0, 0, 0 },
4576    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (AE), 0 } },
4577    & ifmt_icei, { 0xc0e40 }
4578  },
4579/* dcei$pack @($GRi,$GRj),$ae */
4580  {
4581    { 0, 0, 0, 0 },
4582    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (AE), 0 } },
4583    & ifmt_icei, { 0xc0e80 }
4584  },
4585/* dcf$pack @($GRi,$GRj) */
4586  {
4587    { 0, 0, 0, 0 },
4588    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4589    & ifmt_smu, { 0xc0f40 }
4590  },
4591/* dcef$pack @($GRi,$GRj),$ae */
4592  {
4593    { 0, 0, 0, 0 },
4594    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (AE), 0 } },
4595    & ifmt_icei, { 0xc0ec0 }
4596  },
4597/* witlb$pack $GRk,@($GRi,$GRj) */
4598  {
4599    { 0, 0, 0, 0 },
4600    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4601    & ifmt_slass, { 0xc0c80 }
4602  },
4603/* wdtlb$pack $GRk,@($GRi,$GRj) */
4604  {
4605    { 0, 0, 0, 0 },
4606    { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4607    & ifmt_slass, { 0xc0d80 }
4608  },
4609/* itlbi$pack @($GRi,$GRj) */
4610  {
4611    { 0, 0, 0, 0 },
4612    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4613    & ifmt_smu, { 0xc0cc0 }
4614  },
4615/* dtlbi$pack @($GRi,$GRj) */
4616  {
4617    { 0, 0, 0, 0 },
4618    { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4619    & ifmt_smu, { 0xc0dc0 }
4620  },
4621/* icpl$pack $GRi,$GRj,$lock */
4622  {
4623    { 0, 0, 0, 0 },
4624    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (LOCK), 0 } },
4625    & ifmt_icpl, { 0xc0c00 }
4626  },
4627/* dcpl$pack $GRi,$GRj,$lock */
4628  {
4629    { 0, 0, 0, 0 },
4630    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (LOCK), 0 } },
4631    & ifmt_icpl, { 0xc0d00 }
4632  },
4633/* icul$pack $GRi */
4634  {
4635    { 0, 0, 0, 0 },
4636    { { MNEM, OP (PACK), ' ', OP (GRI), 0 } },
4637    & ifmt_icul, { 0xc0c40 }
4638  },
4639/* dcul$pack $GRi */
4640  {
4641    { 0, 0, 0, 0 },
4642    { { MNEM, OP (PACK), ' ', OP (GRI), 0 } },
4643    & ifmt_icul, { 0xc0d40 }
4644  },
4645/* bar$pack */
4646  {
4647    { 0, 0, 0, 0 },
4648    { { MNEM, OP (PACK), 0 } },
4649    & ifmt_bar, { 0xc0f80 }
4650  },
4651/* membar$pack */
4652  {
4653    { 0, 0, 0, 0 },
4654    { { MNEM, OP (PACK), 0 } },
4655    & ifmt_bar, { 0xc0fc0 }
4656  },
4657/* lrai$pack $GRi,$GRk,$LRAE,$LRAD,$LRAS */
4658  {
4659    { 0, 0, 0, 0 },
4660    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), ',', OP (LRAE), ',', OP (LRAD), ',', OP (LRAS), 0 } },
4661    & ifmt_lrai, { 0xc0800 }
4662  },
4663/* lrad$pack $GRi,$GRk,$LRAE,$LRAD,$LRAS */
4664  {
4665    { 0, 0, 0, 0 },
4666    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), ',', OP (LRAE), ',', OP (LRAD), ',', OP (LRAS), 0 } },
4667    & ifmt_lrai, { 0xc0840 }
4668  },
4669/* tlbpr$pack $GRi,$GRj,$TLBPRopx,$TLBPRL */
4670  {
4671    { 0, 0, 0, 0 },
4672    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (TLBPROPX), ',', OP (TLBPRL), 0 } },
4673    & ifmt_tlbpr, { 0xc0900 }
4674  },
4675/* cop1$pack $s6_1,$CPRi,$CPRj,$CPRk */
4676  {
4677    { 0, 0, 0, 0 },
4678    { { MNEM, OP (PACK), ' ', OP (S6_1), ',', OP (CPRI), ',', OP (CPRJ), ',', OP (CPRK), 0 } },
4679    & ifmt_cop1, { 0x1f80000 }
4680  },
4681/* cop2$pack $s6_1,$CPRi,$CPRj,$CPRk */
4682  {
4683    { 0, 0, 0, 0 },
4684    { { MNEM, OP (PACK), ' ', OP (S6_1), ',', OP (CPRI), ',', OP (CPRJ), ',', OP (CPRK), 0 } },
4685    & ifmt_cop1, { 0x1fc0000 }
4686  },
4687/* clrgr$pack $GRk */
4688  {
4689    { 0, 0, 0, 0 },
4690    { { MNEM, OP (PACK), ' ', OP (GRK), 0 } },
4691    & ifmt_clrgr, { 0x280000 }
4692  },
4693/* clrfr$pack $FRk */
4694  {
4695    { 0, 0, 0, 0 },
4696    { { MNEM, OP (PACK), ' ', OP (FRK), 0 } },
4697    & ifmt_clrfr, { 0x280080 }
4698  },
4699/* clrga$pack */
4700  {
4701    { 0, 0, 0, 0 },
4702    { { MNEM, OP (PACK), 0 } },
4703    & ifmt_bar, { 0x280040 }
4704  },
4705/* clrfa$pack */
4706  {
4707    { 0, 0, 0, 0 },
4708    { { MNEM, OP (PACK), 0 } },
4709    & ifmt_bar, { 0x2800c0 }
4710  },
4711/* commitgr$pack $GRk */
4712  {
4713    { 0, 0, 0, 0 },
4714    { { MNEM, OP (PACK), ' ', OP (GRK), 0 } },
4715    & ifmt_clrgr, { 0x280100 }
4716  },
4717/* commitfr$pack $FRk */
4718  {
4719    { 0, 0, 0, 0 },
4720    { { MNEM, OP (PACK), ' ', OP (FRK), 0 } },
4721    & ifmt_clrfr, { 0x280180 }
4722  },
4723/* commitga$pack */
4724  {
4725    { 0, 0, 0, 0 },
4726    { { MNEM, OP (PACK), 0 } },
4727    & ifmt_bar, { 0x280140 }
4728  },
4729/* commitfa$pack */
4730  {
4731    { 0, 0, 0, 0 },
4732    { { MNEM, OP (PACK), 0 } },
4733    & ifmt_bar, { 0x2801c0 }
4734  },
4735/* fitos$pack $FRintj,$FRk */
4736  {
4737    { 0, 0, 0, 0 },
4738    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4739    & ifmt_fitos, { 0x1e40000 }
4740  },
4741/* fstoi$pack $FRj,$FRintk */
4742  {
4743    { 0, 0, 0, 0 },
4744    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4745    & ifmt_fstoi, { 0x1e40040 }
4746  },
4747/* fitod$pack $FRintj,$FRdoublek */
4748  {
4749    { 0, 0, 0, 0 },
4750    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRDOUBLEK), 0 } },
4751    & ifmt_fitod, { 0x1e80000 }
4752  },
4753/* fdtoi$pack $FRdoublej,$FRintk */
4754  {
4755    { 0, 0, 0, 0 },
4756    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRINTK), 0 } },
4757    & ifmt_fdtoi, { 0x1e80040 }
4758  },
4759/* fditos$pack $FRintj,$FRk */
4760  {
4761    { 0, 0, 0, 0 },
4762    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4763    & ifmt_fitos, { 0x1e40400 }
4764  },
4765/* fdstoi$pack $FRj,$FRintk */
4766  {
4767    { 0, 0, 0, 0 },
4768    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4769    & ifmt_fstoi, { 0x1e40440 }
4770  },
4771/* nfditos$pack $FRintj,$FRk */
4772  {
4773    { 0, 0, 0, 0 },
4774    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4775    & ifmt_fitos, { 0x1e40c00 }
4776  },
4777/* nfdstoi$pack $FRj,$FRintk */
4778  {
4779    { 0, 0, 0, 0 },
4780    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4781    & ifmt_fstoi, { 0x1e40c40 }
4782  },
4783/* cfitos$pack $FRintj,$FRk,$CCi,$cond */
4784  {
4785    { 0, 0, 0, 0 },
4786    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4787    & ifmt_cfitos, { 0x1ac0000 }
4788  },
4789/* cfstoi$pack $FRj,$FRintk,$CCi,$cond */
4790  {
4791    { 0, 0, 0, 0 },
4792    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
4793    & ifmt_cfstoi, { 0x1ac0040 }
4794  },
4795/* nfitos$pack $FRintj,$FRk */
4796  {
4797    { 0, 0, 0, 0 },
4798    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4799    & ifmt_fitos, { 0x1e40800 }
4800  },
4801/* nfstoi$pack $FRj,$FRintk */
4802  {
4803    { 0, 0, 0, 0 },
4804    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4805    & ifmt_fstoi, { 0x1e40840 }
4806  },
4807/* fmovs$pack $FRj,$FRk */
4808  {
4809    { 0, 0, 0, 0 },
4810    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4811    & ifmt_fmovs, { 0x1e40080 }
4812  },
4813/* fmovd$pack $FRdoublej,$FRdoublek */
4814  {
4815    { 0, 0, 0, 0 },
4816    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4817    & ifmt_fmovd, { 0x1e80080 }
4818  },
4819/* fdmovs$pack $FRj,$FRk */
4820  {
4821    { 0, 0, 0, 0 },
4822    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4823    & ifmt_fmovs, { 0x1e40480 }
4824  },
4825/* cfmovs$pack $FRj,$FRk,$CCi,$cond */
4826  {
4827    { 0, 0, 0, 0 },
4828    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4829    & ifmt_cfmovs, { 0x1b00000 }
4830  },
4831/* fnegs$pack $FRj,$FRk */
4832  {
4833    { 0, 0, 0, 0 },
4834    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4835    & ifmt_fmovs, { 0x1e400c0 }
4836  },
4837/* fnegd$pack $FRdoublej,$FRdoublek */
4838  {
4839    { 0, 0, 0, 0 },
4840    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4841    & ifmt_fmovd, { 0x1e800c0 }
4842  },
4843/* fdnegs$pack $FRj,$FRk */
4844  {
4845    { 0, 0, 0, 0 },
4846    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4847    & ifmt_fmovs, { 0x1e404c0 }
4848  },
4849/* cfnegs$pack $FRj,$FRk,$CCi,$cond */
4850  {
4851    { 0, 0, 0, 0 },
4852    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4853    & ifmt_cfmovs, { 0x1b00040 }
4854  },
4855/* fabss$pack $FRj,$FRk */
4856  {
4857    { 0, 0, 0, 0 },
4858    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4859    & ifmt_fmovs, { 0x1e40100 }
4860  },
4861/* fabsd$pack $FRdoublej,$FRdoublek */
4862  {
4863    { 0, 0, 0, 0 },
4864    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4865    & ifmt_fmovd, { 0x1e80100 }
4866  },
4867/* fdabss$pack $FRj,$FRk */
4868  {
4869    { 0, 0, 0, 0 },
4870    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4871    & ifmt_fmovs, { 0x1e40500 }
4872  },
4873/* cfabss$pack $FRj,$FRk,$CCi,$cond */
4874  {
4875    { 0, 0, 0, 0 },
4876    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4877    & ifmt_cfmovs, { 0x1b00080 }
4878  },
4879/* fsqrts$pack $FRj,$FRk */
4880  {
4881    { 0, 0, 0, 0 },
4882    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4883    & ifmt_fmovs, { 0x1e40140 }
4884  },
4885/* fdsqrts$pack $FRj,$FRk */
4886  {
4887    { 0, 0, 0, 0 },
4888    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4889    & ifmt_fmovs, { 0x1e40540 }
4890  },
4891/* nfdsqrts$pack $FRj,$FRk */
4892  {
4893    { 0, 0, 0, 0 },
4894    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4895    & ifmt_fmovs, { 0x1e40d40 }
4896  },
4897/* fsqrtd$pack $FRdoublej,$FRdoublek */
4898  {
4899    { 0, 0, 0, 0 },
4900    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4901    & ifmt_fmovd, { 0x1e80140 }
4902  },
4903/* cfsqrts$pack $FRj,$FRk,$CCi,$cond */
4904  {
4905    { 0, 0, 0, 0 },
4906    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4907    & ifmt_cfmovs, { 0x1b80080 }
4908  },
4909/* nfsqrts$pack $FRj,$FRk */
4910  {
4911    { 0, 0, 0, 0 },
4912    { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4913    & ifmt_fmovs, { 0x1e40940 }
4914  },
4915/* fadds$pack $FRi,$FRj,$FRk */
4916  {
4917    { 0, 0, 0, 0 },
4918    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4919    & ifmt_fadds, { 0x1e40180 }
4920  },
4921/* fsubs$pack $FRi,$FRj,$FRk */
4922  {
4923    { 0, 0, 0, 0 },
4924    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4925    & ifmt_fadds, { 0x1e401c0 }
4926  },
4927/* fmuls$pack $FRi,$FRj,$FRk */
4928  {
4929    { 0, 0, 0, 0 },
4930    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4931    & ifmt_fadds, { 0x1e40200 }
4932  },
4933/* fdivs$pack $FRi,$FRj,$FRk */
4934  {
4935    { 0, 0, 0, 0 },
4936    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4937    & ifmt_fadds, { 0x1e40240 }
4938  },
4939/* faddd$pack $FRdoublei,$FRdoublej,$FRdoublek */
4940  {
4941    { 0, 0, 0, 0 },
4942    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4943    & ifmt_faddd, { 0x1e80180 }
4944  },
4945/* fsubd$pack $FRdoublei,$FRdoublej,$FRdoublek */
4946  {
4947    { 0, 0, 0, 0 },
4948    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4949    & ifmt_faddd, { 0x1e801c0 }
4950  },
4951/* fmuld$pack $FRdoublei,$FRdoublej,$FRdoublek */
4952  {
4953    { 0, 0, 0, 0 },
4954    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4955    & ifmt_faddd, { 0x1e80200 }
4956  },
4957/* fdivd$pack $FRdoublei,$FRdoublej,$FRdoublek */
4958  {
4959    { 0, 0, 0, 0 },
4960    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4961    & ifmt_faddd, { 0x1e80240 }
4962  },
4963/* cfadds$pack $FRi,$FRj,$FRk,$CCi,$cond */
4964  {
4965    { 0, 0, 0, 0 },
4966    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4967    & ifmt_cfadds, { 0x1b40000 }
4968  },
4969/* cfsubs$pack $FRi,$FRj,$FRk,$CCi,$cond */
4970  {
4971    { 0, 0, 0, 0 },
4972    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4973    & ifmt_cfadds, { 0x1b40040 }
4974  },
4975/* cfmuls$pack $FRi,$FRj,$FRk,$CCi,$cond */
4976  {
4977    { 0, 0, 0, 0 },
4978    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4979    & ifmt_cfadds, { 0x1b80000 }
4980  },
4981/* cfdivs$pack $FRi,$FRj,$FRk,$CCi,$cond */
4982  {
4983    { 0, 0, 0, 0 },
4984    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4985    & ifmt_cfadds, { 0x1b80040 }
4986  },
4987/* nfadds$pack $FRi,$FRj,$FRk */
4988  {
4989    { 0, 0, 0, 0 },
4990    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4991    & ifmt_fadds, { 0x1e40980 }
4992  },
4993/* nfsubs$pack $FRi,$FRj,$FRk */
4994  {
4995    { 0, 0, 0, 0 },
4996    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4997    & ifmt_fadds, { 0x1e409c0 }
4998  },
4999/* nfmuls$pack $FRi,$FRj,$FRk */
5000  {
5001    { 0, 0, 0, 0 },
5002    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5003    & ifmt_fadds, { 0x1e40a00 }
5004  },
5005/* nfdivs$pack $FRi,$FRj,$FRk */
5006  {
5007    { 0, 0, 0, 0 },
5008    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5009    & ifmt_fadds, { 0x1e40a40 }
5010  },
5011/* fcmps$pack $FRi,$FRj,$FCCi_2 */
5012  {
5013    { 0, 0, 0, 0 },
5014    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), 0 } },
5015    & ifmt_fcmps, { 0x1e40280 }
5016  },
5017/* fcmpd$pack $FRdoublei,$FRdoublej,$FCCi_2 */
5018  {
5019    { 0, 0, 0, 0 },
5020    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FCCI_2), 0 } },
5021    & ifmt_fcmpd, { 0x1e80280 }
5022  },
5023/* cfcmps$pack $FRi,$FRj,$FCCi_2,$CCi,$cond */
5024  {
5025    { 0, 0, 0, 0 },
5026    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), ',', OP (CCI), ',', OP (COND), 0 } },
5027    & ifmt_cfcmps, { 0x1b40080 }
5028  },
5029/* fdcmps$pack $FRi,$FRj,$FCCi_2 */
5030  {
5031    { 0, 0, 0, 0 },
5032    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), 0 } },
5033    & ifmt_fcmps, { 0x1e40680 }
5034  },
5035/* fmadds$pack $FRi,$FRj,$FRk */
5036  {
5037    { 0, 0, 0, 0 },
5038    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5039    & ifmt_fadds, { 0x1e402c0 }
5040  },
5041/* fmsubs$pack $FRi,$FRj,$FRk */
5042  {
5043    { 0, 0, 0, 0 },
5044    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5045    & ifmt_fadds, { 0x1e40300 }
5046  },
5047/* fmaddd$pack $FRdoublei,$FRdoublej,$FRdoublek */
5048  {
5049    { 0, 0, 0, 0 },
5050    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
5051    & ifmt_faddd, { 0x1e802c0 }
5052  },
5053/* fmsubd$pack $FRdoublei,$FRdoublej,$FRdoublek */
5054  {
5055    { 0, 0, 0, 0 },
5056    { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
5057    & ifmt_faddd, { 0x1e80300 }
5058  },
5059/* fdmadds$pack $FRi,$FRj,$FRk */
5060  {
5061    { 0, 0, 0, 0 },
5062    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5063    & ifmt_fadds, { 0x1e406c0 }
5064  },
5065/* nfdmadds$pack $FRi,$FRj,$FRk */
5066  {
5067    { 0, 0, 0, 0 },
5068    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5069    & ifmt_fadds, { 0x1e40ec0 }
5070  },
5071/* cfmadds$pack $FRi,$FRj,$FRk,$CCi,$cond */
5072  {
5073    { 0, 0, 0, 0 },
5074    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5075    & ifmt_cfadds, { 0x1bc0000 }
5076  },
5077/* cfmsubs$pack $FRi,$FRj,$FRk,$CCi,$cond */
5078  {
5079    { 0, 0, 0, 0 },
5080    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5081    & ifmt_cfadds, { 0x1bc0040 }
5082  },
5083/* nfmadds$pack $FRi,$FRj,$FRk */
5084  {
5085    { 0, 0, 0, 0 },
5086    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5087    & ifmt_fadds, { 0x1e40ac0 }
5088  },
5089/* nfmsubs$pack $FRi,$FRj,$FRk */
5090  {
5091    { 0, 0, 0, 0 },
5092    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5093    & ifmt_fadds, { 0x1e40b00 }
5094  },
5095/* fmas$pack $FRi,$FRj,$FRk */
5096  {
5097    { 0, 0, 0, 0 },
5098    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5099    & ifmt_fadds, { 0x1e40380 }
5100  },
5101/* fmss$pack $FRi,$FRj,$FRk */
5102  {
5103    { 0, 0, 0, 0 },
5104    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5105    & ifmt_fadds, { 0x1e403c0 }
5106  },
5107/* fdmas$pack $FRi,$FRj,$FRk */
5108  {
5109    { 0, 0, 0, 0 },
5110    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5111    & ifmt_fadds, { 0x1e40700 }
5112  },
5113/* fdmss$pack $FRi,$FRj,$FRk */
5114  {
5115    { 0, 0, 0, 0 },
5116    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5117    & ifmt_fadds, { 0x1e40740 }
5118  },
5119/* nfdmas$pack $FRi,$FRj,$FRk */
5120  {
5121    { 0, 0, 0, 0 },
5122    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5123    & ifmt_fadds, { 0x1e40f00 }
5124  },
5125/* nfdmss$pack $FRi,$FRj,$FRk */
5126  {
5127    { 0, 0, 0, 0 },
5128    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5129    & ifmt_fadds, { 0x1e40f40 }
5130  },
5131/* cfmas$pack $FRi,$FRj,$FRk,$CCi,$cond */
5132  {
5133    { 0, 0, 0, 0 },
5134    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5135    & ifmt_cfadds, { 0x1bc0080 }
5136  },
5137/* cfmss$pack $FRi,$FRj,$FRk,$CCi,$cond */
5138  {
5139    { 0, 0, 0, 0 },
5140    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5141    & ifmt_cfadds, { 0x1bc00c0 }
5142  },
5143/* fmad$pack $FRi,$FRj,$FRk */
5144  {
5145    { 0, 0, 0, 0 },
5146    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5147    & ifmt_fadds, { 0x1e80380 }
5148  },
5149/* fmsd$pack $FRi,$FRj,$FRk */
5150  {
5151    { 0, 0, 0, 0 },
5152    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5153    & ifmt_fadds, { 0x1e803c0 }
5154  },
5155/* nfmas$pack $FRi,$FRj,$FRk */
5156  {
5157    { 0, 0, 0, 0 },
5158    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5159    & ifmt_fadds, { 0x1e40b80 }
5160  },
5161/* nfmss$pack $FRi,$FRj,$FRk */
5162  {
5163    { 0, 0, 0, 0 },
5164    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5165    & ifmt_fadds, { 0x1e40bc0 }
5166  },
5167/* fdadds$pack $FRi,$FRj,$FRk */
5168  {
5169    { 0, 0, 0, 0 },
5170    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5171    & ifmt_fadds, { 0x1e40580 }
5172  },
5173/* fdsubs$pack $FRi,$FRj,$FRk */
5174  {
5175    { 0, 0, 0, 0 },
5176    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5177    & ifmt_fadds, { 0x1e405c0 }
5178  },
5179/* fdmuls$pack $FRi,$FRj,$FRk */
5180  {
5181    { 0, 0, 0, 0 },
5182    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5183    & ifmt_fadds, { 0x1e40600 }
5184  },
5185/* fddivs$pack $FRi,$FRj,$FRk */
5186  {
5187    { 0, 0, 0, 0 },
5188    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5189    & ifmt_fadds, { 0x1e40640 }
5190  },
5191/* fdsads$pack $FRi,$FRj,$FRk */
5192  {
5193    { 0, 0, 0, 0 },
5194    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5195    & ifmt_fadds, { 0x1e40780 }
5196  },
5197/* fdmulcs$pack $FRi,$FRj,$FRk */
5198  {
5199    { 0, 0, 0, 0 },
5200    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5201    & ifmt_fadds, { 0x1e407c0 }
5202  },
5203/* nfdmulcs$pack $FRi,$FRj,$FRk */
5204  {
5205    { 0, 0, 0, 0 },
5206    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5207    & ifmt_fadds, { 0x1e40fc0 }
5208  },
5209/* nfdadds$pack $FRi,$FRj,$FRk */
5210  {
5211    { 0, 0, 0, 0 },
5212    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5213    & ifmt_fadds, { 0x1e40d80 }
5214  },
5215/* nfdsubs$pack $FRi,$FRj,$FRk */
5216  {
5217    { 0, 0, 0, 0 },
5218    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5219    & ifmt_fadds, { 0x1e40dc0 }
5220  },
5221/* nfdmuls$pack $FRi,$FRj,$FRk */
5222  {
5223    { 0, 0, 0, 0 },
5224    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5225    & ifmt_fadds, { 0x1e40e00 }
5226  },
5227/* nfddivs$pack $FRi,$FRj,$FRk */
5228  {
5229    { 0, 0, 0, 0 },
5230    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5231    & ifmt_fadds, { 0x1e40e40 }
5232  },
5233/* nfdsads$pack $FRi,$FRj,$FRk */
5234  {
5235    { 0, 0, 0, 0 },
5236    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5237    & ifmt_fadds, { 0x1e40f80 }
5238  },
5239/* nfdcmps$pack $FRi,$FRj,$FCCi_2 */
5240  {
5241    { 0, 0, 0, 0 },
5242    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), 0 } },
5243    & ifmt_fcmps, { 0x1e40e80 }
5244  },
5245/* mhsetlos$pack $u12,$FRklo */
5246  {
5247    { 0, 0, 0, 0 },
5248    { { MNEM, OP (PACK), ' ', OP (U12), ',', OP (FRKLO), 0 } },
5249    & ifmt_mhsetlos, { 0x1e00800 }
5250  },
5251/* mhsethis$pack $u12,$FRkhi */
5252  {
5253    { 0, 0, 0, 0 },
5254    { { MNEM, OP (PACK), ' ', OP (U12), ',', OP (FRKHI), 0 } },
5255    & ifmt_mhsethis, { 0x1e00880 }
5256  },
5257/* mhdsets$pack $u12,$FRintk */
5258  {
5259    { 0, 0, 0, 0 },
5260    { { MNEM, OP (PACK), ' ', OP (U12), ',', OP (FRINTK), 0 } },
5261    & ifmt_mhdsets, { 0x1e00900 }
5262  },
5263/* mhsetloh$pack $s5,$FRklo */
5264  {
5265    { 0, 0, 0, 0 },
5266    { { MNEM, OP (PACK), ' ', OP (S5), ',', OP (FRKLO), 0 } },
5267    & ifmt_mhsetloh, { 0x1e00840 }
5268  },
5269/* mhsethih$pack $s5,$FRkhi */
5270  {
5271    { 0, 0, 0, 0 },
5272    { { MNEM, OP (PACK), ' ', OP (S5), ',', OP (FRKHI), 0 } },
5273    & ifmt_mhsethih, { 0x1e008c0 }
5274  },
5275/* mhdseth$pack $s5,$FRintk */
5276  {
5277    { 0, 0, 0, 0 },
5278    { { MNEM, OP (PACK), ' ', OP (S5), ',', OP (FRINTK), 0 } },
5279    & ifmt_mhdseth, { 0x1e00940 }
5280  },
5281/* mand$pack $FRinti,$FRintj,$FRintk */
5282  {
5283    { 0, 0, 0, 0 },
5284    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5285    & ifmt_mand, { 0x1ec0000 }
5286  },
5287/* mor$pack $FRinti,$FRintj,$FRintk */
5288  {
5289    { 0, 0, 0, 0 },
5290    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5291    & ifmt_mand, { 0x1ec0040 }
5292  },
5293/* mxor$pack $FRinti,$FRintj,$FRintk */
5294  {
5295    { 0, 0, 0, 0 },
5296    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5297    & ifmt_mand, { 0x1ec0080 }
5298  },
5299/* cmand$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5300  {
5301    { 0, 0, 0, 0 },
5302    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5303    & ifmt_cmand, { 0x1c00000 }
5304  },
5305/* cmor$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5306  {
5307    { 0, 0, 0, 0 },
5308    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5309    & ifmt_cmand, { 0x1c00040 }
5310  },
5311/* cmxor$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5312  {
5313    { 0, 0, 0, 0 },
5314    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5315    & ifmt_cmand, { 0x1c00080 }
5316  },
5317/* mnot$pack $FRintj,$FRintk */
5318  {
5319    { 0, 0, 0, 0 },
5320    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5321    & ifmt_mnot, { 0x1ec00c0 }
5322  },
5323/* cmnot$pack $FRintj,$FRintk,$CCi,$cond */
5324  {
5325    { 0, 0, 0, 0 },
5326    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5327    & ifmt_cmnot, { 0x1c000c0 }
5328  },
5329/* mrotli$pack $FRinti,$u6,$FRintk */
5330  {
5331    { 0, 0, 0, 0 },
5332    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5333    & ifmt_mrotli, { 0x1ec0100 }
5334  },
5335/* mrotri$pack $FRinti,$u6,$FRintk */
5336  {
5337    { 0, 0, 0, 0 },
5338    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5339    & ifmt_mrotli, { 0x1ec0140 }
5340  },
5341/* mwcut$pack $FRinti,$FRintj,$FRintk */
5342  {
5343    { 0, 0, 0, 0 },
5344    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5345    & ifmt_mand, { 0x1ec0180 }
5346  },
5347/* mwcuti$pack $FRinti,$u6,$FRintk */
5348  {
5349    { 0, 0, 0, 0 },
5350    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5351    & ifmt_mrotli, { 0x1ec01c0 }
5352  },
5353/* mcut$pack $ACC40Si,$FRintj,$FRintk */
5354  {
5355    { 0, 0, 0, 0 },
5356    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5357    & ifmt_mcut, { 0x1ec0b00 }
5358  },
5359/* mcuti$pack $ACC40Si,$s6,$FRintk */
5360  {
5361    { 0, 0, 0, 0 },
5362    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (S6), ',', OP (FRINTK), 0 } },
5363    & ifmt_mcuti, { 0x1ec0b80 }
5364  },
5365/* mcutss$pack $ACC40Si,$FRintj,$FRintk */
5366  {
5367    { 0, 0, 0, 0 },
5368    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5369    & ifmt_mcut, { 0x1ec0b40 }
5370  },
5371/* mcutssi$pack $ACC40Si,$s6,$FRintk */
5372  {
5373    { 0, 0, 0, 0 },
5374    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (S6), ',', OP (FRINTK), 0 } },
5375    & ifmt_mcuti, { 0x1ec0bc0 }
5376  },
5377/* mdcutssi$pack $ACC40Si,$s6,$FRintkeven */
5378  {
5379    { 0, 0, 0, 0 },
5380    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (S6), ',', OP (FRINTKEVEN), 0 } },
5381    & ifmt_mdcutssi, { 0x1e00380 }
5382  },
5383/* maveh$pack $FRinti,$FRintj,$FRintk */
5384  {
5385    { 0, 0, 0, 0 },
5386    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5387    & ifmt_mand, { 0x1ec0200 }
5388  },
5389/* msllhi$pack $FRinti,$u6,$FRintk */
5390  {
5391    { 0, 0, 0, 0 },
5392    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5393    & ifmt_mrotli, { 0x1ec0240 }
5394  },
5395/* msrlhi$pack $FRinti,$u6,$FRintk */
5396  {
5397    { 0, 0, 0, 0 },
5398    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5399    & ifmt_mrotli, { 0x1ec0280 }
5400  },
5401/* msrahi$pack $FRinti,$u6,$FRintk */
5402  {
5403    { 0, 0, 0, 0 },
5404    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5405    & ifmt_mrotli, { 0x1ec02c0 }
5406  },
5407/* mdrotli$pack $FRintieven,$s6,$FRintkeven */
5408  {
5409    { 0, 0, 0, 0 },
5410    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (S6), ',', OP (FRINTKEVEN), 0 } },
5411    & ifmt_mdrotli, { 0x1e002c0 }
5412  },
5413/* mcplhi$pack $FRinti,$u6,$FRintk */
5414  {
5415    { 0, 0, 0, 0 },
5416    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5417    & ifmt_mrotli, { 0x1e00300 }
5418  },
5419/* mcpli$pack $FRinti,$u6,$FRintk */
5420  {
5421    { 0, 0, 0, 0 },
5422    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5423    & ifmt_mrotli, { 0x1e00340 }
5424  },
5425/* msaths$pack $FRinti,$FRintj,$FRintk */
5426  {
5427    { 0, 0, 0, 0 },
5428    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5429    & ifmt_mand, { 0x1ec0300 }
5430  },
5431/* mqsaths$pack $FRintieven,$FRintjeven,$FRintkeven */
5432  {
5433    { 0, 0, 0, 0 },
5434    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5435    & ifmt_mqsaths, { 0x1e003c0 }
5436  },
5437/* msathu$pack $FRinti,$FRintj,$FRintk */
5438  {
5439    { 0, 0, 0, 0 },
5440    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5441    & ifmt_mand, { 0x1ec0340 }
5442  },
5443/* mcmpsh$pack $FRinti,$FRintj,$FCCk */
5444  {
5445    { 0, 0, 0, 0 },
5446    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FCCK), 0 } },
5447    & ifmt_mcmpsh, { 0x1ec0380 }
5448  },
5449/* mcmpuh$pack $FRinti,$FRintj,$FCCk */
5450  {
5451    { 0, 0, 0, 0 },
5452    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FCCK), 0 } },
5453    & ifmt_mcmpsh, { 0x1ec03c0 }
5454  },
5455/* mabshs$pack $FRintj,$FRintk */
5456  {
5457    { 0, 0, 0, 0 },
5458    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5459    & ifmt_mabshs, { 0x1e00280 }
5460  },
5461/* maddhss$pack $FRinti,$FRintj,$FRintk */
5462  {
5463    { 0, 0, 0, 0 },
5464    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5465    & ifmt_mand, { 0x1ec0400 }
5466  },
5467/* maddhus$pack $FRinti,$FRintj,$FRintk */
5468  {
5469    { 0, 0, 0, 0 },
5470    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5471    & ifmt_mand, { 0x1ec0440 }
5472  },
5473/* msubhss$pack $FRinti,$FRintj,$FRintk */
5474  {
5475    { 0, 0, 0, 0 },
5476    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5477    & ifmt_mand, { 0x1ec0480 }
5478  },
5479/* msubhus$pack $FRinti,$FRintj,$FRintk */
5480  {
5481    { 0, 0, 0, 0 },
5482    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5483    & ifmt_mand, { 0x1ec04c0 }
5484  },
5485/* cmaddhss$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5486  {
5487    { 0, 0, 0, 0 },
5488    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5489    & ifmt_cmand, { 0x1c40000 }
5490  },
5491/* cmaddhus$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5492  {
5493    { 0, 0, 0, 0 },
5494    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5495    & ifmt_cmand, { 0x1c40040 }
5496  },
5497/* cmsubhss$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5498  {
5499    { 0, 0, 0, 0 },
5500    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5501    & ifmt_cmand, { 0x1c40080 }
5502  },
5503/* cmsubhus$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5504  {
5505    { 0, 0, 0, 0 },
5506    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5507    & ifmt_cmand, { 0x1c400c0 }
5508  },
5509/* mqaddhss$pack $FRintieven,$FRintjeven,$FRintkeven */
5510  {
5511    { 0, 0, 0, 0 },
5512    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5513    & ifmt_mqsaths, { 0x1ec0600 }
5514  },
5515/* mqaddhus$pack $FRintieven,$FRintjeven,$FRintkeven */
5516  {
5517    { 0, 0, 0, 0 },
5518    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5519    & ifmt_mqsaths, { 0x1ec0640 }
5520  },
5521/* mqsubhss$pack $FRintieven,$FRintjeven,$FRintkeven */
5522  {
5523    { 0, 0, 0, 0 },
5524    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5525    & ifmt_mqsaths, { 0x1ec0680 }
5526  },
5527/* mqsubhus$pack $FRintieven,$FRintjeven,$FRintkeven */
5528  {
5529    { 0, 0, 0, 0 },
5530    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5531    & ifmt_mqsaths, { 0x1ec06c0 }
5532  },
5533/* cmqaddhss$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5534  {
5535    { 0, 0, 0, 0 },
5536    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5537    & ifmt_cmqaddhss, { 0x1cc0000 }
5538  },
5539/* cmqaddhus$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5540  {
5541    { 0, 0, 0, 0 },
5542    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5543    & ifmt_cmqaddhss, { 0x1cc0040 }
5544  },
5545/* cmqsubhss$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5546  {
5547    { 0, 0, 0, 0 },
5548    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5549    & ifmt_cmqaddhss, { 0x1cc0080 }
5550  },
5551/* cmqsubhus$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5552  {
5553    { 0, 0, 0, 0 },
5554    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5555    & ifmt_cmqaddhss, { 0x1cc00c0 }
5556  },
5557/* mqlclrhs$pack $FRintieven,$FRintjeven,$FRintkeven */
5558  {
5559    { 0, 0, 0, 0 },
5560    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5561    & ifmt_mqsaths, { 0x1e00400 }
5562  },
5563/* mqlmths$pack $FRintieven,$FRintjeven,$FRintkeven */
5564  {
5565    { 0, 0, 0, 0 },
5566    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5567    & ifmt_mqsaths, { 0x1e00500 }
5568  },
5569/* mqsllhi$pack $FRintieven,$u6,$FRintkeven */
5570  {
5571    { 0, 0, 0, 0 },
5572    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (U6), ',', OP (FRINTKEVEN), 0 } },
5573    & ifmt_mqsllhi, { 0x1e00440 }
5574  },
5575/* mqsrahi$pack $FRintieven,$u6,$FRintkeven */
5576  {
5577    { 0, 0, 0, 0 },
5578    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (U6), ',', OP (FRINTKEVEN), 0 } },
5579    & ifmt_mqsllhi, { 0x1e004c0 }
5580  },
5581/* maddaccs$pack $ACC40Si,$ACC40Sk */
5582  {
5583    { 0, 0, 0, 0 },
5584    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5585    & ifmt_maddaccs, { 0x1e00100 }
5586  },
5587/* msubaccs$pack $ACC40Si,$ACC40Sk */
5588  {
5589    { 0, 0, 0, 0 },
5590    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5591    & ifmt_maddaccs, { 0x1e00140 }
5592  },
5593/* mdaddaccs$pack $ACC40Si,$ACC40Sk */
5594  {
5595    { 0, 0, 0, 0 },
5596    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5597    & ifmt_maddaccs, { 0x1e00180 }
5598  },
5599/* mdsubaccs$pack $ACC40Si,$ACC40Sk */
5600  {
5601    { 0, 0, 0, 0 },
5602    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5603    & ifmt_maddaccs, { 0x1e001c0 }
5604  },
5605/* masaccs$pack $ACC40Si,$ACC40Sk */
5606  {
5607    { 0, 0, 0, 0 },
5608    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5609    & ifmt_maddaccs, { 0x1e00200 }
5610  },
5611/* mdasaccs$pack $ACC40Si,$ACC40Sk */
5612  {
5613    { 0, 0, 0, 0 },
5614    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5615    & ifmt_maddaccs, { 0x1e00240 }
5616  },
5617/* mmulhs$pack $FRinti,$FRintj,$ACC40Sk */
5618  {
5619    { 0, 0, 0, 0 },
5620    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5621    & ifmt_mmulhs, { 0x1ec0500 }
5622  },
5623/* mmulhu$pack $FRinti,$FRintj,$ACC40Sk */
5624  {
5625    { 0, 0, 0, 0 },
5626    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5627    & ifmt_mmulhs, { 0x1ec0540 }
5628  },
5629/* mmulxhs$pack $FRinti,$FRintj,$ACC40Sk */
5630  {
5631    { 0, 0, 0, 0 },
5632    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5633    & ifmt_mmulhs, { 0x1ec0a00 }
5634  },
5635/* mmulxhu$pack $FRinti,$FRintj,$ACC40Sk */
5636  {
5637    { 0, 0, 0, 0 },
5638    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5639    & ifmt_mmulhs, { 0x1ec0a40 }
5640  },
5641/* cmmulhs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5642  {
5643    { 0, 0, 0, 0 },
5644    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5645    & ifmt_cmmulhs, { 0x1c80000 }
5646  },
5647/* cmmulhu$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5648  {
5649    { 0, 0, 0, 0 },
5650    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5651    & ifmt_cmmulhs, { 0x1c80040 }
5652  },
5653/* mqmulhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5654  {
5655    { 0, 0, 0, 0 },
5656    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5657    & ifmt_mqmulhs, { 0x1ec0700 }
5658  },
5659/* mqmulhu$pack $FRintieven,$FRintjeven,$ACC40Sk */
5660  {
5661    { 0, 0, 0, 0 },
5662    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5663    & ifmt_mqmulhs, { 0x1ec0740 }
5664  },
5665/* mqmulxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5666  {
5667    { 0, 0, 0, 0 },
5668    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5669    & ifmt_mqmulhs, { 0x1ec0a80 }
5670  },
5671/* mqmulxhu$pack $FRintieven,$FRintjeven,$ACC40Sk */
5672  {
5673    { 0, 0, 0, 0 },
5674    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5675    & ifmt_mqmulhs, { 0x1ec0ac0 }
5676  },
5677/* cmqmulhs$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
5678  {
5679    { 0, 0, 0, 0 },
5680    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5681    & ifmt_cmqmulhs, { 0x1d00000 }
5682  },
5683/* cmqmulhu$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
5684  {
5685    { 0, 0, 0, 0 },
5686    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5687    & ifmt_cmqmulhs, { 0x1d00040 }
5688  },
5689/* mmachs$pack $FRinti,$FRintj,$ACC40Sk */
5690  {
5691    { 0, 0, 0, 0 },
5692    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5693    & ifmt_mmulhs, { 0x1ec0580 }
5694  },
5695/* mmachu$pack $FRinti,$FRintj,$ACC40Uk */
5696  {
5697    { 0, 0, 0, 0 },
5698    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40UK), 0 } },
5699    & ifmt_mmachu, { 0x1ec05c0 }
5700  },
5701/* mmrdhs$pack $FRinti,$FRintj,$ACC40Sk */
5702  {
5703    { 0, 0, 0, 0 },
5704    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5705    & ifmt_mmulhs, { 0x1ec0c00 }
5706  },
5707/* mmrdhu$pack $FRinti,$FRintj,$ACC40Uk */
5708  {
5709    { 0, 0, 0, 0 },
5710    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40UK), 0 } },
5711    & ifmt_mmachu, { 0x1ec0c40 }
5712  },
5713/* cmmachs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5714  {
5715    { 0, 0, 0, 0 },
5716    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5717    & ifmt_cmmulhs, { 0x1c80080 }
5718  },
5719/* cmmachu$pack $FRinti,$FRintj,$ACC40Uk,$CCi,$cond */
5720  {
5721    { 0, 0, 0, 0 },
5722    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40UK), ',', OP (CCI), ',', OP (COND), 0 } },
5723    & ifmt_cmmachu, { 0x1c800c0 }
5724  },
5725/* mqmachs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5726  {
5727    { 0, 0, 0, 0 },
5728    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5729    & ifmt_mqmulhs, { 0x1ec0780 }
5730  },
5731/* mqmachu$pack $FRintieven,$FRintjeven,$ACC40Uk */
5732  {
5733    { 0, 0, 0, 0 },
5734    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40UK), 0 } },
5735    & ifmt_mqmachu, { 0x1ec07c0 }
5736  },
5737/* cmqmachs$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
5738  {
5739    { 0, 0, 0, 0 },
5740    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5741    & ifmt_cmqmulhs, { 0x1d00080 }
5742  },
5743/* cmqmachu$pack $FRintieven,$FRintjeven,$ACC40Uk,$CCi,$cond */
5744  {
5745    { 0, 0, 0, 0 },
5746    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40UK), ',', OP (CCI), ',', OP (COND), 0 } },
5747    & ifmt_cmqmachu, { 0x1d000c0 }
5748  },
5749/* mqxmachs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5750  {
5751    { 0, 0, 0, 0 },
5752    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5753    & ifmt_mqmulhs, { 0x1e00000 }
5754  },
5755/* mqxmacxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5756  {
5757    { 0, 0, 0, 0 },
5758    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5759    & ifmt_mqmulhs, { 0x1e00040 }
5760  },
5761/* mqmacxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5762  {
5763    { 0, 0, 0, 0 },
5764    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5765    & ifmt_mqmulhs, { 0x1e00080 }
5766  },
5767/* mcpxrs$pack $FRinti,$FRintj,$ACC40Sk */
5768  {
5769    { 0, 0, 0, 0 },
5770    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5771    & ifmt_mmulhs, { 0x1ec0800 }
5772  },
5773/* mcpxru$pack $FRinti,$FRintj,$ACC40Sk */
5774  {
5775    { 0, 0, 0, 0 },
5776    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5777    & ifmt_mmulhs, { 0x1ec0840 }
5778  },
5779/* mcpxis$pack $FRinti,$FRintj,$ACC40Sk */
5780  {
5781    { 0, 0, 0, 0 },
5782    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5783    & ifmt_mmulhs, { 0x1ec0880 }
5784  },
5785/* mcpxiu$pack $FRinti,$FRintj,$ACC40Sk */
5786  {
5787    { 0, 0, 0, 0 },
5788    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5789    & ifmt_mmulhs, { 0x1ec08c0 }
5790  },
5791/* cmcpxrs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5792  {
5793    { 0, 0, 0, 0 },
5794    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5795    & ifmt_cmmulhs, { 0x1d40000 }
5796  },
5797/* cmcpxru$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5798  {
5799    { 0, 0, 0, 0 },
5800    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5801    & ifmt_cmmulhs, { 0x1d40040 }
5802  },
5803/* cmcpxis$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5804  {
5805    { 0, 0, 0, 0 },
5806    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5807    & ifmt_cmmulhs, { 0x1d40080 }
5808  },
5809/* cmcpxiu$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5810  {
5811    { 0, 0, 0, 0 },
5812    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5813    & ifmt_cmmulhs, { 0x1d400c0 }
5814  },
5815/* mqcpxrs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5816  {
5817    { 0, 0, 0, 0 },
5818    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5819    & ifmt_mqmulhs, { 0x1ec0900 }
5820  },
5821/* mqcpxru$pack $FRintieven,$FRintjeven,$ACC40Sk */
5822  {
5823    { 0, 0, 0, 0 },
5824    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5825    & ifmt_mqmulhs, { 0x1ec0940 }
5826  },
5827/* mqcpxis$pack $FRintieven,$FRintjeven,$ACC40Sk */
5828  {
5829    { 0, 0, 0, 0 },
5830    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5831    & ifmt_mqmulhs, { 0x1ec0980 }
5832  },
5833/* mqcpxiu$pack $FRintieven,$FRintjeven,$ACC40Sk */
5834  {
5835    { 0, 0, 0, 0 },
5836    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5837    & ifmt_mqmulhs, { 0x1ec09c0 }
5838  },
5839/* mexpdhw$pack $FRinti,$u6,$FRintk */
5840  {
5841    { 0, 0, 0, 0 },
5842    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5843    & ifmt_mrotli, { 0x1ec0c80 }
5844  },
5845/* cmexpdhw$pack $FRinti,$u6,$FRintk,$CCi,$cond */
5846  {
5847    { 0, 0, 0, 0 },
5848    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5849    & ifmt_cmexpdhw, { 0x1d80080 }
5850  },
5851/* mexpdhd$pack $FRinti,$u6,$FRintkeven */
5852  {
5853    { 0, 0, 0, 0 },
5854    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTKEVEN), 0 } },
5855    & ifmt_mexpdhd, { 0x1ec0cc0 }
5856  },
5857/* cmexpdhd$pack $FRinti,$u6,$FRintkeven,$CCi,$cond */
5858  {
5859    { 0, 0, 0, 0 },
5860    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5861    & ifmt_cmexpdhd, { 0x1d800c0 }
5862  },
5863/* mpackh$pack $FRinti,$FRintj,$FRintk */
5864  {
5865    { 0, 0, 0, 0 },
5866    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5867    & ifmt_mand, { 0x1ec0d00 }
5868  },
5869/* mdpackh$pack $FRintieven,$FRintjeven,$FRintkeven */
5870  {
5871    { 0, 0, 0, 0 },
5872    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5873    & ifmt_mqsaths, { 0x1ec0d80 }
5874  },
5875/* munpackh$pack $FRinti,$FRintkeven */
5876  {
5877    { 0, 0, 0, 0 },
5878    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTKEVEN), 0 } },
5879    & ifmt_munpackh, { 0x1ec0d40 }
5880  },
5881/* mdunpackh$pack $FRintieven,$FRintk */
5882  {
5883    { 0, 0, 0, 0 },
5884    { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTK), 0 } },
5885    & ifmt_mdunpackh, { 0x1ec0dc0 }
5886  },
5887/* mbtoh$pack $FRintj,$FRintkeven */
5888  {
5889    { 0, 0, 0, 0 },
5890    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTKEVEN), 0 } },
5891    & ifmt_mbtoh, { 0x1ec0e00 }
5892  },
5893/* cmbtoh$pack $FRintj,$FRintkeven,$CCi,$cond */
5894  {
5895    { 0, 0, 0, 0 },
5896    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5897    & ifmt_cmbtoh, { 0x1dc0000 }
5898  },
5899/* mhtob$pack $FRintjeven,$FRintk */
5900  {
5901    { 0, 0, 0, 0 },
5902    { { MNEM, OP (PACK), ' ', OP (FRINTJEVEN), ',', OP (FRINTK), 0 } },
5903    & ifmt_mhtob, { 0x1ec0e40 }
5904  },
5905/* cmhtob$pack $FRintjeven,$FRintk,$CCi,$cond */
5906  {
5907    { 0, 0, 0, 0 },
5908    { { MNEM, OP (PACK), ' ', OP (FRINTJEVEN), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5909    & ifmt_cmhtob, { 0x1dc0040 }
5910  },
5911/* mbtohe$pack $FRintj,$FRintk */
5912  {
5913    { 0, 0, 0, 0 },
5914    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5915    & ifmt_mabshs, { 0x1ec0e80 }
5916  },
5917/* cmbtohe$pack $FRintj,$FRintk,$CCi,$cond */
5918  {
5919    { 0, 0, 0, 0 },
5920    { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5921    & ifmt_cmbtohe, { 0x1dc0080 }
5922  },
5923/* mnop$pack */
5924  {
5925    { 0, 0, 0, 0 },
5926    { { MNEM, OP (PACK), 0 } },
5927    & ifmt_mnop, { 0x7fee0ec0 }
5928  },
5929/* mclracc$pack $ACC40Sk,$A0 */
5930  {
5931    { 0, 0, 0, 0 },
5932    { { MNEM, OP (PACK), ' ', OP (ACC40SK), ',', OP (A0), 0 } },
5933    & ifmt_mclracc_0, { 0x1ec0ec0 }
5934  },
5935/* mclracc$pack $ACC40Sk,$A1 */
5936  {
5937    { 0, 0, 0, 0 },
5938    { { MNEM, OP (PACK), ' ', OP (ACC40SK), ',', OP (A1), 0 } },
5939    & ifmt_mclracc_0, { 0x1ee0ec0 }
5940  },
5941/* mrdacc$pack $ACC40Si,$FRintk */
5942  {
5943    { 0, 0, 0, 0 },
5944    { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (FRINTK), 0 } },
5945    & ifmt_mrdacc, { 0x1ec0f00 }
5946  },
5947/* mrdaccg$pack $ACCGi,$FRintk */
5948  {
5949    { 0, 0, 0, 0 },
5950    { { MNEM, OP (PACK), ' ', OP (ACCGI), ',', OP (FRINTK), 0 } },
5951    & ifmt_mrdaccg, { 0x1ec0f80 }
5952  },
5953/* mwtacc$pack $FRinti,$ACC40Sk */
5954  {
5955    { 0, 0, 0, 0 },
5956    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (ACC40SK), 0 } },
5957    & ifmt_mwtacc, { 0x1ec0f40 }
5958  },
5959/* mwtaccg$pack $FRinti,$ACCGk */
5960  {
5961    { 0, 0, 0, 0 },
5962    { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (ACCGK), 0 } },
5963    & ifmt_mwtaccg, { 0x1ec0fc0 }
5964  },
5965/* mcop1$pack $FRi,$FRj,$FRk */
5966  {
5967    { 0, 0, 0, 0 },
5968    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5969    & ifmt_fadds, { 0x1f00000 }
5970  },
5971/* mcop2$pack $FRi,$FRj,$FRk */
5972  {
5973    { 0, 0, 0, 0 },
5974    { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5975    & ifmt_fadds, { 0x1f40000 }
5976  },
5977/* fnop$pack */
5978  {
5979    { 0, 0, 0, 0 },
5980    { { MNEM, OP (PACK), 0 } },
5981    & ifmt_fnop, { 0x1e40340 }
5982  },
5983};
5984
5985#undef A
5986#undef OPERAND
5987#undef MNEM
5988#undef OP
5989
5990/* Formats for ALIAS macro-insns.  */
5991
5992#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
5993#define F(f) & frv_cgen_ifld_table[FRV_##f]
5994#else
5995#define F(f) & frv_cgen_ifld_table[FRV_/**/f]
5996#endif
5997static const CGEN_IFMT ifmt_nop ATTRIBUTE_UNUSED = {
5998  32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
5999};
6000
6001static const CGEN_IFMT ifmt_ret ATTRIBUTE_UNUSED = {
6002  32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
6003};
6004
6005static const CGEN_IFMT ifmt_cmp ATTRIBUTE_UNUSED = {
6006  32, 32, 0x7ffc03c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
6007};
6008
6009static const CGEN_IFMT ifmt_cmpi ATTRIBUTE_UNUSED = {
6010  32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_S10) }, { 0 } }
6011};
6012
6013static const CGEN_IFMT ifmt_ccmp ATTRIBUTE_UNUSED = {
6014  32, 32, 0x7ffc00c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
6015};
6016
6017static const CGEN_IFMT ifmt_mov ATTRIBUTE_UNUSED = {
6018  32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
6019};
6020
6021static const CGEN_IFMT ifmt_cmov ATTRIBUTE_UNUSED = {
6022  32, 32, 0x1fc00ff, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
6023};
6024
6025#undef F
6026
6027/* Each non-simple macro entry points to an array of expansion possibilities.  */
6028
6029#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
6030#define A(a) (1 << CGEN_INSN_##a)
6031#else
6032#define A(a) (1 << CGEN_INSN_/**/a)
6033#endif
6034#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
6035#define OPERAND(op) FRV_OPERAND_##op
6036#else
6037#define OPERAND(op) FRV_OPERAND_/**/op
6038#endif
6039#define MNEM CGEN_SYNTAX_MNEMONIC /* syntax value for mnemonic */
6040#define OP(field) CGEN_SYNTAX_MAKE_FIELD (OPERAND (field))
6041
6042/* The macro instruction table.  */
6043
6044static const CGEN_IBASE frv_cgen_macro_insn_table[] =
6045{
6046/* nop$pack */
6047  {
6048    -1, "nop", "nop", 32,
6049    { 0|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6050  },
6051/* ret$pack */
6052  {
6053    -1, "ret", "ret", 32,
6054    { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6055  },
6056/* cmp$pack $GRi,$GRj,$ICCi_1 */
6057  {
6058    -1, "cmp", "cmp", 32,
6059    { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6060  },
6061/* cmpi$pack $GRi,$s10,$ICCi_1 */
6062  {
6063    -1, "cmpi", "cmpi", 32,
6064    { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6065  },
6066/* ccmp$pack $GRi,$GRj,$CCi,$cond */
6067  {
6068    -1, "ccmp", "ccmp", 32,
6069    { 0|A(CONDITIONAL)|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6070  },
6071/* mov$pack $GRi,$GRk */
6072  {
6073    -1, "mov", "mov", 32,
6074    { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6075  },
6076/* cmov$pack $GRi,$GRk,$CCi,$cond */
6077  {
6078    -1, "cmov", "cmov", 32,
6079    { 0|A(CONDITIONAL)|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6080  },
6081};
6082
6083/* The macro instruction opcode table.  */
6084
6085static const CGEN_OPCODE frv_cgen_macro_insn_opcode_table[] =
6086{
6087/* nop$pack */
6088  {
6089    { 0, 0, 0, 0 },
6090    { { MNEM, OP (PACK), 0 } },
6091    & ifmt_nop, { 0x880000 }
6092  },
6093/* ret$pack */
6094  {
6095    { 0, 0, 0, 0 },
6096    { { MNEM, OP (PACK), 0 } },
6097    & ifmt_ret, { 0x403a4000 }
6098  },
6099/* cmp$pack $GRi,$GRj,$ICCi_1 */
6100  {
6101    { 0, 0, 0, 0 },
6102    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (ICCI_1), 0 } },
6103    & ifmt_cmp, { 0x140 }
6104  },
6105/* cmpi$pack $GRi,$s10,$ICCi_1 */
6106  {
6107    { 0, 0, 0, 0 },
6108    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (ICCI_1), 0 } },
6109    & ifmt_cmpi, { 0x540000 }
6110  },
6111/* ccmp$pack $GRi,$GRj,$CCi,$cond */
6112  {
6113    { 0, 0, 0, 0 },
6114    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (CCI), ',', OP (COND), 0 } },
6115    & ifmt_ccmp, { 0x1640040 }
6116  },
6117/* mov$pack $GRi,$GRk */
6118  {
6119    { 0, 0, 0, 0 },
6120    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), 0 } },
6121    & ifmt_mov, { 0x880000 }
6122  },
6123/* cmov$pack $GRi,$GRk,$CCi,$cond */
6124  {
6125    { 0, 0, 0, 0 },
6126    { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
6127    & ifmt_cmov, { 0x1680040 }
6128  },
6129};
6130
6131#undef A
6132#undef OPERAND
6133#undef MNEM
6134#undef OP
6135
6136#ifndef CGEN_ASM_HASH_P
6137#define CGEN_ASM_HASH_P(insn) 1
6138#endif
6139
6140#ifndef CGEN_DIS_HASH_P
6141#define CGEN_DIS_HASH_P(insn) 1
6142#endif
6143
6144/* Return non-zero if INSN is to be added to the hash table.
6145   Targets are free to override CGEN_{ASM,DIS}_HASH_P in the .opc file.  */
6146
6147static int
6148asm_hash_insn_p (insn)
6149     const CGEN_INSN *insn ATTRIBUTE_UNUSED;
6150{
6151  return CGEN_ASM_HASH_P (insn);
6152}
6153
6154static int
6155dis_hash_insn_p (insn)
6156     const CGEN_INSN *insn;
6157{
6158  /* If building the hash table and the NO-DIS attribute is present,
6159     ignore.  */
6160  if (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_NO_DIS))
6161    return 0;
6162  return CGEN_DIS_HASH_P (insn);
6163}
6164
6165#ifndef CGEN_ASM_HASH
6166#define CGEN_ASM_HASH_SIZE 127
6167#ifdef CGEN_MNEMONIC_OPERANDS
6168#define CGEN_ASM_HASH(mnem) (*(unsigned char *) (mnem) % CGEN_ASM_HASH_SIZE)
6169#else
6170#define CGEN_ASM_HASH(mnem) (*(unsigned char *) (mnem) % CGEN_ASM_HASH_SIZE) /*FIXME*/
6171#endif
6172#endif
6173
6174/* It doesn't make much sense to provide a default here,
6175   but while this is under development we do.
6176   BUFFER is a pointer to the bytes of the insn, target order.
6177   VALUE is the first base_insn_bitsize bits as an int in host order.  */
6178
6179#ifndef CGEN_DIS_HASH
6180#define CGEN_DIS_HASH_SIZE 256
6181#define CGEN_DIS_HASH(buf, value) (*(unsigned char *) (buf))
6182#endif
6183
6184/* The result is the hash value of the insn.
6185   Targets are free to override CGEN_{ASM,DIS}_HASH in the .opc file.  */
6186
6187static unsigned int
6188asm_hash_insn (mnem)
6189     const char * mnem;
6190{
6191  return CGEN_ASM_HASH (mnem);
6192}
6193
6194/* BUF is a pointer to the bytes of the insn, target order.
6195   VALUE is the first base_insn_bitsize bits as an int in host order.  */
6196
6197static unsigned int
6198dis_hash_insn (buf, value)
6199     const char * buf ATTRIBUTE_UNUSED;
6200     CGEN_INSN_INT value ATTRIBUTE_UNUSED;
6201{
6202  return CGEN_DIS_HASH (buf, value);
6203}
6204
6205/* Set the recorded length of the insn in the CGEN_FIELDS struct.  */
6206
6207static void
6208set_fields_bitsize (CGEN_FIELDS *fields, int size)
6209{
6210  CGEN_FIELDS_BITSIZE (fields) = size;
6211}
6212
6213/* Function to call before using the operand instance table.
6214   This plugs the opcode entries and macro instructions into the cpu table.  */
6215
6216void
6217frv_cgen_init_opcode_table (CGEN_CPU_DESC cd)
6218{
6219  int i;
6220  int num_macros = (sizeof (frv_cgen_macro_insn_table) /
6221		    sizeof (frv_cgen_macro_insn_table[0]));
6222  const CGEN_IBASE *ib = & frv_cgen_macro_insn_table[0];
6223  const CGEN_OPCODE *oc = & frv_cgen_macro_insn_opcode_table[0];
6224  CGEN_INSN *insns = xmalloc (num_macros * sizeof (CGEN_INSN));
6225
6226  memset (insns, 0, num_macros * sizeof (CGEN_INSN));
6227  for (i = 0; i < num_macros; ++i)
6228    {
6229      insns[i].base = &ib[i];
6230      insns[i].opcode = &oc[i];
6231      frv_cgen_build_insn_regex (& insns[i]);
6232    }
6233  cd->macro_insn_table.init_entries = insns;
6234  cd->macro_insn_table.entry_size = sizeof (CGEN_IBASE);
6235  cd->macro_insn_table.num_init_entries = num_macros;
6236
6237  oc = & frv_cgen_insn_opcode_table[0];
6238  insns = (CGEN_INSN *) cd->insn_table.init_entries;
6239  for (i = 0; i < MAX_INSNS; ++i)
6240    {
6241      insns[i].opcode = &oc[i];
6242      frv_cgen_build_insn_regex (& insns[i]);
6243    }
6244
6245  cd->sizeof_fields = sizeof (CGEN_FIELDS);
6246  cd->set_fields_bitsize = set_fields_bitsize;
6247
6248  cd->asm_hash_p = asm_hash_insn_p;
6249  cd->asm_hash = asm_hash_insn;
6250  cd->asm_hash_size = CGEN_ASM_HASH_SIZE;
6251
6252  cd->dis_hash_p = dis_hash_insn_p;
6253  cd->dis_hash = dis_hash_insn;
6254  cd->dis_hash_size = CGEN_DIS_HASH_SIZE;
6255}
6256