PR 10109
[binutils.git] / opcodes / frv-opc.c
blobf1a20e5572e4160830acb1c1d20c33626c56ddb4
1 /* Instruction opcode table for frv.
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
5 Copyright 1996-2007 Free Software Foundation, Inc.
7 This file is part of the GNU Binutils and/or GDB, the GNU debugger.
9 This file is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 3, or (at your option)
12 any later version.
14 It is distributed in the hope that it will be useful, but WITHOUT
15 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
16 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
17 License for more details.
19 You should have received a copy of the GNU General Public License along
20 with this program; if not, write to the Free Software Foundation, Inc.,
21 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
25 #include "sysdep.h"
26 #include "ansidecl.h"
27 #include "bfd.h"
28 #include "symcat.h"
29 #include "frv-desc.h"
30 #include "frv-opc.h"
31 #include "libiberty.h"
33 /* -- opc.c */
34 #include "elf/frv.h"
35 #include <stdio.h>
37 /* Returns TRUE if {MAJOR,MACH} is a major branch of the FRV
38 development tree. */
40 bfd_boolean
41 frv_is_branch_major (CGEN_ATTR_VALUE_ENUM_TYPE major, unsigned long mach)
43 switch (mach)
45 case bfd_mach_fr400:
46 if (major >= FR400_MAJOR_B_1 && major <= FR400_MAJOR_B_6)
47 return TRUE;
48 break;
49 case bfd_mach_fr450:
50 if (major >= FR450_MAJOR_B_1 && major <= FR450_MAJOR_B_6)
51 return TRUE;
52 break;
53 default:
54 if (major >= FR500_MAJOR_B_1 && major <= FR500_MAJOR_B_6)
55 return TRUE;
56 break;
59 return FALSE;
62 /* Returns TRUE if {MAJOR,MACH} supports floating point insns. */
64 bfd_boolean
65 frv_is_float_major (CGEN_ATTR_VALUE_ENUM_TYPE major, unsigned long mach)
67 switch (mach)
69 case bfd_mach_fr400:
70 case bfd_mach_fr450:
71 return FALSE;
72 default:
73 if (major >= FR500_MAJOR_F_1 && major <= FR500_MAJOR_F_8)
74 return TRUE;
75 break;
78 return FALSE;
81 /* Returns TRUE if {MAJOR,MACH} supports media insns. */
83 bfd_boolean
84 frv_is_media_major (CGEN_ATTR_VALUE_ENUM_TYPE major, unsigned long mach)
86 switch (mach)
88 case bfd_mach_fr400:
89 if (major >= FR400_MAJOR_M_1 && major <= FR400_MAJOR_M_2)
90 return TRUE;
91 break;
92 case bfd_mach_fr450:
93 if (major >= FR450_MAJOR_M_1 && major <= FR450_MAJOR_M_6)
94 return TRUE;
95 break;
96 default:
97 if (major >= FR500_MAJOR_M_1 && major <= FR500_MAJOR_M_8)
98 return TRUE;
99 break;
102 return FALSE;
105 bfd_boolean
106 frv_is_branch_insn (const CGEN_INSN *insn)
108 if (frv_is_branch_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR),
109 bfd_mach_fr400))
110 return TRUE;
111 if (frv_is_branch_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR),
112 bfd_mach_fr450))
113 return TRUE;
114 if (frv_is_branch_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR),
115 bfd_mach_fr500))
116 return TRUE;
118 return FALSE;
121 bfd_boolean
122 frv_is_float_insn (const CGEN_INSN *insn)
124 if (frv_is_float_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR),
125 bfd_mach_fr400))
126 return TRUE;
127 if (frv_is_float_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR),
128 bfd_mach_fr450))
129 return TRUE;
130 if (frv_is_float_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR),
131 bfd_mach_fr500))
132 return TRUE;
134 return FALSE;
137 bfd_boolean
138 frv_is_media_insn (const CGEN_INSN *insn)
140 if (frv_is_media_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR),
141 bfd_mach_fr400))
142 return TRUE;
143 if (frv_is_media_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR),
144 bfd_mach_fr450))
145 return TRUE;
146 if (frv_is_media_major (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR),
147 bfd_mach_fr500))
148 return TRUE;
150 return FALSE;
153 /* This table represents the allowable packing for vliw insns for the fr400.
154 The fr400 has only 2 vliw slots. Represent this by not allowing any insns
155 in the extra slots.
156 Subsets of any given row are also allowed. */
157 static VLIW_COMBO fr400_allowed_vliw[] =
159 /* slot0 slot1 slot2 slot3 */
160 { UNIT_I0, UNIT_I1, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
161 { UNIT_I0, UNIT_FM0, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
162 { UNIT_I0, UNIT_B0, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
163 { UNIT_FM0, UNIT_FM1, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
164 { UNIT_FM0, UNIT_B0, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
165 { UNIT_B0, UNIT_NIL, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
166 { UNIT_C, UNIT_NIL, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
167 { UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO }
170 /* This table represents the allowable packing for vliw insns for the fr500.
171 The fr500 has only 4 vliw slots. Represent this by not allowing any insns
172 in the extra slots.
173 Subsets of any given row are also allowed. */
174 static VLIW_COMBO fr500_allowed_vliw[] =
176 /* slot0 slot1 slot2 slot3 */
177 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1 PAD_VLIW_COMBO },
178 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_B0 PAD_VLIW_COMBO },
179 { UNIT_I0, UNIT_FM0, UNIT_FM1, UNIT_B0 PAD_VLIW_COMBO },
180 { UNIT_I0, UNIT_FM0, UNIT_B0, UNIT_B1 PAD_VLIW_COMBO },
181 { UNIT_I0, UNIT_I1, UNIT_B0, UNIT_B1 PAD_VLIW_COMBO },
182 { UNIT_I0, UNIT_B0, UNIT_B1, UNIT_NIL PAD_VLIW_COMBO },
183 { UNIT_FM0, UNIT_FM1, UNIT_B0, UNIT_B1 PAD_VLIW_COMBO },
184 { UNIT_FM0, UNIT_B0, UNIT_B1, UNIT_NIL PAD_VLIW_COMBO },
185 { UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
186 { UNIT_C, UNIT_NIL, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO },
187 { UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL PAD_VLIW_COMBO }
190 /* This table represents the allowable packing for vliw insns for the fr550.
191 Subsets of any given row are also allowed. */
192 static VLIW_COMBO fr550_allowed_vliw[] =
194 /* slot0 slot1 slot2 slot3 slot4 slot5 slot6 slot7 */
195 { UNIT_I0, UNIT_I1, UNIT_I2, UNIT_I3, UNIT_B0, UNIT_B1 , UNIT_NIL, UNIT_NIL },
196 { UNIT_I0, UNIT_I1, UNIT_I2, UNIT_B0, UNIT_B1 , UNIT_NIL, UNIT_NIL, UNIT_NIL },
197 { UNIT_I0, UNIT_I1, UNIT_B0, UNIT_B1 , UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
198 { UNIT_I0, UNIT_B0, UNIT_B1 , UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
199 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_FM2, UNIT_I3, UNIT_FM3 },
200 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_FM2, UNIT_I3, UNIT_B0 },
201 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_FM2, UNIT_FM3, UNIT_B0 },
202 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_FM2, UNIT_B0, UNIT_B1 },
203 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_I3, UNIT_B0, UNIT_B1 },
204 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_I2, UNIT_B0, UNIT_B1, UNIT_NIL },
205 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_FM2, UNIT_FM3, UNIT_B0, UNIT_B1 },
206 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_FM2, UNIT_FM3, UNIT_B0, UNIT_B1 },
207 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_FM2, UNIT_B0, UNIT_B1, UNIT_NIL },
208 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_FM1, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL },
209 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_I2, UNIT_I3, UNIT_B0, UNIT_B1, UNIT_NIL },
210 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_I2, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL },
211 { UNIT_I0, UNIT_FM0, UNIT_I1, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL },
212 { UNIT_I0, UNIT_FM0, UNIT_FM1, UNIT_FM2, UNIT_FM3, UNIT_B0, UNIT_B1, UNIT_NIL },
213 { UNIT_I0, UNIT_FM0, UNIT_FM1, UNIT_FM2, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL },
214 { UNIT_I0, UNIT_FM0, UNIT_FM1, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL },
215 { UNIT_I0, UNIT_FM0, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
216 { UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
217 { UNIT_C, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
218 { UNIT_FM0, UNIT_FM1, UNIT_FM2, UNIT_FM3, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL },
219 { UNIT_FM0, UNIT_FM1, UNIT_FM2, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL },
220 { UNIT_FM0, UNIT_FM1, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
221 { UNIT_FM0, UNIT_B0, UNIT_B1, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL },
222 { UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL, UNIT_NIL }
225 /* Some insns are assigned specialized implementation units which map to
226 different actual implementation units on different machines. These
227 tables perform that mapping. */
228 static CGEN_ATTR_VALUE_ENUM_TYPE fr400_unit_mapping[] =
230 /* unit in insn actual unit */
231 /* NIL */ UNIT_NIL,
232 /* I0 */ UNIT_I0,
233 /* I1 */ UNIT_I1,
234 /* I01 */ UNIT_I01,
235 /* I2 */ UNIT_NIL, /* no I2 or I3 unit */
236 /* I3 */ UNIT_NIL,
237 /* IALL */ UNIT_I01, /* only I0 and I1 units */
238 /* FM0 */ UNIT_FM0,
239 /* FM1 */ UNIT_FM1,
240 /* FM01 */ UNIT_FM01,
241 /* FM2 */ UNIT_NIL, /* no F2 or M2 units */
242 /* FM3 */ UNIT_NIL, /* no F3 or M3 units */
243 /* FMALL */ UNIT_FM01,/* Only F0,F1,M0,M1 units */
244 /* FMLOW */ UNIT_FM0, /* Only F0,M0 units */
245 /* B0 */ UNIT_B0, /* branches only in B0 unit. */
246 /* B1 */ UNIT_B0,
247 /* B01 */ UNIT_B0,
248 /* C */ UNIT_C,
249 /* MULT-DIV */ UNIT_I0, /* multiply and divide only in I0 unit. */
250 /* IACC */ UNIT_I01, /* iacc multiply in I0 or I1 unit. */
251 /* LOAD */ UNIT_I0, /* load only in I0 unit. */
252 /* STORE */ UNIT_I0, /* store only in I0 unit. */
253 /* SCAN */ UNIT_I0, /* scan only in I0 unit. */
254 /* DCPL */ UNIT_C, /* dcpl only in C unit. */
255 /* MDUALACC */ UNIT_FM0, /* media dual acc insn only in FM0 unit. */
256 /* MDCUTSSI */ UNIT_FM0, /* mdcutssi only in FM0 unit. */
257 /* MCLRACC-1*/ UNIT_FM0 /* mclracc,A==1 insn only in FM0 unit. */
260 /* Some insns are assigned specialized implementation units which map to
261 different actual implementation units on different machines. These
262 tables perform that mapping. */
263 static CGEN_ATTR_VALUE_ENUM_TYPE fr450_unit_mapping[] =
265 /* unit in insn actual unit */
266 /* NIL */ UNIT_NIL,
267 /* I0 */ UNIT_I0,
268 /* I1 */ UNIT_I1,
269 /* I01 */ UNIT_I01,
270 /* I2 */ UNIT_NIL, /* no I2 or I3 unit */
271 /* I3 */ UNIT_NIL,
272 /* IALL */ UNIT_I01, /* only I0 and I1 units */
273 /* FM0 */ UNIT_FM0,
274 /* FM1 */ UNIT_FM1,
275 /* FM01 */ UNIT_FM01,
276 /* FM2 */ UNIT_NIL, /* no F2 or M2 units */
277 /* FM3 */ UNIT_NIL, /* no F3 or M3 units */
278 /* FMALL */ UNIT_FM01,/* Only F0,F1,M0,M1 units */
279 /* FMLOW */ UNIT_FM0, /* Only F0,M0 units */
280 /* B0 */ UNIT_B0, /* branches only in B0 unit. */
281 /* B1 */ UNIT_B0,
282 /* B01 */ UNIT_B0,
283 /* C */ UNIT_C,
284 /* MULT-DIV */ UNIT_I0, /* multiply and divide only in I0 unit. */
285 /* IACC */ UNIT_I01, /* iacc multiply in I0 or I1 unit. */
286 /* LOAD */ UNIT_I0, /* load only in I0 unit. */
287 /* STORE */ UNIT_I0, /* store only in I0 unit. */
288 /* SCAN */ UNIT_I0, /* scan only in I0 unit. */
289 /* DCPL */ UNIT_I0, /* dcpl only in I0 unit. */
290 /* MDUALACC */ UNIT_FM0, /* media dual acc insn only in FM0 unit. */
291 /* MDCUTSSI */ UNIT_FM01, /* mdcutssi in FM0 or FM1. */
292 /* MCLRACC-1*/ UNIT_FM0 /* mclracc,A==1 insn only in FM0 unit. */
295 static CGEN_ATTR_VALUE_ENUM_TYPE fr500_unit_mapping[] =
297 /* unit in insn actual unit */
298 /* NIL */ UNIT_NIL,
299 /* I0 */ UNIT_I0,
300 /* I1 */ UNIT_I1,
301 /* I01 */ UNIT_I01,
302 /* I2 */ UNIT_NIL, /* no I2 or I3 unit */
303 /* I3 */ UNIT_NIL,
304 /* IALL */ UNIT_I01, /* only I0 and I1 units */
305 /* FM0 */ UNIT_FM0,
306 /* FM1 */ UNIT_FM1,
307 /* FM01 */ UNIT_FM01,
308 /* FM2 */ UNIT_NIL, /* no F2 or M2 units */
309 /* FM3 */ UNIT_NIL, /* no F3 or M2 units */
310 /* FMALL */ UNIT_FM01,/* Only F0,F1,M0,M1 units */
311 /* FMLOW */ UNIT_FM0, /* Only F0,M0 units */
312 /* B0 */ UNIT_B0,
313 /* B1 */ UNIT_B1,
314 /* B01 */ UNIT_B01,
315 /* C */ UNIT_C,
316 /* MULT-DIV */ UNIT_I01, /* multiply and divide in I0 or I1 unit. */
317 /* IACC */ UNIT_NIL, /* iacc multiply not implemented */
318 /* LOAD */ UNIT_I01, /* load in I0 or I1 unit. */
319 /* STORE */ UNIT_I0, /* store only in I0 unit. */
320 /* SCAN */ UNIT_I01, /* scan in I0 or I1 unit. */
321 /* DCPL */ UNIT_C, /* dcpl only in C unit. */
322 /* MDUALACC */ UNIT_FM0, /* media dual acc insn only in FM0 unit. */
323 /* MDCUTSSI */ UNIT_FM0, /* mdcutssi only in FM0 unit. */
324 /* MCLRACC-1*/ UNIT_FM01 /* mclracc,A==1 in FM0 or FM1 unit. */
327 static CGEN_ATTR_VALUE_ENUM_TYPE fr550_unit_mapping[] =
329 /* unit in insn actual unit */
330 /* NIL */ UNIT_NIL,
331 /* I0 */ UNIT_I0,
332 /* I1 */ UNIT_I1,
333 /* I01 */ UNIT_I01,
334 /* I2 */ UNIT_I2,
335 /* I3 */ UNIT_I3,
336 /* IALL */ UNIT_IALL,
337 /* FM0 */ UNIT_FM0,
338 /* FM1 */ UNIT_FM1,
339 /* FM01 */ UNIT_FM01,
340 /* FM2 */ UNIT_FM2,
341 /* FM3 */ UNIT_FM3,
342 /* FMALL */ UNIT_FMALL,
343 /* FMLOW */ UNIT_FM01, /* Only F0,F1,M0,M1 units */
344 /* B0 */ UNIT_B0,
345 /* B1 */ UNIT_B1,
346 /* B01 */ UNIT_B01,
347 /* C */ UNIT_C,
348 /* MULT-DIV */ UNIT_I01, /* multiply and divide in I0 or I1 unit. */
349 /* IACC */ UNIT_NIL, /* iacc multiply not implemented. */
350 /* LOAD */ UNIT_I01, /* load in I0 or I1 unit. */
351 /* STORE */ UNIT_I01, /* store in I0 or I1 unit. */
352 /* SCAN */ UNIT_IALL, /* scan in any integer unit. */
353 /* DCPL */ UNIT_I0, /* dcpl only in I0 unit. */
354 /* MDUALACC */ UNIT_FMALL,/* media dual acc insn in all media units */
355 /* MDCUTSSI */ UNIT_FM01, /* mdcutssi in FM0 or FM1 unit. */
356 /* MCLRACC-1*/ UNIT_FM01 /* mclracc,A==1 in FM0 or FM1 unit. */
359 void
360 frv_vliw_reset (FRV_VLIW *vliw, unsigned long mach, unsigned long elf_flags)
362 vliw->next_slot = 0;
363 vliw->constraint_violation = 0;
364 vliw->mach = mach;
365 vliw->elf_flags = elf_flags;
367 switch (mach)
369 case bfd_mach_fr400:
370 vliw->current_vliw = fr400_allowed_vliw;
371 vliw->unit_mapping = fr400_unit_mapping;
372 break;
373 case bfd_mach_fr450:
374 vliw->current_vliw = fr400_allowed_vliw;
375 vliw->unit_mapping = fr450_unit_mapping;
376 break;
377 case bfd_mach_fr550:
378 vliw->current_vliw = fr550_allowed_vliw;
379 vliw->unit_mapping = fr550_unit_mapping;
380 break;
381 default:
382 vliw->current_vliw = fr500_allowed_vliw;
383 vliw->unit_mapping = fr500_unit_mapping;
384 break;
388 /* Return TRUE if unit1 is a match for unit2.
389 Unit1 comes from the insn's UNIT attribute. unit2 comes from one of the
390 *_allowed_vliw tables above. */
391 static bfd_boolean
392 match_unit (FRV_VLIW *vliw,
393 CGEN_ATTR_VALUE_ENUM_TYPE unit1, CGEN_ATTR_VALUE_ENUM_TYPE unit2)
395 /* Map any specialized implementation units to actual ones. */
396 unit1 = vliw->unit_mapping[unit1];
398 if (unit1 == unit2)
399 return TRUE;
400 if (unit1 < unit2)
401 return FALSE;
403 switch (unit1)
405 case UNIT_I01:
406 case UNIT_FM01:
407 case UNIT_B01:
408 /* The 01 versions of these units are within 2 enums of the 0 or 1
409 versions. */
410 if (unit1 - unit2 <= 2)
411 return TRUE;
412 break;
413 case UNIT_IALL:
414 case UNIT_FMALL:
415 /* The ALL versions of these units are within 5 enums of the 0, 1, 2 or 3
416 versions. */
417 if (unit1 - unit2 <= 5)
418 return TRUE;
419 break;
420 default:
421 break;
424 return FALSE;
427 /* Return TRUE if the vliws match, FALSE otherwise. */
429 static bfd_boolean
430 match_vliw (VLIW_COMBO *vliw1, VLIW_COMBO *vliw2, int vliw_size)
432 int i;
434 for (i = 0; i < vliw_size; ++i)
435 if ((*vliw1)[i] != (*vliw2)[i])
436 return FALSE;
438 return TRUE;
441 /* Find the next vliw vliw in the table that can accomodate the new insn.
442 If one is found then return it. Otherwise return NULL. */
444 static VLIW_COMBO *
445 add_next_to_vliw (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE unit)
447 int next = vliw->next_slot;
448 VLIW_COMBO *current = vliw->current_vliw;
449 VLIW_COMBO *potential;
451 if (next <= 0)
453 fprintf (stderr, "frv-opc.c line %d: bad vliw->next_slot value.\n",
454 __LINE__);
455 abort (); /* Should never happen. */
458 /* The table is sorted by units allowed within slots, so vliws with
459 identical starting sequences are together. */
460 potential = current;
463 if (match_unit (vliw, unit, (*potential)[next]))
464 return potential;
465 ++potential;
467 while (match_vliw (potential, current, next));
469 return NULL;
472 /* Look for the given major insn type in the given vliw.
473 Returns TRUE if found, FALSE otherwise. */
475 static bfd_boolean
476 find_major_in_vliw (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
478 int i;
480 for (i = 0; i < vliw->next_slot; ++i)
481 if (vliw->major[i] == major)
482 return TRUE;
484 return FALSE;
487 /* Check for constraints between the insns in the vliw due to major insn
488 types. */
490 static bfd_boolean
491 fr400_check_insn_major_constraints (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
493 /* In the cpu file, all media insns are represented as being allowed in
494 both media units. This makes it easier since this is the case for fr500.
495 Catch the invalid combinations here. Insns of major class FR400_MAJOR_M_2
496 cannot coexist with any other media insn in a vliw. */
497 switch (major)
499 case FR400_MAJOR_M_2:
500 return ! find_major_in_vliw (vliw, FR400_MAJOR_M_1)
501 && ! find_major_in_vliw (vliw, FR400_MAJOR_M_2);
502 case FR400_MAJOR_M_1:
503 return ! find_major_in_vliw (vliw, FR400_MAJOR_M_2);
504 default:
505 break;
507 return TRUE;
510 static bfd_boolean
511 fr450_check_insn_major_constraints (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
513 CGEN_ATTR_VALUE_ENUM_TYPE other_major;
515 /* Our caller guarantees there's at least one other instruction. */
516 other_major = CGEN_INSN_ATTR_VALUE (vliw->insn[0], CGEN_INSN_FR450_MAJOR);
518 /* (M4, M5) and (M4, M6) are allowed. */
519 if (other_major == FR450_MAJOR_M_4)
520 if (major == FR450_MAJOR_M_5 || major == FR450_MAJOR_M_6)
521 return TRUE;
523 /* Otherwise, instructions in even-numbered media categories cannot be
524 executed in parallel with other media instructions. */
525 switch (major)
527 case FR450_MAJOR_M_2:
528 case FR450_MAJOR_M_4:
529 case FR450_MAJOR_M_6:
530 return !(other_major >= FR450_MAJOR_M_1
531 && other_major <= FR450_MAJOR_M_6);
533 case FR450_MAJOR_M_1:
534 case FR450_MAJOR_M_3:
535 case FR450_MAJOR_M_5:
536 return !(other_major == FR450_MAJOR_M_2
537 || other_major == FR450_MAJOR_M_4
538 || other_major == FR450_MAJOR_M_6);
540 default:
541 return TRUE;
545 static bfd_boolean
546 find_unit_in_vliw (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE unit)
548 int i;
550 for (i = 0; i < vliw->next_slot; ++i)
551 if (CGEN_INSN_ATTR_VALUE (vliw->insn[i], CGEN_INSN_UNIT) == unit)
552 return TRUE;
554 return FALSE; /* Not found. */
557 static bfd_boolean
558 find_major_in_slot (FRV_VLIW *vliw,
559 CGEN_ATTR_VALUE_ENUM_TYPE major,
560 CGEN_ATTR_VALUE_ENUM_TYPE slot)
562 int i;
564 for (i = 0; i < vliw->next_slot; ++i)
565 if (vliw->major[i] == major && (*vliw->current_vliw)[i] == slot)
566 return TRUE;
568 return FALSE;
571 static bfd_boolean
572 fr550_find_media_in_vliw (FRV_VLIW *vliw)
574 int i;
576 for (i = 0; i < vliw->next_slot; ++i)
578 if (vliw->major[i] < FR550_MAJOR_M_1 || vliw->major[i] > FR550_MAJOR_M_5)
579 continue;
581 /* Found a media insn, however, MNOP and MCLRACC don't count. */
582 if (CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_MNOP
583 || CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_MCLRACC_0
584 || CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_MCLRACC_1)
585 continue;
587 return TRUE; /* Found one. */
590 return FALSE;
593 static bfd_boolean
594 fr550_find_float_in_vliw (FRV_VLIW *vliw)
596 int i;
598 for (i = 0; i < vliw->next_slot; ++i)
600 if (vliw->major[i] < FR550_MAJOR_F_1 || vliw->major[i] > FR550_MAJOR_F_4)
601 continue;
603 /* Found a floating point insn, however, FNOP doesn't count. */
604 if (CGEN_INSN_NUM (vliw->insn[i]) == FRV_INSN_FNOP)
605 continue;
607 return TRUE; /* Found one. */
610 return FALSE;
613 static bfd_boolean
614 fr550_check_insn_major_constraints (FRV_VLIW *vliw,
615 CGEN_ATTR_VALUE_ENUM_TYPE major,
616 const CGEN_INSN *insn)
618 CGEN_ATTR_VALUE_ENUM_TYPE unit;
619 CGEN_ATTR_VALUE_ENUM_TYPE slot = (*vliw->current_vliw)[vliw->next_slot];
620 switch (slot)
622 case UNIT_I2:
623 /* If it's a store, then there must be another store in I1 */
624 unit = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_UNIT);
625 if (unit == UNIT_STORE)
626 return find_unit_in_vliw (vliw, UNIT_STORE);
627 break;
628 case UNIT_FM2:
629 case UNIT_FM3:
630 /* Floating point insns other than FNOP in slot f2 or f3 cannot coexist
631 with media insns. */
632 if (major >= FR550_MAJOR_F_1 && major <= FR550_MAJOR_F_4
633 && CGEN_INSN_NUM (insn) != FRV_INSN_FNOP)
634 return ! fr550_find_media_in_vliw (vliw);
635 /* Media insns other than MNOP in slot m2 or m3 cannot coexist with
636 floating point insns. */
637 if (major >= FR550_MAJOR_M_1 && major <= FR550_MAJOR_M_5
638 && CGEN_INSN_NUM (insn) != FRV_INSN_MNOP)
639 return ! fr550_find_float_in_vliw (vliw);
640 /* F-2 in slot f2 or f3 cannot coexist with F-2 or F-4 in slot f1 or f2
641 respectively. */
642 if (major == FR550_MAJOR_F_2)
643 return ! find_major_in_slot (vliw, FR550_MAJOR_F_2,
644 slot - (UNIT_FM2 - UNIT_FM0))
645 && ! find_major_in_slot (vliw, FR550_MAJOR_F_4,
646 slot - (UNIT_FM2 - UNIT_FM0));
647 /* M-2 or M-5 in slot m2 or m3 cannot coexist with M-2 in slot m1 or m2
648 respectively. */
649 if (major == FR550_MAJOR_M_2 || major == FR550_MAJOR_M_5)
650 return ! find_major_in_slot (vliw, FR550_MAJOR_M_2,
651 slot - (UNIT_FM2 - UNIT_FM0));
652 /* M-4 in slot m2 or m3 cannot coexist with M-4 in slot m1 or m2
653 respectively. */
654 if (major == FR550_MAJOR_M_4)
655 return ! find_major_in_slot (vliw, FR550_MAJOR_M_4,
656 slot - (UNIT_FM2 - UNIT_FM0));
657 break;
658 default:
659 break;
661 return TRUE; /* All OK. */
664 static bfd_boolean
665 fr500_check_insn_major_constraints (FRV_VLIW *vliw, CGEN_ATTR_VALUE_ENUM_TYPE major)
667 /* TODO: A table might be faster for some of the more complex instances
668 here. */
669 switch (major)
671 case FR500_MAJOR_I_1:
672 case FR500_MAJOR_I_4:
673 case FR500_MAJOR_I_5:
674 case FR500_MAJOR_I_6:
675 case FR500_MAJOR_B_1:
676 case FR500_MAJOR_B_2:
677 case FR500_MAJOR_B_3:
678 case FR500_MAJOR_B_4:
679 case FR500_MAJOR_B_5:
680 case FR500_MAJOR_B_6:
681 case FR500_MAJOR_F_4:
682 case FR500_MAJOR_F_8:
683 case FR500_MAJOR_M_8:
684 return TRUE; /* OK */
685 case FR500_MAJOR_I_2:
686 /* Cannot coexist with I-3 insn. */
687 return ! find_major_in_vliw (vliw, FR500_MAJOR_I_3);
688 case FR500_MAJOR_I_3:
689 /* Cannot coexist with I-2 insn. */
690 return ! find_major_in_vliw (vliw, FR500_MAJOR_I_2);
691 case FR500_MAJOR_F_1:
692 case FR500_MAJOR_F_2:
693 /* Cannot coexist with F-5, F-6, or M-7 insn. */
694 return ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
695 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
696 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
697 case FR500_MAJOR_F_3:
698 /* Cannot coexist with F-7, or M-7 insn. */
699 return ! find_major_in_vliw (vliw, FR500_MAJOR_F_7)
700 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
701 case FR500_MAJOR_F_5:
702 /* Cannot coexist with F-1, F-2, F-6, F-7, or M-7 insn. */
703 return ! find_major_in_vliw (vliw, FR500_MAJOR_F_1)
704 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_2)
705 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
706 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_7)
707 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
708 case FR500_MAJOR_F_6:
709 /* Cannot coexist with F-1, F-2, F-5, F-6, or M-7 insn. */
710 return ! find_major_in_vliw (vliw, FR500_MAJOR_F_1)
711 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_2)
712 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
713 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
714 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
715 case FR500_MAJOR_F_7:
716 /* Cannot coexist with F-3, F-5, F-7, or M-7 insn. */
717 return ! find_major_in_vliw (vliw, FR500_MAJOR_F_3)
718 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
719 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_7)
720 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
721 case FR500_MAJOR_M_1:
722 /* Cannot coexist with M-7 insn. */
723 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
724 case FR500_MAJOR_M_2:
725 case FR500_MAJOR_M_3:
726 /* Cannot coexist with M-5, M-6 or M-7 insn. */
727 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
728 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
729 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
730 case FR500_MAJOR_M_4:
731 /* Cannot coexist with M-6 insn. */
732 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_6);
733 case FR500_MAJOR_M_5:
734 /* Cannot coexist with M-2, M-3, M-5, M-6 or M-7 insn. */
735 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_2)
736 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_3)
737 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
738 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
739 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
740 case FR500_MAJOR_M_6:
741 /* Cannot coexist with M-2, M-3, M-4, M-5, M-6 or M-7 insn. */
742 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_2)
743 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_3)
744 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_4)
745 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
746 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
747 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7);
748 case FR500_MAJOR_M_7:
749 /* Cannot coexist with M-1, M-2, M-3, M-5, M-6 or M-7 insn. */
750 return ! find_major_in_vliw (vliw, FR500_MAJOR_M_1)
751 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_2)
752 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_3)
753 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_5)
754 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_6)
755 && ! find_major_in_vliw (vliw, FR500_MAJOR_M_7)
756 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_1)
757 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_2)
758 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_3)
759 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_5)
760 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_6)
761 && ! find_major_in_vliw (vliw, FR500_MAJOR_F_7);
762 default:
763 fprintf (stderr, "frv-opc.c, line %d: bad major code, aborting.\n",
764 __LINE__);
765 abort ();
766 break;
768 return TRUE;
771 static bfd_boolean
772 check_insn_major_constraints (FRV_VLIW *vliw,
773 CGEN_ATTR_VALUE_ENUM_TYPE major,
774 const CGEN_INSN *insn)
776 switch (vliw->mach)
778 case bfd_mach_fr400:
779 return fr400_check_insn_major_constraints (vliw, major);
781 case bfd_mach_fr450:
782 return fr450_check_insn_major_constraints (vliw, major);
784 case bfd_mach_fr550:
785 return fr550_check_insn_major_constraints (vliw, major, insn);
787 default:
788 return fr500_check_insn_major_constraints (vliw, major);
792 /* Add in insn to the VLIW vliw if possible.
793 Return 0 if successful, non-zero otherwise. */
796 frv_vliw_add_insn (FRV_VLIW *vliw, const CGEN_INSN *insn)
798 int index;
799 CGEN_ATTR_VALUE_ENUM_TYPE major;
800 CGEN_ATTR_VALUE_ENUM_TYPE unit;
801 VLIW_COMBO *new_vliw;
803 if (vliw->constraint_violation || CGEN_INSN_INVALID_P (insn))
804 return 1;
806 index = vliw->next_slot;
807 if (index >= FRV_VLIW_SIZE)
808 return 1;
810 unit = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_UNIT);
811 if (unit == UNIT_NIL)
813 fprintf (stderr, "frv-opc.c line %d: bad insn unit.\n",
814 __LINE__);
815 abort (); /* No UNIT specified for this insn in frv.cpu. */
818 switch (vliw->mach)
820 case bfd_mach_fr400:
821 major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR400_MAJOR);
822 break;
823 case bfd_mach_fr450:
824 major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR450_MAJOR);
825 break;
826 case bfd_mach_fr550:
827 major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR550_MAJOR);
828 break;
829 default:
830 major = CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_FR500_MAJOR);
831 break;
834 if (index <= 0)
836 /* Any insn can be added to slot 0. */
837 while (! match_unit (vliw, unit, (*vliw->current_vliw)[0]))
838 ++vliw->current_vliw;
839 vliw->major[0] = major;
840 vliw->insn[0] = insn;
841 vliw->next_slot = 1;
842 return 0;
845 /* If there are already insns in the vliw(s) check to see that
846 this one can be added. Do this by finding an allowable vliw
847 combination that can accept the new insn. */
848 if (! (vliw->elf_flags & EF_FRV_NOPACK))
850 new_vliw = add_next_to_vliw (vliw, unit);
851 if (new_vliw && check_insn_major_constraints (vliw, major, insn))
853 vliw->current_vliw = new_vliw;
854 vliw->major[index] = major;
855 vliw->insn[index] = insn;
856 vliw->next_slot++;
857 return 0;
860 /* The frv machine supports all packing conbinations. If we fail,
861 to add the insn, then it could not be handled as if it was the fr500.
862 Just return as if it was handled ok. */
863 if (vliw->mach == bfd_mach_frv)
864 return 0;
867 vliw->constraint_violation = 1;
868 return 1;
871 bfd_boolean
872 spr_valid (long regno)
874 if (regno < 0) return FALSE;
875 if (regno <= 4095) return TRUE;
876 return FALSE;
878 /* -- */
879 /* The hash functions are recorded here to help keep assembler code out of
880 the disassembler and vice versa. */
882 static int asm_hash_insn_p (const CGEN_INSN *);
883 static unsigned int asm_hash_insn (const char *);
884 static int dis_hash_insn_p (const CGEN_INSN *);
885 static unsigned int dis_hash_insn (const char *, CGEN_INSN_INT);
887 /* Instruction formats. */
889 #if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
890 #define F(f) & frv_cgen_ifld_table[FRV_##f]
891 #else
892 #define F(f) & frv_cgen_ifld_table[FRV_/**/f]
893 #endif
894 static const CGEN_IFMT ifmt_empty ATTRIBUTE_UNUSED = {
895 0, 0, 0x0, { { 0 } }
898 static const CGEN_IFMT ifmt_add ATTRIBUTE_UNUSED = {
899 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1_NULL) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
902 static const CGEN_IFMT ifmt_not ATTRIBUTE_UNUSED = {
903 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_ICCI_1_NULL) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
906 static const CGEN_IFMT ifmt_smul ATTRIBUTE_UNUSED = {
907 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1_NULL) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
910 static const CGEN_IFMT ifmt_smu ATTRIBUTE_UNUSED = {
911 32, 32, 0x7ffc0fc0, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
914 static const CGEN_IFMT ifmt_slass ATTRIBUTE_UNUSED = {
915 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
918 static const CGEN_IFMT ifmt_scutss ATTRIBUTE_UNUSED = {
919 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
922 static const CGEN_IFMT ifmt_cadd ATTRIBUTE_UNUSED = {
923 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
926 static const CGEN_IFMT ifmt_cnot ATTRIBUTE_UNUSED = {
927 32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
930 static const CGEN_IFMT ifmt_csmul ATTRIBUTE_UNUSED = {
931 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
934 static const CGEN_IFMT ifmt_addcc ATTRIBUTE_UNUSED = {
935 32, 32, 0x1fc03c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
938 static const CGEN_IFMT ifmt_smulcc ATTRIBUTE_UNUSED = {
939 32, 32, 0x1fc03c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
942 static const CGEN_IFMT ifmt_addi ATTRIBUTE_UNUSED = {
943 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
946 static const CGEN_IFMT ifmt_smuli ATTRIBUTE_UNUSED = {
947 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
950 static const CGEN_IFMT ifmt_addicc ATTRIBUTE_UNUSED = {
951 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_S10) }, { 0 } }
954 static const CGEN_IFMT ifmt_smulicc ATTRIBUTE_UNUSED = {
955 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_S10) }, { 0 } }
958 static const CGEN_IFMT ifmt_cmpb ATTRIBUTE_UNUSED = {
959 32, 32, 0x7ffc03c0, { { F (F_PACK) }, { F (F_GRK_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
962 static const CGEN_IFMT ifmt_setlo ATTRIBUTE_UNUSED = {
963 32, 32, 0x1ff0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_MISC_NULL_4) }, { F (F_U16) }, { 0 } }
966 static const CGEN_IFMT ifmt_sethi ATTRIBUTE_UNUSED = {
967 32, 32, 0x1ff0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_MISC_NULL_4) }, { F (F_U16) }, { 0 } }
970 static const CGEN_IFMT ifmt_setlos ATTRIBUTE_UNUSED = {
971 32, 32, 0x1ff0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_MISC_NULL_4) }, { F (F_S16) }, { 0 } }
974 static const CGEN_IFMT ifmt_ldbf ATTRIBUTE_UNUSED = {
975 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
978 static const CGEN_IFMT ifmt_ldc ATTRIBUTE_UNUSED = {
979 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_CPRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
982 static const CGEN_IFMT ifmt_ldd ATTRIBUTE_UNUSED = {
983 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
986 static const CGEN_IFMT ifmt_lddf ATTRIBUTE_UNUSED = {
987 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
990 static const CGEN_IFMT ifmt_lddc ATTRIBUTE_UNUSED = {
991 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_CPRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
994 static const CGEN_IFMT ifmt_ldsbi ATTRIBUTE_UNUSED = {
995 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
998 static const CGEN_IFMT ifmt_ldbfi ATTRIBUTE_UNUSED = {
999 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1002 static const CGEN_IFMT ifmt_lddi ATTRIBUTE_UNUSED = {
1003 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1006 static const CGEN_IFMT ifmt_lddfi ATTRIBUTE_UNUSED = {
1007 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1010 static const CGEN_IFMT ifmt_cldbf ATTRIBUTE_UNUSED = {
1011 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1014 static const CGEN_IFMT ifmt_clddf ATTRIBUTE_UNUSED = {
1015 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1018 static const CGEN_IFMT ifmt_movgf ATTRIBUTE_UNUSED = {
1019 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1022 static const CGEN_IFMT ifmt_cmovgf ATTRIBUTE_UNUSED = {
1023 32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1026 static const CGEN_IFMT ifmt_movgs ATTRIBUTE_UNUSED = {
1027 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_OP) }, { F (F_SPR) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1030 static const CGEN_IFMT ifmt_bra ATTRIBUTE_UNUSED = {
1031 32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16) }, { 0 } }
1034 static const CGEN_IFMT ifmt_bno ATTRIBUTE_UNUSED = {
1035 32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16_NULL) }, { 0 } }
1038 static const CGEN_IFMT ifmt_beq ATTRIBUTE_UNUSED = {
1039 32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16) }, { 0 } }
1042 static const CGEN_IFMT ifmt_fbra ATTRIBUTE_UNUSED = {
1043 32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16) }, { 0 } }
1046 static const CGEN_IFMT ifmt_fbno ATTRIBUTE_UNUSED = {
1047 32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16_NULL) }, { 0 } }
1050 static const CGEN_IFMT ifmt_fbne ATTRIBUTE_UNUSED = {
1051 32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_LABEL16) }, { 0 } }
1054 static const CGEN_IFMT ifmt_bctrlr ATTRIBUTE_UNUSED = {
1055 32, 32, 0x7ffcefff, { { F (F_PACK) }, { F (F_COND_NULL) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND) }, { F (F_S12_NULL) }, { 0 } }
1058 static const CGEN_IFMT ifmt_bralr ATTRIBUTE_UNUSED = {
1059 32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1062 static const CGEN_IFMT ifmt_bnolr ATTRIBUTE_UNUSED = {
1063 32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1066 static const CGEN_IFMT ifmt_beqlr ATTRIBUTE_UNUSED = {
1067 32, 32, 0x79fcffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1070 static const CGEN_IFMT ifmt_fbralr ATTRIBUTE_UNUSED = {
1071 32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1074 static const CGEN_IFMT ifmt_fbnolr ATTRIBUTE_UNUSED = {
1075 32, 32, 0x7ffcffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1078 static const CGEN_IFMT ifmt_fbeqlr ATTRIBUTE_UNUSED = {
1079 32, 32, 0x79fcffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
1082 static const CGEN_IFMT ifmt_bcralr ATTRIBUTE_UNUSED = {
1083 32, 32, 0x7ffcefff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND) }, { F (F_S12_NULL) }, { 0 } }
1086 static const CGEN_IFMT ifmt_bceqlr ATTRIBUTE_UNUSED = {
1087 32, 32, 0x79fcefff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND) }, { F (F_S12_NULL) }, { 0 } }
1090 static const CGEN_IFMT ifmt_fcbralr ATTRIBUTE_UNUSED = {
1091 32, 32, 0x7ffcefff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND) }, { F (F_S12_NULL) }, { 0 } }
1094 static const CGEN_IFMT ifmt_fcbeqlr ATTRIBUTE_UNUSED = {
1095 32, 32, 0x79fcefff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND) }, { F (F_S12_NULL) }, { 0 } }
1098 static const CGEN_IFMT ifmt_jmpl ATTRIBUTE_UNUSED = {
1099 32, 32, 0x7ffc0fc0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_OFF) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_2) }, { F (F_GRJ) }, { 0 } }
1102 static const CGEN_IFMT ifmt_calll ATTRIBUTE_UNUSED = {
1103 32, 32, 0x7ffc0fc0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_ON) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_2) }, { F (F_GRJ) }, { 0 } }
1106 static const CGEN_IFMT ifmt_jmpil ATTRIBUTE_UNUSED = {
1107 32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_OFF) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1110 static const CGEN_IFMT ifmt_callil ATTRIBUTE_UNUSED = {
1111 32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_ON) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1114 static const CGEN_IFMT ifmt_call ATTRIBUTE_UNUSED = {
1115 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_OP) }, { F (F_LABEL24) }, { 0 } }
1118 static const CGEN_IFMT ifmt_rett ATTRIBUTE_UNUSED = {
1119 32, 32, 0x7dffffff, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_DEBUG) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_S12_NULL) }, { 0 } }
1122 static const CGEN_IFMT ifmt_rei ATTRIBUTE_UNUSED = {
1123 32, 32, 0x7ffc0fff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_EIR) }, { F (F_S12_NULL) }, { 0 } }
1126 static const CGEN_IFMT ifmt_tra ATTRIBUTE_UNUSED = {
1127 32, 32, 0x7ffc0fc0, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1130 static const CGEN_IFMT ifmt_tno ATTRIBUTE_UNUSED = {
1131 32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_GRI_NULL) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ_NULL) }, { 0 } }
1134 static const CGEN_IFMT ifmt_teq ATTRIBUTE_UNUSED = {
1135 32, 32, 0x79fc0fc0, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1138 static const CGEN_IFMT ifmt_ftra ATTRIBUTE_UNUSED = {
1139 32, 32, 0x7ffc0fc0, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1142 static const CGEN_IFMT ifmt_ftno ATTRIBUTE_UNUSED = {
1143 32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_GRI_NULL) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ_NULL) }, { 0 } }
1146 static const CGEN_IFMT ifmt_ftne ATTRIBUTE_UNUSED = {
1147 32, 32, 0x79fc0fc0, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_GRI) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1150 static const CGEN_IFMT ifmt_tira ATTRIBUTE_UNUSED = {
1151 32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1154 static const CGEN_IFMT ifmt_tino ATTRIBUTE_UNUSED = {
1155 32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_GRI_NULL) }, { F (F_S12_NULL) }, { 0 } }
1158 static const CGEN_IFMT ifmt_tieq ATTRIBUTE_UNUSED = {
1159 32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1162 static const CGEN_IFMT ifmt_ftira ATTRIBUTE_UNUSED = {
1163 32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1166 static const CGEN_IFMT ifmt_ftino ATTRIBUTE_UNUSED = {
1167 32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2_NULL) }, { F (F_OP) }, { F (F_GRI_NULL) }, { F (F_S12_NULL) }, { 0 } }
1170 static const CGEN_IFMT ifmt_ftine ATTRIBUTE_UNUSED = {
1171 32, 32, 0x79fc0000, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
1174 static const CGEN_IFMT ifmt_break ATTRIBUTE_UNUSED = {
1175 32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_MISC_NULL_3) }, { F (F_OPE4) }, { F (F_GRJ_NULL) }, { 0 } }
1178 static const CGEN_IFMT ifmt_andcr ATTRIBUTE_UNUSED = {
1179 32, 32, 0x71ff8ff8, { { F (F_PACK) }, { F (F_MISC_NULL_6) }, { F (F_CRK) }, { F (F_OP) }, { F (F_MISC_NULL_7) }, { F (F_CRI) }, { F (F_OPE1) }, { F (F_MISC_NULL_8) }, { F (F_CRJ) }, { 0 } }
1182 static const CGEN_IFMT ifmt_notcr ATTRIBUTE_UNUSED = {
1183 32, 32, 0x71fffff8, { { F (F_PACK) }, { F (F_MISC_NULL_6) }, { F (F_CRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_MISC_NULL_8) }, { F (F_CRJ) }, { 0 } }
1186 static const CGEN_IFMT ifmt_ckra ATTRIBUTE_UNUSED = {
1187 32, 32, 0x79ffffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_CRJ_INT) }, { F (F_OP) }, { F (F_MISC_NULL_5) }, { F (F_ICCI_3_NULL) }, { 0 } }
1190 static const CGEN_IFMT ifmt_ckeq ATTRIBUTE_UNUSED = {
1191 32, 32, 0x79fffffc, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_CRJ_INT) }, { F (F_OP) }, { F (F_MISC_NULL_5) }, { F (F_ICCI_3) }, { 0 } }
1194 static const CGEN_IFMT ifmt_fckra ATTRIBUTE_UNUSED = {
1195 32, 32, 0x79fffffc, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_CRJ_FLOAT) }, { F (F_OP) }, { F (F_MISC_NULL_5) }, { F (F_FCCI_3) }, { 0 } }
1198 static const CGEN_IFMT ifmt_cckra ATTRIBUTE_UNUSED = {
1199 32, 32, 0x79fff0ff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_CRJ_INT) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_MISC_NULL_9) }, { F (F_ICCI_3_NULL) }, { 0 } }
1202 static const CGEN_IFMT ifmt_cckeq ATTRIBUTE_UNUSED = {
1203 32, 32, 0x79fff0fc, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_CRJ_INT) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_MISC_NULL_9) }, { F (F_ICCI_3) }, { 0 } }
1206 static const CGEN_IFMT ifmt_cfckra ATTRIBUTE_UNUSED = {
1207 32, 32, 0x79fff0ff, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_CRJ_FLOAT) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_MISC_NULL_9) }, { F (F_FCCI_3_NULL) }, { 0 } }
1210 static const CGEN_IFMT ifmt_cfckne ATTRIBUTE_UNUSED = {
1211 32, 32, 0x79fff0fc, { { F (F_PACK) }, { F (F_FLT_CC) }, { F (F_CRJ_FLOAT) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_MISC_NULL_9) }, { F (F_FCCI_3) }, { 0 } }
1214 static const CGEN_IFMT ifmt_cjmpl ATTRIBUTE_UNUSED = {
1215 32, 32, 0x7ffc00c0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_OFF) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1218 static const CGEN_IFMT ifmt_ccalll ATTRIBUTE_UNUSED = {
1219 32, 32, 0x7ffc00c0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LI_ON) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
1222 static const CGEN_IFMT ifmt_icei ATTRIBUTE_UNUSED = {
1223 32, 32, 0x7dfc0fc0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_AE) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1226 static const CGEN_IFMT ifmt_icpl ATTRIBUTE_UNUSED = {
1227 32, 32, 0x7dfc0fc0, { { F (F_PACK) }, { F (F_MISC_NULL_1) }, { F (F_LOCK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1230 static const CGEN_IFMT ifmt_icul ATTRIBUTE_UNUSED = {
1231 32, 32, 0x7ffc0fff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ_NULL) }, { 0 } }
1234 static const CGEN_IFMT ifmt_bar ATTRIBUTE_UNUSED = {
1235 32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ_NULL) }, { 0 } }
1238 static const CGEN_IFMT ifmt_lrai ATTRIBUTE_UNUSED = {
1239 32, 32, 0x1fc0fc7, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_LRAE) }, { F (F_LRAD) }, { F (F_LRAS) }, { F (F_LRA_NULL) }, { 0 } }
1242 static const CGEN_IFMT ifmt_tlbpr ATTRIBUTE_UNUSED = {
1243 32, 32, 0x61fc0fc0, { { F (F_PACK) }, { F (F_TLBPR_NULL) }, { F (F_TLBPROPX) }, { F (F_TLBPRL) }, { F (F_OP) }, { F (F_GRI) }, { F (F_OPE1) }, { F (F_GRJ) }, { 0 } }
1246 static const CGEN_IFMT ifmt_cop1 ATTRIBUTE_UNUSED = {
1247 32, 32, 0x1fc0000, { { F (F_PACK) }, { F (F_CPRK) }, { F (F_OP) }, { F (F_CPRI) }, { F (F_S6_1) }, { F (F_CPRJ) }, { 0 } }
1250 static const CGEN_IFMT ifmt_clrgr ATTRIBUTE_UNUSED = {
1251 32, 32, 0x1ffffff, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ_NULL) }, { 0 } }
1254 static const CGEN_IFMT ifmt_clrfr ATTRIBUTE_UNUSED = {
1255 32, 32, 0x1ffffff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_GRJ_NULL) }, { 0 } }
1258 static const CGEN_IFMT ifmt_fitos ATTRIBUTE_UNUSED = {
1259 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1262 static const CGEN_IFMT ifmt_fstoi ATTRIBUTE_UNUSED = {
1263 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1266 static const CGEN_IFMT ifmt_fitod ATTRIBUTE_UNUSED = {
1267 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1270 static const CGEN_IFMT ifmt_fdtoi ATTRIBUTE_UNUSED = {
1271 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1274 static const CGEN_IFMT ifmt_cfitos ATTRIBUTE_UNUSED = {
1275 32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1278 static const CGEN_IFMT ifmt_cfstoi ATTRIBUTE_UNUSED = {
1279 32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1282 static const CGEN_IFMT ifmt_fmovs ATTRIBUTE_UNUSED = {
1283 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1286 static const CGEN_IFMT ifmt_fmovd ATTRIBUTE_UNUSED = {
1287 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1290 static const CGEN_IFMT ifmt_cfmovs ATTRIBUTE_UNUSED = {
1291 32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1294 static const CGEN_IFMT ifmt_fadds ATTRIBUTE_UNUSED = {
1295 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1298 static const CGEN_IFMT ifmt_faddd ATTRIBUTE_UNUSED = {
1299 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1302 static const CGEN_IFMT ifmt_cfadds ATTRIBUTE_UNUSED = {
1303 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1306 static const CGEN_IFMT ifmt_fcmps ATTRIBUTE_UNUSED = {
1307 32, 32, 0x79fc0fc0, { { F (F_PACK) }, { F (F_COND_NULL) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1310 static const CGEN_IFMT ifmt_fcmpd ATTRIBUTE_UNUSED = {
1311 32, 32, 0x79fc0fc0, { { F (F_PACK) }, { F (F_COND_NULL) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1314 static const CGEN_IFMT ifmt_cfcmps ATTRIBUTE_UNUSED = {
1315 32, 32, 0x79fc00c0, { { F (F_PACK) }, { F (F_COND_NULL) }, { F (F_FCCI_2) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1318 static const CGEN_IFMT ifmt_mhsetlos ATTRIBUTE_UNUSED = {
1319 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_OPE1) }, { F (F_U12) }, { 0 } }
1322 static const CGEN_IFMT ifmt_mhsethis ATTRIBUTE_UNUSED = {
1323 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_OPE1) }, { F (F_U12) }, { 0 } }
1326 static const CGEN_IFMT ifmt_mhdsets ATTRIBUTE_UNUSED = {
1327 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_OPE1) }, { F (F_U12) }, { 0 } }
1330 static const CGEN_IFMT ifmt_mhsetloh ATTRIBUTE_UNUSED = {
1331 32, 32, 0x1ffffe0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_MISC_NULL_11) }, { F (F_S5) }, { 0 } }
1334 static const CGEN_IFMT ifmt_mhsethih ATTRIBUTE_UNUSED = {
1335 32, 32, 0x1ffffe0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_MISC_NULL_11) }, { F (F_S5) }, { 0 } }
1338 static const CGEN_IFMT ifmt_mhdseth ATTRIBUTE_UNUSED = {
1339 32, 32, 0x1ffffe0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_MISC_NULL_11) }, { F (F_S5) }, { 0 } }
1342 static const CGEN_IFMT ifmt_mand ATTRIBUTE_UNUSED = {
1343 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1346 static const CGEN_IFMT ifmt_cmand ATTRIBUTE_UNUSED = {
1347 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1350 static const CGEN_IFMT ifmt_mnot ATTRIBUTE_UNUSED = {
1351 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1354 static const CGEN_IFMT ifmt_cmnot ATTRIBUTE_UNUSED = {
1355 32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_RS_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1358 static const CGEN_IFMT ifmt_mrotli ATTRIBUTE_UNUSED = {
1359 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_U6) }, { 0 } }
1362 static const CGEN_IFMT ifmt_mcut ATTRIBUTE_UNUSED = {
1363 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1366 static const CGEN_IFMT ifmt_mcuti ATTRIBUTE_UNUSED = {
1367 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_S6) }, { 0 } }
1370 static const CGEN_IFMT ifmt_mdcutssi ATTRIBUTE_UNUSED = {
1371 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_S6) }, { 0 } }
1374 static const CGEN_IFMT ifmt_mdrotli ATTRIBUTE_UNUSED = {
1375 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_S6) }, { 0 } }
1378 static const CGEN_IFMT ifmt_mqsaths ATTRIBUTE_UNUSED = {
1379 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1382 static const CGEN_IFMT ifmt_mcmpsh ATTRIBUTE_UNUSED = {
1383 32, 32, 0x79fc0fc0, { { F (F_PACK) }, { F (F_COND_NULL) }, { F (F_FCCK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1386 static const CGEN_IFMT ifmt_mabshs ATTRIBUTE_UNUSED = {
1387 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1390 static const CGEN_IFMT ifmt_cmqaddhss ATTRIBUTE_UNUSED = {
1391 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1394 static const CGEN_IFMT ifmt_mqsllhi ATTRIBUTE_UNUSED = {
1395 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_U6) }, { 0 } }
1398 static const CGEN_IFMT ifmt_maddaccs ATTRIBUTE_UNUSED = {
1399 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_ACCJ_NULL) }, { 0 } }
1402 static const CGEN_IFMT ifmt_mmulhs ATTRIBUTE_UNUSED = {
1403 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1406 static const CGEN_IFMT ifmt_cmmulhs ATTRIBUTE_UNUSED = {
1407 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1410 static const CGEN_IFMT ifmt_mqmulhs ATTRIBUTE_UNUSED = {
1411 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1414 static const CGEN_IFMT ifmt_cmqmulhs ATTRIBUTE_UNUSED = {
1415 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1418 static const CGEN_IFMT ifmt_mmachu ATTRIBUTE_UNUSED = {
1419 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40UK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1422 static const CGEN_IFMT ifmt_cmmachu ATTRIBUTE_UNUSED = {
1423 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_ACC40UK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1426 static const CGEN_IFMT ifmt_mqmachu ATTRIBUTE_UNUSED = {
1427 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_ACC40UK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1430 static const CGEN_IFMT ifmt_cmqmachu ATTRIBUTE_UNUSED = {
1431 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_ACC40UK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1434 static const CGEN_IFMT ifmt_cmexpdhw ATTRIBUTE_UNUSED = {
1435 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_U6) }, { 0 } }
1438 static const CGEN_IFMT ifmt_mexpdhd ATTRIBUTE_UNUSED = {
1439 32, 32, 0x1fc0fc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_U6) }, { 0 } }
1442 static const CGEN_IFMT ifmt_cmexpdhd ATTRIBUTE_UNUSED = {
1443 32, 32, 0x1fc00c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_U6) }, { 0 } }
1446 static const CGEN_IFMT ifmt_munpackh ATTRIBUTE_UNUSED = {
1447 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1450 static const CGEN_IFMT ifmt_mdunpackh ATTRIBUTE_UNUSED = {
1451 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1454 static const CGEN_IFMT ifmt_mbtoh ATTRIBUTE_UNUSED = {
1455 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1458 static const CGEN_IFMT ifmt_cmbtoh ATTRIBUTE_UNUSED = {
1459 32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1462 static const CGEN_IFMT ifmt_mhtob ATTRIBUTE_UNUSED = {
1463 32, 32, 0x1ffffc0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_FRJ) }, { 0 } }
1466 static const CGEN_IFMT ifmt_cmhtob ATTRIBUTE_UNUSED = {
1467 32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1470 static const CGEN_IFMT ifmt_cmbtohe ATTRIBUTE_UNUSED = {
1471 32, 32, 0x1fff0c0, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_FRJ) }, { 0 } }
1474 static const CGEN_IFMT ifmt_mnop ATTRIBUTE_UNUSED = {
1475 32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_A) }, { F (F_MISC_NULL_10) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1478 static const CGEN_IFMT ifmt_mclracc_0 ATTRIBUTE_UNUSED = {
1479 32, 32, 0x1ffffff, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_A) }, { F (F_MISC_NULL_10) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1482 static const CGEN_IFMT ifmt_mrdacc ATTRIBUTE_UNUSED = {
1483 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACC40SI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1486 static const CGEN_IFMT ifmt_mrdaccg ATTRIBUTE_UNUSED = {
1487 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_FRK) }, { F (F_OP) }, { F (F_ACCGI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1490 static const CGEN_IFMT ifmt_mwtacc ATTRIBUTE_UNUSED = {
1491 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_ACC40SK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1494 static const CGEN_IFMT ifmt_mwtaccg ATTRIBUTE_UNUSED = {
1495 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_ACCGK) }, { F (F_OP) }, { F (F_FRI) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1498 static const CGEN_IFMT ifmt_fnop ATTRIBUTE_UNUSED = {
1499 32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_RD_NULL) }, { F (F_OP) }, { F (F_FRI_NULL) }, { F (F_OPE1) }, { F (F_FRJ_NULL) }, { 0 } }
1502 #undef F
1504 #if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
1505 #define A(a) (1 << CGEN_INSN_##a)
1506 #else
1507 #define A(a) (1 << CGEN_INSN_/**/a)
1508 #endif
1509 #if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
1510 #define OPERAND(op) FRV_OPERAND_##op
1511 #else
1512 #define OPERAND(op) FRV_OPERAND_/**/op
1513 #endif
1514 #define MNEM CGEN_SYNTAX_MNEMONIC /* syntax value for mnemonic */
1515 #define OP(field) CGEN_SYNTAX_MAKE_FIELD (OPERAND (field))
1517 /* The instruction table. */
1519 static const CGEN_OPCODE frv_cgen_insn_opcode_table[MAX_INSNS] =
1521 /* Special null first entry.
1522 A `num' value of zero is thus invalid.
1523 Also, the special `invalid' insn resides here. */
1524 { { 0, 0, 0, 0 }, {{0}}, 0, {0}},
1525 /* add$pack $GRi,$GRj,$GRk */
1527 { 0, 0, 0, 0 },
1528 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1529 & ifmt_add, { 0x0 }
1531 /* sub$pack $GRi,$GRj,$GRk */
1533 { 0, 0, 0, 0 },
1534 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1535 & ifmt_add, { 0x100 }
1537 /* and$pack $GRi,$GRj,$GRk */
1539 { 0, 0, 0, 0 },
1540 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1541 & ifmt_add, { 0x40000 }
1543 /* or$pack $GRi,$GRj,$GRk */
1545 { 0, 0, 0, 0 },
1546 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1547 & ifmt_add, { 0x40080 }
1549 /* xor$pack $GRi,$GRj,$GRk */
1551 { 0, 0, 0, 0 },
1552 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1553 & ifmt_add, { 0x40100 }
1555 /* not$pack $GRj,$GRk */
1557 { 0, 0, 0, 0 },
1558 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (GRK), 0 } },
1559 & ifmt_not, { 0x40180 }
1561 /* sdiv$pack $GRi,$GRj,$GRk */
1563 { 0, 0, 0, 0 },
1564 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1565 & ifmt_add, { 0x380 }
1567 /* nsdiv$pack $GRi,$GRj,$GRk */
1569 { 0, 0, 0, 0 },
1570 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1571 & ifmt_add, { 0x40380 }
1573 /* udiv$pack $GRi,$GRj,$GRk */
1575 { 0, 0, 0, 0 },
1576 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1577 & ifmt_add, { 0x3c0 }
1579 /* nudiv$pack $GRi,$GRj,$GRk */
1581 { 0, 0, 0, 0 },
1582 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1583 & ifmt_add, { 0x403c0 }
1585 /* smul$pack $GRi,$GRj,$GRdoublek */
1587 { 0, 0, 0, 0 },
1588 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), 0 } },
1589 & ifmt_smul, { 0x200 }
1591 /* umul$pack $GRi,$GRj,$GRdoublek */
1593 { 0, 0, 0, 0 },
1594 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), 0 } },
1595 & ifmt_smul, { 0x280 }
1597 /* smu$pack $GRi,$GRj */
1599 { 0, 0, 0, 0 },
1600 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
1601 & ifmt_smu, { 0x1180140 }
1603 /* smass$pack $GRi,$GRj */
1605 { 0, 0, 0, 0 },
1606 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
1607 & ifmt_smu, { 0x1180180 }
1609 /* smsss$pack $GRi,$GRj */
1611 { 0, 0, 0, 0 },
1612 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
1613 & ifmt_smu, { 0x11801c0 }
1615 /* sll$pack $GRi,$GRj,$GRk */
1617 { 0, 0, 0, 0 },
1618 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1619 & ifmt_add, { 0x40200 }
1621 /* srl$pack $GRi,$GRj,$GRk */
1623 { 0, 0, 0, 0 },
1624 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1625 & ifmt_add, { 0x40280 }
1627 /* sra$pack $GRi,$GRj,$GRk */
1629 { 0, 0, 0, 0 },
1630 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1631 & ifmt_add, { 0x40300 }
1633 /* slass$pack $GRi,$GRj,$GRk */
1635 { 0, 0, 0, 0 },
1636 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1637 & ifmt_slass, { 0x1180080 }
1639 /* scutss$pack $GRj,$GRk */
1641 { 0, 0, 0, 0 },
1642 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (GRK), 0 } },
1643 & ifmt_scutss, { 0x1180100 }
1645 /* scan$pack $GRi,$GRj,$GRk */
1647 { 0, 0, 0, 0 },
1648 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1649 & ifmt_add, { 0x2c0000 }
1651 /* cadd$pack $GRi,$GRj,$GRk,$CCi,$cond */
1653 { 0, 0, 0, 0 },
1654 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1655 & ifmt_cadd, { 0x1600000 }
1657 /* csub$pack $GRi,$GRj,$GRk,$CCi,$cond */
1659 { 0, 0, 0, 0 },
1660 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1661 & ifmt_cadd, { 0x1600040 }
1663 /* cand$pack $GRi,$GRj,$GRk,$CCi,$cond */
1665 { 0, 0, 0, 0 },
1666 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1667 & ifmt_cadd, { 0x1680000 }
1669 /* cor$pack $GRi,$GRj,$GRk,$CCi,$cond */
1671 { 0, 0, 0, 0 },
1672 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1673 & ifmt_cadd, { 0x1680040 }
1675 /* cxor$pack $GRi,$GRj,$GRk,$CCi,$cond */
1677 { 0, 0, 0, 0 },
1678 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1679 & ifmt_cadd, { 0x1680080 }
1681 /* cnot$pack $GRj,$GRk,$CCi,$cond */
1683 { 0, 0, 0, 0 },
1684 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1685 & ifmt_cnot, { 0x16800c0 }
1687 /* csmul$pack $GRi,$GRj,$GRdoublek,$CCi,$cond */
1689 { 0, 0, 0, 0 },
1690 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
1691 & ifmt_csmul, { 0x1600080 }
1693 /* csdiv$pack $GRi,$GRj,$GRk,$CCi,$cond */
1695 { 0, 0, 0, 0 },
1696 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1697 & ifmt_cadd, { 0x16000c0 }
1699 /* cudiv$pack $GRi,$GRj,$GRk,$CCi,$cond */
1701 { 0, 0, 0, 0 },
1702 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1703 & ifmt_cadd, { 0x16400c0 }
1705 /* csll$pack $GRi,$GRj,$GRk,$CCi,$cond */
1707 { 0, 0, 0, 0 },
1708 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1709 & ifmt_cadd, { 0x1700000 }
1711 /* csrl$pack $GRi,$GRj,$GRk,$CCi,$cond */
1713 { 0, 0, 0, 0 },
1714 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1715 & ifmt_cadd, { 0x1700040 }
1717 /* csra$pack $GRi,$GRj,$GRk,$CCi,$cond */
1719 { 0, 0, 0, 0 },
1720 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1721 & ifmt_cadd, { 0x1700080 }
1723 /* cscan$pack $GRi,$GRj,$GRk,$CCi,$cond */
1725 { 0, 0, 0, 0 },
1726 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1727 & ifmt_cadd, { 0x19400c0 }
1729 /* addcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1731 { 0, 0, 0, 0 },
1732 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1733 & ifmt_addcc, { 0x40 }
1735 /* subcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1737 { 0, 0, 0, 0 },
1738 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1739 & ifmt_addcc, { 0x140 }
1741 /* andcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1743 { 0, 0, 0, 0 },
1744 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1745 & ifmt_addcc, { 0x40040 }
1747 /* orcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1749 { 0, 0, 0, 0 },
1750 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1751 & ifmt_addcc, { 0x400c0 }
1753 /* xorcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1755 { 0, 0, 0, 0 },
1756 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1757 & ifmt_addcc, { 0x40140 }
1759 /* sllcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1761 { 0, 0, 0, 0 },
1762 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1763 & ifmt_addcc, { 0x40240 }
1765 /* srlcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1767 { 0, 0, 0, 0 },
1768 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1769 & ifmt_addcc, { 0x402c0 }
1771 /* sracc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1773 { 0, 0, 0, 0 },
1774 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1775 & ifmt_addcc, { 0x40340 }
1777 /* smulcc$pack $GRi,$GRj,$GRdoublek,$ICCi_1 */
1779 { 0, 0, 0, 0 },
1780 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
1781 & ifmt_smulcc, { 0x240 }
1783 /* umulcc$pack $GRi,$GRj,$GRdoublek,$ICCi_1 */
1785 { 0, 0, 0, 0 },
1786 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
1787 & ifmt_smulcc, { 0x2c0 }
1789 /* caddcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1791 { 0, 0, 0, 0 },
1792 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1793 & ifmt_cadd, { 0x1640000 }
1795 /* csubcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1797 { 0, 0, 0, 0 },
1798 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1799 & ifmt_cadd, { 0x1640040 }
1801 /* csmulcc$pack $GRi,$GRj,$GRdoublek,$CCi,$cond */
1803 { 0, 0, 0, 0 },
1804 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
1805 & ifmt_csmul, { 0x1640080 }
1807 /* candcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1809 { 0, 0, 0, 0 },
1810 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1811 & ifmt_cadd, { 0x16c0000 }
1813 /* corcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1815 { 0, 0, 0, 0 },
1816 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1817 & ifmt_cadd, { 0x16c0040 }
1819 /* cxorcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1821 { 0, 0, 0, 0 },
1822 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1823 & ifmt_cadd, { 0x16c0080 }
1825 /* csllcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1827 { 0, 0, 0, 0 },
1828 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1829 & ifmt_cadd, { 0x1740000 }
1831 /* csrlcc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1833 { 0, 0, 0, 0 },
1834 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1835 & ifmt_cadd, { 0x1740040 }
1837 /* csracc$pack $GRi,$GRj,$GRk,$CCi,$cond */
1839 { 0, 0, 0, 0 },
1840 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
1841 & ifmt_cadd, { 0x1740080 }
1843 /* addx$pack $GRi,$GRj,$GRk,$ICCi_1 */
1845 { 0, 0, 0, 0 },
1846 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1847 & ifmt_addcc, { 0x80 }
1849 /* subx$pack $GRi,$GRj,$GRk,$ICCi_1 */
1851 { 0, 0, 0, 0 },
1852 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1853 & ifmt_addcc, { 0x180 }
1855 /* addxcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1857 { 0, 0, 0, 0 },
1858 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1859 & ifmt_addcc, { 0xc0 }
1861 /* subxcc$pack $GRi,$GRj,$GRk,$ICCi_1 */
1863 { 0, 0, 0, 0 },
1864 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1865 & ifmt_addcc, { 0x1c0 }
1867 /* addss$pack $GRi,$GRj,$GRk */
1869 { 0, 0, 0, 0 },
1870 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1871 & ifmt_slass, { 0x1180000 }
1873 /* subss$pack $GRi,$GRj,$GRk */
1875 { 0, 0, 0, 0 },
1876 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (GRK), 0 } },
1877 & ifmt_slass, { 0x1180040 }
1879 /* addi$pack $GRi,$s12,$GRk */
1881 { 0, 0, 0, 0 },
1882 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1883 & ifmt_addi, { 0x400000 }
1885 /* subi$pack $GRi,$s12,$GRk */
1887 { 0, 0, 0, 0 },
1888 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1889 & ifmt_addi, { 0x500000 }
1891 /* andi$pack $GRi,$s12,$GRk */
1893 { 0, 0, 0, 0 },
1894 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1895 & ifmt_addi, { 0x800000 }
1897 /* ori$pack $GRi,$s12,$GRk */
1899 { 0, 0, 0, 0 },
1900 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1901 & ifmt_addi, { 0x880000 }
1903 /* xori$pack $GRi,$s12,$GRk */
1905 { 0, 0, 0, 0 },
1906 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1907 & ifmt_addi, { 0x900000 }
1909 /* sdivi$pack $GRi,$s12,$GRk */
1911 { 0, 0, 0, 0 },
1912 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1913 & ifmt_addi, { 0x780000 }
1915 /* nsdivi$pack $GRi,$s12,$GRk */
1917 { 0, 0, 0, 0 },
1918 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1919 & ifmt_addi, { 0xb80000 }
1921 /* udivi$pack $GRi,$s12,$GRk */
1923 { 0, 0, 0, 0 },
1924 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1925 & ifmt_addi, { 0x7c0000 }
1927 /* nudivi$pack $GRi,$s12,$GRk */
1929 { 0, 0, 0, 0 },
1930 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1931 & ifmt_addi, { 0xbc0000 }
1933 /* smuli$pack $GRi,$s12,$GRdoublek */
1935 { 0, 0, 0, 0 },
1936 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRDOUBLEK), 0 } },
1937 & ifmt_smuli, { 0x600000 }
1939 /* umuli$pack $GRi,$s12,$GRdoublek */
1941 { 0, 0, 0, 0 },
1942 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRDOUBLEK), 0 } },
1943 & ifmt_smuli, { 0x680000 }
1945 /* slli$pack $GRi,$s12,$GRk */
1947 { 0, 0, 0, 0 },
1948 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1949 & ifmt_addi, { 0xa00000 }
1951 /* srli$pack $GRi,$s12,$GRk */
1953 { 0, 0, 0, 0 },
1954 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1955 & ifmt_addi, { 0xa80000 }
1957 /* srai$pack $GRi,$s12,$GRk */
1959 { 0, 0, 0, 0 },
1960 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1961 & ifmt_addi, { 0xb00000 }
1963 /* scani$pack $GRi,$s12,$GRk */
1965 { 0, 0, 0, 0 },
1966 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), ',', OP (GRK), 0 } },
1967 & ifmt_addi, { 0x11c0000 }
1969 /* addicc$pack $GRi,$s10,$GRk,$ICCi_1 */
1971 { 0, 0, 0, 0 },
1972 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1973 & ifmt_addicc, { 0x440000 }
1975 /* subicc$pack $GRi,$s10,$GRk,$ICCi_1 */
1977 { 0, 0, 0, 0 },
1978 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1979 & ifmt_addicc, { 0x540000 }
1981 /* andicc$pack $GRi,$s10,$GRk,$ICCi_1 */
1983 { 0, 0, 0, 0 },
1984 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1985 & ifmt_addicc, { 0x840000 }
1987 /* oricc$pack $GRi,$s10,$GRk,$ICCi_1 */
1989 { 0, 0, 0, 0 },
1990 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1991 & ifmt_addicc, { 0x8c0000 }
1993 /* xoricc$pack $GRi,$s10,$GRk,$ICCi_1 */
1995 { 0, 0, 0, 0 },
1996 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
1997 & ifmt_addicc, { 0x940000 }
1999 /* smulicc$pack $GRi,$s10,$GRdoublek,$ICCi_1 */
2001 { 0, 0, 0, 0 },
2002 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
2003 & ifmt_smulicc, { 0x640000 }
2005 /* umulicc$pack $GRi,$s10,$GRdoublek,$ICCi_1 */
2007 { 0, 0, 0, 0 },
2008 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRDOUBLEK), ',', OP (ICCI_1), 0 } },
2009 & ifmt_smulicc, { 0x6c0000 }
2011 /* sllicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2013 { 0, 0, 0, 0 },
2014 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2015 & ifmt_addicc, { 0xa40000 }
2017 /* srlicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2019 { 0, 0, 0, 0 },
2020 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2021 & ifmt_addicc, { 0xac0000 }
2023 /* sraicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2025 { 0, 0, 0, 0 },
2026 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2027 & ifmt_addicc, { 0xb40000 }
2029 /* addxi$pack $GRi,$s10,$GRk,$ICCi_1 */
2031 { 0, 0, 0, 0 },
2032 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2033 & ifmt_addicc, { 0x480000 }
2035 /* subxi$pack $GRi,$s10,$GRk,$ICCi_1 */
2037 { 0, 0, 0, 0 },
2038 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2039 & ifmt_addicc, { 0x580000 }
2041 /* addxicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2043 { 0, 0, 0, 0 },
2044 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2045 & ifmt_addicc, { 0x4c0000 }
2047 /* subxicc$pack $GRi,$s10,$GRk,$ICCi_1 */
2049 { 0, 0, 0, 0 },
2050 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (GRK), ',', OP (ICCI_1), 0 } },
2051 & ifmt_addicc, { 0x5c0000 }
2053 /* cmpb$pack $GRi,$GRj,$ICCi_1 */
2055 { 0, 0, 0, 0 },
2056 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (ICCI_1), 0 } },
2057 & ifmt_cmpb, { 0x300 }
2059 /* cmpba$pack $GRi,$GRj,$ICCi_1 */
2061 { 0, 0, 0, 0 },
2062 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (ICCI_1), 0 } },
2063 & ifmt_cmpb, { 0x340 }
2065 /* setlo$pack $ulo16,$GRklo */
2067 { 0, 0, 0, 0 },
2068 { { MNEM, OP (PACK), ' ', OP (ULO16), ',', OP (GRKLO), 0 } },
2069 & ifmt_setlo, { 0xf40000 }
2071 /* sethi$pack $uhi16,$GRkhi */
2073 { 0, 0, 0, 0 },
2074 { { MNEM, OP (PACK), ' ', OP (UHI16), ',', OP (GRKHI), 0 } },
2075 & ifmt_sethi, { 0xf80000 }
2077 /* setlos$pack $slo16,$GRk */
2079 { 0, 0, 0, 0 },
2080 { { MNEM, OP (PACK), ' ', OP (SLO16), ',', OP (GRK), 0 } },
2081 & ifmt_setlos, { 0xfc0000 }
2083 /* ldsb$pack @($GRi,$GRj),$GRk */
2085 { 0, 0, 0, 0 },
2086 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2087 & ifmt_slass, { 0x80000 }
2089 /* ldub$pack @($GRi,$GRj),$GRk */
2091 { 0, 0, 0, 0 },
2092 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2093 & ifmt_slass, { 0x80040 }
2095 /* ldsh$pack @($GRi,$GRj),$GRk */
2097 { 0, 0, 0, 0 },
2098 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2099 & ifmt_slass, { 0x80080 }
2101 /* lduh$pack @($GRi,$GRj),$GRk */
2103 { 0, 0, 0, 0 },
2104 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2105 & ifmt_slass, { 0x800c0 }
2107 /* ld$pack $ldann($GRi,$GRj),$GRk */
2109 { 0, 0, 0, 0 },
2110 { { MNEM, OP (PACK), ' ', OP (LDANN), '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2111 & ifmt_slass, { 0x80100 }
2113 /* ldbf$pack @($GRi,$GRj),$FRintk */
2115 { 0, 0, 0, 0 },
2116 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2117 & ifmt_ldbf, { 0x80200 }
2119 /* ldhf$pack @($GRi,$GRj),$FRintk */
2121 { 0, 0, 0, 0 },
2122 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2123 & ifmt_ldbf, { 0x80240 }
2125 /* ldf$pack @($GRi,$GRj),$FRintk */
2127 { 0, 0, 0, 0 },
2128 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2129 & ifmt_ldbf, { 0x80280 }
2131 /* ldc$pack @($GRi,$GRj),$CPRk */
2133 { 0, 0, 0, 0 },
2134 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2135 & ifmt_ldc, { 0x80340 }
2137 /* nldsb$pack @($GRi,$GRj),$GRk */
2139 { 0, 0, 0, 0 },
2140 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2141 & ifmt_slass, { 0x80800 }
2143 /* nldub$pack @($GRi,$GRj),$GRk */
2145 { 0, 0, 0, 0 },
2146 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2147 & ifmt_slass, { 0x80840 }
2149 /* nldsh$pack @($GRi,$GRj),$GRk */
2151 { 0, 0, 0, 0 },
2152 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2153 & ifmt_slass, { 0x80880 }
2155 /* nlduh$pack @($GRi,$GRj),$GRk */
2157 { 0, 0, 0, 0 },
2158 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2159 & ifmt_slass, { 0x808c0 }
2161 /* nld$pack @($GRi,$GRj),$GRk */
2163 { 0, 0, 0, 0 },
2164 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2165 & ifmt_slass, { 0x80900 }
2167 /* nldbf$pack @($GRi,$GRj),$FRintk */
2169 { 0, 0, 0, 0 },
2170 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2171 & ifmt_ldbf, { 0x80a00 }
2173 /* nldhf$pack @($GRi,$GRj),$FRintk */
2175 { 0, 0, 0, 0 },
2176 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2177 & ifmt_ldbf, { 0x80a40 }
2179 /* nldf$pack @($GRi,$GRj),$FRintk */
2181 { 0, 0, 0, 0 },
2182 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2183 & ifmt_ldbf, { 0x80a80 }
2185 /* ldd$pack $lddann($GRi,$GRj),$GRdoublek */
2187 { 0, 0, 0, 0 },
2188 { { MNEM, OP (PACK), ' ', OP (LDDANN), '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2189 & ifmt_ldd, { 0x80140 }
2191 /* lddf$pack @($GRi,$GRj),$FRdoublek */
2193 { 0, 0, 0, 0 },
2194 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2195 & ifmt_lddf, { 0x802c0 }
2197 /* lddc$pack @($GRi,$GRj),$CPRdoublek */
2199 { 0, 0, 0, 0 },
2200 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRDOUBLEK), 0 } },
2201 & ifmt_lddc, { 0x80380 }
2203 /* nldd$pack @($GRi,$GRj),$GRdoublek */
2205 { 0, 0, 0, 0 },
2206 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2207 & ifmt_ldd, { 0x80940 }
2209 /* nlddf$pack @($GRi,$GRj),$FRdoublek */
2211 { 0, 0, 0, 0 },
2212 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2213 & ifmt_lddf, { 0x80ac0 }
2215 /* ldq$pack @($GRi,$GRj),$GRk */
2217 { 0, 0, 0, 0 },
2218 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2219 & ifmt_slass, { 0x80180 }
2221 /* ldqf$pack @($GRi,$GRj),$FRintk */
2223 { 0, 0, 0, 0 },
2224 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2225 & ifmt_ldbf, { 0x80300 }
2227 /* ldqc$pack @($GRi,$GRj),$CPRk */
2229 { 0, 0, 0, 0 },
2230 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2231 & ifmt_ldc, { 0x803c0 }
2233 /* nldq$pack @($GRi,$GRj),$GRk */
2235 { 0, 0, 0, 0 },
2236 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2237 & ifmt_slass, { 0x80980 }
2239 /* nldqf$pack @($GRi,$GRj),$FRintk */
2241 { 0, 0, 0, 0 },
2242 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2243 & ifmt_ldbf, { 0x80b00 }
2245 /* ldsbu$pack @($GRi,$GRj),$GRk */
2247 { 0, 0, 0, 0 },
2248 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2249 & ifmt_slass, { 0x80400 }
2251 /* ldubu$pack @($GRi,$GRj),$GRk */
2253 { 0, 0, 0, 0 },
2254 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2255 & ifmt_slass, { 0x80440 }
2257 /* ldshu$pack @($GRi,$GRj),$GRk */
2259 { 0, 0, 0, 0 },
2260 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2261 & ifmt_slass, { 0x80480 }
2263 /* lduhu$pack @($GRi,$GRj),$GRk */
2265 { 0, 0, 0, 0 },
2266 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2267 & ifmt_slass, { 0x804c0 }
2269 /* ldu$pack @($GRi,$GRj),$GRk */
2271 { 0, 0, 0, 0 },
2272 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2273 & ifmt_slass, { 0x80500 }
2275 /* nldsbu$pack @($GRi,$GRj),$GRk */
2277 { 0, 0, 0, 0 },
2278 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2279 & ifmt_slass, { 0x80c00 }
2281 /* nldubu$pack @($GRi,$GRj),$GRk */
2283 { 0, 0, 0, 0 },
2284 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2285 & ifmt_slass, { 0x80c40 }
2287 /* nldshu$pack @($GRi,$GRj),$GRk */
2289 { 0, 0, 0, 0 },
2290 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2291 & ifmt_slass, { 0x80c80 }
2293 /* nlduhu$pack @($GRi,$GRj),$GRk */
2295 { 0, 0, 0, 0 },
2296 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2297 & ifmt_slass, { 0x80cc0 }
2299 /* nldu$pack @($GRi,$GRj),$GRk */
2301 { 0, 0, 0, 0 },
2302 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2303 & ifmt_slass, { 0x80d00 }
2305 /* ldbfu$pack @($GRi,$GRj),$FRintk */
2307 { 0, 0, 0, 0 },
2308 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2309 & ifmt_ldbf, { 0x80600 }
2311 /* ldhfu$pack @($GRi,$GRj),$FRintk */
2313 { 0, 0, 0, 0 },
2314 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2315 & ifmt_ldbf, { 0x80640 }
2317 /* ldfu$pack @($GRi,$GRj),$FRintk */
2319 { 0, 0, 0, 0 },
2320 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2321 & ifmt_ldbf, { 0x80680 }
2323 /* ldcu$pack @($GRi,$GRj),$CPRk */
2325 { 0, 0, 0, 0 },
2326 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2327 & ifmt_ldc, { 0x80740 }
2329 /* nldbfu$pack @($GRi,$GRj),$FRintk */
2331 { 0, 0, 0, 0 },
2332 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2333 & ifmt_ldbf, { 0x80e00 }
2335 /* nldhfu$pack @($GRi,$GRj),$FRintk */
2337 { 0, 0, 0, 0 },
2338 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2339 & ifmt_ldbf, { 0x80e40 }
2341 /* nldfu$pack @($GRi,$GRj),$FRintk */
2343 { 0, 0, 0, 0 },
2344 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2345 & ifmt_ldbf, { 0x80e80 }
2347 /* lddu$pack @($GRi,$GRj),$GRdoublek */
2349 { 0, 0, 0, 0 },
2350 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2351 & ifmt_ldd, { 0x80540 }
2353 /* nlddu$pack @($GRi,$GRj),$GRdoublek */
2355 { 0, 0, 0, 0 },
2356 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), 0 } },
2357 & ifmt_ldd, { 0x80d40 }
2359 /* lddfu$pack @($GRi,$GRj),$FRdoublek */
2361 { 0, 0, 0, 0 },
2362 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2363 & ifmt_lddf, { 0x806c0 }
2365 /* lddcu$pack @($GRi,$GRj),$CPRdoublek */
2367 { 0, 0, 0, 0 },
2368 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRDOUBLEK), 0 } },
2369 & ifmt_lddc, { 0x80780 }
2371 /* nlddfu$pack @($GRi,$GRj),$FRdoublek */
2373 { 0, 0, 0, 0 },
2374 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), 0 } },
2375 & ifmt_lddf, { 0x80ec0 }
2377 /* ldqu$pack @($GRi,$GRj),$GRk */
2379 { 0, 0, 0, 0 },
2380 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2381 & ifmt_slass, { 0x80580 }
2383 /* nldqu$pack @($GRi,$GRj),$GRk */
2385 { 0, 0, 0, 0 },
2386 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2387 & ifmt_slass, { 0x80d80 }
2389 /* ldqfu$pack @($GRi,$GRj),$FRintk */
2391 { 0, 0, 0, 0 },
2392 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2393 & ifmt_ldbf, { 0x80700 }
2395 /* ldqcu$pack @($GRi,$GRj),$CPRk */
2397 { 0, 0, 0, 0 },
2398 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CPRK), 0 } },
2399 & ifmt_ldc, { 0x807c0 }
2401 /* nldqfu$pack @($GRi,$GRj),$FRintk */
2403 { 0, 0, 0, 0 },
2404 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), 0 } },
2405 & ifmt_ldbf, { 0x80f00 }
2407 /* ldsbi$pack @($GRi,$d12),$GRk */
2409 { 0, 0, 0, 0 },
2410 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2411 & ifmt_ldsbi, { 0xc00000 }
2413 /* ldshi$pack @($GRi,$d12),$GRk */
2415 { 0, 0, 0, 0 },
2416 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2417 & ifmt_ldsbi, { 0xc40000 }
2419 /* ldi$pack @($GRi,$d12),$GRk */
2421 { 0, 0, 0, 0 },
2422 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2423 & ifmt_ldsbi, { 0xc80000 }
2425 /* ldubi$pack @($GRi,$d12),$GRk */
2427 { 0, 0, 0, 0 },
2428 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2429 & ifmt_ldsbi, { 0xd40000 }
2431 /* lduhi$pack @($GRi,$d12),$GRk */
2433 { 0, 0, 0, 0 },
2434 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2435 & ifmt_ldsbi, { 0xd80000 }
2437 /* ldbfi$pack @($GRi,$d12),$FRintk */
2439 { 0, 0, 0, 0 },
2440 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2441 & ifmt_ldbfi, { 0xe00000 }
2443 /* ldhfi$pack @($GRi,$d12),$FRintk */
2445 { 0, 0, 0, 0 },
2446 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2447 & ifmt_ldbfi, { 0xe40000 }
2449 /* ldfi$pack @($GRi,$d12),$FRintk */
2451 { 0, 0, 0, 0 },
2452 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2453 & ifmt_ldbfi, { 0xe80000 }
2455 /* nldsbi$pack @($GRi,$d12),$GRk */
2457 { 0, 0, 0, 0 },
2458 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2459 & ifmt_ldsbi, { 0x1000000 }
2461 /* nldubi$pack @($GRi,$d12),$GRk */
2463 { 0, 0, 0, 0 },
2464 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2465 & ifmt_ldsbi, { 0x1040000 }
2467 /* nldshi$pack @($GRi,$d12),$GRk */
2469 { 0, 0, 0, 0 },
2470 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2471 & ifmt_ldsbi, { 0x1080000 }
2473 /* nlduhi$pack @($GRi,$d12),$GRk */
2475 { 0, 0, 0, 0 },
2476 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2477 & ifmt_ldsbi, { 0x10c0000 }
2479 /* nldi$pack @($GRi,$d12),$GRk */
2481 { 0, 0, 0, 0 },
2482 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2483 & ifmt_ldsbi, { 0x1100000 }
2485 /* nldbfi$pack @($GRi,$d12),$FRintk */
2487 { 0, 0, 0, 0 },
2488 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2489 & ifmt_ldbfi, { 0x1200000 }
2491 /* nldhfi$pack @($GRi,$d12),$FRintk */
2493 { 0, 0, 0, 0 },
2494 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2495 & ifmt_ldbfi, { 0x1240000 }
2497 /* nldfi$pack @($GRi,$d12),$FRintk */
2499 { 0, 0, 0, 0 },
2500 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2501 & ifmt_ldbfi, { 0x1280000 }
2503 /* lddi$pack @($GRi,$d12),$GRdoublek */
2505 { 0, 0, 0, 0 },
2506 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRDOUBLEK), 0 } },
2507 & ifmt_lddi, { 0xcc0000 }
2509 /* lddfi$pack @($GRi,$d12),$FRdoublek */
2511 { 0, 0, 0, 0 },
2512 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRDOUBLEK), 0 } },
2513 & ifmt_lddfi, { 0xec0000 }
2515 /* nlddi$pack @($GRi,$d12),$GRdoublek */
2517 { 0, 0, 0, 0 },
2518 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRDOUBLEK), 0 } },
2519 & ifmt_lddi, { 0x1140000 }
2521 /* nlddfi$pack @($GRi,$d12),$FRdoublek */
2523 { 0, 0, 0, 0 },
2524 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRDOUBLEK), 0 } },
2525 & ifmt_lddfi, { 0x12c0000 }
2527 /* ldqi$pack @($GRi,$d12),$GRk */
2529 { 0, 0, 0, 0 },
2530 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
2531 & ifmt_ldsbi, { 0xd00000 }
2533 /* ldqfi$pack @($GRi,$d12),$FRintk */
2535 { 0, 0, 0, 0 },
2536 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2537 & ifmt_ldbfi, { 0xf00000 }
2539 /* nldqfi$pack @($GRi,$d12),$FRintk */
2541 { 0, 0, 0, 0 },
2542 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (FRINTK), 0 } },
2543 & ifmt_ldbfi, { 0x1300000 }
2545 /* stb$pack $GRk,@($GRi,$GRj) */
2547 { 0, 0, 0, 0 },
2548 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2549 & ifmt_slass, { 0xc0000 }
2551 /* sth$pack $GRk,@($GRi,$GRj) */
2553 { 0, 0, 0, 0 },
2554 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2555 & ifmt_slass, { 0xc0040 }
2557 /* st$pack $GRk,@($GRi,$GRj) */
2559 { 0, 0, 0, 0 },
2560 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2561 & ifmt_slass, { 0xc0080 }
2563 /* stbf$pack $FRintk,@($GRi,$GRj) */
2565 { 0, 0, 0, 0 },
2566 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2567 & ifmt_ldbf, { 0xc0200 }
2569 /* sthf$pack $FRintk,@($GRi,$GRj) */
2571 { 0, 0, 0, 0 },
2572 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2573 & ifmt_ldbf, { 0xc0240 }
2575 /* stf$pack $FRintk,@($GRi,$GRj) */
2577 { 0, 0, 0, 0 },
2578 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2579 & ifmt_ldbf, { 0xc0280 }
2581 /* stc$pack $CPRk,@($GRi,$GRj) */
2583 { 0, 0, 0, 0 },
2584 { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2585 & ifmt_ldc, { 0xc0940 }
2587 /* std$pack $GRdoublek,@($GRi,$GRj) */
2589 { 0, 0, 0, 0 },
2590 { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2591 & ifmt_ldd, { 0xc00c0 }
2593 /* stdf$pack $FRdoublek,@($GRi,$GRj) */
2595 { 0, 0, 0, 0 },
2596 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2597 & ifmt_lddf, { 0xc02c0 }
2599 /* stdc$pack $CPRdoublek,@($GRi,$GRj) */
2601 { 0, 0, 0, 0 },
2602 { { MNEM, OP (PACK), ' ', OP (CPRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2603 & ifmt_lddc, { 0xc0980 }
2605 /* stq$pack $GRk,@($GRi,$GRj) */
2607 { 0, 0, 0, 0 },
2608 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2609 & ifmt_slass, { 0xc0100 }
2611 /* stqf$pack $FRintk,@($GRi,$GRj) */
2613 { 0, 0, 0, 0 },
2614 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2615 & ifmt_ldbf, { 0xc0300 }
2617 /* stqc$pack $CPRk,@($GRi,$GRj) */
2619 { 0, 0, 0, 0 },
2620 { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2621 & ifmt_ldc, { 0xc09c0 }
2623 /* stbu$pack $GRk,@($GRi,$GRj) */
2625 { 0, 0, 0, 0 },
2626 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2627 & ifmt_slass, { 0xc0400 }
2629 /* sthu$pack $GRk,@($GRi,$GRj) */
2631 { 0, 0, 0, 0 },
2632 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2633 & ifmt_slass, { 0xc0440 }
2635 /* stu$pack $GRk,@($GRi,$GRj) */
2637 { 0, 0, 0, 0 },
2638 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2639 & ifmt_slass, { 0xc0480 }
2641 /* stbfu$pack $FRintk,@($GRi,$GRj) */
2643 { 0, 0, 0, 0 },
2644 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2645 & ifmt_ldbf, { 0xc0600 }
2647 /* sthfu$pack $FRintk,@($GRi,$GRj) */
2649 { 0, 0, 0, 0 },
2650 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2651 & ifmt_ldbf, { 0xc0640 }
2653 /* stfu$pack $FRintk,@($GRi,$GRj) */
2655 { 0, 0, 0, 0 },
2656 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2657 & ifmt_ldbf, { 0xc0680 }
2659 /* stcu$pack $CPRk,@($GRi,$GRj) */
2661 { 0, 0, 0, 0 },
2662 { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2663 & ifmt_ldc, { 0xc0b40 }
2665 /* stdu$pack $GRdoublek,@($GRi,$GRj) */
2667 { 0, 0, 0, 0 },
2668 { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2669 & ifmt_ldd, { 0xc04c0 }
2671 /* stdfu$pack $FRdoublek,@($GRi,$GRj) */
2673 { 0, 0, 0, 0 },
2674 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2675 & ifmt_lddf, { 0xc06c0 }
2677 /* stdcu$pack $CPRdoublek,@($GRi,$GRj) */
2679 { 0, 0, 0, 0 },
2680 { { MNEM, OP (PACK), ' ', OP (CPRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2681 & ifmt_lddc, { 0xc0b80 }
2683 /* stqu$pack $GRk,@($GRi,$GRj) */
2685 { 0, 0, 0, 0 },
2686 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2687 & ifmt_slass, { 0xc0500 }
2689 /* stqfu$pack $FRintk,@($GRi,$GRj) */
2691 { 0, 0, 0, 0 },
2692 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2693 & ifmt_ldbf, { 0xc0700 }
2695 /* stqcu$pack $CPRk,@($GRi,$GRj) */
2697 { 0, 0, 0, 0 },
2698 { { MNEM, OP (PACK), ' ', OP (CPRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
2699 & ifmt_ldc, { 0xc0bc0 }
2701 /* cldsb$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2703 { 0, 0, 0, 0 },
2704 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2705 & ifmt_cadd, { 0x1780000 }
2707 /* cldub$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2709 { 0, 0, 0, 0 },
2710 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2711 & ifmt_cadd, { 0x1780040 }
2713 /* cldsh$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2715 { 0, 0, 0, 0 },
2716 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2717 & ifmt_cadd, { 0x1780080 }
2719 /* clduh$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2721 { 0, 0, 0, 0 },
2722 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2723 & ifmt_cadd, { 0x17800c0 }
2725 /* cld$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2727 { 0, 0, 0, 0 },
2728 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2729 & ifmt_cadd, { 0x17c0000 }
2731 /* cldbf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2733 { 0, 0, 0, 0 },
2734 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2735 & ifmt_cldbf, { 0x1800000 }
2737 /* cldhf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2739 { 0, 0, 0, 0 },
2740 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2741 & ifmt_cldbf, { 0x1800040 }
2743 /* cldf$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2745 { 0, 0, 0, 0 },
2746 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2747 & ifmt_cldbf, { 0x1800080 }
2749 /* cldd$pack @($GRi,$GRj),$GRdoublek,$CCi,$cond */
2751 { 0, 0, 0, 0 },
2752 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2753 & ifmt_csmul, { 0x17c0040 }
2755 /* clddf$pack @($GRi,$GRj),$FRdoublek,$CCi,$cond */
2757 { 0, 0, 0, 0 },
2758 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2759 & ifmt_clddf, { 0x18000c0 }
2761 /* cldq$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2763 { 0, 0, 0, 0 },
2764 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2765 & ifmt_cadd, { 0x17c0080 }
2767 /* cldsbu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2769 { 0, 0, 0, 0 },
2770 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2771 & ifmt_cadd, { 0x1840000 }
2773 /* cldubu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2775 { 0, 0, 0, 0 },
2776 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2777 & ifmt_cadd, { 0x1840040 }
2779 /* cldshu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2781 { 0, 0, 0, 0 },
2782 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2783 & ifmt_cadd, { 0x1840080 }
2785 /* clduhu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2787 { 0, 0, 0, 0 },
2788 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2789 & ifmt_cadd, { 0x18400c0 }
2791 /* cldu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2793 { 0, 0, 0, 0 },
2794 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2795 & ifmt_cadd, { 0x1880000 }
2797 /* cldbfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2799 { 0, 0, 0, 0 },
2800 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2801 & ifmt_cldbf, { 0x18c0000 }
2803 /* cldhfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2805 { 0, 0, 0, 0 },
2806 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2807 & ifmt_cldbf, { 0x18c0040 }
2809 /* cldfu$pack @($GRi,$GRj),$FRintk,$CCi,$cond */
2811 { 0, 0, 0, 0 },
2812 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
2813 & ifmt_cldbf, { 0x18c0080 }
2815 /* clddu$pack @($GRi,$GRj),$GRdoublek,$CCi,$cond */
2817 { 0, 0, 0, 0 },
2818 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2819 & ifmt_csmul, { 0x1880040 }
2821 /* clddfu$pack @($GRi,$GRj),$FRdoublek,$CCi,$cond */
2823 { 0, 0, 0, 0 },
2824 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (FRDOUBLEK), ',', OP (CCI), ',', OP (COND), 0 } },
2825 & ifmt_clddf, { 0x18c00c0 }
2827 /* cldqu$pack @($GRi,$GRj),$GRk,$CCi,$cond */
2829 { 0, 0, 0, 0 },
2830 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
2831 & ifmt_cadd, { 0x1880080 }
2833 /* cstb$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2835 { 0, 0, 0, 0 },
2836 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2837 & ifmt_cadd, { 0x1900000 }
2839 /* csth$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2841 { 0, 0, 0, 0 },
2842 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2843 & ifmt_cadd, { 0x1900040 }
2845 /* cst$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2847 { 0, 0, 0, 0 },
2848 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2849 & ifmt_cadd, { 0x1900080 }
2851 /* cstbf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2853 { 0, 0, 0, 0 },
2854 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2855 & ifmt_cldbf, { 0x1980000 }
2857 /* csthf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2859 { 0, 0, 0, 0 },
2860 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2861 & ifmt_cldbf, { 0x1980040 }
2863 /* cstf$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2865 { 0, 0, 0, 0 },
2866 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2867 & ifmt_cldbf, { 0x1980080 }
2869 /* cstd$pack $GRdoublek,@($GRi,$GRj),$CCi,$cond */
2871 { 0, 0, 0, 0 },
2872 { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2873 & ifmt_csmul, { 0x19000c0 }
2875 /* cstdf$pack $FRdoublek,@($GRi,$GRj),$CCi,$cond */
2877 { 0, 0, 0, 0 },
2878 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2879 & ifmt_clddf, { 0x19800c0 }
2881 /* cstq$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2883 { 0, 0, 0, 0 },
2884 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2885 & ifmt_cadd, { 0x1940000 }
2887 /* cstbu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2889 { 0, 0, 0, 0 },
2890 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2891 & ifmt_cadd, { 0x19c0000 }
2893 /* csthu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2895 { 0, 0, 0, 0 },
2896 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2897 & ifmt_cadd, { 0x19c0040 }
2899 /* cstu$pack $GRk,@($GRi,$GRj),$CCi,$cond */
2901 { 0, 0, 0, 0 },
2902 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2903 & ifmt_cadd, { 0x19c0080 }
2905 /* cstbfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2907 { 0, 0, 0, 0 },
2908 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2909 & ifmt_cldbf, { 0x1a00000 }
2911 /* csthfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2913 { 0, 0, 0, 0 },
2914 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2915 & ifmt_cldbf, { 0x1a00040 }
2917 /* cstfu$pack $FRintk,@($GRi,$GRj),$CCi,$cond */
2919 { 0, 0, 0, 0 },
2920 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2921 & ifmt_cldbf, { 0x1a00080 }
2923 /* cstdu$pack $GRdoublek,@($GRi,$GRj),$CCi,$cond */
2925 { 0, 0, 0, 0 },
2926 { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2927 & ifmt_csmul, { 0x19c00c0 }
2929 /* cstdfu$pack $FRdoublek,@($GRi,$GRj),$CCi,$cond */
2931 { 0, 0, 0, 0 },
2932 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
2933 & ifmt_clddf, { 0x1a000c0 }
2935 /* stbi$pack $GRk,@($GRi,$d12) */
2937 { 0, 0, 0, 0 },
2938 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2939 & ifmt_ldsbi, { 0x1400000 }
2941 /* sthi$pack $GRk,@($GRi,$d12) */
2943 { 0, 0, 0, 0 },
2944 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2945 & ifmt_ldsbi, { 0x1440000 }
2947 /* sti$pack $GRk,@($GRi,$d12) */
2949 { 0, 0, 0, 0 },
2950 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2951 & ifmt_ldsbi, { 0x1480000 }
2953 /* stbfi$pack $FRintk,@($GRi,$d12) */
2955 { 0, 0, 0, 0 },
2956 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2957 & ifmt_ldbfi, { 0x1380000 }
2959 /* sthfi$pack $FRintk,@($GRi,$d12) */
2961 { 0, 0, 0, 0 },
2962 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2963 & ifmt_ldbfi, { 0x13c0000 }
2965 /* stfi$pack $FRintk,@($GRi,$d12) */
2967 { 0, 0, 0, 0 },
2968 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2969 & ifmt_ldbfi, { 0x1540000 }
2971 /* stdi$pack $GRdoublek,@($GRi,$d12) */
2973 { 0, 0, 0, 0 },
2974 { { MNEM, OP (PACK), ' ', OP (GRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2975 & ifmt_lddi, { 0x14c0000 }
2977 /* stdfi$pack $FRdoublek,@($GRi,$d12) */
2979 { 0, 0, 0, 0 },
2980 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2981 & ifmt_lddfi, { 0x1580000 }
2983 /* stqi$pack $GRk,@($GRi,$d12) */
2985 { 0, 0, 0, 0 },
2986 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2987 & ifmt_ldsbi, { 0x1500000 }
2989 /* stqfi$pack $FRintk,@($GRi,$d12) */
2991 { 0, 0, 0, 0 },
2992 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', '@', '(', OP (GRI), ',', OP (D12), ')', 0 } },
2993 & ifmt_ldbfi, { 0x15c0000 }
2995 /* swap$pack @($GRi,$GRj),$GRk */
2997 { 0, 0, 0, 0 },
2998 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), 0 } },
2999 & ifmt_slass, { 0xc0140 }
3001 /* swapi$pack @($GRi,$d12),$GRk */
3003 { 0, 0, 0, 0 },
3004 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (D12), ')', ',', OP (GRK), 0 } },
3005 & ifmt_ldsbi, { 0x1340000 }
3007 /* cswap$pack @($GRi,$GRj),$GRk,$CCi,$cond */
3009 { 0, 0, 0, 0 },
3010 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
3011 & ifmt_cadd, { 0x1940080 }
3013 /* movgf$pack $GRj,$FRintk */
3015 { 0, 0, 0, 0 },
3016 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), 0 } },
3017 & ifmt_movgf, { 0xc0540 }
3019 /* movfg$pack $FRintk,$GRj */
3021 { 0, 0, 0, 0 },
3022 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), 0 } },
3023 & ifmt_movgf, { 0xc0340 }
3025 /* movgfd$pack $GRj,$FRintk */
3027 { 0, 0, 0, 0 },
3028 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), 0 } },
3029 & ifmt_movgf, { 0xc0580 }
3031 /* movfgd$pack $FRintk,$GRj */
3033 { 0, 0, 0, 0 },
3034 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), 0 } },
3035 & ifmt_movgf, { 0xc0380 }
3037 /* movgfq$pack $GRj,$FRintk */
3039 { 0, 0, 0, 0 },
3040 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), 0 } },
3041 & ifmt_movgf, { 0xc05c0 }
3043 /* movfgq$pack $FRintk,$GRj */
3045 { 0, 0, 0, 0 },
3046 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), 0 } },
3047 & ifmt_movgf, { 0xc03c0 }
3049 /* cmovgf$pack $GRj,$FRintk,$CCi,$cond */
3051 { 0, 0, 0, 0 },
3052 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
3053 & ifmt_cmovgf, { 0x1a40000 }
3055 /* cmovfg$pack $FRintk,$GRj,$CCi,$cond */
3057 { 0, 0, 0, 0 },
3058 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), ',', OP (CCI), ',', OP (COND), 0 } },
3059 & ifmt_cmovgf, { 0x1a40080 }
3061 /* cmovgfd$pack $GRj,$FRintk,$CCi,$cond */
3063 { 0, 0, 0, 0 },
3064 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
3065 & ifmt_cmovgf, { 0x1a40040 }
3067 /* cmovfgd$pack $FRintk,$GRj,$CCi,$cond */
3069 { 0, 0, 0, 0 },
3070 { { MNEM, OP (PACK), ' ', OP (FRINTK), ',', OP (GRJ), ',', OP (CCI), ',', OP (COND), 0 } },
3071 & ifmt_cmovgf, { 0x1a400c0 }
3073 /* movgs$pack $GRj,$spr */
3075 { 0, 0, 0, 0 },
3076 { { MNEM, OP (PACK), ' ', OP (GRJ), ',', OP (SPR), 0 } },
3077 & ifmt_movgs, { 0xc0180 }
3079 /* movsg$pack $spr,$GRj */
3081 { 0, 0, 0, 0 },
3082 { { MNEM, OP (PACK), ' ', OP (SPR), ',', OP (GRJ), 0 } },
3083 & ifmt_movgs, { 0xc01c0 }
3085 /* bra$pack $hint_taken$label16 */
3087 { 0, 0, 0, 0 },
3088 { { MNEM, OP (PACK), ' ', OP (HINT_TAKEN), OP (LABEL16), 0 } },
3089 & ifmt_bra, { 0x40180000 }
3091 /* bno$pack$hint_not_taken */
3093 { 0, 0, 0, 0 },
3094 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3095 & ifmt_bno, { 0x180000 }
3097 /* beq$pack $ICCi_2,$hint,$label16 */
3099 { 0, 0, 0, 0 },
3100 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3101 & ifmt_beq, { 0x20180000 }
3103 /* bne$pack $ICCi_2,$hint,$label16 */
3105 { 0, 0, 0, 0 },
3106 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3107 & ifmt_beq, { 0x60180000 }
3109 /* ble$pack $ICCi_2,$hint,$label16 */
3111 { 0, 0, 0, 0 },
3112 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3113 & ifmt_beq, { 0x38180000 }
3115 /* bgt$pack $ICCi_2,$hint,$label16 */
3117 { 0, 0, 0, 0 },
3118 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3119 & ifmt_beq, { 0x78180000 }
3121 /* blt$pack $ICCi_2,$hint,$label16 */
3123 { 0, 0, 0, 0 },
3124 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3125 & ifmt_beq, { 0x18180000 }
3127 /* bge$pack $ICCi_2,$hint,$label16 */
3129 { 0, 0, 0, 0 },
3130 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3131 & ifmt_beq, { 0x58180000 }
3133 /* bls$pack $ICCi_2,$hint,$label16 */
3135 { 0, 0, 0, 0 },
3136 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3137 & ifmt_beq, { 0x28180000 }
3139 /* bhi$pack $ICCi_2,$hint,$label16 */
3141 { 0, 0, 0, 0 },
3142 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3143 & ifmt_beq, { 0x68180000 }
3145 /* bc$pack $ICCi_2,$hint,$label16 */
3147 { 0, 0, 0, 0 },
3148 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3149 & ifmt_beq, { 0x8180000 }
3151 /* bnc$pack $ICCi_2,$hint,$label16 */
3153 { 0, 0, 0, 0 },
3154 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3155 & ifmt_beq, { 0x48180000 }
3157 /* bn$pack $ICCi_2,$hint,$label16 */
3159 { 0, 0, 0, 0 },
3160 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3161 & ifmt_beq, { 0x30180000 }
3163 /* bp$pack $ICCi_2,$hint,$label16 */
3165 { 0, 0, 0, 0 },
3166 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3167 & ifmt_beq, { 0x70180000 }
3169 /* bv$pack $ICCi_2,$hint,$label16 */
3171 { 0, 0, 0, 0 },
3172 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3173 & ifmt_beq, { 0x10180000 }
3175 /* bnv$pack $ICCi_2,$hint,$label16 */
3177 { 0, 0, 0, 0 },
3178 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3179 & ifmt_beq, { 0x50180000 }
3181 /* fbra$pack $hint_taken$label16 */
3183 { 0, 0, 0, 0 },
3184 { { MNEM, OP (PACK), ' ', OP (HINT_TAKEN), OP (LABEL16), 0 } },
3185 & ifmt_fbra, { 0x781c0000 }
3187 /* fbno$pack$hint_not_taken */
3189 { 0, 0, 0, 0 },
3190 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3191 & ifmt_fbno, { 0x1c0000 }
3193 /* fbne$pack $FCCi_2,$hint,$label16 */
3195 { 0, 0, 0, 0 },
3196 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3197 & ifmt_fbne, { 0x381c0000 }
3199 /* fbeq$pack $FCCi_2,$hint,$label16 */
3201 { 0, 0, 0, 0 },
3202 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3203 & ifmt_fbne, { 0x401c0000 }
3205 /* fblg$pack $FCCi_2,$hint,$label16 */
3207 { 0, 0, 0, 0 },
3208 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3209 & ifmt_fbne, { 0x301c0000 }
3211 /* fbue$pack $FCCi_2,$hint,$label16 */
3213 { 0, 0, 0, 0 },
3214 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3215 & ifmt_fbne, { 0x481c0000 }
3217 /* fbul$pack $FCCi_2,$hint,$label16 */
3219 { 0, 0, 0, 0 },
3220 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3221 & ifmt_fbne, { 0x281c0000 }
3223 /* fbge$pack $FCCi_2,$hint,$label16 */
3225 { 0, 0, 0, 0 },
3226 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3227 & ifmt_fbne, { 0x501c0000 }
3229 /* fblt$pack $FCCi_2,$hint,$label16 */
3231 { 0, 0, 0, 0 },
3232 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3233 & ifmt_fbne, { 0x201c0000 }
3235 /* fbuge$pack $FCCi_2,$hint,$label16 */
3237 { 0, 0, 0, 0 },
3238 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3239 & ifmt_fbne, { 0x581c0000 }
3241 /* fbug$pack $FCCi_2,$hint,$label16 */
3243 { 0, 0, 0, 0 },
3244 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3245 & ifmt_fbne, { 0x181c0000 }
3247 /* fble$pack $FCCi_2,$hint,$label16 */
3249 { 0, 0, 0, 0 },
3250 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3251 & ifmt_fbne, { 0x601c0000 }
3253 /* fbgt$pack $FCCi_2,$hint,$label16 */
3255 { 0, 0, 0, 0 },
3256 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3257 & ifmt_fbne, { 0x101c0000 }
3259 /* fbule$pack $FCCi_2,$hint,$label16 */
3261 { 0, 0, 0, 0 },
3262 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3263 & ifmt_fbne, { 0x681c0000 }
3265 /* fbu$pack $FCCi_2,$hint,$label16 */
3267 { 0, 0, 0, 0 },
3268 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3269 & ifmt_fbne, { 0x81c0000 }
3271 /* fbo$pack $FCCi_2,$hint,$label16 */
3273 { 0, 0, 0, 0 },
3274 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), ',', OP (LABEL16), 0 } },
3275 & ifmt_fbne, { 0x701c0000 }
3277 /* bctrlr$pack $ccond,$hint */
3279 { 0, 0, 0, 0 },
3280 { { MNEM, OP (PACK), ' ', OP (CCOND), ',', OP (HINT), 0 } },
3281 & ifmt_bctrlr, { 0x382000 }
3283 /* bralr$pack$hint_taken */
3285 { 0, 0, 0, 0 },
3286 { { MNEM, OP (PACK), OP (HINT_TAKEN), 0 } },
3287 & ifmt_bralr, { 0x40384000 }
3289 /* bnolr$pack$hint_not_taken */
3291 { 0, 0, 0, 0 },
3292 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3293 & ifmt_bnolr, { 0x384000 }
3295 /* beqlr$pack $ICCi_2,$hint */
3297 { 0, 0, 0, 0 },
3298 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3299 & ifmt_beqlr, { 0x20384000 }
3301 /* bnelr$pack $ICCi_2,$hint */
3303 { 0, 0, 0, 0 },
3304 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3305 & ifmt_beqlr, { 0x60384000 }
3307 /* blelr$pack $ICCi_2,$hint */
3309 { 0, 0, 0, 0 },
3310 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3311 & ifmt_beqlr, { 0x38384000 }
3313 /* bgtlr$pack $ICCi_2,$hint */
3315 { 0, 0, 0, 0 },
3316 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3317 & ifmt_beqlr, { 0x78384000 }
3319 /* bltlr$pack $ICCi_2,$hint */
3321 { 0, 0, 0, 0 },
3322 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3323 & ifmt_beqlr, { 0x18384000 }
3325 /* bgelr$pack $ICCi_2,$hint */
3327 { 0, 0, 0, 0 },
3328 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3329 & ifmt_beqlr, { 0x58384000 }
3331 /* blslr$pack $ICCi_2,$hint */
3333 { 0, 0, 0, 0 },
3334 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3335 & ifmt_beqlr, { 0x28384000 }
3337 /* bhilr$pack $ICCi_2,$hint */
3339 { 0, 0, 0, 0 },
3340 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3341 & ifmt_beqlr, { 0x68384000 }
3343 /* bclr$pack $ICCi_2,$hint */
3345 { 0, 0, 0, 0 },
3346 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3347 & ifmt_beqlr, { 0x8384000 }
3349 /* bnclr$pack $ICCi_2,$hint */
3351 { 0, 0, 0, 0 },
3352 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3353 & ifmt_beqlr, { 0x48384000 }
3355 /* bnlr$pack $ICCi_2,$hint */
3357 { 0, 0, 0, 0 },
3358 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3359 & ifmt_beqlr, { 0x30384000 }
3361 /* bplr$pack $ICCi_2,$hint */
3363 { 0, 0, 0, 0 },
3364 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3365 & ifmt_beqlr, { 0x70384000 }
3367 /* bvlr$pack $ICCi_2,$hint */
3369 { 0, 0, 0, 0 },
3370 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3371 & ifmt_beqlr, { 0x10384000 }
3373 /* bnvlr$pack $ICCi_2,$hint */
3375 { 0, 0, 0, 0 },
3376 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (HINT), 0 } },
3377 & ifmt_beqlr, { 0x50384000 }
3379 /* fbralr$pack$hint_taken */
3381 { 0, 0, 0, 0 },
3382 { { MNEM, OP (PACK), OP (HINT_TAKEN), 0 } },
3383 & ifmt_fbralr, { 0x7838c000 }
3385 /* fbnolr$pack$hint_not_taken */
3387 { 0, 0, 0, 0 },
3388 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3389 & ifmt_fbnolr, { 0x38c000 }
3391 /* fbeqlr$pack $FCCi_2,$hint */
3393 { 0, 0, 0, 0 },
3394 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3395 & ifmt_fbeqlr, { 0x4038c000 }
3397 /* fbnelr$pack $FCCi_2,$hint */
3399 { 0, 0, 0, 0 },
3400 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3401 & ifmt_fbeqlr, { 0x3838c000 }
3403 /* fblglr$pack $FCCi_2,$hint */
3405 { 0, 0, 0, 0 },
3406 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3407 & ifmt_fbeqlr, { 0x3038c000 }
3409 /* fbuelr$pack $FCCi_2,$hint */
3411 { 0, 0, 0, 0 },
3412 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3413 & ifmt_fbeqlr, { 0x4838c000 }
3415 /* fbullr$pack $FCCi_2,$hint */
3417 { 0, 0, 0, 0 },
3418 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3419 & ifmt_fbeqlr, { 0x2838c000 }
3421 /* fbgelr$pack $FCCi_2,$hint */
3423 { 0, 0, 0, 0 },
3424 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3425 & ifmt_fbeqlr, { 0x5038c000 }
3427 /* fbltlr$pack $FCCi_2,$hint */
3429 { 0, 0, 0, 0 },
3430 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3431 & ifmt_fbeqlr, { 0x2038c000 }
3433 /* fbugelr$pack $FCCi_2,$hint */
3435 { 0, 0, 0, 0 },
3436 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3437 & ifmt_fbeqlr, { 0x5838c000 }
3439 /* fbuglr$pack $FCCi_2,$hint */
3441 { 0, 0, 0, 0 },
3442 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3443 & ifmt_fbeqlr, { 0x1838c000 }
3445 /* fblelr$pack $FCCi_2,$hint */
3447 { 0, 0, 0, 0 },
3448 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3449 & ifmt_fbeqlr, { 0x6038c000 }
3451 /* fbgtlr$pack $FCCi_2,$hint */
3453 { 0, 0, 0, 0 },
3454 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3455 & ifmt_fbeqlr, { 0x1038c000 }
3457 /* fbulelr$pack $FCCi_2,$hint */
3459 { 0, 0, 0, 0 },
3460 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3461 & ifmt_fbeqlr, { 0x6838c000 }
3463 /* fbulr$pack $FCCi_2,$hint */
3465 { 0, 0, 0, 0 },
3466 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3467 & ifmt_fbeqlr, { 0x838c000 }
3469 /* fbolr$pack $FCCi_2,$hint */
3471 { 0, 0, 0, 0 },
3472 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (HINT), 0 } },
3473 & ifmt_fbeqlr, { 0x7038c000 }
3475 /* bcralr$pack $ccond$hint_taken */
3477 { 0, 0, 0, 0 },
3478 { { MNEM, OP (PACK), ' ', OP (CCOND), OP (HINT_TAKEN), 0 } },
3479 & ifmt_bcralr, { 0x40386000 }
3481 /* bcnolr$pack$hint_not_taken */
3483 { 0, 0, 0, 0 },
3484 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3485 & ifmt_bnolr, { 0x386000 }
3487 /* bceqlr$pack $ICCi_2,$ccond,$hint */
3489 { 0, 0, 0, 0 },
3490 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3491 & ifmt_bceqlr, { 0x20386000 }
3493 /* bcnelr$pack $ICCi_2,$ccond,$hint */
3495 { 0, 0, 0, 0 },
3496 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3497 & ifmt_bceqlr, { 0x60386000 }
3499 /* bclelr$pack $ICCi_2,$ccond,$hint */
3501 { 0, 0, 0, 0 },
3502 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3503 & ifmt_bceqlr, { 0x38386000 }
3505 /* bcgtlr$pack $ICCi_2,$ccond,$hint */
3507 { 0, 0, 0, 0 },
3508 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3509 & ifmt_bceqlr, { 0x78386000 }
3511 /* bcltlr$pack $ICCi_2,$ccond,$hint */
3513 { 0, 0, 0, 0 },
3514 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3515 & ifmt_bceqlr, { 0x18386000 }
3517 /* bcgelr$pack $ICCi_2,$ccond,$hint */
3519 { 0, 0, 0, 0 },
3520 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3521 & ifmt_bceqlr, { 0x58386000 }
3523 /* bclslr$pack $ICCi_2,$ccond,$hint */
3525 { 0, 0, 0, 0 },
3526 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3527 & ifmt_bceqlr, { 0x28386000 }
3529 /* bchilr$pack $ICCi_2,$ccond,$hint */
3531 { 0, 0, 0, 0 },
3532 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3533 & ifmt_bceqlr, { 0x68386000 }
3535 /* bcclr$pack $ICCi_2,$ccond,$hint */
3537 { 0, 0, 0, 0 },
3538 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3539 & ifmt_bceqlr, { 0x8386000 }
3541 /* bcnclr$pack $ICCi_2,$ccond,$hint */
3543 { 0, 0, 0, 0 },
3544 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3545 & ifmt_bceqlr, { 0x48386000 }
3547 /* bcnlr$pack $ICCi_2,$ccond,$hint */
3549 { 0, 0, 0, 0 },
3550 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3551 & ifmt_bceqlr, { 0x30386000 }
3553 /* bcplr$pack $ICCi_2,$ccond,$hint */
3555 { 0, 0, 0, 0 },
3556 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3557 & ifmt_bceqlr, { 0x70386000 }
3559 /* bcvlr$pack $ICCi_2,$ccond,$hint */
3561 { 0, 0, 0, 0 },
3562 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3563 & ifmt_bceqlr, { 0x10386000 }
3565 /* bcnvlr$pack $ICCi_2,$ccond,$hint */
3567 { 0, 0, 0, 0 },
3568 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3569 & ifmt_bceqlr, { 0x50386000 }
3571 /* fcbralr$pack $ccond$hint_taken */
3573 { 0, 0, 0, 0 },
3574 { { MNEM, OP (PACK), ' ', OP (CCOND), OP (HINT_TAKEN), 0 } },
3575 & ifmt_fcbralr, { 0x7838e000 }
3577 /* fcbnolr$pack$hint_not_taken */
3579 { 0, 0, 0, 0 },
3580 { { MNEM, OP (PACK), OP (HINT_NOT_TAKEN), 0 } },
3581 & ifmt_fbnolr, { 0x38e000 }
3583 /* fcbeqlr$pack $FCCi_2,$ccond,$hint */
3585 { 0, 0, 0, 0 },
3586 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3587 & ifmt_fcbeqlr, { 0x4038e000 }
3589 /* fcbnelr$pack $FCCi_2,$ccond,$hint */
3591 { 0, 0, 0, 0 },
3592 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3593 & ifmt_fcbeqlr, { 0x3838e000 }
3595 /* fcblglr$pack $FCCi_2,$ccond,$hint */
3597 { 0, 0, 0, 0 },
3598 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3599 & ifmt_fcbeqlr, { 0x3038e000 }
3601 /* fcbuelr$pack $FCCi_2,$ccond,$hint */
3603 { 0, 0, 0, 0 },
3604 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3605 & ifmt_fcbeqlr, { 0x4838e000 }
3607 /* fcbullr$pack $FCCi_2,$ccond,$hint */
3609 { 0, 0, 0, 0 },
3610 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3611 & ifmt_fcbeqlr, { 0x2838e000 }
3613 /* fcbgelr$pack $FCCi_2,$ccond,$hint */
3615 { 0, 0, 0, 0 },
3616 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3617 & ifmt_fcbeqlr, { 0x5038e000 }
3619 /* fcbltlr$pack $FCCi_2,$ccond,$hint */
3621 { 0, 0, 0, 0 },
3622 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3623 & ifmt_fcbeqlr, { 0x2038e000 }
3625 /* fcbugelr$pack $FCCi_2,$ccond,$hint */
3627 { 0, 0, 0, 0 },
3628 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3629 & ifmt_fcbeqlr, { 0x5838e000 }
3631 /* fcbuglr$pack $FCCi_2,$ccond,$hint */
3633 { 0, 0, 0, 0 },
3634 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3635 & ifmt_fcbeqlr, { 0x1838e000 }
3637 /* fcblelr$pack $FCCi_2,$ccond,$hint */
3639 { 0, 0, 0, 0 },
3640 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3641 & ifmt_fcbeqlr, { 0x6038e000 }
3643 /* fcbgtlr$pack $FCCi_2,$ccond,$hint */
3645 { 0, 0, 0, 0 },
3646 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3647 & ifmt_fcbeqlr, { 0x1038e000 }
3649 /* fcbulelr$pack $FCCi_2,$ccond,$hint */
3651 { 0, 0, 0, 0 },
3652 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3653 & ifmt_fcbeqlr, { 0x6838e000 }
3655 /* fcbulr$pack $FCCi_2,$ccond,$hint */
3657 { 0, 0, 0, 0 },
3658 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3659 & ifmt_fcbeqlr, { 0x838e000 }
3661 /* fcbolr$pack $FCCi_2,$ccond,$hint */
3663 { 0, 0, 0, 0 },
3664 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (CCOND), ',', OP (HINT), 0 } },
3665 & ifmt_fcbeqlr, { 0x7038e000 }
3667 /* jmpl$pack @($GRi,$GRj) */
3669 { 0, 0, 0, 0 },
3670 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
3671 & ifmt_jmpl, { 0x300000 }
3673 /* calll$pack $callann($GRi,$GRj) */
3675 { 0, 0, 0, 0 },
3676 { { MNEM, OP (PACK), ' ', OP (CALLANN), '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
3677 & ifmt_calll, { 0x2300000 }
3679 /* jmpil$pack @($GRi,$s12) */
3681 { 0, 0, 0, 0 },
3682 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (S12), ')', 0 } },
3683 & ifmt_jmpil, { 0x340000 }
3685 /* callil$pack @($GRi,$s12) */
3687 { 0, 0, 0, 0 },
3688 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (S12), ')', 0 } },
3689 & ifmt_callil, { 0x2340000 }
3691 /* call$pack $label24 */
3693 { 0, 0, 0, 0 },
3694 { { MNEM, OP (PACK), ' ', OP (LABEL24), 0 } },
3695 & ifmt_call, { 0x3c0000 }
3697 /* rett$pack $debug */
3699 { 0, 0, 0, 0 },
3700 { { MNEM, OP (PACK), ' ', OP (DEBUG), 0 } },
3701 & ifmt_rett, { 0x140000 }
3703 /* rei$pack $eir */
3705 { 0, 0, 0, 0 },
3706 { { MNEM, OP (PACK), ' ', OP (EIR), 0 } },
3707 & ifmt_rei, { 0xdc0000 }
3709 /* tra$pack $GRi,$GRj */
3711 { 0, 0, 0, 0 },
3712 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
3713 & ifmt_tra, { 0x40100000 }
3715 /* tno$pack */
3717 { 0, 0, 0, 0 },
3718 { { MNEM, OP (PACK), 0 } },
3719 & ifmt_tno, { 0x100000 }
3721 /* teq$pack $ICCi_2,$GRi,$GRj */
3723 { 0, 0, 0, 0 },
3724 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3725 & ifmt_teq, { 0x20100000 }
3727 /* tne$pack $ICCi_2,$GRi,$GRj */
3729 { 0, 0, 0, 0 },
3730 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3731 & ifmt_teq, { 0x60100000 }
3733 /* tle$pack $ICCi_2,$GRi,$GRj */
3735 { 0, 0, 0, 0 },
3736 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3737 & ifmt_teq, { 0x38100000 }
3739 /* tgt$pack $ICCi_2,$GRi,$GRj */
3741 { 0, 0, 0, 0 },
3742 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3743 & ifmt_teq, { 0x78100000 }
3745 /* tlt$pack $ICCi_2,$GRi,$GRj */
3747 { 0, 0, 0, 0 },
3748 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3749 & ifmt_teq, { 0x18100000 }
3751 /* tge$pack $ICCi_2,$GRi,$GRj */
3753 { 0, 0, 0, 0 },
3754 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3755 & ifmt_teq, { 0x58100000 }
3757 /* tls$pack $ICCi_2,$GRi,$GRj */
3759 { 0, 0, 0, 0 },
3760 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3761 & ifmt_teq, { 0x28100000 }
3763 /* thi$pack $ICCi_2,$GRi,$GRj */
3765 { 0, 0, 0, 0 },
3766 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3767 & ifmt_teq, { 0x68100000 }
3769 /* tc$pack $ICCi_2,$GRi,$GRj */
3771 { 0, 0, 0, 0 },
3772 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3773 & ifmt_teq, { 0x8100000 }
3775 /* tnc$pack $ICCi_2,$GRi,$GRj */
3777 { 0, 0, 0, 0 },
3778 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3779 & ifmt_teq, { 0x48100000 }
3781 /* tn$pack $ICCi_2,$GRi,$GRj */
3783 { 0, 0, 0, 0 },
3784 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3785 & ifmt_teq, { 0x30100000 }
3787 /* tp$pack $ICCi_2,$GRi,$GRj */
3789 { 0, 0, 0, 0 },
3790 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3791 & ifmt_teq, { 0x70100000 }
3793 /* tv$pack $ICCi_2,$GRi,$GRj */
3795 { 0, 0, 0, 0 },
3796 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3797 & ifmt_teq, { 0x10100000 }
3799 /* tnv$pack $ICCi_2,$GRi,$GRj */
3801 { 0, 0, 0, 0 },
3802 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3803 & ifmt_teq, { 0x50100000 }
3805 /* ftra$pack $GRi,$GRj */
3807 { 0, 0, 0, 0 },
3808 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), 0 } },
3809 & ifmt_ftra, { 0x78100040 }
3811 /* ftno$pack */
3813 { 0, 0, 0, 0 },
3814 { { MNEM, OP (PACK), 0 } },
3815 & ifmt_ftno, { 0x100040 }
3817 /* ftne$pack $FCCi_2,$GRi,$GRj */
3819 { 0, 0, 0, 0 },
3820 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3821 & ifmt_ftne, { 0x38100040 }
3823 /* fteq$pack $FCCi_2,$GRi,$GRj */
3825 { 0, 0, 0, 0 },
3826 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3827 & ifmt_ftne, { 0x40100040 }
3829 /* ftlg$pack $FCCi_2,$GRi,$GRj */
3831 { 0, 0, 0, 0 },
3832 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3833 & ifmt_ftne, { 0x30100040 }
3835 /* ftue$pack $FCCi_2,$GRi,$GRj */
3837 { 0, 0, 0, 0 },
3838 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3839 & ifmt_ftne, { 0x48100040 }
3841 /* ftul$pack $FCCi_2,$GRi,$GRj */
3843 { 0, 0, 0, 0 },
3844 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3845 & ifmt_ftne, { 0x28100040 }
3847 /* ftge$pack $FCCi_2,$GRi,$GRj */
3849 { 0, 0, 0, 0 },
3850 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3851 & ifmt_ftne, { 0x50100040 }
3853 /* ftlt$pack $FCCi_2,$GRi,$GRj */
3855 { 0, 0, 0, 0 },
3856 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3857 & ifmt_ftne, { 0x20100040 }
3859 /* ftuge$pack $FCCi_2,$GRi,$GRj */
3861 { 0, 0, 0, 0 },
3862 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3863 & ifmt_ftne, { 0x58100040 }
3865 /* ftug$pack $FCCi_2,$GRi,$GRj */
3867 { 0, 0, 0, 0 },
3868 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3869 & ifmt_ftne, { 0x18100040 }
3871 /* ftle$pack $FCCi_2,$GRi,$GRj */
3873 { 0, 0, 0, 0 },
3874 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3875 & ifmt_ftne, { 0x60100040 }
3877 /* ftgt$pack $FCCi_2,$GRi,$GRj */
3879 { 0, 0, 0, 0 },
3880 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3881 & ifmt_ftne, { 0x10100040 }
3883 /* ftule$pack $FCCi_2,$GRi,$GRj */
3885 { 0, 0, 0, 0 },
3886 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3887 & ifmt_ftne, { 0x68100040 }
3889 /* ftu$pack $FCCi_2,$GRi,$GRj */
3891 { 0, 0, 0, 0 },
3892 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3893 & ifmt_ftne, { 0x8100040 }
3895 /* fto$pack $FCCi_2,$GRi,$GRj */
3897 { 0, 0, 0, 0 },
3898 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (GRJ), 0 } },
3899 & ifmt_ftne, { 0x70100040 }
3901 /* tira$pack $GRi,$s12 */
3903 { 0, 0, 0, 0 },
3904 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), 0 } },
3905 & ifmt_tira, { 0x40700000 }
3907 /* tino$pack */
3909 { 0, 0, 0, 0 },
3910 { { MNEM, OP (PACK), 0 } },
3911 & ifmt_tino, { 0x700000 }
3913 /* tieq$pack $ICCi_2,$GRi,$s12 */
3915 { 0, 0, 0, 0 },
3916 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3917 & ifmt_tieq, { 0x20700000 }
3919 /* tine$pack $ICCi_2,$GRi,$s12 */
3921 { 0, 0, 0, 0 },
3922 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3923 & ifmt_tieq, { 0x60700000 }
3925 /* tile$pack $ICCi_2,$GRi,$s12 */
3927 { 0, 0, 0, 0 },
3928 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3929 & ifmt_tieq, { 0x38700000 }
3931 /* tigt$pack $ICCi_2,$GRi,$s12 */
3933 { 0, 0, 0, 0 },
3934 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3935 & ifmt_tieq, { 0x78700000 }
3937 /* tilt$pack $ICCi_2,$GRi,$s12 */
3939 { 0, 0, 0, 0 },
3940 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3941 & ifmt_tieq, { 0x18700000 }
3943 /* tige$pack $ICCi_2,$GRi,$s12 */
3945 { 0, 0, 0, 0 },
3946 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3947 & ifmt_tieq, { 0x58700000 }
3949 /* tils$pack $ICCi_2,$GRi,$s12 */
3951 { 0, 0, 0, 0 },
3952 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3953 & ifmt_tieq, { 0x28700000 }
3955 /* tihi$pack $ICCi_2,$GRi,$s12 */
3957 { 0, 0, 0, 0 },
3958 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3959 & ifmt_tieq, { 0x68700000 }
3961 /* tic$pack $ICCi_2,$GRi,$s12 */
3963 { 0, 0, 0, 0 },
3964 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3965 & ifmt_tieq, { 0x8700000 }
3967 /* tinc$pack $ICCi_2,$GRi,$s12 */
3969 { 0, 0, 0, 0 },
3970 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3971 & ifmt_tieq, { 0x48700000 }
3973 /* tin$pack $ICCi_2,$GRi,$s12 */
3975 { 0, 0, 0, 0 },
3976 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3977 & ifmt_tieq, { 0x30700000 }
3979 /* tip$pack $ICCi_2,$GRi,$s12 */
3981 { 0, 0, 0, 0 },
3982 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3983 & ifmt_tieq, { 0x70700000 }
3985 /* tiv$pack $ICCi_2,$GRi,$s12 */
3987 { 0, 0, 0, 0 },
3988 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3989 & ifmt_tieq, { 0x10700000 }
3991 /* tinv$pack $ICCi_2,$GRi,$s12 */
3993 { 0, 0, 0, 0 },
3994 { { MNEM, OP (PACK), ' ', OP (ICCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
3995 & ifmt_tieq, { 0x50700000 }
3997 /* ftira$pack $GRi,$s12 */
3999 { 0, 0, 0, 0 },
4000 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S12), 0 } },
4001 & ifmt_ftira, { 0x78740000 }
4003 /* ftino$pack */
4005 { 0, 0, 0, 0 },
4006 { { MNEM, OP (PACK), 0 } },
4007 & ifmt_ftino, { 0x740000 }
4009 /* ftine$pack $FCCi_2,$GRi,$s12 */
4011 { 0, 0, 0, 0 },
4012 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4013 & ifmt_ftine, { 0x38740000 }
4015 /* ftieq$pack $FCCi_2,$GRi,$s12 */
4017 { 0, 0, 0, 0 },
4018 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4019 & ifmt_ftine, { 0x40740000 }
4021 /* ftilg$pack $FCCi_2,$GRi,$s12 */
4023 { 0, 0, 0, 0 },
4024 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4025 & ifmt_ftine, { 0x30740000 }
4027 /* ftiue$pack $FCCi_2,$GRi,$s12 */
4029 { 0, 0, 0, 0 },
4030 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4031 & ifmt_ftine, { 0x48740000 }
4033 /* ftiul$pack $FCCi_2,$GRi,$s12 */
4035 { 0, 0, 0, 0 },
4036 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4037 & ifmt_ftine, { 0x28740000 }
4039 /* ftige$pack $FCCi_2,$GRi,$s12 */
4041 { 0, 0, 0, 0 },
4042 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4043 & ifmt_ftine, { 0x50740000 }
4045 /* ftilt$pack $FCCi_2,$GRi,$s12 */
4047 { 0, 0, 0, 0 },
4048 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4049 & ifmt_ftine, { 0x20740000 }
4051 /* ftiuge$pack $FCCi_2,$GRi,$s12 */
4053 { 0, 0, 0, 0 },
4054 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4055 & ifmt_ftine, { 0x58740000 }
4057 /* ftiug$pack $FCCi_2,$GRi,$s12 */
4059 { 0, 0, 0, 0 },
4060 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4061 & ifmt_ftine, { 0x18740000 }
4063 /* ftile$pack $FCCi_2,$GRi,$s12 */
4065 { 0, 0, 0, 0 },
4066 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4067 & ifmt_ftine, { 0x60740000 }
4069 /* ftigt$pack $FCCi_2,$GRi,$s12 */
4071 { 0, 0, 0, 0 },
4072 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4073 & ifmt_ftine, { 0x10740000 }
4075 /* ftiule$pack $FCCi_2,$GRi,$s12 */
4077 { 0, 0, 0, 0 },
4078 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4079 & ifmt_ftine, { 0x68740000 }
4081 /* ftiu$pack $FCCi_2,$GRi,$s12 */
4083 { 0, 0, 0, 0 },
4084 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4085 & ifmt_ftine, { 0x8740000 }
4087 /* ftio$pack $FCCi_2,$GRi,$s12 */
4089 { 0, 0, 0, 0 },
4090 { { MNEM, OP (PACK), ' ', OP (FCCI_2), ',', OP (GRI), ',', OP (S12), 0 } },
4091 & ifmt_ftine, { 0x70740000 }
4093 /* break$pack */
4095 { 0, 0, 0, 0 },
4096 { { MNEM, OP (PACK), 0 } },
4097 & ifmt_break, { 0x1000c0 }
4099 /* mtrap$pack */
4101 { 0, 0, 0, 0 },
4102 { { MNEM, OP (PACK), 0 } },
4103 & ifmt_break, { 0x100080 }
4105 /* andcr$pack $CRi,$CRj,$CRk */
4107 { 0, 0, 0, 0 },
4108 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4109 & ifmt_andcr, { 0x280200 }
4111 /* orcr$pack $CRi,$CRj,$CRk */
4113 { 0, 0, 0, 0 },
4114 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4115 & ifmt_andcr, { 0x280240 }
4117 /* xorcr$pack $CRi,$CRj,$CRk */
4119 { 0, 0, 0, 0 },
4120 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4121 & ifmt_andcr, { 0x280280 }
4123 /* nandcr$pack $CRi,$CRj,$CRk */
4125 { 0, 0, 0, 0 },
4126 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4127 & ifmt_andcr, { 0x280300 }
4129 /* norcr$pack $CRi,$CRj,$CRk */
4131 { 0, 0, 0, 0 },
4132 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4133 & ifmt_andcr, { 0x280340 }
4135 /* andncr$pack $CRi,$CRj,$CRk */
4137 { 0, 0, 0, 0 },
4138 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4139 & ifmt_andcr, { 0x280400 }
4141 /* orncr$pack $CRi,$CRj,$CRk */
4143 { 0, 0, 0, 0 },
4144 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4145 & ifmt_andcr, { 0x280440 }
4147 /* nandncr$pack $CRi,$CRj,$CRk */
4149 { 0, 0, 0, 0 },
4150 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4151 & ifmt_andcr, { 0x280500 }
4153 /* norncr$pack $CRi,$CRj,$CRk */
4155 { 0, 0, 0, 0 },
4156 { { MNEM, OP (PACK), ' ', OP (CRI), ',', OP (CRJ), ',', OP (CRK), 0 } },
4157 & ifmt_andcr, { 0x280540 }
4159 /* notcr$pack $CRj,$CRk */
4161 { 0, 0, 0, 0 },
4162 { { MNEM, OP (PACK), ' ', OP (CRJ), ',', OP (CRK), 0 } },
4163 & ifmt_notcr, { 0x2802c0 }
4165 /* ckra$pack $CRj_int */
4167 { 0, 0, 0, 0 },
4168 { { MNEM, OP (PACK), ' ', OP (CRJ_INT), 0 } },
4169 & ifmt_ckra, { 0x40200000 }
4171 /* ckno$pack $CRj_int */
4173 { 0, 0, 0, 0 },
4174 { { MNEM, OP (PACK), ' ', OP (CRJ_INT), 0 } },
4175 & ifmt_ckra, { 0x200000 }
4177 /* ckeq$pack $ICCi_3,$CRj_int */
4179 { 0, 0, 0, 0 },
4180 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4181 & ifmt_ckeq, { 0x20200000 }
4183 /* ckne$pack $ICCi_3,$CRj_int */
4185 { 0, 0, 0, 0 },
4186 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4187 & ifmt_ckeq, { 0x60200000 }
4189 /* ckle$pack $ICCi_3,$CRj_int */
4191 { 0, 0, 0, 0 },
4192 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4193 & ifmt_ckeq, { 0x38200000 }
4195 /* ckgt$pack $ICCi_3,$CRj_int */
4197 { 0, 0, 0, 0 },
4198 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4199 & ifmt_ckeq, { 0x78200000 }
4201 /* cklt$pack $ICCi_3,$CRj_int */
4203 { 0, 0, 0, 0 },
4204 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4205 & ifmt_ckeq, { 0x18200000 }
4207 /* ckge$pack $ICCi_3,$CRj_int */
4209 { 0, 0, 0, 0 },
4210 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4211 & ifmt_ckeq, { 0x58200000 }
4213 /* ckls$pack $ICCi_3,$CRj_int */
4215 { 0, 0, 0, 0 },
4216 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4217 & ifmt_ckeq, { 0x28200000 }
4219 /* ckhi$pack $ICCi_3,$CRj_int */
4221 { 0, 0, 0, 0 },
4222 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4223 & ifmt_ckeq, { 0x68200000 }
4225 /* ckc$pack $ICCi_3,$CRj_int */
4227 { 0, 0, 0, 0 },
4228 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4229 & ifmt_ckeq, { 0x8200000 }
4231 /* cknc$pack $ICCi_3,$CRj_int */
4233 { 0, 0, 0, 0 },
4234 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4235 & ifmt_ckeq, { 0x48200000 }
4237 /* ckn$pack $ICCi_3,$CRj_int */
4239 { 0, 0, 0, 0 },
4240 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4241 & ifmt_ckeq, { 0x30200000 }
4243 /* ckp$pack $ICCi_3,$CRj_int */
4245 { 0, 0, 0, 0 },
4246 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4247 & ifmt_ckeq, { 0x70200000 }
4249 /* ckv$pack $ICCi_3,$CRj_int */
4251 { 0, 0, 0, 0 },
4252 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4253 & ifmt_ckeq, { 0x10200000 }
4255 /* cknv$pack $ICCi_3,$CRj_int */
4257 { 0, 0, 0, 0 },
4258 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), 0 } },
4259 & ifmt_ckeq, { 0x50200000 }
4261 /* fckra$pack $CRj_float */
4263 { 0, 0, 0, 0 },
4264 { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), 0 } },
4265 & ifmt_fckra, { 0x78240000 }
4267 /* fckno$pack $CRj_float */
4269 { 0, 0, 0, 0 },
4270 { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), 0 } },
4271 & ifmt_fckra, { 0x240000 }
4273 /* fckne$pack $FCCi_3,$CRj_float */
4275 { 0, 0, 0, 0 },
4276 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4277 & ifmt_fckra, { 0x38240000 }
4279 /* fckeq$pack $FCCi_3,$CRj_float */
4281 { 0, 0, 0, 0 },
4282 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4283 & ifmt_fckra, { 0x40240000 }
4285 /* fcklg$pack $FCCi_3,$CRj_float */
4287 { 0, 0, 0, 0 },
4288 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4289 & ifmt_fckra, { 0x30240000 }
4291 /* fckue$pack $FCCi_3,$CRj_float */
4293 { 0, 0, 0, 0 },
4294 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4295 & ifmt_fckra, { 0x48240000 }
4297 /* fckul$pack $FCCi_3,$CRj_float */
4299 { 0, 0, 0, 0 },
4300 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4301 & ifmt_fckra, { 0x28240000 }
4303 /* fckge$pack $FCCi_3,$CRj_float */
4305 { 0, 0, 0, 0 },
4306 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4307 & ifmt_fckra, { 0x50240000 }
4309 /* fcklt$pack $FCCi_3,$CRj_float */
4311 { 0, 0, 0, 0 },
4312 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4313 & ifmt_fckra, { 0x20240000 }
4315 /* fckuge$pack $FCCi_3,$CRj_float */
4317 { 0, 0, 0, 0 },
4318 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4319 & ifmt_fckra, { 0x58240000 }
4321 /* fckug$pack $FCCi_3,$CRj_float */
4323 { 0, 0, 0, 0 },
4324 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4325 & ifmt_fckra, { 0x18240000 }
4327 /* fckle$pack $FCCi_3,$CRj_float */
4329 { 0, 0, 0, 0 },
4330 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4331 & ifmt_fckra, { 0x60240000 }
4333 /* fckgt$pack $FCCi_3,$CRj_float */
4335 { 0, 0, 0, 0 },
4336 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4337 & ifmt_fckra, { 0x10240000 }
4339 /* fckule$pack $FCCi_3,$CRj_float */
4341 { 0, 0, 0, 0 },
4342 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4343 & ifmt_fckra, { 0x68240000 }
4345 /* fcku$pack $FCCi_3,$CRj_float */
4347 { 0, 0, 0, 0 },
4348 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4349 & ifmt_fckra, { 0x8240000 }
4351 /* fcko$pack $FCCi_3,$CRj_float */
4353 { 0, 0, 0, 0 },
4354 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), 0 } },
4355 & ifmt_fckra, { 0x70240000 }
4357 /* cckra$pack $CRj_int,$CCi,$cond */
4359 { 0, 0, 0, 0 },
4360 { { MNEM, OP (PACK), ' ', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4361 & ifmt_cckra, { 0x41a80000 }
4363 /* cckno$pack $CRj_int,$CCi,$cond */
4365 { 0, 0, 0, 0 },
4366 { { MNEM, OP (PACK), ' ', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4367 & ifmt_cckra, { 0x1a80000 }
4369 /* cckeq$pack $ICCi_3,$CRj_int,$CCi,$cond */
4371 { 0, 0, 0, 0 },
4372 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4373 & ifmt_cckeq, { 0x21a80000 }
4375 /* cckne$pack $ICCi_3,$CRj_int,$CCi,$cond */
4377 { 0, 0, 0, 0 },
4378 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4379 & ifmt_cckeq, { 0x61a80000 }
4381 /* cckle$pack $ICCi_3,$CRj_int,$CCi,$cond */
4383 { 0, 0, 0, 0 },
4384 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4385 & ifmt_cckeq, { 0x39a80000 }
4387 /* cckgt$pack $ICCi_3,$CRj_int,$CCi,$cond */
4389 { 0, 0, 0, 0 },
4390 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4391 & ifmt_cckeq, { 0x79a80000 }
4393 /* ccklt$pack $ICCi_3,$CRj_int,$CCi,$cond */
4395 { 0, 0, 0, 0 },
4396 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4397 & ifmt_cckeq, { 0x19a80000 }
4399 /* cckge$pack $ICCi_3,$CRj_int,$CCi,$cond */
4401 { 0, 0, 0, 0 },
4402 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4403 & ifmt_cckeq, { 0x59a80000 }
4405 /* cckls$pack $ICCi_3,$CRj_int,$CCi,$cond */
4407 { 0, 0, 0, 0 },
4408 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4409 & ifmt_cckeq, { 0x29a80000 }
4411 /* cckhi$pack $ICCi_3,$CRj_int,$CCi,$cond */
4413 { 0, 0, 0, 0 },
4414 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4415 & ifmt_cckeq, { 0x69a80000 }
4417 /* cckc$pack $ICCi_3,$CRj_int,$CCi,$cond */
4419 { 0, 0, 0, 0 },
4420 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4421 & ifmt_cckeq, { 0x9a80000 }
4423 /* ccknc$pack $ICCi_3,$CRj_int,$CCi,$cond */
4425 { 0, 0, 0, 0 },
4426 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4427 & ifmt_cckeq, { 0x49a80000 }
4429 /* cckn$pack $ICCi_3,$CRj_int,$CCi,$cond */
4431 { 0, 0, 0, 0 },
4432 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4433 & ifmt_cckeq, { 0x31a80000 }
4435 /* cckp$pack $ICCi_3,$CRj_int,$CCi,$cond */
4437 { 0, 0, 0, 0 },
4438 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4439 & ifmt_cckeq, { 0x71a80000 }
4441 /* cckv$pack $ICCi_3,$CRj_int,$CCi,$cond */
4443 { 0, 0, 0, 0 },
4444 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4445 & ifmt_cckeq, { 0x11a80000 }
4447 /* ccknv$pack $ICCi_3,$CRj_int,$CCi,$cond */
4449 { 0, 0, 0, 0 },
4450 { { MNEM, OP (PACK), ' ', OP (ICCI_3), ',', OP (CRJ_INT), ',', OP (CCI), ',', OP (COND), 0 } },
4451 & ifmt_cckeq, { 0x51a80000 }
4453 /* cfckra$pack $CRj_float,$CCi,$cond */
4455 { 0, 0, 0, 0 },
4456 { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4457 & ifmt_cfckra, { 0x79a80040 }
4459 /* cfckno$pack $CRj_float,$CCi,$cond */
4461 { 0, 0, 0, 0 },
4462 { { MNEM, OP (PACK), ' ', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4463 & ifmt_cfckra, { 0x1a80040 }
4465 /* cfckne$pack $FCCi_3,$CRj_float,$CCi,$cond */
4467 { 0, 0, 0, 0 },
4468 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4469 & ifmt_cfckne, { 0x39a80040 }
4471 /* cfckeq$pack $FCCi_3,$CRj_float,$CCi,$cond */
4473 { 0, 0, 0, 0 },
4474 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4475 & ifmt_cfckne, { 0x41a80040 }
4477 /* cfcklg$pack $FCCi_3,$CRj_float,$CCi,$cond */
4479 { 0, 0, 0, 0 },
4480 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4481 & ifmt_cfckne, { 0x31a80040 }
4483 /* cfckue$pack $FCCi_3,$CRj_float,$CCi,$cond */
4485 { 0, 0, 0, 0 },
4486 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4487 & ifmt_cfckne, { 0x49a80040 }
4489 /* cfckul$pack $FCCi_3,$CRj_float,$CCi,$cond */
4491 { 0, 0, 0, 0 },
4492 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4493 & ifmt_cfckne, { 0x29a80040 }
4495 /* cfckge$pack $FCCi_3,$CRj_float,$CCi,$cond */
4497 { 0, 0, 0, 0 },
4498 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4499 & ifmt_cfckne, { 0x51a80040 }
4501 /* cfcklt$pack $FCCi_3,$CRj_float,$CCi,$cond */
4503 { 0, 0, 0, 0 },
4504 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4505 & ifmt_cfckne, { 0x21a80040 }
4507 /* cfckuge$pack $FCCi_3,$CRj_float,$CCi,$cond */
4509 { 0, 0, 0, 0 },
4510 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4511 & ifmt_cfckne, { 0x59a80040 }
4513 /* cfckug$pack $FCCi_3,$CRj_float,$CCi,$cond */
4515 { 0, 0, 0, 0 },
4516 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4517 & ifmt_cfckne, { 0x19a80040 }
4519 /* cfckle$pack $FCCi_3,$CRj_float,$CCi,$cond */
4521 { 0, 0, 0, 0 },
4522 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4523 & ifmt_cfckne, { 0x61a80040 }
4525 /* cfckgt$pack $FCCi_3,$CRj_float,$CCi,$cond */
4527 { 0, 0, 0, 0 },
4528 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4529 & ifmt_cfckne, { 0x11a80040 }
4531 /* cfckule$pack $FCCi_3,$CRj_float,$CCi,$cond */
4533 { 0, 0, 0, 0 },
4534 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4535 & ifmt_cfckne, { 0x69a80040 }
4537 /* cfcku$pack $FCCi_3,$CRj_float,$CCi,$cond */
4539 { 0, 0, 0, 0 },
4540 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4541 & ifmt_cfckne, { 0x9a80040 }
4543 /* cfcko$pack $FCCi_3,$CRj_float,$CCi,$cond */
4545 { 0, 0, 0, 0 },
4546 { { MNEM, OP (PACK), ' ', OP (FCCI_3), ',', OP (CRJ_FLOAT), ',', OP (CCI), ',', OP (COND), 0 } },
4547 & ifmt_cfckne, { 0x71a80040 }
4549 /* cjmpl$pack @($GRi,$GRj),$CCi,$cond */
4551 { 0, 0, 0, 0 },
4552 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
4553 & ifmt_cjmpl, { 0x1a80080 }
4555 /* ccalll$pack @($GRi,$GRj),$CCi,$cond */
4557 { 0, 0, 0, 0 },
4558 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (CCI), ',', OP (COND), 0 } },
4559 & ifmt_ccalll, { 0x3a80080 }
4561 /* ici$pack @($GRi,$GRj) */
4563 { 0, 0, 0, 0 },
4564 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4565 & ifmt_smu, { 0xc0e00 }
4567 /* dci$pack @($GRi,$GRj) */
4569 { 0, 0, 0, 0 },
4570 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4571 & ifmt_smu, { 0xc0f00 }
4573 /* icei$pack @($GRi,$GRj),$ae */
4575 { 0, 0, 0, 0 },
4576 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (AE), 0 } },
4577 & ifmt_icei, { 0xc0e40 }
4579 /* dcei$pack @($GRi,$GRj),$ae */
4581 { 0, 0, 0, 0 },
4582 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (AE), 0 } },
4583 & ifmt_icei, { 0xc0e80 }
4585 /* dcf$pack @($GRi,$GRj) */
4587 { 0, 0, 0, 0 },
4588 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4589 & ifmt_smu, { 0xc0f40 }
4591 /* dcef$pack @($GRi,$GRj),$ae */
4593 { 0, 0, 0, 0 },
4594 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', ',', OP (AE), 0 } },
4595 & ifmt_icei, { 0xc0ec0 }
4597 /* witlb$pack $GRk,@($GRi,$GRj) */
4599 { 0, 0, 0, 0 },
4600 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4601 & ifmt_slass, { 0xc0c80 }
4603 /* wdtlb$pack $GRk,@($GRi,$GRj) */
4605 { 0, 0, 0, 0 },
4606 { { MNEM, OP (PACK), ' ', OP (GRK), ',', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4607 & ifmt_slass, { 0xc0d80 }
4609 /* itlbi$pack @($GRi,$GRj) */
4611 { 0, 0, 0, 0 },
4612 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4613 & ifmt_smu, { 0xc0cc0 }
4615 /* dtlbi$pack @($GRi,$GRj) */
4617 { 0, 0, 0, 0 },
4618 { { MNEM, OP (PACK), ' ', '@', '(', OP (GRI), ',', OP (GRJ), ')', 0 } },
4619 & ifmt_smu, { 0xc0dc0 }
4621 /* icpl$pack $GRi,$GRj,$lock */
4623 { 0, 0, 0, 0 },
4624 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (LOCK), 0 } },
4625 & ifmt_icpl, { 0xc0c00 }
4627 /* dcpl$pack $GRi,$GRj,$lock */
4629 { 0, 0, 0, 0 },
4630 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (LOCK), 0 } },
4631 & ifmt_icpl, { 0xc0d00 }
4633 /* icul$pack $GRi */
4635 { 0, 0, 0, 0 },
4636 { { MNEM, OP (PACK), ' ', OP (GRI), 0 } },
4637 & ifmt_icul, { 0xc0c40 }
4639 /* dcul$pack $GRi */
4641 { 0, 0, 0, 0 },
4642 { { MNEM, OP (PACK), ' ', OP (GRI), 0 } },
4643 & ifmt_icul, { 0xc0d40 }
4645 /* bar$pack */
4647 { 0, 0, 0, 0 },
4648 { { MNEM, OP (PACK), 0 } },
4649 & ifmt_bar, { 0xc0f80 }
4651 /* membar$pack */
4653 { 0, 0, 0, 0 },
4654 { { MNEM, OP (PACK), 0 } },
4655 & ifmt_bar, { 0xc0fc0 }
4657 /* lrai$pack $GRi,$GRk,$LRAE,$LRAD,$LRAS */
4659 { 0, 0, 0, 0 },
4660 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), ',', OP (LRAE), ',', OP (LRAD), ',', OP (LRAS), 0 } },
4661 & ifmt_lrai, { 0xc0800 }
4663 /* lrad$pack $GRi,$GRk,$LRAE,$LRAD,$LRAS */
4665 { 0, 0, 0, 0 },
4666 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), ',', OP (LRAE), ',', OP (LRAD), ',', OP (LRAS), 0 } },
4667 & ifmt_lrai, { 0xc0840 }
4669 /* tlbpr$pack $GRi,$GRj,$TLBPRopx,$TLBPRL */
4671 { 0, 0, 0, 0 },
4672 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (TLBPROPX), ',', OP (TLBPRL), 0 } },
4673 & ifmt_tlbpr, { 0xc0900 }
4675 /* cop1$pack $s6_1,$CPRi,$CPRj,$CPRk */
4677 { 0, 0, 0, 0 },
4678 { { MNEM, OP (PACK), ' ', OP (S6_1), ',', OP (CPRI), ',', OP (CPRJ), ',', OP (CPRK), 0 } },
4679 & ifmt_cop1, { 0x1f80000 }
4681 /* cop2$pack $s6_1,$CPRi,$CPRj,$CPRk */
4683 { 0, 0, 0, 0 },
4684 { { MNEM, OP (PACK), ' ', OP (S6_1), ',', OP (CPRI), ',', OP (CPRJ), ',', OP (CPRK), 0 } },
4685 & ifmt_cop1, { 0x1fc0000 }
4687 /* clrgr$pack $GRk */
4689 { 0, 0, 0, 0 },
4690 { { MNEM, OP (PACK), ' ', OP (GRK), 0 } },
4691 & ifmt_clrgr, { 0x280000 }
4693 /* clrfr$pack $FRk */
4695 { 0, 0, 0, 0 },
4696 { { MNEM, OP (PACK), ' ', OP (FRK), 0 } },
4697 & ifmt_clrfr, { 0x280080 }
4699 /* clrga$pack */
4701 { 0, 0, 0, 0 },
4702 { { MNEM, OP (PACK), 0 } },
4703 & ifmt_bar, { 0x280040 }
4705 /* clrfa$pack */
4707 { 0, 0, 0, 0 },
4708 { { MNEM, OP (PACK), 0 } },
4709 & ifmt_bar, { 0x2800c0 }
4711 /* commitgr$pack $GRk */
4713 { 0, 0, 0, 0 },
4714 { { MNEM, OP (PACK), ' ', OP (GRK), 0 } },
4715 & ifmt_clrgr, { 0x280100 }
4717 /* commitfr$pack $FRk */
4719 { 0, 0, 0, 0 },
4720 { { MNEM, OP (PACK), ' ', OP (FRK), 0 } },
4721 & ifmt_clrfr, { 0x280180 }
4723 /* commitga$pack */
4725 { 0, 0, 0, 0 },
4726 { { MNEM, OP (PACK), 0 } },
4727 & ifmt_bar, { 0x280140 }
4729 /* commitfa$pack */
4731 { 0, 0, 0, 0 },
4732 { { MNEM, OP (PACK), 0 } },
4733 & ifmt_bar, { 0x2801c0 }
4735 /* fitos$pack $FRintj,$FRk */
4737 { 0, 0, 0, 0 },
4738 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4739 & ifmt_fitos, { 0x1e40000 }
4741 /* fstoi$pack $FRj,$FRintk */
4743 { 0, 0, 0, 0 },
4744 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4745 & ifmt_fstoi, { 0x1e40040 }
4747 /* fitod$pack $FRintj,$FRdoublek */
4749 { 0, 0, 0, 0 },
4750 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRDOUBLEK), 0 } },
4751 & ifmt_fitod, { 0x1e80000 }
4753 /* fdtoi$pack $FRdoublej,$FRintk */
4755 { 0, 0, 0, 0 },
4756 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRINTK), 0 } },
4757 & ifmt_fdtoi, { 0x1e80040 }
4759 /* fditos$pack $FRintj,$FRk */
4761 { 0, 0, 0, 0 },
4762 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4763 & ifmt_fitos, { 0x1e40400 }
4765 /* fdstoi$pack $FRj,$FRintk */
4767 { 0, 0, 0, 0 },
4768 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4769 & ifmt_fstoi, { 0x1e40440 }
4771 /* nfditos$pack $FRintj,$FRk */
4773 { 0, 0, 0, 0 },
4774 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4775 & ifmt_fitos, { 0x1e40c00 }
4777 /* nfdstoi$pack $FRj,$FRintk */
4779 { 0, 0, 0, 0 },
4780 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4781 & ifmt_fstoi, { 0x1e40c40 }
4783 /* cfitos$pack $FRintj,$FRk,$CCi,$cond */
4785 { 0, 0, 0, 0 },
4786 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4787 & ifmt_cfitos, { 0x1ac0000 }
4789 /* cfstoi$pack $FRj,$FRintk,$CCi,$cond */
4791 { 0, 0, 0, 0 },
4792 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
4793 & ifmt_cfstoi, { 0x1ac0040 }
4795 /* nfitos$pack $FRintj,$FRk */
4797 { 0, 0, 0, 0 },
4798 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRK), 0 } },
4799 & ifmt_fitos, { 0x1e40800 }
4801 /* nfstoi$pack $FRj,$FRintk */
4803 { 0, 0, 0, 0 },
4804 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRINTK), 0 } },
4805 & ifmt_fstoi, { 0x1e40840 }
4807 /* fmovs$pack $FRj,$FRk */
4809 { 0, 0, 0, 0 },
4810 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4811 & ifmt_fmovs, { 0x1e40080 }
4813 /* fmovd$pack $FRdoublej,$FRdoublek */
4815 { 0, 0, 0, 0 },
4816 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4817 & ifmt_fmovd, { 0x1e80080 }
4819 /* fdmovs$pack $FRj,$FRk */
4821 { 0, 0, 0, 0 },
4822 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4823 & ifmt_fmovs, { 0x1e40480 }
4825 /* cfmovs$pack $FRj,$FRk,$CCi,$cond */
4827 { 0, 0, 0, 0 },
4828 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4829 & ifmt_cfmovs, { 0x1b00000 }
4831 /* fnegs$pack $FRj,$FRk */
4833 { 0, 0, 0, 0 },
4834 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4835 & ifmt_fmovs, { 0x1e400c0 }
4837 /* fnegd$pack $FRdoublej,$FRdoublek */
4839 { 0, 0, 0, 0 },
4840 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4841 & ifmt_fmovd, { 0x1e800c0 }
4843 /* fdnegs$pack $FRj,$FRk */
4845 { 0, 0, 0, 0 },
4846 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4847 & ifmt_fmovs, { 0x1e404c0 }
4849 /* cfnegs$pack $FRj,$FRk,$CCi,$cond */
4851 { 0, 0, 0, 0 },
4852 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4853 & ifmt_cfmovs, { 0x1b00040 }
4855 /* fabss$pack $FRj,$FRk */
4857 { 0, 0, 0, 0 },
4858 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4859 & ifmt_fmovs, { 0x1e40100 }
4861 /* fabsd$pack $FRdoublej,$FRdoublek */
4863 { 0, 0, 0, 0 },
4864 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4865 & ifmt_fmovd, { 0x1e80100 }
4867 /* fdabss$pack $FRj,$FRk */
4869 { 0, 0, 0, 0 },
4870 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4871 & ifmt_fmovs, { 0x1e40500 }
4873 /* cfabss$pack $FRj,$FRk,$CCi,$cond */
4875 { 0, 0, 0, 0 },
4876 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4877 & ifmt_cfmovs, { 0x1b00080 }
4879 /* fsqrts$pack $FRj,$FRk */
4881 { 0, 0, 0, 0 },
4882 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4883 & ifmt_fmovs, { 0x1e40140 }
4885 /* fdsqrts$pack $FRj,$FRk */
4887 { 0, 0, 0, 0 },
4888 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4889 & ifmt_fmovs, { 0x1e40540 }
4891 /* nfdsqrts$pack $FRj,$FRk */
4893 { 0, 0, 0, 0 },
4894 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4895 & ifmt_fmovs, { 0x1e40d40 }
4897 /* fsqrtd$pack $FRdoublej,$FRdoublek */
4899 { 0, 0, 0, 0 },
4900 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4901 & ifmt_fmovd, { 0x1e80140 }
4903 /* cfsqrts$pack $FRj,$FRk,$CCi,$cond */
4905 { 0, 0, 0, 0 },
4906 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4907 & ifmt_cfmovs, { 0x1b80080 }
4909 /* nfsqrts$pack $FRj,$FRk */
4911 { 0, 0, 0, 0 },
4912 { { MNEM, OP (PACK), ' ', OP (FRJ), ',', OP (FRK), 0 } },
4913 & ifmt_fmovs, { 0x1e40940 }
4915 /* fadds$pack $FRi,$FRj,$FRk */
4917 { 0, 0, 0, 0 },
4918 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4919 & ifmt_fadds, { 0x1e40180 }
4921 /* fsubs$pack $FRi,$FRj,$FRk */
4923 { 0, 0, 0, 0 },
4924 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4925 & ifmt_fadds, { 0x1e401c0 }
4927 /* fmuls$pack $FRi,$FRj,$FRk */
4929 { 0, 0, 0, 0 },
4930 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4931 & ifmt_fadds, { 0x1e40200 }
4933 /* fdivs$pack $FRi,$FRj,$FRk */
4935 { 0, 0, 0, 0 },
4936 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4937 & ifmt_fadds, { 0x1e40240 }
4939 /* faddd$pack $FRdoublei,$FRdoublej,$FRdoublek */
4941 { 0, 0, 0, 0 },
4942 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4943 & ifmt_faddd, { 0x1e80180 }
4945 /* fsubd$pack $FRdoublei,$FRdoublej,$FRdoublek */
4947 { 0, 0, 0, 0 },
4948 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4949 & ifmt_faddd, { 0x1e801c0 }
4951 /* fmuld$pack $FRdoublei,$FRdoublej,$FRdoublek */
4953 { 0, 0, 0, 0 },
4954 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4955 & ifmt_faddd, { 0x1e80200 }
4957 /* fdivd$pack $FRdoublei,$FRdoublej,$FRdoublek */
4959 { 0, 0, 0, 0 },
4960 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
4961 & ifmt_faddd, { 0x1e80240 }
4963 /* cfadds$pack $FRi,$FRj,$FRk,$CCi,$cond */
4965 { 0, 0, 0, 0 },
4966 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4967 & ifmt_cfadds, { 0x1b40000 }
4969 /* cfsubs$pack $FRi,$FRj,$FRk,$CCi,$cond */
4971 { 0, 0, 0, 0 },
4972 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4973 & ifmt_cfadds, { 0x1b40040 }
4975 /* cfmuls$pack $FRi,$FRj,$FRk,$CCi,$cond */
4977 { 0, 0, 0, 0 },
4978 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4979 & ifmt_cfadds, { 0x1b80000 }
4981 /* cfdivs$pack $FRi,$FRj,$FRk,$CCi,$cond */
4983 { 0, 0, 0, 0 },
4984 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
4985 & ifmt_cfadds, { 0x1b80040 }
4987 /* nfadds$pack $FRi,$FRj,$FRk */
4989 { 0, 0, 0, 0 },
4990 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4991 & ifmt_fadds, { 0x1e40980 }
4993 /* nfsubs$pack $FRi,$FRj,$FRk */
4995 { 0, 0, 0, 0 },
4996 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
4997 & ifmt_fadds, { 0x1e409c0 }
4999 /* nfmuls$pack $FRi,$FRj,$FRk */
5001 { 0, 0, 0, 0 },
5002 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5003 & ifmt_fadds, { 0x1e40a00 }
5005 /* nfdivs$pack $FRi,$FRj,$FRk */
5007 { 0, 0, 0, 0 },
5008 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5009 & ifmt_fadds, { 0x1e40a40 }
5011 /* fcmps$pack $FRi,$FRj,$FCCi_2 */
5013 { 0, 0, 0, 0 },
5014 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), 0 } },
5015 & ifmt_fcmps, { 0x1e40280 }
5017 /* fcmpd$pack $FRdoublei,$FRdoublej,$FCCi_2 */
5019 { 0, 0, 0, 0 },
5020 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FCCI_2), 0 } },
5021 & ifmt_fcmpd, { 0x1e80280 }
5023 /* cfcmps$pack $FRi,$FRj,$FCCi_2,$CCi,$cond */
5025 { 0, 0, 0, 0 },
5026 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), ',', OP (CCI), ',', OP (COND), 0 } },
5027 & ifmt_cfcmps, { 0x1b40080 }
5029 /* fdcmps$pack $FRi,$FRj,$FCCi_2 */
5031 { 0, 0, 0, 0 },
5032 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), 0 } },
5033 & ifmt_fcmps, { 0x1e40680 }
5035 /* fmadds$pack $FRi,$FRj,$FRk */
5037 { 0, 0, 0, 0 },
5038 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5039 & ifmt_fadds, { 0x1e402c0 }
5041 /* fmsubs$pack $FRi,$FRj,$FRk */
5043 { 0, 0, 0, 0 },
5044 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5045 & ifmt_fadds, { 0x1e40300 }
5047 /* fmaddd$pack $FRdoublei,$FRdoublej,$FRdoublek */
5049 { 0, 0, 0, 0 },
5050 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
5051 & ifmt_faddd, { 0x1e802c0 }
5053 /* fmsubd$pack $FRdoublei,$FRdoublej,$FRdoublek */
5055 { 0, 0, 0, 0 },
5056 { { MNEM, OP (PACK), ' ', OP (FRDOUBLEI), ',', OP (FRDOUBLEJ), ',', OP (FRDOUBLEK), 0 } },
5057 & ifmt_faddd, { 0x1e80300 }
5059 /* fdmadds$pack $FRi,$FRj,$FRk */
5061 { 0, 0, 0, 0 },
5062 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5063 & ifmt_fadds, { 0x1e406c0 }
5065 /* nfdmadds$pack $FRi,$FRj,$FRk */
5067 { 0, 0, 0, 0 },
5068 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5069 & ifmt_fadds, { 0x1e40ec0 }
5071 /* cfmadds$pack $FRi,$FRj,$FRk,$CCi,$cond */
5073 { 0, 0, 0, 0 },
5074 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5075 & ifmt_cfadds, { 0x1bc0000 }
5077 /* cfmsubs$pack $FRi,$FRj,$FRk,$CCi,$cond */
5079 { 0, 0, 0, 0 },
5080 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5081 & ifmt_cfadds, { 0x1bc0040 }
5083 /* nfmadds$pack $FRi,$FRj,$FRk */
5085 { 0, 0, 0, 0 },
5086 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5087 & ifmt_fadds, { 0x1e40ac0 }
5089 /* nfmsubs$pack $FRi,$FRj,$FRk */
5091 { 0, 0, 0, 0 },
5092 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5093 & ifmt_fadds, { 0x1e40b00 }
5095 /* fmas$pack $FRi,$FRj,$FRk */
5097 { 0, 0, 0, 0 },
5098 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5099 & ifmt_fadds, { 0x1e40380 }
5101 /* fmss$pack $FRi,$FRj,$FRk */
5103 { 0, 0, 0, 0 },
5104 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5105 & ifmt_fadds, { 0x1e403c0 }
5107 /* fdmas$pack $FRi,$FRj,$FRk */
5109 { 0, 0, 0, 0 },
5110 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5111 & ifmt_fadds, { 0x1e40700 }
5113 /* fdmss$pack $FRi,$FRj,$FRk */
5115 { 0, 0, 0, 0 },
5116 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5117 & ifmt_fadds, { 0x1e40740 }
5119 /* nfdmas$pack $FRi,$FRj,$FRk */
5121 { 0, 0, 0, 0 },
5122 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5123 & ifmt_fadds, { 0x1e40f00 }
5125 /* nfdmss$pack $FRi,$FRj,$FRk */
5127 { 0, 0, 0, 0 },
5128 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5129 & ifmt_fadds, { 0x1e40f40 }
5131 /* cfmas$pack $FRi,$FRj,$FRk,$CCi,$cond */
5133 { 0, 0, 0, 0 },
5134 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5135 & ifmt_cfadds, { 0x1bc0080 }
5137 /* cfmss$pack $FRi,$FRj,$FRk,$CCi,$cond */
5139 { 0, 0, 0, 0 },
5140 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), ',', OP (CCI), ',', OP (COND), 0 } },
5141 & ifmt_cfadds, { 0x1bc00c0 }
5143 /* fmad$pack $FRi,$FRj,$FRk */
5145 { 0, 0, 0, 0 },
5146 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5147 & ifmt_fadds, { 0x1e80380 }
5149 /* fmsd$pack $FRi,$FRj,$FRk */
5151 { 0, 0, 0, 0 },
5152 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5153 & ifmt_fadds, { 0x1e803c0 }
5155 /* nfmas$pack $FRi,$FRj,$FRk */
5157 { 0, 0, 0, 0 },
5158 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5159 & ifmt_fadds, { 0x1e40b80 }
5161 /* nfmss$pack $FRi,$FRj,$FRk */
5163 { 0, 0, 0, 0 },
5164 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5165 & ifmt_fadds, { 0x1e40bc0 }
5167 /* fdadds$pack $FRi,$FRj,$FRk */
5169 { 0, 0, 0, 0 },
5170 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5171 & ifmt_fadds, { 0x1e40580 }
5173 /* fdsubs$pack $FRi,$FRj,$FRk */
5175 { 0, 0, 0, 0 },
5176 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5177 & ifmt_fadds, { 0x1e405c0 }
5179 /* fdmuls$pack $FRi,$FRj,$FRk */
5181 { 0, 0, 0, 0 },
5182 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5183 & ifmt_fadds, { 0x1e40600 }
5185 /* fddivs$pack $FRi,$FRj,$FRk */
5187 { 0, 0, 0, 0 },
5188 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5189 & ifmt_fadds, { 0x1e40640 }
5191 /* fdsads$pack $FRi,$FRj,$FRk */
5193 { 0, 0, 0, 0 },
5194 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5195 & ifmt_fadds, { 0x1e40780 }
5197 /* fdmulcs$pack $FRi,$FRj,$FRk */
5199 { 0, 0, 0, 0 },
5200 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5201 & ifmt_fadds, { 0x1e407c0 }
5203 /* nfdmulcs$pack $FRi,$FRj,$FRk */
5205 { 0, 0, 0, 0 },
5206 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5207 & ifmt_fadds, { 0x1e40fc0 }
5209 /* nfdadds$pack $FRi,$FRj,$FRk */
5211 { 0, 0, 0, 0 },
5212 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5213 & ifmt_fadds, { 0x1e40d80 }
5215 /* nfdsubs$pack $FRi,$FRj,$FRk */
5217 { 0, 0, 0, 0 },
5218 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5219 & ifmt_fadds, { 0x1e40dc0 }
5221 /* nfdmuls$pack $FRi,$FRj,$FRk */
5223 { 0, 0, 0, 0 },
5224 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5225 & ifmt_fadds, { 0x1e40e00 }
5227 /* nfddivs$pack $FRi,$FRj,$FRk */
5229 { 0, 0, 0, 0 },
5230 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5231 & ifmt_fadds, { 0x1e40e40 }
5233 /* nfdsads$pack $FRi,$FRj,$FRk */
5235 { 0, 0, 0, 0 },
5236 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5237 & ifmt_fadds, { 0x1e40f80 }
5239 /* nfdcmps$pack $FRi,$FRj,$FCCi_2 */
5241 { 0, 0, 0, 0 },
5242 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FCCI_2), 0 } },
5243 & ifmt_fcmps, { 0x1e40e80 }
5245 /* mhsetlos$pack $u12,$FRklo */
5247 { 0, 0, 0, 0 },
5248 { { MNEM, OP (PACK), ' ', OP (U12), ',', OP (FRKLO), 0 } },
5249 & ifmt_mhsetlos, { 0x1e00800 }
5251 /* mhsethis$pack $u12,$FRkhi */
5253 { 0, 0, 0, 0 },
5254 { { MNEM, OP (PACK), ' ', OP (U12), ',', OP (FRKHI), 0 } },
5255 & ifmt_mhsethis, { 0x1e00880 }
5257 /* mhdsets$pack $u12,$FRintk */
5259 { 0, 0, 0, 0 },
5260 { { MNEM, OP (PACK), ' ', OP (U12), ',', OP (FRINTK), 0 } },
5261 & ifmt_mhdsets, { 0x1e00900 }
5263 /* mhsetloh$pack $s5,$FRklo */
5265 { 0, 0, 0, 0 },
5266 { { MNEM, OP (PACK), ' ', OP (S5), ',', OP (FRKLO), 0 } },
5267 & ifmt_mhsetloh, { 0x1e00840 }
5269 /* mhsethih$pack $s5,$FRkhi */
5271 { 0, 0, 0, 0 },
5272 { { MNEM, OP (PACK), ' ', OP (S5), ',', OP (FRKHI), 0 } },
5273 & ifmt_mhsethih, { 0x1e008c0 }
5275 /* mhdseth$pack $s5,$FRintk */
5277 { 0, 0, 0, 0 },
5278 { { MNEM, OP (PACK), ' ', OP (S5), ',', OP (FRINTK), 0 } },
5279 & ifmt_mhdseth, { 0x1e00940 }
5281 /* mand$pack $FRinti,$FRintj,$FRintk */
5283 { 0, 0, 0, 0 },
5284 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5285 & ifmt_mand, { 0x1ec0000 }
5287 /* mor$pack $FRinti,$FRintj,$FRintk */
5289 { 0, 0, 0, 0 },
5290 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5291 & ifmt_mand, { 0x1ec0040 }
5293 /* mxor$pack $FRinti,$FRintj,$FRintk */
5295 { 0, 0, 0, 0 },
5296 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5297 & ifmt_mand, { 0x1ec0080 }
5299 /* cmand$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5301 { 0, 0, 0, 0 },
5302 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5303 & ifmt_cmand, { 0x1c00000 }
5305 /* cmor$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5307 { 0, 0, 0, 0 },
5308 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5309 & ifmt_cmand, { 0x1c00040 }
5311 /* cmxor$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5313 { 0, 0, 0, 0 },
5314 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5315 & ifmt_cmand, { 0x1c00080 }
5317 /* mnot$pack $FRintj,$FRintk */
5319 { 0, 0, 0, 0 },
5320 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5321 & ifmt_mnot, { 0x1ec00c0 }
5323 /* cmnot$pack $FRintj,$FRintk,$CCi,$cond */
5325 { 0, 0, 0, 0 },
5326 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5327 & ifmt_cmnot, { 0x1c000c0 }
5329 /* mrotli$pack $FRinti,$u6,$FRintk */
5331 { 0, 0, 0, 0 },
5332 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5333 & ifmt_mrotli, { 0x1ec0100 }
5335 /* mrotri$pack $FRinti,$u6,$FRintk */
5337 { 0, 0, 0, 0 },
5338 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5339 & ifmt_mrotli, { 0x1ec0140 }
5341 /* mwcut$pack $FRinti,$FRintj,$FRintk */
5343 { 0, 0, 0, 0 },
5344 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5345 & ifmt_mand, { 0x1ec0180 }
5347 /* mwcuti$pack $FRinti,$u6,$FRintk */
5349 { 0, 0, 0, 0 },
5350 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5351 & ifmt_mrotli, { 0x1ec01c0 }
5353 /* mcut$pack $ACC40Si,$FRintj,$FRintk */
5355 { 0, 0, 0, 0 },
5356 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5357 & ifmt_mcut, { 0x1ec0b00 }
5359 /* mcuti$pack $ACC40Si,$s6,$FRintk */
5361 { 0, 0, 0, 0 },
5362 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (S6), ',', OP (FRINTK), 0 } },
5363 & ifmt_mcuti, { 0x1ec0b80 }
5365 /* mcutss$pack $ACC40Si,$FRintj,$FRintk */
5367 { 0, 0, 0, 0 },
5368 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5369 & ifmt_mcut, { 0x1ec0b40 }
5371 /* mcutssi$pack $ACC40Si,$s6,$FRintk */
5373 { 0, 0, 0, 0 },
5374 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (S6), ',', OP (FRINTK), 0 } },
5375 & ifmt_mcuti, { 0x1ec0bc0 }
5377 /* mdcutssi$pack $ACC40Si,$s6,$FRintkeven */
5379 { 0, 0, 0, 0 },
5380 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (S6), ',', OP (FRINTKEVEN), 0 } },
5381 & ifmt_mdcutssi, { 0x1e00380 }
5383 /* maveh$pack $FRinti,$FRintj,$FRintk */
5385 { 0, 0, 0, 0 },
5386 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5387 & ifmt_mand, { 0x1ec0200 }
5389 /* msllhi$pack $FRinti,$u6,$FRintk */
5391 { 0, 0, 0, 0 },
5392 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5393 & ifmt_mrotli, { 0x1ec0240 }
5395 /* msrlhi$pack $FRinti,$u6,$FRintk */
5397 { 0, 0, 0, 0 },
5398 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5399 & ifmt_mrotli, { 0x1ec0280 }
5401 /* msrahi$pack $FRinti,$u6,$FRintk */
5403 { 0, 0, 0, 0 },
5404 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5405 & ifmt_mrotli, { 0x1ec02c0 }
5407 /* mdrotli$pack $FRintieven,$s6,$FRintkeven */
5409 { 0, 0, 0, 0 },
5410 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (S6), ',', OP (FRINTKEVEN), 0 } },
5411 & ifmt_mdrotli, { 0x1e002c0 }
5413 /* mcplhi$pack $FRinti,$u6,$FRintk */
5415 { 0, 0, 0, 0 },
5416 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5417 & ifmt_mrotli, { 0x1e00300 }
5419 /* mcpli$pack $FRinti,$u6,$FRintk */
5421 { 0, 0, 0, 0 },
5422 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5423 & ifmt_mrotli, { 0x1e00340 }
5425 /* msaths$pack $FRinti,$FRintj,$FRintk */
5427 { 0, 0, 0, 0 },
5428 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5429 & ifmt_mand, { 0x1ec0300 }
5431 /* mqsaths$pack $FRintieven,$FRintjeven,$FRintkeven */
5433 { 0, 0, 0, 0 },
5434 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5435 & ifmt_mqsaths, { 0x1e003c0 }
5437 /* msathu$pack $FRinti,$FRintj,$FRintk */
5439 { 0, 0, 0, 0 },
5440 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5441 & ifmt_mand, { 0x1ec0340 }
5443 /* mcmpsh$pack $FRinti,$FRintj,$FCCk */
5445 { 0, 0, 0, 0 },
5446 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FCCK), 0 } },
5447 & ifmt_mcmpsh, { 0x1ec0380 }
5449 /* mcmpuh$pack $FRinti,$FRintj,$FCCk */
5451 { 0, 0, 0, 0 },
5452 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FCCK), 0 } },
5453 & ifmt_mcmpsh, { 0x1ec03c0 }
5455 /* mabshs$pack $FRintj,$FRintk */
5457 { 0, 0, 0, 0 },
5458 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5459 & ifmt_mabshs, { 0x1e00280 }
5461 /* maddhss$pack $FRinti,$FRintj,$FRintk */
5463 { 0, 0, 0, 0 },
5464 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5465 & ifmt_mand, { 0x1ec0400 }
5467 /* maddhus$pack $FRinti,$FRintj,$FRintk */
5469 { 0, 0, 0, 0 },
5470 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5471 & ifmt_mand, { 0x1ec0440 }
5473 /* msubhss$pack $FRinti,$FRintj,$FRintk */
5475 { 0, 0, 0, 0 },
5476 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5477 & ifmt_mand, { 0x1ec0480 }
5479 /* msubhus$pack $FRinti,$FRintj,$FRintk */
5481 { 0, 0, 0, 0 },
5482 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5483 & ifmt_mand, { 0x1ec04c0 }
5485 /* cmaddhss$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5487 { 0, 0, 0, 0 },
5488 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5489 & ifmt_cmand, { 0x1c40000 }
5491 /* cmaddhus$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5493 { 0, 0, 0, 0 },
5494 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5495 & ifmt_cmand, { 0x1c40040 }
5497 /* cmsubhss$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5499 { 0, 0, 0, 0 },
5500 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5501 & ifmt_cmand, { 0x1c40080 }
5503 /* cmsubhus$pack $FRinti,$FRintj,$FRintk,$CCi,$cond */
5505 { 0, 0, 0, 0 },
5506 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5507 & ifmt_cmand, { 0x1c400c0 }
5509 /* mqaddhss$pack $FRintieven,$FRintjeven,$FRintkeven */
5511 { 0, 0, 0, 0 },
5512 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5513 & ifmt_mqsaths, { 0x1ec0600 }
5515 /* mqaddhus$pack $FRintieven,$FRintjeven,$FRintkeven */
5517 { 0, 0, 0, 0 },
5518 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5519 & ifmt_mqsaths, { 0x1ec0640 }
5521 /* mqsubhss$pack $FRintieven,$FRintjeven,$FRintkeven */
5523 { 0, 0, 0, 0 },
5524 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5525 & ifmt_mqsaths, { 0x1ec0680 }
5527 /* mqsubhus$pack $FRintieven,$FRintjeven,$FRintkeven */
5529 { 0, 0, 0, 0 },
5530 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5531 & ifmt_mqsaths, { 0x1ec06c0 }
5533 /* cmqaddhss$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5535 { 0, 0, 0, 0 },
5536 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5537 & ifmt_cmqaddhss, { 0x1cc0000 }
5539 /* cmqaddhus$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5541 { 0, 0, 0, 0 },
5542 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5543 & ifmt_cmqaddhss, { 0x1cc0040 }
5545 /* cmqsubhss$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5547 { 0, 0, 0, 0 },
5548 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5549 & ifmt_cmqaddhss, { 0x1cc0080 }
5551 /* cmqsubhus$pack $FRintieven,$FRintjeven,$FRintkeven,$CCi,$cond */
5553 { 0, 0, 0, 0 },
5554 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5555 & ifmt_cmqaddhss, { 0x1cc00c0 }
5557 /* mqlclrhs$pack $FRintieven,$FRintjeven,$FRintkeven */
5559 { 0, 0, 0, 0 },
5560 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5561 & ifmt_mqsaths, { 0x1e00400 }
5563 /* mqlmths$pack $FRintieven,$FRintjeven,$FRintkeven */
5565 { 0, 0, 0, 0 },
5566 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5567 & ifmt_mqsaths, { 0x1e00500 }
5569 /* mqsllhi$pack $FRintieven,$u6,$FRintkeven */
5571 { 0, 0, 0, 0 },
5572 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (U6), ',', OP (FRINTKEVEN), 0 } },
5573 & ifmt_mqsllhi, { 0x1e00440 }
5575 /* mqsrahi$pack $FRintieven,$u6,$FRintkeven */
5577 { 0, 0, 0, 0 },
5578 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (U6), ',', OP (FRINTKEVEN), 0 } },
5579 & ifmt_mqsllhi, { 0x1e004c0 }
5581 /* maddaccs$pack $ACC40Si,$ACC40Sk */
5583 { 0, 0, 0, 0 },
5584 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5585 & ifmt_maddaccs, { 0x1e00100 }
5587 /* msubaccs$pack $ACC40Si,$ACC40Sk */
5589 { 0, 0, 0, 0 },
5590 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5591 & ifmt_maddaccs, { 0x1e00140 }
5593 /* mdaddaccs$pack $ACC40Si,$ACC40Sk */
5595 { 0, 0, 0, 0 },
5596 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5597 & ifmt_maddaccs, { 0x1e00180 }
5599 /* mdsubaccs$pack $ACC40Si,$ACC40Sk */
5601 { 0, 0, 0, 0 },
5602 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5603 & ifmt_maddaccs, { 0x1e001c0 }
5605 /* masaccs$pack $ACC40Si,$ACC40Sk */
5607 { 0, 0, 0, 0 },
5608 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5609 & ifmt_maddaccs, { 0x1e00200 }
5611 /* mdasaccs$pack $ACC40Si,$ACC40Sk */
5613 { 0, 0, 0, 0 },
5614 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (ACC40SK), 0 } },
5615 & ifmt_maddaccs, { 0x1e00240 }
5617 /* mmulhs$pack $FRinti,$FRintj,$ACC40Sk */
5619 { 0, 0, 0, 0 },
5620 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5621 & ifmt_mmulhs, { 0x1ec0500 }
5623 /* mmulhu$pack $FRinti,$FRintj,$ACC40Sk */
5625 { 0, 0, 0, 0 },
5626 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5627 & ifmt_mmulhs, { 0x1ec0540 }
5629 /* mmulxhs$pack $FRinti,$FRintj,$ACC40Sk */
5631 { 0, 0, 0, 0 },
5632 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5633 & ifmt_mmulhs, { 0x1ec0a00 }
5635 /* mmulxhu$pack $FRinti,$FRintj,$ACC40Sk */
5637 { 0, 0, 0, 0 },
5638 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5639 & ifmt_mmulhs, { 0x1ec0a40 }
5641 /* cmmulhs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5643 { 0, 0, 0, 0 },
5644 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5645 & ifmt_cmmulhs, { 0x1c80000 }
5647 /* cmmulhu$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5649 { 0, 0, 0, 0 },
5650 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5651 & ifmt_cmmulhs, { 0x1c80040 }
5653 /* mqmulhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5655 { 0, 0, 0, 0 },
5656 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5657 & ifmt_mqmulhs, { 0x1ec0700 }
5659 /* mqmulhu$pack $FRintieven,$FRintjeven,$ACC40Sk */
5661 { 0, 0, 0, 0 },
5662 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5663 & ifmt_mqmulhs, { 0x1ec0740 }
5665 /* mqmulxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5667 { 0, 0, 0, 0 },
5668 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5669 & ifmt_mqmulhs, { 0x1ec0a80 }
5671 /* mqmulxhu$pack $FRintieven,$FRintjeven,$ACC40Sk */
5673 { 0, 0, 0, 0 },
5674 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5675 & ifmt_mqmulhs, { 0x1ec0ac0 }
5677 /* cmqmulhs$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
5679 { 0, 0, 0, 0 },
5680 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5681 & ifmt_cmqmulhs, { 0x1d00000 }
5683 /* cmqmulhu$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
5685 { 0, 0, 0, 0 },
5686 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5687 & ifmt_cmqmulhs, { 0x1d00040 }
5689 /* mmachs$pack $FRinti,$FRintj,$ACC40Sk */
5691 { 0, 0, 0, 0 },
5692 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5693 & ifmt_mmulhs, { 0x1ec0580 }
5695 /* mmachu$pack $FRinti,$FRintj,$ACC40Uk */
5697 { 0, 0, 0, 0 },
5698 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40UK), 0 } },
5699 & ifmt_mmachu, { 0x1ec05c0 }
5701 /* mmrdhs$pack $FRinti,$FRintj,$ACC40Sk */
5703 { 0, 0, 0, 0 },
5704 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5705 & ifmt_mmulhs, { 0x1ec0c00 }
5707 /* mmrdhu$pack $FRinti,$FRintj,$ACC40Uk */
5709 { 0, 0, 0, 0 },
5710 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40UK), 0 } },
5711 & ifmt_mmachu, { 0x1ec0c40 }
5713 /* cmmachs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5715 { 0, 0, 0, 0 },
5716 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5717 & ifmt_cmmulhs, { 0x1c80080 }
5719 /* cmmachu$pack $FRinti,$FRintj,$ACC40Uk,$CCi,$cond */
5721 { 0, 0, 0, 0 },
5722 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40UK), ',', OP (CCI), ',', OP (COND), 0 } },
5723 & ifmt_cmmachu, { 0x1c800c0 }
5725 /* mqmachs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5727 { 0, 0, 0, 0 },
5728 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5729 & ifmt_mqmulhs, { 0x1ec0780 }
5731 /* mqmachu$pack $FRintieven,$FRintjeven,$ACC40Uk */
5733 { 0, 0, 0, 0 },
5734 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40UK), 0 } },
5735 & ifmt_mqmachu, { 0x1ec07c0 }
5737 /* cmqmachs$pack $FRintieven,$FRintjeven,$ACC40Sk,$CCi,$cond */
5739 { 0, 0, 0, 0 },
5740 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5741 & ifmt_cmqmulhs, { 0x1d00080 }
5743 /* cmqmachu$pack $FRintieven,$FRintjeven,$ACC40Uk,$CCi,$cond */
5745 { 0, 0, 0, 0 },
5746 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40UK), ',', OP (CCI), ',', OP (COND), 0 } },
5747 & ifmt_cmqmachu, { 0x1d000c0 }
5749 /* mqxmachs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5751 { 0, 0, 0, 0 },
5752 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5753 & ifmt_mqmulhs, { 0x1e00000 }
5755 /* mqxmacxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5757 { 0, 0, 0, 0 },
5758 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5759 & ifmt_mqmulhs, { 0x1e00040 }
5761 /* mqmacxhs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5763 { 0, 0, 0, 0 },
5764 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5765 & ifmt_mqmulhs, { 0x1e00080 }
5767 /* mcpxrs$pack $FRinti,$FRintj,$ACC40Sk */
5769 { 0, 0, 0, 0 },
5770 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5771 & ifmt_mmulhs, { 0x1ec0800 }
5773 /* mcpxru$pack $FRinti,$FRintj,$ACC40Sk */
5775 { 0, 0, 0, 0 },
5776 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5777 & ifmt_mmulhs, { 0x1ec0840 }
5779 /* mcpxis$pack $FRinti,$FRintj,$ACC40Sk */
5781 { 0, 0, 0, 0 },
5782 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5783 & ifmt_mmulhs, { 0x1ec0880 }
5785 /* mcpxiu$pack $FRinti,$FRintj,$ACC40Sk */
5787 { 0, 0, 0, 0 },
5788 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), 0 } },
5789 & ifmt_mmulhs, { 0x1ec08c0 }
5791 /* cmcpxrs$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5793 { 0, 0, 0, 0 },
5794 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5795 & ifmt_cmmulhs, { 0x1d40000 }
5797 /* cmcpxru$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5799 { 0, 0, 0, 0 },
5800 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5801 & ifmt_cmmulhs, { 0x1d40040 }
5803 /* cmcpxis$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5805 { 0, 0, 0, 0 },
5806 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5807 & ifmt_cmmulhs, { 0x1d40080 }
5809 /* cmcpxiu$pack $FRinti,$FRintj,$ACC40Sk,$CCi,$cond */
5811 { 0, 0, 0, 0 },
5812 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (ACC40SK), ',', OP (CCI), ',', OP (COND), 0 } },
5813 & ifmt_cmmulhs, { 0x1d400c0 }
5815 /* mqcpxrs$pack $FRintieven,$FRintjeven,$ACC40Sk */
5817 { 0, 0, 0, 0 },
5818 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5819 & ifmt_mqmulhs, { 0x1ec0900 }
5821 /* mqcpxru$pack $FRintieven,$FRintjeven,$ACC40Sk */
5823 { 0, 0, 0, 0 },
5824 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5825 & ifmt_mqmulhs, { 0x1ec0940 }
5827 /* mqcpxis$pack $FRintieven,$FRintjeven,$ACC40Sk */
5829 { 0, 0, 0, 0 },
5830 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5831 & ifmt_mqmulhs, { 0x1ec0980 }
5833 /* mqcpxiu$pack $FRintieven,$FRintjeven,$ACC40Sk */
5835 { 0, 0, 0, 0 },
5836 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (ACC40SK), 0 } },
5837 & ifmt_mqmulhs, { 0x1ec09c0 }
5839 /* mexpdhw$pack $FRinti,$u6,$FRintk */
5841 { 0, 0, 0, 0 },
5842 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), 0 } },
5843 & ifmt_mrotli, { 0x1ec0c80 }
5845 /* cmexpdhw$pack $FRinti,$u6,$FRintk,$CCi,$cond */
5847 { 0, 0, 0, 0 },
5848 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5849 & ifmt_cmexpdhw, { 0x1d80080 }
5851 /* mexpdhd$pack $FRinti,$u6,$FRintkeven */
5853 { 0, 0, 0, 0 },
5854 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTKEVEN), 0 } },
5855 & ifmt_mexpdhd, { 0x1ec0cc0 }
5857 /* cmexpdhd$pack $FRinti,$u6,$FRintkeven,$CCi,$cond */
5859 { 0, 0, 0, 0 },
5860 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (U6), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5861 & ifmt_cmexpdhd, { 0x1d800c0 }
5863 /* mpackh$pack $FRinti,$FRintj,$FRintk */
5865 { 0, 0, 0, 0 },
5866 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5867 & ifmt_mand, { 0x1ec0d00 }
5869 /* mdpackh$pack $FRintieven,$FRintjeven,$FRintkeven */
5871 { 0, 0, 0, 0 },
5872 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTJEVEN), ',', OP (FRINTKEVEN), 0 } },
5873 & ifmt_mqsaths, { 0x1ec0d80 }
5875 /* munpackh$pack $FRinti,$FRintkeven */
5877 { 0, 0, 0, 0 },
5878 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (FRINTKEVEN), 0 } },
5879 & ifmt_munpackh, { 0x1ec0d40 }
5881 /* mdunpackh$pack $FRintieven,$FRintk */
5883 { 0, 0, 0, 0 },
5884 { { MNEM, OP (PACK), ' ', OP (FRINTIEVEN), ',', OP (FRINTK), 0 } },
5885 & ifmt_mdunpackh, { 0x1ec0dc0 }
5887 /* mbtoh$pack $FRintj,$FRintkeven */
5889 { 0, 0, 0, 0 },
5890 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTKEVEN), 0 } },
5891 & ifmt_mbtoh, { 0x1ec0e00 }
5893 /* cmbtoh$pack $FRintj,$FRintkeven,$CCi,$cond */
5895 { 0, 0, 0, 0 },
5896 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTKEVEN), ',', OP (CCI), ',', OP (COND), 0 } },
5897 & ifmt_cmbtoh, { 0x1dc0000 }
5899 /* mhtob$pack $FRintjeven,$FRintk */
5901 { 0, 0, 0, 0 },
5902 { { MNEM, OP (PACK), ' ', OP (FRINTJEVEN), ',', OP (FRINTK), 0 } },
5903 & ifmt_mhtob, { 0x1ec0e40 }
5905 /* cmhtob$pack $FRintjeven,$FRintk,$CCi,$cond */
5907 { 0, 0, 0, 0 },
5908 { { MNEM, OP (PACK), ' ', OP (FRINTJEVEN), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5909 & ifmt_cmhtob, { 0x1dc0040 }
5911 /* mbtohe$pack $FRintj,$FRintk */
5913 { 0, 0, 0, 0 },
5914 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), 0 } },
5915 & ifmt_mabshs, { 0x1ec0e80 }
5917 /* cmbtohe$pack $FRintj,$FRintk,$CCi,$cond */
5919 { 0, 0, 0, 0 },
5920 { { MNEM, OP (PACK), ' ', OP (FRINTJ), ',', OP (FRINTK), ',', OP (CCI), ',', OP (COND), 0 } },
5921 & ifmt_cmbtohe, { 0x1dc0080 }
5923 /* mnop$pack */
5925 { 0, 0, 0, 0 },
5926 { { MNEM, OP (PACK), 0 } },
5927 & ifmt_mnop, { 0x7fee0ec0 }
5929 /* mclracc$pack $ACC40Sk,$A0 */
5931 { 0, 0, 0, 0 },
5932 { { MNEM, OP (PACK), ' ', OP (ACC40SK), ',', OP (A0), 0 } },
5933 & ifmt_mclracc_0, { 0x1ec0ec0 }
5935 /* mclracc$pack $ACC40Sk,$A1 */
5937 { 0, 0, 0, 0 },
5938 { { MNEM, OP (PACK), ' ', OP (ACC40SK), ',', OP (A1), 0 } },
5939 & ifmt_mclracc_0, { 0x1ee0ec0 }
5941 /* mrdacc$pack $ACC40Si,$FRintk */
5943 { 0, 0, 0, 0 },
5944 { { MNEM, OP (PACK), ' ', OP (ACC40SI), ',', OP (FRINTK), 0 } },
5945 & ifmt_mrdacc, { 0x1ec0f00 }
5947 /* mrdaccg$pack $ACCGi,$FRintk */
5949 { 0, 0, 0, 0 },
5950 { { MNEM, OP (PACK), ' ', OP (ACCGI), ',', OP (FRINTK), 0 } },
5951 & ifmt_mrdaccg, { 0x1ec0f80 }
5953 /* mwtacc$pack $FRinti,$ACC40Sk */
5955 { 0, 0, 0, 0 },
5956 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (ACC40SK), 0 } },
5957 & ifmt_mwtacc, { 0x1ec0f40 }
5959 /* mwtaccg$pack $FRinti,$ACCGk */
5961 { 0, 0, 0, 0 },
5962 { { MNEM, OP (PACK), ' ', OP (FRINTI), ',', OP (ACCGK), 0 } },
5963 & ifmt_mwtaccg, { 0x1ec0fc0 }
5965 /* mcop1$pack $FRi,$FRj,$FRk */
5967 { 0, 0, 0, 0 },
5968 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5969 & ifmt_fadds, { 0x1f00000 }
5971 /* mcop2$pack $FRi,$FRj,$FRk */
5973 { 0, 0, 0, 0 },
5974 { { MNEM, OP (PACK), ' ', OP (FRI), ',', OP (FRJ), ',', OP (FRK), 0 } },
5975 & ifmt_fadds, { 0x1f40000 }
5977 /* fnop$pack */
5979 { 0, 0, 0, 0 },
5980 { { MNEM, OP (PACK), 0 } },
5981 & ifmt_fnop, { 0x1e40340 }
5985 #undef A
5986 #undef OPERAND
5987 #undef MNEM
5988 #undef OP
5990 /* Formats for ALIAS macro-insns. */
5992 #if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
5993 #define F(f) & frv_cgen_ifld_table[FRV_##f]
5994 #else
5995 #define F(f) & frv_cgen_ifld_table[FRV_/**/f]
5996 #endif
5997 static const CGEN_IFMT ifmt_nop ATTRIBUTE_UNUSED = {
5998 32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
6001 static const CGEN_IFMT ifmt_ret ATTRIBUTE_UNUSED = {
6002 32, 32, 0x7fffffff, { { F (F_PACK) }, { F (F_INT_CC) }, { F (F_ICCI_2_NULL) }, { F (F_OP) }, { F (F_HINT) }, { F (F_OPE3) }, { F (F_CCOND_NULL) }, { F (F_S12_NULL) }, { 0 } }
6005 static const CGEN_IFMT ifmt_cmp ATTRIBUTE_UNUSED = {
6006 32, 32, 0x7ffc03c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_OPE2) }, { F (F_GRJ) }, { 0 } }
6009 static const CGEN_IFMT ifmt_cmpi ATTRIBUTE_UNUSED = {
6010 32, 32, 0x7ffc0000, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_ICCI_1) }, { F (F_S10) }, { 0 } }
6013 static const CGEN_IFMT ifmt_ccmp ATTRIBUTE_UNUSED = {
6014 32, 32, 0x7ffc00c0, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
6017 static const CGEN_IFMT ifmt_mov ATTRIBUTE_UNUSED = {
6018 32, 32, 0x1fc0fff, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_D12) }, { 0 } }
6021 static const CGEN_IFMT ifmt_cmov ATTRIBUTE_UNUSED = {
6022 32, 32, 0x1fc00ff, { { F (F_PACK) }, { F (F_GRK) }, { F (F_OP) }, { F (F_GRI) }, { F (F_CCI) }, { F (F_COND) }, { F (F_OPE4) }, { F (F_GRJ) }, { 0 } }
6025 #undef F
6027 /* Each non-simple macro entry points to an array of expansion possibilities. */
6029 #if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
6030 #define A(a) (1 << CGEN_INSN_##a)
6031 #else
6032 #define A(a) (1 << CGEN_INSN_/**/a)
6033 #endif
6034 #if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
6035 #define OPERAND(op) FRV_OPERAND_##op
6036 #else
6037 #define OPERAND(op) FRV_OPERAND_/**/op
6038 #endif
6039 #define MNEM CGEN_SYNTAX_MNEMONIC /* syntax value for mnemonic */
6040 #define OP(field) CGEN_SYNTAX_MAKE_FIELD (OPERAND (field))
6042 /* The macro instruction table. */
6044 static const CGEN_IBASE frv_cgen_macro_insn_table[] =
6046 /* nop$pack */
6048 -1, "nop", "nop", 32,
6049 { 0|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6051 /* ret$pack */
6053 -1, "ret", "ret", 32,
6054 { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_B01, 0 } }, { { FR400_MAJOR_B_3, 0 } }, { { FR450_MAJOR_B_3, 0 } }, { { FR500_MAJOR_B_3, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6056 /* cmp$pack $GRi,$GRj,$ICCi_1 */
6058 -1, "cmp", "cmp", 32,
6059 { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6061 /* cmpi$pack $GRi,$s10,$ICCi_1 */
6063 -1, "cmpi", "cmpi", 32,
6064 { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6066 /* ccmp$pack $GRi,$GRj,$CCi,$cond */
6068 -1, "ccmp", "ccmp", 32,
6069 { 0|A(CONDITIONAL)|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6071 /* mov$pack $GRi,$GRk */
6073 -1, "mov", "mov", 32,
6074 { 0|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6076 /* cmov$pack $GRi,$GRk,$CCi,$cond */
6078 -1, "cmov", "cmov", 32,
6079 { 0|A(CONDITIONAL)|A(NO_DIS)|A(ALIAS), { { { (1<<MACH_BASE), 0 } }, { { UNIT_IALL, 0 } }, { { FR400_MAJOR_I_1, 0 } }, { { FR450_MAJOR_I_1, 0 } }, { { FR500_MAJOR_I_1, 0 } }, { { FR550_MAJOR_NONE, 0 } } } }
6083 /* The macro instruction opcode table. */
6085 static const CGEN_OPCODE frv_cgen_macro_insn_opcode_table[] =
6087 /* nop$pack */
6089 { 0, 0, 0, 0 },
6090 { { MNEM, OP (PACK), 0 } },
6091 & ifmt_nop, { 0x880000 }
6093 /* ret$pack */
6095 { 0, 0, 0, 0 },
6096 { { MNEM, OP (PACK), 0 } },
6097 & ifmt_ret, { 0x403a4000 }
6099 /* cmp$pack $GRi,$GRj,$ICCi_1 */
6101 { 0, 0, 0, 0 },
6102 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (ICCI_1), 0 } },
6103 & ifmt_cmp, { 0x140 }
6105 /* cmpi$pack $GRi,$s10,$ICCi_1 */
6107 { 0, 0, 0, 0 },
6108 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (S10), ',', OP (ICCI_1), 0 } },
6109 & ifmt_cmpi, { 0x540000 }
6111 /* ccmp$pack $GRi,$GRj,$CCi,$cond */
6113 { 0, 0, 0, 0 },
6114 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRJ), ',', OP (CCI), ',', OP (COND), 0 } },
6115 & ifmt_ccmp, { 0x1640040 }
6117 /* mov$pack $GRi,$GRk */
6119 { 0, 0, 0, 0 },
6120 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), 0 } },
6121 & ifmt_mov, { 0x880000 }
6123 /* cmov$pack $GRi,$GRk,$CCi,$cond */
6125 { 0, 0, 0, 0 },
6126 { { MNEM, OP (PACK), ' ', OP (GRI), ',', OP (GRK), ',', OP (CCI), ',', OP (COND), 0 } },
6127 & ifmt_cmov, { 0x1680040 }
6131 #undef A
6132 #undef OPERAND
6133 #undef MNEM
6134 #undef OP
6136 #ifndef CGEN_ASM_HASH_P
6137 #define CGEN_ASM_HASH_P(insn) 1
6138 #endif
6140 #ifndef CGEN_DIS_HASH_P
6141 #define CGEN_DIS_HASH_P(insn) 1
6142 #endif
6144 /* Return non-zero if INSN is to be added to the hash table.
6145 Targets are free to override CGEN_{ASM,DIS}_HASH_P in the .opc file. */
6147 static int
6148 asm_hash_insn_p (insn)
6149 const CGEN_INSN *insn ATTRIBUTE_UNUSED;
6151 return CGEN_ASM_HASH_P (insn);
6154 static int
6155 dis_hash_insn_p (insn)
6156 const CGEN_INSN *insn;
6158 /* If building the hash table and the NO-DIS attribute is present,
6159 ignore. */
6160 if (CGEN_INSN_ATTR_VALUE (insn, CGEN_INSN_NO_DIS))
6161 return 0;
6162 return CGEN_DIS_HASH_P (insn);
6165 #ifndef CGEN_ASM_HASH
6166 #define CGEN_ASM_HASH_SIZE 127
6167 #ifdef CGEN_MNEMONIC_OPERANDS
6168 #define CGEN_ASM_HASH(mnem) (*(unsigned char *) (mnem) % CGEN_ASM_HASH_SIZE)
6169 #else
6170 #define CGEN_ASM_HASH(mnem) (*(unsigned char *) (mnem) % CGEN_ASM_HASH_SIZE) /*FIXME*/
6171 #endif
6172 #endif
6174 /* It doesn't make much sense to provide a default here,
6175 but while this is under development we do.
6176 BUFFER is a pointer to the bytes of the insn, target order.
6177 VALUE is the first base_insn_bitsize bits as an int in host order. */
6179 #ifndef CGEN_DIS_HASH
6180 #define CGEN_DIS_HASH_SIZE 256
6181 #define CGEN_DIS_HASH(buf, value) (*(unsigned char *) (buf))
6182 #endif
6184 /* The result is the hash value of the insn.
6185 Targets are free to override CGEN_{ASM,DIS}_HASH in the .opc file. */
6187 static unsigned int
6188 asm_hash_insn (mnem)
6189 const char * mnem;
6191 return CGEN_ASM_HASH (mnem);
6194 /* BUF is a pointer to the bytes of the insn, target order.
6195 VALUE is the first base_insn_bitsize bits as an int in host order. */
6197 static unsigned int
6198 dis_hash_insn (buf, value)
6199 const char * buf ATTRIBUTE_UNUSED;
6200 CGEN_INSN_INT value ATTRIBUTE_UNUSED;
6202 return CGEN_DIS_HASH (buf, value);
6205 /* Set the recorded length of the insn in the CGEN_FIELDS struct. */
6207 static void
6208 set_fields_bitsize (CGEN_FIELDS *fields, int size)
6210 CGEN_FIELDS_BITSIZE (fields) = size;
6213 /* Function to call before using the operand instance table.
6214 This plugs the opcode entries and macro instructions into the cpu table. */
6216 void
6217 frv_cgen_init_opcode_table (CGEN_CPU_DESC cd)
6219 int i;
6220 int num_macros = (sizeof (frv_cgen_macro_insn_table) /
6221 sizeof (frv_cgen_macro_insn_table[0]));
6222 const CGEN_IBASE *ib = & frv_cgen_macro_insn_table[0];
6223 const CGEN_OPCODE *oc = & frv_cgen_macro_insn_opcode_table[0];
6224 CGEN_INSN *insns = xmalloc (num_macros * sizeof (CGEN_INSN));
6226 /* This test has been added to avoid a warning generated
6227 if memset is called with a third argument of value zero. */
6228 if (num_macros >= 1)
6229 memset (insns, 0, num_macros * sizeof (CGEN_INSN));
6230 for (i = 0; i < num_macros; ++i)
6232 insns[i].base = &ib[i];
6233 insns[i].opcode = &oc[i];
6234 frv_cgen_build_insn_regex (& insns[i]);
6236 cd->macro_insn_table.init_entries = insns;
6237 cd->macro_insn_table.entry_size = sizeof (CGEN_IBASE);
6238 cd->macro_insn_table.num_init_entries = num_macros;
6240 oc = & frv_cgen_insn_opcode_table[0];
6241 insns = (CGEN_INSN *) cd->insn_table.init_entries;
6242 for (i = 0; i < MAX_INSNS; ++i)
6244 insns[i].opcode = &oc[i];
6245 frv_cgen_build_insn_regex (& insns[i]);
6248 cd->sizeof_fields = sizeof (CGEN_FIELDS);
6249 cd->set_fields_bitsize = set_fields_bitsize;
6251 cd->asm_hash_p = asm_hash_insn_p;
6252 cd->asm_hash = asm_hash_insn;
6253 cd->asm_hash_size = CGEN_ASM_HASH_SIZE;
6255 cd->dis_hash_p = dis_hash_insn_p;
6256 cd->dis_hash = dis_hash_insn;
6257 cd->dis_hash_size = CGEN_DIS_HASH_SIZE;