[PATCH 16/57][Arm][GAS] Add support for MVE instructions: vdup, vddup, vdwdup, vidup...
[binutils-gdb.git] / opcodes / frv-opc.c
blob115133c20c8bf47278a64ba70e47de0b594d71ce
1 /* DO NOT EDIT! -*- buffer-read-only: t -*- vi:set ro: */
2 /* Instruction opcode table for frv.
4 THIS FILE IS MACHINE GENERATED WITH CGEN.
6 Copyright (C) 1996-2019 Free Software Foundation, Inc.
8 This file is part of the GNU Binutils and/or GDB, the GNU debugger.
10 This file is free software; you can redistribute it and/or modify
11 it under the terms of the GNU General Public License as published by
12 the Free Software Foundation; either version 3, or (at your option)
13 any later version.
15 It is distributed in the hope that it will be useful, but WITHOUT
16 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
17 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
18 License for more details.
20 You should have received a copy of the GNU General Public License along
21 with this program; if not, write to the Free Software Foundation, Inc.,
22 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
26 #include "sysdep.h"
27 #include "ansidecl.h"
28 #include "bfd.h"
29 #include "symcat.h"
30 #include "frv-desc.h"
31 #include "frv-opc.h"
32 #include "libiberty.h"
34 /* -- opc.c */
35 #include "opintl.h"
36 #include "elf/frv.h"
37 #include <stdio.h>
39 /* DEBUG appears below as argument of OP macro. */
40 #undef DEBUG
42 /* Returns TRUE if {MAJOR,MACH} is a major branch of the FRV
43 development tree. */
45 bfd_boolean
46 frv_is_branch_major (CGEN_ATTR_VALUE_ENUM_TYPE major, unsigned long mach)
48 switch (mach)
50 case bfd_mach_fr400:
51 if (major >= FR400_MAJOR_B_1 && major <= FR400_MAJOR_B_6)
52 return TRUE;
53 break;
54 case bfd_mach_fr450:
55 if (major >= FR450_MAJOR_B_1 && major <= FR450_MAJOR_B_6)
56 return TRUE;
57 break;
58 default:
59 if (major >= FR500_MAJOR_B_1 && major <= FR500_MAJOR_B_6)
60 return TRUE;
61 break;
64 return FALSE;
67 /* Returns TRUE if {MAJOR,MACH} supports floating point insns. */
69 bfd_boolean
70 frv_is_float_major (CGEN_ATTR_VALUE_ENUM_TYPE major, unsigned long mach)
72 switch (mach)
74 case bfd_mach_fr400:
75 case bfd_mach_fr450:
76 return FALSE;
77 default:
78 if (major >= FR500_MAJOR_F_1 && major <= FR500_MAJOR_F_8)
79 return TRUE;
80 break;
83 return FALSE;
86 /* Returns TRUE if {MAJOR,MACH} supports media insns. */
88 bfd_boolean
89 frv_is_media_major (CGEN_ATTR_VALUE_ENUM_TYPE major, unsigned long mach)
91 switch (mach)
93 case bfd_mach_fr400:
94 if (major >= FR400_MAJOR_M_1 && major <= FR400_MAJOR_M_2)
95 return TRUE;
96 break;
97 case bfd_mach_fr450:
98 if (major >= FR450_MAJOR_M_1 && major <= FR450_MAJOR_M_6)
99 return TRUE;
100 break;
101 default:
102 if (major >= FR500_MAJOR_M_1 && major <= FR500_MAJOR_M_8)
103 return TRUE;
104 break;
107 return FALSE;
110 bfd_boolean
111 frv_is_branch_insn (const CGEN_INSN *insn)
113 if (frv_is_branch_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR),
114 bfd_mach_fr400))
115 return TRUE;
116 if (frv_is_branch_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR),
117 bfd_mach_fr450))
118 return TRUE;
119 if (frv_is_branch_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR),
120 bfd_mach_fr500))
121 return TRUE;
123 return FALSE;
126 bfd_boolean
127 frv_is_float_insn (const CGEN_INSN *insn)
129 if (frv_is_float_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR),
130 bfd_mach_fr400))
131 return TRUE;
132 if (frv_is_float_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR),
133 bfd_mach_fr450))
134 return TRUE;
135 if (frv_is_float_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR),
136 bfd_mach_fr500))
137 return TRUE;
139 return FALSE;
142 bfd_boolean
143 frv_is_media_insn (const CGEN_INSN *insn)
145 if (frv_is_media_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR),
146 bfd_mach_fr400))
147 return TRUE;
148 if (frv_is_media_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR),
149 bfd_mach_fr450))
150 return TRUE;
151 if (frv_is_media_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR),
152 bfd_mach_fr500))
153 return TRUE;
155 return FALSE;
158 /* This table represents the allowable packing for vliw insns for the fr400.
159 The fr400 has only 2 vliw slots. Represent this by not allowing any insns
160 in the extra slots.
161 Subsets of any given row are also allowed. */
162 static VLIW_COMBO fr400_allowed_vliw[] =
164 /* slot0 slot1 slot2 slot3 */
165 { UNIT_I0, UNIT_I1, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
166 { UNIT_I0, UNIT_FM0, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
167 { UNIT_I0, UNIT_B0, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
168 { UNIT_FM0, UNIT_FM1, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
169 { UNIT_FM0, UNIT_B0, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
170 { UNIT_B0, UNIT_NIL, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
171 { UNIT_C, UNIT_NIL, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
172 { UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO }
175 /* This table represents the allowable packing for vliw insns for the fr500.
176 The fr500 has only 4 vliw slots. Represent this by not allowing any insns
177 in the extra slots.
178 Subsets of any given row are also allowed. */
179 static VLIW_COMBO fr500_allowed_vliw[] =
181 /* slot0 slot1 slot2 slot3 */
182 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1 PAD_VLIW_COMBO },
183 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_B0 PAD_VLIW_COMBO },
184 { UNIT_I0, UNIT_FM0, UNIT_FM1, UNIT_B0 PAD_VLIW_COMBO },
185 { UNIT_I0, UNIT_FM0, UNIT_B0, UNIT_B1 PAD_VLIW_COMBO },
186 { UNIT_I0, UNIT_I1, UNIT_B0, UNIT_B1 PAD_VLIW_COMBO },
187 { UNIT_I0, UNIT_B0, UNIT_B1, UNIT_NIL PAD_VLIW_COMBO },
188 { UNIT_FM0, UNIT_FM1, UNIT_B0, UNIT_B1 PAD_VLIW_COMBO },
189 { UNIT_FM0, UNIT_B0, UNIT_B1, UNIT_NIL PAD_VLIW_COMBO },
190 { UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
191 { UNIT_C, UNIT_NIL, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
192 { UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO }
195 /* This table represents the allowable packing for vliw insns for the fr550.
196 Subsets of any given row are also allowed. */
197 static VLIW_COMBO fr550_allowed_vliw[] =
199 /* slot0 slot1 slot2 slot3 slot4 slot5 slot6 slot7 */
200 { UNIT_I0, UNIT_I1, UNIT_I2, UNIT_I3, UNIT_B0, UNIT_B1 , UNIT_NIL, UNIT_NIL },
201 { UNIT_I0, UNIT_I1, UNIT_I2, UNIT_B0, UNIT_B1 , UNIT_NIL, UNIT_NIL, UNIT_NIL },
202 { UNIT_I0, UNIT_I1, UNIT_B0, UNIT_B1 , UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
203 { UNIT_I0, UNIT_B0, UNIT_B1 , UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
204 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_FM2, UNIT_I3, UNIT_FM3 },
205 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_FM2, UNIT_I3, UNIT_B0 },
206 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_FM2, UNIT_FM3, UNIT_B0 },
207 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_FM2, UNIT_B0, UNIT_B1 },
208 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_I3, UNIT_B0, UNIT_B1 },
209 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_B0, UNIT_B1, UNIT_NIL },
210 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_FM2, UNIT_FM3, UNIT_B0, UNIT_B1 },
211 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_FM2, UNIT_FM3, UNIT_B0, UNIT_B1 },
212 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_FM2, UNIT_B0, UNIT_B1, UNIT_NIL },
213 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL },
214 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_I2, UNIT_I3, UNIT_B0, UNIT_B1, UNIT_NIL },
215 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_I2, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL },
216 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL },
217 { UNIT_I0, UNIT_FM0, UNIT_FM1, UNIT_FM2, UNIT_FM3, UNIT_B0, UNIT_B1, UNIT_NIL },
218 { UNIT_I0, UNIT_FM0, UNIT_FM1, UNIT_FM2, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL },
219 { UNIT_I0, UNIT_FM0, UNIT_FM1, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL },
220 { UNIT_I0, UNIT_FM0, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
221 { UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
222 { UNIT_C, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
223 { UNIT_FM0, UNIT_FM1, UNIT_FM2, UNIT_FM3, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL },
224 { UNIT_FM0, UNIT_FM1, UNIT_FM2, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL },
225 { UNIT_FM0, UNIT_FM1, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
226 { UNIT_FM0, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
227 { UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL }
230 /* Some insns are assigned specialized implementation units which map to
231 different actual implementation units on different machines. These
232 tables perform that mapping. */
233 static CGEN_ATTR_VALUE_ENUM_TYPE fr400_unit_mapping[] =
235 /* unit in insn actual unit */
236 /* NIL */ UNIT_NIL,
237 /* I0 */ UNIT_I0,
238 /* I1 */ UNIT_I1,
239 /* I01 */ UNIT_I01,
240 /* I2 */ UNIT_NIL, /* no I2 or I3 unit */
241 /* I3 */ UNIT_NIL,
242 /* IALL */ UNIT_I01, /* only I0 and I1 units */
243 /* FM0 */ UNIT_FM0,
244 /* FM1 */ UNIT_FM1,
245 /* FM01 */ UNIT_FM01,
246 /* FM2 */ UNIT_NIL, /* no F2 or M2 units */
247 /* FM3 */ UNIT_NIL, /* no F3 or M3 units */
248 /* FMALL */ UNIT_FM01,/* Only F0,F1,M0,M1 units */
249 /* FMLOW */ UNIT_FM0, /* Only F0,M0 units */
250 /* B0 */ UNIT_B0, /* branches only in B0 unit. */
251 /* B1 */ UNIT_B0,
252 /* B01 */ UNIT_B0,
253 /* C */ UNIT_C,
254 /* MULT-DIV */ UNIT_I0, /* multiply and divide only in I0 unit. */
255 /* IACC */ UNIT_I01, /* iacc multiply in I0 or I1 unit. */
256 /* LOAD */ UNIT_I0, /* load only in I0 unit. */
257 /* STORE */ UNIT_I0, /* store only in I0 unit. */
258 /* SCAN */ UNIT_I0, /* scan only in I0 unit. */
259 /* DCPL */ UNIT_C, /* dcpl only in C unit. */
260 /* MDUALACC */ UNIT_FM0, /* media dual acc insn only in FM0 unit. */
261 /* MDCUTSSI */ UNIT_FM0, /* mdcutssi only in FM0 unit. */
262 /* MCLRACC-1*/ UNIT_FM0 /* mclracc,A==1 insn only in FM0 unit. */
265 /* Some insns are assigned specialized implementation units which map to
266 different actual implementation units on different machines. These
267 tables perform that mapping. */
268 static CGEN_ATTR_VALUE_ENUM_TYPE fr450_unit_mapping[] =
270 /* unit in insn actual unit */
271 /* NIL */ UNIT_NIL,
272 /* I0 */ UNIT_I0,
273 /* I1 */ UNIT_I1,
274 /* I01 */ UNIT_I01,
275 /* I2 */ UNIT_NIL, /* no I2 or I3 unit */
276 /* I3 */ UNIT_NIL,
277 /* IALL */ UNIT_I01, /* only I0 and I1 units */
278 /* FM0 */ UNIT_FM0,
279 /* FM1 */ UNIT_FM1,
280 /* FM01 */ UNIT_FM01,
281 /* FM2 */ UNIT_NIL, /* no F2 or M2 units */
282 /* FM3 */ UNIT_NIL, /* no F3 or M3 units */
283 /* FMALL */ UNIT_FM01,/* Only F0,F1,M0,M1 units */
284 /* FMLOW */ UNIT_FM0, /* Only F0,M0 units */
285 /* B0 */ UNIT_B0, /* branches only in B0 unit. */
286 /* B1 */ UNIT_B0,
287 /* B01 */ UNIT_B0,
288 /* C */ UNIT_C,
289 /* MULT-DIV */ UNIT_I0, /* multiply and divide only in I0 unit. */
290 /* IACC */ UNIT_I01, /* iacc multiply in I0 or I1 unit. */
291 /* LOAD */ UNIT_I0, /* load only in I0 unit. */
292 /* STORE */ UNIT_I0, /* store only in I0 unit. */
293 /* SCAN */ UNIT_I0, /* scan only in I0 unit. */
294 /* DCPL */ UNIT_I0, /* dcpl only in I0 unit. */
295 /* MDUALACC */ UNIT_FM0, /* media dual acc insn only in FM0 unit. */
296 /* MDCUTSSI */ UNIT_FM01, /* mdcutssi in FM0 or FM1. */
297 /* MCLRACC-1*/ UNIT_FM0 /* mclracc,A==1 insn only in FM0 unit. */
300 static CGEN_ATTR_VALUE_ENUM_TYPE fr500_unit_mapping[] =
302 /* unit in insn actual unit */
303 /* NIL */ UNIT_NIL,
304 /* I0 */ UNIT_I0,
305 /* I1 */ UNIT_I1,
306 /* I01 */ UNIT_I01,
307 /* I2 */ UNIT_NIL, /* no I2 or I3 unit */
308 /* I3 */ UNIT_NIL,
309 /* IALL */ UNIT_I01, /* only I0 and I1 units */
310 /* FM0 */ UNIT_FM0,
311 /* FM1 */ UNIT_FM1,
312 /* FM01 */ UNIT_FM01,
313 /* FM2 */ UNIT_NIL, /* no F2 or M2 units */
314 /* FM3 */ UNIT_NIL, /* no F3 or M2 units */
315 /* FMALL */ UNIT_FM01,/* Only F0,F1,M0,M1 units */
316 /* FMLOW */ UNIT_FM0, /* Only F0,M0 units */
317 /* B0 */ UNIT_B0,
318 /* B1 */ UNIT_B1,
319 /* B01 */ UNIT_B01,
320 /* C */ UNIT_C,
321 /* MULT-DIV */ UNIT_I01, /* multiply and divide in I0 or I1 unit. */
322 /* IACC */ UNIT_NIL, /* iacc multiply not implemented */
323 /* LOAD */ UNIT_I01, /* load in I0 or I1 unit. */
324 /* STORE */ UNIT_I0, /* store only in I0 unit. */
325 /* SCAN */ UNIT_I01, /* scan in I0 or I1 unit. */
326 /* DCPL */ UNIT_C, /* dcpl only in C unit. */
327 /* MDUALACC */ UNIT_FM0, /* media dual acc insn only in FM0 unit. */
328 /* MDCUTSSI */ UNIT_FM0, /* mdcutssi only in FM0 unit. */
329 /* MCLRACC-1*/ UNIT_FM01 /* mclracc,A==1 in FM0 or FM1 unit. */
332 static CGEN_ATTR_VALUE_ENUM_TYPE fr550_unit_mapping[] =
334 /* unit in insn actual unit */
335 /* NIL */ UNIT_NIL,
336 /* I0 */ UNIT_I0,
337 /* I1 */ UNIT_I1,
338 /* I01 */ UNIT_I01,
339 /* I2 */ UNIT_I2,
340 /* I3 */ UNIT_I3,
341 /* IALL */ UNIT_IALL,
342 /* FM0 */ UNIT_FM0,
343 /* FM1 */ UNIT_FM1,
344 /* FM01 */ UNIT_FM01,
345 /* FM2 */ UNIT_FM2,
346 /* FM3 */ UNIT_FM3,
347 /* FMALL */ UNIT_FMALL,
348 /* FMLOW */ UNIT_FM01, /* Only F0,F1,M0,M1 units */
349 /* B0 */ UNIT_B0,
350 /* B1 */ UNIT_B1,
351 /* B01 */ UNIT_B01,
352 /* C */ UNIT_C,
353 /* MULT-DIV */ UNIT_I01, /* multiply and divide in I0 or I1 unit. */
354 /* IACC */ UNIT_NIL, /* iacc multiply not implemented. */
355 /* LOAD */ UNIT_I01, /* load in I0 or I1 unit. */
356 /* STORE */ UNIT_I01, /* store in I0 or I1 unit. */
357 /* SCAN */ UNIT_IALL, /* scan in any integer unit. */
358 /* DCPL */ UNIT_I0, /* dcpl only in I0 unit. */
359 /* MDUALACC */ UNIT_FMALL,/* media dual acc insn in all media units */
360 /* MDCUTSSI */ UNIT_FM01, /* mdcutssi in FM0 or FM1 unit. */
361 /* MCLRACC-1*/ UNIT_FM01 /* mclracc,A==1 in FM0 or FM1 unit. */
364 void
365 frv_vliw_reset (FRV_VLIW *vliw, unsigned long mach, unsigned long elf_flags)
367 vliw->next_slot = 0;
368 vliw->constraint_violation = 0;
369 vliw->mach = mach;
370 vliw->elf_flags = elf_flags;
372 switch (mach)
374 case bfd_mach_fr400:
375 vliw->current_vliw = fr400_allowed_vliw;
376 vliw->unit_mapping = fr400_unit_mapping;
377 break;
378 case bfd_mach_fr450:
379 vliw->current_vliw = fr400_allowed_vliw;
380 vliw->unit_mapping = fr450_unit_mapping;
381 break;
382 case bfd_mach_fr550:
383 vliw->current_vliw = fr550_allowed_vliw;
384 vliw->unit_mapping = fr550_unit_mapping;
385 break;
386 default:
387 vliw->current_vliw = fr500_allowed_vliw;
388 vliw->unit_mapping = fr500_unit_mapping;
389 break;
393 /* Return TRUE if unit1 is a match for unit2.
394 Unit1 comes from the insn's UNIT attribute. unit2 comes from one of the
395 *_allowed_vliw tables above. */
396 static bfd_boolean
397 match_unit (FRV_VLIW *vliw,
398 CGEN_ATTR_VALUE_ENUM_TYPE unit1, CGEN_ATTR_VALUE_ENUM_TYPE unit2)
400 /* Map any specialized implementation units to actual ones. */
401 unit1 = vliw->unit_mapping[unit1];
403 if (unit1 == unit2)
404 return TRUE;
405 if (unit1 < unit2)
406 return FALSE;
408 switch (unit1)
410 case UNIT_I01:
411 case UNIT_FM01:
412 case UNIT_B01:
413 /* The 01 versions of these units are within 2 enums of the 0 or 1
414 versions. */
415 if (unit1 - unit2 <= 2)
416 return TRUE;
417 break;
418 case UNIT_IALL:
419 case UNIT_FMALL:
420 /* The ALL versions of these units are within 5 enums of the 0, 1, 2 or 3
421 versions. */
422 if (unit1 - unit2 <= 5)
423 return TRUE;
424 break;
425 default:
426 break;
429 return FALSE;
432 /* Return TRUE if the vliws match, FALSE otherwise. */
434 static bfd_boolean
435 match_vliw (VLIW_COMBO *vliw1, VLIW_COMBO *vliw2, int vliw_size)
437 int i;
439 for (i = 0; i < vliw_size; ++i)
440 if ((*vliw1)[i] != (*vliw2)[i])
441 return FALSE;
443 return TRUE;
446 /* Find the next vliw vliw in the table that can accomodate the new insn.
447 If one is found then return it. Otherwise return NULL. */
449 static VLIW_COMBO *
450 add_next_to_vliw (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE unit)
452 int next = vliw->next_slot;
453 VLIW_COMBO *current = vliw->current_vliw;
454 VLIW_COMBO *potential;
456 if (next <= 0)
458 /* xgettext:c-format */
459 opcodes_error_handler (_("internal error: bad vliw->next_slot value"));
460 abort ();
463 /* The table is sorted by units allowed within slots, so vliws with
464 identical starting sequences are together. */
465 potential = current;
468 if (match_unit (vliw, unit, (*potential)[next]))
469 return potential;
470 ++potential;
472 while (match_vliw (potential, current, next));
474 return NULL;
477 /* Look for the given major insn type in the given vliw.
478 Returns TRUE if found, FALSE otherwise. */
480 static bfd_boolean
481 find_major_in_vliw (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
483 int i;
485 for (i = 0; i < vliw->next_slot; ++i)
486 if (vliw->major[i] == major)
487 return TRUE;
489 return FALSE;
492 /* Check for constraints between the insns in the vliw due to major insn
493 types. */
495 static bfd_boolean
496 fr400_check_insn_major_constraints (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
498 /* In the cpu file, all media insns are represented as being allowed in
499 both media units. This makes it easier since this is the case for fr500.
500 Catch the invalid combinations here. Insns of major class FR400_MAJOR_M_2
501 cannot coexist with any other media insn in a vliw. */
502 switch (major)
504 case FR400_MAJOR_M_2:
505 return ! find_major_in_vliw (vliw, FR400_MAJOR_M_1)
506 && ! find_major_in_vliw (vliw, FR400_MAJOR_M_2);
507 case FR400_MAJOR_M_1:
508 return ! find_major_in_vliw (vliw, FR400_MAJOR_M_2);
509 default:
510 break;
512 return TRUE;
515 static bfd_boolean
516 fr450_check_insn_major_constraints (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
518 CGEN_ATTR_VALUE_ENUM_TYPE other_major;
520 /* Our caller guarantees there's at least one other instruction. */
521 other_major = CGEN_INSN_ATTR_VALUE (vliw->insn[0], CGEN_INSN_FR450_MAJOR);
523 /* (M4, M5) and (M4, M6) are allowed. */
524 if (other_major == FR450_MAJOR_M_4)
525 if (major == FR450_MAJOR_M_5 || major == FR450_MAJOR_M_6)
526 return TRUE;
528 /* Otherwise, instructions in even-numbered media categories cannot be
529 executed in parallel with other media instructions. */
530 switch (major)
532 case FR450_MAJOR_M_2:
533 case FR450_MAJOR_M_4:
534 case FR450_MAJOR_M_6:
535 return !(other_major >= FR450_MAJOR_M_1
536 && other_major <= FR450_MAJOR_M_6);
538 case FR450_MAJOR_M_1:
539 case FR450_MAJOR_M_3:
540 case FR450_MAJOR_M_5:
541 return !(other_major == FR450_MAJOR_M_2
542 || other_major == FR450_MAJOR_M_4
543 || other_major == FR450_MAJOR_M_6);
545 default:
546 return TRUE;
550 static bfd_boolean
551 find_unit_in_vliw (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE unit)
553 int i;
555 for (i = 0; i < vliw->next_slot; ++i)
556 if (CGEN_INSN_ATTR_VALUE (vliw->insn[i], CGEN_INSN_UNIT) == unit)
557 return TRUE;
559 return FALSE; /* Not found. */
562 static bfd_boolean
563 find_major_in_slot (FRV_VLIW *vliw,
564 CGEN_ATTR_VALUE_ENUM_TYPE major,
565 CGEN_ATTR_VALUE_ENUM_TYPE slot)
567 int i;
569 for (i = 0; i < vliw->next_slot; ++i)
570 if (vliw->major[i] == major && (*vliw->current_vliw)[i] == slot)
571 return TRUE;
573 return FALSE;
576 static bfd_boolean
577 fr550_find_media_in_vliw (FRV_VLIW *vliw)
579 int i;
581 for (i = 0; i < vliw->next_slot; ++i)
583 if (vliw->major[i] < FR550_MAJOR_M_1 || vliw->major[i] > FR550_MAJOR_M_5)
584 continue;
586 /* Found a media insn, however, MNOP and MCLRACC don't count. */
587 if (CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_MNOP
588 || CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_MCLRACC_0
589 || CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_MCLRACC_1)
590 continue;
592 return TRUE; /* Found one. */
595 return FALSE;
598 static bfd_boolean
599 fr550_find_float_in_vliw (FRV_VLIW *vliw)
601 int i;
603 for (i = 0; i < vliw->next_slot; ++i)
605 if (vliw->major[i] < FR550_MAJOR_F_1 || vliw->major[i] > FR550_MAJOR_F_4)
606 continue;
608 /* Found a floating point insn, however, FNOP doesn't count. */
609 if (CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_FNOP)
610 continue;
612 return TRUE; /* Found one. */
615 return FALSE;
618 static bfd_boolean
619 fr550_check_insn_major_constraints (FRV_VLIW *vliw,
620 CGEN_ATTR_VALUE_ENUM_TYPE major,
621 const CGEN_INSN *insn)
623 CGEN_ATTR_VALUE_ENUM_TYPE unit;
624 CGEN_ATTR_VALUE_ENUM_TYPE slot = (*vliw->current_vliw)[vliw->next_slot];
625 switch (slot)
627 case UNIT_I2:
628 /* If it's a store, then there must be another store in I1 */
629 unit = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_UNIT);
630 if (unit == UNIT_STORE)
631 return find_unit_in_vliw (vliw, UNIT_STORE);
632 break;
633 case UNIT_FM2:
634 case UNIT_FM3:
635 /* Floating point insns other than FNOP in slot f2 or f3 cannot coexist
636 with media insns. */
637 if (major >= FR550_MAJOR_F_1 && major <= FR550_MAJOR_F_4
638 && CGEN_INSN_NUM (insn) != FRV_INSN_FNOP)
639 return ! fr550_find_media_in_vliw (vliw);
640 /* Media insns other than MNOP in slot m2 or m3 cannot coexist with
641 floating point insns. */
642 if (major >= FR550_MAJOR_M_1 && major <= FR550_MAJOR_M_5
643 && CGEN_INSN_NUM (insn) != FRV_INSN_MNOP)
644 return ! fr550_find_float_in_vliw (vliw);
645 /* F-2 in slot f2 or f3 cannot coexist with F-2 or F-4 in slot f1 or f2
646 respectively. */
647 if (major == FR550_MAJOR_F_2)
648 return ! find_major_in_slot (vliw, FR550_MAJOR_F_2,
649 slot - (UNIT_FM2 - UNIT_FM0))
650 && ! find_major_in_slot (vliw, FR550_MAJOR_F_4,
651 slot - (UNIT_FM2 - UNIT_FM0));
652 /* M-2 or M-5 in slot m2 or m3 cannot coexist with M-2 in slot m1 or m2
653 respectively. */
654 if (major == FR550_MAJOR_M_2 || major == FR550_MAJOR_M_5)
655 return ! find_major_in_slot (vliw, FR550_MAJOR_M_2,
656 slot - (UNIT_FM2 - UNIT_FM0));
657 /* M-4 in slot m2 or m3 cannot coexist with M-4 in slot m1 or m2
658 respectively. */
659 if (major == FR550_MAJOR_M_4)
660 return ! find_major_in_slot (vliw, FR550_MAJOR_M_4,
661 slot - (UNIT_FM2 - UNIT_FM0));
662 break;
663 default:
664 break;
666 return TRUE; /* All OK. */
669 static bfd_boolean
670 fr500_check_insn_major_constraints (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
672 /* TODO: A table might be faster for some of the more complex instances
673 here. */
674 switch (major)
676 case FR500_MAJOR_I_1:
677 case FR500_MAJOR_I_4:
678 case FR500_MAJOR_I_5:
679 case FR500_MAJOR_I_6:
680 case FR500_MAJOR_B_1:
681 case FR500_MAJOR_B_2:
682 case FR500_MAJOR_B_3:
683 case FR500_MAJOR_B_4:
684 case FR500_MAJOR_B_5:
685 case FR500_MAJOR_B_6:
686 case FR500_MAJOR_F_4:
687 case FR500_MAJOR_F_8:
688 case FR500_MAJOR_M_8:
689 return TRUE; /* OK */
690 case FR500_MAJOR_I_2:
691 /* Cannot coexist with I-3 insn. */
692 return ! find_major_in_vliw (vliw, FR500_MAJOR_I_3);
693 case FR500_MAJOR_I_3:
694 /* Cannot coexist with I-2 insn. */
695 return ! find_major_in_vliw (vliw, FR500_MAJOR_I_2);
696 case FR500_MAJOR_F_1:
697 case FR500_MAJOR_F_2:
698 /* Cannot coexist with F-5, F-6, or M-7 insn. */
699 return ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
700 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
701 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
702 case FR500_MAJOR_F_3:
703 /* Cannot coexist with F-7, or M-7 insn. */
704 return ! find_major_in_vliw (vliw, FR500_MAJOR_F_7)
705 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
706 case FR500_MAJOR_F_5:
707 /* Cannot coexist with F-1, F-2, F-6, F-7, or M-7 insn. */
708 return ! find_major_in_vliw (vliw, FR500_MAJOR_F_1)
709 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_2)
710 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
711 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_7)
712 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
713 case FR500_MAJOR_F_6:
714 /* Cannot coexist with F-1, F-2, F-5, F-6, or M-7 insn. */
715 return ! find_major_in_vliw (vliw, FR500_MAJOR_F_1)
716 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_2)
717 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
718 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
719 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
720 case FR500_MAJOR_F_7:
721 /* Cannot coexist with F-3, F-5, F-7, or M-7 insn. */
722 return ! find_major_in_vliw (vliw, FR500_MAJOR_F_3)
723 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
724 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_7)
725 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
726 case FR500_MAJOR_M_1:
727 /* Cannot coexist with M-7 insn. */
728 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
729 case FR500_MAJOR_M_2:
730 case FR500_MAJOR_M_3:
731 /* Cannot coexist with M-5, M-6 or M-7 insn. */
732 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
733 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
734 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
735 case FR500_MAJOR_M_4:
736 /* Cannot coexist with M-6 insn. */
737 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_6);
738 case FR500_MAJOR_M_5:
739 /* Cannot coexist with M-2, M-3, M-5, M-6 or M-7 insn. */
740 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_2)
741 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_3)
742 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
743 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
744 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
745 case FR500_MAJOR_M_6:
746 /* Cannot coexist with M-2, M-3, M-4, M-5, M-6 or M-7 insn. */
747 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_2)
748 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_3)
749 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_4)
750 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
751 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
752 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
753 case FR500_MAJOR_M_7:
754 /* Cannot coexist with M-1, M-2, M-3, M-5, M-6 or M-7 insn. */
755 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_1)
756 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_2)
757 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_3)
758 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
759 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
760 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7)
761 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_1)
762 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_2)
763 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_3)
764 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
765 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
766 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_7);
767 default:
768 /* xgettext:c-format */
769 opcodes_error_handler (_("internal error: bad major code"));
770 abort ();
771 break;
773 return TRUE;
776 static bfd_boolean
777 check_insn_major_constraints (FRV_VLIW *vliw,
778 CGEN_ATTR_VALUE_ENUM_TYPE major,
779 const CGEN_INSN *insn)
781 switch (vliw->mach)
783 case bfd_mach_fr400:
784 return fr400_check_insn_major_constraints (vliw, major);
786 case bfd_mach_fr450:
787 return fr450_check_insn_major_constraints (vliw, major);
789 case bfd_mach_fr550:
790 return fr550_check_insn_major_constraints (vliw, major, insn);
792 default:
793 return fr500_check_insn_major_constraints (vliw, major);
797 /* Add in insn to the VLIW vliw if possible.
798 Return 0 if successful, non-zero otherwise. */
801 frv_vliw_add_insn (FRV_VLIW *vliw, const CGEN_INSN *insn)
803 int slot_index;
804 CGEN_ATTR_VALUE_ENUM_TYPE major;
805 CGEN_ATTR_VALUE_ENUM_TYPE unit;
806 VLIW_COMBO *new_vliw;
808 if (vliw->constraint_violation || CGEN_INSN_INVALID_P (insn))
809 return 1;
811 slot_index = vliw->next_slot;
812 if (slot_index >= FRV_VLIW_SIZE)
813 return 1;
815 unit = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_UNIT);
816 if (unit == UNIT_NIL)
818 /* xgettext:c-format */
819 opcodes_error_handler (_("internal error: bad insn unit"));
820 abort ();
823 switch (vliw->mach)
825 case bfd_mach_fr400:
826 major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR);
827 break;
828 case bfd_mach_fr450:
829 major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR);
830 break;
831 case bfd_mach_fr550:
832 major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR550_MAJOR);
833 break;
834 default:
835 major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR);
836 break;
839 if (slot_index <= 0)
841 /* Any insn can be added to slot 0. */
842 while (! match_unit (vliw, unit, (*vliw->current_vliw)[0]))
843 ++vliw->current_vliw;
844 vliw->major[0] = major;
845 vliw->insn[0] = insn;
846 vliw->next_slot = 1;
847 return 0;
850 /* If there are already insns in the vliw(s) check to see that
851 this one can be added. Do this by finding an allowable vliw
852 combination that can accept the new insn. */
853 if (! (vliw->elf_flags & EF_FRV_NOPACK))
855 new_vliw = add_next_to_vliw (vliw, unit);
856 if (new_vliw && check_insn_major_constraints (vliw, major, insn))
858 vliw->current_vliw = new_vliw;
859 vliw->major[slot_index] = major;
860 vliw->insn[slot_index] = insn;
861 vliw->next_slot++;
862 return 0;
865 /* The frv machine supports all packing conbinations. If we fail,
866 to add the insn, then it could not be handled as if it was the fr500.
867 Just return as if it was handled ok. */
868 if (vliw->mach == bfd_mach_frv)
869 return 0;
872 vliw->constraint_violation = 1;
873 return 1;
876 bfd_boolean
877 spr_valid (long regno)
879 if (regno < 0) return FALSE;
880 if (regno <= 4095) return TRUE;
881 return FALSE;
883 /* -- */
884 /* The hash functions are recorded here to help keep assembler code out of
885 the disassembler and vice versa. */
887 static int asm_hash_insn_p (const CGEN_INSN *);
888 static unsigned int asm_hash_insn (const char *);
889 static int dis_hash_insn_p (const CGEN_INSN *);
890 static unsigned int dis_hash_insn (const char *, CGEN_INSN_INT);
892 /* Instruction formats. */
894 #define F(f) & frv_cgen_ifld_table[FRV_##f]
895 static const CGEN_IFMT ifmt_empty ATTRIBUTE_UNUSED = {
896 0, 0, 0x0, { { 0 } }
899 static const CGEN_IFMT ifmt_add ATTRIBUTE_UNUSED = {
900 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 } }
903 static const CGEN_IFMT ifmt_not ATTRIBUTE_UNUSED = {
904 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 } }
907 static const CGEN_IFMT ifmt_smul ATTRIBUTE_UNUSED = {
908 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 } }
911 static const CGEN_IFMT ifmt_smu ATTRIBUTE_UNUSED = {
912 32, 32, 0x7ffc0fc0, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
915 static const CGEN_IFMT ifmt_slass ATTRIBUTE_UNUSED = {
916 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
919 static const CGEN_IFMT ifmt_scutss ATTRIBUTE_UNUSED = {
920 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
923 static const CGEN_IFMT ifmt_cadd ATTRIBUTE_UNUSED = {
924 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 } }
927 static const CGEN_IFMT ifmt_cnot ATTRIBUTE_UNUSED = {
928 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 } }
931 static const CGEN_IFMT ifmt_csmul ATTRIBUTE_UNUSED = {
932 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 } }
935 static const CGEN_IFMT ifmt_addcc ATTRIBUTE_UNUSED = {
936 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 } }
939 static const CGEN_IFMT ifmt_smulcc ATTRIBUTE_UNUSED = {
940 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 } }
943 static const CGEN_IFMT ifmt_addi ATTRIBUTE_UNUSED = {
944 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
947 static const CGEN_IFMT ifmt_smuli ATTRIBUTE_UNUSED = {
948 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
951 static const CGEN_IFMT ifmt_addicc ATTRIBUTE_UNUSED = {
952 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_S10) }, { 0 } }
955 static const CGEN_IFMT ifmt_smulicc ATTRIBUTE_UNUSED = {
956 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_S10) }, { 0 } }
959 static const CGEN_IFMT ifmt_cmpb ATTRIBUTE_UNUSED = {
960 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 } }
963 static const CGEN_IFMT ifmt_setlo ATTRIBUTE_UNUSED = {
964 32, 32, 0x1ff0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_MISC_NULL_4) }, { F (F_U16) }, { 0 } }
967 static const CGEN_IFMT ifmt_sethi ATTRIBUTE_UNUSED = {
968 32, 32, 0x1ff0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_MISC_NULL_4) }, { F (F_U16) }, { 0 } }
971 static const CGEN_IFMT ifmt_setlos ATTRIBUTE_UNUSED = {
972 32, 32, 0x1ff0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_MISC_NULL_4) }, { F (F_S16) }, { 0 } }
975 static const CGEN_IFMT ifmt_ldbf ATTRIBUTE_UNUSED = {
976 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
979 static const CGEN_IFMT ifmt_ldc ATTRIBUTE_UNUSED = {
980 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_CPRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
983 static const CGEN_IFMT ifmt_ldd ATTRIBUTE_UNUSED = {
984 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
987 static const CGEN_IFMT ifmt_lddf ATTRIBUTE_UNUSED = {
988 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
991 static const CGEN_IFMT ifmt_lddc ATTRIBUTE_UNUSED = {
992 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_CPRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
995 static const CGEN_IFMT ifmt_ldsbi ATTRIBUTE_UNUSED = {
996 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
999 static const CGEN_IFMT ifmt_ldbfi ATTRIBUTE_UNUSED = {
1000 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1003 static const CGEN_IFMT ifmt_lddi ATTRIBUTE_UNUSED = {
1004 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1007 static const CGEN_IFMT ifmt_lddfi ATTRIBUTE_UNUSED = {
1008 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1011 static const CGEN_IFMT ifmt_cldbf ATTRIBUTE_UNUSED = {
1012 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 } }
1015 static const CGEN_IFMT ifmt_clddf ATTRIBUTE_UNUSED = {
1016 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 } }
1019 static const CGEN_IFMT ifmt_movgf ATTRIBUTE_UNUSED = {
1020 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1023 static const CGEN_IFMT ifmt_cmovgf ATTRIBUTE_UNUSED = {
1024 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 } }
1027 static const CGEN_IFMT ifmt_movgs ATTRIBUTE_UNUSED = {
1028 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_OP) }, { F (F_SPR) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1031 static const CGEN_IFMT ifmt_bra ATTRIBUTE_UNUSED = {
1032 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 } }
1035 static const CGEN_IFMT ifmt_bno ATTRIBUTE_UNUSED = {
1036 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 } }
1039 static const CGEN_IFMT ifmt_beq ATTRIBUTE_UNUSED = {
1040 32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16) }, { 0 } }
1043 static const CGEN_IFMT ifmt_fbra ATTRIBUTE_UNUSED = {
1044 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 } }
1047 static const CGEN_IFMT ifmt_fbno ATTRIBUTE_UNUSED = {
1048 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 } }
1051 static const CGEN_IFMT ifmt_fbne ATTRIBUTE_UNUSED = {
1052 32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16) }, { 0 } }
1055 static const CGEN_IFMT ifmt_bctrlr ATTRIBUTE_UNUSED = {
1056 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 } }
1059 static const CGEN_IFMT ifmt_bralr ATTRIBUTE_UNUSED = {
1060 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 } }
1063 static const CGEN_IFMT ifmt_bnolr ATTRIBUTE_UNUSED = {
1064 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 } }
1067 static const CGEN_IFMT ifmt_beqlr ATTRIBUTE_UNUSED = {
1068 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 } }
1071 static const CGEN_IFMT ifmt_fbralr ATTRIBUTE_UNUSED = {
1072 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 } }
1075 static const CGEN_IFMT ifmt_fbnolr ATTRIBUTE_UNUSED = {
1076 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 } }
1079 static const CGEN_IFMT ifmt_fbeqlr ATTRIBUTE_UNUSED = {
1080 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 } }
1083 static const CGEN_IFMT ifmt_bcralr ATTRIBUTE_UNUSED = {
1084 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 } }
1087 static const CGEN_IFMT ifmt_bceqlr ATTRIBUTE_UNUSED = {
1088 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 } }
1091 static const CGEN_IFMT ifmt_fcbralr ATTRIBUTE_UNUSED = {
1092 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 } }
1095 static const CGEN_IFMT ifmt_fcbeqlr ATTRIBUTE_UNUSED = {
1096 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 } }
1099 static const CGEN_IFMT ifmt_jmpl ATTRIBUTE_UNUSED = {
1100 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 } }
1103 static const CGEN_IFMT ifmt_calll ATTRIBUTE_UNUSED = {
1104 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 } }
1107 static const CGEN_IFMT ifmt_jmpil ATTRIBUTE_UNUSED = {
1108 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 } }
1111 static const CGEN_IFMT ifmt_callil ATTRIBUTE_UNUSED = {
1112 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 } }
1115 static const CGEN_IFMT ifmt_call ATTRIBUTE_UNUSED = {
1116 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_OP) }, { F (F_LABEL24) }, { 0 } }
1119 static const CGEN_IFMT ifmt_rett ATTRIBUTE_UNUSED = {
1120 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 } }
1123 static const CGEN_IFMT ifmt_rei ATTRIBUTE_UNUSED = {
1124 32, 32, 0x7ffc0fff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_EIR) }, { F (F_S12_NULL) }, { 0 } }
1127 static const CGEN_IFMT ifmt_tra ATTRIBUTE_UNUSED = {
1128 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 } }
1131 static const CGEN_IFMT ifmt_tno ATTRIBUTE_UNUSED = {
1132 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 } }
1135 static const CGEN_IFMT ifmt_teq ATTRIBUTE_UNUSED = {
1136 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 } }
1139 static const CGEN_IFMT ifmt_ftra ATTRIBUTE_UNUSED = {
1140 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 } }
1143 static const CGEN_IFMT ifmt_ftno ATTRIBUTE_UNUSED = {
1144 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 } }
1147 static const CGEN_IFMT ifmt_ftne ATTRIBUTE_UNUSED = {
1148 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 } }
1151 static const CGEN_IFMT ifmt_tira ATTRIBUTE_UNUSED = {
1152 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 } }
1155 static const CGEN_IFMT ifmt_tino ATTRIBUTE_UNUSED = {
1156 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 } }
1159 static const CGEN_IFMT ifmt_tieq ATTRIBUTE_UNUSED = {
1160 32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1163 static const CGEN_IFMT ifmt_ftira ATTRIBUTE_UNUSED = {
1164 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 } }
1167 static const CGEN_IFMT ifmt_ftino ATTRIBUTE_UNUSED = {
1168 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 } }
1171 static const CGEN_IFMT ifmt_ftine ATTRIBUTE_UNUSED = {
1172 32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1175 static const CGEN_IFMT ifmt_break ATTRIBUTE_UNUSED = {
1176 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 } }
1179 static const CGEN_IFMT ifmt_andcr ATTRIBUTE_UNUSED = {
1180 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 } }
1183 static const CGEN_IFMT ifmt_notcr ATTRIBUTE_UNUSED = {
1184 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 } }
1187 static const CGEN_IFMT ifmt_ckra ATTRIBUTE_UNUSED = {
1188 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 } }
1191 static const CGEN_IFMT ifmt_ckeq ATTRIBUTE_UNUSED = {
1192 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 } }
1195 static const CGEN_IFMT ifmt_fckra ATTRIBUTE_UNUSED = {
1196 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 } }
1199 static const CGEN_IFMT ifmt_cckra ATTRIBUTE_UNUSED = {
1200 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 } }
1203 static const CGEN_IFMT ifmt_cckeq ATTRIBUTE_UNUSED = {
1204 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 } }
1207 static const CGEN_IFMT ifmt_cfckra ATTRIBUTE_UNUSED = {
1208 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 } }
1211 static const CGEN_IFMT ifmt_cfckne ATTRIBUTE_UNUSED = {
1212 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 } }
1215 static const CGEN_IFMT ifmt_cjmpl ATTRIBUTE_UNUSED = {
1216 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 } }
1219 static const CGEN_IFMT ifmt_ccalll ATTRIBUTE_UNUSED = {
1220 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 } }
1223 static const CGEN_IFMT ifmt_icei ATTRIBUTE_UNUSED = {
1224 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 } }
1227 static const CGEN_IFMT ifmt_icpl ATTRIBUTE_UNUSED = {
1228 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 } }
1231 static const CGEN_IFMT ifmt_icul ATTRIBUTE_UNUSED = {
1232 32, 32, 0x7ffc0fff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ_NULL) }, { 0 } }
1235 static const CGEN_IFMT ifmt_bar ATTRIBUTE_UNUSED = {
1236 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 } }
1239 static const CGEN_IFMT ifmt_lrai ATTRIBUTE_UNUSED = {
1240 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 } }
1243 static const CGEN_IFMT ifmt_tlbpr ATTRIBUTE_UNUSED = {
1244 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 } }
1247 static const CGEN_IFMT ifmt_cop1 ATTRIBUTE_UNUSED = {
1248 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_CPRK) }, { F (F_OP) }, { F (F_CPRI) }, { F (F_S6_1) }, { F (F_CPRJ) }, { 0 } }
1251 static const CGEN_IFMT ifmt_clrgr ATTRIBUTE_UNUSED = {
1252 32, 32, 0x1ffffff, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ_NULL) }, { 0 } }
1255 static const CGEN_IFMT ifmt_clrfr ATTRIBUTE_UNUSED = {
1256 32, 32, 0x1ffffff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ_NULL) }, { 0 } }
1259 static const CGEN_IFMT ifmt_fitos ATTRIBUTE_UNUSED = {
1260 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1263 static const CGEN_IFMT ifmt_fstoi ATTRIBUTE_UNUSED = {
1264 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1267 static const CGEN_IFMT ifmt_fitod ATTRIBUTE_UNUSED = {
1268 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1271 static const CGEN_IFMT ifmt_fdtoi ATTRIBUTE_UNUSED = {
1272 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1275 static const CGEN_IFMT ifmt_cfitos ATTRIBUTE_UNUSED = {
1276 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 } }
1279 static const CGEN_IFMT ifmt_cfstoi ATTRIBUTE_UNUSED = {
1280 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 } }
1283 static const CGEN_IFMT ifmt_fmovs ATTRIBUTE_UNUSED = {
1284 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1287 static const CGEN_IFMT ifmt_fmovd ATTRIBUTE_UNUSED = {
1288 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1291 static const CGEN_IFMT ifmt_cfmovs ATTRIBUTE_UNUSED = {
1292 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 } }
1295 static const CGEN_IFMT ifmt_fadds ATTRIBUTE_UNUSED = {
1296 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1299 static const CGEN_IFMT ifmt_faddd ATTRIBUTE_UNUSED = {
1300 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1303 static const CGEN_IFMT ifmt_cfadds ATTRIBUTE_UNUSED = {
1304 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 } }
1307 static const CGEN_IFMT ifmt_fcmps ATTRIBUTE_UNUSED = {
1308 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 } }
1311 static const CGEN_IFMT ifmt_fcmpd ATTRIBUTE_UNUSED = {
1312 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 } }
1315 static const CGEN_IFMT ifmt_cfcmps ATTRIBUTE_UNUSED = {
1316 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 } }
1319 static const CGEN_IFMT ifmt_mhsetlos ATTRIBUTE_UNUSED = {
1320 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_OPE1) }, { F (F_U12) }, { 0 } }
1323 static const CGEN_IFMT ifmt_mhsethis ATTRIBUTE_UNUSED = {
1324 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_OPE1) }, { F (F_U12) }, { 0 } }
1327 static const CGEN_IFMT ifmt_mhdsets ATTRIBUTE_UNUSED = {
1328 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_OPE1) }, { F (F_U12) }, { 0 } }
1331 static const CGEN_IFMT ifmt_mhsetloh ATTRIBUTE_UNUSED = {
1332 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 } }
1335 static const CGEN_IFMT ifmt_mhsethih ATTRIBUTE_UNUSED = {
1336 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 } }
1339 static const CGEN_IFMT ifmt_mhdseth ATTRIBUTE_UNUSED = {
1340 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 } }
1343 static const CGEN_IFMT ifmt_mand ATTRIBUTE_UNUSED = {
1344 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1347 static const CGEN_IFMT ifmt_cmand ATTRIBUTE_UNUSED = {
1348 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 } }
1351 static const CGEN_IFMT ifmt_mnot ATTRIBUTE_UNUSED = {
1352 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1355 static const CGEN_IFMT ifmt_cmnot ATTRIBUTE_UNUSED = {
1356 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 } }
1359 static const CGEN_IFMT ifmt_mrotli ATTRIBUTE_UNUSED = {
1360 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_U6) }, { 0 } }
1363 static const CGEN_IFMT ifmt_mcut ATTRIBUTE_UNUSED = {
1364 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1367 static const CGEN_IFMT ifmt_mcuti ATTRIBUTE_UNUSED = {
1368 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_S6) }, { 0 } }
1371 static const CGEN_IFMT ifmt_mdcutssi ATTRIBUTE_UNUSED = {
1372 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_S6) }, { 0 } }
1375 static const CGEN_IFMT ifmt_mdrotli ATTRIBUTE_UNUSED = {
1376 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_S6) }, { 0 } }
1379 static const CGEN_IFMT ifmt_mqsaths ATTRIBUTE_UNUSED = {
1380 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1383 static const CGEN_IFMT ifmt_mcmpsh ATTRIBUTE_UNUSED = {
1384 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 } }
1387 static const CGEN_IFMT ifmt_mabshs ATTRIBUTE_UNUSED = {
1388 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1391 static const CGEN_IFMT ifmt_cmqaddhss ATTRIBUTE_UNUSED = {
1392 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 } }
1395 static const CGEN_IFMT ifmt_mqsllhi ATTRIBUTE_UNUSED = {
1396 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_U6) }, { 0 } }
1399 static const CGEN_IFMT ifmt_maddaccs ATTRIBUTE_UNUSED = {
1400 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_ACCJ_NULL) }, { 0 } }
1403 static const CGEN_IFMT ifmt_mmulhs ATTRIBUTE_UNUSED = {
1404 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1407 static const CGEN_IFMT ifmt_cmmulhs ATTRIBUTE_UNUSED = {
1408 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 } }
1411 static const CGEN_IFMT ifmt_mqmulhs ATTRIBUTE_UNUSED = {
1412 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1415 static const CGEN_IFMT ifmt_cmqmulhs ATTRIBUTE_UNUSED = {
1416 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 } }
1419 static const CGEN_IFMT ifmt_mmachu ATTRIBUTE_UNUSED = {
1420 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40UK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1423 static const CGEN_IFMT ifmt_cmmachu ATTRIBUTE_UNUSED = {
1424 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 } }
1427 static const CGEN_IFMT ifmt_mqmachu ATTRIBUTE_UNUSED = {
1428 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40UK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1431 static const CGEN_IFMT ifmt_cmqmachu ATTRIBUTE_UNUSED = {
1432 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 } }
1435 static const CGEN_IFMT ifmt_cmexpdhw ATTRIBUTE_UNUSED = {
1436 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 } }
1439 static const CGEN_IFMT ifmt_mexpdhd ATTRIBUTE_UNUSED = {
1440 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_U6) }, { 0 } }
1443 static const CGEN_IFMT ifmt_cmexpdhd ATTRIBUTE_UNUSED = {
1444 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 } }
1447 static const CGEN_IFMT ifmt_munpackh ATTRIBUTE_UNUSED = {
1448 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1451 static const CGEN_IFMT ifmt_mdunpackh ATTRIBUTE_UNUSED = {
1452 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1455 static const CGEN_IFMT ifmt_mbtoh ATTRIBUTE_UNUSED = {
1456 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1459 static const CGEN_IFMT ifmt_cmbtoh ATTRIBUTE_UNUSED = {
1460 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 } }
1463 static const CGEN_IFMT ifmt_mhtob ATTRIBUTE_UNUSED = {
1464 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1467 static const CGEN_IFMT ifmt_cmhtob ATTRIBUTE_UNUSED = {
1468 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 } }
1471 static const CGEN_IFMT ifmt_cmbtohe ATTRIBUTE_UNUSED = {
1472 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 } }
1475 static const CGEN_IFMT ifmt_mnop ATTRIBUTE_UNUSED = {
1476 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 } }
1479 static const CGEN_IFMT ifmt_mclracc_0 ATTRIBUTE_UNUSED = {
1480 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 } }
1483 static const CGEN_IFMT ifmt_mrdacc ATTRIBUTE_UNUSED = {
1484 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1487 static const CGEN_IFMT ifmt_mrdaccg ATTRIBUTE_UNUSED = {
1488 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACCGI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1491 static const CGEN_IFMT ifmt_mwtacc ATTRIBUTE_UNUSED = {
1492 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1495 static const CGEN_IFMT ifmt_mwtaccg ATTRIBUTE_UNUSED = {
1496 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_ACCGK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1499 static const CGEN_IFMT ifmt_fnop ATTRIBUTE_UNUSED = {
1500 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 } }
1503 #undef F
1505 #define A(a) (1 << CGEN_INSN_##a)
1506 #define OPERAND(op) FRV_OPERAND_##op
1507 #define MNEM CGEN_SYNTAX_MNEMONIC /* syntax value for mnemonic */
1508 #define OP(field) CGEN_SYNTAX_MAKE_FIELD (OPERAND (field))
1510 /* The instruction table. */
1512 static const CGEN_OPCODE frv_cgen_insn_opcode_table[MAX_INSNS] =
1514 /* Special null first entry.
1515 A `num' value of zero is thus invalid.
1516 Also, the special `invalid' insn resides here. */
1517 { { 0, 0, 0, 0 }, {{0}}, 0, {0}},
1518 /* add$pack $GRi,$GRj,$GRk */
1520 { 0, 0, 0, 0 },
1521 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1522 & ifmt_add, { 0x0 }
1524 /* sub$pack $GRi,$GRj,$GRk */
1526 { 0, 0, 0, 0 },
1527 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1528 & ifmt_add, { 0x100 }
1530 /* and$pack $GRi,$GRj,$GRk */
1532 { 0, 0, 0, 0 },
1533 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1534 & ifmt_add, { 0x40000 }
1536 /* or$pack $GRi,$GRj,$GRk */
1538 { 0, 0, 0, 0 },
1539 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1540 & ifmt_add, { 0x40080 }
1542 /* xor$pack $GRi,$GRj,$GRk */
1544 { 0, 0, 0, 0 },
1545 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1546 & ifmt_add, { 0x40100 }
1548 /* not$pack $GRj,$GRk */
1550 { 0, 0, 0, 0 },
1551 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (GRK), 0 } },
1552 & ifmt_not, { 0x40180 }
1554 /* sdiv$pack $GRi,$GRj,$GRk */
1556 { 0, 0, 0, 0 },
1557 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1558 & ifmt_add, { 0x380 }
1560 /* nsdiv$pack $GRi,$GRj,$GRk */
1562 { 0, 0, 0, 0 },
1563 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1564 & ifmt_add, { 0x40380 }
1566 /* udiv$pack $GRi,$GRj,$GRk */
1568 { 0, 0, 0, 0 },
1569 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1570 & ifmt_add, { 0x3c0 }
1572 /* nudiv$pack $GRi,$GRj,$GRk */
1574 { 0, 0, 0, 0 },
1575 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1576 & ifmt_add, { 0x403c0 }
1578 /* smul$pack $GRi,$GRj,$GRdoublek */
1580 { 0, 0, 0, 0 },
1581 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), 0 } },
1582 & ifmt_smul, { 0x200 }
1584 /* umul$pack $GRi,$GRj,$GRdoublek */
1586 { 0, 0, 0, 0 },
1587 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), 0 } },
1588 & ifmt_smul, { 0x280 }
1590 /* smu$pack $GRi,$GRj */
1592 { 0, 0, 0, 0 },
1593 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
1594 & ifmt_smu, { 0x1180140 }
1596 /* smass$pack $GRi,$GRj */
1598 { 0, 0, 0, 0 },
1599 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
1600 & ifmt_smu, { 0x1180180 }
1602 /* smsss$pack $GRi,$GRj */
1604 { 0, 0, 0, 0 },
1605 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
1606 & ifmt_smu, { 0x11801c0 }
1608 /* sll$pack $GRi,$GRj,$GRk */
1610 { 0, 0, 0, 0 },
1611 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1612 & ifmt_add, { 0x40200 }
1614 /* srl$pack $GRi,$GRj,$GRk */
1616 { 0, 0, 0, 0 },
1617 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1618 & ifmt_add, { 0x40280 }
1620 /* sra$pack $GRi,$GRj,$GRk */
1622 { 0, 0, 0, 0 },
1623 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1624 & ifmt_add, { 0x40300 }
1626 /* slass$pack $GRi,$GRj,$GRk */
1628 { 0, 0, 0, 0 },
1629 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1630 & ifmt_slass, { 0x1180080 }
1632 /* scutss$pack $GRj,$GRk */
1634 { 0, 0, 0, 0 },
1635 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (GRK), 0 } },
1636 & ifmt_scutss, { 0x1180100 }
1638 /* scan$pack $GRi,$GRj,$GRk */
1640 { 0, 0, 0, 0 },
1641 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1642 & ifmt_add, { 0x2c0000 }
1644 /* cadd$pack $GRi,$GRj,$GRk,$CCi,$cond */
1646 { 0, 0, 0, 0 },
1647 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1648 & ifmt_cadd, { 0x1600000 }
1650 /* csub$pack $GRi,$GRj,$GRk,$CCi,$cond */
1652 { 0, 0, 0, 0 },
1653 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1654 & ifmt_cadd, { 0x1600040 }
1656 /* cand$pack $GRi,$GRj,$GRk,$CCi,$cond */
1658 { 0, 0, 0, 0 },
1659 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1660 & ifmt_cadd, { 0x1680000 }
1662 /* cor$pack $GRi,$GRj,$GRk,$CCi,$cond */
1664 { 0, 0, 0, 0 },
1665 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1666 & ifmt_cadd, { 0x1680040 }
1668 /* cxor$pack $GRi,$GRj,$GRk,$CCi,$cond */
1670 { 0, 0, 0, 0 },
1671 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1672 & ifmt_cadd, { 0x1680080 }
1674 /* cnot$pack $GRj,$GRk,$CCi,$cond */
1676 { 0, 0, 0, 0 },
1677 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1678 & ifmt_cnot, { 0x16800c0 }
1680 /* csmul$pack $GRi,$GRj,$GRdoublek,$CCi,$cond */
1682 { 0, 0, 0, 0 },
1683 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
1684 & ifmt_csmul, { 0x1600080 }
1686 /* csdiv$pack $GRi,$GRj,$GRk,$CCi,$cond */
1688 { 0, 0, 0, 0 },
1689 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1690 & ifmt_cadd, { 0x16000c0 }
1692 /* cudiv$pack $GRi,$GRj,$GRk,$CCi,$cond */
1694 { 0, 0, 0, 0 },
1695 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1696 & ifmt_cadd, { 0x16400c0 }
1698 /* csll$pack $GRi,$GRj,$GRk,$CCi,$cond */
1700 { 0, 0, 0, 0 },
1701 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1702 & ifmt_cadd, { 0x1700000 }
1704 /* csrl$pack $GRi,$GRj,$GRk,$CCi,$cond */
1706 { 0, 0, 0, 0 },
1707 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1708 & ifmt_cadd, { 0x1700040 }
1710 /* csra$pack $GRi,$GRj,$GRk,$CCi,$cond */
1712 { 0, 0, 0, 0 },
1713 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1714 & ifmt_cadd, { 0x1700080 }
1716 /* cscan$pack $GRi,$GRj,$GRk,$CCi,$cond */
1718 { 0, 0, 0, 0 },
1719 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1720 & ifmt_cadd, { 0x19400c0 }
1722 /* addcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1724 { 0, 0, 0, 0 },
1725 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1726 & ifmt_addcc, { 0x40 }
1728 /* subcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1730 { 0, 0, 0, 0 },
1731 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1732 & ifmt_addcc, { 0x140 }
1734 /* andcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1736 { 0, 0, 0, 0 },
1737 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1738 & ifmt_addcc, { 0x40040 }
1740 /* orcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1742 { 0, 0, 0, 0 },
1743 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1744 & ifmt_addcc, { 0x400c0 }
1746 /* xorcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1748 { 0, 0, 0, 0 },
1749 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1750 & ifmt_addcc, { 0x40140 }
1752 /* sllcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1754 { 0, 0, 0, 0 },
1755 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1756 & ifmt_addcc, { 0x40240 }
1758 /* srlcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1760 { 0, 0, 0, 0 },
1761 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1762 & ifmt_addcc, { 0x402c0 }
1764 /* sracc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1766 { 0, 0, 0, 0 },
1767 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1768 & ifmt_addcc, { 0x40340 }
1770 /* smulcc$pack $GRi,$GRj,$GRdoublek,$ICCi_1 */
1772 { 0, 0, 0, 0 },
1773 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
1774 & ifmt_smulcc, { 0x240 }
1776 /* umulcc$pack $GRi,$GRj,$GRdoublek,$ICCi_1 */
1778 { 0, 0, 0, 0 },
1779 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
1780 & ifmt_smulcc, { 0x2c0 }
1782 /* caddcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1784 { 0, 0, 0, 0 },
1785 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1786 & ifmt_cadd, { 0x1640000 }
1788 /* csubcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1790 { 0, 0, 0, 0 },
1791 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1792 & ifmt_cadd, { 0x1640040 }
1794 /* csmulcc$pack $GRi,$GRj,$GRdoublek,$CCi,$cond */
1796 { 0, 0, 0, 0 },
1797 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
1798 & ifmt_csmul, { 0x1640080 }
1800 /* candcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1802 { 0, 0, 0, 0 },
1803 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1804 & ifmt_cadd, { 0x16c0000 }
1806 /* corcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1808 { 0, 0, 0, 0 },
1809 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1810 & ifmt_cadd, { 0x16c0040 }
1812 /* cxorcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1814 { 0, 0, 0, 0 },
1815 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1816 & ifmt_cadd, { 0x16c0080 }
1818 /* csllcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1820 { 0, 0, 0, 0 },
1821 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1822 & ifmt_cadd, { 0x1740000 }
1824 /* csrlcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1826 { 0, 0, 0, 0 },
1827 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1828 & ifmt_cadd, { 0x1740040 }
1830 /* csracc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1832 { 0, 0, 0, 0 },
1833 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1834 & ifmt_cadd, { 0x1740080 }
1836 /* addx$pack $GRi,$GRj,$GRk,$ICCi_1 */
1838 { 0, 0, 0, 0 },
1839 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1840 & ifmt_addcc, { 0x80 }
1842 /* subx$pack $GRi,$GRj,$GRk,$ICCi_1 */
1844 { 0, 0, 0, 0 },
1845 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1846 & ifmt_addcc, { 0x180 }
1848 /* addxcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1850 { 0, 0, 0, 0 },
1851 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1852 & ifmt_addcc, { 0xc0 }
1854 /* subxcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1856 { 0, 0, 0, 0 },
1857 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1858 & ifmt_addcc, { 0x1c0 }
1860 /* addss$pack $GRi,$GRj,$GRk */
1862 { 0, 0, 0, 0 },
1863 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1864 & ifmt_slass, { 0x1180000 }
1866 /* subss$pack $GRi,$GRj,$GRk */
1868 { 0, 0, 0, 0 },
1869 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1870 & ifmt_slass, { 0x1180040 }
1872 /* addi$pack $GRi,$s12,$GRk */
1874 { 0, 0, 0, 0 },
1875 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1876 & ifmt_addi, { 0x400000 }
1878 /* subi$pack $GRi,$s12,$GRk */
1880 { 0, 0, 0, 0 },
1881 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1882 & ifmt_addi, { 0x500000 }
1884 /* andi$pack $GRi,$s12,$GRk */
1886 { 0, 0, 0, 0 },
1887 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1888 & ifmt_addi, { 0x800000 }
1890 /* ori$pack $GRi,$s12,$GRk */
1892 { 0, 0, 0, 0 },
1893 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1894 & ifmt_addi, { 0x880000 }
1896 /* xori$pack $GRi,$s12,$GRk */
1898 { 0, 0, 0, 0 },
1899 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1900 & ifmt_addi, { 0x900000 }
1902 /* sdivi$pack $GRi,$s12,$GRk */
1904 { 0, 0, 0, 0 },
1905 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1906 & ifmt_addi, { 0x780000 }
1908 /* nsdivi$pack $GRi,$s12,$GRk */
1910 { 0, 0, 0, 0 },
1911 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1912 & ifmt_addi, { 0xb80000 }
1914 /* udivi$pack $GRi,$s12,$GRk */
1916 { 0, 0, 0, 0 },
1917 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1918 & ifmt_addi, { 0x7c0000 }
1920 /* nudivi$pack $GRi,$s12,$GRk */
1922 { 0, 0, 0, 0 },
1923 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1924 & ifmt_addi, { 0xbc0000 }
1926 /* smuli$pack $GRi,$s12,$GRdoublek */
1928 { 0, 0, 0, 0 },
1929 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRDOUBLEK), 0 } },
1930 & ifmt_smuli, { 0x600000 }
1932 /* umuli$pack $GRi,$s12,$GRdoublek */
1934 { 0, 0, 0, 0 },
1935 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRDOUBLEK), 0 } },
1936 & ifmt_smuli, { 0x680000 }
1938 /* slli$pack $GRi,$s12,$GRk */
1940 { 0, 0, 0, 0 },
1941 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1942 & ifmt_addi, { 0xa00000 }
1944 /* srli$pack $GRi,$s12,$GRk */
1946 { 0, 0, 0, 0 },
1947 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1948 & ifmt_addi, { 0xa80000 }
1950 /* srai$pack $GRi,$s12,$GRk */
1952 { 0, 0, 0, 0 },
1953 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1954 & ifmt_addi, { 0xb00000 }
1956 /* scani$pack $GRi,$s12,$GRk */
1958 { 0, 0, 0, 0 },
1959 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1960 & ifmt_addi, { 0x11c0000 }
1962 /* addicc$pack $GRi,$s10,$GRk,$ICCi_1 */
1964 { 0, 0, 0, 0 },
1965 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1966 & ifmt_addicc, { 0x440000 }
1968 /* subicc$pack $GRi,$s10,$GRk,$ICCi_1 */
1970 { 0, 0, 0, 0 },
1971 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1972 & ifmt_addicc, { 0x540000 }
1974 /* andicc$pack $GRi,$s10,$GRk,$ICCi_1 */
1976 { 0, 0, 0, 0 },
1977 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1978 & ifmt_addicc, { 0x840000 }
1980 /* oricc$pack $GRi,$s10,$GRk,$ICCi_1 */
1982 { 0, 0, 0, 0 },
1983 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1984 & ifmt_addicc, { 0x8c0000 }
1986 /* xoricc$pack $GRi,$s10,$GRk,$ICCi_1 */
1988 { 0, 0, 0, 0 },
1989 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1990 & ifmt_addicc, { 0x940000 }
1992 /* smulicc$pack $GRi,$s10,$GRdoublek,$ICCi_1 */
1994 { 0, 0, 0, 0 },
1995 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
1996 & ifmt_smulicc, { 0x640000 }
1998 /* umulicc$pack $GRi,$s10,$GRdoublek,$ICCi_1 */
2000 { 0, 0, 0, 0 },
2001 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
2002 & ifmt_smulicc, { 0x6c0000 }
2004 /* sllicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2006 { 0, 0, 0, 0 },
2007 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2008 & ifmt_addicc, { 0xa40000 }
2010 /* srlicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2012 { 0, 0, 0, 0 },
2013 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2014 & ifmt_addicc, { 0xac0000 }
2016 /* sraicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2018 { 0, 0, 0, 0 },
2019 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2020 & ifmt_addicc, { 0xb40000 }
2022 /* addxi$pack $GRi,$s10,$GRk,$ICCi_1 */
2024 { 0, 0, 0, 0 },
2025 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2026 & ifmt_addicc, { 0x480000 }
2028 /* subxi$pack $GRi,$s10,$GRk,$ICCi_1 */
2030 { 0, 0, 0, 0 },
2031 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2032 & ifmt_addicc, { 0x580000 }
2034 /* addxicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2036 { 0, 0, 0, 0 },
2037 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2038 & ifmt_addicc, { 0x4c0000 }
2040 /* subxicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2042 { 0, 0, 0, 0 },
2043 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2044 & ifmt_addicc, { 0x5c0000 }
2046 /* cmpb$pack $GRi,$GRj,$ICCi_1 */
2048 { 0, 0, 0, 0 },
2049 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (ICCI_1), 0 } },
2050 & ifmt_cmpb, { 0x300 }
2052 /* cmpba$pack $GRi,$GRj,$ICCi_1 */
2054 { 0, 0, 0, 0 },
2055 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (ICCI_1), 0 } },
2056 & ifmt_cmpb, { 0x340 }
2058 /* setlo$pack $ulo16,$GRklo */
2060 { 0, 0, 0, 0 },
2061 { { MNEM, OP (PACK), ' ', OP (ULO16), ',', OP (GRKLO), 0 } },
2062 & ifmt_setlo, { 0xf40000 }
2064 /* sethi$pack $uhi16,$GRkhi */
2066 { 0, 0, 0, 0 },
2067 { { MNEM, OP (PACK), ' ', OP (UHI16), ',', OP (GRKHI), 0 } },
2068 & ifmt_sethi, { 0xf80000 }
2070 /* setlos$pack $slo16,$GRk */
2072 { 0, 0, 0, 0 },
2073 { { MNEM, OP (PACK), ' ', OP (SLO16), ',', OP (GRK), 0 } },
2074 & ifmt_setlos, { 0xfc0000 }
2076 /* ldsb$pack @($GRi,$GRj),$GRk */
2078 { 0, 0, 0, 0 },
2079 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2080 & ifmt_slass, { 0x80000 }
2082 /* ldub$pack @($GRi,$GRj),$GRk */
2084 { 0, 0, 0, 0 },
2085 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2086 & ifmt_slass, { 0x80040 }
2088 /* ldsh$pack @($GRi,$GRj),$GRk */
2090 { 0, 0, 0, 0 },
2091 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2092 & ifmt_slass, { 0x80080 }
2094 /* lduh$pack @($GRi,$GRj),$GRk */
2096 { 0, 0, 0, 0 },
2097 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2098 & ifmt_slass, { 0x800c0 }
2100 /* ld$pack $ldann($GRi,$GRj),$GRk */
2102 { 0, 0, 0, 0 },
2103 { { MNEM, OP (PACK), ' ', OP (LDANN), '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2104 & ifmt_slass, { 0x80100 }
2106 /* ldbf$pack @($GRi,$GRj),$FRintk */
2108 { 0, 0, 0, 0 },
2109 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2110 & ifmt_ldbf, { 0x80200 }
2112 /* ldhf$pack @($GRi,$GRj),$FRintk */
2114 { 0, 0, 0, 0 },
2115 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2116 & ifmt_ldbf, { 0x80240 }
2118 /* ldf$pack @($GRi,$GRj),$FRintk */
2120 { 0, 0, 0, 0 },
2121 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2122 & ifmt_ldbf, { 0x80280 }
2124 /* ldc$pack @($GRi,$GRj),$CPRk */
2126 { 0, 0, 0, 0 },
2127 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2128 & ifmt_ldc, { 0x80340 }
2130 /* nldsb$pack @($GRi,$GRj),$GRk */
2132 { 0, 0, 0, 0 },
2133 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2134 & ifmt_slass, { 0x80800 }
2136 /* nldub$pack @($GRi,$GRj),$GRk */
2138 { 0, 0, 0, 0 },
2139 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2140 & ifmt_slass, { 0x80840 }
2142 /* nldsh$pack @($GRi,$GRj),$GRk */
2144 { 0, 0, 0, 0 },
2145 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2146 & ifmt_slass, { 0x80880 }
2148 /* nlduh$pack @($GRi,$GRj),$GRk */
2150 { 0, 0, 0, 0 },
2151 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2152 & ifmt_slass, { 0x808c0 }
2154 /* nld$pack @($GRi,$GRj),$GRk */
2156 { 0, 0, 0, 0 },
2157 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2158 & ifmt_slass, { 0x80900 }
2160 /* nldbf$pack @($GRi,$GRj),$FRintk */
2162 { 0, 0, 0, 0 },
2163 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2164 & ifmt_ldbf, { 0x80a00 }
2166 /* nldhf$pack @($GRi,$GRj),$FRintk */
2168 { 0, 0, 0, 0 },
2169 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2170 & ifmt_ldbf, { 0x80a40 }
2172 /* nldf$pack @($GRi,$GRj),$FRintk */
2174 { 0, 0, 0, 0 },
2175 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2176 & ifmt_ldbf, { 0x80a80 }
2178 /* ldd$pack $lddann($GRi,$GRj),$GRdoublek */
2180 { 0, 0, 0, 0 },
2181 { { MNEM, OP (PACK), ' ', OP (LDDANN), '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2182 & ifmt_ldd, { 0x80140 }
2184 /* lddf$pack @($GRi,$GRj),$FRdoublek */
2186 { 0, 0, 0, 0 },
2187 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2188 & ifmt_lddf, { 0x802c0 }
2190 /* lddc$pack @($GRi,$GRj),$CPRdoublek */
2192 { 0, 0, 0, 0 },
2193 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRDOUBLEK), 0 } },
2194 & ifmt_lddc, { 0x80380 }
2196 /* nldd$pack @($GRi,$GRj),$GRdoublek */
2198 { 0, 0, 0, 0 },
2199 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2200 & ifmt_ldd, { 0x80940 }
2202 /* nlddf$pack @($GRi,$GRj),$FRdoublek */
2204 { 0, 0, 0, 0 },
2205 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2206 & ifmt_lddf, { 0x80ac0 }
2208 /* ldq$pack @($GRi,$GRj),$GRk */
2210 { 0, 0, 0, 0 },
2211 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2212 & ifmt_slass, { 0x80180 }
2214 /* ldqf$pack @($GRi,$GRj),$FRintk */
2216 { 0, 0, 0, 0 },
2217 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2218 & ifmt_ldbf, { 0x80300 }
2220 /* ldqc$pack @($GRi,$GRj),$CPRk */
2222 { 0, 0, 0, 0 },
2223 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2224 & ifmt_ldc, { 0x803c0 }
2226 /* nldq$pack @($GRi,$GRj),$GRk */
2228 { 0, 0, 0, 0 },
2229 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2230 & ifmt_slass, { 0x80980 }
2232 /* nldqf$pack @($GRi,$GRj),$FRintk */
2234 { 0, 0, 0, 0 },
2235 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2236 & ifmt_ldbf, { 0x80b00 }
2238 /* ldsbu$pack @($GRi,$GRj),$GRk */
2240 { 0, 0, 0, 0 },
2241 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2242 & ifmt_slass, { 0x80400 }
2244 /* ldubu$pack @($GRi,$GRj),$GRk */
2246 { 0, 0, 0, 0 },
2247 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2248 & ifmt_slass, { 0x80440 }
2250 /* ldshu$pack @($GRi,$GRj),$GRk */
2252 { 0, 0, 0, 0 },
2253 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2254 & ifmt_slass, { 0x80480 }
2256 /* lduhu$pack @($GRi,$GRj),$GRk */
2258 { 0, 0, 0, 0 },
2259 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2260 & ifmt_slass, { 0x804c0 }
2262 /* ldu$pack @($GRi,$GRj),$GRk */
2264 { 0, 0, 0, 0 },
2265 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2266 & ifmt_slass, { 0x80500 }
2268 /* nldsbu$pack @($GRi,$GRj),$GRk */
2270 { 0, 0, 0, 0 },
2271 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2272 & ifmt_slass, { 0x80c00 }
2274 /* nldubu$pack @($GRi,$GRj),$GRk */
2276 { 0, 0, 0, 0 },
2277 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2278 & ifmt_slass, { 0x80c40 }
2280 /* nldshu$pack @($GRi,$GRj),$GRk */
2282 { 0, 0, 0, 0 },
2283 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2284 & ifmt_slass, { 0x80c80 }
2286 /* nlduhu$pack @($GRi,$GRj),$GRk */
2288 { 0, 0, 0, 0 },
2289 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2290 & ifmt_slass, { 0x80cc0 }
2292 /* nldu$pack @($GRi,$GRj),$GRk */
2294 { 0, 0, 0, 0 },
2295 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2296 & ifmt_slass, { 0x80d00 }
2298 /* ldbfu$pack @($GRi,$GRj),$FRintk */
2300 { 0, 0, 0, 0 },
2301 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2302 & ifmt_ldbf, { 0x80600 }
2304 /* ldhfu$pack @($GRi,$GRj),$FRintk */
2306 { 0, 0, 0, 0 },
2307 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2308 & ifmt_ldbf, { 0x80640 }
2310 /* ldfu$pack @($GRi,$GRj),$FRintk */
2312 { 0, 0, 0, 0 },
2313 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2314 & ifmt_ldbf, { 0x80680 }
2316 /* ldcu$pack @($GRi,$GRj),$CPRk */
2318 { 0, 0, 0, 0 },
2319 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2320 & ifmt_ldc, { 0x80740 }
2322 /* nldbfu$pack @($GRi,$GRj),$FRintk */
2324 { 0, 0, 0, 0 },
2325 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2326 & ifmt_ldbf, { 0x80e00 }
2328 /* nldhfu$pack @($GRi,$GRj),$FRintk */
2330 { 0, 0, 0, 0 },
2331 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2332 & ifmt_ldbf, { 0x80e40 }
2334 /* nldfu$pack @($GRi,$GRj),$FRintk */
2336 { 0, 0, 0, 0 },
2337 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2338 & ifmt_ldbf, { 0x80e80 }
2340 /* lddu$pack @($GRi,$GRj),$GRdoublek */
2342 { 0, 0, 0, 0 },
2343 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2344 & ifmt_ldd, { 0x80540 }
2346 /* nlddu$pack @($GRi,$GRj),$GRdoublek */
2348 { 0, 0, 0, 0 },
2349 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2350 & ifmt_ldd, { 0x80d40 }
2352 /* lddfu$pack @($GRi,$GRj),$FRdoublek */
2354 { 0, 0, 0, 0 },
2355 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2356 & ifmt_lddf, { 0x806c0 }
2358 /* lddcu$pack @($GRi,$GRj),$CPRdoublek */
2360 { 0, 0, 0, 0 },
2361 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRDOUBLEK), 0 } },
2362 & ifmt_lddc, { 0x80780 }
2364 /* nlddfu$pack @($GRi,$GRj),$FRdoublek */
2366 { 0, 0, 0, 0 },
2367 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2368 & ifmt_lddf, { 0x80ec0 }
2370 /* ldqu$pack @($GRi,$GRj),$GRk */
2372 { 0, 0, 0, 0 },
2373 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2374 & ifmt_slass, { 0x80580 }
2376 /* nldqu$pack @($GRi,$GRj),$GRk */
2378 { 0, 0, 0, 0 },
2379 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2380 & ifmt_slass, { 0x80d80 }
2382 /* ldqfu$pack @($GRi,$GRj),$FRintk */
2384 { 0, 0, 0, 0 },
2385 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2386 & ifmt_ldbf, { 0x80700 }
2388 /* ldqcu$pack @($GRi,$GRj),$CPRk */
2390 { 0, 0, 0, 0 },
2391 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2392 & ifmt_ldc, { 0x807c0 }
2394 /* nldqfu$pack @($GRi,$GRj),$FRintk */
2396 { 0, 0, 0, 0 },
2397 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2398 & ifmt_ldbf, { 0x80f00 }
2400 /* ldsbi$pack @($GRi,$d12),$GRk */
2402 { 0, 0, 0, 0 },
2403 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2404 & ifmt_ldsbi, { 0xc00000 }
2406 /* ldshi$pack @($GRi,$d12),$GRk */
2408 { 0, 0, 0, 0 },
2409 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2410 & ifmt_ldsbi, { 0xc40000 }
2412 /* ldi$pack @($GRi,$d12),$GRk */
2414 { 0, 0, 0, 0 },
2415 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2416 & ifmt_ldsbi, { 0xc80000 }
2418 /* ldubi$pack @($GRi,$d12),$GRk */
2420 { 0, 0, 0, 0 },
2421 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2422 & ifmt_ldsbi, { 0xd40000 }
2424 /* lduhi$pack @($GRi,$d12),$GRk */
2426 { 0, 0, 0, 0 },
2427 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2428 & ifmt_ldsbi, { 0xd80000 }
2430 /* ldbfi$pack @($GRi,$d12),$FRintk */
2432 { 0, 0, 0, 0 },
2433 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2434 & ifmt_ldbfi, { 0xe00000 }
2436 /* ldhfi$pack @($GRi,$d12),$FRintk */
2438 { 0, 0, 0, 0 },
2439 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2440 & ifmt_ldbfi, { 0xe40000 }
2442 /* ldfi$pack @($GRi,$d12),$FRintk */
2444 { 0, 0, 0, 0 },
2445 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2446 & ifmt_ldbfi, { 0xe80000 }
2448 /* nldsbi$pack @($GRi,$d12),$GRk */
2450 { 0, 0, 0, 0 },
2451 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2452 & ifmt_ldsbi, { 0x1000000 }
2454 /* nldubi$pack @($GRi,$d12),$GRk */
2456 { 0, 0, 0, 0 },
2457 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2458 & ifmt_ldsbi, { 0x1040000 }
2460 /* nldshi$pack @($GRi,$d12),$GRk */
2462 { 0, 0, 0, 0 },
2463 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2464 & ifmt_ldsbi, { 0x1080000 }
2466 /* nlduhi$pack @($GRi,$d12),$GRk */
2468 { 0, 0, 0, 0 },
2469 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2470 & ifmt_ldsbi, { 0x10c0000 }
2472 /* nldi$pack @($GRi,$d12),$GRk */
2474 { 0, 0, 0, 0 },
2475 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2476 & ifmt_ldsbi, { 0x1100000 }
2478 /* nldbfi$pack @($GRi,$d12),$FRintk */
2480 { 0, 0, 0, 0 },
2481 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2482 & ifmt_ldbfi, { 0x1200000 }
2484 /* nldhfi$pack @($GRi,$d12),$FRintk */
2486 { 0, 0, 0, 0 },
2487 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2488 & ifmt_ldbfi, { 0x1240000 }
2490 /* nldfi$pack @($GRi,$d12),$FRintk */
2492 { 0, 0, 0, 0 },
2493 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2494 & ifmt_ldbfi, { 0x1280000 }
2496 /* lddi$pack @($GRi,$d12),$GRdoublek */
2498 { 0, 0, 0, 0 },
2499 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRDOUBLEK), 0 } },
2500 & ifmt_lddi, { 0xcc0000 }
2502 /* lddfi$pack @($GRi,$d12),$FRdoublek */
2504 { 0, 0, 0, 0 },
2505 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRDOUBLEK), 0 } },
2506 & ifmt_lddfi, { 0xec0000 }
2508 /* nlddi$pack @($GRi,$d12),$GRdoublek */
2510 { 0, 0, 0, 0 },
2511 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRDOUBLEK), 0 } },
2512 & ifmt_lddi, { 0x1140000 }
2514 /* nlddfi$pack @($GRi,$d12),$FRdoublek */
2516 { 0, 0, 0, 0 },
2517 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRDOUBLEK), 0 } },
2518 & ifmt_lddfi, { 0x12c0000 }
2520 /* ldqi$pack @($GRi,$d12),$GRk */
2522 { 0, 0, 0, 0 },
2523 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2524 & ifmt_ldsbi, { 0xd00000 }
2526 /* ldqfi$pack @($GRi,$d12),$FRintk */
2528 { 0, 0, 0, 0 },
2529 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2530 & ifmt_ldbfi, { 0xf00000 }
2532 /* nldqfi$pack @($GRi,$d12),$FRintk */
2534 { 0, 0, 0, 0 },
2535 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2536 & ifmt_ldbfi, { 0x1300000 }
2538 /* stb$pack $GRk,@($GRi,$GRj) */
2540 { 0, 0, 0, 0 },
2541 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2542 & ifmt_slass, { 0xc0000 }
2544 /* sth$pack $GRk,@($GRi,$GRj) */
2546 { 0, 0, 0, 0 },
2547 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2548 & ifmt_slass, { 0xc0040 }
2550 /* st$pack $GRk,@($GRi,$GRj) */
2552 { 0, 0, 0, 0 },
2553 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2554 & ifmt_slass, { 0xc0080 }
2556 /* stbf$pack $FRintk,@($GRi,$GRj) */
2558 { 0, 0, 0, 0 },
2559 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2560 & ifmt_ldbf, { 0xc0200 }
2562 /* sthf$pack $FRintk,@($GRi,$GRj) */
2564 { 0, 0, 0, 0 },
2565 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2566 & ifmt_ldbf, { 0xc0240 }
2568 /* stf$pack $FRintk,@($GRi,$GRj) */
2570 { 0, 0, 0, 0 },
2571 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2572 & ifmt_ldbf, { 0xc0280 }
2574 /* stc$pack $CPRk,@($GRi,$GRj) */
2576 { 0, 0, 0, 0 },
2577 { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2578 & ifmt_ldc, { 0xc0940 }
2580 /* std$pack $GRdoublek,@($GRi,$GRj) */
2582 { 0, 0, 0, 0 },
2583 { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2584 & ifmt_ldd, { 0xc00c0 }
2586 /* stdf$pack $FRdoublek,@($GRi,$GRj) */
2588 { 0, 0, 0, 0 },
2589 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2590 & ifmt_lddf, { 0xc02c0 }
2592 /* stdc$pack $CPRdoublek,@($GRi,$GRj) */
2594 { 0, 0, 0, 0 },
2595 { { MNEM, OP (PACK), ' ', OP (CPRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2596 & ifmt_lddc, { 0xc0980 }
2598 /* stq$pack $GRk,@($GRi,$GRj) */
2600 { 0, 0, 0, 0 },
2601 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2602 & ifmt_slass, { 0xc0100 }
2604 /* stqf$pack $FRintk,@($GRi,$GRj) */
2606 { 0, 0, 0, 0 },
2607 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2608 & ifmt_ldbf, { 0xc0300 }
2610 /* stqc$pack $CPRk,@($GRi,$GRj) */
2612 { 0, 0, 0, 0 },
2613 { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2614 & ifmt_ldc, { 0xc09c0 }
2616 /* stbu$pack $GRk,@($GRi,$GRj) */
2618 { 0, 0, 0, 0 },
2619 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2620 & ifmt_slass, { 0xc0400 }
2622 /* sthu$pack $GRk,@($GRi,$GRj) */
2624 { 0, 0, 0, 0 },
2625 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2626 & ifmt_slass, { 0xc0440 }
2628 /* stu$pack $GRk,@($GRi,$GRj) */
2630 { 0, 0, 0, 0 },
2631 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2632 & ifmt_slass, { 0xc0480 }
2634 /* stbfu$pack $FRintk,@($GRi,$GRj) */
2636 { 0, 0, 0, 0 },
2637 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2638 & ifmt_ldbf, { 0xc0600 }
2640 /* sthfu$pack $FRintk,@($GRi,$GRj) */
2642 { 0, 0, 0, 0 },
2643 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2644 & ifmt_ldbf, { 0xc0640 }
2646 /* stfu$pack $FRintk,@($GRi,$GRj) */
2648 { 0, 0, 0, 0 },
2649 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2650 & ifmt_ldbf, { 0xc0680 }
2652 /* stcu$pack $CPRk,@($GRi,$GRj) */
2654 { 0, 0, 0, 0 },
2655 { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2656 & ifmt_ldc, { 0xc0b40 }
2658 /* stdu$pack $GRdoublek,@($GRi,$GRj) */
2660 { 0, 0, 0, 0 },
2661 { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2662 & ifmt_ldd, { 0xc04c0 }
2664 /* stdfu$pack $FRdoublek,@($GRi,$GRj) */
2666 { 0, 0, 0, 0 },
2667 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2668 & ifmt_lddf, { 0xc06c0 }
2670 /* stdcu$pack $CPRdoublek,@($GRi,$GRj) */
2672 { 0, 0, 0, 0 },
2673 { { MNEM, OP (PACK), ' ', OP (CPRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2674 & ifmt_lddc, { 0xc0b80 }
2676 /* stqu$pack $GRk,@($GRi,$GRj) */
2678 { 0, 0, 0, 0 },
2679 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2680 & ifmt_slass, { 0xc0500 }
2682 /* stqfu$pack $FRintk,@($GRi,$GRj) */
2684 { 0, 0, 0, 0 },
2685 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2686 & ifmt_ldbf, { 0xc0700 }
2688 /* stqcu$pack $CPRk,@($GRi,$GRj) */
2690 { 0, 0, 0, 0 },
2691 { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2692 & ifmt_ldc, { 0xc0bc0 }
2694 /* cldsb$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2696 { 0, 0, 0, 0 },
2697 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2698 & ifmt_cadd, { 0x1780000 }
2700 /* cldub$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2702 { 0, 0, 0, 0 },
2703 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2704 & ifmt_cadd, { 0x1780040 }
2706 /* cldsh$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2708 { 0, 0, 0, 0 },
2709 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2710 & ifmt_cadd, { 0x1780080 }
2712 /* clduh$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2714 { 0, 0, 0, 0 },
2715 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2716 & ifmt_cadd, { 0x17800c0 }
2718 /* cld$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2720 { 0, 0, 0, 0 },
2721 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2722 & ifmt_cadd, { 0x17c0000 }
2724 /* cldbf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2726 { 0, 0, 0, 0 },
2727 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2728 & ifmt_cldbf, { 0x1800000 }
2730 /* cldhf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2732 { 0, 0, 0, 0 },
2733 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2734 & ifmt_cldbf, { 0x1800040 }
2736 /* cldf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2738 { 0, 0, 0, 0 },
2739 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2740 & ifmt_cldbf, { 0x1800080 }
2742 /* cldd$pack @($GRi,$GRj),$GRdoublek,$CCi,$cond */
2744 { 0, 0, 0, 0 },
2745 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2746 & ifmt_csmul, { 0x17c0040 }
2748 /* clddf$pack @($GRi,$GRj),$FRdoublek,$CCi,$cond */
2750 { 0, 0, 0, 0 },
2751 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2752 & ifmt_clddf, { 0x18000c0 }
2754 /* cldq$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2756 { 0, 0, 0, 0 },
2757 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2758 & ifmt_cadd, { 0x17c0080 }
2760 /* cldsbu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2762 { 0, 0, 0, 0 },
2763 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2764 & ifmt_cadd, { 0x1840000 }
2766 /* cldubu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2768 { 0, 0, 0, 0 },
2769 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2770 & ifmt_cadd, { 0x1840040 }
2772 /* cldshu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2774 { 0, 0, 0, 0 },
2775 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2776 & ifmt_cadd, { 0x1840080 }
2778 /* clduhu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2780 { 0, 0, 0, 0 },
2781 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2782 & ifmt_cadd, { 0x18400c0 }
2784 /* cldu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2786 { 0, 0, 0, 0 },
2787 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2788 & ifmt_cadd, { 0x1880000 }
2790 /* cldbfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2792 { 0, 0, 0, 0 },
2793 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2794 & ifmt_cldbf, { 0x18c0000 }
2796 /* cldhfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2798 { 0, 0, 0, 0 },
2799 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2800 & ifmt_cldbf, { 0x18c0040 }
2802 /* cldfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2804 { 0, 0, 0, 0 },
2805 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2806 & ifmt_cldbf, { 0x18c0080 }
2808 /* clddu$pack @($GRi,$GRj),$GRdoublek,$CCi,$cond */
2810 { 0, 0, 0, 0 },
2811 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2812 & ifmt_csmul, { 0x1880040 }
2814 /* clddfu$pack @($GRi,$GRj),$FRdoublek,$CCi,$cond */
2816 { 0, 0, 0, 0 },
2817 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2818 & ifmt_clddf, { 0x18c00c0 }
2820 /* cldqu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2822 { 0, 0, 0, 0 },
2823 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2824 & ifmt_cadd, { 0x1880080 }
2826 /* cstb$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2828 { 0, 0, 0, 0 },
2829 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2830 & ifmt_cadd, { 0x1900000 }
2832 /* csth$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2834 { 0, 0, 0, 0 },
2835 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2836 & ifmt_cadd, { 0x1900040 }
2838 /* cst$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2840 { 0, 0, 0, 0 },
2841 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2842 & ifmt_cadd, { 0x1900080 }
2844 /* cstbf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2846 { 0, 0, 0, 0 },
2847 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2848 & ifmt_cldbf, { 0x1980000 }
2850 /* csthf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2852 { 0, 0, 0, 0 },
2853 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2854 & ifmt_cldbf, { 0x1980040 }
2856 /* cstf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2858 { 0, 0, 0, 0 },
2859 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2860 & ifmt_cldbf, { 0x1980080 }
2862 /* cstd$pack $GRdoublek,@($GRi,$GRj),$CCi,$cond */
2864 { 0, 0, 0, 0 },
2865 { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2866 & ifmt_csmul, { 0x19000c0 }
2868 /* cstdf$pack $FRdoublek,@($GRi,$GRj),$CCi,$cond */
2870 { 0, 0, 0, 0 },
2871 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2872 & ifmt_clddf, { 0x19800c0 }
2874 /* cstq$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2876 { 0, 0, 0, 0 },
2877 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2878 & ifmt_cadd, { 0x1940000 }
2880 /* cstbu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2882 { 0, 0, 0, 0 },
2883 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2884 & ifmt_cadd, { 0x19c0000 }
2886 /* csthu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2888 { 0, 0, 0, 0 },
2889 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2890 & ifmt_cadd, { 0x19c0040 }
2892 /* cstu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2894 { 0, 0, 0, 0 },
2895 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2896 & ifmt_cadd, { 0x19c0080 }
2898 /* cstbfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2900 { 0, 0, 0, 0 },
2901 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2902 & ifmt_cldbf, { 0x1a00000 }
2904 /* csthfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2906 { 0, 0, 0, 0 },
2907 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2908 & ifmt_cldbf, { 0x1a00040 }
2910 /* cstfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2912 { 0, 0, 0, 0 },
2913 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2914 & ifmt_cldbf, { 0x1a00080 }
2916 /* cstdu$pack $GRdoublek,@($GRi,$GRj),$CCi,$cond */
2918 { 0, 0, 0, 0 },
2919 { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2920 & ifmt_csmul, { 0x19c00c0 }
2922 /* cstdfu$pack $FRdoublek,@($GRi,$GRj),$CCi,$cond */
2924 { 0, 0, 0, 0 },
2925 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2926 & ifmt_clddf, { 0x1a000c0 }
2928 /* stbi$pack $GRk,@($GRi,$d12) */
2930 { 0, 0, 0, 0 },
2931 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2932 & ifmt_ldsbi, { 0x1400000 }
2934 /* sthi$pack $GRk,@($GRi,$d12) */
2936 { 0, 0, 0, 0 },
2937 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2938 & ifmt_ldsbi, { 0x1440000 }
2940 /* sti$pack $GRk,@($GRi,$d12) */
2942 { 0, 0, 0, 0 },
2943 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2944 & ifmt_ldsbi, { 0x1480000 }
2946 /* stbfi$pack $FRintk,@($GRi,$d12) */
2948 { 0, 0, 0, 0 },
2949 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2950 & ifmt_ldbfi, { 0x1380000 }
2952 /* sthfi$pack $FRintk,@($GRi,$d12) */
2954 { 0, 0, 0, 0 },
2955 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2956 & ifmt_ldbfi, { 0x13c0000 }
2958 /* stfi$pack $FRintk,@($GRi,$d12) */
2960 { 0, 0, 0, 0 },
2961 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2962 & ifmt_ldbfi, { 0x1540000 }
2964 /* stdi$pack $GRdoublek,@($GRi,$d12) */
2966 { 0, 0, 0, 0 },
2967 { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2968 & ifmt_lddi, { 0x14c0000 }
2970 /* stdfi$pack $FRdoublek,@($GRi,$d12) */
2972 { 0, 0, 0, 0 },
2973 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2974 & ifmt_lddfi, { 0x1580000 }
2976 /* stqi$pack $GRk,@($GRi,$d12) */
2978 { 0, 0, 0, 0 },
2979 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2980 & ifmt_ldsbi, { 0x1500000 }
2982 /* stqfi$pack $FRintk,@($GRi,$d12) */
2984 { 0, 0, 0, 0 },
2985 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2986 & ifmt_ldbfi, { 0x15c0000 }
2988 /* swap$pack @($GRi,$GRj),$GRk */
2990 { 0, 0, 0, 0 },
2991 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2992 & ifmt_slass, { 0xc0140 }
2994 /* swapi$pack @($GRi,$d12),$GRk */
2996 { 0, 0, 0, 0 },
2997 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2998 & ifmt_ldsbi, { 0x1340000 }
3000 /* cswap$pack @($GRi,$GRj),$GRk,$CCi,$cond */
3002 { 0, 0, 0, 0 },
3003 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
3004 & ifmt_cadd, { 0x1940080 }
3006 /* movgf$pack $GRj,$FRintk */
3008 { 0, 0, 0, 0 },
3009 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), 0 } },
3010 & ifmt_movgf, { 0xc0540 }
3012 /* movfg$pack $FRintk,$GRj */
3014 { 0, 0, 0, 0 },
3015 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), 0 } },
3016 & ifmt_movgf, { 0xc0340 }
3018 /* movgfd$pack $GRj,$FRintk */
3020 { 0, 0, 0, 0 },
3021 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), 0 } },
3022 & ifmt_movgf, { 0xc0580 }
3024 /* movfgd$pack $FRintk,$GRj */
3026 { 0, 0, 0, 0 },
3027 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), 0 } },
3028 & ifmt_movgf, { 0xc0380 }
3030 /* movgfq$pack $GRj,$FRintk */
3032 { 0, 0, 0, 0 },
3033 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), 0 } },
3034 & ifmt_movgf, { 0xc05c0 }
3036 /* movfgq$pack $FRintk,$GRj */
3038 { 0, 0, 0, 0 },
3039 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), 0 } },
3040 & ifmt_movgf, { 0xc03c0 }
3042 /* cmovgf$pack $GRj,$FRintk,$CCi,$cond */
3044 { 0, 0, 0, 0 },
3045 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
3046 & ifmt_cmovgf, { 0x1a40000 }
3048 /* cmovfg$pack $FRintk,$GRj,$CCi,$cond */
3050 { 0, 0, 0, 0 },
3051 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), ',', OP (CCI), ',', OP (COND), 0 } },
3052 & ifmt_cmovgf, { 0x1a40080 }
3054 /* cmovgfd$pack $GRj,$FRintk,$CCi,$cond */
3056 { 0, 0, 0, 0 },
3057 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
3058 & ifmt_cmovgf, { 0x1a40040 }
3060 /* cmovfgd$pack $FRintk,$GRj,$CCi,$cond */
3062 { 0, 0, 0, 0 },
3063 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), ',', OP (CCI), ',', OP (COND), 0 } },
3064 & ifmt_cmovgf, { 0x1a400c0 }
3066 /* movgs$pack $GRj,$spr */
3068 { 0, 0, 0, 0 },
3069 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (SPR), 0 } },
3070 & ifmt_movgs, { 0xc0180 }
3072 /* movsg$pack $spr,$GRj */
3074 { 0, 0, 0, 0 },
3075 { { MNEM, OP (PACK), ' ', OP (SPR), ',', OP (GRJ), 0 } },
3076 & ifmt_movgs, { 0xc01c0 }
3078 /* bra$pack $hint_taken$label16 */
3080 { 0, 0, 0, 0 },
3081 { { MNEM, OP (PACK), ' ', OP (HINT_TAKEN), OP (LABEL16), 0 } },
3082 & ifmt_bra, { 0x40180000 }
3084 /* bno$pack$hint_not_taken */
3086 { 0, 0, 0, 0 },
3087 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3088 & ifmt_bno, { 0x180000 }
3090 /* beq$pack $ICCi_2,$hint,$label16 */
3092 { 0, 0, 0, 0 },
3093 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3094 & ifmt_beq, { 0x20180000 }
3096 /* bne$pack $ICCi_2,$hint,$label16 */
3098 { 0, 0, 0, 0 },
3099 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3100 & ifmt_beq, { 0x60180000 }
3102 /* ble$pack $ICCi_2,$hint,$label16 */
3104 { 0, 0, 0, 0 },
3105 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3106 & ifmt_beq, { 0x38180000 }
3108 /* bgt$pack $ICCi_2,$hint,$label16 */
3110 { 0, 0, 0, 0 },
3111 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3112 & ifmt_beq, { 0x78180000 }
3114 /* blt$pack $ICCi_2,$hint,$label16 */
3116 { 0, 0, 0, 0 },
3117 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3118 & ifmt_beq, { 0x18180000 }
3120 /* bge$pack $ICCi_2,$hint,$label16 */
3122 { 0, 0, 0, 0 },
3123 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3124 & ifmt_beq, { 0x58180000 }
3126 /* bls$pack $ICCi_2,$hint,$label16 */
3128 { 0, 0, 0, 0 },
3129 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3130 & ifmt_beq, { 0x28180000 }
3132 /* bhi$pack $ICCi_2,$hint,$label16 */
3134 { 0, 0, 0, 0 },
3135 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3136 & ifmt_beq, { 0x68180000 }
3138 /* bc$pack $ICCi_2,$hint,$label16 */
3140 { 0, 0, 0, 0 },
3141 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3142 & ifmt_beq, { 0x8180000 }
3144 /* bnc$pack $ICCi_2,$hint,$label16 */
3146 { 0, 0, 0, 0 },
3147 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3148 & ifmt_beq, { 0x48180000 }
3150 /* bn$pack $ICCi_2,$hint,$label16 */
3152 { 0, 0, 0, 0 },
3153 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3154 & ifmt_beq, { 0x30180000 }
3156 /* bp$pack $ICCi_2,$hint,$label16 */
3158 { 0, 0, 0, 0 },
3159 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3160 & ifmt_beq, { 0x70180000 }
3162 /* bv$pack $ICCi_2,$hint,$label16 */
3164 { 0, 0, 0, 0 },
3165 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3166 & ifmt_beq, { 0x10180000 }
3168 /* bnv$pack $ICCi_2,$hint,$label16 */
3170 { 0, 0, 0, 0 },
3171 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3172 & ifmt_beq, { 0x50180000 }
3174 /* fbra$pack $hint_taken$label16 */
3176 { 0, 0, 0, 0 },
3177 { { MNEM, OP (PACK), ' ', OP (HINT_TAKEN), OP (LABEL16), 0 } },
3178 & ifmt_fbra, { 0x781c0000 }
3180 /* fbno$pack$hint_not_taken */
3182 { 0, 0, 0, 0 },
3183 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3184 & ifmt_fbno, { 0x1c0000 }
3186 /* fbne$pack $FCCi_2,$hint,$label16 */
3188 { 0, 0, 0, 0 },
3189 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3190 & ifmt_fbne, { 0x381c0000 }
3192 /* fbeq$pack $FCCi_2,$hint,$label16 */
3194 { 0, 0, 0, 0 },
3195 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3196 & ifmt_fbne, { 0x401c0000 }
3198 /* fblg$pack $FCCi_2,$hint,$label16 */
3200 { 0, 0, 0, 0 },
3201 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3202 & ifmt_fbne, { 0x301c0000 }
3204 /* fbue$pack $FCCi_2,$hint,$label16 */
3206 { 0, 0, 0, 0 },
3207 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3208 & ifmt_fbne, { 0x481c0000 }
3210 /* fbul$pack $FCCi_2,$hint,$label16 */
3212 { 0, 0, 0, 0 },
3213 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3214 & ifmt_fbne, { 0x281c0000 }
3216 /* fbge$pack $FCCi_2,$hint,$label16 */
3218 { 0, 0, 0, 0 },
3219 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3220 & ifmt_fbne, { 0x501c0000 }
3222 /* fblt$pack $FCCi_2,$hint,$label16 */
3224 { 0, 0, 0, 0 },
3225 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3226 & ifmt_fbne, { 0x201c0000 }
3228 /* fbuge$pack $FCCi_2,$hint,$label16 */
3230 { 0, 0, 0, 0 },
3231 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3232 & ifmt_fbne, { 0x581c0000 }
3234 /* fbug$pack $FCCi_2,$hint,$label16 */
3236 { 0, 0, 0, 0 },
3237 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3238 & ifmt_fbne, { 0x181c0000 }
3240 /* fble$pack $FCCi_2,$hint,$label16 */
3242 { 0, 0, 0, 0 },
3243 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3244 & ifmt_fbne, { 0x601c0000 }
3246 /* fbgt$pack $FCCi_2,$hint,$label16 */
3248 { 0, 0, 0, 0 },
3249 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3250 & ifmt_fbne, { 0x101c0000 }
3252 /* fbule$pack $FCCi_2,$hint,$label16 */
3254 { 0, 0, 0, 0 },
3255 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3256 & ifmt_fbne, { 0x681c0000 }
3258 /* fbu$pack $FCCi_2,$hint,$label16 */
3260 { 0, 0, 0, 0 },
3261 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3262 & ifmt_fbne, { 0x81c0000 }
3264 /* fbo$pack $FCCi_2,$hint,$label16 */
3266 { 0, 0, 0, 0 },
3267 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3268 & ifmt_fbne, { 0x701c0000 }
3270 /* bctrlr$pack $ccond,$hint */
3272 { 0, 0, 0, 0 },
3273 { { MNEM, OP (PACK), ' ', OP (CCOND), ',', OP (HINT), 0 } },
3274 & ifmt_bctrlr, { 0x382000 }
3276 /* bralr$pack$hint_taken */
3278 { 0, 0, 0, 0 },
3279 { { MNEM, OP (PACK), OP (HINT_TAKEN), 0 } },
3280 & ifmt_bralr, { 0x40384000 }
3282 /* bnolr$pack$hint_not_taken */
3284 { 0, 0, 0, 0 },
3285 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3286 & ifmt_bnolr, { 0x384000 }
3288 /* beqlr$pack $ICCi_2,$hint */
3290 { 0, 0, 0, 0 },
3291 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3292 & ifmt_beqlr, { 0x20384000 }
3294 /* bnelr$pack $ICCi_2,$hint */
3296 { 0, 0, 0, 0 },
3297 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3298 & ifmt_beqlr, { 0x60384000 }
3300 /* blelr$pack $ICCi_2,$hint */
3302 { 0, 0, 0, 0 },
3303 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3304 & ifmt_beqlr, { 0x38384000 }
3306 /* bgtlr$pack $ICCi_2,$hint */
3308 { 0, 0, 0, 0 },
3309 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3310 & ifmt_beqlr, { 0x78384000 }
3312 /* bltlr$pack $ICCi_2,$hint */
3314 { 0, 0, 0, 0 },
3315 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3316 & ifmt_beqlr, { 0x18384000 }
3318 /* bgelr$pack $ICCi_2,$hint */
3320 { 0, 0, 0, 0 },
3321 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3322 & ifmt_beqlr, { 0x58384000 }
3324 /* blslr$pack $ICCi_2,$hint */
3326 { 0, 0, 0, 0 },
3327 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3328 & ifmt_beqlr, { 0x28384000 }
3330 /* bhilr$pack $ICCi_2,$hint */
3332 { 0, 0, 0, 0 },
3333 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3334 & ifmt_beqlr, { 0x68384000 }
3336 /* bclr$pack $ICCi_2,$hint */
3338 { 0, 0, 0, 0 },
3339 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3340 & ifmt_beqlr, { 0x8384000 }
3342 /* bnclr$pack $ICCi_2,$hint */
3344 { 0, 0, 0, 0 },
3345 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3346 & ifmt_beqlr, { 0x48384000 }
3348 /* bnlr$pack $ICCi_2,$hint */
3350 { 0, 0, 0, 0 },
3351 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3352 & ifmt_beqlr, { 0x30384000 }
3354 /* bplr$pack $ICCi_2,$hint */
3356 { 0, 0, 0, 0 },
3357 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3358 & ifmt_beqlr, { 0x70384000 }
3360 /* bvlr$pack $ICCi_2,$hint */
3362 { 0, 0, 0, 0 },
3363 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3364 & ifmt_beqlr, { 0x10384000 }
3366 /* bnvlr$pack $ICCi_2,$hint */
3368 { 0, 0, 0, 0 },
3369 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3370 & ifmt_beqlr, { 0x50384000 }
3372 /* fbralr$pack$hint_taken */
3374 { 0, 0, 0, 0 },
3375 { { MNEM, OP (PACK), OP (HINT_TAKEN), 0 } },
3376 & ifmt_fbralr, { 0x7838c000 }
3378 /* fbnolr$pack$hint_not_taken */
3380 { 0, 0, 0, 0 },
3381 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3382 & ifmt_fbnolr, { 0x38c000 }
3384 /* fbeqlr$pack $FCCi_2,$hint */
3386 { 0, 0, 0, 0 },
3387 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3388 & ifmt_fbeqlr, { 0x4038c000 }
3390 /* fbnelr$pack $FCCi_2,$hint */
3392 { 0, 0, 0, 0 },
3393 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3394 & ifmt_fbeqlr, { 0x3838c000 }
3396 /* fblglr$pack $FCCi_2,$hint */
3398 { 0, 0, 0, 0 },
3399 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3400 & ifmt_fbeqlr, { 0x3038c000 }
3402 /* fbuelr$pack $FCCi_2,$hint */
3404 { 0, 0, 0, 0 },
3405 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3406 & ifmt_fbeqlr, { 0x4838c000 }
3408 /* fbullr$pack $FCCi_2,$hint */
3410 { 0, 0, 0, 0 },
3411 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3412 & ifmt_fbeqlr, { 0x2838c000 }
3414 /* fbgelr$pack $FCCi_2,$hint */
3416 { 0, 0, 0, 0 },
3417 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3418 & ifmt_fbeqlr, { 0x5038c000 }
3420 /* fbltlr$pack $FCCi_2,$hint */
3422 { 0, 0, 0, 0 },
3423 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3424 & ifmt_fbeqlr, { 0x2038c000 }
3426 /* fbugelr$pack $FCCi_2,$hint */
3428 { 0, 0, 0, 0 },
3429 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3430 & ifmt_fbeqlr, { 0x5838c000 }
3432 /* fbuglr$pack $FCCi_2,$hint */
3434 { 0, 0, 0, 0 },
3435 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3436 & ifmt_fbeqlr, { 0x1838c000 }
3438 /* fblelr$pack $FCCi_2,$hint */
3440 { 0, 0, 0, 0 },
3441 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3442 & ifmt_fbeqlr, { 0x6038c000 }
3444 /* fbgtlr$pack $FCCi_2,$hint */
3446 { 0, 0, 0, 0 },
3447 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3448 & ifmt_fbeqlr, { 0x1038c000 }
3450 /* fbulelr$pack $FCCi_2,$hint */
3452 { 0, 0, 0, 0 },
3453 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3454 & ifmt_fbeqlr, { 0x6838c000 }
3456 /* fbulr$pack $FCCi_2,$hint */
3458 { 0, 0, 0, 0 },
3459 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3460 & ifmt_fbeqlr, { 0x838c000 }
3462 /* fbolr$pack $FCCi_2,$hint */
3464 { 0, 0, 0, 0 },
3465 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3466 & ifmt_fbeqlr, { 0x7038c000 }
3468 /* bcralr$pack $ccond$hint_taken */
3470 { 0, 0, 0, 0 },
3471 { { MNEM, OP (PACK), ' ', OP (CCOND), OP (HINT_TAKEN), 0 } },
3472 & ifmt_bcralr, { 0x40386000 }
3474 /* bcnolr$pack$hint_not_taken */
3476 { 0, 0, 0, 0 },
3477 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3478 & ifmt_bnolr, { 0x386000 }
3480 /* bceqlr$pack $ICCi_2,$ccond,$hint */
3482 { 0, 0, 0, 0 },
3483 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3484 & ifmt_bceqlr, { 0x20386000 }
3486 /* bcnelr$pack $ICCi_2,$ccond,$hint */
3488 { 0, 0, 0, 0 },
3489 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3490 & ifmt_bceqlr, { 0x60386000 }
3492 /* bclelr$pack $ICCi_2,$ccond,$hint */
3494 { 0, 0, 0, 0 },
3495 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3496 & ifmt_bceqlr, { 0x38386000 }
3498 /* bcgtlr$pack $ICCi_2,$ccond,$hint */
3500 { 0, 0, 0, 0 },
3501 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3502 & ifmt_bceqlr, { 0x78386000 }
3504 /* bcltlr$pack $ICCi_2,$ccond,$hint */
3506 { 0, 0, 0, 0 },
3507 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3508 & ifmt_bceqlr, { 0x18386000 }
3510 /* bcgelr$pack $ICCi_2,$ccond,$hint */
3512 { 0, 0, 0, 0 },
3513 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3514 & ifmt_bceqlr, { 0x58386000 }
3516 /* bclslr$pack $ICCi_2,$ccond,$hint */
3518 { 0, 0, 0, 0 },
3519 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3520 & ifmt_bceqlr, { 0x28386000 }
3522 /* bchilr$pack $ICCi_2,$ccond,$hint */
3524 { 0, 0, 0, 0 },
3525 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3526 & ifmt_bceqlr, { 0x68386000 }
3528 /* bcclr$pack $ICCi_2,$ccond,$hint */
3530 { 0, 0, 0, 0 },
3531 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3532 & ifmt_bceqlr, { 0x8386000 }
3534 /* bcnclr$pack $ICCi_2,$ccond,$hint */
3536 { 0, 0, 0, 0 },
3537 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3538 & ifmt_bceqlr, { 0x48386000 }
3540 /* bcnlr$pack $ICCi_2,$ccond,$hint */
3542 { 0, 0, 0, 0 },
3543 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3544 & ifmt_bceqlr, { 0x30386000 }
3546 /* bcplr$pack $ICCi_2,$ccond,$hint */
3548 { 0, 0, 0, 0 },
3549 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3550 & ifmt_bceqlr, { 0x70386000 }
3552 /* bcvlr$pack $ICCi_2,$ccond,$hint */
3554 { 0, 0, 0, 0 },
3555 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3556 & ifmt_bceqlr, { 0x10386000 }
3558 /* bcnvlr$pack $ICCi_2,$ccond,$hint */
3560 { 0, 0, 0, 0 },
3561 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3562 & ifmt_bceqlr, { 0x50386000 }
3564 /* fcbralr$pack $ccond$hint_taken */
3566 { 0, 0, 0, 0 },
3567 { { MNEM, OP (PACK), ' ', OP (CCOND), OP (HINT_TAKEN), 0 } },
3568 & ifmt_fcbralr, { 0x7838e000 }
3570 /* fcbnolr$pack$hint_not_taken */
3572 { 0, 0, 0, 0 },
3573 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3574 & ifmt_fbnolr, { 0x38e000 }
3576 /* fcbeqlr$pack $FCCi_2,$ccond,$hint */
3578 { 0, 0, 0, 0 },
3579 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3580 & ifmt_fcbeqlr, { 0x4038e000 }
3582 /* fcbnelr$pack $FCCi_2,$ccond,$hint */
3584 { 0, 0, 0, 0 },
3585 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3586 & ifmt_fcbeqlr, { 0x3838e000 }
3588 /* fcblglr$pack $FCCi_2,$ccond,$hint */
3590 { 0, 0, 0, 0 },
3591 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3592 & ifmt_fcbeqlr, { 0x3038e000 }
3594 /* fcbuelr$pack $FCCi_2,$ccond,$hint */
3596 { 0, 0, 0, 0 },
3597 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3598 & ifmt_fcbeqlr, { 0x4838e000 }
3600 /* fcbullr$pack $FCCi_2,$ccond,$hint */
3602 { 0, 0, 0, 0 },
3603 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3604 & ifmt_fcbeqlr, { 0x2838e000 }
3606 /* fcbgelr$pack $FCCi_2,$ccond,$hint */
3608 { 0, 0, 0, 0 },
3609 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3610 & ifmt_fcbeqlr, { 0x5038e000 }
3612 /* fcbltlr$pack $FCCi_2,$ccond,$hint */
3614 { 0, 0, 0, 0 },
3615 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3616 & ifmt_fcbeqlr, { 0x2038e000 }
3618 /* fcbugelr$pack $FCCi_2,$ccond,$hint */
3620 { 0, 0, 0, 0 },
3621 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3622 & ifmt_fcbeqlr, { 0x5838e000 }
3624 /* fcbuglr$pack $FCCi_2,$ccond,$hint */
3626 { 0, 0, 0, 0 },
3627 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3628 & ifmt_fcbeqlr, { 0x1838e000 }
3630 /* fcblelr$pack $FCCi_2,$ccond,$hint */
3632 { 0, 0, 0, 0 },
3633 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3634 & ifmt_fcbeqlr, { 0x6038e000 }
3636 /* fcbgtlr$pack $FCCi_2,$ccond,$hint */
3638 { 0, 0, 0, 0 },
3639 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3640 & ifmt_fcbeqlr, { 0x1038e000 }
3642 /* fcbulelr$pack $FCCi_2,$ccond,$hint */
3644 { 0, 0, 0, 0 },
3645 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3646 & ifmt_fcbeqlr, { 0x6838e000 }
3648 /* fcbulr$pack $FCCi_2,$ccond,$hint */
3650 { 0, 0, 0, 0 },
3651 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3652 & ifmt_fcbeqlr, { 0x838e000 }
3654 /* fcbolr$pack $FCCi_2,$ccond,$hint */
3656 { 0, 0, 0, 0 },
3657 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3658 & ifmt_fcbeqlr, { 0x7038e000 }
3660 /* jmpl$pack @($GRi,$GRj) */
3662 { 0, 0, 0, 0 },
3663 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
3664 & ifmt_jmpl, { 0x300000 }
3666 /* calll$pack $callann($GRi,$GRj) */
3668 { 0, 0, 0, 0 },
3669 { { MNEM, OP (PACK), ' ', OP (CALLANN), '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
3670 & ifmt_calll, { 0x2300000 }
3672 /* jmpil$pack @($GRi,$s12) */
3674 { 0, 0, 0, 0 },
3675 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (S12), ')', 0 } },
3676 & ifmt_jmpil, { 0x340000 }
3678 /* callil$pack @($GRi,$s12) */
3680 { 0, 0, 0, 0 },
3681 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (S12), ')', 0 } },
3682 & ifmt_callil, { 0x2340000 }
3684 /* call$pack $label24 */
3686 { 0, 0, 0, 0 },
3687 { { MNEM, OP (PACK), ' ', OP (LABEL24), 0 } },
3688 & ifmt_call, { 0x3c0000 }
3690 /* rett$pack $debug */
3692 { 0, 0, 0, 0 },
3693 { { MNEM, OP (PACK), ' ', OP (DEBUG), 0 } },
3694 & ifmt_rett, { 0x140000 }
3696 /* rei$pack $eir */
3698 { 0, 0, 0, 0 },
3699 { { MNEM, OP (PACK), ' ', OP (EIR), 0 } },
3700 & ifmt_rei, { 0xdc0000 }
3702 /* tra$pack $GRi,$GRj */
3704 { 0, 0, 0, 0 },
3705 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
3706 & ifmt_tra, { 0x40100000 }
3708 /* tno$pack */
3710 { 0, 0, 0, 0 },
3711 { { MNEM, OP (PACK), 0 } },
3712 & ifmt_tno, { 0x100000 }
3714 /* teq$pack $ICCi_2,$GRi,$GRj */
3716 { 0, 0, 0, 0 },
3717 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3718 & ifmt_teq, { 0x20100000 }
3720 /* tne$pack $ICCi_2,$GRi,$GRj */
3722 { 0, 0, 0, 0 },
3723 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3724 & ifmt_teq, { 0x60100000 }
3726 /* tle$pack $ICCi_2,$GRi,$GRj */
3728 { 0, 0, 0, 0 },
3729 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3730 & ifmt_teq, { 0x38100000 }
3732 /* tgt$pack $ICCi_2,$GRi,$GRj */
3734 { 0, 0, 0, 0 },
3735 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3736 & ifmt_teq, { 0x78100000 }
3738 /* tlt$pack $ICCi_2,$GRi,$GRj */
3740 { 0, 0, 0, 0 },
3741 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3742 & ifmt_teq, { 0x18100000 }
3744 /* tge$pack $ICCi_2,$GRi,$GRj */
3746 { 0, 0, 0, 0 },
3747 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3748 & ifmt_teq, { 0x58100000 }
3750 /* tls$pack $ICCi_2,$GRi,$GRj */
3752 { 0, 0, 0, 0 },
3753 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3754 & ifmt_teq, { 0x28100000 }
3756 /* thi$pack $ICCi_2,$GRi,$GRj */
3758 { 0, 0, 0, 0 },
3759 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3760 & ifmt_teq, { 0x68100000 }
3762 /* tc$pack $ICCi_2,$GRi,$GRj */
3764 { 0, 0, 0, 0 },
3765 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3766 & ifmt_teq, { 0x8100000 }
3768 /* tnc$pack $ICCi_2,$GRi,$GRj */
3770 { 0, 0, 0, 0 },
3771 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3772 & ifmt_teq, { 0x48100000 }
3774 /* tn$pack $ICCi_2,$GRi,$GRj */
3776 { 0, 0, 0, 0 },
3777 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3778 & ifmt_teq, { 0x30100000 }
3780 /* tp$pack $ICCi_2,$GRi,$GRj */
3782 { 0, 0, 0, 0 },
3783 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3784 & ifmt_teq, { 0x70100000 }
3786 /* tv$pack $ICCi_2,$GRi,$GRj */
3788 { 0, 0, 0, 0 },
3789 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3790 & ifmt_teq, { 0x10100000 }
3792 /* tnv$pack $ICCi_2,$GRi,$GRj */
3794 { 0, 0, 0, 0 },
3795 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3796 & ifmt_teq, { 0x50100000 }
3798 /* ftra$pack $GRi,$GRj */
3800 { 0, 0, 0, 0 },
3801 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
3802 & ifmt_ftra, { 0x78100040 }
3804 /* ftno$pack */
3806 { 0, 0, 0, 0 },
3807 { { MNEM, OP (PACK), 0 } },
3808 & ifmt_ftno, { 0x100040 }
3810 /* ftne$pack $FCCi_2,$GRi,$GRj */
3812 { 0, 0, 0, 0 },
3813 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3814 & ifmt_ftne, { 0x38100040 }
3816 /* fteq$pack $FCCi_2,$GRi,$GRj */
3818 { 0, 0, 0, 0 },
3819 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3820 & ifmt_ftne, { 0x40100040 }
3822 /* ftlg$pack $FCCi_2,$GRi,$GRj */
3824 { 0, 0, 0, 0 },
3825 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3826 & ifmt_ftne, { 0x30100040 }
3828 /* ftue$pack $FCCi_2,$GRi,$GRj */
3830 { 0, 0, 0, 0 },
3831 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3832 & ifmt_ftne, { 0x48100040 }
3834 /* ftul$pack $FCCi_2,$GRi,$GRj */
3836 { 0, 0, 0, 0 },
3837 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3838 & ifmt_ftne, { 0x28100040 }
3840 /* ftge$pack $FCCi_2,$GRi,$GRj */
3842 { 0, 0, 0, 0 },
3843 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3844 & ifmt_ftne, { 0x50100040 }
3846 /* ftlt$pack $FCCi_2,$GRi,$GRj */
3848 { 0, 0, 0, 0 },
3849 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3850 & ifmt_ftne, { 0x20100040 }
3852 /* ftuge$pack $FCCi_2,$GRi,$GRj */
3854 { 0, 0, 0, 0 },
3855 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3856 & ifmt_ftne, { 0x58100040 }
3858 /* ftug$pack $FCCi_2,$GRi,$GRj */
3860 { 0, 0, 0, 0 },
3861 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3862 & ifmt_ftne, { 0x18100040 }
3864 /* ftle$pack $FCCi_2,$GRi,$GRj */
3866 { 0, 0, 0, 0 },
3867 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3868 & ifmt_ftne, { 0x60100040 }
3870 /* ftgt$pack $FCCi_2,$GRi,$GRj */
3872 { 0, 0, 0, 0 },
3873 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3874 & ifmt_ftne, { 0x10100040 }
3876 /* ftule$pack $FCCi_2,$GRi,$GRj */
3878 { 0, 0, 0, 0 },
3879 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3880 & ifmt_ftne, { 0x68100040 }
3882 /* ftu$pack $FCCi_2,$GRi,$GRj */
3884 { 0, 0, 0, 0 },
3885 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3886 & ifmt_ftne, { 0x8100040 }
3888 /* fto$pack $FCCi_2,$GRi,$GRj */
3890 { 0, 0, 0, 0 },
3891 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3892 & ifmt_ftne, { 0x70100040 }
3894 /* tira$pack $GRi,$s12 */
3896 { 0, 0, 0, 0 },
3897 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), 0 } },
3898 & ifmt_tira, { 0x40700000 }
3900 /* tino$pack */
3902 { 0, 0, 0, 0 },
3903 { { MNEM, OP (PACK), 0 } },
3904 & ifmt_tino, { 0x700000 }
3906 /* tieq$pack $ICCi_2,$GRi,$s12 */
3908 { 0, 0, 0, 0 },
3909 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3910 & ifmt_tieq, { 0x20700000 }
3912 /* tine$pack $ICCi_2,$GRi,$s12 */
3914 { 0, 0, 0, 0 },
3915 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3916 & ifmt_tieq, { 0x60700000 }
3918 /* tile$pack $ICCi_2,$GRi,$s12 */
3920 { 0, 0, 0, 0 },
3921 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3922 & ifmt_tieq, { 0x38700000 }
3924 /* tigt$pack $ICCi_2,$GRi,$s12 */
3926 { 0, 0, 0, 0 },
3927 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3928 & ifmt_tieq, { 0x78700000 }
3930 /* tilt$pack $ICCi_2,$GRi,$s12 */
3932 { 0, 0, 0, 0 },
3933 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3934 & ifmt_tieq, { 0x18700000 }
3936 /* tige$pack $ICCi_2,$GRi,$s12 */
3938 { 0, 0, 0, 0 },
3939 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3940 & ifmt_tieq, { 0x58700000 }
3942 /* tils$pack $ICCi_2,$GRi,$s12 */
3944 { 0, 0, 0, 0 },
3945 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3946 & ifmt_tieq, { 0x28700000 }
3948 /* tihi$pack $ICCi_2,$GRi,$s12 */
3950 { 0, 0, 0, 0 },
3951 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3952 & ifmt_tieq, { 0x68700000 }
3954 /* tic$pack $ICCi_2,$GRi,$s12 */
3956 { 0, 0, 0, 0 },
3957 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3958 & ifmt_tieq, { 0x8700000 }
3960 /* tinc$pack $ICCi_2,$GRi,$s12 */
3962 { 0, 0, 0, 0 },
3963 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3964 & ifmt_tieq, { 0x48700000 }
3966 /* tin$pack $ICCi_2,$GRi,$s12 */
3968 { 0, 0, 0, 0 },
3969 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3970 & ifmt_tieq, { 0x30700000 }
3972 /* tip$pack $ICCi_2,$GRi,$s12 */
3974 { 0, 0, 0, 0 },
3975 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3976 & ifmt_tieq, { 0x70700000 }
3978 /* tiv$pack $ICCi_2,$GRi,$s12 */
3980 { 0, 0, 0, 0 },
3981 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3982 & ifmt_tieq, { 0x10700000 }
3984 /* tinv$pack $ICCi_2,$GRi,$s12 */
3986 { 0, 0, 0, 0 },
3987 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3988 & ifmt_tieq, { 0x50700000 }
3990 /* ftira$pack $GRi,$s12 */
3992 { 0, 0, 0, 0 },
3993 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), 0 } },
3994 & ifmt_ftira, { 0x78740000 }
3996 /* ftino$pack */
3998 { 0, 0, 0, 0 },
3999 { { MNEM, OP (PACK), 0 } },
4000 & ifmt_ftino, { 0x740000 }
4002 /* ftine$pack $FCCi_2,$GRi,$s12 */
4004 { 0, 0, 0, 0 },
4005 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4006 & ifmt_ftine, { 0x38740000 }
4008 /* ftieq$pack $FCCi_2,$GRi,$s12 */
4010 { 0, 0, 0, 0 },
4011 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4012 & ifmt_ftine, { 0x40740000 }
4014 /* ftilg$pack $FCCi_2,$GRi,$s12 */
4016 { 0, 0, 0, 0 },
4017 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4018 & ifmt_ftine, { 0x30740000 }
4020 /* ftiue$pack $FCCi_2,$GRi,$s12 */
4022 { 0, 0, 0, 0 },
4023 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4024 & ifmt_ftine, { 0x48740000 }
4026 /* ftiul$pack $FCCi_2,$GRi,$s12 */
4028 { 0, 0, 0, 0 },
4029 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4030 & ifmt_ftine, { 0x28740000 }
4032 /* ftige$pack $FCCi_2,$GRi,$s12 */
4034 { 0, 0, 0, 0 },
4035 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4036 & ifmt_ftine, { 0x50740000 }
4038 /* ftilt$pack $FCCi_2,$GRi,$s12 */
4040 { 0, 0, 0, 0 },
4041 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4042 & ifmt_ftine, { 0x20740000 }
4044 /* ftiuge$pack $FCCi_2,$GRi,$s12 */
4046 { 0, 0, 0, 0 },
4047 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4048 & ifmt_ftine, { 0x58740000 }
4050 /* ftiug$pack $FCCi_2,$GRi,$s12 */
4052 { 0, 0, 0, 0 },
4053 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4054 & ifmt_ftine, { 0x18740000 }
4056 /* ftile$pack $FCCi_2,$GRi,$s12 */
4058 { 0, 0, 0, 0 },
4059 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4060 & ifmt_ftine, { 0x60740000 }
4062 /* ftigt$pack $FCCi_2,$GRi,$s12 */
4064 { 0, 0, 0, 0 },
4065 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4066 & ifmt_ftine, { 0x10740000 }
4068 /* ftiule$pack $FCCi_2,$GRi,$s12 */
4070 { 0, 0, 0, 0 },
4071 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4072 & ifmt_ftine, { 0x68740000 }
4074 /* ftiu$pack $FCCi_2,$GRi,$s12 */
4076 { 0, 0, 0, 0 },
4077 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4078 & ifmt_ftine, { 0x8740000 }
4080 /* ftio$pack $FCCi_2,$GRi,$s12 */
4082 { 0, 0, 0, 0 },
4083 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4084 & ifmt_ftine, { 0x70740000 }
4086 /* break$pack */
4088 { 0, 0, 0, 0 },
4089 { { MNEM, OP (PACK), 0 } },
4090 & ifmt_break, { 0x1000c0 }
4092 /* mtrap$pack */
4094 { 0, 0, 0, 0 },
4095 { { MNEM, OP (PACK), 0 } },
4096 & ifmt_break, { 0x100080 }
4098 /* andcr$pack $CRi,$CRj,$CRk */
4100 { 0, 0, 0, 0 },
4101 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4102 & ifmt_andcr, { 0x280200 }
4104 /* orcr$pack $CRi,$CRj,$CRk */
4106 { 0, 0, 0, 0 },
4107 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4108 & ifmt_andcr, { 0x280240 }
4110 /* xorcr$pack $CRi,$CRj,$CRk */
4112 { 0, 0, 0, 0 },
4113 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4114 & ifmt_andcr, { 0x280280 }
4116 /* nandcr$pack $CRi,$CRj,$CRk */
4118 { 0, 0, 0, 0 },
4119 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4120 & ifmt_andcr, { 0x280300 }
4122 /* norcr$pack $CRi,$CRj,$CRk */
4124 { 0, 0, 0, 0 },
4125 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4126 & ifmt_andcr, { 0x280340 }
4128 /* andncr$pack $CRi,$CRj,$CRk */
4130 { 0, 0, 0, 0 },
4131 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4132 & ifmt_andcr, { 0x280400 }
4134 /* orncr$pack $CRi,$CRj,$CRk */
4136 { 0, 0, 0, 0 },
4137 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4138 & ifmt_andcr, { 0x280440 }
4140 /* nandncr$pack $CRi,$CRj,$CRk */
4142 { 0, 0, 0, 0 },
4143 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4144 & ifmt_andcr, { 0x280500 }
4146 /* norncr$pack $CRi,$CRj,$CRk */
4148 { 0, 0, 0, 0 },
4149 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4150 & ifmt_andcr, { 0x280540 }
4152 /* notcr$pack $CRj,$CRk */
4154 { 0, 0, 0, 0 },
4155 { { MNEM, OP (PACK), ' ', OP (CRJ), ',', OP (CRK), 0 } },
4156 & ifmt_notcr, { 0x2802c0 }
4158 /* ckra$pack $CRj_int */
4160 { 0, 0, 0, 0 },
4161 { { MNEM, OP (PACK), ' ', OP (CRJ_INT), 0 } },
4162 & ifmt_ckra, { 0x40200000 }
4164 /* ckno$pack $CRj_int */
4166 { 0, 0, 0, 0 },
4167 { { MNEM, OP (PACK), ' ', OP (CRJ_INT), 0 } },
4168 & ifmt_ckra, { 0x200000 }
4170 /* ckeq$pack $ICCi_3,$CRj_int */
4172 { 0, 0, 0, 0 },
4173 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4174 & ifmt_ckeq, { 0x20200000 }
4176 /* ckne$pack $ICCi_3,$CRj_int */
4178 { 0, 0, 0, 0 },
4179 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4180 & ifmt_ckeq, { 0x60200000 }
4182 /* ckle$pack $ICCi_3,$CRj_int */
4184 { 0, 0, 0, 0 },
4185 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4186 & ifmt_ckeq, { 0x38200000 }
4188 /* ckgt$pack $ICCi_3,$CRj_int */
4190 { 0, 0, 0, 0 },
4191 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4192 & ifmt_ckeq, { 0x78200000 }
4194 /* cklt$pack $ICCi_3,$CRj_int */
4196 { 0, 0, 0, 0 },
4197 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4198 & ifmt_ckeq, { 0x18200000 }
4200 /* ckge$pack $ICCi_3,$CRj_int */
4202 { 0, 0, 0, 0 },
4203 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4204 & ifmt_ckeq, { 0x58200000 }
4206 /* ckls$pack $ICCi_3,$CRj_int */
4208 { 0, 0, 0, 0 },
4209 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4210 & ifmt_ckeq, { 0x28200000 }
4212 /* ckhi$pack $ICCi_3,$CRj_int */
4214 { 0, 0, 0, 0 },
4215 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4216 & ifmt_ckeq, { 0x68200000 }
4218 /* ckc$pack $ICCi_3,$CRj_int */
4220 { 0, 0, 0, 0 },
4221 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4222 & ifmt_ckeq, { 0x8200000 }
4224 /* cknc$pack $ICCi_3,$CRj_int */
4226 { 0, 0, 0, 0 },
4227 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4228 & ifmt_ckeq, { 0x48200000 }
4230 /* ckn$pack $ICCi_3,$CRj_int */
4232 { 0, 0, 0, 0 },
4233 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4234 & ifmt_ckeq, { 0x30200000 }
4236 /* ckp$pack $ICCi_3,$CRj_int */
4238 { 0, 0, 0, 0 },
4239 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4240 & ifmt_ckeq, { 0x70200000 }
4242 /* ckv$pack $ICCi_3,$CRj_int */
4244 { 0, 0, 0, 0 },
4245 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4246 & ifmt_ckeq, { 0x10200000 }
4248 /* cknv$pack $ICCi_3,$CRj_int */
4250 { 0, 0, 0, 0 },
4251 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4252 & ifmt_ckeq, { 0x50200000 }
4254 /* fckra$pack $CRj_float */
4256 { 0, 0, 0, 0 },
4257 { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), 0 } },
4258 & ifmt_fckra, { 0x78240000 }
4260 /* fckno$pack $CRj_float */
4262 { 0, 0, 0, 0 },
4263 { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), 0 } },
4264 & ifmt_fckra, { 0x240000 }
4266 /* fckne$pack $FCCi_3,$CRj_float */
4268 { 0, 0, 0, 0 },
4269 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4270 & ifmt_fckra, { 0x38240000 }
4272 /* fckeq$pack $FCCi_3,$CRj_float */
4274 { 0, 0, 0, 0 },
4275 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4276 & ifmt_fckra, { 0x40240000 }
4278 /* fcklg$pack $FCCi_3,$CRj_float */
4280 { 0, 0, 0, 0 },
4281 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4282 & ifmt_fckra, { 0x30240000 }
4284 /* fckue$pack $FCCi_3,$CRj_float */
4286 { 0, 0, 0, 0 },
4287 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4288 & ifmt_fckra, { 0x48240000 }
4290 /* fckul$pack $FCCi_3,$CRj_float */
4292 { 0, 0, 0, 0 },
4293 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4294 & ifmt_fckra, { 0x28240000 }
4296 /* fckge$pack $FCCi_3,$CRj_float */
4298 { 0, 0, 0, 0 },
4299 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4300 & ifmt_fckra, { 0x50240000 }
4302 /* fcklt$pack $FCCi_3,$CRj_float */
4304 { 0, 0, 0, 0 },
4305 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4306 & ifmt_fckra, { 0x20240000 }
4308 /* fckuge$pack $FCCi_3,$CRj_float */
4310 { 0, 0, 0, 0 },
4311 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4312 & ifmt_fckra, { 0x58240000 }
4314 /* fckug$pack $FCCi_3,$CRj_float */
4316 { 0, 0, 0, 0 },
4317 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4318 & ifmt_fckra, { 0x18240000 }
4320 /* fckle$pack $FCCi_3,$CRj_float */
4322 { 0, 0, 0, 0 },
4323 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4324 & ifmt_fckra, { 0x60240000 }
4326 /* fckgt$pack $FCCi_3,$CRj_float */
4328 { 0, 0, 0, 0 },
4329 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4330 & ifmt_fckra, { 0x10240000 }
4332 /* fckule$pack $FCCi_3,$CRj_float */
4334 { 0, 0, 0, 0 },
4335 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4336 & ifmt_fckra, { 0x68240000 }
4338 /* fcku$pack $FCCi_3,$CRj_float */
4340 { 0, 0, 0, 0 },
4341 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4342 & ifmt_fckra, { 0x8240000 }
4344 /* fcko$pack $FCCi_3,$CRj_float */
4346 { 0, 0, 0, 0 },
4347 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4348 & ifmt_fckra, { 0x70240000 }
4350 /* cckra$pack $CRj_int,$CCi,$cond */
4352 { 0, 0, 0, 0 },
4353 { { MNEM, OP (PACK), ' ', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4354 & ifmt_cckra, { 0x41a80000 }
4356 /* cckno$pack $CRj_int,$CCi,$cond */
4358 { 0, 0, 0, 0 },
4359 { { MNEM, OP (PACK), ' ', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4360 & ifmt_cckra, { 0x1a80000 }
4362 /* cckeq$pack $ICCi_3,$CRj_int,$CCi,$cond */
4364 { 0, 0, 0, 0 },
4365 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4366 & ifmt_cckeq, { 0x21a80000 }
4368 /* cckne$pack $ICCi_3,$CRj_int,$CCi,$cond */
4370 { 0, 0, 0, 0 },
4371 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4372 & ifmt_cckeq, { 0x61a80000 }
4374 /* cckle$pack $ICCi_3,$CRj_int,$CCi,$cond */
4376 { 0, 0, 0, 0 },
4377 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4378 & ifmt_cckeq, { 0x39a80000 }
4380 /* cckgt$pack $ICCi_3,$CRj_int,$CCi,$cond */
4382 { 0, 0, 0, 0 },
4383 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4384 & ifmt_cckeq, { 0x79a80000 }
4386 /* ccklt$pack $ICCi_3,$CRj_int,$CCi,$cond */
4388 { 0, 0, 0, 0 },
4389 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4390 & ifmt_cckeq, { 0x19a80000 }
4392 /* cckge$pack $ICCi_3,$CRj_int,$CCi,$cond */
4394 { 0, 0, 0, 0 },
4395 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4396 & ifmt_cckeq, { 0x59a80000 }
4398 /* cckls$pack $ICCi_3,$CRj_int,$CCi,$cond */
4400 { 0, 0, 0, 0 },
4401 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4402 & ifmt_cckeq, { 0x29a80000 }
4404 /* cckhi$pack $ICCi_3,$CRj_int,$CCi,$cond */
4406 { 0, 0, 0, 0 },
4407 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4408 & ifmt_cckeq, { 0x69a80000 }
4410 /* cckc$pack $ICCi_3,$CRj_int,$CCi,$cond */
4412 { 0, 0, 0, 0 },
4413 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4414 & ifmt_cckeq, { 0x9a80000 }
4416 /* ccknc$pack $ICCi_3,$CRj_int,$CCi,$cond */
4418 { 0, 0, 0, 0 },
4419 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4420 & ifmt_cckeq, { 0x49a80000 }
4422 /* cckn$pack $ICCi_3,$CRj_int,$CCi,$cond */
4424 { 0, 0, 0, 0 },
4425 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4426 & ifmt_cckeq, { 0x31a80000 }
4428 /* cckp$pack $ICCi_3,$CRj_int,$CCi,$cond */
4430 { 0, 0, 0, 0 },
4431 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4432 & ifmt_cckeq, { 0x71a80000 }
4434 /* cckv$pack $ICCi_3,$CRj_int,$CCi,$cond */
4436 { 0, 0, 0, 0 },
4437 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4438 & ifmt_cckeq, { 0x11a80000 }
4440 /* ccknv$pack $ICCi_3,$CRj_int,$CCi,$cond */
4442 { 0, 0, 0, 0 },
4443 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4444 & ifmt_cckeq, { 0x51a80000 }
4446 /* cfckra$pack $CRj_float,$CCi,$cond */
4448 { 0, 0, 0, 0 },
4449 { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4450 & ifmt_cfckra, { 0x79a80040 }
4452 /* cfckno$pack $CRj_float,$CCi,$cond */
4454 { 0, 0, 0, 0 },
4455 { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4456 & ifmt_cfckra, { 0x1a80040 }
4458 /* cfckne$pack $FCCi_3,$CRj_float,$CCi,$cond */
4460 { 0, 0, 0, 0 },
4461 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4462 & ifmt_cfckne, { 0x39a80040 }
4464 /* cfckeq$pack $FCCi_3,$CRj_float,$CCi,$cond */
4466 { 0, 0, 0, 0 },
4467 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4468 & ifmt_cfckne, { 0x41a80040 }
4470 /* cfcklg$pack $FCCi_3,$CRj_float,$CCi,$cond */
4472 { 0, 0, 0, 0 },
4473 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4474 & ifmt_cfckne, { 0x31a80040 }
4476 /* cfckue$pack $FCCi_3,$CRj_float,$CCi,$cond */
4478 { 0, 0, 0, 0 },
4479 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4480 & ifmt_cfckne, { 0x49a80040 }
4482 /* cfckul$pack $FCCi_3,$CRj_float,$CCi,$cond */
4484 { 0, 0, 0, 0 },
4485 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4486 & ifmt_cfckne, { 0x29a80040 }
4488 /* cfckge$pack $FCCi_3,$CRj_float,$CCi,$cond */
4490 { 0, 0, 0, 0 },
4491 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4492 & ifmt_cfckne, { 0x51a80040 }
4494 /* cfcklt$pack $FCCi_3,$CRj_float,$CCi,$cond */
4496 { 0, 0, 0, 0 },
4497 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4498 & ifmt_cfckne, { 0x21a80040 }
4500 /* cfckuge$pack $FCCi_3,$CRj_float,$CCi,$cond */
4502 { 0, 0, 0, 0 },
4503 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4504 & ifmt_cfckne, { 0x59a80040 }
4506 /* cfckug$pack $FCCi_3,$CRj_float,$CCi,$cond */
4508 { 0, 0, 0, 0 },
4509 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4510 & ifmt_cfckne, { 0x19a80040 }
4512 /* cfckle$pack $FCCi_3,$CRj_float,$CCi,$cond */
4514 { 0, 0, 0, 0 },
4515 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4516 & ifmt_cfckne, { 0x61a80040 }
4518 /* cfckgt$pack $FCCi_3,$CRj_float,$CCi,$cond */
4520 { 0, 0, 0, 0 },
4521 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4522 & ifmt_cfckne, { 0x11a80040 }
4524 /* cfckule$pack $FCCi_3,$CRj_float,$CCi,$cond */
4526 { 0, 0, 0, 0 },
4527 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4528 & ifmt_cfckne, { 0x69a80040 }
4530 /* cfcku$pack $FCCi_3,$CRj_float,$CCi,$cond */
4532 { 0, 0, 0, 0 },
4533 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4534 & ifmt_cfckne, { 0x9a80040 }
4536 /* cfcko$pack $FCCi_3,$CRj_float,$CCi,$cond */
4538 { 0, 0, 0, 0 },
4539 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4540 & ifmt_cfckne, { 0x71a80040 }
4542 /* cjmpl$pack @($GRi,$GRj),$CCi,$cond */
4544 { 0, 0, 0, 0 },
4545 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
4546 & ifmt_cjmpl, { 0x1a80080 }
4548 /* ccalll$pack @($GRi,$GRj),$CCi,$cond */
4550 { 0, 0, 0, 0 },
4551 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
4552 & ifmt_ccalll, { 0x3a80080 }
4554 /* ici$pack @($GRi,$GRj) */
4556 { 0, 0, 0, 0 },
4557 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4558 & ifmt_smu, { 0xc0e00 }
4560 /* dci$pack @($GRi,$GRj) */
4562 { 0, 0, 0, 0 },
4563 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4564 & ifmt_smu, { 0xc0f00 }
4566 /* icei$pack @($GRi,$GRj),$ae */
4568 { 0, 0, 0, 0 },
4569 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (AE), 0 } },
4570 & ifmt_icei, { 0xc0e40 }
4572 /* dcei$pack @($GRi,$GRj),$ae */
4574 { 0, 0, 0, 0 },
4575 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (AE), 0 } },
4576 & ifmt_icei, { 0xc0e80 }
4578 /* dcf$pack @($GRi,$GRj) */
4580 { 0, 0, 0, 0 },
4581 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4582 & ifmt_smu, { 0xc0f40 }
4584 /* dcef$pack @($GRi,$GRj),$ae */
4586 { 0, 0, 0, 0 },
4587 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (AE), 0 } },
4588 & ifmt_icei, { 0xc0ec0 }
4590 /* witlb$pack $GRk,@($GRi,$GRj) */
4592 { 0, 0, 0, 0 },
4593 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4594 & ifmt_slass, { 0xc0c80 }
4596 /* wdtlb$pack $GRk,@($GRi,$GRj) */
4598 { 0, 0, 0, 0 },
4599 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4600 & ifmt_slass, { 0xc0d80 }
4602 /* itlbi$pack @($GRi,$GRj) */
4604 { 0, 0, 0, 0 },
4605 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4606 & ifmt_smu, { 0xc0cc0 }
4608 /* dtlbi$pack @($GRi,$GRj) */
4610 { 0, 0, 0, 0 },
4611 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4612 & ifmt_smu, { 0xc0dc0 }
4614 /* icpl$pack $GRi,$GRj,$lock */
4616 { 0, 0, 0, 0 },
4617 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (LOCK), 0 } },
4618 & ifmt_icpl, { 0xc0c00 }
4620 /* dcpl$pack $GRi,$GRj,$lock */
4622 { 0, 0, 0, 0 },
4623 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (LOCK), 0 } },
4624 & ifmt_icpl, { 0xc0d00 }
4626 /* icul$pack $GRi */
4628 { 0, 0, 0, 0 },
4629 { { MNEM, OP (PACK), ' ', OP (GRI), 0 } },
4630 & ifmt_icul, { 0xc0c40 }
4632 /* dcul$pack $GRi */
4634 { 0, 0, 0, 0 },
4635 { { MNEM, OP (PACK), ' ', OP (GRI), 0 } },
4636 & ifmt_icul, { 0xc0d40 }
4638 /* bar$pack */
4640 { 0, 0, 0, 0 },
4641 { { MNEM, OP (PACK), 0 } },
4642 & ifmt_bar, { 0xc0f80 }
4644 /* membar$pack */
4646 { 0, 0, 0, 0 },
4647 { { MNEM, OP (PACK), 0 } },
4648 & ifmt_bar, { 0xc0fc0 }
4650 /* lrai$pack $GRi,$GRk,$LRAE,$LRAD,$LRAS */
4652 { 0, 0, 0, 0 },
4653 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), ',', OP (LRAE), ',', OP (LRAD), ',', OP (LRAS), 0 } },
4654 & ifmt_lrai, { 0xc0800 }
4656 /* lrad$pack $GRi,$GRk,$LRAE,$LRAD,$LRAS */
4658 { 0, 0, 0, 0 },
4659 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), ',', OP (LRAE), ',', OP (LRAD), ',', OP (LRAS), 0 } },
4660 & ifmt_lrai, { 0xc0840 }
4662 /* tlbpr$pack $GRi,$GRj,$TLBPRopx,$TLBPRL */
4664 { 0, 0, 0, 0 },
4665 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (TLBPROPX), ',', OP (TLBPRL), 0 } },
4666 & ifmt_tlbpr, { 0xc0900 }
4668 /* cop1$pack $s6_1,$CPRi,$CPRj,$CPRk */
4670 { 0, 0, 0, 0 },
4671 { { MNEM, OP (PACK), ' ', OP (S6_1), ',', OP (CPRI), ',', OP (CPRJ), ',', OP (CPRK), 0 } },
4672 & ifmt_cop1, { 0x1f80000 }
4674 /* cop2$pack $s6_1,$CPRi,$CPRj,$CPRk */
4676 { 0, 0, 0, 0 },
4677 { { MNEM, OP (PACK), ' ', OP (S6_1), ',', OP (CPRI), ',', OP (CPRJ), ',', OP (CPRK), 0 } },
4678 & ifmt_cop1, { 0x1fc0000 }
4680 /* clrgr$pack $GRk */
4682 { 0, 0, 0, 0 },
4683 { { MNEM, OP (PACK), ' ', OP (GRK), 0 } },
4684 & ifmt_clrgr, { 0x280000 }
4686 /* clrfr$pack $FRk */
4688 { 0, 0, 0, 0 },
4689 { { MNEM, OP (PACK), ' ', OP (FRK), 0 } },
4690 & ifmt_clrfr, { 0x280080 }
4692 /* clrga$pack */
4694 { 0, 0, 0, 0 },
4695 { { MNEM, OP (PACK), 0 } },
4696 & ifmt_bar, { 0x280040 }
4698 /* clrfa$pack */
4700 { 0, 0, 0, 0 },
4701 { { MNEM, OP (PACK), 0 } },
4702 & ifmt_bar, { 0x2800c0 }
4704 /* commitgr$pack $GRk */
4706 { 0, 0, 0, 0 },
4707 { { MNEM, OP (PACK), ' ', OP (GRK), 0 } },
4708 & ifmt_clrgr, { 0x280100 }
4710 /* commitfr$pack $FRk */
4712 { 0, 0, 0, 0 },
4713 { { MNEM, OP (PACK), ' ', OP (FRK), 0 } },
4714 & ifmt_clrfr, { 0x280180 }
4716 /* commitga$pack */
4718 { 0, 0, 0, 0 },
4719 { { MNEM, OP (PACK), 0 } },
4720 & ifmt_bar, { 0x280140 }
4722 /* commitfa$pack */
4724 { 0, 0, 0, 0 },
4725 { { MNEM, OP (PACK), 0 } },
4726 & ifmt_bar, { 0x2801c0 }
4728 /* fitos$pack $FRintj,$FRk */
4730 { 0, 0, 0, 0 },
4731 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4732 & ifmt_fitos, { 0x1e40000 }
4734 /* fstoi$pack $FRj,$FRintk */
4736 { 0, 0, 0, 0 },
4737 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4738 & ifmt_fstoi, { 0x1e40040 }
4740 /* fitod$pack $FRintj,$FRdoublek */
4742 { 0, 0, 0, 0 },
4743 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRDOUBLEK), 0 } },
4744 & ifmt_fitod, { 0x1e80000 }
4746 /* fdtoi$pack $FRdoublej,$FRintk */
4748 { 0, 0, 0, 0 },
4749 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRINTK), 0 } },
4750 & ifmt_fdtoi, { 0x1e80040 }
4752 /* fditos$pack $FRintj,$FRk */
4754 { 0, 0, 0, 0 },
4755 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4756 & ifmt_fitos, { 0x1e40400 }
4758 /* fdstoi$pack $FRj,$FRintk */
4760 { 0, 0, 0, 0 },
4761 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4762 & ifmt_fstoi, { 0x1e40440 }
4764 /* nfditos$pack $FRintj,$FRk */
4766 { 0, 0, 0, 0 },
4767 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4768 & ifmt_fitos, { 0x1e40c00 }
4770 /* nfdstoi$pack $FRj,$FRintk */
4772 { 0, 0, 0, 0 },
4773 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4774 & ifmt_fstoi, { 0x1e40c40 }
4776 /* cfitos$pack $FRintj,$FRk,$CCi,$cond */
4778 { 0, 0, 0, 0 },
4779 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4780 & ifmt_cfitos, { 0x1ac0000 }
4782 /* cfstoi$pack $FRj,$FRintk,$CCi,$cond */
4784 { 0, 0, 0, 0 },
4785 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
4786 & ifmt_cfstoi, { 0x1ac0040 }
4788 /* nfitos$pack $FRintj,$FRk */
4790 { 0, 0, 0, 0 },
4791 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4792 & ifmt_fitos, { 0x1e40800 }
4794 /* nfstoi$pack $FRj,$FRintk */
4796 { 0, 0, 0, 0 },
4797 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4798 & ifmt_fstoi, { 0x1e40840 }
4800 /* fmovs$pack $FRj,$FRk */
4802 { 0, 0, 0, 0 },
4803 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4804 & ifmt_fmovs, { 0x1e40080 }
4806 /* fmovd$pack $FRdoublej,$FRdoublek */
4808 { 0, 0, 0, 0 },
4809 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4810 & ifmt_fmovd, { 0x1e80080 }
4812 /* fdmovs$pack $FRj,$FRk */
4814 { 0, 0, 0, 0 },
4815 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4816 & ifmt_fmovs, { 0x1e40480 }
4818 /* cfmovs$pack $FRj,$FRk,$CCi,$cond */
4820 { 0, 0, 0, 0 },
4821 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4822 & ifmt_cfmovs, { 0x1b00000 }
4824 /* fnegs$pack $FRj,$FRk */
4826 { 0, 0, 0, 0 },
4827 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4828 & ifmt_fmovs, { 0x1e400c0 }
4830 /* fnegd$pack $FRdoublej,$FRdoublek */
4832 { 0, 0, 0, 0 },
4833 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4834 & ifmt_fmovd, { 0x1e800c0 }
4836 /* fdnegs$pack $FRj,$FRk */
4838 { 0, 0, 0, 0 },
4839 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4840 & ifmt_fmovs, { 0x1e404c0 }
4842 /* cfnegs$pack $FRj,$FRk,$CCi,$cond */
4844 { 0, 0, 0, 0 },
4845 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4846 & ifmt_cfmovs, { 0x1b00040 }
4848 /* fabss$pack $FRj,$FRk */
4850 { 0, 0, 0, 0 },
4851 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4852 & ifmt_fmovs, { 0x1e40100 }
4854 /* fabsd$pack $FRdoublej,$FRdoublek */
4856 { 0, 0, 0, 0 },
4857 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4858 & ifmt_fmovd, { 0x1e80100 }
4860 /* fdabss$pack $FRj,$FRk */
4862 { 0, 0, 0, 0 },
4863 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4864 & ifmt_fmovs, { 0x1e40500 }
4866 /* cfabss$pack $FRj,$FRk,$CCi,$cond */
4868 { 0, 0, 0, 0 },
4869 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4870 & ifmt_cfmovs, { 0x1b00080 }
4872 /* fsqrts$pack $FRj,$FRk */
4874 { 0, 0, 0, 0 },
4875 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4876 & ifmt_fmovs, { 0x1e40140 }
4878 /* fdsqrts$pack $FRj,$FRk */
4880 { 0, 0, 0, 0 },
4881 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4882 & ifmt_fmovs, { 0x1e40540 }
4884 /* nfdsqrts$pack $FRj,$FRk */
4886 { 0, 0, 0, 0 },
4887 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4888 & ifmt_fmovs, { 0x1e40d40 }
4890 /* fsqrtd$pack $FRdoublej,$FRdoublek */
4892 { 0, 0, 0, 0 },
4893 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4894 & ifmt_fmovd, { 0x1e80140 }
4896 /* cfsqrts$pack $FRj,$FRk,$CCi,$cond */
4898 { 0, 0, 0, 0 },
4899 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4900 & ifmt_cfmovs, { 0x1b80080 }
4902 /* nfsqrts$pack $FRj,$FRk */
4904 { 0, 0, 0, 0 },
4905 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4906 & ifmt_fmovs, { 0x1e40940 }
4908 /* fadds$pack $FRi,$FRj,$FRk */
4910 { 0, 0, 0, 0 },
4911 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4912 & ifmt_fadds, { 0x1e40180 }
4914 /* fsubs$pack $FRi,$FRj,$FRk */
4916 { 0, 0, 0, 0 },
4917 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4918 & ifmt_fadds, { 0x1e401c0 }
4920 /* fmuls$pack $FRi,$FRj,$FRk */
4922 { 0, 0, 0, 0 },
4923 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4924 & ifmt_fadds, { 0x1e40200 }
4926 /* fdivs$pack $FRi,$FRj,$FRk */
4928 { 0, 0, 0, 0 },
4929 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4930 & ifmt_fadds, { 0x1e40240 }
4932 /* faddd$pack $FRdoublei,$FRdoublej,$FRdoublek */
4934 { 0, 0, 0, 0 },
4935 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4936 & ifmt_faddd, { 0x1e80180 }
4938 /* fsubd$pack $FRdoublei,$FRdoublej,$FRdoublek */
4940 { 0, 0, 0, 0 },
4941 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4942 & ifmt_faddd, { 0x1e801c0 }
4944 /* fmuld$pack $FRdoublei,$FRdoublej,$FRdoublek */
4946 { 0, 0, 0, 0 },
4947 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4948 & ifmt_faddd, { 0x1e80200 }
4950 /* fdivd$pack $FRdoublei,$FRdoublej,$FRdoublek */
4952 { 0, 0, 0, 0 },
4953 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4954 & ifmt_faddd, { 0x1e80240 }
4956 /* cfadds$pack $FRi,$FRj,$FRk,$CCi,$cond */
4958 { 0, 0, 0, 0 },
4959 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4960 & ifmt_cfadds, { 0x1b40000 }
4962 /* cfsubs$pack $FRi,$FRj,$FRk,$CCi,$cond */
4964 { 0, 0, 0, 0 },
4965 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4966 & ifmt_cfadds, { 0x1b40040 }
4968 /* cfmuls$pack $FRi,$FRj,$FRk,$CCi,$cond */
4970 { 0, 0, 0, 0 },
4971 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4972 & ifmt_cfadds, { 0x1b80000 }
4974 /* cfdivs$pack $FRi,$FRj,$FRk,$CCi,$cond */
4976 { 0, 0, 0, 0 },
4977 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4978 & ifmt_cfadds, { 0x1b80040 }
4980 /* nfadds$pack $FRi,$FRj,$FRk */
4982 { 0, 0, 0, 0 },
4983 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4984 & ifmt_fadds, { 0x1e40980 }
4986 /* nfsubs$pack $FRi,$FRj,$FRk */
4988 { 0, 0, 0, 0 },
4989 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4990 & ifmt_fadds, { 0x1e409c0 }
4992 /* nfmuls$pack $FRi,$FRj,$FRk */
4994 { 0, 0, 0, 0 },
4995 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4996 & ifmt_fadds, { 0x1e40a00 }
4998 /* nfdivs$pack $FRi,$FRj,$FRk */
5000 { 0, 0, 0, 0 },
5001 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5002 & ifmt_fadds, { 0x1e40a40 }
5004 /* fcmps$pack $FRi,$FRj,$FCCi_2 */
5006 { 0, 0, 0, 0 },
5007 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), 0 } },
5008 & ifmt_fcmps, { 0x1e40280 }
5010 /* fcmpd$pack $FRdoublei,$FRdoublej,$FCCi_2 */
5012 { 0, 0, 0, 0 },
5013 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FCCI_2), 0 } },
5014 & ifmt_fcmpd, { 0x1e80280 }
5016 /* cfcmps$pack $FRi,$FRj,$FCCi_2,$CCi,$cond */
5018 { 0, 0, 0, 0 },
5019 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), ',', OP (CCI), ',', OP (COND), 0 } },
5020 & ifmt_cfcmps, { 0x1b40080 }
5022 /* fdcmps$pack $FRi,$FRj,$FCCi_2 */
5024 { 0, 0, 0, 0 },
5025 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), 0 } },
5026 & ifmt_fcmps, { 0x1e40680 }
5028 /* fmadds$pack $FRi,$FRj,$FRk */
5030 { 0, 0, 0, 0 },
5031 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5032 & ifmt_fadds, { 0x1e402c0 }
5034 /* fmsubs$pack $FRi,$FRj,$FRk */
5036 { 0, 0, 0, 0 },
5037 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5038 & ifmt_fadds, { 0x1e40300 }
5040 /* fmaddd$pack $FRdoublei,$FRdoublej,$FRdoublek */
5042 { 0, 0, 0, 0 },
5043 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
5044 & ifmt_faddd, { 0x1e802c0 }
5046 /* fmsubd$pack $FRdoublei,$FRdoublej,$FRdoublek */
5048 { 0, 0, 0, 0 },
5049 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
5050 & ifmt_faddd, { 0x1e80300 }
5052 /* fdmadds$pack $FRi,$FRj,$FRk */
5054 { 0, 0, 0, 0 },
5055 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5056 & ifmt_fadds, { 0x1e406c0 }
5058 /* nfdmadds$pack $FRi,$FRj,$FRk */
5060 { 0, 0, 0, 0 },
5061 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5062 & ifmt_fadds, { 0x1e40ec0 }
5064 /* cfmadds$pack $FRi,$FRj,$FRk,$CCi,$cond */
5066 { 0, 0, 0, 0 },
5067 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5068 & ifmt_cfadds, { 0x1bc0000 }
5070 /* cfmsubs$pack $FRi,$FRj,$FRk,$CCi,$cond */
5072 { 0, 0, 0, 0 },
5073 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5074 & ifmt_cfadds, { 0x1bc0040 }
5076 /* nfmadds$pack $FRi,$FRj,$FRk */
5078 { 0, 0, 0, 0 },
5079 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5080 & ifmt_fadds, { 0x1e40ac0 }
5082 /* nfmsubs$pack $FRi,$FRj,$FRk */
5084 { 0, 0, 0, 0 },
5085 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5086 & ifmt_fadds, { 0x1e40b00 }
5088 /* fmas$pack $FRi,$FRj,$FRk */
5090 { 0, 0, 0, 0 },
5091 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5092 & ifmt_fadds, { 0x1e40380 }
5094 /* fmss$pack $FRi,$FRj,$FRk */
5096 { 0, 0, 0, 0 },
5097 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5098 & ifmt_fadds, { 0x1e403c0 }
5100 /* fdmas$pack $FRi,$FRj,$FRk */
5102 { 0, 0, 0, 0 },
5103 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5104 & ifmt_fadds, { 0x1e40700 }
5106 /* fdmss$pack $FRi,$FRj,$FRk */
5108 { 0, 0, 0, 0 },
5109 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5110 & ifmt_fadds, { 0x1e40740 }
5112 /* nfdmas$pack $FRi,$FRj,$FRk */
5114 { 0, 0, 0, 0 },
5115 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5116 & ifmt_fadds, { 0x1e40f00 }
5118 /* nfdmss$pack $FRi,$FRj,$FRk */
5120 { 0, 0, 0, 0 },
5121 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5122 & ifmt_fadds, { 0x1e40f40 }
5124 /* cfmas$pack $FRi,$FRj,$FRk,$CCi,$cond */
5126 { 0, 0, 0, 0 },
5127 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5128 & ifmt_cfadds, { 0x1bc0080 }
5130 /* cfmss$pack $FRi,$FRj,$FRk,$CCi,$cond */
5132 { 0, 0, 0, 0 },
5133 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5134 & ifmt_cfadds, { 0x1bc00c0 }
5136 /* fmad$pack $FRi,$FRj,$FRk */
5138 { 0, 0, 0, 0 },
5139 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5140 & ifmt_fadds, { 0x1e80380 }
5142 /* fmsd$pack $FRi,$FRj,$FRk */
5144 { 0, 0, 0, 0 },
5145 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5146 & ifmt_fadds, { 0x1e803c0 }
5148 /* nfmas$pack $FRi,$FRj,$FRk */
5150 { 0, 0, 0, 0 },
5151 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5152 & ifmt_fadds, { 0x1e40b80 }
5154 /* nfmss$pack $FRi,$FRj,$FRk */
5156 { 0, 0, 0, 0 },
5157 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5158 & ifmt_fadds, { 0x1e40bc0 }
5160 /* fdadds$pack $FRi,$FRj,$FRk */
5162 { 0, 0, 0, 0 },
5163 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5164 & ifmt_fadds, { 0x1e40580 }
5166 /* fdsubs$pack $FRi,$FRj,$FRk */
5168 { 0, 0, 0, 0 },
5169 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5170 & ifmt_fadds, { 0x1e405c0 }
5172 /* fdmuls$pack $FRi,$FRj,$FRk */
5174 { 0, 0, 0, 0 },
5175 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5176 & ifmt_fadds, { 0x1e40600 }
5178 /* fddivs$pack $FRi,$FRj,$FRk */
5180 { 0, 0, 0, 0 },
5181 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5182 & ifmt_fadds, { 0x1e40640 }
5184 /* fdsads$pack $FRi,$FRj,$FRk */
5186 { 0, 0, 0, 0 },
5187 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5188 & ifmt_fadds, { 0x1e40780 }
5190 /* fdmulcs$pack $FRi,$FRj,$FRk */
5192 { 0, 0, 0, 0 },
5193 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5194 & ifmt_fadds, { 0x1e407c0 }
5196 /* nfdmulcs$pack $FRi,$FRj,$FRk */
5198 { 0, 0, 0, 0 },
5199 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5200 & ifmt_fadds, { 0x1e40fc0 }
5202 /* nfdadds$pack $FRi,$FRj,$FRk */
5204 { 0, 0, 0, 0 },
5205 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5206 & ifmt_fadds, { 0x1e40d80 }
5208 /* nfdsubs$pack $FRi,$FRj,$FRk */
5210 { 0, 0, 0, 0 },
5211 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5212 & ifmt_fadds, { 0x1e40dc0 }
5214 /* nfdmuls$pack $FRi,$FRj,$FRk */
5216 { 0, 0, 0, 0 },
5217 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5218 & ifmt_fadds, { 0x1e40e00 }
5220 /* nfddivs$pack $FRi,$FRj,$FRk */
5222 { 0, 0, 0, 0 },
5223 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5224 & ifmt_fadds, { 0x1e40e40 }
5226 /* nfdsads$pack $FRi,$FRj,$FRk */
5228 { 0, 0, 0, 0 },
5229 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5230 & ifmt_fadds, { 0x1e40f80 }
5232 /* nfdcmps$pack $FRi,$FRj,$FCCi_2 */
5234 { 0, 0, 0, 0 },
5235 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), 0 } },
5236 & ifmt_fcmps, { 0x1e40e80 }
5238 /* mhsetlos$pack $u12,$FRklo */
5240 { 0, 0, 0, 0 },
5241 { { MNEM, OP (PACK), ' ', OP (U12), ',', OP (FRKLO), 0 } },
5242 & ifmt_mhsetlos, { 0x1e00800 }
5244 /* mhsethis$pack $u12,$FRkhi */
5246 { 0, 0, 0, 0 },
5247 { { MNEM, OP (PACK), ' ', OP (U12), ',', OP (FRKHI), 0 } },
5248 & ifmt_mhsethis, { 0x1e00880 }
5250 /* mhdsets$pack $u12,$FRintk */
5252 { 0, 0, 0, 0 },
5253 { { MNEM, OP (PACK), ' ', OP (U12), ',', OP (FRINTK), 0 } },
5254 & ifmt_mhdsets, { 0x1e00900 }
5256 /* mhsetloh$pack $s5,$FRklo */
5258 { 0, 0, 0, 0 },
5259 { { MNEM, OP (PACK), ' ', OP (S5), ',', OP (FRKLO), 0 } },
5260 & ifmt_mhsetloh, { 0x1e00840 }
5262 /* mhsethih$pack $s5,$FRkhi */
5264 { 0, 0, 0, 0 },
5265 { { MNEM, OP (PACK), ' ', OP (S5), ',', OP (FRKHI), 0 } },
5266 & ifmt_mhsethih, { 0x1e008c0 }
5268 /* mhdseth$pack $s5,$FRintk */
5270 { 0, 0, 0, 0 },
5271 { { MNEM, OP (PACK), ' ', OP (S5), ',', OP (FRINTK), 0 } },
5272 & ifmt_mhdseth, { 0x1e00940 }
5274 /* mand$pack $FRinti,$FRintj,$FRintk */
5276 { 0, 0, 0, 0 },
5277 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5278 & ifmt_mand, { 0x1ec0000 }
5280 /* mor$pack $FRinti,$FRintj,$FRintk */
5282 { 0, 0, 0, 0 },
5283 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5284 & ifmt_mand, { 0x1ec0040 }
5286 /* mxor$pack $FRinti,$FRintj,$FRintk */
5288 { 0, 0, 0, 0 },
5289 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5290 & ifmt_mand, { 0x1ec0080 }
5292 /* cmand$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5294 { 0, 0, 0, 0 },
5295 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5296 & ifmt_cmand, { 0x1c00000 }
5298 /* cmor$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5300 { 0, 0, 0, 0 },
5301 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5302 & ifmt_cmand, { 0x1c00040 }
5304 /* cmxor$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5306 { 0, 0, 0, 0 },
5307 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5308 & ifmt_cmand, { 0x1c00080 }
5310 /* mnot$pack $FRintj,$FRintk */
5312 { 0, 0, 0, 0 },
5313 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5314 & ifmt_mnot, { 0x1ec00c0 }
5316 /* cmnot$pack $FRintj,$FRintk,$CCi,$cond */
5318 { 0, 0, 0, 0 },
5319 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5320 & ifmt_cmnot, { 0x1c000c0 }
5322 /* mrotli$pack $FRinti,$u6,$FRintk */
5324 { 0, 0, 0, 0 },
5325 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5326 & ifmt_mrotli, { 0x1ec0100 }
5328 /* mrotri$pack $FRinti,$u6,$FRintk */
5330 { 0, 0, 0, 0 },
5331 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5332 & ifmt_mrotli, { 0x1ec0140 }
5334 /* mwcut$pack $FRinti,$FRintj,$FRintk */
5336 { 0, 0, 0, 0 },
5337 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5338 & ifmt_mand, { 0x1ec0180 }
5340 /* mwcuti$pack $FRinti,$u6,$FRintk */
5342 { 0, 0, 0, 0 },
5343 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5344 & ifmt_mrotli, { 0x1ec01c0 }
5346 /* mcut$pack $ACC40Si,$FRintj,$FRintk */
5348 { 0, 0, 0, 0 },
5349 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5350 & ifmt_mcut, { 0x1ec0b00 }
5352 /* mcuti$pack $ACC40Si,$s6,$FRintk */
5354 { 0, 0, 0, 0 },
5355 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (S6), ',', OP (FRINTK), 0 } },
5356 & ifmt_mcuti, { 0x1ec0b80 }
5358 /* mcutss$pack $ACC40Si,$FRintj,$FRintk */
5360 { 0, 0, 0, 0 },
5361 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5362 & ifmt_mcut, { 0x1ec0b40 }
5364 /* mcutssi$pack $ACC40Si,$s6,$FRintk */
5366 { 0, 0, 0, 0 },
5367 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (S6), ',', OP (FRINTK), 0 } },
5368 & ifmt_mcuti, { 0x1ec0bc0 }
5370 /* mdcutssi$pack $ACC40Si,$s6,$FRintkeven */
5372 { 0, 0, 0, 0 },
5373 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (S6), ',', OP (FRINTKEVEN), 0 } },
5374 & ifmt_mdcutssi, { 0x1e00380 }
5376 /* maveh$pack $FRinti,$FRintj,$FRintk */
5378 { 0, 0, 0, 0 },
5379 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5380 & ifmt_mand, { 0x1ec0200 }
5382 /* msllhi$pack $FRinti,$u6,$FRintk */
5384 { 0, 0, 0, 0 },
5385 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5386 & ifmt_mrotli, { 0x1ec0240 }
5388 /* msrlhi$pack $FRinti,$u6,$FRintk */
5390 { 0, 0, 0, 0 },
5391 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5392 & ifmt_mrotli, { 0x1ec0280 }
5394 /* msrahi$pack $FRinti,$u6,$FRintk */
5396 { 0, 0, 0, 0 },
5397 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5398 & ifmt_mrotli, { 0x1ec02c0 }
5400 /* mdrotli$pack $FRintieven,$s6,$FRintkeven */
5402 { 0, 0, 0, 0 },
5403 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (S6), ',', OP (FRINTKEVEN), 0 } },
5404 & ifmt_mdrotli, { 0x1e002c0 }
5406 /* mcplhi$pack $FRinti,$u6,$FRintk */
5408 { 0, 0, 0, 0 },
5409 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5410 & ifmt_mrotli, { 0x1e00300 }
5412 /* mcpli$pack $FRinti,$u6,$FRintk */
5414 { 0, 0, 0, 0 },
5415 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5416 & ifmt_mrotli, { 0x1e00340 }
5418 /* msaths$pack $FRinti,$FRintj,$FRintk */
5420 { 0, 0, 0, 0 },
5421 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5422 & ifmt_mand, { 0x1ec0300 }
5424 /* mqsaths$pack $FRintieven,$FRintjeven,$FRintkeven */
5426 { 0, 0, 0, 0 },
5427 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5428 & ifmt_mqsaths, { 0x1e003c0 }
5430 /* msathu$pack $FRinti,$FRintj,$FRintk */
5432 { 0, 0, 0, 0 },
5433 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5434 & ifmt_mand, { 0x1ec0340 }
5436 /* mcmpsh$pack $FRinti,$FRintj,$FCCk */
5438 { 0, 0, 0, 0 },
5439 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FCCK), 0 } },
5440 & ifmt_mcmpsh, { 0x1ec0380 }
5442 /* mcmpuh$pack $FRinti,$FRintj,$FCCk */
5444 { 0, 0, 0, 0 },
5445 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FCCK), 0 } },
5446 & ifmt_mcmpsh, { 0x1ec03c0 }
5448 /* mabshs$pack $FRintj,$FRintk */
5450 { 0, 0, 0, 0 },
5451 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5452 & ifmt_mabshs, { 0x1e00280 }
5454 /* maddhss$pack $FRinti,$FRintj,$FRintk */
5456 { 0, 0, 0, 0 },
5457 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5458 & ifmt_mand, { 0x1ec0400 }
5460 /* maddhus$pack $FRinti,$FRintj,$FRintk */
5462 { 0, 0, 0, 0 },
5463 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5464 & ifmt_mand, { 0x1ec0440 }
5466 /* msubhss$pack $FRinti,$FRintj,$FRintk */
5468 { 0, 0, 0, 0 },
5469 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5470 & ifmt_mand, { 0x1ec0480 }
5472 /* msubhus$pack $FRinti,$FRintj,$FRintk */
5474 { 0, 0, 0, 0 },
5475 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5476 & ifmt_mand, { 0x1ec04c0 }
5478 /* cmaddhss$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5480 { 0, 0, 0, 0 },
5481 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5482 & ifmt_cmand, { 0x1c40000 }
5484 /* cmaddhus$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5486 { 0, 0, 0, 0 },
5487 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5488 & ifmt_cmand, { 0x1c40040 }
5490 /* cmsubhss$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5492 { 0, 0, 0, 0 },
5493 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5494 & ifmt_cmand, { 0x1c40080 }
5496 /* cmsubhus$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5498 { 0, 0, 0, 0 },
5499 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5500 & ifmt_cmand, { 0x1c400c0 }
5502 /* mqaddhss$pack $FRintieven,$FRintjeven,$FRintkeven */
5504 { 0, 0, 0, 0 },
5505 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5506 & ifmt_mqsaths, { 0x1ec0600 }
5508 /* mqaddhus$pack $FRintieven,$FRintjeven,$FRintkeven */
5510 { 0, 0, 0, 0 },
5511 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5512 & ifmt_mqsaths, { 0x1ec0640 }
5514 /* mqsubhss$pack $FRintieven,$FRintjeven,$FRintkeven */
5516 { 0, 0, 0, 0 },
5517 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5518 & ifmt_mqsaths, { 0x1ec0680 }
5520 /* mqsubhus$pack $FRintieven,$FRintjeven,$FRintkeven */
5522 { 0, 0, 0, 0 },
5523 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5524 & ifmt_mqsaths, { 0x1ec06c0 }
5526 /* cmqaddhss$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5528 { 0, 0, 0, 0 },
5529 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5530 & ifmt_cmqaddhss, { 0x1cc0000 }
5532 /* cmqaddhus$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5534 { 0, 0, 0, 0 },
5535 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5536 & ifmt_cmqaddhss, { 0x1cc0040 }
5538 /* cmqsubhss$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5540 { 0, 0, 0, 0 },
5541 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5542 & ifmt_cmqaddhss, { 0x1cc0080 }
5544 /* cmqsubhus$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5546 { 0, 0, 0, 0 },
5547 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5548 & ifmt_cmqaddhss, { 0x1cc00c0 }
5550 /* mqlclrhs$pack $FRintieven,$FRintjeven,$FRintkeven */
5552 { 0, 0, 0, 0 },
5553 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5554 & ifmt_mqsaths, { 0x1e00400 }
5556 /* mqlmths$pack $FRintieven,$FRintjeven,$FRintkeven */
5558 { 0, 0, 0, 0 },
5559 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5560 & ifmt_mqsaths, { 0x1e00500 }
5562 /* mqsllhi$pack $FRintieven,$u6,$FRintkeven */
5564 { 0, 0, 0, 0 },
5565 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (U6), ',', OP (FRINTKEVEN), 0 } },
5566 & ifmt_mqsllhi, { 0x1e00440 }
5568 /* mqsrahi$pack $FRintieven,$u6,$FRintkeven */
5570 { 0, 0, 0, 0 },
5571 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (U6), ',', OP (FRINTKEVEN), 0 } },
5572 & ifmt_mqsllhi, { 0x1e004c0 }
5574 /* maddaccs$pack $ACC40Si,$ACC40Sk */
5576 { 0, 0, 0, 0 },
5577 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5578 & ifmt_maddaccs, { 0x1e00100 }
5580 /* msubaccs$pack $ACC40Si,$ACC40Sk */
5582 { 0, 0, 0, 0 },
5583 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5584 & ifmt_maddaccs, { 0x1e00140 }
5586 /* mdaddaccs$pack $ACC40Si,$ACC40Sk */
5588 { 0, 0, 0, 0 },
5589 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5590 & ifmt_maddaccs, { 0x1e00180 }
5592 /* mdsubaccs$pack $ACC40Si,$ACC40Sk */
5594 { 0, 0, 0, 0 },
5595 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5596 & ifmt_maddaccs, { 0x1e001c0 }
5598 /* masaccs$pack $ACC40Si,$ACC40Sk */
5600 { 0, 0, 0, 0 },
5601 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5602 & ifmt_maddaccs, { 0x1e00200 }
5604 /* mdasaccs$pack $ACC40Si,$ACC40Sk */
5606 { 0, 0, 0, 0 },
5607 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5608 & ifmt_maddaccs, { 0x1e00240 }
5610 /* mmulhs$pack $FRinti,$FRintj,$ACC40Sk */
5612 { 0, 0, 0, 0 },
5613 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5614 & ifmt_mmulhs, { 0x1ec0500 }
5616 /* mmulhu$pack $FRinti,$FRintj,$ACC40Sk */
5618 { 0, 0, 0, 0 },
5619 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5620 & ifmt_mmulhs, { 0x1ec0540 }
5622 /* mmulxhs$pack $FRinti,$FRintj,$ACC40Sk */
5624 { 0, 0, 0, 0 },
5625 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5626 & ifmt_mmulhs, { 0x1ec0a00 }
5628 /* mmulxhu$pack $FRinti,$FRintj,$ACC40Sk */
5630 { 0, 0, 0, 0 },
5631 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5632 & ifmt_mmulhs, { 0x1ec0a40 }
5634 /* cmmulhs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5636 { 0, 0, 0, 0 },
5637 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5638 & ifmt_cmmulhs, { 0x1c80000 }
5640 /* cmmulhu$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5642 { 0, 0, 0, 0 },
5643 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5644 & ifmt_cmmulhs, { 0x1c80040 }
5646 /* mqmulhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5648 { 0, 0, 0, 0 },
5649 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5650 & ifmt_mqmulhs, { 0x1ec0700 }
5652 /* mqmulhu$pack $FRintieven,$FRintjeven,$ACC40Sk */
5654 { 0, 0, 0, 0 },
5655 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5656 & ifmt_mqmulhs, { 0x1ec0740 }
5658 /* mqmulxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5660 { 0, 0, 0, 0 },
5661 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5662 & ifmt_mqmulhs, { 0x1ec0a80 }
5664 /* mqmulxhu$pack $FRintieven,$FRintjeven,$ACC40Sk */
5666 { 0, 0, 0, 0 },
5667 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5668 & ifmt_mqmulhs, { 0x1ec0ac0 }
5670 /* cmqmulhs$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
5672 { 0, 0, 0, 0 },
5673 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5674 & ifmt_cmqmulhs, { 0x1d00000 }
5676 /* cmqmulhu$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
5678 { 0, 0, 0, 0 },
5679 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5680 & ifmt_cmqmulhs, { 0x1d00040 }
5682 /* mmachs$pack $FRinti,$FRintj,$ACC40Sk */
5684 { 0, 0, 0, 0 },
5685 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5686 & ifmt_mmulhs, { 0x1ec0580 }
5688 /* mmachu$pack $FRinti,$FRintj,$ACC40Uk */
5690 { 0, 0, 0, 0 },
5691 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40UK), 0 } },
5692 & ifmt_mmachu, { 0x1ec05c0 }
5694 /* mmrdhs$pack $FRinti,$FRintj,$ACC40Sk */
5696 { 0, 0, 0, 0 },
5697 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5698 & ifmt_mmulhs, { 0x1ec0c00 }
5700 /* mmrdhu$pack $FRinti,$FRintj,$ACC40Uk */
5702 { 0, 0, 0, 0 },
5703 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40UK), 0 } },
5704 & ifmt_mmachu, { 0x1ec0c40 }
5706 /* cmmachs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5708 { 0, 0, 0, 0 },
5709 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5710 & ifmt_cmmulhs, { 0x1c80080 }
5712 /* cmmachu$pack $FRinti,$FRintj,$ACC40Uk,$CCi,$cond */
5714 { 0, 0, 0, 0 },
5715 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40UK), ',', OP (CCI), ',', OP (COND), 0 } },
5716 & ifmt_cmmachu, { 0x1c800c0 }
5718 /* mqmachs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5720 { 0, 0, 0, 0 },
5721 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5722 & ifmt_mqmulhs, { 0x1ec0780 }
5724 /* mqmachu$pack $FRintieven,$FRintjeven,$ACC40Uk */
5726 { 0, 0, 0, 0 },
5727 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40UK), 0 } },
5728 & ifmt_mqmachu, { 0x1ec07c0 }
5730 /* cmqmachs$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
5732 { 0, 0, 0, 0 },
5733 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5734 & ifmt_cmqmulhs, { 0x1d00080 }
5736 /* cmqmachu$pack $FRintieven,$FRintjeven,$ACC40Uk,$CCi,$cond */
5738 { 0, 0, 0, 0 },
5739 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40UK), ',', OP (CCI), ',', OP (COND), 0 } },
5740 & ifmt_cmqmachu, { 0x1d000c0 }
5742 /* mqxmachs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5744 { 0, 0, 0, 0 },
5745 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5746 & ifmt_mqmulhs, { 0x1e00000 }
5748 /* mqxmacxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5750 { 0, 0, 0, 0 },
5751 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5752 & ifmt_mqmulhs, { 0x1e00040 }
5754 /* mqmacxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5756 { 0, 0, 0, 0 },
5757 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5758 & ifmt_mqmulhs, { 0x1e00080 }
5760 /* mcpxrs$pack $FRinti,$FRintj,$ACC40Sk */
5762 { 0, 0, 0, 0 },
5763 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5764 & ifmt_mmulhs, { 0x1ec0800 }
5766 /* mcpxru$pack $FRinti,$FRintj,$ACC40Sk */
5768 { 0, 0, 0, 0 },
5769 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5770 & ifmt_mmulhs, { 0x1ec0840 }
5772 /* mcpxis$pack $FRinti,$FRintj,$ACC40Sk */
5774 { 0, 0, 0, 0 },
5775 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5776 & ifmt_mmulhs, { 0x1ec0880 }
5778 /* mcpxiu$pack $FRinti,$FRintj,$ACC40Sk */
5780 { 0, 0, 0, 0 },
5781 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5782 & ifmt_mmulhs, { 0x1ec08c0 }
5784 /* cmcpxrs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5786 { 0, 0, 0, 0 },
5787 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5788 & ifmt_cmmulhs, { 0x1d40000 }
5790 /* cmcpxru$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5792 { 0, 0, 0, 0 },
5793 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5794 & ifmt_cmmulhs, { 0x1d40040 }
5796 /* cmcpxis$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5798 { 0, 0, 0, 0 },
5799 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5800 & ifmt_cmmulhs, { 0x1d40080 }
5802 /* cmcpxiu$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5804 { 0, 0, 0, 0 },
5805 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5806 & ifmt_cmmulhs, { 0x1d400c0 }
5808 /* mqcpxrs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5810 { 0, 0, 0, 0 },
5811 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5812 & ifmt_mqmulhs, { 0x1ec0900 }
5814 /* mqcpxru$pack $FRintieven,$FRintjeven,$ACC40Sk */
5816 { 0, 0, 0, 0 },
5817 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5818 & ifmt_mqmulhs, { 0x1ec0940 }
5820 /* mqcpxis$pack $FRintieven,$FRintjeven,$ACC40Sk */
5822 { 0, 0, 0, 0 },
5823 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5824 & ifmt_mqmulhs, { 0x1ec0980 }
5826 /* mqcpxiu$pack $FRintieven,$FRintjeven,$ACC40Sk */
5828 { 0, 0, 0, 0 },
5829 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5830 & ifmt_mqmulhs, { 0x1ec09c0 }
5832 /* mexpdhw$pack $FRinti,$u6,$FRintk */
5834 { 0, 0, 0, 0 },
5835 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5836 & ifmt_mrotli, { 0x1ec0c80 }
5838 /* cmexpdhw$pack $FRinti,$u6,$FRintk,$CCi,$cond */
5840 { 0, 0, 0, 0 },
5841 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5842 & ifmt_cmexpdhw, { 0x1d80080 }
5844 /* mexpdhd$pack $FRinti,$u6,$FRintkeven */
5846 { 0, 0, 0, 0 },
5847 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTKEVEN), 0 } },
5848 & ifmt_mexpdhd, { 0x1ec0cc0 }
5850 /* cmexpdhd$pack $FRinti,$u6,$FRintkeven,$CCi,$cond */
5852 { 0, 0, 0, 0 },
5853 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5854 & ifmt_cmexpdhd, { 0x1d800c0 }
5856 /* mpackh$pack $FRinti,$FRintj,$FRintk */
5858 { 0, 0, 0, 0 },
5859 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5860 & ifmt_mand, { 0x1ec0d00 }
5862 /* mdpackh$pack $FRintieven,$FRintjeven,$FRintkeven */
5864 { 0, 0, 0, 0 },
5865 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5866 & ifmt_mqsaths, { 0x1ec0d80 }
5868 /* munpackh$pack $FRinti,$FRintkeven */
5870 { 0, 0, 0, 0 },
5871 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTKEVEN), 0 } },
5872 & ifmt_munpackh, { 0x1ec0d40 }
5874 /* mdunpackh$pack $FRintieven,$FRintk */
5876 { 0, 0, 0, 0 },
5877 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTK), 0 } },
5878 & ifmt_mdunpackh, { 0x1ec0dc0 }
5880 /* mbtoh$pack $FRintj,$FRintkeven */
5882 { 0, 0, 0, 0 },
5883 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTKEVEN), 0 } },
5884 & ifmt_mbtoh, { 0x1ec0e00 }
5886 /* cmbtoh$pack $FRintj,$FRintkeven,$CCi,$cond */
5888 { 0, 0, 0, 0 },
5889 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5890 & ifmt_cmbtoh, { 0x1dc0000 }
5892 /* mhtob$pack $FRintjeven,$FRintk */
5894 { 0, 0, 0, 0 },
5895 { { MNEM, OP (PACK), ' ', OP (FRINTJEVEN), ',', OP (FRINTK), 0 } },
5896 & ifmt_mhtob, { 0x1ec0e40 }
5898 /* cmhtob$pack $FRintjeven,$FRintk,$CCi,$cond */
5900 { 0, 0, 0, 0 },
5901 { { MNEM, OP (PACK), ' ', OP (FRINTJEVEN), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5902 & ifmt_cmhtob, { 0x1dc0040 }
5904 /* mbtohe$pack $FRintj,$FRintk */
5906 { 0, 0, 0, 0 },
5907 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5908 & ifmt_mabshs, { 0x1ec0e80 }
5910 /* cmbtohe$pack $FRintj,$FRintk,$CCi,$cond */
5912 { 0, 0, 0, 0 },
5913 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5914 & ifmt_cmbtohe, { 0x1dc0080 }
5916 /* mnop$pack */
5918 { 0, 0, 0, 0 },
5919 { { MNEM, OP (PACK), 0 } },
5920 & ifmt_mnop, { 0x7fee0ec0 }
5922 /* mclracc$pack $ACC40Sk,$A0 */
5924 { 0, 0, 0, 0 },
5925 { { MNEM, OP (PACK), ' ', OP (ACC40SK), ',', OP (A0), 0 } },
5926 & ifmt_mclracc_0, { 0x1ec0ec0 }
5928 /* mclracc$pack $ACC40Sk,$A1 */
5930 { 0, 0, 0, 0 },
5931 { { MNEM, OP (PACK), ' ', OP (ACC40SK), ',', OP (A1), 0 } },
5932 & ifmt_mclracc_0, { 0x1ee0ec0 }
5934 /* mrdacc$pack $ACC40Si,$FRintk */
5936 { 0, 0, 0, 0 },
5937 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (FRINTK), 0 } },
5938 & ifmt_mrdacc, { 0x1ec0f00 }
5940 /* mrdaccg$pack $ACCGi,$FRintk */
5942 { 0, 0, 0, 0 },
5943 { { MNEM, OP (PACK), ' ', OP (ACCGI), ',', OP (FRINTK), 0 } },
5944 & ifmt_mrdaccg, { 0x1ec0f80 }
5946 /* mwtacc$pack $FRinti,$ACC40Sk */
5948 { 0, 0, 0, 0 },
5949 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (ACC40SK), 0 } },
5950 & ifmt_mwtacc, { 0x1ec0f40 }
5952 /* mwtaccg$pack $FRinti,$ACCGk */
5954 { 0, 0, 0, 0 },
5955 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (ACCGK), 0 } },
5956 & ifmt_mwtaccg, { 0x1ec0fc0 }
5958 /* mcop1$pack $FRi,$FRj,$FRk */
5960 { 0, 0, 0, 0 },
5961 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5962 & ifmt_fadds, { 0x1f00000 }
5964 /* mcop2$pack $FRi,$FRj,$FRk */
5966 { 0, 0, 0, 0 },
5967 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5968 & ifmt_fadds, { 0x1f40000 }
5970 /* fnop$pack */
5972 { 0, 0, 0, 0 },
5973 { { MNEM, OP (PACK), 0 } },
5974 & ifmt_fnop, { 0x1e40340 }
5978 #undef A
5979 #undef OPERAND
5980 #undef MNEM
5981 #undef OP
5983 /* Formats for ALIAS macro-insns. */
5985 #define F(f) & frv_cgen_ifld_table[FRV_##f]
5986 static const CGEN_IFMT ifmt_nop ATTRIBUTE_UNUSED = {
5987 32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
5990 static const CGEN_IFMT ifmt_ret ATTRIBUTE_UNUSED = {
5991 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 } }
5994 static const CGEN_IFMT ifmt_cmp ATTRIBUTE_UNUSED = {
5995 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 } }
5998 static const CGEN_IFMT ifmt_cmpi ATTRIBUTE_UNUSED = {
5999 32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_S10) }, { 0 } }
6002 static const CGEN_IFMT ifmt_ccmp ATTRIBUTE_UNUSED = {
6003 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 } }
6006 static const CGEN_IFMT ifmt_mov ATTRIBUTE_UNUSED = {
6007 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
6010 static const CGEN_IFMT ifmt_cmov ATTRIBUTE_UNUSED = {
6011 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 } }
6014 #undef F
6016 /* Each non-simple macro entry points to an array of expansion possibilities. */
6018 #define A(a) (1 << CGEN_INSN_##a)
6019 #define OPERAND(op) FRV_OPERAND_##op
6020 #define MNEM CGEN_SYNTAX_MNEMONIC /* syntax value for mnemonic */
6021 #define OP(field) CGEN_SYNTAX_MAKE_FIELD (OPERAND (field))
6023 /* The macro instruction table. */
6025 static const CGEN_IBASE frv_cgen_macro_insn_table[] =
6027 /* nop$pack */
6029 -1, "nop", "nop", 32,
6030 { 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 } } } }
6032 /* ret$pack */
6034 -1, "ret", "ret", 32,
6035 { 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 } } } }
6037 /* cmp$pack $GRi,$GRj,$ICCi_1 */
6039 -1, "cmp", "cmp", 32,
6040 { 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 } } } }
6042 /* cmpi$pack $GRi,$s10,$ICCi_1 */
6044 -1, "cmpi", "cmpi", 32,
6045 { 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 } } } }
6047 /* ccmp$pack $GRi,$GRj,$CCi,$cond */
6049 -1, "ccmp", "ccmp", 32,
6050 { 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 } } } }
6052 /* mov$pack $GRi,$GRk */
6054 -1, "mov", "mov", 32,
6055 { 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 } } } }
6057 /* cmov$pack $GRi,$GRk,$CCi,$cond */
6059 -1, "cmov", "cmov", 32,
6060 { 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 } } } }
6064 /* The macro instruction opcode table. */
6066 static const CGEN_OPCODE frv_cgen_macro_insn_opcode_table[] =
6068 /* nop$pack */
6070 { 0, 0, 0, 0 },
6071 { { MNEM, OP (PACK), 0 } },
6072 & ifmt_nop, { 0x880000 }
6074 /* ret$pack */
6076 { 0, 0, 0, 0 },
6077 { { MNEM, OP (PACK), 0 } },
6078 & ifmt_ret, { 0x403a4000 }
6080 /* cmp$pack $GRi,$GRj,$ICCi_1 */
6082 { 0, 0, 0, 0 },
6083 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (ICCI_1), 0 } },
6084 & ifmt_cmp, { 0x140 }
6086 /* cmpi$pack $GRi,$s10,$ICCi_1 */
6088 { 0, 0, 0, 0 },
6089 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (ICCI_1), 0 } },
6090 & ifmt_cmpi, { 0x540000 }
6092 /* ccmp$pack $GRi,$GRj,$CCi,$cond */
6094 { 0, 0, 0, 0 },
6095 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (CCI), ',', OP (COND), 0 } },
6096 & ifmt_ccmp, { 0x1640040 }
6098 /* mov$pack $GRi,$GRk */
6100 { 0, 0, 0, 0 },
6101 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), 0 } },
6102 & ifmt_mov, { 0x880000 }
6104 /* cmov$pack $GRi,$GRk,$CCi,$cond */
6106 { 0, 0, 0, 0 },
6107 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
6108 & ifmt_cmov, { 0x1680040 }
6112 #undef A
6113 #undef OPERAND
6114 #undef MNEM
6115 #undef OP
6117 #ifndef CGEN_ASM_HASH_P
6118 #define CGEN_ASM_HASH_P(insn) 1
6119 #endif
6121 #ifndef CGEN_DIS_HASH_P
6122 #define CGEN_DIS_HASH_P(insn) 1
6123 #endif
6125 /* Return non-zero if INSN is to be added to the hash table.
6126 Targets are free to override CGEN_{ASM,DIS}_HASH_P in the .opc file. */
6128 static int
6129 asm_hash_insn_p (const CGEN_INSN *insn ATTRIBUTE_UNUSED)
6131 return CGEN_ASM_HASH_P (insn);
6134 static int
6135 dis_hash_insn_p (const CGEN_INSN *insn)
6137 /* If building the hash table and the NO-DIS attribute is present,
6138 ignore. */
6139 if (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_NO_DIS))
6140 return 0;
6141 return CGEN_DIS_HASH_P (insn);
6144 #ifndef CGEN_ASM_HASH
6145 #define CGEN_ASM_HASH_SIZE 127
6146 #ifdef CGEN_MNEMONIC_OPERANDS
6147 #define CGEN_ASM_HASH(mnem) (*(unsigned char *) (mnem) % CGEN_ASM_HASH_SIZE)
6148 #else
6149 #define CGEN_ASM_HASH(mnem) (*(unsigned char *) (mnem) % CGEN_ASM_HASH_SIZE) /*FIXME*/
6150 #endif
6151 #endif
6153 /* It doesn't make much sense to provide a default here,
6154 but while this is under development we do.
6155 BUFFER is a pointer to the bytes of the insn, target order.
6156 VALUE is the first base_insn_bitsize bits as an int in host order. */
6158 #ifndef CGEN_DIS_HASH
6159 #define CGEN_DIS_HASH_SIZE 256
6160 #define CGEN_DIS_HASH(buf, value) (*(unsigned char *) (buf))
6161 #endif
6163 /* The result is the hash value of the insn.
6164 Targets are free to override CGEN_{ASM,DIS}_HASH in the .opc file. */
6166 static unsigned int
6167 asm_hash_insn (const char *mnem)
6169 return CGEN_ASM_HASH (mnem);
6172 /* BUF is a pointer to the bytes of the insn, target order.
6173 VALUE is the first base_insn_bitsize bits as an int in host order. */
6175 static unsigned int
6176 dis_hash_insn (const char *buf ATTRIBUTE_UNUSED,
6177 CGEN_INSN_INT value ATTRIBUTE_UNUSED)
6179 return CGEN_DIS_HASH (buf, value);
6182 /* Set the recorded length of the insn in the CGEN_FIELDS struct. */
6184 static void
6185 set_fields_bitsize (CGEN_FIELDS *fields, int size)
6187 CGEN_FIELDS_BITSIZE (fields) = size;
6190 /* Function to call before using the operand instance table.
6191 This plugs the opcode entries and macro instructions into the cpu table. */
6193 void
6194 frv_cgen_init_opcode_table (CGEN_CPU_DESC cd)
6196 int i;
6197 int num_macros = (sizeof (frv_cgen_macro_insn_table) /
6198 sizeof (frv_cgen_macro_insn_table[0]));
6199 const CGEN_IBASE *ib = & frv_cgen_macro_insn_table[0];
6200 const CGEN_OPCODE *oc = & frv_cgen_macro_insn_opcode_table[0];
6201 CGEN_INSN *insns = xmalloc (num_macros * sizeof (CGEN_INSN));
6203 /* This test has been added to avoid a warning generated
6204 if memset is called with a third argument of value zero. */
6205 if (num_macros >= 1)
6206 memset (insns, 0, num_macros * sizeof (CGEN_INSN));
6207 for (i = 0; i < num_macros; ++i)
6209 insns[i].base = &ib[i];
6210 insns[i].opcode = &oc[i];
6211 frv_cgen_build_insn_regex (& insns[i]);
6213 cd->macro_insn_table.init_entries = insns;
6214 cd->macro_insn_table.entry_size = sizeof (CGEN_IBASE);
6215 cd->macro_insn_table.num_init_entries = num_macros;
6217 oc = & frv_cgen_insn_opcode_table[0];
6218 insns = (CGEN_INSN *) cd->insn_table.init_entries;
6219 for (i = 0; i < MAX_INSNS; ++i)
6221 insns[i].opcode = &oc[i];
6222 frv_cgen_build_insn_regex (& insns[i]);
6225 cd->sizeof_fields = sizeof (CGEN_FIELDS);
6226 cd->set_fields_bitsize = set_fields_bitsize;
6228 cd->asm_hash_p = asm_hash_insn_p;
6229 cd->asm_hash = asm_hash_insn;
6230 cd->asm_hash_size = CGEN_ASM_HASH_SIZE;
6232 cd->dis_hash_p = dis_hash_insn_p;
6233 cd->dis_hash = dis_hash_insn;
6234 cd->dis_hash_size = CGEN_DIS_HASH_SIZE;