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 INSN_ prefix is not here and is instead part of the `insn' argument
50 to avoid collisions with header files (e.g. `AND' in ansidecl.h). */
51 #define IDX(insn) CONCAT2 (I960BASE_,insn)
52 #define TYPE(insn) CONCAT2 (I960_,insn)
54 /* The instruction descriptor array.
55 This is computed at runtime. Space for it is not malloc'd to save a
56 teensy bit of cpu in the decoder. Moving it to malloc space is trivial
57 but won't be done until necessary (we don't currently support the runtime
58 addition of instructions nor an SMP machine with different cpus). */
59 static IDESC i960base_insn_data
[I960BASE_INSN_MAX
];
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_XNOR
), IDX (INSN_XNOR
), FULL (xnor
) FAST (xnor
) },
133 { TYPE (INSN_XNOR1
), IDX (INSN_XNOR1
), FULL (xnor1
) FAST (xnor1
) },
134 { TYPE (INSN_XNOR2
), IDX (INSN_XNOR2
), FULL (xnor2
) FAST (xnor2
) },
135 { TYPE (INSN_XNOR3
), IDX (INSN_XNOR3
), FULL (xnor3
) FAST (xnor3
) },
136 { TYPE (INSN_NOT
), IDX (INSN_NOT
), FULL (not) FAST (not) },
137 { TYPE (INSN_NOT1
), IDX (INSN_NOT1
), FULL (not1
) FAST (not1
) },
138 { TYPE (INSN_NOT2
), IDX (INSN_NOT2
), FULL (not2
) FAST (not2
) },
139 { TYPE (INSN_NOT3
), IDX (INSN_NOT3
), FULL (not3
) FAST (not3
) },
140 { TYPE (INSN_ORNOT
), IDX (INSN_ORNOT
), FULL (ornot
) FAST (ornot
) },
141 { TYPE (INSN_ORNOT1
), IDX (INSN_ORNOT1
), FULL (ornot1
) FAST (ornot1
) },
142 { TYPE (INSN_ORNOT2
), IDX (INSN_ORNOT2
), FULL (ornot2
) FAST (ornot2
) },
143 { TYPE (INSN_ORNOT3
), IDX (INSN_ORNOT3
), FULL (ornot3
) FAST (ornot3
) },
144 { TYPE (INSN_CLRBIT
), IDX (INSN_CLRBIT
), FULL (clrbit
) FAST (clrbit
) },
145 { TYPE (INSN_CLRBIT1
), IDX (INSN_CLRBIT1
), FULL (clrbit1
) FAST (clrbit1
) },
146 { TYPE (INSN_CLRBIT2
), IDX (INSN_CLRBIT2
), FULL (clrbit2
) FAST (clrbit2
) },
147 { TYPE (INSN_CLRBIT3
), IDX (INSN_CLRBIT3
), FULL (clrbit3
) FAST (clrbit3
) },
148 { TYPE (INSN_SHLO
), IDX (INSN_SHLO
), FULL (shlo
) FAST (shlo
) },
149 { TYPE (INSN_SHLO1
), IDX (INSN_SHLO1
), FULL (shlo1
) FAST (shlo1
) },
150 { TYPE (INSN_SHLO2
), IDX (INSN_SHLO2
), FULL (shlo2
) FAST (shlo2
) },
151 { TYPE (INSN_SHLO3
), IDX (INSN_SHLO3
), FULL (shlo3
) FAST (shlo3
) },
152 { TYPE (INSN_SHRO
), IDX (INSN_SHRO
), FULL (shro
) FAST (shro
) },
153 { TYPE (INSN_SHRO1
), IDX (INSN_SHRO1
), FULL (shro1
) FAST (shro1
) },
154 { TYPE (INSN_SHRO2
), IDX (INSN_SHRO2
), FULL (shro2
) FAST (shro2
) },
155 { TYPE (INSN_SHRO3
), IDX (INSN_SHRO3
), FULL (shro3
) FAST (shro3
) },
156 { TYPE (INSN_SHLI
), IDX (INSN_SHLI
), FULL (shli
) FAST (shli
) },
157 { TYPE (INSN_SHLI1
), IDX (INSN_SHLI1
), FULL (shli1
) FAST (shli1
) },
158 { TYPE (INSN_SHLI2
), IDX (INSN_SHLI2
), FULL (shli2
) FAST (shli2
) },
159 { TYPE (INSN_SHLI3
), IDX (INSN_SHLI3
), FULL (shli3
) FAST (shli3
) },
160 { TYPE (INSN_SHRI
), IDX (INSN_SHRI
), FULL (shri
) FAST (shri
) },
161 { TYPE (INSN_SHRI1
), IDX (INSN_SHRI1
), FULL (shri1
) FAST (shri1
) },
162 { TYPE (INSN_SHRI2
), IDX (INSN_SHRI2
), FULL (shri2
) FAST (shri2
) },
163 { TYPE (INSN_SHRI3
), IDX (INSN_SHRI3
), FULL (shri3
) FAST (shri3
) },
164 { TYPE (INSN_EMUL
), IDX (INSN_EMUL
), FULL (emul
) FAST (emul
) },
165 { TYPE (INSN_EMUL1
), IDX (INSN_EMUL1
), FULL (emul1
) FAST (emul1
) },
166 { TYPE (INSN_EMUL2
), IDX (INSN_EMUL2
), FULL (emul2
) FAST (emul2
) },
167 { TYPE (INSN_EMUL3
), IDX (INSN_EMUL3
), FULL (emul3
) FAST (emul3
) },
168 { TYPE (INSN_MOV
), IDX (INSN_MOV
), FULL (mov
) FAST (mov
) },
169 { TYPE (INSN_MOV1
), IDX (INSN_MOV1
), FULL (mov1
) FAST (mov1
) },
170 { TYPE (INSN_MOVL
), IDX (INSN_MOVL
), FULL (movl
) FAST (movl
) },
171 { TYPE (INSN_MOVL1
), IDX (INSN_MOVL1
), FULL (movl1
) FAST (movl1
) },
172 { TYPE (INSN_MOVT
), IDX (INSN_MOVT
), FULL (movt
) FAST (movt
) },
173 { TYPE (INSN_MOVT1
), IDX (INSN_MOVT1
), FULL (movt1
) FAST (movt1
) },
174 { TYPE (INSN_MOVQ
), IDX (INSN_MOVQ
), FULL (movq
) FAST (movq
) },
175 { TYPE (INSN_MOVQ1
), IDX (INSN_MOVQ1
), FULL (movq1
) FAST (movq1
) },
176 { TYPE (INSN_MODPC
), IDX (INSN_MODPC
), FULL (modpc
) FAST (modpc
) },
177 { TYPE (INSN_MODAC
), IDX (INSN_MODAC
), FULL (modac
) FAST (modac
) },
178 { TYPE (INSN_LDA_OFFSET
), IDX (INSN_LDA_OFFSET
), FULL (lda_offset
) FAST (lda_offset
) },
179 { TYPE (INSN_LDA_INDIRECT_OFFSET
), IDX (INSN_LDA_INDIRECT_OFFSET
), FULL (lda_indirect_offset
) FAST (lda_indirect_offset
) },
180 { TYPE (INSN_LDA_INDIRECT
), IDX (INSN_LDA_INDIRECT
), FULL (lda_indirect
) FAST (lda_indirect
) },
181 { TYPE (INSN_LDA_INDIRECT_INDEX
), IDX (INSN_LDA_INDIRECT_INDEX
), FULL (lda_indirect_index
) FAST (lda_indirect_index
) },
182 { TYPE (INSN_LDA_DISP
), IDX (INSN_LDA_DISP
), FULL (lda_disp
) FAST (lda_disp
) },
183 { TYPE (INSN_LDA_INDIRECT_DISP
), IDX (INSN_LDA_INDIRECT_DISP
), FULL (lda_indirect_disp
) FAST (lda_indirect_disp
) },
184 { TYPE (INSN_LDA_INDEX_DISP
), IDX (INSN_LDA_INDEX_DISP
), FULL (lda_index_disp
) FAST (lda_index_disp
) },
185 { TYPE (INSN_LDA_INDIRECT_INDEX_DISP
), IDX (INSN_LDA_INDIRECT_INDEX_DISP
), FULL (lda_indirect_index_disp
) FAST (lda_indirect_index_disp
) },
186 { TYPE (INSN_LD_OFFSET
), IDX (INSN_LD_OFFSET
), FULL (ld_offset
) FAST (ld_offset
) },
187 { TYPE (INSN_LD_INDIRECT_OFFSET
), IDX (INSN_LD_INDIRECT_OFFSET
), FULL (ld_indirect_offset
) FAST (ld_indirect_offset
) },
188 { TYPE (INSN_LD_INDIRECT
), IDX (INSN_LD_INDIRECT
), FULL (ld_indirect
) FAST (ld_indirect
) },
189 { TYPE (INSN_LD_INDIRECT_INDEX
), IDX (INSN_LD_INDIRECT_INDEX
), FULL (ld_indirect_index
) FAST (ld_indirect_index
) },
190 { TYPE (INSN_LD_DISP
), IDX (INSN_LD_DISP
), FULL (ld_disp
) FAST (ld_disp
) },
191 { TYPE (INSN_LD_INDIRECT_DISP
), IDX (INSN_LD_INDIRECT_DISP
), FULL (ld_indirect_disp
) FAST (ld_indirect_disp
) },
192 { TYPE (INSN_LD_INDEX_DISP
), IDX (INSN_LD_INDEX_DISP
), FULL (ld_index_disp
) FAST (ld_index_disp
) },
193 { TYPE (INSN_LD_INDIRECT_INDEX_DISP
), IDX (INSN_LD_INDIRECT_INDEX_DISP
), FULL (ld_indirect_index_disp
) FAST (ld_indirect_index_disp
) },
194 { TYPE (INSN_LDOB_OFFSET
), IDX (INSN_LDOB_OFFSET
), FULL (ldob_offset
) FAST (ldob_offset
) },
195 { TYPE (INSN_LDOB_INDIRECT_OFFSET
), IDX (INSN_LDOB_INDIRECT_OFFSET
), FULL (ldob_indirect_offset
) FAST (ldob_indirect_offset
) },
196 { TYPE (INSN_LDOB_INDIRECT
), IDX (INSN_LDOB_INDIRECT
), FULL (ldob_indirect
) FAST (ldob_indirect
) },
197 { TYPE (INSN_LDOB_INDIRECT_INDEX
), IDX (INSN_LDOB_INDIRECT_INDEX
), FULL (ldob_indirect_index
) FAST (ldob_indirect_index
) },
198 { TYPE (INSN_LDOB_DISP
), IDX (INSN_LDOB_DISP
), FULL (ldob_disp
) FAST (ldob_disp
) },
199 { TYPE (INSN_LDOB_INDIRECT_DISP
), IDX (INSN_LDOB_INDIRECT_DISP
), FULL (ldob_indirect_disp
) FAST (ldob_indirect_disp
) },
200 { TYPE (INSN_LDOB_INDEX_DISP
), IDX (INSN_LDOB_INDEX_DISP
), FULL (ldob_index_disp
) FAST (ldob_index_disp
) },
201 { TYPE (INSN_LDOB_INDIRECT_INDEX_DISP
), IDX (INSN_LDOB_INDIRECT_INDEX_DISP
), FULL (ldob_indirect_index_disp
) FAST (ldob_indirect_index_disp
) },
202 { TYPE (INSN_LDOS_OFFSET
), IDX (INSN_LDOS_OFFSET
), FULL (ldos_offset
) FAST (ldos_offset
) },
203 { TYPE (INSN_LDOS_INDIRECT_OFFSET
), IDX (INSN_LDOS_INDIRECT_OFFSET
), FULL (ldos_indirect_offset
) FAST (ldos_indirect_offset
) },
204 { TYPE (INSN_LDOS_INDIRECT
), IDX (INSN_LDOS_INDIRECT
), FULL (ldos_indirect
) FAST (ldos_indirect
) },
205 { TYPE (INSN_LDOS_INDIRECT_INDEX
), IDX (INSN_LDOS_INDIRECT_INDEX
), FULL (ldos_indirect_index
) FAST (ldos_indirect_index
) },
206 { TYPE (INSN_LDOS_DISP
), IDX (INSN_LDOS_DISP
), FULL (ldos_disp
) FAST (ldos_disp
) },
207 { TYPE (INSN_LDOS_INDIRECT_DISP
), IDX (INSN_LDOS_INDIRECT_DISP
), FULL (ldos_indirect_disp
) FAST (ldos_indirect_disp
) },
208 { TYPE (INSN_LDOS_INDEX_DISP
), IDX (INSN_LDOS_INDEX_DISP
), FULL (ldos_index_disp
) FAST (ldos_index_disp
) },
209 { TYPE (INSN_LDOS_INDIRECT_INDEX_DISP
), IDX (INSN_LDOS_INDIRECT_INDEX_DISP
), FULL (ldos_indirect_index_disp
) FAST (ldos_indirect_index_disp
) },
210 { TYPE (INSN_LDIB_OFFSET
), IDX (INSN_LDIB_OFFSET
), FULL (ldib_offset
) FAST (ldib_offset
) },
211 { TYPE (INSN_LDIB_INDIRECT_OFFSET
), IDX (INSN_LDIB_INDIRECT_OFFSET
), FULL (ldib_indirect_offset
) FAST (ldib_indirect_offset
) },
212 { TYPE (INSN_LDIB_INDIRECT
), IDX (INSN_LDIB_INDIRECT
), FULL (ldib_indirect
) FAST (ldib_indirect
) },
213 { TYPE (INSN_LDIB_INDIRECT_INDEX
), IDX (INSN_LDIB_INDIRECT_INDEX
), FULL (ldib_indirect_index
) FAST (ldib_indirect_index
) },
214 { TYPE (INSN_LDIB_DISP
), IDX (INSN_LDIB_DISP
), FULL (ldib_disp
) FAST (ldib_disp
) },
215 { TYPE (INSN_LDIB_INDIRECT_DISP
), IDX (INSN_LDIB_INDIRECT_DISP
), FULL (ldib_indirect_disp
) FAST (ldib_indirect_disp
) },
216 { TYPE (INSN_LDIB_INDEX_DISP
), IDX (INSN_LDIB_INDEX_DISP
), FULL (ldib_index_disp
) FAST (ldib_index_disp
) },
217 { TYPE (INSN_LDIB_INDIRECT_INDEX_DISP
), IDX (INSN_LDIB_INDIRECT_INDEX_DISP
), FULL (ldib_indirect_index_disp
) FAST (ldib_indirect_index_disp
) },
218 { TYPE (INSN_LDIS_OFFSET
), IDX (INSN_LDIS_OFFSET
), FULL (ldis_offset
) FAST (ldis_offset
) },
219 { TYPE (INSN_LDIS_INDIRECT_OFFSET
), IDX (INSN_LDIS_INDIRECT_OFFSET
), FULL (ldis_indirect_offset
) FAST (ldis_indirect_offset
) },
220 { TYPE (INSN_LDIS_INDIRECT
), IDX (INSN_LDIS_INDIRECT
), FULL (ldis_indirect
) FAST (ldis_indirect
) },
221 { TYPE (INSN_LDIS_INDIRECT_INDEX
), IDX (INSN_LDIS_INDIRECT_INDEX
), FULL (ldis_indirect_index
) FAST (ldis_indirect_index
) },
222 { TYPE (INSN_LDIS_DISP
), IDX (INSN_LDIS_DISP
), FULL (ldis_disp
) FAST (ldis_disp
) },
223 { TYPE (INSN_LDIS_INDIRECT_DISP
), IDX (INSN_LDIS_INDIRECT_DISP
), FULL (ldis_indirect_disp
) FAST (ldis_indirect_disp
) },
224 { TYPE (INSN_LDIS_INDEX_DISP
), IDX (INSN_LDIS_INDEX_DISP
), FULL (ldis_index_disp
) FAST (ldis_index_disp
) },
225 { TYPE (INSN_LDIS_INDIRECT_INDEX_DISP
), IDX (INSN_LDIS_INDIRECT_INDEX_DISP
), FULL (ldis_indirect_index_disp
) FAST (ldis_indirect_index_disp
) },
226 { TYPE (INSN_LDL_OFFSET
), IDX (INSN_LDL_OFFSET
), FULL (ldl_offset
) FAST (ldl_offset
) },
227 { TYPE (INSN_LDL_INDIRECT_OFFSET
), IDX (INSN_LDL_INDIRECT_OFFSET
), FULL (ldl_indirect_offset
) FAST (ldl_indirect_offset
) },
228 { TYPE (INSN_LDL_INDIRECT
), IDX (INSN_LDL_INDIRECT
), FULL (ldl_indirect
) FAST (ldl_indirect
) },
229 { TYPE (INSN_LDL_INDIRECT_INDEX
), IDX (INSN_LDL_INDIRECT_INDEX
), FULL (ldl_indirect_index
) FAST (ldl_indirect_index
) },
230 { TYPE (INSN_LDL_DISP
), IDX (INSN_LDL_DISP
), FULL (ldl_disp
) FAST (ldl_disp
) },
231 { TYPE (INSN_LDL_INDIRECT_DISP
), IDX (INSN_LDL_INDIRECT_DISP
), FULL (ldl_indirect_disp
) FAST (ldl_indirect_disp
) },
232 { TYPE (INSN_LDL_INDEX_DISP
), IDX (INSN_LDL_INDEX_DISP
), FULL (ldl_index_disp
) FAST (ldl_index_disp
) },
233 { TYPE (INSN_LDL_INDIRECT_INDEX_DISP
), IDX (INSN_LDL_INDIRECT_INDEX_DISP
), FULL (ldl_indirect_index_disp
) FAST (ldl_indirect_index_disp
) },
234 { TYPE (INSN_LDT_OFFSET
), IDX (INSN_LDT_OFFSET
), FULL (ldt_offset
) FAST (ldt_offset
) },
235 { TYPE (INSN_LDT_INDIRECT_OFFSET
), IDX (INSN_LDT_INDIRECT_OFFSET
), FULL (ldt_indirect_offset
) FAST (ldt_indirect_offset
) },
236 { TYPE (INSN_LDT_INDIRECT
), IDX (INSN_LDT_INDIRECT
), FULL (ldt_indirect
) FAST (ldt_indirect
) },
237 { TYPE (INSN_LDT_INDIRECT_INDEX
), IDX (INSN_LDT_INDIRECT_INDEX
), FULL (ldt_indirect_index
) FAST (ldt_indirect_index
) },
238 { TYPE (INSN_LDT_DISP
), IDX (INSN_LDT_DISP
), FULL (ldt_disp
) FAST (ldt_disp
) },
239 { TYPE (INSN_LDT_INDIRECT_DISP
), IDX (INSN_LDT_INDIRECT_DISP
), FULL (ldt_indirect_disp
) FAST (ldt_indirect_disp
) },
240 { TYPE (INSN_LDT_INDEX_DISP
), IDX (INSN_LDT_INDEX_DISP
), FULL (ldt_index_disp
) FAST (ldt_index_disp
) },
241 { TYPE (INSN_LDT_INDIRECT_INDEX_DISP
), IDX (INSN_LDT_INDIRECT_INDEX_DISP
), FULL (ldt_indirect_index_disp
) FAST (ldt_indirect_index_disp
) },
242 { TYPE (INSN_LDQ_OFFSET
), IDX (INSN_LDQ_OFFSET
), FULL (ldq_offset
) FAST (ldq_offset
) },
243 { TYPE (INSN_LDQ_INDIRECT_OFFSET
), IDX (INSN_LDQ_INDIRECT_OFFSET
), FULL (ldq_indirect_offset
) FAST (ldq_indirect_offset
) },
244 { TYPE (INSN_LDQ_INDIRECT
), IDX (INSN_LDQ_INDIRECT
), FULL (ldq_indirect
) FAST (ldq_indirect
) },
245 { TYPE (INSN_LDQ_INDIRECT_INDEX
), IDX (INSN_LDQ_INDIRECT_INDEX
), FULL (ldq_indirect_index
) FAST (ldq_indirect_index
) },
246 { TYPE (INSN_LDQ_DISP
), IDX (INSN_LDQ_DISP
), FULL (ldq_disp
) FAST (ldq_disp
) },
247 { TYPE (INSN_LDQ_INDIRECT_DISP
), IDX (INSN_LDQ_INDIRECT_DISP
), FULL (ldq_indirect_disp
) FAST (ldq_indirect_disp
) },
248 { TYPE (INSN_LDQ_INDEX_DISP
), IDX (INSN_LDQ_INDEX_DISP
), FULL (ldq_index_disp
) FAST (ldq_index_disp
) },
249 { TYPE (INSN_LDQ_INDIRECT_INDEX_DISP
), IDX (INSN_LDQ_INDIRECT_INDEX_DISP
), FULL (ldq_indirect_index_disp
) FAST (ldq_indirect_index_disp
) },
250 { TYPE (INSN_ST_OFFSET
), IDX (INSN_ST_OFFSET
), FULL (st_offset
) FAST (st_offset
) },
251 { TYPE (INSN_ST_INDIRECT_OFFSET
), IDX (INSN_ST_INDIRECT_OFFSET
), FULL (st_indirect_offset
) FAST (st_indirect_offset
) },
252 { TYPE (INSN_ST_INDIRECT
), IDX (INSN_ST_INDIRECT
), FULL (st_indirect
) FAST (st_indirect
) },
253 { TYPE (INSN_ST_INDIRECT_INDEX
), IDX (INSN_ST_INDIRECT_INDEX
), FULL (st_indirect_index
) FAST (st_indirect_index
) },
254 { TYPE (INSN_ST_DISP
), IDX (INSN_ST_DISP
), FULL (st_disp
) FAST (st_disp
) },
255 { TYPE (INSN_ST_INDIRECT_DISP
), IDX (INSN_ST_INDIRECT_DISP
), FULL (st_indirect_disp
) FAST (st_indirect_disp
) },
256 { TYPE (INSN_ST_INDEX_DISP
), IDX (INSN_ST_INDEX_DISP
), FULL (st_index_disp
) FAST (st_index_disp
) },
257 { TYPE (INSN_ST_INDIRECT_INDEX_DISP
), IDX (INSN_ST_INDIRECT_INDEX_DISP
), FULL (st_indirect_index_disp
) FAST (st_indirect_index_disp
) },
258 { TYPE (INSN_STOB_OFFSET
), IDX (INSN_STOB_OFFSET
), FULL (stob_offset
) FAST (stob_offset
) },
259 { TYPE (INSN_STOB_INDIRECT_OFFSET
), IDX (INSN_STOB_INDIRECT_OFFSET
), FULL (stob_indirect_offset
) FAST (stob_indirect_offset
) },
260 { TYPE (INSN_STOB_INDIRECT
), IDX (INSN_STOB_INDIRECT
), FULL (stob_indirect
) FAST (stob_indirect
) },
261 { TYPE (INSN_STOB_INDIRECT_INDEX
), IDX (INSN_STOB_INDIRECT_INDEX
), FULL (stob_indirect_index
) FAST (stob_indirect_index
) },
262 { TYPE (INSN_STOB_DISP
), IDX (INSN_STOB_DISP
), FULL (stob_disp
) FAST (stob_disp
) },
263 { TYPE (INSN_STOB_INDIRECT_DISP
), IDX (INSN_STOB_INDIRECT_DISP
), FULL (stob_indirect_disp
) FAST (stob_indirect_disp
) },
264 { TYPE (INSN_STOB_INDEX_DISP
), IDX (INSN_STOB_INDEX_DISP
), FULL (stob_index_disp
) FAST (stob_index_disp
) },
265 { TYPE (INSN_STOB_INDIRECT_INDEX_DISP
), IDX (INSN_STOB_INDIRECT_INDEX_DISP
), FULL (stob_indirect_index_disp
) FAST (stob_indirect_index_disp
) },
266 { TYPE (INSN_STOS_OFFSET
), IDX (INSN_STOS_OFFSET
), FULL (stos_offset
) FAST (stos_offset
) },
267 { TYPE (INSN_STOS_INDIRECT_OFFSET
), IDX (INSN_STOS_INDIRECT_OFFSET
), FULL (stos_indirect_offset
) FAST (stos_indirect_offset
) },
268 { TYPE (INSN_STOS_INDIRECT
), IDX (INSN_STOS_INDIRECT
), FULL (stos_indirect
) FAST (stos_indirect
) },
269 { TYPE (INSN_STOS_INDIRECT_INDEX
), IDX (INSN_STOS_INDIRECT_INDEX
), FULL (stos_indirect_index
) FAST (stos_indirect_index
) },
270 { TYPE (INSN_STOS_DISP
), IDX (INSN_STOS_DISP
), FULL (stos_disp
) FAST (stos_disp
) },
271 { TYPE (INSN_STOS_INDIRECT_DISP
), IDX (INSN_STOS_INDIRECT_DISP
), FULL (stos_indirect_disp
) FAST (stos_indirect_disp
) },
272 { TYPE (INSN_STOS_INDEX_DISP
), IDX (INSN_STOS_INDEX_DISP
), FULL (stos_index_disp
) FAST (stos_index_disp
) },
273 { TYPE (INSN_STOS_INDIRECT_INDEX_DISP
), IDX (INSN_STOS_INDIRECT_INDEX_DISP
), FULL (stos_indirect_index_disp
) FAST (stos_indirect_index_disp
) },
274 { TYPE (INSN_STL_OFFSET
), IDX (INSN_STL_OFFSET
), FULL (stl_offset
) FAST (stl_offset
) },
275 { TYPE (INSN_STL_INDIRECT_OFFSET
), IDX (INSN_STL_INDIRECT_OFFSET
), FULL (stl_indirect_offset
) FAST (stl_indirect_offset
) },
276 { TYPE (INSN_STL_INDIRECT
), IDX (INSN_STL_INDIRECT
), FULL (stl_indirect
) FAST (stl_indirect
) },
277 { TYPE (INSN_STL_INDIRECT_INDEX
), IDX (INSN_STL_INDIRECT_INDEX
), FULL (stl_indirect_index
) FAST (stl_indirect_index
) },
278 { TYPE (INSN_STL_DISP
), IDX (INSN_STL_DISP
), FULL (stl_disp
) FAST (stl_disp
) },
279 { TYPE (INSN_STL_INDIRECT_DISP
), IDX (INSN_STL_INDIRECT_DISP
), FULL (stl_indirect_disp
) FAST (stl_indirect_disp
) },
280 { TYPE (INSN_STL_INDEX_DISP
), IDX (INSN_STL_INDEX_DISP
), FULL (stl_index_disp
) FAST (stl_index_disp
) },
281 { TYPE (INSN_STL_INDIRECT_INDEX_DISP
), IDX (INSN_STL_INDIRECT_INDEX_DISP
), FULL (stl_indirect_index_disp
) FAST (stl_indirect_index_disp
) },
282 { TYPE (INSN_STT_OFFSET
), IDX (INSN_STT_OFFSET
), FULL (stt_offset
) FAST (stt_offset
) },
283 { TYPE (INSN_STT_INDIRECT_OFFSET
), IDX (INSN_STT_INDIRECT_OFFSET
), FULL (stt_indirect_offset
) FAST (stt_indirect_offset
) },
284 { TYPE (INSN_STT_INDIRECT
), IDX (INSN_STT_INDIRECT
), FULL (stt_indirect
) FAST (stt_indirect
) },
285 { TYPE (INSN_STT_INDIRECT_INDEX
), IDX (INSN_STT_INDIRECT_INDEX
), FULL (stt_indirect_index
) FAST (stt_indirect_index
) },
286 { TYPE (INSN_STT_DISP
), IDX (INSN_STT_DISP
), FULL (stt_disp
) FAST (stt_disp
) },
287 { TYPE (INSN_STT_INDIRECT_DISP
), IDX (INSN_STT_INDIRECT_DISP
), FULL (stt_indirect_disp
) FAST (stt_indirect_disp
) },
288 { TYPE (INSN_STT_INDEX_DISP
), IDX (INSN_STT_INDEX_DISP
), FULL (stt_index_disp
) FAST (stt_index_disp
) },
289 { TYPE (INSN_STT_INDIRECT_INDEX_DISP
), IDX (INSN_STT_INDIRECT_INDEX_DISP
), FULL (stt_indirect_index_disp
) FAST (stt_indirect_index_disp
) },
290 { TYPE (INSN_STQ_OFFSET
), IDX (INSN_STQ_OFFSET
), FULL (stq_offset
) FAST (stq_offset
) },
291 { TYPE (INSN_STQ_INDIRECT_OFFSET
), IDX (INSN_STQ_INDIRECT_OFFSET
), FULL (stq_indirect_offset
) FAST (stq_indirect_offset
) },
292 { TYPE (INSN_STQ_INDIRECT
), IDX (INSN_STQ_INDIRECT
), FULL (stq_indirect
) FAST (stq_indirect
) },
293 { TYPE (INSN_STQ_INDIRECT_INDEX
), IDX (INSN_STQ_INDIRECT_INDEX
), FULL (stq_indirect_index
) FAST (stq_indirect_index
) },
294 { TYPE (INSN_STQ_DISP
), IDX (INSN_STQ_DISP
), FULL (stq_disp
) FAST (stq_disp
) },
295 { TYPE (INSN_STQ_INDIRECT_DISP
), IDX (INSN_STQ_INDIRECT_DISP
), FULL (stq_indirect_disp
) FAST (stq_indirect_disp
) },
296 { TYPE (INSN_STQ_INDEX_DISP
), IDX (INSN_STQ_INDEX_DISP
), FULL (stq_index_disp
) FAST (stq_index_disp
) },
297 { TYPE (INSN_STQ_INDIRECT_INDEX_DISP
), IDX (INSN_STQ_INDIRECT_INDEX_DISP
), FULL (stq_indirect_index_disp
) FAST (stq_indirect_index_disp
) },
298 { TYPE (INSN_CMPOBE_REG
), IDX (INSN_CMPOBE_REG
), FULL (cmpobe_reg
) FAST (cmpobe_reg
) },
299 { TYPE (INSN_CMPOBE_LIT
), IDX (INSN_CMPOBE_LIT
), FULL (cmpobe_lit
) FAST (cmpobe_lit
) },
300 { TYPE (INSN_CMPOBNE_REG
), IDX (INSN_CMPOBNE_REG
), FULL (cmpobne_reg
) FAST (cmpobne_reg
) },
301 { TYPE (INSN_CMPOBNE_LIT
), IDX (INSN_CMPOBNE_LIT
), FULL (cmpobne_lit
) FAST (cmpobne_lit
) },
302 { TYPE (INSN_CMPOBL_REG
), IDX (INSN_CMPOBL_REG
), FULL (cmpobl_reg
) FAST (cmpobl_reg
) },
303 { TYPE (INSN_CMPOBL_LIT
), IDX (INSN_CMPOBL_LIT
), FULL (cmpobl_lit
) FAST (cmpobl_lit
) },
304 { TYPE (INSN_CMPOBLE_REG
), IDX (INSN_CMPOBLE_REG
), FULL (cmpoble_reg
) FAST (cmpoble_reg
) },
305 { TYPE (INSN_CMPOBLE_LIT
), IDX (INSN_CMPOBLE_LIT
), FULL (cmpoble_lit
) FAST (cmpoble_lit
) },
306 { TYPE (INSN_CMPOBG_REG
), IDX (INSN_CMPOBG_REG
), FULL (cmpobg_reg
) FAST (cmpobg_reg
) },
307 { TYPE (INSN_CMPOBG_LIT
), IDX (INSN_CMPOBG_LIT
), FULL (cmpobg_lit
) FAST (cmpobg_lit
) },
308 { TYPE (INSN_CMPOBGE_REG
), IDX (INSN_CMPOBGE_REG
), FULL (cmpobge_reg
) FAST (cmpobge_reg
) },
309 { TYPE (INSN_CMPOBGE_LIT
), IDX (INSN_CMPOBGE_LIT
), FULL (cmpobge_lit
) FAST (cmpobge_lit
) },
310 { TYPE (INSN_CMPIBE_REG
), IDX (INSN_CMPIBE_REG
), FULL (cmpibe_reg
) FAST (cmpibe_reg
) },
311 { TYPE (INSN_CMPIBE_LIT
), IDX (INSN_CMPIBE_LIT
), FULL (cmpibe_lit
) FAST (cmpibe_lit
) },
312 { TYPE (INSN_CMPIBNE_REG
), IDX (INSN_CMPIBNE_REG
), FULL (cmpibne_reg
) FAST (cmpibne_reg
) },
313 { TYPE (INSN_CMPIBNE_LIT
), IDX (INSN_CMPIBNE_LIT
), FULL (cmpibne_lit
) FAST (cmpibne_lit
) },
314 { TYPE (INSN_CMPIBL_REG
), IDX (INSN_CMPIBL_REG
), FULL (cmpibl_reg
) FAST (cmpibl_reg
) },
315 { TYPE (INSN_CMPIBL_LIT
), IDX (INSN_CMPIBL_LIT
), FULL (cmpibl_lit
) FAST (cmpibl_lit
) },
316 { TYPE (INSN_CMPIBLE_REG
), IDX (INSN_CMPIBLE_REG
), FULL (cmpible_reg
) FAST (cmpible_reg
) },
317 { TYPE (INSN_CMPIBLE_LIT
), IDX (INSN_CMPIBLE_LIT
), FULL (cmpible_lit
) FAST (cmpible_lit
) },
318 { TYPE (INSN_CMPIBG_REG
), IDX (INSN_CMPIBG_REG
), FULL (cmpibg_reg
) FAST (cmpibg_reg
) },
319 { TYPE (INSN_CMPIBG_LIT
), IDX (INSN_CMPIBG_LIT
), FULL (cmpibg_lit
) FAST (cmpibg_lit
) },
320 { TYPE (INSN_CMPIBGE_REG
), IDX (INSN_CMPIBGE_REG
), FULL (cmpibge_reg
) FAST (cmpibge_reg
) },
321 { TYPE (INSN_CMPIBGE_LIT
), IDX (INSN_CMPIBGE_LIT
), FULL (cmpibge_lit
) FAST (cmpibge_lit
) },
322 { TYPE (INSN_BBC_REG
), IDX (INSN_BBC_REG
), FULL (bbc_reg
) FAST (bbc_reg
) },
323 { TYPE (INSN_BBC_LIT
), IDX (INSN_BBC_LIT
), FULL (bbc_lit
) FAST (bbc_lit
) },
324 { TYPE (INSN_BBS_REG
), IDX (INSN_BBS_REG
), FULL (bbs_reg
) FAST (bbs_reg
) },
325 { TYPE (INSN_BBS_LIT
), IDX (INSN_BBS_LIT
), FULL (bbs_lit
) FAST (bbs_lit
) },
326 { TYPE (INSN_CMPI
), IDX (INSN_CMPI
), FULL (cmpi
) FAST (cmpi
) },
327 { TYPE (INSN_CMPI1
), IDX (INSN_CMPI1
), FULL (cmpi1
) FAST (cmpi1
) },
328 { TYPE (INSN_CMPI2
), IDX (INSN_CMPI2
), FULL (cmpi2
) FAST (cmpi2
) },
329 { TYPE (INSN_CMPI3
), IDX (INSN_CMPI3
), FULL (cmpi3
) FAST (cmpi3
) },
330 { TYPE (INSN_CMPO
), IDX (INSN_CMPO
), FULL (cmpo
) FAST (cmpo
) },
331 { TYPE (INSN_CMPO1
), IDX (INSN_CMPO1
), FULL (cmpo1
) FAST (cmpo1
) },
332 { TYPE (INSN_CMPO2
), IDX (INSN_CMPO2
), FULL (cmpo2
) FAST (cmpo2
) },
333 { TYPE (INSN_CMPO3
), IDX (INSN_CMPO3
), FULL (cmpo3
) FAST (cmpo3
) },
334 { TYPE (INSN_TESTNO_REG
), IDX (INSN_TESTNO_REG
), FULL (testno_reg
) FAST (testno_reg
) },
335 { TYPE (INSN_TESTG_REG
), IDX (INSN_TESTG_REG
), FULL (testg_reg
) FAST (testg_reg
) },
336 { TYPE (INSN_TESTE_REG
), IDX (INSN_TESTE_REG
), FULL (teste_reg
) FAST (teste_reg
) },
337 { TYPE (INSN_TESTGE_REG
), IDX (INSN_TESTGE_REG
), FULL (testge_reg
) FAST (testge_reg
) },
338 { TYPE (INSN_TESTL_REG
), IDX (INSN_TESTL_REG
), FULL (testl_reg
) FAST (testl_reg
) },
339 { TYPE (INSN_TESTNE_REG
), IDX (INSN_TESTNE_REG
), FULL (testne_reg
) FAST (testne_reg
) },
340 { TYPE (INSN_TESTLE_REG
), IDX (INSN_TESTLE_REG
), FULL (testle_reg
) FAST (testle_reg
) },
341 { TYPE (INSN_TESTO_REG
), IDX (INSN_TESTO_REG
), FULL (testo_reg
) FAST (testo_reg
) },
342 { TYPE (INSN_BNO
), IDX (INSN_BNO
), FULL (bno
) FAST (bno
) },
343 { TYPE (INSN_BG
), IDX (INSN_BG
), FULL (bg
) FAST (bg
) },
344 { TYPE (INSN_BE
), IDX (INSN_BE
), FULL (be
) FAST (be
) },
345 { TYPE (INSN_BGE
), IDX (INSN_BGE
), FULL (bge
) FAST (bge
) },
346 { TYPE (INSN_BL
), IDX (INSN_BL
), FULL (bl
) FAST (bl
) },
347 { TYPE (INSN_BNE
), IDX (INSN_BNE
), FULL (bne
) FAST (bne
) },
348 { TYPE (INSN_BLE
), IDX (INSN_BLE
), FULL (ble
) FAST (ble
) },
349 { TYPE (INSN_BO
), IDX (INSN_BO
), FULL (bo
) FAST (bo
) },
350 { TYPE (INSN_B
), IDX (INSN_B
), FULL (b
) FAST (b
) },
351 { TYPE (INSN_BX_INDIRECT_OFFSET
), IDX (INSN_BX_INDIRECT_OFFSET
), FULL (bx_indirect_offset
) FAST (bx_indirect_offset
) },
352 { TYPE (INSN_BX_INDIRECT
), IDX (INSN_BX_INDIRECT
), FULL (bx_indirect
) FAST (bx_indirect
) },
353 { TYPE (INSN_BX_INDIRECT_INDEX
), IDX (INSN_BX_INDIRECT_INDEX
), FULL (bx_indirect_index
) FAST (bx_indirect_index
) },
354 { TYPE (INSN_BX_DISP
), IDX (INSN_BX_DISP
), FULL (bx_disp
) FAST (bx_disp
) },
355 { TYPE (INSN_BX_INDIRECT_DISP
), IDX (INSN_BX_INDIRECT_DISP
), FULL (bx_indirect_disp
) FAST (bx_indirect_disp
) },
356 { TYPE (INSN_CALLX_DISP
), IDX (INSN_CALLX_DISP
), FULL (callx_disp
) FAST (callx_disp
) },
357 { TYPE (INSN_CALLX_INDIRECT
), IDX (INSN_CALLX_INDIRECT
), FULL (callx_indirect
) FAST (callx_indirect
) },
358 { TYPE (INSN_CALLX_INDIRECT_OFFSET
), IDX (INSN_CALLX_INDIRECT_OFFSET
), FULL (callx_indirect_offset
) FAST (callx_indirect_offset
) },
359 { TYPE (INSN_RET
), IDX (INSN_RET
), FULL (ret
) FAST (ret
) },
360 { TYPE (INSN_CALLS
), IDX (INSN_CALLS
), FULL (calls
) FAST (calls
) },
361 { TYPE (INSN_FMARK
), IDX (INSN_FMARK
), FULL (fmark
) FAST (fmark
) },
362 { TYPE (INSN_FLUSHREG
), IDX (INSN_FLUSHREG
), FULL (flushreg
) FAST (flushreg
) },
365 static const struct insn_sem i960base_insn_sem_invalid
=
367 VIRTUAL_INSN_X_INVALID
, IDX (INSN_X_INVALID
), FULL (x_invalid
) FAST (x_invalid
)
376 /* Initialize an IDESC from the compile-time computable parts. */
379 init_idesc (SIM_CPU
*cpu
, IDESC
*id
, const struct insn_sem
*t
)
381 const CGEN_INSN
*insn_table
= CGEN_CPU_INSN_TABLE (CPU_CPU_DESC (cpu
))->init_entries
;
384 if ((int) t
->type
<= 0)
385 id
->idata
= & cgen_virtual_insn_table
[- (int) t
->type
];
387 id
->idata
= & insn_table
[t
->type
];
388 id
->attrs
= CGEN_INSN_ATTRS (id
->idata
);
389 /* Oh my god, a magic number. */
390 id
->length
= CGEN_INSN_BITSIZE (id
->idata
) / 8;
391 #if ! WITH_SEM_SWITCH_FULL
392 id
->sem_full
= t
->sem_full
;
394 #if WITH_FAST && ! WITH_SEM_SWITCH_FAST
395 id
->sem_fast
= t
->sem_fast
;
397 #if WITH_PROFILE_MODEL_P
398 id
->timing
= & MODEL_TIMING (CPU_MODEL (cpu
)) [t
->index
];
400 SIM_DESC sd
= CPU_STATE (cpu
);
401 SIM_ASSERT (t
->index
== id
->timing
->num
);
406 /* Initialize the instruction descriptor table. */
409 i960base_init_idesc_table (SIM_CPU
*cpu
)
412 const struct insn_sem
*t
,*tend
;
413 int tabsize
= I960BASE_INSN_MAX
;
414 IDESC
*table
= i960base_insn_data
;
416 memset (table
, 0, tabsize
* sizeof (IDESC
));
418 /* First set all entries to the `invalid insn'. */
419 t
= & i960base_insn_sem_invalid
;
420 for (id
= table
, tabend
= table
+ tabsize
; id
< tabend
; ++id
)
421 init_idesc (cpu
, id
, t
);
423 /* Now fill in the values for the chosen cpu. */
424 for (t
= i960base_insn_sem
, tend
= t
+ sizeof (i960base_insn_sem
) / sizeof (*t
);
427 init_idesc (cpu
, & table
[t
->index
], t
);
430 /* Link the IDESC table into the cpu. */
431 CPU_IDESC (cpu
) = table
;
434 /* Given an instruction, return a pointer to its IDESC entry. */
437 i960base_decode (SIM_CPU
*current_cpu
, IADDR pc
,
438 CGEN_INSN_INT base_insn
,
441 /* Result of decoder. */
442 I960BASE_INSN_TYPE itype
;
445 CGEN_INSN_INT insn
= base_insn
;
448 unsigned int val
= (((insn
>> 24) & (255 << 0)));
451 case 8 : itype
= I960BASE_INSN_B
; goto extract_fmt_b
;
452 case 10 : itype
= I960BASE_INSN_RET
; goto extract_fmt_ret
;
453 case 16 : itype
= I960BASE_INSN_BNO
; goto extract_fmt_bno
;
454 case 17 : itype
= I960BASE_INSN_BG
; goto extract_fmt_bno
;
455 case 18 : itype
= I960BASE_INSN_BE
; goto extract_fmt_bno
;
456 case 19 : itype
= I960BASE_INSN_BGE
; goto extract_fmt_bno
;
457 case 20 : itype
= I960BASE_INSN_BL
; goto extract_fmt_bno
;
458 case 21 : itype
= I960BASE_INSN_BNE
; goto extract_fmt_bno
;
459 case 22 : itype
= I960BASE_INSN_BLE
; goto extract_fmt_bno
;
460 case 23 : itype
= I960BASE_INSN_BO
; goto extract_fmt_bno
;
461 case 32 : itype
= I960BASE_INSN_TESTNO_REG
; goto extract_fmt_testno_reg
;
462 case 33 : itype
= I960BASE_INSN_TESTG_REG
; goto extract_fmt_testno_reg
;
463 case 34 : itype
= I960BASE_INSN_TESTE_REG
; goto extract_fmt_testno_reg
;
464 case 35 : itype
= I960BASE_INSN_TESTGE_REG
; goto extract_fmt_testno_reg
;
465 case 36 : itype
= I960BASE_INSN_TESTL_REG
; goto extract_fmt_testno_reg
;
466 case 37 : itype
= I960BASE_INSN_TESTNE_REG
; goto extract_fmt_testno_reg
;
467 case 38 : itype
= I960BASE_INSN_TESTLE_REG
; goto extract_fmt_testno_reg
;
468 case 39 : itype
= I960BASE_INSN_TESTO_REG
; goto extract_fmt_testno_reg
;
471 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
474 case 0 : itype
= I960BASE_INSN_BBC_REG
; goto extract_fmt_bbc_reg
;
475 case 4 : itype
= I960BASE_INSN_BBC_LIT
; goto extract_fmt_bbc_lit
;
476 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
481 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
484 case 0 : itype
= I960BASE_INSN_CMPOBG_REG
; goto extract_fmt_cmpobl_reg
;
485 case 4 : itype
= I960BASE_INSN_CMPOBG_LIT
; goto extract_fmt_cmpobl_lit
;
486 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
491 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
494 case 0 : itype
= I960BASE_INSN_CMPOBE_REG
; goto extract_fmt_cmpobe_reg
;
495 case 4 : itype
= I960BASE_INSN_CMPOBE_LIT
; goto extract_fmt_cmpobe_lit
;
496 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
501 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
504 case 0 : itype
= I960BASE_INSN_CMPOBGE_REG
; goto extract_fmt_cmpobl_reg
;
505 case 4 : itype
= I960BASE_INSN_CMPOBGE_LIT
; goto extract_fmt_cmpobl_lit
;
506 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
511 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
514 case 0 : itype
= I960BASE_INSN_CMPOBL_REG
; goto extract_fmt_cmpobl_reg
;
515 case 4 : itype
= I960BASE_INSN_CMPOBL_LIT
; goto extract_fmt_cmpobl_lit
;
516 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
521 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
524 case 0 : itype
= I960BASE_INSN_CMPOBNE_REG
; goto extract_fmt_cmpobe_reg
;
525 case 4 : itype
= I960BASE_INSN_CMPOBNE_LIT
; goto extract_fmt_cmpobe_lit
;
526 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
531 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
534 case 0 : itype
= I960BASE_INSN_CMPOBLE_REG
; goto extract_fmt_cmpobl_reg
;
535 case 4 : itype
= I960BASE_INSN_CMPOBLE_LIT
; goto extract_fmt_cmpobl_lit
;
536 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
541 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
544 case 0 : itype
= I960BASE_INSN_BBS_REG
; goto extract_fmt_bbc_reg
;
545 case 4 : itype
= I960BASE_INSN_BBS_LIT
; goto extract_fmt_bbc_lit
;
546 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
551 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
554 case 0 : itype
= I960BASE_INSN_CMPIBG_REG
; goto extract_fmt_cmpobe_reg
;
555 case 4 : itype
= I960BASE_INSN_CMPIBG_LIT
; goto extract_fmt_cmpobe_lit
;
556 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
561 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
564 case 0 : itype
= I960BASE_INSN_CMPIBE_REG
; goto extract_fmt_cmpobe_reg
;
565 case 4 : itype
= I960BASE_INSN_CMPIBE_LIT
; goto extract_fmt_cmpobe_lit
;
566 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
571 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
574 case 0 : itype
= I960BASE_INSN_CMPIBGE_REG
; goto extract_fmt_cmpobe_reg
;
575 case 4 : itype
= I960BASE_INSN_CMPIBGE_LIT
; goto extract_fmt_cmpobe_lit
;
576 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
581 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
584 case 0 : itype
= I960BASE_INSN_CMPIBL_REG
; goto extract_fmt_cmpobe_reg
;
585 case 4 : itype
= I960BASE_INSN_CMPIBL_LIT
; goto extract_fmt_cmpobe_lit
;
586 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
591 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
594 case 0 : itype
= I960BASE_INSN_CMPIBNE_REG
; goto extract_fmt_cmpobe_reg
;
595 case 4 : itype
= I960BASE_INSN_CMPIBNE_LIT
; goto extract_fmt_cmpobe_lit
;
596 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
601 unsigned int val
= (((insn
>> 11) & (1 << 2)) | ((insn
>> 0) & (3 << 0)));
604 case 0 : itype
= I960BASE_INSN_CMPIBLE_REG
; goto extract_fmt_cmpobe_reg
;
605 case 4 : itype
= I960BASE_INSN_CMPIBLE_LIT
; goto extract_fmt_cmpobe_lit
;
606 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
611 unsigned int val
= (((insn
>> 10) & (15 << 0)));
616 unsigned int val
= (((insn
>> 6) & (15 << 0)));
619 case 0 : itype
= I960BASE_INSN_NOTBIT
; goto extract_fmt_notbit
;
620 case 2 : itype
= I960BASE_INSN_AND
; goto extract_fmt_mulo
;
621 case 4 : itype
= I960BASE_INSN_ANDNOT
; goto extract_fmt_mulo
;
622 case 6 : itype
= I960BASE_INSN_SETBIT
; goto extract_fmt_notbit
;
623 case 8 : itype
= I960BASE_INSN_NOTAND
; goto extract_fmt_mulo
;
624 case 12 : itype
= I960BASE_INSN_XOR
; goto extract_fmt_mulo
;
625 case 14 : itype
= I960BASE_INSN_OR
; goto extract_fmt_mulo
;
626 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
631 unsigned int val
= (((insn
>> 6) & (15 << 0)));
634 case 0 : itype
= I960BASE_INSN_NOR
; goto extract_fmt_mulo
;
635 case 2 : itype
= I960BASE_INSN_XNOR
; goto extract_fmt_mulo
;
636 case 4 : itype
= I960BASE_INSN_NOT
; goto extract_fmt_not
;
637 case 6 : itype
= I960BASE_INSN_ORNOT
; goto extract_fmt_mulo
;
638 case 8 : itype
= I960BASE_INSN_CLRBIT
; goto extract_fmt_notbit
;
639 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
644 unsigned int val
= (((insn
>> 6) & (15 << 0)));
647 case 0 : itype
= I960BASE_INSN_NOTBIT1
; goto extract_fmt_notbit1
;
648 case 2 : itype
= I960BASE_INSN_AND1
; goto extract_fmt_mulo1
;
649 case 4 : itype
= I960BASE_INSN_ANDNOT1
; goto extract_fmt_mulo1
;
650 case 6 : itype
= I960BASE_INSN_SETBIT1
; goto extract_fmt_notbit1
;
651 case 8 : itype
= I960BASE_INSN_NOTAND1
; goto extract_fmt_mulo1
;
652 case 12 : itype
= I960BASE_INSN_XOR1
; goto extract_fmt_mulo1
;
653 case 14 : itype
= I960BASE_INSN_OR1
; goto extract_fmt_mulo1
;
654 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
659 unsigned int val
= (((insn
>> 6) & (15 << 0)));
662 case 0 : itype
= I960BASE_INSN_NOR1
; goto extract_fmt_mulo1
;
663 case 2 : itype
= I960BASE_INSN_XNOR1
; goto extract_fmt_mulo1
;
664 case 4 : itype
= I960BASE_INSN_NOT1
; goto extract_fmt_not1
;
665 case 6 : itype
= I960BASE_INSN_ORNOT1
; goto extract_fmt_mulo1
;
666 case 8 : itype
= I960BASE_INSN_CLRBIT1
; goto extract_fmt_notbit1
;
667 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
672 unsigned int val
= (((insn
>> 6) & (15 << 0)));
675 case 0 : itype
= I960BASE_INSN_NOTBIT2
; goto extract_fmt_notbit2
;
676 case 2 : itype
= I960BASE_INSN_AND2
; goto extract_fmt_mulo2
;
677 case 4 : itype
= I960BASE_INSN_ANDNOT2
; goto extract_fmt_mulo2
;
678 case 6 : itype
= I960BASE_INSN_SETBIT2
; goto extract_fmt_notbit2
;
679 case 8 : itype
= I960BASE_INSN_NOTAND2
; goto extract_fmt_mulo2
;
680 case 12 : itype
= I960BASE_INSN_XOR2
; goto extract_fmt_mulo2
;
681 case 14 : itype
= I960BASE_INSN_OR2
; goto extract_fmt_mulo2
;
682 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
687 unsigned int val
= (((insn
>> 6) & (15 << 0)));
690 case 0 : itype
= I960BASE_INSN_NOR2
; goto extract_fmt_mulo2
;
691 case 2 : itype
= I960BASE_INSN_XNOR2
; goto extract_fmt_mulo2
;
692 case 4 : itype
= I960BASE_INSN_NOT2
; goto extract_fmt_not2
;
693 case 6 : itype
= I960BASE_INSN_ORNOT2
; goto extract_fmt_mulo2
;
694 case 8 : itype
= I960BASE_INSN_CLRBIT2
; goto extract_fmt_notbit2
;
695 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
700 unsigned int val
= (((insn
>> 6) & (15 << 0)));
703 case 0 : itype
= I960BASE_INSN_NOTBIT3
; goto extract_fmt_notbit3
;
704 case 2 : itype
= I960BASE_INSN_AND3
; goto extract_fmt_mulo3
;
705 case 4 : itype
= I960BASE_INSN_ANDNOT3
; goto extract_fmt_mulo3
;
706 case 6 : itype
= I960BASE_INSN_SETBIT3
; goto extract_fmt_notbit3
;
707 case 8 : itype
= I960BASE_INSN_NOTAND3
; goto extract_fmt_mulo3
;
708 case 12 : itype
= I960BASE_INSN_XOR3
; goto extract_fmt_mulo3
;
709 case 14 : itype
= I960BASE_INSN_OR3
; goto extract_fmt_mulo3
;
710 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
715 unsigned int val
= (((insn
>> 6) & (15 << 0)));
718 case 0 : itype
= I960BASE_INSN_NOR3
; goto extract_fmt_mulo3
;
719 case 2 : itype
= I960BASE_INSN_XNOR3
; goto extract_fmt_mulo3
;
720 case 4 : itype
= I960BASE_INSN_NOT3
; goto extract_fmt_not3
;
721 case 6 : itype
= I960BASE_INSN_ORNOT3
; goto extract_fmt_mulo3
;
722 case 8 : itype
= I960BASE_INSN_CLRBIT3
; goto extract_fmt_notbit3
;
723 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
726 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
731 unsigned int val
= (((insn
>> 10) & (15 << 0)));
736 unsigned int val
= (((insn
>> 6) & (15 << 0)));
739 case 0 : itype
= I960BASE_INSN_ADDO
; goto extract_fmt_mulo
;
740 case 4 : itype
= I960BASE_INSN_SUBO
; goto extract_fmt_mulo
;
741 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
746 unsigned int val
= (((insn
>> 6) & (15 << 0)));
749 case 0 : itype
= I960BASE_INSN_SHRO
; goto extract_fmt_shlo
;
750 case 6 : itype
= I960BASE_INSN_SHRI
; goto extract_fmt_shlo
;
751 case 8 : itype
= I960BASE_INSN_SHLO
; goto extract_fmt_shlo
;
752 case 12 : itype
= I960BASE_INSN_SHLI
; goto extract_fmt_shlo
;
753 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
758 unsigned int val
= (((insn
>> 6) & (15 << 0)));
761 case 0 : itype
= I960BASE_INSN_ADDO1
; goto extract_fmt_mulo1
;
762 case 4 : itype
= I960BASE_INSN_SUBO1
; goto extract_fmt_mulo1
;
763 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
768 unsigned int val
= (((insn
>> 6) & (15 << 0)));
771 case 0 : itype
= I960BASE_INSN_SHRO1
; goto extract_fmt_shlo1
;
772 case 6 : itype
= I960BASE_INSN_SHRI1
; goto extract_fmt_shlo1
;
773 case 8 : itype
= I960BASE_INSN_SHLO1
; goto extract_fmt_shlo1
;
774 case 12 : itype
= I960BASE_INSN_SHLI1
; goto extract_fmt_shlo1
;
775 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
780 unsigned int val
= (((insn
>> 6) & (15 << 0)));
783 case 0 : itype
= I960BASE_INSN_ADDO2
; goto extract_fmt_mulo2
;
784 case 4 : itype
= I960BASE_INSN_SUBO2
; goto extract_fmt_mulo2
;
785 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
790 unsigned int val
= (((insn
>> 6) & (15 << 0)));
793 case 0 : itype
= I960BASE_INSN_SHRO2
; goto extract_fmt_shlo2
;
794 case 6 : itype
= I960BASE_INSN_SHRI2
; goto extract_fmt_shlo2
;
795 case 8 : itype
= I960BASE_INSN_SHLO2
; goto extract_fmt_shlo2
;
796 case 12 : itype
= I960BASE_INSN_SHLI2
; goto extract_fmt_shlo2
;
797 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
802 unsigned int val
= (((insn
>> 6) & (15 << 0)));
805 case 0 : itype
= I960BASE_INSN_ADDO3
; goto extract_fmt_mulo3
;
806 case 4 : itype
= I960BASE_INSN_SUBO3
; goto extract_fmt_mulo3
;
807 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
812 unsigned int val
= (((insn
>> 6) & (15 << 0)));
815 case 0 : itype
= I960BASE_INSN_SHRO3
; goto extract_fmt_shlo3
;
816 case 6 : itype
= I960BASE_INSN_SHRI3
; goto extract_fmt_shlo3
;
817 case 8 : itype
= I960BASE_INSN_SHLO3
; goto extract_fmt_shlo3
;
818 case 12 : itype
= I960BASE_INSN_SHLI3
; goto extract_fmt_shlo3
;
819 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
822 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
827 unsigned int val
= (((insn
>> 10) & (15 << 0)));
832 unsigned int val
= (((insn
>> 6) & (15 << 0)));
835 case 0 : itype
= I960BASE_INSN_CMPO
; goto extract_fmt_cmpo
;
836 case 2 : itype
= I960BASE_INSN_CMPI
; goto extract_fmt_cmpi
;
837 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
842 unsigned int val
= (((insn
>> 6) & (15 << 0)));
845 case 0 : itype
= I960BASE_INSN_CMPO1
; goto extract_fmt_cmpo1
;
846 case 2 : itype
= I960BASE_INSN_CMPI1
; goto extract_fmt_cmpi1
;
847 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
852 unsigned int val
= (((insn
>> 6) & (15 << 0)));
855 case 0 : itype
= I960BASE_INSN_CMPO2
; goto extract_fmt_cmpo2
;
856 case 2 : itype
= I960BASE_INSN_CMPI2
; goto extract_fmt_cmpi2
;
857 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
862 unsigned int val
= (((insn
>> 6) & (15 << 0)));
865 case 0 : itype
= I960BASE_INSN_CMPO3
; goto extract_fmt_cmpo3
;
866 case 2 : itype
= I960BASE_INSN_CMPI3
; goto extract_fmt_cmpi3
;
867 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
870 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
875 unsigned int val
= (((insn
>> 10) & (15 << 0)));
878 case 5 : itype
= I960BASE_INSN_MOV
; goto extract_fmt_not2
;
879 case 7 : itype
= I960BASE_INSN_MOV1
; goto extract_fmt_not3
;
880 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
885 unsigned int val
= (((insn
>> 10) & (15 << 0)));
888 case 5 : itype
= I960BASE_INSN_MOVL
; goto extract_fmt_movl
;
889 case 7 : itype
= I960BASE_INSN_MOVL1
; goto extract_fmt_movl1
;
890 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
895 unsigned int val
= (((insn
>> 10) & (15 << 0)));
898 case 5 : itype
= I960BASE_INSN_MOVT
; goto extract_fmt_movt
;
899 case 7 : itype
= I960BASE_INSN_MOVT1
; goto extract_fmt_movt1
;
900 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
905 unsigned int val
= (((insn
>> 10) & (15 << 0)));
908 case 5 : itype
= I960BASE_INSN_MOVQ
; goto extract_fmt_movq
;
909 case 7 : itype
= I960BASE_INSN_MOVQ1
; goto extract_fmt_movq1
;
910 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
913 case 100 : itype
= I960BASE_INSN_MODAC
; goto extract_fmt_modpc
;
914 case 101 : itype
= I960BASE_INSN_MODPC
; goto extract_fmt_modpc
;
917 unsigned int val
= (((insn
>> 10) & (15 << 0)));
920 case 12 : itype
= I960BASE_INSN_CALLS
; goto extract_fmt_calls
;
923 unsigned int val
= (((insn
>> 6) & (15 << 0)));
926 case 8 : itype
= I960BASE_INSN_FMARK
; goto extract_fmt_fmark
;
927 case 10 : itype
= I960BASE_INSN_FLUSHREG
; goto extract_fmt_flushreg
;
928 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
931 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
936 unsigned int val
= (((insn
>> 10) & (15 << 0)));
939 case 0 : itype
= I960BASE_INSN_EMUL
; goto extract_fmt_emul
;
940 case 2 : itype
= I960BASE_INSN_EMUL1
; goto extract_fmt_emul1
;
941 case 4 : itype
= I960BASE_INSN_EMUL2
; goto extract_fmt_emul2
;
942 case 6 : itype
= I960BASE_INSN_EMUL3
; goto extract_fmt_emul3
;
943 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
948 unsigned int val
= (((insn
>> 10) & (15 << 0)));
951 case 0 : itype
= I960BASE_INSN_MULO
; goto extract_fmt_mulo
;
954 unsigned int val
= (((insn
>> 6) & (15 << 0)));
957 case 0 : itype
= I960BASE_INSN_REMO
; goto extract_fmt_mulo
;
958 case 6 : itype
= I960BASE_INSN_DIVO
; goto extract_fmt_mulo
;
959 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
962 case 2 : itype
= I960BASE_INSN_MULO1
; goto extract_fmt_mulo1
;
965 unsigned int val
= (((insn
>> 6) & (15 << 0)));
968 case 0 : itype
= I960BASE_INSN_REMO1
; goto extract_fmt_mulo1
;
969 case 6 : itype
= I960BASE_INSN_DIVO1
; goto extract_fmt_mulo1
;
970 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
973 case 4 : itype
= I960BASE_INSN_MULO2
; goto extract_fmt_mulo2
;
976 unsigned int val
= (((insn
>> 6) & (15 << 0)));
979 case 0 : itype
= I960BASE_INSN_REMO2
; goto extract_fmt_mulo2
;
980 case 6 : itype
= I960BASE_INSN_DIVO2
; goto extract_fmt_mulo2
;
981 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
984 case 6 : itype
= I960BASE_INSN_MULO3
; goto extract_fmt_mulo3
;
987 unsigned int val
= (((insn
>> 6) & (15 << 0)));
990 case 0 : itype
= I960BASE_INSN_REMO3
; goto extract_fmt_mulo3
;
991 case 6 : itype
= I960BASE_INSN_DIVO3
; goto extract_fmt_mulo3
;
992 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
995 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1000 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1005 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1008 case 0 : itype
= I960BASE_INSN_REMI
; goto extract_fmt_mulo
;
1009 case 6 : itype
= I960BASE_INSN_DIVI
; goto extract_fmt_mulo
;
1010 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1015 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1018 case 0 : itype
= I960BASE_INSN_REMI1
; goto extract_fmt_mulo1
;
1019 case 6 : itype
= I960BASE_INSN_DIVI1
; goto extract_fmt_mulo1
;
1020 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1025 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1028 case 0 : itype
= I960BASE_INSN_REMI2
; goto extract_fmt_mulo2
;
1029 case 6 : itype
= I960BASE_INSN_DIVI2
; goto extract_fmt_mulo2
;
1030 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1035 unsigned int val
= (((insn
>> 6) & (15 << 0)));
1038 case 0 : itype
= I960BASE_INSN_REMI3
; goto extract_fmt_mulo3
;
1039 case 6 : itype
= I960BASE_INSN_DIVI3
; goto extract_fmt_mulo3
;
1040 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1043 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1048 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1051 case 0 : /* fall through */
1052 case 1 : /* fall through */
1053 case 2 : /* fall through */
1054 case 3 : itype
= I960BASE_INSN_LDOB_OFFSET
; goto extract_fmt_ldob_offset
;
1055 case 4 : itype
= I960BASE_INSN_LDOB_INDIRECT
; goto extract_fmt_ldob_indirect
;
1056 case 7 : itype
= I960BASE_INSN_LDOB_INDIRECT_INDEX
; goto extract_fmt_ldob_indirect_index
;
1057 case 8 : /* fall through */
1058 case 9 : /* fall through */
1059 case 10 : /* fall through */
1060 case 11 : itype
= I960BASE_INSN_LDOB_INDIRECT_OFFSET
; goto extract_fmt_ldob_indirect_offset
;
1061 case 12 : itype
= I960BASE_INSN_LDOB_DISP
; goto extract_fmt_ldob_disp
;
1062 case 13 : itype
= I960BASE_INSN_LDOB_INDIRECT_DISP
; goto extract_fmt_ldob_indirect_disp
;
1063 case 14 : itype
= I960BASE_INSN_LDOB_INDEX_DISP
; goto extract_fmt_ldob_index_disp
;
1064 case 15 : itype
= I960BASE_INSN_LDOB_INDIRECT_INDEX_DISP
; goto extract_fmt_ldob_indirect_index_disp
;
1065 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1070 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1073 case 0 : /* fall through */
1074 case 1 : /* fall through */
1075 case 2 : /* fall through */
1076 case 3 : itype
= I960BASE_INSN_STOB_OFFSET
; goto extract_fmt_stob_offset
;
1077 case 4 : itype
= I960BASE_INSN_STOB_INDIRECT
; goto extract_fmt_stob_indirect
;
1078 case 7 : itype
= I960BASE_INSN_STOB_INDIRECT_INDEX
; goto extract_fmt_stob_indirect_index
;
1079 case 8 : /* fall through */
1080 case 9 : /* fall through */
1081 case 10 : /* fall through */
1082 case 11 : itype
= I960BASE_INSN_STOB_INDIRECT_OFFSET
; goto extract_fmt_stob_indirect_offset
;
1083 case 12 : itype
= I960BASE_INSN_STOB_DISP
; goto extract_fmt_stob_disp
;
1084 case 13 : itype
= I960BASE_INSN_STOB_INDIRECT_DISP
; goto extract_fmt_stob_indirect_disp
;
1085 case 14 : itype
= I960BASE_INSN_STOB_INDEX_DISP
; goto extract_fmt_stob_index_disp
;
1086 case 15 : itype
= I960BASE_INSN_STOB_INDIRECT_INDEX_DISP
; goto extract_fmt_stob_indirect_index_disp
;
1087 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1092 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1095 case 4 : itype
= I960BASE_INSN_BX_INDIRECT
; goto extract_fmt_bx_indirect
;
1096 case 7 : itype
= I960BASE_INSN_BX_INDIRECT_INDEX
; goto extract_fmt_bx_indirect_index
;
1097 case 8 : /* fall through */
1098 case 9 : /* fall through */
1099 case 10 : /* fall through */
1100 case 11 : itype
= I960BASE_INSN_BX_INDIRECT_OFFSET
; goto extract_fmt_bx_indirect_offset
;
1101 case 12 : itype
= I960BASE_INSN_BX_DISP
; goto extract_fmt_bx_disp
;
1102 case 13 : itype
= I960BASE_INSN_BX_INDIRECT_DISP
; goto extract_fmt_bx_indirect_disp
;
1103 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1108 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1111 case 4 : itype
= I960BASE_INSN_CALLX_INDIRECT
; goto extract_fmt_callx_indirect
;
1112 case 8 : /* fall through */
1113 case 9 : /* fall through */
1114 case 10 : /* fall through */
1115 case 11 : itype
= I960BASE_INSN_CALLX_INDIRECT_OFFSET
; goto extract_fmt_callx_indirect_offset
;
1116 case 12 : itype
= I960BASE_INSN_CALLX_DISP
; goto extract_fmt_callx_disp
;
1117 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1122 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1125 case 0 : /* fall through */
1126 case 1 : /* fall through */
1127 case 2 : /* fall through */
1128 case 3 : itype
= I960BASE_INSN_LDOS_OFFSET
; goto extract_fmt_ldos_offset
;
1129 case 4 : itype
= I960BASE_INSN_LDOS_INDIRECT
; goto extract_fmt_ldos_indirect
;
1130 case 7 : itype
= I960BASE_INSN_LDOS_INDIRECT_INDEX
; goto extract_fmt_ldos_indirect_index
;
1131 case 8 : /* fall through */
1132 case 9 : /* fall through */
1133 case 10 : /* fall through */
1134 case 11 : itype
= I960BASE_INSN_LDOS_INDIRECT_OFFSET
; goto extract_fmt_ldos_indirect_offset
;
1135 case 12 : itype
= I960BASE_INSN_LDOS_DISP
; goto extract_fmt_ldos_disp
;
1136 case 13 : itype
= I960BASE_INSN_LDOS_INDIRECT_DISP
; goto extract_fmt_ldos_indirect_disp
;
1137 case 14 : itype
= I960BASE_INSN_LDOS_INDEX_DISP
; goto extract_fmt_ldos_index_disp
;
1138 case 15 : itype
= I960BASE_INSN_LDOS_INDIRECT_INDEX_DISP
; goto extract_fmt_ldos_indirect_index_disp
;
1139 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1144 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1147 case 0 : /* fall through */
1148 case 1 : /* fall through */
1149 case 2 : /* fall through */
1150 case 3 : itype
= I960BASE_INSN_STOS_OFFSET
; goto extract_fmt_stos_offset
;
1151 case 4 : itype
= I960BASE_INSN_STOS_INDIRECT
; goto extract_fmt_stos_indirect
;
1152 case 7 : itype
= I960BASE_INSN_STOS_INDIRECT_INDEX
; goto extract_fmt_stos_indirect_index
;
1153 case 8 : /* fall through */
1154 case 9 : /* fall through */
1155 case 10 : /* fall through */
1156 case 11 : itype
= I960BASE_INSN_STOS_INDIRECT_OFFSET
; goto extract_fmt_stos_indirect_offset
;
1157 case 12 : itype
= I960BASE_INSN_STOS_DISP
; goto extract_fmt_stos_disp
;
1158 case 13 : itype
= I960BASE_INSN_STOS_INDIRECT_DISP
; goto extract_fmt_stos_indirect_disp
;
1159 case 14 : itype
= I960BASE_INSN_STOS_INDEX_DISP
; goto extract_fmt_stos_index_disp
;
1160 case 15 : itype
= I960BASE_INSN_STOS_INDIRECT_INDEX_DISP
; goto extract_fmt_stos_indirect_index_disp
;
1161 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1166 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1169 case 0 : /* fall through */
1170 case 1 : /* fall through */
1171 case 2 : /* fall through */
1172 case 3 : itype
= I960BASE_INSN_LDA_OFFSET
; goto extract_fmt_lda_offset
;
1173 case 4 : itype
= I960BASE_INSN_LDA_INDIRECT
; goto extract_fmt_lda_indirect
;
1174 case 7 : itype
= I960BASE_INSN_LDA_INDIRECT_INDEX
; goto extract_fmt_lda_indirect_index
;
1175 case 8 : /* fall through */
1176 case 9 : /* fall through */
1177 case 10 : /* fall through */
1178 case 11 : itype
= I960BASE_INSN_LDA_INDIRECT_OFFSET
; goto extract_fmt_lda_indirect_offset
;
1179 case 12 : itype
= I960BASE_INSN_LDA_DISP
; goto extract_fmt_lda_disp
;
1180 case 13 : itype
= I960BASE_INSN_LDA_INDIRECT_DISP
; goto extract_fmt_lda_indirect_disp
;
1181 case 14 : itype
= I960BASE_INSN_LDA_INDEX_DISP
; goto extract_fmt_lda_index_disp
;
1182 case 15 : itype
= I960BASE_INSN_LDA_INDIRECT_INDEX_DISP
; goto extract_fmt_lda_indirect_index_disp
;
1183 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1188 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1191 case 0 : /* fall through */
1192 case 1 : /* fall through */
1193 case 2 : /* fall through */
1194 case 3 : itype
= I960BASE_INSN_LD_OFFSET
; goto extract_fmt_ld_offset
;
1195 case 4 : itype
= I960BASE_INSN_LD_INDIRECT
; goto extract_fmt_ld_indirect
;
1196 case 7 : itype
= I960BASE_INSN_LD_INDIRECT_INDEX
; goto extract_fmt_ld_indirect_index
;
1197 case 8 : /* fall through */
1198 case 9 : /* fall through */
1199 case 10 : /* fall through */
1200 case 11 : itype
= I960BASE_INSN_LD_INDIRECT_OFFSET
; goto extract_fmt_ld_indirect_offset
;
1201 case 12 : itype
= I960BASE_INSN_LD_DISP
; goto extract_fmt_ld_disp
;
1202 case 13 : itype
= I960BASE_INSN_LD_INDIRECT_DISP
; goto extract_fmt_ld_indirect_disp
;
1203 case 14 : itype
= I960BASE_INSN_LD_INDEX_DISP
; goto extract_fmt_ld_index_disp
;
1204 case 15 : itype
= I960BASE_INSN_LD_INDIRECT_INDEX_DISP
; goto extract_fmt_ld_indirect_index_disp
;
1205 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1210 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1213 case 0 : /* fall through */
1214 case 1 : /* fall through */
1215 case 2 : /* fall through */
1216 case 3 : itype
= I960BASE_INSN_ST_OFFSET
; goto extract_fmt_st_offset
;
1217 case 4 : itype
= I960BASE_INSN_ST_INDIRECT
; goto extract_fmt_st_indirect
;
1218 case 7 : itype
= I960BASE_INSN_ST_INDIRECT_INDEX
; goto extract_fmt_st_indirect_index
;
1219 case 8 : /* fall through */
1220 case 9 : /* fall through */
1221 case 10 : /* fall through */
1222 case 11 : itype
= I960BASE_INSN_ST_INDIRECT_OFFSET
; goto extract_fmt_st_indirect_offset
;
1223 case 12 : itype
= I960BASE_INSN_ST_DISP
; goto extract_fmt_st_disp
;
1224 case 13 : itype
= I960BASE_INSN_ST_INDIRECT_DISP
; goto extract_fmt_st_indirect_disp
;
1225 case 14 : itype
= I960BASE_INSN_ST_INDEX_DISP
; goto extract_fmt_st_index_disp
;
1226 case 15 : itype
= I960BASE_INSN_ST_INDIRECT_INDEX_DISP
; goto extract_fmt_st_indirect_index_disp
;
1227 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1232 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1235 case 0 : /* fall through */
1236 case 1 : /* fall through */
1237 case 2 : /* fall through */
1238 case 3 : itype
= I960BASE_INSN_LDL_OFFSET
; goto extract_fmt_ldl_offset
;
1239 case 4 : itype
= I960BASE_INSN_LDL_INDIRECT
; goto extract_fmt_ldl_indirect
;
1240 case 7 : itype
= I960BASE_INSN_LDL_INDIRECT_INDEX
; goto extract_fmt_ldl_indirect_index
;
1241 case 8 : /* fall through */
1242 case 9 : /* fall through */
1243 case 10 : /* fall through */
1244 case 11 : itype
= I960BASE_INSN_LDL_INDIRECT_OFFSET
; goto extract_fmt_ldl_indirect_offset
;
1245 case 12 : itype
= I960BASE_INSN_LDL_DISP
; goto extract_fmt_ldl_disp
;
1246 case 13 : itype
= I960BASE_INSN_LDL_INDIRECT_DISP
; goto extract_fmt_ldl_indirect_disp
;
1247 case 14 : itype
= I960BASE_INSN_LDL_INDEX_DISP
; goto extract_fmt_ldl_index_disp
;
1248 case 15 : itype
= I960BASE_INSN_LDL_INDIRECT_INDEX_DISP
; goto extract_fmt_ldl_indirect_index_disp
;
1249 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1254 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1257 case 0 : /* fall through */
1258 case 1 : /* fall through */
1259 case 2 : /* fall through */
1260 case 3 : itype
= I960BASE_INSN_STL_OFFSET
; goto extract_fmt_stl_offset
;
1261 case 4 : itype
= I960BASE_INSN_STL_INDIRECT
; goto extract_fmt_stl_indirect
;
1262 case 7 : itype
= I960BASE_INSN_STL_INDIRECT_INDEX
; goto extract_fmt_stl_indirect_index
;
1263 case 8 : /* fall through */
1264 case 9 : /* fall through */
1265 case 10 : /* fall through */
1266 case 11 : itype
= I960BASE_INSN_STL_INDIRECT_OFFSET
; goto extract_fmt_stl_indirect_offset
;
1267 case 12 : itype
= I960BASE_INSN_STL_DISP
; goto extract_fmt_stl_disp
;
1268 case 13 : itype
= I960BASE_INSN_STL_INDIRECT_DISP
; goto extract_fmt_stl_indirect_disp
;
1269 case 14 : itype
= I960BASE_INSN_STL_INDEX_DISP
; goto extract_fmt_stl_index_disp
;
1270 case 15 : itype
= I960BASE_INSN_STL_INDIRECT_INDEX_DISP
; goto extract_fmt_stl_indirect_index_disp
;
1271 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1276 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1279 case 0 : /* fall through */
1280 case 1 : /* fall through */
1281 case 2 : /* fall through */
1282 case 3 : itype
= I960BASE_INSN_LDT_OFFSET
; goto extract_fmt_ldt_offset
;
1283 case 4 : itype
= I960BASE_INSN_LDT_INDIRECT
; goto extract_fmt_ldt_indirect
;
1284 case 7 : itype
= I960BASE_INSN_LDT_INDIRECT_INDEX
; goto extract_fmt_ldt_indirect_index
;
1285 case 8 : /* fall through */
1286 case 9 : /* fall through */
1287 case 10 : /* fall through */
1288 case 11 : itype
= I960BASE_INSN_LDT_INDIRECT_OFFSET
; goto extract_fmt_ldt_indirect_offset
;
1289 case 12 : itype
= I960BASE_INSN_LDT_DISP
; goto extract_fmt_ldt_disp
;
1290 case 13 : itype
= I960BASE_INSN_LDT_INDIRECT_DISP
; goto extract_fmt_ldt_indirect_disp
;
1291 case 14 : itype
= I960BASE_INSN_LDT_INDEX_DISP
; goto extract_fmt_ldt_index_disp
;
1292 case 15 : itype
= I960BASE_INSN_LDT_INDIRECT_INDEX_DISP
; goto extract_fmt_ldt_indirect_index_disp
;
1293 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1298 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1301 case 0 : /* fall through */
1302 case 1 : /* fall through */
1303 case 2 : /* fall through */
1304 case 3 : itype
= I960BASE_INSN_STT_OFFSET
; goto extract_fmt_stt_offset
;
1305 case 4 : itype
= I960BASE_INSN_STT_INDIRECT
; goto extract_fmt_stt_indirect
;
1306 case 7 : itype
= I960BASE_INSN_STT_INDIRECT_INDEX
; goto extract_fmt_stt_indirect_index
;
1307 case 8 : /* fall through */
1308 case 9 : /* fall through */
1309 case 10 : /* fall through */
1310 case 11 : itype
= I960BASE_INSN_STT_INDIRECT_OFFSET
; goto extract_fmt_stt_indirect_offset
;
1311 case 12 : itype
= I960BASE_INSN_STT_DISP
; goto extract_fmt_stt_disp
;
1312 case 13 : itype
= I960BASE_INSN_STT_INDIRECT_DISP
; goto extract_fmt_stt_indirect_disp
;
1313 case 14 : itype
= I960BASE_INSN_STT_INDEX_DISP
; goto extract_fmt_stt_index_disp
;
1314 case 15 : itype
= I960BASE_INSN_STT_INDIRECT_INDEX_DISP
; goto extract_fmt_stt_indirect_index_disp
;
1315 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1320 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1323 case 0 : /* fall through */
1324 case 1 : /* fall through */
1325 case 2 : /* fall through */
1326 case 3 : itype
= I960BASE_INSN_LDQ_OFFSET
; goto extract_fmt_ldq_offset
;
1327 case 4 : itype
= I960BASE_INSN_LDQ_INDIRECT
; goto extract_fmt_ldq_indirect
;
1328 case 7 : itype
= I960BASE_INSN_LDQ_INDIRECT_INDEX
; goto extract_fmt_ldq_indirect_index
;
1329 case 8 : /* fall through */
1330 case 9 : /* fall through */
1331 case 10 : /* fall through */
1332 case 11 : itype
= I960BASE_INSN_LDQ_INDIRECT_OFFSET
; goto extract_fmt_ldq_indirect_offset
;
1333 case 12 : itype
= I960BASE_INSN_LDQ_DISP
; goto extract_fmt_ldq_disp
;
1334 case 13 : itype
= I960BASE_INSN_LDQ_INDIRECT_DISP
; goto extract_fmt_ldq_indirect_disp
;
1335 case 14 : itype
= I960BASE_INSN_LDQ_INDEX_DISP
; goto extract_fmt_ldq_index_disp
;
1336 case 15 : itype
= I960BASE_INSN_LDQ_INDIRECT_INDEX_DISP
; goto extract_fmt_ldq_indirect_index_disp
;
1337 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1342 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1345 case 0 : /* fall through */
1346 case 1 : /* fall through */
1347 case 2 : /* fall through */
1348 case 3 : itype
= I960BASE_INSN_STQ_OFFSET
; goto extract_fmt_stq_offset
;
1349 case 4 : itype
= I960BASE_INSN_STQ_INDIRECT
; goto extract_fmt_stq_indirect
;
1350 case 7 : itype
= I960BASE_INSN_STQ_INDIRECT_INDEX
; goto extract_fmt_stq_indirect_index
;
1351 case 8 : /* fall through */
1352 case 9 : /* fall through */
1353 case 10 : /* fall through */
1354 case 11 : itype
= I960BASE_INSN_STQ_INDIRECT_OFFSET
; goto extract_fmt_stq_indirect_offset
;
1355 case 12 : itype
= I960BASE_INSN_STQ_DISP
; goto extract_fmt_stq_disp
;
1356 case 13 : itype
= I960BASE_INSN_STQ_INDIRECT_DISP
; goto extract_fmt_stq_indirect_disp
;
1357 case 14 : itype
= I960BASE_INSN_STQ_INDEX_DISP
; goto extract_fmt_stq_index_disp
;
1358 case 15 : itype
= I960BASE_INSN_STQ_INDIRECT_INDEX_DISP
; goto extract_fmt_stq_indirect_index_disp
;
1359 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1364 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1367 case 0 : /* fall through */
1368 case 1 : /* fall through */
1369 case 2 : /* fall through */
1370 case 3 : itype
= I960BASE_INSN_LDIB_OFFSET
; goto extract_fmt_ldib_offset
;
1371 case 4 : itype
= I960BASE_INSN_LDIB_INDIRECT
; goto extract_fmt_ldib_indirect
;
1372 case 7 : itype
= I960BASE_INSN_LDIB_INDIRECT_INDEX
; goto extract_fmt_ldib_indirect_index
;
1373 case 8 : /* fall through */
1374 case 9 : /* fall through */
1375 case 10 : /* fall through */
1376 case 11 : itype
= I960BASE_INSN_LDIB_INDIRECT_OFFSET
; goto extract_fmt_ldib_indirect_offset
;
1377 case 12 : itype
= I960BASE_INSN_LDIB_DISP
; goto extract_fmt_ldib_disp
;
1378 case 13 : itype
= I960BASE_INSN_LDIB_INDIRECT_DISP
; goto extract_fmt_ldib_indirect_disp
;
1379 case 14 : itype
= I960BASE_INSN_LDIB_INDEX_DISP
; goto extract_fmt_ldib_index_disp
;
1380 case 15 : itype
= I960BASE_INSN_LDIB_INDIRECT_INDEX_DISP
; goto extract_fmt_ldib_indirect_index_disp
;
1381 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1386 unsigned int val
= (((insn
>> 10) & (15 << 0)));
1389 case 0 : /* fall through */
1390 case 1 : /* fall through */
1391 case 2 : /* fall through */
1392 case 3 : itype
= I960BASE_INSN_LDIS_OFFSET
; goto extract_fmt_ldis_offset
;
1393 case 4 : itype
= I960BASE_INSN_LDIS_INDIRECT
; goto extract_fmt_ldis_indirect
;
1394 case 7 : itype
= I960BASE_INSN_LDIS_INDIRECT_INDEX
; goto extract_fmt_ldis_indirect_index
;
1395 case 8 : /* fall through */
1396 case 9 : /* fall through */
1397 case 10 : /* fall through */
1398 case 11 : itype
= I960BASE_INSN_LDIS_INDIRECT_OFFSET
; goto extract_fmt_ldis_indirect_offset
;
1399 case 12 : itype
= I960BASE_INSN_LDIS_DISP
; goto extract_fmt_ldis_disp
;
1400 case 13 : itype
= I960BASE_INSN_LDIS_INDIRECT_DISP
; goto extract_fmt_ldis_indirect_disp
;
1401 case 14 : itype
= I960BASE_INSN_LDIS_INDEX_DISP
; goto extract_fmt_ldis_index_disp
;
1402 case 15 : itype
= I960BASE_INSN_LDIS_INDIRECT_INDEX_DISP
; goto extract_fmt_ldis_indirect_index_disp
;
1403 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1406 default : itype
= I960BASE_INSN_X_INVALID
; goto extract_fmt_empty
;
1411 /* The instruction has been decoded, now extract the fields. */
1415 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1416 CGEN_INSN_INT insn
= base_insn
;
1417 #define FLD(f) abuf->fields.fmt_empty.f
1418 EXTRACT_IFMT_EMPTY_VARS
/* */
1420 EXTRACT_IFMT_EMPTY_CODE
1422 /* Record the fields for the semantic handler. */
1423 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_empty", (char *) 0));
1431 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1432 CGEN_INSN_INT insn
= base_insn
;
1433 #define FLD(f) abuf->fields.fmt_mulo.f
1434 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1436 EXTRACT_IFMT_MULO_CODE
1438 /* Record the fields for the semantic handler. */
1439 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1440 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
1441 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1442 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));
1444 #if WITH_PROFILE_MODEL_P
1445 /* Record the fields for profiling. */
1446 if (PROFILE_MODEL_P (current_cpu
))
1448 FLD (in_src1
) = f_src1
;
1449 FLD (in_src2
) = f_src2
;
1450 FLD (out_dst
) = f_srcdst
;
1459 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1460 CGEN_INSN_INT insn
= base_insn
;
1461 #define FLD(f) abuf->fields.fmt_mulo1.f
1462 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1464 EXTRACT_IFMT_MULO1_CODE
1466 /* Record the fields for the semantic handler. */
1467 FLD (f_src1
) = f_src1
;
1468 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
1469 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1470 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));
1472 #if WITH_PROFILE_MODEL_P
1473 /* Record the fields for profiling. */
1474 if (PROFILE_MODEL_P (current_cpu
))
1476 FLD (in_src2
) = f_src2
;
1477 FLD (out_dst
) = f_srcdst
;
1486 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1487 CGEN_INSN_INT insn
= base_insn
;
1488 #define FLD(f) abuf->fields.fmt_mulo2.f
1489 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1491 EXTRACT_IFMT_MULO2_CODE
1493 /* Record the fields for the semantic handler. */
1494 FLD (f_src2
) = f_src2
;
1495 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1496 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1497 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));
1499 #if WITH_PROFILE_MODEL_P
1500 /* Record the fields for profiling. */
1501 if (PROFILE_MODEL_P (current_cpu
))
1503 FLD (in_src1
) = f_src1
;
1504 FLD (out_dst
) = f_srcdst
;
1513 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1514 CGEN_INSN_INT insn
= base_insn
;
1515 #define FLD(f) abuf->fields.fmt_mulo3.f
1516 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1518 EXTRACT_IFMT_MULO3_CODE
1520 /* Record the fields for the semantic handler. */
1521 FLD (f_src1
) = f_src1
;
1522 FLD (f_src2
) = f_src2
;
1523 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1524 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));
1526 #if WITH_PROFILE_MODEL_P
1527 /* Record the fields for profiling. */
1528 if (PROFILE_MODEL_P (current_cpu
))
1530 FLD (out_dst
) = f_srcdst
;
1539 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1540 CGEN_INSN_INT insn
= base_insn
;
1541 #define FLD(f) abuf->fields.fmt_notbit.f
1542 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1544 EXTRACT_IFMT_MULO_CODE
1546 /* Record the fields for the semantic handler. */
1547 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1548 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
1549 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1550 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));
1552 #if WITH_PROFILE_MODEL_P
1553 /* Record the fields for profiling. */
1554 if (PROFILE_MODEL_P (current_cpu
))
1556 FLD (in_src1
) = f_src1
;
1557 FLD (in_src2
) = f_src2
;
1558 FLD (out_dst
) = f_srcdst
;
1565 extract_fmt_notbit1
:
1567 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1568 CGEN_INSN_INT insn
= base_insn
;
1569 #define FLD(f) abuf->fields.fmt_notbit1.f
1570 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1572 EXTRACT_IFMT_MULO1_CODE
1574 /* Record the fields for the semantic handler. */
1575 FLD (f_src1
) = f_src1
;
1576 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
1577 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1578 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));
1580 #if WITH_PROFILE_MODEL_P
1581 /* Record the fields for profiling. */
1582 if (PROFILE_MODEL_P (current_cpu
))
1584 FLD (in_src2
) = f_src2
;
1585 FLD (out_dst
) = f_srcdst
;
1592 extract_fmt_notbit2
:
1594 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1595 CGEN_INSN_INT insn
= base_insn
;
1596 #define FLD(f) abuf->fields.fmt_notbit2.f
1597 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1599 EXTRACT_IFMT_MULO2_CODE
1601 /* Record the fields for the semantic handler. */
1602 FLD (f_src2
) = f_src2
;
1603 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1604 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1605 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));
1607 #if WITH_PROFILE_MODEL_P
1608 /* Record the fields for profiling. */
1609 if (PROFILE_MODEL_P (current_cpu
))
1611 FLD (in_src1
) = f_src1
;
1612 FLD (out_dst
) = f_srcdst
;
1619 extract_fmt_notbit3
:
1621 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1622 CGEN_INSN_INT insn
= base_insn
;
1623 #define FLD(f) abuf->fields.fmt_notbit3.f
1624 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1626 EXTRACT_IFMT_MULO3_CODE
1628 /* Record the fields for the semantic handler. */
1629 FLD (f_src1
) = f_src1
;
1630 FLD (f_src2
) = f_src2
;
1631 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1632 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));
1634 #if WITH_PROFILE_MODEL_P
1635 /* Record the fields for profiling. */
1636 if (PROFILE_MODEL_P (current_cpu
))
1638 FLD (out_dst
) = f_srcdst
;
1647 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1648 CGEN_INSN_INT insn
= base_insn
;
1649 #define FLD(f) abuf->fields.fmt_not.f
1650 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1652 EXTRACT_IFMT_MULO_CODE
1654 /* Record the fields for the semantic handler. */
1655 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1656 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1657 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_not", "src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
1659 #if WITH_PROFILE_MODEL_P
1660 /* Record the fields for profiling. */
1661 if (PROFILE_MODEL_P (current_cpu
))
1663 FLD (in_src1
) = f_src1
;
1664 FLD (out_dst
) = f_srcdst
;
1673 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1674 CGEN_INSN_INT insn
= base_insn
;
1675 #define FLD(f) abuf->fields.fmt_not1.f
1676 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1678 EXTRACT_IFMT_MULO1_CODE
1680 /* Record the fields for the semantic handler. */
1681 FLD (f_src1
) = f_src1
;
1682 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1683 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));
1685 #if WITH_PROFILE_MODEL_P
1686 /* Record the fields for profiling. */
1687 if (PROFILE_MODEL_P (current_cpu
))
1689 FLD (out_dst
) = f_srcdst
;
1698 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1699 CGEN_INSN_INT insn
= base_insn
;
1700 #define FLD(f) abuf->fields.fmt_not2.f
1701 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1703 EXTRACT_IFMT_MULO2_CODE
1705 /* Record the fields for the semantic handler. */
1706 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1707 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1708 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_not2", "src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
1710 #if WITH_PROFILE_MODEL_P
1711 /* Record the fields for profiling. */
1712 if (PROFILE_MODEL_P (current_cpu
))
1714 FLD (in_src1
) = f_src1
;
1715 FLD (out_dst
) = f_srcdst
;
1724 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1725 CGEN_INSN_INT insn
= base_insn
;
1726 #define FLD(f) abuf->fields.fmt_not3.f
1727 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1729 EXTRACT_IFMT_MULO3_CODE
1731 /* Record the fields for the semantic handler. */
1732 FLD (f_src1
) = f_src1
;
1733 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1734 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));
1736 #if WITH_PROFILE_MODEL_P
1737 /* Record the fields for profiling. */
1738 if (PROFILE_MODEL_P (current_cpu
))
1740 FLD (out_dst
) = f_srcdst
;
1749 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1750 CGEN_INSN_INT insn
= base_insn
;
1751 #define FLD(f) abuf->fields.fmt_shlo.f
1752 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1754 EXTRACT_IFMT_MULO_CODE
1756 /* Record the fields for the semantic handler. */
1757 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1758 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
1759 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1760 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_shlo", "src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
1762 #if WITH_PROFILE_MODEL_P
1763 /* Record the fields for profiling. */
1764 if (PROFILE_MODEL_P (current_cpu
))
1766 FLD (in_src1
) = f_src1
;
1767 FLD (in_src2
) = f_src2
;
1768 FLD (out_dst
) = f_srcdst
;
1777 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1778 CGEN_INSN_INT insn
= base_insn
;
1779 #define FLD(f) abuf->fields.fmt_shlo1.f
1780 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1782 EXTRACT_IFMT_MULO1_CODE
1784 /* Record the fields for the semantic handler. */
1785 FLD (f_src1
) = f_src1
;
1786 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
1787 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1788 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_shlo1", "f_src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
1790 #if WITH_PROFILE_MODEL_P
1791 /* Record the fields for profiling. */
1792 if (PROFILE_MODEL_P (current_cpu
))
1794 FLD (in_src2
) = f_src2
;
1795 FLD (out_dst
) = f_srcdst
;
1804 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1805 CGEN_INSN_INT insn
= base_insn
;
1806 #define FLD(f) abuf->fields.fmt_shlo2.f
1807 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1809 EXTRACT_IFMT_MULO2_CODE
1811 /* Record the fields for the semantic handler. */
1812 FLD (f_src2
) = f_src2
;
1813 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1814 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1815 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_shlo2", "f_src2 0x%x", 'x', f_src2
, "src1 0x%x", 'x', f_src1
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
1817 #if WITH_PROFILE_MODEL_P
1818 /* Record the fields for profiling. */
1819 if (PROFILE_MODEL_P (current_cpu
))
1821 FLD (in_src1
) = f_src1
;
1822 FLD (out_dst
) = f_srcdst
;
1831 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1832 CGEN_INSN_INT insn
= base_insn
;
1833 #define FLD(f) abuf->fields.fmt_shlo3.f
1834 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1836 EXTRACT_IFMT_MULO3_CODE
1838 /* Record the fields for the semantic handler. */
1839 FLD (f_src1
) = f_src1
;
1840 FLD (f_src2
) = f_src2
;
1841 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1842 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_shlo3", "f_src1 0x%x", 'x', f_src1
, "f_src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
1844 #if WITH_PROFILE_MODEL_P
1845 /* Record the fields for profiling. */
1846 if (PROFILE_MODEL_P (current_cpu
))
1848 FLD (out_dst
) = f_srcdst
;
1857 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1858 CGEN_INSN_INT insn
= base_insn
;
1859 #define FLD(f) abuf->fields.fmt_emul.f
1860 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1862 EXTRACT_IFMT_MULO_CODE
1864 /* Record the fields for the semantic handler. */
1865 FLD (f_srcdst
) = f_srcdst
;
1866 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1867 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
1868 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1869 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));
1871 #if WITH_PROFILE_MODEL_P
1872 /* Record the fields for profiling. */
1873 if (PROFILE_MODEL_P (current_cpu
))
1875 FLD (in_src1
) = f_src1
;
1876 FLD (in_src2
) = f_src2
;
1877 FLD (out_dst
) = f_srcdst
;
1878 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
1887 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1888 CGEN_INSN_INT insn
= base_insn
;
1889 #define FLD(f) abuf->fields.fmt_emul1.f
1890 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1892 EXTRACT_IFMT_MULO1_CODE
1894 /* Record the fields for the semantic handler. */
1895 FLD (f_srcdst
) = f_srcdst
;
1896 FLD (f_src1
) = f_src1
;
1897 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
1898 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1899 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));
1901 #if WITH_PROFILE_MODEL_P
1902 /* Record the fields for profiling. */
1903 if (PROFILE_MODEL_P (current_cpu
))
1905 FLD (in_src2
) = f_src2
;
1906 FLD (out_dst
) = f_srcdst
;
1907 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
1916 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1917 CGEN_INSN_INT insn
= base_insn
;
1918 #define FLD(f) abuf->fields.fmt_emul2.f
1919 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1921 EXTRACT_IFMT_MULO2_CODE
1923 /* Record the fields for the semantic handler. */
1924 FLD (f_srcdst
) = f_srcdst
;
1925 FLD (f_src2
) = f_src2
;
1926 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
1927 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1928 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));
1930 #if WITH_PROFILE_MODEL_P
1931 /* Record the fields for profiling. */
1932 if (PROFILE_MODEL_P (current_cpu
))
1934 FLD (in_src1
) = f_src1
;
1935 FLD (out_dst
) = f_srcdst
;
1936 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
1945 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1946 CGEN_INSN_INT insn
= base_insn
;
1947 #define FLD(f) abuf->fields.fmt_emul3.f
1948 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1950 EXTRACT_IFMT_MULO3_CODE
1952 /* Record the fields for the semantic handler. */
1953 FLD (f_srcdst
) = f_srcdst
;
1954 FLD (f_src1
) = f_src1
;
1955 FLD (f_src2
) = f_src2
;
1956 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
1957 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));
1959 #if WITH_PROFILE_MODEL_P
1960 /* Record the fields for profiling. */
1961 if (PROFILE_MODEL_P (current_cpu
))
1963 FLD (out_dst
) = f_srcdst
;
1964 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
1973 const IDESC
*idesc
= &i960base_insn_data
[itype
];
1974 CGEN_INSN_INT insn
= base_insn
;
1975 #define FLD(f) abuf->fields.fmt_movl.f
1976 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
1978 EXTRACT_IFMT_MULO2_CODE
1980 /* Record the fields for the semantic handler. */
1981 FLD (f_src1
) = f_src1
;
1982 FLD (f_srcdst
) = f_srcdst
;
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_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));
1987 #if WITH_PROFILE_MODEL_P
1988 /* Record the fields for profiling. */
1989 if (PROFILE_MODEL_P (current_cpu
))
1991 FLD (in_h_gr_add__VM_index_of_src1_1
) = ((FLD (f_src1
)) + (1));
1992 FLD (in_src1
) = f_src1
;
1993 FLD (out_dst
) = f_srcdst
;
1994 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
2003 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2004 CGEN_INSN_INT insn
= base_insn
;
2005 #define FLD(f) abuf->fields.fmt_movl1.f
2006 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2008 EXTRACT_IFMT_MULO3_CODE
2010 /* Record the fields for the semantic handler. */
2011 FLD (f_srcdst
) = f_srcdst
;
2012 FLD (f_src1
) = f_src1
;
2013 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2014 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));
2016 #if WITH_PROFILE_MODEL_P
2017 /* Record the fields for profiling. */
2018 if (PROFILE_MODEL_P (current_cpu
))
2020 FLD (out_dst
) = f_srcdst
;
2021 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
2030 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2031 CGEN_INSN_INT insn
= base_insn
;
2032 #define FLD(f) abuf->fields.fmt_movt.f
2033 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2035 EXTRACT_IFMT_MULO2_CODE
2037 /* Record the fields for the semantic handler. */
2038 FLD (f_src1
) = f_src1
;
2039 FLD (f_srcdst
) = f_srcdst
;
2040 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
2041 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2042 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));
2044 #if WITH_PROFILE_MODEL_P
2045 /* Record the fields for profiling. */
2046 if (PROFILE_MODEL_P (current_cpu
))
2048 FLD (in_h_gr_add__VM_index_of_src1_1
) = ((FLD (f_src1
)) + (1));
2049 FLD (in_h_gr_add__VM_index_of_src1_2
) = ((FLD (f_src1
)) + (2));
2050 FLD (in_src1
) = f_src1
;
2051 FLD (out_dst
) = f_srcdst
;
2052 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
2053 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
2062 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2063 CGEN_INSN_INT insn
= base_insn
;
2064 #define FLD(f) abuf->fields.fmt_movt1.f
2065 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2067 EXTRACT_IFMT_MULO3_CODE
2069 /* Record the fields for the semantic handler. */
2070 FLD (f_srcdst
) = f_srcdst
;
2071 FLD (f_src1
) = f_src1
;
2072 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2073 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));
2075 #if WITH_PROFILE_MODEL_P
2076 /* Record the fields for profiling. */
2077 if (PROFILE_MODEL_P (current_cpu
))
2079 FLD (out_dst
) = f_srcdst
;
2080 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
2081 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
2090 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2091 CGEN_INSN_INT insn
= base_insn
;
2092 #define FLD(f) abuf->fields.fmt_movq.f
2093 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2095 EXTRACT_IFMT_MULO2_CODE
2097 /* Record the fields for the semantic handler. */
2098 FLD (f_src1
) = f_src1
;
2099 FLD (f_srcdst
) = f_srcdst
;
2100 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
2101 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2102 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));
2104 #if WITH_PROFILE_MODEL_P
2105 /* Record the fields for profiling. */
2106 if (PROFILE_MODEL_P (current_cpu
))
2108 FLD (in_h_gr_add__VM_index_of_src1_1
) = ((FLD (f_src1
)) + (1));
2109 FLD (in_h_gr_add__VM_index_of_src1_2
) = ((FLD (f_src1
)) + (2));
2110 FLD (in_h_gr_add__VM_index_of_src1_3
) = ((FLD (f_src1
)) + (3));
2111 FLD (in_src1
) = f_src1
;
2112 FLD (out_dst
) = f_srcdst
;
2113 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
2114 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
2115 FLD (out_h_gr_add__VM_index_of_dst_3
) = ((FLD (f_srcdst
)) + (3));
2124 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2125 CGEN_INSN_INT insn
= base_insn
;
2126 #define FLD(f) abuf->fields.fmt_movq1.f
2127 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2129 EXTRACT_IFMT_MULO3_CODE
2131 /* Record the fields for the semantic handler. */
2132 FLD (f_srcdst
) = f_srcdst
;
2133 FLD (f_src1
) = f_src1
;
2134 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2135 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));
2137 #if WITH_PROFILE_MODEL_P
2138 /* Record the fields for profiling. */
2139 if (PROFILE_MODEL_P (current_cpu
))
2141 FLD (out_dst
) = f_srcdst
;
2142 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
2143 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
2144 FLD (out_h_gr_add__VM_index_of_dst_3
) = ((FLD (f_srcdst
)) + (3));
2153 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2154 CGEN_INSN_INT insn
= base_insn
;
2155 #define FLD(f) abuf->fields.fmt_modpc.f
2156 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
2158 EXTRACT_IFMT_MULO_CODE
2160 /* Record the fields for the semantic handler. */
2161 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
2162 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2163 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_modpc", "src2 0x%x", 'x', f_src2
, "dst 0x%x", 'x', f_srcdst
, (char *) 0));
2165 #if WITH_PROFILE_MODEL_P
2166 /* Record the fields for profiling. */
2167 if (PROFILE_MODEL_P (current_cpu
))
2169 FLD (in_src2
) = f_src2
;
2170 FLD (out_dst
) = f_srcdst
;
2177 extract_fmt_lda_offset
:
2179 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2180 CGEN_INSN_INT insn
= base_insn
;
2181 #define FLD(f) abuf->fields.fmt_lda_offset.f
2182 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2184 EXTRACT_IFMT_LDA_OFFSET_CODE
2186 /* Record the fields for the semantic handler. */
2187 FLD (f_offset
) = f_offset
;
2188 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2189 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));
2191 #if WITH_PROFILE_MODEL_P
2192 /* Record the fields for profiling. */
2193 if (PROFILE_MODEL_P (current_cpu
))
2195 FLD (out_dst
) = f_srcdst
;
2202 extract_fmt_lda_indirect_offset
:
2204 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2205 CGEN_INSN_INT insn
= base_insn
;
2206 #define FLD(f) abuf->fields.fmt_lda_indirect_offset.f
2207 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2209 EXTRACT_IFMT_LDA_OFFSET_CODE
2211 /* Record the fields for the semantic handler. */
2212 FLD (f_offset
) = f_offset
;
2213 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2214 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2215 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));
2217 #if WITH_PROFILE_MODEL_P
2218 /* Record the fields for profiling. */
2219 if (PROFILE_MODEL_P (current_cpu
))
2221 FLD (in_abase
) = f_abase
;
2222 FLD (out_dst
) = f_srcdst
;
2229 extract_fmt_lda_indirect
:
2231 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2232 CGEN_INSN_INT insn
= base_insn
;
2233 #define FLD(f) abuf->fields.fmt_lda_indirect.f
2234 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2236 EXTRACT_IFMT_LDA_INDIRECT_CODE
2238 /* Record the fields for the semantic handler. */
2239 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2240 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2241 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));
2243 #if WITH_PROFILE_MODEL_P
2244 /* Record the fields for profiling. */
2245 if (PROFILE_MODEL_P (current_cpu
))
2247 FLD (in_abase
) = f_abase
;
2248 FLD (out_dst
) = f_srcdst
;
2255 extract_fmt_lda_indirect_index
:
2257 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2258 CGEN_INSN_INT insn
= base_insn
;
2259 #define FLD(f) abuf->fields.fmt_lda_indirect_index.f
2260 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2262 EXTRACT_IFMT_LDA_INDIRECT_CODE
2264 /* Record the fields for the semantic handler. */
2265 FLD (f_scale
) = f_scale
;
2266 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2267 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2268 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2269 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));
2271 #if WITH_PROFILE_MODEL_P
2272 /* Record the fields for profiling. */
2273 if (PROFILE_MODEL_P (current_cpu
))
2275 FLD (in_abase
) = f_abase
;
2276 FLD (in_index
) = f_index
;
2277 FLD (out_dst
) = f_srcdst
;
2284 extract_fmt_lda_disp
:
2286 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2287 CGEN_INSN_INT insn
= base_insn
;
2288 #define FLD(f) abuf->fields.fmt_lda_disp.f
2289 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2291 EXTRACT_IFMT_LDA_DISP_CODE
2293 /* Record the fields for the semantic handler. */
2294 FLD (f_optdisp
) = f_optdisp
;
2295 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2296 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));
2298 #if WITH_PROFILE_MODEL_P
2299 /* Record the fields for profiling. */
2300 if (PROFILE_MODEL_P (current_cpu
))
2302 FLD (out_dst
) = f_srcdst
;
2309 extract_fmt_lda_indirect_disp
:
2311 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2312 CGEN_INSN_INT insn
= base_insn
;
2313 #define FLD(f) abuf->fields.fmt_lda_indirect_disp.f
2314 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2316 EXTRACT_IFMT_LDA_DISP_CODE
2318 /* Record the fields for the semantic handler. */
2319 FLD (f_optdisp
) = f_optdisp
;
2320 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2321 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2322 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));
2324 #if WITH_PROFILE_MODEL_P
2325 /* Record the fields for profiling. */
2326 if (PROFILE_MODEL_P (current_cpu
))
2328 FLD (in_abase
) = f_abase
;
2329 FLD (out_dst
) = f_srcdst
;
2336 extract_fmt_lda_index_disp
:
2338 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2339 CGEN_INSN_INT insn
= base_insn
;
2340 #define FLD(f) abuf->fields.fmt_lda_index_disp.f
2341 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2343 EXTRACT_IFMT_LDA_DISP_CODE
2345 /* Record the fields for the semantic handler. */
2346 FLD (f_optdisp
) = f_optdisp
;
2347 FLD (f_scale
) = f_scale
;
2348 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2349 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2350 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));
2352 #if WITH_PROFILE_MODEL_P
2353 /* Record the fields for profiling. */
2354 if (PROFILE_MODEL_P (current_cpu
))
2356 FLD (in_index
) = f_index
;
2357 FLD (out_dst
) = f_srcdst
;
2364 extract_fmt_lda_indirect_index_disp
:
2366 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2367 CGEN_INSN_INT insn
= base_insn
;
2368 #define FLD(f) abuf->fields.fmt_lda_indirect_index_disp.f
2369 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2371 EXTRACT_IFMT_LDA_DISP_CODE
2373 /* Record the fields for the semantic handler. */
2374 FLD (f_optdisp
) = f_optdisp
;
2375 FLD (f_scale
) = f_scale
;
2376 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2377 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2378 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2379 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));
2381 #if WITH_PROFILE_MODEL_P
2382 /* Record the fields for profiling. */
2383 if (PROFILE_MODEL_P (current_cpu
))
2385 FLD (in_abase
) = f_abase
;
2386 FLD (in_index
) = f_index
;
2387 FLD (out_dst
) = f_srcdst
;
2394 extract_fmt_ld_offset
:
2396 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2397 CGEN_INSN_INT insn
= base_insn
;
2398 #define FLD(f) abuf->fields.fmt_ld_offset.f
2399 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2401 EXTRACT_IFMT_LDA_OFFSET_CODE
2403 /* Record the fields for the semantic handler. */
2404 FLD (f_offset
) = f_offset
;
2405 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2406 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));
2408 #if WITH_PROFILE_MODEL_P
2409 /* Record the fields for profiling. */
2410 if (PROFILE_MODEL_P (current_cpu
))
2412 FLD (out_dst
) = f_srcdst
;
2419 extract_fmt_ld_indirect_offset
:
2421 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2422 CGEN_INSN_INT insn
= base_insn
;
2423 #define FLD(f) abuf->fields.fmt_ld_indirect_offset.f
2424 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2426 EXTRACT_IFMT_LDA_OFFSET_CODE
2428 /* Record the fields for the semantic handler. */
2429 FLD (f_offset
) = f_offset
;
2430 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2431 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2432 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));
2434 #if WITH_PROFILE_MODEL_P
2435 /* Record the fields for profiling. */
2436 if (PROFILE_MODEL_P (current_cpu
))
2438 FLD (in_abase
) = f_abase
;
2439 FLD (out_dst
) = f_srcdst
;
2446 extract_fmt_ld_indirect
:
2448 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2449 CGEN_INSN_INT insn
= base_insn
;
2450 #define FLD(f) abuf->fields.fmt_ld_indirect.f
2451 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2453 EXTRACT_IFMT_LDA_INDIRECT_CODE
2455 /* Record the fields for the semantic handler. */
2456 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2457 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2458 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));
2460 #if WITH_PROFILE_MODEL_P
2461 /* Record the fields for profiling. */
2462 if (PROFILE_MODEL_P (current_cpu
))
2464 FLD (in_abase
) = f_abase
;
2465 FLD (out_dst
) = f_srcdst
;
2472 extract_fmt_ld_indirect_index
:
2474 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2475 CGEN_INSN_INT insn
= base_insn
;
2476 #define FLD(f) abuf->fields.fmt_ld_indirect_index.f
2477 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2479 EXTRACT_IFMT_LDA_INDIRECT_CODE
2481 /* Record the fields for the semantic handler. */
2482 FLD (f_scale
) = f_scale
;
2483 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2484 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2485 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2486 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));
2488 #if WITH_PROFILE_MODEL_P
2489 /* Record the fields for profiling. */
2490 if (PROFILE_MODEL_P (current_cpu
))
2492 FLD (in_abase
) = f_abase
;
2493 FLD (in_index
) = f_index
;
2494 FLD (out_dst
) = f_srcdst
;
2501 extract_fmt_ld_disp
:
2503 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2504 CGEN_INSN_INT insn
= base_insn
;
2505 #define FLD(f) abuf->fields.fmt_ld_disp.f
2506 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2508 EXTRACT_IFMT_LDA_DISP_CODE
2510 /* Record the fields for the semantic handler. */
2511 FLD (f_optdisp
) = f_optdisp
;
2512 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2513 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));
2515 #if WITH_PROFILE_MODEL_P
2516 /* Record the fields for profiling. */
2517 if (PROFILE_MODEL_P (current_cpu
))
2519 FLD (out_dst
) = f_srcdst
;
2526 extract_fmt_ld_indirect_disp
:
2528 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2529 CGEN_INSN_INT insn
= base_insn
;
2530 #define FLD(f) abuf->fields.fmt_ld_indirect_disp.f
2531 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2533 EXTRACT_IFMT_LDA_DISP_CODE
2535 /* Record the fields for the semantic handler. */
2536 FLD (f_optdisp
) = f_optdisp
;
2537 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2538 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2539 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));
2541 #if WITH_PROFILE_MODEL_P
2542 /* Record the fields for profiling. */
2543 if (PROFILE_MODEL_P (current_cpu
))
2545 FLD (in_abase
) = f_abase
;
2546 FLD (out_dst
) = f_srcdst
;
2553 extract_fmt_ld_index_disp
:
2555 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2556 CGEN_INSN_INT insn
= base_insn
;
2557 #define FLD(f) abuf->fields.fmt_ld_index_disp.f
2558 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2560 EXTRACT_IFMT_LDA_DISP_CODE
2562 /* Record the fields for the semantic handler. */
2563 FLD (f_optdisp
) = f_optdisp
;
2564 FLD (f_scale
) = f_scale
;
2565 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2566 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2567 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));
2569 #if WITH_PROFILE_MODEL_P
2570 /* Record the fields for profiling. */
2571 if (PROFILE_MODEL_P (current_cpu
))
2573 FLD (in_index
) = f_index
;
2574 FLD (out_dst
) = f_srcdst
;
2581 extract_fmt_ld_indirect_index_disp
:
2583 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2584 CGEN_INSN_INT insn
= base_insn
;
2585 #define FLD(f) abuf->fields.fmt_ld_indirect_index_disp.f
2586 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2588 EXTRACT_IFMT_LDA_DISP_CODE
2590 /* Record the fields for the semantic handler. */
2591 FLD (f_optdisp
) = f_optdisp
;
2592 FLD (f_scale
) = f_scale
;
2593 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2594 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2595 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2596 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));
2598 #if WITH_PROFILE_MODEL_P
2599 /* Record the fields for profiling. */
2600 if (PROFILE_MODEL_P (current_cpu
))
2602 FLD (in_abase
) = f_abase
;
2603 FLD (in_index
) = f_index
;
2604 FLD (out_dst
) = f_srcdst
;
2611 extract_fmt_ldob_offset
:
2613 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2614 CGEN_INSN_INT insn
= base_insn
;
2615 #define FLD(f) abuf->fields.fmt_ldob_offset.f
2616 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2618 EXTRACT_IFMT_LDA_OFFSET_CODE
2620 /* Record the fields for the semantic handler. */
2621 FLD (f_offset
) = f_offset
;
2622 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2623 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));
2625 #if WITH_PROFILE_MODEL_P
2626 /* Record the fields for profiling. */
2627 if (PROFILE_MODEL_P (current_cpu
))
2629 FLD (out_dst
) = f_srcdst
;
2636 extract_fmt_ldob_indirect_offset
:
2638 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2639 CGEN_INSN_INT insn
= base_insn
;
2640 #define FLD(f) abuf->fields.fmt_ldob_indirect_offset.f
2641 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2643 EXTRACT_IFMT_LDA_OFFSET_CODE
2645 /* Record the fields for the semantic handler. */
2646 FLD (f_offset
) = f_offset
;
2647 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2648 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2649 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));
2651 #if WITH_PROFILE_MODEL_P
2652 /* Record the fields for profiling. */
2653 if (PROFILE_MODEL_P (current_cpu
))
2655 FLD (in_abase
) = f_abase
;
2656 FLD (out_dst
) = f_srcdst
;
2663 extract_fmt_ldob_indirect
:
2665 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2666 CGEN_INSN_INT insn
= base_insn
;
2667 #define FLD(f) abuf->fields.fmt_ldob_indirect.f
2668 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2670 EXTRACT_IFMT_LDA_INDIRECT_CODE
2672 /* Record the fields for the semantic handler. */
2673 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2674 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2675 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));
2677 #if WITH_PROFILE_MODEL_P
2678 /* Record the fields for profiling. */
2679 if (PROFILE_MODEL_P (current_cpu
))
2681 FLD (in_abase
) = f_abase
;
2682 FLD (out_dst
) = f_srcdst
;
2689 extract_fmt_ldob_indirect_index
:
2691 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2692 CGEN_INSN_INT insn
= base_insn
;
2693 #define FLD(f) abuf->fields.fmt_ldob_indirect_index.f
2694 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2696 EXTRACT_IFMT_LDA_INDIRECT_CODE
2698 /* Record the fields for the semantic handler. */
2699 FLD (f_scale
) = f_scale
;
2700 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
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_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));
2705 #if WITH_PROFILE_MODEL_P
2706 /* Record the fields for profiling. */
2707 if (PROFILE_MODEL_P (current_cpu
))
2709 FLD (in_abase
) = f_abase
;
2710 FLD (in_index
) = f_index
;
2711 FLD (out_dst
) = f_srcdst
;
2718 extract_fmt_ldob_disp
:
2720 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2721 CGEN_INSN_INT insn
= base_insn
;
2722 #define FLD(f) abuf->fields.fmt_ldob_disp.f
2723 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2725 EXTRACT_IFMT_LDA_DISP_CODE
2727 /* Record the fields for the semantic handler. */
2728 FLD (f_optdisp
) = f_optdisp
;
2729 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2730 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));
2732 #if WITH_PROFILE_MODEL_P
2733 /* Record the fields for profiling. */
2734 if (PROFILE_MODEL_P (current_cpu
))
2736 FLD (out_dst
) = f_srcdst
;
2743 extract_fmt_ldob_indirect_disp
:
2745 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2746 CGEN_INSN_INT insn
= base_insn
;
2747 #define FLD(f) abuf->fields.fmt_ldob_indirect_disp.f
2748 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2750 EXTRACT_IFMT_LDA_DISP_CODE
2752 /* Record the fields for the semantic handler. */
2753 FLD (f_optdisp
) = f_optdisp
;
2754 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2755 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2756 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));
2758 #if WITH_PROFILE_MODEL_P
2759 /* Record the fields for profiling. */
2760 if (PROFILE_MODEL_P (current_cpu
))
2762 FLD (in_abase
) = f_abase
;
2763 FLD (out_dst
) = f_srcdst
;
2770 extract_fmt_ldob_index_disp
:
2772 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2773 CGEN_INSN_INT insn
= base_insn
;
2774 #define FLD(f) abuf->fields.fmt_ldob_index_disp.f
2775 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2777 EXTRACT_IFMT_LDA_DISP_CODE
2779 /* Record the fields for the semantic handler. */
2780 FLD (f_optdisp
) = f_optdisp
;
2781 FLD (f_scale
) = f_scale
;
2782 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2783 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2784 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));
2786 #if WITH_PROFILE_MODEL_P
2787 /* Record the fields for profiling. */
2788 if (PROFILE_MODEL_P (current_cpu
))
2790 FLD (in_index
) = f_index
;
2791 FLD (out_dst
) = f_srcdst
;
2798 extract_fmt_ldob_indirect_index_disp
:
2800 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2801 CGEN_INSN_INT insn
= base_insn
;
2802 #define FLD(f) abuf->fields.fmt_ldob_indirect_index_disp.f
2803 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2805 EXTRACT_IFMT_LDA_DISP_CODE
2807 /* Record the fields for the semantic handler. */
2808 FLD (f_optdisp
) = f_optdisp
;
2809 FLD (f_scale
) = f_scale
;
2810 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2811 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2812 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2813 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));
2815 #if WITH_PROFILE_MODEL_P
2816 /* Record the fields for profiling. */
2817 if (PROFILE_MODEL_P (current_cpu
))
2819 FLD (in_abase
) = f_abase
;
2820 FLD (in_index
) = f_index
;
2821 FLD (out_dst
) = f_srcdst
;
2828 extract_fmt_ldos_offset
:
2830 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2831 CGEN_INSN_INT insn
= base_insn
;
2832 #define FLD(f) abuf->fields.fmt_ldos_offset.f
2833 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2835 EXTRACT_IFMT_LDA_OFFSET_CODE
2837 /* Record the fields for the semantic handler. */
2838 FLD (f_offset
) = f_offset
;
2839 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2840 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));
2842 #if WITH_PROFILE_MODEL_P
2843 /* Record the fields for profiling. */
2844 if (PROFILE_MODEL_P (current_cpu
))
2846 FLD (out_dst
) = f_srcdst
;
2853 extract_fmt_ldos_indirect_offset
:
2855 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2856 CGEN_INSN_INT insn
= base_insn
;
2857 #define FLD(f) abuf->fields.fmt_ldos_indirect_offset.f
2858 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
2860 EXTRACT_IFMT_LDA_OFFSET_CODE
2862 /* Record the fields for the semantic handler. */
2863 FLD (f_offset
) = f_offset
;
2864 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2865 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2866 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));
2868 #if WITH_PROFILE_MODEL_P
2869 /* Record the fields for profiling. */
2870 if (PROFILE_MODEL_P (current_cpu
))
2872 FLD (in_abase
) = f_abase
;
2873 FLD (out_dst
) = f_srcdst
;
2880 extract_fmt_ldos_indirect
:
2882 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2883 CGEN_INSN_INT insn
= base_insn
;
2884 #define FLD(f) abuf->fields.fmt_ldos_indirect.f
2885 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2887 EXTRACT_IFMT_LDA_INDIRECT_CODE
2889 /* Record the fields for the semantic handler. */
2890 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2891 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2892 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));
2894 #if WITH_PROFILE_MODEL_P
2895 /* Record the fields for profiling. */
2896 if (PROFILE_MODEL_P (current_cpu
))
2898 FLD (in_abase
) = f_abase
;
2899 FLD (out_dst
) = f_srcdst
;
2906 extract_fmt_ldos_indirect_index
:
2908 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2909 CGEN_INSN_INT insn
= base_insn
;
2910 #define FLD(f) abuf->fields.fmt_ldos_indirect_index.f
2911 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2913 EXTRACT_IFMT_LDA_INDIRECT_CODE
2915 /* Record the fields for the semantic handler. */
2916 FLD (f_scale
) = f_scale
;
2917 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2918 FLD (i_index
) = & CPU (h_gr
)[f_index
];
2919 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2920 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));
2922 #if WITH_PROFILE_MODEL_P
2923 /* Record the fields for profiling. */
2924 if (PROFILE_MODEL_P (current_cpu
))
2926 FLD (in_abase
) = f_abase
;
2927 FLD (in_index
) = f_index
;
2928 FLD (out_dst
) = f_srcdst
;
2935 extract_fmt_ldos_disp
:
2937 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2938 CGEN_INSN_INT insn
= base_insn
;
2939 #define FLD(f) abuf->fields.fmt_ldos_disp.f
2940 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2942 EXTRACT_IFMT_LDA_DISP_CODE
2944 /* Record the fields for the semantic handler. */
2945 FLD (f_optdisp
) = f_optdisp
;
2946 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2947 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));
2949 #if WITH_PROFILE_MODEL_P
2950 /* Record the fields for profiling. */
2951 if (PROFILE_MODEL_P (current_cpu
))
2953 FLD (out_dst
) = f_srcdst
;
2960 extract_fmt_ldos_indirect_disp
:
2962 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2963 CGEN_INSN_INT insn
= base_insn
;
2964 #define FLD(f) abuf->fields.fmt_ldos_indirect_disp.f
2965 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2967 EXTRACT_IFMT_LDA_DISP_CODE
2969 /* Record the fields for the semantic handler. */
2970 FLD (f_optdisp
) = f_optdisp
;
2971 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
2972 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
2973 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));
2975 #if WITH_PROFILE_MODEL_P
2976 /* Record the fields for profiling. */
2977 if (PROFILE_MODEL_P (current_cpu
))
2979 FLD (in_abase
) = f_abase
;
2980 FLD (out_dst
) = f_srcdst
;
2987 extract_fmt_ldos_index_disp
:
2989 const IDESC
*idesc
= &i960base_insn_data
[itype
];
2990 CGEN_INSN_INT insn
= base_insn
;
2991 #define FLD(f) abuf->fields.fmt_ldos_index_disp.f
2992 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
2994 EXTRACT_IFMT_LDA_DISP_CODE
2996 /* Record the fields for the semantic handler. */
2997 FLD (f_optdisp
) = f_optdisp
;
2998 FLD (f_scale
) = f_scale
;
2999 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3000 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3001 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));
3003 #if WITH_PROFILE_MODEL_P
3004 /* Record the fields for profiling. */
3005 if (PROFILE_MODEL_P (current_cpu
))
3007 FLD (in_index
) = f_index
;
3008 FLD (out_dst
) = f_srcdst
;
3015 extract_fmt_ldos_indirect_index_disp
:
3017 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3018 CGEN_INSN_INT insn
= base_insn
;
3019 #define FLD(f) abuf->fields.fmt_ldos_indirect_index_disp.f
3020 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3022 EXTRACT_IFMT_LDA_DISP_CODE
3024 /* Record the fields for the semantic handler. */
3025 FLD (f_optdisp
) = f_optdisp
;
3026 FLD (f_scale
) = f_scale
;
3027 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3028 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3029 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3030 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));
3032 #if WITH_PROFILE_MODEL_P
3033 /* Record the fields for profiling. */
3034 if (PROFILE_MODEL_P (current_cpu
))
3036 FLD (in_abase
) = f_abase
;
3037 FLD (in_index
) = f_index
;
3038 FLD (out_dst
) = f_srcdst
;
3045 extract_fmt_ldib_offset
:
3047 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3048 CGEN_INSN_INT insn
= base_insn
;
3049 #define FLD(f) abuf->fields.fmt_ldib_offset.f
3050 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3052 EXTRACT_IFMT_LDA_OFFSET_CODE
3054 /* Record the fields for the semantic handler. */
3055 FLD (f_offset
) = f_offset
;
3056 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3057 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));
3059 #if WITH_PROFILE_MODEL_P
3060 /* Record the fields for profiling. */
3061 if (PROFILE_MODEL_P (current_cpu
))
3063 FLD (out_dst
) = f_srcdst
;
3070 extract_fmt_ldib_indirect_offset
:
3072 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3073 CGEN_INSN_INT insn
= base_insn
;
3074 #define FLD(f) abuf->fields.fmt_ldib_indirect_offset.f
3075 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3077 EXTRACT_IFMT_LDA_OFFSET_CODE
3079 /* Record the fields for the semantic handler. */
3080 FLD (f_offset
) = f_offset
;
3081 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3082 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3083 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));
3085 #if WITH_PROFILE_MODEL_P
3086 /* Record the fields for profiling. */
3087 if (PROFILE_MODEL_P (current_cpu
))
3089 FLD (in_abase
) = f_abase
;
3090 FLD (out_dst
) = f_srcdst
;
3097 extract_fmt_ldib_indirect
:
3099 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3100 CGEN_INSN_INT insn
= base_insn
;
3101 #define FLD(f) abuf->fields.fmt_ldib_indirect.f
3102 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3104 EXTRACT_IFMT_LDA_INDIRECT_CODE
3106 /* Record the fields for the semantic handler. */
3107 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3108 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3109 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));
3111 #if WITH_PROFILE_MODEL_P
3112 /* Record the fields for profiling. */
3113 if (PROFILE_MODEL_P (current_cpu
))
3115 FLD (in_abase
) = f_abase
;
3116 FLD (out_dst
) = f_srcdst
;
3123 extract_fmt_ldib_indirect_index
:
3125 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3126 CGEN_INSN_INT insn
= base_insn
;
3127 #define FLD(f) abuf->fields.fmt_ldib_indirect_index.f
3128 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3130 EXTRACT_IFMT_LDA_INDIRECT_CODE
3132 /* Record the fields for the semantic handler. */
3133 FLD (f_scale
) = f_scale
;
3134 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3135 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3136 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3137 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));
3139 #if WITH_PROFILE_MODEL_P
3140 /* Record the fields for profiling. */
3141 if (PROFILE_MODEL_P (current_cpu
))
3143 FLD (in_abase
) = f_abase
;
3144 FLD (in_index
) = f_index
;
3145 FLD (out_dst
) = f_srcdst
;
3152 extract_fmt_ldib_disp
:
3154 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3155 CGEN_INSN_INT insn
= base_insn
;
3156 #define FLD(f) abuf->fields.fmt_ldib_disp.f
3157 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3159 EXTRACT_IFMT_LDA_DISP_CODE
3161 /* Record the fields for the semantic handler. */
3162 FLD (f_optdisp
) = f_optdisp
;
3163 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3164 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));
3166 #if WITH_PROFILE_MODEL_P
3167 /* Record the fields for profiling. */
3168 if (PROFILE_MODEL_P (current_cpu
))
3170 FLD (out_dst
) = f_srcdst
;
3177 extract_fmt_ldib_indirect_disp
:
3179 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3180 CGEN_INSN_INT insn
= base_insn
;
3181 #define FLD(f) abuf->fields.fmt_ldib_indirect_disp.f
3182 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3184 EXTRACT_IFMT_LDA_DISP_CODE
3186 /* Record the fields for the semantic handler. */
3187 FLD (f_optdisp
) = f_optdisp
;
3188 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3189 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3190 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));
3192 #if WITH_PROFILE_MODEL_P
3193 /* Record the fields for profiling. */
3194 if (PROFILE_MODEL_P (current_cpu
))
3196 FLD (in_abase
) = f_abase
;
3197 FLD (out_dst
) = f_srcdst
;
3204 extract_fmt_ldib_index_disp
:
3206 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3207 CGEN_INSN_INT insn
= base_insn
;
3208 #define FLD(f) abuf->fields.fmt_ldib_index_disp.f
3209 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3211 EXTRACT_IFMT_LDA_DISP_CODE
3213 /* Record the fields for the semantic handler. */
3214 FLD (f_optdisp
) = f_optdisp
;
3215 FLD (f_scale
) = f_scale
;
3216 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3217 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3218 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));
3220 #if WITH_PROFILE_MODEL_P
3221 /* Record the fields for profiling. */
3222 if (PROFILE_MODEL_P (current_cpu
))
3224 FLD (in_index
) = f_index
;
3225 FLD (out_dst
) = f_srcdst
;
3232 extract_fmt_ldib_indirect_index_disp
:
3234 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3235 CGEN_INSN_INT insn
= base_insn
;
3236 #define FLD(f) abuf->fields.fmt_ldib_indirect_index_disp.f
3237 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3239 EXTRACT_IFMT_LDA_DISP_CODE
3241 /* Record the fields for the semantic handler. */
3242 FLD (f_optdisp
) = f_optdisp
;
3243 FLD (f_scale
) = f_scale
;
3244 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3245 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3246 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3247 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));
3249 #if WITH_PROFILE_MODEL_P
3250 /* Record the fields for profiling. */
3251 if (PROFILE_MODEL_P (current_cpu
))
3253 FLD (in_abase
) = f_abase
;
3254 FLD (in_index
) = f_index
;
3255 FLD (out_dst
) = f_srcdst
;
3262 extract_fmt_ldis_offset
:
3264 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3265 CGEN_INSN_INT insn
= base_insn
;
3266 #define FLD(f) abuf->fields.fmt_ldis_offset.f
3267 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3269 EXTRACT_IFMT_LDA_OFFSET_CODE
3271 /* Record the fields for the semantic handler. */
3272 FLD (f_offset
) = f_offset
;
3273 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3274 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));
3276 #if WITH_PROFILE_MODEL_P
3277 /* Record the fields for profiling. */
3278 if (PROFILE_MODEL_P (current_cpu
))
3280 FLD (out_dst
) = f_srcdst
;
3287 extract_fmt_ldis_indirect_offset
:
3289 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3290 CGEN_INSN_INT insn
= base_insn
;
3291 #define FLD(f) abuf->fields.fmt_ldis_indirect_offset.f
3292 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3294 EXTRACT_IFMT_LDA_OFFSET_CODE
3296 /* Record the fields for the semantic handler. */
3297 FLD (f_offset
) = f_offset
;
3298 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3299 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3300 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));
3302 #if WITH_PROFILE_MODEL_P
3303 /* Record the fields for profiling. */
3304 if (PROFILE_MODEL_P (current_cpu
))
3306 FLD (in_abase
) = f_abase
;
3307 FLD (out_dst
) = f_srcdst
;
3314 extract_fmt_ldis_indirect
:
3316 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3317 CGEN_INSN_INT insn
= base_insn
;
3318 #define FLD(f) abuf->fields.fmt_ldis_indirect.f
3319 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3321 EXTRACT_IFMT_LDA_INDIRECT_CODE
3323 /* Record the fields for the semantic handler. */
3324 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3325 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3326 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));
3328 #if WITH_PROFILE_MODEL_P
3329 /* Record the fields for profiling. */
3330 if (PROFILE_MODEL_P (current_cpu
))
3332 FLD (in_abase
) = f_abase
;
3333 FLD (out_dst
) = f_srcdst
;
3340 extract_fmt_ldis_indirect_index
:
3342 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3343 CGEN_INSN_INT insn
= base_insn
;
3344 #define FLD(f) abuf->fields.fmt_ldis_indirect_index.f
3345 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3347 EXTRACT_IFMT_LDA_INDIRECT_CODE
3349 /* Record the fields for the semantic handler. */
3350 FLD (f_scale
) = f_scale
;
3351 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3352 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3353 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3354 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));
3356 #if WITH_PROFILE_MODEL_P
3357 /* Record the fields for profiling. */
3358 if (PROFILE_MODEL_P (current_cpu
))
3360 FLD (in_abase
) = f_abase
;
3361 FLD (in_index
) = f_index
;
3362 FLD (out_dst
) = f_srcdst
;
3369 extract_fmt_ldis_disp
:
3371 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3372 CGEN_INSN_INT insn
= base_insn
;
3373 #define FLD(f) abuf->fields.fmt_ldis_disp.f
3374 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3376 EXTRACT_IFMT_LDA_DISP_CODE
3378 /* Record the fields for the semantic handler. */
3379 FLD (f_optdisp
) = f_optdisp
;
3380 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3381 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));
3383 #if WITH_PROFILE_MODEL_P
3384 /* Record the fields for profiling. */
3385 if (PROFILE_MODEL_P (current_cpu
))
3387 FLD (out_dst
) = f_srcdst
;
3394 extract_fmt_ldis_indirect_disp
:
3396 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3397 CGEN_INSN_INT insn
= base_insn
;
3398 #define FLD(f) abuf->fields.fmt_ldis_indirect_disp.f
3399 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3401 EXTRACT_IFMT_LDA_DISP_CODE
3403 /* Record the fields for the semantic handler. */
3404 FLD (f_optdisp
) = f_optdisp
;
3405 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3406 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3407 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));
3409 #if WITH_PROFILE_MODEL_P
3410 /* Record the fields for profiling. */
3411 if (PROFILE_MODEL_P (current_cpu
))
3413 FLD (in_abase
) = f_abase
;
3414 FLD (out_dst
) = f_srcdst
;
3421 extract_fmt_ldis_index_disp
:
3423 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3424 CGEN_INSN_INT insn
= base_insn
;
3425 #define FLD(f) abuf->fields.fmt_ldis_index_disp.f
3426 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3428 EXTRACT_IFMT_LDA_DISP_CODE
3430 /* Record the fields for the semantic handler. */
3431 FLD (f_optdisp
) = f_optdisp
;
3432 FLD (f_scale
) = f_scale
;
3433 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3434 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3435 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));
3437 #if WITH_PROFILE_MODEL_P
3438 /* Record the fields for profiling. */
3439 if (PROFILE_MODEL_P (current_cpu
))
3441 FLD (in_index
) = f_index
;
3442 FLD (out_dst
) = f_srcdst
;
3449 extract_fmt_ldis_indirect_index_disp
:
3451 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3452 CGEN_INSN_INT insn
= base_insn
;
3453 #define FLD(f) abuf->fields.fmt_ldis_indirect_index_disp.f
3454 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3456 EXTRACT_IFMT_LDA_DISP_CODE
3458 /* Record the fields for the semantic handler. */
3459 FLD (f_optdisp
) = f_optdisp
;
3460 FLD (f_scale
) = f_scale
;
3461 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3462 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3463 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3464 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));
3466 #if WITH_PROFILE_MODEL_P
3467 /* Record the fields for profiling. */
3468 if (PROFILE_MODEL_P (current_cpu
))
3470 FLD (in_abase
) = f_abase
;
3471 FLD (in_index
) = f_index
;
3472 FLD (out_dst
) = f_srcdst
;
3479 extract_fmt_ldl_offset
:
3481 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3482 CGEN_INSN_INT insn
= base_insn
;
3483 #define FLD(f) abuf->fields.fmt_ldl_offset.f
3484 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3486 EXTRACT_IFMT_LDA_OFFSET_CODE
3488 /* Record the fields for the semantic handler. */
3489 FLD (f_srcdst
) = f_srcdst
;
3490 FLD (f_offset
) = f_offset
;
3491 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3492 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));
3494 #if WITH_PROFILE_MODEL_P
3495 /* Record the fields for profiling. */
3496 if (PROFILE_MODEL_P (current_cpu
))
3498 FLD (out_dst
) = f_srcdst
;
3499 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3506 extract_fmt_ldl_indirect_offset
:
3508 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3509 CGEN_INSN_INT insn
= base_insn
;
3510 #define FLD(f) abuf->fields.fmt_ldl_indirect_offset.f
3511 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3513 EXTRACT_IFMT_LDA_OFFSET_CODE
3515 /* Record the fields for the semantic handler. */
3516 FLD (f_srcdst
) = f_srcdst
;
3517 FLD (f_offset
) = f_offset
;
3518 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3519 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3520 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));
3522 #if WITH_PROFILE_MODEL_P
3523 /* Record the fields for profiling. */
3524 if (PROFILE_MODEL_P (current_cpu
))
3526 FLD (in_abase
) = f_abase
;
3527 FLD (out_dst
) = f_srcdst
;
3528 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3535 extract_fmt_ldl_indirect
:
3537 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3538 CGEN_INSN_INT insn
= base_insn
;
3539 #define FLD(f) abuf->fields.fmt_ldl_indirect.f
3540 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3542 EXTRACT_IFMT_LDA_INDIRECT_CODE
3544 /* Record the fields for the semantic handler. */
3545 FLD (f_srcdst
) = f_srcdst
;
3546 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3547 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3548 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));
3550 #if WITH_PROFILE_MODEL_P
3551 /* Record the fields for profiling. */
3552 if (PROFILE_MODEL_P (current_cpu
))
3554 FLD (in_abase
) = f_abase
;
3555 FLD (out_dst
) = f_srcdst
;
3556 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3563 extract_fmt_ldl_indirect_index
:
3565 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3566 CGEN_INSN_INT insn
= base_insn
;
3567 #define FLD(f) abuf->fields.fmt_ldl_indirect_index.f
3568 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3570 EXTRACT_IFMT_LDA_INDIRECT_CODE
3572 /* Record the fields for the semantic handler. */
3573 FLD (f_srcdst
) = f_srcdst
;
3574 FLD (f_scale
) = f_scale
;
3575 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3576 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3577 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3578 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));
3580 #if WITH_PROFILE_MODEL_P
3581 /* Record the fields for profiling. */
3582 if (PROFILE_MODEL_P (current_cpu
))
3584 FLD (in_abase
) = f_abase
;
3585 FLD (in_index
) = f_index
;
3586 FLD (out_dst
) = f_srcdst
;
3587 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3594 extract_fmt_ldl_disp
:
3596 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3597 CGEN_INSN_INT insn
= base_insn
;
3598 #define FLD(f) abuf->fields.fmt_ldl_disp.f
3599 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3601 EXTRACT_IFMT_LDA_DISP_CODE
3603 /* Record the fields for the semantic handler. */
3604 FLD (f_srcdst
) = f_srcdst
;
3605 FLD (f_optdisp
) = f_optdisp
;
3606 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3607 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));
3609 #if WITH_PROFILE_MODEL_P
3610 /* Record the fields for profiling. */
3611 if (PROFILE_MODEL_P (current_cpu
))
3613 FLD (out_dst
) = f_srcdst
;
3614 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3621 extract_fmt_ldl_indirect_disp
:
3623 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3624 CGEN_INSN_INT insn
= base_insn
;
3625 #define FLD(f) abuf->fields.fmt_ldl_indirect_disp.f
3626 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3628 EXTRACT_IFMT_LDA_DISP_CODE
3630 /* Record the fields for the semantic handler. */
3631 FLD (f_srcdst
) = f_srcdst
;
3632 FLD (f_optdisp
) = f_optdisp
;
3633 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3634 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3635 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));
3637 #if WITH_PROFILE_MODEL_P
3638 /* Record the fields for profiling. */
3639 if (PROFILE_MODEL_P (current_cpu
))
3641 FLD (in_abase
) = f_abase
;
3642 FLD (out_dst
) = f_srcdst
;
3643 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3650 extract_fmt_ldl_index_disp
:
3652 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3653 CGEN_INSN_INT insn
= base_insn
;
3654 #define FLD(f) abuf->fields.fmt_ldl_index_disp.f
3655 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3657 EXTRACT_IFMT_LDA_DISP_CODE
3659 /* Record the fields for the semantic handler. */
3660 FLD (f_srcdst
) = f_srcdst
;
3661 FLD (f_optdisp
) = f_optdisp
;
3662 FLD (f_scale
) = f_scale
;
3663 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3664 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3665 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));
3667 #if WITH_PROFILE_MODEL_P
3668 /* Record the fields for profiling. */
3669 if (PROFILE_MODEL_P (current_cpu
))
3671 FLD (in_index
) = f_index
;
3672 FLD (out_dst
) = f_srcdst
;
3673 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3680 extract_fmt_ldl_indirect_index_disp
:
3682 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3683 CGEN_INSN_INT insn
= base_insn
;
3684 #define FLD(f) abuf->fields.fmt_ldl_indirect_index_disp.f
3685 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3687 EXTRACT_IFMT_LDA_DISP_CODE
3689 /* Record the fields for the semantic handler. */
3690 FLD (f_srcdst
) = f_srcdst
;
3691 FLD (f_optdisp
) = f_optdisp
;
3692 FLD (f_scale
) = f_scale
;
3693 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3694 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3695 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3696 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));
3698 #if WITH_PROFILE_MODEL_P
3699 /* Record the fields for profiling. */
3700 if (PROFILE_MODEL_P (current_cpu
))
3702 FLD (in_abase
) = f_abase
;
3703 FLD (in_index
) = f_index
;
3704 FLD (out_dst
) = f_srcdst
;
3705 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3712 extract_fmt_ldt_offset
:
3714 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3715 CGEN_INSN_INT insn
= base_insn
;
3716 #define FLD(f) abuf->fields.fmt_ldt_offset.f
3717 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3719 EXTRACT_IFMT_LDA_OFFSET_CODE
3721 /* Record the fields for the semantic handler. */
3722 FLD (f_srcdst
) = f_srcdst
;
3723 FLD (f_offset
) = f_offset
;
3724 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3725 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));
3727 #if WITH_PROFILE_MODEL_P
3728 /* Record the fields for profiling. */
3729 if (PROFILE_MODEL_P (current_cpu
))
3731 FLD (out_dst
) = f_srcdst
;
3732 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3733 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
3740 extract_fmt_ldt_indirect_offset
:
3742 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3743 CGEN_INSN_INT insn
= base_insn
;
3744 #define FLD(f) abuf->fields.fmt_ldt_indirect_offset.f
3745 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3747 EXTRACT_IFMT_LDA_OFFSET_CODE
3749 /* Record the fields for the semantic handler. */
3750 FLD (f_srcdst
) = f_srcdst
;
3751 FLD (f_offset
) = f_offset
;
3752 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3753 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3754 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));
3756 #if WITH_PROFILE_MODEL_P
3757 /* Record the fields for profiling. */
3758 if (PROFILE_MODEL_P (current_cpu
))
3760 FLD (in_abase
) = f_abase
;
3761 FLD (out_dst
) = f_srcdst
;
3762 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3763 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
3770 extract_fmt_ldt_indirect
:
3772 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3773 CGEN_INSN_INT insn
= base_insn
;
3774 #define FLD(f) abuf->fields.fmt_ldt_indirect.f
3775 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3777 EXTRACT_IFMT_LDA_INDIRECT_CODE
3779 /* Record the fields for the semantic handler. */
3780 FLD (f_srcdst
) = f_srcdst
;
3781 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3782 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3783 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));
3785 #if WITH_PROFILE_MODEL_P
3786 /* Record the fields for profiling. */
3787 if (PROFILE_MODEL_P (current_cpu
))
3789 FLD (in_abase
) = f_abase
;
3790 FLD (out_dst
) = f_srcdst
;
3791 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3792 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
3799 extract_fmt_ldt_indirect_index
:
3801 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3802 CGEN_INSN_INT insn
= base_insn
;
3803 #define FLD(f) abuf->fields.fmt_ldt_indirect_index.f
3804 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3806 EXTRACT_IFMT_LDA_INDIRECT_CODE
3808 /* Record the fields for the semantic handler. */
3809 FLD (f_srcdst
) = f_srcdst
;
3810 FLD (f_scale
) = f_scale
;
3811 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3812 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3813 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3814 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));
3816 #if WITH_PROFILE_MODEL_P
3817 /* Record the fields for profiling. */
3818 if (PROFILE_MODEL_P (current_cpu
))
3820 FLD (in_abase
) = f_abase
;
3821 FLD (in_index
) = f_index
;
3822 FLD (out_dst
) = f_srcdst
;
3823 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3824 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
3831 extract_fmt_ldt_disp
:
3833 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3834 CGEN_INSN_INT insn
= base_insn
;
3835 #define FLD(f) abuf->fields.fmt_ldt_disp.f
3836 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3838 EXTRACT_IFMT_LDA_DISP_CODE
3840 /* Record the fields for the semantic handler. */
3841 FLD (f_srcdst
) = f_srcdst
;
3842 FLD (f_optdisp
) = f_optdisp
;
3843 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3844 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));
3846 #if WITH_PROFILE_MODEL_P
3847 /* Record the fields for profiling. */
3848 if (PROFILE_MODEL_P (current_cpu
))
3850 FLD (out_dst
) = f_srcdst
;
3851 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3852 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
3859 extract_fmt_ldt_indirect_disp
:
3861 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3862 CGEN_INSN_INT insn
= base_insn
;
3863 #define FLD(f) abuf->fields.fmt_ldt_indirect_disp.f
3864 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3866 EXTRACT_IFMT_LDA_DISP_CODE
3868 /* Record the fields for the semantic handler. */
3869 FLD (f_srcdst
) = f_srcdst
;
3870 FLD (f_optdisp
) = f_optdisp
;
3871 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3872 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3873 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));
3875 #if WITH_PROFILE_MODEL_P
3876 /* Record the fields for profiling. */
3877 if (PROFILE_MODEL_P (current_cpu
))
3879 FLD (in_abase
) = f_abase
;
3880 FLD (out_dst
) = f_srcdst
;
3881 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3882 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
3889 extract_fmt_ldt_index_disp
:
3891 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3892 CGEN_INSN_INT insn
= base_insn
;
3893 #define FLD(f) abuf->fields.fmt_ldt_index_disp.f
3894 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3896 EXTRACT_IFMT_LDA_DISP_CODE
3898 /* Record the fields for the semantic handler. */
3899 FLD (f_srcdst
) = f_srcdst
;
3900 FLD (f_optdisp
) = f_optdisp
;
3901 FLD (f_scale
) = f_scale
;
3902 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3903 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3904 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));
3906 #if WITH_PROFILE_MODEL_P
3907 /* Record the fields for profiling. */
3908 if (PROFILE_MODEL_P (current_cpu
))
3910 FLD (in_index
) = f_index
;
3911 FLD (out_dst
) = f_srcdst
;
3912 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3913 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
3920 extract_fmt_ldt_indirect_index_disp
:
3922 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3923 CGEN_INSN_INT insn
= base_insn
;
3924 #define FLD(f) abuf->fields.fmt_ldt_indirect_index_disp.f
3925 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
3927 EXTRACT_IFMT_LDA_DISP_CODE
3929 /* Record the fields for the semantic handler. */
3930 FLD (f_srcdst
) = f_srcdst
;
3931 FLD (f_optdisp
) = f_optdisp
;
3932 FLD (f_scale
) = f_scale
;
3933 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3934 FLD (i_index
) = & CPU (h_gr
)[f_index
];
3935 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3936 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));
3938 #if WITH_PROFILE_MODEL_P
3939 /* Record the fields for profiling. */
3940 if (PROFILE_MODEL_P (current_cpu
))
3942 FLD (in_abase
) = f_abase
;
3943 FLD (in_index
) = f_index
;
3944 FLD (out_dst
) = f_srcdst
;
3945 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3946 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
3953 extract_fmt_ldq_offset
:
3955 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3956 CGEN_INSN_INT insn
= base_insn
;
3957 #define FLD(f) abuf->fields.fmt_ldq_offset.f
3958 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3960 EXTRACT_IFMT_LDA_OFFSET_CODE
3962 /* Record the fields for the semantic handler. */
3963 FLD (f_srcdst
) = f_srcdst
;
3964 FLD (f_offset
) = f_offset
;
3965 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3966 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));
3968 #if WITH_PROFILE_MODEL_P
3969 /* Record the fields for profiling. */
3970 if (PROFILE_MODEL_P (current_cpu
))
3972 FLD (out_dst
) = f_srcdst
;
3973 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
3974 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
3975 FLD (out_h_gr_add__VM_index_of_dst_3
) = ((FLD (f_srcdst
)) + (3));
3982 extract_fmt_ldq_indirect_offset
:
3984 const IDESC
*idesc
= &i960base_insn_data
[itype
];
3985 CGEN_INSN_INT insn
= base_insn
;
3986 #define FLD(f) abuf->fields.fmt_ldq_indirect_offset.f
3987 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
3989 EXTRACT_IFMT_LDA_OFFSET_CODE
3991 /* Record the fields for the semantic handler. */
3992 FLD (f_srcdst
) = f_srcdst
;
3993 FLD (f_offset
) = f_offset
;
3994 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
3995 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
3996 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));
3998 #if WITH_PROFILE_MODEL_P
3999 /* Record the fields for profiling. */
4000 if (PROFILE_MODEL_P (current_cpu
))
4002 FLD (in_abase
) = f_abase
;
4003 FLD (out_dst
) = f_srcdst
;
4004 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
4005 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
4006 FLD (out_h_gr_add__VM_index_of_dst_3
) = ((FLD (f_srcdst
)) + (3));
4013 extract_fmt_ldq_indirect
:
4015 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4016 CGEN_INSN_INT insn
= base_insn
;
4017 #define FLD(f) abuf->fields.fmt_ldq_indirect.f
4018 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4020 EXTRACT_IFMT_LDA_INDIRECT_CODE
4022 /* Record the fields for the semantic handler. */
4023 FLD (f_srcdst
) = f_srcdst
;
4024 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4025 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4026 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));
4028 #if WITH_PROFILE_MODEL_P
4029 /* Record the fields for profiling. */
4030 if (PROFILE_MODEL_P (current_cpu
))
4032 FLD (in_abase
) = f_abase
;
4033 FLD (out_dst
) = f_srcdst
;
4034 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
4035 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
4036 FLD (out_h_gr_add__VM_index_of_dst_3
) = ((FLD (f_srcdst
)) + (3));
4043 extract_fmt_ldq_indirect_index
:
4045 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4046 CGEN_INSN_INT insn
= base_insn
;
4047 #define FLD(f) abuf->fields.fmt_ldq_indirect_index.f
4048 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4050 EXTRACT_IFMT_LDA_INDIRECT_CODE
4052 /* Record the fields for the semantic handler. */
4053 FLD (f_srcdst
) = f_srcdst
;
4054 FLD (f_scale
) = f_scale
;
4055 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4056 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4057 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4058 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));
4060 #if WITH_PROFILE_MODEL_P
4061 /* Record the fields for profiling. */
4062 if (PROFILE_MODEL_P (current_cpu
))
4064 FLD (in_abase
) = f_abase
;
4065 FLD (in_index
) = f_index
;
4066 FLD (out_dst
) = f_srcdst
;
4067 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
4068 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
4069 FLD (out_h_gr_add__VM_index_of_dst_3
) = ((FLD (f_srcdst
)) + (3));
4076 extract_fmt_ldq_disp
:
4078 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4079 CGEN_INSN_INT insn
= base_insn
;
4080 #define FLD(f) abuf->fields.fmt_ldq_disp.f
4081 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4083 EXTRACT_IFMT_LDA_DISP_CODE
4085 /* Record the fields for the semantic handler. */
4086 FLD (f_srcdst
) = f_srcdst
;
4087 FLD (f_optdisp
) = f_optdisp
;
4088 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4089 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));
4091 #if WITH_PROFILE_MODEL_P
4092 /* Record the fields for profiling. */
4093 if (PROFILE_MODEL_P (current_cpu
))
4095 FLD (out_dst
) = f_srcdst
;
4096 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
4097 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
4098 FLD (out_h_gr_add__VM_index_of_dst_3
) = ((FLD (f_srcdst
)) + (3));
4105 extract_fmt_ldq_indirect_disp
:
4107 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4108 CGEN_INSN_INT insn
= base_insn
;
4109 #define FLD(f) abuf->fields.fmt_ldq_indirect_disp.f
4110 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4112 EXTRACT_IFMT_LDA_DISP_CODE
4114 /* Record the fields for the semantic handler. */
4115 FLD (f_srcdst
) = f_srcdst
;
4116 FLD (f_optdisp
) = f_optdisp
;
4117 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4118 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4119 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));
4121 #if WITH_PROFILE_MODEL_P
4122 /* Record the fields for profiling. */
4123 if (PROFILE_MODEL_P (current_cpu
))
4125 FLD (in_abase
) = f_abase
;
4126 FLD (out_dst
) = f_srcdst
;
4127 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
4128 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
4129 FLD (out_h_gr_add__VM_index_of_dst_3
) = ((FLD (f_srcdst
)) + (3));
4136 extract_fmt_ldq_index_disp
:
4138 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4139 CGEN_INSN_INT insn
= base_insn
;
4140 #define FLD(f) abuf->fields.fmt_ldq_index_disp.f
4141 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4143 EXTRACT_IFMT_LDA_DISP_CODE
4145 /* Record the fields for the semantic handler. */
4146 FLD (f_srcdst
) = f_srcdst
;
4147 FLD (f_optdisp
) = f_optdisp
;
4148 FLD (f_scale
) = f_scale
;
4149 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4150 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4151 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));
4153 #if WITH_PROFILE_MODEL_P
4154 /* Record the fields for profiling. */
4155 if (PROFILE_MODEL_P (current_cpu
))
4157 FLD (in_index
) = f_index
;
4158 FLD (out_dst
) = f_srcdst
;
4159 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
4160 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
4161 FLD (out_h_gr_add__VM_index_of_dst_3
) = ((FLD (f_srcdst
)) + (3));
4168 extract_fmt_ldq_indirect_index_disp
:
4170 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4171 CGEN_INSN_INT insn
= base_insn
;
4172 #define FLD(f) abuf->fields.fmt_ldq_indirect_index_disp.f
4173 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4175 EXTRACT_IFMT_LDA_DISP_CODE
4177 /* Record the fields for the semantic handler. */
4178 FLD (f_srcdst
) = f_srcdst
;
4179 FLD (f_optdisp
) = f_optdisp
;
4180 FLD (f_scale
) = f_scale
;
4181 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4182 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4183 FLD (i_dst
) = & CPU (h_gr
)[f_srcdst
];
4184 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));
4186 #if WITH_PROFILE_MODEL_P
4187 /* Record the fields for profiling. */
4188 if (PROFILE_MODEL_P (current_cpu
))
4190 FLD (in_abase
) = f_abase
;
4191 FLD (in_index
) = f_index
;
4192 FLD (out_dst
) = f_srcdst
;
4193 FLD (out_h_gr_add__VM_index_of_dst_1
) = ((FLD (f_srcdst
)) + (1));
4194 FLD (out_h_gr_add__VM_index_of_dst_2
) = ((FLD (f_srcdst
)) + (2));
4195 FLD (out_h_gr_add__VM_index_of_dst_3
) = ((FLD (f_srcdst
)) + (3));
4202 extract_fmt_st_offset
:
4204 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4205 CGEN_INSN_INT insn
= base_insn
;
4206 #define FLD(f) abuf->fields.fmt_st_offset.f
4207 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4209 EXTRACT_IFMT_ST_OFFSET_CODE
4211 /* Record the fields for the semantic handler. */
4212 FLD (f_offset
) = f_offset
;
4213 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4214 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));
4216 #if WITH_PROFILE_MODEL_P
4217 /* Record the fields for profiling. */
4218 if (PROFILE_MODEL_P (current_cpu
))
4220 FLD (in_st_src
) = f_srcdst
;
4227 extract_fmt_st_indirect_offset
:
4229 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4230 CGEN_INSN_INT insn
= base_insn
;
4231 #define FLD(f) abuf->fields.fmt_st_indirect_offset.f
4232 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4234 EXTRACT_IFMT_ST_OFFSET_CODE
4236 /* Record the fields for the semantic handler. */
4237 FLD (f_offset
) = f_offset
;
4238 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4239 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4240 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));
4242 #if WITH_PROFILE_MODEL_P
4243 /* Record the fields for profiling. */
4244 if (PROFILE_MODEL_P (current_cpu
))
4246 FLD (in_abase
) = f_abase
;
4247 FLD (in_st_src
) = f_srcdst
;
4254 extract_fmt_st_indirect
:
4256 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4257 CGEN_INSN_INT insn
= base_insn
;
4258 #define FLD(f) abuf->fields.fmt_st_indirect.f
4259 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4261 EXTRACT_IFMT_ST_INDIRECT_CODE
4263 /* Record the fields for the semantic handler. */
4264 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4265 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4266 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));
4268 #if WITH_PROFILE_MODEL_P
4269 /* Record the fields for profiling. */
4270 if (PROFILE_MODEL_P (current_cpu
))
4272 FLD (in_abase
) = f_abase
;
4273 FLD (in_st_src
) = f_srcdst
;
4280 extract_fmt_st_indirect_index
:
4282 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4283 CGEN_INSN_INT insn
= base_insn
;
4284 #define FLD(f) abuf->fields.fmt_st_indirect_index.f
4285 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4287 EXTRACT_IFMT_ST_INDIRECT_CODE
4289 /* Record the fields for the semantic handler. */
4290 FLD (f_scale
) = f_scale
;
4291 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4292 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4293 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4294 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));
4296 #if WITH_PROFILE_MODEL_P
4297 /* Record the fields for profiling. */
4298 if (PROFILE_MODEL_P (current_cpu
))
4300 FLD (in_abase
) = f_abase
;
4301 FLD (in_index
) = f_index
;
4302 FLD (in_st_src
) = f_srcdst
;
4309 extract_fmt_st_disp
:
4311 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4312 CGEN_INSN_INT insn
= base_insn
;
4313 #define FLD(f) abuf->fields.fmt_st_disp.f
4314 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4316 EXTRACT_IFMT_ST_DISP_CODE
4318 /* Record the fields for the semantic handler. */
4319 FLD (f_optdisp
) = f_optdisp
;
4320 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4321 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));
4323 #if WITH_PROFILE_MODEL_P
4324 /* Record the fields for profiling. */
4325 if (PROFILE_MODEL_P (current_cpu
))
4327 FLD (in_st_src
) = f_srcdst
;
4334 extract_fmt_st_indirect_disp
:
4336 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4337 CGEN_INSN_INT insn
= base_insn
;
4338 #define FLD(f) abuf->fields.fmt_st_indirect_disp.f
4339 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4341 EXTRACT_IFMT_ST_DISP_CODE
4343 /* Record the fields for the semantic handler. */
4344 FLD (f_optdisp
) = f_optdisp
;
4345 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4346 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4347 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));
4349 #if WITH_PROFILE_MODEL_P
4350 /* Record the fields for profiling. */
4351 if (PROFILE_MODEL_P (current_cpu
))
4353 FLD (in_abase
) = f_abase
;
4354 FLD (in_st_src
) = f_srcdst
;
4361 extract_fmt_st_index_disp
:
4363 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4364 CGEN_INSN_INT insn
= base_insn
;
4365 #define FLD(f) abuf->fields.fmt_st_index_disp.f
4366 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4368 EXTRACT_IFMT_ST_DISP_CODE
4370 /* Record the fields for the semantic handler. */
4371 FLD (f_optdisp
) = f_optdisp
;
4372 FLD (f_scale
) = f_scale
;
4373 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4374 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4375 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));
4377 #if WITH_PROFILE_MODEL_P
4378 /* Record the fields for profiling. */
4379 if (PROFILE_MODEL_P (current_cpu
))
4381 FLD (in_index
) = f_index
;
4382 FLD (in_st_src
) = f_srcdst
;
4389 extract_fmt_st_indirect_index_disp
:
4391 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4392 CGEN_INSN_INT insn
= base_insn
;
4393 #define FLD(f) abuf->fields.fmt_st_indirect_index_disp.f
4394 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4396 EXTRACT_IFMT_ST_DISP_CODE
4398 /* Record the fields for the semantic handler. */
4399 FLD (f_optdisp
) = f_optdisp
;
4400 FLD (f_scale
) = f_scale
;
4401 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4402 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4403 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4404 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));
4406 #if WITH_PROFILE_MODEL_P
4407 /* Record the fields for profiling. */
4408 if (PROFILE_MODEL_P (current_cpu
))
4410 FLD (in_abase
) = f_abase
;
4411 FLD (in_index
) = f_index
;
4412 FLD (in_st_src
) = f_srcdst
;
4419 extract_fmt_stob_offset
:
4421 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4422 CGEN_INSN_INT insn
= base_insn
;
4423 #define FLD(f) abuf->fields.fmt_stob_offset.f
4424 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4426 EXTRACT_IFMT_ST_OFFSET_CODE
4428 /* Record the fields for the semantic handler. */
4429 FLD (f_offset
) = f_offset
;
4430 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4431 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));
4433 #if WITH_PROFILE_MODEL_P
4434 /* Record the fields for profiling. */
4435 if (PROFILE_MODEL_P (current_cpu
))
4437 FLD (in_st_src
) = f_srcdst
;
4444 extract_fmt_stob_indirect_offset
:
4446 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4447 CGEN_INSN_INT insn
= base_insn
;
4448 #define FLD(f) abuf->fields.fmt_stob_indirect_offset.f
4449 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4451 EXTRACT_IFMT_ST_OFFSET_CODE
4453 /* Record the fields for the semantic handler. */
4454 FLD (f_offset
) = f_offset
;
4455 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4456 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4457 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));
4459 #if WITH_PROFILE_MODEL_P
4460 /* Record the fields for profiling. */
4461 if (PROFILE_MODEL_P (current_cpu
))
4463 FLD (in_abase
) = f_abase
;
4464 FLD (in_st_src
) = f_srcdst
;
4471 extract_fmt_stob_indirect
:
4473 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4474 CGEN_INSN_INT insn
= base_insn
;
4475 #define FLD(f) abuf->fields.fmt_stob_indirect.f
4476 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4478 EXTRACT_IFMT_ST_INDIRECT_CODE
4480 /* Record the fields for the semantic handler. */
4481 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4482 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4483 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));
4485 #if WITH_PROFILE_MODEL_P
4486 /* Record the fields for profiling. */
4487 if (PROFILE_MODEL_P (current_cpu
))
4489 FLD (in_abase
) = f_abase
;
4490 FLD (in_st_src
) = f_srcdst
;
4497 extract_fmt_stob_indirect_index
:
4499 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4500 CGEN_INSN_INT insn
= base_insn
;
4501 #define FLD(f) abuf->fields.fmt_stob_indirect_index.f
4502 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4504 EXTRACT_IFMT_ST_INDIRECT_CODE
4506 /* Record the fields for the semantic handler. */
4507 FLD (f_scale
) = f_scale
;
4508 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4509 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4510 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4511 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));
4513 #if WITH_PROFILE_MODEL_P
4514 /* Record the fields for profiling. */
4515 if (PROFILE_MODEL_P (current_cpu
))
4517 FLD (in_abase
) = f_abase
;
4518 FLD (in_index
) = f_index
;
4519 FLD (in_st_src
) = f_srcdst
;
4526 extract_fmt_stob_disp
:
4528 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4529 CGEN_INSN_INT insn
= base_insn
;
4530 #define FLD(f) abuf->fields.fmt_stob_disp.f
4531 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4533 EXTRACT_IFMT_ST_DISP_CODE
4535 /* Record the fields for the semantic handler. */
4536 FLD (f_optdisp
) = f_optdisp
;
4537 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4538 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));
4540 #if WITH_PROFILE_MODEL_P
4541 /* Record the fields for profiling. */
4542 if (PROFILE_MODEL_P (current_cpu
))
4544 FLD (in_st_src
) = f_srcdst
;
4551 extract_fmt_stob_indirect_disp
:
4553 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4554 CGEN_INSN_INT insn
= base_insn
;
4555 #define FLD(f) abuf->fields.fmt_stob_indirect_disp.f
4556 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4558 EXTRACT_IFMT_ST_DISP_CODE
4560 /* Record the fields for the semantic handler. */
4561 FLD (f_optdisp
) = f_optdisp
;
4562 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4563 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4564 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));
4566 #if WITH_PROFILE_MODEL_P
4567 /* Record the fields for profiling. */
4568 if (PROFILE_MODEL_P (current_cpu
))
4570 FLD (in_abase
) = f_abase
;
4571 FLD (in_st_src
) = f_srcdst
;
4578 extract_fmt_stob_index_disp
:
4580 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4581 CGEN_INSN_INT insn
= base_insn
;
4582 #define FLD(f) abuf->fields.fmt_stob_index_disp.f
4583 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4585 EXTRACT_IFMT_ST_DISP_CODE
4587 /* Record the fields for the semantic handler. */
4588 FLD (f_optdisp
) = f_optdisp
;
4589 FLD (f_scale
) = f_scale
;
4590 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4591 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4592 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));
4594 #if WITH_PROFILE_MODEL_P
4595 /* Record the fields for profiling. */
4596 if (PROFILE_MODEL_P (current_cpu
))
4598 FLD (in_index
) = f_index
;
4599 FLD (in_st_src
) = f_srcdst
;
4606 extract_fmt_stob_indirect_index_disp
:
4608 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4609 CGEN_INSN_INT insn
= base_insn
;
4610 #define FLD(f) abuf->fields.fmt_stob_indirect_index_disp.f
4611 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4613 EXTRACT_IFMT_ST_DISP_CODE
4615 /* Record the fields for the semantic handler. */
4616 FLD (f_optdisp
) = f_optdisp
;
4617 FLD (f_scale
) = f_scale
;
4618 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4619 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4620 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4621 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));
4623 #if WITH_PROFILE_MODEL_P
4624 /* Record the fields for profiling. */
4625 if (PROFILE_MODEL_P (current_cpu
))
4627 FLD (in_abase
) = f_abase
;
4628 FLD (in_index
) = f_index
;
4629 FLD (in_st_src
) = f_srcdst
;
4636 extract_fmt_stos_offset
:
4638 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4639 CGEN_INSN_INT insn
= base_insn
;
4640 #define FLD(f) abuf->fields.fmt_stos_offset.f
4641 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4643 EXTRACT_IFMT_ST_OFFSET_CODE
4645 /* Record the fields for the semantic handler. */
4646 FLD (f_offset
) = f_offset
;
4647 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4648 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));
4650 #if WITH_PROFILE_MODEL_P
4651 /* Record the fields for profiling. */
4652 if (PROFILE_MODEL_P (current_cpu
))
4654 FLD (in_st_src
) = f_srcdst
;
4661 extract_fmt_stos_indirect_offset
:
4663 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4664 CGEN_INSN_INT insn
= base_insn
;
4665 #define FLD(f) abuf->fields.fmt_stos_indirect_offset.f
4666 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4668 EXTRACT_IFMT_ST_OFFSET_CODE
4670 /* Record the fields for the semantic handler. */
4671 FLD (f_offset
) = f_offset
;
4672 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4673 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4674 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));
4676 #if WITH_PROFILE_MODEL_P
4677 /* Record the fields for profiling. */
4678 if (PROFILE_MODEL_P (current_cpu
))
4680 FLD (in_abase
) = f_abase
;
4681 FLD (in_st_src
) = f_srcdst
;
4688 extract_fmt_stos_indirect
:
4690 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4691 CGEN_INSN_INT insn
= base_insn
;
4692 #define FLD(f) abuf->fields.fmt_stos_indirect.f
4693 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4695 EXTRACT_IFMT_ST_INDIRECT_CODE
4697 /* Record the fields for the semantic handler. */
4698 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4699 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4700 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));
4702 #if WITH_PROFILE_MODEL_P
4703 /* Record the fields for profiling. */
4704 if (PROFILE_MODEL_P (current_cpu
))
4706 FLD (in_abase
) = f_abase
;
4707 FLD (in_st_src
) = f_srcdst
;
4714 extract_fmt_stos_indirect_index
:
4716 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4717 CGEN_INSN_INT insn
= base_insn
;
4718 #define FLD(f) abuf->fields.fmt_stos_indirect_index.f
4719 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4721 EXTRACT_IFMT_ST_INDIRECT_CODE
4723 /* Record the fields for the semantic handler. */
4724 FLD (f_scale
) = f_scale
;
4725 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4726 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4727 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4728 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));
4730 #if WITH_PROFILE_MODEL_P
4731 /* Record the fields for profiling. */
4732 if (PROFILE_MODEL_P (current_cpu
))
4734 FLD (in_abase
) = f_abase
;
4735 FLD (in_index
) = f_index
;
4736 FLD (in_st_src
) = f_srcdst
;
4743 extract_fmt_stos_disp
:
4745 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4746 CGEN_INSN_INT insn
= base_insn
;
4747 #define FLD(f) abuf->fields.fmt_stos_disp.f
4748 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4750 EXTRACT_IFMT_ST_DISP_CODE
4752 /* Record the fields for the semantic handler. */
4753 FLD (f_optdisp
) = f_optdisp
;
4754 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4755 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));
4757 #if WITH_PROFILE_MODEL_P
4758 /* Record the fields for profiling. */
4759 if (PROFILE_MODEL_P (current_cpu
))
4761 FLD (in_st_src
) = f_srcdst
;
4768 extract_fmt_stos_indirect_disp
:
4770 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4771 CGEN_INSN_INT insn
= base_insn
;
4772 #define FLD(f) abuf->fields.fmt_stos_indirect_disp.f
4773 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4775 EXTRACT_IFMT_ST_DISP_CODE
4777 /* Record the fields for the semantic handler. */
4778 FLD (f_optdisp
) = f_optdisp
;
4779 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4780 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4781 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));
4783 #if WITH_PROFILE_MODEL_P
4784 /* Record the fields for profiling. */
4785 if (PROFILE_MODEL_P (current_cpu
))
4787 FLD (in_abase
) = f_abase
;
4788 FLD (in_st_src
) = f_srcdst
;
4795 extract_fmt_stos_index_disp
:
4797 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4798 CGEN_INSN_INT insn
= base_insn
;
4799 #define FLD(f) abuf->fields.fmt_stos_index_disp.f
4800 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4802 EXTRACT_IFMT_ST_DISP_CODE
4804 /* Record the fields for the semantic handler. */
4805 FLD (f_optdisp
) = f_optdisp
;
4806 FLD (f_scale
) = f_scale
;
4807 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4808 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4809 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));
4811 #if WITH_PROFILE_MODEL_P
4812 /* Record the fields for profiling. */
4813 if (PROFILE_MODEL_P (current_cpu
))
4815 FLD (in_index
) = f_index
;
4816 FLD (in_st_src
) = f_srcdst
;
4823 extract_fmt_stos_indirect_index_disp
:
4825 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4826 CGEN_INSN_INT insn
= base_insn
;
4827 #define FLD(f) abuf->fields.fmt_stos_indirect_index_disp.f
4828 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4830 EXTRACT_IFMT_ST_DISP_CODE
4832 /* Record the fields for the semantic handler. */
4833 FLD (f_optdisp
) = f_optdisp
;
4834 FLD (f_scale
) = f_scale
;
4835 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4836 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4837 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4838 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));
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_index
) = f_index
;
4846 FLD (in_st_src
) = f_srcdst
;
4853 extract_fmt_stl_offset
:
4855 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4856 CGEN_INSN_INT insn
= base_insn
;
4857 #define FLD(f) abuf->fields.fmt_stl_offset.f
4858 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4860 EXTRACT_IFMT_ST_OFFSET_CODE
4862 /* Record the fields for the semantic handler. */
4863 FLD (f_srcdst
) = f_srcdst
;
4864 FLD (f_offset
) = f_offset
;
4865 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4866 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));
4868 #if WITH_PROFILE_MODEL_P
4869 /* Record the fields for profiling. */
4870 if (PROFILE_MODEL_P (current_cpu
))
4872 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
4873 FLD (in_st_src
) = f_srcdst
;
4880 extract_fmt_stl_indirect_offset
:
4882 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4883 CGEN_INSN_INT insn
= base_insn
;
4884 #define FLD(f) abuf->fields.fmt_stl_indirect_offset.f
4885 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
4887 EXTRACT_IFMT_ST_OFFSET_CODE
4889 /* Record the fields for the semantic handler. */
4890 FLD (f_srcdst
) = f_srcdst
;
4891 FLD (f_offset
) = f_offset
;
4892 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4893 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4894 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));
4896 #if WITH_PROFILE_MODEL_P
4897 /* Record the fields for profiling. */
4898 if (PROFILE_MODEL_P (current_cpu
))
4900 FLD (in_abase
) = f_abase
;
4901 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
4902 FLD (in_st_src
) = f_srcdst
;
4909 extract_fmt_stl_indirect
:
4911 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4912 CGEN_INSN_INT insn
= base_insn
;
4913 #define FLD(f) abuf->fields.fmt_stl_indirect.f
4914 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4916 EXTRACT_IFMT_ST_INDIRECT_CODE
4918 /* Record the fields for the semantic handler. */
4919 FLD (f_srcdst
) = f_srcdst
;
4920 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4921 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4922 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));
4924 #if WITH_PROFILE_MODEL_P
4925 /* Record the fields for profiling. */
4926 if (PROFILE_MODEL_P (current_cpu
))
4928 FLD (in_abase
) = f_abase
;
4929 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
4930 FLD (in_st_src
) = f_srcdst
;
4937 extract_fmt_stl_indirect_index
:
4939 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4940 CGEN_INSN_INT insn
= base_insn
;
4941 #define FLD(f) abuf->fields.fmt_stl_indirect_index.f
4942 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4944 EXTRACT_IFMT_ST_INDIRECT_CODE
4946 /* Record the fields for the semantic handler. */
4947 FLD (f_srcdst
) = f_srcdst
;
4948 FLD (f_scale
) = f_scale
;
4949 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
4950 FLD (i_index
) = & CPU (h_gr
)[f_index
];
4951 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4952 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));
4954 #if WITH_PROFILE_MODEL_P
4955 /* Record the fields for profiling. */
4956 if (PROFILE_MODEL_P (current_cpu
))
4958 FLD (in_abase
) = f_abase
;
4959 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
4960 FLD (in_index
) = f_index
;
4961 FLD (in_st_src
) = f_srcdst
;
4968 extract_fmt_stl_disp
:
4970 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4971 CGEN_INSN_INT insn
= base_insn
;
4972 #define FLD(f) abuf->fields.fmt_stl_disp.f
4973 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
4975 EXTRACT_IFMT_ST_DISP_CODE
4977 /* Record the fields for the semantic handler. */
4978 FLD (f_srcdst
) = f_srcdst
;
4979 FLD (f_optdisp
) = f_optdisp
;
4980 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
4981 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));
4983 #if WITH_PROFILE_MODEL_P
4984 /* Record the fields for profiling. */
4985 if (PROFILE_MODEL_P (current_cpu
))
4987 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
4988 FLD (in_st_src
) = f_srcdst
;
4995 extract_fmt_stl_indirect_disp
:
4997 const IDESC
*idesc
= &i960base_insn_data
[itype
];
4998 CGEN_INSN_INT insn
= base_insn
;
4999 #define FLD(f) abuf->fields.fmt_stl_indirect_disp.f
5000 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5002 EXTRACT_IFMT_ST_DISP_CODE
5004 /* Record the fields for the semantic handler. */
5005 FLD (f_srcdst
) = f_srcdst
;
5006 FLD (f_optdisp
) = f_optdisp
;
5007 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5008 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5009 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));
5011 #if WITH_PROFILE_MODEL_P
5012 /* Record the fields for profiling. */
5013 if (PROFILE_MODEL_P (current_cpu
))
5015 FLD (in_abase
) = f_abase
;
5016 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5017 FLD (in_st_src
) = f_srcdst
;
5024 extract_fmt_stl_index_disp
:
5026 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5027 CGEN_INSN_INT insn
= base_insn
;
5028 #define FLD(f) abuf->fields.fmt_stl_index_disp.f
5029 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5031 EXTRACT_IFMT_ST_DISP_CODE
5033 /* Record the fields for the semantic handler. */
5034 FLD (f_srcdst
) = f_srcdst
;
5035 FLD (f_optdisp
) = f_optdisp
;
5036 FLD (f_scale
) = f_scale
;
5037 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5038 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5039 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));
5041 #if WITH_PROFILE_MODEL_P
5042 /* Record the fields for profiling. */
5043 if (PROFILE_MODEL_P (current_cpu
))
5045 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5046 FLD (in_index
) = f_index
;
5047 FLD (in_st_src
) = f_srcdst
;
5054 extract_fmt_stl_indirect_index_disp
:
5056 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5057 CGEN_INSN_INT insn
= base_insn
;
5058 #define FLD(f) abuf->fields.fmt_stl_indirect_index_disp.f
5059 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5061 EXTRACT_IFMT_ST_DISP_CODE
5063 /* Record the fields for the semantic handler. */
5064 FLD (f_srcdst
) = f_srcdst
;
5065 FLD (f_optdisp
) = f_optdisp
;
5066 FLD (f_scale
) = f_scale
;
5067 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5068 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5069 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5070 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));
5072 #if WITH_PROFILE_MODEL_P
5073 /* Record the fields for profiling. */
5074 if (PROFILE_MODEL_P (current_cpu
))
5076 FLD (in_abase
) = f_abase
;
5077 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5078 FLD (in_index
) = f_index
;
5079 FLD (in_st_src
) = f_srcdst
;
5086 extract_fmt_stt_offset
:
5088 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5089 CGEN_INSN_INT insn
= base_insn
;
5090 #define FLD(f) abuf->fields.fmt_stt_offset.f
5091 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
5093 EXTRACT_IFMT_ST_OFFSET_CODE
5095 /* Record the fields for the semantic handler. */
5096 FLD (f_srcdst
) = f_srcdst
;
5097 FLD (f_offset
) = f_offset
;
5098 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5099 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));
5101 #if WITH_PROFILE_MODEL_P
5102 /* Record the fields for profiling. */
5103 if (PROFILE_MODEL_P (current_cpu
))
5105 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5106 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5107 FLD (in_st_src
) = f_srcdst
;
5114 extract_fmt_stt_indirect_offset
:
5116 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5117 CGEN_INSN_INT insn
= base_insn
;
5118 #define FLD(f) abuf->fields.fmt_stt_indirect_offset.f
5119 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
5121 EXTRACT_IFMT_ST_OFFSET_CODE
5123 /* Record the fields for the semantic handler. */
5124 FLD (f_srcdst
) = f_srcdst
;
5125 FLD (f_offset
) = f_offset
;
5126 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5127 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5128 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));
5130 #if WITH_PROFILE_MODEL_P
5131 /* Record the fields for profiling. */
5132 if (PROFILE_MODEL_P (current_cpu
))
5134 FLD (in_abase
) = f_abase
;
5135 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5136 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5137 FLD (in_st_src
) = f_srcdst
;
5144 extract_fmt_stt_indirect
:
5146 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5147 CGEN_INSN_INT insn
= base_insn
;
5148 #define FLD(f) abuf->fields.fmt_stt_indirect.f
5149 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5151 EXTRACT_IFMT_ST_INDIRECT_CODE
5153 /* Record the fields for the semantic handler. */
5154 FLD (f_srcdst
) = f_srcdst
;
5155 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5156 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5157 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));
5159 #if WITH_PROFILE_MODEL_P
5160 /* Record the fields for profiling. */
5161 if (PROFILE_MODEL_P (current_cpu
))
5163 FLD (in_abase
) = f_abase
;
5164 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5165 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5166 FLD (in_st_src
) = f_srcdst
;
5173 extract_fmt_stt_indirect_index
:
5175 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5176 CGEN_INSN_INT insn
= base_insn
;
5177 #define FLD(f) abuf->fields.fmt_stt_indirect_index.f
5178 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5180 EXTRACT_IFMT_ST_INDIRECT_CODE
5182 /* Record the fields for the semantic handler. */
5183 FLD (f_srcdst
) = f_srcdst
;
5184 FLD (f_scale
) = f_scale
;
5185 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5186 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5187 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5188 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));
5190 #if WITH_PROFILE_MODEL_P
5191 /* Record the fields for profiling. */
5192 if (PROFILE_MODEL_P (current_cpu
))
5194 FLD (in_abase
) = f_abase
;
5195 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5196 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5197 FLD (in_index
) = f_index
;
5198 FLD (in_st_src
) = f_srcdst
;
5205 extract_fmt_stt_disp
:
5207 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5208 CGEN_INSN_INT insn
= base_insn
;
5209 #define FLD(f) abuf->fields.fmt_stt_disp.f
5210 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5212 EXTRACT_IFMT_ST_DISP_CODE
5214 /* Record the fields for the semantic handler. */
5215 FLD (f_srcdst
) = f_srcdst
;
5216 FLD (f_optdisp
) = f_optdisp
;
5217 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5218 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));
5220 #if WITH_PROFILE_MODEL_P
5221 /* Record the fields for profiling. */
5222 if (PROFILE_MODEL_P (current_cpu
))
5224 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5225 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5226 FLD (in_st_src
) = f_srcdst
;
5233 extract_fmt_stt_indirect_disp
:
5235 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5236 CGEN_INSN_INT insn
= base_insn
;
5237 #define FLD(f) abuf->fields.fmt_stt_indirect_disp.f
5238 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5240 EXTRACT_IFMT_ST_DISP_CODE
5242 /* Record the fields for the semantic handler. */
5243 FLD (f_srcdst
) = f_srcdst
;
5244 FLD (f_optdisp
) = f_optdisp
;
5245 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5246 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5247 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));
5249 #if WITH_PROFILE_MODEL_P
5250 /* Record the fields for profiling. */
5251 if (PROFILE_MODEL_P (current_cpu
))
5253 FLD (in_abase
) = f_abase
;
5254 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5255 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5256 FLD (in_st_src
) = f_srcdst
;
5263 extract_fmt_stt_index_disp
:
5265 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5266 CGEN_INSN_INT insn
= base_insn
;
5267 #define FLD(f) abuf->fields.fmt_stt_index_disp.f
5268 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5270 EXTRACT_IFMT_ST_DISP_CODE
5272 /* Record the fields for the semantic handler. */
5273 FLD (f_srcdst
) = f_srcdst
;
5274 FLD (f_optdisp
) = f_optdisp
;
5275 FLD (f_scale
) = f_scale
;
5276 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5277 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5278 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));
5280 #if WITH_PROFILE_MODEL_P
5281 /* Record the fields for profiling. */
5282 if (PROFILE_MODEL_P (current_cpu
))
5284 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5285 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5286 FLD (in_index
) = f_index
;
5287 FLD (in_st_src
) = f_srcdst
;
5294 extract_fmt_stt_indirect_index_disp
:
5296 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5297 CGEN_INSN_INT insn
= base_insn
;
5298 #define FLD(f) abuf->fields.fmt_stt_indirect_index_disp.f
5299 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5301 EXTRACT_IFMT_ST_DISP_CODE
5303 /* Record the fields for the semantic handler. */
5304 FLD (f_srcdst
) = f_srcdst
;
5305 FLD (f_optdisp
) = f_optdisp
;
5306 FLD (f_scale
) = f_scale
;
5307 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5308 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5309 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5310 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));
5312 #if WITH_PROFILE_MODEL_P
5313 /* Record the fields for profiling. */
5314 if (PROFILE_MODEL_P (current_cpu
))
5316 FLD (in_abase
) = f_abase
;
5317 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5318 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5319 FLD (in_index
) = f_index
;
5320 FLD (in_st_src
) = f_srcdst
;
5327 extract_fmt_stq_offset
:
5329 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5330 CGEN_INSN_INT insn
= base_insn
;
5331 #define FLD(f) abuf->fields.fmt_stq_offset.f
5332 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
5334 EXTRACT_IFMT_ST_OFFSET_CODE
5336 /* Record the fields for the semantic handler. */
5337 FLD (f_srcdst
) = f_srcdst
;
5338 FLD (f_offset
) = f_offset
;
5339 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5340 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));
5342 #if WITH_PROFILE_MODEL_P
5343 /* Record the fields for profiling. */
5344 if (PROFILE_MODEL_P (current_cpu
))
5346 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5347 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5348 FLD (in_h_gr_add__VM_index_of_st_src_3
) = ((FLD (f_srcdst
)) + (3));
5349 FLD (in_st_src
) = f_srcdst
;
5356 extract_fmt_stq_indirect_offset
:
5358 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5359 CGEN_INSN_INT insn
= base_insn
;
5360 #define FLD(f) abuf->fields.fmt_stq_indirect_offset.f
5361 EXTRACT_IFMT_ST_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
5363 EXTRACT_IFMT_ST_OFFSET_CODE
5365 /* Record the fields for the semantic handler. */
5366 FLD (f_srcdst
) = f_srcdst
;
5367 FLD (f_offset
) = f_offset
;
5368 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5369 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5370 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));
5372 #if WITH_PROFILE_MODEL_P
5373 /* Record the fields for profiling. */
5374 if (PROFILE_MODEL_P (current_cpu
))
5376 FLD (in_abase
) = f_abase
;
5377 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5378 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5379 FLD (in_h_gr_add__VM_index_of_st_src_3
) = ((FLD (f_srcdst
)) + (3));
5380 FLD (in_st_src
) = f_srcdst
;
5387 extract_fmt_stq_indirect
:
5389 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5390 CGEN_INSN_INT insn
= base_insn
;
5391 #define FLD(f) abuf->fields.fmt_stq_indirect.f
5392 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5394 EXTRACT_IFMT_ST_INDIRECT_CODE
5396 /* Record the fields for the semantic handler. */
5397 FLD (f_srcdst
) = f_srcdst
;
5398 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5399 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5400 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));
5402 #if WITH_PROFILE_MODEL_P
5403 /* Record the fields for profiling. */
5404 if (PROFILE_MODEL_P (current_cpu
))
5406 FLD (in_abase
) = f_abase
;
5407 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5408 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5409 FLD (in_h_gr_add__VM_index_of_st_src_3
) = ((FLD (f_srcdst
)) + (3));
5410 FLD (in_st_src
) = f_srcdst
;
5417 extract_fmt_stq_indirect_index
:
5419 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5420 CGEN_INSN_INT insn
= base_insn
;
5421 #define FLD(f) abuf->fields.fmt_stq_indirect_index.f
5422 EXTRACT_IFMT_ST_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5424 EXTRACT_IFMT_ST_INDIRECT_CODE
5426 /* Record the fields for the semantic handler. */
5427 FLD (f_srcdst
) = f_srcdst
;
5428 FLD (f_scale
) = f_scale
;
5429 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5430 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5431 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5432 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));
5434 #if WITH_PROFILE_MODEL_P
5435 /* Record the fields for profiling. */
5436 if (PROFILE_MODEL_P (current_cpu
))
5438 FLD (in_abase
) = f_abase
;
5439 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5440 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5441 FLD (in_h_gr_add__VM_index_of_st_src_3
) = ((FLD (f_srcdst
)) + (3));
5442 FLD (in_index
) = f_index
;
5443 FLD (in_st_src
) = f_srcdst
;
5450 extract_fmt_stq_disp
:
5452 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5453 CGEN_INSN_INT insn
= base_insn
;
5454 #define FLD(f) abuf->fields.fmt_stq_disp.f
5455 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5457 EXTRACT_IFMT_ST_DISP_CODE
5459 /* Record the fields for the semantic handler. */
5460 FLD (f_srcdst
) = f_srcdst
;
5461 FLD (f_optdisp
) = f_optdisp
;
5462 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5463 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));
5465 #if WITH_PROFILE_MODEL_P
5466 /* Record the fields for profiling. */
5467 if (PROFILE_MODEL_P (current_cpu
))
5469 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5470 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5471 FLD (in_h_gr_add__VM_index_of_st_src_3
) = ((FLD (f_srcdst
)) + (3));
5472 FLD (in_st_src
) = f_srcdst
;
5479 extract_fmt_stq_indirect_disp
:
5481 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5482 CGEN_INSN_INT insn
= base_insn
;
5483 #define FLD(f) abuf->fields.fmt_stq_indirect_disp.f
5484 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5486 EXTRACT_IFMT_ST_DISP_CODE
5488 /* Record the fields for the semantic handler. */
5489 FLD (f_srcdst
) = f_srcdst
;
5490 FLD (f_optdisp
) = f_optdisp
;
5491 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
5492 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5493 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));
5495 #if WITH_PROFILE_MODEL_P
5496 /* Record the fields for profiling. */
5497 if (PROFILE_MODEL_P (current_cpu
))
5499 FLD (in_abase
) = f_abase
;
5500 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5501 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5502 FLD (in_h_gr_add__VM_index_of_st_src_3
) = ((FLD (f_srcdst
)) + (3));
5503 FLD (in_st_src
) = f_srcdst
;
5510 extract_fmt_stq_index_disp
:
5512 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5513 CGEN_INSN_INT insn
= base_insn
;
5514 #define FLD(f) abuf->fields.fmt_stq_index_disp.f
5515 EXTRACT_IFMT_ST_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
5517 EXTRACT_IFMT_ST_DISP_CODE
5519 /* Record the fields for the semantic handler. */
5520 FLD (f_srcdst
) = f_srcdst
;
5521 FLD (f_optdisp
) = f_optdisp
;
5522 FLD (f_scale
) = f_scale
;
5523 FLD (i_index
) = & CPU (h_gr
)[f_index
];
5524 FLD (i_st_src
) = & CPU (h_gr
)[f_srcdst
];
5525 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));
5527 #if WITH_PROFILE_MODEL_P
5528 /* Record the fields for profiling. */
5529 if (PROFILE_MODEL_P (current_cpu
))
5531 FLD (in_h_gr_add__VM_index_of_st_src_1
) = ((FLD (f_srcdst
)) + (1));
5532 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5533 FLD (in_h_gr_add__VM_index_of_st_src_3
) = ((FLD (f_srcdst
)) + (3));
5534 FLD (in_index
) = f_index
;
5535 FLD (in_st_src
) = f_srcdst
;
5542 extract_fmt_stq_indirect_index_disp
:
5544 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5545 CGEN_INSN_INT insn
= base_insn
;
5546 #define FLD(f) abuf->fields.fmt_stq_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_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));
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_1
) = ((FLD (f_srcdst
)) + (1));
5566 FLD (in_h_gr_add__VM_index_of_st_src_2
) = ((FLD (f_srcdst
)) + (2));
5567 FLD (in_h_gr_add__VM_index_of_st_src_3
) = ((FLD (f_srcdst
)) + (3));
5568 FLD (in_index
) = f_index
;
5569 FLD (in_st_src
) = f_srcdst
;
5576 extract_fmt_cmpobe_reg
:
5578 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5579 CGEN_INSN_INT insn
= base_insn
;
5580 #define FLD(f) abuf->fields.cti.fields.fmt_cmpobe_reg.f
5581 EXTRACT_IFMT_CMPOBE_REG_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5583 EXTRACT_IFMT_CMPOBE_REG_CODE
5585 /* Record the fields for the semantic handler. */
5586 FLD (i_br_disp
) = f_br_disp
;
5587 FLD (i_br_src1
) = & CPU (h_gr
)[f_br_src1
];
5588 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5589 SEM_BRANCH_INIT_EXTRACT (abuf
);
5590 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));
5592 #if WITH_PROFILE_MODEL_P
5593 /* Record the fields for profiling. */
5594 if (PROFILE_MODEL_P (current_cpu
))
5596 FLD (in_br_src1
) = f_br_src1
;
5597 FLD (in_br_src2
) = f_br_src2
;
5604 extract_fmt_cmpobe_lit
:
5606 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5607 CGEN_INSN_INT insn
= base_insn
;
5608 #define FLD(f) abuf->fields.cti.fields.fmt_cmpobe_lit.f
5609 EXTRACT_IFMT_CMPOBE_LIT_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5611 EXTRACT_IFMT_CMPOBE_LIT_CODE
5613 /* Record the fields for the semantic handler. */
5614 FLD (f_br_src1
) = f_br_src1
;
5615 FLD (i_br_disp
) = f_br_disp
;
5616 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5617 SEM_BRANCH_INIT_EXTRACT (abuf
);
5618 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));
5620 #if WITH_PROFILE_MODEL_P
5621 /* Record the fields for profiling. */
5622 if (PROFILE_MODEL_P (current_cpu
))
5624 FLD (in_br_src2
) = f_br_src2
;
5631 extract_fmt_cmpobl_reg
:
5633 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5634 CGEN_INSN_INT insn
= base_insn
;
5635 #define FLD(f) abuf->fields.cti.fields.fmt_cmpobl_reg.f
5636 EXTRACT_IFMT_CMPOBE_REG_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5638 EXTRACT_IFMT_CMPOBE_REG_CODE
5640 /* Record the fields for the semantic handler. */
5641 FLD (i_br_disp
) = f_br_disp
;
5642 FLD (i_br_src1
) = & CPU (h_gr
)[f_br_src1
];
5643 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5644 SEM_BRANCH_INIT_EXTRACT (abuf
);
5645 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));
5647 #if WITH_PROFILE_MODEL_P
5648 /* Record the fields for profiling. */
5649 if (PROFILE_MODEL_P (current_cpu
))
5651 FLD (in_br_src1
) = f_br_src1
;
5652 FLD (in_br_src2
) = f_br_src2
;
5659 extract_fmt_cmpobl_lit
:
5661 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5662 CGEN_INSN_INT insn
= base_insn
;
5663 #define FLD(f) abuf->fields.cti.fields.fmt_cmpobl_lit.f
5664 EXTRACT_IFMT_CMPOBE_LIT_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5666 EXTRACT_IFMT_CMPOBE_LIT_CODE
5668 /* Record the fields for the semantic handler. */
5669 FLD (f_br_src1
) = f_br_src1
;
5670 FLD (i_br_disp
) = f_br_disp
;
5671 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5672 SEM_BRANCH_INIT_EXTRACT (abuf
);
5673 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));
5675 #if WITH_PROFILE_MODEL_P
5676 /* Record the fields for profiling. */
5677 if (PROFILE_MODEL_P (current_cpu
))
5679 FLD (in_br_src2
) = f_br_src2
;
5686 extract_fmt_bbc_reg
:
5688 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5689 CGEN_INSN_INT insn
= base_insn
;
5690 #define FLD(f) abuf->fields.cti.fields.fmt_bbc_reg.f
5691 EXTRACT_IFMT_CMPOBE_REG_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5693 EXTRACT_IFMT_CMPOBE_REG_CODE
5695 /* Record the fields for the semantic handler. */
5696 FLD (i_br_disp
) = f_br_disp
;
5697 FLD (i_br_src1
) = & CPU (h_gr
)[f_br_src1
];
5698 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5699 SEM_BRANCH_INIT_EXTRACT (abuf
);
5700 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));
5702 #if WITH_PROFILE_MODEL_P
5703 /* Record the fields for profiling. */
5704 if (PROFILE_MODEL_P (current_cpu
))
5706 FLD (in_br_src1
) = f_br_src1
;
5707 FLD (in_br_src2
) = f_br_src2
;
5714 extract_fmt_bbc_lit
:
5716 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5717 CGEN_INSN_INT insn
= base_insn
;
5718 #define FLD(f) abuf->fields.cti.fields.fmt_bbc_lit.f
5719 EXTRACT_IFMT_CMPOBE_LIT_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5721 EXTRACT_IFMT_CMPOBE_LIT_CODE
5723 /* Record the fields for the semantic handler. */
5724 FLD (f_br_src1
) = f_br_src1
;
5725 FLD (i_br_disp
) = f_br_disp
;
5726 FLD (i_br_src2
) = & CPU (h_gr
)[f_br_src2
];
5727 SEM_BRANCH_INIT_EXTRACT (abuf
);
5728 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));
5730 #if WITH_PROFILE_MODEL_P
5731 /* Record the fields for profiling. */
5732 if (PROFILE_MODEL_P (current_cpu
))
5734 FLD (in_br_src2
) = f_br_src2
;
5743 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5744 CGEN_INSN_INT insn
= base_insn
;
5745 #define FLD(f) abuf->fields.fmt_cmpi.f
5746 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
5748 EXTRACT_IFMT_MULO_CODE
5750 /* Record the fields for the semantic handler. */
5751 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
5752 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
5753 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpi", "src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, (char *) 0));
5755 #if WITH_PROFILE_MODEL_P
5756 /* Record the fields for profiling. */
5757 if (PROFILE_MODEL_P (current_cpu
))
5759 FLD (in_src1
) = f_src1
;
5760 FLD (in_src2
) = f_src2
;
5769 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5770 CGEN_INSN_INT insn
= base_insn
;
5771 #define FLD(f) abuf->fields.fmt_cmpi1.f
5772 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
5774 EXTRACT_IFMT_MULO1_CODE
5776 /* Record the fields for the semantic handler. */
5777 FLD (f_src1
) = f_src1
;
5778 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
5779 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));
5781 #if WITH_PROFILE_MODEL_P
5782 /* Record the fields for profiling. */
5783 if (PROFILE_MODEL_P (current_cpu
))
5785 FLD (in_src2
) = f_src2
;
5794 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5795 CGEN_INSN_INT insn
= base_insn
;
5796 #define FLD(f) abuf->fields.fmt_cmpi2.f
5797 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
5799 EXTRACT_IFMT_MULO2_CODE
5801 /* Record the fields for the semantic handler. */
5802 FLD (f_src2
) = f_src2
;
5803 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
5804 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));
5806 #if WITH_PROFILE_MODEL_P
5807 /* Record the fields for profiling. */
5808 if (PROFILE_MODEL_P (current_cpu
))
5810 FLD (in_src1
) = f_src1
;
5819 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5820 CGEN_INSN_INT insn
= base_insn
;
5821 #define FLD(f) abuf->fields.fmt_cmpi3.f
5822 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
5824 EXTRACT_IFMT_MULO3_CODE
5826 /* Record the fields for the semantic handler. */
5827 FLD (f_src1
) = f_src1
;
5828 FLD (f_src2
) = f_src2
;
5829 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));
5831 #if WITH_PROFILE_MODEL_P
5832 /* Record the fields for profiling. */
5833 if (PROFILE_MODEL_P (current_cpu
))
5843 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5844 CGEN_INSN_INT insn
= base_insn
;
5845 #define FLD(f) abuf->fields.fmt_cmpo.f
5846 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
5848 EXTRACT_IFMT_MULO_CODE
5850 /* Record the fields for the semantic handler. */
5851 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
5852 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
5853 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_cmpo", "src1 0x%x", 'x', f_src1
, "src2 0x%x", 'x', f_src2
, (char *) 0));
5855 #if WITH_PROFILE_MODEL_P
5856 /* Record the fields for profiling. */
5857 if (PROFILE_MODEL_P (current_cpu
))
5859 FLD (in_src1
) = f_src1
;
5860 FLD (in_src2
) = f_src2
;
5869 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5870 CGEN_INSN_INT insn
= base_insn
;
5871 #define FLD(f) abuf->fields.fmt_cmpo1.f
5872 EXTRACT_IFMT_MULO1_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
5874 EXTRACT_IFMT_MULO1_CODE
5876 /* Record the fields for the semantic handler. */
5877 FLD (f_src1
) = f_src1
;
5878 FLD (i_src2
) = & CPU (h_gr
)[f_src2
];
5879 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));
5881 #if WITH_PROFILE_MODEL_P
5882 /* Record the fields for profiling. */
5883 if (PROFILE_MODEL_P (current_cpu
))
5885 FLD (in_src2
) = f_src2
;
5894 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5895 CGEN_INSN_INT insn
= base_insn
;
5896 #define FLD(f) abuf->fields.fmt_cmpo2.f
5897 EXTRACT_IFMT_MULO2_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
5899 EXTRACT_IFMT_MULO2_CODE
5901 /* Record the fields for the semantic handler. */
5902 FLD (f_src2
) = f_src2
;
5903 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
5904 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));
5906 #if WITH_PROFILE_MODEL_P
5907 /* Record the fields for profiling. */
5908 if (PROFILE_MODEL_P (current_cpu
))
5910 FLD (in_src1
) = f_src1
;
5919 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5920 CGEN_INSN_INT insn
= base_insn
;
5921 #define FLD(f) abuf->fields.fmt_cmpo3.f
5922 EXTRACT_IFMT_MULO3_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
5924 EXTRACT_IFMT_MULO3_CODE
5926 /* Record the fields for the semantic handler. */
5927 FLD (f_src1
) = f_src1
;
5928 FLD (f_src2
) = f_src2
;
5929 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));
5931 #if WITH_PROFILE_MODEL_P
5932 /* Record the fields for profiling. */
5933 if (PROFILE_MODEL_P (current_cpu
))
5941 extract_fmt_testno_reg
:
5943 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5944 CGEN_INSN_INT insn
= base_insn
;
5945 #define FLD(f) abuf->fields.fmt_testno_reg.f
5946 EXTRACT_IFMT_CMPOBE_REG_VARS
/* f-opcode f-br-src1 f-br-src2 f-br-m1 f-br-disp f-br-zero */
5948 EXTRACT_IFMT_CMPOBE_REG_CODE
5950 /* Record the fields for the semantic handler. */
5951 FLD (i_br_src1
) = & CPU (h_gr
)[f_br_src1
];
5952 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_testno_reg", "br_src1 0x%x", 'x', f_br_src1
, (char *) 0));
5954 #if WITH_PROFILE_MODEL_P
5955 /* Record the fields for profiling. */
5956 if (PROFILE_MODEL_P (current_cpu
))
5958 FLD (out_br_src1
) = f_br_src1
;
5967 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5968 CGEN_INSN_INT insn
= base_insn
;
5969 #define FLD(f) abuf->fields.cti.fields.fmt_bno.f
5970 EXTRACT_IFMT_BNO_VARS
/* f-opcode f-ctrl-disp f-ctrl-zero */
5972 EXTRACT_IFMT_BNO_CODE
5974 /* Record the fields for the semantic handler. */
5975 FLD (i_ctrl_disp
) = f_ctrl_disp
;
5976 SEM_BRANCH_INIT_EXTRACT (abuf
);
5977 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_bno", "ctrl_disp 0x%x", 'x', f_ctrl_disp
, (char *) 0));
5979 #if WITH_PROFILE_MODEL_P
5980 /* Record the fields for profiling. */
5981 if (PROFILE_MODEL_P (current_cpu
))
5991 const IDESC
*idesc
= &i960base_insn_data
[itype
];
5992 CGEN_INSN_INT insn
= base_insn
;
5993 #define FLD(f) abuf->fields.cti.fields.fmt_b.f
5994 EXTRACT_IFMT_BNO_VARS
/* f-opcode f-ctrl-disp f-ctrl-zero */
5996 EXTRACT_IFMT_BNO_CODE
5998 /* Record the fields for the semantic handler. */
5999 FLD (i_ctrl_disp
) = f_ctrl_disp
;
6000 SEM_BRANCH_INIT_EXTRACT (abuf
);
6001 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_b", "ctrl_disp 0x%x", 'x', f_ctrl_disp
, (char *) 0));
6003 #if WITH_PROFILE_MODEL_P
6004 /* Record the fields for profiling. */
6005 if (PROFILE_MODEL_P (current_cpu
))
6013 extract_fmt_bx_indirect_offset
:
6015 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6016 CGEN_INSN_INT insn
= base_insn
;
6017 #define FLD(f) abuf->fields.cti.fields.fmt_bx_indirect_offset.f
6018 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
6020 EXTRACT_IFMT_LDA_OFFSET_CODE
6022 /* Record the fields for the semantic handler. */
6023 FLD (f_offset
) = f_offset
;
6024 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
6025 SEM_BRANCH_INIT_EXTRACT (abuf
);
6026 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));
6028 #if WITH_PROFILE_MODEL_P
6029 /* Record the fields for profiling. */
6030 if (PROFILE_MODEL_P (current_cpu
))
6032 FLD (in_abase
) = f_abase
;
6039 extract_fmt_bx_indirect
:
6041 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6042 CGEN_INSN_INT insn
= base_insn
;
6043 #define FLD(f) abuf->fields.cti.fields.fmt_bx_indirect.f
6044 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6046 EXTRACT_IFMT_LDA_INDIRECT_CODE
6048 /* Record the fields for the semantic handler. */
6049 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
6050 SEM_BRANCH_INIT_EXTRACT (abuf
);
6051 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_bx_indirect", "abase 0x%x", 'x', f_abase
, (char *) 0));
6053 #if WITH_PROFILE_MODEL_P
6054 /* Record the fields for profiling. */
6055 if (PROFILE_MODEL_P (current_cpu
))
6057 FLD (in_abase
) = f_abase
;
6064 extract_fmt_bx_indirect_index
:
6066 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6067 CGEN_INSN_INT insn
= base_insn
;
6068 #define FLD(f) abuf->fields.cti.fields.fmt_bx_indirect_index.f
6069 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6071 EXTRACT_IFMT_LDA_INDIRECT_CODE
6073 /* Record the fields for the semantic handler. */
6074 FLD (f_scale
) = f_scale
;
6075 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
6076 FLD (i_index
) = & CPU (h_gr
)[f_index
];
6077 SEM_BRANCH_INIT_EXTRACT (abuf
);
6078 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));
6080 #if WITH_PROFILE_MODEL_P
6081 /* Record the fields for profiling. */
6082 if (PROFILE_MODEL_P (current_cpu
))
6084 FLD (in_abase
) = f_abase
;
6085 FLD (in_index
) = f_index
;
6092 extract_fmt_bx_disp
:
6094 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6095 CGEN_INSN_INT insn
= base_insn
;
6096 #define FLD(f) abuf->fields.cti.fields.fmt_bx_disp.f
6097 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6099 EXTRACT_IFMT_LDA_DISP_CODE
6101 /* Record the fields for the semantic handler. */
6102 FLD (f_optdisp
) = f_optdisp
;
6103 SEM_BRANCH_INIT_EXTRACT (abuf
);
6104 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_bx_disp", "f_optdisp 0x%x", 'x', f_optdisp
, (char *) 0));
6106 #if WITH_PROFILE_MODEL_P
6107 /* Record the fields for profiling. */
6108 if (PROFILE_MODEL_P (current_cpu
))
6116 extract_fmt_bx_indirect_disp
:
6118 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6119 CGEN_INSN_INT insn
= base_insn
;
6120 #define FLD(f) abuf->fields.cti.fields.fmt_bx_indirect_disp.f
6121 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6123 EXTRACT_IFMT_LDA_DISP_CODE
6125 /* Record the fields for the semantic handler. */
6126 FLD (f_optdisp
) = f_optdisp
;
6127 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
6128 SEM_BRANCH_INIT_EXTRACT (abuf
);
6129 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));
6131 #if WITH_PROFILE_MODEL_P
6132 /* Record the fields for profiling. */
6133 if (PROFILE_MODEL_P (current_cpu
))
6135 FLD (in_abase
) = f_abase
;
6142 extract_fmt_callx_disp
:
6144 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6145 CGEN_INSN_INT insn
= base_insn
;
6146 #define FLD(f) abuf->fields.cti.fields.fmt_callx_disp.f
6147 EXTRACT_IFMT_LDA_DISP_VARS
/* f-opcode f-optdisp f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6149 EXTRACT_IFMT_LDA_DISP_CODE
6151 /* Record the fields for the semantic handler. */
6152 FLD (f_optdisp
) = f_optdisp
;
6153 SEM_BRANCH_INIT_EXTRACT (abuf
);
6154 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_callx_disp", "f_optdisp 0x%x", 'x', f_optdisp
, (char *) 0));
6156 #if WITH_PROFILE_MODEL_P
6157 /* Record the fields for profiling. */
6158 if (PROFILE_MODEL_P (current_cpu
))
6160 FLD (in_h_gr_0
) = 0;
6161 FLD (in_h_gr_1
) = 1;
6162 FLD (in_h_gr_10
) = 10;
6163 FLD (in_h_gr_11
) = 11;
6164 FLD (in_h_gr_12
) = 12;
6165 FLD (in_h_gr_13
) = 13;
6166 FLD (in_h_gr_14
) = 14;
6167 FLD (in_h_gr_15
) = 15;
6168 FLD (in_h_gr_2
) = 2;
6169 FLD (in_h_gr_3
) = 3;
6170 FLD (in_h_gr_31
) = 31;
6171 FLD (in_h_gr_4
) = 4;
6172 FLD (in_h_gr_5
) = 5;
6173 FLD (in_h_gr_6
) = 6;
6174 FLD (in_h_gr_7
) = 7;
6175 FLD (in_h_gr_8
) = 8;
6176 FLD (in_h_gr_9
) = 9;
6177 FLD (out_h_gr_0
) = 0;
6178 FLD (out_h_gr_1
) = 1;
6179 FLD (out_h_gr_10
) = 10;
6180 FLD (out_h_gr_11
) = 11;
6181 FLD (out_h_gr_12
) = 12;
6182 FLD (out_h_gr_13
) = 13;
6183 FLD (out_h_gr_14
) = 14;
6184 FLD (out_h_gr_15
) = 15;
6185 FLD (out_h_gr_2
) = 2;
6186 FLD (out_h_gr_3
) = 3;
6187 FLD (out_h_gr_31
) = 31;
6188 FLD (out_h_gr_4
) = 4;
6189 FLD (out_h_gr_5
) = 5;
6190 FLD (out_h_gr_6
) = 6;
6191 FLD (out_h_gr_7
) = 7;
6192 FLD (out_h_gr_8
) = 8;
6193 FLD (out_h_gr_9
) = 9;
6200 extract_fmt_callx_indirect
:
6202 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6203 CGEN_INSN_INT insn
= base_insn
;
6204 #define FLD(f) abuf->fields.cti.fields.fmt_callx_indirect.f
6205 EXTRACT_IFMT_LDA_INDIRECT_VARS
/* f-opcode f-srcdst f-abase f-modeb f-scale f-zerob f-index */
6207 EXTRACT_IFMT_LDA_INDIRECT_CODE
6209 /* Record the fields for the semantic handler. */
6210 FLD (i_abase
) = & CPU (h_gr
)[f_abase
];
6211 SEM_BRANCH_INIT_EXTRACT (abuf
);
6212 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_callx_indirect", "abase 0x%x", 'x', f_abase
, (char *) 0));
6214 #if WITH_PROFILE_MODEL_P
6215 /* Record the fields for profiling. */
6216 if (PROFILE_MODEL_P (current_cpu
))
6218 FLD (in_abase
) = f_abase
;
6219 FLD (in_h_gr_0
) = 0;
6220 FLD (in_h_gr_1
) = 1;
6221 FLD (in_h_gr_10
) = 10;
6222 FLD (in_h_gr_11
) = 11;
6223 FLD (in_h_gr_12
) = 12;
6224 FLD (in_h_gr_13
) = 13;
6225 FLD (in_h_gr_14
) = 14;
6226 FLD (in_h_gr_15
) = 15;
6227 FLD (in_h_gr_2
) = 2;
6228 FLD (in_h_gr_3
) = 3;
6229 FLD (in_h_gr_31
) = 31;
6230 FLD (in_h_gr_4
) = 4;
6231 FLD (in_h_gr_5
) = 5;
6232 FLD (in_h_gr_6
) = 6;
6233 FLD (in_h_gr_7
) = 7;
6234 FLD (in_h_gr_8
) = 8;
6235 FLD (in_h_gr_9
) = 9;
6236 FLD (out_h_gr_0
) = 0;
6237 FLD (out_h_gr_1
) = 1;
6238 FLD (out_h_gr_10
) = 10;
6239 FLD (out_h_gr_11
) = 11;
6240 FLD (out_h_gr_12
) = 12;
6241 FLD (out_h_gr_13
) = 13;
6242 FLD (out_h_gr_14
) = 14;
6243 FLD (out_h_gr_15
) = 15;
6244 FLD (out_h_gr_2
) = 2;
6245 FLD (out_h_gr_3
) = 3;
6246 FLD (out_h_gr_31
) = 31;
6247 FLD (out_h_gr_4
) = 4;
6248 FLD (out_h_gr_5
) = 5;
6249 FLD (out_h_gr_6
) = 6;
6250 FLD (out_h_gr_7
) = 7;
6251 FLD (out_h_gr_8
) = 8;
6252 FLD (out_h_gr_9
) = 9;
6259 extract_fmt_callx_indirect_offset
:
6261 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6262 CGEN_INSN_INT insn
= base_insn
;
6263 #define FLD(f) abuf->fields.cti.fields.fmt_callx_indirect_offset.f
6264 EXTRACT_IFMT_LDA_OFFSET_VARS
/* f-opcode f-srcdst f-abase f-modea f-zeroa f-offset */
6266 EXTRACT_IFMT_LDA_OFFSET_CODE
6268 /* Record the fields for the semantic handler. */
6269 FLD (f_offset
) = f_offset
;
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_callx_indirect_offset", "f_offset 0x%x", 'x', f_offset
, "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
;
6279 FLD (in_h_gr_0
) = 0;
6280 FLD (in_h_gr_1
) = 1;
6281 FLD (in_h_gr_10
) = 10;
6282 FLD (in_h_gr_11
) = 11;
6283 FLD (in_h_gr_12
) = 12;
6284 FLD (in_h_gr_13
) = 13;
6285 FLD (in_h_gr_14
) = 14;
6286 FLD (in_h_gr_15
) = 15;
6287 FLD (in_h_gr_2
) = 2;
6288 FLD (in_h_gr_3
) = 3;
6289 FLD (in_h_gr_31
) = 31;
6290 FLD (in_h_gr_4
) = 4;
6291 FLD (in_h_gr_5
) = 5;
6292 FLD (in_h_gr_6
) = 6;
6293 FLD (in_h_gr_7
) = 7;
6294 FLD (in_h_gr_8
) = 8;
6295 FLD (in_h_gr_9
) = 9;
6296 FLD (out_h_gr_0
) = 0;
6297 FLD (out_h_gr_1
) = 1;
6298 FLD (out_h_gr_10
) = 10;
6299 FLD (out_h_gr_11
) = 11;
6300 FLD (out_h_gr_12
) = 12;
6301 FLD (out_h_gr_13
) = 13;
6302 FLD (out_h_gr_14
) = 14;
6303 FLD (out_h_gr_15
) = 15;
6304 FLD (out_h_gr_2
) = 2;
6305 FLD (out_h_gr_3
) = 3;
6306 FLD (out_h_gr_31
) = 31;
6307 FLD (out_h_gr_4
) = 4;
6308 FLD (out_h_gr_5
) = 5;
6309 FLD (out_h_gr_6
) = 6;
6310 FLD (out_h_gr_7
) = 7;
6311 FLD (out_h_gr_8
) = 8;
6312 FLD (out_h_gr_9
) = 9;
6321 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6322 CGEN_INSN_INT insn
= base_insn
;
6323 #define FLD(f) abuf->fields.cti.fields.fmt_ret.f
6324 EXTRACT_IFMT_BNO_VARS
/* f-opcode f-ctrl-disp f-ctrl-zero */
6326 EXTRACT_IFMT_BNO_CODE
6328 /* Record the fields for the semantic handler. */
6329 SEM_BRANCH_INIT_EXTRACT (abuf
);
6330 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_ret", (char *) 0));
6332 #if WITH_PROFILE_MODEL_P
6333 /* Record the fields for profiling. */
6334 if (PROFILE_MODEL_P (current_cpu
))
6336 FLD (in_h_gr_0
) = 0;
6337 FLD (in_h_gr_2
) = 2;
6338 FLD (in_h_gr_31
) = 31;
6339 FLD (out_h_gr_0
) = 0;
6340 FLD (out_h_gr_1
) = 1;
6341 FLD (out_h_gr_10
) = 10;
6342 FLD (out_h_gr_11
) = 11;
6343 FLD (out_h_gr_12
) = 12;
6344 FLD (out_h_gr_13
) = 13;
6345 FLD (out_h_gr_14
) = 14;
6346 FLD (out_h_gr_15
) = 15;
6347 FLD (out_h_gr_2
) = 2;
6348 FLD (out_h_gr_3
) = 3;
6349 FLD (out_h_gr_31
) = 31;
6350 FLD (out_h_gr_4
) = 4;
6351 FLD (out_h_gr_5
) = 5;
6352 FLD (out_h_gr_6
) = 6;
6353 FLD (out_h_gr_7
) = 7;
6354 FLD (out_h_gr_8
) = 8;
6355 FLD (out_h_gr_9
) = 9;
6364 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6365 CGEN_INSN_INT insn
= base_insn
;
6366 #define FLD(f) abuf->fields.cti.fields.fmt_calls.f
6367 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6369 EXTRACT_IFMT_MULO_CODE
6371 /* Record the fields for the semantic handler. */
6372 FLD (i_src1
) = & CPU (h_gr
)[f_src1
];
6373 SEM_BRANCH_INIT_EXTRACT (abuf
);
6374 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_calls", "src1 0x%x", 'x', f_src1
, (char *) 0));
6376 #if WITH_PROFILE_MODEL_P
6377 /* Record the fields for profiling. */
6378 if (PROFILE_MODEL_P (current_cpu
))
6380 FLD (in_src1
) = f_src1
;
6389 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6390 CGEN_INSN_INT insn
= base_insn
;
6391 #define FLD(f) abuf->fields.cti.fields.fmt_fmark.f
6392 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6394 EXTRACT_IFMT_MULO_CODE
6396 /* Record the fields for the semantic handler. */
6397 SEM_BRANCH_INIT_EXTRACT (abuf
);
6398 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_fmark", (char *) 0));
6400 #if WITH_PROFILE_MODEL_P
6401 /* Record the fields for profiling. */
6402 if (PROFILE_MODEL_P (current_cpu
))
6410 extract_fmt_flushreg
:
6412 const IDESC
*idesc
= &i960base_insn_data
[itype
];
6413 CGEN_INSN_INT insn
= base_insn
;
6414 #define FLD(f) abuf->fields.fmt_flushreg.f
6415 EXTRACT_IFMT_MULO_VARS
/* f-opcode f-srcdst f-src2 f-m3 f-m2 f-m1 f-opcode2 f-zero f-src1 */
6417 EXTRACT_IFMT_MULO_CODE
6419 /* Record the fields for the semantic handler. */
6420 TRACE_EXTRACT (current_cpu
, abuf
, (current_cpu
, pc
, "fmt_flushreg", (char *) 0));