1 /* CPU family header for frvbf.
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
5 Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
7 This file is part of the GNU simulators.
9 This program 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 2, or (at your option)
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public 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 59 Temple Place - Suite 330, Boston, MA 02111-1307, 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. */
41 #define GET_H_PC() CPU (h_pc)
42 #define SET_H_PC(x) (CPU (h_pc) = (x))
45 #define GET_H_PSR_IMPLE() CPU (h_psr_imple)
46 #define SET_H_PSR_IMPLE(x) (CPU (h_psr_imple) = (x))
49 #define GET_H_PSR_VER() CPU (h_psr_ver)
50 #define SET_H_PSR_VER(x) (CPU (h_psr_ver) = (x))
53 #define GET_H_PSR_ICE() CPU (h_psr_ice)
54 #define SET_H_PSR_ICE(x) (CPU (h_psr_ice) = (x))
57 #define GET_H_PSR_NEM() CPU (h_psr_nem)
58 #define SET_H_PSR_NEM(x) (CPU (h_psr_nem) = (x))
61 #define GET_H_PSR_CM() CPU (h_psr_cm)
62 #define SET_H_PSR_CM(x) (CPU (h_psr_cm) = (x))
65 #define GET_H_PSR_BE() CPU (h_psr_be)
66 #define SET_H_PSR_BE(x) (CPU (h_psr_be) = (x))
69 #define GET_H_PSR_ESR() CPU (h_psr_esr)
70 #define SET_H_PSR_ESR(x) (CPU (h_psr_esr) = (x))
73 #define GET_H_PSR_EF() CPU (h_psr_ef)
74 #define SET_H_PSR_EF(x) (CPU (h_psr_ef) = (x))
77 #define GET_H_PSR_EM() CPU (h_psr_em)
78 #define SET_H_PSR_EM(x) (CPU (h_psr_em) = (x))
81 #define GET_H_PSR_PIL() CPU (h_psr_pil)
82 #define SET_H_PSR_PIL(x) (CPU (h_psr_pil) = (x))
85 #define GET_H_PSR_PS() CPU (h_psr_ps)
86 #define SET_H_PSR_PS(x) (CPU (h_psr_ps) = (x))
89 #define GET_H_PSR_ET() CPU (h_psr_et)
90 #define SET_H_PSR_ET(x) (CPU (h_psr_et) = (x))
93 #define GET_H_PSR_S() CPU (h_psr_s)
94 #define SET_H_PSR_S(x) \
96 frvbf_h_psr_s_set_handler (current_cpu, (x));\
100 #define GET_H_TBR_TBA() CPU (h_tbr_tba)
101 #define SET_H_TBR_TBA(x) (CPU (h_tbr_tba) = (x))
104 #define GET_H_TBR_TT() CPU (h_tbr_tt)
105 #define SET_H_TBR_TT(x) (CPU (h_tbr_tt) = (x))
108 #define GET_H_BPSR_BS() CPU (h_bpsr_bs)
109 #define SET_H_BPSR_BS(x) (CPU (h_bpsr_bs) = (x))
112 #define GET_H_BPSR_BET() CPU (h_bpsr_bet)
113 #define SET_H_BPSR_BET(x) (CPU (h_bpsr_bet) = (x))
114 /* general registers */
116 #define GET_H_GR(index) frvbf_h_gr_get_handler (current_cpu, index)
117 #define SET_H_GR(index, x) \
119 frvbf_h_gr_set_handler (current_cpu, (index), (x));\
121 /* floating point registers */
123 #define GET_H_FR(index) frvbf_h_fr_get_handler (current_cpu, index)
124 #define SET_H_FR(index, x) \
126 frvbf_h_fr_set_handler (current_cpu, (index), (x));\
128 /* coprocessor registers */
130 #define GET_H_CPR(a1) CPU (h_cpr)[a1]
131 #define SET_H_CPR(a1, x) (CPU (h_cpr)[a1] = (x))
132 /* special purpose registers */
134 #define GET_H_SPR(index) frvbf_h_spr_get_handler (current_cpu, index)
135 #define SET_H_SPR(index, x) \
137 frvbf_h_spr_set_handler (current_cpu, (index), (x));\
139 /* Integer condition code registers */
141 #define GET_H_ICCR(a1) CPU (h_iccr)[a1]
142 #define SET_H_ICCR(a1, x) (CPU (h_iccr)[a1] = (x))
143 /* Floating point condition code registers */
145 #define GET_H_FCCR(a1) CPU (h_fccr)[a1]
146 #define SET_H_FCCR(a1, x) (CPU (h_fccr)[a1] = (x))
147 /* Condition code registers */
149 #define GET_H_CCCR(a1) CPU (h_cccr)[a1]
150 #define SET_H_CCCR(a1, x) (CPU (h_cccr)[a1] = (x))
152 #define CPU_CGEN_HW(cpu) (& (cpu)->cpu_data.hardware)
157 #define GET_H_GR_DOUBLE(index) frvbf_h_gr_double_get_handler (current_cpu, index)
158 #define SET_H_GR_DOUBLE(index, x) \
160 frvbf_h_gr_double_set_handler (current_cpu, (index), (x));\
162 #define GET_H_GR_HI(index) frvbf_h_gr_hi_get_handler (current_cpu, index)
163 #define SET_H_GR_HI(index, x) \
165 frvbf_h_gr_hi_set_handler (current_cpu, (index), (x));\
167 #define GET_H_GR_LO(index) frvbf_h_gr_lo_get_handler (current_cpu, index)
168 #define SET_H_GR_LO(index, x) \
170 frvbf_h_gr_lo_set_handler (current_cpu, (index), (x));\
172 #define GET_H_FR_DOUBLE(index) frvbf_h_fr_double_get_handler (current_cpu, index)
173 #define SET_H_FR_DOUBLE(index, x) \
175 frvbf_h_fr_double_set_handler (current_cpu, (index), (x));\
177 #define GET_H_FR_INT(index) frvbf_h_fr_int_get_handler (current_cpu, index)
178 #define SET_H_FR_INT(index, x) \
180 frvbf_h_fr_int_set_handler (current_cpu, (index), (x));\
182 #define GET_H_FR_HI(index) SRLSI (GET_H_FR_INT (index), 16)
183 #define SET_H_FR_HI(index, x) \
185 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 65535), SLLHI ((x), 16)));\
187 #define GET_H_FR_LO(index) ANDSI (GET_H_FR_INT (index), 65535)
188 #define SET_H_FR_LO(index, x) \
190 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffff0000), ANDHI ((x), 65535)));\
192 #define GET_H_FR_0(index) ANDSI (GET_H_FR_INT (index), 255)
193 #define SET_H_FR_0(index, x) \
196 if (GTSI ((x), 255)) {\
199 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffffff00), (x)));\
202 #define GET_H_FR_1(index) ANDSI (SRLSI (GET_H_FR_INT (index), 8), 255)
203 #define SET_H_FR_1(index, x) \
206 if (GTSI ((x), 255)) {\
209 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffff00ff), SLLHI ((x), 8)));\
212 #define GET_H_FR_2(index) ANDSI (SRLSI (GET_H_FR_INT (index), 16), 255)
213 #define SET_H_FR_2(index, x) \
216 if (GTSI ((x), 255)) {\
219 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xff00ffff), SLLHI ((x), 16)));\
222 #define GET_H_FR_3(index) ANDSI (SRLSI (GET_H_FR_INT (index), 24), 255)
223 #define SET_H_FR_3(index, x) \
226 if (GTSI ((x), 255)) {\
229 SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 16777215), SLLHI ((x), 24)));\
232 #define GET_H_CPR_DOUBLE(index) frvbf_h_cpr_double_get_handler (current_cpu, index)
233 #define SET_H_CPR_DOUBLE(index, x) \
235 frvbf_h_cpr_double_set_handler (current_cpu, (index), (x));\
237 #define GET_H_ACCG(index) ANDSI (GET_H_SPR (((index) + (1472))), 255)
238 #define SET_H_ACCG(index, x) \
240 CPU (h_spr[(((index)) + (1472))]) = ANDSI ((x), 255);\
242 #define GET_H_ACC40S(index) ORDI (SLLDI (EXTQIDI (TRUNCSIQI (GET_H_SPR (((index) + (1472))))), 32), ZEXTSIDI (GET_H_SPR (((index) + (1408)))))
243 #define SET_H_ACC40S(index, x) \
246 frv_check_spr_write_access (current_cpu, (((index)) + (1408)));\
247 CPU (h_spr[(((index)) + (1472))]) = ANDDI (SRLDI ((x), 32), 255);\
248 CPU (h_spr[(((index)) + (1408))]) = TRUNCDISI ((x));\
251 #define GET_H_ACC40U(index) ORDI (SLLDI (ZEXTSIDI (GET_H_SPR (((index) + (1472)))), 32), ZEXTSIDI (GET_H_SPR (((index) + (1408)))))
252 #define SET_H_ACC40U(index, x) \
255 frv_check_spr_write_access (current_cpu, (((index)) + (1408)));\
256 CPU (h_spr[(((index)) + (1472))]) = ANDDI (SRLDI ((x), 32), 255);\
257 CPU (h_spr[(((index)) + (1408))]) = TRUNCDISI ((x));\
260 #define GET_H_IACC0(index) ORDI (SLLDI (EXTSIDI (GET_H_SPR (((UINT) 280))), 32), ZEXTSIDI (GET_H_SPR (((UINT) 281))))
261 #define SET_H_IACC0(index, x) \
264 SET_H_SPR (((UINT) 280), TRUNCDISI (SRLDI ((x), 32)));\
265 SET_H_SPR (((UINT) 281), TRUNCDISI ((x)));\
269 /* Cover fns for register access. */
270 USI
frvbf_h_pc_get (SIM_CPU
*);
271 void frvbf_h_pc_set (SIM_CPU
*, USI
);
272 UQI
frvbf_h_psr_imple_get (SIM_CPU
*);
273 void frvbf_h_psr_imple_set (SIM_CPU
*, UQI
);
274 UQI
frvbf_h_psr_ver_get (SIM_CPU
*);
275 void frvbf_h_psr_ver_set (SIM_CPU
*, UQI
);
276 BI
frvbf_h_psr_ice_get (SIM_CPU
*);
277 void frvbf_h_psr_ice_set (SIM_CPU
*, BI
);
278 BI
frvbf_h_psr_nem_get (SIM_CPU
*);
279 void frvbf_h_psr_nem_set (SIM_CPU
*, BI
);
280 BI
frvbf_h_psr_cm_get (SIM_CPU
*);
281 void frvbf_h_psr_cm_set (SIM_CPU
*, BI
);
282 BI
frvbf_h_psr_be_get (SIM_CPU
*);
283 void frvbf_h_psr_be_set (SIM_CPU
*, BI
);
284 BI
frvbf_h_psr_esr_get (SIM_CPU
*);
285 void frvbf_h_psr_esr_set (SIM_CPU
*, BI
);
286 BI
frvbf_h_psr_ef_get (SIM_CPU
*);
287 void frvbf_h_psr_ef_set (SIM_CPU
*, BI
);
288 BI
frvbf_h_psr_em_get (SIM_CPU
*);
289 void frvbf_h_psr_em_set (SIM_CPU
*, BI
);
290 UQI
frvbf_h_psr_pil_get (SIM_CPU
*);
291 void frvbf_h_psr_pil_set (SIM_CPU
*, UQI
);
292 BI
frvbf_h_psr_ps_get (SIM_CPU
*);
293 void frvbf_h_psr_ps_set (SIM_CPU
*, BI
);
294 BI
frvbf_h_psr_et_get (SIM_CPU
*);
295 void frvbf_h_psr_et_set (SIM_CPU
*, BI
);
296 BI
frvbf_h_psr_s_get (SIM_CPU
*);
297 void frvbf_h_psr_s_set (SIM_CPU
*, BI
);
298 USI
frvbf_h_tbr_tba_get (SIM_CPU
*);
299 void frvbf_h_tbr_tba_set (SIM_CPU
*, USI
);
300 UQI
frvbf_h_tbr_tt_get (SIM_CPU
*);
301 void frvbf_h_tbr_tt_set (SIM_CPU
*, UQI
);
302 BI
frvbf_h_bpsr_bs_get (SIM_CPU
*);
303 void frvbf_h_bpsr_bs_set (SIM_CPU
*, BI
);
304 BI
frvbf_h_bpsr_bet_get (SIM_CPU
*);
305 void frvbf_h_bpsr_bet_set (SIM_CPU
*, BI
);
306 USI
frvbf_h_gr_get (SIM_CPU
*, UINT
);
307 void frvbf_h_gr_set (SIM_CPU
*, UINT
, USI
);
308 DI
frvbf_h_gr_double_get (SIM_CPU
*, UINT
);
309 void frvbf_h_gr_double_set (SIM_CPU
*, UINT
, DI
);
310 UHI
frvbf_h_gr_hi_get (SIM_CPU
*, UINT
);
311 void frvbf_h_gr_hi_set (SIM_CPU
*, UINT
, UHI
);
312 UHI
frvbf_h_gr_lo_get (SIM_CPU
*, UINT
);
313 void frvbf_h_gr_lo_set (SIM_CPU
*, UINT
, UHI
);
314 SF
frvbf_h_fr_get (SIM_CPU
*, UINT
);
315 void frvbf_h_fr_set (SIM_CPU
*, UINT
, SF
);
316 DF
frvbf_h_fr_double_get (SIM_CPU
*, UINT
);
317 void frvbf_h_fr_double_set (SIM_CPU
*, UINT
, DF
);
318 USI
frvbf_h_fr_int_get (SIM_CPU
*, UINT
);
319 void frvbf_h_fr_int_set (SIM_CPU
*, UINT
, USI
);
320 UHI
frvbf_h_fr_hi_get (SIM_CPU
*, UINT
);
321 void frvbf_h_fr_hi_set (SIM_CPU
*, UINT
, UHI
);
322 UHI
frvbf_h_fr_lo_get (SIM_CPU
*, UINT
);
323 void frvbf_h_fr_lo_set (SIM_CPU
*, UINT
, UHI
);
324 UHI
frvbf_h_fr_0_get (SIM_CPU
*, UINT
);
325 void frvbf_h_fr_0_set (SIM_CPU
*, UINT
, UHI
);
326 UHI
frvbf_h_fr_1_get (SIM_CPU
*, UINT
);
327 void frvbf_h_fr_1_set (SIM_CPU
*, UINT
, UHI
);
328 UHI
frvbf_h_fr_2_get (SIM_CPU
*, UINT
);
329 void frvbf_h_fr_2_set (SIM_CPU
*, UINT
, UHI
);
330 UHI
frvbf_h_fr_3_get (SIM_CPU
*, UINT
);
331 void frvbf_h_fr_3_set (SIM_CPU
*, UINT
, UHI
);
332 SI
frvbf_h_cpr_get (SIM_CPU
*, UINT
);
333 void frvbf_h_cpr_set (SIM_CPU
*, UINT
, SI
);
334 DI
frvbf_h_cpr_double_get (SIM_CPU
*, UINT
);
335 void frvbf_h_cpr_double_set (SIM_CPU
*, UINT
, DI
);
336 USI
frvbf_h_spr_get (SIM_CPU
*, UINT
);
337 void frvbf_h_spr_set (SIM_CPU
*, UINT
, USI
);
338 USI
frvbf_h_accg_get (SIM_CPU
*, UINT
);
339 void frvbf_h_accg_set (SIM_CPU
*, UINT
, USI
);
340 DI
frvbf_h_acc40S_get (SIM_CPU
*, UINT
);
341 void frvbf_h_acc40S_set (SIM_CPU
*, UINT
, DI
);
342 UDI
frvbf_h_acc40U_get (SIM_CPU
*, UINT
);
343 void frvbf_h_acc40U_set (SIM_CPU
*, UINT
, UDI
);
344 DI
frvbf_h_iacc0_get (SIM_CPU
*, UINT
);
345 void frvbf_h_iacc0_set (SIM_CPU
*, UINT
, DI
);
346 UQI
frvbf_h_iccr_get (SIM_CPU
*, UINT
);
347 void frvbf_h_iccr_set (SIM_CPU
*, UINT
, UQI
);
348 UQI
frvbf_h_fccr_get (SIM_CPU
*, UINT
);
349 void frvbf_h_fccr_set (SIM_CPU
*, UINT
, UQI
);
350 UQI
frvbf_h_cccr_get (SIM_CPU
*, UINT
);
351 void frvbf_h_cccr_set (SIM_CPU
*, UINT
, UQI
);
353 /* These must be hand-written. */
354 extern CPUREG_FETCH_FN frvbf_fetch_register
;
355 extern CPUREG_STORE_FN frvbf_store_register
;
363 DI prev_fr_complex_1
;
364 DI prev_fr_complex_2
;
417 /* Instruction argument buffer. */
420 struct { /* no operands */
424 unsigned short out_h_spr_USI_2
;
435 unsigned char out_FRkhi
;
440 unsigned char out_FRklo
;
445 unsigned char out_GRk
;
450 unsigned char out_GRkhi
;
455 unsigned char out_GRklo
;
460 unsigned char in_ACCGi
;
461 unsigned char out_FRintk
;
466 unsigned char in_FRkhi
;
467 unsigned char out_FRkhi
;
472 unsigned char in_FRklo
;
473 unsigned char out_FRklo
;
478 unsigned char in_FRdoublej
;
479 unsigned char out_FRintk
;
484 unsigned char in_FRintj
;
485 unsigned char out_FRdoublek
;
491 unsigned char in_GRi
;
497 unsigned char in_FCCi_2
;
503 unsigned char in_ICCi_2
;
508 unsigned short in_spr
;
509 unsigned char out_GRj
;
514 unsigned short out_spr
;
515 unsigned char in_GRj
;
520 unsigned char in_ACCGk
;
521 unsigned char in_FRinti
;
522 unsigned char out_ACCGk
;
528 unsigned char in_ACC40Si
;
529 unsigned char out_FRintk
;
535 unsigned char in_GRi
;
536 unsigned char in_GRj
;
542 unsigned char in_GRi
;
543 unsigned char in_GRj
;
549 unsigned char in_FRdoublek
;
550 unsigned char in_GRi
;
556 unsigned char in_GRdoublek
;
557 unsigned char in_GRi
;
563 unsigned char in_FRintk
;
564 unsigned char in_GRi
;
570 unsigned char in_GRi
;
571 unsigned char out_FRdoublek
;
577 unsigned char in_GRi
;
578 unsigned char out_FRintk
;
584 unsigned char in_GRi
;
585 unsigned char out_GRdoublek
;
590 unsigned char in_GRj
;
591 unsigned char in_h_iacc0_DI_0
;
592 unsigned char out_GRk
;
598 unsigned char in_ACC40Si
;
599 unsigned char in_FRintj
;
600 unsigned char out_FRintk
;
606 unsigned char in_FRinti
;
607 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRinti_1
;
608 unsigned char out_FRintk
;
613 unsigned char in_FRintk
;
614 unsigned char out_FRintk
;
615 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
616 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
622 unsigned char in_FRdoublei
;
623 unsigned char in_FRdoublej
;
624 unsigned char out_FCCi_2
;
629 unsigned char in_FRj
;
630 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_1
;
631 unsigned char out_FRintk
;
632 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_1
;
637 unsigned char in_FRintj
;
638 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintj_1
;
639 unsigned char out_FRk
;
640 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_1
;
646 unsigned char in_CRi
;
647 unsigned char in_CRj
;
648 unsigned char out_CRk
;
654 unsigned char in_GRi
;
655 unsigned char in_GRk
;
656 unsigned char out_GRk
;
661 unsigned char in_GRi
;
662 unsigned char in_GRj
;
663 unsigned char in_h_iacc0_DI_0
;
664 unsigned char out_h_iacc0_DI_0
;
670 unsigned char in_FRintieven
;
671 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintieven_1
;
672 unsigned char out_FRintkeven
;
673 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintkeven_1
;
679 unsigned char in_ACC40Si
;
680 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Si_1
;
681 unsigned char out_FRintkeven
;
682 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintkeven_1
;
688 unsigned char in_FRinti
;
689 unsigned char in_FRintj
;
690 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRinti_1
;
691 unsigned char out_FRintk
;
697 unsigned char in_FRdoublei
;
698 unsigned char in_FRdoublej
;
699 unsigned char in_FRdoublek
;
700 unsigned char out_FRdoublek
;
707 unsigned char in_CCi
;
708 unsigned char in_FRj
;
709 unsigned char out_FRintk
;
716 unsigned char in_CCi
;
717 unsigned char in_FRintj
;
718 unsigned char out_FRk
;
725 unsigned char in_CCi
;
726 unsigned char in_FCCi_3
;
727 unsigned char out_CRj_float
;
734 unsigned char in_CCi
;
735 unsigned char in_ICCi_3
;
736 unsigned char out_CRj_int
;
742 unsigned short in_h_spr_USI_272
;
743 unsigned short in_h_spr_USI_273
;
744 unsigned short out_h_spr_USI_273
;
745 unsigned char in_FCCi_2
;
751 unsigned short in_h_spr_USI_272
;
752 unsigned short in_h_spr_USI_273
;
753 unsigned short out_h_spr_USI_273
;
754 unsigned char in_ICCi_2
;
760 unsigned char in_CPRdoublek
;
761 unsigned char in_GRi
;
762 unsigned char in_GRj
;
763 unsigned char out_GRi
;
769 unsigned char in_CPRk
;
770 unsigned char in_GRi
;
771 unsigned char in_GRj
;
772 unsigned char out_GRi
;
778 unsigned char in_GRi
;
779 unsigned char in_GRj
;
780 unsigned char out_CPRdoublek
;
781 unsigned char out_GRi
;
787 unsigned char in_GRi
;
788 unsigned char in_GRj
;
789 unsigned char out_CPRk
;
790 unsigned char out_GRi
;
795 unsigned char in_FRintk
;
796 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
797 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
798 unsigned char out_FRintk
;
799 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
800 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
808 unsigned char in_CCi
;
809 unsigned char in_GRi
;
810 unsigned char in_GRj
;
817 unsigned char in_GRi
;
818 unsigned char in_ICCi_1
;
819 unsigned char out_GRdoublek
;
820 unsigned char out_ICCi_1
;
827 unsigned char in_GRi
;
828 unsigned char in_ICCi_1
;
829 unsigned char out_GRk
;
830 unsigned char out_ICCi_1
;
838 unsigned char in_CCi
;
839 unsigned char in_FRinti
;
840 unsigned char in_FRintj
;
841 unsigned char out_FRintk
;
849 unsigned char in_CCi
;
850 unsigned char in_FRi
;
851 unsigned char in_FRj
;
852 unsigned char out_FCCi_2
;
859 unsigned char in_CCi
;
860 unsigned char in_FRintk
;
861 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_1
;
862 unsigned char out_GRj
;
863 unsigned char out_h_gr_USI_add__DFLT_index_of__DFLT_GRj_1
;
870 unsigned char in_CCi
;
871 unsigned char in_GRj
;
872 unsigned char in_h_gr_USI_add__DFLT_index_of__DFLT_GRj_1
;
873 unsigned char out_FRintk
;
874 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_1
;
881 unsigned char in_GRi
;
882 unsigned char in_GRj
;
883 unsigned char in_ICCi_1
;
884 unsigned char out_GRdoublek
;
885 unsigned char out_ICCi_1
;
892 unsigned char in_GRi
;
893 unsigned char in_GRj
;
894 unsigned char in_ICCi_1
;
895 unsigned char out_GRk
;
896 unsigned char out_ICCi_1
;
904 unsigned char in_CCi
;
905 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
906 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
907 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
908 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
913 unsigned char in_ACC40Si
;
914 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Si_1
;
915 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Si_2
;
916 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Si_3
;
917 unsigned char out_ACC40Sk
;
918 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_1
;
919 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_2
;
920 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_3
;
925 unsigned char in_FRintj
;
926 unsigned char in_FRintk
;
927 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
928 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
929 unsigned char out_FRintj
;
930 unsigned char out_FRintk
;
931 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
932 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
938 unsigned char in_FRinti
;
939 unsigned char in_FRintk
;
940 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
941 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_1
;
942 unsigned char out_FRinti
;
943 unsigned char out_FRintk
;
944 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
951 unsigned char in_FRi
;
952 unsigned char in_FRj
;
953 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_1
;
954 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_1
;
955 unsigned char out_FCCi_2
;
956 unsigned char out_h_fccr_UQI_add__DFLT_index_of__DFLT_FCCi_2_1
;
964 unsigned char in_CCi
;
965 unsigned char in_FRi
;
966 unsigned char in_FRj
;
967 unsigned char in_FRk
;
968 unsigned char out_FRk
;
974 unsigned short out_h_spr_USI_1
;
975 unsigned short out_h_spr_USI_768
;
976 unsigned short out_h_spr_USI_769
;
977 unsigned short out_h_spr_USI_770
;
978 unsigned short out_h_spr_USI_771
;
979 unsigned char in_FCCi_2
;
980 unsigned char in_GRi
;
986 unsigned short out_h_spr_USI_1
;
987 unsigned short out_h_spr_USI_768
;
988 unsigned short out_h_spr_USI_769
;
989 unsigned short out_h_spr_USI_770
;
990 unsigned short out_h_spr_USI_771
;
991 unsigned char in_GRi
;
992 unsigned char in_ICCi_2
;
997 unsigned char in_FRintk
;
998 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_1
;
999 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_2
;
1000 unsigned char in_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_3
;
1001 unsigned char out_GRj
;
1002 unsigned char out_h_gr_USI_add__DFLT_index_of__DFLT_GRj_1
;
1003 unsigned char out_h_gr_USI_add__DFLT_index_of__DFLT_GRj_2
;
1004 unsigned char out_h_gr_USI_add__DFLT_index_of__DFLT_GRj_3
;
1009 unsigned char in_GRj
;
1010 unsigned char in_h_gr_USI_add__DFLT_index_of__DFLT_GRj_1
;
1011 unsigned char in_h_gr_USI_add__DFLT_index_of__DFLT_GRj_2
;
1012 unsigned char in_h_gr_USI_add__DFLT_index_of__DFLT_GRj_3
;
1013 unsigned char out_FRintk
;
1014 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_1
;
1015 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_2
;
1016 unsigned char out_h_fr_int_USI_add__DFLT_index_of__DFLT_FRintk_3
;
1024 unsigned char in_CCi
;
1025 unsigned char in_GRi
;
1026 unsigned char in_GRj
;
1027 unsigned char in_GRk
;
1028 unsigned char out_GRk
;
1036 unsigned char in_CCi
;
1037 unsigned char in_FRdoublek
;
1038 unsigned char in_GRi
;
1039 unsigned char in_GRj
;
1040 unsigned char out_GRi
;
1048 unsigned char in_CCi
;
1049 unsigned char in_GRdoublek
;
1050 unsigned char in_GRi
;
1051 unsigned char in_GRj
;
1052 unsigned char out_GRi
;
1060 unsigned char in_CCi
;
1061 unsigned char in_FRintk
;
1062 unsigned char in_GRi
;
1063 unsigned char in_GRj
;
1064 unsigned char out_GRi
;
1072 unsigned char in_CCi
;
1073 unsigned char in_GRi
;
1074 unsigned char in_GRj
;
1075 unsigned char in_GRk
;
1076 unsigned char out_GRi
;
1084 unsigned char in_CCi
;
1085 unsigned char in_GRi
;
1086 unsigned char in_GRj
;
1087 unsigned char out_FRdoublek
;
1088 unsigned char out_GRi
;
1096 unsigned char in_CCi
;
1097 unsigned char in_GRi
;
1098 unsigned char in_GRj
;
1099 unsigned char out_GRdoublek
;
1100 unsigned char out_GRi
;
1108 unsigned char in_CCi
;
1109 unsigned char in_GRi
;
1110 unsigned char in_GRj
;
1111 unsigned char out_FRintk
;
1112 unsigned char out_GRi
;
1120 unsigned char in_CCi
;
1121 unsigned char in_GRi
;
1122 unsigned char in_GRj
;
1123 unsigned char out_GRi
;
1124 unsigned char out_GRk
;
1130 unsigned char in_FRinti
;
1131 unsigned char in_FRintj
;
1132 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1133 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1134 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1135 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1136 unsigned char out_FCCk
;
1137 unsigned char out_h_fccr_UQI_add__DFLT_index_of__DFLT_FCCk_1
;
1143 unsigned char in_FRinti
;
1144 unsigned char in_FRintk
;
1145 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1146 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1147 unsigned char out_FRinti
;
1148 unsigned char out_FRintk
;
1149 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1150 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1156 unsigned char in_FRi
;
1157 unsigned char in_FRj
;
1158 unsigned char in_FRk
;
1159 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_1
;
1160 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_1
;
1161 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRk_1
;
1162 unsigned char out_FRk
;
1163 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_1
;
1169 unsigned short out_h_spr_USI_1
;
1170 unsigned short out_h_spr_USI_768
;
1171 unsigned short out_h_spr_USI_769
;
1172 unsigned short out_h_spr_USI_770
;
1173 unsigned short out_h_spr_USI_771
;
1174 unsigned char in_FCCi_2
;
1175 unsigned char in_GRi
;
1176 unsigned char in_GRj
;
1182 unsigned short out_h_spr_USI_1
;
1183 unsigned short out_h_spr_USI_768
;
1184 unsigned short out_h_spr_USI_769
;
1185 unsigned short out_h_spr_USI_770
;
1186 unsigned short out_h_spr_USI_771
;
1187 unsigned char in_GRi
;
1188 unsigned char in_GRj
;
1189 unsigned char in_ICCi_2
;
1197 unsigned char in_CCi
;
1198 unsigned char in_GRi
;
1199 unsigned char in_GRj
;
1200 unsigned char in_h_iccr_UQI_and__DFLT_index_of__DFLT_CCi_3
;
1201 unsigned char out_GRdoublek
;
1202 unsigned char out_h_iccr_UQI_and__DFLT_index_of__DFLT_CCi_3
;
1210 unsigned char in_CCi
;
1211 unsigned char in_GRi
;
1212 unsigned char in_GRj
;
1213 unsigned char in_h_iccr_UQI_and__DFLT_index_of__DFLT_CCi_3
;
1214 unsigned char out_GRk
;
1215 unsigned char out_h_iccr_UQI_and__DFLT_index_of__DFLT_CCi_3
;
1220 unsigned char in_FRinti
;
1221 unsigned char in_FRintkeven
;
1222 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1223 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1224 unsigned char out_FRinti
;
1225 unsigned char out_FRintkeven
;
1226 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1227 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_add__DFLT_0_1
;
1228 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1229 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_add__DFLT_0_1
;
1237 unsigned char in_CCi
;
1238 unsigned char in_FRi
;
1239 unsigned char in_FRj
;
1240 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_1
;
1241 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_1
;
1242 unsigned char out_FRk
;
1243 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_1
;
1251 unsigned char in_CCi
;
1252 unsigned char in_FRintkeven
;
1253 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1254 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1255 unsigned char out_FRintkeven
;
1256 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1257 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_1
;
1258 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1259 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_1
;
1267 unsigned char in_CCi
;
1268 unsigned char in_FRinti
;
1269 unsigned char in_FRintj
;
1270 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1271 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1272 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1273 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1274 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1275 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1281 unsigned char in_FRintieven
;
1282 unsigned char in_FRintkeven
;
1283 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_0
;
1284 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_1
;
1285 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0
;
1286 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1
;
1287 unsigned char out_FRintieven
;
1288 unsigned char out_FRintkeven
;
1289 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1290 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_1
;
1291 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1292 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_1
;
1298 unsigned char in_FRi
;
1299 unsigned char in_FRj
;
1300 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_1
;
1301 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_2
;
1302 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRi_3
;
1303 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_1
;
1304 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_2
;
1305 unsigned char in_h_fr_SF_add__DFLT_index_of__DFLT_FRj_3
;
1306 unsigned char out_FRk
;
1307 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_1
;
1308 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_2
;
1309 unsigned char out_h_fr_SF_add__DFLT_index_of__DFLT_FRk_3
;
1317 unsigned char in_ACC40Uk
;
1318 unsigned char in_CCi
;
1319 unsigned char in_FRinti
;
1320 unsigned char in_FRintj
;
1321 unsigned char in_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_1
;
1322 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1323 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1324 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1325 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1326 unsigned char out_ACC40Uk
;
1327 unsigned char out_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_1
;
1335 unsigned char in_ACC40Sk
;
1336 unsigned char in_CCi
;
1337 unsigned char in_FRinti
;
1338 unsigned char in_FRintj
;
1339 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_1
;
1340 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1341 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1342 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRinti_0
;
1343 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1344 unsigned char out_ACC40Sk
;
1345 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_1
;
1352 unsigned char in_CCi
;
1353 unsigned char in_FRintjeven
;
1354 unsigned char in_FRintk
;
1355 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_0
;
1356 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_1
;
1357 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_0
;
1358 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_1
;
1359 unsigned char out_FRintjeven
;
1360 unsigned char out_FRintk
;
1361 unsigned char out_h_fr_0_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1362 unsigned char out_h_fr_1_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1363 unsigned char out_h_fr_2_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1364 unsigned char out_h_fr_3_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1371 unsigned char in_CCi
;
1372 unsigned char in_FRintj
;
1373 unsigned char in_FRintkeven
;
1374 unsigned char in_h_fr_0_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1375 unsigned char in_h_fr_1_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1376 unsigned char in_h_fr_2_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1377 unsigned char in_h_fr_3_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1378 unsigned char out_FRintj
;
1379 unsigned char out_FRintkeven
;
1380 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1381 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_1
;
1382 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1383 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_1
;
1389 unsigned char in_FRintieven
;
1390 unsigned char in_FRintjeven
;
1391 unsigned char in_FRintkeven
;
1392 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0
;
1393 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1
;
1394 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_0
;
1395 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_1
;
1396 unsigned char out_FRintieven
;
1397 unsigned char out_FRintjeven
;
1398 unsigned char out_FRintkeven
;
1399 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1400 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_1
;
1401 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1402 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_1
;
1407 unsigned char in_FRintieven
;
1408 unsigned char in_FRintk
;
1409 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_0
;
1410 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_1
;
1411 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0
;
1412 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1
;
1413 unsigned char out_FRintieven
;
1414 unsigned char out_FRintk
;
1415 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1416 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_2
;
1417 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_add__DFLT_0_1
;
1418 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_add__DFLT_2_1
;
1419 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1420 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_2
;
1421 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_add__DFLT_0_1
;
1422 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_add__DFLT_2_1
;
1429 unsigned char in_CCi
;
1430 unsigned char in_FRintj
;
1431 unsigned char in_FRintk
;
1432 unsigned char in_h_fr_0_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1433 unsigned char in_h_fr_1_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1434 unsigned char in_h_fr_2_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1435 unsigned char in_h_fr_3_UHI_add__DFLT_index_of__DFLT_FRintj_0
;
1436 unsigned char out_FRintj
;
1437 unsigned char out_FRintk
;
1438 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1439 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_1
;
1440 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_2
;
1441 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintk_3
;
1442 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_0
;
1443 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_1
;
1444 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_2
;
1445 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintk_3
;
1453 unsigned char in_CCi
;
1454 unsigned char in_FRintieven
;
1455 unsigned char in_FRintjeven
;
1456 unsigned char in_FRintkeven
;
1457 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_0
;
1458 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_1
;
1459 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_0
;
1460 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_1
;
1461 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0
;
1462 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1
;
1463 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_0
;
1464 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_1
;
1465 unsigned char out_FRintkeven
;
1466 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1467 unsigned char out_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintkeven_1
;
1468 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_0
;
1469 unsigned char out_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintkeven_1
;
1477 unsigned char in_ACC40Uk
;
1478 unsigned char in_CCi
;
1479 unsigned char in_FRintieven
;
1480 unsigned char in_FRintjeven
;
1481 unsigned char in_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_1
;
1482 unsigned char in_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_2
;
1483 unsigned char in_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_3
;
1484 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_0
;
1485 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_1
;
1486 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_0
;
1487 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_1
;
1488 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0
;
1489 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1
;
1490 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_0
;
1491 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_1
;
1492 unsigned char out_ACC40Uk
;
1493 unsigned char out_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_1
;
1494 unsigned char out_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_2
;
1495 unsigned char out_h_acc40U_UDI_add__DFLT_index_of__DFLT_ACC40Uk_3
;
1503 unsigned char in_ACC40Sk
;
1504 unsigned char in_CCi
;
1505 unsigned char in_FRintieven
;
1506 unsigned char in_FRintjeven
;
1507 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_1
;
1508 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_2
;
1509 unsigned char in_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_3
;
1510 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_0
;
1511 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintieven_1
;
1512 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_0
;
1513 unsigned char in_h_fr_hi_UHI_add__DFLT_index_of__DFLT_FRintjeven_1
;
1514 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_0
;
1515 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintieven_1
;
1516 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_0
;
1517 unsigned char in_h_fr_lo_UHI_add__DFLT_index_of__DFLT_FRintjeven_1
;
1518 unsigned char out_ACC40Sk
;
1519 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_1
;
1520 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_2
;
1521 unsigned char out_h_acc40S_DI_add__DFLT_index_of__DFLT_ACC40Sk_3
;
1524 /* Writeback handler. */
1526 /* Pointer to argbuf entry for insn whose results need writing back. */
1527 const struct argbuf
*abuf
;
1529 /* x-before handler */
1531 /*const SCACHE *insns[MAX_PARALLEL_INSNS];*/
1534 /* x-after handler */
1538 /* This entry is used to terminate each pbb. */
1540 /* Number of insns in pbb. */
1542 /* Next pbb to execute. */
1544 SCACHE
*branch_target
;
1549 /* The ARGBUF struct. */
1551 /* These are the baseclass definitions. */
1556 /* ??? Temporary hack for skip insns. */
1559 /* cpu specific data follows */
1562 union sem_fields fields
;
1567 ??? SCACHE used to contain more than just argbuf. We could delete the
1568 type entirely and always just use ARGBUF, but for future concerns and as
1569 a level of abstraction it is left in. */
1572 struct argbuf argbuf
;
1577 /* Macros to simplify extraction, reading and semantic code.
1578 These define and assign the local vars that contain the insn's fields. */
1580 #define EXTRACT_IFMT_EMPTY_VARS \
1581 unsigned int length;
1582 #define EXTRACT_IFMT_EMPTY_CODE \
1585 #define EXTRACT_IFMT_ADD_VARS \
1590 UINT f_ICCi_1_null; \
1593 unsigned int length;
1594 #define EXTRACT_IFMT_ADD_CODE \
1596 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1597 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1598 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1599 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1600 f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1601 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1602 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1604 #define EXTRACT_IFMT_NOT_VARS \
1609 UINT f_ICCi_1_null; \
1612 unsigned int length;
1613 #define EXTRACT_IFMT_NOT_CODE \
1615 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1616 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1617 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1618 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1619 f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1620 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1621 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1623 #define EXTRACT_IFMT_SMUL_VARS \
1628 UINT f_ICCi_1_null; \
1631 unsigned int length;
1632 #define EXTRACT_IFMT_SMUL_CODE \
1634 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1635 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1636 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1637 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1638 f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1639 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1640 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1642 #define EXTRACT_IFMT_SMU_VARS \
1649 unsigned int length;
1650 #define EXTRACT_IFMT_SMU_CODE \
1652 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1653 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1654 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1655 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1656 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1657 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1659 #define EXTRACT_IFMT_SLASS_VARS \
1666 unsigned int length;
1667 #define EXTRACT_IFMT_SLASS_CODE \
1669 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1670 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1671 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1672 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1673 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1674 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1676 #define EXTRACT_IFMT_SCUTSS_VARS \
1683 unsigned int length;
1684 #define EXTRACT_IFMT_SCUTSS_CODE \
1686 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1687 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1688 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1689 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1690 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1691 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1693 #define EXTRACT_IFMT_CADD_VARS \
1702 unsigned int length;
1703 #define EXTRACT_IFMT_CADD_CODE \
1705 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1706 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1707 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1708 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1709 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1710 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1711 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1712 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1714 #define EXTRACT_IFMT_CNOT_VARS \
1723 unsigned int length;
1724 #define EXTRACT_IFMT_CNOT_CODE \
1726 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1727 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1728 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1729 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1730 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1731 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1732 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1733 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1735 #define EXTRACT_IFMT_CSMUL_VARS \
1744 unsigned int length;
1745 #define EXTRACT_IFMT_CSMUL_CODE \
1747 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1748 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1749 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1750 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1751 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1752 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1753 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1754 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1756 #define EXTRACT_IFMT_ADDCC_VARS \
1764 unsigned int length;
1765 #define EXTRACT_IFMT_ADDCC_CODE \
1767 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1768 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1769 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1770 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1771 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1772 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1773 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1775 #define EXTRACT_IFMT_SMULCC_VARS \
1783 unsigned int length;
1784 #define EXTRACT_IFMT_SMULCC_CODE \
1786 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1787 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1788 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1789 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1790 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1791 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1792 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1794 #define EXTRACT_IFMT_ADDI_VARS \
1800 unsigned int length;
1801 #define EXTRACT_IFMT_ADDI_CODE \
1803 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1804 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1805 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1806 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1807 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
1809 #define EXTRACT_IFMT_SMULI_VARS \
1815 unsigned int length;
1816 #define EXTRACT_IFMT_SMULI_CODE \
1818 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1819 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1820 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1821 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1822 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
1824 #define EXTRACT_IFMT_ADDICC_VARS \
1831 unsigned int length;
1832 #define EXTRACT_IFMT_ADDICC_CODE \
1834 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1835 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1836 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1837 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1838 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1839 f_s10 = EXTRACT_LSB0_INT (insn, 32, 9, 10); \
1841 #define EXTRACT_IFMT_SMULICC_VARS \
1848 unsigned int length;
1849 #define EXTRACT_IFMT_SMULICC_CODE \
1851 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1852 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1853 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1854 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1855 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1856 f_s10 = EXTRACT_LSB0_INT (insn, 32, 9, 10); \
1858 #define EXTRACT_IFMT_CMPB_VARS \
1866 unsigned int length;
1867 #define EXTRACT_IFMT_CMPB_CODE \
1869 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1870 f_GRk_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1871 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1872 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1873 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1874 f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1875 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1877 #define EXTRACT_IFMT_SETLO_VARS \
1881 UINT f_misc_null_4; \
1883 unsigned int length;
1884 #define EXTRACT_IFMT_SETLO_CODE \
1886 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1887 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1888 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1889 f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1890 f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
1892 #define EXTRACT_IFMT_SETHI_VARS \
1896 UINT f_misc_null_4; \
1898 unsigned int length;
1899 #define EXTRACT_IFMT_SETHI_CODE \
1901 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1902 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1903 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1904 f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1905 f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
1907 #define EXTRACT_IFMT_SETLOS_VARS \
1911 UINT f_misc_null_4; \
1913 unsigned int length;
1914 #define EXTRACT_IFMT_SETLOS_CODE \
1916 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1917 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1918 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1919 f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1920 f_s16 = EXTRACT_LSB0_INT (insn, 32, 15, 16); \
1922 #define EXTRACT_IFMT_LDBF_VARS \
1929 unsigned int length;
1930 #define EXTRACT_IFMT_LDBF_CODE \
1932 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1933 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1934 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1935 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1936 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1937 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1939 #define EXTRACT_IFMT_LDC_VARS \
1946 unsigned int length;
1947 #define EXTRACT_IFMT_LDC_CODE \
1949 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1950 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1951 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1952 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1953 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1954 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1956 #define EXTRACT_IFMT_LDD_VARS \
1963 unsigned int length;
1964 #define EXTRACT_IFMT_LDD_CODE \
1966 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1967 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1968 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1969 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1970 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1971 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1973 #define EXTRACT_IFMT_LDDF_VARS \
1980 unsigned int length;
1981 #define EXTRACT_IFMT_LDDF_CODE \
1983 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1984 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1985 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1986 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1987 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1988 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1990 #define EXTRACT_IFMT_LDDC_VARS \
1997 unsigned int length;
1998 #define EXTRACT_IFMT_LDDC_CODE \
2000 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2001 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2002 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2003 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2004 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2005 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2007 #define EXTRACT_IFMT_LDSBI_VARS \
2013 unsigned int length;
2014 #define EXTRACT_IFMT_LDSBI_CODE \
2016 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2017 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2018 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2019 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2020 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2022 #define EXTRACT_IFMT_LDBFI_VARS \
2028 unsigned int length;
2029 #define EXTRACT_IFMT_LDBFI_CODE \
2031 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2032 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2033 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2034 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2035 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2037 #define EXTRACT_IFMT_LDDI_VARS \
2043 unsigned int length;
2044 #define EXTRACT_IFMT_LDDI_CODE \
2046 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2047 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2048 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2049 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2050 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2052 #define EXTRACT_IFMT_LDDFI_VARS \
2058 unsigned int length;
2059 #define EXTRACT_IFMT_LDDFI_CODE \
2061 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2062 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2063 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2064 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2065 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2067 #define EXTRACT_IFMT_CLDBF_VARS \
2076 unsigned int length;
2077 #define EXTRACT_IFMT_CLDBF_CODE \
2079 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2080 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2081 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2082 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2083 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2084 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2085 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2086 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2088 #define EXTRACT_IFMT_CLDDF_VARS \
2097 unsigned int length;
2098 #define EXTRACT_IFMT_CLDDF_CODE \
2100 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2101 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2102 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2103 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2104 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2105 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2106 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2107 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2109 #define EXTRACT_IFMT_MOVGF_VARS \
2116 unsigned int length;
2117 #define EXTRACT_IFMT_MOVGF_CODE \
2119 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2120 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2121 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2122 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2123 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2124 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2126 #define EXTRACT_IFMT_CMOVGF_VARS \
2135 unsigned int length;
2136 #define EXTRACT_IFMT_CMOVGF_CODE \
2138 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2139 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2140 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2141 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2142 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2143 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2144 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2145 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2147 #define EXTRACT_IFMT_MOVGS_VARS \
2155 unsigned int length;
2156 #define EXTRACT_IFMT_MOVGS_CODE \
2158 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2159 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2160 f_spr_h = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2161 f_spr_l = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2163 f_spr = ((((f_spr_h) << (6))) | (f_spr_l));\
2165 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2166 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2168 #define EXTRACT_IFMT_BRA_VARS \
2171 UINT f_ICCi_2_null; \
2175 unsigned int length;
2176 #define EXTRACT_IFMT_BRA_CODE \
2178 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2179 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2180 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2181 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2182 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2183 f_label16 = ((((EXTRACT_LSB0_INT (insn, 32, 15, 16)) << (2))) + (pc)); \
2185 #define EXTRACT_IFMT_BNO_VARS \
2188 UINT f_ICCi_2_null; \
2191 UINT f_label16_null; \
2192 unsigned int length;
2193 #define EXTRACT_IFMT_BNO_CODE \
2195 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2196 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2197 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2198 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2199 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2200 f_label16_null = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
2202 #define EXTRACT_IFMT_BEQ_VARS \
2209 unsigned int length;
2210 #define EXTRACT_IFMT_BEQ_CODE \
2212 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2213 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2214 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2215 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2216 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2217 f_label16 = ((((EXTRACT_LSB0_INT (insn, 32, 15, 16)) << (2))) + (pc)); \
2219 #define EXTRACT_IFMT_FBRA_VARS \
2222 UINT f_FCCi_2_null; \
2226 unsigned int length;
2227 #define EXTRACT_IFMT_FBRA_CODE \
2229 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2230 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2231 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2232 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2233 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2234 f_label16 = ((((EXTRACT_LSB0_INT (insn, 32, 15, 16)) << (2))) + (pc)); \
2236 #define EXTRACT_IFMT_FBNO_VARS \
2239 UINT f_FCCi_2_null; \
2242 UINT f_label16_null; \
2243 unsigned int length;
2244 #define EXTRACT_IFMT_FBNO_CODE \
2246 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2247 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2248 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2249 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2250 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2251 f_label16_null = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
2253 #define EXTRACT_IFMT_FBNE_VARS \
2260 unsigned int length;
2261 #define EXTRACT_IFMT_FBNE_CODE \
2263 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2264 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2265 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2266 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2267 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2268 f_label16 = ((((EXTRACT_LSB0_INT (insn, 32, 15, 16)) << (2))) + (pc)); \
2270 #define EXTRACT_IFMT_BCTRLR_VARS \
2273 UINT f_ICCi_2_null; \
2279 unsigned int length;
2280 #define EXTRACT_IFMT_BCTRLR_CODE \
2282 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2283 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2284 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2285 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2286 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2287 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2288 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2289 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2291 #define EXTRACT_IFMT_BRALR_VARS \
2294 UINT f_ICCi_2_null; \
2298 UINT f_ccond_null; \
2300 unsigned int length;
2301 #define EXTRACT_IFMT_BRALR_CODE \
2303 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2304 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2305 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2306 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2307 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2308 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2309 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2310 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2312 #define EXTRACT_IFMT_BNOLR_VARS \
2315 UINT f_ICCi_2_null; \
2319 UINT f_ccond_null; \
2321 unsigned int length;
2322 #define EXTRACT_IFMT_BNOLR_CODE \
2324 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2325 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2326 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2327 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2328 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2329 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2330 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2331 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2333 #define EXTRACT_IFMT_BEQLR_VARS \
2340 UINT f_ccond_null; \
2342 unsigned int length;
2343 #define EXTRACT_IFMT_BEQLR_CODE \
2345 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2346 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2347 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2348 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2349 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2350 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2351 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2352 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2354 #define EXTRACT_IFMT_FBRALR_VARS \
2357 UINT f_FCCi_2_null; \
2361 UINT f_ccond_null; \
2363 unsigned int length;
2364 #define EXTRACT_IFMT_FBRALR_CODE \
2366 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2367 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2368 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2369 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2370 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2371 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2372 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2373 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2375 #define EXTRACT_IFMT_FBNOLR_VARS \
2378 UINT f_FCCi_2_null; \
2382 UINT f_ccond_null; \
2384 unsigned int length;
2385 #define EXTRACT_IFMT_FBNOLR_CODE \
2387 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2388 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2389 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2390 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2391 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2392 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2393 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2394 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2396 #define EXTRACT_IFMT_FBEQLR_VARS \
2403 UINT f_ccond_null; \
2405 unsigned int length;
2406 #define EXTRACT_IFMT_FBEQLR_CODE \
2408 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2409 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2410 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2411 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2412 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2413 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2414 f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2415 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2417 #define EXTRACT_IFMT_BCRALR_VARS \
2420 UINT f_ICCi_2_null; \
2426 unsigned int length;
2427 #define EXTRACT_IFMT_BCRALR_CODE \
2429 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2430 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2431 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2432 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2433 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2434 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2435 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2436 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2438 #define EXTRACT_IFMT_BCEQLR_VARS \
2447 unsigned int length;
2448 #define EXTRACT_IFMT_BCEQLR_CODE \
2450 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2451 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2452 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2453 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2454 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2455 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2456 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2457 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2459 #define EXTRACT_IFMT_FCBRALR_VARS \
2462 UINT f_FCCi_2_null; \
2468 unsigned int length;
2469 #define EXTRACT_IFMT_FCBRALR_CODE \
2471 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2472 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2473 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2474 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2475 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2476 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2477 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2478 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2480 #define EXTRACT_IFMT_FCBEQLR_VARS \
2489 unsigned int length;
2490 #define EXTRACT_IFMT_FCBEQLR_CODE \
2492 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2493 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2494 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2495 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2496 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2497 f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2498 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2499 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2501 #define EXTRACT_IFMT_JMPL_VARS \
2503 UINT f_misc_null_1; \
2507 UINT f_misc_null_2; \
2509 unsigned int length;
2510 #define EXTRACT_IFMT_JMPL_CODE \
2512 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2513 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2514 f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2515 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2516 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2517 f_misc_null_2 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2518 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2520 #define EXTRACT_IFMT_CALLL_VARS \
2522 UINT f_misc_null_1; \
2526 UINT f_misc_null_2; \
2528 unsigned int length;
2529 #define EXTRACT_IFMT_CALLL_CODE \
2531 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2532 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2533 f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2534 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2535 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2536 f_misc_null_2 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2537 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2539 #define EXTRACT_IFMT_JMPIL_VARS \
2541 UINT f_misc_null_1; \
2546 unsigned int length;
2547 #define EXTRACT_IFMT_JMPIL_CODE \
2549 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2550 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2551 f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2552 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2553 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2554 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2556 #define EXTRACT_IFMT_CALLIL_VARS \
2558 UINT f_misc_null_1; \
2563 unsigned int length;
2564 #define EXTRACT_IFMT_CALLIL_CODE \
2566 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2567 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2568 f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2569 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2570 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2571 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2573 #define EXTRACT_IFMT_CALL_VARS \
2579 unsigned int length;
2580 #define EXTRACT_IFMT_CALL_CODE \
2582 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2583 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2584 f_labelH6 = EXTRACT_LSB0_INT (insn, 32, 30, 6); \
2585 f_labelL18 = EXTRACT_LSB0_UINT (insn, 32, 17, 18); \
2587 f_label24 = ((((((((f_labelH6) << (18))) | (f_labelL18))) << (2))) + (pc));\
2590 #define EXTRACT_IFMT_RETT_VARS \
2592 UINT f_misc_null_1; \
2597 unsigned int length;
2598 #define EXTRACT_IFMT_RETT_CODE \
2600 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2601 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2602 f_debug = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2603 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2604 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2605 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2607 #define EXTRACT_IFMT_REI_VARS \
2613 unsigned int length;
2614 #define EXTRACT_IFMT_REI_CODE \
2616 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2617 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2618 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2619 f_eir = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2620 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2622 #define EXTRACT_IFMT_TRA_VARS \
2625 UINT f_ICCi_2_null; \
2628 UINT f_misc_null_3; \
2631 unsigned int length;
2632 #define EXTRACT_IFMT_TRA_CODE \
2634 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2635 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2636 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2637 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2638 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2639 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2640 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2641 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2643 #define EXTRACT_IFMT_TNO_VARS \
2646 UINT f_ICCi_2_null; \
2649 UINT f_misc_null_3; \
2652 unsigned int length;
2653 #define EXTRACT_IFMT_TNO_CODE \
2655 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2656 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2657 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2658 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2659 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2660 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2661 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2662 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2664 #define EXTRACT_IFMT_TEQ_VARS \
2670 UINT f_misc_null_3; \
2673 unsigned int length;
2674 #define EXTRACT_IFMT_TEQ_CODE \
2676 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2677 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2678 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2679 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2680 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2681 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2682 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2683 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2685 #define EXTRACT_IFMT_FTRA_VARS \
2688 UINT f_FCCi_2_null; \
2691 UINT f_misc_null_3; \
2694 unsigned int length;
2695 #define EXTRACT_IFMT_FTRA_CODE \
2697 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2698 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2699 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2700 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2701 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2702 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2703 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2704 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2706 #define EXTRACT_IFMT_FTNO_VARS \
2709 UINT f_FCCi_2_null; \
2712 UINT f_misc_null_3; \
2715 unsigned int length;
2716 #define EXTRACT_IFMT_FTNO_CODE \
2718 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2719 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2720 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2721 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2722 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2723 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2724 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2725 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2727 #define EXTRACT_IFMT_FTNE_VARS \
2733 UINT f_misc_null_3; \
2736 unsigned int length;
2737 #define EXTRACT_IFMT_FTNE_CODE \
2739 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2740 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2741 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2742 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2743 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2744 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2745 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2746 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2748 #define EXTRACT_IFMT_TIRA_VARS \
2751 UINT f_ICCi_2_null; \
2755 unsigned int length;
2756 #define EXTRACT_IFMT_TIRA_CODE \
2758 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2759 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2760 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2761 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2762 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2763 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2765 #define EXTRACT_IFMT_TINO_VARS \
2768 UINT f_ICCi_2_null; \
2772 unsigned int length;
2773 #define EXTRACT_IFMT_TINO_CODE \
2775 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2776 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2777 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2778 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2779 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2780 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2782 #define EXTRACT_IFMT_TIEQ_VARS \
2789 unsigned int length;
2790 #define EXTRACT_IFMT_TIEQ_CODE \
2792 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2793 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2794 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2795 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2796 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2797 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2799 #define EXTRACT_IFMT_FTIRA_VARS \
2802 UINT f_ICCi_2_null; \
2806 unsigned int length;
2807 #define EXTRACT_IFMT_FTIRA_CODE \
2809 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2810 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2811 f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2812 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2813 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2814 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2816 #define EXTRACT_IFMT_FTINO_VARS \
2819 UINT f_FCCi_2_null; \
2823 unsigned int length;
2824 #define EXTRACT_IFMT_FTINO_CODE \
2826 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2827 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2828 f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2829 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2830 f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2831 f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2833 #define EXTRACT_IFMT_FTINE_VARS \
2840 unsigned int length;
2841 #define EXTRACT_IFMT_FTINE_CODE \
2843 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2844 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2845 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2846 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2847 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2848 f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \
2850 #define EXTRACT_IFMT_BREAK_VARS \
2855 UINT f_misc_null_3; \
2858 unsigned int length;
2859 #define EXTRACT_IFMT_BREAK_CODE \
2861 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2862 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2863 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2864 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2865 f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2866 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2867 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2869 #define EXTRACT_IFMT_ANDCR_VARS \
2871 UINT f_misc_null_6; \
2874 UINT f_misc_null_7; \
2877 UINT f_misc_null_8; \
2879 unsigned int length;
2880 #define EXTRACT_IFMT_ANDCR_CODE \
2882 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2883 f_misc_null_6 = EXTRACT_LSB0_UINT (insn, 32, 30, 3); \
2884 f_CRk = EXTRACT_LSB0_UINT (insn, 32, 27, 3); \
2885 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2886 f_misc_null_7 = EXTRACT_LSB0_UINT (insn, 32, 17, 3); \
2887 f_CRi = EXTRACT_LSB0_UINT (insn, 32, 14, 3); \
2888 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2889 f_misc_null_8 = EXTRACT_LSB0_UINT (insn, 32, 5, 3); \
2890 f_CRj = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
2892 #define EXTRACT_IFMT_NOTCR_VARS \
2894 UINT f_misc_null_6; \
2899 UINT f_misc_null_8; \
2901 unsigned int length;
2902 #define EXTRACT_IFMT_NOTCR_CODE \
2904 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2905 f_misc_null_6 = EXTRACT_LSB0_UINT (insn, 32, 30, 3); \
2906 f_CRk = EXTRACT_LSB0_UINT (insn, 32, 27, 3); \
2907 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2908 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2909 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2910 f_misc_null_8 = EXTRACT_LSB0_UINT (insn, 32, 5, 3); \
2911 f_CRj = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
2913 #define EXTRACT_IFMT_CKRA_VARS \
2918 UINT f_misc_null_5; \
2919 UINT f_ICCi_3_null; \
2920 unsigned int length;
2921 #define EXTRACT_IFMT_CKRA_CODE \
2923 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2924 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2925 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2926 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2927 f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2928 f_ICCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2930 #define EXTRACT_IFMT_CKEQ_VARS \
2935 UINT f_misc_null_5; \
2937 unsigned int length;
2938 #define EXTRACT_IFMT_CKEQ_CODE \
2940 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2941 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2942 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2943 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2944 f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2945 f_ICCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2947 #define EXTRACT_IFMT_FCKRA_VARS \
2952 UINT f_misc_null_5; \
2954 unsigned int length;
2955 #define EXTRACT_IFMT_FCKRA_CODE \
2957 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2958 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2959 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2960 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2961 f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2962 f_FCCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2964 #define EXTRACT_IFMT_CCKRA_VARS \
2973 UINT f_misc_null_9; \
2974 UINT f_ICCi_3_null; \
2975 unsigned int length;
2976 #define EXTRACT_IFMT_CCKRA_CODE \
2978 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2979 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2980 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2981 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2982 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2983 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2984 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2985 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2986 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
2987 f_ICCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2989 #define EXTRACT_IFMT_CCKEQ_VARS \
2998 UINT f_misc_null_9; \
3000 unsigned int length;
3001 #define EXTRACT_IFMT_CCKEQ_CODE \
3003 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3004 f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3005 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
3006 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3007 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3008 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3009 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3010 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3011 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3012 f_ICCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3014 #define EXTRACT_IFMT_CFCKRA_VARS \
3023 UINT f_misc_null_9; \
3024 UINT f_FCCi_3_null; \
3025 unsigned int length;
3026 #define EXTRACT_IFMT_CFCKRA_CODE \
3028 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3029 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3030 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3031 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3032 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3033 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3034 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3035 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3036 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3037 f_FCCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3039 #define EXTRACT_IFMT_CFCKNE_VARS \
3048 UINT f_misc_null_9; \
3050 unsigned int length;
3051 #define EXTRACT_IFMT_CFCKNE_CODE \
3053 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3054 f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3055 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3056 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3057 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3058 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3059 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3060 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3061 f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3062 f_FCCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3064 #define EXTRACT_IFMT_CJMPL_VARS \
3066 UINT f_misc_null_1; \
3074 unsigned int length;
3075 #define EXTRACT_IFMT_CJMPL_CODE \
3077 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3078 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3079 f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3080 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3081 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3082 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3083 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3084 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3085 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3087 #define EXTRACT_IFMT_CCALLL_VARS \
3089 UINT f_misc_null_1; \
3097 unsigned int length;
3098 #define EXTRACT_IFMT_CCALLL_CODE \
3100 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3101 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3102 f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3103 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3104 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3105 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3106 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3107 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3108 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3110 #define EXTRACT_IFMT_ICEI_VARS \
3112 UINT f_misc_null_1; \
3118 unsigned int length;
3119 #define EXTRACT_IFMT_ICEI_CODE \
3121 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3122 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3123 f_ae = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3124 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3125 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3126 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3127 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3129 #define EXTRACT_IFMT_ICPL_VARS \
3131 UINT f_misc_null_1; \
3137 unsigned int length;
3138 #define EXTRACT_IFMT_ICPL_CODE \
3140 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3141 f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3142 f_lock = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3143 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3144 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3145 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3146 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3148 #define EXTRACT_IFMT_ICUL_VARS \
3155 unsigned int length;
3156 #define EXTRACT_IFMT_ICUL_CODE \
3158 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3159 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3160 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3161 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3162 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3163 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3165 #define EXTRACT_IFMT_BAR_VARS \
3172 unsigned int length;
3173 #define EXTRACT_IFMT_BAR_CODE \
3175 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3176 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3177 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3178 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3179 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3180 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3182 #define EXTRACT_IFMT_LRAI_VARS \
3192 unsigned int length;
3193 #define EXTRACT_IFMT_LRAI_CODE \
3195 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3196 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3197 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3198 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3199 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3200 f_LRAE = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3201 f_LRAD = EXTRACT_LSB0_UINT (insn, 32, 4, 1); \
3202 f_LRAS = EXTRACT_LSB0_UINT (insn, 32, 3, 1); \
3203 f_LRA_null = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
3205 #define EXTRACT_IFMT_TLBPR_VARS \
3207 UINT f_TLBPR_null; \
3214 unsigned int length;
3215 #define EXTRACT_IFMT_TLBPR_CODE \
3217 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3218 f_TLBPR_null = EXTRACT_LSB0_UINT (insn, 32, 30, 2); \
3219 f_TLBPRopx = EXTRACT_LSB0_UINT (insn, 32, 28, 3); \
3220 f_TLBPRL = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3221 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3222 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3223 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3224 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3226 #define EXTRACT_IFMT_COP1_VARS \
3233 unsigned int length;
3234 #define EXTRACT_IFMT_COP1_CODE \
3236 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3237 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3238 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3239 f_CPRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3240 f_s6_1 = EXTRACT_LSB0_INT (insn, 32, 11, 6); \
3241 f_CPRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3243 #define EXTRACT_IFMT_CLRGR_VARS \
3250 unsigned int length;
3251 #define EXTRACT_IFMT_CLRGR_CODE \
3253 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3254 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3255 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3256 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3257 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3258 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3260 #define EXTRACT_IFMT_CLRFR_VARS \
3267 unsigned int length;
3268 #define EXTRACT_IFMT_CLRFR_CODE \
3270 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3271 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3272 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3273 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3274 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3275 f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3277 #define EXTRACT_IFMT_FITOS_VARS \
3284 unsigned int length;
3285 #define EXTRACT_IFMT_FITOS_CODE \
3287 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3288 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3289 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3290 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3291 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3292 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3294 #define EXTRACT_IFMT_FSTOI_VARS \
3301 unsigned int length;
3302 #define EXTRACT_IFMT_FSTOI_CODE \
3304 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3305 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3306 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3307 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3308 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3309 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3311 #define EXTRACT_IFMT_FITOD_VARS \
3318 unsigned int length;
3319 #define EXTRACT_IFMT_FITOD_CODE \
3321 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3322 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3323 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3324 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3325 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3326 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3328 #define EXTRACT_IFMT_FDTOI_VARS \
3335 unsigned int length;
3336 #define EXTRACT_IFMT_FDTOI_CODE \
3338 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3339 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3340 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3341 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3342 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3343 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3345 #define EXTRACT_IFMT_CFITOS_VARS \
3354 unsigned int length;
3355 #define EXTRACT_IFMT_CFITOS_CODE \
3357 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3358 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3359 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3360 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3361 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3362 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3363 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3364 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3366 #define EXTRACT_IFMT_CFSTOI_VARS \
3375 unsigned int length;
3376 #define EXTRACT_IFMT_CFSTOI_CODE \
3378 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3379 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3380 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3381 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3382 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3383 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3384 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3385 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3387 #define EXTRACT_IFMT_FMOVS_VARS \
3394 unsigned int length;
3395 #define EXTRACT_IFMT_FMOVS_CODE \
3397 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3398 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3399 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3400 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3401 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3402 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3404 #define EXTRACT_IFMT_FMOVD_VARS \
3411 unsigned int length;
3412 #define EXTRACT_IFMT_FMOVD_CODE \
3414 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3415 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3416 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3417 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3418 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3419 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3421 #define EXTRACT_IFMT_CFMOVS_VARS \
3430 unsigned int length;
3431 #define EXTRACT_IFMT_CFMOVS_CODE \
3433 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3434 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3435 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3436 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3437 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3438 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3439 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3440 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3442 #define EXTRACT_IFMT_FADDS_VARS \
3449 unsigned int length;
3450 #define EXTRACT_IFMT_FADDS_CODE \
3452 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3453 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3454 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3455 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3456 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3457 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3459 #define EXTRACT_IFMT_FADDD_VARS \
3466 unsigned int length;
3467 #define EXTRACT_IFMT_FADDD_CODE \
3469 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3470 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3471 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3472 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3473 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3474 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3476 #define EXTRACT_IFMT_CFADDS_VARS \
3485 unsigned int length;
3486 #define EXTRACT_IFMT_CFADDS_CODE \
3488 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3489 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3490 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3491 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3492 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3493 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3494 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3495 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3497 #define EXTRACT_IFMT_FCMPS_VARS \
3505 unsigned int length;
3506 #define EXTRACT_IFMT_FCMPS_CODE \
3508 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3509 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3510 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3511 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3512 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3513 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3514 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3516 #define EXTRACT_IFMT_FCMPD_VARS \
3524 unsigned int length;
3525 #define EXTRACT_IFMT_FCMPD_CODE \
3527 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3528 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3529 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3530 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3531 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3532 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3533 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3535 #define EXTRACT_IFMT_CFCMPS_VARS \
3545 unsigned int length;
3546 #define EXTRACT_IFMT_CFCMPS_CODE \
3548 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3549 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3550 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3551 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3552 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3553 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3554 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3555 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3556 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3558 #define EXTRACT_IFMT_MHSETLOS_VARS \
3566 unsigned int length;
3567 #define EXTRACT_IFMT_MHSETLOS_CODE \
3569 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3570 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3571 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3572 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3573 f_u12_h = EXTRACT_LSB0_INT (insn, 32, 17, 6); \
3574 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3576 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3579 #define EXTRACT_IFMT_MHSETHIS_VARS \
3587 unsigned int length;
3588 #define EXTRACT_IFMT_MHSETHIS_CODE \
3590 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3591 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3592 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3593 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3594 f_u12_h = EXTRACT_LSB0_INT (insn, 32, 17, 6); \
3595 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3597 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3600 #define EXTRACT_IFMT_MHDSETS_VARS \
3608 unsigned int length;
3609 #define EXTRACT_IFMT_MHDSETS_CODE \
3611 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3612 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3613 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3614 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3615 f_u12_h = EXTRACT_LSB0_INT (insn, 32, 17, 6); \
3616 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3618 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3621 #define EXTRACT_IFMT_MHSETLOH_VARS \
3627 UINT f_misc_null_11; \
3629 unsigned int length;
3630 #define EXTRACT_IFMT_MHSETLOH_CODE \
3632 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3633 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3634 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3635 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3636 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3637 f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3638 f_s5 = EXTRACT_LSB0_INT (insn, 32, 4, 5); \
3640 #define EXTRACT_IFMT_MHSETHIH_VARS \
3646 UINT f_misc_null_11; \
3648 unsigned int length;
3649 #define EXTRACT_IFMT_MHSETHIH_CODE \
3651 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3652 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3653 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3654 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3655 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3656 f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3657 f_s5 = EXTRACT_LSB0_INT (insn, 32, 4, 5); \
3659 #define EXTRACT_IFMT_MHDSETH_VARS \
3665 UINT f_misc_null_11; \
3667 unsigned int length;
3668 #define EXTRACT_IFMT_MHDSETH_CODE \
3670 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3671 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3672 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3673 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3674 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3675 f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3676 f_s5 = EXTRACT_LSB0_INT (insn, 32, 4, 5); \
3678 #define EXTRACT_IFMT_MAND_VARS \
3685 unsigned int length;
3686 #define EXTRACT_IFMT_MAND_CODE \
3688 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3689 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3690 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3691 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3692 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3693 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3695 #define EXTRACT_IFMT_CMAND_VARS \
3704 unsigned int length;
3705 #define EXTRACT_IFMT_CMAND_CODE \
3707 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3708 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3709 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3710 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3711 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3712 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3713 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3714 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3716 #define EXTRACT_IFMT_MNOT_VARS \
3723 unsigned int length;
3724 #define EXTRACT_IFMT_MNOT_CODE \
3726 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3727 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3728 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3729 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3730 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3731 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3733 #define EXTRACT_IFMT_CMNOT_VARS \
3742 unsigned int length;
3743 #define EXTRACT_IFMT_CMNOT_CODE \
3745 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3746 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3747 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3748 f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3749 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3750 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3751 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3752 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3754 #define EXTRACT_IFMT_MROTLI_VARS \
3761 unsigned int length;
3762 #define EXTRACT_IFMT_MROTLI_CODE \
3764 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3765 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3766 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3767 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3768 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3769 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3771 #define EXTRACT_IFMT_MCUT_VARS \
3778 unsigned int length;
3779 #define EXTRACT_IFMT_MCUT_CODE \
3781 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3782 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3783 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3784 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3785 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3786 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3788 #define EXTRACT_IFMT_MCUTI_VARS \
3795 unsigned int length;
3796 #define EXTRACT_IFMT_MCUTI_CODE \
3798 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3799 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3800 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3801 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3802 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3803 f_s6 = EXTRACT_LSB0_INT (insn, 32, 5, 6); \
3805 #define EXTRACT_IFMT_MDCUTSSI_VARS \
3812 unsigned int length;
3813 #define EXTRACT_IFMT_MDCUTSSI_CODE \
3815 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3816 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3817 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3818 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3819 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3820 f_s6 = EXTRACT_LSB0_INT (insn, 32, 5, 6); \
3822 #define EXTRACT_IFMT_MDROTLI_VARS \
3829 unsigned int length;
3830 #define EXTRACT_IFMT_MDROTLI_CODE \
3832 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3833 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3834 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3835 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3836 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3837 f_s6 = EXTRACT_LSB0_INT (insn, 32, 5, 6); \
3839 #define EXTRACT_IFMT_MQSATHS_VARS \
3846 unsigned int length;
3847 #define EXTRACT_IFMT_MQSATHS_CODE \
3849 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3850 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3851 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3852 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3853 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3854 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3856 #define EXTRACT_IFMT_MCMPSH_VARS \
3864 unsigned int length;
3865 #define EXTRACT_IFMT_MCMPSH_CODE \
3867 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3868 f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3869 f_FCCk = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3870 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3871 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3872 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3873 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3875 #define EXTRACT_IFMT_MABSHS_VARS \
3882 unsigned int length;
3883 #define EXTRACT_IFMT_MABSHS_CODE \
3885 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3886 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3887 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3888 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3889 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3890 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3892 #define EXTRACT_IFMT_CMQADDHSS_VARS \
3901 unsigned int length;
3902 #define EXTRACT_IFMT_CMQADDHSS_CODE \
3904 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3905 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3906 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3907 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3908 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3909 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3910 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3911 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3913 #define EXTRACT_IFMT_MQSLLHI_VARS \
3920 unsigned int length;
3921 #define EXTRACT_IFMT_MQSLLHI_CODE \
3923 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3924 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3925 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3926 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3927 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3928 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3930 #define EXTRACT_IFMT_MADDACCS_VARS \
3937 unsigned int length;
3938 #define EXTRACT_IFMT_MADDACCS_CODE \
3940 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3941 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3942 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3943 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3944 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3945 f_ACCj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3947 #define EXTRACT_IFMT_MMULHS_VARS \
3954 unsigned int length;
3955 #define EXTRACT_IFMT_MMULHS_CODE \
3957 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3958 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3959 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3960 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3961 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3962 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3964 #define EXTRACT_IFMT_CMMULHS_VARS \
3973 unsigned int length;
3974 #define EXTRACT_IFMT_CMMULHS_CODE \
3976 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3977 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3978 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3979 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3980 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3981 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3982 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3983 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3985 #define EXTRACT_IFMT_MQMULHS_VARS \
3992 unsigned int length;
3993 #define EXTRACT_IFMT_MQMULHS_CODE \
3995 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3996 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3997 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3998 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3999 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4000 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4002 #define EXTRACT_IFMT_CMQMULHS_VARS \
4011 unsigned int length;
4012 #define EXTRACT_IFMT_CMQMULHS_CODE \
4014 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4015 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4016 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4017 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4018 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4019 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4020 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4021 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4023 #define EXTRACT_IFMT_MMACHU_VARS \
4030 unsigned int length;
4031 #define EXTRACT_IFMT_MMACHU_CODE \
4033 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4034 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4035 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4036 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4037 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4038 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4040 #define EXTRACT_IFMT_CMMACHU_VARS \
4049 unsigned int length;
4050 #define EXTRACT_IFMT_CMMACHU_CODE \
4052 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4053 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4054 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4055 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4056 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4057 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4058 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4059 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4061 #define EXTRACT_IFMT_MQMACHU_VARS \
4068 unsigned int length;
4069 #define EXTRACT_IFMT_MQMACHU_CODE \
4071 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4072 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4073 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4074 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4075 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4076 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4078 #define EXTRACT_IFMT_CMQMACHU_VARS \
4087 unsigned int length;
4088 #define EXTRACT_IFMT_CMQMACHU_CODE \
4090 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4091 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4092 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4093 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4094 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4095 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4096 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4097 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4099 #define EXTRACT_IFMT_CMEXPDHW_VARS \
4108 unsigned int length;
4109 #define EXTRACT_IFMT_CMEXPDHW_CODE \
4111 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4112 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4113 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4114 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4115 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4116 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4117 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4118 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4120 #define EXTRACT_IFMT_MEXPDHD_VARS \
4127 unsigned int length;
4128 #define EXTRACT_IFMT_MEXPDHD_CODE \
4130 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4131 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4132 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4133 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4134 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4135 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4137 #define EXTRACT_IFMT_CMEXPDHD_VARS \
4146 unsigned int length;
4147 #define EXTRACT_IFMT_CMEXPDHD_CODE \
4149 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4150 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4151 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4152 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4153 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4154 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4155 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4156 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4158 #define EXTRACT_IFMT_MUNPACKH_VARS \
4165 unsigned int length;
4166 #define EXTRACT_IFMT_MUNPACKH_CODE \
4168 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4169 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4170 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4171 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4172 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4173 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4175 #define EXTRACT_IFMT_MDUNPACKH_VARS \
4182 unsigned int length;
4183 #define EXTRACT_IFMT_MDUNPACKH_CODE \
4185 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4186 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4187 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4188 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4189 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4190 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4192 #define EXTRACT_IFMT_MBTOH_VARS \
4199 unsigned int length;
4200 #define EXTRACT_IFMT_MBTOH_CODE \
4202 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4203 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4204 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4205 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4206 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4207 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4209 #define EXTRACT_IFMT_CMBTOH_VARS \
4218 unsigned int length;
4219 #define EXTRACT_IFMT_CMBTOH_CODE \
4221 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4222 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4223 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4224 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4225 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4226 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4227 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4228 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4230 #define EXTRACT_IFMT_MHTOB_VARS \
4237 unsigned int length;
4238 #define EXTRACT_IFMT_MHTOB_CODE \
4240 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4241 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4242 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4243 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4244 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4245 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4247 #define EXTRACT_IFMT_CMHTOB_VARS \
4256 unsigned int length;
4257 #define EXTRACT_IFMT_CMHTOB_CODE \
4259 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4260 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4261 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4262 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4263 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4264 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4265 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4266 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4268 #define EXTRACT_IFMT_CMBTOHE_VARS \
4277 unsigned int length;
4278 #define EXTRACT_IFMT_CMBTOHE_CODE \
4280 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4281 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4282 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4283 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4284 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4285 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4286 f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4287 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4289 #define EXTRACT_IFMT_MNOP_VARS \
4294 UINT f_misc_null_10; \
4297 unsigned int length;
4298 #define EXTRACT_IFMT_MNOP_CODE \
4300 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4301 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4302 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4303 f_A = EXTRACT_LSB0_UINT (insn, 32, 17, 1); \
4304 f_misc_null_10 = EXTRACT_LSB0_UINT (insn, 32, 16, 5); \
4305 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4306 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4308 #define EXTRACT_IFMT_MCLRACC_0_VARS \
4313 UINT f_misc_null_10; \
4316 unsigned int length;
4317 #define EXTRACT_IFMT_MCLRACC_0_CODE \
4319 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4320 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4321 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4322 f_A = EXTRACT_LSB0_UINT (insn, 32, 17, 1); \
4323 f_misc_null_10 = EXTRACT_LSB0_UINT (insn, 32, 16, 5); \
4324 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4325 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4327 #define EXTRACT_IFMT_MRDACC_VARS \
4334 unsigned int length;
4335 #define EXTRACT_IFMT_MRDACC_CODE \
4337 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4338 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4339 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4340 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4341 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4342 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4344 #define EXTRACT_IFMT_MRDACCG_VARS \
4351 unsigned int length;
4352 #define EXTRACT_IFMT_MRDACCG_CODE \
4354 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4355 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4356 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4357 f_ACCGi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4358 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4359 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4361 #define EXTRACT_IFMT_MWTACC_VARS \
4368 unsigned int length;
4369 #define EXTRACT_IFMT_MWTACC_CODE \
4371 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4372 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4373 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4374 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4375 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4376 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4378 #define EXTRACT_IFMT_MWTACCG_VARS \
4385 unsigned int length;
4386 #define EXTRACT_IFMT_MWTACCG_CODE \
4388 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4389 f_ACCGk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4390 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4391 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4392 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4393 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4395 #define EXTRACT_IFMT_FNOP_VARS \
4402 unsigned int length;
4403 #define EXTRACT_IFMT_FNOP_CODE \
4405 f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4406 f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4407 f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4408 f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4409 f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4410 f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4412 /* Collection of various things for the trace handler to use. */
4414 typedef struct trace_record
{
4419 #endif /* CPU_FRVBF_H */