1 /* Simulator instruction decoder for i960base.
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
5 Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
7 This file is part of the GNU Simulators.
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 2, or (at your option)
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
19 You should have received a copy of the GNU General Public License along
20 with this program; if not, write to the Free Software Foundation, Inc.,
21 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25 #define WANT_CPU i960base
26 #define WANT_CPU_I960BASE
29 #include "sim-assert.h"
31 /* FIXME: Need to review choices for the following. */
33 #if WITH_SEM_SWITCH_FULL
36 #define FULL(fn) CONCAT3 (i960base,_sem_,fn) ,
40 #if WITH_SEM_SWITCH_FAST
43 #define FAST(fn) CONCAT3 (i960base,_semf_,fn) , /* f for fast */
49 /* The instruction descriptor array.
50 This is computed at runtime. Space for it is not malloc'd to save a
51 teensy bit of cpu in the decoder. Moving it to malloc space is trivial
52 but won't be done until necessary (we don't currently support the runtime
53 addition of instructions nor an SMP machine with different cpus). */
54 static IDESC i960base_insn_data
[I960BASE_INSN_MAX
];
56 /* The INSN_ prefix is not here and is instead part of the `insn' argument
57 to avoid collisions with header files (e.g. `AND' in ansidecl.h). */
58 #define IDX(insn) CONCAT2 (I960BASE_,insn)
59 #define TYPE(insn) CONCAT2 (I960_,insn)
61 /* Commas between elements are contained in the macros.
62 Some of these are conditionally compiled out. */
64 static const struct insn_sem i960base_insn_sem
[] =
66 { VIRTUAL_INSN_X_INVALID
, IDX (INSN_X_INVALID
), FULL (x_invalid
) FAST (x_invalid
) },
67 { VIRTUAL_INSN_X_AFTER
, IDX (INSN_X_AFTER
), FULL (x_after
) FAST (x_after
) },
68 { VIRTUAL_INSN_X_BEFORE
, IDX (INSN_X_BEFORE
), FULL (x_before
) FAST (x_before
) },
69 { VIRTUAL_INSN_X_CTI_CHAIN
, IDX (INSN_X_CTI_CHAIN
), FULL (x_cti_chain
) FAST (x_cti_chain
) },
70 { VIRTUAL_INSN_X_CHAIN
, IDX (INSN_X_CHAIN
), FULL (x_chain
) FAST (x_chain
) },
71 { VIRTUAL_INSN_X_BEGIN
, IDX (INSN_X_BEGIN
), FULL (x_begin
) FAST (x_begin
) },
72 { TYPE (INSN_MULO
), IDX (INSN_MULO
), FULL (mulo
) FAST (mulo
) },
73 { TYPE (INSN_MULO1
), IDX (INSN_MULO1
), FULL (mulo1
) FAST (mulo1
) },
74 { TYPE (INSN_MULO2
), IDX (INSN_MULO2
), FULL (mulo2
) FAST (mulo2
) },
75 { TYPE (INSN_MULO3
), IDX (INSN_MULO3
), FULL (mulo3
) FAST (mulo3
) },
76 { TYPE (INSN_REMO
), IDX (INSN_REMO
), FULL (remo
) FAST (remo
) },
77 { TYPE (INSN_REMO1
), IDX (INSN_REMO1
), FULL (remo1
) FAST (remo1
) },
78 { TYPE (INSN_REMO2
), IDX (INSN_REMO2
), FULL (remo2
) FAST (remo2
) },
79 { TYPE (INSN_REMO3
), IDX (INSN_REMO3
), FULL (remo3
) FAST (remo3
) },
80 { TYPE (INSN_DIVO
), IDX (INSN_DIVO
), FULL (divo
) FAST (divo
) },
81 { TYPE (INSN_DIVO1
), IDX (INSN_DIVO1
), FULL (divo1
) FAST (divo1
) },
82 { TYPE (INSN_DIVO2
), IDX (INSN_DIVO2
), FULL (divo2
) FAST (divo2
) },
83 { TYPE (INSN_DIVO3
), IDX (INSN_DIVO3
), FULL (divo3
) FAST (divo3
) },
84 { TYPE (INSN_REMI
), IDX (INSN_REMI
), FULL (remi
) FAST (remi
) },
85 { TYPE (INSN_REMI1
), IDX (INSN_REMI1
), FULL (remi1
) FAST (remi1
) },
86 { TYPE (INSN_REMI2
), IDX (INSN_REMI2
), FULL (remi2
) FAST (remi2
) },
87 { TYPE (INSN_REMI3
), IDX (INSN_REMI3
), FULL (remi3
) FAST (remi3
) },
88 { TYPE (INSN_DIVI
), IDX (INSN_DIVI
), FULL (divi
) FAST (divi
) },
89 { TYPE (INSN_DIVI1
), IDX (INSN_DIVI1
), FULL (divi1
) FAST (divi1
) },
90 { TYPE (INSN_DIVI2
), IDX (INSN_DIVI2
), FULL (divi2
) FAST (divi2
) },
91 { TYPE (INSN_DIVI3
), IDX (INSN_DIVI3
), FULL (divi3
) FAST (divi3
) },
92 { TYPE (INSN_ADDO
), IDX (INSN_ADDO
), FULL (addo
) FAST (addo
) },
93 { TYPE (INSN_ADDO1
), IDX (INSN_ADDO1
), FULL (addo1
) FAST (addo1
) },
94 { TYPE (INSN_ADDO2
), IDX (INSN_ADDO2
), FULL (addo2
) FAST (addo2
) },
95 { TYPE (INSN_ADDO3
), IDX (INSN_ADDO3
), FULL (addo3
) FAST (addo3
) },
96 { TYPE (INSN_SUBO
), IDX (INSN_SUBO
), FULL (subo
) FAST (subo
) },
97 { TYPE (INSN_SUBO1
), IDX (INSN_SUBO1
), FULL (subo1
) FAST (subo1
) },
98 { TYPE (INSN_SUBO2
), IDX (INSN_SUBO2
), FULL (subo2
) FAST (subo2
) },
99 { TYPE (INSN_SUBO3
), IDX (INSN_SUBO3
), FULL (subo3
) FAST (subo3
) },
100 { TYPE (INSN_NOTBIT
), IDX (INSN_NOTBIT
), FULL (notbit
) FAST (notbit
) },
101 { TYPE (INSN_NOTBIT1
), IDX (INSN_NOTBIT1
), FULL (notbit1
) FAST (notbit1
) },
102 { TYPE (INSN_NOTBIT2
), IDX (INSN_NOTBIT2
), FULL (notbit2
) FAST (notbit2
) },
103 { TYPE (INSN_NOTBIT3
), IDX (INSN_NOTBIT3
), FULL (notbit3
) FAST (notbit3
) },
104 { TYPE (INSN_AND
), IDX (INSN_AND
), FULL (and) FAST (and) },
105 { TYPE (INSN_AND1
), IDX (INSN_AND1
), FULL (and1
) FAST (and1
) },
106 { TYPE (INSN_AND2
), IDX (INSN_AND2
), FULL (and2
) FAST (and2
) },
107 { TYPE (INSN_AND3
), IDX (INSN_AND3
), FULL (and3
) FAST (and3
) },
108 { TYPE (INSN_ANDNOT
), IDX (INSN_ANDNOT
), FULL (andnot
) FAST (andnot
) },
109 { TYPE (INSN_ANDNOT1
), IDX (INSN_ANDNOT1
), FULL (andnot1
) FAST (andnot1
) },
110 { TYPE (INSN_ANDNOT2
), IDX (INSN_ANDNOT2
), FULL (andnot2
) FAST (andnot2
) },
111 { TYPE (INSN_ANDNOT3
), IDX (INSN_ANDNOT3
), FULL (andnot3
) FAST (andnot3
) },
112 { TYPE (INSN_SETBIT
), IDX (INSN_SETBIT
), FULL (setbit
) FAST (setbit
) },
113 { TYPE (INSN_SETBIT1
), IDX (INSN_SETBIT1
), FULL (setbit1
) FAST (setbit1
) },
114 { TYPE (INSN_SETBIT2
), IDX (INSN_SETBIT2
), FULL (setbit2
) FAST (setbit2
) },
115 { TYPE (INSN_SETBIT3
), IDX (INSN_SETBIT3
), FULL (setbit3
) FAST (setbit3
) },
116 { TYPE (INSN_NOTAND
), IDX (INSN_NOTAND
), FULL (notand
) FAST (notand
) },
117 { TYPE (INSN_NOTAND1
), IDX (INSN_NOTAND1
), FULL (notand1
) FAST (notand1
) },
118 { TYPE (INSN_NOTAND2
), IDX (INSN_NOTAND2
), FULL (notand2
) FAST (notand2
) },
119 { TYPE (INSN_NOTAND3
), IDX (INSN_NOTAND3
), FULL (notand3
) FAST (notand3
) },
120 { TYPE (INSN_XOR
), IDX (INSN_XOR
), FULL (xor) FAST (xor) },
121 { TYPE (INSN_XOR1
), IDX (INSN_XOR1
), FULL (xor1
) FAST (xor1
) },
122 { TYPE (INSN_XOR2
), IDX (INSN_XOR2
), FULL (xor2
) FAST (xor2
) },
123 { TYPE (INSN_XOR3
), IDX (INSN_XOR3
), FULL (xor3
) FAST (xor3
) },
124 { TYPE (INSN_OR
), IDX (INSN_OR
), FULL (or) FAST (or) },
125 { TYPE (INSN_OR1
), IDX (INSN_OR1
), FULL (or1
) FAST (or1
) },
126 { TYPE (INSN_OR2
), IDX (INSN_OR2
), FULL (or2
) FAST (or2
) },
127 { TYPE (INSN_OR3
), IDX (INSN_OR3
), FULL (or3
) FAST (or3
) },
128 { TYPE (INSN_NOR
), IDX (INSN_NOR
), FULL (nor
) FAST (nor
) },
129 { TYPE (INSN_NOR1
), IDX (INSN_NOR1
), FULL (nor1
) FAST (nor1
) },
130 { TYPE (INSN_NOR2
), IDX (INSN_NOR2
), FULL (nor2
) FAST (nor2
) },
131 { TYPE (INSN_NOR3
), IDX (INSN_NOR3
), FULL (nor3
) FAST (nor3
) },
132 { TYPE (INSN_NOT
), IDX (INSN_NOT
), FULL (not) FAST (not) },
133 { TYPE (INSN_NOT1
), IDX (INSN_NOT1
), FULL (not1
) FAST (not1
) },
134 { TYPE (INSN_NOT2
), IDX (INSN_NOT2
), FULL (not2
) FAST (not2
) },
135 { TYPE (INSN_NOT3
), IDX (INSN_NOT3
), FULL (not3
) FAST (not3
) },
136 { TYPE (INSN_CLRBIT
), IDX (INSN_CLRBIT
), FULL (clrbit
) FAST (clrbit
) },
137 { TYPE (INSN_CLRBIT1
), IDX (INSN_CLRBIT1
), FULL (clrbit1
) FAST (clrbit1
) },
138 { TYPE (INSN_CLRBIT2
), IDX (INSN_CLRBIT2
), FULL (clrbit2
) FAST (clrbit2
) },
139 { TYPE (INSN_CLRBIT3
), IDX (INSN_CLRBIT3
), FULL (clrbit3
) FAST (clrbit3
) },
140 { TYPE (INSN_SHLO
), IDX (INSN_SHLO
), FULL (shlo
) FAST (shlo
) },
141 { TYPE (INSN_SHLO1
), IDX (INSN_SHLO1
), FULL (shlo1
) FAST (shlo1
) },
142 { TYPE (INSN_SHLO2
), IDX (INSN_SHLO2
), FULL (shlo2
) FAST (shlo2
) },
143 { TYPE (INSN_SHLO3
), IDX (INSN_SHLO3
), FULL (shlo3
) FAST (shlo3
) },
144 { TYPE (INSN_SHRO
), IDX (INSN_SHRO
), FULL (shro
) FAST (shro
) },
145 { TYPE (INSN_SHRO1
), IDX (INSN_SHRO1
), FULL (shro1
) FAST (shro1
) },
146 { TYPE (INSN_SHRO2
), IDX (INSN_SHRO2
), FULL (shro2
) FAST (shro2
) },
147 { TYPE (INSN_SHRO3
), IDX (INSN_SHRO3
), FULL (shro3
) FAST (shro3
) },
148 { TYPE (INSN_SHLI
), IDX (INSN_SHLI
), FULL (shli
) FAST (shli
) },
149 { TYPE (INSN_SHLI1
), IDX (INSN_SHLI1
), FULL (shli1
) FAST (shli1
) },
150 { TYPE (INSN_SHLI2
), IDX (INSN_SHLI2
), FULL (shli2
) FAST (shli2
) },
151 { TYPE (INSN_SHLI3
), IDX (INSN_SHLI3
), FULL (shli3
) FAST (shli3
) },
152 { TYPE (INSN_SHRI
), IDX (INSN_SHRI
), FULL (shri
) FAST (shri
) },
153 { TYPE (INSN_SHRI1
), IDX (INSN_SHRI1
), FULL (shri1
) FAST (shri1
) },
154 { TYPE (INSN_SHRI2
), IDX (INSN_SHRI2
), FULL (shri2
) FAST (shri2
) },
155 { TYPE (INSN_SHRI3
), IDX (INSN_SHRI3
), FULL (shri3
) FAST (shri3
) },
156 { TYPE (INSN_EMUL
), IDX (INSN_EMUL
), FULL (emul
) FAST (emul
) },
157 { TYPE (INSN_EMUL1
), IDX (INSN_EMUL1
), FULL (emul1
) FAST (emul1
) },
158 { TYPE (INSN_EMUL2
), IDX (INSN_EMUL2
), FULL (emul2
) FAST (emul2
) },
159 { TYPE (INSN_EMUL3
), IDX (INSN_EMUL3
), FULL (emul3
) FAST (emul3
) },
160 { TYPE (INSN_MOV
), IDX (INSN_MOV
), FULL (mov
) FAST (mov
) },
161 { TYPE (INSN_MOV1
), IDX (INSN_MOV1
), FULL (mov1
) FAST (mov1
) },
162 { TYPE (INSN_MOVL
), IDX (INSN_MOVL
), FULL (movl
) FAST (movl
) },
163 { TYPE (INSN_MOVL1
), IDX (INSN_MOVL1
), FULL (movl1
) FAST (movl1
) },
164 { TYPE (INSN_MOVT
), IDX (INSN_MOVT
), FULL (movt
) FAST (movt
) },
165 { TYPE (INSN_MOVT1
), IDX (INSN_MOVT1
), FULL (movt1
) FAST (movt1
) },
166 { TYPE (INSN_MOVQ
), IDX (INSN_MOVQ
), FULL (movq
) FAST (movq
) },
167 { TYPE (INSN_MOVQ1
), IDX (INSN_MOVQ1
), FULL (movq1
) FAST (movq1
) },
168 { TYPE (INSN_MODPC
), IDX (INSN_MODPC
), FULL (modpc
) FAST (modpc
) },
169 { TYPE (INSN_MODAC
), IDX (INSN_MODAC
), FULL (modac
) FAST (modac
) },
170 { TYPE (INSN_LDA_OFFSET
), IDX (INSN_LDA_OFFSET
), FULL (lda_offset
) FAST (lda_offset
) },
171 { TYPE (INSN_LDA_INDIRECT_OFFSET
), IDX (INSN_LDA_INDIRECT_OFFSET
), FULL (lda_indirect_offset
) FAST (lda_indirect_offset
) },
172 { TYPE (INSN_LDA_INDIRECT
), IDX (INSN_LDA_INDIRECT
), FULL (lda_indirect
) FAST (lda_indirect
) },
173 { TYPE (INSN_LDA_INDIRECT_INDEX
), IDX (INSN_LDA_INDIRECT_INDEX
), FULL (lda_indirect_index
) FAST (lda_indirect_index
) },
174 { TYPE (INSN_LDA_DISP
), IDX (INSN_LDA_DISP
), FULL (lda_disp
) FAST (lda_disp
) },
175 { TYPE (INSN_LDA_INDIRECT_DISP
), IDX (INSN_LDA_INDIRECT_DISP
), FULL (lda_indirect_disp
) FAST (lda_indirect_disp
) },
176 { TYPE (INSN_LDA_INDEX_DISP
), IDX (INSN_LDA_INDEX_DISP
), FULL (lda_index_disp
) FAST (lda_index_disp
) },
177 { TYPE (INSN_LDA_INDIRECT_INDEX_DISP
), IDX (INSN_LDA_INDIRECT_INDEX_DISP
), FULL (lda_indirect_index_disp
) FAST (lda_indirect_index_disp
) },
178 { TYPE (INSN_LD_OFFSET
), IDX (INSN_LD_OFFSET
), FULL (ld_offset
) FAST (ld_offset
) },
179 { TYPE (INSN_LD_INDIRECT_OFFSET
), IDX (INSN_LD_INDIRECT_OFFSET
), FULL (ld_indirect_offset
) FAST (ld_indirect_offset
) },
180 { TYPE (INSN_LD_INDIRECT
), IDX (INSN_LD_INDIRECT
), FULL (ld_indirect
) FAST (ld_indirect
) },
181 { TYPE (INSN_LD_INDIRECT_INDEX
), IDX (INSN_LD_INDIRECT_INDEX
), FULL (ld_indirect_index
) FAST (ld_indirect_index
) },
182 { TYPE (INSN_LD_DISP
), IDX (INSN_LD_DISP
), FULL (ld_disp
) FAST (ld_disp
) },
183 { TYPE (INSN_LD_INDIRECT_DISP
), IDX (INSN_LD_INDIRECT_DISP
), FULL (ld_indirect_disp
) FAST (ld_indirect_disp
) },
184 { TYPE (INSN_LD_INDEX_DISP
), IDX (INSN_LD_INDEX_DISP
), FULL (ld_index_disp
) FAST (ld_index_disp
) },
185 { TYPE (INSN_LD_INDIRECT_INDEX_DISP
), IDX (INSN_LD_INDIRECT_INDEX_DISP
), FULL (ld_indirect_index_disp
) FAST (ld_indirect_index_disp
) },
186 { TYPE (INSN_LDOB_OFFSET
), IDX (INSN_LDOB_OFFSET
), FULL (ldob_offset
) FAST (ldob_offset
) },
187 { TYPE (INSN_LDOB_INDIRECT_OFFSET
), IDX (INSN_LDOB_INDIRECT_OFFSET
), FULL (ldob_indirect_offset
) FAST (ldob_indirect_offset
) },
188 { TYPE (INSN_LDOB_INDIRECT
), IDX (INSN_LDOB_INDIRECT
), FULL (ldob_indirect
) FAST (ldob_indirect
) },
189 { TYPE (INSN_LDOB_INDIRECT_INDEX
), IDX (INSN_LDOB_INDIRECT_INDEX
), FULL (ldob_indirect_index
) FAST (ldob_indirect_index
) },
190 { TYPE (INSN_LDOB_DISP
), IDX (INSN_LDOB_DISP
), FULL (ldob_disp
) FAST (ldob_disp
) },
191 { TYPE (INSN_LDOB_INDIRECT_DISP
), IDX (INSN_LDOB_INDIRECT_DISP
), FULL (ldob_indirect_disp
) FAST (ldob_indirect_disp
) },
192 { TYPE (INSN_LDOB_INDEX_DISP
), IDX (INSN_LDOB_INDEX_DISP
), FULL (ldob_index_disp
) FAST (ldob_index_disp
) },
193 { TYPE (INSN_LDOB_INDIRECT_INDEX_DISP
), IDX (INSN_LDOB_INDIRECT_INDEX_DISP
), FULL (ldob_indirect_index_disp
) FAST (ldob_indirect_index_disp
) },
194 { TYPE (INSN_LDOS_OFFSET
), IDX (INSN_LDOS_OFFSET
), FULL (ldos_offset
) FAST (ldos_offset
) },
195 { TYPE (INSN_LDOS_INDIRECT_OFFSET
), IDX (INSN_LDOS_INDIRECT_OFFSET
), FULL (ldos_indirect_offset
) FAST (ldos_indirect_offset
) },
196 { TYPE (INSN_LDOS_INDIRECT
), IDX (INSN_LDOS_INDIRECT
), FULL (ldos_indirect
) FAST (ldos_indirect
) },
197 { TYPE (INSN_LDOS_INDIRECT_INDEX
), IDX (INSN_LDOS_INDIRECT_INDEX
), FULL (ldos_indirect_index
) FAST (ldos_indirect_index
) },
198 { TYPE (INSN_LDOS_DISP
), IDX (INSN_LDOS_DISP
), FULL (ldos_disp
) FAST (ldos_disp
) },
199 { TYPE (INSN_LDOS_INDIRECT_DISP
), IDX (INSN_LDOS_INDIRECT_DISP
), FULL (ldos_indirect_disp
) FAST (ldos_indirect_disp
) },
200 { TYPE (INSN_LDOS_INDEX_DISP
), IDX (INSN_LDOS_INDEX_DISP
), FULL (ldos_index_disp
) FAST (ldos_index_disp
) },
201 { TYPE (INSN_LDOS_INDIRECT_INDEX_DISP
), IDX (INSN_LDOS_INDIRECT_INDEX_DISP
), FULL (ldos_indirect_index_disp
) FAST (ldos_indirect_index_disp
) },
202 { TYPE (INSN_LDIB_OFFSET
), IDX (INSN_LDIB_OFFSET
), FULL (ldib_offset
) FAST (ldib_offset
) },
203 { TYPE (INSN_LDIB_INDIRECT_OFFSET
), IDX (INSN_LDIB_INDIRECT_OFFSET
), FULL (ldib_indirect_offset
) FAST (ldib_indirect_offset
) },
204 { TYPE (INSN_LDIB_INDIRECT
), IDX (INSN_LDIB_INDIRECT
), FULL (ldib_indirect
) FAST (ldib_indirect
) },
205 { TYPE (INSN_LDIB_INDIRECT_INDEX
), IDX (INSN_LDIB_INDIRECT_INDEX
), FULL (ldib_indirect_index
) FAST (ldib_indirect_index
) },
206 { TYPE (INSN_LDIB_DISP
), IDX (INSN_LDIB_DISP
), FULL (ldib_disp
) FAST (ldib_disp
) },
207 { TYPE (INSN_LDIB_INDIRECT_DISP
), IDX (INSN_LDIB_INDIRECT_DISP
), FULL (ldib_indirect_disp
) FAST (ldib_indirect_disp
) },
208 { TYPE (INSN_LDIB_INDEX_DISP
), IDX (INSN_LDIB_INDEX_DISP
), FULL (ldib_index_disp
) FAST (ldib_index_disp
) },
209 { TYPE (INSN_LDIB_INDIRECT_INDEX_DISP
), IDX (INSN_LDIB_INDIRECT_INDEX_DISP
), FULL (ldib_indirect_index_disp
) FAST (ldib_indirect_index_disp
) },
210 { TYPE (INSN_LDIS_OFFSET
), IDX (INSN_LDIS_OFFSET
), FULL (ldis_offset
) FAST (ldis_offset
) },
211 { TYPE (INSN_LDIS_INDIRECT_OFFSET
), IDX (INSN_LDIS_INDIRECT_OFFSET
), FULL (ldis_indirect_offset
) FAST (ldis_indirect_offset
) },
212 { TYPE (INSN_LDIS_INDIRECT
), IDX (INSN_LDIS_INDIRECT
), FULL (ldis_indirect
) FAST (ldis_indirect
) },
213 { TYPE (INSN_LDIS_INDIRECT_INDEX
), IDX (INSN_LDIS_INDIRECT_INDEX
), FULL (ldis_indirect_index
) FAST (ldis_indirect_index
) },
214 { TYPE (INSN_LDIS_DISP
), IDX (INSN_LDIS_DISP
), FULL (ldis_disp
) FAST (ldis_disp
) },
215 { TYPE (INSN_LDIS_INDIRECT_DISP
), IDX (INSN_LDIS_INDIRECT_DISP
), FULL (ldis_indirect_disp
) FAST (ldis_indirect_disp
) },
216 { TYPE (INSN_LDIS_INDEX_DISP
), IDX (INSN_LDIS_INDEX_DISP
), FULL (ldis_index_disp
) FAST (ldis_index_disp
) },
217 { TYPE (INSN_LDIS_INDIRECT_INDEX_DISP
), IDX (INSN_LDIS_INDIRECT_INDEX_DISP
), FULL (ldis_indirect_index_disp
) FAST (ldis_indirect_index_disp
) },
218 { TYPE (INSN_LDL_OFFSET
), IDX (INSN_LDL_OFFSET
), FULL (ldl_offset
) FAST (ldl_offset
) },
219 { TYPE (INSN_LDL_INDIRECT_OFFSET
), IDX (INSN_LDL_INDIRECT_OFFSET
), FULL (ldl_indirect_offset
) FAST (ldl_indirect_offset
) },
220 { TYPE (INSN_LDL_INDIRECT
), IDX (INSN_LDL_INDIRECT
), FULL (ldl_indirect
) FAST (ldl_indirect
) },
221 { TYPE (INSN_LDL_INDIRECT_INDEX
), IDX (INSN_LDL_INDIRECT_INDEX
), FULL (ldl_indirect_index
) FAST (ldl_indirect_index
) },
222 { TYPE (INSN_LDL_DISP
), IDX (INSN_LDL_DISP
), FULL (ldl_disp
) FAST (ldl_disp
) },
223 { TYPE (INSN_LDL_INDIRECT_DISP
), IDX (INSN_LDL_INDIRECT_DISP
), FULL (ldl_indirect_disp
) FAST (ldl_indirect_disp
) },
224 { TYPE (INSN_LDL_INDEX_DISP
), IDX (INSN_LDL_INDEX_DISP
), FULL (ldl_index_disp
) FAST (ldl_index_disp
) },
225 { TYPE (INSN_LDL_INDIRECT_INDEX_DISP
), IDX (INSN_LDL_INDIRECT_INDEX_DISP
), FULL (ldl_indirect_index_disp
) FAST (ldl_indirect_index_disp
) },
226 { TYPE (INSN_LDT_OFFSET
), IDX (INSN_LDT_OFFSET
), FULL (ldt_offset
) FAST (ldt_offset
) },
227 { TYPE (INSN_LDT_INDIRECT_OFFSET
), IDX (INSN_LDT_INDIRECT_OFFSET
), FULL (ldt_indirect_offset
) FAST (ldt_indirect_offset
) },
228 { TYPE (INSN_LDT_INDIRECT
), IDX (INSN_LDT_INDIRECT
), FULL (ldt_indirect
) FAST (ldt_indirect
) },
229 { TYPE (INSN_LDT_INDIRECT_INDEX
), IDX (INSN_LDT_INDIRECT_INDEX
), FULL (ldt_indirect_index
) FAST (ldt_indirect_index
) },
230 { TYPE (INSN_LDT_DISP
), IDX (INSN_LDT_DISP
), FULL (ldt_disp
) FAST (ldt_disp
) },
231 { TYPE (INSN_LDT_INDIRECT_DISP
), IDX (INSN_LDT_INDIRECT_DISP
), FULL (ldt_indirect_disp
) FAST (ldt_indirect_disp
) },
232 { TYPE (INSN_LDT_INDEX_DISP
), IDX (INSN_LDT_INDEX_DISP
), FULL (ldt_index_disp
) FAST (ldt_index_disp
) },
233 { TYPE (INSN_LDT_INDIRECT_INDEX_DISP
), IDX (INSN_LDT_INDIRECT_INDEX_DISP
), FULL (ldt_indirect_index_disp
) FAST (ldt_indirect_index_disp
) },
234 { TYPE (INSN_LDQ_OFFSET
), IDX (INSN_LDQ_OFFSET
), FULL (ldq_offset
) FAST (ldq_offset
) },
235 { TYPE (INSN_LDQ_INDIRECT_OFFSET
), IDX (INSN_LDQ_INDIRECT_OFFSET
), FULL (ldq_indirect_offset
) FAST (ldq_indirect_offset
) },
236 { TYPE (INSN_LDQ_INDIRECT
), IDX (INSN_LDQ_INDIRECT
), FULL (ldq_indirect
) FAST (ldq_indirect
) },
237 { TYPE (INSN_LDQ_INDIRECT_INDEX
), IDX (INSN_LDQ_INDIRECT_INDEX
), FULL (ldq_indirect_index
) FAST (ldq_indirect_index
) },
238 { TYPE (INSN_LDQ_DISP
), IDX (INSN_LDQ_DISP
), FULL (ldq_disp
) FAST (ldq_disp
) },
239 { TYPE (INSN_LDQ_INDIRECT_DISP
), IDX (INSN_LDQ_INDIRECT_DISP
), FULL (ldq_indirect_disp
) FAST (ldq_indirect_disp
) },
240 { TYPE (INSN_LDQ_INDEX_DISP
), IDX (INSN_LDQ_INDEX_DISP
), FULL (ldq_index_disp
) FAST (ldq_index_disp
) },
241 { TYPE (INSN_LDQ_INDIRECT_INDEX_DISP
), IDX (INSN_LDQ_INDIRECT_INDEX_DISP
), FULL (ldq_indirect_index_disp
) FAST (ldq_indirect_index_disp
) },
242 { TYPE (INSN_ST_OFFSET
), IDX (INSN_ST_OFFSET
), FULL (st_offset
) FAST (st_offset
) },
243 { TYPE (INSN_ST_INDIRECT_OFFSET
), IDX (INSN_ST_INDIRECT_OFFSET
), FULL (st_indirect_offset
) FAST (st_indirect_offset
) },
244 { TYPE (INSN_ST_INDIRECT
), IDX (INSN_ST_INDIRECT
), FULL (st_indirect
) FAST (st_indirect
) },
245 { TYPE (INSN_ST_INDIRECT_INDEX
), IDX (INSN_ST_INDIRECT_INDEX
), FULL (st_indirect_index
) FAST (st_indirect_index
) },
246 { TYPE (INSN_ST_DISP
), IDX (INSN_ST_DISP
), FULL (st_disp
) FAST (st_disp
) },
247 { TYPE (INSN_ST_INDIRECT_DISP
), IDX (INSN_ST_INDIRECT_DISP
), FULL (st_indirect_disp
) FAST (st_indirect_disp
) },
248 { TYPE (INSN_ST_INDEX_DISP
), IDX (INSN_ST_INDEX_DISP
), FULL (st_index_disp
) FAST (st_index_disp
) },
249 { TYPE (INSN_ST_INDIRECT_INDEX_DISP
), IDX (INSN_ST_INDIRECT_INDEX_DISP
), FULL (st_indirect_index_disp
) FAST (st_indirect_index_disp
) },
250 { TYPE (INSN_STOB_OFFSET
), IDX (INSN_STOB_OFFSET
), FULL (stob_offset
) FAST (stob_offset
) },
251 { TYPE (INSN_STOB_INDIRECT_OFFSET
), IDX (INSN_STOB_INDIRECT_OFFSET
), FULL (stob_indirect_offset
) FAST (stob_indirect_offset
) },
252 { TYPE (INSN_STOB_INDIRECT
), IDX (INSN_STOB_INDIRECT
), FULL (stob_indirect
) FAST (stob_indirect
) },
253 { TYPE (INSN_STOB_INDIRECT_INDEX
), IDX (INSN_STOB_INDIRECT_INDEX
), FULL (stob_indirect_index
) FAST (stob_indirect_index
) },
254 { TYPE (INSN_STOB_DISP
), IDX (INSN_STOB_DISP
), FULL (stob_disp
) FAST (stob_disp
) },
255 { TYPE (INSN_STOB_INDIRECT_DISP
), IDX (INSN_STOB_INDIRECT_DISP
), FULL (stob_indirect_disp
) FAST (stob_indirect_disp
) },
256 { TYPE (INSN_STOB_INDEX_DISP
), IDX (INSN_STOB_INDEX_DISP
), FULL (stob_index_disp
) FAST (stob_index_disp
) },
257 { TYPE (INSN_STOB_INDIRECT_INDEX_DISP
), IDX (INSN_STOB_INDIRECT_INDEX_DISP
), FULL (stob_indirect_index_disp
) FAST (stob_indirect_index_disp
) },
258 { TYPE (INSN_STOS_OFFSET
), IDX (INSN_STOS_OFFSET
), FULL (stos_offset
) FAST (stos_offset
) },
259 { TYPE (INSN_STOS_INDIRECT_OFFSET
), IDX (INSN_STOS_INDIRECT_OFFSET
), FULL (stos_indirect_offset
) FAST (stos_indirect_offset
) },
260 { TYPE (INSN_STOS_INDIRECT
), IDX (INSN_STOS_INDIRECT
), FULL (stos_indirect
) FAST (stos_indirect
) },
261 { TYPE (INSN_STOS_INDIRECT_INDEX
), IDX (INSN_STOS_INDIRECT_INDEX
), FULL (stos_indirect_index
) FAST (stos_indirect_index
) },
262 { TYPE (INSN_STOS_DISP
), IDX (INSN_STOS_DISP
), FULL (stos_disp
) FAST (stos_disp
) },
263 { TYPE (INSN_STOS_INDIRECT_DISP
), IDX (INSN_STOS_INDIRECT_DISP
), FULL (stos_indirect_disp
) FAST (stos_indirect_disp
) },
264 { TYPE (INSN_STOS_INDEX_DISP
), IDX (INSN_STOS_INDEX_DISP
), FULL (stos_index_disp
) FAST (stos_index_disp
) },
265 { TYPE (INSN_STOS_INDIRECT_INDEX_DISP
), IDX (INSN_STOS_INDIRECT_INDEX_DISP
), FULL (stos_indirect_index_disp
) FAST (stos_indirect_index_disp
) },
266 { TYPE (INSN_STL_OFFSET
), IDX (INSN_STL_OFFSET
), FULL (stl_offset
) FAST (stl_offset
) },
267 { TYPE (INSN_STL_INDIRECT_OFFSET
), IDX (INSN_STL_INDIRECT_OFFSET
), FULL (stl_indirect_offset
) FAST (stl_indirect_offset
) },
268 { TYPE (INSN_STL_INDIRECT
), IDX (INSN_STL_INDIRECT
), FULL (stl_indirect
) FAST (stl_indirect
) },
269 { TYPE (INSN_STL_INDIRECT_INDEX
), IDX (INSN_STL_INDIRECT_INDEX
), FULL (stl_indirect_index
) FAST (stl_indirect_index
) },
270 { TYPE (INSN_STL_DISP
), IDX (INSN_STL_DISP
), FULL (stl_disp
) FAST (stl_disp
) },
271 { TYPE (INSN_STL_INDIRECT_DISP
), IDX (INSN_STL_INDIRECT_DISP
), FULL (stl_indirect_disp
) FAST (stl_indirect_disp
) },
272 { TYPE (INSN_STL_INDEX_DISP
), IDX (INSN_STL_INDEX_DISP
), FULL (stl_index_disp
) FAST (stl_index_disp
) },
273 { TYPE (INSN_STL_INDIRECT_INDEX_DISP
), IDX (INSN_STL_INDIRECT_INDEX_DISP
), FULL (stl_indirect_index_disp
) FAST (stl_indirect_index_disp
) },
274 { TYPE (INSN_STT_OFFSET
), IDX (INSN_STT_OFFSET
), FULL (stt_offset
) FAST (stt_offset
) },
275 { TYPE (INSN_STT_INDIRECT_OFFSET
), IDX (INSN_STT_INDIRECT_OFFSET
), FULL (stt_indirect_offset
) FAST (stt_indirect_offset
) },
276 { TYPE (INSN_STT_INDIRECT
), IDX (INSN_STT_INDIRECT
), FULL (stt_indirect
) FAST (stt_indirect
) },
277 { TYPE (INSN_STT_INDIRECT_INDEX
), IDX (INSN_STT_INDIRECT_INDEX
), FULL (stt_indirect_index
) FAST (stt_indirect_index
) },
278 { TYPE (INSN_STT_DISP
), IDX (INSN_STT_DISP
), FULL (stt_disp
) FAST (stt_disp
) },
279 { TYPE (INSN_STT_INDIRECT_DISP
), IDX (INSN_STT_INDIRECT_DISP
), FULL (stt_indirect_disp
) FAST (stt_indirect_disp
) },
280 { TYPE (INSN_STT_INDEX_DISP
), IDX (INSN_STT_INDEX_DISP
), FULL (stt_index_disp
) FAST (stt_index_disp
) },
281 { TYPE (INSN_STT_INDIRECT_INDEX_DISP
), IDX (INSN_STT_INDIRECT_INDEX_DISP
), FULL (stt_indirect_index_disp
) FAST (stt_indirect_index_disp
) },
282 { TYPE (INSN_STQ_OFFSET
), IDX (INSN_STQ_OFFSET
), FULL (stq_offset
) FAST (stq_offset
) },
283 { TYPE (INSN_STQ_INDIRECT_OFFSET
), IDX (INSN_STQ_INDIRECT_OFFSET
), FULL (stq_indirect_offset
) FAST (stq_indirect_offset
) },
284 { TYPE (INSN_STQ_INDIRECT
), IDX (INSN_STQ_INDIRECT
), FULL (stq_indirect
) FAST (stq_indirect
) },
285 { TYPE (INSN_STQ_INDIRECT_INDEX
), IDX (INSN_STQ_INDIRECT_INDEX
), FULL (stq_indirect_index
) FAST (stq_indirect_index
) },
286 { TYPE (INSN_STQ_DISP
), IDX (INSN_STQ_DISP
), FULL (stq_disp
) FAST (stq_disp
) },
287 { TYPE (INSN_STQ_INDIRECT_DISP
), IDX (INSN_STQ_INDIRECT_DISP
), FULL (stq_indirect_disp
) FAST (stq_indirect_disp
) },
288 { TYPE (INSN_STQ_INDEX_DISP
), IDX (INSN_STQ_INDEX_DISP
), FULL (stq_index_disp
) FAST (stq_index_disp
) },
289 { TYPE (INSN_STQ_INDIRECT_INDEX_DISP
), IDX (INSN_STQ_INDIRECT_INDEX_DISP
), FULL (stq_indirect_index_disp
) FAST (stq_indirect_index_disp
) },
290 { TYPE (INSN_CMPOBE_REG
), IDX (INSN_CMPOBE_REG
), FULL (cmpobe_reg
) FAST (cmpobe_reg
) },
291 { TYPE (INSN_CMPOBE_LIT
), IDX (INSN_CMPOBE_LIT
), FULL (cmpobe_lit
) FAST (cmpobe_lit
) },
292 { TYPE (INSN_CMPOBNE_REG
), IDX (INSN_CMPOBNE_REG
), FULL (cmpobne_reg
) FAST (cmpobne_reg
) },
293 { TYPE (INSN_CMPOBNE_LIT
), IDX (INSN_CMPOBNE_LIT
), FULL (cmpobne_lit
) FAST (cmpobne_lit
) },
294 { TYPE (INSN_CMPOBL_REG
), IDX (INSN_CMPOBL_REG
), FULL (cmpobl_reg
) FAST (cmpobl_reg
) },
295 { TYPE (INSN_CMPOBL_LIT
), IDX (INSN_CMPOBL_LIT
), FULL (cmpobl_lit
) FAST (cmpobl_lit
) },
296 { TYPE (INSN_CMPOBLE_REG
), IDX (INSN_CMPOBLE_REG
), FULL (cmpoble_reg
) FAST (cmpoble_reg
) },
297 { TYPE (INSN_CMPOBLE_LIT
), IDX (INSN_CMPOBLE_LIT
), FULL (cmpoble_lit
) FAST (cmpoble_lit
) },
298 { TYPE (INSN_CMPOBG_REG
), IDX (INSN_CMPOBG_REG
), FULL (cmpobg_reg
) FAST (cmpobg_reg
) },
299 { TYPE (INSN_CMPOBG_LIT
), IDX (INSN_CMPOBG_LIT
), FULL (cmpobg_lit
) FAST (cmpobg_lit
) },
300 { TYPE (INSN_CMPOBGE_REG
), IDX (INSN_CMPOBGE_REG
), FULL (cmpobge_reg
) FAST (cmpobge_reg
) },
301 { TYPE (INSN_CMPOBGE_LIT
), IDX (INSN_CMPOBGE_LIT
), FULL (cmpobge_lit
) FAST (cmpobge_lit
) },
302 { TYPE (INSN_CMPIBE_REG
), IDX (INSN_CMPIBE_REG
), FULL (cmpibe_reg
) FAST (cmpibe_reg
) },
303 { TYPE (INSN_CMPIBE_LIT
), IDX (INSN_CMPIBE_LIT
), FULL (cmpibe_lit
) FAST (cmpibe_lit
) },
304 { TYPE (INSN_CMPIBNE_REG
), IDX (INSN_CMPIBNE_REG
), FULL (cmpibne_reg
) FAST (cmpibne_reg
) },
305 { TYPE (INSN_CMPIBNE_LIT
), IDX (INSN_CMPIBNE_LIT
), FULL (cmpibne_lit
) FAST (cmpibne_lit
) },
306 { TYPE (INSN_CMPIBL_REG
), IDX (INSN_CMPIBL_REG
), FULL (cmpibl_reg
) FAST (cmpibl_reg
) },
307 { TYPE (INSN_CMPIBL_LIT
), IDX (INSN_CMPIBL_LIT
), FULL (cmpibl_lit
) FAST (cmpibl_lit
) },
308 { TYPE (INSN_CMPIBLE_REG
), IDX (INSN_CMPIBLE_REG
), FULL (cmpible_reg
) FAST (cmpible_reg
) },
309 { TYPE (INSN_CMPIBLE_LIT
), IDX (INSN_CMPIBLE_LIT
), FULL (cmpible_lit
) FAST (cmpible_lit
) },
310 { TYPE (INSN_CMPIBG_REG
), IDX (INSN_CMPIBG_REG
), FULL (cmpibg_reg
) FAST (cmpibg_reg
) },
311 { TYPE (INSN_CMPIBG_LIT
), IDX (INSN_CMPIBG_LIT
), FULL (cmpibg_lit
) FAST (cmpibg_lit
) },
312 { TYPE (INSN_CMPIBGE_REG
), IDX (INSN_CMPIBGE_REG
), FULL (cmpibge_reg
) FAST (cmpibge_reg
) },
313 { TYPE (INSN_CMPIBGE_LIT
), IDX (INSN_CMPIBGE_LIT
), FULL (cmpibge_lit
) FAST (cmpibge_lit
) },
314 { TYPE (INSN_BBC_REG
), IDX (INSN_BBC_REG
), FULL (bbc_reg
) FAST (bbc_reg
) },
315 { TYPE (INSN_BBC_LIT
), IDX (INSN_BBC_LIT
), FULL (bbc_lit
) FAST (bbc_lit
) },
316 { TYPE (INSN_BBS_REG
), IDX (INSN_BBS_REG
), FULL (bbs_reg
) FAST (bbs_reg
) },
317 { TYPE (INSN_BBS_LIT
), IDX (INSN_BBS_LIT
), FULL (bbs_lit
) FAST (bbs_lit
) },
318 { TYPE (INSN_CMPI
), IDX (INSN_CMPI
), FULL (cmpi
) FAST (cmpi
) },
319 { TYPE (INSN_CMPI1
), IDX (INSN_CMPI1
), FULL (cmpi1
) FAST (cmpi1
) },
320 { TYPE (INSN_CMPI2
), IDX (INSN_CMPI2
), FULL (cmpi2
) FAST (cmpi2
) },
321 { TYPE (INSN_CMPI3
), IDX (INSN_CMPI3
), FULL (cmpi3
) FAST (cmpi3
) },
322 { TYPE (INSN_CMPO
), IDX (INSN_CMPO
), FULL (cmpo
) FAST (cmpo
) },
323 { TYPE (INSN_CMPO1
), IDX (INSN_CMPO1
), FULL (cmpo1
) FAST (cmpo1
) },
324 { TYPE (INSN_CMPO2
), IDX (INSN_CMPO2
), FULL (cmpo2
) FAST (cmpo2
) },
325 { TYPE (INSN_CMPO3
), IDX (INSN_CMPO3
), FULL (cmpo3
) FAST (cmpo3
) },
326 { TYPE (INSN_TESTNO_REG
), IDX (INSN_TESTNO_REG
), FULL (testno_reg
) FAST (testno_reg
) },
327 { TYPE (INSN_TESTG_REG
), IDX (INSN_TESTG_REG
), FULL (testg_reg
) FAST (testg_reg
) },
328 { TYPE (INSN_TESTE_REG
), IDX (INSN_TESTE_REG
), FULL (teste_reg
) FAST (teste_reg
) },
329 { TYPE (INSN_TESTGE_REG
), IDX (INSN_TESTGE_REG
), FULL (testge_reg
) FAST (testge_reg
) },
330 { TYPE (INSN_TESTL_REG
), IDX (INSN_TESTL_REG
), FULL (testl_reg
) FAST (testl_reg
) },
331 { TYPE (INSN_TESTNE_REG
), IDX (INSN_TESTNE_REG
), FULL (testne_reg
) FAST (testne_reg
) },
332 { TYPE (INSN_TESTLE_REG
), IDX (INSN_TESTLE_REG
), FULL (testle_reg
) FAST (testle_reg
) },
333 { TYPE (INSN_TESTO_REG
), IDX (INSN_TESTO_REG
), FULL (testo_reg
) FAST (testo_reg
) },
334 { TYPE (INSN_BNO
), IDX (INSN_BNO
), FULL (bno
) FAST (bno
) },
335 { TYPE (INSN_BG
), IDX (INSN_BG
), FULL (bg
) FAST (bg
) },
336 { TYPE (INSN_BE
), IDX (INSN_BE
), FULL (be
) FAST (be
) },
337 { TYPE (INSN_BGE
), IDX (INSN_BGE
), FULL (bge
) FAST (bge
) },
338 { TYPE (INSN_BL
), IDX (INSN_BL
), FULL (bl
) FAST (bl
) },
339 { TYPE (INSN_BNE
), IDX (INSN_BNE
), FULL (bne
) FAST (bne
) },
340 { TYPE (INSN_BLE
), IDX (INSN_BLE
), FULL (ble
) FAST (ble
) },
341 { TYPE (INSN_BO
), IDX (INSN_BO
), FULL (bo
) FAST (bo
) },
342 { TYPE (INSN_B
), IDX (INSN_B
), FULL (b
) FAST (b
) },
343 { TYPE (INSN_BX_INDIRECT_OFFSET
), IDX (INSN_BX_INDIRECT_OFFSET
), FULL (bx_indirect_offset
) FAST (bx_indirect_offset
) },
344 { TYPE (INSN_BX_INDIRECT
), IDX (INSN_BX_INDIRECT
), FULL (bx_indirect
) FAST (bx_indirect
) },
345 { TYPE (INSN_BX_INDIRECT_INDEX
), IDX (INSN_BX_INDIRECT_INDEX
), FULL (bx_indirect_index
) FAST (bx_indirect_index
) },
346 { TYPE (INSN_BX_DISP
), IDX (INSN_BX_DISP
), FULL (bx_disp
) FAST (bx_disp
) },
347 { TYPE (INSN_BX_INDIRECT_DISP
), IDX (INSN_BX_INDIRECT_DISP
), FULL (bx_indirect_disp
) FAST (bx_indirect_disp
) },
348 { TYPE (INSN_CALLX_DISP
), IDX (INSN_CALLX_DISP
), FULL (callx_disp
) FAST (callx_disp
) },
349 { TYPE (INSN_CALLX_INDIRECT
), IDX (INSN_CALLX_INDIRECT
), FULL (callx_indirect
) FAST (callx_indirect
) },
350 { TYPE (INSN_CALLX_INDIRECT_OFFSET
), IDX (INSN_CALLX_INDIRECT_OFFSET
), FULL (callx_indirect_offset
) FAST (callx_indirect_offset
) },
351 { TYPE (INSN_RET
), IDX (INSN_RET
), FULL (ret
) FAST (ret
) },
352 { TYPE (INSN_CALLS
), IDX (INSN_CALLS
), FULL (calls
) FAST (calls
) },
353 { TYPE (INSN_FMARK
), IDX (INSN_FMARK
), FULL (fmark
) FAST (fmark
) },
354 { TYPE (INSN_FLUSHREG
), IDX (INSN_FLUSHREG
), FULL (flushreg
) FAST (flushreg
) },
357 static const struct insn_sem i960base_insn_sem_invalid
=
359 VIRTUAL_INSN_X_INVALID
, IDX (INSN_X_INVALID
), FULL (x_invalid
) FAST (x_invalid
)
365 /* Initialize an IDESC from the compile-time computable parts. */
368 init_idesc (SIM_CPU
*cpu
, IDESC
*id
, const struct insn_sem
*t
)
370 const CGEN_INSN
*insn_table
= CGEN_CPU_INSN_TABLE (CPU_CPU_DESC (cpu
))->init_entries
;
373 if ((int) t
->type
<= 0)
374 id
->idata
= & cgen_virtual_insn_table
[- (int) t
->type
];
376 id
->idata
= & insn_table
[t
->type
];
377 id
->attrs
= CGEN_INSN_ATTRS (id
->idata
);
378 /* Oh my god, a magic number. */
379 id
->length
= CGEN_INSN_BITSIZE (id
->idata
) / 8;
380 #if ! WITH_SEM_SWITCH_FULL
381 id
->sem_full
= t
->sem_full
;
383 #if WITH_FAST && ! WITH_SEM_SWITCH_FAST
384 id
->sem_fast
= t
->sem_fast
;
386 #if WITH_PROFILE_MODEL_P
387 id
->timing
= & MODEL_TIMING (CPU_MODEL (cpu
)) [t
->index
];
389 SIM_DESC sd
= CPU_STATE (cpu
);
390 SIM_ASSERT (t
->index
== id
->timing
->num
);
395 /* Initialize the instruction descriptor table. */
398 i960base_init_idesc_table (SIM_CPU
*cpu
)
401 const struct insn_sem
*t
,*tend
;
402 int tabsize
= I960BASE_INSN_MAX
;
403 IDESC
*table
= i960base_insn_data
;
405 memset (table
, 0, tabsize
* sizeof (IDESC
));
407 /* First set all entries to the `invalid insn'. */
408 t
= & i960base_insn_sem_invalid
;
409 for (id
= table
, tabend
= table
+ tabsize
; id
< tabend
; ++id
)
410 init_idesc (cpu
, id
, t
);
412 /* Now fill in the values for the chosen cpu. */
413 for (t
= i960base_insn_sem
, tend
= t
+ sizeof (i960base_insn_sem
) / sizeof (*t
);
416 init_idesc (cpu
, & table
[t
->index
], t
);
419 /* Link the IDESC table into the cpu. */
420 CPU_IDESC (cpu
) = table
;
423 /* Enum declaration for all instruction semantic formats. */
425 FMT_EMPTY
, FMT_MULO
, FMT_MULO1
, FMT_MULO2
426 , FMT_MULO3
, FMT_NOTBIT
, FMT_NOTBIT1
, FMT_NOTBIT2
427 , FMT_NOTBIT3
, FMT_NOT
, FMT_NOT1
, FMT_NOT2
428 , FMT_NOT3
, FMT_EMUL
, FMT_EMUL1
, FMT_EMUL2
429 , FMT_EMUL3
, FMT_MOVL
, FMT_MOVL1
, FMT_MOVT
430 , FMT_MOVT1
, FMT_MOVQ
, FMT_MOVQ1
, FMT_MODPC
431 , FMT_LDA_OFFSET
, FMT_LDA_INDIRECT_OFFSET
, FMT_LDA_INDIRECT
, FMT_LDA_INDIRECT_INDEX
432 , FMT_LDA_DISP
, FMT_LDA_INDIRECT_DISP
, FMT_LDA_INDEX_DISP
, FMT_LDA_INDIRECT_INDEX_DISP
433 , FMT_LD_OFFSET
, FMT_LD_INDIRECT_OFFSET
, FMT_LD_INDIRECT
, FMT_LD_INDIRECT_INDEX
434 , FMT_LD_DISP
, FMT_LD_INDIRECT_DISP
, FMT_LD_INDEX_DISP
, FMT_LD_INDIRECT_INDEX_DISP
435 , FMT_LDOB_OFFSET
, FMT_LDOB_INDIRECT_OFFSET
, FMT_LDOB_INDIRECT
, FMT_LDOB_INDIRECT_INDEX
436 , FMT_LDOB_DISP
, FMT_LDOB_INDIRECT_DISP
, FMT_LDOB_INDEX_DISP
, FMT_LDOB_INDIRECT_INDEX_DISP
437 , FMT_LDOS_OFFSET
, FMT_LDOS_INDIRECT_OFFSET
, FMT_LDOS_INDIRECT
, FMT_LDOS_INDIRECT_INDEX
438 , FMT_LDOS_DISP
, FMT_LDOS_INDIRECT_DISP
, FMT_LDOS_INDEX_DISP
, FMT_LDOS_INDIRECT_INDEX_DISP
439 , FMT_LDIB_OFFSET
, FMT_LDIB_INDIRECT_OFFSET
, FMT_LDIB_INDIRECT
, FMT_LDIB_INDIRECT_INDEX
440 , FMT_LDIB_DISP
, FMT_LDIB_INDIRECT_DISP
, FMT_LDIB_INDEX_DISP
, FMT_LDIB_INDIRECT_INDEX_DISP
441 , FMT_LDIS_OFFSET
, FMT_LDIS_INDIRECT_OFFSET
, FMT_LDIS_INDIRECT
, FMT_LDIS_INDIRECT_INDEX
442 , FMT_LDIS_DISP
, FMT_LDIS_INDIRECT_DISP
, FMT_LDIS_INDEX_DISP
, FMT_LDIS_INDIRECT_INDEX_DISP
443 , FMT_LDL_OFFSET
, FMT_LDL_INDIRECT_OFFSET
, FMT_LDL_INDIRECT
, FMT_LDL_INDIRECT_INDEX
444 , FMT_LDL_DISP
, FMT_LDL_INDIRECT_DISP
, FMT_LDL_INDEX_DISP
, FMT_LDL_INDIRECT_INDEX_DISP
445 , FMT_LDT_OFFSET
, FMT_LDT_INDIRECT_OFFSET
, FMT_LDT_INDIRECT
, FMT_LDT_INDIRECT_INDEX
446 , FMT_LDT_DISP
, FMT_LDT_INDIRECT_DISP
, FMT_LDT_INDEX_DISP
, FMT_LDT_INDIRECT_INDEX_DISP
447 , FMT_LDQ_OFFSET
, FMT_LDQ_INDIRECT_OFFSET
, FMT_LDQ_INDIRECT
, FMT_LDQ_INDIRECT_INDEX
448 , FMT_LDQ_DISP
, FMT_LDQ_INDIRECT_DISP
, FMT_LDQ_INDEX_DISP
, FMT_LDQ_INDIRECT_INDEX_DISP
449 , FMT_ST_OFFSET
, FMT_ST_INDIRECT_OFFSET
, FMT_ST_INDIRECT
, FMT_ST_INDIRECT_INDEX
450 , FMT_ST_DISP
, FMT_ST_INDIRECT_DISP
, FMT_ST_INDEX_DISP
, FMT_ST_INDIRECT_INDEX_DISP
451 , FMT_STOB_OFFSET
, FMT_STOB_INDIRECT_OFFSET
, FMT_STOB_INDIRECT
, FMT_STOB_INDIRECT_INDEX
452 , FMT_STOB_DISP
, FMT_STOB_INDIRECT_DISP
, FMT_STOB_INDEX_DISP
, FMT_STOB_INDIRECT_INDEX_DISP
453 , FMT_STOS_OFFSET
, FMT_STOS_INDIRECT_OFFSET
, FMT_STOS_INDIRECT
, FMT_STOS_INDIRECT_INDEX
454 , FMT_STOS_DISP
, FMT_STOS_INDIRECT_DISP
, FMT_STOS_INDEX_DISP
, FMT_STOS_INDIRECT_INDEX_DISP
455 , FMT_STL_OFFSET
, FMT_STL_INDIRECT_OFFSET
, FMT_STL_INDIRECT
, FMT_STL_INDIRECT_INDEX
456 , FMT_STL_DISP
, FMT_STL_INDIRECT_DISP
, FMT_STL_INDEX_DISP
, FMT_STL_INDIRECT_INDEX_DISP
457 , FMT_STT_OFFSET
, FMT_STT_INDIRECT_OFFSET
, FMT_STT_INDIRECT
, FMT_STT_INDIRECT_INDEX
458 , FMT_STT_DISP
, FMT_STT_INDIRECT_DISP
, FMT_STT_INDEX_DISP
, FMT_STT_INDIRECT_INDEX_DISP
459 , FMT_STQ_OFFSET
, FMT_STQ_INDIRECT_OFFSET
, FMT_STQ_INDIRECT
, FMT_STQ_INDIRECT_INDEX
460 , FMT_STQ_DISP
, FMT_STQ_INDIRECT_DISP
, FMT_STQ_INDEX_DISP
, FMT_STQ_INDIRECT_INDEX_DISP
461 , FMT_CMPOBE_REG
, FMT_CMPOBE_LIT
, FMT_CMPOBL_REG
, FMT_CMPOBL_LIT
462 , FMT_BBC_REG
, FMT_BBC_LIT
, FMT_CMPI
, FMT_CMPI1
463 , FMT_CMPI2
, FMT_CMPI3
, FMT_CMPO
, FMT_CMPO1
464 , FMT_CMPO2
, FMT_CMPO3
, FMT_TESTNO_REG
, FMT_BNO
465 , FMT_B
, FMT_BX_INDIRECT_OFFSET
, FMT_BX_INDIRECT
, FMT_BX_INDIRECT_INDEX
466 , FMT_BX_DISP
, FMT_BX_INDIRECT_DISP
, FMT_CALLX_DISP
, FMT_CALLX_INDIRECT
467 , FMT_CALLX_INDIRECT_OFFSET
, FMT_RET
, FMT_CALLS
, FMT_FMARK
471 /* The decoder uses this to record insns and direct extraction handling. */
482 /* Macro to go from decode phase to extraction phase. */
485 #define GOTO_EXTRACT(id) goto *(id)->sfmt
487 #define GOTO_EXTRACT(id) goto extract
490 /* The decoder needs a slightly different computed goto switch control. */
492 #define DECODE_SWITCH(N, X) goto *labels_##N[X];
494 #define DECODE_SWITCH(N, X) switch (X)
497 /* Given an instruction, return a pointer to its IDESC entry. */
500 i960base_decode (SIM_CPU
*current_cpu
, IADDR pc
,
501 CGEN_INSN_INT base_insn
,
504 /* Result of decoder, used by extractor. */
505 const DECODE_DESC
*idecode
;
507 /* First decode the instruction. */
510 #define I(insn) & i960base_insn_data[CONCAT2 (I960BASE_,insn)]
512 #define E(fmt) && case_ex_##fmt
516 CGEN_INSN_INT insn
= base_insn
;
517 static const DECODE_DESC idecode_invalid
= { I (INSN_X_INVALID
), E (FMT_EMPTY
) };
521 static const void *labels_0
[256] = {
522 && default_0
, && default_0
, && default_0
, && default_0
,
523 && default_0
, && default_0
, && default_0
, && default_0
,
524 && default_0
, && default_0
, && default_0
, && default_0
,
525 && default_0
, && default_0
, && default_0
, && default_0
,
526 && default_0
, && default_0
, && default_0
, && default_0
,
527 && default_0
, && default_0
, && default_0
, && default_0
,
528 && default_0
, && default_0
, && default_0
, && default_0
,
529 && default_0
, && default_0
, && default_0
, && default_0
,
530 && default_0
, && default_0
, && default_0
, && default_0
,
531 && default_0
, && default_0
, && default_0
, && default_0
,
532 && default_0
, && default_0
, && default_0
, && default_0
,
533 && default_0
, && default_0
, && default_0
, && default_0
,
534 && case_0_48
, && case_0_49
, && case_0_50
, && case_0_51
,
535 && case_0_52
, && case_0_53
, && case_0_54
, && case_0_55
,
536 && default_0
, && case_0_57
, && case_0_58
, && case_0_59
,
537 && case_0_60
, && case_0_61
, && case_0_62
, && default_0
,
538 && default_0
, && default_0
, && default_0
, && default_0
,
539 && default_0
, && default_0
, && default_0
, && default_0
,
540 && default_0
, && default_0
, && default_0
, && default_0
,
541 && default_0
, && default_0
, && default_0
, && default_0
,
542 && default_0
, && default_0
, && default_0
, && default_0
,
543 && default_0
, && default_0
, && default_0
, && default_0
,
544 && case_0_88
, && case_0_89
, && case_0_90
, && default_0
,
545 && case_0_92
, && case_0_93
, && case_0_94
, && case_0_95
,
546 && default_0
, && default_0
, && default_0
, && default_0
,
547 && default_0
, && default_0
, && case_0_102
, && case_0_103
,
548 && default_0
, && default_0
, && default_0
, && default_0
,
549 && default_0
, && default_0
, && default_0
, && default_0
,
550 && case_0_112
, && default_0
, && default_0
, && default_0
,
551 && case_0_116
, && default_0
, && default_0
, && default_0
,
552 && default_0
, && default_0
, && default_0
, && default_0
,
553 && default_0
, && default_0
, && default_0
, && default_0
,
554 && case_0_128
, && default_0
, && case_0_130
, && default_0
,
555 && case_0_132
, && default_0
, && case_0_134
, && default_0
,
556 && case_0_136
, && default_0
, && case_0_138
, && default_0
,
557 && case_0_140
, && default_0
, && default_0
, && default_0
,
558 && case_0_144
, && default_0
, && case_0_146
, && default_0
,
559 && default_0
, && default_0
, && default_0
, && default_0
,
560 && case_0_152
, && default_0
, && case_0_154
, && default_0
,
561 && default_0
, && default_0
, && default_0
, && default_0
,
562 && case_0_160
, && default_0
, && case_0_162
, && default_0
,
563 && default_0
, && default_0
, && default_0
, && default_0
,
564 && default_0
, && default_0
, && default_0
, && default_0
,
565 && default_0
, && default_0
, && default_0
, && default_0
,
566 && case_0_176
, && default_0
, && case_0_178
, && default_0
,
567 && default_0
, && default_0
, && default_0
, && default_0
,
568 && default_0
, && default_0
, && default_0
, && default_0
,
569 && default_0
, && default_0
, && default_0
, && default_0
,
570 && case_0_192
, && default_0
, && default_0
, && default_0
,
571 && default_0
, && default_0
, && default_0
, && default_0
,
572 && case_0_200
, && default_0
, && default_0
, && default_0
,
573 && default_0
, && default_0
, && default_0
, && default_0
,
574 && default_0
, && default_0
, && default_0
, && default_0
,
575 && default_0
, && default_0
, && default_0
, && default_0
,
576 && default_0
, && default_0
, && default_0
, && default_0
,
577 && default_0
, && default_0
, && default_0
, && default_0
,
578 && default_0
, && default_0
, && default_0
, && default_0
,
579 && default_0
, && default_0
, && default_0
, && default_0
,
580 && default_0
, && default_0
, && default_0
, && default_0
,
581 && default_0
, && default_0
, && default_0
, && default_0
,
582 && default_0
, && default_0
, && default_0
, && default_0
,
583 && default_0
, && default_0
, && default_0
, && default_0
,
584 && default_0
, && default_0
, && default_0
, && default_0
,
585 && default_0
, && default_0
, && default_0
, && default_0
,
588 static const DECODE_DESC insns
[256] = {
589 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
590 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
591 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
592 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
593 { I (INSN_B
), E (FMT_B
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
594 { I (INSN_RET
), E (FMT_RET
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
595 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
596 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
597 { I (INSN_BNO
), E (FMT_BNO
) }, { I (INSN_BG
), E (FMT_BNO
) },
598 { I (INSN_BE
), E (FMT_BNO
) }, { I (INSN_BGE
), E (FMT_BNO
) },
599 { I (INSN_BL
), E (FMT_BNO
) }, { I (INSN_BNE
), E (FMT_BNO
) },
600 { I (INSN_BLE
), E (FMT_BNO
) }, { I (INSN_BO
), E (FMT_BNO
) },
601 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
602 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
603 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
604 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
605 { I (INSN_TESTNO_REG
), E (FMT_TESTNO_REG
) }, { I (INSN_TESTG_REG
), E (FMT_TESTNO_REG
) },
606 { I (INSN_TESTE_REG
), E (FMT_TESTNO_REG
) }, { I (INSN_TESTGE_REG
), E (FMT_TESTNO_REG
) },
607 { I (INSN_TESTL_REG
), E (FMT_TESTNO_REG
) }, { I (INSN_TESTNE_REG
), E (FMT_TESTNO_REG
) },
608 { I (INSN_TESTLE_REG
), E (FMT_TESTNO_REG
) }, { I (INSN_TESTO_REG
), E (FMT_TESTNO_REG
) },
609 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
610 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
611 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
612 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
617 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { 0 },
620 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
621 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
622 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
623 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
624 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
625 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
626 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
627 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
628 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
629 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
630 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
631 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
632 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
634 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
637 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
638 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
639 { I (INSN_MODAC
), E (FMT_MODPC
) }, { I (INSN_MODPC
), E (FMT_MODPC
) },
641 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
642 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
643 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
644 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
645 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
646 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
647 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
648 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
649 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
650 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
651 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
652 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
653 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
654 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
655 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
656 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
657 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
658 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
659 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
660 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
661 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
662 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
663 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
664 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
665 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
666 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
667 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
668 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
669 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
670 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
671 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
672 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
673 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
674 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
675 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
676 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
677 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
678 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
679 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
680 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
681 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
682 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
683 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
684 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
685 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
686 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
687 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
688 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
689 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
690 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
691 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
692 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
693 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
694 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
695 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
696 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
697 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
698 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
699 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
700 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
701 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
702 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
703 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
704 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
705 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
706 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
707 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
708 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
709 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
710 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
711 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
712 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
713 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
714 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
715 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
716 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
719 val
= (((insn
>> 24) & (255 << 0)));
720 DECODE_SWITCH (0, val
)
724 static const DECODE_DESC insns
[8] = {
725 { I (INSN_BBC_REG
), E (FMT_BBC_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
726 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
727 { I (INSN_BBC_LIT
), E (FMT_BBC_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
728 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
730 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
731 idecode
= &insns
[val
];
732 GOTO_EXTRACT (idecode
);
736 static const DECODE_DESC insns
[8] = {
737 { I (INSN_CMPOBG_REG
), E (FMT_CMPOBL_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
738 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
739 { I (INSN_CMPOBG_LIT
), E (FMT_CMPOBL_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
740 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
742 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
743 idecode
= &insns
[val
];
744 GOTO_EXTRACT (idecode
);
748 static const DECODE_DESC insns
[8] = {
749 { I (INSN_CMPOBE_REG
), E (FMT_CMPOBE_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
750 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
751 { I (INSN_CMPOBE_LIT
), E (FMT_CMPOBE_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
752 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
754 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
755 idecode
= &insns
[val
];
756 GOTO_EXTRACT (idecode
);
760 static const DECODE_DESC insns
[8] = {
761 { I (INSN_CMPOBGE_REG
), E (FMT_CMPOBL_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
762 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
763 { I (INSN_CMPOBGE_LIT
), E (FMT_CMPOBL_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
764 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
766 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
767 idecode
= &insns
[val
];
768 GOTO_EXTRACT (idecode
);
772 static const DECODE_DESC insns
[8] = {
773 { I (INSN_CMPOBL_REG
), E (FMT_CMPOBL_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
774 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
775 { I (INSN_CMPOBL_LIT
), E (FMT_CMPOBL_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
776 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
778 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
779 idecode
= &insns
[val
];
780 GOTO_EXTRACT (idecode
);
784 static const DECODE_DESC insns
[8] = {
785 { I (INSN_CMPOBNE_REG
), E (FMT_CMPOBE_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
786 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
787 { I (INSN_CMPOBNE_LIT
), E (FMT_CMPOBE_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
788 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
790 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
791 idecode
= &insns
[val
];
792 GOTO_EXTRACT (idecode
);
796 static const DECODE_DESC insns
[8] = {
797 { I (INSN_CMPOBLE_REG
), E (FMT_CMPOBL_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
798 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
799 { I (INSN_CMPOBLE_LIT
), E (FMT_CMPOBL_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
800 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
802 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
803 idecode
= &insns
[val
];
804 GOTO_EXTRACT (idecode
);
808 static const DECODE_DESC insns
[8] = {
809 { I (INSN_BBS_REG
), E (FMT_BBC_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
810 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
811 { I (INSN_BBS_LIT
), E (FMT_BBC_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
812 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
814 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
815 idecode
= &insns
[val
];
816 GOTO_EXTRACT (idecode
);
820 static const DECODE_DESC insns
[8] = {
821 { I (INSN_CMPIBG_REG
), E (FMT_CMPOBE_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
822 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
823 { I (INSN_CMPIBG_LIT
), E (FMT_CMPOBE_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
824 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
826 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
827 idecode
= &insns
[val
];
828 GOTO_EXTRACT (idecode
);
832 static const DECODE_DESC insns
[8] = {
833 { I (INSN_CMPIBE_REG
), E (FMT_CMPOBE_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
834 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
835 { I (INSN_CMPIBE_LIT
), E (FMT_CMPOBE_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
836 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
838 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
839 idecode
= &insns
[val
];
840 GOTO_EXTRACT (idecode
);
844 static const DECODE_DESC insns
[8] = {
845 { I (INSN_CMPIBGE_REG
), E (FMT_CMPOBE_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
846 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
847 { I (INSN_CMPIBGE_LIT
), E (FMT_CMPOBE_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
848 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
850 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
851 idecode
= &insns
[val
];
852 GOTO_EXTRACT (idecode
);
856 static const DECODE_DESC insns
[8] = {
857 { I (INSN_CMPIBL_REG
), E (FMT_CMPOBE_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
858 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
859 { I (INSN_CMPIBL_LIT
), E (FMT_CMPOBE_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
860 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
862 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
863 idecode
= &insns
[val
];
864 GOTO_EXTRACT (idecode
);
868 static const DECODE_DESC insns
[8] = {
869 { I (INSN_CMPIBNE_REG
), E (FMT_CMPOBE_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
870 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
871 { I (INSN_CMPIBNE_LIT
), E (FMT_CMPOBE_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
872 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
874 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
875 idecode
= &insns
[val
];
876 GOTO_EXTRACT (idecode
);
880 static const DECODE_DESC insns
[8] = {
881 { I (INSN_CMPIBLE_REG
), E (FMT_CMPOBE_REG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
882 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
883 { I (INSN_CMPIBLE_LIT
), E (FMT_CMPOBE_LIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
884 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
886 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
887 idecode
= &insns
[val
];
888 GOTO_EXTRACT (idecode
);
893 static const void *labels_0_88
[16] = {
894 && case_0_88_0
, && case_0_88_1
, && case_0_88_2
, && case_0_88_3
,
895 && case_0_88_4
, && case_0_88_5
, && case_0_88_6
, && case_0_88_7
,
896 && default_0_88
, && default_0_88
, && default_0_88
, && default_0_88
,
897 && default_0_88
, && default_0_88
, && default_0_88
, && default_0_88
,
900 static const DECODE_DESC insns
[16] = {
905 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
906 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
907 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
908 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
911 val
= (((insn
>> 10) & (15 << 0)));
912 DECODE_SWITCH (0_88
, val
)
916 static const DECODE_DESC insns
[16] = {
917 { I (INSN_NOTBIT
), E (FMT_NOTBIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
918 { I (INSN_AND
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
919 { I (INSN_ANDNOT
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
920 { I (INSN_SETBIT
), E (FMT_NOTBIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
921 { I (INSN_NOTAND
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
922 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
923 { I (INSN_XOR
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
924 { I (INSN_OR
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
926 unsigned int val
= (((insn
>> 6) & (15 << 0)));
927 idecode
= &insns
[val
];
928 GOTO_EXTRACT (idecode
);
932 static const DECODE_DESC insns
[16] = {
933 { I (INSN_NOR
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
934 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
935 { I (INSN_NOT
), E (FMT_NOT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
936 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
937 { I (INSN_CLRBIT
), E (FMT_NOTBIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
938 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
939 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
940 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
942 unsigned int val
= (((insn
>> 6) & (15 << 0)));
943 idecode
= &insns
[val
];
944 GOTO_EXTRACT (idecode
);
948 static const DECODE_DESC insns
[16] = {
949 { I (INSN_NOTBIT1
), E (FMT_NOTBIT1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
950 { I (INSN_AND1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
951 { I (INSN_ANDNOT1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
952 { I (INSN_SETBIT1
), E (FMT_NOTBIT1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
953 { I (INSN_NOTAND1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
954 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
955 { I (INSN_XOR1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
956 { I (INSN_OR1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
958 unsigned int val
= (((insn
>> 6) & (15 << 0)));
959 idecode
= &insns
[val
];
960 GOTO_EXTRACT (idecode
);
964 static const DECODE_DESC insns
[16] = {
965 { I (INSN_NOR1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
966 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
967 { I (INSN_NOT1
), E (FMT_NOT1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
968 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
969 { I (INSN_CLRBIT1
), E (FMT_NOTBIT1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
970 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
971 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
972 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
974 unsigned int val
= (((insn
>> 6) & (15 << 0)));
975 idecode
= &insns
[val
];
976 GOTO_EXTRACT (idecode
);
980 static const DECODE_DESC insns
[16] = {
981 { I (INSN_NOTBIT2
), E (FMT_NOTBIT2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
982 { I (INSN_AND2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
983 { I (INSN_ANDNOT2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
984 { I (INSN_SETBIT2
), E (FMT_NOTBIT2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
985 { I (INSN_NOTAND2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
986 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
987 { I (INSN_XOR2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
988 { I (INSN_OR2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
990 unsigned int val
= (((insn
>> 6) & (15 << 0)));
991 idecode
= &insns
[val
];
992 GOTO_EXTRACT (idecode
);
996 static const DECODE_DESC insns
[16] = {
997 { I (INSN_NOR2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
998 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
999 { I (INSN_NOT2
), E (FMT_NOT2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1000 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1001 { I (INSN_CLRBIT2
), E (FMT_NOTBIT2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1002 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1003 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1004 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1006 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1007 idecode
= &insns
[val
];
1008 GOTO_EXTRACT (idecode
);
1012 static const DECODE_DESC insns
[16] = {
1013 { I (INSN_NOTBIT3
), E (FMT_NOTBIT3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1014 { I (INSN_AND3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1015 { I (INSN_ANDNOT3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1016 { I (INSN_SETBIT3
), E (FMT_NOTBIT3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1017 { I (INSN_NOTAND3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1018 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1019 { I (INSN_XOR3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1020 { I (INSN_OR3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1022 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1023 idecode
= &insns
[val
];
1024 GOTO_EXTRACT (idecode
);
1028 static const DECODE_DESC insns
[16] = {
1029 { I (INSN_NOR3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1030 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1031 { I (INSN_NOT3
), E (FMT_NOT3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1032 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1033 { I (INSN_CLRBIT3
), E (FMT_NOTBIT3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1034 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1035 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1036 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1038 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1039 idecode
= &insns
[val
];
1040 GOTO_EXTRACT (idecode
);
1043 idecode
= &insns
[val
];
1044 GOTO_EXTRACT (idecode
);
1051 static const void *labels_0_89
[16] = {
1052 && case_0_89_0
, && case_0_89_1
, && case_0_89_2
, && case_0_89_3
,
1053 && case_0_89_4
, && case_0_89_5
, && case_0_89_6
, && case_0_89_7
,
1054 && default_0_89
, && default_0_89
, && default_0_89
, && default_0_89
,
1055 && default_0_89
, && default_0_89
, && default_0_89
, && default_0_89
,
1058 static const DECODE_DESC insns
[16] = {
1063 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1064 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1065 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1066 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1069 val
= (((insn
>> 10) & (15 << 0)));
1070 DECODE_SWITCH (0_89
, val
)
1074 static const DECODE_DESC insns
[16] = {
1075 { I (INSN_ADDO
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1076 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1077 { I (INSN_SUBO
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1078 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1079 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1080 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1081 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1082 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1084 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1085 idecode
= &insns
[val
];
1086 GOTO_EXTRACT (idecode
);
1090 static const DECODE_DESC insns
[16] = {
1091 { I (INSN_SHRO
), E (FMT_NOTBIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1092 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1093 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1094 { I (INSN_SHRI
), E (FMT_NOTBIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1095 { I (INSN_SHLO
), E (FMT_NOTBIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1096 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1097 { I (INSN_SHLI
), E (FMT_NOTBIT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1098 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1100 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1101 idecode
= &insns
[val
];
1102 GOTO_EXTRACT (idecode
);
1106 static const DECODE_DESC insns
[16] = {
1107 { I (INSN_ADDO1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1108 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1109 { I (INSN_SUBO1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1110 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1111 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1112 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1113 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1114 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1116 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1117 idecode
= &insns
[val
];
1118 GOTO_EXTRACT (idecode
);
1122 static const DECODE_DESC insns
[16] = {
1123 { I (INSN_SHRO1
), E (FMT_NOTBIT1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1124 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1125 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1126 { I (INSN_SHRI1
), E (FMT_NOTBIT1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1127 { I (INSN_SHLO1
), E (FMT_NOTBIT1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1128 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1129 { I (INSN_SHLI1
), E (FMT_NOTBIT1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1130 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1132 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1133 idecode
= &insns
[val
];
1134 GOTO_EXTRACT (idecode
);
1138 static const DECODE_DESC insns
[16] = {
1139 { I (INSN_ADDO2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1140 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1141 { I (INSN_SUBO2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1142 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1143 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1144 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1145 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1146 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1148 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1149 idecode
= &insns
[val
];
1150 GOTO_EXTRACT (idecode
);
1154 static const DECODE_DESC insns
[16] = {
1155 { I (INSN_SHRO2
), E (FMT_NOTBIT2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1156 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1157 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1158 { I (INSN_SHRI2
), E (FMT_NOTBIT2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1159 { I (INSN_SHLO2
), E (FMT_NOTBIT2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1160 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1161 { I (INSN_SHLI2
), E (FMT_NOTBIT2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1162 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1164 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1165 idecode
= &insns
[val
];
1166 GOTO_EXTRACT (idecode
);
1170 static const DECODE_DESC insns
[16] = {
1171 { I (INSN_ADDO3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1172 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1173 { I (INSN_SUBO3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1174 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1175 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1176 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1177 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1178 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1180 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1181 idecode
= &insns
[val
];
1182 GOTO_EXTRACT (idecode
);
1186 static const DECODE_DESC insns
[16] = {
1187 { I (INSN_SHRO3
), E (FMT_NOTBIT3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1188 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1189 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1190 { I (INSN_SHRI3
), E (FMT_NOTBIT3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1191 { I (INSN_SHLO3
), E (FMT_NOTBIT3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1192 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1193 { I (INSN_SHLI3
), E (FMT_NOTBIT3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1194 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1196 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1197 idecode
= &insns
[val
];
1198 GOTO_EXTRACT (idecode
);
1201 idecode
= &insns
[val
];
1202 GOTO_EXTRACT (idecode
);
1209 static const void *labels_0_90
[16] = {
1210 && default_0_90
, && default_0_90
, && default_0_90
, && default_0_90
,
1211 && default_0_90
, && default_0_90
, && default_0_90
, && default_0_90
,
1212 && case_0_90_8
, && default_0_90
, && case_0_90_10
, && default_0_90
,
1213 && case_0_90_12
, && default_0_90
, && case_0_90_14
, && default_0_90
,
1216 static const DECODE_DESC insns
[16] = {
1217 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1218 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1219 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1220 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1221 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1222 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1223 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1224 { 0 }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1227 val
= (((insn
>> 10) & (15 << 0)));
1228 DECODE_SWITCH (0_90
, val
)
1232 static const DECODE_DESC insns
[16] = {
1233 { I (INSN_CMPO
), E (FMT_CMPO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1234 { I (INSN_CMPI
), E (FMT_CMPI
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1235 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1236 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1237 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1238 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1239 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1240 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1242 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1243 idecode
= &insns
[val
];
1244 GOTO_EXTRACT (idecode
);
1248 static const DECODE_DESC insns
[16] = {
1249 { I (INSN_CMPO1
), E (FMT_CMPO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1250 { I (INSN_CMPI1
), E (FMT_CMPI1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1251 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1252 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1253 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1254 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1255 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1256 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1258 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1259 idecode
= &insns
[val
];
1260 GOTO_EXTRACT (idecode
);
1264 static const DECODE_DESC insns
[16] = {
1265 { I (INSN_CMPO2
), E (FMT_CMPO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1266 { I (INSN_CMPI2
), E (FMT_CMPI2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1267 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1268 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1269 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1270 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1271 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1272 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1274 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1275 idecode
= &insns
[val
];
1276 GOTO_EXTRACT (idecode
);
1280 static const DECODE_DESC insns
[16] = {
1281 { I (INSN_CMPO3
), E (FMT_CMPO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1282 { I (INSN_CMPI3
), E (FMT_CMPI3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1283 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1284 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1285 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1286 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1287 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1288 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1290 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1291 idecode
= &insns
[val
];
1292 GOTO_EXTRACT (idecode
);
1295 idecode
= &insns
[val
];
1296 GOTO_EXTRACT (idecode
);
1302 static const DECODE_DESC insns
[16] = {
1303 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1304 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1305 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_MOV
), E (FMT_NOT2
) },
1306 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_MOV1
), E (FMT_NOT3
) },
1307 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1308 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1309 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1310 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1312 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1313 idecode
= &insns
[val
];
1314 GOTO_EXTRACT (idecode
);
1318 static const DECODE_DESC insns
[16] = {
1319 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1320 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1321 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_MOVL
), E (FMT_MOVL
) },
1322 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_MOVL1
), E (FMT_MOVL1
) },
1323 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1324 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1325 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1326 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1328 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1329 idecode
= &insns
[val
];
1330 GOTO_EXTRACT (idecode
);
1334 static const DECODE_DESC insns
[16] = {
1335 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1336 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1337 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_MOVT
), E (FMT_MOVT
) },
1338 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_MOVT1
), E (FMT_MOVT1
) },
1339 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1340 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1341 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1342 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1344 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1345 idecode
= &insns
[val
];
1346 GOTO_EXTRACT (idecode
);
1350 static const DECODE_DESC insns
[16] = {
1351 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1352 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1353 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_MOVQ
), E (FMT_MOVQ
) },
1354 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_MOVQ1
), E (FMT_MOVQ1
) },
1355 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1356 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1357 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1358 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1360 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1361 idecode
= &insns
[val
];
1362 GOTO_EXTRACT (idecode
);
1367 static const void *labels_0_102
[16] = {
1368 && default_0_102
, && default_0_102
, && default_0_102
, && default_0_102
,
1369 && default_0_102
, && default_0_102
, && default_0_102
, && default_0_102
,
1370 && default_0_102
, && default_0_102
, && default_0_102
, && default_0_102
,
1371 && default_0_102
, && default_0_102
, && default_0_102
, && case_0_102_15
,
1374 static const DECODE_DESC insns
[16] = {
1375 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1376 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1377 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1378 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1379 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1380 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1381 { I (INSN_CALLS
), E (FMT_CALLS
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1382 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { 0 },
1385 val
= (((insn
>> 10) & (15 << 0)));
1386 DECODE_SWITCH (0_102
, val
)
1390 static const DECODE_DESC insns
[16] = {
1391 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1392 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1393 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1394 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1395 { I (INSN_FMARK
), E (FMT_FMARK
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1396 { I (INSN_FLUSHREG
), E (FMT_FLUSHREG
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1397 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1398 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1400 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1401 idecode
= &insns
[val
];
1402 GOTO_EXTRACT (idecode
);
1405 idecode
= &insns
[val
];
1406 GOTO_EXTRACT (idecode
);
1412 static const DECODE_DESC insns
[16] = {
1413 { I (INSN_EMUL
), E (FMT_EMUL
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1414 { I (INSN_EMUL1
), E (FMT_EMUL1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1415 { I (INSN_EMUL2
), E (FMT_EMUL2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1416 { I (INSN_EMUL3
), E (FMT_EMUL3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1417 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1418 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1419 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1420 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1422 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1423 idecode
= &insns
[val
];
1424 GOTO_EXTRACT (idecode
);
1429 static const void *labels_0_112
[16] = {
1430 && default_0_112
, && case_0_112_1
, && default_0_112
, && case_0_112_3
,
1431 && default_0_112
, && case_0_112_5
, && default_0_112
, && case_0_112_7
,
1432 && default_0_112
, && default_0_112
, && default_0_112
, && default_0_112
,
1433 && default_0_112
, && default_0_112
, && default_0_112
, && default_0_112
,
1436 static const DECODE_DESC insns
[16] = {
1437 { I (INSN_MULO
), E (FMT_MULO
) }, { 0 },
1438 { I (INSN_MULO1
), E (FMT_MULO1
) }, { 0 },
1439 { I (INSN_MULO2
), E (FMT_MULO2
) }, { 0 },
1440 { I (INSN_MULO3
), E (FMT_MULO3
) }, { 0 },
1441 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1442 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1443 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1444 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1447 val
= (((insn
>> 10) & (15 << 0)));
1448 DECODE_SWITCH (0_112
, val
)
1452 static const DECODE_DESC insns
[16] = {
1453 { I (INSN_REMO
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1454 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1455 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1456 { I (INSN_DIVO
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1457 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1458 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1459 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1460 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1462 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1463 idecode
= &insns
[val
];
1464 GOTO_EXTRACT (idecode
);
1468 static const DECODE_DESC insns
[16] = {
1469 { I (INSN_REMO1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1470 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1471 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1472 { I (INSN_DIVO1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1473 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1474 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1475 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1476 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1478 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1479 idecode
= &insns
[val
];
1480 GOTO_EXTRACT (idecode
);
1484 static const DECODE_DESC insns
[16] = {
1485 { I (INSN_REMO2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1486 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1487 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1488 { I (INSN_DIVO2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1489 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1490 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1491 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1492 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1494 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1495 idecode
= &insns
[val
];
1496 GOTO_EXTRACT (idecode
);
1500 static const DECODE_DESC insns
[16] = {
1501 { I (INSN_REMO3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1502 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1503 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1504 { I (INSN_DIVO3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1505 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1506 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1507 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1508 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1510 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1511 idecode
= &insns
[val
];
1512 GOTO_EXTRACT (idecode
);
1515 idecode
= &insns
[val
];
1516 GOTO_EXTRACT (idecode
);
1523 static const void *labels_0_116
[16] = {
1524 && default_0_116
, && case_0_116_1
, && default_0_116
, && case_0_116_3
,
1525 && default_0_116
, && case_0_116_5
, && default_0_116
, && case_0_116_7
,
1526 && default_0_116
, && default_0_116
, && default_0_116
, && default_0_116
,
1527 && default_0_116
, && default_0_116
, && default_0_116
, && default_0_116
,
1530 static const DECODE_DESC insns
[16] = {
1531 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { 0 },
1532 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { 0 },
1533 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { 0 },
1534 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { 0 },
1535 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1536 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1537 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1538 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1541 val
= (((insn
>> 10) & (15 << 0)));
1542 DECODE_SWITCH (0_116
, val
)
1546 static const DECODE_DESC insns
[16] = {
1547 { I (INSN_REMI
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1548 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1549 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1550 { I (INSN_DIVI
), E (FMT_MULO
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1551 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1552 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1553 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1554 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1556 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1557 idecode
= &insns
[val
];
1558 GOTO_EXTRACT (idecode
);
1562 static const DECODE_DESC insns
[16] = {
1563 { I (INSN_REMI1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1564 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1565 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1566 { I (INSN_DIVI1
), E (FMT_MULO1
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1567 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1568 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1569 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1570 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1572 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1573 idecode
= &insns
[val
];
1574 GOTO_EXTRACT (idecode
);
1578 static const DECODE_DESC insns
[16] = {
1579 { I (INSN_REMI2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1580 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1581 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1582 { I (INSN_DIVI2
), E (FMT_MULO2
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1583 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1584 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1585 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1586 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1588 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1589 idecode
= &insns
[val
];
1590 GOTO_EXTRACT (idecode
);
1594 static const DECODE_DESC insns
[16] = {
1595 { I (INSN_REMI3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1596 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1597 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1598 { I (INSN_DIVI3
), E (FMT_MULO3
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1599 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1600 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1601 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1602 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1604 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1605 idecode
= &insns
[val
];
1606 GOTO_EXTRACT (idecode
);
1609 idecode
= &insns
[val
];
1610 GOTO_EXTRACT (idecode
);
1616 static const DECODE_DESC insns
[16] = {
1617 { I (INSN_LDOB_OFFSET
), E (FMT_LDOB_OFFSET
) }, { I (INSN_LDOB_OFFSET
), E (FMT_LDOB_OFFSET
) },
1618 { I (INSN_LDOB_OFFSET
), E (FMT_LDOB_OFFSET
) }, { I (INSN_LDOB_OFFSET
), E (FMT_LDOB_OFFSET
) },
1619 { I (INSN_LDOB_INDIRECT
), E (FMT_LDOB_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1620 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_LDOB_INDIRECT_INDEX
), E (FMT_LDOB_INDIRECT_INDEX
) },
1621 { I (INSN_LDOB_INDIRECT_OFFSET
), E (FMT_LDOB_INDIRECT_OFFSET
) }, { I (INSN_LDOB_INDIRECT_OFFSET
), E (FMT_LDOB_INDIRECT_OFFSET
) },
1622 { I (INSN_LDOB_INDIRECT_OFFSET
), E (FMT_LDOB_INDIRECT_OFFSET
) }, { I (INSN_LDOB_INDIRECT_OFFSET
), E (FMT_LDOB_INDIRECT_OFFSET
) },
1623 { I (INSN_LDOB_DISP
), E (FMT_LDOB_DISP
) }, { I (INSN_LDOB_INDIRECT_DISP
), E (FMT_LDOB_INDIRECT_DISP
) },
1624 { I (INSN_LDOB_INDEX_DISP
), E (FMT_LDOB_INDEX_DISP
) }, { I (INSN_LDOB_INDIRECT_INDEX_DISP
), E (FMT_LDOB_INDIRECT_INDEX_DISP
) },
1626 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1627 idecode
= &insns
[val
];
1628 GOTO_EXTRACT (idecode
);
1632 static const DECODE_DESC insns
[16] = {
1633 { I (INSN_STOB_OFFSET
), E (FMT_STOB_OFFSET
) }, { I (INSN_STOB_OFFSET
), E (FMT_STOB_OFFSET
) },
1634 { I (INSN_STOB_OFFSET
), E (FMT_STOB_OFFSET
) }, { I (INSN_STOB_OFFSET
), E (FMT_STOB_OFFSET
) },
1635 { I (INSN_STOB_INDIRECT
), E (FMT_STOB_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1636 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_STOB_INDIRECT_INDEX
), E (FMT_STOB_INDIRECT_INDEX
) },
1637 { I (INSN_STOB_INDIRECT_OFFSET
), E (FMT_STOB_INDIRECT_OFFSET
) }, { I (INSN_STOB_INDIRECT_OFFSET
), E (FMT_STOB_INDIRECT_OFFSET
) },
1638 { I (INSN_STOB_INDIRECT_OFFSET
), E (FMT_STOB_INDIRECT_OFFSET
) }, { I (INSN_STOB_INDIRECT_OFFSET
), E (FMT_STOB_INDIRECT_OFFSET
) },
1639 { I (INSN_STOB_DISP
), E (FMT_STOB_DISP
) }, { I (INSN_STOB_INDIRECT_DISP
), E (FMT_STOB_INDIRECT_DISP
) },
1640 { I (INSN_STOB_INDEX_DISP
), E (FMT_STOB_INDEX_DISP
) }, { I (INSN_STOB_INDIRECT_INDEX_DISP
), E (FMT_STOB_INDIRECT_INDEX_DISP
) },
1642 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1643 idecode
= &insns
[val
];
1644 GOTO_EXTRACT (idecode
);
1648 static const DECODE_DESC insns
[16] = {
1649 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1650 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1651 { I (INSN_BX_INDIRECT
), E (FMT_BX_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1652 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_BX_INDIRECT_INDEX
), E (FMT_BX_INDIRECT_INDEX
) },
1653 { I (INSN_BX_INDIRECT_OFFSET
), E (FMT_BX_INDIRECT_OFFSET
) }, { I (INSN_BX_INDIRECT_OFFSET
), E (FMT_BX_INDIRECT_OFFSET
) },
1654 { I (INSN_BX_INDIRECT_OFFSET
), E (FMT_BX_INDIRECT_OFFSET
) }, { I (INSN_BX_INDIRECT_OFFSET
), E (FMT_BX_INDIRECT_OFFSET
) },
1655 { I (INSN_BX_DISP
), E (FMT_BX_DISP
) }, { I (INSN_BX_INDIRECT_DISP
), E (FMT_BX_INDIRECT_DISP
) },
1656 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1658 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1659 idecode
= &insns
[val
];
1660 GOTO_EXTRACT (idecode
);
1664 static const DECODE_DESC insns
[16] = {
1665 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1666 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1667 { I (INSN_CALLX_INDIRECT
), E (FMT_CALLX_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1668 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1669 { I (INSN_CALLX_INDIRECT_OFFSET
), E (FMT_CALLX_INDIRECT_OFFSET
) }, { I (INSN_CALLX_INDIRECT_OFFSET
), E (FMT_CALLX_INDIRECT_OFFSET
) },
1670 { I (INSN_CALLX_INDIRECT_OFFSET
), E (FMT_CALLX_INDIRECT_OFFSET
) }, { I (INSN_CALLX_INDIRECT_OFFSET
), E (FMT_CALLX_INDIRECT_OFFSET
) },
1671 { I (INSN_CALLX_DISP
), E (FMT_CALLX_DISP
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1672 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1674 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1675 idecode
= &insns
[val
];
1676 GOTO_EXTRACT (idecode
);
1680 static const DECODE_DESC insns
[16] = {
1681 { I (INSN_LDOS_OFFSET
), E (FMT_LDOS_OFFSET
) }, { I (INSN_LDOS_OFFSET
), E (FMT_LDOS_OFFSET
) },
1682 { I (INSN_LDOS_OFFSET
), E (FMT_LDOS_OFFSET
) }, { I (INSN_LDOS_OFFSET
), E (FMT_LDOS_OFFSET
) },
1683 { I (INSN_LDOS_INDIRECT
), E (FMT_LDOS_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1684 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_LDOS_INDIRECT_INDEX
), E (FMT_LDOS_INDIRECT_INDEX
) },
1685 { I (INSN_LDOS_INDIRECT_OFFSET
), E (FMT_LDOS_INDIRECT_OFFSET
) }, { I (INSN_LDOS_INDIRECT_OFFSET
), E (FMT_LDOS_INDIRECT_OFFSET
) },
1686 { I (INSN_LDOS_INDIRECT_OFFSET
), E (FMT_LDOS_INDIRECT_OFFSET
) }, { I (INSN_LDOS_INDIRECT_OFFSET
), E (FMT_LDOS_INDIRECT_OFFSET
) },
1687 { I (INSN_LDOS_DISP
), E (FMT_LDOS_DISP
) }, { I (INSN_LDOS_INDIRECT_DISP
), E (FMT_LDOS_INDIRECT_DISP
) },
1688 { I (INSN_LDOS_INDEX_DISP
), E (FMT_LDOS_INDEX_DISP
) }, { I (INSN_LDOS_INDIRECT_INDEX_DISP
), E (FMT_LDOS_INDIRECT_INDEX_DISP
) },
1690 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1691 idecode
= &insns
[val
];
1692 GOTO_EXTRACT (idecode
);
1696 static const DECODE_DESC insns
[16] = {
1697 { I (INSN_STOS_OFFSET
), E (FMT_STOS_OFFSET
) }, { I (INSN_STOS_OFFSET
), E (FMT_STOS_OFFSET
) },
1698 { I (INSN_STOS_OFFSET
), E (FMT_STOS_OFFSET
) }, { I (INSN_STOS_OFFSET
), E (FMT_STOS_OFFSET
) },
1699 { I (INSN_STOS_INDIRECT
), E (FMT_STOS_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1700 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_STOS_INDIRECT_INDEX
), E (FMT_STOS_INDIRECT_INDEX
) },
1701 { I (INSN_STOS_INDIRECT_OFFSET
), E (FMT_STOS_INDIRECT_OFFSET
) }, { I (INSN_STOS_INDIRECT_OFFSET
), E (FMT_STOS_INDIRECT_OFFSET
) },
1702 { I (INSN_STOS_INDIRECT_OFFSET
), E (FMT_STOS_INDIRECT_OFFSET
) }, { I (INSN_STOS_INDIRECT_OFFSET
), E (FMT_STOS_INDIRECT_OFFSET
) },
1703 { I (INSN_STOS_DISP
), E (FMT_STOS_DISP
) }, { I (INSN_STOS_INDIRECT_DISP
), E (FMT_STOS_INDIRECT_DISP
) },
1704 { I (INSN_STOS_INDEX_DISP
), E (FMT_STOS_INDEX_DISP
) }, { I (INSN_STOS_INDIRECT_INDEX_DISP
), E (FMT_STOS_INDIRECT_INDEX_DISP
) },
1706 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1707 idecode
= &insns
[val
];
1708 GOTO_EXTRACT (idecode
);
1712 static const DECODE_DESC insns
[16] = {
1713 { I (INSN_LDA_OFFSET
), E (FMT_LDA_OFFSET
) }, { I (INSN_LDA_OFFSET
), E (FMT_LDA_OFFSET
) },
1714 { I (INSN_LDA_OFFSET
), E (FMT_LDA_OFFSET
) }, { I (INSN_LDA_OFFSET
), E (FMT_LDA_OFFSET
) },
1715 { I (INSN_LDA_INDIRECT
), E (FMT_LDA_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1716 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_LDA_INDIRECT_INDEX
), E (FMT_LDA_INDIRECT_INDEX
) },
1717 { I (INSN_LDA_INDIRECT_OFFSET
), E (FMT_LDA_INDIRECT_OFFSET
) }, { I (INSN_LDA_INDIRECT_OFFSET
), E (FMT_LDA_INDIRECT_OFFSET
) },
1718 { I (INSN_LDA_INDIRECT_OFFSET
), E (FMT_LDA_INDIRECT_OFFSET
) }, { I (INSN_LDA_INDIRECT_OFFSET
), E (FMT_LDA_INDIRECT_OFFSET
) },
1719 { I (INSN_LDA_DISP
), E (FMT_LDA_DISP
) }, { I (INSN_LDA_INDIRECT_DISP
), E (FMT_LDA_INDIRECT_DISP
) },
1720 { I (INSN_LDA_INDEX_DISP
), E (FMT_LDA_INDEX_DISP
) }, { I (INSN_LDA_INDIRECT_INDEX_DISP
), E (FMT_LDA_INDIRECT_INDEX_DISP
) },
1722 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1723 idecode
= &insns
[val
];
1724 GOTO_EXTRACT (idecode
);
1728 static const DECODE_DESC insns
[16] = {
1729 { I (INSN_LD_OFFSET
), E (FMT_LD_OFFSET
) }, { I (INSN_LD_OFFSET
), E (FMT_LD_OFFSET
) },
1730 { I (INSN_LD_OFFSET
), E (FMT_LD_OFFSET
) }, { I (INSN_LD_OFFSET
), E (FMT_LD_OFFSET
) },
1731 { I (INSN_LD_INDIRECT
), E (FMT_LD_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1732 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_LD_INDIRECT_INDEX
), E (FMT_LD_INDIRECT_INDEX
) },
1733 { I (INSN_LD_INDIRECT_OFFSET
), E (FMT_LD_INDIRECT_OFFSET
) }, { I (INSN_LD_INDIRECT_OFFSET
), E (FMT_LD_INDIRECT_OFFSET
) },
1734 { I (INSN_LD_INDIRECT_OFFSET
), E (FMT_LD_INDIRECT_OFFSET
) }, { I (INSN_LD_INDIRECT_OFFSET
), E (FMT_LD_INDIRECT_OFFSET
) },
1735 { I (INSN_LD_DISP
), E (FMT_LD_DISP
) }, { I (INSN_LD_INDIRECT_DISP
), E (FMT_LD_INDIRECT_DISP
) },
1736 { I (INSN_LD_INDEX_DISP
), E (FMT_LD_INDEX_DISP
) }, { I (INSN_LD_INDIRECT_INDEX_DISP
), E (FMT_LD_INDIRECT_INDEX_DISP
) },
1738 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1739 idecode
= &insns
[val
];
1740 GOTO_EXTRACT (idecode
);
1744 static const DECODE_DESC insns
[16] = {
1745 { I (INSN_ST_OFFSET
), E (FMT_ST_OFFSET
) }, { I (INSN_ST_OFFSET
), E (FMT_ST_OFFSET
) },
1746 { I (INSN_ST_OFFSET
), E (FMT_ST_OFFSET
) }, { I (INSN_ST_OFFSET
), E (FMT_ST_OFFSET
) },
1747 { I (INSN_ST_INDIRECT
), E (FMT_ST_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1748 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_ST_INDIRECT_INDEX
), E (FMT_ST_INDIRECT_INDEX
) },
1749 { I (INSN_ST_INDIRECT_OFFSET
), E (FMT_ST_INDIRECT_OFFSET
) }, { I (INSN_ST_INDIRECT_OFFSET
), E (FMT_ST_INDIRECT_OFFSET
) },
1750 { I (INSN_ST_INDIRECT_OFFSET
), E (FMT_ST_INDIRECT_OFFSET
) }, { I (INSN_ST_INDIRECT_OFFSET
), E (FMT_ST_INDIRECT_OFFSET
) },
1751 { I (INSN_ST_DISP
), E (FMT_ST_DISP
) }, { I (INSN_ST_INDIRECT_DISP
), E (FMT_ST_INDIRECT_DISP
) },
1752 { I (INSN_ST_INDEX_DISP
), E (FMT_ST_INDEX_DISP
) }, { I (INSN_ST_INDIRECT_INDEX_DISP
), E (FMT_ST_INDIRECT_INDEX_DISP
) },
1754 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1755 idecode
= &insns
[val
];
1756 GOTO_EXTRACT (idecode
);
1760 static const DECODE_DESC insns
[16] = {
1761 { I (INSN_LDL_OFFSET
), E (FMT_LDL_OFFSET
) }, { I (INSN_LDL_OFFSET
), E (FMT_LDL_OFFSET
) },
1762 { I (INSN_LDL_OFFSET
), E (FMT_LDL_OFFSET
) }, { I (INSN_LDL_OFFSET
), E (FMT_LDL_OFFSET
) },
1763 { I (INSN_LDL_INDIRECT
), E (FMT_LDL_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1764 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_LDL_INDIRECT_INDEX
), E (FMT_LDL_INDIRECT_INDEX
) },
1765 { I (INSN_LDL_INDIRECT_OFFSET
), E (FMT_LDL_INDIRECT_OFFSET
) }, { I (INSN_LDL_INDIRECT_OFFSET
), E (FMT_LDL_INDIRECT_OFFSET
) },
1766 { I (INSN_LDL_INDIRECT_OFFSET
), E (FMT_LDL_INDIRECT_OFFSET
) }, { I (INSN_LDL_INDIRECT_OFFSET
), E (FMT_LDL_INDIRECT_OFFSET
) },
1767 { I (INSN_LDL_DISP
), E (FMT_LDL_DISP
) }, { I (INSN_LDL_INDIRECT_DISP
), E (FMT_LDL_INDIRECT_DISP
) },
1768 { I (INSN_LDL_INDEX_DISP
), E (FMT_LDL_INDEX_DISP
) }, { I (INSN_LDL_INDIRECT_INDEX_DISP
), E (FMT_LDL_INDIRECT_INDEX_DISP
) },
1770 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1771 idecode
= &insns
[val
];
1772 GOTO_EXTRACT (idecode
);
1776 static const DECODE_DESC insns
[16] = {
1777 { I (INSN_STL_OFFSET
), E (FMT_STL_OFFSET
) }, { I (INSN_STL_OFFSET
), E (FMT_STL_OFFSET
) },
1778 { I (INSN_STL_OFFSET
), E (FMT_STL_OFFSET
) }, { I (INSN_STL_OFFSET
), E (FMT_STL_OFFSET
) },
1779 { I (INSN_STL_INDIRECT
), E (FMT_STL_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1780 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_STL_INDIRECT_INDEX
), E (FMT_STL_INDIRECT_INDEX
) },
1781 { I (INSN_STL_INDIRECT_OFFSET
), E (FMT_STL_INDIRECT_OFFSET
) }, { I (INSN_STL_INDIRECT_OFFSET
), E (FMT_STL_INDIRECT_OFFSET
) },
1782 { I (INSN_STL_INDIRECT_OFFSET
), E (FMT_STL_INDIRECT_OFFSET
) }, { I (INSN_STL_INDIRECT_OFFSET
), E (FMT_STL_INDIRECT_OFFSET
) },
1783 { I (INSN_STL_DISP
), E (FMT_STL_DISP
) }, { I (INSN_STL_INDIRECT_DISP
), E (FMT_STL_INDIRECT_DISP
) },
1784 { I (INSN_STL_INDEX_DISP
), E (FMT_STL_INDEX_DISP
) }, { I (INSN_STL_INDIRECT_INDEX_DISP
), E (FMT_STL_INDIRECT_INDEX_DISP
) },
1786 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1787 idecode
= &insns
[val
];
1788 GOTO_EXTRACT (idecode
);
1792 static const DECODE_DESC insns
[16] = {
1793 { I (INSN_LDT_OFFSET
), E (FMT_LDT_OFFSET
) }, { I (INSN_LDT_OFFSET
), E (FMT_LDT_OFFSET
) },
1794 { I (INSN_LDT_OFFSET
), E (FMT_LDT_OFFSET
) }, { I (INSN_LDT_OFFSET
), E (FMT_LDT_OFFSET
) },
1795 { I (INSN_LDT_INDIRECT
), E (FMT_LDT_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1796 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_LDT_INDIRECT_INDEX
), E (FMT_LDT_INDIRECT_INDEX
) },
1797 { I (INSN_LDT_INDIRECT_OFFSET
), E (FMT_LDT_INDIRECT_OFFSET
) }, { I (INSN_LDT_INDIRECT_OFFSET
), E (FMT_LDT_INDIRECT_OFFSET
) },
1798 { I (INSN_LDT_INDIRECT_OFFSET
), E (FMT_LDT_INDIRECT_OFFSET
) }, { I (INSN_LDT_INDIRECT_OFFSET
), E (FMT_LDT_INDIRECT_OFFSET
) },
1799 { I (INSN_LDT_DISP
), E (FMT_LDT_DISP
) }, { I (INSN_LDT_INDIRECT_DISP
), E (FMT_LDT_INDIRECT_DISP
) },
1800 { I (INSN_LDT_INDEX_DISP
), E (FMT_LDT_INDEX_DISP
) }, { I (INSN_LDT_INDIRECT_INDEX_DISP
), E (FMT_LDT_INDIRECT_INDEX_DISP
) },
1802 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1803 idecode
= &insns
[val
];
1804 GOTO_EXTRACT (idecode
);
1808 static const DECODE_DESC insns
[16] = {
1809 { I (INSN_STT_OFFSET
), E (FMT_STT_OFFSET
) }, { I (INSN_STT_OFFSET
), E (FMT_STT_OFFSET
) },
1810 { I (INSN_STT_OFFSET
), E (FMT_STT_OFFSET
) }, { I (INSN_STT_OFFSET
), E (FMT_STT_OFFSET
) },
1811 { I (INSN_STT_INDIRECT
), E (FMT_STT_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1812 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_STT_INDIRECT_INDEX
), E (FMT_STT_INDIRECT_INDEX
) },
1813 { I (INSN_STT_INDIRECT_OFFSET
), E (FMT_STT_INDIRECT_OFFSET
) }, { I (INSN_STT_INDIRECT_OFFSET
), E (FMT_STT_INDIRECT_OFFSET
) },
1814 { I (INSN_STT_INDIRECT_OFFSET
), E (FMT_STT_INDIRECT_OFFSET
) }, { I (INSN_STT_INDIRECT_OFFSET
), E (FMT_STT_INDIRECT_OFFSET
) },
1815 { I (INSN_STT_DISP
), E (FMT_STT_DISP
) }, { I (INSN_STT_INDIRECT_DISP
), E (FMT_STT_INDIRECT_DISP
) },
1816 { I (INSN_STT_INDEX_DISP
), E (FMT_STT_INDEX_DISP
) }, { I (INSN_STT_INDIRECT_INDEX_DISP
), E (FMT_STT_INDIRECT_INDEX_DISP
) },
1818 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1819 idecode
= &insns
[val
];
1820 GOTO_EXTRACT (idecode
);
1824 static const DECODE_DESC insns
[16] = {
1825 { I (INSN_LDQ_OFFSET
), E (FMT_LDQ_OFFSET
) }, { I (INSN_LDQ_OFFSET
), E (FMT_LDQ_OFFSET
) },
1826 { I (INSN_LDQ_OFFSET
), E (FMT_LDQ_OFFSET
) }, { I (INSN_LDQ_OFFSET
), E (FMT_LDQ_OFFSET
) },
1827 { I (INSN_LDQ_INDIRECT
), E (FMT_LDQ_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1828 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_LDQ_INDIRECT_INDEX
), E (FMT_LDQ_INDIRECT_INDEX
) },
1829 { I (INSN_LDQ_INDIRECT_OFFSET
), E (FMT_LDQ_INDIRECT_OFFSET
) }, { I (INSN_LDQ_INDIRECT_OFFSET
), E (FMT_LDQ_INDIRECT_OFFSET
) },
1830 { I (INSN_LDQ_INDIRECT_OFFSET
), E (FMT_LDQ_INDIRECT_OFFSET
) }, { I (INSN_LDQ_INDIRECT_OFFSET
), E (FMT_LDQ_INDIRECT_OFFSET
) },
1831 { I (INSN_LDQ_DISP
), E (FMT_LDQ_DISP
) }, { I (INSN_LDQ_INDIRECT_DISP
), E (FMT_LDQ_INDIRECT_DISP
) },
1832 { I (INSN_LDQ_INDEX_DISP
), E (FMT_LDQ_INDEX_DISP
) }, { I (INSN_LDQ_INDIRECT_INDEX_DISP
), E (FMT_LDQ_INDIRECT_INDEX_DISP
) },
1834 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1835 idecode
= &insns
[val
];
1836 GOTO_EXTRACT (idecode
);
1840 static const DECODE_DESC insns
[16] = {
1841 { I (INSN_STQ_OFFSET
), E (FMT_STQ_OFFSET
) }, { I (INSN_STQ_OFFSET
), E (FMT_STQ_OFFSET
) },
1842 { I (INSN_STQ_OFFSET
), E (FMT_STQ_OFFSET
) }, { I (INSN_STQ_OFFSET
), E (FMT_STQ_OFFSET
) },
1843 { I (INSN_STQ_INDIRECT
), E (FMT_STQ_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1844 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_STQ_INDIRECT_INDEX
), E (FMT_STQ_INDIRECT_INDEX
) },
1845 { I (INSN_STQ_INDIRECT_OFFSET
), E (FMT_STQ_INDIRECT_OFFSET
) }, { I (INSN_STQ_INDIRECT_OFFSET
), E (FMT_STQ_INDIRECT_OFFSET
) },
1846 { I (INSN_STQ_INDIRECT_OFFSET
), E (FMT_STQ_INDIRECT_OFFSET
) }, { I (INSN_STQ_INDIRECT_OFFSET
), E (FMT_STQ_INDIRECT_OFFSET
) },
1847 { I (INSN_STQ_DISP
), E (FMT_STQ_DISP
) }, { I (INSN_STQ_INDIRECT_DISP
), E (FMT_STQ_INDIRECT_DISP
) },
1848 { I (INSN_STQ_INDEX_DISP
), E (FMT_STQ_INDEX_DISP
) }, { I (INSN_STQ_INDIRECT_INDEX_DISP
), E (FMT_STQ_INDIRECT_INDEX_DISP
) },
1850 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1851 idecode
= &insns
[val
];
1852 GOTO_EXTRACT (idecode
);
1856 static const DECODE_DESC insns
[16] = {
1857 { I (INSN_LDIB_OFFSET
), E (FMT_LDIB_OFFSET
) }, { I (INSN_LDIB_OFFSET
), E (FMT_LDIB_OFFSET
) },
1858 { I (INSN_LDIB_OFFSET
), E (FMT_LDIB_OFFSET
) }, { I (INSN_LDIB_OFFSET
), E (FMT_LDIB_OFFSET
) },
1859 { I (INSN_LDIB_INDIRECT
), E (FMT_LDIB_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1860 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_LDIB_INDIRECT_INDEX
), E (FMT_LDIB_INDIRECT_INDEX
) },
1861 { I (INSN_LDIB_INDIRECT_OFFSET
), E (FMT_LDIB_INDIRECT_OFFSET
) }, { I (INSN_LDIB_INDIRECT_OFFSET
), E (FMT_LDIB_INDIRECT_OFFSET
) },
1862 { I (INSN_LDIB_INDIRECT_OFFSET
), E (FMT_LDIB_INDIRECT_OFFSET
) }, { I (INSN_LDIB_INDIRECT_OFFSET
), E (FMT_LDIB_INDIRECT_OFFSET
) },
1863 { I (INSN_LDIB_DISP
), E (FMT_LDIB_DISP
) }, { I (INSN_LDIB_INDIRECT_DISP
), E (FMT_LDIB_INDIRECT_DISP
) },
1864 { I (INSN_LDIB_INDEX_DISP
), E (FMT_LDIB_INDEX_DISP
) }, { I (INSN_LDIB_INDIRECT_INDEX_DISP
), E (FMT_LDIB_INDIRECT_INDEX_DISP
) },
1866 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1867 idecode
= &insns
[val
];
1868 GOTO_EXTRACT (idecode
);
1872 static const DECODE_DESC insns
[16] = {
1873 { I (INSN_LDIS_OFFSET
), E (FMT_LDIS_OFFSET
) }, { I (INSN_LDIS_OFFSET
), E (FMT_LDIS_OFFSET
) },
1874 { I (INSN_LDIS_OFFSET
), E (FMT_LDIS_OFFSET
) }, { I (INSN_LDIS_OFFSET
), E (FMT_LDIS_OFFSET
) },
1875 { I (INSN_LDIS_INDIRECT
), E (FMT_LDIS_INDIRECT
) }, { I (INSN_X_INVALID
), E (FMT_EMPTY
) },
1876 { I (INSN_X_INVALID
), E (FMT_EMPTY
) }, { I (INSN_LDIS_INDIRECT_INDEX
), E (FMT_LDIS_INDIRECT_INDEX
) },
1877 { I (INSN_LDIS_INDIRECT_OFFSET
), E (FMT_LDIS_INDIRECT_OFFSET
) }, { I (INSN_LDIS_INDIRECT_OFFSET
), E (FMT_LDIS_INDIRECT_OFFSET
) },
1878 { I (INSN_LDIS_INDIRECT_OFFSET
), E (FMT_LDIS_INDIRECT_OFFSET
) }, { I (INSN_LDIS_INDIRECT_OFFSET
), E (FMT_LDIS_INDIRECT_OFFSET
) },
1879 { I (INSN_LDIS_DISP
), E (FMT_LDIS_DISP
) }, { I (INSN_LDIS_INDIRECT_DISP
), E (FMT_LDIS_INDIRECT_DISP
) },
1880 { I (INSN_LDIS_INDEX_DISP
), E (FMT_LDIS_INDEX_DISP
) }, { I (INSN_LDIS_INDIRECT_INDEX_DISP
), E (FMT_LDIS_INDIRECT_INDEX_DISP
) },
1882 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1883 idecode
= &insns
[val
];
1884 GOTO_EXTRACT (idecode
);
1887 idecode
= &insns
[val
];
1888 GOTO_EXTRACT (idecode
);
1896 /* The instruction has been decoded, now extract the fields. */
1901 switch (idecode
->sfmt
)
1905 CASE (ex
, FMT_EMPTY
) :
1907 CGEN_INSN_INT insn
= base_insn
;
1908 #define FLD(f) abuf->fields.fmt_empty.f
1909 EXTRACT_IFMT_EMPTY_VARS
/* */
1911 EXTRACT_IFMT_EMPTY_CODE
1913 /* Record the fields for the semantic handler. */
1914 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_empty", (char *) 0));
1920 CASE (ex
, FMT_MULO
) :
1922 CGEN_INSN_INT insn
= base_insn
;
1923 #define FLD(f) abuf->fields.fmt_mulo.f
1924 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1926 EXTRACT_IFMT_MULO_CODE
1928 /* Record the fields for the semantic handler. */
1929 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1930 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
1931 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1932 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_mulo", "src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
1934 #if WITH_PROFILE_MODEL_P
1935 /* Record the fields for profiling. */
1936 if (PROFILE_MODEL_P (current_cpu
))
1938 FLD (in_src1
) = f_src1
;
1939 FLD (in_src2
) = f_src2
;
1940 FLD (out_dst
) = f_srcdst
;
1947 CASE (ex
, FMT_MULO1
) :
1949 CGEN_INSN_INT insn
= base_insn
;
1950 #define FLD(f) abuf->fields.fmt_mulo1.f
1951 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1953 EXTRACT_IFMT_MULO1_CODE
1955 /* Record the fields for the semantic handler. */
1956 FLD (f_src1
) = f_src1
;
1957 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
1958 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1959 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_mulo1", "f_src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
1961 #if WITH_PROFILE_MODEL_P
1962 /* Record the fields for profiling. */
1963 if (PROFILE_MODEL_P (current_cpu
))
1965 FLD (in_src2
) = f_src2
;
1966 FLD (out_dst
) = f_srcdst
;
1973 CASE (ex
, FMT_MULO2
) :
1975 CGEN_INSN_INT insn
= base_insn
;
1976 #define FLD(f) abuf->fields.fmt_mulo2.f
1977 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1979 EXTRACT_IFMT_MULO2_CODE
1981 /* Record the fields for the semantic handler. */
1982 FLD (f_src2
) = f_src2
;
1983 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1984 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1985 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_mulo2", "f_src2 0x%x", 'x', f_src2
, "src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
1987 #if WITH_PROFILE_MODEL_P
1988 /* Record the fields for profiling. */
1989 if (PROFILE_MODEL_P (current_cpu
))
1991 FLD (in_src1
) = f_src1
;
1992 FLD (out_dst
) = f_srcdst
;
1999 CASE (ex
, FMT_MULO3
) :
2001 CGEN_INSN_INT insn
= base_insn
;
2002 #define FLD(f) abuf->fields.fmt_mulo3.f
2003 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2005 EXTRACT_IFMT_MULO3_CODE
2007 /* Record the fields for the semantic handler. */
2008 FLD (f_src1
) = f_src1
;
2009 FLD (f_src2
) = f_src2
;
2010 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2011 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_mulo3", "f_src1 0x%x", 'x', f_src1
, "f_src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2013 #if WITH_PROFILE_MODEL_P
2014 /* Record the fields for profiling. */
2015 if (PROFILE_MODEL_P (current_cpu
))
2017 FLD (out_dst
) = f_srcdst
;
2024 CASE (ex
, FMT_NOTBIT
) :
2026 CGEN_INSN_INT insn
= base_insn
;
2027 #define FLD(f) abuf->fields.fmt_notbit.f
2028 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2030 EXTRACT_IFMT_MULO_CODE
2032 /* Record the fields for the semantic handler. */
2033 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
2034 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
2035 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2036 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_notbit", "src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2038 #if WITH_PROFILE_MODEL_P
2039 /* Record the fields for profiling. */
2040 if (PROFILE_MODEL_P (current_cpu
))
2042 FLD (in_src1
) = f_src1
;
2043 FLD (in_src2
) = f_src2
;
2044 FLD (out_dst
) = f_srcdst
;
2051 CASE (ex
, FMT_NOTBIT1
) :
2053 CGEN_INSN_INT insn
= base_insn
;
2054 #define FLD(f) abuf->fields.fmt_notbit1.f
2055 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2057 EXTRACT_IFMT_MULO1_CODE
2059 /* Record the fields for the semantic handler. */
2060 FLD (f_src1
) = f_src1
;
2061 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
2062 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2063 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_notbit1", "f_src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2065 #if WITH_PROFILE_MODEL_P
2066 /* Record the fields for profiling. */
2067 if (PROFILE_MODEL_P (current_cpu
))
2069 FLD (in_src2
) = f_src2
;
2070 FLD (out_dst
) = f_srcdst
;
2077 CASE (ex
, FMT_NOTBIT2
) :
2079 CGEN_INSN_INT insn
= base_insn
;
2080 #define FLD(f) abuf->fields.fmt_notbit2.f
2081 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2083 EXTRACT_IFMT_MULO2_CODE
2085 /* Record the fields for the semantic handler. */
2086 FLD (f_src2
) = f_src2
;
2087 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
2088 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2089 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_notbit2", "f_src2 0x%x", 'x', f_src2
, "src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2091 #if WITH_PROFILE_MODEL_P
2092 /* Record the fields for profiling. */
2093 if (PROFILE_MODEL_P (current_cpu
))
2095 FLD (in_src1
) = f_src1
;
2096 FLD (out_dst
) = f_srcdst
;
2103 CASE (ex
, FMT_NOTBIT3
) :
2105 CGEN_INSN_INT insn
= base_insn
;
2106 #define FLD(f) abuf->fields.fmt_notbit3.f
2107 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2109 EXTRACT_IFMT_MULO3_CODE
2111 /* Record the fields for the semantic handler. */
2112 FLD (f_src1
) = f_src1
;
2113 FLD (f_src2
) = f_src2
;
2114 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2115 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_notbit3", "f_src1 0x%x", 'x', f_src1
, "f_src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2117 #if WITH_PROFILE_MODEL_P
2118 /* Record the fields for profiling. */
2119 if (PROFILE_MODEL_P (current_cpu
))
2121 FLD (out_dst
) = f_srcdst
;
2128 CASE (ex
, FMT_NOT
) :
2130 CGEN_INSN_INT insn
= base_insn
;
2131 #define FLD(f) abuf->fields.fmt_not.f
2132 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2134 EXTRACT_IFMT_MULO_CODE
2136 /* Record the fields for the semantic handler. */
2137 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
2138 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2139 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_not", "src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2141 #if WITH_PROFILE_MODEL_P
2142 /* Record the fields for profiling. */
2143 if (PROFILE_MODEL_P (current_cpu
))
2145 FLD (in_src1
) = f_src1
;
2146 FLD (out_dst
) = f_srcdst
;
2153 CASE (ex
, FMT_NOT1
) :
2155 CGEN_INSN_INT insn
= base_insn
;
2156 #define FLD(f) abuf->fields.fmt_not1.f
2157 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2159 EXTRACT_IFMT_MULO1_CODE
2161 /* Record the fields for the semantic handler. */
2162 FLD (f_src1
) = f_src1
;
2163 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2164 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_not1", "f_src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2166 #if WITH_PROFILE_MODEL_P
2167 /* Record the fields for profiling. */
2168 if (PROFILE_MODEL_P (current_cpu
))
2170 FLD (out_dst
) = f_srcdst
;
2177 CASE (ex
, FMT_NOT2
) :
2179 CGEN_INSN_INT insn
= base_insn
;
2180 #define FLD(f) abuf->fields.fmt_not2.f
2181 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2183 EXTRACT_IFMT_MULO2_CODE
2185 /* Record the fields for the semantic handler. */
2186 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
2187 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2188 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_not2", "src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2190 #if WITH_PROFILE_MODEL_P
2191 /* Record the fields for profiling. */
2192 if (PROFILE_MODEL_P (current_cpu
))
2194 FLD (in_src1
) = f_src1
;
2195 FLD (out_dst
) = f_srcdst
;
2202 CASE (ex
, FMT_NOT3
) :
2204 CGEN_INSN_INT insn
= base_insn
;
2205 #define FLD(f) abuf->fields.fmt_not3.f
2206 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2208 EXTRACT_IFMT_MULO3_CODE
2210 /* Record the fields for the semantic handler. */
2211 FLD (f_src1
) = f_src1
;
2212 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2213 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_not3", "f_src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2215 #if WITH_PROFILE_MODEL_P
2216 /* Record the fields for profiling. */
2217 if (PROFILE_MODEL_P (current_cpu
))
2219 FLD (out_dst
) = f_srcdst
;
2226 CASE (ex
, FMT_EMUL
) :
2228 CGEN_INSN_INT insn
= base_insn
;
2229 #define FLD(f) abuf->fields.fmt_emul.f
2230 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2232 EXTRACT_IFMT_MULO_CODE
2234 /* Record the fields for the semantic handler. */
2235 FLD (f_srcdst
) = f_srcdst
;
2236 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
2237 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
2238 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2239 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_emul", "f_srcdst 0x%x", 'x', f_srcdst
, "src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2241 #if WITH_PROFILE_MODEL_P
2242 /* Record the fields for profiling. */
2243 if (PROFILE_MODEL_P (current_cpu
))
2245 FLD (in_src1
) = f_src1
;
2246 FLD (in_src2
) = f_src2
;
2247 FLD (out_dst
) = f_srcdst
;
2248 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
2255 CASE (ex
, FMT_EMUL1
) :
2257 CGEN_INSN_INT insn
= base_insn
;
2258 #define FLD(f) abuf->fields.fmt_emul1.f
2259 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2261 EXTRACT_IFMT_MULO1_CODE
2263 /* Record the fields for the semantic handler. */
2264 FLD (f_srcdst
) = f_srcdst
;
2265 FLD (f_src1
) = f_src1
;
2266 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
2267 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2268 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_emul1", "f_srcdst 0x%x", 'x', f_srcdst
, "f_src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2270 #if WITH_PROFILE_MODEL_P
2271 /* Record the fields for profiling. */
2272 if (PROFILE_MODEL_P (current_cpu
))
2274 FLD (in_src2
) = f_src2
;
2275 FLD (out_dst
) = f_srcdst
;
2276 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
2283 CASE (ex
, FMT_EMUL2
) :
2285 CGEN_INSN_INT insn
= base_insn
;
2286 #define FLD(f) abuf->fields.fmt_emul2.f
2287 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2289 EXTRACT_IFMT_MULO2_CODE
2291 /* Record the fields for the semantic handler. */
2292 FLD (f_srcdst
) = f_srcdst
;
2293 FLD (f_src2
) = f_src2
;
2294 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
2295 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2296 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_emul2", "f_srcdst 0x%x", 'x', f_srcdst
, "f_src2 0x%x", 'x', f_src2
, "src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2298 #if WITH_PROFILE_MODEL_P
2299 /* Record the fields for profiling. */
2300 if (PROFILE_MODEL_P (current_cpu
))
2302 FLD (in_src1
) = f_src1
;
2303 FLD (out_dst
) = f_srcdst
;
2304 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
2311 CASE (ex
, FMT_EMUL3
) :
2313 CGEN_INSN_INT insn
= base_insn
;
2314 #define FLD(f) abuf->fields.fmt_emul3.f
2315 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2317 EXTRACT_IFMT_MULO3_CODE
2319 /* Record the fields for the semantic handler. */
2320 FLD (f_srcdst
) = f_srcdst
;
2321 FLD (f_src1
) = f_src1
;
2322 FLD (f_src2
) = f_src2
;
2323 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2324 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_emul3", "f_srcdst 0x%x", 'x', f_srcdst
, "f_src1 0x%x", 'x', f_src1
, "f_src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2326 #if WITH_PROFILE_MODEL_P
2327 /* Record the fields for profiling. */
2328 if (PROFILE_MODEL_P (current_cpu
))
2330 FLD (out_dst
) = f_srcdst
;
2331 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
2338 CASE (ex
, FMT_MOVL
) :
2340 CGEN_INSN_INT insn
= base_insn
;
2341 #define FLD(f) abuf->fields.fmt_movl.f
2342 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2344 EXTRACT_IFMT_MULO2_CODE
2346 /* Record the fields for the semantic handler. */
2347 FLD (f_src1
) = f_src1
;
2348 FLD (f_srcdst
) = f_srcdst
;
2349 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
2350 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2351 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_movl", "f_src1 0x%x", 'x', f_src1
, "f_srcdst 0x%x", 'x', f_srcdst
, "src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2353 #if WITH_PROFILE_MODEL_P
2354 /* Record the fields for profiling. */
2355 if (PROFILE_MODEL_P (current_cpu
))
2357 FLD (in_h_gr_add__VM_index_of_src1_const__WI_1
) = ((FLD (f_src1
)) + (1));
2358 FLD (in_src1
) = f_src1
;
2359 FLD (out_dst
) = f_srcdst
;
2360 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
2367 CASE (ex
, FMT_MOVL1
) :
2369 CGEN_INSN_INT insn
= base_insn
;
2370 #define FLD(f) abuf->fields.fmt_movl1.f
2371 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2373 EXTRACT_IFMT_MULO3_CODE
2375 /* Record the fields for the semantic handler. */
2376 FLD (f_srcdst
) = f_srcdst
;
2377 FLD (f_src1
) = f_src1
;
2378 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2379 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_movl1", "f_srcdst 0x%x", 'x', f_srcdst
, "f_src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2381 #if WITH_PROFILE_MODEL_P
2382 /* Record the fields for profiling. */
2383 if (PROFILE_MODEL_P (current_cpu
))
2385 FLD (out_dst
) = f_srcdst
;
2386 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
2393 CASE (ex
, FMT_MOVT
) :
2395 CGEN_INSN_INT insn
= base_insn
;
2396 #define FLD(f) abuf->fields.fmt_movt.f
2397 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2399 EXTRACT_IFMT_MULO2_CODE
2401 /* Record the fields for the semantic handler. */
2402 FLD (f_src1
) = f_src1
;
2403 FLD (f_srcdst
) = f_srcdst
;
2404 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
2405 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2406 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_movt", "f_src1 0x%x", 'x', f_src1
, "f_srcdst 0x%x", 'x', f_srcdst
, "src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2408 #if WITH_PROFILE_MODEL_P
2409 /* Record the fields for profiling. */
2410 if (PROFILE_MODEL_P (current_cpu
))
2412 FLD (in_h_gr_add__VM_index_of_src1_const__WI_1
) = ((FLD (f_src1
)) + (1));
2413 FLD (in_h_gr_add__VM_index_of_src1_const__WI_2
) = ((FLD (f_src1
)) + (2));
2414 FLD (in_src1
) = f_src1
;
2415 FLD (out_dst
) = f_srcdst
;
2416 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
2417 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
2424 CASE (ex
, FMT_MOVT1
) :
2426 CGEN_INSN_INT insn
= base_insn
;
2427 #define FLD(f) abuf->fields.fmt_movt1.f
2428 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2430 EXTRACT_IFMT_MULO3_CODE
2432 /* Record the fields for the semantic handler. */
2433 FLD (f_srcdst
) = f_srcdst
;
2434 FLD (f_src1
) = f_src1
;
2435 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2436 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_movt1", "f_srcdst 0x%x", 'x', f_srcdst
, "f_src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2438 #if WITH_PROFILE_MODEL_P
2439 /* Record the fields for profiling. */
2440 if (PROFILE_MODEL_P (current_cpu
))
2442 FLD (out_dst
) = f_srcdst
;
2443 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
2444 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
2451 CASE (ex
, FMT_MOVQ
) :
2453 CGEN_INSN_INT insn
= base_insn
;
2454 #define FLD(f) abuf->fields.fmt_movq.f
2455 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2457 EXTRACT_IFMT_MULO2_CODE
2459 /* Record the fields for the semantic handler. */
2460 FLD (f_src1
) = f_src1
;
2461 FLD (f_srcdst
) = f_srcdst
;
2462 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
2463 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2464 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_movq", "f_src1 0x%x", 'x', f_src1
, "f_srcdst 0x%x", 'x', f_srcdst
, "src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2466 #if WITH_PROFILE_MODEL_P
2467 /* Record the fields for profiling. */
2468 if (PROFILE_MODEL_P (current_cpu
))
2470 FLD (in_h_gr_add__VM_index_of_src1_const__WI_1
) = ((FLD (f_src1
)) + (1));
2471 FLD (in_h_gr_add__VM_index_of_src1_const__WI_2
) = ((FLD (f_src1
)) + (2));
2472 FLD (in_h_gr_add__VM_index_of_src1_const__WI_3
) = ((FLD (f_src1
)) + (3));
2473 FLD (in_src1
) = f_src1
;
2474 FLD (out_dst
) = f_srcdst
;
2475 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
2476 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
2477 FLD (out_h_gr_add__VM_index_of_dst_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
2484 CASE (ex
, FMT_MOVQ1
) :
2486 CGEN_INSN_INT insn
= base_insn
;
2487 #define FLD(f) abuf->fields.fmt_movq1.f
2488 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2490 EXTRACT_IFMT_MULO3_CODE
2492 /* Record the fields for the semantic handler. */
2493 FLD (f_srcdst
) = f_srcdst
;
2494 FLD (f_src1
) = f_src1
;
2495 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2496 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_movq1", "f_srcdst 0x%x", 'x', f_srcdst
, "f_src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2498 #if WITH_PROFILE_MODEL_P
2499 /* Record the fields for profiling. */
2500 if (PROFILE_MODEL_P (current_cpu
))
2502 FLD (out_dst
) = f_srcdst
;
2503 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
2504 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
2505 FLD (out_h_gr_add__VM_index_of_dst_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
2512 CASE (ex
, FMT_MODPC
) :
2514 CGEN_INSN_INT insn
= base_insn
;
2515 #define FLD(f) abuf->fields.fmt_modpc.f
2516 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2518 EXTRACT_IFMT_MULO_CODE
2520 /* Record the fields for the semantic handler. */
2521 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
2522 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2523 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_modpc", "src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2525 #if WITH_PROFILE_MODEL_P
2526 /* Record the fields for profiling. */
2527 if (PROFILE_MODEL_P (current_cpu
))
2529 FLD (in_src2
) = f_src2
;
2530 FLD (out_dst
) = f_srcdst
;
2537 CASE (ex
, FMT_LDA_OFFSET
) :
2539 CGEN_INSN_INT insn
= base_insn
;
2540 #define FLD(f) abuf->fields.fmt_lda_offset.f
2541 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2543 EXTRACT_IFMT_LDA_OFFSET_CODE
2545 /* Record the fields for the semantic handler. */
2546 FLD (f_offset
) = f_offset
;
2547 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2548 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_lda_offset", "f_offset 0x%x", 'x', f_offset
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2550 #if WITH_PROFILE_MODEL_P
2551 /* Record the fields for profiling. */
2552 if (PROFILE_MODEL_P (current_cpu
))
2554 FLD (out_dst
) = f_srcdst
;
2561 CASE (ex
, FMT_LDA_INDIRECT_OFFSET
) :
2563 CGEN_INSN_INT insn
= base_insn
;
2564 #define FLD(f) abuf->fields.fmt_lda_indirect_offset.f
2565 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2567 EXTRACT_IFMT_LDA_OFFSET_CODE
2569 /* Record the fields for the semantic handler. */
2570 FLD (f_offset
) = f_offset
;
2571 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2572 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2573 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_lda_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2575 #if WITH_PROFILE_MODEL_P
2576 /* Record the fields for profiling. */
2577 if (PROFILE_MODEL_P (current_cpu
))
2579 FLD (in_abase
) = f_abase
;
2580 FLD (out_dst
) = f_srcdst
;
2587 CASE (ex
, FMT_LDA_INDIRECT
) :
2589 CGEN_INSN_INT insn
= base_insn
;
2590 #define FLD(f) abuf->fields.fmt_lda_indirect.f
2591 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2593 EXTRACT_IFMT_LDA_INDIRECT_CODE
2595 /* Record the fields for the semantic handler. */
2596 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2597 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2598 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_lda_indirect", "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2600 #if WITH_PROFILE_MODEL_P
2601 /* Record the fields for profiling. */
2602 if (PROFILE_MODEL_P (current_cpu
))
2604 FLD (in_abase
) = f_abase
;
2605 FLD (out_dst
) = f_srcdst
;
2612 CASE (ex
, FMT_LDA_INDIRECT_INDEX
) :
2614 CGEN_INSN_INT insn
= base_insn
;
2615 #define FLD(f) abuf->fields.fmt_lda_indirect_index.f
2616 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2618 EXTRACT_IFMT_LDA_INDIRECT_CODE
2620 /* Record the fields for the semantic handler. */
2621 FLD (f_scale
) = f_scale
;
2622 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2623 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2624 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2625 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_lda_indirect_index", "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2627 #if WITH_PROFILE_MODEL_P
2628 /* Record the fields for profiling. */
2629 if (PROFILE_MODEL_P (current_cpu
))
2631 FLD (in_abase
) = f_abase
;
2632 FLD (in_index
) = f_index
;
2633 FLD (out_dst
) = f_srcdst
;
2640 CASE (ex
, FMT_LDA_DISP
) :
2642 CGEN_INSN_INT insn
= base_insn
;
2643 #define FLD(f) abuf->fields.fmt_lda_disp.f
2644 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2646 EXTRACT_IFMT_LDA_DISP_CODE
2648 /* Record the fields for the semantic handler. */
2649 FLD (f_optdisp
) = f_optdisp
;
2650 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2651 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_lda_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2653 #if WITH_PROFILE_MODEL_P
2654 /* Record the fields for profiling. */
2655 if (PROFILE_MODEL_P (current_cpu
))
2657 FLD (out_dst
) = f_srcdst
;
2664 CASE (ex
, FMT_LDA_INDIRECT_DISP
) :
2666 CGEN_INSN_INT insn
= base_insn
;
2667 #define FLD(f) abuf->fields.fmt_lda_indirect_disp.f
2668 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2670 EXTRACT_IFMT_LDA_DISP_CODE
2672 /* Record the fields for the semantic handler. */
2673 FLD (f_optdisp
) = f_optdisp
;
2674 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2675 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2676 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_lda_indirect_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2678 #if WITH_PROFILE_MODEL_P
2679 /* Record the fields for profiling. */
2680 if (PROFILE_MODEL_P (current_cpu
))
2682 FLD (in_abase
) = f_abase
;
2683 FLD (out_dst
) = f_srcdst
;
2690 CASE (ex
, FMT_LDA_INDEX_DISP
) :
2692 CGEN_INSN_INT insn
= base_insn
;
2693 #define FLD(f) abuf->fields.fmt_lda_index_disp.f
2694 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2696 EXTRACT_IFMT_LDA_DISP_CODE
2698 /* Record the fields for the semantic handler. */
2699 FLD (f_optdisp
) = f_optdisp
;
2700 FLD (f_scale
) = f_scale
;
2701 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2702 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2703 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_lda_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2705 #if WITH_PROFILE_MODEL_P
2706 /* Record the fields for profiling. */
2707 if (PROFILE_MODEL_P (current_cpu
))
2709 FLD (in_index
) = f_index
;
2710 FLD (out_dst
) = f_srcdst
;
2717 CASE (ex
, FMT_LDA_INDIRECT_INDEX_DISP
) :
2719 CGEN_INSN_INT insn
= base_insn
;
2720 #define FLD(f) abuf->fields.fmt_lda_indirect_index_disp.f
2721 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2723 EXTRACT_IFMT_LDA_DISP_CODE
2725 /* Record the fields for the semantic handler. */
2726 FLD (f_optdisp
) = f_optdisp
;
2727 FLD (f_scale
) = f_scale
;
2728 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2729 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2730 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2731 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_lda_indirect_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2733 #if WITH_PROFILE_MODEL_P
2734 /* Record the fields for profiling. */
2735 if (PROFILE_MODEL_P (current_cpu
))
2737 FLD (in_abase
) = f_abase
;
2738 FLD (in_index
) = f_index
;
2739 FLD (out_dst
) = f_srcdst
;
2746 CASE (ex
, FMT_LD_OFFSET
) :
2748 CGEN_INSN_INT insn
= base_insn
;
2749 #define FLD(f) abuf->fields.fmt_ld_offset.f
2750 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2752 EXTRACT_IFMT_LDA_OFFSET_CODE
2754 /* Record the fields for the semantic handler. */
2755 FLD (f_offset
) = f_offset
;
2756 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2757 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ld_offset", "f_offset 0x%x", 'x', f_offset
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2759 #if WITH_PROFILE_MODEL_P
2760 /* Record the fields for profiling. */
2761 if (PROFILE_MODEL_P (current_cpu
))
2763 FLD (out_dst
) = f_srcdst
;
2770 CASE (ex
, FMT_LD_INDIRECT_OFFSET
) :
2772 CGEN_INSN_INT insn
= base_insn
;
2773 #define FLD(f) abuf->fields.fmt_ld_indirect_offset.f
2774 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2776 EXTRACT_IFMT_LDA_OFFSET_CODE
2778 /* Record the fields for the semantic handler. */
2779 FLD (f_offset
) = f_offset
;
2780 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2781 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2782 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ld_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2784 #if WITH_PROFILE_MODEL_P
2785 /* Record the fields for profiling. */
2786 if (PROFILE_MODEL_P (current_cpu
))
2788 FLD (in_abase
) = f_abase
;
2789 FLD (out_dst
) = f_srcdst
;
2796 CASE (ex
, FMT_LD_INDIRECT
) :
2798 CGEN_INSN_INT insn
= base_insn
;
2799 #define FLD(f) abuf->fields.fmt_ld_indirect.f
2800 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2802 EXTRACT_IFMT_LDA_INDIRECT_CODE
2804 /* Record the fields for the semantic handler. */
2805 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2806 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2807 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ld_indirect", "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2809 #if WITH_PROFILE_MODEL_P
2810 /* Record the fields for profiling. */
2811 if (PROFILE_MODEL_P (current_cpu
))
2813 FLD (in_abase
) = f_abase
;
2814 FLD (out_dst
) = f_srcdst
;
2821 CASE (ex
, FMT_LD_INDIRECT_INDEX
) :
2823 CGEN_INSN_INT insn
= base_insn
;
2824 #define FLD(f) abuf->fields.fmt_ld_indirect_index.f
2825 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2827 EXTRACT_IFMT_LDA_INDIRECT_CODE
2829 /* Record the fields for the semantic handler. */
2830 FLD (f_scale
) = f_scale
;
2831 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2832 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2833 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2834 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ld_indirect_index", "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2836 #if WITH_PROFILE_MODEL_P
2837 /* Record the fields for profiling. */
2838 if (PROFILE_MODEL_P (current_cpu
))
2840 FLD (in_abase
) = f_abase
;
2841 FLD (in_index
) = f_index
;
2842 FLD (out_dst
) = f_srcdst
;
2849 CASE (ex
, FMT_LD_DISP
) :
2851 CGEN_INSN_INT insn
= base_insn
;
2852 #define FLD(f) abuf->fields.fmt_ld_disp.f
2853 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2855 EXTRACT_IFMT_LDA_DISP_CODE
2857 /* Record the fields for the semantic handler. */
2858 FLD (f_optdisp
) = f_optdisp
;
2859 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2860 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ld_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2862 #if WITH_PROFILE_MODEL_P
2863 /* Record the fields for profiling. */
2864 if (PROFILE_MODEL_P (current_cpu
))
2866 FLD (out_dst
) = f_srcdst
;
2873 CASE (ex
, FMT_LD_INDIRECT_DISP
) :
2875 CGEN_INSN_INT insn
= base_insn
;
2876 #define FLD(f) abuf->fields.fmt_ld_indirect_disp.f
2877 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2879 EXTRACT_IFMT_LDA_DISP_CODE
2881 /* Record the fields for the semantic handler. */
2882 FLD (f_optdisp
) = f_optdisp
;
2883 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2884 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2885 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ld_indirect_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2887 #if WITH_PROFILE_MODEL_P
2888 /* Record the fields for profiling. */
2889 if (PROFILE_MODEL_P (current_cpu
))
2891 FLD (in_abase
) = f_abase
;
2892 FLD (out_dst
) = f_srcdst
;
2899 CASE (ex
, FMT_LD_INDEX_DISP
) :
2901 CGEN_INSN_INT insn
= base_insn
;
2902 #define FLD(f) abuf->fields.fmt_ld_index_disp.f
2903 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2905 EXTRACT_IFMT_LDA_DISP_CODE
2907 /* Record the fields for the semantic handler. */
2908 FLD (f_optdisp
) = f_optdisp
;
2909 FLD (f_scale
) = f_scale
;
2910 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2911 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2912 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ld_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2914 #if WITH_PROFILE_MODEL_P
2915 /* Record the fields for profiling. */
2916 if (PROFILE_MODEL_P (current_cpu
))
2918 FLD (in_index
) = f_index
;
2919 FLD (out_dst
) = f_srcdst
;
2926 CASE (ex
, FMT_LD_INDIRECT_INDEX_DISP
) :
2928 CGEN_INSN_INT insn
= base_insn
;
2929 #define FLD(f) abuf->fields.fmt_ld_indirect_index_disp.f
2930 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2932 EXTRACT_IFMT_LDA_DISP_CODE
2934 /* Record the fields for the semantic handler. */
2935 FLD (f_optdisp
) = f_optdisp
;
2936 FLD (f_scale
) = f_scale
;
2937 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2938 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2939 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2940 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ld_indirect_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2942 #if WITH_PROFILE_MODEL_P
2943 /* Record the fields for profiling. */
2944 if (PROFILE_MODEL_P (current_cpu
))
2946 FLD (in_abase
) = f_abase
;
2947 FLD (in_index
) = f_index
;
2948 FLD (out_dst
) = f_srcdst
;
2955 CASE (ex
, FMT_LDOB_OFFSET
) :
2957 CGEN_INSN_INT insn
= base_insn
;
2958 #define FLD(f) abuf->fields.fmt_ldob_offset.f
2959 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2961 EXTRACT_IFMT_LDA_OFFSET_CODE
2963 /* Record the fields for the semantic handler. */
2964 FLD (f_offset
) = f_offset
;
2965 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2966 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldob_offset", "f_offset 0x%x", 'x', f_offset
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2968 #if WITH_PROFILE_MODEL_P
2969 /* Record the fields for profiling. */
2970 if (PROFILE_MODEL_P (current_cpu
))
2972 FLD (out_dst
) = f_srcdst
;
2979 CASE (ex
, FMT_LDOB_INDIRECT_OFFSET
) :
2981 CGEN_INSN_INT insn
= base_insn
;
2982 #define FLD(f) abuf->fields.fmt_ldob_indirect_offset.f
2983 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2985 EXTRACT_IFMT_LDA_OFFSET_CODE
2987 /* Record the fields for the semantic handler. */
2988 FLD (f_offset
) = f_offset
;
2989 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2990 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2991 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldob_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2993 #if WITH_PROFILE_MODEL_P
2994 /* Record the fields for profiling. */
2995 if (PROFILE_MODEL_P (current_cpu
))
2997 FLD (in_abase
) = f_abase
;
2998 FLD (out_dst
) = f_srcdst
;
3005 CASE (ex
, FMT_LDOB_INDIRECT
) :
3007 CGEN_INSN_INT insn
= base_insn
;
3008 #define FLD(f) abuf->fields.fmt_ldob_indirect.f
3009 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3011 EXTRACT_IFMT_LDA_INDIRECT_CODE
3013 /* Record the fields for the semantic handler. */
3014 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3015 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3016 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldob_indirect", "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3018 #if WITH_PROFILE_MODEL_P
3019 /* Record the fields for profiling. */
3020 if (PROFILE_MODEL_P (current_cpu
))
3022 FLD (in_abase
) = f_abase
;
3023 FLD (out_dst
) = f_srcdst
;
3030 CASE (ex
, FMT_LDOB_INDIRECT_INDEX
) :
3032 CGEN_INSN_INT insn
= base_insn
;
3033 #define FLD(f) abuf->fields.fmt_ldob_indirect_index.f
3034 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3036 EXTRACT_IFMT_LDA_INDIRECT_CODE
3038 /* Record the fields for the semantic handler. */
3039 FLD (f_scale
) = f_scale
;
3040 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3041 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3042 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3043 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldob_indirect_index", "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3045 #if WITH_PROFILE_MODEL_P
3046 /* Record the fields for profiling. */
3047 if (PROFILE_MODEL_P (current_cpu
))
3049 FLD (in_abase
) = f_abase
;
3050 FLD (in_index
) = f_index
;
3051 FLD (out_dst
) = f_srcdst
;
3058 CASE (ex
, FMT_LDOB_DISP
) :
3060 CGEN_INSN_INT insn
= base_insn
;
3061 #define FLD(f) abuf->fields.fmt_ldob_disp.f
3062 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3064 EXTRACT_IFMT_LDA_DISP_CODE
3066 /* Record the fields for the semantic handler. */
3067 FLD (f_optdisp
) = f_optdisp
;
3068 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3069 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldob_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3071 #if WITH_PROFILE_MODEL_P
3072 /* Record the fields for profiling. */
3073 if (PROFILE_MODEL_P (current_cpu
))
3075 FLD (out_dst
) = f_srcdst
;
3082 CASE (ex
, FMT_LDOB_INDIRECT_DISP
) :
3084 CGEN_INSN_INT insn
= base_insn
;
3085 #define FLD(f) abuf->fields.fmt_ldob_indirect_disp.f
3086 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3088 EXTRACT_IFMT_LDA_DISP_CODE
3090 /* Record the fields for the semantic handler. */
3091 FLD (f_optdisp
) = f_optdisp
;
3092 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3093 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3094 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldob_indirect_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3096 #if WITH_PROFILE_MODEL_P
3097 /* Record the fields for profiling. */
3098 if (PROFILE_MODEL_P (current_cpu
))
3100 FLD (in_abase
) = f_abase
;
3101 FLD (out_dst
) = f_srcdst
;
3108 CASE (ex
, FMT_LDOB_INDEX_DISP
) :
3110 CGEN_INSN_INT insn
= base_insn
;
3111 #define FLD(f) abuf->fields.fmt_ldob_index_disp.f
3112 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3114 EXTRACT_IFMT_LDA_DISP_CODE
3116 /* Record the fields for the semantic handler. */
3117 FLD (f_optdisp
) = f_optdisp
;
3118 FLD (f_scale
) = f_scale
;
3119 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3120 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3121 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldob_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3123 #if WITH_PROFILE_MODEL_P
3124 /* Record the fields for profiling. */
3125 if (PROFILE_MODEL_P (current_cpu
))
3127 FLD (in_index
) = f_index
;
3128 FLD (out_dst
) = f_srcdst
;
3135 CASE (ex
, FMT_LDOB_INDIRECT_INDEX_DISP
) :
3137 CGEN_INSN_INT insn
= base_insn
;
3138 #define FLD(f) abuf->fields.fmt_ldob_indirect_index_disp.f
3139 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3141 EXTRACT_IFMT_LDA_DISP_CODE
3143 /* Record the fields for the semantic handler. */
3144 FLD (f_optdisp
) = f_optdisp
;
3145 FLD (f_scale
) = f_scale
;
3146 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3147 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3148 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3149 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldob_indirect_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3151 #if WITH_PROFILE_MODEL_P
3152 /* Record the fields for profiling. */
3153 if (PROFILE_MODEL_P (current_cpu
))
3155 FLD (in_abase
) = f_abase
;
3156 FLD (in_index
) = f_index
;
3157 FLD (out_dst
) = f_srcdst
;
3164 CASE (ex
, FMT_LDOS_OFFSET
) :
3166 CGEN_INSN_INT insn
= base_insn
;
3167 #define FLD(f) abuf->fields.fmt_ldos_offset.f
3168 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3170 EXTRACT_IFMT_LDA_OFFSET_CODE
3172 /* Record the fields for the semantic handler. */
3173 FLD (f_offset
) = f_offset
;
3174 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3175 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldos_offset", "f_offset 0x%x", 'x', f_offset
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3177 #if WITH_PROFILE_MODEL_P
3178 /* Record the fields for profiling. */
3179 if (PROFILE_MODEL_P (current_cpu
))
3181 FLD (out_dst
) = f_srcdst
;
3188 CASE (ex
, FMT_LDOS_INDIRECT_OFFSET
) :
3190 CGEN_INSN_INT insn
= base_insn
;
3191 #define FLD(f) abuf->fields.fmt_ldos_indirect_offset.f
3192 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3194 EXTRACT_IFMT_LDA_OFFSET_CODE
3196 /* Record the fields for the semantic handler. */
3197 FLD (f_offset
) = f_offset
;
3198 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3199 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3200 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldos_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3202 #if WITH_PROFILE_MODEL_P
3203 /* Record the fields for profiling. */
3204 if (PROFILE_MODEL_P (current_cpu
))
3206 FLD (in_abase
) = f_abase
;
3207 FLD (out_dst
) = f_srcdst
;
3214 CASE (ex
, FMT_LDOS_INDIRECT
) :
3216 CGEN_INSN_INT insn
= base_insn
;
3217 #define FLD(f) abuf->fields.fmt_ldos_indirect.f
3218 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3220 EXTRACT_IFMT_LDA_INDIRECT_CODE
3222 /* Record the fields for the semantic handler. */
3223 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3224 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3225 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldos_indirect", "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3227 #if WITH_PROFILE_MODEL_P
3228 /* Record the fields for profiling. */
3229 if (PROFILE_MODEL_P (current_cpu
))
3231 FLD (in_abase
) = f_abase
;
3232 FLD (out_dst
) = f_srcdst
;
3239 CASE (ex
, FMT_LDOS_INDIRECT_INDEX
) :
3241 CGEN_INSN_INT insn
= base_insn
;
3242 #define FLD(f) abuf->fields.fmt_ldos_indirect_index.f
3243 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3245 EXTRACT_IFMT_LDA_INDIRECT_CODE
3247 /* Record the fields for the semantic handler. */
3248 FLD (f_scale
) = f_scale
;
3249 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3250 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3251 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3252 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldos_indirect_index", "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3254 #if WITH_PROFILE_MODEL_P
3255 /* Record the fields for profiling. */
3256 if (PROFILE_MODEL_P (current_cpu
))
3258 FLD (in_abase
) = f_abase
;
3259 FLD (in_index
) = f_index
;
3260 FLD (out_dst
) = f_srcdst
;
3267 CASE (ex
, FMT_LDOS_DISP
) :
3269 CGEN_INSN_INT insn
= base_insn
;
3270 #define FLD(f) abuf->fields.fmt_ldos_disp.f
3271 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3273 EXTRACT_IFMT_LDA_DISP_CODE
3275 /* Record the fields for the semantic handler. */
3276 FLD (f_optdisp
) = f_optdisp
;
3277 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3278 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldos_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3280 #if WITH_PROFILE_MODEL_P
3281 /* Record the fields for profiling. */
3282 if (PROFILE_MODEL_P (current_cpu
))
3284 FLD (out_dst
) = f_srcdst
;
3291 CASE (ex
, FMT_LDOS_INDIRECT_DISP
) :
3293 CGEN_INSN_INT insn
= base_insn
;
3294 #define FLD(f) abuf->fields.fmt_ldos_indirect_disp.f
3295 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3297 EXTRACT_IFMT_LDA_DISP_CODE
3299 /* Record the fields for the semantic handler. */
3300 FLD (f_optdisp
) = f_optdisp
;
3301 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3302 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3303 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldos_indirect_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3305 #if WITH_PROFILE_MODEL_P
3306 /* Record the fields for profiling. */
3307 if (PROFILE_MODEL_P (current_cpu
))
3309 FLD (in_abase
) = f_abase
;
3310 FLD (out_dst
) = f_srcdst
;
3317 CASE (ex
, FMT_LDOS_INDEX_DISP
) :
3319 CGEN_INSN_INT insn
= base_insn
;
3320 #define FLD(f) abuf->fields.fmt_ldos_index_disp.f
3321 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3323 EXTRACT_IFMT_LDA_DISP_CODE
3325 /* Record the fields for the semantic handler. */
3326 FLD (f_optdisp
) = f_optdisp
;
3327 FLD (f_scale
) = f_scale
;
3328 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3329 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3330 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldos_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3332 #if WITH_PROFILE_MODEL_P
3333 /* Record the fields for profiling. */
3334 if (PROFILE_MODEL_P (current_cpu
))
3336 FLD (in_index
) = f_index
;
3337 FLD (out_dst
) = f_srcdst
;
3344 CASE (ex
, FMT_LDOS_INDIRECT_INDEX_DISP
) :
3346 CGEN_INSN_INT insn
= base_insn
;
3347 #define FLD(f) abuf->fields.fmt_ldos_indirect_index_disp.f
3348 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3350 EXTRACT_IFMT_LDA_DISP_CODE
3352 /* Record the fields for the semantic handler. */
3353 FLD (f_optdisp
) = f_optdisp
;
3354 FLD (f_scale
) = f_scale
;
3355 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3356 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3357 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3358 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldos_indirect_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3360 #if WITH_PROFILE_MODEL_P
3361 /* Record the fields for profiling. */
3362 if (PROFILE_MODEL_P (current_cpu
))
3364 FLD (in_abase
) = f_abase
;
3365 FLD (in_index
) = f_index
;
3366 FLD (out_dst
) = f_srcdst
;
3373 CASE (ex
, FMT_LDIB_OFFSET
) :
3375 CGEN_INSN_INT insn
= base_insn
;
3376 #define FLD(f) abuf->fields.fmt_ldib_offset.f
3377 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3379 EXTRACT_IFMT_LDA_OFFSET_CODE
3381 /* Record the fields for the semantic handler. */
3382 FLD (f_offset
) = f_offset
;
3383 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3384 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldib_offset", "f_offset 0x%x", 'x', f_offset
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3386 #if WITH_PROFILE_MODEL_P
3387 /* Record the fields for profiling. */
3388 if (PROFILE_MODEL_P (current_cpu
))
3390 FLD (out_dst
) = f_srcdst
;
3397 CASE (ex
, FMT_LDIB_INDIRECT_OFFSET
) :
3399 CGEN_INSN_INT insn
= base_insn
;
3400 #define FLD(f) abuf->fields.fmt_ldib_indirect_offset.f
3401 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3403 EXTRACT_IFMT_LDA_OFFSET_CODE
3405 /* Record the fields for the semantic handler. */
3406 FLD (f_offset
) = f_offset
;
3407 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3408 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3409 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldib_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3411 #if WITH_PROFILE_MODEL_P
3412 /* Record the fields for profiling. */
3413 if (PROFILE_MODEL_P (current_cpu
))
3415 FLD (in_abase
) = f_abase
;
3416 FLD (out_dst
) = f_srcdst
;
3423 CASE (ex
, FMT_LDIB_INDIRECT
) :
3425 CGEN_INSN_INT insn
= base_insn
;
3426 #define FLD(f) abuf->fields.fmt_ldib_indirect.f
3427 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3429 EXTRACT_IFMT_LDA_INDIRECT_CODE
3431 /* Record the fields for the semantic handler. */
3432 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3433 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3434 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldib_indirect", "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3436 #if WITH_PROFILE_MODEL_P
3437 /* Record the fields for profiling. */
3438 if (PROFILE_MODEL_P (current_cpu
))
3440 FLD (in_abase
) = f_abase
;
3441 FLD (out_dst
) = f_srcdst
;
3448 CASE (ex
, FMT_LDIB_INDIRECT_INDEX
) :
3450 CGEN_INSN_INT insn
= base_insn
;
3451 #define FLD(f) abuf->fields.fmt_ldib_indirect_index.f
3452 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3454 EXTRACT_IFMT_LDA_INDIRECT_CODE
3456 /* Record the fields for the semantic handler. */
3457 FLD (f_scale
) = f_scale
;
3458 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3459 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3460 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3461 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldib_indirect_index", "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3463 #if WITH_PROFILE_MODEL_P
3464 /* Record the fields for profiling. */
3465 if (PROFILE_MODEL_P (current_cpu
))
3467 FLD (in_abase
) = f_abase
;
3468 FLD (in_index
) = f_index
;
3469 FLD (out_dst
) = f_srcdst
;
3476 CASE (ex
, FMT_LDIB_DISP
) :
3478 CGEN_INSN_INT insn
= base_insn
;
3479 #define FLD(f) abuf->fields.fmt_ldib_disp.f
3480 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3482 EXTRACT_IFMT_LDA_DISP_CODE
3484 /* Record the fields for the semantic handler. */
3485 FLD (f_optdisp
) = f_optdisp
;
3486 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3487 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldib_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3489 #if WITH_PROFILE_MODEL_P
3490 /* Record the fields for profiling. */
3491 if (PROFILE_MODEL_P (current_cpu
))
3493 FLD (out_dst
) = f_srcdst
;
3500 CASE (ex
, FMT_LDIB_INDIRECT_DISP
) :
3502 CGEN_INSN_INT insn
= base_insn
;
3503 #define FLD(f) abuf->fields.fmt_ldib_indirect_disp.f
3504 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3506 EXTRACT_IFMT_LDA_DISP_CODE
3508 /* Record the fields for the semantic handler. */
3509 FLD (f_optdisp
) = f_optdisp
;
3510 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3511 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3512 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldib_indirect_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3514 #if WITH_PROFILE_MODEL_P
3515 /* Record the fields for profiling. */
3516 if (PROFILE_MODEL_P (current_cpu
))
3518 FLD (in_abase
) = f_abase
;
3519 FLD (out_dst
) = f_srcdst
;
3526 CASE (ex
, FMT_LDIB_INDEX_DISP
) :
3528 CGEN_INSN_INT insn
= base_insn
;
3529 #define FLD(f) abuf->fields.fmt_ldib_index_disp.f
3530 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3532 EXTRACT_IFMT_LDA_DISP_CODE
3534 /* Record the fields for the semantic handler. */
3535 FLD (f_optdisp
) = f_optdisp
;
3536 FLD (f_scale
) = f_scale
;
3537 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3538 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3539 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldib_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3541 #if WITH_PROFILE_MODEL_P
3542 /* Record the fields for profiling. */
3543 if (PROFILE_MODEL_P (current_cpu
))
3545 FLD (in_index
) = f_index
;
3546 FLD (out_dst
) = f_srcdst
;
3553 CASE (ex
, FMT_LDIB_INDIRECT_INDEX_DISP
) :
3555 CGEN_INSN_INT insn
= base_insn
;
3556 #define FLD(f) abuf->fields.fmt_ldib_indirect_index_disp.f
3557 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3559 EXTRACT_IFMT_LDA_DISP_CODE
3561 /* Record the fields for the semantic handler. */
3562 FLD (f_optdisp
) = f_optdisp
;
3563 FLD (f_scale
) = f_scale
;
3564 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3565 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3566 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3567 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldib_indirect_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3569 #if WITH_PROFILE_MODEL_P
3570 /* Record the fields for profiling. */
3571 if (PROFILE_MODEL_P (current_cpu
))
3573 FLD (in_abase
) = f_abase
;
3574 FLD (in_index
) = f_index
;
3575 FLD (out_dst
) = f_srcdst
;
3582 CASE (ex
, FMT_LDIS_OFFSET
) :
3584 CGEN_INSN_INT insn
= base_insn
;
3585 #define FLD(f) abuf->fields.fmt_ldis_offset.f
3586 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3588 EXTRACT_IFMT_LDA_OFFSET_CODE
3590 /* Record the fields for the semantic handler. */
3591 FLD (f_offset
) = f_offset
;
3592 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3593 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldis_offset", "f_offset 0x%x", 'x', f_offset
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3595 #if WITH_PROFILE_MODEL_P
3596 /* Record the fields for profiling. */
3597 if (PROFILE_MODEL_P (current_cpu
))
3599 FLD (out_dst
) = f_srcdst
;
3606 CASE (ex
, FMT_LDIS_INDIRECT_OFFSET
) :
3608 CGEN_INSN_INT insn
= base_insn
;
3609 #define FLD(f) abuf->fields.fmt_ldis_indirect_offset.f
3610 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3612 EXTRACT_IFMT_LDA_OFFSET_CODE
3614 /* Record the fields for the semantic handler. */
3615 FLD (f_offset
) = f_offset
;
3616 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3617 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3618 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldis_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3620 #if WITH_PROFILE_MODEL_P
3621 /* Record the fields for profiling. */
3622 if (PROFILE_MODEL_P (current_cpu
))
3624 FLD (in_abase
) = f_abase
;
3625 FLD (out_dst
) = f_srcdst
;
3632 CASE (ex
, FMT_LDIS_INDIRECT
) :
3634 CGEN_INSN_INT insn
= base_insn
;
3635 #define FLD(f) abuf->fields.fmt_ldis_indirect.f
3636 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3638 EXTRACT_IFMT_LDA_INDIRECT_CODE
3640 /* Record the fields for the semantic handler. */
3641 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3642 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3643 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldis_indirect", "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3645 #if WITH_PROFILE_MODEL_P
3646 /* Record the fields for profiling. */
3647 if (PROFILE_MODEL_P (current_cpu
))
3649 FLD (in_abase
) = f_abase
;
3650 FLD (out_dst
) = f_srcdst
;
3657 CASE (ex
, FMT_LDIS_INDIRECT_INDEX
) :
3659 CGEN_INSN_INT insn
= base_insn
;
3660 #define FLD(f) abuf->fields.fmt_ldis_indirect_index.f
3661 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3663 EXTRACT_IFMT_LDA_INDIRECT_CODE
3665 /* Record the fields for the semantic handler. */
3666 FLD (f_scale
) = f_scale
;
3667 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3668 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3669 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3670 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldis_indirect_index", "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3672 #if WITH_PROFILE_MODEL_P
3673 /* Record the fields for profiling. */
3674 if (PROFILE_MODEL_P (current_cpu
))
3676 FLD (in_abase
) = f_abase
;
3677 FLD (in_index
) = f_index
;
3678 FLD (out_dst
) = f_srcdst
;
3685 CASE (ex
, FMT_LDIS_DISP
) :
3687 CGEN_INSN_INT insn
= base_insn
;
3688 #define FLD(f) abuf->fields.fmt_ldis_disp.f
3689 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3691 EXTRACT_IFMT_LDA_DISP_CODE
3693 /* Record the fields for the semantic handler. */
3694 FLD (f_optdisp
) = f_optdisp
;
3695 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3696 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldis_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3698 #if WITH_PROFILE_MODEL_P
3699 /* Record the fields for profiling. */
3700 if (PROFILE_MODEL_P (current_cpu
))
3702 FLD (out_dst
) = f_srcdst
;
3709 CASE (ex
, FMT_LDIS_INDIRECT_DISP
) :
3711 CGEN_INSN_INT insn
= base_insn
;
3712 #define FLD(f) abuf->fields.fmt_ldis_indirect_disp.f
3713 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3715 EXTRACT_IFMT_LDA_DISP_CODE
3717 /* Record the fields for the semantic handler. */
3718 FLD (f_optdisp
) = f_optdisp
;
3719 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3720 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3721 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldis_indirect_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3723 #if WITH_PROFILE_MODEL_P
3724 /* Record the fields for profiling. */
3725 if (PROFILE_MODEL_P (current_cpu
))
3727 FLD (in_abase
) = f_abase
;
3728 FLD (out_dst
) = f_srcdst
;
3735 CASE (ex
, FMT_LDIS_INDEX_DISP
) :
3737 CGEN_INSN_INT insn
= base_insn
;
3738 #define FLD(f) abuf->fields.fmt_ldis_index_disp.f
3739 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3741 EXTRACT_IFMT_LDA_DISP_CODE
3743 /* Record the fields for the semantic handler. */
3744 FLD (f_optdisp
) = f_optdisp
;
3745 FLD (f_scale
) = f_scale
;
3746 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3747 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3748 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldis_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3750 #if WITH_PROFILE_MODEL_P
3751 /* Record the fields for profiling. */
3752 if (PROFILE_MODEL_P (current_cpu
))
3754 FLD (in_index
) = f_index
;
3755 FLD (out_dst
) = f_srcdst
;
3762 CASE (ex
, FMT_LDIS_INDIRECT_INDEX_DISP
) :
3764 CGEN_INSN_INT insn
= base_insn
;
3765 #define FLD(f) abuf->fields.fmt_ldis_indirect_index_disp.f
3766 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3768 EXTRACT_IFMT_LDA_DISP_CODE
3770 /* Record the fields for the semantic handler. */
3771 FLD (f_optdisp
) = f_optdisp
;
3772 FLD (f_scale
) = f_scale
;
3773 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3774 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3775 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3776 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldis_indirect_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3778 #if WITH_PROFILE_MODEL_P
3779 /* Record the fields for profiling. */
3780 if (PROFILE_MODEL_P (current_cpu
))
3782 FLD (in_abase
) = f_abase
;
3783 FLD (in_index
) = f_index
;
3784 FLD (out_dst
) = f_srcdst
;
3791 CASE (ex
, FMT_LDL_OFFSET
) :
3793 CGEN_INSN_INT insn
= base_insn
;
3794 #define FLD(f) abuf->fields.fmt_ldl_offset.f
3795 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3797 EXTRACT_IFMT_LDA_OFFSET_CODE
3799 /* Record the fields for the semantic handler. */
3800 FLD (f_srcdst
) = f_srcdst
;
3801 FLD (f_offset
) = f_offset
;
3802 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3803 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldl_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3805 #if WITH_PROFILE_MODEL_P
3806 /* Record the fields for profiling. */
3807 if (PROFILE_MODEL_P (current_cpu
))
3809 FLD (out_dst
) = f_srcdst
;
3810 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
3817 CASE (ex
, FMT_LDL_INDIRECT_OFFSET
) :
3819 CGEN_INSN_INT insn
= base_insn
;
3820 #define FLD(f) abuf->fields.fmt_ldl_indirect_offset.f
3821 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3823 EXTRACT_IFMT_LDA_OFFSET_CODE
3825 /* Record the fields for the semantic handler. */
3826 FLD (f_srcdst
) = f_srcdst
;
3827 FLD (f_offset
) = f_offset
;
3828 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3829 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3830 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldl_indirect_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3832 #if WITH_PROFILE_MODEL_P
3833 /* Record the fields for profiling. */
3834 if (PROFILE_MODEL_P (current_cpu
))
3836 FLD (in_abase
) = f_abase
;
3837 FLD (out_dst
) = f_srcdst
;
3838 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
3845 CASE (ex
, FMT_LDL_INDIRECT
) :
3847 CGEN_INSN_INT insn
= base_insn
;
3848 #define FLD(f) abuf->fields.fmt_ldl_indirect.f
3849 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3851 EXTRACT_IFMT_LDA_INDIRECT_CODE
3853 /* Record the fields for the semantic handler. */
3854 FLD (f_srcdst
) = f_srcdst
;
3855 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3856 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3857 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldl_indirect", "f_srcdst 0x%x", 'x', f_srcdst
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3859 #if WITH_PROFILE_MODEL_P
3860 /* Record the fields for profiling. */
3861 if (PROFILE_MODEL_P (current_cpu
))
3863 FLD (in_abase
) = f_abase
;
3864 FLD (out_dst
) = f_srcdst
;
3865 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
3872 CASE (ex
, FMT_LDL_INDIRECT_INDEX
) :
3874 CGEN_INSN_INT insn
= base_insn
;
3875 #define FLD(f) abuf->fields.fmt_ldl_indirect_index.f
3876 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3878 EXTRACT_IFMT_LDA_INDIRECT_CODE
3880 /* Record the fields for the semantic handler. */
3881 FLD (f_srcdst
) = f_srcdst
;
3882 FLD (f_scale
) = f_scale
;
3883 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3884 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3885 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3886 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldl_indirect_index", "f_srcdst 0x%x", 'x', f_srcdst
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3888 #if WITH_PROFILE_MODEL_P
3889 /* Record the fields for profiling. */
3890 if (PROFILE_MODEL_P (current_cpu
))
3892 FLD (in_abase
) = f_abase
;
3893 FLD (in_index
) = f_index
;
3894 FLD (out_dst
) = f_srcdst
;
3895 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
3902 CASE (ex
, FMT_LDL_DISP
) :
3904 CGEN_INSN_INT insn
= base_insn
;
3905 #define FLD(f) abuf->fields.fmt_ldl_disp.f
3906 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3908 EXTRACT_IFMT_LDA_DISP_CODE
3910 /* Record the fields for the semantic handler. */
3911 FLD (f_srcdst
) = f_srcdst
;
3912 FLD (f_optdisp
) = f_optdisp
;
3913 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3914 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldl_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3916 #if WITH_PROFILE_MODEL_P
3917 /* Record the fields for profiling. */
3918 if (PROFILE_MODEL_P (current_cpu
))
3920 FLD (out_dst
) = f_srcdst
;
3921 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
3928 CASE (ex
, FMT_LDL_INDIRECT_DISP
) :
3930 CGEN_INSN_INT insn
= base_insn
;
3931 #define FLD(f) abuf->fields.fmt_ldl_indirect_disp.f
3932 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3934 EXTRACT_IFMT_LDA_DISP_CODE
3936 /* Record the fields for the semantic handler. */
3937 FLD (f_srcdst
) = f_srcdst
;
3938 FLD (f_optdisp
) = f_optdisp
;
3939 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3940 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3941 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldl_indirect_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3943 #if WITH_PROFILE_MODEL_P
3944 /* Record the fields for profiling. */
3945 if (PROFILE_MODEL_P (current_cpu
))
3947 FLD (in_abase
) = f_abase
;
3948 FLD (out_dst
) = f_srcdst
;
3949 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
3956 CASE (ex
, FMT_LDL_INDEX_DISP
) :
3958 CGEN_INSN_INT insn
= base_insn
;
3959 #define FLD(f) abuf->fields.fmt_ldl_index_disp.f
3960 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3962 EXTRACT_IFMT_LDA_DISP_CODE
3964 /* Record the fields for the semantic handler. */
3965 FLD (f_srcdst
) = f_srcdst
;
3966 FLD (f_optdisp
) = f_optdisp
;
3967 FLD (f_scale
) = f_scale
;
3968 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3969 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3970 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldl_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
3972 #if WITH_PROFILE_MODEL_P
3973 /* Record the fields for profiling. */
3974 if (PROFILE_MODEL_P (current_cpu
))
3976 FLD (in_index
) = f_index
;
3977 FLD (out_dst
) = f_srcdst
;
3978 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
3985 CASE (ex
, FMT_LDL_INDIRECT_INDEX_DISP
) :
3987 CGEN_INSN_INT insn
= base_insn
;
3988 #define FLD(f) abuf->fields.fmt_ldl_indirect_index_disp.f
3989 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3991 EXTRACT_IFMT_LDA_DISP_CODE
3993 /* Record the fields for the semantic handler. */
3994 FLD (f_srcdst
) = f_srcdst
;
3995 FLD (f_optdisp
) = f_optdisp
;
3996 FLD (f_scale
) = f_scale
;
3997 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3998 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3999 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4000 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldl_indirect_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4002 #if WITH_PROFILE_MODEL_P
4003 /* Record the fields for profiling. */
4004 if (PROFILE_MODEL_P (current_cpu
))
4006 FLD (in_abase
) = f_abase
;
4007 FLD (in_index
) = f_index
;
4008 FLD (out_dst
) = f_srcdst
;
4009 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4016 CASE (ex
, FMT_LDT_OFFSET
) :
4018 CGEN_INSN_INT insn
= base_insn
;
4019 #define FLD(f) abuf->fields.fmt_ldt_offset.f
4020 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4022 EXTRACT_IFMT_LDA_OFFSET_CODE
4024 /* Record the fields for the semantic handler. */
4025 FLD (f_srcdst
) = f_srcdst
;
4026 FLD (f_offset
) = f_offset
;
4027 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4028 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldt_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4030 #if WITH_PROFILE_MODEL_P
4031 /* Record the fields for profiling. */
4032 if (PROFILE_MODEL_P (current_cpu
))
4034 FLD (out_dst
) = f_srcdst
;
4035 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4036 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4043 CASE (ex
, FMT_LDT_INDIRECT_OFFSET
) :
4045 CGEN_INSN_INT insn
= base_insn
;
4046 #define FLD(f) abuf->fields.fmt_ldt_indirect_offset.f
4047 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4049 EXTRACT_IFMT_LDA_OFFSET_CODE
4051 /* Record the fields for the semantic handler. */
4052 FLD (f_srcdst
) = f_srcdst
;
4053 FLD (f_offset
) = f_offset
;
4054 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4055 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4056 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldt_indirect_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4058 #if WITH_PROFILE_MODEL_P
4059 /* Record the fields for profiling. */
4060 if (PROFILE_MODEL_P (current_cpu
))
4062 FLD (in_abase
) = f_abase
;
4063 FLD (out_dst
) = f_srcdst
;
4064 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4065 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4072 CASE (ex
, FMT_LDT_INDIRECT
) :
4074 CGEN_INSN_INT insn
= base_insn
;
4075 #define FLD(f) abuf->fields.fmt_ldt_indirect.f
4076 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4078 EXTRACT_IFMT_LDA_INDIRECT_CODE
4080 /* Record the fields for the semantic handler. */
4081 FLD (f_srcdst
) = f_srcdst
;
4082 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4083 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4084 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldt_indirect", "f_srcdst 0x%x", 'x', f_srcdst
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4086 #if WITH_PROFILE_MODEL_P
4087 /* Record the fields for profiling. */
4088 if (PROFILE_MODEL_P (current_cpu
))
4090 FLD (in_abase
) = f_abase
;
4091 FLD (out_dst
) = f_srcdst
;
4092 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4093 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4100 CASE (ex
, FMT_LDT_INDIRECT_INDEX
) :
4102 CGEN_INSN_INT insn
= base_insn
;
4103 #define FLD(f) abuf->fields.fmt_ldt_indirect_index.f
4104 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4106 EXTRACT_IFMT_LDA_INDIRECT_CODE
4108 /* Record the fields for the semantic handler. */
4109 FLD (f_srcdst
) = f_srcdst
;
4110 FLD (f_scale
) = f_scale
;
4111 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4112 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4113 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4114 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldt_indirect_index", "f_srcdst 0x%x", 'x', f_srcdst
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4116 #if WITH_PROFILE_MODEL_P
4117 /* Record the fields for profiling. */
4118 if (PROFILE_MODEL_P (current_cpu
))
4120 FLD (in_abase
) = f_abase
;
4121 FLD (in_index
) = f_index
;
4122 FLD (out_dst
) = f_srcdst
;
4123 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4124 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4131 CASE (ex
, FMT_LDT_DISP
) :
4133 CGEN_INSN_INT insn
= base_insn
;
4134 #define FLD(f) abuf->fields.fmt_ldt_disp.f
4135 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4137 EXTRACT_IFMT_LDA_DISP_CODE
4139 /* Record the fields for the semantic handler. */
4140 FLD (f_srcdst
) = f_srcdst
;
4141 FLD (f_optdisp
) = f_optdisp
;
4142 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4143 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldt_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4145 #if WITH_PROFILE_MODEL_P
4146 /* Record the fields for profiling. */
4147 if (PROFILE_MODEL_P (current_cpu
))
4149 FLD (out_dst
) = f_srcdst
;
4150 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4151 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4158 CASE (ex
, FMT_LDT_INDIRECT_DISP
) :
4160 CGEN_INSN_INT insn
= base_insn
;
4161 #define FLD(f) abuf->fields.fmt_ldt_indirect_disp.f
4162 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4164 EXTRACT_IFMT_LDA_DISP_CODE
4166 /* Record the fields for the semantic handler. */
4167 FLD (f_srcdst
) = f_srcdst
;
4168 FLD (f_optdisp
) = f_optdisp
;
4169 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4170 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4171 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldt_indirect_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4173 #if WITH_PROFILE_MODEL_P
4174 /* Record the fields for profiling. */
4175 if (PROFILE_MODEL_P (current_cpu
))
4177 FLD (in_abase
) = f_abase
;
4178 FLD (out_dst
) = f_srcdst
;
4179 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4180 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4187 CASE (ex
, FMT_LDT_INDEX_DISP
) :
4189 CGEN_INSN_INT insn
= base_insn
;
4190 #define FLD(f) abuf->fields.fmt_ldt_index_disp.f
4191 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4193 EXTRACT_IFMT_LDA_DISP_CODE
4195 /* Record the fields for the semantic handler. */
4196 FLD (f_srcdst
) = f_srcdst
;
4197 FLD (f_optdisp
) = f_optdisp
;
4198 FLD (f_scale
) = f_scale
;
4199 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4200 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4201 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldt_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4203 #if WITH_PROFILE_MODEL_P
4204 /* Record the fields for profiling. */
4205 if (PROFILE_MODEL_P (current_cpu
))
4207 FLD (in_index
) = f_index
;
4208 FLD (out_dst
) = f_srcdst
;
4209 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4210 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4217 CASE (ex
, FMT_LDT_INDIRECT_INDEX_DISP
) :
4219 CGEN_INSN_INT insn
= base_insn
;
4220 #define FLD(f) abuf->fields.fmt_ldt_indirect_index_disp.f
4221 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4223 EXTRACT_IFMT_LDA_DISP_CODE
4225 /* Record the fields for the semantic handler. */
4226 FLD (f_srcdst
) = f_srcdst
;
4227 FLD (f_optdisp
) = f_optdisp
;
4228 FLD (f_scale
) = f_scale
;
4229 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4230 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4231 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4232 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldt_indirect_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4234 #if WITH_PROFILE_MODEL_P
4235 /* Record the fields for profiling. */
4236 if (PROFILE_MODEL_P (current_cpu
))
4238 FLD (in_abase
) = f_abase
;
4239 FLD (in_index
) = f_index
;
4240 FLD (out_dst
) = f_srcdst
;
4241 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4242 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4249 CASE (ex
, FMT_LDQ_OFFSET
) :
4251 CGEN_INSN_INT insn
= base_insn
;
4252 #define FLD(f) abuf->fields.fmt_ldq_offset.f
4253 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4255 EXTRACT_IFMT_LDA_OFFSET_CODE
4257 /* Record the fields for the semantic handler. */
4258 FLD (f_srcdst
) = f_srcdst
;
4259 FLD (f_offset
) = f_offset
;
4260 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4261 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldq_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4263 #if WITH_PROFILE_MODEL_P
4264 /* Record the fields for profiling. */
4265 if (PROFILE_MODEL_P (current_cpu
))
4267 FLD (out_dst
) = f_srcdst
;
4268 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4269 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4270 FLD (out_h_gr_add__VM_index_of_dst_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
4277 CASE (ex
, FMT_LDQ_INDIRECT_OFFSET
) :
4279 CGEN_INSN_INT insn
= base_insn
;
4280 #define FLD(f) abuf->fields.fmt_ldq_indirect_offset.f
4281 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4283 EXTRACT_IFMT_LDA_OFFSET_CODE
4285 /* Record the fields for the semantic handler. */
4286 FLD (f_srcdst
) = f_srcdst
;
4287 FLD (f_offset
) = f_offset
;
4288 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4289 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4290 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldq_indirect_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4292 #if WITH_PROFILE_MODEL_P
4293 /* Record the fields for profiling. */
4294 if (PROFILE_MODEL_P (current_cpu
))
4296 FLD (in_abase
) = f_abase
;
4297 FLD (out_dst
) = f_srcdst
;
4298 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4299 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4300 FLD (out_h_gr_add__VM_index_of_dst_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
4307 CASE (ex
, FMT_LDQ_INDIRECT
) :
4309 CGEN_INSN_INT insn
= base_insn
;
4310 #define FLD(f) abuf->fields.fmt_ldq_indirect.f
4311 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4313 EXTRACT_IFMT_LDA_INDIRECT_CODE
4315 /* Record the fields for the semantic handler. */
4316 FLD (f_srcdst
) = f_srcdst
;
4317 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4318 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4319 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldq_indirect", "f_srcdst 0x%x", 'x', f_srcdst
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4321 #if WITH_PROFILE_MODEL_P
4322 /* Record the fields for profiling. */
4323 if (PROFILE_MODEL_P (current_cpu
))
4325 FLD (in_abase
) = f_abase
;
4326 FLD (out_dst
) = f_srcdst
;
4327 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4328 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4329 FLD (out_h_gr_add__VM_index_of_dst_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
4336 CASE (ex
, FMT_LDQ_INDIRECT_INDEX
) :
4338 CGEN_INSN_INT insn
= base_insn
;
4339 #define FLD(f) abuf->fields.fmt_ldq_indirect_index.f
4340 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4342 EXTRACT_IFMT_LDA_INDIRECT_CODE
4344 /* Record the fields for the semantic handler. */
4345 FLD (f_srcdst
) = f_srcdst
;
4346 FLD (f_scale
) = f_scale
;
4347 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4348 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4349 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4350 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldq_indirect_index", "f_srcdst 0x%x", 'x', f_srcdst
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4352 #if WITH_PROFILE_MODEL_P
4353 /* Record the fields for profiling. */
4354 if (PROFILE_MODEL_P (current_cpu
))
4356 FLD (in_abase
) = f_abase
;
4357 FLD (in_index
) = f_index
;
4358 FLD (out_dst
) = f_srcdst
;
4359 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4360 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4361 FLD (out_h_gr_add__VM_index_of_dst_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
4368 CASE (ex
, FMT_LDQ_DISP
) :
4370 CGEN_INSN_INT insn
= base_insn
;
4371 #define FLD(f) abuf->fields.fmt_ldq_disp.f
4372 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4374 EXTRACT_IFMT_LDA_DISP_CODE
4376 /* Record the fields for the semantic handler. */
4377 FLD (f_srcdst
) = f_srcdst
;
4378 FLD (f_optdisp
) = f_optdisp
;
4379 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4380 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldq_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4382 #if WITH_PROFILE_MODEL_P
4383 /* Record the fields for profiling. */
4384 if (PROFILE_MODEL_P (current_cpu
))
4386 FLD (out_dst
) = f_srcdst
;
4387 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4388 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4389 FLD (out_h_gr_add__VM_index_of_dst_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
4396 CASE (ex
, FMT_LDQ_INDIRECT_DISP
) :
4398 CGEN_INSN_INT insn
= base_insn
;
4399 #define FLD(f) abuf->fields.fmt_ldq_indirect_disp.f
4400 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4402 EXTRACT_IFMT_LDA_DISP_CODE
4404 /* Record the fields for the semantic handler. */
4405 FLD (f_srcdst
) = f_srcdst
;
4406 FLD (f_optdisp
) = f_optdisp
;
4407 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4408 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4409 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldq_indirect_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4411 #if WITH_PROFILE_MODEL_P
4412 /* Record the fields for profiling. */
4413 if (PROFILE_MODEL_P (current_cpu
))
4415 FLD (in_abase
) = f_abase
;
4416 FLD (out_dst
) = f_srcdst
;
4417 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4418 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4419 FLD (out_h_gr_add__VM_index_of_dst_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
4426 CASE (ex
, FMT_LDQ_INDEX_DISP
) :
4428 CGEN_INSN_INT insn
= base_insn
;
4429 #define FLD(f) abuf->fields.fmt_ldq_index_disp.f
4430 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4432 EXTRACT_IFMT_LDA_DISP_CODE
4434 /* Record the fields for the semantic handler. */
4435 FLD (f_srcdst
) = f_srcdst
;
4436 FLD (f_optdisp
) = f_optdisp
;
4437 FLD (f_scale
) = f_scale
;
4438 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4439 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4440 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldq_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4442 #if WITH_PROFILE_MODEL_P
4443 /* Record the fields for profiling. */
4444 if (PROFILE_MODEL_P (current_cpu
))
4446 FLD (in_index
) = f_index
;
4447 FLD (out_dst
) = f_srcdst
;
4448 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4449 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4450 FLD (out_h_gr_add__VM_index_of_dst_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
4457 CASE (ex
, FMT_LDQ_INDIRECT_INDEX_DISP
) :
4459 CGEN_INSN_INT insn
= base_insn
;
4460 #define FLD(f) abuf->fields.fmt_ldq_indirect_index_disp.f
4461 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4463 EXTRACT_IFMT_LDA_DISP_CODE
4465 /* Record the fields for the semantic handler. */
4466 FLD (f_srcdst
) = f_srcdst
;
4467 FLD (f_optdisp
) = f_optdisp
;
4468 FLD (f_scale
) = f_scale
;
4469 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4470 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4471 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4472 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ldq_indirect_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
4474 #if WITH_PROFILE_MODEL_P
4475 /* Record the fields for profiling. */
4476 if (PROFILE_MODEL_P (current_cpu
))
4478 FLD (in_abase
) = f_abase
;
4479 FLD (in_index
) = f_index
;
4480 FLD (out_dst
) = f_srcdst
;
4481 FLD (out_h_gr_add__VM_index_of_dst_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
4482 FLD (out_h_gr_add__VM_index_of_dst_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
4483 FLD (out_h_gr_add__VM_index_of_dst_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
4490 CASE (ex
, FMT_ST_OFFSET
) :
4492 CGEN_INSN_INT insn
= base_insn
;
4493 #define FLD(f) abuf->fields.fmt_st_offset.f
4494 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4496 EXTRACT_IFMT_ST_OFFSET_CODE
4498 /* Record the fields for the semantic handler. */
4499 FLD (f_offset
) = f_offset
;
4500 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4501 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_st_offset", "f_offset 0x%x", 'x', f_offset
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4503 #if WITH_PROFILE_MODEL_P
4504 /* Record the fields for profiling. */
4505 if (PROFILE_MODEL_P (current_cpu
))
4507 FLD (in_st_src
) = f_srcdst
;
4514 CASE (ex
, FMT_ST_INDIRECT_OFFSET
) :
4516 CGEN_INSN_INT insn
= base_insn
;
4517 #define FLD(f) abuf->fields.fmt_st_indirect_offset.f
4518 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4520 EXTRACT_IFMT_ST_OFFSET_CODE
4522 /* Record the fields for the semantic handler. */
4523 FLD (f_offset
) = f_offset
;
4524 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4525 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4526 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_st_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4528 #if WITH_PROFILE_MODEL_P
4529 /* Record the fields for profiling. */
4530 if (PROFILE_MODEL_P (current_cpu
))
4532 FLD (in_abase
) = f_abase
;
4533 FLD (in_st_src
) = f_srcdst
;
4540 CASE (ex
, FMT_ST_INDIRECT
) :
4542 CGEN_INSN_INT insn
= base_insn
;
4543 #define FLD(f) abuf->fields.fmt_st_indirect.f
4544 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4546 EXTRACT_IFMT_ST_INDIRECT_CODE
4548 /* Record the fields for the semantic handler. */
4549 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4550 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4551 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_st_indirect", "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4553 #if WITH_PROFILE_MODEL_P
4554 /* Record the fields for profiling. */
4555 if (PROFILE_MODEL_P (current_cpu
))
4557 FLD (in_abase
) = f_abase
;
4558 FLD (in_st_src
) = f_srcdst
;
4565 CASE (ex
, FMT_ST_INDIRECT_INDEX
) :
4567 CGEN_INSN_INT insn
= base_insn
;
4568 #define FLD(f) abuf->fields.fmt_st_indirect_index.f
4569 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4571 EXTRACT_IFMT_ST_INDIRECT_CODE
4573 /* Record the fields for the semantic handler. */
4574 FLD (f_scale
) = f_scale
;
4575 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4576 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4577 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4578 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_st_indirect_index", "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4580 #if WITH_PROFILE_MODEL_P
4581 /* Record the fields for profiling. */
4582 if (PROFILE_MODEL_P (current_cpu
))
4584 FLD (in_abase
) = f_abase
;
4585 FLD (in_index
) = f_index
;
4586 FLD (in_st_src
) = f_srcdst
;
4593 CASE (ex
, FMT_ST_DISP
) :
4595 CGEN_INSN_INT insn
= base_insn
;
4596 #define FLD(f) abuf->fields.fmt_st_disp.f
4597 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4599 EXTRACT_IFMT_ST_DISP_CODE
4601 /* Record the fields for the semantic handler. */
4602 FLD (f_optdisp
) = f_optdisp
;
4603 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4604 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_st_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4606 #if WITH_PROFILE_MODEL_P
4607 /* Record the fields for profiling. */
4608 if (PROFILE_MODEL_P (current_cpu
))
4610 FLD (in_st_src
) = f_srcdst
;
4617 CASE (ex
, FMT_ST_INDIRECT_DISP
) :
4619 CGEN_INSN_INT insn
= base_insn
;
4620 #define FLD(f) abuf->fields.fmt_st_indirect_disp.f
4621 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4623 EXTRACT_IFMT_ST_DISP_CODE
4625 /* Record the fields for the semantic handler. */
4626 FLD (f_optdisp
) = f_optdisp
;
4627 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4628 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4629 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_st_indirect_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4631 #if WITH_PROFILE_MODEL_P
4632 /* Record the fields for profiling. */
4633 if (PROFILE_MODEL_P (current_cpu
))
4635 FLD (in_abase
) = f_abase
;
4636 FLD (in_st_src
) = f_srcdst
;
4643 CASE (ex
, FMT_ST_INDEX_DISP
) :
4645 CGEN_INSN_INT insn
= base_insn
;
4646 #define FLD(f) abuf->fields.fmt_st_index_disp.f
4647 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4649 EXTRACT_IFMT_ST_DISP_CODE
4651 /* Record the fields for the semantic handler. */
4652 FLD (f_optdisp
) = f_optdisp
;
4653 FLD (f_scale
) = f_scale
;
4654 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4655 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4656 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_st_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4658 #if WITH_PROFILE_MODEL_P
4659 /* Record the fields for profiling. */
4660 if (PROFILE_MODEL_P (current_cpu
))
4662 FLD (in_index
) = f_index
;
4663 FLD (in_st_src
) = f_srcdst
;
4670 CASE (ex
, FMT_ST_INDIRECT_INDEX_DISP
) :
4672 CGEN_INSN_INT insn
= base_insn
;
4673 #define FLD(f) abuf->fields.fmt_st_indirect_index_disp.f
4674 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4676 EXTRACT_IFMT_ST_DISP_CODE
4678 /* Record the fields for the semantic handler. */
4679 FLD (f_optdisp
) = f_optdisp
;
4680 FLD (f_scale
) = f_scale
;
4681 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4682 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4683 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4684 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_st_indirect_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4686 #if WITH_PROFILE_MODEL_P
4687 /* Record the fields for profiling. */
4688 if (PROFILE_MODEL_P (current_cpu
))
4690 FLD (in_abase
) = f_abase
;
4691 FLD (in_index
) = f_index
;
4692 FLD (in_st_src
) = f_srcdst
;
4699 CASE (ex
, FMT_STOB_OFFSET
) :
4701 CGEN_INSN_INT insn
= base_insn
;
4702 #define FLD(f) abuf->fields.fmt_stob_offset.f
4703 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4705 EXTRACT_IFMT_ST_OFFSET_CODE
4707 /* Record the fields for the semantic handler. */
4708 FLD (f_offset
) = f_offset
;
4709 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4710 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stob_offset", "f_offset 0x%x", 'x', f_offset
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4712 #if WITH_PROFILE_MODEL_P
4713 /* Record the fields for profiling. */
4714 if (PROFILE_MODEL_P (current_cpu
))
4716 FLD (in_st_src
) = f_srcdst
;
4723 CASE (ex
, FMT_STOB_INDIRECT_OFFSET
) :
4725 CGEN_INSN_INT insn
= base_insn
;
4726 #define FLD(f) abuf->fields.fmt_stob_indirect_offset.f
4727 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4729 EXTRACT_IFMT_ST_OFFSET_CODE
4731 /* Record the fields for the semantic handler. */
4732 FLD (f_offset
) = f_offset
;
4733 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4734 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4735 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stob_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4737 #if WITH_PROFILE_MODEL_P
4738 /* Record the fields for profiling. */
4739 if (PROFILE_MODEL_P (current_cpu
))
4741 FLD (in_abase
) = f_abase
;
4742 FLD (in_st_src
) = f_srcdst
;
4749 CASE (ex
, FMT_STOB_INDIRECT
) :
4751 CGEN_INSN_INT insn
= base_insn
;
4752 #define FLD(f) abuf->fields.fmt_stob_indirect.f
4753 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4755 EXTRACT_IFMT_ST_INDIRECT_CODE
4757 /* Record the fields for the semantic handler. */
4758 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4759 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4760 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stob_indirect", "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4762 #if WITH_PROFILE_MODEL_P
4763 /* Record the fields for profiling. */
4764 if (PROFILE_MODEL_P (current_cpu
))
4766 FLD (in_abase
) = f_abase
;
4767 FLD (in_st_src
) = f_srcdst
;
4774 CASE (ex
, FMT_STOB_INDIRECT_INDEX
) :
4776 CGEN_INSN_INT insn
= base_insn
;
4777 #define FLD(f) abuf->fields.fmt_stob_indirect_index.f
4778 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4780 EXTRACT_IFMT_ST_INDIRECT_CODE
4782 /* Record the fields for the semantic handler. */
4783 FLD (f_scale
) = f_scale
;
4784 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4785 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4786 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4787 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stob_indirect_index", "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4789 #if WITH_PROFILE_MODEL_P
4790 /* Record the fields for profiling. */
4791 if (PROFILE_MODEL_P (current_cpu
))
4793 FLD (in_abase
) = f_abase
;
4794 FLD (in_index
) = f_index
;
4795 FLD (in_st_src
) = f_srcdst
;
4802 CASE (ex
, FMT_STOB_DISP
) :
4804 CGEN_INSN_INT insn
= base_insn
;
4805 #define FLD(f) abuf->fields.fmt_stob_disp.f
4806 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4808 EXTRACT_IFMT_ST_DISP_CODE
4810 /* Record the fields for the semantic handler. */
4811 FLD (f_optdisp
) = f_optdisp
;
4812 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4813 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stob_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4815 #if WITH_PROFILE_MODEL_P
4816 /* Record the fields for profiling. */
4817 if (PROFILE_MODEL_P (current_cpu
))
4819 FLD (in_st_src
) = f_srcdst
;
4826 CASE (ex
, FMT_STOB_INDIRECT_DISP
) :
4828 CGEN_INSN_INT insn
= base_insn
;
4829 #define FLD(f) abuf->fields.fmt_stob_indirect_disp.f
4830 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4832 EXTRACT_IFMT_ST_DISP_CODE
4834 /* Record the fields for the semantic handler. */
4835 FLD (f_optdisp
) = f_optdisp
;
4836 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4837 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4838 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stob_indirect_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4840 #if WITH_PROFILE_MODEL_P
4841 /* Record the fields for profiling. */
4842 if (PROFILE_MODEL_P (current_cpu
))
4844 FLD (in_abase
) = f_abase
;
4845 FLD (in_st_src
) = f_srcdst
;
4852 CASE (ex
, FMT_STOB_INDEX_DISP
) :
4854 CGEN_INSN_INT insn
= base_insn
;
4855 #define FLD(f) abuf->fields.fmt_stob_index_disp.f
4856 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4858 EXTRACT_IFMT_ST_DISP_CODE
4860 /* Record the fields for the semantic handler. */
4861 FLD (f_optdisp
) = f_optdisp
;
4862 FLD (f_scale
) = f_scale
;
4863 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4864 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4865 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stob_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4867 #if WITH_PROFILE_MODEL_P
4868 /* Record the fields for profiling. */
4869 if (PROFILE_MODEL_P (current_cpu
))
4871 FLD (in_index
) = f_index
;
4872 FLD (in_st_src
) = f_srcdst
;
4879 CASE (ex
, FMT_STOB_INDIRECT_INDEX_DISP
) :
4881 CGEN_INSN_INT insn
= base_insn
;
4882 #define FLD(f) abuf->fields.fmt_stob_indirect_index_disp.f
4883 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4885 EXTRACT_IFMT_ST_DISP_CODE
4887 /* Record the fields for the semantic handler. */
4888 FLD (f_optdisp
) = f_optdisp
;
4889 FLD (f_scale
) = f_scale
;
4890 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4891 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4892 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4893 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stob_indirect_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4895 #if WITH_PROFILE_MODEL_P
4896 /* Record the fields for profiling. */
4897 if (PROFILE_MODEL_P (current_cpu
))
4899 FLD (in_abase
) = f_abase
;
4900 FLD (in_index
) = f_index
;
4901 FLD (in_st_src
) = f_srcdst
;
4908 CASE (ex
, FMT_STOS_OFFSET
) :
4910 CGEN_INSN_INT insn
= base_insn
;
4911 #define FLD(f) abuf->fields.fmt_stos_offset.f
4912 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4914 EXTRACT_IFMT_ST_OFFSET_CODE
4916 /* Record the fields for the semantic handler. */
4917 FLD (f_offset
) = f_offset
;
4918 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4919 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stos_offset", "f_offset 0x%x", 'x', f_offset
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4921 #if WITH_PROFILE_MODEL_P
4922 /* Record the fields for profiling. */
4923 if (PROFILE_MODEL_P (current_cpu
))
4925 FLD (in_st_src
) = f_srcdst
;
4932 CASE (ex
, FMT_STOS_INDIRECT_OFFSET
) :
4934 CGEN_INSN_INT insn
= base_insn
;
4935 #define FLD(f) abuf->fields.fmt_stos_indirect_offset.f
4936 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4938 EXTRACT_IFMT_ST_OFFSET_CODE
4940 /* Record the fields for the semantic handler. */
4941 FLD (f_offset
) = f_offset
;
4942 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4943 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4944 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stos_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4946 #if WITH_PROFILE_MODEL_P
4947 /* Record the fields for profiling. */
4948 if (PROFILE_MODEL_P (current_cpu
))
4950 FLD (in_abase
) = f_abase
;
4951 FLD (in_st_src
) = f_srcdst
;
4958 CASE (ex
, FMT_STOS_INDIRECT
) :
4960 CGEN_INSN_INT insn
= base_insn
;
4961 #define FLD(f) abuf->fields.fmt_stos_indirect.f
4962 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4964 EXTRACT_IFMT_ST_INDIRECT_CODE
4966 /* Record the fields for the semantic handler. */
4967 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4968 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4969 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stos_indirect", "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4971 #if WITH_PROFILE_MODEL_P
4972 /* Record the fields for profiling. */
4973 if (PROFILE_MODEL_P (current_cpu
))
4975 FLD (in_abase
) = f_abase
;
4976 FLD (in_st_src
) = f_srcdst
;
4983 CASE (ex
, FMT_STOS_INDIRECT_INDEX
) :
4985 CGEN_INSN_INT insn
= base_insn
;
4986 #define FLD(f) abuf->fields.fmt_stos_indirect_index.f
4987 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4989 EXTRACT_IFMT_ST_INDIRECT_CODE
4991 /* Record the fields for the semantic handler. */
4992 FLD (f_scale
) = f_scale
;
4993 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4994 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4995 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4996 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stos_indirect_index", "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
4998 #if WITH_PROFILE_MODEL_P
4999 /* Record the fields for profiling. */
5000 if (PROFILE_MODEL_P (current_cpu
))
5002 FLD (in_abase
) = f_abase
;
5003 FLD (in_index
) = f_index
;
5004 FLD (in_st_src
) = f_srcdst
;
5011 CASE (ex
, FMT_STOS_DISP
) :
5013 CGEN_INSN_INT insn
= base_insn
;
5014 #define FLD(f) abuf->fields.fmt_stos_disp.f
5015 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5017 EXTRACT_IFMT_ST_DISP_CODE
5019 /* Record the fields for the semantic handler. */
5020 FLD (f_optdisp
) = f_optdisp
;
5021 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5022 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stos_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5024 #if WITH_PROFILE_MODEL_P
5025 /* Record the fields for profiling. */
5026 if (PROFILE_MODEL_P (current_cpu
))
5028 FLD (in_st_src
) = f_srcdst
;
5035 CASE (ex
, FMT_STOS_INDIRECT_DISP
) :
5037 CGEN_INSN_INT insn
= base_insn
;
5038 #define FLD(f) abuf->fields.fmt_stos_indirect_disp.f
5039 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5041 EXTRACT_IFMT_ST_DISP_CODE
5043 /* Record the fields for the semantic handler. */
5044 FLD (f_optdisp
) = f_optdisp
;
5045 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5046 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5047 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stos_indirect_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5049 #if WITH_PROFILE_MODEL_P
5050 /* Record the fields for profiling. */
5051 if (PROFILE_MODEL_P (current_cpu
))
5053 FLD (in_abase
) = f_abase
;
5054 FLD (in_st_src
) = f_srcdst
;
5061 CASE (ex
, FMT_STOS_INDEX_DISP
) :
5063 CGEN_INSN_INT insn
= base_insn
;
5064 #define FLD(f) abuf->fields.fmt_stos_index_disp.f
5065 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5067 EXTRACT_IFMT_ST_DISP_CODE
5069 /* Record the fields for the semantic handler. */
5070 FLD (f_optdisp
) = f_optdisp
;
5071 FLD (f_scale
) = f_scale
;
5072 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5073 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5074 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stos_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5076 #if WITH_PROFILE_MODEL_P
5077 /* Record the fields for profiling. */
5078 if (PROFILE_MODEL_P (current_cpu
))
5080 FLD (in_index
) = f_index
;
5081 FLD (in_st_src
) = f_srcdst
;
5088 CASE (ex
, FMT_STOS_INDIRECT_INDEX_DISP
) :
5090 CGEN_INSN_INT insn
= base_insn
;
5091 #define FLD(f) abuf->fields.fmt_stos_indirect_index_disp.f
5092 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5094 EXTRACT_IFMT_ST_DISP_CODE
5096 /* Record the fields for the semantic handler. */
5097 FLD (f_optdisp
) = f_optdisp
;
5098 FLD (f_scale
) = f_scale
;
5099 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5100 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5101 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5102 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stos_indirect_index_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5104 #if WITH_PROFILE_MODEL_P
5105 /* Record the fields for profiling. */
5106 if (PROFILE_MODEL_P (current_cpu
))
5108 FLD (in_abase
) = f_abase
;
5109 FLD (in_index
) = f_index
;
5110 FLD (in_st_src
) = f_srcdst
;
5117 CASE (ex
, FMT_STL_OFFSET
) :
5119 CGEN_INSN_INT insn
= base_insn
;
5120 #define FLD(f) abuf->fields.fmt_stl_offset.f
5121 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
5123 EXTRACT_IFMT_ST_OFFSET_CODE
5125 /* Record the fields for the semantic handler. */
5126 FLD (f_srcdst
) = f_srcdst
;
5127 FLD (f_offset
) = f_offset
;
5128 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5129 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stl_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5131 #if WITH_PROFILE_MODEL_P
5132 /* Record the fields for profiling. */
5133 if (PROFILE_MODEL_P (current_cpu
))
5135 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5136 FLD (in_st_src
) = f_srcdst
;
5143 CASE (ex
, FMT_STL_INDIRECT_OFFSET
) :
5145 CGEN_INSN_INT insn
= base_insn
;
5146 #define FLD(f) abuf->fields.fmt_stl_indirect_offset.f
5147 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
5149 EXTRACT_IFMT_ST_OFFSET_CODE
5151 /* Record the fields for the semantic handler. */
5152 FLD (f_srcdst
) = f_srcdst
;
5153 FLD (f_offset
) = f_offset
;
5154 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5155 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5156 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stl_indirect_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5158 #if WITH_PROFILE_MODEL_P
5159 /* Record the fields for profiling. */
5160 if (PROFILE_MODEL_P (current_cpu
))
5162 FLD (in_abase
) = f_abase
;
5163 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5164 FLD (in_st_src
) = f_srcdst
;
5171 CASE (ex
, FMT_STL_INDIRECT
) :
5173 CGEN_INSN_INT insn
= base_insn
;
5174 #define FLD(f) abuf->fields.fmt_stl_indirect.f
5175 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5177 EXTRACT_IFMT_ST_INDIRECT_CODE
5179 /* Record the fields for the semantic handler. */
5180 FLD (f_srcdst
) = f_srcdst
;
5181 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5182 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5183 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stl_indirect", "f_srcdst 0x%x", 'x', f_srcdst
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5185 #if WITH_PROFILE_MODEL_P
5186 /* Record the fields for profiling. */
5187 if (PROFILE_MODEL_P (current_cpu
))
5189 FLD (in_abase
) = f_abase
;
5190 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5191 FLD (in_st_src
) = f_srcdst
;
5198 CASE (ex
, FMT_STL_INDIRECT_INDEX
) :
5200 CGEN_INSN_INT insn
= base_insn
;
5201 #define FLD(f) abuf->fields.fmt_stl_indirect_index.f
5202 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5204 EXTRACT_IFMT_ST_INDIRECT_CODE
5206 /* Record the fields for the semantic handler. */
5207 FLD (f_srcdst
) = f_srcdst
;
5208 FLD (f_scale
) = f_scale
;
5209 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5210 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5211 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5212 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stl_indirect_index", "f_srcdst 0x%x", 'x', f_srcdst
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5214 #if WITH_PROFILE_MODEL_P
5215 /* Record the fields for profiling. */
5216 if (PROFILE_MODEL_P (current_cpu
))
5218 FLD (in_abase
) = f_abase
;
5219 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5220 FLD (in_index
) = f_index
;
5221 FLD (in_st_src
) = f_srcdst
;
5228 CASE (ex
, FMT_STL_DISP
) :
5230 CGEN_INSN_INT insn
= base_insn
;
5231 #define FLD(f) abuf->fields.fmt_stl_disp.f
5232 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5234 EXTRACT_IFMT_ST_DISP_CODE
5236 /* Record the fields for the semantic handler. */
5237 FLD (f_srcdst
) = f_srcdst
;
5238 FLD (f_optdisp
) = f_optdisp
;
5239 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5240 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stl_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5242 #if WITH_PROFILE_MODEL_P
5243 /* Record the fields for profiling. */
5244 if (PROFILE_MODEL_P (current_cpu
))
5246 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5247 FLD (in_st_src
) = f_srcdst
;
5254 CASE (ex
, FMT_STL_INDIRECT_DISP
) :
5256 CGEN_INSN_INT insn
= base_insn
;
5257 #define FLD(f) abuf->fields.fmt_stl_indirect_disp.f
5258 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5260 EXTRACT_IFMT_ST_DISP_CODE
5262 /* Record the fields for the semantic handler. */
5263 FLD (f_srcdst
) = f_srcdst
;
5264 FLD (f_optdisp
) = f_optdisp
;
5265 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5266 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5267 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stl_indirect_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5269 #if WITH_PROFILE_MODEL_P
5270 /* Record the fields for profiling. */
5271 if (PROFILE_MODEL_P (current_cpu
))
5273 FLD (in_abase
) = f_abase
;
5274 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5275 FLD (in_st_src
) = f_srcdst
;
5282 CASE (ex
, FMT_STL_INDEX_DISP
) :
5284 CGEN_INSN_INT insn
= base_insn
;
5285 #define FLD(f) abuf->fields.fmt_stl_index_disp.f
5286 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5288 EXTRACT_IFMT_ST_DISP_CODE
5290 /* Record the fields for the semantic handler. */
5291 FLD (f_srcdst
) = f_srcdst
;
5292 FLD (f_optdisp
) = f_optdisp
;
5293 FLD (f_scale
) = f_scale
;
5294 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5295 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5296 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stl_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5298 #if WITH_PROFILE_MODEL_P
5299 /* Record the fields for profiling. */
5300 if (PROFILE_MODEL_P (current_cpu
))
5302 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5303 FLD (in_index
) = f_index
;
5304 FLD (in_st_src
) = f_srcdst
;
5311 CASE (ex
, FMT_STL_INDIRECT_INDEX_DISP
) :
5313 CGEN_INSN_INT insn
= base_insn
;
5314 #define FLD(f) abuf->fields.fmt_stl_indirect_index_disp.f
5315 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5317 EXTRACT_IFMT_ST_DISP_CODE
5319 /* Record the fields for the semantic handler. */
5320 FLD (f_srcdst
) = f_srcdst
;
5321 FLD (f_optdisp
) = f_optdisp
;
5322 FLD (f_scale
) = f_scale
;
5323 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5324 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5325 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5326 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stl_indirect_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5328 #if WITH_PROFILE_MODEL_P
5329 /* Record the fields for profiling. */
5330 if (PROFILE_MODEL_P (current_cpu
))
5332 FLD (in_abase
) = f_abase
;
5333 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5334 FLD (in_index
) = f_index
;
5335 FLD (in_st_src
) = f_srcdst
;
5342 CASE (ex
, FMT_STT_OFFSET
) :
5344 CGEN_INSN_INT insn
= base_insn
;
5345 #define FLD(f) abuf->fields.fmt_stt_offset.f
5346 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
5348 EXTRACT_IFMT_ST_OFFSET_CODE
5350 /* Record the fields for the semantic handler. */
5351 FLD (f_srcdst
) = f_srcdst
;
5352 FLD (f_offset
) = f_offset
;
5353 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5354 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stt_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5356 #if WITH_PROFILE_MODEL_P
5357 /* Record the fields for profiling. */
5358 if (PROFILE_MODEL_P (current_cpu
))
5360 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5361 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5362 FLD (in_st_src
) = f_srcdst
;
5369 CASE (ex
, FMT_STT_INDIRECT_OFFSET
) :
5371 CGEN_INSN_INT insn
= base_insn
;
5372 #define FLD(f) abuf->fields.fmt_stt_indirect_offset.f
5373 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
5375 EXTRACT_IFMT_ST_OFFSET_CODE
5377 /* Record the fields for the semantic handler. */
5378 FLD (f_srcdst
) = f_srcdst
;
5379 FLD (f_offset
) = f_offset
;
5380 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5381 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5382 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stt_indirect_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5384 #if WITH_PROFILE_MODEL_P
5385 /* Record the fields for profiling. */
5386 if (PROFILE_MODEL_P (current_cpu
))
5388 FLD (in_abase
) = f_abase
;
5389 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5390 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5391 FLD (in_st_src
) = f_srcdst
;
5398 CASE (ex
, FMT_STT_INDIRECT
) :
5400 CGEN_INSN_INT insn
= base_insn
;
5401 #define FLD(f) abuf->fields.fmt_stt_indirect.f
5402 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5404 EXTRACT_IFMT_ST_INDIRECT_CODE
5406 /* Record the fields for the semantic handler. */
5407 FLD (f_srcdst
) = f_srcdst
;
5408 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5409 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5410 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stt_indirect", "f_srcdst 0x%x", 'x', f_srcdst
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5412 #if WITH_PROFILE_MODEL_P
5413 /* Record the fields for profiling. */
5414 if (PROFILE_MODEL_P (current_cpu
))
5416 FLD (in_abase
) = f_abase
;
5417 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5418 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5419 FLD (in_st_src
) = f_srcdst
;
5426 CASE (ex
, FMT_STT_INDIRECT_INDEX
) :
5428 CGEN_INSN_INT insn
= base_insn
;
5429 #define FLD(f) abuf->fields.fmt_stt_indirect_index.f
5430 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5432 EXTRACT_IFMT_ST_INDIRECT_CODE
5434 /* Record the fields for the semantic handler. */
5435 FLD (f_srcdst
) = f_srcdst
;
5436 FLD (f_scale
) = f_scale
;
5437 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5438 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5439 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5440 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stt_indirect_index", "f_srcdst 0x%x", 'x', f_srcdst
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5442 #if WITH_PROFILE_MODEL_P
5443 /* Record the fields for profiling. */
5444 if (PROFILE_MODEL_P (current_cpu
))
5446 FLD (in_abase
) = f_abase
;
5447 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5448 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5449 FLD (in_index
) = f_index
;
5450 FLD (in_st_src
) = f_srcdst
;
5457 CASE (ex
, FMT_STT_DISP
) :
5459 CGEN_INSN_INT insn
= base_insn
;
5460 #define FLD(f) abuf->fields.fmt_stt_disp.f
5461 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5463 EXTRACT_IFMT_ST_DISP_CODE
5465 /* Record the fields for the semantic handler. */
5466 FLD (f_srcdst
) = f_srcdst
;
5467 FLD (f_optdisp
) = f_optdisp
;
5468 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5469 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stt_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5471 #if WITH_PROFILE_MODEL_P
5472 /* Record the fields for profiling. */
5473 if (PROFILE_MODEL_P (current_cpu
))
5475 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5476 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5477 FLD (in_st_src
) = f_srcdst
;
5484 CASE (ex
, FMT_STT_INDIRECT_DISP
) :
5486 CGEN_INSN_INT insn
= base_insn
;
5487 #define FLD(f) abuf->fields.fmt_stt_indirect_disp.f
5488 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5490 EXTRACT_IFMT_ST_DISP_CODE
5492 /* Record the fields for the semantic handler. */
5493 FLD (f_srcdst
) = f_srcdst
;
5494 FLD (f_optdisp
) = f_optdisp
;
5495 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5496 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5497 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stt_indirect_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5499 #if WITH_PROFILE_MODEL_P
5500 /* Record the fields for profiling. */
5501 if (PROFILE_MODEL_P (current_cpu
))
5503 FLD (in_abase
) = f_abase
;
5504 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5505 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5506 FLD (in_st_src
) = f_srcdst
;
5513 CASE (ex
, FMT_STT_INDEX_DISP
) :
5515 CGEN_INSN_INT insn
= base_insn
;
5516 #define FLD(f) abuf->fields.fmt_stt_index_disp.f
5517 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5519 EXTRACT_IFMT_ST_DISP_CODE
5521 /* Record the fields for the semantic handler. */
5522 FLD (f_srcdst
) = f_srcdst
;
5523 FLD (f_optdisp
) = f_optdisp
;
5524 FLD (f_scale
) = f_scale
;
5525 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5526 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5527 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stt_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5529 #if WITH_PROFILE_MODEL_P
5530 /* Record the fields for profiling. */
5531 if (PROFILE_MODEL_P (current_cpu
))
5533 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5534 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5535 FLD (in_index
) = f_index
;
5536 FLD (in_st_src
) = f_srcdst
;
5543 CASE (ex
, FMT_STT_INDIRECT_INDEX_DISP
) :
5545 CGEN_INSN_INT insn
= base_insn
;
5546 #define FLD(f) abuf->fields.fmt_stt_indirect_index_disp.f
5547 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5549 EXTRACT_IFMT_ST_DISP_CODE
5551 /* Record the fields for the semantic handler. */
5552 FLD (f_srcdst
) = f_srcdst
;
5553 FLD (f_optdisp
) = f_optdisp
;
5554 FLD (f_scale
) = f_scale
;
5555 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5556 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5557 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5558 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stt_indirect_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5560 #if WITH_PROFILE_MODEL_P
5561 /* Record the fields for profiling. */
5562 if (PROFILE_MODEL_P (current_cpu
))
5564 FLD (in_abase
) = f_abase
;
5565 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5566 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5567 FLD (in_index
) = f_index
;
5568 FLD (in_st_src
) = f_srcdst
;
5575 CASE (ex
, FMT_STQ_OFFSET
) :
5577 CGEN_INSN_INT insn
= base_insn
;
5578 #define FLD(f) abuf->fields.fmt_stq_offset.f
5579 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
5581 EXTRACT_IFMT_ST_OFFSET_CODE
5583 /* Record the fields for the semantic handler. */
5584 FLD (f_srcdst
) = f_srcdst
;
5585 FLD (f_offset
) = f_offset
;
5586 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5587 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stq_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5589 #if WITH_PROFILE_MODEL_P
5590 /* Record the fields for profiling. */
5591 if (PROFILE_MODEL_P (current_cpu
))
5593 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5594 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5595 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
5596 FLD (in_st_src
) = f_srcdst
;
5603 CASE (ex
, FMT_STQ_INDIRECT_OFFSET
) :
5605 CGEN_INSN_INT insn
= base_insn
;
5606 #define FLD(f) abuf->fields.fmt_stq_indirect_offset.f
5607 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
5609 EXTRACT_IFMT_ST_OFFSET_CODE
5611 /* Record the fields for the semantic handler. */
5612 FLD (f_srcdst
) = f_srcdst
;
5613 FLD (f_offset
) = f_offset
;
5614 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5615 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5616 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stq_indirect_offset", "f_srcdst 0x%x", 'x', f_srcdst
, "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5618 #if WITH_PROFILE_MODEL_P
5619 /* Record the fields for profiling. */
5620 if (PROFILE_MODEL_P (current_cpu
))
5622 FLD (in_abase
) = f_abase
;
5623 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5624 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5625 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
5626 FLD (in_st_src
) = f_srcdst
;
5633 CASE (ex
, FMT_STQ_INDIRECT
) :
5635 CGEN_INSN_INT insn
= base_insn
;
5636 #define FLD(f) abuf->fields.fmt_stq_indirect.f
5637 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5639 EXTRACT_IFMT_ST_INDIRECT_CODE
5641 /* Record the fields for the semantic handler. */
5642 FLD (f_srcdst
) = f_srcdst
;
5643 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5644 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5645 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stq_indirect", "f_srcdst 0x%x", 'x', f_srcdst
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5647 #if WITH_PROFILE_MODEL_P
5648 /* Record the fields for profiling. */
5649 if (PROFILE_MODEL_P (current_cpu
))
5651 FLD (in_abase
) = f_abase
;
5652 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5653 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5654 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
5655 FLD (in_st_src
) = f_srcdst
;
5662 CASE (ex
, FMT_STQ_INDIRECT_INDEX
) :
5664 CGEN_INSN_INT insn
= base_insn
;
5665 #define FLD(f) abuf->fields.fmt_stq_indirect_index.f
5666 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5668 EXTRACT_IFMT_ST_INDIRECT_CODE
5670 /* Record the fields for the semantic handler. */
5671 FLD (f_srcdst
) = f_srcdst
;
5672 FLD (f_scale
) = f_scale
;
5673 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5674 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5675 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5676 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stq_indirect_index", "f_srcdst 0x%x", 'x', f_srcdst
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5678 #if WITH_PROFILE_MODEL_P
5679 /* Record the fields for profiling. */
5680 if (PROFILE_MODEL_P (current_cpu
))
5682 FLD (in_abase
) = f_abase
;
5683 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5684 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5685 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
5686 FLD (in_index
) = f_index
;
5687 FLD (in_st_src
) = f_srcdst
;
5694 CASE (ex
, FMT_STQ_DISP
) :
5696 CGEN_INSN_INT insn
= base_insn
;
5697 #define FLD(f) abuf->fields.fmt_stq_disp.f
5698 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5700 EXTRACT_IFMT_ST_DISP_CODE
5702 /* Record the fields for the semantic handler. */
5703 FLD (f_srcdst
) = f_srcdst
;
5704 FLD (f_optdisp
) = f_optdisp
;
5705 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5706 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stq_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5708 #if WITH_PROFILE_MODEL_P
5709 /* Record the fields for profiling. */
5710 if (PROFILE_MODEL_P (current_cpu
))
5712 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5713 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5714 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
5715 FLD (in_st_src
) = f_srcdst
;
5722 CASE (ex
, FMT_STQ_INDIRECT_DISP
) :
5724 CGEN_INSN_INT insn
= base_insn
;
5725 #define FLD(f) abuf->fields.fmt_stq_indirect_disp.f
5726 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5728 EXTRACT_IFMT_ST_DISP_CODE
5730 /* Record the fields for the semantic handler. */
5731 FLD (f_srcdst
) = f_srcdst
;
5732 FLD (f_optdisp
) = f_optdisp
;
5733 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5734 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5735 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stq_indirect_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5737 #if WITH_PROFILE_MODEL_P
5738 /* Record the fields for profiling. */
5739 if (PROFILE_MODEL_P (current_cpu
))
5741 FLD (in_abase
) = f_abase
;
5742 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5743 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5744 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
5745 FLD (in_st_src
) = f_srcdst
;
5752 CASE (ex
, FMT_STQ_INDEX_DISP
) :
5754 CGEN_INSN_INT insn
= base_insn
;
5755 #define FLD(f) abuf->fields.fmt_stq_index_disp.f
5756 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5758 EXTRACT_IFMT_ST_DISP_CODE
5760 /* Record the fields for the semantic handler. */
5761 FLD (f_srcdst
) = f_srcdst
;
5762 FLD (f_optdisp
) = f_optdisp
;
5763 FLD (f_scale
) = f_scale
;
5764 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5765 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5766 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stq_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5768 #if WITH_PROFILE_MODEL_P
5769 /* Record the fields for profiling. */
5770 if (PROFILE_MODEL_P (current_cpu
))
5772 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5773 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5774 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
5775 FLD (in_index
) = f_index
;
5776 FLD (in_st_src
) = f_srcdst
;
5783 CASE (ex
, FMT_STQ_INDIRECT_INDEX_DISP
) :
5785 CGEN_INSN_INT insn
= base_insn
;
5786 #define FLD(f) abuf->fields.fmt_stq_indirect_index_disp.f
5787 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5789 EXTRACT_IFMT_ST_DISP_CODE
5791 /* Record the fields for the semantic handler. */
5792 FLD (f_srcdst
) = f_srcdst
;
5793 FLD (f_optdisp
) = f_optdisp
;
5794 FLD (f_scale
) = f_scale
;
5795 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5796 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5797 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5798 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_stq_indirect_index_disp", "f_srcdst 0x%x", 'x', f_srcdst
, "f_optdisp 0x%x", 'x', f_optdisp
, "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, "st_src 0x%x", 'x', f_srcdst
, (char *) 0));
5800 #if WITH_PROFILE_MODEL_P
5801 /* Record the fields for profiling. */
5802 if (PROFILE_MODEL_P (current_cpu
))
5804 FLD (in_abase
) = f_abase
;
5805 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_1
) = ((FLD (f_srcdst
)) + (1));
5806 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_2
) = ((FLD (f_srcdst
)) + (2));
5807 FLD (in_h_gr_add__VM_index_of_st_src_const__WI_3
) = ((FLD (f_srcdst
)) + (3));
5808 FLD (in_index
) = f_index
;
5809 FLD (in_st_src
) = f_srcdst
;
5816 CASE (ex
, FMT_CMPOBE_REG
) :
5818 CGEN_INSN_INT insn
= base_insn
;
5819 #define FLD(f) abuf->fields.cti.fields.fmt_cmpobe_reg.f
5820 EXTRACT_IFMT_CMPOBE_REG_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5822 EXTRACT_IFMT_CMPOBE_REG_CODE
5824 /* Record the fields for the semantic handler. */
5825 FLD (i_br_disp
) = f_br_disp
;
5826 FLD (i_br_src1
) = & CPU (h_gr
)[f_br_src1
];
5827 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5828 SEM_BRANCH_INIT_EXTRACT (abuf
);
5829 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpobe_reg", "br_disp 0x%x", 'x', f_br_disp
, "br_src1 0x%x", 'x', f_br_src1
, "br_src2 0x%x", 'x', f_br_src2
, (char *) 0));
5831 #if WITH_PROFILE_MODEL_P
5832 /* Record the fields for profiling. */
5833 if (PROFILE_MODEL_P (current_cpu
))
5835 FLD (in_br_src1
) = f_br_src1
;
5836 FLD (in_br_src2
) = f_br_src2
;
5843 CASE (ex
, FMT_CMPOBE_LIT
) :
5845 CGEN_INSN_INT insn
= base_insn
;
5846 #define FLD(f) abuf->fields.cti.fields.fmt_cmpobe_lit.f
5847 EXTRACT_IFMT_CMPOBE_LIT_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5849 EXTRACT_IFMT_CMPOBE_LIT_CODE
5851 /* Record the fields for the semantic handler. */
5852 FLD (f_br_src1
) = f_br_src1
;
5853 FLD (i_br_disp
) = f_br_disp
;
5854 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5855 SEM_BRANCH_INIT_EXTRACT (abuf
);
5856 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpobe_lit", "f_br_src1 0x%x", 'x', f_br_src1
, "br_disp 0x%x", 'x', f_br_disp
, "br_src2 0x%x", 'x', f_br_src2
, (char *) 0));
5858 #if WITH_PROFILE_MODEL_P
5859 /* Record the fields for profiling. */
5860 if (PROFILE_MODEL_P (current_cpu
))
5862 FLD (in_br_src2
) = f_br_src2
;
5869 CASE (ex
, FMT_CMPOBL_REG
) :
5871 CGEN_INSN_INT insn
= base_insn
;
5872 #define FLD(f) abuf->fields.cti.fields.fmt_cmpobl_reg.f
5873 EXTRACT_IFMT_CMPOBE_REG_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5875 EXTRACT_IFMT_CMPOBE_REG_CODE
5877 /* Record the fields for the semantic handler. */
5878 FLD (i_br_disp
) = f_br_disp
;
5879 FLD (i_br_src1
) = & CPU (h_gr
)[f_br_src1
];
5880 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5881 SEM_BRANCH_INIT_EXTRACT (abuf
);
5882 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpobl_reg", "br_disp 0x%x", 'x', f_br_disp
, "br_src1 0x%x", 'x', f_br_src1
, "br_src2 0x%x", 'x', f_br_src2
, (char *) 0));
5884 #if WITH_PROFILE_MODEL_P
5885 /* Record the fields for profiling. */
5886 if (PROFILE_MODEL_P (current_cpu
))
5888 FLD (in_br_src1
) = f_br_src1
;
5889 FLD (in_br_src2
) = f_br_src2
;
5896 CASE (ex
, FMT_CMPOBL_LIT
) :
5898 CGEN_INSN_INT insn
= base_insn
;
5899 #define FLD(f) abuf->fields.cti.fields.fmt_cmpobl_lit.f
5900 EXTRACT_IFMT_CMPOBE_LIT_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5902 EXTRACT_IFMT_CMPOBE_LIT_CODE
5904 /* Record the fields for the semantic handler. */
5905 FLD (f_br_src1
) = f_br_src1
;
5906 FLD (i_br_disp
) = f_br_disp
;
5907 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5908 SEM_BRANCH_INIT_EXTRACT (abuf
);
5909 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpobl_lit", "f_br_src1 0x%x", 'x', f_br_src1
, "br_disp 0x%x", 'x', f_br_disp
, "br_src2 0x%x", 'x', f_br_src2
, (char *) 0));
5911 #if WITH_PROFILE_MODEL_P
5912 /* Record the fields for profiling. */
5913 if (PROFILE_MODEL_P (current_cpu
))
5915 FLD (in_br_src2
) = f_br_src2
;
5922 CASE (ex
, FMT_BBC_REG
) :
5924 CGEN_INSN_INT insn
= base_insn
;
5925 #define FLD(f) abuf->fields.cti.fields.fmt_bbc_reg.f
5926 EXTRACT_IFMT_CMPOBE_REG_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5928 EXTRACT_IFMT_CMPOBE_REG_CODE
5930 /* Record the fields for the semantic handler. */
5931 FLD (i_br_disp
) = f_br_disp
;
5932 FLD (i_br_src1
) = & CPU (h_gr
)[f_br_src1
];
5933 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5934 SEM_BRANCH_INIT_EXTRACT (abuf
);
5935 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_bbc_reg", "br_disp 0x%x", 'x', f_br_disp
, "br_src1 0x%x", 'x', f_br_src1
, "br_src2 0x%x", 'x', f_br_src2
, (char *) 0));
5937 #if WITH_PROFILE_MODEL_P
5938 /* Record the fields for profiling. */
5939 if (PROFILE_MODEL_P (current_cpu
))
5941 FLD (in_br_src1
) = f_br_src1
;
5942 FLD (in_br_src2
) = f_br_src2
;
5949 CASE (ex
, FMT_BBC_LIT
) :
5951 CGEN_INSN_INT insn
= base_insn
;
5952 #define FLD(f) abuf->fields.cti.fields.fmt_bbc_lit.f
5953 EXTRACT_IFMT_CMPOBE_LIT_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5955 EXTRACT_IFMT_CMPOBE_LIT_CODE
5957 /* Record the fields for the semantic handler. */
5958 FLD (f_br_src1
) = f_br_src1
;
5959 FLD (i_br_disp
) = f_br_disp
;
5960 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5961 SEM_BRANCH_INIT_EXTRACT (abuf
);
5962 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_bbc_lit", "f_br_src1 0x%x", 'x', f_br_src1
, "br_disp 0x%x", 'x', f_br_disp
, "br_src2 0x%x", 'x', f_br_src2
, (char *) 0));
5964 #if WITH_PROFILE_MODEL_P
5965 /* Record the fields for profiling. */
5966 if (PROFILE_MODEL_P (current_cpu
))
5968 FLD (in_br_src2
) = f_br_src2
;
5975 CASE (ex
, FMT_CMPI
) :
5977 CGEN_INSN_INT insn
= base_insn
;
5978 #define FLD(f) abuf->fields.fmt_cmpi.f
5979 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
5981 EXTRACT_IFMT_MULO_CODE
5983 /* Record the fields for the semantic handler. */
5984 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
5985 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
5986 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpi", "src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, (char *) 0));
5988 #if WITH_PROFILE_MODEL_P
5989 /* Record the fields for profiling. */
5990 if (PROFILE_MODEL_P (current_cpu
))
5992 FLD (in_src1
) = f_src1
;
5993 FLD (in_src2
) = f_src2
;
6000 CASE (ex
, FMT_CMPI1
) :
6002 CGEN_INSN_INT insn
= base_insn
;
6003 #define FLD(f) abuf->fields.fmt_cmpi1.f
6004 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6006 EXTRACT_IFMT_MULO1_CODE
6008 /* Record the fields for the semantic handler. */
6009 FLD (f_src1
) = f_src1
;
6010 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
6011 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpi1", "f_src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, (char *) 0));
6013 #if WITH_PROFILE_MODEL_P
6014 /* Record the fields for profiling. */
6015 if (PROFILE_MODEL_P (current_cpu
))
6017 FLD (in_src2
) = f_src2
;
6024 CASE (ex
, FMT_CMPI2
) :
6026 CGEN_INSN_INT insn
= base_insn
;
6027 #define FLD(f) abuf->fields.fmt_cmpi2.f
6028 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6030 EXTRACT_IFMT_MULO2_CODE
6032 /* Record the fields for the semantic handler. */
6033 FLD (f_src2
) = f_src2
;
6034 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
6035 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpi2", "f_src2 0x%x", 'x', f_src2
, "src1 0x%x", 'x', f_src1
, (char *) 0));
6037 #if WITH_PROFILE_MODEL_P
6038 /* Record the fields for profiling. */
6039 if (PROFILE_MODEL_P (current_cpu
))
6041 FLD (in_src1
) = f_src1
;
6048 CASE (ex
, FMT_CMPI3
) :
6050 CGEN_INSN_INT insn
= base_insn
;
6051 #define FLD(f) abuf->fields.fmt_cmpi3.f
6052 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6054 EXTRACT_IFMT_MULO3_CODE
6056 /* Record the fields for the semantic handler. */
6057 FLD (f_src1
) = f_src1
;
6058 FLD (f_src2
) = f_src2
;
6059 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpi3", "f_src1 0x%x", 'x', f_src1
, "f_src2 0x%x", 'x', f_src2
, (char *) 0));
6061 #if WITH_PROFILE_MODEL_P
6062 /* Record the fields for profiling. */
6063 if (PROFILE_MODEL_P (current_cpu
))
6071 CASE (ex
, FMT_CMPO
) :
6073 CGEN_INSN_INT insn
= base_insn
;
6074 #define FLD(f) abuf->fields.fmt_cmpo.f
6075 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6077 EXTRACT_IFMT_MULO_CODE
6079 /* Record the fields for the semantic handler. */
6080 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
6081 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
6082 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpo", "src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, (char *) 0));
6084 #if WITH_PROFILE_MODEL_P
6085 /* Record the fields for profiling. */
6086 if (PROFILE_MODEL_P (current_cpu
))
6088 FLD (in_src1
) = f_src1
;
6089 FLD (in_src2
) = f_src2
;
6096 CASE (ex
, FMT_CMPO1
) :
6098 CGEN_INSN_INT insn
= base_insn
;
6099 #define FLD(f) abuf->fields.fmt_cmpo1.f
6100 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6102 EXTRACT_IFMT_MULO1_CODE
6104 /* Record the fields for the semantic handler. */
6105 FLD (f_src1
) = f_src1
;
6106 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
6107 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpo1", "f_src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, (char *) 0));
6109 #if WITH_PROFILE_MODEL_P
6110 /* Record the fields for profiling. */
6111 if (PROFILE_MODEL_P (current_cpu
))
6113 FLD (in_src2
) = f_src2
;
6120 CASE (ex
, FMT_CMPO2
) :
6122 CGEN_INSN_INT insn
= base_insn
;
6123 #define FLD(f) abuf->fields.fmt_cmpo2.f
6124 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6126 EXTRACT_IFMT_MULO2_CODE
6128 /* Record the fields for the semantic handler. */
6129 FLD (f_src2
) = f_src2
;
6130 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
6131 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpo2", "f_src2 0x%x", 'x', f_src2
, "src1 0x%x", 'x', f_src1
, (char *) 0));
6133 #if WITH_PROFILE_MODEL_P
6134 /* Record the fields for profiling. */
6135 if (PROFILE_MODEL_P (current_cpu
))
6137 FLD (in_src1
) = f_src1
;
6144 CASE (ex
, FMT_CMPO3
) :
6146 CGEN_INSN_INT insn
= base_insn
;
6147 #define FLD(f) abuf->fields.fmt_cmpo3.f
6148 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6150 EXTRACT_IFMT_MULO3_CODE
6152 /* Record the fields for the semantic handler. */
6153 FLD (f_src1
) = f_src1
;
6154 FLD (f_src2
) = f_src2
;
6155 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpo3", "f_src1 0x%x", 'x', f_src1
, "f_src2 0x%x", 'x', f_src2
, (char *) 0));
6157 #if WITH_PROFILE_MODEL_P
6158 /* Record the fields for profiling. */
6159 if (PROFILE_MODEL_P (current_cpu
))
6167 CASE (ex
, FMT_TESTNO_REG
) :
6169 CGEN_INSN_INT insn
= base_insn
;
6170 #define FLD(f) abuf->fields.fmt_testno_reg.f
6171 EXTRACT_IFMT_CMPOBE_REG_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
6173 EXTRACT_IFMT_CMPOBE_REG_CODE
6175 /* Record the fields for the semantic handler. */
6176 FLD (i_br_src1
) = & CPU (h_gr
)[f_br_src1
];
6177 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_testno_reg", "br_src1 0x%x", 'x', f_br_src1
, (char *) 0));
6179 #if WITH_PROFILE_MODEL_P
6180 /* Record the fields for profiling. */
6181 if (PROFILE_MODEL_P (current_cpu
))
6183 FLD (out_br_src1
) = f_br_src1
;
6190 CASE (ex
, FMT_BNO
) :
6192 CGEN_INSN_INT insn
= base_insn
;
6193 #define FLD(f) abuf->fields.cti.fields.fmt_bno.f
6194 EXTRACT_IFMT_BNO_VARS
/* f-opcode f-ctrl-disp f-ctrl-zero */
6196 EXTRACT_IFMT_BNO_CODE
6198 /* Record the fields for the semantic handler. */
6199 FLD (i_ctrl_disp
) = f_ctrl_disp
;
6200 SEM_BRANCH_INIT_EXTRACT (abuf
);
6201 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_bno", "ctrl_disp 0x%x", 'x', f_ctrl_disp
, (char *) 0));
6203 #if WITH_PROFILE_MODEL_P
6204 /* Record the fields for profiling. */
6205 if (PROFILE_MODEL_P (current_cpu
))
6215 CGEN_INSN_INT insn
= base_insn
;
6216 #define FLD(f) abuf->fields.cti.fields.fmt_b.f
6217 EXTRACT_IFMT_BNO_VARS
/* f-opcode f-ctrl-disp f-ctrl-zero */
6219 EXTRACT_IFMT_BNO_CODE
6221 /* Record the fields for the semantic handler. */
6222 FLD (i_ctrl_disp
) = f_ctrl_disp
;
6223 SEM_BRANCH_INIT_EXTRACT (abuf
);
6224 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_b", "ctrl_disp 0x%x", 'x', f_ctrl_disp
, (char *) 0));
6226 #if WITH_PROFILE_MODEL_P
6227 /* Record the fields for profiling. */
6228 if (PROFILE_MODEL_P (current_cpu
))
6236 CASE (ex
, FMT_BX_INDIRECT_OFFSET
) :
6238 CGEN_INSN_INT insn
= base_insn
;
6239 #define FLD(f) abuf->fields.cti.fields.fmt_bx_indirect_offset.f
6240 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
6242 EXTRACT_IFMT_LDA_OFFSET_CODE
6244 /* Record the fields for the semantic handler. */
6245 FLD (f_offset
) = f_offset
;
6246 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
6247 SEM_BRANCH_INIT_EXTRACT (abuf
);
6248 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_bx_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, (char *) 0));
6250 #if WITH_PROFILE_MODEL_P
6251 /* Record the fields for profiling. */
6252 if (PROFILE_MODEL_P (current_cpu
))
6254 FLD (in_abase
) = f_abase
;
6261 CASE (ex
, FMT_BX_INDIRECT
) :
6263 CGEN_INSN_INT insn
= base_insn
;
6264 #define FLD(f) abuf->fields.cti.fields.fmt_bx_indirect.f
6265 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6267 EXTRACT_IFMT_LDA_INDIRECT_CODE
6269 /* Record the fields for the semantic handler. */
6270 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
6271 SEM_BRANCH_INIT_EXTRACT (abuf
);
6272 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_bx_indirect", "abase 0x%x", 'x', f_abase
, (char *) 0));
6274 #if WITH_PROFILE_MODEL_P
6275 /* Record the fields for profiling. */
6276 if (PROFILE_MODEL_P (current_cpu
))
6278 FLD (in_abase
) = f_abase
;
6285 CASE (ex
, FMT_BX_INDIRECT_INDEX
) :
6287 CGEN_INSN_INT insn
= base_insn
;
6288 #define FLD(f) abuf->fields.cti.fields.fmt_bx_indirect_index.f
6289 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6291 EXTRACT_IFMT_LDA_INDIRECT_CODE
6293 /* Record the fields for the semantic handler. */
6294 FLD (f_scale
) = f_scale
;
6295 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
6296 FLD (i_index
) = & CPU (h_gr
)[f_index
];
6297 SEM_BRANCH_INIT_EXTRACT (abuf
);
6298 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_bx_indirect_index", "f_scale 0x%x", 'x', f_scale
, "abase 0x%x", 'x', f_abase
, "index 0x%x", 'x', f_index
, (char *) 0));
6300 #if WITH_PROFILE_MODEL_P
6301 /* Record the fields for profiling. */
6302 if (PROFILE_MODEL_P (current_cpu
))
6304 FLD (in_abase
) = f_abase
;
6305 FLD (in_index
) = f_index
;
6312 CASE (ex
, FMT_BX_DISP
) :
6314 CGEN_INSN_INT insn
= base_insn
;
6315 #define FLD(f) abuf->fields.cti.fields.fmt_bx_disp.f
6316 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6318 EXTRACT_IFMT_LDA_DISP_CODE
6320 /* Record the fields for the semantic handler. */
6321 FLD (f_optdisp
) = f_optdisp
;
6322 SEM_BRANCH_INIT_EXTRACT (abuf
);
6323 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_bx_disp", "f_optdisp 0x%x", 'x', f_optdisp
, (char *) 0));
6325 #if WITH_PROFILE_MODEL_P
6326 /* Record the fields for profiling. */
6327 if (PROFILE_MODEL_P (current_cpu
))
6335 CASE (ex
, FMT_BX_INDIRECT_DISP
) :
6337 CGEN_INSN_INT insn
= base_insn
;
6338 #define FLD(f) abuf->fields.cti.fields.fmt_bx_indirect_disp.f
6339 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6341 EXTRACT_IFMT_LDA_DISP_CODE
6343 /* Record the fields for the semantic handler. */
6344 FLD (f_optdisp
) = f_optdisp
;
6345 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
6346 SEM_BRANCH_INIT_EXTRACT (abuf
);
6347 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_bx_indirect_disp", "f_optdisp 0x%x", 'x', f_optdisp
, "abase 0x%x", 'x', f_abase
, (char *) 0));
6349 #if WITH_PROFILE_MODEL_P
6350 /* Record the fields for profiling. */
6351 if (PROFILE_MODEL_P (current_cpu
))
6353 FLD (in_abase
) = f_abase
;
6360 CASE (ex
, FMT_CALLX_DISP
) :
6362 CGEN_INSN_INT insn
= base_insn
;
6363 #define FLD(f) abuf->fields.cti.fields.fmt_callx_disp.f
6364 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6366 EXTRACT_IFMT_LDA_DISP_CODE
6368 /* Record the fields for the semantic handler. */
6369 FLD (f_optdisp
) = f_optdisp
;
6370 SEM_BRANCH_INIT_EXTRACT (abuf
);
6371 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_callx_disp", "f_optdisp 0x%x", 'x', f_optdisp
, (char *) 0));
6373 #if WITH_PROFILE_MODEL_P
6374 /* Record the fields for profiling. */
6375 if (PROFILE_MODEL_P (current_cpu
))
6377 FLD (in_h_gr_0
) = 0;
6378 FLD (in_h_gr_1
) = 1;
6379 FLD (in_h_gr_10
) = 10;
6380 FLD (in_h_gr_11
) = 11;
6381 FLD (in_h_gr_12
) = 12;
6382 FLD (in_h_gr_13
) = 13;
6383 FLD (in_h_gr_14
) = 14;
6384 FLD (in_h_gr_15
) = 15;
6385 FLD (in_h_gr_2
) = 2;
6386 FLD (in_h_gr_3
) = 3;
6387 FLD (in_h_gr_31
) = 31;
6388 FLD (in_h_gr_4
) = 4;
6389 FLD (in_h_gr_5
) = 5;
6390 FLD (in_h_gr_6
) = 6;
6391 FLD (in_h_gr_7
) = 7;
6392 FLD (in_h_gr_8
) = 8;
6393 FLD (in_h_gr_9
) = 9;
6394 FLD (out_h_gr_0
) = 0;
6395 FLD (out_h_gr_1
) = 1;
6396 FLD (out_h_gr_10
) = 10;
6397 FLD (out_h_gr_11
) = 11;
6398 FLD (out_h_gr_12
) = 12;
6399 FLD (out_h_gr_13
) = 13;
6400 FLD (out_h_gr_14
) = 14;
6401 FLD (out_h_gr_15
) = 15;
6402 FLD (out_h_gr_2
) = 2;
6403 FLD (out_h_gr_3
) = 3;
6404 FLD (out_h_gr_31
) = 31;
6405 FLD (out_h_gr_4
) = 4;
6406 FLD (out_h_gr_5
) = 5;
6407 FLD (out_h_gr_6
) = 6;
6408 FLD (out_h_gr_7
) = 7;
6409 FLD (out_h_gr_8
) = 8;
6410 FLD (out_h_gr_9
) = 9;
6417 CASE (ex
, FMT_CALLX_INDIRECT
) :
6419 CGEN_INSN_INT insn
= base_insn
;
6420 #define FLD(f) abuf->fields.cti.fields.fmt_callx_indirect.f
6421 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6423 EXTRACT_IFMT_LDA_INDIRECT_CODE
6425 /* Record the fields for the semantic handler. */
6426 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
6427 SEM_BRANCH_INIT_EXTRACT (abuf
);
6428 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_callx_indirect", "abase 0x%x", 'x', f_abase
, (char *) 0));
6430 #if WITH_PROFILE_MODEL_P
6431 /* Record the fields for profiling. */
6432 if (PROFILE_MODEL_P (current_cpu
))
6434 FLD (in_abase
) = f_abase
;
6435 FLD (in_h_gr_0
) = 0;
6436 FLD (in_h_gr_1
) = 1;
6437 FLD (in_h_gr_10
) = 10;
6438 FLD (in_h_gr_11
) = 11;
6439 FLD (in_h_gr_12
) = 12;
6440 FLD (in_h_gr_13
) = 13;
6441 FLD (in_h_gr_14
) = 14;
6442 FLD (in_h_gr_15
) = 15;
6443 FLD (in_h_gr_2
) = 2;
6444 FLD (in_h_gr_3
) = 3;
6445 FLD (in_h_gr_31
) = 31;
6446 FLD (in_h_gr_4
) = 4;
6447 FLD (in_h_gr_5
) = 5;
6448 FLD (in_h_gr_6
) = 6;
6449 FLD (in_h_gr_7
) = 7;
6450 FLD (in_h_gr_8
) = 8;
6451 FLD (in_h_gr_9
) = 9;
6452 FLD (out_h_gr_0
) = 0;
6453 FLD (out_h_gr_1
) = 1;
6454 FLD (out_h_gr_10
) = 10;
6455 FLD (out_h_gr_11
) = 11;
6456 FLD (out_h_gr_12
) = 12;
6457 FLD (out_h_gr_13
) = 13;
6458 FLD (out_h_gr_14
) = 14;
6459 FLD (out_h_gr_15
) = 15;
6460 FLD (out_h_gr_2
) = 2;
6461 FLD (out_h_gr_3
) = 3;
6462 FLD (out_h_gr_31
) = 31;
6463 FLD (out_h_gr_4
) = 4;
6464 FLD (out_h_gr_5
) = 5;
6465 FLD (out_h_gr_6
) = 6;
6466 FLD (out_h_gr_7
) = 7;
6467 FLD (out_h_gr_8
) = 8;
6468 FLD (out_h_gr_9
) = 9;
6475 CASE (ex
, FMT_CALLX_INDIRECT_OFFSET
) :
6477 CGEN_INSN_INT insn
= base_insn
;
6478 #define FLD(f) abuf->fields.cti.fields.fmt_callx_indirect_offset.f
6479 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
6481 EXTRACT_IFMT_LDA_OFFSET_CODE
6483 /* Record the fields for the semantic handler. */
6484 FLD (f_offset
) = f_offset
;
6485 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
6486 SEM_BRANCH_INIT_EXTRACT (abuf
);
6487 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_callx_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "abase 0x%x", 'x', f_abase
, (char *) 0));
6489 #if WITH_PROFILE_MODEL_P
6490 /* Record the fields for profiling. */
6491 if (PROFILE_MODEL_P (current_cpu
))
6493 FLD (in_abase
) = f_abase
;
6494 FLD (in_h_gr_0
) = 0;
6495 FLD (in_h_gr_1
) = 1;
6496 FLD (in_h_gr_10
) = 10;
6497 FLD (in_h_gr_11
) = 11;
6498 FLD (in_h_gr_12
) = 12;
6499 FLD (in_h_gr_13
) = 13;
6500 FLD (in_h_gr_14
) = 14;
6501 FLD (in_h_gr_15
) = 15;
6502 FLD (in_h_gr_2
) = 2;
6503 FLD (in_h_gr_3
) = 3;
6504 FLD (in_h_gr_31
) = 31;
6505 FLD (in_h_gr_4
) = 4;
6506 FLD (in_h_gr_5
) = 5;
6507 FLD (in_h_gr_6
) = 6;
6508 FLD (in_h_gr_7
) = 7;
6509 FLD (in_h_gr_8
) = 8;
6510 FLD (in_h_gr_9
) = 9;
6511 FLD (out_h_gr_0
) = 0;
6512 FLD (out_h_gr_1
) = 1;
6513 FLD (out_h_gr_10
) = 10;
6514 FLD (out_h_gr_11
) = 11;
6515 FLD (out_h_gr_12
) = 12;
6516 FLD (out_h_gr_13
) = 13;
6517 FLD (out_h_gr_14
) = 14;
6518 FLD (out_h_gr_15
) = 15;
6519 FLD (out_h_gr_2
) = 2;
6520 FLD (out_h_gr_3
) = 3;
6521 FLD (out_h_gr_31
) = 31;
6522 FLD (out_h_gr_4
) = 4;
6523 FLD (out_h_gr_5
) = 5;
6524 FLD (out_h_gr_6
) = 6;
6525 FLD (out_h_gr_7
) = 7;
6526 FLD (out_h_gr_8
) = 8;
6527 FLD (out_h_gr_9
) = 9;
6534 CASE (ex
, FMT_RET
) :
6536 CGEN_INSN_INT insn
= base_insn
;
6537 #define FLD(f) abuf->fields.cti.fields.fmt_ret.f
6538 EXTRACT_IFMT_BNO_VARS
/* f-opcode f-ctrl-disp f-ctrl-zero */
6540 EXTRACT_IFMT_BNO_CODE
6542 /* Record the fields for the semantic handler. */
6543 SEM_BRANCH_INIT_EXTRACT (abuf
);
6544 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ret", (char *) 0));
6546 #if WITH_PROFILE_MODEL_P
6547 /* Record the fields for profiling. */
6548 if (PROFILE_MODEL_P (current_cpu
))
6550 FLD (in_h_gr_0
) = 0;
6551 FLD (in_h_gr_2
) = 2;
6552 FLD (in_h_gr_31
) = 31;
6553 FLD (out_h_gr_0
) = 0;
6554 FLD (out_h_gr_1
) = 1;
6555 FLD (out_h_gr_10
) = 10;
6556 FLD (out_h_gr_11
) = 11;
6557 FLD (out_h_gr_12
) = 12;
6558 FLD (out_h_gr_13
) = 13;
6559 FLD (out_h_gr_14
) = 14;
6560 FLD (out_h_gr_15
) = 15;
6561 FLD (out_h_gr_2
) = 2;
6562 FLD (out_h_gr_3
) = 3;
6563 FLD (out_h_gr_31
) = 31;
6564 FLD (out_h_gr_4
) = 4;
6565 FLD (out_h_gr_5
) = 5;
6566 FLD (out_h_gr_6
) = 6;
6567 FLD (out_h_gr_7
) = 7;
6568 FLD (out_h_gr_8
) = 8;
6569 FLD (out_h_gr_9
) = 9;
6576 CASE (ex
, FMT_CALLS
) :
6578 CGEN_INSN_INT insn
= base_insn
;
6579 #define FLD(f) abuf->fields.cti.fields.fmt_calls.f
6580 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6582 EXTRACT_IFMT_MULO_CODE
6584 /* Record the fields for the semantic handler. */
6585 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
6586 SEM_BRANCH_INIT_EXTRACT (abuf
);
6587 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_calls", "src1 0x%x", 'x', f_src1
, (char *) 0));
6589 #if WITH_PROFILE_MODEL_P
6590 /* Record the fields for profiling. */
6591 if (PROFILE_MODEL_P (current_cpu
))
6593 FLD (in_src1
) = f_src1
;
6600 CASE (ex
, FMT_FMARK
) :
6602 CGEN_INSN_INT insn
= base_insn
;
6603 #define FLD(f) abuf->fields.cti.fields.fmt_fmark.f
6604 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6606 EXTRACT_IFMT_MULO_CODE
6608 /* Record the fields for the semantic handler. */
6609 SEM_BRANCH_INIT_EXTRACT (abuf
);
6610 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_fmark", (char *) 0));
6612 #if WITH_PROFILE_MODEL_P
6613 /* Record the fields for profiling. */
6614 if (PROFILE_MODEL_P (current_cpu
))
6622 CASE (ex
, FMT_FLUSHREG
) :
6624 CGEN_INSN_INT insn
= base_insn
;
6625 #define FLD(f) abuf->fields.fmt_flushreg.f
6626 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6628 EXTRACT_IFMT_MULO_CODE
6630 /* Record the fields for the semantic handler. */
6631 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_flushreg", (char *) 0));
6643 return idecode
->idesc
;