1 /* CPU family header for frvbf.
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
5 Copyright 1996-2013 Free Software Foundation, Inc.
7 This file is part of the GNU simulators.
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)
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, see <http://www.gnu.org/licenses/>.
27 /* Maximum number of instructions that are fetched at a time.
28 This is for LIW type instructions sets (e.g. m32r). */
29 #define MAX_LIW_INSNS 1
31 /* Maximum number of instructions that can be executed in parallel. */
32 #define MAX_PARALLEL_INSNS 8
34 /* The size of an "int" needed to hold an instruction word.
35 This is usually 32 bits, but some architectures needs 64 bits. */
36 typedef CGEN_INSN_INT CGEN_INSN_WORD;
38 #include "cgen-engine.h"
40 /* CPU state information. */
42 /* Hardware elements. */
44 /* relocation annotation */
46 #define GET_H_RELOC_ANN() CPU (h_reloc_ann)
47 #define SET_H_RELOC_ANN(x) (CPU (h_reloc_ann) = (x))
50 #define GET_H_PC() CPU (h_pc)
51 #define SET_H_PC(x) (CPU (h_pc) = (x))
54 #define GET_H_PSR_IMPLE() CPU (h_psr_imple)
55 #define SET_H_PSR_IMPLE(x) (CPU (h_psr_imple) = (x))
58 #define GET_H_PSR_VER() CPU (h_psr_ver)
59 #define SET_H_PSR_VER(x) (CPU (h_psr_ver) = (x))
62 #define GET_H_PSR_ICE() CPU (h_psr_ice)
63 #define SET_H_PSR_ICE(x) (CPU (h_psr_ice) = (x))
66 #define GET_H_PSR_NEM() CPU (h_psr_nem)
67 #define SET_H_PSR_NEM(x) (CPU (h_psr_nem) = (x))
70 #define GET_H_PSR_CM() CPU (h_psr_cm)
71 #define SET_H_PSR_CM(x) (CPU (h_psr_cm) = (x))
74 #define GET_H_PSR_BE() CPU (h_psr_be)
75 #define SET_H_PSR_BE(x) (CPU (h_psr_be) = (x))
78 #define GET_H_PSR_ESR() CPU (h_psr_esr)
79 #define SET_H_PSR_ESR(x) (CPU (h_psr_esr) = (x))
82 #define GET_H_PSR_EF() CPU (h_psr_ef)
83 #define SET_H_PSR_EF(x) (CPU (h_psr_ef) = (x))
86 #define GET_H_PSR_EM() CPU (h_psr_em)
87 #define SET_H_PSR_EM(x) (CPU (h_psr_em) = (x))
90 #define GET_H_PSR_PIL() CPU (h_psr_pil)
91 #define SET_H_PSR_PIL(x) (CPU (h_psr_pil) = (x))
94 #define GET_H_PSR_PS() CPU (h_psr_ps)
95 #define SET_H_PSR_PS(x) (CPU (h_psr_ps) = (x))
98 #define GET_H_PSR_ET() CPU (h_psr_et)
99 #define SET_H_PSR_ET(x) (CPU (h_psr_et) = (x))
102 #define GET_H_PSR_S() CPU (h_psr_s)
103 #define SET_H_PSR_S(x) \
105 frvbf_h_psr_s_set_handler (current_cpu, (x));\
109 #define GET_H_TBR_TBA() CPU (h_tbr_tba)
110 #define SET_H_TBR_TBA(x) (CPU (h_tbr_tba) = (x))
113 #define GET_H_TBR_TT() CPU (h_tbr_tt)
114 #define SET_H_TBR_TT(x) (CPU (h_tbr_tt) = (x))
117 #define GET_H_BPSR_BS() CPU (h_bpsr_bs)
118 #define SET_H_BPSR_BS(x) (CPU (h_bpsr_bs) = (x))
121 #define GET_H_BPSR_BET() CPU (h_bpsr_bet)
122 #define SET_H_BPSR_BET(x) (CPU (h_bpsr_bet) = (x))
123 /* general registers */
125 #define GET_H_GR(index) frvbf_h_gr_get_handler (current_cpu, index)
126 #define SET_H_GR(index, x) \
128 frvbf_h_gr_set_handler (current_cpu, (index), (x));\
130 /* floating point registers */
132 #define GET_H_FR(index) frvbf_h_fr_get_handler (current_cpu, index)
133 #define SET_H_FR(index, x) \
135 frvbf_h_fr_set_handler (current_cpu, (index), (x));\
137 /* coprocessor registers */
139 #define GET_H_CPR(a1) CPU (h_cpr)[a1]
140 #define SET_H_CPR(a1, x) (CPU (h_cpr)[a1] = (x))
141 /* special purpose registers */
143 #define GET_H_SPR(index) frvbf_h_spr_get_handler (current_cpu, index)
144 #define SET_H_SPR(index, x) \
146 frvbf_h_spr_set_handler (current_cpu, (index), (x));\
148 /* Integer condition code registers */
150 #define GET_H_ICCR(a1) CPU (h_iccr)[a1]
151 #define SET_H_ICCR(a1, x) (CPU (h_iccr)[a1] = (x))
152 /* Floating point condition code registers */
154 #define GET_H_FCCR(a1) CPU (h_fccr)[a1]
155 #define SET_H_FCCR(a1, x) (CPU (h_fccr)[a1] = (x))
156 /* Condition code registers */
158 #define GET_H_CCCR(a1) CPU (h_cccr)[a1]
159 #define SET_H_CCCR(a1, x) (CPU (h_cccr)[a1] = (x))
161 #define CPU_CGEN_HW(cpu) (& (cpu)->cpu_data.hardware)
166 #define GET_H_GR_DOUBLE(index) frvbf_h_gr_double_get_handler (current_cpu, index)
167 #define SET_H_GR_DOUBLE(index, x) \
169 frvbf_h_gr_double_set_handler (current_cpu, (index), (x));\
171 #define GET_H_GR_HI(index) frvbf_h_gr_hi_get_handler (current_cpu, index)
172 #define SET_H_GR_HI(index, x) \
174 frvbf_h_gr_hi_set_handler (current_cpu, (index), (x));\
176 #define GET_H_GR_LO(index) frvbf_h_gr_lo_get_handler (current_cpu, index)
177 #define SET_H_GR_LO(index, x) \
179 frvbf_h_gr_lo_set_handler (current_cpu, (index), (x));\
181 #define GET_H_FR_DOUBLE(index) frvbf_h_fr_double_get_handler (current_cpu, index)
182 #define SET_H_FR_DOUBLE(index, x) \
184 frvbf_h_fr_double_set_handler (current_cpu, (index), (x));\
186 #define GET_H_FR_INT(index) frvbf_h_fr_int_get_handler (current_cpu, index)
187 #define SET_H_FR_INT(index, x) \
189 frvbf_h_fr_int_set_handler (current_cpu, (index), (x));\
191 #define GET_H_FR_HI(index) SRLSI (GET_H_FR_INT (index), 16)
192 #define SET_H_FR_HI(index, x) \
194 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 65535), SLLHI ((x), 16)));\
196 #define GET_H_FR_LO(index) ANDSI (GET_H_FR_INT (index), 65535)
197 #define SET_H_FR_LO(index, x) \
199 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffff0000), ANDHI ((x), 65535)));\
201 #define GET_H_FR_0(index) ANDSI (GET_H_FR_INT (index), 255)
202 #define SET_H_FR_0(index, x) \
205 if (GTUSI ((x), 255)) {\
208 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffffff00), (x)));\
211 #define GET_H_FR_1(index) ANDSI (SRLSI (GET_H_FR_INT (index), 8), 255)
212 #define SET_H_FR_1(index, x) \
215 if (GTUSI ((x), 255)) {\
218 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffff00ff), SLLHI ((x), 8)));\
221 #define GET_H_FR_2(index) ANDSI (SRLSI (GET_H_FR_INT (index), 16), 255)
222 #define SET_H_FR_2(index, x) \
225 if (GTUSI ((x), 255)) {\
228 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xff00ffff), SLLHI ((x), 16)));\
231 #define GET_H_FR_3(index) ANDSI (SRLSI (GET_H_FR_INT (index), 24), 255)
232 #define SET_H_FR_3(index, x) \
235 if (GTUSI ((x), 255)) {\
238 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 16777215), SLLHI ((x), 24)));\
241 #define GET_H_CPR_DOUBLE(index) frvbf_h_cpr_double_get_handler (current_cpu, index)
242 #define SET_H_CPR_DOUBLE(index, x) \
244 frvbf_h_cpr_double_set_handler (current_cpu, (index), (x));\
246 #define GET_H_ACCG(index) ANDSI (GET_H_SPR (((index) + (1472))), 255)
247 #define SET_H_ACCG(index, x) \
249 CPU (h_spr[(((index)) + (1472))]) = ANDSI ((x), 255);\
251 #define GET_H_ACC40S(index) ORDI (SLLDI (EXTQIDI (TRUNCSIQI (GET_H_SPR (((index) + (1472))))), 32), ZEXTSIDI (GET_H_SPR (((index) + (1408)))))
252 #define SET_H_ACC40S(index, x) \
255 frv_check_spr_write_access (current_cpu, (((index)) + (1408)));\
256 CPU (h_spr[(((index)) + (1472))]) = ANDDI (SRLDI ((x), 32), 255);\
257 CPU (h_spr[(((index)) + (1408))]) = TRUNCDISI ((x));\
260 #define GET_H_ACC40U(index) ORDI (SLLDI (ZEXTSIDI (GET_H_SPR (((index) + (1472)))), 32), ZEXTSIDI (GET_H_SPR (((index) + (1408)))))
261 #define SET_H_ACC40U(index, x) \
264 frv_check_spr_write_access (current_cpu, (((index)) + (1408)));\
265 CPU (h_spr[(((index)) + (1472))]) = ANDDI (SRLDI ((x), 32), 255);\
266 CPU (h_spr[(((index)) + (1408))]) = TRUNCDISI ((x));\
269 #define GET_H_IACC0(index) ORDI (SLLDI (EXTSIDI (GET_H_SPR (((UINT) 280))), 32), ZEXTSIDI (GET_H_SPR (((UINT) 281))))
270 #define SET_H_IACC0(index, x) \
273 SET_H_SPR (((UINT) 280), TRUNCDISI (SRLDI ((x), 32)));\
274 SET_H_SPR (((UINT) 281), TRUNCDISI ((x)));\
278 /* Cover fns for register access. */
279 BI frvbf_h_reloc_ann_get (SIM_CPU *);
280 void frvbf_h_reloc_ann_set (SIM_CPU *, BI);
281 USI frvbf_h_pc_get (SIM_CPU *);
282 void frvbf_h_pc_set (SIM_CPU *, USI);
283 UQI frvbf_h_psr_imple_get (SIM_CPU *);
284 void frvbf_h_psr_imple_set (SIM_CPU *, UQI);
285 UQI frvbf_h_psr_ver_get (SIM_CPU *);
286 void frvbf_h_psr_ver_set (SIM_CPU *, UQI);
287 BI frvbf_h_psr_ice_get (SIM_CPU *);
288 void frvbf_h_psr_ice_set (SIM_CPU *, BI);
289 BI frvbf_h_psr_nem_get (SIM_CPU *);
290 void frvbf_h_psr_nem_set (SIM_CPU *, BI);
291 BI frvbf_h_psr_cm_get (SIM_CPU *);
292 void frvbf_h_psr_cm_set (SIM_CPU *, BI);
293 BI frvbf_h_psr_be_get (SIM_CPU *);
294 void frvbf_h_psr_be_set (SIM_CPU *, BI);
295 BI frvbf_h_psr_esr_get (SIM_CPU *);
296 void frvbf_h_psr_esr_set (SIM_CPU *, BI);
297 BI frvbf_h_psr_ef_get (SIM_CPU *);
298 void frvbf_h_psr_ef_set (SIM_CPU *, BI);
299 BI frvbf_h_psr_em_get (SIM_CPU *);
300 void frvbf_h_psr_em_set (SIM_CPU *, BI);
301 UQI frvbf_h_psr_pil_get (SIM_CPU *);
302 void frvbf_h_psr_pil_set (SIM_CPU *, UQI);
303 BI frvbf_h_psr_ps_get (SIM_CPU *);
304 void frvbf_h_psr_ps_set (SIM_CPU *, BI);
305 BI frvbf_h_psr_et_get (SIM_CPU *);
306 void frvbf_h_psr_et_set (SIM_CPU *, BI);
307 BI frvbf_h_psr_s_get (SIM_CPU *);
308 void frvbf_h_psr_s_set (SIM_CPU *, BI);
309 USI frvbf_h_tbr_tba_get (SIM_CPU *);
310 void frvbf_h_tbr_tba_set (SIM_CPU *, USI);
311 UQI frvbf_h_tbr_tt_get (SIM_CPU *);
312 void frvbf_h_tbr_tt_set (SIM_CPU *, UQI);
313 BI frvbf_h_bpsr_bs_get (SIM_CPU *);
314 void frvbf_h_bpsr_bs_set (SIM_CPU *, BI);
315 BI frvbf_h_bpsr_bet_get (SIM_CPU *);
316 void frvbf_h_bpsr_bet_set (SIM_CPU *, BI);
317 USI frvbf_h_gr_get (SIM_CPU *, UINT);
318 void frvbf_h_gr_set (SIM_CPU *, UINT, USI);
319 DI frvbf_h_gr_double_get (SIM_CPU *, UINT);
320 void frvbf_h_gr_double_set (SIM_CPU *, UINT, DI);
321 UHI frvbf_h_gr_hi_get (SIM_CPU *, UINT);
322 void frvbf_h_gr_hi_set (SIM_CPU *, UINT, UHI);
323 UHI frvbf_h_gr_lo_get (SIM_CPU *, UINT);
324 void frvbf_h_gr_lo_set (SIM_CPU *, UINT, UHI);
325 SF frvbf_h_fr_get (SIM_CPU *, UINT);
326 void frvbf_h_fr_set (SIM_CPU *, UINT, SF);
327 DF frvbf_h_fr_double_get (SIM_CPU *, UINT);
328 void frvbf_h_fr_double_set (SIM_CPU *, UINT, DF);
329 USI frvbf_h_fr_int_get (SIM_CPU *, UINT);
330 void frvbf_h_fr_int_set (SIM_CPU *, UINT, USI);
331 UHI frvbf_h_fr_hi_get (SIM_CPU *, UINT);
332 void frvbf_h_fr_hi_set (SIM_CPU *, UINT, UHI);
333 UHI frvbf_h_fr_lo_get (SIM_CPU *, UINT);
334 void frvbf_h_fr_lo_set (SIM_CPU *, UINT, UHI);
335 UHI frvbf_h_fr_0_get (SIM_CPU *, UINT);
336 void frvbf_h_fr_0_set (SIM_CPU *, UINT, UHI);
337 UHI frvbf_h_fr_1_get (SIM_CPU *, UINT);
338 void frvbf_h_fr_1_set (SIM_CPU *, UINT, UHI);
339 UHI frvbf_h_fr_2_get (SIM_CPU *, UINT);
340 void frvbf_h_fr_2_set (SIM_CPU *, UINT, UHI);
341 UHI frvbf_h_fr_3_get (SIM_CPU *, UINT);
342 void frvbf_h_fr_3_set (SIM_CPU *, UINT, UHI);
343 SI frvbf_h_cpr_get (SIM_CPU *, UINT);
344 void frvbf_h_cpr_set (SIM_CPU *, UINT, SI);
345 DI frvbf_h_cpr_double_get (SIM_CPU *, UINT);
346 void frvbf_h_cpr_double_set (SIM_CPU *, UINT, DI);
347 USI frvbf_h_spr_get (SIM_CPU *, UINT);
348 void frvbf_h_spr_set (SIM_CPU *, UINT, USI);
349 USI frvbf_h_accg_get (SIM_CPU *, UINT);
350 void frvbf_h_accg_set (SIM_CPU *, UINT, USI);
351 DI frvbf_h_acc40S_get (SIM_CPU *, UINT);
352 void frvbf_h_acc40S_set (SIM_CPU *, UINT, DI);
353 UDI frvbf_h_acc40U_get (SIM_CPU *, UINT);
354 void frvbf_h_acc40U_set (SIM_CPU *, UINT, UDI);
355 DI frvbf_h_iacc0_get (SIM_CPU *, UINT);
356 void frvbf_h_iacc0_set (SIM_CPU *, UINT, DI);
357 UQI frvbf_h_iccr_get (SIM_CPU *, UINT);
358 void frvbf_h_iccr_set (SIM_CPU *, UINT, UQI);
359 UQI frvbf_h_fccr_get (SIM_CPU *, UINT);
360 void frvbf_h_fccr_set (SIM_CPU *, UINT, UQI);
361 UQI frvbf_h_cccr_get (SIM_CPU *, UINT);
362 void frvbf_h_cccr_set (SIM_CPU *, UINT, UQI);
364 /* These must be hand-written. */
365 extern CPUREG_FETCH_FN frvbf_fetch_register;
366 extern CPUREG_STORE_FN frvbf_store_register;
374 DI prev_fr_complex_1;
375 DI prev_fr_complex_2;
428 /* Instruction argument buffer. */
431 struct { /* no operands */
435 unsigned short out_h_spr_USI_2;
446 unsigned char out_FRkhi;
451 unsigned char out_FRklo;
456 unsigned char out_GRk;
461 unsigned char out_GRkhi;
466 unsigned char out_GRklo;
471 unsigned char in_ACCGi;
472 unsigned char out_FRintk;
477 unsigned char in_FRkhi;
478 unsigned char out_FRkhi;
483 unsigned char in_FRklo;
484 unsigned char out_FRklo;
489 unsigned char in_FRdoublej;
490 unsigned char out_FRintk;
495 unsigned char in_FRintj;
496 unsigned char out_FRdoublek;
502 unsigned char in_GRi;
508 unsigned char in_FCCi_2;
514 unsigned char in_ICCi_2;
519 unsigned short in_spr;
520 unsigned char out_GRj;
525 unsigned short out_spr;
526 unsigned char in_GRj;
531 unsigned char in_ACCGk;
532 unsigned char in_FRinti;
533 unsigned char out_ACCGk;
539 unsigned char in_ACC40Si;
540 unsigned char out_FRintk;
546 unsigned char in_GRi;
547 unsigned char in_GRj;
553 unsigned char in_GRi;
554 unsigned char in_GRj;
560 unsigned char in_FRdoublek;
561 unsigned char in_GRi;
567 unsigned char in_GRdoublek;
568 unsigned char in_GRi;
574 unsigned char in_FRintk;
575 unsigned char in_GRi;
581 unsigned char in_GRi;
582 unsigned char out_FRdoublek;
588 unsigned char in_GRi;
589 unsigned char out_FRintk;
595 unsigned char in_GRi;
596 unsigned char out_GRdoublek;
601 unsigned char in_GRj;
602 unsigned char in_h_iacc0_DI_0;
603 unsigned char out_GRk;
609 unsigned char in_ACC40Si;
610 unsigned char in_FRintj;
611 unsigned char out_FRintk;
617 unsigned char in_FRinti;
618 unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRinti_1;
619 unsigned char out_FRintk;
624 unsigned char in_FRintk;
625 unsigned char out_FRintk;
626 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
627 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
633 unsigned char in_FRdoublei;
634 unsigned char in_FRdoublej;
635 unsigned char out_FCCi_2;
640 unsigned char in_FRj;
641 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_1;
642 unsigned char out_FRintk;
643 unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintk_1;
648 unsigned char in_FRintj;
649 unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintj_1;
650 unsigned char out_FRk;
651 unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_1;
657 unsigned char in_CRi;
658 unsigned char in_CRj;
659 unsigned char out_CRk;
665 unsigned char in_GRi;
666 unsigned char in_GRk;
667 unsigned char out_GRk;
672 unsigned char in_GRi;
673 unsigned char in_GRj;
674 unsigned char in_h_iacc0_DI_0;
675 unsigned char out_h_iacc0_DI_0;
681 unsigned char in_FRintieven;
682 unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintieven_1;
683 unsigned char out_FRintkeven;
684 unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintkeven_1;
690 unsigned char in_ACC40Si;
691 unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_1;
692 unsigned char out_FRintkeven;
693 unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintkeven_1;
699 unsigned char in_FRinti;
700 unsigned char in_FRintj;
701 unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRinti_1;
702 unsigned char out_FRintk;
708 unsigned char in_FRdoublei;
709 unsigned char in_FRdoublej;
710 unsigned char in_FRdoublek;
711 unsigned char out_FRdoublek;
718 unsigned char in_CCi;
719 unsigned char in_FRj;
720 unsigned char out_FRintk;
727 unsigned char in_CCi;
728 unsigned char in_FRintj;
729 unsigned char out_FRk;
736 unsigned char in_CCi;
737 unsigned char in_FCCi_3;
738 unsigned char out_CRj_float;
745 unsigned char in_CCi;
746 unsigned char in_ICCi_3;
747 unsigned char out_CRj_int;
753 unsigned short in_h_spr_USI_272;
754 unsigned short in_h_spr_USI_273;
755 unsigned short out_h_spr_USI_273;
756 unsigned char in_FCCi_2;
762 unsigned short in_h_spr_USI_272;
763 unsigned short in_h_spr_USI_273;
764 unsigned short out_h_spr_USI_273;
765 unsigned char in_ICCi_2;
771 unsigned char in_CPRdoublek;
772 unsigned char in_GRi;
773 unsigned char in_GRj;
774 unsigned char out_GRi;
780 unsigned char in_CPRk;
781 unsigned char in_GRi;
782 unsigned char in_GRj;
783 unsigned char out_GRi;
789 unsigned char in_GRi;
790 unsigned char in_GRj;
791 unsigned char out_CPRdoublek;
792 unsigned char out_GRi;
798 unsigned char in_GRi;
799 unsigned char in_GRj;
800 unsigned char out_CPRk;
801 unsigned char out_GRi;
806 unsigned char in_FRintk;
807 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
808 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
809 unsigned char out_FRintk;
810 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
811 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
819 unsigned char in_CCi;
820 unsigned char in_GRi;
821 unsigned char in_GRj;
828 unsigned char in_GRi;
829 unsigned char in_ICCi_1;
830 unsigned char out_GRdoublek;
831 unsigned char out_ICCi_1;
838 unsigned char in_GRi;
839 unsigned char in_ICCi_1;
840 unsigned char out_GRk;
841 unsigned char out_ICCi_1;
849 unsigned char in_CCi;
850 unsigned char in_FRinti;
851 unsigned char in_FRintj;
852 unsigned char out_FRintk;
860 unsigned char in_CCi;
861 unsigned char in_FRi;
862 unsigned char in_FRj;
863 unsigned char out_FCCi_2;
870 unsigned char in_CCi;
871 unsigned char in_FRintk;
872 unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintk_1;
873 unsigned char out_GRj;
874 unsigned char out_h_gr_USI_add__INT_index_of__INT_GRj_1;
881 unsigned char in_CCi;
882 unsigned char in_GRj;
883 unsigned char in_h_gr_USI_add__INT_index_of__INT_GRj_1;
884 unsigned char out_FRintk;
885 unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintk_1;
892 unsigned char in_GRi;
893 unsigned char in_GRj;
894 unsigned char in_ICCi_1;
895 unsigned char out_GRdoublek;
896 unsigned char out_ICCi_1;
903 unsigned char in_GRi;
904 unsigned char in_GRj;
905 unsigned char in_ICCi_1;
906 unsigned char out_GRk;
907 unsigned char out_ICCi_1;
915 unsigned char in_CCi;
916 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
917 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
918 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
919 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
924 unsigned char in_ACC40Si;
925 unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_1;
926 unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_2;
927 unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_3;
928 unsigned char out_ACC40Sk;
929 unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1;
930 unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2;
931 unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3;
936 unsigned char in_FRintj;
937 unsigned char in_FRintk;
938 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0;
939 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0;
940 unsigned char out_FRintj;
941 unsigned char out_FRintk;
942 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
943 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
949 unsigned char in_FRinti;
950 unsigned char in_FRintk;
951 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
952 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_1;
953 unsigned char out_FRinti;
954 unsigned char out_FRintk;
955 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
962 unsigned char in_FRi;
963 unsigned char in_FRj;
964 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_1;
965 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_1;
966 unsigned char out_FCCi_2;
967 unsigned char out_h_fccr_UQI_add__INT_index_of__INT_FCCi_2_1;
975 unsigned char in_CCi;
976 unsigned char in_FRi;
977 unsigned char in_FRj;
978 unsigned char in_FRk;
979 unsigned char out_FRk;
985 unsigned short out_h_spr_USI_1;
986 unsigned short out_h_spr_USI_768;
987 unsigned short out_h_spr_USI_769;
988 unsigned short out_h_spr_USI_770;
989 unsigned short out_h_spr_USI_771;
990 unsigned char in_FCCi_2;
991 unsigned char in_GRi;
997 unsigned short out_h_spr_USI_1;
998 unsigned short out_h_spr_USI_768;
999 unsigned short out_h_spr_USI_769;
1000 unsigned short out_h_spr_USI_770;
1001 unsigned short out_h_spr_USI_771;
1002 unsigned char in_GRi;
1003 unsigned char in_ICCi_2;
1008 unsigned char in_FRintk;
1009 unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintk_1;
1010 unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintk_2;
1011 unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintk_3;
1012 unsigned char out_GRj;
1013 unsigned char out_h_gr_USI_add__INT_index_of__INT_GRj_1;
1014 unsigned char out_h_gr_USI_add__INT_index_of__INT_GRj_2;
1015 unsigned char out_h_gr_USI_add__INT_index_of__INT_GRj_3;
1020 unsigned char in_GRj;
1021 unsigned char in_h_gr_USI_add__INT_index_of__INT_GRj_1;
1022 unsigned char in_h_gr_USI_add__INT_index_of__INT_GRj_2;
1023 unsigned char in_h_gr_USI_add__INT_index_of__INT_GRj_3;
1024 unsigned char out_FRintk;
1025 unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintk_1;
1026 unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintk_2;
1027 unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintk_3;
1035 unsigned char in_CCi;
1036 unsigned char in_GRi;
1037 unsigned char in_GRj;
1038 unsigned char in_GRk;
1039 unsigned char out_GRk;
1047 unsigned char in_CCi;
1048 unsigned char in_FRdoublek;
1049 unsigned char in_GRi;
1050 unsigned char in_GRj;
1051 unsigned char out_GRi;
1059 unsigned char in_CCi;
1060 unsigned char in_GRdoublek;
1061 unsigned char in_GRi;
1062 unsigned char in_GRj;
1063 unsigned char out_GRi;
1071 unsigned char in_CCi;
1072 unsigned char in_FRintk;
1073 unsigned char in_GRi;
1074 unsigned char in_GRj;
1075 unsigned char out_GRi;
1083 unsigned char in_CCi;
1084 unsigned char in_GRi;
1085 unsigned char in_GRj;
1086 unsigned char in_GRk;
1087 unsigned char out_GRi;
1095 unsigned char in_CCi;
1096 unsigned char in_GRi;
1097 unsigned char in_GRj;
1098 unsigned char out_FRdoublek;
1099 unsigned char out_GRi;
1107 unsigned char in_CCi;
1108 unsigned char in_GRi;
1109 unsigned char in_GRj;
1110 unsigned char out_GRdoublek;
1111 unsigned char out_GRi;
1119 unsigned char in_CCi;
1120 unsigned char in_GRi;
1121 unsigned char in_GRj;
1122 unsigned char out_FRintk;
1123 unsigned char out_GRi;
1131 unsigned char in_CCi;
1132 unsigned char in_GRi;
1133 unsigned char in_GRj;
1134 unsigned char out_GRi;
1135 unsigned char out_GRk;
1141 unsigned char in_FRinti;
1142 unsigned char in_FRintj;
1143 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1144 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0;
1145 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1146 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0;
1147 unsigned char out_FCCk;
1148 unsigned char out_h_fccr_UQI_add__INT_index_of__INT_FCCk_1;
1154 unsigned char in_FRinti;
1155 unsigned char in_FRintk;
1156 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1157 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1158 unsigned char out_FRinti;
1159 unsigned char out_FRintk;
1160 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
1161 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
1167 unsigned char in_FRi;
1168 unsigned char in_FRj;
1169 unsigned char in_FRk;
1170 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_1;
1171 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_1;
1172 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRk_1;
1173 unsigned char out_FRk;
1174 unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_1;
1180 unsigned short out_h_spr_USI_1;
1181 unsigned short out_h_spr_USI_768;
1182 unsigned short out_h_spr_USI_769;
1183 unsigned short out_h_spr_USI_770;
1184 unsigned short out_h_spr_USI_771;
1185 unsigned char in_FCCi_2;
1186 unsigned char in_GRi;
1187 unsigned char in_GRj;
1193 unsigned short out_h_spr_USI_1;
1194 unsigned short out_h_spr_USI_768;
1195 unsigned short out_h_spr_USI_769;
1196 unsigned short out_h_spr_USI_770;
1197 unsigned short out_h_spr_USI_771;
1198 unsigned char in_GRi;
1199 unsigned char in_GRj;
1200 unsigned char in_ICCi_2;
1208 unsigned char in_CCi;
1209 unsigned char in_GRi;
1210 unsigned char in_GRj;
1211 unsigned char in_h_iccr_UQI_and__INT_index_of__INT_CCi_3;
1212 unsigned char out_GRdoublek;
1213 unsigned char out_h_iccr_UQI_and__INT_index_of__INT_CCi_3;
1221 unsigned char in_CCi;
1222 unsigned char in_GRi;
1223 unsigned char in_GRj;
1224 unsigned char in_h_iccr_UQI_and__INT_index_of__INT_CCi_3;
1225 unsigned char out_GRk;
1226 unsigned char out_h_iccr_UQI_and__INT_index_of__INT_CCi_3;
1231 unsigned char in_FRinti;
1232 unsigned char in_FRintkeven;
1233 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1234 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1235 unsigned char out_FRinti;
1236 unsigned char out_FRintkeven;
1237 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1238 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_add__INT_0_1;
1239 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1240 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_add__INT_0_1;
1248 unsigned char in_CCi;
1249 unsigned char in_FRi;
1250 unsigned char in_FRj;
1251 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_1;
1252 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_1;
1253 unsigned char out_FRk;
1254 unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_1;
1262 unsigned char in_CCi;
1263 unsigned char in_FRintkeven;
1264 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1265 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1266 unsigned char out_FRintkeven;
1267 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1268 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1;
1269 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1270 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1;
1278 unsigned char in_CCi;
1279 unsigned char in_FRinti;
1280 unsigned char in_FRintj;
1281 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1282 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0;
1283 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1284 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0;
1285 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
1286 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
1292 unsigned char in_FRintieven;
1293 unsigned char in_FRintkeven;
1294 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0;
1295 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1;
1296 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1297 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1298 unsigned char out_FRintieven;
1299 unsigned char out_FRintkeven;
1300 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1301 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1;
1302 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1303 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1;
1309 unsigned char in_FRi;
1310 unsigned char in_FRj;
1311 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_1;
1312 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_2;
1313 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_3;
1314 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_1;
1315 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_2;
1316 unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_3;
1317 unsigned char out_FRk;
1318 unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_1;
1319 unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_2;
1320 unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_3;
1328 unsigned char in_ACC40Uk;
1329 unsigned char in_CCi;
1330 unsigned char in_FRinti;
1331 unsigned char in_FRintj;
1332 unsigned char in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1;
1333 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1334 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0;
1335 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1336 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0;
1337 unsigned char out_ACC40Uk;
1338 unsigned char out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1;
1346 unsigned char in_ACC40Sk;
1347 unsigned char in_CCi;
1348 unsigned char in_FRinti;
1349 unsigned char in_FRintj;
1350 unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1;
1351 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1352 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0;
1353 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1354 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0;
1355 unsigned char out_ACC40Sk;
1356 unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1;
1363 unsigned char in_CCi;
1364 unsigned char in_FRintjeven;
1365 unsigned char in_FRintk;
1366 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0;
1367 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1;
1368 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0;
1369 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1;
1370 unsigned char out_FRintjeven;
1371 unsigned char out_FRintk;
1372 unsigned char out_h_fr_0_UHI_add__INT_index_of__INT_FRintk_0;
1373 unsigned char out_h_fr_1_UHI_add__INT_index_of__INT_FRintk_0;
1374 unsigned char out_h_fr_2_UHI_add__INT_index_of__INT_FRintk_0;
1375 unsigned char out_h_fr_3_UHI_add__INT_index_of__INT_FRintk_0;
1382 unsigned char in_CCi;
1383 unsigned char in_FRintj;
1384 unsigned char in_FRintkeven;
1385 unsigned char in_h_fr_0_UHI_add__INT_index_of__INT_FRintj_0;
1386 unsigned char in_h_fr_1_UHI_add__INT_index_of__INT_FRintj_0;
1387 unsigned char in_h_fr_2_UHI_add__INT_index_of__INT_FRintj_0;
1388 unsigned char in_h_fr_3_UHI_add__INT_index_of__INT_FRintj_0;
1389 unsigned char out_FRintj;
1390 unsigned char out_FRintkeven;
1391 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1392 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1;
1393 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1394 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1;
1400 unsigned char in_FRintieven;
1401 unsigned char in_FRintjeven;
1402 unsigned char in_FRintkeven;
1403 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1404 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1405 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0;
1406 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1;
1407 unsigned char out_FRintieven;
1408 unsigned char out_FRintjeven;
1409 unsigned char out_FRintkeven;
1410 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1411 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1;
1412 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1413 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1;
1418 unsigned char in_FRintieven;
1419 unsigned char in_FRintk;
1420 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0;
1421 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1;
1422 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1423 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1424 unsigned char out_FRintieven;
1425 unsigned char out_FRintk;
1426 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
1427 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_2;
1428 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_add__INT_0_1;
1429 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_add__INT_2_1;
1430 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
1431 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_2;
1432 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_add__INT_0_1;
1433 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_add__INT_2_1;
1440 unsigned char in_CCi;
1441 unsigned char in_FRintj;
1442 unsigned char in_FRintk;
1443 unsigned char in_h_fr_0_UHI_add__INT_index_of__INT_FRintj_0;
1444 unsigned char in_h_fr_1_UHI_add__INT_index_of__INT_FRintj_0;
1445 unsigned char in_h_fr_2_UHI_add__INT_index_of__INT_FRintj_0;
1446 unsigned char in_h_fr_3_UHI_add__INT_index_of__INT_FRintj_0;
1447 unsigned char out_FRintj;
1448 unsigned char out_FRintk;
1449 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
1450 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_1;
1451 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_2;
1452 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_3;
1453 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
1454 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_1;
1455 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_2;
1456 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_3;
1464 unsigned char in_CCi;
1465 unsigned char in_FRintieven;
1466 unsigned char in_FRintjeven;
1467 unsigned char in_FRintkeven;
1468 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0;
1469 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1;
1470 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0;
1471 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1;
1472 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1473 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1474 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0;
1475 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1;
1476 unsigned char out_FRintkeven;
1477 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1478 unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1;
1479 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1480 unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1;
1488 unsigned char in_ACC40Uk;
1489 unsigned char in_CCi;
1490 unsigned char in_FRintieven;
1491 unsigned char in_FRintjeven;
1492 unsigned char in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1;
1493 unsigned char in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_2;
1494 unsigned char in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_3;
1495 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0;
1496 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1;
1497 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0;
1498 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1;
1499 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1500 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1501 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0;
1502 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1;
1503 unsigned char out_ACC40Uk;
1504 unsigned char out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1;
1505 unsigned char out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_2;
1506 unsigned char out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_3;
1514 unsigned char in_ACC40Sk;
1515 unsigned char in_CCi;
1516 unsigned char in_FRintieven;
1517 unsigned char in_FRintjeven;
1518 unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1;
1519 unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2;
1520 unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3;
1521 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0;
1522 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1;
1523 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0;
1524 unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1;
1525 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1526 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1527 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0;
1528 unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1;
1529 unsigned char out_ACC40Sk;
1530 unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1;
1531 unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2;
1532 unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3;
1535 /* Writeback handler. */
1537 /* Pointer to argbuf entry for insn whose results need writing back. */
1538 const struct argbuf *abuf;
1540 /* x-before handler */
1542 /*const SCACHE *insns[MAX_PARALLEL_INSNS];*/
1545 /* x-after handler */
1549 /* This entry is used to terminate each pbb. */
1551 /* Number of insns in pbb. */
1553 /* Next pbb to execute. */
1555 SCACHE *branch_target;
1560 /* The ARGBUF struct. */
1562 /* These are the baseclass definitions. */
1567 /* ??? Temporary hack for skip insns. */
1570 /* cpu specific data follows */
1573 union sem_fields fields;
1578 ??? SCACHE used to contain more than just argbuf. We could delete the
1579 type entirely and always just use ARGBUF, but for future concerns and as
1580 a level of abstraction it is left in. */
1583 struct argbuf argbuf;
1588 /* Macros to simplify extraction, reading and semantic code.
1589 These define and assign the local vars that contain the insn's fields. */
1591 #define EXTRACT_IFMT_EMPTY_VARS \
1592 unsigned int length;
1593 #define EXTRACT_IFMT_EMPTY_CODE \
1596 #define EXTRACT_IFMT_ADD_VARS \
1601 UINT f_ICCi_1_null; \
1604 unsigned int length;
1605 #define EXTRACT_IFMT_ADD_CODE \
1607 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1608 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1609 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1610 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1611 f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1612 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1613 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1615 #define EXTRACT_IFMT_NOT_VARS \
1620 UINT f_ICCi_1_null; \
1623 unsigned int length;
1624 #define EXTRACT_IFMT_NOT_CODE \
1626 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1627 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1628 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1629 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1630 f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1631 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1632 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1634 #define EXTRACT_IFMT_SMUL_VARS \
1639 UINT f_ICCi_1_null; \
1642 unsigned int length;
1643 #define EXTRACT_IFMT_SMUL_CODE \
1645 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1646 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1647 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1648 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1649 f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1650 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1651 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1653 #define EXTRACT_IFMT_SMU_VARS \
1660 unsigned int length;
1661 #define EXTRACT_IFMT_SMU_CODE \
1663 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1664 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1665 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1666 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1667 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1668 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1670 #define EXTRACT_IFMT_SLASS_VARS \
1677 unsigned int length;
1678 #define EXTRACT_IFMT_SLASS_CODE \
1680 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1681 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1682 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1683 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1684 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1685 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1687 #define EXTRACT_IFMT_SCUTSS_VARS \
1694 unsigned int length;
1695 #define EXTRACT_IFMT_SCUTSS_CODE \
1697 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1698 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1699 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1700 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1701 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1702 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1704 #define EXTRACT_IFMT_CADD_VARS \
1713 unsigned int length;
1714 #define EXTRACT_IFMT_CADD_CODE \
1716 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1717 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1718 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1719 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1720 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1721 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1722 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1723 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1725 #define EXTRACT_IFMT_CNOT_VARS \
1734 unsigned int length;
1735 #define EXTRACT_IFMT_CNOT_CODE \
1737 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1738 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1739 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1740 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1741 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1742 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1743 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1744 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1746 #define EXTRACT_IFMT_CSMUL_VARS \
1755 unsigned int length;
1756 #define EXTRACT_IFMT_CSMUL_CODE \
1758 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1759 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1760 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1761 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1762 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1763 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1764 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1765 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1767 #define EXTRACT_IFMT_ADDCC_VARS \
1775 unsigned int length;
1776 #define EXTRACT_IFMT_ADDCC_CODE \
1778 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1779 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1780 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1781 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1782 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1783 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1784 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1786 #define EXTRACT_IFMT_SMULCC_VARS \
1794 unsigned int length;
1795 #define EXTRACT_IFMT_SMULCC_CODE \
1797 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1798 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1799 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1800 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1801 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1802 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1803 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1805 #define EXTRACT_IFMT_ADDI_VARS \
1811 unsigned int length;
1812 #define EXTRACT_IFMT_ADDI_CODE \
1814 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1815 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1816 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1817 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1818 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
1820 #define EXTRACT_IFMT_SMULI_VARS \
1826 unsigned int length;
1827 #define EXTRACT_IFMT_SMULI_CODE \
1829 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1830 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1831 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1832 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1833 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
1835 #define EXTRACT_IFMT_ADDICC_VARS \
1842 unsigned int length;
1843 #define EXTRACT_IFMT_ADDICC_CODE \
1845 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1846 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1847 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1848 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1849 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1850 f_s10 = EXTRACT_LSB0_SINT (insn, 32, 9, 10); \
1852 #define EXTRACT_IFMT_SMULICC_VARS \
1859 unsigned int length;
1860 #define EXTRACT_IFMT_SMULICC_CODE \
1862 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1863 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1864 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1865 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1866 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1867 f_s10 = EXTRACT_LSB0_SINT (insn, 32, 9, 10); \
1869 #define EXTRACT_IFMT_CMPB_VARS \
1877 unsigned int length;
1878 #define EXTRACT_IFMT_CMPB_CODE \
1880 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1881 f_GRk_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1882 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1883 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1884 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1885 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1886 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1888 #define EXTRACT_IFMT_SETLO_VARS \
1892 UINT f_misc_null_4; \
1894 unsigned int length;
1895 #define EXTRACT_IFMT_SETLO_CODE \
1897 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1898 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1899 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1900 f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1901 f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
1903 #define EXTRACT_IFMT_SETHI_VARS \
1907 UINT f_misc_null_4; \
1909 unsigned int length;
1910 #define EXTRACT_IFMT_SETHI_CODE \
1912 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1913 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1914 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1915 f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1916 f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
1918 #define EXTRACT_IFMT_SETLOS_VARS \
1922 UINT f_misc_null_4; \
1924 unsigned int length;
1925 #define EXTRACT_IFMT_SETLOS_CODE \
1927 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1928 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1929 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1930 f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1931 f_s16 = EXTRACT_LSB0_SINT (insn, 32, 15, 16); \
1933 #define EXTRACT_IFMT_LDBF_VARS \
1940 unsigned int length;
1941 #define EXTRACT_IFMT_LDBF_CODE \
1943 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1944 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1945 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1946 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1947 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1948 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1950 #define EXTRACT_IFMT_LDC_VARS \
1957 unsigned int length;
1958 #define EXTRACT_IFMT_LDC_CODE \
1960 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1961 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1962 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1963 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1964 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1965 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1967 #define EXTRACT_IFMT_LDD_VARS \
1974 unsigned int length;
1975 #define EXTRACT_IFMT_LDD_CODE \
1977 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1978 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1979 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1980 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1981 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1982 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1984 #define EXTRACT_IFMT_LDDF_VARS \
1991 unsigned int length;
1992 #define EXTRACT_IFMT_LDDF_CODE \
1994 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1995 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1996 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1997 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1998 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1999 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2001 #define EXTRACT_IFMT_LDDC_VARS \
2008 unsigned int length;
2009 #define EXTRACT_IFMT_LDDC_CODE \
2011 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2012 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2013 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2014 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2015 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2016 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2018 #define EXTRACT_IFMT_LDSBI_VARS \
2024 unsigned int length;
2025 #define EXTRACT_IFMT_LDSBI_CODE \
2027 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2028 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2029 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2030 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2031 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2033 #define EXTRACT_IFMT_LDBFI_VARS \
2039 unsigned int length;
2040 #define EXTRACT_IFMT_LDBFI_CODE \
2042 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2043 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2044 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2045 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2046 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2048 #define EXTRACT_IFMT_LDDI_VARS \
2054 unsigned int length;
2055 #define EXTRACT_IFMT_LDDI_CODE \
2057 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2058 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2059 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2060 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2061 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2063 #define EXTRACT_IFMT_LDDFI_VARS \
2069 unsigned int length;
2070 #define EXTRACT_IFMT_LDDFI_CODE \
2072 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2073 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2074 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2075 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2076 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2078 #define EXTRACT_IFMT_CLDBF_VARS \
2087 unsigned int length;
2088 #define EXTRACT_IFMT_CLDBF_CODE \
2090 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2091 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2092 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2093 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2094 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2095 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2096 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2097 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2099 #define EXTRACT_IFMT_CLDDF_VARS \
2108 unsigned int length;
2109 #define EXTRACT_IFMT_CLDDF_CODE \
2111 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2112 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2113 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2114 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2115 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2116 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2117 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2118 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2120 #define EXTRACT_IFMT_MOVGF_VARS \
2127 unsigned int length;
2128 #define EXTRACT_IFMT_MOVGF_CODE \
2130 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2131 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2132 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2133 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2134 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2135 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2137 #define EXTRACT_IFMT_CMOVGF_VARS \
2146 unsigned int length;
2147 #define EXTRACT_IFMT_CMOVGF_CODE \
2149 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2150 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2151 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2152 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2153 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2154 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2155 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2156 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2158 #define EXTRACT_IFMT_MOVGS_VARS \
2166 unsigned int length;
2167 #define EXTRACT_IFMT_MOVGS_CODE \
2169 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2170 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2171 f_spr_h = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2172 f_spr_l = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2174 f_spr = ((((f_spr_h) << (6))) | (f_spr_l));\
2176 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2177 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2179 #define EXTRACT_IFMT_BRA_VARS \
2182 UINT f_ICCi_2_null; \
2186 unsigned int length;
2187 #define EXTRACT_IFMT_BRA_CODE \
2189 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2190 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2191 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2192 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2193 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2194 f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc)); \
2196 #define EXTRACT_IFMT_BNO_VARS \
2199 UINT f_ICCi_2_null; \
2202 UINT f_label16_null; \
2203 unsigned int length;
2204 #define EXTRACT_IFMT_BNO_CODE \
2206 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2207 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2208 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2209 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2210 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2211 f_label16_null = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
2213 #define EXTRACT_IFMT_BEQ_VARS \
2220 unsigned int length;
2221 #define EXTRACT_IFMT_BEQ_CODE \
2223 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2224 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2225 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2226 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2227 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2228 f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc)); \
2230 #define EXTRACT_IFMT_FBRA_VARS \
2233 UINT f_FCCi_2_null; \
2237 unsigned int length;
2238 #define EXTRACT_IFMT_FBRA_CODE \
2240 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2241 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2242 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2243 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2244 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2245 f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc)); \
2247 #define EXTRACT_IFMT_FBNO_VARS \
2250 UINT f_FCCi_2_null; \
2253 UINT f_label16_null; \
2254 unsigned int length;
2255 #define EXTRACT_IFMT_FBNO_CODE \
2257 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2258 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2259 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2260 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2261 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2262 f_label16_null = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
2264 #define EXTRACT_IFMT_FBNE_VARS \
2271 unsigned int length;
2272 #define EXTRACT_IFMT_FBNE_CODE \
2274 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2275 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2276 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2277 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2278 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2279 f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc)); \
2281 #define EXTRACT_IFMT_BCTRLR_VARS \
2284 UINT f_ICCi_2_null; \
2290 unsigned int length;
2291 #define EXTRACT_IFMT_BCTRLR_CODE \
2293 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2294 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2295 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2296 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2297 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2298 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2299 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2300 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2302 #define EXTRACT_IFMT_BRALR_VARS \
2305 UINT f_ICCi_2_null; \
2309 UINT f_ccond_null; \
2311 unsigned int length;
2312 #define EXTRACT_IFMT_BRALR_CODE \
2314 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2315 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2316 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2317 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2318 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2319 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2320 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2321 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2323 #define EXTRACT_IFMT_BNOLR_VARS \
2326 UINT f_ICCi_2_null; \
2330 UINT f_ccond_null; \
2332 unsigned int length;
2333 #define EXTRACT_IFMT_BNOLR_CODE \
2335 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2336 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2337 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2338 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2339 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2340 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2341 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2342 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2344 #define EXTRACT_IFMT_BEQLR_VARS \
2351 UINT f_ccond_null; \
2353 unsigned int length;
2354 #define EXTRACT_IFMT_BEQLR_CODE \
2356 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2357 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2358 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2359 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2360 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2361 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2362 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2363 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2365 #define EXTRACT_IFMT_FBRALR_VARS \
2368 UINT f_FCCi_2_null; \
2372 UINT f_ccond_null; \
2374 unsigned int length;
2375 #define EXTRACT_IFMT_FBRALR_CODE \
2377 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2378 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2379 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2380 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2381 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2382 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2383 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2384 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2386 #define EXTRACT_IFMT_FBNOLR_VARS \
2389 UINT f_FCCi_2_null; \
2393 UINT f_ccond_null; \
2395 unsigned int length;
2396 #define EXTRACT_IFMT_FBNOLR_CODE \
2398 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2399 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2400 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2401 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2402 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2403 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2404 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2405 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2407 #define EXTRACT_IFMT_FBEQLR_VARS \
2414 UINT f_ccond_null; \
2416 unsigned int length;
2417 #define EXTRACT_IFMT_FBEQLR_CODE \
2419 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2420 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2421 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2422 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2423 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2424 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2425 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2426 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2428 #define EXTRACT_IFMT_BCRALR_VARS \
2431 UINT f_ICCi_2_null; \
2437 unsigned int length;
2438 #define EXTRACT_IFMT_BCRALR_CODE \
2440 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2441 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2442 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2443 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2444 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2445 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2446 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2447 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2449 #define EXTRACT_IFMT_BCEQLR_VARS \
2458 unsigned int length;
2459 #define EXTRACT_IFMT_BCEQLR_CODE \
2461 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2462 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2463 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2464 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2465 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2466 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2467 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2468 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2470 #define EXTRACT_IFMT_FCBRALR_VARS \
2473 UINT f_FCCi_2_null; \
2479 unsigned int length;
2480 #define EXTRACT_IFMT_FCBRALR_CODE \
2482 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2483 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2484 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2485 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2486 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2487 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2488 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2489 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2491 #define EXTRACT_IFMT_FCBEQLR_VARS \
2500 unsigned int length;
2501 #define EXTRACT_IFMT_FCBEQLR_CODE \
2503 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2504 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2505 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2506 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2507 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2508 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2509 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2510 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2512 #define EXTRACT_IFMT_JMPL_VARS \
2514 UINT f_misc_null_1; \
2518 UINT f_misc_null_2; \
2520 unsigned int length;
2521 #define EXTRACT_IFMT_JMPL_CODE \
2523 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2524 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2525 f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2526 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2527 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2528 f_misc_null_2 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2529 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2531 #define EXTRACT_IFMT_CALLL_VARS \
2533 UINT f_misc_null_1; \
2537 UINT f_misc_null_2; \
2539 unsigned int length;
2540 #define EXTRACT_IFMT_CALLL_CODE \
2542 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2543 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2544 f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2545 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2546 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2547 f_misc_null_2 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2548 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2550 #define EXTRACT_IFMT_JMPIL_VARS \
2552 UINT f_misc_null_1; \
2557 unsigned int length;
2558 #define EXTRACT_IFMT_JMPIL_CODE \
2560 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2561 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2562 f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2563 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2564 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2565 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2567 #define EXTRACT_IFMT_CALLIL_VARS \
2569 UINT f_misc_null_1; \
2574 unsigned int length;
2575 #define EXTRACT_IFMT_CALLIL_CODE \
2577 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2578 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2579 f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2580 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2581 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2582 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2584 #define EXTRACT_IFMT_CALL_VARS \
2590 unsigned int length;
2591 #define EXTRACT_IFMT_CALL_CODE \
2593 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2594 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2595 f_labelH6 = EXTRACT_LSB0_SINT (insn, 32, 30, 6); \
2596 f_labelL18 = EXTRACT_LSB0_UINT (insn, 32, 17, 18); \
2598 f_label24 = ((((((((f_labelH6) << (18))) | (f_labelL18))) << (2))) + (pc));\
2601 #define EXTRACT_IFMT_RETT_VARS \
2603 UINT f_misc_null_1; \
2608 unsigned int length;
2609 #define EXTRACT_IFMT_RETT_CODE \
2611 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2612 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2613 f_debug = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2614 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2615 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2616 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2618 #define EXTRACT_IFMT_REI_VARS \
2624 unsigned int length;
2625 #define EXTRACT_IFMT_REI_CODE \
2627 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2628 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2629 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2630 f_eir = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2631 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2633 #define EXTRACT_IFMT_TRA_VARS \
2636 UINT f_ICCi_2_null; \
2639 UINT f_misc_null_3; \
2642 unsigned int length;
2643 #define EXTRACT_IFMT_TRA_CODE \
2645 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2646 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2647 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2648 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2649 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2650 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2651 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2652 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2654 #define EXTRACT_IFMT_TNO_VARS \
2657 UINT f_ICCi_2_null; \
2660 UINT f_misc_null_3; \
2663 unsigned int length;
2664 #define EXTRACT_IFMT_TNO_CODE \
2666 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2667 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2668 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2669 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2670 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2671 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2672 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2673 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2675 #define EXTRACT_IFMT_TEQ_VARS \
2681 UINT f_misc_null_3; \
2684 unsigned int length;
2685 #define EXTRACT_IFMT_TEQ_CODE \
2687 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2688 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2689 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2690 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2691 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2692 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2693 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2694 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2696 #define EXTRACT_IFMT_FTRA_VARS \
2699 UINT f_FCCi_2_null; \
2702 UINT f_misc_null_3; \
2705 unsigned int length;
2706 #define EXTRACT_IFMT_FTRA_CODE \
2708 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2709 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2710 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2711 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2712 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2713 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2714 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2715 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2717 #define EXTRACT_IFMT_FTNO_VARS \
2720 UINT f_FCCi_2_null; \
2723 UINT f_misc_null_3; \
2726 unsigned int length;
2727 #define EXTRACT_IFMT_FTNO_CODE \
2729 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2730 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2731 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2732 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2733 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2734 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2735 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2736 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2738 #define EXTRACT_IFMT_FTNE_VARS \
2744 UINT f_misc_null_3; \
2747 unsigned int length;
2748 #define EXTRACT_IFMT_FTNE_CODE \
2750 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2751 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2752 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2753 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2754 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2755 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2756 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2757 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2759 #define EXTRACT_IFMT_TIRA_VARS \
2762 UINT f_ICCi_2_null; \
2766 unsigned int length;
2767 #define EXTRACT_IFMT_TIRA_CODE \
2769 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2770 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2771 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2772 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2773 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2774 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2776 #define EXTRACT_IFMT_TINO_VARS \
2779 UINT f_ICCi_2_null; \
2783 unsigned int length;
2784 #define EXTRACT_IFMT_TINO_CODE \
2786 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2787 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2788 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2789 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2790 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2791 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2793 #define EXTRACT_IFMT_TIEQ_VARS \
2800 unsigned int length;
2801 #define EXTRACT_IFMT_TIEQ_CODE \
2803 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2804 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2805 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2806 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2807 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2808 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2810 #define EXTRACT_IFMT_FTIRA_VARS \
2813 UINT f_ICCi_2_null; \
2817 unsigned int length;
2818 #define EXTRACT_IFMT_FTIRA_CODE \
2820 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2821 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2822 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2823 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2824 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2825 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2827 #define EXTRACT_IFMT_FTINO_VARS \
2830 UINT f_FCCi_2_null; \
2834 unsigned int length;
2835 #define EXTRACT_IFMT_FTINO_CODE \
2837 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2838 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2839 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2840 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2841 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2842 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2844 #define EXTRACT_IFMT_FTINE_VARS \
2851 unsigned int length;
2852 #define EXTRACT_IFMT_FTINE_CODE \
2854 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2855 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2856 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2857 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2858 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2859 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2861 #define EXTRACT_IFMT_BREAK_VARS \
2866 UINT f_misc_null_3; \
2869 unsigned int length;
2870 #define EXTRACT_IFMT_BREAK_CODE \
2872 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2873 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2874 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2875 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2876 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2877 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2878 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2880 #define EXTRACT_IFMT_ANDCR_VARS \
2882 UINT f_misc_null_6; \
2885 UINT f_misc_null_7; \
2888 UINT f_misc_null_8; \
2890 unsigned int length;
2891 #define EXTRACT_IFMT_ANDCR_CODE \
2893 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2894 f_misc_null_6 = EXTRACT_LSB0_UINT (insn, 32, 30, 3); \
2895 f_CRk = EXTRACT_LSB0_UINT (insn, 32, 27, 3); \
2896 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2897 f_misc_null_7 = EXTRACT_LSB0_UINT (insn, 32, 17, 3); \
2898 f_CRi = EXTRACT_LSB0_UINT (insn, 32, 14, 3); \
2899 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2900 f_misc_null_8 = EXTRACT_LSB0_UINT (insn, 32, 5, 3); \
2901 f_CRj = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
2903 #define EXTRACT_IFMT_NOTCR_VARS \
2905 UINT f_misc_null_6; \
2910 UINT f_misc_null_8; \
2912 unsigned int length;
2913 #define EXTRACT_IFMT_NOTCR_CODE \
2915 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2916 f_misc_null_6 = EXTRACT_LSB0_UINT (insn, 32, 30, 3); \
2917 f_CRk = EXTRACT_LSB0_UINT (insn, 32, 27, 3); \
2918 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2919 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2920 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2921 f_misc_null_8 = EXTRACT_LSB0_UINT (insn, 32, 5, 3); \
2922 f_CRj = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
2924 #define EXTRACT_IFMT_CKRA_VARS \
2929 UINT f_misc_null_5; \
2930 UINT f_ICCi_3_null; \
2931 unsigned int length;
2932 #define EXTRACT_IFMT_CKRA_CODE \
2934 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2935 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2936 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2937 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2938 f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2939 f_ICCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2941 #define EXTRACT_IFMT_CKEQ_VARS \
2946 UINT f_misc_null_5; \
2948 unsigned int length;
2949 #define EXTRACT_IFMT_CKEQ_CODE \
2951 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2952 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2953 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2954 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2955 f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2956 f_ICCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2958 #define EXTRACT_IFMT_FCKRA_VARS \
2963 UINT f_misc_null_5; \
2965 unsigned int length;
2966 #define EXTRACT_IFMT_FCKRA_CODE \
2968 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2969 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2970 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2971 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2972 f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2973 f_FCCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2975 #define EXTRACT_IFMT_CCKRA_VARS \
2984 UINT f_misc_null_9; \
2985 UINT f_ICCi_3_null; \
2986 unsigned int length;
2987 #define EXTRACT_IFMT_CCKRA_CODE \
2989 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2990 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2991 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2992 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2993 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2994 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2995 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2996 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2997 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
2998 f_ICCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3000 #define EXTRACT_IFMT_CCKEQ_VARS \
3009 UINT f_misc_null_9; \
3011 unsigned int length;
3012 #define EXTRACT_IFMT_CCKEQ_CODE \
3014 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3015 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3016 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
3017 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3018 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3019 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3020 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3021 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3022 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3023 f_ICCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3025 #define EXTRACT_IFMT_CFCKRA_VARS \
3034 UINT f_misc_null_9; \
3035 UINT f_FCCi_3_null; \
3036 unsigned int length;
3037 #define EXTRACT_IFMT_CFCKRA_CODE \
3039 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3040 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3041 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3042 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3043 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3044 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3045 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3046 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3047 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3048 f_FCCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3050 #define EXTRACT_IFMT_CFCKNE_VARS \
3059 UINT f_misc_null_9; \
3061 unsigned int length;
3062 #define EXTRACT_IFMT_CFCKNE_CODE \
3064 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3065 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3066 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3067 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3068 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3069 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3070 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3071 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3072 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3073 f_FCCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3075 #define EXTRACT_IFMT_CJMPL_VARS \
3077 UINT f_misc_null_1; \
3085 unsigned int length;
3086 #define EXTRACT_IFMT_CJMPL_CODE \
3088 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3089 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3090 f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3091 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3092 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3093 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3094 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3095 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3096 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3098 #define EXTRACT_IFMT_CCALLL_VARS \
3100 UINT f_misc_null_1; \
3108 unsigned int length;
3109 #define EXTRACT_IFMT_CCALLL_CODE \
3111 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3112 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3113 f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3114 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3115 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3116 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3117 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3118 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3119 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3121 #define EXTRACT_IFMT_ICEI_VARS \
3123 UINT f_misc_null_1; \
3129 unsigned int length;
3130 #define EXTRACT_IFMT_ICEI_CODE \
3132 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3133 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3134 f_ae = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3135 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3136 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3137 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3138 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3140 #define EXTRACT_IFMT_ICPL_VARS \
3142 UINT f_misc_null_1; \
3148 unsigned int length;
3149 #define EXTRACT_IFMT_ICPL_CODE \
3151 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3152 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3153 f_lock = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3154 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3155 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3156 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3157 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3159 #define EXTRACT_IFMT_ICUL_VARS \
3166 unsigned int length;
3167 #define EXTRACT_IFMT_ICUL_CODE \
3169 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3170 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3171 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3172 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3173 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3174 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3176 #define EXTRACT_IFMT_BAR_VARS \
3183 unsigned int length;
3184 #define EXTRACT_IFMT_BAR_CODE \
3186 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3187 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3188 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3189 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3190 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3191 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3193 #define EXTRACT_IFMT_LRAI_VARS \
3203 unsigned int length;
3204 #define EXTRACT_IFMT_LRAI_CODE \
3206 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3207 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3208 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3209 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3210 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3211 f_LRAE = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3212 f_LRAD = EXTRACT_LSB0_UINT (insn, 32, 4, 1); \
3213 f_LRAS = EXTRACT_LSB0_UINT (insn, 32, 3, 1); \
3214 f_LRA_null = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
3216 #define EXTRACT_IFMT_TLBPR_VARS \
3218 UINT f_TLBPR_null; \
3225 unsigned int length;
3226 #define EXTRACT_IFMT_TLBPR_CODE \
3228 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3229 f_TLBPR_null = EXTRACT_LSB0_UINT (insn, 32, 30, 2); \
3230 f_TLBPRopx = EXTRACT_LSB0_UINT (insn, 32, 28, 3); \
3231 f_TLBPRL = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3232 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3233 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3234 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3235 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3237 #define EXTRACT_IFMT_COP1_VARS \
3244 unsigned int length;
3245 #define EXTRACT_IFMT_COP1_CODE \
3247 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3248 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3249 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3250 f_CPRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3251 f_s6_1 = EXTRACT_LSB0_SINT (insn, 32, 11, 6); \
3252 f_CPRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3254 #define EXTRACT_IFMT_CLRGR_VARS \
3261 unsigned int length;
3262 #define EXTRACT_IFMT_CLRGR_CODE \
3264 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3265 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3266 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3267 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3268 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3269 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3271 #define EXTRACT_IFMT_CLRFR_VARS \
3278 unsigned int length;
3279 #define EXTRACT_IFMT_CLRFR_CODE \
3281 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3282 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3283 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3284 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3285 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3286 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3288 #define EXTRACT_IFMT_FITOS_VARS \
3295 unsigned int length;
3296 #define EXTRACT_IFMT_FITOS_CODE \
3298 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3299 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3300 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3301 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3302 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3303 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3305 #define EXTRACT_IFMT_FSTOI_VARS \
3312 unsigned int length;
3313 #define EXTRACT_IFMT_FSTOI_CODE \
3315 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3316 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3317 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3318 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3319 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3320 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3322 #define EXTRACT_IFMT_FITOD_VARS \
3329 unsigned int length;
3330 #define EXTRACT_IFMT_FITOD_CODE \
3332 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3333 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3334 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3335 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3336 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3337 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3339 #define EXTRACT_IFMT_FDTOI_VARS \
3346 unsigned int length;
3347 #define EXTRACT_IFMT_FDTOI_CODE \
3349 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3350 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3351 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3352 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3353 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3354 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3356 #define EXTRACT_IFMT_CFITOS_VARS \
3365 unsigned int length;
3366 #define EXTRACT_IFMT_CFITOS_CODE \
3368 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3369 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3370 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3371 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3372 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3373 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3374 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3375 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3377 #define EXTRACT_IFMT_CFSTOI_VARS \
3386 unsigned int length;
3387 #define EXTRACT_IFMT_CFSTOI_CODE \
3389 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3390 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3391 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3392 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3393 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3394 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3395 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3396 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3398 #define EXTRACT_IFMT_FMOVS_VARS \
3405 unsigned int length;
3406 #define EXTRACT_IFMT_FMOVS_CODE \
3408 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3409 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3410 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3411 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3412 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3413 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3415 #define EXTRACT_IFMT_FMOVD_VARS \
3422 unsigned int length;
3423 #define EXTRACT_IFMT_FMOVD_CODE \
3425 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3426 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3427 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3428 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3429 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3430 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3432 #define EXTRACT_IFMT_CFMOVS_VARS \
3441 unsigned int length;
3442 #define EXTRACT_IFMT_CFMOVS_CODE \
3444 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3445 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3446 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3447 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3448 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3449 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3450 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3451 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3453 #define EXTRACT_IFMT_FADDS_VARS \
3460 unsigned int length;
3461 #define EXTRACT_IFMT_FADDS_CODE \
3463 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3464 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3465 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3466 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3467 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3468 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3470 #define EXTRACT_IFMT_FADDD_VARS \
3477 unsigned int length;
3478 #define EXTRACT_IFMT_FADDD_CODE \
3480 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3481 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3482 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3483 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3484 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3485 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3487 #define EXTRACT_IFMT_CFADDS_VARS \
3496 unsigned int length;
3497 #define EXTRACT_IFMT_CFADDS_CODE \
3499 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3500 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3501 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3502 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3503 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3504 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3505 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3506 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3508 #define EXTRACT_IFMT_FCMPS_VARS \
3516 unsigned int length;
3517 #define EXTRACT_IFMT_FCMPS_CODE \
3519 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3520 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3521 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3522 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3523 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3524 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3525 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3527 #define EXTRACT_IFMT_FCMPD_VARS \
3535 unsigned int length;
3536 #define EXTRACT_IFMT_FCMPD_CODE \
3538 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3539 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3540 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3541 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3542 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3543 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3544 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3546 #define EXTRACT_IFMT_CFCMPS_VARS \
3556 unsigned int length;
3557 #define EXTRACT_IFMT_CFCMPS_CODE \
3559 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3560 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3561 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3562 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3563 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3564 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3565 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3566 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3567 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3569 #define EXTRACT_IFMT_MHSETLOS_VARS \
3577 unsigned int length;
3578 #define EXTRACT_IFMT_MHSETLOS_CODE \
3580 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3581 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3582 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3583 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3584 f_u12_h = EXTRACT_LSB0_SINT (insn, 32, 17, 6); \
3585 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3587 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3590 #define EXTRACT_IFMT_MHSETHIS_VARS \
3598 unsigned int length;
3599 #define EXTRACT_IFMT_MHSETHIS_CODE \
3601 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3602 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3603 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3604 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3605 f_u12_h = EXTRACT_LSB0_SINT (insn, 32, 17, 6); \
3606 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3608 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3611 #define EXTRACT_IFMT_MHDSETS_VARS \
3619 unsigned int length;
3620 #define EXTRACT_IFMT_MHDSETS_CODE \
3622 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3623 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3624 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3625 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3626 f_u12_h = EXTRACT_LSB0_SINT (insn, 32, 17, 6); \
3627 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3629 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3632 #define EXTRACT_IFMT_MHSETLOH_VARS \
3638 UINT f_misc_null_11; \
3640 unsigned int length;
3641 #define EXTRACT_IFMT_MHSETLOH_CODE \
3643 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3644 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3645 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3646 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3647 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3648 f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3649 f_s5 = EXTRACT_LSB0_SINT (insn, 32, 4, 5); \
3651 #define EXTRACT_IFMT_MHSETHIH_VARS \
3657 UINT f_misc_null_11; \
3659 unsigned int length;
3660 #define EXTRACT_IFMT_MHSETHIH_CODE \
3662 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3663 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3664 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3665 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3666 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3667 f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3668 f_s5 = EXTRACT_LSB0_SINT (insn, 32, 4, 5); \
3670 #define EXTRACT_IFMT_MHDSETH_VARS \
3676 UINT f_misc_null_11; \
3678 unsigned int length;
3679 #define EXTRACT_IFMT_MHDSETH_CODE \
3681 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3682 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3683 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3684 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3685 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3686 f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3687 f_s5 = EXTRACT_LSB0_SINT (insn, 32, 4, 5); \
3689 #define EXTRACT_IFMT_MAND_VARS \
3696 unsigned int length;
3697 #define EXTRACT_IFMT_MAND_CODE \
3699 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3700 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3701 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3702 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3703 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3704 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3706 #define EXTRACT_IFMT_CMAND_VARS \
3715 unsigned int length;
3716 #define EXTRACT_IFMT_CMAND_CODE \
3718 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3719 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3720 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3721 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3722 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3723 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3724 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3725 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3727 #define EXTRACT_IFMT_MNOT_VARS \
3734 unsigned int length;
3735 #define EXTRACT_IFMT_MNOT_CODE \
3737 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3738 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3739 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3740 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3741 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3742 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3744 #define EXTRACT_IFMT_CMNOT_VARS \
3753 unsigned int length;
3754 #define EXTRACT_IFMT_CMNOT_CODE \
3756 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3757 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3758 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3759 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3760 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3761 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3762 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3763 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3765 #define EXTRACT_IFMT_MROTLI_VARS \
3772 unsigned int length;
3773 #define EXTRACT_IFMT_MROTLI_CODE \
3775 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3776 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3777 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3778 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3779 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3780 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3782 #define EXTRACT_IFMT_MCUT_VARS \
3789 unsigned int length;
3790 #define EXTRACT_IFMT_MCUT_CODE \
3792 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3793 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3794 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3795 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3796 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3797 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3799 #define EXTRACT_IFMT_MCUTI_VARS \
3806 unsigned int length;
3807 #define EXTRACT_IFMT_MCUTI_CODE \
3809 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3810 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3811 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3812 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3813 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3814 f_s6 = EXTRACT_LSB0_SINT (insn, 32, 5, 6); \
3816 #define EXTRACT_IFMT_MDCUTSSI_VARS \
3823 unsigned int length;
3824 #define EXTRACT_IFMT_MDCUTSSI_CODE \
3826 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3827 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3828 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3829 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3830 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3831 f_s6 = EXTRACT_LSB0_SINT (insn, 32, 5, 6); \
3833 #define EXTRACT_IFMT_MDROTLI_VARS \
3840 unsigned int length;
3841 #define EXTRACT_IFMT_MDROTLI_CODE \
3843 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3844 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3845 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3846 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3847 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3848 f_s6 = EXTRACT_LSB0_SINT (insn, 32, 5, 6); \
3850 #define EXTRACT_IFMT_MQSATHS_VARS \
3857 unsigned int length;
3858 #define EXTRACT_IFMT_MQSATHS_CODE \
3860 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3861 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3862 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3863 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3864 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3865 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3867 #define EXTRACT_IFMT_MCMPSH_VARS \
3875 unsigned int length;
3876 #define EXTRACT_IFMT_MCMPSH_CODE \
3878 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3879 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3880 f_FCCk = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3881 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3882 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3883 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3884 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3886 #define EXTRACT_IFMT_MABSHS_VARS \
3893 unsigned int length;
3894 #define EXTRACT_IFMT_MABSHS_CODE \
3896 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3897 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3898 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3899 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3900 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3901 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3903 #define EXTRACT_IFMT_CMQADDHSS_VARS \
3912 unsigned int length;
3913 #define EXTRACT_IFMT_CMQADDHSS_CODE \
3915 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3916 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3917 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3918 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3919 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3920 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3921 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3922 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3924 #define EXTRACT_IFMT_MQSLLHI_VARS \
3931 unsigned int length;
3932 #define EXTRACT_IFMT_MQSLLHI_CODE \
3934 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3935 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3936 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3937 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3938 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3939 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3941 #define EXTRACT_IFMT_MADDACCS_VARS \
3948 unsigned int length;
3949 #define EXTRACT_IFMT_MADDACCS_CODE \
3951 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3952 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3953 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3954 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3955 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3956 f_ACCj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3958 #define EXTRACT_IFMT_MMULHS_VARS \
3965 unsigned int length;
3966 #define EXTRACT_IFMT_MMULHS_CODE \
3968 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3969 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3970 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3971 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3972 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3973 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3975 #define EXTRACT_IFMT_CMMULHS_VARS \
3984 unsigned int length;
3985 #define EXTRACT_IFMT_CMMULHS_CODE \
3987 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3988 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3989 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3990 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3991 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3992 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3993 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3994 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3996 #define EXTRACT_IFMT_MQMULHS_VARS \
4003 unsigned int length;
4004 #define EXTRACT_IFMT_MQMULHS_CODE \
4006 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4007 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4008 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4009 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4010 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4011 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4013 #define EXTRACT_IFMT_CMQMULHS_VARS \
4022 unsigned int length;
4023 #define EXTRACT_IFMT_CMQMULHS_CODE \
4025 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4026 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4027 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4028 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4029 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4030 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4031 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4032 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4034 #define EXTRACT_IFMT_MMACHU_VARS \
4041 unsigned int length;
4042 #define EXTRACT_IFMT_MMACHU_CODE \
4044 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4045 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4046 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4047 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4048 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4049 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4051 #define EXTRACT_IFMT_CMMACHU_VARS \
4060 unsigned int length;
4061 #define EXTRACT_IFMT_CMMACHU_CODE \
4063 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4064 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4065 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4066 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4067 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4068 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4069 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4070 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4072 #define EXTRACT_IFMT_MQMACHU_VARS \
4079 unsigned int length;
4080 #define EXTRACT_IFMT_MQMACHU_CODE \
4082 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4083 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4084 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4085 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4086 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4087 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4089 #define EXTRACT_IFMT_CMQMACHU_VARS \
4098 unsigned int length;
4099 #define EXTRACT_IFMT_CMQMACHU_CODE \
4101 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4102 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4103 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4104 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4105 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4106 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4107 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4108 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4110 #define EXTRACT_IFMT_CMEXPDHW_VARS \
4119 unsigned int length;
4120 #define EXTRACT_IFMT_CMEXPDHW_CODE \
4122 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4123 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4124 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4125 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4126 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4127 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4128 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4129 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4131 #define EXTRACT_IFMT_MEXPDHD_VARS \
4138 unsigned int length;
4139 #define EXTRACT_IFMT_MEXPDHD_CODE \
4141 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4142 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4143 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4144 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4145 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4146 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4148 #define EXTRACT_IFMT_CMEXPDHD_VARS \
4157 unsigned int length;
4158 #define EXTRACT_IFMT_CMEXPDHD_CODE \
4160 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4161 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4162 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4163 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4164 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4165 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4166 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4167 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4169 #define EXTRACT_IFMT_MUNPACKH_VARS \
4176 unsigned int length;
4177 #define EXTRACT_IFMT_MUNPACKH_CODE \
4179 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4180 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4181 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4182 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4183 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4184 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4186 #define EXTRACT_IFMT_MDUNPACKH_VARS \
4193 unsigned int length;
4194 #define EXTRACT_IFMT_MDUNPACKH_CODE \
4196 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4197 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4198 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4199 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4200 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4201 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4203 #define EXTRACT_IFMT_MBTOH_VARS \
4210 unsigned int length;
4211 #define EXTRACT_IFMT_MBTOH_CODE \
4213 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4214 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4215 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4216 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4217 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4218 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4220 #define EXTRACT_IFMT_CMBTOH_VARS \
4229 unsigned int length;
4230 #define EXTRACT_IFMT_CMBTOH_CODE \
4232 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4233 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4234 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4235 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4236 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4237 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4238 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4239 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4241 #define EXTRACT_IFMT_MHTOB_VARS \
4248 unsigned int length;
4249 #define EXTRACT_IFMT_MHTOB_CODE \
4251 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4252 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4253 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4254 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4255 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4256 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4258 #define EXTRACT_IFMT_CMHTOB_VARS \
4267 unsigned int length;
4268 #define EXTRACT_IFMT_CMHTOB_CODE \
4270 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4271 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4272 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4273 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4274 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4275 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4276 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4277 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4279 #define EXTRACT_IFMT_CMBTOHE_VARS \
4288 unsigned int length;
4289 #define EXTRACT_IFMT_CMBTOHE_CODE \
4291 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4292 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4293 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4294 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4295 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4296 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4297 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4298 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4300 #define EXTRACT_IFMT_MNOP_VARS \
4305 UINT f_misc_null_10; \
4308 unsigned int length;
4309 #define EXTRACT_IFMT_MNOP_CODE \
4311 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4312 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4313 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4314 f_A = EXTRACT_LSB0_UINT (insn, 32, 17, 1); \
4315 f_misc_null_10 = EXTRACT_LSB0_UINT (insn, 32, 16, 5); \
4316 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4317 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4319 #define EXTRACT_IFMT_MCLRACC_0_VARS \
4324 UINT f_misc_null_10; \
4327 unsigned int length;
4328 #define EXTRACT_IFMT_MCLRACC_0_CODE \
4330 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4331 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4332 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4333 f_A = EXTRACT_LSB0_UINT (insn, 32, 17, 1); \
4334 f_misc_null_10 = EXTRACT_LSB0_UINT (insn, 32, 16, 5); \
4335 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4336 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4338 #define EXTRACT_IFMT_MRDACC_VARS \
4345 unsigned int length;
4346 #define EXTRACT_IFMT_MRDACC_CODE \
4348 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4349 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4350 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4351 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4352 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4353 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4355 #define EXTRACT_IFMT_MRDACCG_VARS \
4362 unsigned int length;
4363 #define EXTRACT_IFMT_MRDACCG_CODE \
4365 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4366 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4367 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4368 f_ACCGi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4369 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4370 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4372 #define EXTRACT_IFMT_MWTACC_VARS \
4379 unsigned int length;
4380 #define EXTRACT_IFMT_MWTACC_CODE \
4382 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4383 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4384 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4385 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4386 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4387 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4389 #define EXTRACT_IFMT_MWTACCG_VARS \
4396 unsigned int length;
4397 #define EXTRACT_IFMT_MWTACCG_CODE \
4399 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4400 f_ACCGk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4401 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4402 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4403 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4404 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4406 #define EXTRACT_IFMT_FNOP_VARS \
4413 unsigned int length;
4414 #define EXTRACT_IFMT_FNOP_CODE \
4416 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4417 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4418 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4419 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4420 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4421 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4423 /* Collection of various things for the trace handler to use. */
4425 typedef struct trace_record {
4430 #endif /* CPU_FRVBF_H */