OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gdb-7.2/] [sim/] [frv/] [cpu.h] - Blame information for rev 481

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 330 jeremybenn
/* CPU family header for frvbf.
2
 
3
THIS FILE IS MACHINE GENERATED WITH CGEN.
4
 
5
Copyright 1996-2010 Free Software Foundation, Inc.
6
 
7
This file is part of the GNU simulators.
8
 
9
   This file is free software; you can redistribute it and/or modify
10
   it under the terms of the GNU General Public License as published by
11
   the Free Software Foundation; either version 3, or (at your option)
12
   any later version.
13
 
14
   It is distributed in the hope that it will be useful, but WITHOUT
15
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
16
   or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
17
   License for more details.
18
 
19
   You should have received a copy of the GNU General Public License along
20
   with this program; if not, write to the Free Software Foundation, Inc.,
21
   51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
22
 
23
*/
24
 
25
#ifndef CPU_FRVBF_H
26
#define CPU_FRVBF_H
27
 
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
31
 
32
/* Maximum number of instructions that can be executed in parallel.  */
33
#define MAX_PARALLEL_INSNS 8
34
 
35
/* The size of an "int" needed to hold an instruction word.
36
   This is usually 32 bits, but some architectures needs 64 bits.  */
37
typedef CGEN_INSN_INT CGEN_INSN_WORD;
38
 
39
#include "cgen-engine.h"
40
 
41
/* CPU state information.  */
42
typedef struct {
43
  /* Hardware elements.  */
44
  struct {
45
  /* relocation annotation */
46
  BI h_reloc_ann;
47
#define GET_H_RELOC_ANN() CPU (h_reloc_ann)
48
#define SET_H_RELOC_ANN(x) (CPU (h_reloc_ann) = (x))
49
  /* program counter */
50
  USI h_pc;
51
#define GET_H_PC() CPU (h_pc)
52
#define SET_H_PC(x) (CPU (h_pc) = (x))
53
  /* PSR.IMPLE */
54
  UQI h_psr_imple;
55
#define GET_H_PSR_IMPLE() CPU (h_psr_imple)
56
#define SET_H_PSR_IMPLE(x) (CPU (h_psr_imple) = (x))
57
  /* PSR.VER */
58
  UQI h_psr_ver;
59
#define GET_H_PSR_VER() CPU (h_psr_ver)
60
#define SET_H_PSR_VER(x) (CPU (h_psr_ver) = (x))
61
  /* PSR.ICE bit */
62
  BI h_psr_ice;
63
#define GET_H_PSR_ICE() CPU (h_psr_ice)
64
#define SET_H_PSR_ICE(x) (CPU (h_psr_ice) = (x))
65
  /* PSR.NEM bit */
66
  BI h_psr_nem;
67
#define GET_H_PSR_NEM() CPU (h_psr_nem)
68
#define SET_H_PSR_NEM(x) (CPU (h_psr_nem) = (x))
69
  /* PSR.CM  bit */
70
  BI h_psr_cm;
71
#define GET_H_PSR_CM() CPU (h_psr_cm)
72
#define SET_H_PSR_CM(x) (CPU (h_psr_cm) = (x))
73
  /* PSR.BE  bit */
74
  BI h_psr_be;
75
#define GET_H_PSR_BE() CPU (h_psr_be)
76
#define SET_H_PSR_BE(x) (CPU (h_psr_be) = (x))
77
  /* PSR.ESR bit */
78
  BI h_psr_esr;
79
#define GET_H_PSR_ESR() CPU (h_psr_esr)
80
#define SET_H_PSR_ESR(x) (CPU (h_psr_esr) = (x))
81
  /* PSR.EF  bit */
82
  BI h_psr_ef;
83
#define GET_H_PSR_EF() CPU (h_psr_ef)
84
#define SET_H_PSR_EF(x) (CPU (h_psr_ef) = (x))
85
  /* PSR.EM  bit */
86
  BI h_psr_em;
87
#define GET_H_PSR_EM() CPU (h_psr_em)
88
#define SET_H_PSR_EM(x) (CPU (h_psr_em) = (x))
89
  /* PSR.PIL     */
90
  UQI h_psr_pil;
91
#define GET_H_PSR_PIL() CPU (h_psr_pil)
92
#define SET_H_PSR_PIL(x) (CPU (h_psr_pil) = (x))
93
  /* PSR.PS  bit */
94
  BI h_psr_ps;
95
#define GET_H_PSR_PS() CPU (h_psr_ps)
96
#define SET_H_PSR_PS(x) (CPU (h_psr_ps) = (x))
97
  /* PSR.ET  bit */
98
  BI h_psr_et;
99
#define GET_H_PSR_ET() CPU (h_psr_et)
100
#define SET_H_PSR_ET(x) (CPU (h_psr_et) = (x))
101
  /* PSR.S bit */
102
  BI h_psr_s;
103
#define GET_H_PSR_S() CPU (h_psr_s)
104
#define SET_H_PSR_S(x) \
105
do { \
106
frvbf_h_psr_s_set_handler (current_cpu, (x));\
107
;} while (0)
108
  /* TBR.TBA */
109
  USI h_tbr_tba;
110
#define GET_H_TBR_TBA() CPU (h_tbr_tba)
111
#define SET_H_TBR_TBA(x) (CPU (h_tbr_tba) = (x))
112
  /* TBR.TT */
113
  UQI h_tbr_tt;
114
#define GET_H_TBR_TT() CPU (h_tbr_tt)
115
#define SET_H_TBR_TT(x) (CPU (h_tbr_tt) = (x))
116
  /* PSR.S   bit */
117
  BI h_bpsr_bs;
118
#define GET_H_BPSR_BS() CPU (h_bpsr_bs)
119
#define SET_H_BPSR_BS(x) (CPU (h_bpsr_bs) = (x))
120
  /* PSR.ET  bit */
121
  BI h_bpsr_bet;
122
#define GET_H_BPSR_BET() CPU (h_bpsr_bet)
123
#define SET_H_BPSR_BET(x) (CPU (h_bpsr_bet) = (x))
124
  /* general registers */
125
  USI h_gr[64];
126
#define GET_H_GR(index) frvbf_h_gr_get_handler (current_cpu, index)
127
#define SET_H_GR(index, x) \
128
do { \
129
frvbf_h_gr_set_handler (current_cpu, (index), (x));\
130
;} while (0)
131
  /* floating point registers */
132
  SF h_fr[64];
133
#define GET_H_FR(index) frvbf_h_fr_get_handler (current_cpu, index)
134
#define SET_H_FR(index, x) \
135
do { \
136
frvbf_h_fr_set_handler (current_cpu, (index), (x));\
137
;} while (0)
138
  /* coprocessor registers */
139
  SI h_cpr[64];
140
#define GET_H_CPR(a1) CPU (h_cpr)[a1]
141
#define SET_H_CPR(a1, x) (CPU (h_cpr)[a1] = (x))
142
  /* special purpose registers */
143
  USI h_spr[4096];
144
#define GET_H_SPR(index) frvbf_h_spr_get_handler (current_cpu, index)
145
#define SET_H_SPR(index, x) \
146
do { \
147
frvbf_h_spr_set_handler (current_cpu, (index), (x));\
148
;} while (0)
149
  /* Integer condition code registers */
150
  UQI h_iccr[4];
151
#define GET_H_ICCR(a1) CPU (h_iccr)[a1]
152
#define SET_H_ICCR(a1, x) (CPU (h_iccr)[a1] = (x))
153
  /* Floating point condition code registers */
154
  UQI h_fccr[4];
155
#define GET_H_FCCR(a1) CPU (h_fccr)[a1]
156
#define SET_H_FCCR(a1, x) (CPU (h_fccr)[a1] = (x))
157
  /* Condition code registers */
158
  UQI h_cccr[8];
159
#define GET_H_CCCR(a1) CPU (h_cccr)[a1]
160
#define SET_H_CCCR(a1, x) (CPU (h_cccr)[a1] = (x))
161
  } hardware;
162
#define CPU_CGEN_HW(cpu) (& (cpu)->cpu_data.hardware)
163
} FRVBF_CPU_DATA;
164
 
165
/* Virtual regs.  */
166
 
167
#define GET_H_GR_DOUBLE(index) frvbf_h_gr_double_get_handler (current_cpu, index)
168
#define SET_H_GR_DOUBLE(index, x) \
169
do { \
170
frvbf_h_gr_double_set_handler (current_cpu, (index), (x));\
171
;} while (0)
172
#define GET_H_GR_HI(index) frvbf_h_gr_hi_get_handler (current_cpu, index)
173
#define SET_H_GR_HI(index, x) \
174
do { \
175
frvbf_h_gr_hi_set_handler (current_cpu, (index), (x));\
176
;} while (0)
177
#define GET_H_GR_LO(index) frvbf_h_gr_lo_get_handler (current_cpu, index)
178
#define SET_H_GR_LO(index, x) \
179
do { \
180
frvbf_h_gr_lo_set_handler (current_cpu, (index), (x));\
181
;} while (0)
182
#define GET_H_FR_DOUBLE(index) frvbf_h_fr_double_get_handler (current_cpu, index)
183
#define SET_H_FR_DOUBLE(index, x) \
184
do { \
185
frvbf_h_fr_double_set_handler (current_cpu, (index), (x));\
186
;} while (0)
187
#define GET_H_FR_INT(index) frvbf_h_fr_int_get_handler (current_cpu, index)
188
#define SET_H_FR_INT(index, x) \
189
do { \
190
frvbf_h_fr_int_set_handler (current_cpu, (index), (x));\
191
;} while (0)
192
#define GET_H_FR_HI(index) SRLSI (GET_H_FR_INT (index), 16)
193
#define SET_H_FR_HI(index, x) \
194
do { \
195
SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 65535), SLLHI ((x), 16)));\
196
;} while (0)
197
#define GET_H_FR_LO(index) ANDSI (GET_H_FR_INT (index), 65535)
198
#define SET_H_FR_LO(index, x) \
199
do { \
200
SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffff0000), ANDHI ((x), 65535)));\
201
;} while (0)
202
#define GET_H_FR_0(index) ANDSI (GET_H_FR_INT (index), 255)
203
#define SET_H_FR_0(index, x) \
204
do { \
205
{\
206
if (GTUSI ((x), 255)) {\
207
  (x) = 255;\
208
}\
209
SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffffff00), (x)));\
210
}\
211
;} while (0)
212
#define GET_H_FR_1(index) ANDSI (SRLSI (GET_H_FR_INT (index), 8), 255)
213
#define SET_H_FR_1(index, x) \
214
do { \
215
{\
216
if (GTUSI ((x), 255)) {\
217
  (x) = 255;\
218
}\
219
SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xffff00ff), SLLHI ((x), 8)));\
220
}\
221
;} while (0)
222
#define GET_H_FR_2(index) ANDSI (SRLSI (GET_H_FR_INT (index), 16), 255)
223
#define SET_H_FR_2(index, x) \
224
do { \
225
{\
226
if (GTUSI ((x), 255)) {\
227
  (x) = 255;\
228
}\
229
SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 0xff00ffff), SLLHI ((x), 16)));\
230
}\
231
;} while (0)
232
#define GET_H_FR_3(index) ANDSI (SRLSI (GET_H_FR_INT (index), 24), 255)
233
#define SET_H_FR_3(index, x) \
234
do { \
235
{\
236
if (GTUSI ((x), 255)) {\
237
  (x) = 255;\
238
}\
239
SET_H_FR_INT ((index), ORSI (ANDSI (GET_H_FR_INT ((index)), 16777215), SLLHI ((x), 24)));\
240
}\
241
;} while (0)
242
#define GET_H_CPR_DOUBLE(index) frvbf_h_cpr_double_get_handler (current_cpu, index)
243
#define SET_H_CPR_DOUBLE(index, x) \
244
do { \
245
frvbf_h_cpr_double_set_handler (current_cpu, (index), (x));\
246
;} while (0)
247
#define GET_H_ACCG(index) ANDSI (GET_H_SPR (((index) + (1472))), 255)
248
#define SET_H_ACCG(index, x) \
249
do { \
250
CPU (h_spr[(((index)) + (1472))]) = ANDSI ((x), 255);\
251
;} while (0)
252
#define GET_H_ACC40S(index) ORDI (SLLDI (EXTQIDI (TRUNCSIQI (GET_H_SPR (((index) + (1472))))), 32), ZEXTSIDI (GET_H_SPR (((index) + (1408)))))
253
#define SET_H_ACC40S(index, x) \
254
do { \
255
{\
256
frv_check_spr_write_access (current_cpu, (((index)) + (1408)));\
257
CPU (h_spr[(((index)) + (1472))]) = ANDDI (SRLDI ((x), 32), 255);\
258
CPU (h_spr[(((index)) + (1408))]) = TRUNCDISI ((x));\
259
}\
260
;} while (0)
261
#define GET_H_ACC40U(index) ORDI (SLLDI (ZEXTSIDI (GET_H_SPR (((index) + (1472)))), 32), ZEXTSIDI (GET_H_SPR (((index) + (1408)))))
262
#define SET_H_ACC40U(index, x) \
263
do { \
264
{\
265
frv_check_spr_write_access (current_cpu, (((index)) + (1408)));\
266
CPU (h_spr[(((index)) + (1472))]) = ANDDI (SRLDI ((x), 32), 255);\
267
CPU (h_spr[(((index)) + (1408))]) = TRUNCDISI ((x));\
268
}\
269
;} while (0)
270
#define GET_H_IACC0(index) ORDI (SLLDI (EXTSIDI (GET_H_SPR (((UINT) 280))), 32), ZEXTSIDI (GET_H_SPR (((UINT) 281))))
271
#define SET_H_IACC0(index, x) \
272
do { \
273
{\
274
SET_H_SPR (((UINT) 280), TRUNCDISI (SRLDI ((x), 32)));\
275
SET_H_SPR (((UINT) 281), TRUNCDISI ((x)));\
276
}\
277
;} while (0)
278
 
279
/* Cover fns for register access.  */
280
BI frvbf_h_reloc_ann_get (SIM_CPU *);
281
void frvbf_h_reloc_ann_set (SIM_CPU *, BI);
282
USI frvbf_h_pc_get (SIM_CPU *);
283
void frvbf_h_pc_set (SIM_CPU *, USI);
284
UQI frvbf_h_psr_imple_get (SIM_CPU *);
285
void frvbf_h_psr_imple_set (SIM_CPU *, UQI);
286
UQI frvbf_h_psr_ver_get (SIM_CPU *);
287
void frvbf_h_psr_ver_set (SIM_CPU *, UQI);
288
BI frvbf_h_psr_ice_get (SIM_CPU *);
289
void frvbf_h_psr_ice_set (SIM_CPU *, BI);
290
BI frvbf_h_psr_nem_get (SIM_CPU *);
291
void frvbf_h_psr_nem_set (SIM_CPU *, BI);
292
BI frvbf_h_psr_cm_get (SIM_CPU *);
293
void frvbf_h_psr_cm_set (SIM_CPU *, BI);
294
BI frvbf_h_psr_be_get (SIM_CPU *);
295
void frvbf_h_psr_be_set (SIM_CPU *, BI);
296
BI frvbf_h_psr_esr_get (SIM_CPU *);
297
void frvbf_h_psr_esr_set (SIM_CPU *, BI);
298
BI frvbf_h_psr_ef_get (SIM_CPU *);
299
void frvbf_h_psr_ef_set (SIM_CPU *, BI);
300
BI frvbf_h_psr_em_get (SIM_CPU *);
301
void frvbf_h_psr_em_set (SIM_CPU *, BI);
302
UQI frvbf_h_psr_pil_get (SIM_CPU *);
303
void frvbf_h_psr_pil_set (SIM_CPU *, UQI);
304
BI frvbf_h_psr_ps_get (SIM_CPU *);
305
void frvbf_h_psr_ps_set (SIM_CPU *, BI);
306
BI frvbf_h_psr_et_get (SIM_CPU *);
307
void frvbf_h_psr_et_set (SIM_CPU *, BI);
308
BI frvbf_h_psr_s_get (SIM_CPU *);
309
void frvbf_h_psr_s_set (SIM_CPU *, BI);
310
USI frvbf_h_tbr_tba_get (SIM_CPU *);
311
void frvbf_h_tbr_tba_set (SIM_CPU *, USI);
312
UQI frvbf_h_tbr_tt_get (SIM_CPU *);
313
void frvbf_h_tbr_tt_set (SIM_CPU *, UQI);
314
BI frvbf_h_bpsr_bs_get (SIM_CPU *);
315
void frvbf_h_bpsr_bs_set (SIM_CPU *, BI);
316
BI frvbf_h_bpsr_bet_get (SIM_CPU *);
317
void frvbf_h_bpsr_bet_set (SIM_CPU *, BI);
318
USI frvbf_h_gr_get (SIM_CPU *, UINT);
319
void frvbf_h_gr_set (SIM_CPU *, UINT, USI);
320
DI frvbf_h_gr_double_get (SIM_CPU *, UINT);
321
void frvbf_h_gr_double_set (SIM_CPU *, UINT, DI);
322
UHI frvbf_h_gr_hi_get (SIM_CPU *, UINT);
323
void frvbf_h_gr_hi_set (SIM_CPU *, UINT, UHI);
324
UHI frvbf_h_gr_lo_get (SIM_CPU *, UINT);
325
void frvbf_h_gr_lo_set (SIM_CPU *, UINT, UHI);
326
SF frvbf_h_fr_get (SIM_CPU *, UINT);
327
void frvbf_h_fr_set (SIM_CPU *, UINT, SF);
328
DF frvbf_h_fr_double_get (SIM_CPU *, UINT);
329
void frvbf_h_fr_double_set (SIM_CPU *, UINT, DF);
330
USI frvbf_h_fr_int_get (SIM_CPU *, UINT);
331
void frvbf_h_fr_int_set (SIM_CPU *, UINT, USI);
332
UHI frvbf_h_fr_hi_get (SIM_CPU *, UINT);
333
void frvbf_h_fr_hi_set (SIM_CPU *, UINT, UHI);
334
UHI frvbf_h_fr_lo_get (SIM_CPU *, UINT);
335
void frvbf_h_fr_lo_set (SIM_CPU *, UINT, UHI);
336
UHI frvbf_h_fr_0_get (SIM_CPU *, UINT);
337
void frvbf_h_fr_0_set (SIM_CPU *, UINT, UHI);
338
UHI frvbf_h_fr_1_get (SIM_CPU *, UINT);
339
void frvbf_h_fr_1_set (SIM_CPU *, UINT, UHI);
340
UHI frvbf_h_fr_2_get (SIM_CPU *, UINT);
341
void frvbf_h_fr_2_set (SIM_CPU *, UINT, UHI);
342
UHI frvbf_h_fr_3_get (SIM_CPU *, UINT);
343
void frvbf_h_fr_3_set (SIM_CPU *, UINT, UHI);
344
SI frvbf_h_cpr_get (SIM_CPU *, UINT);
345
void frvbf_h_cpr_set (SIM_CPU *, UINT, SI);
346
DI frvbf_h_cpr_double_get (SIM_CPU *, UINT);
347
void frvbf_h_cpr_double_set (SIM_CPU *, UINT, DI);
348
USI frvbf_h_spr_get (SIM_CPU *, UINT);
349
void frvbf_h_spr_set (SIM_CPU *, UINT, USI);
350
USI frvbf_h_accg_get (SIM_CPU *, UINT);
351
void frvbf_h_accg_set (SIM_CPU *, UINT, USI);
352
DI frvbf_h_acc40S_get (SIM_CPU *, UINT);
353
void frvbf_h_acc40S_set (SIM_CPU *, UINT, DI);
354
UDI frvbf_h_acc40U_get (SIM_CPU *, UINT);
355
void frvbf_h_acc40U_set (SIM_CPU *, UINT, UDI);
356
DI frvbf_h_iacc0_get (SIM_CPU *, UINT);
357
void frvbf_h_iacc0_set (SIM_CPU *, UINT, DI);
358
UQI frvbf_h_iccr_get (SIM_CPU *, UINT);
359
void frvbf_h_iccr_set (SIM_CPU *, UINT, UQI);
360
UQI frvbf_h_fccr_get (SIM_CPU *, UINT);
361
void frvbf_h_fccr_set (SIM_CPU *, UINT, UQI);
362
UQI frvbf_h_cccr_get (SIM_CPU *, UINT);
363
void frvbf_h_cccr_set (SIM_CPU *, UINT, UQI);
364
 
365
/* These must be hand-written.  */
366
extern CPUREG_FETCH_FN frvbf_fetch_register;
367
extern CPUREG_STORE_FN frvbf_store_register;
368
 
369
typedef struct {
370
  int empty;
371
} MODEL_FRV_DATA;
372
 
373
typedef struct {
374
  DI prev_fr_load;
375
  DI prev_fr_complex_1;
376
  DI prev_fr_complex_2;
377
  DI prev_ccr_complex;
378
  DI prev_acc_mmac;
379
  DI cur_fr_load;
380
  DI cur_fr_complex_1;
381
  DI cur_fr_complex_2;
382
  SI cur_ccr_complex;
383
  DI cur_acc_mmac;
384
} MODEL_FR550_DATA;
385
 
386
typedef struct {
387
  DI prev_fpop;
388
  DI prev_media;
389
  DI prev_cc_complex;
390
  DI cur_fpop;
391
  DI cur_media;
392
  DI cur_cc_complex;
393
} MODEL_FR500_DATA;
394
 
395
typedef struct {
396
  int empty;
397
} MODEL_TOMCAT_DATA;
398
 
399
typedef struct {
400
  DI prev_fp_load;
401
  DI prev_fr_p4;
402
  DI prev_fr_p6;
403
  DI prev_acc_p2;
404
  DI prev_acc_p4;
405
  DI cur_fp_load;
406
  DI cur_fr_p4;
407
  DI cur_fr_p6;
408
  DI cur_acc_p2;
409
  DI cur_acc_p4;
410
} MODEL_FR400_DATA;
411
 
412
typedef struct {
413
  DI prev_fp_load;
414
  DI prev_fr_p4;
415
  DI prev_fr_p6;
416
  DI prev_acc_p2;
417
  DI prev_acc_p4;
418
  DI cur_fp_load;
419
  DI cur_fr_p4;
420
  DI cur_fr_p6;
421
  DI cur_acc_p2;
422
  DI cur_acc_p4;
423
} MODEL_FR450_DATA;
424
 
425
typedef struct {
426
  int empty;
427
} MODEL_SIMPLE_DATA;
428
 
429
/* Instruction argument buffer.  */
430
 
431
union sem_fields {
432
  struct { /* no operands */
433
    int empty;
434
  } sfmt_empty;
435
  struct { /*  */
436
    unsigned short out_h_spr_USI_2;
437
  } sfmt_break;
438
  struct { /*  */
439
    UINT f_debug;
440
  } sfmt_rett;
441
  struct { /*  */
442
    IADDR i_label24;
443
  } sfmt_call;
444
  struct { /*  */
445
    INT f_u12;
446
    UINT f_FRk;
447
    unsigned char out_FRkhi;
448
  } sfmt_mhsethis;
449
  struct { /*  */
450
    INT f_u12;
451
    UINT f_FRk;
452
    unsigned char out_FRklo;
453
  } sfmt_mhsetlos;
454
  struct { /*  */
455
    INT f_s16;
456
    UINT f_GRk;
457
    unsigned char out_GRk;
458
  } sfmt_setlos;
459
  struct { /*  */
460
    UINT f_GRk;
461
    UINT f_u16;
462
    unsigned char out_GRkhi;
463
  } sfmt_sethi;
464
  struct { /*  */
465
    UINT f_GRk;
466
    UINT f_u16;
467
    unsigned char out_GRklo;
468
  } sfmt_setlo;
469
  struct { /*  */
470
    UINT f_ACCGi;
471
    UINT f_FRk;
472
    unsigned char in_ACCGi;
473
    unsigned char out_FRintk;
474
  } sfmt_mrdaccg;
475
  struct { /*  */
476
    INT f_s5;
477
    UINT f_FRk;
478
    unsigned char in_FRkhi;
479
    unsigned char out_FRkhi;
480
  } sfmt_mhsethih;
481
  struct { /*  */
482
    INT f_s5;
483
    UINT f_FRk;
484
    unsigned char in_FRklo;
485
    unsigned char out_FRklo;
486
  } sfmt_mhsetloh;
487
  struct { /*  */
488
    UINT f_FRj;
489
    UINT f_FRk;
490
    unsigned char in_FRdoublej;
491
    unsigned char out_FRintk;
492
  } sfmt_fdtoi;
493
  struct { /*  */
494
    UINT f_FRj;
495
    UINT f_FRk;
496
    unsigned char in_FRintj;
497
    unsigned char out_FRdoublek;
498
  } sfmt_fitod;
499
  struct { /*  */
500
    INT f_d12;
501
    UINT f_GRi;
502
    UINT f_LI;
503
    unsigned char in_GRi;
504
  } sfmt_jmpil;
505
  struct { /*  */
506
    IADDR i_label16;
507
    UINT f_FCCi_2;
508
    UINT f_hint;
509
    unsigned char in_FCCi_2;
510
  } sfmt_fbne;
511
  struct { /*  */
512
    IADDR i_label16;
513
    UINT f_ICCi_2;
514
    UINT f_hint;
515
    unsigned char in_ICCi_2;
516
  } sfmt_beq;
517
  struct { /*  */
518
    UINT f_GRj;
519
    UINT f_spr;
520
    unsigned short in_spr;
521
    unsigned char out_GRj;
522
  } sfmt_movsg;
523
  struct { /*  */
524
    UINT f_GRj;
525
    UINT f_spr;
526
    unsigned short out_spr;
527
    unsigned char in_GRj;
528
  } sfmt_movgs;
529
  struct { /*  */
530
    UINT f_ACCGk;
531
    UINT f_FRi;
532
    unsigned char in_ACCGk;
533
    unsigned char in_FRinti;
534
    unsigned char out_ACCGk;
535
  } sfmt_mwtaccg;
536
  struct { /*  */
537
    INT f_s6;
538
    UINT f_ACC40Si;
539
    UINT f_FRk;
540
    unsigned char in_ACC40Si;
541
    unsigned char out_FRintk;
542
  } sfmt_mcuti;
543
  struct { /*  */
544
    UINT f_GRi;
545
    UINT f_GRj;
546
    UINT f_lock;
547
    unsigned char in_GRi;
548
    unsigned char in_GRj;
549
  } sfmt_icpl;
550
  struct { /*  */
551
    UINT f_GRi;
552
    UINT f_GRj;
553
    UINT f_ae;
554
    unsigned char in_GRi;
555
    unsigned char in_GRj;
556
  } sfmt_icei;
557
  struct { /*  */
558
    INT f_d12;
559
    UINT f_FRk;
560
    UINT f_GRi;
561
    unsigned char in_FRdoublek;
562
    unsigned char in_GRi;
563
  } sfmt_stdfi;
564
  struct { /*  */
565
    INT f_d12;
566
    UINT f_GRi;
567
    UINT f_GRk;
568
    unsigned char in_GRdoublek;
569
    unsigned char in_GRi;
570
  } sfmt_stdi;
571
  struct { /*  */
572
    INT f_d12;
573
    UINT f_FRk;
574
    UINT f_GRi;
575
    unsigned char in_FRintk;
576
    unsigned char in_GRi;
577
  } sfmt_stbfi;
578
  struct { /*  */
579
    INT f_d12;
580
    UINT f_FRk;
581
    UINT f_GRi;
582
    unsigned char in_GRi;
583
    unsigned char out_FRdoublek;
584
  } sfmt_lddfi;
585
  struct { /*  */
586
    INT f_d12;
587
    UINT f_FRk;
588
    UINT f_GRi;
589
    unsigned char in_GRi;
590
    unsigned char out_FRintk;
591
  } sfmt_ldbfi;
592
  struct { /*  */
593
    INT f_d12;
594
    UINT f_GRi;
595
    UINT f_GRk;
596
    unsigned char in_GRi;
597
    unsigned char out_GRdoublek;
598
  } sfmt_smuli;
599
  struct { /*  */
600
    UINT f_GRj;
601
    UINT f_GRk;
602
    unsigned char in_GRj;
603
    unsigned char in_h_iacc0_DI_0;
604
    unsigned char out_GRk;
605
  } sfmt_scutss;
606
  struct { /*  */
607
    UINT f_ACC40Si;
608
    UINT f_FRj;
609
    UINT f_FRk;
610
    unsigned char in_ACC40Si;
611
    unsigned char in_FRintj;
612
    unsigned char out_FRintk;
613
  } sfmt_mcut;
614
  struct { /*  */
615
    UINT f_FRi;
616
    UINT f_FRk;
617
    UINT f_u6;
618
    unsigned char in_FRinti;
619
    unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRinti_1;
620
    unsigned char out_FRintk;
621
  } sfmt_mwcuti;
622
  struct { /*  */
623
    INT f_u12;
624
    UINT f_FRk;
625
    unsigned char in_FRintk;
626
    unsigned char out_FRintk;
627
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
628
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
629
  } sfmt_mhdsets;
630
  struct { /*  */
631
    UINT f_FCCi_2;
632
    UINT f_FRi;
633
    UINT f_FRj;
634
    unsigned char in_FRdoublei;
635
    unsigned char in_FRdoublej;
636
    unsigned char out_FCCi_2;
637
  } sfmt_fcmpd;
638
  struct { /*  */
639
    UINT f_FRj;
640
    UINT f_FRk;
641
    unsigned char in_FRj;
642
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_1;
643
    unsigned char out_FRintk;
644
    unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintk_1;
645
  } sfmt_fdstoi;
646
  struct { /*  */
647
    UINT f_FRj;
648
    UINT f_FRk;
649
    unsigned char in_FRintj;
650
    unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintj_1;
651
    unsigned char out_FRk;
652
    unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_1;
653
  } sfmt_fditos;
654
  struct { /*  */
655
    UINT f_CRi;
656
    UINT f_CRj;
657
    UINT f_CRk;
658
    unsigned char in_CRi;
659
    unsigned char in_CRj;
660
    unsigned char out_CRk;
661
  } sfmt_andcr;
662
  struct { /*  */
663
    INT f_d12;
664
    UINT f_GRi;
665
    UINT f_GRk;
666
    unsigned char in_GRi;
667
    unsigned char in_GRk;
668
    unsigned char out_GRk;
669
  } sfmt_swapi;
670
  struct { /*  */
671
    UINT f_GRi;
672
    UINT f_GRj;
673
    unsigned char in_GRi;
674
    unsigned char in_GRj;
675
    unsigned char in_h_iacc0_DI_0;
676
    unsigned char out_h_iacc0_DI_0;
677
  } sfmt_smass;
678
  struct { /*  */
679
    INT f_s6;
680
    UINT f_FRi;
681
    UINT f_FRk;
682
    unsigned char in_FRintieven;
683
    unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintieven_1;
684
    unsigned char out_FRintkeven;
685
    unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintkeven_1;
686
  } sfmt_mdrotli;
687
  struct { /*  */
688
    INT f_s6;
689
    UINT f_ACC40Si;
690
    UINT f_FRk;
691
    unsigned char in_ACC40Si;
692
    unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_1;
693
    unsigned char out_FRintkeven;
694
    unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintkeven_1;
695
  } sfmt_mdcutssi;
696
  struct { /*  */
697
    UINT f_FRi;
698
    UINT f_FRj;
699
    UINT f_FRk;
700
    unsigned char in_FRinti;
701
    unsigned char in_FRintj;
702
    unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRinti_1;
703
    unsigned char out_FRintk;
704
  } sfmt_mwcut;
705
  struct { /*  */
706
    UINT f_FRi;
707
    UINT f_FRj;
708
    UINT f_FRk;
709
    unsigned char in_FRdoublei;
710
    unsigned char in_FRdoublej;
711
    unsigned char in_FRdoublek;
712
    unsigned char out_FRdoublek;
713
  } sfmt_fmaddd;
714
  struct { /*  */
715
    UINT f_CCi;
716
    UINT f_FRj;
717
    UINT f_FRk;
718
    UINT f_cond;
719
    unsigned char in_CCi;
720
    unsigned char in_FRj;
721
    unsigned char out_FRintk;
722
  } sfmt_cfstoi;
723
  struct { /*  */
724
    UINT f_CCi;
725
    UINT f_FRj;
726
    UINT f_FRk;
727
    UINT f_cond;
728
    unsigned char in_CCi;
729
    unsigned char in_FRintj;
730
    unsigned char out_FRk;
731
  } sfmt_cfitos;
732
  struct { /*  */
733
    UINT f_CCi;
734
    UINT f_CRj_float;
735
    UINT f_FCCi_3;
736
    UINT f_cond;
737
    unsigned char in_CCi;
738
    unsigned char in_FCCi_3;
739
    unsigned char out_CRj_float;
740
  } sfmt_cfckne;
741
  struct { /*  */
742
    SI f_CRj_int;
743
    UINT f_CCi;
744
    UINT f_ICCi_3;
745
    UINT f_cond;
746
    unsigned char in_CCi;
747
    unsigned char in_ICCi_3;
748
    unsigned char out_CRj_int;
749
  } sfmt_cckeq;
750
  struct { /*  */
751
    UINT f_FCCi_2;
752
    UINT f_ccond;
753
    UINT f_hint;
754
    unsigned short in_h_spr_USI_272;
755
    unsigned short in_h_spr_USI_273;
756
    unsigned short out_h_spr_USI_273;
757
    unsigned char in_FCCi_2;
758
  } sfmt_fcbeqlr;
759
  struct { /*  */
760
    UINT f_ICCi_2;
761
    UINT f_ccond;
762
    UINT f_hint;
763
    unsigned short in_h_spr_USI_272;
764
    unsigned short in_h_spr_USI_273;
765
    unsigned short out_h_spr_USI_273;
766
    unsigned char in_ICCi_2;
767
  } sfmt_bceqlr;
768
  struct { /*  */
769
    UINT f_CPRk;
770
    UINT f_GRi;
771
    UINT f_GRj;
772
    unsigned char in_CPRdoublek;
773
    unsigned char in_GRi;
774
    unsigned char in_GRj;
775
    unsigned char out_GRi;
776
  } sfmt_stdcu;
777
  struct { /*  */
778
    UINT f_CPRk;
779
    UINT f_GRi;
780
    UINT f_GRj;
781
    unsigned char in_CPRk;
782
    unsigned char in_GRi;
783
    unsigned char in_GRj;
784
    unsigned char out_GRi;
785
  } sfmt_stcu;
786
  struct { /*  */
787
    UINT f_CPRk;
788
    UINT f_GRi;
789
    UINT f_GRj;
790
    unsigned char in_GRi;
791
    unsigned char in_GRj;
792
    unsigned char out_CPRdoublek;
793
    unsigned char out_GRi;
794
  } sfmt_lddcu;
795
  struct { /*  */
796
    UINT f_CPRk;
797
    UINT f_GRi;
798
    UINT f_GRj;
799
    unsigned char in_GRi;
800
    unsigned char in_GRj;
801
    unsigned char out_CPRk;
802
    unsigned char out_GRi;
803
  } sfmt_ldcu;
804
  struct { /*  */
805
    INT f_s5;
806
    UINT f_FRk;
807
    unsigned char in_FRintk;
808
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
809
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
810
    unsigned char out_FRintk;
811
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
812
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
813
  } sfmt_mhdseth;
814
  struct { /*  */
815
    UINT f_CCi;
816
    UINT f_GRi;
817
    UINT f_GRj;
818
    UINT f_LI;
819
    UINT f_cond;
820
    unsigned char in_CCi;
821
    unsigned char in_GRi;
822
    unsigned char in_GRj;
823
  } sfmt_cjmpl;
824
  struct { /*  */
825
    INT f_s10;
826
    UINT f_GRi;
827
    UINT f_GRk;
828
    UINT f_ICCi_1;
829
    unsigned char in_GRi;
830
    unsigned char in_ICCi_1;
831
    unsigned char out_GRdoublek;
832
    unsigned char out_ICCi_1;
833
  } sfmt_smulicc;
834
  struct { /*  */
835
    INT f_s10;
836
    UINT f_GRi;
837
    UINT f_GRk;
838
    UINT f_ICCi_1;
839
    unsigned char in_GRi;
840
    unsigned char in_ICCi_1;
841
    unsigned char out_GRk;
842
    unsigned char out_ICCi_1;
843
  } sfmt_addicc;
844
  struct { /*  */
845
    UINT f_CCi;
846
    UINT f_FRi;
847
    UINT f_FRj;
848
    UINT f_FRk;
849
    UINT f_cond;
850
    unsigned char in_CCi;
851
    unsigned char in_FRinti;
852
    unsigned char in_FRintj;
853
    unsigned char out_FRintk;
854
  } sfmt_cmand;
855
  struct { /*  */
856
    UINT f_CCi;
857
    UINT f_FCCi_2;
858
    UINT f_FRi;
859
    UINT f_FRj;
860
    UINT f_cond;
861
    unsigned char in_CCi;
862
    unsigned char in_FRi;
863
    unsigned char in_FRj;
864
    unsigned char out_FCCi_2;
865
  } sfmt_cfcmps;
866
  struct { /*  */
867
    UINT f_CCi;
868
    UINT f_FRk;
869
    UINT f_GRj;
870
    UINT f_cond;
871
    unsigned char in_CCi;
872
    unsigned char in_FRintk;
873
    unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintk_1;
874
    unsigned char out_GRj;
875
    unsigned char out_h_gr_USI_add__INT_index_of__INT_GRj_1;
876
  } sfmt_cmovfgd;
877
  struct { /*  */
878
    UINT f_CCi;
879
    UINT f_FRk;
880
    UINT f_GRj;
881
    UINT f_cond;
882
    unsigned char in_CCi;
883
    unsigned char in_GRj;
884
    unsigned char in_h_gr_USI_add__INT_index_of__INT_GRj_1;
885
    unsigned char out_FRintk;
886
    unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintk_1;
887
  } sfmt_cmovgfd;
888
  struct { /*  */
889
    UINT f_GRi;
890
    UINT f_GRj;
891
    UINT f_GRk;
892
    UINT f_ICCi_1;
893
    unsigned char in_GRi;
894
    unsigned char in_GRj;
895
    unsigned char in_ICCi_1;
896
    unsigned char out_GRdoublek;
897
    unsigned char out_ICCi_1;
898
  } sfmt_smulcc;
899
  struct { /*  */
900
    UINT f_GRi;
901
    UINT f_GRj;
902
    UINT f_GRk;
903
    UINT f_ICCi_1;
904
    unsigned char in_GRi;
905
    unsigned char in_GRj;
906
    unsigned char in_ICCi_1;
907
    unsigned char out_GRk;
908
    unsigned char out_ICCi_1;
909
  } sfmt_addcc;
910
  struct { /*  */
911
    UINT f_CCi;
912
    UINT f_FRi;
913
    UINT f_FRk;
914
    UINT f_cond;
915
    UINT f_u6;
916
    unsigned char in_CCi;
917
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
918
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
919
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
920
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
921
  } sfmt_cmexpdhw;
922
  struct { /*  */
923
    UINT f_ACC40Si;
924
    UINT f_ACC40Sk;
925
    unsigned char in_ACC40Si;
926
    unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_1;
927
    unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_2;
928
    unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_3;
929
    unsigned char out_ACC40Sk;
930
    unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1;
931
    unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2;
932
    unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3;
933
  } sfmt_mdasaccs;
934
  struct { /*  */
935
    UINT f_FRj;
936
    UINT f_FRk;
937
    unsigned char in_FRintj;
938
    unsigned char in_FRintk;
939
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0;
940
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0;
941
    unsigned char out_FRintj;
942
    unsigned char out_FRintk;
943
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
944
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
945
  } sfmt_mabshs;
946
  struct { /*  */
947
    UINT f_FRi;
948
    UINT f_FRk;
949
    UINT f_u6;
950
    unsigned char in_FRinti;
951
    unsigned char in_FRintk;
952
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
953
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_1;
954
    unsigned char out_FRinti;
955
    unsigned char out_FRintk;
956
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
957
  } sfmt_mcplhi;
958
  struct { /*  */
959
    UINT f_FCCi_2;
960
    UINT f_FRi;
961
    UINT f_FRj;
962
    UINT f_FRk;
963
    unsigned char in_FRi;
964
    unsigned char in_FRj;
965
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_1;
966
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_1;
967
    unsigned char out_FCCi_2;
968
    unsigned char out_h_fccr_UQI_add__INT_index_of__INT_FCCi_2_1;
969
  } sfmt_nfdcmps;
970
  struct { /*  */
971
    UINT f_CCi;
972
    UINT f_FRi;
973
    UINT f_FRj;
974
    UINT f_FRk;
975
    UINT f_cond;
976
    unsigned char in_CCi;
977
    unsigned char in_FRi;
978
    unsigned char in_FRj;
979
    unsigned char in_FRk;
980
    unsigned char out_FRk;
981
  } sfmt_cfmadds;
982
  struct { /*  */
983
    INT f_d12;
984
    UINT f_FCCi_2;
985
    UINT f_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_FCCi_2;
992
    unsigned char in_GRi;
993
  } sfmt_ftine;
994
  struct { /*  */
995
    INT f_d12;
996
    UINT f_GRi;
997
    UINT f_ICCi_2;
998
    unsigned short out_h_spr_USI_1;
999
    unsigned short out_h_spr_USI_768;
1000
    unsigned short out_h_spr_USI_769;
1001
    unsigned short out_h_spr_USI_770;
1002
    unsigned short out_h_spr_USI_771;
1003
    unsigned char in_GRi;
1004
    unsigned char in_ICCi_2;
1005
  } sfmt_tieq;
1006
  struct { /*  */
1007
    UINT f_FRk;
1008
    UINT f_GRj;
1009
    unsigned char in_FRintk;
1010
    unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintk_1;
1011
    unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintk_2;
1012
    unsigned char in_h_fr_int_USI_add__INT_index_of__INT_FRintk_3;
1013
    unsigned char out_GRj;
1014
    unsigned char out_h_gr_USI_add__INT_index_of__INT_GRj_1;
1015
    unsigned char out_h_gr_USI_add__INT_index_of__INT_GRj_2;
1016
    unsigned char out_h_gr_USI_add__INT_index_of__INT_GRj_3;
1017
  } sfmt_movfgq;
1018
  struct { /*  */
1019
    UINT f_FRk;
1020
    UINT f_GRj;
1021
    unsigned char in_GRj;
1022
    unsigned char in_h_gr_USI_add__INT_index_of__INT_GRj_1;
1023
    unsigned char in_h_gr_USI_add__INT_index_of__INT_GRj_2;
1024
    unsigned char in_h_gr_USI_add__INT_index_of__INT_GRj_3;
1025
    unsigned char out_FRintk;
1026
    unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintk_1;
1027
    unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintk_2;
1028
    unsigned char out_h_fr_int_USI_add__INT_index_of__INT_FRintk_3;
1029
  } sfmt_movgfq;
1030
  struct { /*  */
1031
    UINT f_CCi;
1032
    UINT f_GRi;
1033
    UINT f_GRj;
1034
    UINT f_GRk;
1035
    UINT f_cond;
1036
    unsigned char in_CCi;
1037
    unsigned char in_GRi;
1038
    unsigned char in_GRj;
1039
    unsigned char in_GRk;
1040
    unsigned char out_GRk;
1041
  } sfmt_cswap;
1042
  struct { /*  */
1043
    UINT f_CCi;
1044
    UINT f_FRk;
1045
    UINT f_GRi;
1046
    UINT f_GRj;
1047
    UINT f_cond;
1048
    unsigned char in_CCi;
1049
    unsigned char in_FRdoublek;
1050
    unsigned char in_GRi;
1051
    unsigned char in_GRj;
1052
    unsigned char out_GRi;
1053
  } sfmt_cstdfu;
1054
  struct { /*  */
1055
    UINT f_CCi;
1056
    UINT f_GRi;
1057
    UINT f_GRj;
1058
    UINT f_GRk;
1059
    UINT f_cond;
1060
    unsigned char in_CCi;
1061
    unsigned char in_GRdoublek;
1062
    unsigned char in_GRi;
1063
    unsigned char in_GRj;
1064
    unsigned char out_GRi;
1065
  } sfmt_cstdu;
1066
  struct { /*  */
1067
    UINT f_CCi;
1068
    UINT f_FRk;
1069
    UINT f_GRi;
1070
    UINT f_GRj;
1071
    UINT f_cond;
1072
    unsigned char in_CCi;
1073
    unsigned char in_FRintk;
1074
    unsigned char in_GRi;
1075
    unsigned char in_GRj;
1076
    unsigned char out_GRi;
1077
  } sfmt_cstbfu;
1078
  struct { /*  */
1079
    UINT f_CCi;
1080
    UINT f_GRi;
1081
    UINT f_GRj;
1082
    UINT f_GRk;
1083
    UINT f_cond;
1084
    unsigned char in_CCi;
1085
    unsigned char in_GRi;
1086
    unsigned char in_GRj;
1087
    unsigned char in_GRk;
1088
    unsigned char out_GRi;
1089
  } sfmt_cstbu;
1090
  struct { /*  */
1091
    UINT f_CCi;
1092
    UINT f_FRk;
1093
    UINT f_GRi;
1094
    UINT f_GRj;
1095
    UINT f_cond;
1096
    unsigned char in_CCi;
1097
    unsigned char in_GRi;
1098
    unsigned char in_GRj;
1099
    unsigned char out_FRdoublek;
1100
    unsigned char out_GRi;
1101
  } sfmt_clddfu;
1102
  struct { /*  */
1103
    UINT f_CCi;
1104
    UINT f_GRi;
1105
    UINT f_GRj;
1106
    UINT f_GRk;
1107
    UINT f_cond;
1108
    unsigned char in_CCi;
1109
    unsigned char in_GRi;
1110
    unsigned char in_GRj;
1111
    unsigned char out_GRdoublek;
1112
    unsigned char out_GRi;
1113
  } sfmt_clddu;
1114
  struct { /*  */
1115
    UINT f_CCi;
1116
    UINT f_FRk;
1117
    UINT f_GRi;
1118
    UINT f_GRj;
1119
    UINT f_cond;
1120
    unsigned char in_CCi;
1121
    unsigned char in_GRi;
1122
    unsigned char in_GRj;
1123
    unsigned char out_FRintk;
1124
    unsigned char out_GRi;
1125
  } sfmt_cldbfu;
1126
  struct { /*  */
1127
    UINT f_CCi;
1128
    UINT f_GRi;
1129
    UINT f_GRj;
1130
    UINT f_GRk;
1131
    UINT f_cond;
1132
    unsigned char in_CCi;
1133
    unsigned char in_GRi;
1134
    unsigned char in_GRj;
1135
    unsigned char out_GRi;
1136
    unsigned char out_GRk;
1137
  } sfmt_cldsbu;
1138
  struct { /*  */
1139
    UINT f_FCCk;
1140
    UINT f_FRi;
1141
    UINT f_FRj;
1142
    unsigned char in_FRinti;
1143
    unsigned char in_FRintj;
1144
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1145
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0;
1146
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1147
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0;
1148
    unsigned char out_FCCk;
1149
    unsigned char out_h_fccr_UQI_add__INT_index_of__INT_FCCk_1;
1150
  } sfmt_mcmpsh;
1151
  struct { /*  */
1152
    UINT f_FRi;
1153
    UINT f_FRk;
1154
    UINT f_u6;
1155
    unsigned char in_FRinti;
1156
    unsigned char in_FRintk;
1157
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1158
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1159
    unsigned char out_FRinti;
1160
    unsigned char out_FRintk;
1161
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
1162
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
1163
  } sfmt_msllhi;
1164
  struct { /*  */
1165
    UINT f_FRi;
1166
    UINT f_FRj;
1167
    UINT f_FRk;
1168
    unsigned char in_FRi;
1169
    unsigned char in_FRj;
1170
    unsigned char in_FRk;
1171
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_1;
1172
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_1;
1173
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRk_1;
1174
    unsigned char out_FRk;
1175
    unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_1;
1176
  } sfmt_fdmadds;
1177
  struct { /*  */
1178
    UINT f_FCCi_2;
1179
    UINT f_GRi;
1180
    UINT f_GRj;
1181
    unsigned short out_h_spr_USI_1;
1182
    unsigned short out_h_spr_USI_768;
1183
    unsigned short out_h_spr_USI_769;
1184
    unsigned short out_h_spr_USI_770;
1185
    unsigned short out_h_spr_USI_771;
1186
    unsigned char in_FCCi_2;
1187
    unsigned char in_GRi;
1188
    unsigned char in_GRj;
1189
  } sfmt_ftne;
1190
  struct { /*  */
1191
    UINT f_GRi;
1192
    UINT f_GRj;
1193
    UINT f_ICCi_2;
1194
    unsigned short out_h_spr_USI_1;
1195
    unsigned short out_h_spr_USI_768;
1196
    unsigned short out_h_spr_USI_769;
1197
    unsigned short out_h_spr_USI_770;
1198
    unsigned short out_h_spr_USI_771;
1199
    unsigned char in_GRi;
1200
    unsigned char in_GRj;
1201
    unsigned char in_ICCi_2;
1202
  } sfmt_teq;
1203
  struct { /*  */
1204
    UINT f_CCi;
1205
    UINT f_GRi;
1206
    UINT f_GRj;
1207
    UINT f_GRk;
1208
    UINT f_cond;
1209
    unsigned char in_CCi;
1210
    unsigned char in_GRi;
1211
    unsigned char in_GRj;
1212
    unsigned char in_h_iccr_UQI_and__INT_index_of__INT_CCi_3;
1213
    unsigned char out_GRdoublek;
1214
    unsigned char out_h_iccr_UQI_and__INT_index_of__INT_CCi_3;
1215
  } sfmt_csmulcc;
1216
  struct { /*  */
1217
    UINT f_CCi;
1218
    UINT f_GRi;
1219
    UINT f_GRj;
1220
    UINT f_GRk;
1221
    UINT f_cond;
1222
    unsigned char in_CCi;
1223
    unsigned char in_GRi;
1224
    unsigned char in_GRj;
1225
    unsigned char in_h_iccr_UQI_and__INT_index_of__INT_CCi_3;
1226
    unsigned char out_GRk;
1227
    unsigned char out_h_iccr_UQI_and__INT_index_of__INT_CCi_3;
1228
  } sfmt_caddcc;
1229
  struct { /*  */
1230
    UINT f_FRi;
1231
    UINT f_FRk;
1232
    unsigned char in_FRinti;
1233
    unsigned char in_FRintkeven;
1234
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1235
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1236
    unsigned char out_FRinti;
1237
    unsigned char out_FRintkeven;
1238
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1239
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_add__INT_0_1;
1240
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1241
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_add__INT_0_1;
1242
  } sfmt_munpackh;
1243
  struct { /*  */
1244
    UINT f_CCi;
1245
    UINT f_FRi;
1246
    UINT f_FRj;
1247
    UINT f_FRk;
1248
    UINT f_cond;
1249
    unsigned char in_CCi;
1250
    unsigned char in_FRi;
1251
    unsigned char in_FRj;
1252
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_1;
1253
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_1;
1254
    unsigned char out_FRk;
1255
    unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_1;
1256
  } sfmt_cfmas;
1257
  struct { /*  */
1258
    UINT f_CCi;
1259
    UINT f_FRi;
1260
    UINT f_FRk;
1261
    UINT f_cond;
1262
    UINT f_u6;
1263
    unsigned char in_CCi;
1264
    unsigned char in_FRintkeven;
1265
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1266
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1267
    unsigned char out_FRintkeven;
1268
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1269
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1;
1270
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1271
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1;
1272
  } sfmt_cmexpdhd;
1273
  struct { /*  */
1274
    UINT f_CCi;
1275
    UINT f_FRi;
1276
    UINT f_FRj;
1277
    UINT f_FRk;
1278
    UINT f_cond;
1279
    unsigned char in_CCi;
1280
    unsigned char in_FRinti;
1281
    unsigned char in_FRintj;
1282
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1283
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0;
1284
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1285
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0;
1286
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
1287
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
1288
  } sfmt_cmaddhss;
1289
  struct { /*  */
1290
    UINT f_FRi;
1291
    UINT f_FRk;
1292
    UINT f_u6;
1293
    unsigned char in_FRintieven;
1294
    unsigned char in_FRintkeven;
1295
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0;
1296
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1;
1297
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1298
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1299
    unsigned char out_FRintieven;
1300
    unsigned char out_FRintkeven;
1301
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1302
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1;
1303
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1304
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1;
1305
  } sfmt_mqsllhi;
1306
  struct { /*  */
1307
    UINT f_FRi;
1308
    UINT f_FRj;
1309
    UINT f_FRk;
1310
    unsigned char in_FRi;
1311
    unsigned char in_FRj;
1312
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_1;
1313
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_2;
1314
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRi_3;
1315
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_1;
1316
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_2;
1317
    unsigned char in_h_fr_SF_add__INT_index_of__INT_FRj_3;
1318
    unsigned char out_FRk;
1319
    unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_1;
1320
    unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_2;
1321
    unsigned char out_h_fr_SF_add__INT_index_of__INT_FRk_3;
1322
  } sfmt_fdmas;
1323
  struct { /*  */
1324
    UINT f_ACC40Uk;
1325
    UINT f_CCi;
1326
    UINT f_FRi;
1327
    UINT f_FRj;
1328
    UINT f_cond;
1329
    unsigned char in_ACC40Uk;
1330
    unsigned char in_CCi;
1331
    unsigned char in_FRinti;
1332
    unsigned char in_FRintj;
1333
    unsigned char in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1;
1334
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1335
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0;
1336
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1337
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0;
1338
    unsigned char out_ACC40Uk;
1339
    unsigned char out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1;
1340
  } sfmt_cmmachu;
1341
  struct { /*  */
1342
    UINT f_ACC40Sk;
1343
    UINT f_CCi;
1344
    UINT f_FRi;
1345
    UINT f_FRj;
1346
    UINT f_cond;
1347
    unsigned char in_ACC40Sk;
1348
    unsigned char in_CCi;
1349
    unsigned char in_FRinti;
1350
    unsigned char in_FRintj;
1351
    unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1;
1352
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0;
1353
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0;
1354
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0;
1355
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0;
1356
    unsigned char out_ACC40Sk;
1357
    unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1;
1358
  } sfmt_cmmachs;
1359
  struct { /*  */
1360
    UINT f_CCi;
1361
    UINT f_FRj;
1362
    UINT f_FRk;
1363
    UINT f_cond;
1364
    unsigned char in_CCi;
1365
    unsigned char in_FRintjeven;
1366
    unsigned char in_FRintk;
1367
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0;
1368
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1;
1369
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0;
1370
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1;
1371
    unsigned char out_FRintjeven;
1372
    unsigned char out_FRintk;
1373
    unsigned char out_h_fr_0_UHI_add__INT_index_of__INT_FRintk_0;
1374
    unsigned char out_h_fr_1_UHI_add__INT_index_of__INT_FRintk_0;
1375
    unsigned char out_h_fr_2_UHI_add__INT_index_of__INT_FRintk_0;
1376
    unsigned char out_h_fr_3_UHI_add__INT_index_of__INT_FRintk_0;
1377
  } sfmt_cmhtob;
1378
  struct { /*  */
1379
    UINT f_CCi;
1380
    UINT f_FRj;
1381
    UINT f_FRk;
1382
    UINT f_cond;
1383
    unsigned char in_CCi;
1384
    unsigned char in_FRintj;
1385
    unsigned char in_FRintkeven;
1386
    unsigned char in_h_fr_0_UHI_add__INT_index_of__INT_FRintj_0;
1387
    unsigned char in_h_fr_1_UHI_add__INT_index_of__INT_FRintj_0;
1388
    unsigned char in_h_fr_2_UHI_add__INT_index_of__INT_FRintj_0;
1389
    unsigned char in_h_fr_3_UHI_add__INT_index_of__INT_FRintj_0;
1390
    unsigned char out_FRintj;
1391
    unsigned char out_FRintkeven;
1392
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1393
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1;
1394
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1395
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1;
1396
  } sfmt_cmbtoh;
1397
  struct { /*  */
1398
    UINT f_FRi;
1399
    UINT f_FRj;
1400
    UINT f_FRk;
1401
    unsigned char in_FRintieven;
1402
    unsigned char in_FRintjeven;
1403
    unsigned char in_FRintkeven;
1404
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1405
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1406
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0;
1407
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1;
1408
    unsigned char out_FRintieven;
1409
    unsigned char out_FRintjeven;
1410
    unsigned char out_FRintkeven;
1411
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1412
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1;
1413
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1414
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1;
1415
  } sfmt_mdpackh;
1416
  struct { /*  */
1417
    UINT f_FRi;
1418
    UINT f_FRk;
1419
    unsigned char in_FRintieven;
1420
    unsigned char in_FRintk;
1421
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0;
1422
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1;
1423
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1424
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1425
    unsigned char out_FRintieven;
1426
    unsigned char out_FRintk;
1427
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
1428
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_2;
1429
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_add__INT_0_1;
1430
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_add__INT_2_1;
1431
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
1432
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_2;
1433
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_add__INT_0_1;
1434
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_add__INT_2_1;
1435
  } sfmt_mdunpackh;
1436
  struct { /*  */
1437
    UINT f_CCi;
1438
    UINT f_FRj;
1439
    UINT f_FRk;
1440
    UINT f_cond;
1441
    unsigned char in_CCi;
1442
    unsigned char in_FRintj;
1443
    unsigned char in_FRintk;
1444
    unsigned char in_h_fr_0_UHI_add__INT_index_of__INT_FRintj_0;
1445
    unsigned char in_h_fr_1_UHI_add__INT_index_of__INT_FRintj_0;
1446
    unsigned char in_h_fr_2_UHI_add__INT_index_of__INT_FRintj_0;
1447
    unsigned char in_h_fr_3_UHI_add__INT_index_of__INT_FRintj_0;
1448
    unsigned char out_FRintj;
1449
    unsigned char out_FRintk;
1450
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0;
1451
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_1;
1452
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_2;
1453
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_3;
1454
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0;
1455
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_1;
1456
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_2;
1457
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_3;
1458
  } sfmt_cmbtohe;
1459
  struct { /*  */
1460
    UINT f_CCi;
1461
    UINT f_FRi;
1462
    UINT f_FRj;
1463
    UINT f_FRk;
1464
    UINT f_cond;
1465
    unsigned char in_CCi;
1466
    unsigned char in_FRintieven;
1467
    unsigned char in_FRintjeven;
1468
    unsigned char in_FRintkeven;
1469
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0;
1470
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1;
1471
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0;
1472
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1;
1473
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1474
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1475
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0;
1476
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1;
1477
    unsigned char out_FRintkeven;
1478
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0;
1479
    unsigned char out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1;
1480
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0;
1481
    unsigned char out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1;
1482
  } sfmt_cmqaddhss;
1483
  struct { /*  */
1484
    UINT f_ACC40Uk;
1485
    UINT f_CCi;
1486
    UINT f_FRi;
1487
    UINT f_FRj;
1488
    UINT f_cond;
1489
    unsigned char in_ACC40Uk;
1490
    unsigned char in_CCi;
1491
    unsigned char in_FRintieven;
1492
    unsigned char in_FRintjeven;
1493
    unsigned char in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1;
1494
    unsigned char in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_2;
1495
    unsigned char in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_3;
1496
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0;
1497
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1;
1498
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0;
1499
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1;
1500
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1501
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1502
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0;
1503
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1;
1504
    unsigned char out_ACC40Uk;
1505
    unsigned char out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1;
1506
    unsigned char out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_2;
1507
    unsigned char out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_3;
1508
  } sfmt_cmqmachu;
1509
  struct { /*  */
1510
    UINT f_ACC40Sk;
1511
    UINT f_CCi;
1512
    UINT f_FRi;
1513
    UINT f_FRj;
1514
    UINT f_cond;
1515
    unsigned char in_ACC40Sk;
1516
    unsigned char in_CCi;
1517
    unsigned char in_FRintieven;
1518
    unsigned char in_FRintjeven;
1519
    unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1;
1520
    unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2;
1521
    unsigned char in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3;
1522
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0;
1523
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1;
1524
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0;
1525
    unsigned char in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1;
1526
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0;
1527
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1;
1528
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0;
1529
    unsigned char in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1;
1530
    unsigned char out_ACC40Sk;
1531
    unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1;
1532
    unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2;
1533
    unsigned char out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3;
1534
  } sfmt_cmqmachs;
1535
#if WITH_SCACHE_PBB
1536
  /* Writeback handler.  */
1537
  struct {
1538
    /* Pointer to argbuf entry for insn whose results need writing back.  */
1539
    const struct argbuf *abuf;
1540
  } write;
1541
  /* x-before handler */
1542
  struct {
1543
    /*const SCACHE *insns[MAX_PARALLEL_INSNS];*/
1544
    int first_p;
1545
  } before;
1546
  /* x-after handler */
1547
  struct {
1548
    int empty;
1549
  } after;
1550
  /* This entry is used to terminate each pbb.  */
1551
  struct {
1552
    /* Number of insns in pbb.  */
1553
    int insn_count;
1554
    /* Next pbb to execute.  */
1555
    SCACHE *next;
1556
    SCACHE *branch_target;
1557
  } chain;
1558
#endif
1559
};
1560
 
1561
/* The ARGBUF struct.  */
1562
struct argbuf {
1563
  /* These are the baseclass definitions.  */
1564
  IADDR addr;
1565
  const IDESC *idesc;
1566
  char trace_p;
1567
  char profile_p;
1568
  /* ??? Temporary hack for skip insns.  */
1569
  char skip_count;
1570
  char unused;
1571
  /* cpu specific data follows */
1572
  union sem semantic;
1573
  int written;
1574
  union sem_fields fields;
1575
};
1576
 
1577
/* A cached insn.
1578
 
1579
   ??? SCACHE used to contain more than just argbuf.  We could delete the
1580
   type entirely and always just use ARGBUF, but for future concerns and as
1581
   a level of abstraction it is left in.  */
1582
 
1583
struct scache {
1584
  struct argbuf argbuf;
1585
  int first_insn_p;
1586
  int last_insn_p;
1587
};
1588
 
1589
/* Macros to simplify extraction, reading and semantic code.
1590
   These define and assign the local vars that contain the insn's fields.  */
1591
 
1592
#define EXTRACT_IFMT_EMPTY_VARS \
1593
  unsigned int length;
1594
#define EXTRACT_IFMT_EMPTY_CODE \
1595
  length = 0; \
1596
 
1597
#define EXTRACT_IFMT_ADD_VARS \
1598
  UINT f_pack; \
1599
  UINT f_GRk; \
1600
  UINT f_op; \
1601
  UINT f_GRi; \
1602
  UINT f_ICCi_1_null; \
1603
  UINT f_ope2; \
1604
  UINT f_GRj; \
1605
  unsigned int length;
1606
#define EXTRACT_IFMT_ADD_CODE \
1607
  length = 4; \
1608
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1609
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1610
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1611
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1612
  f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1613
  f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1614
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1615
 
1616
#define EXTRACT_IFMT_NOT_VARS \
1617
  UINT f_pack; \
1618
  UINT f_GRk; \
1619
  UINT f_op; \
1620
  UINT f_rs_null; \
1621
  UINT f_ICCi_1_null; \
1622
  UINT f_ope2; \
1623
  UINT f_GRj; \
1624
  unsigned int length;
1625
#define EXTRACT_IFMT_NOT_CODE \
1626
  length = 4; \
1627
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1628
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1629
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1630
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1631
  f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1632
  f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1633
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1634
 
1635
#define EXTRACT_IFMT_SMUL_VARS \
1636
  UINT f_pack; \
1637
  UINT f_GRk; \
1638
  UINT f_op; \
1639
  UINT f_GRi; \
1640
  UINT f_ICCi_1_null; \
1641
  UINT f_ope2; \
1642
  UINT f_GRj; \
1643
  unsigned int length;
1644
#define EXTRACT_IFMT_SMUL_CODE \
1645
  length = 4; \
1646
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1647
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1648
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1649
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1650
  f_ICCi_1_null = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1651
  f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1652
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1653
 
1654
#define EXTRACT_IFMT_SMU_VARS \
1655
  UINT f_pack; \
1656
  UINT f_rd_null; \
1657
  UINT f_op; \
1658
  UINT f_GRi; \
1659
  UINT f_ope1; \
1660
  UINT f_GRj; \
1661
  unsigned int length;
1662
#define EXTRACT_IFMT_SMU_CODE \
1663
  length = 4; \
1664
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1665
  f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1666
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1667
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1668
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1669
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1670
 
1671
#define EXTRACT_IFMT_SLASS_VARS \
1672
  UINT f_pack; \
1673
  UINT f_GRk; \
1674
  UINT f_op; \
1675
  UINT f_GRi; \
1676
  UINT f_ope1; \
1677
  UINT f_GRj; \
1678
  unsigned int length;
1679
#define EXTRACT_IFMT_SLASS_CODE \
1680
  length = 4; \
1681
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1682
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1683
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1684
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1685
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1686
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1687
 
1688
#define EXTRACT_IFMT_SCUTSS_VARS \
1689
  UINT f_pack; \
1690
  UINT f_GRk; \
1691
  UINT f_op; \
1692
  UINT f_rs_null; \
1693
  UINT f_ope1; \
1694
  UINT f_GRj; \
1695
  unsigned int length;
1696
#define EXTRACT_IFMT_SCUTSS_CODE \
1697
  length = 4; \
1698
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1699
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1700
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1701
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1702
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1703
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1704
 
1705
#define EXTRACT_IFMT_CADD_VARS \
1706
  UINT f_pack; \
1707
  UINT f_GRk; \
1708
  UINT f_op; \
1709
  UINT f_GRi; \
1710
  UINT f_CCi; \
1711
  UINT f_cond; \
1712
  UINT f_ope4; \
1713
  UINT f_GRj; \
1714
  unsigned int length;
1715
#define EXTRACT_IFMT_CADD_CODE \
1716
  length = 4; \
1717
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1718
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1719
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1720
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1721
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1722
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1723
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1724
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1725
 
1726
#define EXTRACT_IFMT_CNOT_VARS \
1727
  UINT f_pack; \
1728
  UINT f_GRk; \
1729
  UINT f_op; \
1730
  UINT f_rs_null; \
1731
  UINT f_CCi; \
1732
  UINT f_cond; \
1733
  UINT f_ope4; \
1734
  UINT f_GRj; \
1735
  unsigned int length;
1736
#define EXTRACT_IFMT_CNOT_CODE \
1737
  length = 4; \
1738
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1739
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1740
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1741
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1742
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1743
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1744
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1745
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1746
 
1747
#define EXTRACT_IFMT_CSMUL_VARS \
1748
  UINT f_pack; \
1749
  UINT f_GRk; \
1750
  UINT f_op; \
1751
  UINT f_GRi; \
1752
  UINT f_CCi; \
1753
  UINT f_cond; \
1754
  UINT f_ope4; \
1755
  UINT f_GRj; \
1756
  unsigned int length;
1757
#define EXTRACT_IFMT_CSMUL_CODE \
1758
  length = 4; \
1759
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1760
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1761
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1762
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1763
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
1764
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
1765
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
1766
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1767
 
1768
#define EXTRACT_IFMT_ADDCC_VARS \
1769
  UINT f_pack; \
1770
  UINT f_GRk; \
1771
  UINT f_op; \
1772
  UINT f_GRi; \
1773
  UINT f_ICCi_1; \
1774
  UINT f_ope2; \
1775
  UINT f_GRj; \
1776
  unsigned int length;
1777
#define EXTRACT_IFMT_ADDCC_CODE \
1778
  length = 4; \
1779
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1780
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1781
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1782
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1783
  f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1784
  f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1785
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1786
 
1787
#define EXTRACT_IFMT_SMULCC_VARS \
1788
  UINT f_pack; \
1789
  UINT f_GRk; \
1790
  UINT f_op; \
1791
  UINT f_GRi; \
1792
  UINT f_ICCi_1; \
1793
  UINT f_ope2; \
1794
  UINT f_GRj; \
1795
  unsigned int length;
1796
#define EXTRACT_IFMT_SMULCC_CODE \
1797
  length = 4; \
1798
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1799
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1800
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1801
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1802
  f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1803
  f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1804
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1805
 
1806
#define EXTRACT_IFMT_ADDI_VARS \
1807
  UINT f_pack; \
1808
  UINT f_GRk; \
1809
  UINT f_op; \
1810
  UINT f_GRi; \
1811
  INT f_d12; \
1812
  unsigned int length;
1813
#define EXTRACT_IFMT_ADDI_CODE \
1814
  length = 4; \
1815
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1816
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1817
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1818
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1819
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
1820
 
1821
#define EXTRACT_IFMT_SMULI_VARS \
1822
  UINT f_pack; \
1823
  UINT f_GRk; \
1824
  UINT f_op; \
1825
  UINT f_GRi; \
1826
  INT f_d12; \
1827
  unsigned int length;
1828
#define EXTRACT_IFMT_SMULI_CODE \
1829
  length = 4; \
1830
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1831
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1832
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1833
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1834
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
1835
 
1836
#define EXTRACT_IFMT_ADDICC_VARS \
1837
  UINT f_pack; \
1838
  UINT f_GRk; \
1839
  UINT f_op; \
1840
  UINT f_GRi; \
1841
  UINT f_ICCi_1; \
1842
  INT f_s10; \
1843
  unsigned int length;
1844
#define EXTRACT_IFMT_ADDICC_CODE \
1845
  length = 4; \
1846
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1847
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1848
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1849
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1850
  f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1851
  f_s10 = EXTRACT_LSB0_SINT (insn, 32, 9, 10); \
1852
 
1853
#define EXTRACT_IFMT_SMULICC_VARS \
1854
  UINT f_pack; \
1855
  UINT f_GRk; \
1856
  UINT f_op; \
1857
  UINT f_GRi; \
1858
  UINT f_ICCi_1; \
1859
  INT f_s10; \
1860
  unsigned int length;
1861
#define EXTRACT_IFMT_SMULICC_CODE \
1862
  length = 4; \
1863
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1864
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1865
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1866
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1867
  f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1868
  f_s10 = EXTRACT_LSB0_SINT (insn, 32, 9, 10); \
1869
 
1870
#define EXTRACT_IFMT_CMPB_VARS \
1871
  UINT f_pack; \
1872
  UINT f_GRk_null; \
1873
  UINT f_op; \
1874
  UINT f_GRi; \
1875
  UINT f_ICCi_1; \
1876
  UINT f_ope2; \
1877
  UINT f_GRj; \
1878
  unsigned int length;
1879
#define EXTRACT_IFMT_CMPB_CODE \
1880
  length = 4; \
1881
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1882
  f_GRk_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1883
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1884
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1885
  f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \
1886
  f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \
1887
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1888
 
1889
#define EXTRACT_IFMT_SETLO_VARS \
1890
  UINT f_pack; \
1891
  UINT f_GRk; \
1892
  UINT f_op; \
1893
  UINT f_misc_null_4; \
1894
  UINT f_u16; \
1895
  unsigned int length;
1896
#define EXTRACT_IFMT_SETLO_CODE \
1897
  length = 4; \
1898
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1899
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1900
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1901
  f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1902
  f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
1903
 
1904
#define EXTRACT_IFMT_SETHI_VARS \
1905
  UINT f_pack; \
1906
  UINT f_GRk; \
1907
  UINT f_op; \
1908
  UINT f_misc_null_4; \
1909
  UINT f_u16; \
1910
  unsigned int length;
1911
#define EXTRACT_IFMT_SETHI_CODE \
1912
  length = 4; \
1913
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1914
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1915
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1916
  f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1917
  f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
1918
 
1919
#define EXTRACT_IFMT_SETLOS_VARS \
1920
  UINT f_pack; \
1921
  UINT f_GRk; \
1922
  UINT f_op; \
1923
  UINT f_misc_null_4; \
1924
  INT f_s16; \
1925
  unsigned int length;
1926
#define EXTRACT_IFMT_SETLOS_CODE \
1927
  length = 4; \
1928
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1929
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1930
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1931
  f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
1932
  f_s16 = EXTRACT_LSB0_SINT (insn, 32, 15, 16); \
1933
 
1934
#define EXTRACT_IFMT_LDBF_VARS \
1935
  UINT f_pack; \
1936
  UINT f_FRk; \
1937
  UINT f_op; \
1938
  UINT f_GRi; \
1939
  UINT f_ope1; \
1940
  UINT f_GRj; \
1941
  unsigned int length;
1942
#define EXTRACT_IFMT_LDBF_CODE \
1943
  length = 4; \
1944
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1945
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1946
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1947
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1948
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1949
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1950
 
1951
#define EXTRACT_IFMT_LDC_VARS \
1952
  UINT f_pack; \
1953
  UINT f_CPRk; \
1954
  UINT f_op; \
1955
  UINT f_GRi; \
1956
  UINT f_ope1; \
1957
  UINT f_GRj; \
1958
  unsigned int length;
1959
#define EXTRACT_IFMT_LDC_CODE \
1960
  length = 4; \
1961
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1962
  f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1963
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1964
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1965
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1966
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1967
 
1968
#define EXTRACT_IFMT_LDD_VARS \
1969
  UINT f_pack; \
1970
  UINT f_GRk; \
1971
  UINT f_op; \
1972
  UINT f_GRi; \
1973
  UINT f_ope1; \
1974
  UINT f_GRj; \
1975
  unsigned int length;
1976
#define EXTRACT_IFMT_LDD_CODE \
1977
  length = 4; \
1978
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1979
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1980
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1981
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1982
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
1983
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
1984
 
1985
#define EXTRACT_IFMT_LDDF_VARS \
1986
  UINT f_pack; \
1987
  UINT f_FRk; \
1988
  UINT f_op; \
1989
  UINT f_GRi; \
1990
  UINT f_ope1; \
1991
  UINT f_GRj; \
1992
  unsigned int length;
1993
#define EXTRACT_IFMT_LDDF_CODE \
1994
  length = 4; \
1995
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
1996
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
1997
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
1998
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
1999
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2000
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2001
 
2002
#define EXTRACT_IFMT_LDDC_VARS \
2003
  UINT f_pack; \
2004
  UINT f_CPRk; \
2005
  UINT f_op; \
2006
  UINT f_GRi; \
2007
  UINT f_ope1; \
2008
  UINT f_GRj; \
2009
  unsigned int length;
2010
#define EXTRACT_IFMT_LDDC_CODE \
2011
  length = 4; \
2012
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2013
  f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2014
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2015
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2016
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2017
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2018
 
2019
#define EXTRACT_IFMT_LDSBI_VARS \
2020
  UINT f_pack; \
2021
  UINT f_GRk; \
2022
  UINT f_op; \
2023
  UINT f_GRi; \
2024
  INT f_d12; \
2025
  unsigned int length;
2026
#define EXTRACT_IFMT_LDSBI_CODE \
2027
  length = 4; \
2028
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2029
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2030
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2031
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2032
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2033
 
2034
#define EXTRACT_IFMT_LDBFI_VARS \
2035
  UINT f_pack; \
2036
  UINT f_FRk; \
2037
  UINT f_op; \
2038
  UINT f_GRi; \
2039
  INT f_d12; \
2040
  unsigned int length;
2041
#define EXTRACT_IFMT_LDBFI_CODE \
2042
  length = 4; \
2043
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2044
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2045
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2046
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2047
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2048
 
2049
#define EXTRACT_IFMT_LDDI_VARS \
2050
  UINT f_pack; \
2051
  UINT f_GRk; \
2052
  UINT f_op; \
2053
  UINT f_GRi; \
2054
  INT f_d12; \
2055
  unsigned int length;
2056
#define EXTRACT_IFMT_LDDI_CODE \
2057
  length = 4; \
2058
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2059
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2060
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2061
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2062
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2063
 
2064
#define EXTRACT_IFMT_LDDFI_VARS \
2065
  UINT f_pack; \
2066
  UINT f_FRk; \
2067
  UINT f_op; \
2068
  UINT f_GRi; \
2069
  INT f_d12; \
2070
  unsigned int length;
2071
#define EXTRACT_IFMT_LDDFI_CODE \
2072
  length = 4; \
2073
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2074
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2075
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2076
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2077
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2078
 
2079
#define EXTRACT_IFMT_CLDBF_VARS \
2080
  UINT f_pack; \
2081
  UINT f_FRk; \
2082
  UINT f_op; \
2083
  UINT f_GRi; \
2084
  UINT f_CCi; \
2085
  UINT f_cond; \
2086
  UINT f_ope4; \
2087
  UINT f_GRj; \
2088
  unsigned int length;
2089
#define EXTRACT_IFMT_CLDBF_CODE \
2090
  length = 4; \
2091
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2092
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2093
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2094
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2095
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2096
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2097
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2098
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2099
 
2100
#define EXTRACT_IFMT_CLDDF_VARS \
2101
  UINT f_pack; \
2102
  UINT f_FRk; \
2103
  UINT f_op; \
2104
  UINT f_GRi; \
2105
  UINT f_CCi; \
2106
  UINT f_cond; \
2107
  UINT f_ope4; \
2108
  UINT f_GRj; \
2109
  unsigned int length;
2110
#define EXTRACT_IFMT_CLDDF_CODE \
2111
  length = 4; \
2112
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2113
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2114
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2115
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2116
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2117
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2118
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2119
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2120
 
2121
#define EXTRACT_IFMT_MOVGF_VARS \
2122
  UINT f_pack; \
2123
  UINT f_FRk; \
2124
  UINT f_op; \
2125
  UINT f_rs_null; \
2126
  UINT f_ope1; \
2127
  UINT f_GRj; \
2128
  unsigned int length;
2129
#define EXTRACT_IFMT_MOVGF_CODE \
2130
  length = 4; \
2131
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2132
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2133
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2134
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2135
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2136
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2137
 
2138
#define EXTRACT_IFMT_CMOVGF_VARS \
2139
  UINT f_pack; \
2140
  UINT f_FRk; \
2141
  UINT f_op; \
2142
  UINT f_rs_null; \
2143
  UINT f_CCi; \
2144
  UINT f_cond; \
2145
  UINT f_ope4; \
2146
  UINT f_GRj; \
2147
  unsigned int length;
2148
#define EXTRACT_IFMT_CMOVGF_CODE \
2149
  length = 4; \
2150
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2151
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2152
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2153
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2154
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2155
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2156
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2157
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2158
 
2159
#define EXTRACT_IFMT_MOVGS_VARS \
2160
  UINT f_pack; \
2161
  UINT f_op; \
2162
  UINT f_spr_h; \
2163
  UINT f_spr_l; \
2164
  UINT f_spr; \
2165
  UINT f_ope1; \
2166
  UINT f_GRj; \
2167
  unsigned int length;
2168
#define EXTRACT_IFMT_MOVGS_CODE \
2169
  length = 4; \
2170
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2171
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2172
  f_spr_h = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2173
  f_spr_l = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2174
{\
2175
  f_spr = ((((f_spr_h) << (6))) | (f_spr_l));\
2176
}\
2177
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2178
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2179
 
2180
#define EXTRACT_IFMT_BRA_VARS \
2181
  UINT f_pack; \
2182
  UINT f_int_cc; \
2183
  UINT f_ICCi_2_null; \
2184
  UINT f_op; \
2185
  UINT f_hint; \
2186
  SI f_label16; \
2187
  unsigned int length;
2188
#define EXTRACT_IFMT_BRA_CODE \
2189
  length = 4; \
2190
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2191
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2192
  f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2193
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2194
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2195
  f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc)); \
2196
 
2197
#define EXTRACT_IFMT_BNO_VARS \
2198
  UINT f_pack; \
2199
  UINT f_int_cc; \
2200
  UINT f_ICCi_2_null; \
2201
  UINT f_op; \
2202
  UINT f_hint; \
2203
  UINT f_label16_null; \
2204
  unsigned int length;
2205
#define EXTRACT_IFMT_BNO_CODE \
2206
  length = 4; \
2207
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2208
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2209
  f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2210
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2211
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2212
  f_label16_null = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
2213
 
2214
#define EXTRACT_IFMT_BEQ_VARS \
2215
  UINT f_pack; \
2216
  UINT f_int_cc; \
2217
  UINT f_ICCi_2; \
2218
  UINT f_op; \
2219
  UINT f_hint; \
2220
  SI f_label16; \
2221
  unsigned int length;
2222
#define EXTRACT_IFMT_BEQ_CODE \
2223
  length = 4; \
2224
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2225
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2226
  f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2227
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2228
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2229
  f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc)); \
2230
 
2231
#define EXTRACT_IFMT_FBRA_VARS \
2232
  UINT f_pack; \
2233
  UINT f_flt_cc; \
2234
  UINT f_FCCi_2_null; \
2235
  UINT f_op; \
2236
  UINT f_hint; \
2237
  SI f_label16; \
2238
  unsigned int length;
2239
#define EXTRACT_IFMT_FBRA_CODE \
2240
  length = 4; \
2241
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2242
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2243
  f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2244
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2245
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2246
  f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc)); \
2247
 
2248
#define EXTRACT_IFMT_FBNO_VARS \
2249
  UINT f_pack; \
2250
  UINT f_flt_cc; \
2251
  UINT f_FCCi_2_null; \
2252
  UINT f_op; \
2253
  UINT f_hint; \
2254
  UINT f_label16_null; \
2255
  unsigned int length;
2256
#define EXTRACT_IFMT_FBNO_CODE \
2257
  length = 4; \
2258
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2259
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2260
  f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2261
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2262
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2263
  f_label16_null = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \
2264
 
2265
#define EXTRACT_IFMT_FBNE_VARS \
2266
  UINT f_pack; \
2267
  UINT f_flt_cc; \
2268
  UINT f_FCCi_2; \
2269
  UINT f_op; \
2270
  UINT f_hint; \
2271
  SI f_label16; \
2272
  unsigned int length;
2273
#define EXTRACT_IFMT_FBNE_CODE \
2274
  length = 4; \
2275
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2276
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2277
  f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2278
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2279
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2280
  f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc)); \
2281
 
2282
#define EXTRACT_IFMT_BCTRLR_VARS \
2283
  UINT f_pack; \
2284
  UINT f_cond_null; \
2285
  UINT f_ICCi_2_null; \
2286
  UINT f_op; \
2287
  UINT f_hint; \
2288
  UINT f_ope3; \
2289
  UINT f_ccond; \
2290
  UINT f_s12_null; \
2291
  unsigned int length;
2292
#define EXTRACT_IFMT_BCTRLR_CODE \
2293
  length = 4; \
2294
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2295
  f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2296
  f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2297
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2298
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2299
  f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2300
  f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2301
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2302
 
2303
#define EXTRACT_IFMT_BRALR_VARS \
2304
  UINT f_pack; \
2305
  UINT f_int_cc; \
2306
  UINT f_ICCi_2_null; \
2307
  UINT f_op; \
2308
  UINT f_hint; \
2309
  UINT f_ope3; \
2310
  UINT f_ccond_null; \
2311
  UINT f_s12_null; \
2312
  unsigned int length;
2313
#define EXTRACT_IFMT_BRALR_CODE \
2314
  length = 4; \
2315
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2316
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2317
  f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2318
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2319
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2320
  f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2321
  f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2322
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2323
 
2324
#define EXTRACT_IFMT_BNOLR_VARS \
2325
  UINT f_pack; \
2326
  UINT f_int_cc; \
2327
  UINT f_ICCi_2_null; \
2328
  UINT f_op; \
2329
  UINT f_hint; \
2330
  UINT f_ope3; \
2331
  UINT f_ccond_null; \
2332
  UINT f_s12_null; \
2333
  unsigned int length;
2334
#define EXTRACT_IFMT_BNOLR_CODE \
2335
  length = 4; \
2336
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2337
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2338
  f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2339
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2340
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2341
  f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2342
  f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2343
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2344
 
2345
#define EXTRACT_IFMT_BEQLR_VARS \
2346
  UINT f_pack; \
2347
  UINT f_int_cc; \
2348
  UINT f_ICCi_2; \
2349
  UINT f_op; \
2350
  UINT f_hint; \
2351
  UINT f_ope3; \
2352
  UINT f_ccond_null; \
2353
  UINT f_s12_null; \
2354
  unsigned int length;
2355
#define EXTRACT_IFMT_BEQLR_CODE \
2356
  length = 4; \
2357
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2358
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2359
  f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2360
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2361
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2362
  f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2363
  f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2364
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2365
 
2366
#define EXTRACT_IFMT_FBRALR_VARS \
2367
  UINT f_pack; \
2368
  UINT f_flt_cc; \
2369
  UINT f_FCCi_2_null; \
2370
  UINT f_op; \
2371
  UINT f_hint; \
2372
  UINT f_ope3; \
2373
  UINT f_ccond_null; \
2374
  UINT f_s12_null; \
2375
  unsigned int length;
2376
#define EXTRACT_IFMT_FBRALR_CODE \
2377
  length = 4; \
2378
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2379
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2380
  f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2381
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2382
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2383
  f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2384
  f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2385
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2386
 
2387
#define EXTRACT_IFMT_FBNOLR_VARS \
2388
  UINT f_pack; \
2389
  UINT f_flt_cc; \
2390
  UINT f_FCCi_2_null; \
2391
  UINT f_op; \
2392
  UINT f_hint; \
2393
  UINT f_ope3; \
2394
  UINT f_ccond_null; \
2395
  UINT f_s12_null; \
2396
  unsigned int length;
2397
#define EXTRACT_IFMT_FBNOLR_CODE \
2398
  length = 4; \
2399
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2400
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2401
  f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2402
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2403
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2404
  f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2405
  f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2406
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2407
 
2408
#define EXTRACT_IFMT_FBEQLR_VARS \
2409
  UINT f_pack; \
2410
  UINT f_flt_cc; \
2411
  UINT f_FCCi_2; \
2412
  UINT f_op; \
2413
  UINT f_hint; \
2414
  UINT f_ope3; \
2415
  UINT f_ccond_null; \
2416
  UINT f_s12_null; \
2417
  unsigned int length;
2418
#define EXTRACT_IFMT_FBEQLR_CODE \
2419
  length = 4; \
2420
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2421
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2422
  f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2423
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2424
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2425
  f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2426
  f_ccond_null = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2427
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2428
 
2429
#define EXTRACT_IFMT_BCRALR_VARS \
2430
  UINT f_pack; \
2431
  UINT f_int_cc; \
2432
  UINT f_ICCi_2_null; \
2433
  UINT f_op; \
2434
  UINT f_hint; \
2435
  UINT f_ope3; \
2436
  UINT f_ccond; \
2437
  UINT f_s12_null; \
2438
  unsigned int length;
2439
#define EXTRACT_IFMT_BCRALR_CODE \
2440
  length = 4; \
2441
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2442
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2443
  f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2444
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2445
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2446
  f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2447
  f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2448
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2449
 
2450
#define EXTRACT_IFMT_BCEQLR_VARS \
2451
  UINT f_pack; \
2452
  UINT f_int_cc; \
2453
  UINT f_ICCi_2; \
2454
  UINT f_op; \
2455
  UINT f_hint; \
2456
  UINT f_ope3; \
2457
  UINT f_ccond; \
2458
  UINT f_s12_null; \
2459
  unsigned int length;
2460
#define EXTRACT_IFMT_BCEQLR_CODE \
2461
  length = 4; \
2462
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2463
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2464
  f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2465
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2466
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2467
  f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2468
  f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2469
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2470
 
2471
#define EXTRACT_IFMT_FCBRALR_VARS \
2472
  UINT f_pack; \
2473
  UINT f_flt_cc; \
2474
  UINT f_FCCi_2_null; \
2475
  UINT f_op; \
2476
  UINT f_hint; \
2477
  UINT f_ope3; \
2478
  UINT f_ccond; \
2479
  UINT f_s12_null; \
2480
  unsigned int length;
2481
#define EXTRACT_IFMT_FCBRALR_CODE \
2482
  length = 4; \
2483
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2484
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2485
  f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2486
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2487
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2488
  f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2489
  f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2490
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2491
 
2492
#define EXTRACT_IFMT_FCBEQLR_VARS \
2493
  UINT f_pack; \
2494
  UINT f_flt_cc; \
2495
  UINT f_FCCi_2; \
2496
  UINT f_op; \
2497
  UINT f_hint; \
2498
  UINT f_ope3; \
2499
  UINT f_ccond; \
2500
  UINT f_s12_null; \
2501
  unsigned int length;
2502
#define EXTRACT_IFMT_FCBEQLR_CODE \
2503
  length = 4; \
2504
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2505
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2506
  f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2507
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2508
  f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \
2509
  f_ope3 = EXTRACT_LSB0_UINT (insn, 32, 15, 3); \
2510
  f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1); \
2511
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2512
 
2513
#define EXTRACT_IFMT_JMPL_VARS \
2514
  UINT f_pack; \
2515
  UINT f_misc_null_1; \
2516
  UINT f_LI_off; \
2517
  UINT f_op; \
2518
  UINT f_GRi; \
2519
  UINT f_misc_null_2; \
2520
  UINT f_GRj; \
2521
  unsigned int length;
2522
#define EXTRACT_IFMT_JMPL_CODE \
2523
  length = 4; \
2524
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2525
  f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2526
  f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2527
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2528
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2529
  f_misc_null_2 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2530
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2531
 
2532
#define EXTRACT_IFMT_CALLL_VARS \
2533
  UINT f_pack; \
2534
  UINT f_misc_null_1; \
2535
  UINT f_LI_on; \
2536
  UINT f_op; \
2537
  UINT f_GRi; \
2538
  UINT f_misc_null_2; \
2539
  UINT f_GRj; \
2540
  unsigned int length;
2541
#define EXTRACT_IFMT_CALLL_CODE \
2542
  length = 4; \
2543
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2544
  f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2545
  f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2546
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2547
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2548
  f_misc_null_2 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2549
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2550
 
2551
#define EXTRACT_IFMT_JMPIL_VARS \
2552
  UINT f_pack; \
2553
  UINT f_misc_null_1; \
2554
  UINT f_LI_off; \
2555
  UINT f_op; \
2556
  UINT f_GRi; \
2557
  INT f_d12; \
2558
  unsigned int length;
2559
#define EXTRACT_IFMT_JMPIL_CODE \
2560
  length = 4; \
2561
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2562
  f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2563
  f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2564
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2565
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2566
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2567
 
2568
#define EXTRACT_IFMT_CALLIL_VARS \
2569
  UINT f_pack; \
2570
  UINT f_misc_null_1; \
2571
  UINT f_LI_on; \
2572
  UINT f_op; \
2573
  UINT f_GRi; \
2574
  INT f_d12; \
2575
  unsigned int length;
2576
#define EXTRACT_IFMT_CALLIL_CODE \
2577
  length = 4; \
2578
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2579
  f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2580
  f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2581
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2582
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2583
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2584
 
2585
#define EXTRACT_IFMT_CALL_VARS \
2586
  UINT f_pack; \
2587
  UINT f_op; \
2588
  INT f_labelH6; \
2589
  UINT f_labelL18; \
2590
  INT f_label24; \
2591
  unsigned int length;
2592
#define EXTRACT_IFMT_CALL_CODE \
2593
  length = 4; \
2594
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2595
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2596
  f_labelH6 = EXTRACT_LSB0_SINT (insn, 32, 30, 6); \
2597
  f_labelL18 = EXTRACT_LSB0_UINT (insn, 32, 17, 18); \
2598
{\
2599
  f_label24 = ((((((((f_labelH6) << (18))) | (f_labelL18))) << (2))) + (pc));\
2600
}\
2601
 
2602
#define EXTRACT_IFMT_RETT_VARS \
2603
  UINT f_pack; \
2604
  UINT f_misc_null_1; \
2605
  UINT f_debug; \
2606
  UINT f_op; \
2607
  UINT f_rs_null; \
2608
  UINT f_s12_null; \
2609
  unsigned int length;
2610
#define EXTRACT_IFMT_RETT_CODE \
2611
  length = 4; \
2612
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2613
  f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
2614
  f_debug = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
2615
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2616
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2617
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2618
 
2619
#define EXTRACT_IFMT_REI_VARS \
2620
  UINT f_pack; \
2621
  UINT f_rd_null; \
2622
  UINT f_op; \
2623
  UINT f_eir; \
2624
  UINT f_s12_null; \
2625
  unsigned int length;
2626
#define EXTRACT_IFMT_REI_CODE \
2627
  length = 4; \
2628
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2629
  f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2630
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2631
  f_eir = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2632
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2633
 
2634
#define EXTRACT_IFMT_TRA_VARS \
2635
  UINT f_pack; \
2636
  UINT f_int_cc; \
2637
  UINT f_ICCi_2_null; \
2638
  UINT f_op; \
2639
  UINT f_GRi; \
2640
  UINT f_misc_null_3; \
2641
  UINT f_ope4; \
2642
  UINT f_GRj; \
2643
  unsigned int length;
2644
#define EXTRACT_IFMT_TRA_CODE \
2645
  length = 4; \
2646
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2647
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2648
  f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2649
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2650
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2651
  f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2652
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2653
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2654
 
2655
#define EXTRACT_IFMT_TNO_VARS \
2656
  UINT f_pack; \
2657
  UINT f_int_cc; \
2658
  UINT f_ICCi_2_null; \
2659
  UINT f_op; \
2660
  UINT f_GRi_null; \
2661
  UINT f_misc_null_3; \
2662
  UINT f_ope4; \
2663
  UINT f_GRj_null; \
2664
  unsigned int length;
2665
#define EXTRACT_IFMT_TNO_CODE \
2666
  length = 4; \
2667
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2668
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2669
  f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2670
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2671
  f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2672
  f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2673
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2674
  f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2675
 
2676
#define EXTRACT_IFMT_TEQ_VARS \
2677
  UINT f_pack; \
2678
  UINT f_int_cc; \
2679
  UINT f_ICCi_2; \
2680
  UINT f_op; \
2681
  UINT f_GRi; \
2682
  UINT f_misc_null_3; \
2683
  UINT f_ope4; \
2684
  UINT f_GRj; \
2685
  unsigned int length;
2686
#define EXTRACT_IFMT_TEQ_CODE \
2687
  length = 4; \
2688
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2689
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2690
  f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2691
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2692
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2693
  f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2694
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2695
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2696
 
2697
#define EXTRACT_IFMT_FTRA_VARS \
2698
  UINT f_pack; \
2699
  UINT f_flt_cc; \
2700
  UINT f_FCCi_2_null; \
2701
  UINT f_op; \
2702
  UINT f_GRi; \
2703
  UINT f_misc_null_3; \
2704
  UINT f_ope4; \
2705
  UINT f_GRj; \
2706
  unsigned int length;
2707
#define EXTRACT_IFMT_FTRA_CODE \
2708
  length = 4; \
2709
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2710
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2711
  f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2712
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2713
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2714
  f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2715
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2716
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2717
 
2718
#define EXTRACT_IFMT_FTNO_VARS \
2719
  UINT f_pack; \
2720
  UINT f_flt_cc; \
2721
  UINT f_FCCi_2_null; \
2722
  UINT f_op; \
2723
  UINT f_GRi_null; \
2724
  UINT f_misc_null_3; \
2725
  UINT f_ope4; \
2726
  UINT f_GRj_null; \
2727
  unsigned int length;
2728
#define EXTRACT_IFMT_FTNO_CODE \
2729
  length = 4; \
2730
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2731
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2732
  f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2733
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2734
  f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2735
  f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2736
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2737
  f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2738
 
2739
#define EXTRACT_IFMT_FTNE_VARS \
2740
  UINT f_pack; \
2741
  UINT f_flt_cc; \
2742
  UINT f_FCCi_2; \
2743
  UINT f_op; \
2744
  UINT f_GRi; \
2745
  UINT f_misc_null_3; \
2746
  UINT f_ope4; \
2747
  UINT f_GRj; \
2748
  unsigned int length;
2749
#define EXTRACT_IFMT_FTNE_CODE \
2750
  length = 4; \
2751
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2752
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2753
  f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2754
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2755
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2756
  f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2757
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2758
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2759
 
2760
#define EXTRACT_IFMT_TIRA_VARS \
2761
  UINT f_pack; \
2762
  UINT f_int_cc; \
2763
  UINT f_ICCi_2_null; \
2764
  UINT f_op; \
2765
  UINT f_GRi; \
2766
  INT f_d12; \
2767
  unsigned int length;
2768
#define EXTRACT_IFMT_TIRA_CODE \
2769
  length = 4; \
2770
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2771
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2772
  f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2773
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2774
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2775
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2776
 
2777
#define EXTRACT_IFMT_TINO_VARS \
2778
  UINT f_pack; \
2779
  UINT f_int_cc; \
2780
  UINT f_ICCi_2_null; \
2781
  UINT f_op; \
2782
  UINT f_GRi_null; \
2783
  UINT f_s12_null; \
2784
  unsigned int length;
2785
#define EXTRACT_IFMT_TINO_CODE \
2786
  length = 4; \
2787
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2788
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2789
  f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2790
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2791
  f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2792
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2793
 
2794
#define EXTRACT_IFMT_TIEQ_VARS \
2795
  UINT f_pack; \
2796
  UINT f_int_cc; \
2797
  UINT f_ICCi_2; \
2798
  UINT f_op; \
2799
  UINT f_GRi; \
2800
  INT f_d12; \
2801
  unsigned int length;
2802
#define EXTRACT_IFMT_TIEQ_CODE \
2803
  length = 4; \
2804
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2805
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2806
  f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2807
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2808
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2809
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2810
 
2811
#define EXTRACT_IFMT_FTIRA_VARS \
2812
  UINT f_pack; \
2813
  UINT f_flt_cc; \
2814
  UINT f_ICCi_2_null; \
2815
  UINT f_op; \
2816
  UINT f_GRi; \
2817
  INT f_d12; \
2818
  unsigned int length;
2819
#define EXTRACT_IFMT_FTIRA_CODE \
2820
  length = 4; \
2821
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2822
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2823
  f_ICCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2824
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2825
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2826
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2827
 
2828
#define EXTRACT_IFMT_FTINO_VARS \
2829
  UINT f_pack; \
2830
  UINT f_flt_cc; \
2831
  UINT f_FCCi_2_null; \
2832
  UINT f_op; \
2833
  UINT f_GRi_null; \
2834
  UINT f_s12_null; \
2835
  unsigned int length;
2836
#define EXTRACT_IFMT_FTINO_CODE \
2837
  length = 4; \
2838
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2839
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2840
  f_FCCi_2_null = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2841
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2842
  f_GRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2843
  f_s12_null = EXTRACT_LSB0_UINT (insn, 32, 11, 12); \
2844
 
2845
#define EXTRACT_IFMT_FTINE_VARS \
2846
  UINT f_pack; \
2847
  UINT f_flt_cc; \
2848
  UINT f_FCCi_2; \
2849
  UINT f_op; \
2850
  UINT f_GRi; \
2851
  INT f_d12; \
2852
  unsigned int length;
2853
#define EXTRACT_IFMT_FTINE_CODE \
2854
  length = 4; \
2855
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2856
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2857
  f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2858
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2859
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2860
  f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12); \
2861
 
2862
#define EXTRACT_IFMT_BREAK_VARS \
2863
  UINT f_pack; \
2864
  UINT f_rd_null; \
2865
  UINT f_op; \
2866
  UINT f_rs_null; \
2867
  UINT f_misc_null_3; \
2868
  UINT f_ope4; \
2869
  UINT f_GRj_null; \
2870
  unsigned int length;
2871
#define EXTRACT_IFMT_BREAK_CODE \
2872
  length = 4; \
2873
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2874
  f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
2875
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2876
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2877
  f_misc_null_3 = EXTRACT_LSB0_UINT (insn, 32, 11, 4); \
2878
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2879
  f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
2880
 
2881
#define EXTRACT_IFMT_ANDCR_VARS \
2882
  UINT f_pack; \
2883
  UINT f_misc_null_6; \
2884
  UINT f_CRk; \
2885
  UINT f_op; \
2886
  UINT f_misc_null_7; \
2887
  UINT f_CRi; \
2888
  UINT f_ope1; \
2889
  UINT f_misc_null_8; \
2890
  UINT f_CRj; \
2891
  unsigned int length;
2892
#define EXTRACT_IFMT_ANDCR_CODE \
2893
  length = 4; \
2894
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2895
  f_misc_null_6 = EXTRACT_LSB0_UINT (insn, 32, 30, 3); \
2896
  f_CRk = EXTRACT_LSB0_UINT (insn, 32, 27, 3); \
2897
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2898
  f_misc_null_7 = EXTRACT_LSB0_UINT (insn, 32, 17, 3); \
2899
  f_CRi = EXTRACT_LSB0_UINT (insn, 32, 14, 3); \
2900
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2901
  f_misc_null_8 = EXTRACT_LSB0_UINT (insn, 32, 5, 3); \
2902
  f_CRj = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
2903
 
2904
#define EXTRACT_IFMT_NOTCR_VARS \
2905
  UINT f_pack; \
2906
  UINT f_misc_null_6; \
2907
  UINT f_CRk; \
2908
  UINT f_op; \
2909
  UINT f_rs_null; \
2910
  UINT f_ope1; \
2911
  UINT f_misc_null_8; \
2912
  UINT f_CRj; \
2913
  unsigned int length;
2914
#define EXTRACT_IFMT_NOTCR_CODE \
2915
  length = 4; \
2916
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2917
  f_misc_null_6 = EXTRACT_LSB0_UINT (insn, 32, 30, 3); \
2918
  f_CRk = EXTRACT_LSB0_UINT (insn, 32, 27, 3); \
2919
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2920
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2921
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
2922
  f_misc_null_8 = EXTRACT_LSB0_UINT (insn, 32, 5, 3); \
2923
  f_CRj = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
2924
 
2925
#define EXTRACT_IFMT_CKRA_VARS \
2926
  UINT f_pack; \
2927
  UINT f_int_cc; \
2928
  SI f_CRj_int; \
2929
  UINT f_op; \
2930
  UINT f_misc_null_5; \
2931
  UINT f_ICCi_3_null; \
2932
  unsigned int length;
2933
#define EXTRACT_IFMT_CKRA_CODE \
2934
  length = 4; \
2935
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2936
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2937
  f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2938
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2939
  f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2940
  f_ICCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2941
 
2942
#define EXTRACT_IFMT_CKEQ_VARS \
2943
  UINT f_pack; \
2944
  UINT f_int_cc; \
2945
  SI f_CRj_int; \
2946
  UINT f_op; \
2947
  UINT f_misc_null_5; \
2948
  UINT f_ICCi_3; \
2949
  unsigned int length;
2950
#define EXTRACT_IFMT_CKEQ_CODE \
2951
  length = 4; \
2952
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2953
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2954
  f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2955
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2956
  f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2957
  f_ICCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2958
 
2959
#define EXTRACT_IFMT_FCKRA_VARS \
2960
  UINT f_pack; \
2961
  UINT f_flt_cc; \
2962
  UINT f_CRj_float; \
2963
  UINT f_op; \
2964
  UINT f_misc_null_5; \
2965
  UINT f_FCCi_3; \
2966
  unsigned int length;
2967
#define EXTRACT_IFMT_FCKRA_CODE \
2968
  length = 4; \
2969
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2970
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2971
  f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
2972
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2973
  f_misc_null_5 = EXTRACT_LSB0_UINT (insn, 32, 17, 16); \
2974
  f_FCCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
2975
 
2976
#define EXTRACT_IFMT_CCKRA_VARS \
2977
  UINT f_pack; \
2978
  UINT f_int_cc; \
2979
  SI f_CRj_int; \
2980
  UINT f_op; \
2981
  UINT f_rs_null; \
2982
  UINT f_CCi; \
2983
  UINT f_cond; \
2984
  UINT f_ope4; \
2985
  UINT f_misc_null_9; \
2986
  UINT f_ICCi_3_null; \
2987
  unsigned int length;
2988
#define EXTRACT_IFMT_CCKRA_CODE \
2989
  length = 4; \
2990
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
2991
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
2992
  f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
2993
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
2994
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
2995
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
2996
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
2997
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
2998
  f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
2999
  f_ICCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3000
 
3001
#define EXTRACT_IFMT_CCKEQ_VARS \
3002
  UINT f_pack; \
3003
  UINT f_int_cc; \
3004
  SI f_CRj_int; \
3005
  UINT f_op; \
3006
  UINT f_rs_null; \
3007
  UINT f_CCi; \
3008
  UINT f_cond; \
3009
  UINT f_ope4; \
3010
  UINT f_misc_null_9; \
3011
  UINT f_ICCi_3; \
3012
  unsigned int length;
3013
#define EXTRACT_IFMT_CCKEQ_CODE \
3014
  length = 4; \
3015
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3016
  f_int_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3017
  f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4)); \
3018
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3019
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3020
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3021
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3022
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3023
  f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3024
  f_ICCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3025
 
3026
#define EXTRACT_IFMT_CFCKRA_VARS \
3027
  UINT f_pack; \
3028
  UINT f_flt_cc; \
3029
  UINT f_CRj_float; \
3030
  UINT f_op; \
3031
  UINT f_rs_null; \
3032
  UINT f_CCi; \
3033
  UINT f_cond; \
3034
  UINT f_ope4; \
3035
  UINT f_misc_null_9; \
3036
  UINT f_FCCi_3_null; \
3037
  unsigned int length;
3038
#define EXTRACT_IFMT_CFCKRA_CODE \
3039
  length = 4; \
3040
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3041
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3042
  f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3043
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3044
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3045
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3046
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3047
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3048
  f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3049
  f_FCCi_3_null = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3050
 
3051
#define EXTRACT_IFMT_CFCKNE_VARS \
3052
  UINT f_pack; \
3053
  UINT f_flt_cc; \
3054
  UINT f_CRj_float; \
3055
  UINT f_op; \
3056
  UINT f_rs_null; \
3057
  UINT f_CCi; \
3058
  UINT f_cond; \
3059
  UINT f_ope4; \
3060
  UINT f_misc_null_9; \
3061
  UINT f_FCCi_3; \
3062
  unsigned int length;
3063
#define EXTRACT_IFMT_CFCKNE_CODE \
3064
  length = 4; \
3065
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3066
  f_flt_cc = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3067
  f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3068
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3069
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3070
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3071
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3072
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3073
  f_misc_null_9 = EXTRACT_LSB0_UINT (insn, 32, 5, 4); \
3074
  f_FCCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2); \
3075
 
3076
#define EXTRACT_IFMT_CJMPL_VARS \
3077
  UINT f_pack; \
3078
  UINT f_misc_null_1; \
3079
  UINT f_LI_off; \
3080
  UINT f_op; \
3081
  UINT f_GRi; \
3082
  UINT f_CCi; \
3083
  UINT f_cond; \
3084
  UINT f_ope4; \
3085
  UINT f_GRj; \
3086
  unsigned int length;
3087
#define EXTRACT_IFMT_CJMPL_CODE \
3088
  length = 4; \
3089
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3090
  f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3091
  f_LI_off = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3092
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3093
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3094
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3095
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3096
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3097
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3098
 
3099
#define EXTRACT_IFMT_CCALLL_VARS \
3100
  UINT f_pack; \
3101
  UINT f_misc_null_1; \
3102
  UINT f_LI_on; \
3103
  UINT f_op; \
3104
  UINT f_GRi; \
3105
  UINT f_CCi; \
3106
  UINT f_cond; \
3107
  UINT f_ope4; \
3108
  UINT f_GRj; \
3109
  unsigned int length;
3110
#define EXTRACT_IFMT_CCALLL_CODE \
3111
  length = 4; \
3112
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3113
  f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3114
  f_LI_on = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3115
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3116
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3117
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3118
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3119
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3120
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3121
 
3122
#define EXTRACT_IFMT_ICEI_VARS \
3123
  UINT f_pack; \
3124
  UINT f_misc_null_1; \
3125
  UINT f_ae; \
3126
  UINT f_op; \
3127
  UINT f_GRi; \
3128
  UINT f_ope1; \
3129
  UINT f_GRj; \
3130
  unsigned int length;
3131
#define EXTRACT_IFMT_ICEI_CODE \
3132
  length = 4; \
3133
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3134
  f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3135
  f_ae = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3136
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3137
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3138
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3139
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3140
 
3141
#define EXTRACT_IFMT_ICPL_VARS \
3142
  UINT f_pack; \
3143
  UINT f_misc_null_1; \
3144
  UINT f_lock; \
3145
  UINT f_op; \
3146
  UINT f_GRi; \
3147
  UINT f_ope1; \
3148
  UINT f_GRj; \
3149
  unsigned int length;
3150
#define EXTRACT_IFMT_ICPL_CODE \
3151
  length = 4; \
3152
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3153
  f_misc_null_1 = EXTRACT_LSB0_UINT (insn, 32, 30, 5); \
3154
  f_lock = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3155
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3156
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3157
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3158
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3159
 
3160
#define EXTRACT_IFMT_ICUL_VARS \
3161
  UINT f_pack; \
3162
  UINT f_rd_null; \
3163
  UINT f_op; \
3164
  UINT f_GRi; \
3165
  UINT f_ope1; \
3166
  UINT f_GRj_null; \
3167
  unsigned int length;
3168
#define EXTRACT_IFMT_ICUL_CODE \
3169
  length = 4; \
3170
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3171
  f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3172
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3173
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3174
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3175
  f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3176
 
3177
#define EXTRACT_IFMT_BAR_VARS \
3178
  UINT f_pack; \
3179
  UINT f_rd_null; \
3180
  UINT f_op; \
3181
  UINT f_rs_null; \
3182
  UINT f_ope1; \
3183
  UINT f_GRj_null; \
3184
  unsigned int length;
3185
#define EXTRACT_IFMT_BAR_CODE \
3186
  length = 4; \
3187
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3188
  f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3189
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3190
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3191
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3192
  f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3193
 
3194
#define EXTRACT_IFMT_LRAI_VARS \
3195
  UINT f_pack; \
3196
  UINT f_GRk; \
3197
  UINT f_op; \
3198
  UINT f_GRi; \
3199
  UINT f_ope1; \
3200
  UINT f_LRAE; \
3201
  UINT f_LRAD; \
3202
  UINT f_LRAS; \
3203
  UINT f_LRA_null; \
3204
  unsigned int length;
3205
#define EXTRACT_IFMT_LRAI_CODE \
3206
  length = 4; \
3207
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3208
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3209
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3210
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3211
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3212
  f_LRAE = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3213
  f_LRAD = EXTRACT_LSB0_UINT (insn, 32, 4, 1); \
3214
  f_LRAS = EXTRACT_LSB0_UINT (insn, 32, 3, 1); \
3215
  f_LRA_null = EXTRACT_LSB0_UINT (insn, 32, 2, 3); \
3216
 
3217
#define EXTRACT_IFMT_TLBPR_VARS \
3218
  UINT f_pack; \
3219
  UINT f_TLBPR_null; \
3220
  UINT f_TLBPRopx; \
3221
  UINT f_TLBPRL; \
3222
  UINT f_op; \
3223
  UINT f_GRi; \
3224
  UINT f_ope1; \
3225
  UINT f_GRj; \
3226
  unsigned int length;
3227
#define EXTRACT_IFMT_TLBPR_CODE \
3228
  length = 4; \
3229
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3230
  f_TLBPR_null = EXTRACT_LSB0_UINT (insn, 32, 30, 2); \
3231
  f_TLBPRopx = EXTRACT_LSB0_UINT (insn, 32, 28, 3); \
3232
  f_TLBPRL = EXTRACT_LSB0_UINT (insn, 32, 25, 1); \
3233
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3234
  f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3235
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3236
  f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3237
 
3238
#define EXTRACT_IFMT_COP1_VARS \
3239
  UINT f_pack; \
3240
  UINT f_CPRk; \
3241
  UINT f_op; \
3242
  UINT f_CPRi; \
3243
  INT f_s6_1; \
3244
  UINT f_CPRj; \
3245
  unsigned int length;
3246
#define EXTRACT_IFMT_COP1_CODE \
3247
  length = 4; \
3248
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3249
  f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3250
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3251
  f_CPRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3252
  f_s6_1 = EXTRACT_LSB0_SINT (insn, 32, 11, 6); \
3253
  f_CPRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3254
 
3255
#define EXTRACT_IFMT_CLRGR_VARS \
3256
  UINT f_pack; \
3257
  UINT f_GRk; \
3258
  UINT f_op; \
3259
  UINT f_rs_null; \
3260
  UINT f_ope1; \
3261
  UINT f_GRj_null; \
3262
  unsigned int length;
3263
#define EXTRACT_IFMT_CLRGR_CODE \
3264
  length = 4; \
3265
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3266
  f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3267
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3268
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3269
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3270
  f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3271
 
3272
#define EXTRACT_IFMT_CLRFR_VARS \
3273
  UINT f_pack; \
3274
  UINT f_FRk; \
3275
  UINT f_op; \
3276
  UINT f_rs_null; \
3277
  UINT f_ope1; \
3278
  UINT f_GRj_null; \
3279
  unsigned int length;
3280
#define EXTRACT_IFMT_CLRFR_CODE \
3281
  length = 4; \
3282
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3283
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3284
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3285
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3286
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3287
  f_GRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3288
 
3289
#define EXTRACT_IFMT_FITOS_VARS \
3290
  UINT f_pack; \
3291
  UINT f_FRk; \
3292
  UINT f_op; \
3293
  UINT f_rs_null; \
3294
  UINT f_ope1; \
3295
  UINT f_FRj; \
3296
  unsigned int length;
3297
#define EXTRACT_IFMT_FITOS_CODE \
3298
  length = 4; \
3299
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3300
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3301
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3302
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3303
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3304
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3305
 
3306
#define EXTRACT_IFMT_FSTOI_VARS \
3307
  UINT f_pack; \
3308
  UINT f_FRk; \
3309
  UINT f_op; \
3310
  UINT f_rs_null; \
3311
  UINT f_ope1; \
3312
  UINT f_FRj; \
3313
  unsigned int length;
3314
#define EXTRACT_IFMT_FSTOI_CODE \
3315
  length = 4; \
3316
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3317
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3318
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3319
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3320
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3321
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3322
 
3323
#define EXTRACT_IFMT_FITOD_VARS \
3324
  UINT f_pack; \
3325
  UINT f_FRk; \
3326
  UINT f_op; \
3327
  UINT f_rs_null; \
3328
  UINT f_ope1; \
3329
  UINT f_FRj; \
3330
  unsigned int length;
3331
#define EXTRACT_IFMT_FITOD_CODE \
3332
  length = 4; \
3333
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3334
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3335
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3336
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3337
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3338
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3339
 
3340
#define EXTRACT_IFMT_FDTOI_VARS \
3341
  UINT f_pack; \
3342
  UINT f_FRk; \
3343
  UINT f_op; \
3344
  UINT f_rs_null; \
3345
  UINT f_ope1; \
3346
  UINT f_FRj; \
3347
  unsigned int length;
3348
#define EXTRACT_IFMT_FDTOI_CODE \
3349
  length = 4; \
3350
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3351
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3352
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3353
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3354
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3355
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3356
 
3357
#define EXTRACT_IFMT_CFITOS_VARS \
3358
  UINT f_pack; \
3359
  UINT f_FRk; \
3360
  UINT f_op; \
3361
  UINT f_rs_null; \
3362
  UINT f_CCi; \
3363
  UINT f_cond; \
3364
  UINT f_ope4; \
3365
  UINT f_FRj; \
3366
  unsigned int length;
3367
#define EXTRACT_IFMT_CFITOS_CODE \
3368
  length = 4; \
3369
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3370
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3371
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3372
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3373
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3374
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3375
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3376
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3377
 
3378
#define EXTRACT_IFMT_CFSTOI_VARS \
3379
  UINT f_pack; \
3380
  UINT f_FRk; \
3381
  UINT f_op; \
3382
  UINT f_rs_null; \
3383
  UINT f_CCi; \
3384
  UINT f_cond; \
3385
  UINT f_ope4; \
3386
  UINT f_FRj; \
3387
  unsigned int length;
3388
#define EXTRACT_IFMT_CFSTOI_CODE \
3389
  length = 4; \
3390
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3391
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3392
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3393
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3394
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3395
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3396
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3397
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3398
 
3399
#define EXTRACT_IFMT_FMOVS_VARS \
3400
  UINT f_pack; \
3401
  UINT f_FRk; \
3402
  UINT f_op; \
3403
  UINT f_rs_null; \
3404
  UINT f_ope1; \
3405
  UINT f_FRj; \
3406
  unsigned int length;
3407
#define EXTRACT_IFMT_FMOVS_CODE \
3408
  length = 4; \
3409
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3410
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3411
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3412
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3413
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3414
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3415
 
3416
#define EXTRACT_IFMT_FMOVD_VARS \
3417
  UINT f_pack; \
3418
  UINT f_FRk; \
3419
  UINT f_op; \
3420
  UINT f_rs_null; \
3421
  UINT f_ope1; \
3422
  UINT f_FRj; \
3423
  unsigned int length;
3424
#define EXTRACT_IFMT_FMOVD_CODE \
3425
  length = 4; \
3426
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3427
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3428
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3429
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3430
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3431
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3432
 
3433
#define EXTRACT_IFMT_CFMOVS_VARS \
3434
  UINT f_pack; \
3435
  UINT f_FRk; \
3436
  UINT f_op; \
3437
  UINT f_rs_null; \
3438
  UINT f_CCi; \
3439
  UINT f_cond; \
3440
  UINT f_ope4; \
3441
  UINT f_FRj; \
3442
  unsigned int length;
3443
#define EXTRACT_IFMT_CFMOVS_CODE \
3444
  length = 4; \
3445
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3446
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3447
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3448
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3449
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3450
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3451
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3452
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3453
 
3454
#define EXTRACT_IFMT_FADDS_VARS \
3455
  UINT f_pack; \
3456
  UINT f_FRk; \
3457
  UINT f_op; \
3458
  UINT f_FRi; \
3459
  UINT f_ope1; \
3460
  UINT f_FRj; \
3461
  unsigned int length;
3462
#define EXTRACT_IFMT_FADDS_CODE \
3463
  length = 4; \
3464
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3465
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3466
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3467
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3468
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3469
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3470
 
3471
#define EXTRACT_IFMT_FADDD_VARS \
3472
  UINT f_pack; \
3473
  UINT f_FRk; \
3474
  UINT f_op; \
3475
  UINT f_FRi; \
3476
  UINT f_ope1; \
3477
  UINT f_FRj; \
3478
  unsigned int length;
3479
#define EXTRACT_IFMT_FADDD_CODE \
3480
  length = 4; \
3481
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3482
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3483
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3484
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3485
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3486
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3487
 
3488
#define EXTRACT_IFMT_CFADDS_VARS \
3489
  UINT f_pack; \
3490
  UINT f_FRk; \
3491
  UINT f_op; \
3492
  UINT f_FRi; \
3493
  UINT f_CCi; \
3494
  UINT f_cond; \
3495
  UINT f_ope4; \
3496
  UINT f_FRj; \
3497
  unsigned int length;
3498
#define EXTRACT_IFMT_CFADDS_CODE \
3499
  length = 4; \
3500
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3501
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3502
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3503
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3504
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3505
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3506
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3507
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3508
 
3509
#define EXTRACT_IFMT_FCMPS_VARS \
3510
  UINT f_pack; \
3511
  UINT f_cond_null; \
3512
  UINT f_FCCi_2; \
3513
  UINT f_op; \
3514
  UINT f_FRi; \
3515
  UINT f_ope1; \
3516
  UINT f_FRj; \
3517
  unsigned int length;
3518
#define EXTRACT_IFMT_FCMPS_CODE \
3519
  length = 4; \
3520
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3521
  f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3522
  f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3523
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3524
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3525
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3526
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3527
 
3528
#define EXTRACT_IFMT_FCMPD_VARS \
3529
  UINT f_pack; \
3530
  UINT f_cond_null; \
3531
  UINT f_FCCi_2; \
3532
  UINT f_op; \
3533
  UINT f_FRi; \
3534
  UINT f_ope1; \
3535
  UINT f_FRj; \
3536
  unsigned int length;
3537
#define EXTRACT_IFMT_FCMPD_CODE \
3538
  length = 4; \
3539
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3540
  f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3541
  f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3542
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3543
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3544
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3545
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3546
 
3547
#define EXTRACT_IFMT_CFCMPS_VARS \
3548
  UINT f_pack; \
3549
  UINT f_cond_null; \
3550
  UINT f_FCCi_2; \
3551
  UINT f_op; \
3552
  UINT f_FRi; \
3553
  UINT f_CCi; \
3554
  UINT f_cond; \
3555
  UINT f_ope4; \
3556
  UINT f_FRj; \
3557
  unsigned int length;
3558
#define EXTRACT_IFMT_CFCMPS_CODE \
3559
  length = 4; \
3560
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3561
  f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3562
  f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3563
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3564
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3565
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3566
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3567
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3568
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3569
 
3570
#define EXTRACT_IFMT_MHSETLOS_VARS \
3571
  UINT f_pack; \
3572
  UINT f_FRk; \
3573
  UINT f_op; \
3574
  UINT f_ope1; \
3575
  INT f_u12_h; \
3576
  UINT f_u12_l; \
3577
  INT f_u12; \
3578
  unsigned int length;
3579
#define EXTRACT_IFMT_MHSETLOS_CODE \
3580
  length = 4; \
3581
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3582
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3583
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3584
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3585
  f_u12_h = EXTRACT_LSB0_SINT (insn, 32, 17, 6); \
3586
  f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3587
{\
3588
  f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3589
}\
3590
 
3591
#define EXTRACT_IFMT_MHSETHIS_VARS \
3592
  UINT f_pack; \
3593
  UINT f_FRk; \
3594
  UINT f_op; \
3595
  UINT f_ope1; \
3596
  INT f_u12_h; \
3597
  UINT f_u12_l; \
3598
  INT f_u12; \
3599
  unsigned int length;
3600
#define EXTRACT_IFMT_MHSETHIS_CODE \
3601
  length = 4; \
3602
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3603
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3604
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3605
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3606
  f_u12_h = EXTRACT_LSB0_SINT (insn, 32, 17, 6); \
3607
  f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3608
{\
3609
  f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3610
}\
3611
 
3612
#define EXTRACT_IFMT_MHDSETS_VARS \
3613
  UINT f_pack; \
3614
  UINT f_FRk; \
3615
  UINT f_op; \
3616
  UINT f_ope1; \
3617
  INT f_u12_h; \
3618
  UINT f_u12_l; \
3619
  INT f_u12; \
3620
  unsigned int length;
3621
#define EXTRACT_IFMT_MHDSETS_CODE \
3622
  length = 4; \
3623
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3624
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3625
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3626
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3627
  f_u12_h = EXTRACT_LSB0_SINT (insn, 32, 17, 6); \
3628
  f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3629
{\
3630
  f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));\
3631
}\
3632
 
3633
#define EXTRACT_IFMT_MHSETLOH_VARS \
3634
  UINT f_pack; \
3635
  UINT f_FRk; \
3636
  UINT f_op; \
3637
  UINT f_FRi_null; \
3638
  UINT f_ope1; \
3639
  UINT f_misc_null_11; \
3640
  INT f_s5; \
3641
  unsigned int length;
3642
#define EXTRACT_IFMT_MHSETLOH_CODE \
3643
  length = 4; \
3644
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3645
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3646
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3647
  f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3648
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3649
  f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3650
  f_s5 = EXTRACT_LSB0_SINT (insn, 32, 4, 5); \
3651
 
3652
#define EXTRACT_IFMT_MHSETHIH_VARS \
3653
  UINT f_pack; \
3654
  UINT f_FRk; \
3655
  UINT f_op; \
3656
  UINT f_FRi_null; \
3657
  UINT f_ope1; \
3658
  UINT f_misc_null_11; \
3659
  INT f_s5; \
3660
  unsigned int length;
3661
#define EXTRACT_IFMT_MHSETHIH_CODE \
3662
  length = 4; \
3663
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3664
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3665
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3666
  f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3667
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3668
  f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3669
  f_s5 = EXTRACT_LSB0_SINT (insn, 32, 4, 5); \
3670
 
3671
#define EXTRACT_IFMT_MHDSETH_VARS \
3672
  UINT f_pack; \
3673
  UINT f_FRk; \
3674
  UINT f_op; \
3675
  UINT f_FRi_null; \
3676
  UINT f_ope1; \
3677
  UINT f_misc_null_11; \
3678
  INT f_s5; \
3679
  unsigned int length;
3680
#define EXTRACT_IFMT_MHDSETH_CODE \
3681
  length = 4; \
3682
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3683
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3684
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3685
  f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3686
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3687
  f_misc_null_11 = EXTRACT_LSB0_UINT (insn, 32, 5, 1); \
3688
  f_s5 = EXTRACT_LSB0_SINT (insn, 32, 4, 5); \
3689
 
3690
#define EXTRACT_IFMT_MAND_VARS \
3691
  UINT f_pack; \
3692
  UINT f_FRk; \
3693
  UINT f_op; \
3694
  UINT f_FRi; \
3695
  UINT f_ope1; \
3696
  UINT f_FRj; \
3697
  unsigned int length;
3698
#define EXTRACT_IFMT_MAND_CODE \
3699
  length = 4; \
3700
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3701
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3702
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3703
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3704
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3705
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3706
 
3707
#define EXTRACT_IFMT_CMAND_VARS \
3708
  UINT f_pack; \
3709
  UINT f_FRk; \
3710
  UINT f_op; \
3711
  UINT f_FRi; \
3712
  UINT f_CCi; \
3713
  UINT f_cond; \
3714
  UINT f_ope4; \
3715
  UINT f_FRj; \
3716
  unsigned int length;
3717
#define EXTRACT_IFMT_CMAND_CODE \
3718
  length = 4; \
3719
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3720
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3721
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3722
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3723
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3724
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3725
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3726
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3727
 
3728
#define EXTRACT_IFMT_MNOT_VARS \
3729
  UINT f_pack; \
3730
  UINT f_FRk; \
3731
  UINT f_op; \
3732
  UINT f_rs_null; \
3733
  UINT f_ope1; \
3734
  UINT f_FRj; \
3735
  unsigned int length;
3736
#define EXTRACT_IFMT_MNOT_CODE \
3737
  length = 4; \
3738
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3739
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3740
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3741
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3742
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3743
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3744
 
3745
#define EXTRACT_IFMT_CMNOT_VARS \
3746
  UINT f_pack; \
3747
  UINT f_FRk; \
3748
  UINT f_op; \
3749
  UINT f_rs_null; \
3750
  UINT f_CCi; \
3751
  UINT f_cond; \
3752
  UINT f_ope4; \
3753
  UINT f_FRj; \
3754
  unsigned int length;
3755
#define EXTRACT_IFMT_CMNOT_CODE \
3756
  length = 4; \
3757
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3758
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3759
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3760
  f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3761
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3762
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3763
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3764
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3765
 
3766
#define EXTRACT_IFMT_MROTLI_VARS \
3767
  UINT f_pack; \
3768
  UINT f_FRk; \
3769
  UINT f_op; \
3770
  UINT f_FRi; \
3771
  UINT f_ope1; \
3772
  UINT f_u6; \
3773
  unsigned int length;
3774
#define EXTRACT_IFMT_MROTLI_CODE \
3775
  length = 4; \
3776
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3777
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3778
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3779
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3780
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3781
  f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3782
 
3783
#define EXTRACT_IFMT_MCUT_VARS \
3784
  UINT f_pack; \
3785
  UINT f_FRk; \
3786
  UINT f_op; \
3787
  UINT f_ACC40Si; \
3788
  UINT f_ope1; \
3789
  UINT f_FRj; \
3790
  unsigned int length;
3791
#define EXTRACT_IFMT_MCUT_CODE \
3792
  length = 4; \
3793
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3794
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3795
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3796
  f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3797
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3798
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3799
 
3800
#define EXTRACT_IFMT_MCUTI_VARS \
3801
  UINT f_pack; \
3802
  UINT f_FRk; \
3803
  UINT f_op; \
3804
  UINT f_ACC40Si; \
3805
  UINT f_ope1; \
3806
  INT f_s6; \
3807
  unsigned int length;
3808
#define EXTRACT_IFMT_MCUTI_CODE \
3809
  length = 4; \
3810
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3811
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3812
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3813
  f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3814
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3815
  f_s6 = EXTRACT_LSB0_SINT (insn, 32, 5, 6); \
3816
 
3817
#define EXTRACT_IFMT_MDCUTSSI_VARS \
3818
  UINT f_pack; \
3819
  UINT f_FRk; \
3820
  UINT f_op; \
3821
  UINT f_ACC40Si; \
3822
  UINT f_ope1; \
3823
  INT f_s6; \
3824
  unsigned int length;
3825
#define EXTRACT_IFMT_MDCUTSSI_CODE \
3826
  length = 4; \
3827
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3828
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3829
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3830
  f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3831
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3832
  f_s6 = EXTRACT_LSB0_SINT (insn, 32, 5, 6); \
3833
 
3834
#define EXTRACT_IFMT_MDROTLI_VARS \
3835
  UINT f_pack; \
3836
  UINT f_FRk; \
3837
  UINT f_op; \
3838
  UINT f_FRi; \
3839
  UINT f_ope1; \
3840
  INT f_s6; \
3841
  unsigned int length;
3842
#define EXTRACT_IFMT_MDROTLI_CODE \
3843
  length = 4; \
3844
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3845
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3846
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3847
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3848
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3849
  f_s6 = EXTRACT_LSB0_SINT (insn, 32, 5, 6); \
3850
 
3851
#define EXTRACT_IFMT_MQSATHS_VARS \
3852
  UINT f_pack; \
3853
  UINT f_FRk; \
3854
  UINT f_op; \
3855
  UINT f_FRi; \
3856
  UINT f_ope1; \
3857
  UINT f_FRj; \
3858
  unsigned int length;
3859
#define EXTRACT_IFMT_MQSATHS_CODE \
3860
  length = 4; \
3861
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3862
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3863
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3864
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3865
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3866
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3867
 
3868
#define EXTRACT_IFMT_MCMPSH_VARS \
3869
  UINT f_pack; \
3870
  UINT f_cond_null; \
3871
  UINT f_FCCk; \
3872
  UINT f_op; \
3873
  UINT f_FRi; \
3874
  UINT f_ope1; \
3875
  UINT f_FRj; \
3876
  unsigned int length;
3877
#define EXTRACT_IFMT_MCMPSH_CODE \
3878
  length = 4; \
3879
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3880
  f_cond_null = EXTRACT_LSB0_UINT (insn, 32, 30, 4); \
3881
  f_FCCk = EXTRACT_LSB0_UINT (insn, 32, 26, 2); \
3882
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3883
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3884
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3885
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3886
 
3887
#define EXTRACT_IFMT_MABSHS_VARS \
3888
  UINT f_pack; \
3889
  UINT f_FRk; \
3890
  UINT f_op; \
3891
  UINT f_FRi_null; \
3892
  UINT f_ope1; \
3893
  UINT f_FRj; \
3894
  unsigned int length;
3895
#define EXTRACT_IFMT_MABSHS_CODE \
3896
  length = 4; \
3897
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3898
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3899
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3900
  f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3901
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3902
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3903
 
3904
#define EXTRACT_IFMT_CMQADDHSS_VARS \
3905
  UINT f_pack; \
3906
  UINT f_FRk; \
3907
  UINT f_op; \
3908
  UINT f_FRi; \
3909
  UINT f_CCi; \
3910
  UINT f_cond; \
3911
  UINT f_ope4; \
3912
  UINT f_FRj; \
3913
  unsigned int length;
3914
#define EXTRACT_IFMT_CMQADDHSS_CODE \
3915
  length = 4; \
3916
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3917
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3918
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3919
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3920
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3921
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3922
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3923
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3924
 
3925
#define EXTRACT_IFMT_MQSLLHI_VARS \
3926
  UINT f_pack; \
3927
  UINT f_FRk; \
3928
  UINT f_op; \
3929
  UINT f_FRi; \
3930
  UINT f_ope1; \
3931
  UINT f_u6; \
3932
  unsigned int length;
3933
#define EXTRACT_IFMT_MQSLLHI_CODE \
3934
  length = 4; \
3935
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3936
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3937
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3938
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3939
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3940
  f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3941
 
3942
#define EXTRACT_IFMT_MADDACCS_VARS \
3943
  UINT f_pack; \
3944
  UINT f_ACC40Sk; \
3945
  UINT f_op; \
3946
  UINT f_ACC40Si; \
3947
  UINT f_ope1; \
3948
  UINT f_ACCj_null; \
3949
  unsigned int length;
3950
#define EXTRACT_IFMT_MADDACCS_CODE \
3951
  length = 4; \
3952
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3953
  f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3954
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3955
  f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3956
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3957
  f_ACCj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3958
 
3959
#define EXTRACT_IFMT_MMULHS_VARS \
3960
  UINT f_pack; \
3961
  UINT f_ACC40Sk; \
3962
  UINT f_op; \
3963
  UINT f_FRi; \
3964
  UINT f_ope1; \
3965
  UINT f_FRj; \
3966
  unsigned int length;
3967
#define EXTRACT_IFMT_MMULHS_CODE \
3968
  length = 4; \
3969
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3970
  f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3971
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3972
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3973
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
3974
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3975
 
3976
#define EXTRACT_IFMT_CMMULHS_VARS \
3977
  UINT f_pack; \
3978
  UINT f_ACC40Sk; \
3979
  UINT f_op; \
3980
  UINT f_FRi; \
3981
  UINT f_CCi; \
3982
  UINT f_cond; \
3983
  UINT f_ope4; \
3984
  UINT f_FRj; \
3985
  unsigned int length;
3986
#define EXTRACT_IFMT_CMMULHS_CODE \
3987
  length = 4; \
3988
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
3989
  f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
3990
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
3991
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
3992
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
3993
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
3994
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
3995
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
3996
 
3997
#define EXTRACT_IFMT_MQMULHS_VARS \
3998
  UINT f_pack; \
3999
  UINT f_ACC40Sk; \
4000
  UINT f_op; \
4001
  UINT f_FRi; \
4002
  UINT f_ope1; \
4003
  UINT f_FRj; \
4004
  unsigned int length;
4005
#define EXTRACT_IFMT_MQMULHS_CODE \
4006
  length = 4; \
4007
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4008
  f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4009
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4010
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4011
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4012
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4013
 
4014
#define EXTRACT_IFMT_CMQMULHS_VARS \
4015
  UINT f_pack; \
4016
  UINT f_ACC40Sk; \
4017
  UINT f_op; \
4018
  UINT f_FRi; \
4019
  UINT f_CCi; \
4020
  UINT f_cond; \
4021
  UINT f_ope4; \
4022
  UINT f_FRj; \
4023
  unsigned int length;
4024
#define EXTRACT_IFMT_CMQMULHS_CODE \
4025
  length = 4; \
4026
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4027
  f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4028
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4029
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4030
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4031
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4032
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4033
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4034
 
4035
#define EXTRACT_IFMT_MMACHU_VARS \
4036
  UINT f_pack; \
4037
  UINT f_ACC40Uk; \
4038
  UINT f_op; \
4039
  UINT f_FRi; \
4040
  UINT f_ope1; \
4041
  UINT f_FRj; \
4042
  unsigned int length;
4043
#define EXTRACT_IFMT_MMACHU_CODE \
4044
  length = 4; \
4045
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4046
  f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4047
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4048
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4049
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4050
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4051
 
4052
#define EXTRACT_IFMT_CMMACHU_VARS \
4053
  UINT f_pack; \
4054
  UINT f_ACC40Uk; \
4055
  UINT f_op; \
4056
  UINT f_FRi; \
4057
  UINT f_CCi; \
4058
  UINT f_cond; \
4059
  UINT f_ope4; \
4060
  UINT f_FRj; \
4061
  unsigned int length;
4062
#define EXTRACT_IFMT_CMMACHU_CODE \
4063
  length = 4; \
4064
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4065
  f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4066
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4067
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4068
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4069
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4070
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4071
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4072
 
4073
#define EXTRACT_IFMT_MQMACHU_VARS \
4074
  UINT f_pack; \
4075
  UINT f_ACC40Uk; \
4076
  UINT f_op; \
4077
  UINT f_FRi; \
4078
  UINT f_ope1; \
4079
  UINT f_FRj; \
4080
  unsigned int length;
4081
#define EXTRACT_IFMT_MQMACHU_CODE \
4082
  length = 4; \
4083
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4084
  f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4085
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4086
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4087
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4088
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4089
 
4090
#define EXTRACT_IFMT_CMQMACHU_VARS \
4091
  UINT f_pack; \
4092
  UINT f_ACC40Uk; \
4093
  UINT f_op; \
4094
  UINT f_FRi; \
4095
  UINT f_CCi; \
4096
  UINT f_cond; \
4097
  UINT f_ope4; \
4098
  UINT f_FRj; \
4099
  unsigned int length;
4100
#define EXTRACT_IFMT_CMQMACHU_CODE \
4101
  length = 4; \
4102
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4103
  f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4104
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4105
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4106
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4107
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4108
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4109
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4110
 
4111
#define EXTRACT_IFMT_CMEXPDHW_VARS \
4112
  UINT f_pack; \
4113
  UINT f_FRk; \
4114
  UINT f_op; \
4115
  UINT f_FRi; \
4116
  UINT f_CCi; \
4117
  UINT f_cond; \
4118
  UINT f_ope4; \
4119
  UINT f_u6; \
4120
  unsigned int length;
4121
#define EXTRACT_IFMT_CMEXPDHW_CODE \
4122
  length = 4; \
4123
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4124
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4125
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4126
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4127
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4128
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4129
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4130
  f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4131
 
4132
#define EXTRACT_IFMT_MEXPDHD_VARS \
4133
  UINT f_pack; \
4134
  UINT f_FRk; \
4135
  UINT f_op; \
4136
  UINT f_FRi; \
4137
  UINT f_ope1; \
4138
  UINT f_u6; \
4139
  unsigned int length;
4140
#define EXTRACT_IFMT_MEXPDHD_CODE \
4141
  length = 4; \
4142
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4143
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4144
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4145
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4146
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4147
  f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4148
 
4149
#define EXTRACT_IFMT_CMEXPDHD_VARS \
4150
  UINT f_pack; \
4151
  UINT f_FRk; \
4152
  UINT f_op; \
4153
  UINT f_FRi; \
4154
  UINT f_CCi; \
4155
  UINT f_cond; \
4156
  UINT f_ope4; \
4157
  UINT f_u6; \
4158
  unsigned int length;
4159
#define EXTRACT_IFMT_CMEXPDHD_CODE \
4160
  length = 4; \
4161
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4162
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4163
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4164
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4165
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4166
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4167
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4168
  f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4169
 
4170
#define EXTRACT_IFMT_MUNPACKH_VARS \
4171
  UINT f_pack; \
4172
  UINT f_FRk; \
4173
  UINT f_op; \
4174
  UINT f_FRi; \
4175
  UINT f_ope1; \
4176
  UINT f_FRj_null; \
4177
  unsigned int length;
4178
#define EXTRACT_IFMT_MUNPACKH_CODE \
4179
  length = 4; \
4180
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4181
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4182
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4183
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4184
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4185
  f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4186
 
4187
#define EXTRACT_IFMT_MDUNPACKH_VARS \
4188
  UINT f_pack; \
4189
  UINT f_FRk; \
4190
  UINT f_op; \
4191
  UINT f_FRi; \
4192
  UINT f_ope1; \
4193
  UINT f_FRj_null; \
4194
  unsigned int length;
4195
#define EXTRACT_IFMT_MDUNPACKH_CODE \
4196
  length = 4; \
4197
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4198
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4199
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4200
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4201
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4202
  f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4203
 
4204
#define EXTRACT_IFMT_MBTOH_VARS \
4205
  UINT f_pack; \
4206
  UINT f_FRk; \
4207
  UINT f_op; \
4208
  UINT f_FRi_null; \
4209
  UINT f_ope1; \
4210
  UINT f_FRj; \
4211
  unsigned int length;
4212
#define EXTRACT_IFMT_MBTOH_CODE \
4213
  length = 4; \
4214
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4215
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4216
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4217
  f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4218
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4219
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4220
 
4221
#define EXTRACT_IFMT_CMBTOH_VARS \
4222
  UINT f_pack; \
4223
  UINT f_FRk; \
4224
  UINT f_op; \
4225
  UINT f_FRi_null; \
4226
  UINT f_CCi; \
4227
  UINT f_cond; \
4228
  UINT f_ope4; \
4229
  UINT f_FRj; \
4230
  unsigned int length;
4231
#define EXTRACT_IFMT_CMBTOH_CODE \
4232
  length = 4; \
4233
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4234
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4235
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4236
  f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4237
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4238
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4239
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4240
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4241
 
4242
#define EXTRACT_IFMT_MHTOB_VARS \
4243
  UINT f_pack; \
4244
  UINT f_FRk; \
4245
  UINT f_op; \
4246
  UINT f_FRi_null; \
4247
  UINT f_ope1; \
4248
  UINT f_FRj; \
4249
  unsigned int length;
4250
#define EXTRACT_IFMT_MHTOB_CODE \
4251
  length = 4; \
4252
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4253
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4254
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4255
  f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4256
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4257
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4258
 
4259
#define EXTRACT_IFMT_CMHTOB_VARS \
4260
  UINT f_pack; \
4261
  UINT f_FRk; \
4262
  UINT f_op; \
4263
  UINT f_FRi_null; \
4264
  UINT f_CCi; \
4265
  UINT f_cond; \
4266
  UINT f_ope4; \
4267
  UINT f_FRj; \
4268
  unsigned int length;
4269
#define EXTRACT_IFMT_CMHTOB_CODE \
4270
  length = 4; \
4271
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4272
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4273
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4274
  f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4275
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4276
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4277
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4278
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4279
 
4280
#define EXTRACT_IFMT_CMBTOHE_VARS \
4281
  UINT f_pack; \
4282
  UINT f_FRk; \
4283
  UINT f_op; \
4284
  UINT f_FRi_null; \
4285
  UINT f_CCi; \
4286
  UINT f_cond; \
4287
  UINT f_ope4; \
4288
  UINT f_FRj; \
4289
  unsigned int length;
4290
#define EXTRACT_IFMT_CMBTOHE_CODE \
4291
  length = 4; \
4292
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4293
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4294
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4295
  f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4296
  f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \
4297
  f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \
4298
  f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \
4299
  f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4300
 
4301
#define EXTRACT_IFMT_MNOP_VARS \
4302
  UINT f_pack; \
4303
  UINT f_ACC40Sk; \
4304
  UINT f_op; \
4305
  UINT f_A; \
4306
  UINT f_misc_null_10; \
4307
  UINT f_ope1; \
4308
  UINT f_FRj_null; \
4309
  unsigned int length;
4310
#define EXTRACT_IFMT_MNOP_CODE \
4311
  length = 4; \
4312
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4313
  f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4314
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4315
  f_A = EXTRACT_LSB0_UINT (insn, 32, 17, 1); \
4316
  f_misc_null_10 = EXTRACT_LSB0_UINT (insn, 32, 16, 5); \
4317
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4318
  f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4319
 
4320
#define EXTRACT_IFMT_MCLRACC_0_VARS \
4321
  UINT f_pack; \
4322
  UINT f_ACC40Sk; \
4323
  UINT f_op; \
4324
  UINT f_A; \
4325
  UINT f_misc_null_10; \
4326
  UINT f_ope1; \
4327
  UINT f_FRj_null; \
4328
  unsigned int length;
4329
#define EXTRACT_IFMT_MCLRACC_0_CODE \
4330
  length = 4; \
4331
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4332
  f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4333
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4334
  f_A = EXTRACT_LSB0_UINT (insn, 32, 17, 1); \
4335
  f_misc_null_10 = EXTRACT_LSB0_UINT (insn, 32, 16, 5); \
4336
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4337
  f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4338
 
4339
#define EXTRACT_IFMT_MRDACC_VARS \
4340
  UINT f_pack; \
4341
  UINT f_FRk; \
4342
  UINT f_op; \
4343
  UINT f_ACC40Si; \
4344
  UINT f_ope1; \
4345
  UINT f_FRj_null; \
4346
  unsigned int length;
4347
#define EXTRACT_IFMT_MRDACC_CODE \
4348
  length = 4; \
4349
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4350
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4351
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4352
  f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4353
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4354
  f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4355
 
4356
#define EXTRACT_IFMT_MRDACCG_VARS \
4357
  UINT f_pack; \
4358
  UINT f_FRk; \
4359
  UINT f_op; \
4360
  UINT f_ACCGi; \
4361
  UINT f_ope1; \
4362
  UINT f_FRj_null; \
4363
  unsigned int length;
4364
#define EXTRACT_IFMT_MRDACCG_CODE \
4365
  length = 4; \
4366
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4367
  f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4368
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4369
  f_ACCGi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4370
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4371
  f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4372
 
4373
#define EXTRACT_IFMT_MWTACC_VARS \
4374
  UINT f_pack; \
4375
  UINT f_ACC40Sk; \
4376
  UINT f_op; \
4377
  UINT f_FRi; \
4378
  UINT f_ope1; \
4379
  UINT f_FRj_null; \
4380
  unsigned int length;
4381
#define EXTRACT_IFMT_MWTACC_CODE \
4382
  length = 4; \
4383
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4384
  f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4385
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4386
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4387
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4388
  f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4389
 
4390
#define EXTRACT_IFMT_MWTACCG_VARS \
4391
  UINT f_pack; \
4392
  UINT f_ACCGk; \
4393
  UINT f_op; \
4394
  UINT f_FRi; \
4395
  UINT f_ope1; \
4396
  UINT f_FRj_null; \
4397
  unsigned int length;
4398
#define EXTRACT_IFMT_MWTACCG_CODE \
4399
  length = 4; \
4400
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4401
  f_ACCGk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4402
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4403
  f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4404
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4405
  f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4406
 
4407
#define EXTRACT_IFMT_FNOP_VARS \
4408
  UINT f_pack; \
4409
  UINT f_rd_null; \
4410
  UINT f_op; \
4411
  UINT f_FRi_null; \
4412
  UINT f_ope1; \
4413
  UINT f_FRj_null; \
4414
  unsigned int length;
4415
#define EXTRACT_IFMT_FNOP_CODE \
4416
  length = 4; \
4417
  f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \
4418
  f_rd_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \
4419
  f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \
4420
  f_FRi_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \
4421
  f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \
4422
  f_FRj_null = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \
4423
 
4424
/* Collection of various things for the trace handler to use.  */
4425
 
4426
typedef struct trace_record {
4427
  IADDR pc;
4428
  /* FIXME:wip */
4429
} TRACE_RECORD;
4430
 
4431
#endif /* CPU_FRVBF_H */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.