1 /* CPU family header for frvbf.
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
5 Copyright 1996-2007 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, write to the Free Software Foundation, Inc.,
21 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
28 /* Maximum number of instructions that are fetched at a time.
29 This is for LIW type instructions sets (e.g. m32r). */
30 #define MAX_LIW_INSNS 1
32 /* Maximum number of instructions that can be executed in parallel. */
33 #define MAX_PARALLEL_INSNS 8
35 /* CPU state information. */
37 /* Hardware elements. */
39 /* relocation annotation */
41 #define GET_H_RELOC_ANN() CPU (h_reloc_ann)
42 #define SET_H_RELOC_ANN(x) (CPU (h_reloc_ann) = (x))
45 #define GET_H_PC() CPU (h_pc)
46 #define SET_H_PC(x) (CPU (h_pc) = (x))
49 #define GET_H_PSR_IMPLE() CPU (h_psr_imple)
50 #define SET_H_PSR_IMPLE(x) (CPU (h_psr_imple) = (x))
53 #define GET_H_PSR_VER() CPU (h_psr_ver)
54 #define SET_H_PSR_VER(x) (CPU (h_psr_ver) = (x))
57 #define GET_H_PSR_ICE() CPU (h_psr_ice)
58 #define SET_H_PSR_ICE(x) (CPU (h_psr_ice) = (x))
61 #define GET_H_PSR_NEM() CPU (h_psr_nem)
62 #define SET_H_PSR_NEM(x) (CPU (h_psr_nem) = (x))
65 #define GET_H_PSR_CM() CPU (h_psr_cm)
66 #define SET_H_PSR_CM(x) (CPU (h_psr_cm) = (x))
69 #define GET_H_PSR_BE() CPU (h_psr_be)
70 #define SET_H_PSR_BE(x) (CPU (h_psr_be) = (x))
73 #define GET_H_PSR_ESR() CPU (h_psr_esr)
74 #define SET_H_PSR_ESR(x) (CPU (h_psr_esr) = (x))
77 #define GET_H_PSR_EF() CPU (h_psr_ef)
78 #define SET_H_PSR_EF(x) (CPU (h_psr_ef) = (x))
81 #define GET_H_PSR_EM() CPU (h_psr_em)
82 #define SET_H_PSR_EM(x) (CPU (h_psr_em) = (x))
85 #define GET_H_PSR_PIL() CPU (h_psr_pil)
86 #define SET_H_PSR_PIL(x) (CPU (h_psr_pil) = (x))
89 #define GET_H_PSR_PS() CPU (h_psr_ps)
90 #define SET_H_PSR_PS(x) (CPU (h_psr_ps) = (x))
93 #define GET_H_PSR_ET() CPU (h_psr_et)
94 #define SET_H_PSR_ET(x) (CPU (h_psr_et) = (x))
97 #define GET_H_PSR_S() CPU (h_psr_s)
98 #define SET_H_PSR_S(x) \
100 frvbf_h_psr_s_set_handler (current_cpu, (x));\
104 #define GET_H_TBR_TBA() CPU (h_tbr_tba)
105 #define SET_H_TBR_TBA(x) (CPU (h_tbr_tba) = (x))
108 #define GET_H_TBR_TT() CPU (h_tbr_tt)
109 #define SET_H_TBR_TT(x) (CPU (h_tbr_tt) = (x))
112 #define GET_H_BPSR_BS() CPU (h_bpsr_bs)
113 #define SET_H_BPSR_BS(x) (CPU (h_bpsr_bs) = (x))
116 #define GET_H_BPSR_BET() CPU (h_bpsr_bet)
117 #define SET_H_BPSR_BET(x) (CPU (h_bpsr_bet) = (x))
118 /* general registers */
120 #define GET_H_GR(index) frvbf_h_gr_get_handler (current_cpu, index)
121 #define SET_H_GR(index, x) \
123 frvbf_h_gr_set_handler (current_cpu, (index), (x));\
125 /* floating point registers */
127 #define GET_H_FR(index) frvbf_h_fr_get_handler (current_cpu, index)
128 #define SET_H_FR(index, x) \
130 frvbf_h_fr_set_handler (current_cpu, (index), (x));\
132 /* coprocessor registers */
134 #define GET_H_CPR(a1) CPU (h_cpr)[a1]
135 #define SET_H_CPR(a1, x) (CPU (h_cpr)[a1] = (x))
136 /* special purpose registers */
138 #define GET_H_SPR(index) frvbf_h_spr_get_handler (current_cpu, index)
139 #define SET_H_SPR(index, x) \
141 frvbf_h_spr_set_handler (current_cpu, (index), (x));\
143 /* Integer condition code registers */
145 #define GET_H_ICCR(a1) CPU (h_iccr)[a1]
146 #define SET_H_ICCR(a1, x) (CPU (h_iccr)[a1] = (x))
147 /* Floating point condition code registers */
149 #define GET_H_FCCR(a1) CPU (h_fccr)[a1]
150 #define SET_H_FCCR(a1, x) (CPU (h_fccr)[a1] = (x))
151 /* Condition code registers */
153 #define GET_H_CCCR(a1) CPU (h_cccr)[a1]
154 #define SET_H_CCCR(a1, x) (CPU (h_cccr)[a1] = (x))
156 #define CPU_CGEN_HW(cpu) (& (cpu)->cpu_data.hardware)
161 #define GET_H_GR_DOUBLE(index) frvbf_h_gr_double_get_handler (current_cpu, index)
162 #define SET_H_GR_DOUBLE(index, x) \
164 frvbf_h_gr_double_set_handler (current_cpu, (index), (x));\
166 #define GET_H_GR_HI(index) frvbf_h_gr_hi_get_handler (current_cpu, index)
167 #define SET_H_GR_HI(index, x) \
169 frvbf_h_gr_hi_set_handler (current_cpu, (index), (x));\
171 #define GET_H_GR_LO(index) frvbf_h_gr_lo_get_handler (current_cpu, index)
172 #define SET_H_GR_LO(index, x) \
174 frvbf_h_gr_lo_set_handler (current_cpu, (index), (x));\
176 #define GET_H_FR_DOUBLE(index) frvbf_h_fr_double_get_handler (current_cpu, index)
177 #define SET_H_FR_DOUBLE(index, x) \
179 frvbf_h_fr_double_set_handler (current_cpu, (index), (x));\
181 #define GET_H_FR_INT(index) frvbf_h_fr_int_get_handler (current_cpu, index)
182 #define SET_H_FR_INT(index, x) \
184 frvbf_h_fr_int_set_handler (current_cpu, (index), (x));\
186 #define GET_H_FR_HI(index) SRLSI (GET_H_FR_INT (index), 16)
187 #define SET_H_FR_HI(index, x) \
189 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 65535), SLLHI ((x), 16)));\
191 #define GET_H_FR_LO(index) ANDSI (GET_H_FR_INT (index), 65535)
192 #define SET_H_FR_LO(index, x) \
194 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffff0000), ANDHI ((x), 65535)));\
196 #define GET_H_FR_0(index) ANDSI (GET_H_FR_INT (index), 255)
197 #define SET_H_FR_0(index, x) \
200 if (GTSI ((x), 255)) {\
203 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffffff00), (x)));\
206 #define GET_H_FR_1(index) ANDSI (SRLSI (GET_H_FR_INT (index), 8), 255)
207 #define SET_H_FR_1(index, x) \
210 if (GTSI ((x), 255)) {\
213 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffff00ff), SLLHI ((x), 8)));\
216 #define GET_H_FR_2(index) ANDSI (SRLSI (GET_H_FR_INT (index), 16), 255)
217 #define SET_H_FR_2(index, x) \
220 if (GTSI ((x), 255)) {\
223 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xff00ffff), SLLHI ((x), 16)));\
226 #define GET_H_FR_3(index) ANDSI (SRLSI (GET_H_FR_INT (index), 24), 255)
227 #define SET_H_FR_3(index, x) \
230 if (GTSI ((x), 255)) {\
233 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 16777215), SLLHI ((x), 24)));\
236 #define GET_H_CPR_DOUBLE(index) frvbf_h_cpr_double_get_handler (current_cpu, index)
237 #define SET_H_CPR_DOUBLE(index, x) \
239 frvbf_h_cpr_double_set_handler (current_cpu, (index), (x));\
241 #define GET_H_ACCG(index) ANDSI (GET_H_SPR (((index) + (1472))), 255)
242 #define SET_H_ACCG(index, x) \
244 CPU (h_spr[(((index)) + (1472))]) = ANDSI ((x), 255);\
246 #define GET_H_ACC40S(index) ORDI (SLLDI (EXTQIDI (TRUNCSIQI (GET_H_SPR (((index) + (1472))))), 32), ZEXTSIDI (GET_H_SPR (((index) + (1408)))))
247 #define SET_H_ACC40S(index, x) \
250 frv_check_spr_write_access (current_cpu, (((index)) + (1408)));\
251 CPU (h_spr[(((index)) + (1472))]) = ANDDI (SRLDI ((x), 32), 255);\
252 CPU (h_spr[(((index)) + (1408))]) = TRUNCDISI ((x));\
255 #define GET_H_ACC40U(index) ORDI (SLLDI (ZEXTSIDI (GET_H_SPR (((index) + (1472)))), 32), ZEXTSIDI (GET_H_SPR (((index) + (1408)))))
256 #define SET_H_ACC40U(index, x) \
259 frv_check_spr_write_access (current_cpu, (((index)) + (1408)));\
260 CPU (h_spr[(((index)) + (1472))]) = ANDDI (SRLDI ((x), 32), 255);\
261 CPU (h_spr[(((index)) + (1408))]) = TRUNCDISI ((x));\
264 #define GET_H_IACC0(index) ORDI (SLLDI (EXTSIDI (GET_H_SPR (((UINT) 280))), 32), ZEXTSIDI (GET_H_SPR (((UINT) 281))))
265 #define SET_H_IACC0(index, x) \
268 SET_H_SPR (((UINT) 280), TRUNCDISI (SRLDI ((x), 32)));\
269 SET_H_SPR (((UINT) 281), TRUNCDISI ((x)));\
273 /* Cover fns for register access. */
274 BI frvbf_h_reloc_ann_get (SIM_CPU *);
275 void frvbf_h_reloc_ann_set (SIM_CPU *, BI);
276 USI frvbf_h_pc_get (SIM_CPU *);
277 void frvbf_h_pc_set (SIM_CPU *, USI);
278 UQI frvbf_h_psr_imple_get (SIM_CPU *);
279 void frvbf_h_psr_imple_set (SIM_CPU *, UQI);
280 UQI frvbf_h_psr_ver_get (SIM_CPU *);
281 void frvbf_h_psr_ver_set (SIM_CPU *, UQI);
282 BI frvbf_h_psr_ice_get (SIM_CPU *);
283 void frvbf_h_psr_ice_set (SIM_CPU *, BI);
284 BI frvbf_h_psr_nem_get (SIM_CPU *);
285 void frvbf_h_psr_nem_set (SIM_CPU *, BI);
286 BI frvbf_h_psr_cm_get (SIM_CPU *);
287 void frvbf_h_psr_cm_set (SIM_CPU *, BI);
288 BI frvbf_h_psr_be_get (SIM_CPU *);
289 void frvbf_h_psr_be_set (SIM_CPU *, BI);
290 BI frvbf_h_psr_esr_get (SIM_CPU *);
291 void frvbf_h_psr_esr_set (SIM_CPU *, BI);
292 BI frvbf_h_psr_ef_get (SIM_CPU *);
293 void frvbf_h_psr_ef_set (SIM_CPU *, BI);
294 BI frvbf_h_psr_em_get (SIM_CPU *);
295 void frvbf_h_psr_em_set (SIM_CPU *, BI);
296 UQI frvbf_h_psr_pil_get (SIM_CPU *);
297 void frvbf_h_psr_pil_set (SIM_CPU *, UQI);
298 BI frvbf_h_psr_ps_get (SIM_CPU *);
299 void frvbf_h_psr_ps_set (SIM_CPU *, BI);
300 BI frvbf_h_psr_et_get (SIM_CPU *);
301 void frvbf_h_psr_et_set (SIM_CPU *, BI);
302 BI frvbf_h_psr_s_get (SIM_CPU *);
303 void frvbf_h_psr_s_set (SIM_CPU *, BI);
304 USI frvbf_h_tbr_tba_get (SIM_CPU *);
305 void frvbf_h_tbr_tba_set (SIM_CPU *, USI);
306 UQI frvbf_h_tbr_tt_get (SIM_CPU *);
307 void frvbf_h_tbr_tt_set (SIM_CPU *, UQI);
308 BI frvbf_h_bpsr_bs_get (SIM_CPU *);
309 void frvbf_h_bpsr_bs_set (SIM_CPU *, BI);
310 BI frvbf_h_bpsr_bet_get (SIM_CPU *);
311 void frvbf_h_bpsr_bet_set (SIM_CPU *, BI);
312 USI frvbf_h_gr_get (SIM_CPU *, UINT);
313 void frvbf_h_gr_set (SIM_CPU *, UINT, USI);
314 DI frvbf_h_gr_double_get (SIM_CPU *, UINT);
315 void frvbf_h_gr_double_set (SIM_CPU *, UINT, DI);
316 UHI frvbf_h_gr_hi_get (SIM_CPU *, UINT);
317 void frvbf_h_gr_hi_set (SIM_CPU *, UINT, UHI);
318 UHI frvbf_h_gr_lo_get (SIM_CPU *, UINT);
319 void frvbf_h_gr_lo_set (SIM_CPU *, UINT, UHI);
320 SF frvbf_h_fr_get (SIM_CPU *, UINT);
321 void frvbf_h_fr_set (SIM_CPU *, UINT, SF);
322 DF frvbf_h_fr_double_get (SIM_CPU *, UINT);
323 void frvbf_h_fr_double_set (SIM_CPU *, UINT, DF);
324 USI frvbf_h_fr_int_get (SIM_CPU *, UINT);
325 void frvbf_h_fr_int_set (SIM_CPU *, UINT, USI);
326 UHI frvbf_h_fr_hi_get (SIM_CPU *, UINT);
327 void frvbf_h_fr_hi_set (SIM_CPU *, UINT, UHI);
328 UHI frvbf_h_fr_lo_get (SIM_CPU *, UINT);
329 void frvbf_h_fr_lo_set (SIM_CPU *, UINT, UHI);
330 UHI frvbf_h_fr_0_get (SIM_CPU *, UINT);
331 void frvbf_h_fr_0_set (SIM_CPU *, UINT, UHI);
332 UHI frvbf_h_fr_1_get (SIM_CPU *, UINT);
333 void frvbf_h_fr_1_set (SIM_CPU *, UINT, UHI);
334 UHI frvbf_h_fr_2_get (SIM_CPU *, UINT);
335 void frvbf_h_fr_2_set (SIM_CPU *, UINT, UHI);
336 UHI frvbf_h_fr_3_get (SIM_CPU *, UINT);
337 void frvbf_h_fr_3_set (SIM_CPU *, UINT, UHI);
338 SI frvbf_h_cpr_get (SIM_CPU *, UINT);
339 void frvbf_h_cpr_set (SIM_CPU *, UINT, SI);
340 DI frvbf_h_cpr_double_get (SIM_CPU *, UINT);
341 void frvbf_h_cpr_double_set (SIM_CPU *, UINT, DI);
342 USI frvbf_h_spr_get (SIM_CPU *, UINT);
343 void frvbf_h_spr_set (SIM_CPU *, UINT, USI);
344 USI frvbf_h_accg_get (SIM_CPU *, UINT);
345 void frvbf_h_accg_set (SIM_CPU *, UINT, USI);
346 DI frvbf_h_acc40S_get (SIM_CPU *, UINT);
347 void frvbf_h_acc40S_set (SIM_CPU *, UINT, DI);
348 UDI frvbf_h_acc40U_get (SIM_CPU *, UINT);
349 void frvbf_h_acc40U_set (SIM_CPU *, UINT, UDI);
350 DI frvbf_h_iacc0_get (SIM_CPU *, UINT);
351 void frvbf_h_iacc0_set (SIM_CPU *, UINT, DI);
352 UQI frvbf_h_iccr_get (SIM_CPU *, UINT);
353 void frvbf_h_iccr_set (SIM_CPU *, UINT, UQI);
354 UQI frvbf_h_fccr_get (SIM_CPU *, UINT);
355 void frvbf_h_fccr_set (SIM_CPU *, UINT, UQI);
356 UQI frvbf_h_cccr_get (SIM_CPU *, UINT);
357 void frvbf_h_cccr_set (SIM_CPU *, UINT, UQI);
359 /* These must be hand-written. */
360 extern CPUREG_FETCH_FN frvbf_fetch_register;
361 extern CPUREG_STORE_FN frvbf_store_register;
369 DI prev_fr_complex_1;
370 DI prev_fr_complex_2;
423 /* Instruction argument buffer. */
426 struct { /* no operands */
430 unsigned short out_h_spr_USI_2;
441 unsigned char out_FRkhi;
446 unsigned char out_FRklo;
451 unsigned char out_GRk;
456 unsigned char out_GRkhi;
461 unsigned char out_GRklo;
466 unsigned char in_ACCGi;
467 unsigned char out_FRintk;
472 unsigned char in_FRkhi;
473 unsigned char out_FRkhi;
478 unsigned char in_FRklo;
479 unsigned char out_FRklo;
484 unsigned char in_FRdoublej;
485 unsigned char out_FRintk;
490 unsigned char in_FRintj;
491 unsigned char out_FRdoublek;
497 unsigned char in_GRi;
503 unsigned char in_FCCi_2;
509 unsigned char in_ICCi_2;
514 unsigned short in_spr;
515 unsigned char out_GRj;
520 unsigned short out_spr;
521 unsigned char in_GRj;
526 unsigned char in_ACCGk;
527 unsigned char in_FRinti;
528 unsigned char out_ACCGk;
534 unsigned char in_ACC40Si;
535 unsigned char out_FRintk;
541 unsigned char in_GRi;
542 unsigned char in_GRj;
548 unsigned char in_GRi;
549 unsigned char in_GRj;
555 unsigned char in_FRdoublek;
556 unsigned char in_GRi;
562 unsigned char in_GRdoublek;
563 unsigned char in_GRi;
569 unsigned char in_FRintk;
570 unsigned char in_GRi;
576 unsigned char in_GRi;
577 unsigned char out_FRdoublek;
583 unsigned char in_GRi;
584 unsigned char out_FRintk;
590 unsigned char in_GRi;
591 unsigned char out_GRdoublek;
596 unsigned char in_GRj;
597 unsigned char in_h_iacc0_DI_0;
598 unsigned char out_GRk;
604 unsigned char in_ACC40Si;
605 unsigned char in_FRintj;
606 unsigned char out_FRintk;
612 unsigned char in_FRinti;
613 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRinti_1;
614 unsigned char out_FRintk;
619 unsigned char in_FRintk;
620 unsigned char out_FRintk;
621 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0;
622 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0;
628 unsigned char in_FRdoublei;
629 unsigned char in_FRdoublej;
630 unsigned char out_FCCi_2;
635 unsigned char in_FRj;
636 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_1;
637 unsigned char out_FRintk;
638 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_1;
643 unsigned char in_FRintj;
644 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintj_1;
645 unsigned char out_FRk;
646 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_1;
652 unsigned char in_CRi;
653 unsigned char in_CRj;
654 unsigned char out_CRk;
660 unsigned char in_GRi;
661 unsigned char in_GRk;
662 unsigned char out_GRk;
667 unsigned char in_GRi;
668 unsigned char in_GRj;
669 unsigned char in_h_iacc0_DI_0;
670 unsigned char out_h_iacc0_DI_0;
676 unsigned char in_FRintieven;
677 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintieven_1;
678 unsigned char out_FRintkeven;
679 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintkeven_1;
685 unsigned char in_ACC40Si;
686 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Si_1;
687 unsigned char out_FRintkeven;
688 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintkeven_1;
694 unsigned char in_FRinti;
695 unsigned char in_FRintj;
696 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRinti_1;
697 unsigned char out_FRintk;
703 unsigned char in_FRdoublei;
704 unsigned char in_FRdoublej;
705 unsigned char in_FRdoublek;
706 unsigned char out_FRdoublek;
713 unsigned char in_CCi;
714 unsigned char in_FRj;
715 unsigned char out_FRintk;
722 unsigned char in_CCi;
723 unsigned char in_FRintj;
724 unsigned char out_FRk;
731 unsigned char in_CCi;
732 unsigned char in_FCCi_3;
733 unsigned char out_CRj_float;
740 unsigned char in_CCi;
741 unsigned char in_ICCi_3;
742 unsigned char out_CRj_int;
748 unsigned short in_h_spr_USI_272;
749 unsigned short in_h_spr_USI_273;
750 unsigned short out_h_spr_USI_273;
751 unsigned char in_FCCi_2;
757 unsigned short in_h_spr_USI_272;
758 unsigned short in_h_spr_USI_273;
759 unsigned short out_h_spr_USI_273;
760 unsigned char in_ICCi_2;
766 unsigned char in_CPRdoublek;
767 unsigned char in_GRi;
768 unsigned char in_GRj;
769 unsigned char out_GRi;
775 unsigned char in_CPRk;
776 unsigned char in_GRi;
777 unsigned char in_GRj;
778 unsigned char out_GRi;
784 unsigned char in_GRi;
785 unsigned char in_GRj;
786 unsigned char out_CPRdoublek;
787 unsigned char out_GRi;
793 unsigned char in_GRi;
794 unsigned char in_GRj;
795 unsigned char out_CPRk;
796 unsigned char out_GRi;
801 unsigned char in_FRintk;
802 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0;
803 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0;
804 unsigned char out_FRintk;
805 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0;
806 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0;
814 unsigned char in_CCi;
815 unsigned char in_GRi;
816 unsigned char in_GRj;
823 unsigned char in_GRi;
824 unsigned char in_ICCi_1;
825 unsigned char out_GRdoublek;
826 unsigned char out_ICCi_1;
833 unsigned char in_GRi;
834 unsigned char in_ICCi_1;
835 unsigned char out_GRk;
836 unsigned char out_ICCi_1;
844 unsigned char in_CCi;
845 unsigned char in_FRinti;
846 unsigned char in_FRintj;
847 unsigned char out_FRintk;
855 unsigned char in_CCi;
856 unsigned char in_FRi;
857 unsigned char in_FRj;
858 unsigned char out_FCCi_2;
865 unsigned char in_CCi;
866 unsigned char in_FRintk;
867 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_1;
868 unsigned char out_GRj;
869 unsigned char out_h_gr_USI_add__DFLT_index_of__DFLT_GRj_1;
876 unsigned char in_CCi;
877 unsigned char in_GRj;
878 unsigned char in_h_gr_USI_add__DFLT_index_of__DFLT_GRj_1;
879 unsigned char out_FRintk;
880 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_1;
887 unsigned char in_GRi;
888 unsigned char in_GRj;
889 unsigned char in_ICCi_1;
890 unsigned char out_GRdoublek;
891 unsigned char out_ICCi_1;
898 unsigned char in_GRi;
899 unsigned char in_GRj;
900 unsigned char in_ICCi_1;
901 unsigned char out_GRk;
902 unsigned char out_ICCi_1;
910 unsigned char in_CCi;
911 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0;
912 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0;
913 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0;
914 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0;
919 unsigned char in_ACC40Si;
920 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Si_1;
921 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Si_2;
922 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Si_3;
923 unsigned char out_ACC40Sk;
924 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_1;
925 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_2;
926 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_3;
931 unsigned char in_FRintj;
932 unsigned char in_FRintk;
933 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintj_0;
934 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintj_0;
935 unsigned char out_FRintj;
936 unsigned char out_FRintk;
937 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0;
938 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0;
944 unsigned char in_FRinti;
945 unsigned char in_FRintk;
946 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0;
947 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_1;
948 unsigned char out_FRinti;
949 unsigned char out_FRintk;
950 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0;
957 unsigned char in_FRi;
958 unsigned char in_FRj;
959 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_1;
960 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_1;
961 unsigned char out_FCCi_2;
962 unsigned char out_h_fccr_UQI_add__DFLT_index_of__DFLT_FCCi_2_1;
970 unsigned char in_CCi;
971 unsigned char in_FRi;
972 unsigned char in_FRj;
973 unsigned char in_FRk;
974 unsigned char out_FRk;
980 unsigned short out_h_spr_USI_1;
981 unsigned short out_h_spr_USI_768;
982 unsigned short out_h_spr_USI_769;
983 unsigned short out_h_spr_USI_770;
984 unsigned short out_h_spr_USI_771;
985 unsigned char in_FCCi_2;
986 unsigned char in_GRi;
992 unsigned short out_h_spr_USI_1;
993 unsigned short out_h_spr_USI_768;
994 unsigned short out_h_spr_USI_769;
995 unsigned short out_h_spr_USI_770;
996 unsigned short out_h_spr_USI_771;
997 unsigned char in_GRi;
998 unsigned char in_ICCi_2;
1003 unsigned char in_FRintk;
1004 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_1;
1005 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_2;
1006 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_3;
1007 unsigned char out_GRj;
1008 unsigned char out_h_gr_USI_add__DFLT_index_of__DFLT_GRj_1;
1009 unsigned char out_h_gr_USI_add__DFLT_index_of__DFLT_GRj_2;
1010 unsigned char out_h_gr_USI_add__DFLT_index_of__DFLT_GRj_3;
1015 unsigned char in_GRj;
1016 unsigned char in_h_gr_USI_add__DFLT_index_of__DFLT_GRj_1;
1017 unsigned char in_h_gr_USI_add__DFLT_index_of__DFLT_GRj_2;
1018 unsigned char in_h_gr_USI_add__DFLT_index_of__DFLT_GRj_3;
1019 unsigned char out_FRintk;
1020 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_1;
1021 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_2;
1022 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_3;
1030 unsigned char in_CCi;
1031 unsigned char in_GRi;
1032 unsigned char in_GRj;
1033 unsigned char in_GRk;
1034 unsigned char out_GRk;
1042 unsigned char in_CCi;
1043 unsigned char in_FRdoublek;
1044 unsigned char in_GRi;
1045 unsigned char in_GRj;
1046 unsigned char out_GRi;
1054 unsigned char in_CCi;
1055 unsigned char in_GRdoublek;
1056 unsigned char in_GRi;
1057 unsigned char in_GRj;
1058 unsigned char out_GRi;
1066 unsigned char in_CCi;
1067 unsigned char in_FRintk;
1068 unsigned char in_GRi;
1069 unsigned char in_GRj;
1070 unsigned char out_GRi;
1078 unsigned char in_CCi;
1079 unsigned char in_GRi;
1080 unsigned char in_GRj;
1081 unsigned char in_GRk;
1082 unsigned char out_GRi;
1090 unsigned char in_CCi;
1091 unsigned char in_GRi;
1092 unsigned char in_GRj;
1093 unsigned char out_FRdoublek;
1094 unsigned char out_GRi;
1102 unsigned char in_CCi;
1103 unsigned char in_GRi;
1104 unsigned char in_GRj;
1105 unsigned char out_GRdoublek;
1106 unsigned char out_GRi;
1114 unsigned char in_CCi;
1115 unsigned char in_GRi;
1116 unsigned char in_GRj;
1117 unsigned char out_FRintk;
1118 unsigned char out_GRi;
1126 unsigned char in_CCi;
1127 unsigned char in_GRi;
1128 unsigned char in_GRj;
1129 unsigned char out_GRi;
1130 unsigned char out_GRk;
1136 unsigned char in_FRinti;
1137 unsigned char in_FRintj;
1138 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1139 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1140 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1141 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1142 unsigned char out_FCCk;
1143 unsigned char out_h_fccr_UQI_add__DFLT_index_of__DFLT_FCCk_1;
1149 unsigned char in_FRinti;
1150 unsigned char in_FRintk;
1151 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1152 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1153 unsigned char out_FRinti;
1154 unsigned char out_FRintk;
1155 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1156 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1162 unsigned char in_FRi;
1163 unsigned char in_FRj;
1164 unsigned char in_FRk;
1165 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_1;
1166 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_1;
1167 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRk_1;
1168 unsigned char out_FRk;
1169 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_1;
1175 unsigned short out_h_spr_USI_1;
1176 unsigned short out_h_spr_USI_768;
1177 unsigned short out_h_spr_USI_769;
1178 unsigned short out_h_spr_USI_770;
1179 unsigned short out_h_spr_USI_771;
1180 unsigned char in_FCCi_2;
1181 unsigned char in_GRi;
1182 unsigned char in_GRj;
1188 unsigned short out_h_spr_USI_1;
1189 unsigned short out_h_spr_USI_768;
1190 unsigned short out_h_spr_USI_769;
1191 unsigned short out_h_spr_USI_770;
1192 unsigned short out_h_spr_USI_771;
1193 unsigned char in_GRi;
1194 unsigned char in_GRj;
1195 unsigned char in_ICCi_2;
1203 unsigned char in_CCi;
1204 unsigned char in_GRi;
1205 unsigned char in_GRj;
1206 unsigned char in_h_iccr_UQI_and__DFLT_index_of__DFLT_CCi_3;
1207 unsigned char out_GRdoublek;
1208 unsigned char out_h_iccr_UQI_and__DFLT_index_of__DFLT_CCi_3;
1216 unsigned char in_CCi;
1217 unsigned char in_GRi;
1218 unsigned char in_GRj;
1219 unsigned char in_h_iccr_UQI_and__DFLT_index_of__DFLT_CCi_3;
1220 unsigned char out_GRk;
1221 unsigned char out_h_iccr_UQI_and__DFLT_index_of__DFLT_CCi_3;
1226 unsigned char in_FRinti;
1227 unsigned char in_FRintkeven;
1228 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1229 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1230 unsigned char out_FRinti;
1231 unsigned char out_FRintkeven;
1232 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1233 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_add__DFLT_0_1;
1234 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1235 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_add__DFLT_0_1;
1243 unsigned char in_CCi;
1244 unsigned char in_FRi;
1245 unsigned char in_FRj;
1246 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_1;
1247 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_1;
1248 unsigned char out_FRk;
1249 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_1;
1257 unsigned char in_CCi;
1258 unsigned char in_FRintkeven;
1259 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1260 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1261 unsigned char out_FRintkeven;
1262 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1263 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_1;
1264 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1265 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_1;
1273 unsigned char in_CCi;
1274 unsigned char in_FRinti;
1275 unsigned char in_FRintj;
1276 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1277 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1278 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1279 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1280 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1281 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1287 unsigned char in_FRintieven;
1288 unsigned char in_FRintkeven;
1289 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_0;
1290 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_1;
1291 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0;
1292 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1;
1293 unsigned char out_FRintieven;
1294 unsigned char out_FRintkeven;
1295 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1296 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_1;
1297 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1298 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_1;
1304 unsigned char in_FRi;
1305 unsigned char in_FRj;
1306 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_1;
1307 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_2;
1308 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_3;
1309 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_1;
1310 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_2;
1311 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_3;
1312 unsigned char out_FRk;
1313 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_1;
1314 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_2;
1315 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_3;
1323 unsigned char in_ACC40Uk;
1324 unsigned char in_CCi;
1325 unsigned char in_FRinti;
1326 unsigned char in_FRintj;
1327 unsigned char in_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_1;
1328 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1329 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1330 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1331 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1332 unsigned char out_ACC40Uk;
1333 unsigned char out_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_1;
1341 unsigned char in_ACC40Sk;
1342 unsigned char in_CCi;
1343 unsigned char in_FRinti;
1344 unsigned char in_FRintj;
1345 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_1;
1346 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1347 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1348 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0;
1349 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1350 unsigned char out_ACC40Sk;
1351 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_1;
1358 unsigned char in_CCi;
1359 unsigned char in_FRintjeven;
1360 unsigned char in_FRintk;
1361 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_0;
1362 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_1;
1363 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_0;
1364 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_1;
1365 unsigned char out_FRintjeven;
1366 unsigned char out_FRintk;
1367 unsigned char out_h_fr_0_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1368 unsigned char out_h_fr_1_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1369 unsigned char out_h_fr_2_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1370 unsigned char out_h_fr_3_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1377 unsigned char in_CCi;
1378 unsigned char in_FRintj;
1379 unsigned char in_FRintkeven;
1380 unsigned char in_h_fr_0_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1381 unsigned char in_h_fr_1_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1382 unsigned char in_h_fr_2_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1383 unsigned char in_h_fr_3_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1384 unsigned char out_FRintj;
1385 unsigned char out_FRintkeven;
1386 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1387 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_1;
1388 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1389 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_1;
1395 unsigned char in_FRintieven;
1396 unsigned char in_FRintjeven;
1397 unsigned char in_FRintkeven;
1398 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0;
1399 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1;
1400 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_0;
1401 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_1;
1402 unsigned char out_FRintieven;
1403 unsigned char out_FRintjeven;
1404 unsigned char out_FRintkeven;
1405 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1406 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_1;
1407 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1408 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_1;
1413 unsigned char in_FRintieven;
1414 unsigned char in_FRintk;
1415 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_0;
1416 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_1;
1417 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0;
1418 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1;
1419 unsigned char out_FRintieven;
1420 unsigned char out_FRintk;
1421 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1422 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_2;
1423 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_add__DFLT_0_1;
1424 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_add__DFLT_2_1;
1425 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1426 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_2;
1427 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_add__DFLT_0_1;
1428 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_add__DFLT_2_1;
1435 unsigned char in_CCi;
1436 unsigned char in_FRintj;
1437 unsigned char in_FRintk;
1438 unsigned char in_h_fr_0_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1439 unsigned char in_h_fr_1_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1440 unsigned char in_h_fr_2_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1441 unsigned char in_h_fr_3_UHI_add__DFLT_index_of__DFLT_FRintj_0;
1442 unsigned char out_FRintj;
1443 unsigned char out_FRintk;
1444 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1445 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_1;
1446 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_2;
1447 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_3;
1448 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0;
1449 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_1;
1450 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_2;
1451 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_3;
1459 unsigned char in_CCi;
1460 unsigned char in_FRintieven;
1461 unsigned char in_FRintjeven;
1462 unsigned char in_FRintkeven;
1463 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_0;
1464 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_1;
1465 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_0;
1466 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_1;
1467 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0;
1468 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1;
1469 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_0;
1470 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_1;
1471 unsigned char out_FRintkeven;
1472 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1473 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_1;
1474 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0;
1475 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_1;
1483 unsigned char in_ACC40Uk;
1484 unsigned char in_CCi;
1485 unsigned char in_FRintieven;
1486 unsigned char in_FRintjeven;
1487 unsigned char in_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_1;
1488 unsigned char in_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_2;
1489 unsigned char in_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_3;
1490 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_0;
1491 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_1;
1492 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_0;
1493 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_1;
1494 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0;
1495 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1;
1496 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_0;
1497 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_1;
1498 unsigned char out_ACC40Uk;
1499 unsigned char out_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_1;
1500 unsigned char out_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_2;
1501 unsigned char out_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_3;
1509 unsigned char in_ACC40Sk;
1510 unsigned char in_CCi;
1511 unsigned char in_FRintieven;
1512 unsigned char in_FRintjeven;
1513 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_1;
1514 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_2;
1515 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_3;
1516 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_0;
1517 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_1;
1518 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_0;
1519 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_1;
1520 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0;
1521 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1;
1522 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_0;
1523 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_1;
1524 unsigned char out_ACC40Sk;
1525 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_1;
1526 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_2;
1527 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_3;
1530 /* Writeback handler. */
1532 /* Pointer to argbuf entry for insn whose results need writing back. */
1533 const struct argbuf *abuf;
1535 /* x-before handler */
1537 /*const SCACHE *insns[MAX_PARALLEL_INSNS];*/
1540 /* x-after handler */
1544 /* This entry is used to terminate each pbb. */
1546 /* Number of insns in pbb. */
1548 /* Next pbb to execute. */
1550 SCACHE *branch_target;
1555 /* The ARGBUF struct. */
1557 /* These are the baseclass definitions. */
1562 /* ??? Temporary hack for skip insns. */
1565 /* cpu specific data follows */
1568 union sem_fields fields;
1573 ??? SCACHE used to contain more than just argbuf. We could delete the
1574 type entirely and always just use ARGBUF, but for future concerns and as
1575 a level of abstraction it is left in. */
1578 struct argbuf argbuf;
1583 /* Macros to simplify extraction, reading and semantic code.
1584 These define and assign the local vars that contain the insn's fields. */
1586 #define EXTRACT_IFMT_EMPTY_VARS \
1587 unsigned int length;
1588 #define EXTRACT_IFMT_EMPTY_CODE \
1591 #define EXTRACT_IFMT_ADD_VARS \
1596 UINT f_ICCi_1_null; \
1599 unsigned int length;
1600 #define EXTRACT_IFMT_ADD_CODE \
1602 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1603 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1604 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1605 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1606 f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1607 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1608 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1610 #define EXTRACT_IFMT_NOT_VARS \
1615 UINT f_ICCi_1_null; \
1618 unsigned int length;
1619 #define EXTRACT_IFMT_NOT_CODE \
1621 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1622 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1623 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1624 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1625 f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1626 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1627 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1629 #define EXTRACT_IFMT_SMUL_VARS \
1634 UINT f_ICCi_1_null; \
1637 unsigned int length;
1638 #define EXTRACT_IFMT_SMUL_CODE \
1640 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1641 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1642 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1643 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1644 f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1645 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1646 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1648 #define EXTRACT_IFMT_SMU_VARS \
1655 unsigned int length;
1656 #define EXTRACT_IFMT_SMU_CODE \
1658 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1659 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1660 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1661 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1662 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1663 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1665 #define EXTRACT_IFMT_SLASS_VARS \
1672 unsigned int length;
1673 #define EXTRACT_IFMT_SLASS_CODE \
1675 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1676 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1677 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1678 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1679 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1680 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1682 #define EXTRACT_IFMT_SCUTSS_VARS \
1689 unsigned int length;
1690 #define EXTRACT_IFMT_SCUTSS_CODE \
1692 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1693 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1694 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1695 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1696 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1697 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1699 #define EXTRACT_IFMT_CADD_VARS \
1708 unsigned int length;
1709 #define EXTRACT_IFMT_CADD_CODE \
1711 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1712 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1713 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1714 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1715 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1716 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1717 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1718 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1720 #define EXTRACT_IFMT_CNOT_VARS \
1729 unsigned int length;
1730 #define EXTRACT_IFMT_CNOT_CODE \
1732 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1733 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1734 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1735 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1736 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1737 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1738 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1739 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1741 #define EXTRACT_IFMT_CSMUL_VARS \
1750 unsigned int length;
1751 #define EXTRACT_IFMT_CSMUL_CODE \
1753 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1754 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1755 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1756 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1757 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1758 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1759 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1760 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1762 #define EXTRACT_IFMT_ADDCC_VARS \
1770 unsigned int length;
1771 #define EXTRACT_IFMT_ADDCC_CODE \
1773 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1774 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1775 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1776 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1777 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1778 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1779 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1781 #define EXTRACT_IFMT_SMULCC_VARS \
1789 unsigned int length;
1790 #define EXTRACT_IFMT_SMULCC_CODE \
1792 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1793 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1794 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1795 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1796 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1797 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1798 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1800 #define EXTRACT_IFMT_ADDI_VARS \
1806 unsigned int length;
1807 #define EXTRACT_IFMT_ADDI_CODE \
1809 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1810 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1811 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1812 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1813 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
1815 #define EXTRACT_IFMT_SMULI_VARS \
1821 unsigned int length;
1822 #define EXTRACT_IFMT_SMULI_CODE \
1824 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1825 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1826 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1827 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1828 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
1830 #define EXTRACT_IFMT_ADDICC_VARS \
1837 unsigned int length;
1838 #define EXTRACT_IFMT_ADDICC_CODE \
1840 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1841 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1842 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1843 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1844 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1845 f_s10 = EXTRACT_LSB0_INT (insn, 32, 9, 10); \
1847 #define EXTRACT_IFMT_SMULICC_VARS \
1854 unsigned int length;
1855 #define EXTRACT_IFMT_SMULICC_CODE \
1857 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1858 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1859 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1860 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1861 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1862 f_s10 = EXTRACT_LSB0_INT (insn, 32, 9, 10); \
1864 #define EXTRACT_IFMT_CMPB_VARS \
1872 unsigned int length;
1873 #define EXTRACT_IFMT_CMPB_CODE \
1875 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1876 f_GRk_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1877 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1878 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1879 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1880 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1881 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1883 #define EXTRACT_IFMT_SETLO_VARS \
1887 UINT f_misc_null_4; \
1889 unsigned int length;
1890 #define EXTRACT_IFMT_SETLO_CODE \
1892 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1893 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1894 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1895 f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1896 f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
1898 #define EXTRACT_IFMT_SETHI_VARS \
1902 UINT f_misc_null_4; \
1904 unsigned int length;
1905 #define EXTRACT_IFMT_SETHI_CODE \
1907 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1908 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1909 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1910 f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1911 f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
1913 #define EXTRACT_IFMT_SETLOS_VARS \
1917 UINT f_misc_null_4; \
1919 unsigned int length;
1920 #define EXTRACT_IFMT_SETLOS_CODE \
1922 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1923 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1924 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1925 f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1926 f_s16 = EXTRACT_LSB0_INT (insn, 32, 15, 16); \
1928 #define EXTRACT_IFMT_LDBF_VARS \
1935 unsigned int length;
1936 #define EXTRACT_IFMT_LDBF_CODE \
1938 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1939 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1940 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1941 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1942 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1943 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1945 #define EXTRACT_IFMT_LDC_VARS \
1952 unsigned int length;
1953 #define EXTRACT_IFMT_LDC_CODE \
1955 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1956 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1957 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1958 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1959 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1960 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1962 #define EXTRACT_IFMT_LDD_VARS \
1969 unsigned int length;
1970 #define EXTRACT_IFMT_LDD_CODE \
1972 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1973 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1974 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1975 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1976 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1977 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1979 #define EXTRACT_IFMT_LDDF_VARS \
1986 unsigned int length;
1987 #define EXTRACT_IFMT_LDDF_CODE \
1989 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1990 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1991 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1992 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1993 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1994 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1996 #define EXTRACT_IFMT_LDDC_VARS \
2003 unsigned int length;
2004 #define EXTRACT_IFMT_LDDC_CODE \
2006 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2007 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2008 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2009 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2010 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2011 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2013 #define EXTRACT_IFMT_LDSBI_VARS \
2019 unsigned int length;
2020 #define EXTRACT_IFMT_LDSBI_CODE \
2022 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2023 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2024 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2025 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2026 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2028 #define EXTRACT_IFMT_LDBFI_VARS \
2034 unsigned int length;
2035 #define EXTRACT_IFMT_LDBFI_CODE \
2037 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2038 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2039 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2040 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2041 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2043 #define EXTRACT_IFMT_LDDI_VARS \
2049 unsigned int length;
2050 #define EXTRACT_IFMT_LDDI_CODE \
2052 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2053 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2054 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2055 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2056 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2058 #define EXTRACT_IFMT_LDDFI_VARS \
2064 unsigned int length;
2065 #define EXTRACT_IFMT_LDDFI_CODE \
2067 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2068 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2069 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2070 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2071 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2073 #define EXTRACT_IFMT_CLDBF_VARS \
2082 unsigned int length;
2083 #define EXTRACT_IFMT_CLDBF_CODE \
2085 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2086 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2087 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2088 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2089 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2090 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2091 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2092 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2094 #define EXTRACT_IFMT_CLDDF_VARS \
2103 unsigned int length;
2104 #define EXTRACT_IFMT_CLDDF_CODE \
2106 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2107 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2108 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2109 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2110 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2111 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2112 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2113 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2115 #define EXTRACT_IFMT_MOVGF_VARS \
2122 unsigned int length;
2123 #define EXTRACT_IFMT_MOVGF_CODE \
2125 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2126 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2127 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2128 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2129 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2130 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2132 #define EXTRACT_IFMT_CMOVGF_VARS \
2141 unsigned int length;
2142 #define EXTRACT_IFMT_CMOVGF_CODE \
2144 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2145 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2146 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2147 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2148 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2149 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2150 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2151 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2153 #define EXTRACT_IFMT_MOVGS_VARS \
2161 unsigned int length;
2162 #define EXTRACT_IFMT_MOVGS_CODE \
2164 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2165 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2166 f_spr_h = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2167 f_spr_l = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2169 f_spr = ((((f_spr_h) << (6))) | (f_spr_l));\
2171 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2172 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2174 #define EXTRACT_IFMT_BRA_VARS \
2177 UINT f_ICCi_2_null; \
2181 unsigned int length;
2182 #define EXTRACT_IFMT_BRA_CODE \
2184 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2185 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2186 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2187 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2188 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2189 f_label16 = ((((EXTRACT_LSB0_INT (insn, 32, 15, 16)) << (2))) + (pc)); \
2191 #define EXTRACT_IFMT_BNO_VARS \
2194 UINT f_ICCi_2_null; \
2197 UINT f_label16_null; \
2198 unsigned int length;
2199 #define EXTRACT_IFMT_BNO_CODE \
2201 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2202 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2203 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2204 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2205 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2206 f_label16_null = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
2208 #define EXTRACT_IFMT_BEQ_VARS \
2215 unsigned int length;
2216 #define EXTRACT_IFMT_BEQ_CODE \
2218 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2219 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2220 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2221 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2222 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2223 f_label16 = ((((EXTRACT_LSB0_INT (insn, 32, 15, 16)) << (2))) + (pc)); \
2225 #define EXTRACT_IFMT_FBRA_VARS \
2228 UINT f_FCCi_2_null; \
2232 unsigned int length;
2233 #define EXTRACT_IFMT_FBRA_CODE \
2235 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2236 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2237 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2238 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2239 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2240 f_label16 = ((((EXTRACT_LSB0_INT (insn, 32, 15, 16)) << (2))) + (pc)); \
2242 #define EXTRACT_IFMT_FBNO_VARS \
2245 UINT f_FCCi_2_null; \
2248 UINT f_label16_null; \
2249 unsigned int length;
2250 #define EXTRACT_IFMT_FBNO_CODE \
2252 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2253 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2254 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2255 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2256 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2257 f_label16_null = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
2259 #define EXTRACT_IFMT_FBNE_VARS \
2266 unsigned int length;
2267 #define EXTRACT_IFMT_FBNE_CODE \
2269 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2270 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2271 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2272 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2273 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2274 f_label16 = ((((EXTRACT_LSB0_INT (insn, 32, 15, 16)) << (2))) + (pc)); \
2276 #define EXTRACT_IFMT_BCTRLR_VARS \
2279 UINT f_ICCi_2_null; \
2285 unsigned int length;
2286 #define EXTRACT_IFMT_BCTRLR_CODE \
2288 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2289 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2290 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2291 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2292 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2293 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2294 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2295 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2297 #define EXTRACT_IFMT_BRALR_VARS \
2300 UINT f_ICCi_2_null; \
2304 UINT f_ccond_null; \
2306 unsigned int length;
2307 #define EXTRACT_IFMT_BRALR_CODE \
2309 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2310 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2311 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2312 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2313 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2314 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2315 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2316 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2318 #define EXTRACT_IFMT_BNOLR_VARS \
2321 UINT f_ICCi_2_null; \
2325 UINT f_ccond_null; \
2327 unsigned int length;
2328 #define EXTRACT_IFMT_BNOLR_CODE \
2330 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2331 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2332 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2333 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2334 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2335 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2336 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2337 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2339 #define EXTRACT_IFMT_BEQLR_VARS \
2346 UINT f_ccond_null; \
2348 unsigned int length;
2349 #define EXTRACT_IFMT_BEQLR_CODE \
2351 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2352 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2353 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2354 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2355 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2356 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2357 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2358 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2360 #define EXTRACT_IFMT_FBRALR_VARS \
2363 UINT f_FCCi_2_null; \
2367 UINT f_ccond_null; \
2369 unsigned int length;
2370 #define EXTRACT_IFMT_FBRALR_CODE \
2372 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2373 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2374 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2375 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2376 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2377 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2378 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2379 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2381 #define EXTRACT_IFMT_FBNOLR_VARS \
2384 UINT f_FCCi_2_null; \
2388 UINT f_ccond_null; \
2390 unsigned int length;
2391 #define EXTRACT_IFMT_FBNOLR_CODE \
2393 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2394 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2395 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2396 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2397 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2398 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2399 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2400 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2402 #define EXTRACT_IFMT_FBEQLR_VARS \
2409 UINT f_ccond_null; \
2411 unsigned int length;
2412 #define EXTRACT_IFMT_FBEQLR_CODE \
2414 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2415 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2416 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2417 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2418 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2419 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2420 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2421 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2423 #define EXTRACT_IFMT_BCRALR_VARS \
2426 UINT f_ICCi_2_null; \
2432 unsigned int length;
2433 #define EXTRACT_IFMT_BCRALR_CODE \
2435 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2436 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2437 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2438 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2439 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2440 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2441 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2442 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2444 #define EXTRACT_IFMT_BCEQLR_VARS \
2453 unsigned int length;
2454 #define EXTRACT_IFMT_BCEQLR_CODE \
2456 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2457 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2458 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2459 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2460 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2461 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2462 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2463 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2465 #define EXTRACT_IFMT_FCBRALR_VARS \
2468 UINT f_FCCi_2_null; \
2474 unsigned int length;
2475 #define EXTRACT_IFMT_FCBRALR_CODE \
2477 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2478 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2479 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2480 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2481 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2482 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2483 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2484 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2486 #define EXTRACT_IFMT_FCBEQLR_VARS \
2495 unsigned int length;
2496 #define EXTRACT_IFMT_FCBEQLR_CODE \
2498 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2499 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2500 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2501 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2502 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2503 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2504 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2505 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2507 #define EXTRACT_IFMT_JMPL_VARS \
2509 UINT f_misc_null_1; \
2513 UINT f_misc_null_2; \
2515 unsigned int length;
2516 #define EXTRACT_IFMT_JMPL_CODE \
2518 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2519 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2520 f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2521 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2522 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2523 f_misc_null_2 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2524 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2526 #define EXTRACT_IFMT_CALLL_VARS \
2528 UINT f_misc_null_1; \
2532 UINT f_misc_null_2; \
2534 unsigned int length;
2535 #define EXTRACT_IFMT_CALLL_CODE \
2537 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2538 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2539 f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2540 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2541 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2542 f_misc_null_2 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2543 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2545 #define EXTRACT_IFMT_JMPIL_VARS \
2547 UINT f_misc_null_1; \
2552 unsigned int length;
2553 #define EXTRACT_IFMT_JMPIL_CODE \
2555 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2556 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2557 f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2558 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2559 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2560 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2562 #define EXTRACT_IFMT_CALLIL_VARS \
2564 UINT f_misc_null_1; \
2569 unsigned int length;
2570 #define EXTRACT_IFMT_CALLIL_CODE \
2572 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2573 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2574 f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2575 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2576 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2577 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2579 #define EXTRACT_IFMT_CALL_VARS \
2585 unsigned int length;
2586 #define EXTRACT_IFMT_CALL_CODE \
2588 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2589 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2590 f_labelH6 = EXTRACT_LSB0_INT (insn, 32, 30, 6); \
2591 f_labelL18 = EXTRACT_LSB0_UINT (insn, 32, 17, 18); \
2593 f_label24 = ((((((((f_labelH6) << (18))) | (f_labelL18))) << (2))) + (pc));\
2596 #define EXTRACT_IFMT_RETT_VARS \
2598 UINT f_misc_null_1; \
2603 unsigned int length;
2604 #define EXTRACT_IFMT_RETT_CODE \
2606 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2607 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2608 f_debug = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2609 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2610 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2611 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2613 #define EXTRACT_IFMT_REI_VARS \
2619 unsigned int length;
2620 #define EXTRACT_IFMT_REI_CODE \
2622 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2623 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2624 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2625 f_eir = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2626 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2628 #define EXTRACT_IFMT_TRA_VARS \
2631 UINT f_ICCi_2_null; \
2634 UINT f_misc_null_3; \
2637 unsigned int length;
2638 #define EXTRACT_IFMT_TRA_CODE \
2640 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2641 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2642 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2643 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2644 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2645 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2646 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2647 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2649 #define EXTRACT_IFMT_TNO_VARS \
2652 UINT f_ICCi_2_null; \
2655 UINT f_misc_null_3; \
2658 unsigned int length;
2659 #define EXTRACT_IFMT_TNO_CODE \
2661 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2662 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2663 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2664 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2665 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2666 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2667 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2668 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2670 #define EXTRACT_IFMT_TEQ_VARS \
2676 UINT f_misc_null_3; \
2679 unsigned int length;
2680 #define EXTRACT_IFMT_TEQ_CODE \
2682 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2683 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2684 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2685 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2686 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2687 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2688 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2689 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2691 #define EXTRACT_IFMT_FTRA_VARS \
2694 UINT f_FCCi_2_null; \
2697 UINT f_misc_null_3; \
2700 unsigned int length;
2701 #define EXTRACT_IFMT_FTRA_CODE \
2703 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2704 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2705 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2706 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2707 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2708 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2709 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2710 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2712 #define EXTRACT_IFMT_FTNO_VARS \
2715 UINT f_FCCi_2_null; \
2718 UINT f_misc_null_3; \
2721 unsigned int length;
2722 #define EXTRACT_IFMT_FTNO_CODE \
2724 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2725 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2726 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2727 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2728 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2729 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2730 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2731 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2733 #define EXTRACT_IFMT_FTNE_VARS \
2739 UINT f_misc_null_3; \
2742 unsigned int length;
2743 #define EXTRACT_IFMT_FTNE_CODE \
2745 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2746 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2747 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2748 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2749 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2750 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2751 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2752 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2754 #define EXTRACT_IFMT_TIRA_VARS \
2757 UINT f_ICCi_2_null; \
2761 unsigned int length;
2762 #define EXTRACT_IFMT_TIRA_CODE \
2764 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2765 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2766 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2767 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2768 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2769 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2771 #define EXTRACT_IFMT_TINO_VARS \
2774 UINT f_ICCi_2_null; \
2778 unsigned int length;
2779 #define EXTRACT_IFMT_TINO_CODE \
2781 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2782 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2783 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2784 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2785 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2786 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2788 #define EXTRACT_IFMT_TIEQ_VARS \
2795 unsigned int length;
2796 #define EXTRACT_IFMT_TIEQ_CODE \
2798 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2799 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2800 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2801 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2802 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2803 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2805 #define EXTRACT_IFMT_FTIRA_VARS \
2808 UINT f_ICCi_2_null; \
2812 unsigned int length;
2813 #define EXTRACT_IFMT_FTIRA_CODE \
2815 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2816 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2817 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2818 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2819 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2820 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2822 #define EXTRACT_IFMT_FTINO_VARS \
2825 UINT f_FCCi_2_null; \
2829 unsigned int length;
2830 #define EXTRACT_IFMT_FTINO_CODE \
2832 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2833 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2834 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2835 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2836 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2837 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2839 #define EXTRACT_IFMT_FTINE_VARS \
2846 unsigned int length;
2847 #define EXTRACT_IFMT_FTINE_CODE \
2849 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2850 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2851 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2852 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2853 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2854 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2856 #define EXTRACT_IFMT_BREAK_VARS \
2861 UINT f_misc_null_3; \
2864 unsigned int length;
2865 #define EXTRACT_IFMT_BREAK_CODE \
2867 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2868 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2869 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2870 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2871 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2872 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2873 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2875 #define EXTRACT_IFMT_ANDCR_VARS \
2877 UINT f_misc_null_6; \
2880 UINT f_misc_null_7; \
2883 UINT f_misc_null_8; \
2885 unsigned int length;
2886 #define EXTRACT_IFMT_ANDCR_CODE \
2888 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2889 f_misc_null_6 = EXTRACT_LSB0_UINT (insn, 32, 30, 3); \
2890 f_CRk = EXTRACT_LSB0_UINT (insn, 32, 27, 3); \
2891 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2892 f_misc_null_7 = EXTRACT_LSB0_UINT (insn, 32, 17, 3); \
2893 f_CRi = EXTRACT_LSB0_UINT (insn, 32, 14, 3); \
2894 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2895 f_misc_null_8 = EXTRACT_LSB0_UINT (insn, 32, 5, 3); \
2896 f_CRj = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
2898 #define EXTRACT_IFMT_NOTCR_VARS \
2900 UINT f_misc_null_6; \
2905 UINT f_misc_null_8; \
2907 unsigned int length;
2908 #define EXTRACT_IFMT_NOTCR_CODE \
2910 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2911 f_misc_null_6 = EXTRACT_LSB0_UINT (insn, 32, 30, 3); \
2912 f_CRk = EXTRACT_LSB0_UINT (insn, 32, 27, 3); \
2913 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2914 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2915 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2916 f_misc_null_8 = EXTRACT_LSB0_UINT (insn, 32, 5, 3); \
2917 f_CRj = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
2919 #define EXTRACT_IFMT_CKRA_VARS \
2924 UINT f_misc_null_5; \
2925 UINT f_ICCi_3_null; \
2926 unsigned int length;
2927 #define EXTRACT_IFMT_CKRA_CODE \
2929 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2930 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2931 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2932 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2933 f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2934 f_ICCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2936 #define EXTRACT_IFMT_CKEQ_VARS \
2941 UINT f_misc_null_5; \
2943 unsigned int length;
2944 #define EXTRACT_IFMT_CKEQ_CODE \
2946 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2947 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2948 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2949 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2950 f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2951 f_ICCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2953 #define EXTRACT_IFMT_FCKRA_VARS \
2958 UINT f_misc_null_5; \
2960 unsigned int length;
2961 #define EXTRACT_IFMT_FCKRA_CODE \
2963 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2964 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2965 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2966 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2967 f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2968 f_FCCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2970 #define EXTRACT_IFMT_CCKRA_VARS \
2979 UINT f_misc_null_9; \
2980 UINT f_ICCi_3_null; \
2981 unsigned int length;
2982 #define EXTRACT_IFMT_CCKRA_CODE \
2984 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2985 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2986 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2987 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2988 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2989 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2990 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2991 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2992 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
2993 f_ICCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2995 #define EXTRACT_IFMT_CCKEQ_VARS \
3004 UINT f_misc_null_9; \
3006 unsigned int length;
3007 #define EXTRACT_IFMT_CCKEQ_CODE \
3009 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3010 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3011 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
3012 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3013 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3014 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3015 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3016 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3017 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3018 f_ICCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3020 #define EXTRACT_IFMT_CFCKRA_VARS \
3029 UINT f_misc_null_9; \
3030 UINT f_FCCi_3_null; \
3031 unsigned int length;
3032 #define EXTRACT_IFMT_CFCKRA_CODE \
3034 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3035 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3036 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3037 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3038 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3039 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3040 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3041 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3042 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3043 f_FCCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3045 #define EXTRACT_IFMT_CFCKNE_VARS \
3054 UINT f_misc_null_9; \
3056 unsigned int length;
3057 #define EXTRACT_IFMT_CFCKNE_CODE \
3059 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3060 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3061 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3062 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3063 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3064 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3065 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3066 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3067 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3068 f_FCCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3070 #define EXTRACT_IFMT_CJMPL_VARS \
3072 UINT f_misc_null_1; \
3080 unsigned int length;
3081 #define EXTRACT_IFMT_CJMPL_CODE \
3083 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3084 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3085 f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3086 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3087 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3088 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3089 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3090 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3091 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3093 #define EXTRACT_IFMT_CCALLL_VARS \
3095 UINT f_misc_null_1; \
3103 unsigned int length;
3104 #define EXTRACT_IFMT_CCALLL_CODE \
3106 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3107 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3108 f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3109 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3110 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3111 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3112 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3113 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3114 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3116 #define EXTRACT_IFMT_ICEI_VARS \
3118 UINT f_misc_null_1; \
3124 unsigned int length;
3125 #define EXTRACT_IFMT_ICEI_CODE \
3127 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3128 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3129 f_ae = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3130 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3131 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3132 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3133 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3135 #define EXTRACT_IFMT_ICPL_VARS \
3137 UINT f_misc_null_1; \
3143 unsigned int length;
3144 #define EXTRACT_IFMT_ICPL_CODE \
3146 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3147 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3148 f_lock = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3149 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3150 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3151 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3152 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3154 #define EXTRACT_IFMT_ICUL_VARS \
3161 unsigned int length;
3162 #define EXTRACT_IFMT_ICUL_CODE \
3164 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3165 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3166 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3167 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3168 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3169 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3171 #define EXTRACT_IFMT_BAR_VARS \
3178 unsigned int length;
3179 #define EXTRACT_IFMT_BAR_CODE \
3181 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3182 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3183 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3184 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3185 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3186 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3188 #define EXTRACT_IFMT_LRAI_VARS \
3198 unsigned int length;
3199 #define EXTRACT_IFMT_LRAI_CODE \
3201 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3202 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3203 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3204 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3205 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3206 f_LRAE = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3207 f_LRAD = EXTRACT_LSB0_UINT (insn, 32, 4, 1); \
3208 f_LRAS = EXTRACT_LSB0_UINT (insn, 32, 3, 1); \
3209 f_LRA_null = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
3211 #define EXTRACT_IFMT_TLBPR_VARS \
3213 UINT f_TLBPR_null; \
3220 unsigned int length;
3221 #define EXTRACT_IFMT_TLBPR_CODE \
3223 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3224 f_TLBPR_null = EXTRACT_LSB0_UINT (insn, 32, 30, 2); \
3225 f_TLBPRopx = EXTRACT_LSB0_UINT (insn, 32, 28, 3); \
3226 f_TLBPRL = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3227 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3228 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3229 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3230 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3232 #define EXTRACT_IFMT_COP1_VARS \
3239 unsigned int length;
3240 #define EXTRACT_IFMT_COP1_CODE \
3242 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3243 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3244 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3245 f_CPRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3246 f_s6_1 = EXTRACT_LSB0_INT (insn, 32, 11, 6); \
3247 f_CPRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3249 #define EXTRACT_IFMT_CLRGR_VARS \
3256 unsigned int length;
3257 #define EXTRACT_IFMT_CLRGR_CODE \
3259 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3260 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3261 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3262 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3263 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3264 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3266 #define EXTRACT_IFMT_CLRFR_VARS \
3273 unsigned int length;
3274 #define EXTRACT_IFMT_CLRFR_CODE \
3276 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3277 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3278 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3279 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3280 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3281 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3283 #define EXTRACT_IFMT_FITOS_VARS \
3290 unsigned int length;
3291 #define EXTRACT_IFMT_FITOS_CODE \
3293 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3294 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3295 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3296 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3297 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3298 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3300 #define EXTRACT_IFMT_FSTOI_VARS \
3307 unsigned int length;
3308 #define EXTRACT_IFMT_FSTOI_CODE \
3310 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3311 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3312 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3313 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3314 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3315 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3317 #define EXTRACT_IFMT_FITOD_VARS \
3324 unsigned int length;
3325 #define EXTRACT_IFMT_FITOD_CODE \
3327 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3328 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3329 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3330 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3331 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3332 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3334 #define EXTRACT_IFMT_FDTOI_VARS \
3341 unsigned int length;
3342 #define EXTRACT_IFMT_FDTOI_CODE \
3344 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3345 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3346 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3347 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3348 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3349 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3351 #define EXTRACT_IFMT_CFITOS_VARS \
3360 unsigned int length;
3361 #define EXTRACT_IFMT_CFITOS_CODE \
3363 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3364 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3365 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3366 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3367 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3368 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3369 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3370 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3372 #define EXTRACT_IFMT_CFSTOI_VARS \
3381 unsigned int length;
3382 #define EXTRACT_IFMT_CFSTOI_CODE \
3384 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3385 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3386 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3387 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3388 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3389 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3390 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3391 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3393 #define EXTRACT_IFMT_FMOVS_VARS \
3400 unsigned int length;
3401 #define EXTRACT_IFMT_FMOVS_CODE \
3403 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3404 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3405 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3406 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3407 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3408 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3410 #define EXTRACT_IFMT_FMOVD_VARS \
3417 unsigned int length;
3418 #define EXTRACT_IFMT_FMOVD_CODE \
3420 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3421 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3422 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3423 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3424 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3425 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3427 #define EXTRACT_IFMT_CFMOVS_VARS \
3436 unsigned int length;
3437 #define EXTRACT_IFMT_CFMOVS_CODE \
3439 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3440 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3441 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3442 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3443 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3444 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3445 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3446 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3448 #define EXTRACT_IFMT_FADDS_VARS \
3455 unsigned int length;
3456 #define EXTRACT_IFMT_FADDS_CODE \
3458 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3459 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3460 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3461 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3462 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3463 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3465 #define EXTRACT_IFMT_FADDD_VARS \
3472 unsigned int length;
3473 #define EXTRACT_IFMT_FADDD_CODE \
3475 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3476 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3477 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3478 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3479 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3480 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3482 #define EXTRACT_IFMT_CFADDS_VARS \
3491 unsigned int length;
3492 #define EXTRACT_IFMT_CFADDS_CODE \
3494 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3495 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3496 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3497 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3498 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3499 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3500 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3501 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3503 #define EXTRACT_IFMT_FCMPS_VARS \
3511 unsigned int length;
3512 #define EXTRACT_IFMT_FCMPS_CODE \
3514 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3515 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3516 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3517 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3518 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3519 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3520 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3522 #define EXTRACT_IFMT_FCMPD_VARS \
3530 unsigned int length;
3531 #define EXTRACT_IFMT_FCMPD_CODE \
3533 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3534 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3535 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3536 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3537 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3538 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3539 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3541 #define EXTRACT_IFMT_CFCMPS_VARS \
3551 unsigned int length;
3552 #define EXTRACT_IFMT_CFCMPS_CODE \
3554 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3555 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3556 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3557 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3558 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3559 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3560 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3561 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3562 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3564 #define EXTRACT_IFMT_MHSETLOS_VARS \
3572 unsigned int length;
3573 #define EXTRACT_IFMT_MHSETLOS_CODE \
3575 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3576 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3577 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3578 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3579 f_u12_h = EXTRACT_LSB0_INT (insn, 32, 17, 6); \
3580 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3582 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3585 #define EXTRACT_IFMT_MHSETHIS_VARS \
3593 unsigned int length;
3594 #define EXTRACT_IFMT_MHSETHIS_CODE \
3596 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3597 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3598 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3599 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3600 f_u12_h = EXTRACT_LSB0_INT (insn, 32, 17, 6); \
3601 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3603 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3606 #define EXTRACT_IFMT_MHDSETS_VARS \
3614 unsigned int length;
3615 #define EXTRACT_IFMT_MHDSETS_CODE \
3617 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3618 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3619 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3620 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3621 f_u12_h = EXTRACT_LSB0_INT (insn, 32, 17, 6); \
3622 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3624 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3627 #define EXTRACT_IFMT_MHSETLOH_VARS \
3633 UINT f_misc_null_11; \
3635 unsigned int length;
3636 #define EXTRACT_IFMT_MHSETLOH_CODE \
3638 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3639 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3640 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3641 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3642 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3643 f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3644 f_s5 = EXTRACT_LSB0_INT (insn, 32, 4, 5); \
3646 #define EXTRACT_IFMT_MHSETHIH_VARS \
3652 UINT f_misc_null_11; \
3654 unsigned int length;
3655 #define EXTRACT_IFMT_MHSETHIH_CODE \
3657 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3658 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3659 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3660 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3661 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3662 f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3663 f_s5 = EXTRACT_LSB0_INT (insn, 32, 4, 5); \
3665 #define EXTRACT_IFMT_MHDSETH_VARS \
3671 UINT f_misc_null_11; \
3673 unsigned int length;
3674 #define EXTRACT_IFMT_MHDSETH_CODE \
3676 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3677 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3678 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3679 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3680 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3681 f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3682 f_s5 = EXTRACT_LSB0_INT (insn, 32, 4, 5); \
3684 #define EXTRACT_IFMT_MAND_VARS \
3691 unsigned int length;
3692 #define EXTRACT_IFMT_MAND_CODE \
3694 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3695 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3696 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3697 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3698 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3699 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3701 #define EXTRACT_IFMT_CMAND_VARS \
3710 unsigned int length;
3711 #define EXTRACT_IFMT_CMAND_CODE \
3713 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3714 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3715 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3716 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3717 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3718 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3719 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3720 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3722 #define EXTRACT_IFMT_MNOT_VARS \
3729 unsigned int length;
3730 #define EXTRACT_IFMT_MNOT_CODE \
3732 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3733 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3734 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3735 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3736 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3737 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3739 #define EXTRACT_IFMT_CMNOT_VARS \
3748 unsigned int length;
3749 #define EXTRACT_IFMT_CMNOT_CODE \
3751 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3752 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3753 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3754 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3755 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3756 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3757 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3758 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3760 #define EXTRACT_IFMT_MROTLI_VARS \
3767 unsigned int length;
3768 #define EXTRACT_IFMT_MROTLI_CODE \
3770 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3771 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3772 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3773 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3774 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3775 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3777 #define EXTRACT_IFMT_MCUT_VARS \
3784 unsigned int length;
3785 #define EXTRACT_IFMT_MCUT_CODE \
3787 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3788 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3789 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3790 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3791 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3792 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3794 #define EXTRACT_IFMT_MCUTI_VARS \
3801 unsigned int length;
3802 #define EXTRACT_IFMT_MCUTI_CODE \
3804 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3805 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3806 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3807 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3808 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3809 f_s6 = EXTRACT_LSB0_INT (insn, 32, 5, 6); \
3811 #define EXTRACT_IFMT_MDCUTSSI_VARS \
3818 unsigned int length;
3819 #define EXTRACT_IFMT_MDCUTSSI_CODE \
3821 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3822 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3823 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3824 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3825 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3826 f_s6 = EXTRACT_LSB0_INT (insn, 32, 5, 6); \
3828 #define EXTRACT_IFMT_MDROTLI_VARS \
3835 unsigned int length;
3836 #define EXTRACT_IFMT_MDROTLI_CODE \
3838 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3839 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3840 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3841 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3842 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3843 f_s6 = EXTRACT_LSB0_INT (insn, 32, 5, 6); \
3845 #define EXTRACT_IFMT_MQSATHS_VARS \
3852 unsigned int length;
3853 #define EXTRACT_IFMT_MQSATHS_CODE \
3855 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3856 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3857 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3858 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3859 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3860 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3862 #define EXTRACT_IFMT_MCMPSH_VARS \
3870 unsigned int length;
3871 #define EXTRACT_IFMT_MCMPSH_CODE \
3873 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3874 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3875 f_FCCk = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3876 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3877 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3878 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3879 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3881 #define EXTRACT_IFMT_MABSHS_VARS \
3888 unsigned int length;
3889 #define EXTRACT_IFMT_MABSHS_CODE \
3891 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3892 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3893 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3894 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3895 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3896 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3898 #define EXTRACT_IFMT_CMQADDHSS_VARS \
3907 unsigned int length;
3908 #define EXTRACT_IFMT_CMQADDHSS_CODE \
3910 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3911 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3912 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3913 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3914 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3915 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3916 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3917 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3919 #define EXTRACT_IFMT_MQSLLHI_VARS \
3926 unsigned int length;
3927 #define EXTRACT_IFMT_MQSLLHI_CODE \
3929 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3930 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3931 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3932 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3933 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3934 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3936 #define EXTRACT_IFMT_MADDACCS_VARS \
3943 unsigned int length;
3944 #define EXTRACT_IFMT_MADDACCS_CODE \
3946 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3947 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3948 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3949 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3950 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3951 f_ACCj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3953 #define EXTRACT_IFMT_MMULHS_VARS \
3960 unsigned int length;
3961 #define EXTRACT_IFMT_MMULHS_CODE \
3963 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3964 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3965 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3966 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3967 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3968 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3970 #define EXTRACT_IFMT_CMMULHS_VARS \
3979 unsigned int length;
3980 #define EXTRACT_IFMT_CMMULHS_CODE \
3982 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3983 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3984 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3985 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3986 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3987 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3988 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3989 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3991 #define EXTRACT_IFMT_MQMULHS_VARS \
3998 unsigned int length;
3999 #define EXTRACT_IFMT_MQMULHS_CODE \
4001 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4002 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4003 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4004 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4005 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4006 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4008 #define EXTRACT_IFMT_CMQMULHS_VARS \
4017 unsigned int length;
4018 #define EXTRACT_IFMT_CMQMULHS_CODE \
4020 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4021 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4022 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4023 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4024 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4025 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4026 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4027 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4029 #define EXTRACT_IFMT_MMACHU_VARS \
4036 unsigned int length;
4037 #define EXTRACT_IFMT_MMACHU_CODE \
4039 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4040 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4041 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4042 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4043 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4044 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4046 #define EXTRACT_IFMT_CMMACHU_VARS \
4055 unsigned int length;
4056 #define EXTRACT_IFMT_CMMACHU_CODE \
4058 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4059 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4060 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4061 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4062 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4063 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4064 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4065 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4067 #define EXTRACT_IFMT_MQMACHU_VARS \
4074 unsigned int length;
4075 #define EXTRACT_IFMT_MQMACHU_CODE \
4077 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4078 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4079 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4080 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4081 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4082 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4084 #define EXTRACT_IFMT_CMQMACHU_VARS \
4093 unsigned int length;
4094 #define EXTRACT_IFMT_CMQMACHU_CODE \
4096 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4097 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4098 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4099 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4100 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4101 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4102 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4103 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4105 #define EXTRACT_IFMT_CMEXPDHW_VARS \
4114 unsigned int length;
4115 #define EXTRACT_IFMT_CMEXPDHW_CODE \
4117 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4118 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4119 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4120 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4121 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4122 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4123 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4124 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4126 #define EXTRACT_IFMT_MEXPDHD_VARS \
4133 unsigned int length;
4134 #define EXTRACT_IFMT_MEXPDHD_CODE \
4136 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4137 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4138 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4139 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4140 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4141 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4143 #define EXTRACT_IFMT_CMEXPDHD_VARS \
4152 unsigned int length;
4153 #define EXTRACT_IFMT_CMEXPDHD_CODE \
4155 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4156 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4157 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4158 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4159 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4160 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4161 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4162 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4164 #define EXTRACT_IFMT_MUNPACKH_VARS \
4171 unsigned int length;
4172 #define EXTRACT_IFMT_MUNPACKH_CODE \
4174 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4175 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4176 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4177 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4178 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4179 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4181 #define EXTRACT_IFMT_MDUNPACKH_VARS \
4188 unsigned int length;
4189 #define EXTRACT_IFMT_MDUNPACKH_CODE \
4191 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4192 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4193 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4194 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4195 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4196 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4198 #define EXTRACT_IFMT_MBTOH_VARS \
4205 unsigned int length;
4206 #define EXTRACT_IFMT_MBTOH_CODE \
4208 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4209 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4210 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4211 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4212 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4213 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4215 #define EXTRACT_IFMT_CMBTOH_VARS \
4224 unsigned int length;
4225 #define EXTRACT_IFMT_CMBTOH_CODE \
4227 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4228 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4229 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4230 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4231 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4232 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4233 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4234 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4236 #define EXTRACT_IFMT_MHTOB_VARS \
4243 unsigned int length;
4244 #define EXTRACT_IFMT_MHTOB_CODE \
4246 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4247 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4248 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4249 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4250 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4251 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4253 #define EXTRACT_IFMT_CMHTOB_VARS \
4262 unsigned int length;
4263 #define EXTRACT_IFMT_CMHTOB_CODE \
4265 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4266 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4267 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4268 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4269 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4270 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4271 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4272 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4274 #define EXTRACT_IFMT_CMBTOHE_VARS \
4283 unsigned int length;
4284 #define EXTRACT_IFMT_CMBTOHE_CODE \
4286 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4287 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4288 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4289 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4290 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4291 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4292 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4293 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4295 #define EXTRACT_IFMT_MNOP_VARS \
4300 UINT f_misc_null_10; \
4303 unsigned int length;
4304 #define EXTRACT_IFMT_MNOP_CODE \
4306 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4307 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4308 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4309 f_A = EXTRACT_LSB0_UINT (insn, 32, 17, 1); \
4310 f_misc_null_10 = EXTRACT_LSB0_UINT (insn, 32, 16, 5); \
4311 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4312 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4314 #define EXTRACT_IFMT_MCLRACC_0_VARS \
4319 UINT f_misc_null_10; \
4322 unsigned int length;
4323 #define EXTRACT_IFMT_MCLRACC_0_CODE \
4325 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4326 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4327 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4328 f_A = EXTRACT_LSB0_UINT (insn, 32, 17, 1); \
4329 f_misc_null_10 = EXTRACT_LSB0_UINT (insn, 32, 16, 5); \
4330 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4331 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4333 #define EXTRACT_IFMT_MRDACC_VARS \
4340 unsigned int length;
4341 #define EXTRACT_IFMT_MRDACC_CODE \
4343 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4344 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4345 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4346 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4347 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4348 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4350 #define EXTRACT_IFMT_MRDACCG_VARS \
4357 unsigned int length;
4358 #define EXTRACT_IFMT_MRDACCG_CODE \
4360 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4361 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4362 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4363 f_ACCGi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4364 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4365 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4367 #define EXTRACT_IFMT_MWTACC_VARS \
4374 unsigned int length;
4375 #define EXTRACT_IFMT_MWTACC_CODE \
4377 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4378 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4379 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4380 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4381 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4382 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4384 #define EXTRACT_IFMT_MWTACCG_VARS \
4391 unsigned int length;
4392 #define EXTRACT_IFMT_MWTACCG_CODE \
4394 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4395 f_ACCGk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4396 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4397 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4398 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4399 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4401 #define EXTRACT_IFMT_FNOP_VARS \
4408 unsigned int length;
4409 #define EXTRACT_IFMT_FNOP_CODE \
4411 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4412 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4413 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4414 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4415 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4416 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4418 /* Collection of various things for the trace handler to use. */
4420 typedef struct trace_record {
4425 #endif /* CPU_FRVBF_H */