Regenerate cgen files, update copyright year.
[deliverable/binutils-gdb.git] / sim / frv / decode.c
CommitLineData
b34f6357
DB
1/* Simulator instruction decoder for frvbf.
2
3THIS FILE IS MACHINE GENERATED WITH CGEN.
4
0f51e9bf 5Copyright 1996-2010 Free Software Foundation, Inc.
b34f6357
DB
6
7This file is part of the GNU simulators.
8
bce3bbcb
HPN
9 This file is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 3, or (at your option)
12 any later version.
b34f6357 13
bce3bbcb
HPN
14 It is distributed in the hope that it will be useful, but WITHOUT
15 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
16 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
17 License for more details.
b34f6357 18
bce3bbcb
HPN
19 You should have received a copy of the GNU General Public License along
20 with this program; if not, write to the Free Software Foundation, Inc.,
21 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
b34f6357
DB
22
23*/
24
25#define WANT_CPU frvbf
26#define WANT_CPU_FRVBF
27
28#include "sim-main.h"
29#include "sim-assert.h"
30
31/* The instruction descriptor array.
32 This is computed at runtime. Space for it is not malloc'd to save a
33 teensy bit of cpu in the decoder. Moving it to malloc space is trivial
34 but won't be done until necessary (we don't currently support the runtime
35 addition of instructions nor an SMP machine with different cpus). */
36static IDESC frvbf_insn_data[FRVBF_INSN__MAX];
37
38/* Commas between elements are contained in the macros.
39 Some of these are conditionally compiled out. */
40
41static const struct insn_sem frvbf_insn_sem[] =
42{
43 { VIRTUAL_INSN_X_INVALID, FRVBF_INSN_X_INVALID, FRVBF_SFMT_EMPTY },
44 { VIRTUAL_INSN_X_AFTER, FRVBF_INSN_X_AFTER, FRVBF_SFMT_EMPTY },
45 { VIRTUAL_INSN_X_BEFORE, FRVBF_INSN_X_BEFORE, FRVBF_SFMT_EMPTY },
46 { VIRTUAL_INSN_X_CTI_CHAIN, FRVBF_INSN_X_CTI_CHAIN, FRVBF_SFMT_EMPTY },
47 { VIRTUAL_INSN_X_CHAIN, FRVBF_INSN_X_CHAIN, FRVBF_SFMT_EMPTY },
48 { VIRTUAL_INSN_X_BEGIN, FRVBF_INSN_X_BEGIN, FRVBF_SFMT_EMPTY },
49 { FRV_INSN_ADD, FRVBF_INSN_ADD, FRVBF_SFMT_ADD },
50 { FRV_INSN_SUB, FRVBF_INSN_SUB, FRVBF_SFMT_ADD },
51 { FRV_INSN_AND, FRVBF_INSN_AND, FRVBF_SFMT_ADD },
52 { FRV_INSN_OR, FRVBF_INSN_OR, FRVBF_SFMT_ADD },
53 { FRV_INSN_XOR, FRVBF_INSN_XOR, FRVBF_SFMT_ADD },
54 { FRV_INSN_NOT, FRVBF_INSN_NOT, FRVBF_SFMT_NOT },
55 { FRV_INSN_SDIV, FRVBF_INSN_SDIV, FRVBF_SFMT_SDIV },
56 { FRV_INSN_NSDIV, FRVBF_INSN_NSDIV, FRVBF_SFMT_SDIV },
57 { FRV_INSN_UDIV, FRVBF_INSN_UDIV, FRVBF_SFMT_SDIV },
58 { FRV_INSN_NUDIV, FRVBF_INSN_NUDIV, FRVBF_SFMT_SDIV },
59 { FRV_INSN_SMUL, FRVBF_INSN_SMUL, FRVBF_SFMT_SMUL },
60 { FRV_INSN_UMUL, FRVBF_INSN_UMUL, FRVBF_SFMT_SMUL },
e930b1f5
DB
61 { FRV_INSN_SMU, FRVBF_INSN_SMU, FRVBF_SFMT_SMU },
62 { FRV_INSN_SMASS, FRVBF_INSN_SMASS, FRVBF_SFMT_SMASS },
63 { FRV_INSN_SMSSS, FRVBF_INSN_SMSSS, FRVBF_SFMT_SMASS },
b34f6357
DB
64 { FRV_INSN_SLL, FRVBF_INSN_SLL, FRVBF_SFMT_ADD },
65 { FRV_INSN_SRL, FRVBF_INSN_SRL, FRVBF_SFMT_ADD },
66 { FRV_INSN_SRA, FRVBF_INSN_SRA, FRVBF_SFMT_ADD },
e930b1f5
DB
67 { FRV_INSN_SLASS, FRVBF_INSN_SLASS, FRVBF_SFMT_ADD },
68 { FRV_INSN_SCUTSS, FRVBF_INSN_SCUTSS, FRVBF_SFMT_SCUTSS },
b34f6357
DB
69 { FRV_INSN_SCAN, FRVBF_INSN_SCAN, FRVBF_SFMT_ADD },
70 { FRV_INSN_CADD, FRVBF_INSN_CADD, FRVBF_SFMT_CADD },
71 { FRV_INSN_CSUB, FRVBF_INSN_CSUB, FRVBF_SFMT_CADD },
72 { FRV_INSN_CAND, FRVBF_INSN_CAND, FRVBF_SFMT_CADD },
73 { FRV_INSN_COR, FRVBF_INSN_COR, FRVBF_SFMT_CADD },
74 { FRV_INSN_CXOR, FRVBF_INSN_CXOR, FRVBF_SFMT_CADD },
75 { FRV_INSN_CNOT, FRVBF_INSN_CNOT, FRVBF_SFMT_CNOT },
76 { FRV_INSN_CSMUL, FRVBF_INSN_CSMUL, FRVBF_SFMT_CSMUL },
77 { FRV_INSN_CSDIV, FRVBF_INSN_CSDIV, FRVBF_SFMT_CSDIV },
78 { FRV_INSN_CUDIV, FRVBF_INSN_CUDIV, FRVBF_SFMT_CSDIV },
79 { FRV_INSN_CSLL, FRVBF_INSN_CSLL, FRVBF_SFMT_CADD },
80 { FRV_INSN_CSRL, FRVBF_INSN_CSRL, FRVBF_SFMT_CADD },
81 { FRV_INSN_CSRA, FRVBF_INSN_CSRA, FRVBF_SFMT_CADD },
82 { FRV_INSN_CSCAN, FRVBF_INSN_CSCAN, FRVBF_SFMT_CADD },
83 { FRV_INSN_ADDCC, FRVBF_INSN_ADDCC, FRVBF_SFMT_ADDCC },
84 { FRV_INSN_SUBCC, FRVBF_INSN_SUBCC, FRVBF_SFMT_ADDCC },
85 { FRV_INSN_ANDCC, FRVBF_INSN_ANDCC, FRVBF_SFMT_ANDCC },
86 { FRV_INSN_ORCC, FRVBF_INSN_ORCC, FRVBF_SFMT_ANDCC },
87 { FRV_INSN_XORCC, FRVBF_INSN_XORCC, FRVBF_SFMT_ANDCC },
88 { FRV_INSN_SLLCC, FRVBF_INSN_SLLCC, FRVBF_SFMT_ADDCC },
89 { FRV_INSN_SRLCC, FRVBF_INSN_SRLCC, FRVBF_SFMT_ADDCC },
90 { FRV_INSN_SRACC, FRVBF_INSN_SRACC, FRVBF_SFMT_ADDCC },
91 { FRV_INSN_SMULCC, FRVBF_INSN_SMULCC, FRVBF_SFMT_SMULCC },
92 { FRV_INSN_UMULCC, FRVBF_INSN_UMULCC, FRVBF_SFMT_SMULCC },
93 { FRV_INSN_CADDCC, FRVBF_INSN_CADDCC, FRVBF_SFMT_CADDCC },
94 { FRV_INSN_CSUBCC, FRVBF_INSN_CSUBCC, FRVBF_SFMT_CADDCC },
95 { FRV_INSN_CSMULCC, FRVBF_INSN_CSMULCC, FRVBF_SFMT_CSMULCC },
96 { FRV_INSN_CANDCC, FRVBF_INSN_CANDCC, FRVBF_SFMT_CADDCC },
97 { FRV_INSN_CORCC, FRVBF_INSN_CORCC, FRVBF_SFMT_CADDCC },
98 { FRV_INSN_CXORCC, FRVBF_INSN_CXORCC, FRVBF_SFMT_CADDCC },
99 { FRV_INSN_CSLLCC, FRVBF_INSN_CSLLCC, FRVBF_SFMT_CADDCC },
100 { FRV_INSN_CSRLCC, FRVBF_INSN_CSRLCC, FRVBF_SFMT_CADDCC },
101 { FRV_INSN_CSRACC, FRVBF_INSN_CSRACC, FRVBF_SFMT_CADDCC },
102 { FRV_INSN_ADDX, FRVBF_INSN_ADDX, FRVBF_SFMT_ADDX },
103 { FRV_INSN_SUBX, FRVBF_INSN_SUBX, FRVBF_SFMT_ADDX },
104 { FRV_INSN_ADDXCC, FRVBF_INSN_ADDXCC, FRVBF_SFMT_ADDCC },
105 { FRV_INSN_SUBXCC, FRVBF_INSN_SUBXCC, FRVBF_SFMT_ADDCC },
e930b1f5
DB
106 { FRV_INSN_ADDSS, FRVBF_INSN_ADDSS, FRVBF_SFMT_ADD },
107 { FRV_INSN_SUBSS, FRVBF_INSN_SUBSS, FRVBF_SFMT_ADD },
b34f6357
DB
108 { FRV_INSN_ADDI, FRVBF_INSN_ADDI, FRVBF_SFMT_ADDI },
109 { FRV_INSN_SUBI, FRVBF_INSN_SUBI, FRVBF_SFMT_ADDI },
110 { FRV_INSN_ANDI, FRVBF_INSN_ANDI, FRVBF_SFMT_ADDI },
111 { FRV_INSN_ORI, FRVBF_INSN_ORI, FRVBF_SFMT_ADDI },
112 { FRV_INSN_XORI, FRVBF_INSN_XORI, FRVBF_SFMT_ADDI },
113 { FRV_INSN_SDIVI, FRVBF_INSN_SDIVI, FRVBF_SFMT_SDIVI },
114 { FRV_INSN_NSDIVI, FRVBF_INSN_NSDIVI, FRVBF_SFMT_SDIVI },
115 { FRV_INSN_UDIVI, FRVBF_INSN_UDIVI, FRVBF_SFMT_SDIVI },
116 { FRV_INSN_NUDIVI, FRVBF_INSN_NUDIVI, FRVBF_SFMT_SDIVI },
117 { FRV_INSN_SMULI, FRVBF_INSN_SMULI, FRVBF_SFMT_SMULI },
118 { FRV_INSN_UMULI, FRVBF_INSN_UMULI, FRVBF_SFMT_SMULI },
119 { FRV_INSN_SLLI, FRVBF_INSN_SLLI, FRVBF_SFMT_ADDI },
120 { FRV_INSN_SRLI, FRVBF_INSN_SRLI, FRVBF_SFMT_ADDI },
121 { FRV_INSN_SRAI, FRVBF_INSN_SRAI, FRVBF_SFMT_ADDI },
122 { FRV_INSN_SCANI, FRVBF_INSN_SCANI, FRVBF_SFMT_ADDI },
123 { FRV_INSN_ADDICC, FRVBF_INSN_ADDICC, FRVBF_SFMT_ADDICC },
124 { FRV_INSN_SUBICC, FRVBF_INSN_SUBICC, FRVBF_SFMT_ADDICC },
125 { FRV_INSN_ANDICC, FRVBF_INSN_ANDICC, FRVBF_SFMT_ANDICC },
126 { FRV_INSN_ORICC, FRVBF_INSN_ORICC, FRVBF_SFMT_ANDICC },
127 { FRV_INSN_XORICC, FRVBF_INSN_XORICC, FRVBF_SFMT_ANDICC },
128 { FRV_INSN_SMULICC, FRVBF_INSN_SMULICC, FRVBF_SFMT_SMULICC },
129 { FRV_INSN_UMULICC, FRVBF_INSN_UMULICC, FRVBF_SFMT_SMULICC },
130 { FRV_INSN_SLLICC, FRVBF_INSN_SLLICC, FRVBF_SFMT_ADDICC },
131 { FRV_INSN_SRLICC, FRVBF_INSN_SRLICC, FRVBF_SFMT_ADDICC },
132 { FRV_INSN_SRAICC, FRVBF_INSN_SRAICC, FRVBF_SFMT_ADDICC },
133 { FRV_INSN_ADDXI, FRVBF_INSN_ADDXI, FRVBF_SFMT_ADDXI },
134 { FRV_INSN_SUBXI, FRVBF_INSN_SUBXI, FRVBF_SFMT_ADDXI },
135 { FRV_INSN_ADDXICC, FRVBF_INSN_ADDXICC, FRVBF_SFMT_ADDICC },
136 { FRV_INSN_SUBXICC, FRVBF_INSN_SUBXICC, FRVBF_SFMT_ADDICC },
137 { FRV_INSN_CMPB, FRVBF_INSN_CMPB, FRVBF_SFMT_CMPB },
138 { FRV_INSN_CMPBA, FRVBF_INSN_CMPBA, FRVBF_SFMT_CMPB },
139 { FRV_INSN_SETLO, FRVBF_INSN_SETLO, FRVBF_SFMT_SETLO },
140 { FRV_INSN_SETHI, FRVBF_INSN_SETHI, FRVBF_SFMT_SETHI },
141 { FRV_INSN_SETLOS, FRVBF_INSN_SETLOS, FRVBF_SFMT_SETLOS },
142 { FRV_INSN_LDSB, FRVBF_INSN_LDSB, FRVBF_SFMT_LDSB },
143 { FRV_INSN_LDUB, FRVBF_INSN_LDUB, FRVBF_SFMT_LDSB },
144 { FRV_INSN_LDSH, FRVBF_INSN_LDSH, FRVBF_SFMT_LDSB },
145 { FRV_INSN_LDUH, FRVBF_INSN_LDUH, FRVBF_SFMT_LDSB },
146 { FRV_INSN_LD, FRVBF_INSN_LD, FRVBF_SFMT_LDSB },
147 { FRV_INSN_LDBF, FRVBF_INSN_LDBF, FRVBF_SFMT_LDBF },
148 { FRV_INSN_LDHF, FRVBF_INSN_LDHF, FRVBF_SFMT_LDBF },
149 { FRV_INSN_LDF, FRVBF_INSN_LDF, FRVBF_SFMT_LDBF },
150 { FRV_INSN_LDC, FRVBF_INSN_LDC, FRVBF_SFMT_LDC },
151 { FRV_INSN_NLDSB, FRVBF_INSN_NLDSB, FRVBF_SFMT_NLDSB },
152 { FRV_INSN_NLDUB, FRVBF_INSN_NLDUB, FRVBF_SFMT_NLDSB },
153 { FRV_INSN_NLDSH, FRVBF_INSN_NLDSH, FRVBF_SFMT_NLDSB },
154 { FRV_INSN_NLDUH, FRVBF_INSN_NLDUH, FRVBF_SFMT_NLDSB },
155 { FRV_INSN_NLD, FRVBF_INSN_NLD, FRVBF_SFMT_NLDSB },
156 { FRV_INSN_NLDBF, FRVBF_INSN_NLDBF, FRVBF_SFMT_NLDBF },
157 { FRV_INSN_NLDHF, FRVBF_INSN_NLDHF, FRVBF_SFMT_NLDBF },
158 { FRV_INSN_NLDF, FRVBF_INSN_NLDF, FRVBF_SFMT_NLDBF },
159 { FRV_INSN_LDD, FRVBF_INSN_LDD, FRVBF_SFMT_LDD },
160 { FRV_INSN_LDDF, FRVBF_INSN_LDDF, FRVBF_SFMT_LDDF },
161 { FRV_INSN_LDDC, FRVBF_INSN_LDDC, FRVBF_SFMT_LDDC },
162 { FRV_INSN_NLDD, FRVBF_INSN_NLDD, FRVBF_SFMT_NLDD },
163 { FRV_INSN_NLDDF, FRVBF_INSN_NLDDF, FRVBF_SFMT_NLDDF },
164 { FRV_INSN_LDQ, FRVBF_INSN_LDQ, FRVBF_SFMT_LDQ },
165 { FRV_INSN_LDQF, FRVBF_INSN_LDQF, FRVBF_SFMT_LDQF },
166 { FRV_INSN_LDQC, FRVBF_INSN_LDQC, FRVBF_SFMT_LDQC },
167 { FRV_INSN_NLDQ, FRVBF_INSN_NLDQ, FRVBF_SFMT_NLDQ },
168 { FRV_INSN_NLDQF, FRVBF_INSN_NLDQF, FRVBF_SFMT_NLDQF },
169 { FRV_INSN_LDSBU, FRVBF_INSN_LDSBU, FRVBF_SFMT_LDSBU },
170 { FRV_INSN_LDUBU, FRVBF_INSN_LDUBU, FRVBF_SFMT_LDSBU },
171 { FRV_INSN_LDSHU, FRVBF_INSN_LDSHU, FRVBF_SFMT_LDSBU },
172 { FRV_INSN_LDUHU, FRVBF_INSN_LDUHU, FRVBF_SFMT_LDSBU },
173 { FRV_INSN_LDU, FRVBF_INSN_LDU, FRVBF_SFMT_LDSBU },
174 { FRV_INSN_NLDSBU, FRVBF_INSN_NLDSBU, FRVBF_SFMT_NLDSBU },
175 { FRV_INSN_NLDUBU, FRVBF_INSN_NLDUBU, FRVBF_SFMT_NLDSBU },
176 { FRV_INSN_NLDSHU, FRVBF_INSN_NLDSHU, FRVBF_SFMT_NLDSBU },
177 { FRV_INSN_NLDUHU, FRVBF_INSN_NLDUHU, FRVBF_SFMT_NLDSBU },
178 { FRV_INSN_NLDU, FRVBF_INSN_NLDU, FRVBF_SFMT_NLDSBU },
179 { FRV_INSN_LDBFU, FRVBF_INSN_LDBFU, FRVBF_SFMT_LDBFU },
180 { FRV_INSN_LDHFU, FRVBF_INSN_LDHFU, FRVBF_SFMT_LDBFU },
181 { FRV_INSN_LDFU, FRVBF_INSN_LDFU, FRVBF_SFMT_LDBFU },
182 { FRV_INSN_LDCU, FRVBF_INSN_LDCU, FRVBF_SFMT_LDCU },
183 { FRV_INSN_NLDBFU, FRVBF_INSN_NLDBFU, FRVBF_SFMT_NLDBFU },
184 { FRV_INSN_NLDHFU, FRVBF_INSN_NLDHFU, FRVBF_SFMT_NLDBFU },
185 { FRV_INSN_NLDFU, FRVBF_INSN_NLDFU, FRVBF_SFMT_NLDBFU },
186 { FRV_INSN_LDDU, FRVBF_INSN_LDDU, FRVBF_SFMT_LDDU },
187 { FRV_INSN_NLDDU, FRVBF_INSN_NLDDU, FRVBF_SFMT_NLDDU },
188 { FRV_INSN_LDDFU, FRVBF_INSN_LDDFU, FRVBF_SFMT_LDDFU },
189 { FRV_INSN_LDDCU, FRVBF_INSN_LDDCU, FRVBF_SFMT_LDDCU },
190 { FRV_INSN_NLDDFU, FRVBF_INSN_NLDDFU, FRVBF_SFMT_NLDDFU },
191 { FRV_INSN_LDQU, FRVBF_INSN_LDQU, FRVBF_SFMT_LDQU },
192 { FRV_INSN_NLDQU, FRVBF_INSN_NLDQU, FRVBF_SFMT_NLDQU },
193 { FRV_INSN_LDQFU, FRVBF_INSN_LDQFU, FRVBF_SFMT_LDQFU },
194 { FRV_INSN_LDQCU, FRVBF_INSN_LDQCU, FRVBF_SFMT_LDQCU },
195 { FRV_INSN_NLDQFU, FRVBF_INSN_NLDQFU, FRVBF_SFMT_NLDQFU },
196 { FRV_INSN_LDSBI, FRVBF_INSN_LDSBI, FRVBF_SFMT_LDSBI },
197 { FRV_INSN_LDSHI, FRVBF_INSN_LDSHI, FRVBF_SFMT_LDSBI },
198 { FRV_INSN_LDI, FRVBF_INSN_LDI, FRVBF_SFMT_LDSBI },
199 { FRV_INSN_LDUBI, FRVBF_INSN_LDUBI, FRVBF_SFMT_LDSBI },
200 { FRV_INSN_LDUHI, FRVBF_INSN_LDUHI, FRVBF_SFMT_LDSBI },
201 { FRV_INSN_LDBFI, FRVBF_INSN_LDBFI, FRVBF_SFMT_LDBFI },
202 { FRV_INSN_LDHFI, FRVBF_INSN_LDHFI, FRVBF_SFMT_LDBFI },
203 { FRV_INSN_LDFI, FRVBF_INSN_LDFI, FRVBF_SFMT_LDBFI },
204 { FRV_INSN_NLDSBI, FRVBF_INSN_NLDSBI, FRVBF_SFMT_NLDSBI },
205 { FRV_INSN_NLDUBI, FRVBF_INSN_NLDUBI, FRVBF_SFMT_NLDSBI },
206 { FRV_INSN_NLDSHI, FRVBF_INSN_NLDSHI, FRVBF_SFMT_NLDSBI },
207 { FRV_INSN_NLDUHI, FRVBF_INSN_NLDUHI, FRVBF_SFMT_NLDSBI },
208 { FRV_INSN_NLDI, FRVBF_INSN_NLDI, FRVBF_SFMT_NLDSBI },
209 { FRV_INSN_NLDBFI, FRVBF_INSN_NLDBFI, FRVBF_SFMT_NLDBFI },
210 { FRV_INSN_NLDHFI, FRVBF_INSN_NLDHFI, FRVBF_SFMT_NLDBFI },
211 { FRV_INSN_NLDFI, FRVBF_INSN_NLDFI, FRVBF_SFMT_NLDBFI },
212 { FRV_INSN_LDDI, FRVBF_INSN_LDDI, FRVBF_SFMT_LDDI },
213 { FRV_INSN_LDDFI, FRVBF_INSN_LDDFI, FRVBF_SFMT_LDDFI },
214 { FRV_INSN_NLDDI, FRVBF_INSN_NLDDI, FRVBF_SFMT_NLDDI },
215 { FRV_INSN_NLDDFI, FRVBF_INSN_NLDDFI, FRVBF_SFMT_NLDDFI },
216 { FRV_INSN_LDQI, FRVBF_INSN_LDQI, FRVBF_SFMT_LDQI },
217 { FRV_INSN_LDQFI, FRVBF_INSN_LDQFI, FRVBF_SFMT_LDQFI },
b34f6357
DB
218 { FRV_INSN_NLDQFI, FRVBF_INSN_NLDQFI, FRVBF_SFMT_NLDQFI },
219 { FRV_INSN_STB, FRVBF_INSN_STB, FRVBF_SFMT_STB },
220 { FRV_INSN_STH, FRVBF_INSN_STH, FRVBF_SFMT_STB },
221 { FRV_INSN_ST, FRVBF_INSN_ST, FRVBF_SFMT_STB },
222 { FRV_INSN_STBF, FRVBF_INSN_STBF, FRVBF_SFMT_STBF },
223 { FRV_INSN_STHF, FRVBF_INSN_STHF, FRVBF_SFMT_STBF },
224 { FRV_INSN_STF, FRVBF_INSN_STF, FRVBF_SFMT_STBF },
225 { FRV_INSN_STC, FRVBF_INSN_STC, FRVBF_SFMT_STC },
b34f6357
DB
226 { FRV_INSN_STD, FRVBF_INSN_STD, FRVBF_SFMT_STD },
227 { FRV_INSN_STDF, FRVBF_INSN_STDF, FRVBF_SFMT_STDF },
228 { FRV_INSN_STDC, FRVBF_INSN_STDC, FRVBF_SFMT_STDC },
b34f6357
DB
229 { FRV_INSN_STQ, FRVBF_INSN_STQ, FRVBF_SFMT_LDQ },
230 { FRV_INSN_STQF, FRVBF_INSN_STQF, FRVBF_SFMT_LDQF },
231 { FRV_INSN_STQC, FRVBF_INSN_STQC, FRVBF_SFMT_LDQC },
b34f6357
DB
232 { FRV_INSN_STBU, FRVBF_INSN_STBU, FRVBF_SFMT_STBU },
233 { FRV_INSN_STHU, FRVBF_INSN_STHU, FRVBF_SFMT_STBU },
234 { FRV_INSN_STU, FRVBF_INSN_STU, FRVBF_SFMT_STBU },
235 { FRV_INSN_STBFU, FRVBF_INSN_STBFU, FRVBF_SFMT_STBFU },
236 { FRV_INSN_STHFU, FRVBF_INSN_STHFU, FRVBF_SFMT_STBFU },
237 { FRV_INSN_STFU, FRVBF_INSN_STFU, FRVBF_SFMT_STBFU },
238 { FRV_INSN_STCU, FRVBF_INSN_STCU, FRVBF_SFMT_STCU },
239 { FRV_INSN_STDU, FRVBF_INSN_STDU, FRVBF_SFMT_STDU },
240 { FRV_INSN_STDFU, FRVBF_INSN_STDFU, FRVBF_SFMT_STDFU },
241 { FRV_INSN_STDCU, FRVBF_INSN_STDCU, FRVBF_SFMT_STDCU },
242 { FRV_INSN_STQU, FRVBF_INSN_STQU, FRVBF_SFMT_STQU },
243 { FRV_INSN_STQFU, FRVBF_INSN_STQFU, FRVBF_SFMT_LDQFU },
244 { FRV_INSN_STQCU, FRVBF_INSN_STQCU, FRVBF_SFMT_LDQCU },
245 { FRV_INSN_CLDSB, FRVBF_INSN_CLDSB, FRVBF_SFMT_CLDSB },
246 { FRV_INSN_CLDUB, FRVBF_INSN_CLDUB, FRVBF_SFMT_CLDSB },
247 { FRV_INSN_CLDSH, FRVBF_INSN_CLDSH, FRVBF_SFMT_CLDSB },
248 { FRV_INSN_CLDUH, FRVBF_INSN_CLDUH, FRVBF_SFMT_CLDSB },
249 { FRV_INSN_CLD, FRVBF_INSN_CLD, FRVBF_SFMT_CLDSB },
250 { FRV_INSN_CLDBF, FRVBF_INSN_CLDBF, FRVBF_SFMT_CLDBF },
251 { FRV_INSN_CLDHF, FRVBF_INSN_CLDHF, FRVBF_SFMT_CLDBF },
252 { FRV_INSN_CLDF, FRVBF_INSN_CLDF, FRVBF_SFMT_CLDBF },
253 { FRV_INSN_CLDD, FRVBF_INSN_CLDD, FRVBF_SFMT_CLDD },
254 { FRV_INSN_CLDDF, FRVBF_INSN_CLDDF, FRVBF_SFMT_CLDDF },
255 { FRV_INSN_CLDQ, FRVBF_INSN_CLDQ, FRVBF_SFMT_CLDQ },
256 { FRV_INSN_CLDSBU, FRVBF_INSN_CLDSBU, FRVBF_SFMT_CLDSBU },
257 { FRV_INSN_CLDUBU, FRVBF_INSN_CLDUBU, FRVBF_SFMT_CLDSBU },
258 { FRV_INSN_CLDSHU, FRVBF_INSN_CLDSHU, FRVBF_SFMT_CLDSBU },
259 { FRV_INSN_CLDUHU, FRVBF_INSN_CLDUHU, FRVBF_SFMT_CLDSBU },
260 { FRV_INSN_CLDU, FRVBF_INSN_CLDU, FRVBF_SFMT_CLDSBU },
261 { FRV_INSN_CLDBFU, FRVBF_INSN_CLDBFU, FRVBF_SFMT_CLDBFU },
262 { FRV_INSN_CLDHFU, FRVBF_INSN_CLDHFU, FRVBF_SFMT_CLDBFU },
263 { FRV_INSN_CLDFU, FRVBF_INSN_CLDFU, FRVBF_SFMT_CLDBFU },
264 { FRV_INSN_CLDDU, FRVBF_INSN_CLDDU, FRVBF_SFMT_CLDDU },
265 { FRV_INSN_CLDDFU, FRVBF_INSN_CLDDFU, FRVBF_SFMT_CLDDFU },
266 { FRV_INSN_CLDQU, FRVBF_INSN_CLDQU, FRVBF_SFMT_CLDQU },
267 { FRV_INSN_CSTB, FRVBF_INSN_CSTB, FRVBF_SFMT_CSTB },
268 { FRV_INSN_CSTH, FRVBF_INSN_CSTH, FRVBF_SFMT_CSTB },
269 { FRV_INSN_CST, FRVBF_INSN_CST, FRVBF_SFMT_CSTB },
270 { FRV_INSN_CSTBF, FRVBF_INSN_CSTBF, FRVBF_SFMT_CSTBF },
271 { FRV_INSN_CSTHF, FRVBF_INSN_CSTHF, FRVBF_SFMT_CSTBF },
272 { FRV_INSN_CSTF, FRVBF_INSN_CSTF, FRVBF_SFMT_CSTBF },
273 { FRV_INSN_CSTD, FRVBF_INSN_CSTD, FRVBF_SFMT_CSTD },
274 { FRV_INSN_CSTDF, FRVBF_INSN_CSTDF, FRVBF_SFMT_CSTDF },
275 { FRV_INSN_CSTQ, FRVBF_INSN_CSTQ, FRVBF_SFMT_CLDQ },
276 { FRV_INSN_CSTBU, FRVBF_INSN_CSTBU, FRVBF_SFMT_CSTBU },
277 { FRV_INSN_CSTHU, FRVBF_INSN_CSTHU, FRVBF_SFMT_CSTBU },
278 { FRV_INSN_CSTU, FRVBF_INSN_CSTU, FRVBF_SFMT_CSTBU },
279 { FRV_INSN_CSTBFU, FRVBF_INSN_CSTBFU, FRVBF_SFMT_CSTBFU },
280 { FRV_INSN_CSTHFU, FRVBF_INSN_CSTHFU, FRVBF_SFMT_CSTBFU },
281 { FRV_INSN_CSTFU, FRVBF_INSN_CSTFU, FRVBF_SFMT_CSTBFU },
282 { FRV_INSN_CSTDU, FRVBF_INSN_CSTDU, FRVBF_SFMT_CSTDU },
283 { FRV_INSN_CSTDFU, FRVBF_INSN_CSTDFU, FRVBF_SFMT_CSTDFU },
284 { FRV_INSN_STBI, FRVBF_INSN_STBI, FRVBF_SFMT_STBI },
285 { FRV_INSN_STHI, FRVBF_INSN_STHI, FRVBF_SFMT_STBI },
286 { FRV_INSN_STI, FRVBF_INSN_STI, FRVBF_SFMT_STBI },
287 { FRV_INSN_STBFI, FRVBF_INSN_STBFI, FRVBF_SFMT_STBFI },
288 { FRV_INSN_STHFI, FRVBF_INSN_STHFI, FRVBF_SFMT_STBFI },
289 { FRV_INSN_STFI, FRVBF_INSN_STFI, FRVBF_SFMT_STBFI },
290 { FRV_INSN_STDI, FRVBF_INSN_STDI, FRVBF_SFMT_STDI },
291 { FRV_INSN_STDFI, FRVBF_INSN_STDFI, FRVBF_SFMT_STDFI },
292 { FRV_INSN_STQI, FRVBF_INSN_STQI, FRVBF_SFMT_LDQI },
293 { FRV_INSN_STQFI, FRVBF_INSN_STQFI, FRVBF_SFMT_LDQFI },
294 { FRV_INSN_SWAP, FRVBF_INSN_SWAP, FRVBF_SFMT_SWAP },
295 { FRV_INSN_SWAPI, FRVBF_INSN_SWAPI, FRVBF_SFMT_SWAPI },
296 { FRV_INSN_CSWAP, FRVBF_INSN_CSWAP, FRVBF_SFMT_CSWAP },
297 { FRV_INSN_MOVGF, FRVBF_INSN_MOVGF, FRVBF_SFMT_MOVGF },
298 { FRV_INSN_MOVFG, FRVBF_INSN_MOVFG, FRVBF_SFMT_MOVFG },
299 { FRV_INSN_MOVGFD, FRVBF_INSN_MOVGFD, FRVBF_SFMT_MOVGFD },
300 { FRV_INSN_MOVFGD, FRVBF_INSN_MOVFGD, FRVBF_SFMT_MOVFGD },
301 { FRV_INSN_MOVGFQ, FRVBF_INSN_MOVGFQ, FRVBF_SFMT_MOVGFQ },
302 { FRV_INSN_MOVFGQ, FRVBF_INSN_MOVFGQ, FRVBF_SFMT_MOVFGQ },
303 { FRV_INSN_CMOVGF, FRVBF_INSN_CMOVGF, FRVBF_SFMT_CMOVGF },
304 { FRV_INSN_CMOVFG, FRVBF_INSN_CMOVFG, FRVBF_SFMT_CMOVFG },
305 { FRV_INSN_CMOVGFD, FRVBF_INSN_CMOVGFD, FRVBF_SFMT_CMOVGFD },
306 { FRV_INSN_CMOVFGD, FRVBF_INSN_CMOVFGD, FRVBF_SFMT_CMOVFGD },
307 { FRV_INSN_MOVGS, FRVBF_INSN_MOVGS, FRVBF_SFMT_MOVGS },
308 { FRV_INSN_MOVSG, FRVBF_INSN_MOVSG, FRVBF_SFMT_MOVSG },
309 { FRV_INSN_BRA, FRVBF_INSN_BRA, FRVBF_SFMT_BRA },
310 { FRV_INSN_BNO, FRVBF_INSN_BNO, FRVBF_SFMT_BNO },
311 { FRV_INSN_BEQ, FRVBF_INSN_BEQ, FRVBF_SFMT_BEQ },
312 { FRV_INSN_BNE, FRVBF_INSN_BNE, FRVBF_SFMT_BEQ },
313 { FRV_INSN_BLE, FRVBF_INSN_BLE, FRVBF_SFMT_BEQ },
314 { FRV_INSN_BGT, FRVBF_INSN_BGT, FRVBF_SFMT_BEQ },
315 { FRV_INSN_BLT, FRVBF_INSN_BLT, FRVBF_SFMT_BEQ },
316 { FRV_INSN_BGE, FRVBF_INSN_BGE, FRVBF_SFMT_BEQ },
317 { FRV_INSN_BLS, FRVBF_INSN_BLS, FRVBF_SFMT_BEQ },
318 { FRV_INSN_BHI, FRVBF_INSN_BHI, FRVBF_SFMT_BEQ },
319 { FRV_INSN_BC, FRVBF_INSN_BC, FRVBF_SFMT_BEQ },
320 { FRV_INSN_BNC, FRVBF_INSN_BNC, FRVBF_SFMT_BEQ },
321 { FRV_INSN_BN, FRVBF_INSN_BN, FRVBF_SFMT_BEQ },
322 { FRV_INSN_BP, FRVBF_INSN_BP, FRVBF_SFMT_BEQ },
323 { FRV_INSN_BV, FRVBF_INSN_BV, FRVBF_SFMT_BEQ },
324 { FRV_INSN_BNV, FRVBF_INSN_BNV, FRVBF_SFMT_BEQ },
325 { FRV_INSN_FBRA, FRVBF_INSN_FBRA, FRVBF_SFMT_BRA },
326 { FRV_INSN_FBNO, FRVBF_INSN_FBNO, FRVBF_SFMT_BNO },
327 { FRV_INSN_FBNE, FRVBF_INSN_FBNE, FRVBF_SFMT_FBNE },
328 { FRV_INSN_FBEQ, FRVBF_INSN_FBEQ, FRVBF_SFMT_FBNE },
329 { FRV_INSN_FBLG, FRVBF_INSN_FBLG, FRVBF_SFMT_FBNE },
330 { FRV_INSN_FBUE, FRVBF_INSN_FBUE, FRVBF_SFMT_FBNE },
331 { FRV_INSN_FBUL, FRVBF_INSN_FBUL, FRVBF_SFMT_FBNE },
332 { FRV_INSN_FBGE, FRVBF_INSN_FBGE, FRVBF_SFMT_FBNE },
333 { FRV_INSN_FBLT, FRVBF_INSN_FBLT, FRVBF_SFMT_FBNE },
334 { FRV_INSN_FBUGE, FRVBF_INSN_FBUGE, FRVBF_SFMT_FBNE },
335 { FRV_INSN_FBUG, FRVBF_INSN_FBUG, FRVBF_SFMT_FBNE },
336 { FRV_INSN_FBLE, FRVBF_INSN_FBLE, FRVBF_SFMT_FBNE },
337 { FRV_INSN_FBGT, FRVBF_INSN_FBGT, FRVBF_SFMT_FBNE },
338 { FRV_INSN_FBULE, FRVBF_INSN_FBULE, FRVBF_SFMT_FBNE },
339 { FRV_INSN_FBU, FRVBF_INSN_FBU, FRVBF_SFMT_FBNE },
340 { FRV_INSN_FBO, FRVBF_INSN_FBO, FRVBF_SFMT_FBNE },
341 { FRV_INSN_BCTRLR, FRVBF_INSN_BCTRLR, FRVBF_SFMT_BCTRLR },
342 { FRV_INSN_BRALR, FRVBF_INSN_BRALR, FRVBF_SFMT_BRALR },
343 { FRV_INSN_BNOLR, FRVBF_INSN_BNOLR, FRVBF_SFMT_BNOLR },
344 { FRV_INSN_BEQLR, FRVBF_INSN_BEQLR, FRVBF_SFMT_BEQLR },
345 { FRV_INSN_BNELR, FRVBF_INSN_BNELR, FRVBF_SFMT_BEQLR },
346 { FRV_INSN_BLELR, FRVBF_INSN_BLELR, FRVBF_SFMT_BEQLR },
347 { FRV_INSN_BGTLR, FRVBF_INSN_BGTLR, FRVBF_SFMT_BEQLR },
348 { FRV_INSN_BLTLR, FRVBF_INSN_BLTLR, FRVBF_SFMT_BEQLR },
349 { FRV_INSN_BGELR, FRVBF_INSN_BGELR, FRVBF_SFMT_BEQLR },
350 { FRV_INSN_BLSLR, FRVBF_INSN_BLSLR, FRVBF_SFMT_BEQLR },
351 { FRV_INSN_BHILR, FRVBF_INSN_BHILR, FRVBF_SFMT_BEQLR },
352 { FRV_INSN_BCLR, FRVBF_INSN_BCLR, FRVBF_SFMT_BEQLR },
353 { FRV_INSN_BNCLR, FRVBF_INSN_BNCLR, FRVBF_SFMT_BEQLR },
354 { FRV_INSN_BNLR, FRVBF_INSN_BNLR, FRVBF_SFMT_BEQLR },
355 { FRV_INSN_BPLR, FRVBF_INSN_BPLR, FRVBF_SFMT_BEQLR },
356 { FRV_INSN_BVLR, FRVBF_INSN_BVLR, FRVBF_SFMT_BEQLR },
357 { FRV_INSN_BNVLR, FRVBF_INSN_BNVLR, FRVBF_SFMT_BEQLR },
358 { FRV_INSN_FBRALR, FRVBF_INSN_FBRALR, FRVBF_SFMT_BRALR },
359 { FRV_INSN_FBNOLR, FRVBF_INSN_FBNOLR, FRVBF_SFMT_BNOLR },
360 { FRV_INSN_FBEQLR, FRVBF_INSN_FBEQLR, FRVBF_SFMT_FBEQLR },
361 { FRV_INSN_FBNELR, FRVBF_INSN_FBNELR, FRVBF_SFMT_FBEQLR },
362 { FRV_INSN_FBLGLR, FRVBF_INSN_FBLGLR, FRVBF_SFMT_FBEQLR },
363 { FRV_INSN_FBUELR, FRVBF_INSN_FBUELR, FRVBF_SFMT_FBEQLR },
364 { FRV_INSN_FBULLR, FRVBF_INSN_FBULLR, FRVBF_SFMT_FBEQLR },
365 { FRV_INSN_FBGELR, FRVBF_INSN_FBGELR, FRVBF_SFMT_FBEQLR },
366 { FRV_INSN_FBLTLR, FRVBF_INSN_FBLTLR, FRVBF_SFMT_FBEQLR },
367 { FRV_INSN_FBUGELR, FRVBF_INSN_FBUGELR, FRVBF_SFMT_FBEQLR },
368 { FRV_INSN_FBUGLR, FRVBF_INSN_FBUGLR, FRVBF_SFMT_FBEQLR },
369 { FRV_INSN_FBLELR, FRVBF_INSN_FBLELR, FRVBF_SFMT_FBEQLR },
370 { FRV_INSN_FBGTLR, FRVBF_INSN_FBGTLR, FRVBF_SFMT_FBEQLR },
371 { FRV_INSN_FBULELR, FRVBF_INSN_FBULELR, FRVBF_SFMT_FBEQLR },
372 { FRV_INSN_FBULR, FRVBF_INSN_FBULR, FRVBF_SFMT_FBEQLR },
373 { FRV_INSN_FBOLR, FRVBF_INSN_FBOLR, FRVBF_SFMT_FBEQLR },
374 { FRV_INSN_BCRALR, FRVBF_INSN_BCRALR, FRVBF_SFMT_BCRALR },
375 { FRV_INSN_BCNOLR, FRVBF_INSN_BCNOLR, FRVBF_SFMT_BCNOLR },
376 { FRV_INSN_BCEQLR, FRVBF_INSN_BCEQLR, FRVBF_SFMT_BCEQLR },
377 { FRV_INSN_BCNELR, FRVBF_INSN_BCNELR, FRVBF_SFMT_BCEQLR },
378 { FRV_INSN_BCLELR, FRVBF_INSN_BCLELR, FRVBF_SFMT_BCEQLR },
379 { FRV_INSN_BCGTLR, FRVBF_INSN_BCGTLR, FRVBF_SFMT_BCEQLR },
380 { FRV_INSN_BCLTLR, FRVBF_INSN_BCLTLR, FRVBF_SFMT_BCEQLR },
381 { FRV_INSN_BCGELR, FRVBF_INSN_BCGELR, FRVBF_SFMT_BCEQLR },
382 { FRV_INSN_BCLSLR, FRVBF_INSN_BCLSLR, FRVBF_SFMT_BCEQLR },
383 { FRV_INSN_BCHILR, FRVBF_INSN_BCHILR, FRVBF_SFMT_BCEQLR },
384 { FRV_INSN_BCCLR, FRVBF_INSN_BCCLR, FRVBF_SFMT_BCEQLR },
385 { FRV_INSN_BCNCLR, FRVBF_INSN_BCNCLR, FRVBF_SFMT_BCEQLR },
386 { FRV_INSN_BCNLR, FRVBF_INSN_BCNLR, FRVBF_SFMT_BCEQLR },
387 { FRV_INSN_BCPLR, FRVBF_INSN_BCPLR, FRVBF_SFMT_BCEQLR },
388 { FRV_INSN_BCVLR, FRVBF_INSN_BCVLR, FRVBF_SFMT_BCEQLR },
389 { FRV_INSN_BCNVLR, FRVBF_INSN_BCNVLR, FRVBF_SFMT_BCEQLR },
390 { FRV_INSN_FCBRALR, FRVBF_INSN_FCBRALR, FRVBF_SFMT_BCRALR },
391 { FRV_INSN_FCBNOLR, FRVBF_INSN_FCBNOLR, FRVBF_SFMT_BCNOLR },
392 { FRV_INSN_FCBEQLR, FRVBF_INSN_FCBEQLR, FRVBF_SFMT_FCBEQLR },
393 { FRV_INSN_FCBNELR, FRVBF_INSN_FCBNELR, FRVBF_SFMT_FCBEQLR },
394 { FRV_INSN_FCBLGLR, FRVBF_INSN_FCBLGLR, FRVBF_SFMT_FCBEQLR },
395 { FRV_INSN_FCBUELR, FRVBF_INSN_FCBUELR, FRVBF_SFMT_FCBEQLR },
396 { FRV_INSN_FCBULLR, FRVBF_INSN_FCBULLR, FRVBF_SFMT_FCBEQLR },
397 { FRV_INSN_FCBGELR, FRVBF_INSN_FCBGELR, FRVBF_SFMT_FCBEQLR },
398 { FRV_INSN_FCBLTLR, FRVBF_INSN_FCBLTLR, FRVBF_SFMT_FCBEQLR },
399 { FRV_INSN_FCBUGELR, FRVBF_INSN_FCBUGELR, FRVBF_SFMT_FCBEQLR },
400 { FRV_INSN_FCBUGLR, FRVBF_INSN_FCBUGLR, FRVBF_SFMT_FCBEQLR },
401 { FRV_INSN_FCBLELR, FRVBF_INSN_FCBLELR, FRVBF_SFMT_FCBEQLR },
402 { FRV_INSN_FCBGTLR, FRVBF_INSN_FCBGTLR, FRVBF_SFMT_FCBEQLR },
403 { FRV_INSN_FCBULELR, FRVBF_INSN_FCBULELR, FRVBF_SFMT_FCBEQLR },
404 { FRV_INSN_FCBULR, FRVBF_INSN_FCBULR, FRVBF_SFMT_FCBEQLR },
405 { FRV_INSN_FCBOLR, FRVBF_INSN_FCBOLR, FRVBF_SFMT_FCBEQLR },
406 { FRV_INSN_JMPL, FRVBF_INSN_JMPL, FRVBF_SFMT_JMPL },
407 { FRV_INSN_CALLL, FRVBF_INSN_CALLL, FRVBF_SFMT_JMPL },
408 { FRV_INSN_JMPIL, FRVBF_INSN_JMPIL, FRVBF_SFMT_JMPIL },
409 { FRV_INSN_CALLIL, FRVBF_INSN_CALLIL, FRVBF_SFMT_JMPIL },
410 { FRV_INSN_CALL, FRVBF_INSN_CALL, FRVBF_SFMT_CALL },
411 { FRV_INSN_RETT, FRVBF_INSN_RETT, FRVBF_SFMT_RETT },
412 { FRV_INSN_REI, FRVBF_INSN_REI, FRVBF_SFMT_REI },
413 { FRV_INSN_TRA, FRVBF_INSN_TRA, FRVBF_SFMT_TRA },
414 { FRV_INSN_TNO, FRVBF_INSN_TNO, FRVBF_SFMT_REI },
415 { FRV_INSN_TEQ, FRVBF_INSN_TEQ, FRVBF_SFMT_TEQ },
416 { FRV_INSN_TNE, FRVBF_INSN_TNE, FRVBF_SFMT_TEQ },
417 { FRV_INSN_TLE, FRVBF_INSN_TLE, FRVBF_SFMT_TEQ },
418 { FRV_INSN_TGT, FRVBF_INSN_TGT, FRVBF_SFMT_TEQ },
419 { FRV_INSN_TLT, FRVBF_INSN_TLT, FRVBF_SFMT_TEQ },
420 { FRV_INSN_TGE, FRVBF_INSN_TGE, FRVBF_SFMT_TEQ },
421 { FRV_INSN_TLS, FRVBF_INSN_TLS, FRVBF_SFMT_TEQ },
422 { FRV_INSN_THI, FRVBF_INSN_THI, FRVBF_SFMT_TEQ },
423 { FRV_INSN_TC, FRVBF_INSN_TC, FRVBF_SFMT_TEQ },
424 { FRV_INSN_TNC, FRVBF_INSN_TNC, FRVBF_SFMT_TEQ },
425 { FRV_INSN_TN, FRVBF_INSN_TN, FRVBF_SFMT_TEQ },
426 { FRV_INSN_TP, FRVBF_INSN_TP, FRVBF_SFMT_TEQ },
427 { FRV_INSN_TV, FRVBF_INSN_TV, FRVBF_SFMT_TEQ },
428 { FRV_INSN_TNV, FRVBF_INSN_TNV, FRVBF_SFMT_TEQ },
429 { FRV_INSN_FTRA, FRVBF_INSN_FTRA, FRVBF_SFMT_TRA },
430 { FRV_INSN_FTNO, FRVBF_INSN_FTNO, FRVBF_SFMT_REI },
431 { FRV_INSN_FTNE, FRVBF_INSN_FTNE, FRVBF_SFMT_FTNE },
432 { FRV_INSN_FTEQ, FRVBF_INSN_FTEQ, FRVBF_SFMT_FTNE },
433 { FRV_INSN_FTLG, FRVBF_INSN_FTLG, FRVBF_SFMT_FTNE },
434 { FRV_INSN_FTUE, FRVBF_INSN_FTUE, FRVBF_SFMT_FTNE },
435 { FRV_INSN_FTUL, FRVBF_INSN_FTUL, FRVBF_SFMT_FTNE },
436 { FRV_INSN_FTGE, FRVBF_INSN_FTGE, FRVBF_SFMT_FTNE },
437 { FRV_INSN_FTLT, FRVBF_INSN_FTLT, FRVBF_SFMT_FTNE },
438 { FRV_INSN_FTUGE, FRVBF_INSN_FTUGE, FRVBF_SFMT_FTNE },
439 { FRV_INSN_FTUG, FRVBF_INSN_FTUG, FRVBF_SFMT_FTNE },
440 { FRV_INSN_FTLE, FRVBF_INSN_FTLE, FRVBF_SFMT_FTNE },
441 { FRV_INSN_FTGT, FRVBF_INSN_FTGT, FRVBF_SFMT_FTNE },
442 { FRV_INSN_FTULE, FRVBF_INSN_FTULE, FRVBF_SFMT_FTNE },
443 { FRV_INSN_FTU, FRVBF_INSN_FTU, FRVBF_SFMT_FTNE },
444 { FRV_INSN_FTO, FRVBF_INSN_FTO, FRVBF_SFMT_FTNE },
445 { FRV_INSN_TIRA, FRVBF_INSN_TIRA, FRVBF_SFMT_TIRA },
446 { FRV_INSN_TINO, FRVBF_INSN_TINO, FRVBF_SFMT_REI },
447 { FRV_INSN_TIEQ, FRVBF_INSN_TIEQ, FRVBF_SFMT_TIEQ },
448 { FRV_INSN_TINE, FRVBF_INSN_TINE, FRVBF_SFMT_TIEQ },
449 { FRV_INSN_TILE, FRVBF_INSN_TILE, FRVBF_SFMT_TIEQ },
450 { FRV_INSN_TIGT, FRVBF_INSN_TIGT, FRVBF_SFMT_TIEQ },
451 { FRV_INSN_TILT, FRVBF_INSN_TILT, FRVBF_SFMT_TIEQ },
452 { FRV_INSN_TIGE, FRVBF_INSN_TIGE, FRVBF_SFMT_TIEQ },
453 { FRV_INSN_TILS, FRVBF_INSN_TILS, FRVBF_SFMT_TIEQ },
454 { FRV_INSN_TIHI, FRVBF_INSN_TIHI, FRVBF_SFMT_TIEQ },
455 { FRV_INSN_TIC, FRVBF_INSN_TIC, FRVBF_SFMT_TIEQ },
456 { FRV_INSN_TINC, FRVBF_INSN_TINC, FRVBF_SFMT_TIEQ },
457 { FRV_INSN_TIN, FRVBF_INSN_TIN, FRVBF_SFMT_TIEQ },
458 { FRV_INSN_TIP, FRVBF_INSN_TIP, FRVBF_SFMT_TIEQ },
459 { FRV_INSN_TIV, FRVBF_INSN_TIV, FRVBF_SFMT_TIEQ },
460 { FRV_INSN_TINV, FRVBF_INSN_TINV, FRVBF_SFMT_TIEQ },
461 { FRV_INSN_FTIRA, FRVBF_INSN_FTIRA, FRVBF_SFMT_TIRA },
462 { FRV_INSN_FTINO, FRVBF_INSN_FTINO, FRVBF_SFMT_REI },
463 { FRV_INSN_FTINE, FRVBF_INSN_FTINE, FRVBF_SFMT_FTINE },
464 { FRV_INSN_FTIEQ, FRVBF_INSN_FTIEQ, FRVBF_SFMT_FTINE },
465 { FRV_INSN_FTILG, FRVBF_INSN_FTILG, FRVBF_SFMT_FTINE },
466 { FRV_INSN_FTIUE, FRVBF_INSN_FTIUE, FRVBF_SFMT_FTINE },
467 { FRV_INSN_FTIUL, FRVBF_INSN_FTIUL, FRVBF_SFMT_FTINE },
468 { FRV_INSN_FTIGE, FRVBF_INSN_FTIGE, FRVBF_SFMT_FTINE },
469 { FRV_INSN_FTILT, FRVBF_INSN_FTILT, FRVBF_SFMT_FTINE },
470 { FRV_INSN_FTIUGE, FRVBF_INSN_FTIUGE, FRVBF_SFMT_FTINE },
471 { FRV_INSN_FTIUG, FRVBF_INSN_FTIUG, FRVBF_SFMT_FTINE },
472 { FRV_INSN_FTILE, FRVBF_INSN_FTILE, FRVBF_SFMT_FTINE },
473 { FRV_INSN_FTIGT, FRVBF_INSN_FTIGT, FRVBF_SFMT_FTINE },
474 { FRV_INSN_FTIULE, FRVBF_INSN_FTIULE, FRVBF_SFMT_FTINE },
475 { FRV_INSN_FTIU, FRVBF_INSN_FTIU, FRVBF_SFMT_FTINE },
476 { FRV_INSN_FTIO, FRVBF_INSN_FTIO, FRVBF_SFMT_FTINE },
477 { FRV_INSN_BREAK, FRVBF_INSN_BREAK, FRVBF_SFMT_BREAK },
478 { FRV_INSN_MTRAP, FRVBF_INSN_MTRAP, FRVBF_SFMT_REI },
479 { FRV_INSN_ANDCR, FRVBF_INSN_ANDCR, FRVBF_SFMT_ANDCR },
480 { FRV_INSN_ORCR, FRVBF_INSN_ORCR, FRVBF_SFMT_ANDCR },
481 { FRV_INSN_XORCR, FRVBF_INSN_XORCR, FRVBF_SFMT_ANDCR },
482 { FRV_INSN_NANDCR, FRVBF_INSN_NANDCR, FRVBF_SFMT_ANDCR },
483 { FRV_INSN_NORCR, FRVBF_INSN_NORCR, FRVBF_SFMT_ANDCR },
484 { FRV_INSN_ANDNCR, FRVBF_INSN_ANDNCR, FRVBF_SFMT_ANDCR },
485 { FRV_INSN_ORNCR, FRVBF_INSN_ORNCR, FRVBF_SFMT_ANDCR },
486 { FRV_INSN_NANDNCR, FRVBF_INSN_NANDNCR, FRVBF_SFMT_ANDCR },
487 { FRV_INSN_NORNCR, FRVBF_INSN_NORNCR, FRVBF_SFMT_ANDCR },
488 { FRV_INSN_NOTCR, FRVBF_INSN_NOTCR, FRVBF_SFMT_NOTCR },
489 { FRV_INSN_CKRA, FRVBF_INSN_CKRA, FRVBF_SFMT_CKRA },
490 { FRV_INSN_CKNO, FRVBF_INSN_CKNO, FRVBF_SFMT_CKRA },
491 { FRV_INSN_CKEQ, FRVBF_INSN_CKEQ, FRVBF_SFMT_CKEQ },
492 { FRV_INSN_CKNE, FRVBF_INSN_CKNE, FRVBF_SFMT_CKEQ },
493 { FRV_INSN_CKLE, FRVBF_INSN_CKLE, FRVBF_SFMT_CKEQ },
494 { FRV_INSN_CKGT, FRVBF_INSN_CKGT, FRVBF_SFMT_CKEQ },
495 { FRV_INSN_CKLT, FRVBF_INSN_CKLT, FRVBF_SFMT_CKEQ },
496 { FRV_INSN_CKGE, FRVBF_INSN_CKGE, FRVBF_SFMT_CKEQ },
497 { FRV_INSN_CKLS, FRVBF_INSN_CKLS, FRVBF_SFMT_CKEQ },
498 { FRV_INSN_CKHI, FRVBF_INSN_CKHI, FRVBF_SFMT_CKEQ },
499 { FRV_INSN_CKC, FRVBF_INSN_CKC, FRVBF_SFMT_CKEQ },
500 { FRV_INSN_CKNC, FRVBF_INSN_CKNC, FRVBF_SFMT_CKEQ },
501 { FRV_INSN_CKN, FRVBF_INSN_CKN, FRVBF_SFMT_CKEQ },
502 { FRV_INSN_CKP, FRVBF_INSN_CKP, FRVBF_SFMT_CKEQ },
503 { FRV_INSN_CKV, FRVBF_INSN_CKV, FRVBF_SFMT_CKEQ },
504 { FRV_INSN_CKNV, FRVBF_INSN_CKNV, FRVBF_SFMT_CKEQ },
505 { FRV_INSN_FCKRA, FRVBF_INSN_FCKRA, FRVBF_SFMT_FCKRA },
506 { FRV_INSN_FCKNO, FRVBF_INSN_FCKNO, FRVBF_SFMT_FCKRA },
507 { FRV_INSN_FCKNE, FRVBF_INSN_FCKNE, FRVBF_SFMT_FCKNE },
508 { FRV_INSN_FCKEQ, FRVBF_INSN_FCKEQ, FRVBF_SFMT_FCKNE },
509 { FRV_INSN_FCKLG, FRVBF_INSN_FCKLG, FRVBF_SFMT_FCKNE },
510 { FRV_INSN_FCKUE, FRVBF_INSN_FCKUE, FRVBF_SFMT_FCKNE },
511 { FRV_INSN_FCKUL, FRVBF_INSN_FCKUL, FRVBF_SFMT_FCKNE },
512 { FRV_INSN_FCKGE, FRVBF_INSN_FCKGE, FRVBF_SFMT_FCKNE },
513 { FRV_INSN_FCKLT, FRVBF_INSN_FCKLT, FRVBF_SFMT_FCKNE },
514 { FRV_INSN_FCKUGE, FRVBF_INSN_FCKUGE, FRVBF_SFMT_FCKNE },
515 { FRV_INSN_FCKUG, FRVBF_INSN_FCKUG, FRVBF_SFMT_FCKNE },
516 { FRV_INSN_FCKLE, FRVBF_INSN_FCKLE, FRVBF_SFMT_FCKNE },
517 { FRV_INSN_FCKGT, FRVBF_INSN_FCKGT, FRVBF_SFMT_FCKNE },
518 { FRV_INSN_FCKULE, FRVBF_INSN_FCKULE, FRVBF_SFMT_FCKNE },
519 { FRV_INSN_FCKU, FRVBF_INSN_FCKU, FRVBF_SFMT_FCKNE },
520 { FRV_INSN_FCKO, FRVBF_INSN_FCKO, FRVBF_SFMT_FCKNE },
521 { FRV_INSN_CCKRA, FRVBF_INSN_CCKRA, FRVBF_SFMT_CCKRA },
522 { FRV_INSN_CCKNO, FRVBF_INSN_CCKNO, FRVBF_SFMT_CCKRA },
523 { FRV_INSN_CCKEQ, FRVBF_INSN_CCKEQ, FRVBF_SFMT_CCKEQ },
524 { FRV_INSN_CCKNE, FRVBF_INSN_CCKNE, FRVBF_SFMT_CCKEQ },
525 { FRV_INSN_CCKLE, FRVBF_INSN_CCKLE, FRVBF_SFMT_CCKEQ },
526 { FRV_INSN_CCKGT, FRVBF_INSN_CCKGT, FRVBF_SFMT_CCKEQ },
527 { FRV_INSN_CCKLT, FRVBF_INSN_CCKLT, FRVBF_SFMT_CCKEQ },
528 { FRV_INSN_CCKGE, FRVBF_INSN_CCKGE, FRVBF_SFMT_CCKEQ },
529 { FRV_INSN_CCKLS, FRVBF_INSN_CCKLS, FRVBF_SFMT_CCKEQ },
530 { FRV_INSN_CCKHI, FRVBF_INSN_CCKHI, FRVBF_SFMT_CCKEQ },
531 { FRV_INSN_CCKC, FRVBF_INSN_CCKC, FRVBF_SFMT_CCKEQ },
532 { FRV_INSN_CCKNC, FRVBF_INSN_CCKNC, FRVBF_SFMT_CCKEQ },
533 { FRV_INSN_CCKN, FRVBF_INSN_CCKN, FRVBF_SFMT_CCKEQ },
534 { FRV_INSN_CCKP, FRVBF_INSN_CCKP, FRVBF_SFMT_CCKEQ },
535 { FRV_INSN_CCKV, FRVBF_INSN_CCKV, FRVBF_SFMT_CCKEQ },
536 { FRV_INSN_CCKNV, FRVBF_INSN_CCKNV, FRVBF_SFMT_CCKEQ },
537 { FRV_INSN_CFCKRA, FRVBF_INSN_CFCKRA, FRVBF_SFMT_CFCKRA },
538 { FRV_INSN_CFCKNO, FRVBF_INSN_CFCKNO, FRVBF_SFMT_CFCKRA },
539 { FRV_INSN_CFCKNE, FRVBF_INSN_CFCKNE, FRVBF_SFMT_CFCKNE },
540 { FRV_INSN_CFCKEQ, FRVBF_INSN_CFCKEQ, FRVBF_SFMT_CFCKNE },
541 { FRV_INSN_CFCKLG, FRVBF_INSN_CFCKLG, FRVBF_SFMT_CFCKNE },
542 { FRV_INSN_CFCKUE, FRVBF_INSN_CFCKUE, FRVBF_SFMT_CFCKNE },
543 { FRV_INSN_CFCKUL, FRVBF_INSN_CFCKUL, FRVBF_SFMT_CFCKNE },
544 { FRV_INSN_CFCKGE, FRVBF_INSN_CFCKGE, FRVBF_SFMT_CFCKNE },
545 { FRV_INSN_CFCKLT, FRVBF_INSN_CFCKLT, FRVBF_SFMT_CFCKNE },
546 { FRV_INSN_CFCKUGE, FRVBF_INSN_CFCKUGE, FRVBF_SFMT_CFCKNE },
547 { FRV_INSN_CFCKUG, FRVBF_INSN_CFCKUG, FRVBF_SFMT_CFCKNE },
548 { FRV_INSN_CFCKLE, FRVBF_INSN_CFCKLE, FRVBF_SFMT_CFCKNE },
549 { FRV_INSN_CFCKGT, FRVBF_INSN_CFCKGT, FRVBF_SFMT_CFCKNE },
550 { FRV_INSN_CFCKULE, FRVBF_INSN_CFCKULE, FRVBF_SFMT_CFCKNE },
551 { FRV_INSN_CFCKU, FRVBF_INSN_CFCKU, FRVBF_SFMT_CFCKNE },
552 { FRV_INSN_CFCKO, FRVBF_INSN_CFCKO, FRVBF_SFMT_CFCKNE },
553 { FRV_INSN_CJMPL, FRVBF_INSN_CJMPL, FRVBF_SFMT_CJMPL },
554 { FRV_INSN_CCALLL, FRVBF_INSN_CCALLL, FRVBF_SFMT_CJMPL },
555 { FRV_INSN_ICI, FRVBF_INSN_ICI, FRVBF_SFMT_ICI },
556 { FRV_INSN_DCI, FRVBF_INSN_DCI, FRVBF_SFMT_ICI },
557 { FRV_INSN_ICEI, FRVBF_INSN_ICEI, FRVBF_SFMT_ICEI },
558 { FRV_INSN_DCEI, FRVBF_INSN_DCEI, FRVBF_SFMT_ICEI },
559 { FRV_INSN_DCF, FRVBF_INSN_DCF, FRVBF_SFMT_ICI },
560 { FRV_INSN_DCEF, FRVBF_INSN_DCEF, FRVBF_SFMT_ICEI },
561 { FRV_INSN_WITLB, FRVBF_INSN_WITLB, FRVBF_SFMT_REI },
562 { FRV_INSN_WDTLB, FRVBF_INSN_WDTLB, FRVBF_SFMT_REI },
563 { FRV_INSN_ITLBI, FRVBF_INSN_ITLBI, FRVBF_SFMT_REI },
564 { FRV_INSN_DTLBI, FRVBF_INSN_DTLBI, FRVBF_SFMT_REI },
565 { FRV_INSN_ICPL, FRVBF_INSN_ICPL, FRVBF_SFMT_ICPL },
566 { FRV_INSN_DCPL, FRVBF_INSN_DCPL, FRVBF_SFMT_ICPL },
567 { FRV_INSN_ICUL, FRVBF_INSN_ICUL, FRVBF_SFMT_ICUL },
568 { FRV_INSN_DCUL, FRVBF_INSN_DCUL, FRVBF_SFMT_ICUL },
569 { FRV_INSN_BAR, FRVBF_INSN_BAR, FRVBF_SFMT_REI },
570 { FRV_INSN_MEMBAR, FRVBF_INSN_MEMBAR, FRVBF_SFMT_REI },
676a64f4
RS
571 { FRV_INSN_LRAI, FRVBF_INSN_LRAI, FRVBF_SFMT_REI },
572 { FRV_INSN_LRAD, FRVBF_INSN_LRAD, FRVBF_SFMT_REI },
573 { FRV_INSN_TLBPR, FRVBF_INSN_TLBPR, FRVBF_SFMT_REI },
b34f6357
DB
574 { FRV_INSN_COP1, FRVBF_INSN_COP1, FRVBF_SFMT_REI },
575 { FRV_INSN_COP2, FRVBF_INSN_COP2, FRVBF_SFMT_REI },
576 { FRV_INSN_CLRGR, FRVBF_INSN_CLRGR, FRVBF_SFMT_CLRGR },
577 { FRV_INSN_CLRFR, FRVBF_INSN_CLRFR, FRVBF_SFMT_CLRFR },
578 { FRV_INSN_CLRGA, FRVBF_INSN_CLRGA, FRVBF_SFMT_REI },
579 { FRV_INSN_CLRFA, FRVBF_INSN_CLRFA, FRVBF_SFMT_REI },
153431d6
DB
580 { FRV_INSN_COMMITGR, FRVBF_INSN_COMMITGR, FRVBF_SFMT_COMMITGR },
581 { FRV_INSN_COMMITFR, FRVBF_INSN_COMMITFR, FRVBF_SFMT_COMMITFR },
b34f6357
DB
582 { FRV_INSN_COMMITGA, FRVBF_INSN_COMMITGA, FRVBF_SFMT_REI },
583 { FRV_INSN_COMMITFA, FRVBF_INSN_COMMITFA, FRVBF_SFMT_REI },
584 { FRV_INSN_FITOS, FRVBF_INSN_FITOS, FRVBF_SFMT_FITOS },
585 { FRV_INSN_FSTOI, FRVBF_INSN_FSTOI, FRVBF_SFMT_FSTOI },
586 { FRV_INSN_FITOD, FRVBF_INSN_FITOD, FRVBF_SFMT_FITOD },
587 { FRV_INSN_FDTOI, FRVBF_INSN_FDTOI, FRVBF_SFMT_FDTOI },
588 { FRV_INSN_FDITOS, FRVBF_INSN_FDITOS, FRVBF_SFMT_FDITOS },
589 { FRV_INSN_FDSTOI, FRVBF_INSN_FDSTOI, FRVBF_SFMT_FDSTOI },
590 { FRV_INSN_NFDITOS, FRVBF_INSN_NFDITOS, FRVBF_SFMT_FDITOS },
591 { FRV_INSN_NFDSTOI, FRVBF_INSN_NFDSTOI, FRVBF_SFMT_FDSTOI },
592 { FRV_INSN_CFITOS, FRVBF_INSN_CFITOS, FRVBF_SFMT_CFITOS },
593 { FRV_INSN_CFSTOI, FRVBF_INSN_CFSTOI, FRVBF_SFMT_CFSTOI },
594 { FRV_INSN_NFITOS, FRVBF_INSN_NFITOS, FRVBF_SFMT_NFITOS },
595 { FRV_INSN_NFSTOI, FRVBF_INSN_NFSTOI, FRVBF_SFMT_NFSTOI },
596 { FRV_INSN_FMOVS, FRVBF_INSN_FMOVS, FRVBF_SFMT_FMOVS },
597 { FRV_INSN_FMOVD, FRVBF_INSN_FMOVD, FRVBF_SFMT_FMOVD },
598 { FRV_INSN_FDMOVS, FRVBF_INSN_FDMOVS, FRVBF_SFMT_FDMOVS },
599 { FRV_INSN_CFMOVS, FRVBF_INSN_CFMOVS, FRVBF_SFMT_CFMOVS },
600 { FRV_INSN_FNEGS, FRVBF_INSN_FNEGS, FRVBF_SFMT_FMOVS },
601 { FRV_INSN_FNEGD, FRVBF_INSN_FNEGD, FRVBF_SFMT_FMOVD },
602 { FRV_INSN_FDNEGS, FRVBF_INSN_FDNEGS, FRVBF_SFMT_FDMOVS },
603 { FRV_INSN_CFNEGS, FRVBF_INSN_CFNEGS, FRVBF_SFMT_CFMOVS },
604 { FRV_INSN_FABSS, FRVBF_INSN_FABSS, FRVBF_SFMT_FMOVS },
605 { FRV_INSN_FABSD, FRVBF_INSN_FABSD, FRVBF_SFMT_FMOVD },
606 { FRV_INSN_FDABSS, FRVBF_INSN_FDABSS, FRVBF_SFMT_FDMOVS },
607 { FRV_INSN_CFABSS, FRVBF_INSN_CFABSS, FRVBF_SFMT_CFMOVS },
608 { FRV_INSN_FSQRTS, FRVBF_INSN_FSQRTS, FRVBF_SFMT_FMOVS },
609 { FRV_INSN_FDSQRTS, FRVBF_INSN_FDSQRTS, FRVBF_SFMT_FDMOVS },
610 { FRV_INSN_NFDSQRTS, FRVBF_INSN_NFDSQRTS, FRVBF_SFMT_FDMOVS },
611 { FRV_INSN_FSQRTD, FRVBF_INSN_FSQRTD, FRVBF_SFMT_FMOVD },
612 { FRV_INSN_CFSQRTS, FRVBF_INSN_CFSQRTS, FRVBF_SFMT_CFMOVS },
613 { FRV_INSN_NFSQRTS, FRVBF_INSN_NFSQRTS, FRVBF_SFMT_NFSQRTS },
614 { FRV_INSN_FADDS, FRVBF_INSN_FADDS, FRVBF_SFMT_FADDS },
615 { FRV_INSN_FSUBS, FRVBF_INSN_FSUBS, FRVBF_SFMT_FADDS },
616 { FRV_INSN_FMULS, FRVBF_INSN_FMULS, FRVBF_SFMT_FADDS },
617 { FRV_INSN_FDIVS, FRVBF_INSN_FDIVS, FRVBF_SFMT_FADDS },
618 { FRV_INSN_FADDD, FRVBF_INSN_FADDD, FRVBF_SFMT_FADDD },
619 { FRV_INSN_FSUBD, FRVBF_INSN_FSUBD, FRVBF_SFMT_FADDD },
620 { FRV_INSN_FMULD, FRVBF_INSN_FMULD, FRVBF_SFMT_FADDD },
621 { FRV_INSN_FDIVD, FRVBF_INSN_FDIVD, FRVBF_SFMT_FADDD },
622 { FRV_INSN_CFADDS, FRVBF_INSN_CFADDS, FRVBF_SFMT_CFADDS },
623 { FRV_INSN_CFSUBS, FRVBF_INSN_CFSUBS, FRVBF_SFMT_CFADDS },
624 { FRV_INSN_CFMULS, FRVBF_INSN_CFMULS, FRVBF_SFMT_CFADDS },
625 { FRV_INSN_CFDIVS, FRVBF_INSN_CFDIVS, FRVBF_SFMT_CFADDS },
626 { FRV_INSN_NFADDS, FRVBF_INSN_NFADDS, FRVBF_SFMT_NFADDS },
627 { FRV_INSN_NFSUBS, FRVBF_INSN_NFSUBS, FRVBF_SFMT_NFADDS },
628 { FRV_INSN_NFMULS, FRVBF_INSN_NFMULS, FRVBF_SFMT_NFADDS },
629 { FRV_INSN_NFDIVS, FRVBF_INSN_NFDIVS, FRVBF_SFMT_NFADDS },
630 { FRV_INSN_FCMPS, FRVBF_INSN_FCMPS, FRVBF_SFMT_FCMPS },
631 { FRV_INSN_FCMPD, FRVBF_INSN_FCMPD, FRVBF_SFMT_FCMPD },
632 { FRV_INSN_CFCMPS, FRVBF_INSN_CFCMPS, FRVBF_SFMT_CFCMPS },
633 { FRV_INSN_FDCMPS, FRVBF_INSN_FDCMPS, FRVBF_SFMT_FDCMPS },
634 { FRV_INSN_FMADDS, FRVBF_INSN_FMADDS, FRVBF_SFMT_FMADDS },
635 { FRV_INSN_FMSUBS, FRVBF_INSN_FMSUBS, FRVBF_SFMT_FMADDS },
636 { FRV_INSN_FMADDD, FRVBF_INSN_FMADDD, FRVBF_SFMT_FMADDD },
637 { FRV_INSN_FMSUBD, FRVBF_INSN_FMSUBD, FRVBF_SFMT_FMADDD },
638 { FRV_INSN_FDMADDS, FRVBF_INSN_FDMADDS, FRVBF_SFMT_FDMADDS },
639 { FRV_INSN_NFDMADDS, FRVBF_INSN_NFDMADDS, FRVBF_SFMT_FDMADDS },
640 { FRV_INSN_CFMADDS, FRVBF_INSN_CFMADDS, FRVBF_SFMT_CFMADDS },
641 { FRV_INSN_CFMSUBS, FRVBF_INSN_CFMSUBS, FRVBF_SFMT_CFMADDS },
642 { FRV_INSN_NFMADDS, FRVBF_INSN_NFMADDS, FRVBF_SFMT_NFMADDS },
643 { FRV_INSN_NFMSUBS, FRVBF_INSN_NFMSUBS, FRVBF_SFMT_NFMADDS },
644 { FRV_INSN_FMAS, FRVBF_INSN_FMAS, FRVBF_SFMT_FMAS },
645 { FRV_INSN_FMSS, FRVBF_INSN_FMSS, FRVBF_SFMT_FMAS },
646 { FRV_INSN_FDMAS, FRVBF_INSN_FDMAS, FRVBF_SFMT_FDMAS },
647 { FRV_INSN_FDMSS, FRVBF_INSN_FDMSS, FRVBF_SFMT_FDMAS },
648 { FRV_INSN_NFDMAS, FRVBF_INSN_NFDMAS, FRVBF_SFMT_FDMAS },
649 { FRV_INSN_NFDMSS, FRVBF_INSN_NFDMSS, FRVBF_SFMT_FDMAS },
650 { FRV_INSN_CFMAS, FRVBF_INSN_CFMAS, FRVBF_SFMT_CFMAS },
651 { FRV_INSN_CFMSS, FRVBF_INSN_CFMSS, FRVBF_SFMT_CFMAS },
652 { FRV_INSN_FMAD, FRVBF_INSN_FMAD, FRVBF_SFMT_FMAS },
653 { FRV_INSN_FMSD, FRVBF_INSN_FMSD, FRVBF_SFMT_FMAS },
654 { FRV_INSN_NFMAS, FRVBF_INSN_NFMAS, FRVBF_SFMT_FMAS },
655 { FRV_INSN_NFMSS, FRVBF_INSN_NFMSS, FRVBF_SFMT_FMAS },
656 { FRV_INSN_FDADDS, FRVBF_INSN_FDADDS, FRVBF_SFMT_FMAS },
657 { FRV_INSN_FDSUBS, FRVBF_INSN_FDSUBS, FRVBF_SFMT_FMAS },
658 { FRV_INSN_FDMULS, FRVBF_INSN_FDMULS, FRVBF_SFMT_FMAS },
659 { FRV_INSN_FDDIVS, FRVBF_INSN_FDDIVS, FRVBF_SFMT_FMAS },
660 { FRV_INSN_FDSADS, FRVBF_INSN_FDSADS, FRVBF_SFMT_FMAS },
661 { FRV_INSN_FDMULCS, FRVBF_INSN_FDMULCS, FRVBF_SFMT_FMAS },
662 { FRV_INSN_NFDMULCS, FRVBF_INSN_NFDMULCS, FRVBF_SFMT_FMAS },
663 { FRV_INSN_NFDADDS, FRVBF_INSN_NFDADDS, FRVBF_SFMT_FMAS },
664 { FRV_INSN_NFDSUBS, FRVBF_INSN_NFDSUBS, FRVBF_SFMT_FMAS },
665 { FRV_INSN_NFDMULS, FRVBF_INSN_NFDMULS, FRVBF_SFMT_FMAS },
666 { FRV_INSN_NFDDIVS, FRVBF_INSN_NFDDIVS, FRVBF_SFMT_FMAS },
667 { FRV_INSN_NFDSADS, FRVBF_INSN_NFDSADS, FRVBF_SFMT_FMAS },
668 { FRV_INSN_NFDCMPS, FRVBF_INSN_NFDCMPS, FRVBF_SFMT_NFDCMPS },
669 { FRV_INSN_MHSETLOS, FRVBF_INSN_MHSETLOS, FRVBF_SFMT_MHSETLOS },
670 { FRV_INSN_MHSETHIS, FRVBF_INSN_MHSETHIS, FRVBF_SFMT_MHSETHIS },
671 { FRV_INSN_MHDSETS, FRVBF_INSN_MHDSETS, FRVBF_SFMT_MHDSETS },
672 { FRV_INSN_MHSETLOH, FRVBF_INSN_MHSETLOH, FRVBF_SFMT_MHSETLOH },
673 { FRV_INSN_MHSETHIH, FRVBF_INSN_MHSETHIH, FRVBF_SFMT_MHSETHIH },
674 { FRV_INSN_MHDSETH, FRVBF_INSN_MHDSETH, FRVBF_SFMT_MHDSETH },
675 { FRV_INSN_MAND, FRVBF_INSN_MAND, FRVBF_SFMT_MAND },
676 { FRV_INSN_MOR, FRVBF_INSN_MOR, FRVBF_SFMT_MAND },
677 { FRV_INSN_MXOR, FRVBF_INSN_MXOR, FRVBF_SFMT_MAND },
678 { FRV_INSN_CMAND, FRVBF_INSN_CMAND, FRVBF_SFMT_CMAND },
679 { FRV_INSN_CMOR, FRVBF_INSN_CMOR, FRVBF_SFMT_CMAND },
680 { FRV_INSN_CMXOR, FRVBF_INSN_CMXOR, FRVBF_SFMT_CMAND },
681 { FRV_INSN_MNOT, FRVBF_INSN_MNOT, FRVBF_SFMT_MNOT },
682 { FRV_INSN_CMNOT, FRVBF_INSN_CMNOT, FRVBF_SFMT_CMNOT },
683 { FRV_INSN_MROTLI, FRVBF_INSN_MROTLI, FRVBF_SFMT_MROTLI },
684 { FRV_INSN_MROTRI, FRVBF_INSN_MROTRI, FRVBF_SFMT_MROTLI },
685 { FRV_INSN_MWCUT, FRVBF_INSN_MWCUT, FRVBF_SFMT_MWCUT },
686 { FRV_INSN_MWCUTI, FRVBF_INSN_MWCUTI, FRVBF_SFMT_MWCUTI },
687 { FRV_INSN_MCUT, FRVBF_INSN_MCUT, FRVBF_SFMT_MCUT },
688 { FRV_INSN_MCUTI, FRVBF_INSN_MCUTI, FRVBF_SFMT_MCUTI },
689 { FRV_INSN_MCUTSS, FRVBF_INSN_MCUTSS, FRVBF_SFMT_MCUT },
690 { FRV_INSN_MCUTSSI, FRVBF_INSN_MCUTSSI, FRVBF_SFMT_MCUTI },
691 { FRV_INSN_MDCUTSSI, FRVBF_INSN_MDCUTSSI, FRVBF_SFMT_MDCUTSSI },
692 { FRV_INSN_MAVEH, FRVBF_INSN_MAVEH, FRVBF_SFMT_MAND },
693 { FRV_INSN_MSLLHI, FRVBF_INSN_MSLLHI, FRVBF_SFMT_MSLLHI },
694 { FRV_INSN_MSRLHI, FRVBF_INSN_MSRLHI, FRVBF_SFMT_MSLLHI },
695 { FRV_INSN_MSRAHI, FRVBF_INSN_MSRAHI, FRVBF_SFMT_MSLLHI },
696 { FRV_INSN_MDROTLI, FRVBF_INSN_MDROTLI, FRVBF_SFMT_MDROTLI },
697 { FRV_INSN_MCPLHI, FRVBF_INSN_MCPLHI, FRVBF_SFMT_MCPLHI },
698 { FRV_INSN_MCPLI, FRVBF_INSN_MCPLI, FRVBF_SFMT_MCPLI },
699 { FRV_INSN_MSATHS, FRVBF_INSN_MSATHS, FRVBF_SFMT_MSATHS },
700 { FRV_INSN_MQSATHS, FRVBF_INSN_MQSATHS, FRVBF_SFMT_MQSATHS },
701 { FRV_INSN_MSATHU, FRVBF_INSN_MSATHU, FRVBF_SFMT_MSATHS },
702 { FRV_INSN_MCMPSH, FRVBF_INSN_MCMPSH, FRVBF_SFMT_MCMPSH },
703 { FRV_INSN_MCMPUH, FRVBF_INSN_MCMPUH, FRVBF_SFMT_MCMPSH },
704 { FRV_INSN_MABSHS, FRVBF_INSN_MABSHS, FRVBF_SFMT_MABSHS },
705 { FRV_INSN_MADDHSS, FRVBF_INSN_MADDHSS, FRVBF_SFMT_MSATHS },
706 { FRV_INSN_MADDHUS, FRVBF_INSN_MADDHUS, FRVBF_SFMT_MSATHS },
707 { FRV_INSN_MSUBHSS, FRVBF_INSN_MSUBHSS, FRVBF_SFMT_MSATHS },
708 { FRV_INSN_MSUBHUS, FRVBF_INSN_MSUBHUS, FRVBF_SFMT_MSATHS },
709 { FRV_INSN_CMADDHSS, FRVBF_INSN_CMADDHSS, FRVBF_SFMT_CMADDHSS },
710 { FRV_INSN_CMADDHUS, FRVBF_INSN_CMADDHUS, FRVBF_SFMT_CMADDHSS },
711 { FRV_INSN_CMSUBHSS, FRVBF_INSN_CMSUBHSS, FRVBF_SFMT_CMADDHSS },
712 { FRV_INSN_CMSUBHUS, FRVBF_INSN_CMSUBHUS, FRVBF_SFMT_CMADDHSS },
713 { FRV_INSN_MQADDHSS, FRVBF_INSN_MQADDHSS, FRVBF_SFMT_MQSATHS },
714 { FRV_INSN_MQADDHUS, FRVBF_INSN_MQADDHUS, FRVBF_SFMT_MQSATHS },
715 { FRV_INSN_MQSUBHSS, FRVBF_INSN_MQSUBHSS, FRVBF_SFMT_MQSATHS },
716 { FRV_INSN_MQSUBHUS, FRVBF_INSN_MQSUBHUS, FRVBF_SFMT_MQSATHS },
717 { FRV_INSN_CMQADDHSS, FRVBF_INSN_CMQADDHSS, FRVBF_SFMT_CMQADDHSS },
718 { FRV_INSN_CMQADDHUS, FRVBF_INSN_CMQADDHUS, FRVBF_SFMT_CMQADDHSS },
719 { FRV_INSN_CMQSUBHSS, FRVBF_INSN_CMQSUBHSS, FRVBF_SFMT_CMQADDHSS },
720 { FRV_INSN_CMQSUBHUS, FRVBF_INSN_CMQSUBHUS, FRVBF_SFMT_CMQADDHSS },
676a64f4
RS
721 { FRV_INSN_MQLCLRHS, FRVBF_INSN_MQLCLRHS, FRVBF_SFMT_MQSATHS },
722 { FRV_INSN_MQLMTHS, FRVBF_INSN_MQLMTHS, FRVBF_SFMT_MQSATHS },
723 { FRV_INSN_MQSLLHI, FRVBF_INSN_MQSLLHI, FRVBF_SFMT_MQSLLHI },
724 { FRV_INSN_MQSRAHI, FRVBF_INSN_MQSRAHI, FRVBF_SFMT_MQSLLHI },
b34f6357
DB
725 { FRV_INSN_MADDACCS, FRVBF_INSN_MADDACCS, FRVBF_SFMT_MADDACCS },
726 { FRV_INSN_MSUBACCS, FRVBF_INSN_MSUBACCS, FRVBF_SFMT_MADDACCS },
727 { FRV_INSN_MDADDACCS, FRVBF_INSN_MDADDACCS, FRVBF_SFMT_MDADDACCS },
728 { FRV_INSN_MDSUBACCS, FRVBF_INSN_MDSUBACCS, FRVBF_SFMT_MDADDACCS },
729 { FRV_INSN_MASACCS, FRVBF_INSN_MASACCS, FRVBF_SFMT_MASACCS },
730 { FRV_INSN_MDASACCS, FRVBF_INSN_MDASACCS, FRVBF_SFMT_MDASACCS },
731 { FRV_INSN_MMULHS, FRVBF_INSN_MMULHS, FRVBF_SFMT_MMULHS },
732 { FRV_INSN_MMULHU, FRVBF_INSN_MMULHU, FRVBF_SFMT_MMULHS },
733 { FRV_INSN_MMULXHS, FRVBF_INSN_MMULXHS, FRVBF_SFMT_MMULHS },
734 { FRV_INSN_MMULXHU, FRVBF_INSN_MMULXHU, FRVBF_SFMT_MMULHS },
735 { FRV_INSN_CMMULHS, FRVBF_INSN_CMMULHS, FRVBF_SFMT_CMMULHS },
736 { FRV_INSN_CMMULHU, FRVBF_INSN_CMMULHU, FRVBF_SFMT_CMMULHS },
737 { FRV_INSN_MQMULHS, FRVBF_INSN_MQMULHS, FRVBF_SFMT_MQMULHS },
738 { FRV_INSN_MQMULHU, FRVBF_INSN_MQMULHU, FRVBF_SFMT_MQMULHS },
739 { FRV_INSN_MQMULXHS, FRVBF_INSN_MQMULXHS, FRVBF_SFMT_MQMULHS },
740 { FRV_INSN_MQMULXHU, FRVBF_INSN_MQMULXHU, FRVBF_SFMT_MQMULHS },
741 { FRV_INSN_CMQMULHS, FRVBF_INSN_CMQMULHS, FRVBF_SFMT_CMQMULHS },
742 { FRV_INSN_CMQMULHU, FRVBF_INSN_CMQMULHU, FRVBF_SFMT_CMQMULHS },
743 { FRV_INSN_MMACHS, FRVBF_INSN_MMACHS, FRVBF_SFMT_MMACHS },
744 { FRV_INSN_MMACHU, FRVBF_INSN_MMACHU, FRVBF_SFMT_MMACHU },
745 { FRV_INSN_MMRDHS, FRVBF_INSN_MMRDHS, FRVBF_SFMT_MMACHS },
746 { FRV_INSN_MMRDHU, FRVBF_INSN_MMRDHU, FRVBF_SFMT_MMACHU },
747 { FRV_INSN_CMMACHS, FRVBF_INSN_CMMACHS, FRVBF_SFMT_CMMACHS },
748 { FRV_INSN_CMMACHU, FRVBF_INSN_CMMACHU, FRVBF_SFMT_CMMACHU },
749 { FRV_INSN_MQMACHS, FRVBF_INSN_MQMACHS, FRVBF_SFMT_MQMACHS },
750 { FRV_INSN_MQMACHU, FRVBF_INSN_MQMACHU, FRVBF_SFMT_MQMACHU },
751 { FRV_INSN_CMQMACHS, FRVBF_INSN_CMQMACHS, FRVBF_SFMT_CMQMACHS },
752 { FRV_INSN_CMQMACHU, FRVBF_INSN_CMQMACHU, FRVBF_SFMT_CMQMACHU },
753 { FRV_INSN_MQXMACHS, FRVBF_INSN_MQXMACHS, FRVBF_SFMT_MQMACHS },
754 { FRV_INSN_MQXMACXHS, FRVBF_INSN_MQXMACXHS, FRVBF_SFMT_MQMACHS },
755 { FRV_INSN_MQMACXHS, FRVBF_INSN_MQMACXHS, FRVBF_SFMT_MQMACHS },
756 { FRV_INSN_MCPXRS, FRVBF_INSN_MCPXRS, FRVBF_SFMT_MCPXRS },
757 { FRV_INSN_MCPXRU, FRVBF_INSN_MCPXRU, FRVBF_SFMT_MCPXRS },
758 { FRV_INSN_MCPXIS, FRVBF_INSN_MCPXIS, FRVBF_SFMT_MCPXRS },
759 { FRV_INSN_MCPXIU, FRVBF_INSN_MCPXIU, FRVBF_SFMT_MCPXRS },
760 { FRV_INSN_CMCPXRS, FRVBF_INSN_CMCPXRS, FRVBF_SFMT_CMCPXRS },
761 { FRV_INSN_CMCPXRU, FRVBF_INSN_CMCPXRU, FRVBF_SFMT_CMCPXRS },
762 { FRV_INSN_CMCPXIS, FRVBF_INSN_CMCPXIS, FRVBF_SFMT_CMCPXRS },
763 { FRV_INSN_CMCPXIU, FRVBF_INSN_CMCPXIU, FRVBF_SFMT_CMCPXRS },
764 { FRV_INSN_MQCPXRS, FRVBF_INSN_MQCPXRS, FRVBF_SFMT_MQCPXRS },
765 { FRV_INSN_MQCPXRU, FRVBF_INSN_MQCPXRU, FRVBF_SFMT_MQCPXRS },
766 { FRV_INSN_MQCPXIS, FRVBF_INSN_MQCPXIS, FRVBF_SFMT_MQCPXRS },
767 { FRV_INSN_MQCPXIU, FRVBF_INSN_MQCPXIU, FRVBF_SFMT_MQCPXRS },
768 { FRV_INSN_MEXPDHW, FRVBF_INSN_MEXPDHW, FRVBF_SFMT_MEXPDHW },
769 { FRV_INSN_CMEXPDHW, FRVBF_INSN_CMEXPDHW, FRVBF_SFMT_CMEXPDHW },
770 { FRV_INSN_MEXPDHD, FRVBF_INSN_MEXPDHD, FRVBF_SFMT_MEXPDHD },
771 { FRV_INSN_CMEXPDHD, FRVBF_INSN_CMEXPDHD, FRVBF_SFMT_CMEXPDHD },
772 { FRV_INSN_MPACKH, FRVBF_INSN_MPACKH, FRVBF_SFMT_MPACKH },
773 { FRV_INSN_MDPACKH, FRVBF_INSN_MDPACKH, FRVBF_SFMT_MDPACKH },
774 { FRV_INSN_MUNPACKH, FRVBF_INSN_MUNPACKH, FRVBF_SFMT_MUNPACKH },
775 { FRV_INSN_MDUNPACKH, FRVBF_INSN_MDUNPACKH, FRVBF_SFMT_MDUNPACKH },
776 { FRV_INSN_MBTOH, FRVBF_INSN_MBTOH, FRVBF_SFMT_MBTOH },
777 { FRV_INSN_CMBTOH, FRVBF_INSN_CMBTOH, FRVBF_SFMT_CMBTOH },
778 { FRV_INSN_MHTOB, FRVBF_INSN_MHTOB, FRVBF_SFMT_MHTOB },
779 { FRV_INSN_CMHTOB, FRVBF_INSN_CMHTOB, FRVBF_SFMT_CMHTOB },
780 { FRV_INSN_MBTOHE, FRVBF_INSN_MBTOHE, FRVBF_SFMT_MBTOHE },
781 { FRV_INSN_CMBTOHE, FRVBF_INSN_CMBTOHE, FRVBF_SFMT_CMBTOHE },
d03ea14f
DB
782 { FRV_INSN_MNOP, FRVBF_INSN_MNOP, FRVBF_SFMT_REI },
783 { FRV_INSN_MCLRACC_0, FRVBF_INSN_MCLRACC_0, FRVBF_SFMT_MCLRACC_0 },
784 { FRV_INSN_MCLRACC_1, FRVBF_INSN_MCLRACC_1, FRVBF_SFMT_MCLRACC_0 },
b34f6357
DB
785 { FRV_INSN_MRDACC, FRVBF_INSN_MRDACC, FRVBF_SFMT_MRDACC },
786 { FRV_INSN_MRDACCG, FRVBF_INSN_MRDACCG, FRVBF_SFMT_MRDACCG },
787 { FRV_INSN_MWTACC, FRVBF_INSN_MWTACC, FRVBF_SFMT_MWTACC },
788 { FRV_INSN_MWTACCG, FRVBF_INSN_MWTACCG, FRVBF_SFMT_MWTACCG },
789 { FRV_INSN_MCOP1, FRVBF_INSN_MCOP1, FRVBF_SFMT_REI },
790 { FRV_INSN_MCOP2, FRVBF_INSN_MCOP2, FRVBF_SFMT_REI },
791 { FRV_INSN_FNOP, FRVBF_INSN_FNOP, FRVBF_SFMT_REI },
792};
793
794static const struct insn_sem frvbf_insn_sem_invalid = {
795 VIRTUAL_INSN_X_INVALID, FRVBF_INSN_X_INVALID, FRVBF_SFMT_EMPTY
796};
797
798/* Initialize an IDESC from the compile-time computable parts. */
799
800static INLINE void
801init_idesc (SIM_CPU *cpu, IDESC *id, const struct insn_sem *t)
802{
803 const CGEN_INSN *insn_table = CGEN_CPU_INSN_TABLE (CPU_CPU_DESC (cpu))->init_entries;
804
805 id->num = t->index;
806 id->sfmt = t->sfmt;
807 if ((int) t->type <= 0)
808 id->idata = & cgen_virtual_insn_table[- (int) t->type];
809 else
810 id->idata = & insn_table[t->type];
811 id->attrs = CGEN_INSN_ATTRS (id->idata);
812 /* Oh my god, a magic number. */
813 id->length = CGEN_INSN_BITSIZE (id->idata) / 8;
814
815#if WITH_PROFILE_MODEL_P
816 id->timing = & MODEL_TIMING (CPU_MODEL (cpu)) [t->index];
817 {
818 SIM_DESC sd = CPU_STATE (cpu);
819 SIM_ASSERT (t->index == id->timing->num);
820 }
821#endif
822
823 /* Semantic pointers are initialized elsewhere. */
824}
825
826/* Initialize the instruction descriptor table. */
827
828void
829frvbf_init_idesc_table (SIM_CPU *cpu)
830{
831 IDESC *id,*tabend;
832 const struct insn_sem *t,*tend;
833 int tabsize = FRVBF_INSN__MAX;
834 IDESC *table = frvbf_insn_data;
835
836 memset (table, 0, tabsize * sizeof (IDESC));
837
838 /* First set all entries to the `invalid insn'. */
839 t = & frvbf_insn_sem_invalid;
840 for (id = table, tabend = table + tabsize; id < tabend; ++id)
841 init_idesc (cpu, id, t);
842
843 /* Now fill in the values for the chosen cpu. */
844 for (t = frvbf_insn_sem, tend = t + sizeof (frvbf_insn_sem) / sizeof (*t);
845 t != tend; ++t)
846 {
847 init_idesc (cpu, & table[t->index], t);
848 }
849
850 /* Link the IDESC table into the cpu. */
851 CPU_IDESC (cpu) = table;
852}
853
854/* Given an instruction, return a pointer to its IDESC entry. */
855
856const IDESC *
857frvbf_decode (SIM_CPU *current_cpu, IADDR pc,
197fa1aa 858 CGEN_INSN_WORD base_insn, CGEN_INSN_WORD entire_insn,
b34f6357
DB
859 ARGBUF *abuf)
860{
861 /* Result of decoder. */
862 FRVBF_INSN_TYPE itype;
863
864 {
197fa1aa 865 CGEN_INSN_WORD insn = base_insn;
b34f6357
DB
866
867 {
868 unsigned int val = (((insn >> 18) & (127 << 0)));
869 switch (val)
870 {
871 case 0 :
872 {
873 unsigned int val = (((insn >> 6) & (15 << 0)));
874 switch (val)
875 {
79e59fe6
DB
876 case 0 :
877 if ((entire_insn & 0x1fc0fc0) == 0x0)
878 { itype = FRVBF_INSN_ADD; goto extract_sfmt_add; }
879 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
880 case 1 : itype = FRVBF_INSN_ADDCC; goto extract_sfmt_addcc;
881 case 2 : itype = FRVBF_INSN_ADDX; goto extract_sfmt_addx;
882 case 3 : itype = FRVBF_INSN_ADDXCC; goto extract_sfmt_addcc;
79e59fe6
DB
883 case 4 :
884 if ((entire_insn & 0x1fc0fc0) == 0x100)
885 { itype = FRVBF_INSN_SUB; goto extract_sfmt_add; }
886 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
887 case 5 : itype = FRVBF_INSN_SUBCC; goto extract_sfmt_addcc;
888 case 6 : itype = FRVBF_INSN_SUBX; goto extract_sfmt_addx;
889 case 7 : itype = FRVBF_INSN_SUBXCC; goto extract_sfmt_addcc;
79e59fe6
DB
890 case 8 :
891 if ((entire_insn & 0x1fc0fc0) == 0x200)
892 { itype = FRVBF_INSN_SMUL; goto extract_sfmt_smul; }
893 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 894 case 9 : itype = FRVBF_INSN_SMULCC; goto extract_sfmt_smulcc;
79e59fe6
DB
895 case 10 :
896 if ((entire_insn & 0x1fc0fc0) == 0x280)
897 { itype = FRVBF_INSN_UMUL; goto extract_sfmt_smul; }
898 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 899 case 11 : itype = FRVBF_INSN_UMULCC; goto extract_sfmt_smulcc;
79e59fe6
DB
900 case 12 :
901 if ((entire_insn & 0x7ffc03c0) == 0x300)
902 { itype = FRVBF_INSN_CMPB; goto extract_sfmt_cmpb; }
903 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
904 case 13 :
905 if ((entire_insn & 0x7ffc03c0) == 0x340)
906 { itype = FRVBF_INSN_CMPBA; goto extract_sfmt_cmpb; }
907 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
908 case 14 :
909 if ((entire_insn & 0x1fc0fc0) == 0x380)
910 { itype = FRVBF_INSN_SDIV; goto extract_sfmt_sdiv; }
911 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
912 case 15 :
913 if ((entire_insn & 0x1fc0fc0) == 0x3c0)
914 { itype = FRVBF_INSN_UDIV; goto extract_sfmt_sdiv; }
915 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
916 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
917 }
918 }
919 case 1 :
920 {
921 unsigned int val = (((insn >> 6) & (15 << 0)));
922 switch (val)
923 {
79e59fe6
DB
924 case 0 :
925 if ((entire_insn & 0x1fc0fc0) == 0x40000)
926 { itype = FRVBF_INSN_AND; goto extract_sfmt_add; }
927 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 928 case 1 : itype = FRVBF_INSN_ANDCC; goto extract_sfmt_andcc;
79e59fe6
DB
929 case 2 :
930 if ((entire_insn & 0x1fc0fc0) == 0x40080)
931 { itype = FRVBF_INSN_OR; goto extract_sfmt_add; }
932 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 933 case 3 : itype = FRVBF_INSN_ORCC; goto extract_sfmt_andcc;
79e59fe6
DB
934 case 4 :
935 if ((entire_insn & 0x1fc0fc0) == 0x40100)
936 { itype = FRVBF_INSN_XOR; goto extract_sfmt_add; }
937 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 938 case 5 : itype = FRVBF_INSN_XORCC; goto extract_sfmt_andcc;
79e59fe6
DB
939 case 6 :
940 if ((entire_insn & 0x1ffffc0) == 0x40180)
941 { itype = FRVBF_INSN_NOT; goto extract_sfmt_not; }
942 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
943 case 8 :
944 if ((entire_insn & 0x1fc0fc0) == 0x40200)
945 { itype = FRVBF_INSN_SLL; goto extract_sfmt_add; }
946 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 947 case 9 : itype = FRVBF_INSN_SLLCC; goto extract_sfmt_addcc;
79e59fe6
DB
948 case 10 :
949 if ((entire_insn & 0x1fc0fc0) == 0x40280)
950 { itype = FRVBF_INSN_SRL; goto extract_sfmt_add; }
951 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 952 case 11 : itype = FRVBF_INSN_SRLCC; goto extract_sfmt_addcc;
79e59fe6
DB
953 case 12 :
954 if ((entire_insn & 0x1fc0fc0) == 0x40300)
955 { itype = FRVBF_INSN_SRA; goto extract_sfmt_add; }
956 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 957 case 13 : itype = FRVBF_INSN_SRACC; goto extract_sfmt_addcc;
79e59fe6
DB
958 case 14 :
959 if ((entire_insn & 0x1fc0fc0) == 0x40380)
960 { itype = FRVBF_INSN_NSDIV; goto extract_sfmt_sdiv; }
961 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
962 case 15 :
963 if ((entire_insn & 0x1fc0fc0) == 0x403c0)
964 { itype = FRVBF_INSN_NUDIV; goto extract_sfmt_sdiv; }
965 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
966 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
967 }
968 }
969 case 2 :
970 {
971 unsigned int val = (((insn >> 6) & (63 << 0)));
972 switch (val)
973 {
b29791a8
DE
974 case 0 : itype = FRVBF_INSN_LDSB; goto extract_sfmt_ldsb;
975 case 1 : itype = FRVBF_INSN_LDUB; goto extract_sfmt_ldsb;
976 case 2 : itype = FRVBF_INSN_LDSH; goto extract_sfmt_ldsb;
977 case 3 : itype = FRVBF_INSN_LDUH; goto extract_sfmt_ldsb;
978 case 4 : itype = FRVBF_INSN_LD; goto extract_sfmt_ldsb;
979 case 5 : itype = FRVBF_INSN_LDD; goto extract_sfmt_ldd;
980 case 6 : itype = FRVBF_INSN_LDQ; goto extract_sfmt_ldq;
981 case 8 : itype = FRVBF_INSN_LDBF; goto extract_sfmt_ldbf;
982 case 9 : itype = FRVBF_INSN_LDHF; goto extract_sfmt_ldbf;
983 case 10 : itype = FRVBF_INSN_LDF; goto extract_sfmt_ldbf;
984 case 11 : itype = FRVBF_INSN_LDDF; goto extract_sfmt_lddf;
985 case 12 : itype = FRVBF_INSN_LDQF; goto extract_sfmt_ldqf;
986 case 13 : itype = FRVBF_INSN_LDC; goto extract_sfmt_ldc;
987 case 14 : itype = FRVBF_INSN_LDDC; goto extract_sfmt_lddc;
988 case 15 : itype = FRVBF_INSN_LDQC; goto extract_sfmt_ldqc;
989 case 16 : itype = FRVBF_INSN_LDSBU; goto extract_sfmt_ldsbu;
990 case 17 : itype = FRVBF_INSN_LDUBU; goto extract_sfmt_ldsbu;
991 case 18 : itype = FRVBF_INSN_LDSHU; goto extract_sfmt_ldsbu;
992 case 19 : itype = FRVBF_INSN_LDUHU; goto extract_sfmt_ldsbu;
993 case 20 : itype = FRVBF_INSN_LDU; goto extract_sfmt_ldsbu;
994 case 21 : itype = FRVBF_INSN_LDDU; goto extract_sfmt_lddu;
995 case 22 : itype = FRVBF_INSN_LDQU; goto extract_sfmt_ldqu;
996 case 24 : itype = FRVBF_INSN_LDBFU; goto extract_sfmt_ldbfu;
997 case 25 : itype = FRVBF_INSN_LDHFU; goto extract_sfmt_ldbfu;
998 case 26 : itype = FRVBF_INSN_LDFU; goto extract_sfmt_ldbfu;
999 case 27 : itype = FRVBF_INSN_LDDFU; goto extract_sfmt_lddfu;
1000 case 28 : itype = FRVBF_INSN_LDQFU; goto extract_sfmt_ldqfu;
1001 case 29 : itype = FRVBF_INSN_LDCU; goto extract_sfmt_ldcu;
1002 case 30 : itype = FRVBF_INSN_LDDCU; goto extract_sfmt_lddcu;
1003 case 31 : itype = FRVBF_INSN_LDQCU; goto extract_sfmt_ldqcu;
1004 case 32 : itype = FRVBF_INSN_NLDSB; goto extract_sfmt_nldsb;
1005 case 33 : itype = FRVBF_INSN_NLDUB; goto extract_sfmt_nldsb;
1006 case 34 : itype = FRVBF_INSN_NLDSH; goto extract_sfmt_nldsb;
1007 case 35 : itype = FRVBF_INSN_NLDUH; goto extract_sfmt_nldsb;
1008 case 36 : itype = FRVBF_INSN_NLD; goto extract_sfmt_nldsb;
1009 case 37 : itype = FRVBF_INSN_NLDD; goto extract_sfmt_nldd;
1010 case 38 : itype = FRVBF_INSN_NLDQ; goto extract_sfmt_nldq;
1011 case 40 : itype = FRVBF_INSN_NLDBF; goto extract_sfmt_nldbf;
1012 case 41 : itype = FRVBF_INSN_NLDHF; goto extract_sfmt_nldbf;
1013 case 42 : itype = FRVBF_INSN_NLDF; goto extract_sfmt_nldbf;
1014 case 43 : itype = FRVBF_INSN_NLDDF; goto extract_sfmt_nlddf;
1015 case 44 : itype = FRVBF_INSN_NLDQF; goto extract_sfmt_nldqf;
1016 case 48 : itype = FRVBF_INSN_NLDSBU; goto extract_sfmt_nldsbu;
1017 case 49 : itype = FRVBF_INSN_NLDUBU; goto extract_sfmt_nldsbu;
1018 case 50 : itype = FRVBF_INSN_NLDSHU; goto extract_sfmt_nldsbu;
1019 case 51 : itype = FRVBF_INSN_NLDUHU; goto extract_sfmt_nldsbu;
1020 case 52 : itype = FRVBF_INSN_NLDU; goto extract_sfmt_nldsbu;
1021 case 53 : itype = FRVBF_INSN_NLDDU; goto extract_sfmt_nlddu;
1022 case 54 : itype = FRVBF_INSN_NLDQU; goto extract_sfmt_nldqu;
1023 case 56 : itype = FRVBF_INSN_NLDBFU; goto extract_sfmt_nldbfu;
1024 case 57 : itype = FRVBF_INSN_NLDHFU; goto extract_sfmt_nldbfu;
1025 case 58 : itype = FRVBF_INSN_NLDFU; goto extract_sfmt_nldbfu;
1026 case 59 : itype = FRVBF_INSN_NLDDFU; goto extract_sfmt_nlddfu;
1027 case 60 : itype = FRVBF_INSN_NLDQFU; goto extract_sfmt_nldqfu;
b34f6357
DB
1028 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1029 }
1030 }
1031 case 3 :
1032 {
1033 unsigned int val = (((insn >> 6) & (63 << 0)));
1034 switch (val)
1035 {
b29791a8
DE
1036 case 0 : itype = FRVBF_INSN_STB; goto extract_sfmt_stb;
1037 case 1 : itype = FRVBF_INSN_STH; goto extract_sfmt_stb;
1038 case 2 : itype = FRVBF_INSN_ST; goto extract_sfmt_stb;
1039 case 3 : itype = FRVBF_INSN_STD; goto extract_sfmt_std;
1040 case 4 : itype = FRVBF_INSN_STQ; goto extract_sfmt_ldq;
1041 case 5 : itype = FRVBF_INSN_SWAP; goto extract_sfmt_swap;
1042 case 6 : itype = FRVBF_INSN_MOVGS; goto extract_sfmt_movgs;
1043 case 7 : itype = FRVBF_INSN_MOVSG; goto extract_sfmt_movsg;
1044 case 8 : itype = FRVBF_INSN_STBF; goto extract_sfmt_stbf;
1045 case 9 : itype = FRVBF_INSN_STHF; goto extract_sfmt_stbf;
1046 case 10 : itype = FRVBF_INSN_STF; goto extract_sfmt_stbf;
1047 case 11 : itype = FRVBF_INSN_STDF; goto extract_sfmt_stdf;
1048 case 12 : itype = FRVBF_INSN_STQF; goto extract_sfmt_ldqf;
79e59fe6
DB
1049 case 13 :
1050 if ((entire_insn & 0x1ffffc0) == 0xc0340)
1051 { itype = FRVBF_INSN_MOVFG; goto extract_sfmt_movfg; }
1052 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1053 case 14 :
1054 if ((entire_insn & 0x1ffffc0) == 0xc0380)
1055 { itype = FRVBF_INSN_MOVFGD; goto extract_sfmt_movfgd; }
1056 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1057 case 15 :
1058 if ((entire_insn & 0x1ffffc0) == 0xc03c0)
1059 { itype = FRVBF_INSN_MOVFGQ; goto extract_sfmt_movfgq; }
1060 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
1061 case 16 : itype = FRVBF_INSN_STBU; goto extract_sfmt_stbu;
1062 case 17 : itype = FRVBF_INSN_STHU; goto extract_sfmt_stbu;
1063 case 18 : itype = FRVBF_INSN_STU; goto extract_sfmt_stbu;
1064 case 19 : itype = FRVBF_INSN_STDU; goto extract_sfmt_stdu;
1065 case 20 : itype = FRVBF_INSN_STQU; goto extract_sfmt_stqu;
79e59fe6
DB
1066 case 21 :
1067 if ((entire_insn & 0x1ffffc0) == 0xc0540)
1068 { itype = FRVBF_INSN_MOVGF; goto extract_sfmt_movgf; }
1069 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1070 case 22 :
1071 if ((entire_insn & 0x1ffffc0) == 0xc0580)
1072 { itype = FRVBF_INSN_MOVGFD; goto extract_sfmt_movgfd; }
1073 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1074 case 23 :
1075 if ((entire_insn & 0x1ffffc0) == 0xc05c0)
1076 { itype = FRVBF_INSN_MOVGFQ; goto extract_sfmt_movgfq; }
1077 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
1078 case 24 : itype = FRVBF_INSN_STBFU; goto extract_sfmt_stbfu;
1079 case 25 : itype = FRVBF_INSN_STHFU; goto extract_sfmt_stbfu;
1080 case 26 : itype = FRVBF_INSN_STFU; goto extract_sfmt_stbfu;
1081 case 27 : itype = FRVBF_INSN_STDFU; goto extract_sfmt_stdfu;
1082 case 28 : itype = FRVBF_INSN_STQFU; goto extract_sfmt_ldqfu;
79e59fe6
DB
1083 case 32 :
1084 if ((entire_insn & 0x1fc0fc7) == 0xc0800)
1085 { itype = FRVBF_INSN_LRAI; goto extract_sfmt_rei; }
1086 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1087 case 33 :
1088 if ((entire_insn & 0x1fc0fc7) == 0xc0840)
1089 { itype = FRVBF_INSN_LRAD; goto extract_sfmt_rei; }
1090 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1091 case 36 :
1092 if ((entire_insn & 0x61fc0fc0) == 0xc0900)
1093 { itype = FRVBF_INSN_TLBPR; goto extract_sfmt_rei; }
1094 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
1095 case 37 : itype = FRVBF_INSN_STC; goto extract_sfmt_stc;
1096 case 38 : itype = FRVBF_INSN_STDC; goto extract_sfmt_stdc;
1097 case 39 : itype = FRVBF_INSN_STQC; goto extract_sfmt_ldqc;
1098 case 45 : itype = FRVBF_INSN_STCU; goto extract_sfmt_stcu;
1099 case 46 : itype = FRVBF_INSN_STDCU; goto extract_sfmt_stdcu;
1100 case 47 : itype = FRVBF_INSN_STQCU; goto extract_sfmt_ldqcu;
79e59fe6
DB
1101 case 48 :
1102 if ((entire_insn & 0x7dfc0fc0) == 0xc0c00)
1103 { itype = FRVBF_INSN_ICPL; goto extract_sfmt_icpl; }
1104 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1105 case 49 :
1106 if ((entire_insn & 0x7ffc0fff) == 0xc0c40)
1107 { itype = FRVBF_INSN_ICUL; goto extract_sfmt_icul; }
1108 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 1109 case 50 : itype = FRVBF_INSN_WITLB; goto extract_sfmt_rei;
79e59fe6
DB
1110 case 51 :
1111 if ((entire_insn & 0x7ffc0fc0) == 0xc0cc0)
1112 { itype = FRVBF_INSN_ITLBI; goto extract_sfmt_rei; }
1113 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1114 case 52 :
1115 if ((entire_insn & 0x7dfc0fc0) == 0xc0d00)
1116 { itype = FRVBF_INSN_DCPL; goto extract_sfmt_icpl; }
1117 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1118 case 53 :
1119 if ((entire_insn & 0x7ffc0fff) == 0xc0d40)
1120 { itype = FRVBF_INSN_DCUL; goto extract_sfmt_icul; }
1121 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 1122 case 54 : itype = FRVBF_INSN_WDTLB; goto extract_sfmt_rei;
79e59fe6
DB
1123 case 55 :
1124 if ((entire_insn & 0x7ffc0fc0) == 0xc0dc0)
1125 { itype = FRVBF_INSN_DTLBI; goto extract_sfmt_rei; }
1126 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1127 case 56 :
1128 if ((entire_insn & 0x7ffc0fc0) == 0xc0e00)
1129 { itype = FRVBF_INSN_ICI; goto extract_sfmt_ici; }
1130 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1131 case 57 :
1132 if ((entire_insn & 0x7dfc0fc0) == 0xc0e40)
1133 { itype = FRVBF_INSN_ICEI; goto extract_sfmt_icei; }
1134 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1135 case 58 :
1136 if ((entire_insn & 0x7dfc0fc0) == 0xc0e80)
1137 { itype = FRVBF_INSN_DCEI; goto extract_sfmt_icei; }
1138 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1139 case 59 :
1140 if ((entire_insn & 0x7dfc0fc0) == 0xc0ec0)
1141 { itype = FRVBF_INSN_DCEF; goto extract_sfmt_icei; }
1142 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1143 case 60 :
1144 if ((entire_insn & 0x7ffc0fc0) == 0xc0f00)
1145 { itype = FRVBF_INSN_DCI; goto extract_sfmt_ici; }
1146 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1147 case 61 :
1148 if ((entire_insn & 0x7ffc0fc0) == 0xc0f40)
1149 { itype = FRVBF_INSN_DCF; goto extract_sfmt_ici; }
1150 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1151 case 62 :
1152 if ((entire_insn & 0x7fffffff) == 0xc0f80)
1153 { itype = FRVBF_INSN_BAR; goto extract_sfmt_rei; }
1154 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1155 case 63 :
1156 if ((entire_insn & 0x7fffffff) == 0xc0fc0)
1157 { itype = FRVBF_INSN_MEMBAR; goto extract_sfmt_rei; }
1158 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1159 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1160 }
1161 }
1162 case 4 :
1163 {
1164 unsigned int val = (((insn >> 25) & (15 << 2)) | ((insn >> 6) & (3 << 0)));
1165 switch (val)
1166 {
79e59fe6
DB
1167 case 0 :
1168 if ((entire_insn & 0x7fffffff) == 0x100000)
1169 { itype = FRVBF_INSN_TNO; goto extract_sfmt_rei; }
1170 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1171 case 1 :
1172 if ((entire_insn & 0x7fffffff) == 0x100040)
1173 { itype = FRVBF_INSN_FTNO; goto extract_sfmt_rei; }
1174 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1175 case 2 :
1176 if ((entire_insn & 0x7fffffff) == 0x100080)
1177 { itype = FRVBF_INSN_MTRAP; goto extract_sfmt_rei; }
1178 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1179 case 3 :
1180 if ((entire_insn & 0x7fffffff) == 0x1000c0)
1181 { itype = FRVBF_INSN_BREAK; goto extract_sfmt_break; }
1182 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1183 case 4 :
1184 if ((entire_insn & 0x79fc0fc0) == 0x8100000)
1185 { itype = FRVBF_INSN_TC; goto extract_sfmt_teq; }
1186 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1187 case 5 :
1188 if ((entire_insn & 0x79fc0fc0) == 0x8100040)
1189 { itype = FRVBF_INSN_FTU; goto extract_sfmt_ftne; }
1190 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1191 case 8 :
1192 if ((entire_insn & 0x79fc0fc0) == 0x10100000)
1193 { itype = FRVBF_INSN_TV; goto extract_sfmt_teq; }
1194 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1195 case 9 :
1196 if ((entire_insn & 0x79fc0fc0) == 0x10100040)
1197 { itype = FRVBF_INSN_FTGT; goto extract_sfmt_ftne; }
1198 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1199 case 12 :
1200 if ((entire_insn & 0x79fc0fc0) == 0x18100000)
1201 { itype = FRVBF_INSN_TLT; goto extract_sfmt_teq; }
1202 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1203 case 13 :
1204 if ((entire_insn & 0x79fc0fc0) == 0x18100040)
1205 { itype = FRVBF_INSN_FTUG; goto extract_sfmt_ftne; }
1206 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1207 case 16 :
1208 if ((entire_insn & 0x79fc0fc0) == 0x20100000)
1209 { itype = FRVBF_INSN_TEQ; goto extract_sfmt_teq; }
1210 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1211 case 17 :
1212 if ((entire_insn & 0x79fc0fc0) == 0x20100040)
1213 { itype = FRVBF_INSN_FTLT; goto extract_sfmt_ftne; }
1214 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1215 case 20 :
1216 if ((entire_insn & 0x79fc0fc0) == 0x28100000)
1217 { itype = FRVBF_INSN_TLS; goto extract_sfmt_teq; }
1218 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1219 case 21 :
1220 if ((entire_insn & 0x79fc0fc0) == 0x28100040)
1221 { itype = FRVBF_INSN_FTUL; goto extract_sfmt_ftne; }
1222 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1223 case 24 :
1224 if ((entire_insn & 0x79fc0fc0) == 0x30100000)
1225 { itype = FRVBF_INSN_TN; goto extract_sfmt_teq; }
1226 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1227 case 25 :
1228 if ((entire_insn & 0x79fc0fc0) == 0x30100040)
1229 { itype = FRVBF_INSN_FTLG; goto extract_sfmt_ftne; }
1230 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1231 case 28 :
1232 if ((entire_insn & 0x79fc0fc0) == 0x38100000)
1233 { itype = FRVBF_INSN_TLE; goto extract_sfmt_teq; }
1234 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1235 case 29 :
1236 if ((entire_insn & 0x79fc0fc0) == 0x38100040)
1237 { itype = FRVBF_INSN_FTNE; goto extract_sfmt_ftne; }
1238 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1239 case 32 :
1240 if ((entire_insn & 0x7ffc0fc0) == 0x40100000)
1241 { itype = FRVBF_INSN_TRA; goto extract_sfmt_tra; }
1242 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1243 case 33 :
1244 if ((entire_insn & 0x79fc0fc0) == 0x40100040)
1245 { itype = FRVBF_INSN_FTEQ; goto extract_sfmt_ftne; }
1246 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1247 case 36 :
1248 if ((entire_insn & 0x79fc0fc0) == 0x48100000)
1249 { itype = FRVBF_INSN_TNC; goto extract_sfmt_teq; }
1250 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1251 case 37 :
1252 if ((entire_insn & 0x79fc0fc0) == 0x48100040)
1253 { itype = FRVBF_INSN_FTUE; goto extract_sfmt_ftne; }
1254 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1255 case 40 :
1256 if ((entire_insn & 0x79fc0fc0) == 0x50100000)
1257 { itype = FRVBF_INSN_TNV; goto extract_sfmt_teq; }
1258 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1259 case 41 :
1260 if ((entire_insn & 0x79fc0fc0) == 0x50100040)
1261 { itype = FRVBF_INSN_FTGE; goto extract_sfmt_ftne; }
1262 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1263 case 44 :
1264 if ((entire_insn & 0x79fc0fc0) == 0x58100000)
1265 { itype = FRVBF_INSN_TGE; goto extract_sfmt_teq; }
1266 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1267 case 45 :
1268 if ((entire_insn & 0x79fc0fc0) == 0x58100040)
1269 { itype = FRVBF_INSN_FTUGE; goto extract_sfmt_ftne; }
1270 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1271 case 48 :
1272 if ((entire_insn & 0x79fc0fc0) == 0x60100000)
1273 { itype = FRVBF_INSN_TNE; goto extract_sfmt_teq; }
1274 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1275 case 49 :
1276 if ((entire_insn & 0x79fc0fc0) == 0x60100040)
1277 { itype = FRVBF_INSN_FTLE; goto extract_sfmt_ftne; }
1278 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1279 case 52 :
1280 if ((entire_insn & 0x79fc0fc0) == 0x68100000)
1281 { itype = FRVBF_INSN_THI; goto extract_sfmt_teq; }
1282 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1283 case 53 :
1284 if ((entire_insn & 0x79fc0fc0) == 0x68100040)
1285 { itype = FRVBF_INSN_FTULE; goto extract_sfmt_ftne; }
1286 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1287 case 56 :
1288 if ((entire_insn & 0x79fc0fc0) == 0x70100000)
1289 { itype = FRVBF_INSN_TP; goto extract_sfmt_teq; }
1290 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1291 case 57 :
1292 if ((entire_insn & 0x79fc0fc0) == 0x70100040)
1293 { itype = FRVBF_INSN_FTO; goto extract_sfmt_ftne; }
1294 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1295 case 60 :
1296 if ((entire_insn & 0x79fc0fc0) == 0x78100000)
1297 { itype = FRVBF_INSN_TGT; goto extract_sfmt_teq; }
1298 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1299 case 61 :
1300 if ((entire_insn & 0x7ffc0fc0) == 0x78100040)
1301 { itype = FRVBF_INSN_FTRA; goto extract_sfmt_tra; }
1302 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1303 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1304 }
1305 }
79e59fe6
DB
1306 case 5 :
1307 if ((entire_insn & 0x7dffffff) == 0x140000)
1308 { itype = FRVBF_INSN_RETT; goto extract_sfmt_rett; }
1309 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1310 case 6 :
1311 {
1312 unsigned int val = (((insn >> 27) & (15 << 0)));
1313 switch (val)
1314 {
79e59fe6
DB
1315 case 0 :
1316 if ((entire_insn & 0x7ffcffff) == 0x180000)
1317 { itype = FRVBF_INSN_BNO; goto extract_sfmt_bno; }
1318 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
1319 case 1 : itype = FRVBF_INSN_BC; goto extract_sfmt_beq;
1320 case 2 : itype = FRVBF_INSN_BV; goto extract_sfmt_beq;
1321 case 3 : itype = FRVBF_INSN_BLT; goto extract_sfmt_beq;
1322 case 4 : itype = FRVBF_INSN_BEQ; goto extract_sfmt_beq;
1323 case 5 : itype = FRVBF_INSN_BLS; goto extract_sfmt_beq;
1324 case 6 : itype = FRVBF_INSN_BN; goto extract_sfmt_beq;
1325 case 7 : itype = FRVBF_INSN_BLE; goto extract_sfmt_beq;
79e59fe6
DB
1326 case 8 :
1327 if ((entire_insn & 0x7ffc0000) == 0x40180000)
1328 { itype = FRVBF_INSN_BRA; goto extract_sfmt_bra; }
1329 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
1330 case 9 : itype = FRVBF_INSN_BNC; goto extract_sfmt_beq;
1331 case 10 : itype = FRVBF_INSN_BNV; goto extract_sfmt_beq;
1332 case 11 : itype = FRVBF_INSN_BGE; goto extract_sfmt_beq;
1333 case 12 : itype = FRVBF_INSN_BNE; goto extract_sfmt_beq;
1334 case 13 : itype = FRVBF_INSN_BHI; goto extract_sfmt_beq;
1335 case 14 : itype = FRVBF_INSN_BP; goto extract_sfmt_beq;
1336 case 15 : itype = FRVBF_INSN_BGT; goto extract_sfmt_beq;
b34f6357
DB
1337 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1338 }
1339 }
1340 case 7 :
1341 {
1342 unsigned int val = (((insn >> 27) & (15 << 0)));
1343 switch (val)
1344 {
79e59fe6
DB
1345 case 0 :
1346 if ((entire_insn & 0x7ffcffff) == 0x1c0000)
1347 { itype = FRVBF_INSN_FBNO; goto extract_sfmt_bno; }
1348 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
1349 case 1 : itype = FRVBF_INSN_FBU; goto extract_sfmt_fbne;
1350 case 2 : itype = FRVBF_INSN_FBGT; goto extract_sfmt_fbne;
1351 case 3 : itype = FRVBF_INSN_FBUG; goto extract_sfmt_fbne;
1352 case 4 : itype = FRVBF_INSN_FBLT; goto extract_sfmt_fbne;
1353 case 5 : itype = FRVBF_INSN_FBUL; goto extract_sfmt_fbne;
1354 case 6 : itype = FRVBF_INSN_FBLG; goto extract_sfmt_fbne;
1355 case 7 : itype = FRVBF_INSN_FBNE; goto extract_sfmt_fbne;
1356 case 8 : itype = FRVBF_INSN_FBEQ; goto extract_sfmt_fbne;
1357 case 9 : itype = FRVBF_INSN_FBUE; goto extract_sfmt_fbne;
1358 case 10 : itype = FRVBF_INSN_FBGE; goto extract_sfmt_fbne;
1359 case 11 : itype = FRVBF_INSN_FBUGE; goto extract_sfmt_fbne;
1360 case 12 : itype = FRVBF_INSN_FBLE; goto extract_sfmt_fbne;
1361 case 13 : itype = FRVBF_INSN_FBULE; goto extract_sfmt_fbne;
1362 case 14 : itype = FRVBF_INSN_FBO; goto extract_sfmt_fbne;
79e59fe6
DB
1363 case 15 :
1364 if ((entire_insn & 0x7ffc0000) == 0x781c0000)
1365 { itype = FRVBF_INSN_FBRA; goto extract_sfmt_bra; }
1366 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1367 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1368 }
1369 }
1370 case 8 :
1371 {
1372 unsigned int val = (((insn >> 27) & (15 << 0)));
1373 switch (val)
1374 {
79e59fe6
DB
1375 case 0 :
1376 if ((entire_insn & 0x79ffffff) == 0x200000)
1377 { itype = FRVBF_INSN_CKNO; goto extract_sfmt_ckra; }
1378 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1379 case 1 :
1380 if ((entire_insn & 0x79fffffc) == 0x8200000)
1381 { itype = FRVBF_INSN_CKC; goto extract_sfmt_ckeq; }
1382 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1383 case 2 :
1384 if ((entire_insn & 0x79fffffc) == 0x10200000)
1385 { itype = FRVBF_INSN_CKV; goto extract_sfmt_ckeq; }
1386 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1387 case 3 :
1388 if ((entire_insn & 0x79fffffc) == 0x18200000)
1389 { itype = FRVBF_INSN_CKLT; goto extract_sfmt_ckeq; }
1390 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1391 case 4 :
1392 if ((entire_insn & 0x79fffffc) == 0x20200000)
1393 { itype = FRVBF_INSN_CKEQ; goto extract_sfmt_ckeq; }
1394 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1395 case 5 :
1396 if ((entire_insn & 0x79fffffc) == 0x28200000)
1397 { itype = FRVBF_INSN_CKLS; goto extract_sfmt_ckeq; }
1398 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1399 case 6 :
1400 if ((entire_insn & 0x79fffffc) == 0x30200000)
1401 { itype = FRVBF_INSN_CKN; goto extract_sfmt_ckeq; }
1402 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1403 case 7 :
1404 if ((entire_insn & 0x79fffffc) == 0x38200000)
1405 { itype = FRVBF_INSN_CKLE; goto extract_sfmt_ckeq; }
1406 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1407 case 8 :
1408 if ((entire_insn & 0x79ffffff) == 0x40200000)
1409 { itype = FRVBF_INSN_CKRA; goto extract_sfmt_ckra; }
1410 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1411 case 9 :
1412 if ((entire_insn & 0x79fffffc) == 0x48200000)
1413 { itype = FRVBF_INSN_CKNC; goto extract_sfmt_ckeq; }
1414 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1415 case 10 :
1416 if ((entire_insn & 0x79fffffc) == 0x50200000)
1417 { itype = FRVBF_INSN_CKNV; goto extract_sfmt_ckeq; }
1418 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1419 case 11 :
1420 if ((entire_insn & 0x79fffffc) == 0x58200000)
1421 { itype = FRVBF_INSN_CKGE; goto extract_sfmt_ckeq; }
1422 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1423 case 12 :
1424 if ((entire_insn & 0x79fffffc) == 0x60200000)
1425 { itype = FRVBF_INSN_CKNE; goto extract_sfmt_ckeq; }
1426 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1427 case 13 :
1428 if ((entire_insn & 0x79fffffc) == 0x68200000)
1429 { itype = FRVBF_INSN_CKHI; goto extract_sfmt_ckeq; }
1430 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1431 case 14 :
1432 if ((entire_insn & 0x79fffffc) == 0x70200000)
1433 { itype = FRVBF_INSN_CKP; goto extract_sfmt_ckeq; }
1434 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1435 case 15 :
1436 if ((entire_insn & 0x79fffffc) == 0x78200000)
1437 { itype = FRVBF_INSN_CKGT; goto extract_sfmt_ckeq; }
1438 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1439 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1440 }
1441 }
1442 case 9 :
1443 {
1444 unsigned int val = (((insn >> 27) & (15 << 0)));
1445 switch (val)
1446 {
79e59fe6
DB
1447 case 0 :
1448 if ((entire_insn & 0x79fffffc) == 0x240000)
1449 { itype = FRVBF_INSN_FCKNO; goto extract_sfmt_fckra; }
1450 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1451 case 1 :
1452 if ((entire_insn & 0x79fffffc) == 0x8240000)
1453 { itype = FRVBF_INSN_FCKU; goto extract_sfmt_fckne; }
1454 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1455 case 2 :
1456 if ((entire_insn & 0x79fffffc) == 0x10240000)
1457 { itype = FRVBF_INSN_FCKGT; goto extract_sfmt_fckne; }
1458 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1459 case 3 :
1460 if ((entire_insn & 0x79fffffc) == 0x18240000)
1461 { itype = FRVBF_INSN_FCKUG; goto extract_sfmt_fckne; }
1462 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1463 case 4 :
1464 if ((entire_insn & 0x79fffffc) == 0x20240000)
1465 { itype = FRVBF_INSN_FCKLT; goto extract_sfmt_fckne; }
1466 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1467 case 5 :
1468 if ((entire_insn & 0x79fffffc) == 0x28240000)
1469 { itype = FRVBF_INSN_FCKUL; goto extract_sfmt_fckne; }
1470 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1471 case 6 :
1472 if ((entire_insn & 0x79fffffc) == 0x30240000)
1473 { itype = FRVBF_INSN_FCKLG; goto extract_sfmt_fckne; }
1474 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1475 case 7 :
1476 if ((entire_insn & 0x79fffffc) == 0x38240000)
1477 { itype = FRVBF_INSN_FCKNE; goto extract_sfmt_fckne; }
1478 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1479 case 8 :
1480 if ((entire_insn & 0x79fffffc) == 0x40240000)
1481 { itype = FRVBF_INSN_FCKEQ; goto extract_sfmt_fckne; }
1482 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1483 case 9 :
1484 if ((entire_insn & 0x79fffffc) == 0x48240000)
1485 { itype = FRVBF_INSN_FCKUE; goto extract_sfmt_fckne; }
1486 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1487 case 10 :
1488 if ((entire_insn & 0x79fffffc) == 0x50240000)
1489 { itype = FRVBF_INSN_FCKGE; goto extract_sfmt_fckne; }
1490 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1491 case 11 :
1492 if ((entire_insn & 0x79fffffc) == 0x58240000)
1493 { itype = FRVBF_INSN_FCKUGE; goto extract_sfmt_fckne; }
1494 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1495 case 12 :
1496 if ((entire_insn & 0x79fffffc) == 0x60240000)
1497 { itype = FRVBF_INSN_FCKLE; goto extract_sfmt_fckne; }
1498 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1499 case 13 :
1500 if ((entire_insn & 0x79fffffc) == 0x68240000)
1501 { itype = FRVBF_INSN_FCKULE; goto extract_sfmt_fckne; }
1502 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1503 case 14 :
1504 if ((entire_insn & 0x79fffffc) == 0x70240000)
1505 { itype = FRVBF_INSN_FCKO; goto extract_sfmt_fckne; }
1506 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1507 case 15 :
1508 if ((entire_insn & 0x79fffffc) == 0x78240000)
1509 { itype = FRVBF_INSN_FCKRA; goto extract_sfmt_fckra; }
1510 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1511 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1512 }
1513 }
1514 case 10 :
1515 {
1516 unsigned int val = (((insn >> 6) & (31 << 0)));
1517 switch (val)
1518 {
79e59fe6
DB
1519 case 0 :
1520 if ((entire_insn & 0x1ffffff) == 0x280000)
1521 { itype = FRVBF_INSN_CLRGR; goto extract_sfmt_clrgr; }
1522 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1523 case 1 :
1524 if ((entire_insn & 0x7fffffff) == 0x280040)
1525 { itype = FRVBF_INSN_CLRGA; goto extract_sfmt_rei; }
1526 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1527 case 2 :
1528 if ((entire_insn & 0x1ffffff) == 0x280080)
1529 { itype = FRVBF_INSN_CLRFR; goto extract_sfmt_clrfr; }
1530 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1531 case 3 :
1532 if ((entire_insn & 0x7fffffff) == 0x2800c0)
1533 { itype = FRVBF_INSN_CLRFA; goto extract_sfmt_rei; }
1534 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1535 case 4 :
1536 if ((entire_insn & 0x1ffffff) == 0x280100)
1537 { itype = FRVBF_INSN_COMMITGR; goto extract_sfmt_commitgr; }
1538 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1539 case 5 :
1540 if ((entire_insn & 0x7fffffff) == 0x280140)
1541 { itype = FRVBF_INSN_COMMITGA; goto extract_sfmt_rei; }
1542 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1543 case 6 :
1544 if ((entire_insn & 0x1ffffff) == 0x280180)
1545 { itype = FRVBF_INSN_COMMITFR; goto extract_sfmt_commitfr; }
1546 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1547 case 7 :
1548 if ((entire_insn & 0x7fffffff) == 0x2801c0)
1549 { itype = FRVBF_INSN_COMMITFA; goto extract_sfmt_rei; }
1550 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1551 case 8 :
1552 if ((entire_insn & 0x71ff8ff8) == 0x280200)
1553 { itype = FRVBF_INSN_ANDCR; goto extract_sfmt_andcr; }
1554 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1555 case 9 :
1556 if ((entire_insn & 0x71ff8ff8) == 0x280240)
1557 { itype = FRVBF_INSN_ORCR; goto extract_sfmt_andcr; }
1558 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1559 case 10 :
1560 if ((entire_insn & 0x71ff8ff8) == 0x280280)
1561 { itype = FRVBF_INSN_XORCR; goto extract_sfmt_andcr; }
1562 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1563 case 11 :
1564 if ((entire_insn & 0x71fffff8) == 0x2802c0)
1565 { itype = FRVBF_INSN_NOTCR; goto extract_sfmt_notcr; }
1566 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1567 case 12 :
1568 if ((entire_insn & 0x71ff8ff8) == 0x280300)
1569 { itype = FRVBF_INSN_NANDCR; goto extract_sfmt_andcr; }
1570 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1571 case 13 :
1572 if ((entire_insn & 0x71ff8ff8) == 0x280340)
1573 { itype = FRVBF_INSN_NORCR; goto extract_sfmt_andcr; }
1574 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1575 case 16 :
1576 if ((entire_insn & 0x71ff8ff8) == 0x280400)
1577 { itype = FRVBF_INSN_ANDNCR; goto extract_sfmt_andcr; }
1578 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1579 case 17 :
1580 if ((entire_insn & 0x71ff8ff8) == 0x280440)
1581 { itype = FRVBF_INSN_ORNCR; goto extract_sfmt_andcr; }
1582 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1583 case 20 :
1584 if ((entire_insn & 0x71ff8ff8) == 0x280500)
1585 { itype = FRVBF_INSN_NANDNCR; goto extract_sfmt_andcr; }
1586 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1587 case 21 :
1588 if ((entire_insn & 0x71ff8ff8) == 0x280540)
1589 { itype = FRVBF_INSN_NORNCR; goto extract_sfmt_andcr; }
1590 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1591 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1592 }
1593 }
79e59fe6
DB
1594 case 11 :
1595 if ((entire_insn & 0x1fc0fc0) == 0x2c0000)
1596 { itype = FRVBF_INSN_SCAN; goto extract_sfmt_add; }
1597 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1598 case 12 :
1599 {
1600 unsigned int val = (((insn >> 25) & (1 << 0)));
1601 switch (val)
1602 {
79e59fe6
DB
1603 case 0 :
1604 if ((entire_insn & 0x7ffc0fc0) == 0x300000)
1605 { itype = FRVBF_INSN_JMPL; goto extract_sfmt_jmpl; }
1606 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1607 case 1 :
1608 if ((entire_insn & 0x7ffc0fc0) == 0x2300000)
1609 { itype = FRVBF_INSN_CALLL; goto extract_sfmt_jmpl; }
1610 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1611 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1612 }
1613 }
1614 case 13 :
1615 {
1616 unsigned int val = (((insn >> 25) & (1 << 0)));
1617 switch (val)
1618 {
79e59fe6
DB
1619 case 0 :
1620 if ((entire_insn & 0x7ffc0000) == 0x340000)
1621 { itype = FRVBF_INSN_JMPIL; goto extract_sfmt_jmpil; }
1622 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1623 case 1 :
1624 if ((entire_insn & 0x7ffc0000) == 0x2340000)
1625 { itype = FRVBF_INSN_CALLIL; goto extract_sfmt_jmpil; }
1626 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1627 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1628 }
1629 }
1630 case 14 :
1631 {
1632 unsigned int val = (((insn >> 25) & (15 << 2)) | ((insn >> 14) & (1 << 1)) | ((insn >> 13) & (1 << 0)));
1633 switch (val)
1634 {
79e59fe6
DB
1635 case 0 :
1636 if ((entire_insn & 0x7ffcffff) == 0x384000)
1637 { itype = FRVBF_INSN_BNOLR; goto extract_sfmt_bnolr; }
1638 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1639 case 1 :
1640 {
1641 unsigned int val = (((insn >> 14) & (1 << 0)));
1642 switch (val)
1643 {
79e59fe6
DB
1644 case 0 :
1645 if ((entire_insn & 0x7ffcefff) == 0x382000)
1646 { itype = FRVBF_INSN_BCTRLR; goto extract_sfmt_bctrlr; }
1647 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1648 case 1 :
1649 if ((entire_insn & 0x7ffcffff) == 0x386000)
1650 { itype = FRVBF_INSN_BCNOLR; goto extract_sfmt_bcnolr; }
1651 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1652 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1653 }
1654 }
79e59fe6
DB
1655 case 2 :
1656 if ((entire_insn & 0x7ffcffff) == 0x38c000)
1657 { itype = FRVBF_INSN_FBNOLR; goto extract_sfmt_bnolr; }
1658 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1659 case 3 :
1660 if ((entire_insn & 0x7ffcffff) == 0x38e000)
1661 { itype = FRVBF_INSN_FCBNOLR; goto extract_sfmt_bcnolr; }
1662 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1663 case 4 :
1664 if ((entire_insn & 0x79fcffff) == 0x8384000)
1665 { itype = FRVBF_INSN_BCLR; goto extract_sfmt_beqlr; }
1666 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1667 case 5 :
1668 if ((entire_insn & 0x79fcefff) == 0x8386000)
1669 { itype = FRVBF_INSN_BCCLR; goto extract_sfmt_bceqlr; }
1670 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1671 case 6 :
1672 if ((entire_insn & 0x79fcffff) == 0x838c000)
1673 { itype = FRVBF_INSN_FBULR; goto extract_sfmt_fbeqlr; }
1674 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1675 case 7 :
1676 if ((entire_insn & 0x79fcefff) == 0x838e000)
1677 { itype = FRVBF_INSN_FCBULR; goto extract_sfmt_fcbeqlr; }
1678 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1679 case 8 :
1680 if ((entire_insn & 0x79fcffff) == 0x10384000)
1681 { itype = FRVBF_INSN_BVLR; goto extract_sfmt_beqlr; }
1682 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1683 case 9 :
1684 if ((entire_insn & 0x79fcefff) == 0x10386000)
1685 { itype = FRVBF_INSN_BCVLR; goto extract_sfmt_bceqlr; }
1686 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1687 case 10 :
1688 if ((entire_insn & 0x79fcffff) == 0x1038c000)
1689 { itype = FRVBF_INSN_FBGTLR; goto extract_sfmt_fbeqlr; }
1690 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1691 case 11 :
1692 if ((entire_insn & 0x79fcefff) == 0x1038e000)
1693 { itype = FRVBF_INSN_FCBGTLR; goto extract_sfmt_fcbeqlr; }
1694 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1695 case 12 :
1696 if ((entire_insn & 0x79fcffff) == 0x18384000)
1697 { itype = FRVBF_INSN_BLTLR; goto extract_sfmt_beqlr; }
1698 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1699 case 13 :
1700 if ((entire_insn & 0x79fcefff) == 0x18386000)
1701 { itype = FRVBF_INSN_BCLTLR; goto extract_sfmt_bceqlr; }
1702 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1703 case 14 :
1704 if ((entire_insn & 0x79fcffff) == 0x1838c000)
1705 { itype = FRVBF_INSN_FBUGLR; goto extract_sfmt_fbeqlr; }
1706 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1707 case 15 :
1708 if ((entire_insn & 0x79fcefff) == 0x1838e000)
1709 { itype = FRVBF_INSN_FCBUGLR; goto extract_sfmt_fcbeqlr; }
1710 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1711 case 16 :
1712 if ((entire_insn & 0x79fcffff) == 0x20384000)
1713 { itype = FRVBF_INSN_BEQLR; goto extract_sfmt_beqlr; }
1714 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1715 case 17 :
1716 if ((entire_insn & 0x79fcefff) == 0x20386000)
1717 { itype = FRVBF_INSN_BCEQLR; goto extract_sfmt_bceqlr; }
1718 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1719 case 18 :
1720 if ((entire_insn & 0x79fcffff) == 0x2038c000)
1721 { itype = FRVBF_INSN_FBLTLR; goto extract_sfmt_fbeqlr; }
1722 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1723 case 19 :
1724 if ((entire_insn & 0x79fcefff) == 0x2038e000)
1725 { itype = FRVBF_INSN_FCBLTLR; goto extract_sfmt_fcbeqlr; }
1726 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1727 case 20 :
1728 if ((entire_insn & 0x79fcffff) == 0x28384000)
1729 { itype = FRVBF_INSN_BLSLR; goto extract_sfmt_beqlr; }
1730 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1731 case 21 :
1732 if ((entire_insn & 0x79fcefff) == 0x28386000)
1733 { itype = FRVBF_INSN_BCLSLR; goto extract_sfmt_bceqlr; }
1734 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1735 case 22 :
1736 if ((entire_insn & 0x79fcffff) == 0x2838c000)
1737 { itype = FRVBF_INSN_FBULLR; goto extract_sfmt_fbeqlr; }
1738 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1739 case 23 :
1740 if ((entire_insn & 0x79fcefff) == 0x2838e000)
1741 { itype = FRVBF_INSN_FCBULLR; goto extract_sfmt_fcbeqlr; }
1742 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1743 case 24 :
1744 if ((entire_insn & 0x79fcffff) == 0x30384000)
1745 { itype = FRVBF_INSN_BNLR; goto extract_sfmt_beqlr; }
1746 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1747 case 25 :
1748 if ((entire_insn & 0x79fcefff) == 0x30386000)
1749 { itype = FRVBF_INSN_BCNLR; goto extract_sfmt_bceqlr; }
1750 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1751 case 26 :
1752 if ((entire_insn & 0x79fcffff) == 0x3038c000)
1753 { itype = FRVBF_INSN_FBLGLR; goto extract_sfmt_fbeqlr; }
1754 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1755 case 27 :
1756 if ((entire_insn & 0x79fcefff) == 0x3038e000)
1757 { itype = FRVBF_INSN_FCBLGLR; goto extract_sfmt_fcbeqlr; }
1758 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1759 case 28 :
1760 if ((entire_insn & 0x79fcffff) == 0x38384000)
1761 { itype = FRVBF_INSN_BLELR; goto extract_sfmt_beqlr; }
1762 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1763 case 29 :
1764 if ((entire_insn & 0x79fcefff) == 0x38386000)
1765 { itype = FRVBF_INSN_BCLELR; goto extract_sfmt_bceqlr; }
1766 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1767 case 30 :
1768 if ((entire_insn & 0x79fcffff) == 0x3838c000)
1769 { itype = FRVBF_INSN_FBNELR; goto extract_sfmt_fbeqlr; }
1770 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1771 case 31 :
1772 if ((entire_insn & 0x79fcefff) == 0x3838e000)
1773 { itype = FRVBF_INSN_FCBNELR; goto extract_sfmt_fcbeqlr; }
1774 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1775 case 32 :
1776 if ((entire_insn & 0x7ffcffff) == 0x40384000)
1777 { itype = FRVBF_INSN_BRALR; goto extract_sfmt_bralr; }
1778 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1779 case 33 :
1780 if ((entire_insn & 0x7ffcefff) == 0x40386000)
1781 { itype = FRVBF_INSN_BCRALR; goto extract_sfmt_bcralr; }
1782 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1783 case 34 :
1784 if ((entire_insn & 0x79fcffff) == 0x4038c000)
1785 { itype = FRVBF_INSN_FBEQLR; goto extract_sfmt_fbeqlr; }
1786 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1787 case 35 :
1788 if ((entire_insn & 0x79fcefff) == 0x4038e000)
1789 { itype = FRVBF_INSN_FCBEQLR; goto extract_sfmt_fcbeqlr; }
1790 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1791 case 36 :
1792 if ((entire_insn & 0x79fcffff) == 0x48384000)
1793 { itype = FRVBF_INSN_BNCLR; goto extract_sfmt_beqlr; }
1794 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1795 case 37 :
1796 if ((entire_insn & 0x79fcefff) == 0x48386000)
1797 { itype = FRVBF_INSN_BCNCLR; goto extract_sfmt_bceqlr; }
1798 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1799 case 38 :
1800 if ((entire_insn & 0x79fcffff) == 0x4838c000)
1801 { itype = FRVBF_INSN_FBUELR; goto extract_sfmt_fbeqlr; }
1802 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1803 case 39 :
1804 if ((entire_insn & 0x79fcefff) == 0x4838e000)
1805 { itype = FRVBF_INSN_FCBUELR; goto extract_sfmt_fcbeqlr; }
1806 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1807 case 40 :
1808 if ((entire_insn & 0x79fcffff) == 0x50384000)
1809 { itype = FRVBF_INSN_BNVLR; goto extract_sfmt_beqlr; }
1810 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1811 case 41 :
1812 if ((entire_insn & 0x79fcefff) == 0x50386000)
1813 { itype = FRVBF_INSN_BCNVLR; goto extract_sfmt_bceqlr; }
1814 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1815 case 42 :
1816 if ((entire_insn & 0x79fcffff) == 0x5038c000)
1817 { itype = FRVBF_INSN_FBGELR; goto extract_sfmt_fbeqlr; }
1818 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1819 case 43 :
1820 if ((entire_insn & 0x79fcefff) == 0x5038e000)
1821 { itype = FRVBF_INSN_FCBGELR; goto extract_sfmt_fcbeqlr; }
1822 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1823 case 44 :
1824 if ((entire_insn & 0x79fcffff) == 0x58384000)
1825 { itype = FRVBF_INSN_BGELR; goto extract_sfmt_beqlr; }
1826 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1827 case 45 :
1828 if ((entire_insn & 0x79fcefff) == 0x58386000)
1829 { itype = FRVBF_INSN_BCGELR; goto extract_sfmt_bceqlr; }
1830 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1831 case 46 :
1832 if ((entire_insn & 0x79fcffff) == 0x5838c000)
1833 { itype = FRVBF_INSN_FBUGELR; goto extract_sfmt_fbeqlr; }
1834 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1835 case 47 :
1836 if ((entire_insn & 0x79fcefff) == 0x5838e000)
1837 { itype = FRVBF_INSN_FCBUGELR; goto extract_sfmt_fcbeqlr; }
1838 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1839 case 48 :
1840 if ((entire_insn & 0x79fcffff) == 0x60384000)
1841 { itype = FRVBF_INSN_BNELR; goto extract_sfmt_beqlr; }
1842 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1843 case 49 :
1844 if ((entire_insn & 0x79fcefff) == 0x60386000)
1845 { itype = FRVBF_INSN_BCNELR; goto extract_sfmt_bceqlr; }
1846 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1847 case 50 :
1848 if ((entire_insn & 0x79fcffff) == 0x6038c000)
1849 { itype = FRVBF_INSN_FBLELR; goto extract_sfmt_fbeqlr; }
1850 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1851 case 51 :
1852 if ((entire_insn & 0x79fcefff) == 0x6038e000)
1853 { itype = FRVBF_INSN_FCBLELR; goto extract_sfmt_fcbeqlr; }
1854 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1855 case 52 :
1856 if ((entire_insn & 0x79fcffff) == 0x68384000)
1857 { itype = FRVBF_INSN_BHILR; goto extract_sfmt_beqlr; }
1858 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1859 case 53 :
1860 if ((entire_insn & 0x79fcefff) == 0x68386000)
1861 { itype = FRVBF_INSN_BCHILR; goto extract_sfmt_bceqlr; }
1862 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1863 case 54 :
1864 if ((entire_insn & 0x79fcffff) == 0x6838c000)
1865 { itype = FRVBF_INSN_FBULELR; goto extract_sfmt_fbeqlr; }
1866 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1867 case 55 :
1868 if ((entire_insn & 0x79fcefff) == 0x6838e000)
1869 { itype = FRVBF_INSN_FCBULELR; goto extract_sfmt_fcbeqlr; }
1870 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1871 case 56 :
1872 if ((entire_insn & 0x79fcffff) == 0x70384000)
1873 { itype = FRVBF_INSN_BPLR; goto extract_sfmt_beqlr; }
1874 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1875 case 57 :
1876 if ((entire_insn & 0x79fcefff) == 0x70386000)
1877 { itype = FRVBF_INSN_BCPLR; goto extract_sfmt_bceqlr; }
1878 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1879 case 58 :
1880 if ((entire_insn & 0x79fcffff) == 0x7038c000)
1881 { itype = FRVBF_INSN_FBOLR; goto extract_sfmt_fbeqlr; }
1882 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1883 case 59 :
1884 if ((entire_insn & 0x79fcefff) == 0x7038e000)
1885 { itype = FRVBF_INSN_FCBOLR; goto extract_sfmt_fcbeqlr; }
1886 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1887 case 60 :
1888 if ((entire_insn & 0x79fcffff) == 0x78384000)
1889 { itype = FRVBF_INSN_BGTLR; goto extract_sfmt_beqlr; }
1890 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1891 case 61 :
1892 if ((entire_insn & 0x79fcefff) == 0x78386000)
1893 { itype = FRVBF_INSN_BCGTLR; goto extract_sfmt_bceqlr; }
1894 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1895 case 62 :
1896 if ((entire_insn & 0x7ffcffff) == 0x7838c000)
1897 { itype = FRVBF_INSN_FBRALR; goto extract_sfmt_bralr; }
1898 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1899 case 63 :
1900 if ((entire_insn & 0x7ffcefff) == 0x7838e000)
1901 { itype = FRVBF_INSN_FCBRALR; goto extract_sfmt_bcralr; }
1902 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1903 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1904 }
1905 }
b29791a8
DE
1906 case 15 : itype = FRVBF_INSN_CALL; goto extract_sfmt_call;
1907 case 16 : itype = FRVBF_INSN_ADDI; goto extract_sfmt_addi;
1908 case 17 : itype = FRVBF_INSN_ADDICC; goto extract_sfmt_addicc;
1909 case 18 : itype = FRVBF_INSN_ADDXI; goto extract_sfmt_addxi;
1910 case 19 : itype = FRVBF_INSN_ADDXICC; goto extract_sfmt_addicc;
1911 case 20 : itype = FRVBF_INSN_SUBI; goto extract_sfmt_addi;
1912 case 21 : itype = FRVBF_INSN_SUBICC; goto extract_sfmt_addicc;
1913 case 22 : itype = FRVBF_INSN_SUBXI; goto extract_sfmt_addxi;
1914 case 23 : itype = FRVBF_INSN_SUBXICC; goto extract_sfmt_addicc;
1915 case 24 : itype = FRVBF_INSN_SMULI; goto extract_sfmt_smuli;
1916 case 25 : itype = FRVBF_INSN_SMULICC; goto extract_sfmt_smulicc;
1917 case 26 : itype = FRVBF_INSN_UMULI; goto extract_sfmt_smuli;
1918 case 27 : itype = FRVBF_INSN_UMULICC; goto extract_sfmt_smulicc;
b34f6357
DB
1919 case 28 :
1920 {
1921 unsigned int val = (((insn >> 27) & (15 << 0)));
1922 switch (val)
1923 {
79e59fe6
DB
1924 case 0 :
1925 if ((entire_insn & 0x7fffffff) == 0x700000)
1926 { itype = FRVBF_INSN_TINO; goto extract_sfmt_rei; }
1927 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
1928 case 1 : itype = FRVBF_INSN_TIC; goto extract_sfmt_tieq;
1929 case 2 : itype = FRVBF_INSN_TIV; goto extract_sfmt_tieq;
1930 case 3 : itype = FRVBF_INSN_TILT; goto extract_sfmt_tieq;
1931 case 4 : itype = FRVBF_INSN_TIEQ; goto extract_sfmt_tieq;
1932 case 5 : itype = FRVBF_INSN_TILS; goto extract_sfmt_tieq;
1933 case 6 : itype = FRVBF_INSN_TIN; goto extract_sfmt_tieq;
1934 case 7 : itype = FRVBF_INSN_TILE; goto extract_sfmt_tieq;
79e59fe6
DB
1935 case 8 :
1936 if ((entire_insn & 0x7ffc0000) == 0x40700000)
1937 { itype = FRVBF_INSN_TIRA; goto extract_sfmt_tira; }
1938 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
1939 case 9 : itype = FRVBF_INSN_TINC; goto extract_sfmt_tieq;
1940 case 10 : itype = FRVBF_INSN_TINV; goto extract_sfmt_tieq;
1941 case 11 : itype = FRVBF_INSN_TIGE; goto extract_sfmt_tieq;
1942 case 12 : itype = FRVBF_INSN_TINE; goto extract_sfmt_tieq;
1943 case 13 : itype = FRVBF_INSN_TIHI; goto extract_sfmt_tieq;
1944 case 14 : itype = FRVBF_INSN_TIP; goto extract_sfmt_tieq;
1945 case 15 : itype = FRVBF_INSN_TIGT; goto extract_sfmt_tieq;
b34f6357
DB
1946 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1947 }
1948 }
1949 case 29 :
1950 {
1951 unsigned int val = (((insn >> 27) & (15 << 0)));
1952 switch (val)
1953 {
79e59fe6
DB
1954 case 0 :
1955 if ((entire_insn & 0x7fffffff) == 0x740000)
1956 { itype = FRVBF_INSN_FTINO; goto extract_sfmt_rei; }
1957 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
1958 case 1 : itype = FRVBF_INSN_FTIU; goto extract_sfmt_ftine;
1959 case 2 : itype = FRVBF_INSN_FTIGT; goto extract_sfmt_ftine;
1960 case 3 : itype = FRVBF_INSN_FTIUG; goto extract_sfmt_ftine;
1961 case 4 : itype = FRVBF_INSN_FTILT; goto extract_sfmt_ftine;
1962 case 5 : itype = FRVBF_INSN_FTIUL; goto extract_sfmt_ftine;
1963 case 6 : itype = FRVBF_INSN_FTILG; goto extract_sfmt_ftine;
1964 case 7 : itype = FRVBF_INSN_FTINE; goto extract_sfmt_ftine;
1965 case 8 : itype = FRVBF_INSN_FTIEQ; goto extract_sfmt_ftine;
1966 case 9 : itype = FRVBF_INSN_FTIUE; goto extract_sfmt_ftine;
1967 case 10 : itype = FRVBF_INSN_FTIGE; goto extract_sfmt_ftine;
1968 case 11 : itype = FRVBF_INSN_FTIUGE; goto extract_sfmt_ftine;
1969 case 12 : itype = FRVBF_INSN_FTILE; goto extract_sfmt_ftine;
1970 case 13 : itype = FRVBF_INSN_FTIULE; goto extract_sfmt_ftine;
1971 case 14 : itype = FRVBF_INSN_FTIO; goto extract_sfmt_ftine;
79e59fe6
DB
1972 case 15 :
1973 if ((entire_insn & 0x7ffc0000) == 0x78740000)
1974 { itype = FRVBF_INSN_FTIRA; goto extract_sfmt_tira; }
1975 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
1976 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
1977 }
1978 }
b29791a8
DE
1979 case 30 : itype = FRVBF_INSN_SDIVI; goto extract_sfmt_sdivi;
1980 case 31 : itype = FRVBF_INSN_UDIVI; goto extract_sfmt_sdivi;
1981 case 32 : itype = FRVBF_INSN_ANDI; goto extract_sfmt_addi;
1982 case 33 : itype = FRVBF_INSN_ANDICC; goto extract_sfmt_andicc;
1983 case 34 : itype = FRVBF_INSN_ORI; goto extract_sfmt_addi;
1984 case 35 : itype = FRVBF_INSN_ORICC; goto extract_sfmt_andicc;
1985 case 36 : itype = FRVBF_INSN_XORI; goto extract_sfmt_addi;
1986 case 37 : itype = FRVBF_INSN_XORICC; goto extract_sfmt_andicc;
1987 case 40 : itype = FRVBF_INSN_SLLI; goto extract_sfmt_addi;
1988 case 41 : itype = FRVBF_INSN_SLLICC; goto extract_sfmt_addicc;
1989 case 42 : itype = FRVBF_INSN_SRLI; goto extract_sfmt_addi;
1990 case 43 : itype = FRVBF_INSN_SRLICC; goto extract_sfmt_addicc;
1991 case 44 : itype = FRVBF_INSN_SRAI; goto extract_sfmt_addi;
1992 case 45 : itype = FRVBF_INSN_SRAICC; goto extract_sfmt_addicc;
1993 case 46 : itype = FRVBF_INSN_NSDIVI; goto extract_sfmt_sdivi;
1994 case 47 : itype = FRVBF_INSN_NUDIVI; goto extract_sfmt_sdivi;
1995 case 48 : itype = FRVBF_INSN_LDSBI; goto extract_sfmt_ldsbi;
1996 case 49 : itype = FRVBF_INSN_LDSHI; goto extract_sfmt_ldsbi;
1997 case 50 : itype = FRVBF_INSN_LDI; goto extract_sfmt_ldsbi;
1998 case 51 : itype = FRVBF_INSN_LDDI; goto extract_sfmt_lddi;
1999 case 52 : itype = FRVBF_INSN_LDQI; goto extract_sfmt_ldqi;
2000 case 53 : itype = FRVBF_INSN_LDUBI; goto extract_sfmt_ldsbi;
2001 case 54 : itype = FRVBF_INSN_LDUHI; goto extract_sfmt_ldsbi;
79e59fe6
DB
2002 case 55 :
2003 if ((entire_insn & 0x7ffc0fff) == 0xdc0000)
2004 { itype = FRVBF_INSN_REI; goto extract_sfmt_rei; }
2005 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
2006 case 56 : itype = FRVBF_INSN_LDBFI; goto extract_sfmt_ldbfi;
2007 case 57 : itype = FRVBF_INSN_LDHFI; goto extract_sfmt_ldbfi;
2008 case 58 : itype = FRVBF_INSN_LDFI; goto extract_sfmt_ldbfi;
2009 case 59 : itype = FRVBF_INSN_LDDFI; goto extract_sfmt_lddfi;
2010 case 60 : itype = FRVBF_INSN_LDQFI; goto extract_sfmt_ldqfi;
79e59fe6
DB
2011 case 61 :
2012 if ((entire_insn & 0x1ff0000) == 0xf40000)
2013 { itype = FRVBF_INSN_SETLO; goto extract_sfmt_setlo; }
2014 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2015 case 62 :
2016 if ((entire_insn & 0x1ff0000) == 0xf80000)
2017 { itype = FRVBF_INSN_SETHI; goto extract_sfmt_sethi; }
2018 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2019 case 63 :
2020 if ((entire_insn & 0x1ff0000) == 0xfc0000)
2021 { itype = FRVBF_INSN_SETLOS; goto extract_sfmt_setlos; }
2022 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
2023 case 64 : itype = FRVBF_INSN_NLDSBI; goto extract_sfmt_nldsbi;
2024 case 65 : itype = FRVBF_INSN_NLDUBI; goto extract_sfmt_nldsbi;
2025 case 66 : itype = FRVBF_INSN_NLDSHI; goto extract_sfmt_nldsbi;
2026 case 67 : itype = FRVBF_INSN_NLDUHI; goto extract_sfmt_nldsbi;
2027 case 68 : itype = FRVBF_INSN_NLDI; goto extract_sfmt_nldsbi;
2028 case 69 : itype = FRVBF_INSN_NLDDI; goto extract_sfmt_nlddi;
e930b1f5
DB
2029 case 70 :
2030 {
2031 unsigned int val = (((insn >> 6) & (7 << 0)));
2032 switch (val)
2033 {
79e59fe6
DB
2034 case 0 :
2035 if ((entire_insn & 0x1fc0fc0) == 0x1180000)
2036 { itype = FRVBF_INSN_ADDSS; goto extract_sfmt_add; }
2037 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2038 case 1 :
2039 if ((entire_insn & 0x1fc0fc0) == 0x1180040)
2040 { itype = FRVBF_INSN_SUBSS; goto extract_sfmt_add; }
2041 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2042 case 2 :
2043 if ((entire_insn & 0x1fc0fc0) == 0x1180080)
2044 { itype = FRVBF_INSN_SLASS; goto extract_sfmt_add; }
2045 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2046 case 4 :
2047 if ((entire_insn & 0x1ffffc0) == 0x1180100)
2048 { itype = FRVBF_INSN_SCUTSS; goto extract_sfmt_scutss; }
2049 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2050 case 5 :
2051 if ((entire_insn & 0x7ffc0fc0) == 0x1180140)
2052 { itype = FRVBF_INSN_SMU; goto extract_sfmt_smu; }
2053 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2054 case 6 :
2055 if ((entire_insn & 0x7ffc0fc0) == 0x1180180)
2056 { itype = FRVBF_INSN_SMASS; goto extract_sfmt_smass; }
2057 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2058 case 7 :
2059 if ((entire_insn & 0x7ffc0fc0) == 0x11801c0)
2060 { itype = FRVBF_INSN_SMSSS; goto extract_sfmt_smass; }
2061 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
e930b1f5
DB
2062 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2063 }
2064 }
b29791a8
DE
2065 case 71 : itype = FRVBF_INSN_SCANI; goto extract_sfmt_addi;
2066 case 72 : itype = FRVBF_INSN_NLDBFI; goto extract_sfmt_nldbfi;
2067 case 73 : itype = FRVBF_INSN_NLDHFI; goto extract_sfmt_nldbfi;
2068 case 74 : itype = FRVBF_INSN_NLDFI; goto extract_sfmt_nldbfi;
2069 case 75 : itype = FRVBF_INSN_NLDDFI; goto extract_sfmt_nlddfi;
2070 case 76 : itype = FRVBF_INSN_NLDQFI; goto extract_sfmt_nldqfi;
2071 case 77 : itype = FRVBF_INSN_SWAPI; goto extract_sfmt_swapi;
2072 case 78 : itype = FRVBF_INSN_STBFI; goto extract_sfmt_stbfi;
2073 case 79 : itype = FRVBF_INSN_STHFI; goto extract_sfmt_stbfi;
2074 case 80 : itype = FRVBF_INSN_STBI; goto extract_sfmt_stbi;
2075 case 81 : itype = FRVBF_INSN_STHI; goto extract_sfmt_stbi;
2076 case 82 : itype = FRVBF_INSN_STI; goto extract_sfmt_stbi;
2077 case 83 : itype = FRVBF_INSN_STDI; goto extract_sfmt_stdi;
2078 case 84 : itype = FRVBF_INSN_STQI; goto extract_sfmt_ldqi;
2079 case 85 : itype = FRVBF_INSN_STFI; goto extract_sfmt_stbfi;
2080 case 86 : itype = FRVBF_INSN_STDFI; goto extract_sfmt_stdfi;
2081 case 87 : itype = FRVBF_INSN_STQFI; goto extract_sfmt_ldqfi;
b34f6357
DB
2082 case 88 :
2083 {
2084 unsigned int val = (((insn >> 6) & (3 << 0)));
2085 switch (val)
2086 {
b29791a8
DE
2087 case 0 : itype = FRVBF_INSN_CADD; goto extract_sfmt_cadd;
2088 case 1 : itype = FRVBF_INSN_CSUB; goto extract_sfmt_cadd;
2089 case 2 : itype = FRVBF_INSN_CSMUL; goto extract_sfmt_csmul;
2090 case 3 : itype = FRVBF_INSN_CSDIV; goto extract_sfmt_csdiv;
b34f6357
DB
2091 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2092 }
2093 }
2094 case 89 :
2095 {
2096 unsigned int val = (((insn >> 6) & (3 << 0)));
2097 switch (val)
2098 {
b29791a8
DE
2099 case 0 : itype = FRVBF_INSN_CADDCC; goto extract_sfmt_caddcc;
2100 case 1 : itype = FRVBF_INSN_CSUBCC; goto extract_sfmt_caddcc;
2101 case 2 : itype = FRVBF_INSN_CSMULCC; goto extract_sfmt_csmulcc;
2102 case 3 : itype = FRVBF_INSN_CUDIV; goto extract_sfmt_csdiv;
b34f6357
DB
2103 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2104 }
2105 }
2106 case 90 :
2107 {
2108 unsigned int val = (((insn >> 6) & (3 << 0)));
2109 switch (val)
2110 {
b29791a8
DE
2111 case 0 : itype = FRVBF_INSN_CAND; goto extract_sfmt_cadd;
2112 case 1 : itype = FRVBF_INSN_COR; goto extract_sfmt_cadd;
2113 case 2 : itype = FRVBF_INSN_CXOR; goto extract_sfmt_cadd;
79e59fe6
DB
2114 case 3 :
2115 if ((entire_insn & 0x1fff0c0) == 0x16800c0)
2116 { itype = FRVBF_INSN_CNOT; goto extract_sfmt_cnot; }
2117 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2118 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2119 }
2120 }
2121 case 91 :
2122 {
2123 unsigned int val = (((insn >> 6) & (3 << 0)));
2124 switch (val)
2125 {
b29791a8
DE
2126 case 0 : itype = FRVBF_INSN_CANDCC; goto extract_sfmt_caddcc;
2127 case 1 : itype = FRVBF_INSN_CORCC; goto extract_sfmt_caddcc;
2128 case 2 : itype = FRVBF_INSN_CXORCC; goto extract_sfmt_caddcc;
b34f6357
DB
2129 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2130 }
2131 }
2132 case 92 :
2133 {
2134 unsigned int val = (((insn >> 6) & (3 << 0)));
2135 switch (val)
2136 {
b29791a8
DE
2137 case 0 : itype = FRVBF_INSN_CSLL; goto extract_sfmt_cadd;
2138 case 1 : itype = FRVBF_INSN_CSRL; goto extract_sfmt_cadd;
2139 case 2 : itype = FRVBF_INSN_CSRA; goto extract_sfmt_cadd;
b34f6357
DB
2140 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2141 }
2142 }
2143 case 93 :
2144 {
2145 unsigned int val = (((insn >> 6) & (3 << 0)));
2146 switch (val)
2147 {
b29791a8
DE
2148 case 0 : itype = FRVBF_INSN_CSLLCC; goto extract_sfmt_caddcc;
2149 case 1 : itype = FRVBF_INSN_CSRLCC; goto extract_sfmt_caddcc;
2150 case 2 : itype = FRVBF_INSN_CSRACC; goto extract_sfmt_caddcc;
b34f6357
DB
2151 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2152 }
2153 }
2154 case 94 :
2155 {
2156 unsigned int val = (((insn >> 6) & (3 << 0)));
2157 switch (val)
2158 {
b29791a8
DE
2159 case 0 : itype = FRVBF_INSN_CLDSB; goto extract_sfmt_cldsb;
2160 case 1 : itype = FRVBF_INSN_CLDUB; goto extract_sfmt_cldsb;
2161 case 2 : itype = FRVBF_INSN_CLDSH; goto extract_sfmt_cldsb;
2162 case 3 : itype = FRVBF_INSN_CLDUH; goto extract_sfmt_cldsb;
b34f6357
DB
2163 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2164 }
2165 }
2166 case 95 :
2167 {
2168 unsigned int val = (((insn >> 6) & (3 << 0)));
2169 switch (val)
2170 {
b29791a8
DE
2171 case 0 : itype = FRVBF_INSN_CLD; goto extract_sfmt_cldsb;
2172 case 1 : itype = FRVBF_INSN_CLDD; goto extract_sfmt_cldd;
2173 case 2 : itype = FRVBF_INSN_CLDQ; goto extract_sfmt_cldq;
b34f6357
DB
2174 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2175 }
2176 }
2177 case 96 :
2178 {
2179 unsigned int val = (((insn >> 6) & (3 << 0)));
2180 switch (val)
2181 {
b29791a8
DE
2182 case 0 : itype = FRVBF_INSN_CLDBF; goto extract_sfmt_cldbf;
2183 case 1 : itype = FRVBF_INSN_CLDHF; goto extract_sfmt_cldbf;
2184 case 2 : itype = FRVBF_INSN_CLDF; goto extract_sfmt_cldbf;
2185 case 3 : itype = FRVBF_INSN_CLDDF; goto extract_sfmt_clddf;
b34f6357
DB
2186 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2187 }
2188 }
2189 case 97 :
2190 {
2191 unsigned int val = (((insn >> 6) & (3 << 0)));
2192 switch (val)
2193 {
b29791a8
DE
2194 case 0 : itype = FRVBF_INSN_CLDSBU; goto extract_sfmt_cldsbu;
2195 case 1 : itype = FRVBF_INSN_CLDUBU; goto extract_sfmt_cldsbu;
2196 case 2 : itype = FRVBF_INSN_CLDSHU; goto extract_sfmt_cldsbu;
2197 case 3 : itype = FRVBF_INSN_CLDUHU; goto extract_sfmt_cldsbu;
b34f6357
DB
2198 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2199 }
2200 }
2201 case 98 :
2202 {
2203 unsigned int val = (((insn >> 6) & (3 << 0)));
2204 switch (val)
2205 {
b29791a8
DE
2206 case 0 : itype = FRVBF_INSN_CLDU; goto extract_sfmt_cldsbu;
2207 case 1 : itype = FRVBF_INSN_CLDDU; goto extract_sfmt_clddu;
2208 case 2 : itype = FRVBF_INSN_CLDQU; goto extract_sfmt_cldqu;
b34f6357
DB
2209 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2210 }
2211 }
2212 case 99 :
2213 {
2214 unsigned int val = (((insn >> 6) & (3 << 0)));
2215 switch (val)
2216 {
b29791a8
DE
2217 case 0 : itype = FRVBF_INSN_CLDBFU; goto extract_sfmt_cldbfu;
2218 case 1 : itype = FRVBF_INSN_CLDHFU; goto extract_sfmt_cldbfu;
2219 case 2 : itype = FRVBF_INSN_CLDFU; goto extract_sfmt_cldbfu;
2220 case 3 : itype = FRVBF_INSN_CLDDFU; goto extract_sfmt_clddfu;
b34f6357
DB
2221 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2222 }
2223 }
2224 case 100 :
2225 {
2226 unsigned int val = (((insn >> 6) & (3 << 0)));
2227 switch (val)
2228 {
b29791a8
DE
2229 case 0 : itype = FRVBF_INSN_CSTB; goto extract_sfmt_cstb;
2230 case 1 : itype = FRVBF_INSN_CSTH; goto extract_sfmt_cstb;
2231 case 2 : itype = FRVBF_INSN_CST; goto extract_sfmt_cstb;
2232 case 3 : itype = FRVBF_INSN_CSTD; goto extract_sfmt_cstd;
b34f6357
DB
2233 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2234 }
2235 }
2236 case 101 :
2237 {
2238 unsigned int val = (((insn >> 6) & (3 << 0)));
2239 switch (val)
2240 {
b29791a8
DE
2241 case 0 : itype = FRVBF_INSN_CSTQ; goto extract_sfmt_cldq;
2242 case 2 : itype = FRVBF_INSN_CSWAP; goto extract_sfmt_cswap;
2243 case 3 : itype = FRVBF_INSN_CSCAN; goto extract_sfmt_cadd;
b34f6357
DB
2244 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2245 }
2246 }
2247 case 102 :
2248 {
2249 unsigned int val = (((insn >> 6) & (3 << 0)));
2250 switch (val)
2251 {
b29791a8
DE
2252 case 0 : itype = FRVBF_INSN_CSTBF; goto extract_sfmt_cstbf;
2253 case 1 : itype = FRVBF_INSN_CSTHF; goto extract_sfmt_cstbf;
2254 case 2 : itype = FRVBF_INSN_CSTF; goto extract_sfmt_cstbf;
2255 case 3 : itype = FRVBF_INSN_CSTDF; goto extract_sfmt_cstdf;
b34f6357
DB
2256 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2257 }
2258 }
2259 case 103 :
2260 {
2261 unsigned int val = (((insn >> 6) & (3 << 0)));
2262 switch (val)
2263 {
b29791a8
DE
2264 case 0 : itype = FRVBF_INSN_CSTBU; goto extract_sfmt_cstbu;
2265 case 1 : itype = FRVBF_INSN_CSTHU; goto extract_sfmt_cstbu;
2266 case 2 : itype = FRVBF_INSN_CSTU; goto extract_sfmt_cstbu;
2267 case 3 : itype = FRVBF_INSN_CSTDU; goto extract_sfmt_cstdu;
b34f6357
DB
2268 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2269 }
2270 }
2271 case 104 :
2272 {
2273 unsigned int val = (((insn >> 6) & (3 << 0)));
2274 switch (val)
2275 {
b29791a8
DE
2276 case 0 : itype = FRVBF_INSN_CSTBFU; goto extract_sfmt_cstbfu;
2277 case 1 : itype = FRVBF_INSN_CSTHFU; goto extract_sfmt_cstbfu;
2278 case 2 : itype = FRVBF_INSN_CSTFU; goto extract_sfmt_cstbfu;
2279 case 3 : itype = FRVBF_INSN_CSTDFU; goto extract_sfmt_cstdfu;
b34f6357
DB
2280 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2281 }
2282 }
2283 case 105 :
2284 {
2285 unsigned int val = (((insn >> 6) & (3 << 0)));
2286 switch (val)
2287 {
79e59fe6
DB
2288 case 0 :
2289 if ((entire_insn & 0x1fff0c0) == 0x1a40000)
2290 { itype = FRVBF_INSN_CMOVGF; goto extract_sfmt_cmovgf; }
2291 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2292 case 1 :
2293 if ((entire_insn & 0x1fff0c0) == 0x1a40040)
2294 { itype = FRVBF_INSN_CMOVGFD; goto extract_sfmt_cmovgfd; }
2295 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2296 case 2 :
2297 if ((entire_insn & 0x1fff0c0) == 0x1a40080)
2298 { itype = FRVBF_INSN_CMOVFG; goto extract_sfmt_cmovfg; }
2299 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2300 case 3 :
2301 if ((entire_insn & 0x1fff0c0) == 0x1a400c0)
2302 { itype = FRVBF_INSN_CMOVFGD; goto extract_sfmt_cmovfgd; }
2303 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2304 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2305 }
2306 }
2307 case 106 :
2308 {
2309 unsigned int val = (((insn >> 26) & (15 << 1)) | ((insn >> 6) & (1 << 0)));
2310 switch (val)
2311 {
2312 case 0 :
2313 {
2314 unsigned int val = (((insn >> 24) & (1 << 1)) | ((insn >> 7) & (1 << 0)));
2315 switch (val)
2316 {
2317 case 0 : /* fall through */
79e59fe6
DB
2318 case 2 :
2319 if ((entire_insn & 0x79fff0ff) == 0x1a80000)
2320 { itype = FRVBF_INSN_CCKNO; goto extract_sfmt_cckra; }
2321 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2322 case 1 :
2323 if ((entire_insn & 0x7ffc00c0) == 0x1a80080)
2324 { itype = FRVBF_INSN_CJMPL; goto extract_sfmt_cjmpl; }
2325 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2326 case 3 :
2327 if ((entire_insn & 0x7ffc00c0) == 0x3a80080)
2328 { itype = FRVBF_INSN_CCALLL; goto extract_sfmt_cjmpl; }
2329 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2330 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2331 }
2332 }
79e59fe6
DB
2333 case 1 :
2334 if ((entire_insn & 0x79fff0ff) == 0x1a80040)
2335 { itype = FRVBF_INSN_CFCKNO; goto extract_sfmt_cfckra; }
2336 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2337 case 2 :
2338 if ((entire_insn & 0x79fff0fc) == 0x9a80000)
2339 { itype = FRVBF_INSN_CCKC; goto extract_sfmt_cckeq; }
2340 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2341 case 3 :
2342 if ((entire_insn & 0x79fff0fc) == 0x9a80040)
2343 { itype = FRVBF_INSN_CFCKU; goto extract_sfmt_cfckne; }
2344 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2345 case 4 :
2346 if ((entire_insn & 0x79fff0fc) == 0x11a80000)
2347 { itype = FRVBF_INSN_CCKV; goto extract_sfmt_cckeq; }
2348 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2349 case 5 :
2350 if ((entire_insn & 0x79fff0fc) == 0x11a80040)
2351 { itype = FRVBF_INSN_CFCKGT; goto extract_sfmt_cfckne; }
2352 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2353 case 6 :
2354 if ((entire_insn & 0x79fff0fc) == 0x19a80000)
2355 { itype = FRVBF_INSN_CCKLT; goto extract_sfmt_cckeq; }
2356 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2357 case 7 :
2358 if ((entire_insn & 0x79fff0fc) == 0x19a80040)
2359 { itype = FRVBF_INSN_CFCKUG; goto extract_sfmt_cfckne; }
2360 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2361 case 8 :
2362 if ((entire_insn & 0x79fff0fc) == 0x21a80000)
2363 { itype = FRVBF_INSN_CCKEQ; goto extract_sfmt_cckeq; }
2364 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2365 case 9 :
2366 if ((entire_insn & 0x79fff0fc) == 0x21a80040)
2367 { itype = FRVBF_INSN_CFCKLT; goto extract_sfmt_cfckne; }
2368 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2369 case 10 :
2370 if ((entire_insn & 0x79fff0fc) == 0x29a80000)
2371 { itype = FRVBF_INSN_CCKLS; goto extract_sfmt_cckeq; }
2372 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2373 case 11 :
2374 if ((entire_insn & 0x79fff0fc) == 0x29a80040)
2375 { itype = FRVBF_INSN_CFCKUL; goto extract_sfmt_cfckne; }
2376 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2377 case 12 :
2378 if ((entire_insn & 0x79fff0fc) == 0x31a80000)
2379 { itype = FRVBF_INSN_CCKN; goto extract_sfmt_cckeq; }
2380 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2381 case 13 :
2382 if ((entire_insn & 0x79fff0fc) == 0x31a80040)
2383 { itype = FRVBF_INSN_CFCKLG; goto extract_sfmt_cfckne; }
2384 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2385 case 14 :
2386 if ((entire_insn & 0x79fff0fc) == 0x39a80000)
2387 { itype = FRVBF_INSN_CCKLE; goto extract_sfmt_cckeq; }
2388 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2389 case 15 :
2390 if ((entire_insn & 0x79fff0fc) == 0x39a80040)
2391 { itype = FRVBF_INSN_CFCKNE; goto extract_sfmt_cfckne; }
2392 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2393 case 16 :
2394 if ((entire_insn & 0x79fff0ff) == 0x41a80000)
2395 { itype = FRVBF_INSN_CCKRA; goto extract_sfmt_cckra; }
2396 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2397 case 17 :
2398 if ((entire_insn & 0x79fff0fc) == 0x41a80040)
2399 { itype = FRVBF_INSN_CFCKEQ; goto extract_sfmt_cfckne; }
2400 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2401 case 18 :
2402 if ((entire_insn & 0x79fff0fc) == 0x49a80000)
2403 { itype = FRVBF_INSN_CCKNC; goto extract_sfmt_cckeq; }
2404 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2405 case 19 :
2406 if ((entire_insn & 0x79fff0fc) == 0x49a80040)
2407 { itype = FRVBF_INSN_CFCKUE; goto extract_sfmt_cfckne; }
2408 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2409 case 20 :
2410 if ((entire_insn & 0x79fff0fc) == 0x51a80000)
2411 { itype = FRVBF_INSN_CCKNV; goto extract_sfmt_cckeq; }
2412 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2413 case 21 :
2414 if ((entire_insn & 0x79fff0fc) == 0x51a80040)
2415 { itype = FRVBF_INSN_CFCKGE; goto extract_sfmt_cfckne; }
2416 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2417 case 22 :
2418 if ((entire_insn & 0x79fff0fc) == 0x59a80000)
2419 { itype = FRVBF_INSN_CCKGE; goto extract_sfmt_cckeq; }
2420 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2421 case 23 :
2422 if ((entire_insn & 0x79fff0fc) == 0x59a80040)
2423 { itype = FRVBF_INSN_CFCKUGE; goto extract_sfmt_cfckne; }
2424 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2425 case 24 :
2426 if ((entire_insn & 0x79fff0fc) == 0x61a80000)
2427 { itype = FRVBF_INSN_CCKNE; goto extract_sfmt_cckeq; }
2428 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2429 case 25 :
2430 if ((entire_insn & 0x79fff0fc) == 0x61a80040)
2431 { itype = FRVBF_INSN_CFCKLE; goto extract_sfmt_cfckne; }
2432 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2433 case 26 :
2434 if ((entire_insn & 0x79fff0fc) == 0x69a80000)
2435 { itype = FRVBF_INSN_CCKHI; goto extract_sfmt_cckeq; }
2436 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2437 case 27 :
2438 if ((entire_insn & 0x79fff0fc) == 0x69a80040)
2439 { itype = FRVBF_INSN_CFCKULE; goto extract_sfmt_cfckne; }
2440 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2441 case 28 :
2442 if ((entire_insn & 0x79fff0fc) == 0x71a80000)
2443 { itype = FRVBF_INSN_CCKP; goto extract_sfmt_cckeq; }
2444 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2445 case 29 :
2446 if ((entire_insn & 0x79fff0fc) == 0x71a80040)
2447 { itype = FRVBF_INSN_CFCKO; goto extract_sfmt_cfckne; }
2448 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2449 case 30 :
2450 if ((entire_insn & 0x79fff0fc) == 0x79a80000)
2451 { itype = FRVBF_INSN_CCKGT; goto extract_sfmt_cckeq; }
2452 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2453 case 31 :
2454 if ((entire_insn & 0x79fff0ff) == 0x79a80040)
2455 { itype = FRVBF_INSN_CFCKRA; goto extract_sfmt_cfckra; }
2456 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2457 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2458 }
2459 }
2460 case 107 :
2461 {
2462 unsigned int val = (((insn >> 6) & (1 << 0)));
2463 switch (val)
2464 {
79e59fe6
DB
2465 case 0 :
2466 if ((entire_insn & 0x1fff0c0) == 0x1ac0000)
2467 { itype = FRVBF_INSN_CFITOS; goto extract_sfmt_cfitos; }
2468 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2469 case 1 :
2470 if ((entire_insn & 0x1fff0c0) == 0x1ac0040)
2471 { itype = FRVBF_INSN_CFSTOI; goto extract_sfmt_cfstoi; }
2472 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2473 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2474 }
2475 }
2476 case 108 :
2477 {
2478 unsigned int val = (((insn >> 6) & (3 << 0)));
2479 switch (val)
2480 {
79e59fe6
DB
2481 case 0 :
2482 if ((entire_insn & 0x1fff0c0) == 0x1b00000)
2483 { itype = FRVBF_INSN_CFMOVS; goto extract_sfmt_cfmovs; }
2484 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2485 case 1 :
2486 if ((entire_insn & 0x1fff0c0) == 0x1b00040)
2487 { itype = FRVBF_INSN_CFNEGS; goto extract_sfmt_cfmovs; }
2488 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2489 case 2 :
2490 if ((entire_insn & 0x1fff0c0) == 0x1b00080)
2491 { itype = FRVBF_INSN_CFABSS; goto extract_sfmt_cfmovs; }
2492 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2493 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2494 }
2495 }
2496 case 109 :
2497 {
2498 unsigned int val = (((insn >> 6) & (3 << 0)));
2499 switch (val)
2500 {
b29791a8
DE
2501 case 0 : itype = FRVBF_INSN_CFADDS; goto extract_sfmt_cfadds;
2502 case 1 : itype = FRVBF_INSN_CFSUBS; goto extract_sfmt_cfadds;
79e59fe6
DB
2503 case 2 :
2504 if ((entire_insn & 0x79fc00c0) == 0x1b40080)
2505 { itype = FRVBF_INSN_CFCMPS; goto extract_sfmt_cfcmps; }
2506 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2507 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2508 }
2509 }
2510 case 110 :
2511 {
2512 unsigned int val = (((insn >> 6) & (3 << 0)));
2513 switch (val)
2514 {
b29791a8
DE
2515 case 0 : itype = FRVBF_INSN_CFMULS; goto extract_sfmt_cfadds;
2516 case 1 : itype = FRVBF_INSN_CFDIVS; goto extract_sfmt_cfadds;
79e59fe6
DB
2517 case 2 :
2518 if ((entire_insn & 0x1fff0c0) == 0x1b80080)
2519 { itype = FRVBF_INSN_CFSQRTS; goto extract_sfmt_cfmovs; }
2520 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2521 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2522 }
2523 }
2524 case 111 :
2525 {
2526 unsigned int val = (((insn >> 6) & (3 << 0)));
2527 switch (val)
2528 {
b29791a8
DE
2529 case 0 : itype = FRVBF_INSN_CFMADDS; goto extract_sfmt_cfmadds;
2530 case 1 : itype = FRVBF_INSN_CFMSUBS; goto extract_sfmt_cfmadds;
2531 case 2 : itype = FRVBF_INSN_CFMAS; goto extract_sfmt_cfmas;
2532 case 3 : itype = FRVBF_INSN_CFMSS; goto extract_sfmt_cfmas;
b34f6357
DB
2533 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2534 }
2535 }
2536 case 112 :
2537 {
2538 unsigned int val = (((insn >> 6) & (3 << 0)));
2539 switch (val)
2540 {
b29791a8
DE
2541 case 0 : itype = FRVBF_INSN_CMAND; goto extract_sfmt_cmand;
2542 case 1 : itype = FRVBF_INSN_CMOR; goto extract_sfmt_cmand;
2543 case 2 : itype = FRVBF_INSN_CMXOR; goto extract_sfmt_cmand;
79e59fe6
DB
2544 case 3 :
2545 if ((entire_insn & 0x1fff0c0) == 0x1c000c0)
2546 { itype = FRVBF_INSN_CMNOT; goto extract_sfmt_cmnot; }
2547 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2548 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2549 }
2550 }
2551 case 113 :
2552 {
2553 unsigned int val = (((insn >> 6) & (3 << 0)));
2554 switch (val)
2555 {
b29791a8
DE
2556 case 0 : itype = FRVBF_INSN_CMADDHSS; goto extract_sfmt_cmaddhss;
2557 case 1 : itype = FRVBF_INSN_CMADDHUS; goto extract_sfmt_cmaddhss;
2558 case 2 : itype = FRVBF_INSN_CMSUBHSS; goto extract_sfmt_cmaddhss;
2559 case 3 : itype = FRVBF_INSN_CMSUBHUS; goto extract_sfmt_cmaddhss;
b34f6357
DB
2560 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2561 }
2562 }
2563 case 114 :
2564 {
2565 unsigned int val = (((insn >> 6) & (3 << 0)));
2566 switch (val)
2567 {
b29791a8
DE
2568 case 0 : itype = FRVBF_INSN_CMMULHS; goto extract_sfmt_cmmulhs;
2569 case 1 : itype = FRVBF_INSN_CMMULHU; goto extract_sfmt_cmmulhs;
2570 case 2 : itype = FRVBF_INSN_CMMACHS; goto extract_sfmt_cmmachs;
2571 case 3 : itype = FRVBF_INSN_CMMACHU; goto extract_sfmt_cmmachu;
b34f6357
DB
2572 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2573 }
2574 }
2575 case 115 :
2576 {
2577 unsigned int val = (((insn >> 6) & (3 << 0)));
2578 switch (val)
2579 {
b29791a8
DE
2580 case 0 : itype = FRVBF_INSN_CMQADDHSS; goto extract_sfmt_cmqaddhss;
2581 case 1 : itype = FRVBF_INSN_CMQADDHUS; goto extract_sfmt_cmqaddhss;
2582 case 2 : itype = FRVBF_INSN_CMQSUBHSS; goto extract_sfmt_cmqaddhss;
2583 case 3 : itype = FRVBF_INSN_CMQSUBHUS; goto extract_sfmt_cmqaddhss;
b34f6357
DB
2584 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2585 }
2586 }
2587 case 116 :
2588 {
2589 unsigned int val = (((insn >> 6) & (3 << 0)));
2590 switch (val)
2591 {
b29791a8
DE
2592 case 0 : itype = FRVBF_INSN_CMQMULHS; goto extract_sfmt_cmqmulhs;
2593 case 1 : itype = FRVBF_INSN_CMQMULHU; goto extract_sfmt_cmqmulhs;
2594 case 2 : itype = FRVBF_INSN_CMQMACHS; goto extract_sfmt_cmqmachs;
2595 case 3 : itype = FRVBF_INSN_CMQMACHU; goto extract_sfmt_cmqmachu;
b34f6357
DB
2596 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2597 }
2598 }
2599 case 117 :
2600 {
2601 unsigned int val = (((insn >> 6) & (3 << 0)));
2602 switch (val)
2603 {
b29791a8
DE
2604 case 0 : itype = FRVBF_INSN_CMCPXRS; goto extract_sfmt_cmcpxrs;
2605 case 1 : itype = FRVBF_INSN_CMCPXRU; goto extract_sfmt_cmcpxrs;
2606 case 2 : itype = FRVBF_INSN_CMCPXIS; goto extract_sfmt_cmcpxrs;
2607 case 3 : itype = FRVBF_INSN_CMCPXIU; goto extract_sfmt_cmcpxrs;
b34f6357
DB
2608 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2609 }
2610 }
2611 case 118 :
2612 {
2613 unsigned int val = (((insn >> 6) & (1 << 0)));
2614 switch (val)
2615 {
79e59fe6
DB
2616 case 0 :
2617 if ((entire_insn & 0x1fc00c0) == 0x1d80080)
2618 { itype = FRVBF_INSN_CMEXPDHW; goto extract_sfmt_cmexpdhw; }
2619 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2620 case 1 :
2621 if ((entire_insn & 0x1fc00c0) == 0x1d800c0)
2622 { itype = FRVBF_INSN_CMEXPDHD; goto extract_sfmt_cmexpdhd; }
2623 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2624 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2625 }
2626 }
2627 case 119 :
2628 {
2629 unsigned int val = (((insn >> 6) & (3 << 0)));
2630 switch (val)
2631 {
79e59fe6
DB
2632 case 0 :
2633 if ((entire_insn & 0x1fff0c0) == 0x1dc0000)
2634 { itype = FRVBF_INSN_CMBTOH; goto extract_sfmt_cmbtoh; }
2635 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2636 case 1 :
2637 if ((entire_insn & 0x1fff0c0) == 0x1dc0040)
2638 { itype = FRVBF_INSN_CMHTOB; goto extract_sfmt_cmhtob; }
2639 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2640 case 2 :
2641 if ((entire_insn & 0x1fff0c0) == 0x1dc0080)
2642 { itype = FRVBF_INSN_CMBTOHE; goto extract_sfmt_cmbtohe; }
2643 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2644 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2645 }
2646 }
2647 case 120 :
2648 {
676a64f4 2649 unsigned int val = (((insn >> 6) & (63 << 0)));
b34f6357
DB
2650 switch (val)
2651 {
b29791a8
DE
2652 case 0 : itype = FRVBF_INSN_MQXMACHS; goto extract_sfmt_mqmachs;
2653 case 1 : itype = FRVBF_INSN_MQXMACXHS; goto extract_sfmt_mqmachs;
2654 case 2 : itype = FRVBF_INSN_MQMACXHS; goto extract_sfmt_mqmachs;
79e59fe6
DB
2655 case 4 :
2656 if ((entire_insn & 0x1fc0fff) == 0x1e00100)
2657 { itype = FRVBF_INSN_MADDACCS; goto extract_sfmt_maddaccs; }
2658 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2659 case 5 :
2660 if ((entire_insn & 0x1fc0fff) == 0x1e00140)
2661 { itype = FRVBF_INSN_MSUBACCS; goto extract_sfmt_maddaccs; }
2662 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2663 case 6 :
2664 if ((entire_insn & 0x1fc0fff) == 0x1e00180)
2665 { itype = FRVBF_INSN_MDADDACCS; goto extract_sfmt_mdaddaccs; }
2666 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2667 case 7 :
2668 if ((entire_insn & 0x1fc0fff) == 0x1e001c0)
2669 { itype = FRVBF_INSN_MDSUBACCS; goto extract_sfmt_mdaddaccs; }
2670 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2671 case 8 :
2672 if ((entire_insn & 0x1fc0fff) == 0x1e00200)
2673 { itype = FRVBF_INSN_MASACCS; goto extract_sfmt_masaccs; }
2674 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2675 case 9 :
2676 if ((entire_insn & 0x1fc0fff) == 0x1e00240)
2677 { itype = FRVBF_INSN_MDASACCS; goto extract_sfmt_mdasaccs; }
2678 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2679 case 10 :
2680 if ((entire_insn & 0x1ffffc0) == 0x1e00280)
2681 { itype = FRVBF_INSN_MABSHS; goto extract_sfmt_mabshs; }
2682 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
2683 case 11 : itype = FRVBF_INSN_MDROTLI; goto extract_sfmt_mdrotli;
2684 case 12 : itype = FRVBF_INSN_MCPLHI; goto extract_sfmt_mcplhi;
2685 case 13 : itype = FRVBF_INSN_MCPLI; goto extract_sfmt_mcpli;
2686 case 14 : itype = FRVBF_INSN_MDCUTSSI; goto extract_sfmt_mdcutssi;
2687 case 15 : itype = FRVBF_INSN_MQSATHS; goto extract_sfmt_mqsaths;
2688 case 16 : itype = FRVBF_INSN_MQLCLRHS; goto extract_sfmt_mqsaths;
2689 case 17 : itype = FRVBF_INSN_MQSLLHI; goto extract_sfmt_mqsllhi;
2690 case 19 : itype = FRVBF_INSN_MQSRAHI; goto extract_sfmt_mqsllhi;
2691 case 20 : itype = FRVBF_INSN_MQLMTHS; goto extract_sfmt_mqsaths;
2692 case 32 : itype = FRVBF_INSN_MHSETLOS; goto extract_sfmt_mhsetlos;
79e59fe6
DB
2693 case 33 :
2694 if ((entire_insn & 0x1ffffe0) == 0x1e00840)
2695 { itype = FRVBF_INSN_MHSETLOH; goto extract_sfmt_mhsetloh; }
2696 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2697 case 34 : itype = FRVBF_INSN_MHSETHIS; goto extract_sfmt_mhsethis;
79e59fe6
DB
2698 case 35 :
2699 if ((entire_insn & 0x1ffffe0) == 0x1e008c0)
2700 { itype = FRVBF_INSN_MHSETHIH; goto extract_sfmt_mhsethih; }
2701 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2702 case 36 : itype = FRVBF_INSN_MHDSETS; goto extract_sfmt_mhdsets;
79e59fe6
DB
2703 case 37 :
2704 if ((entire_insn & 0x1ffffe0) == 0x1e00940)
2705 { itype = FRVBF_INSN_MHDSETH; goto extract_sfmt_mhdseth; }
2706 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2707 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2708 }
2709 }
2710 case 121 :
2711 {
2712 unsigned int val = (((insn >> 7) & (1 << 3)) | ((insn >> 6) & (7 << 0)));
2713 switch (val)
2714 {
2715 case 0 :
2716 {
2717 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2718 switch (val)
2719 {
79e59fe6
DB
2720 case 0 :
2721 if ((entire_insn & 0x1ffffc0) == 0x1e40000)
2722 { itype = FRVBF_INSN_FITOS; goto extract_sfmt_fitos; }
2723 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2724 case 1 : itype = FRVBF_INSN_FMULS; goto extract_sfmt_fadds;
79e59fe6
DB
2725 case 2 :
2726 if ((entire_insn & 0x1ffffc0) == 0x1e40800)
2727 { itype = FRVBF_INSN_NFITOS; goto extract_sfmt_nfitos; }
2728 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2729 case 3 : itype = FRVBF_INSN_NFMULS; goto extract_sfmt_nfadds;
b34f6357
DB
2730 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2731 }
2732 }
2733 case 1 :
2734 {
2735 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2736 switch (val)
2737 {
79e59fe6
DB
2738 case 0 :
2739 if ((entire_insn & 0x1ffffc0) == 0x1e40040)
2740 { itype = FRVBF_INSN_FSTOI; goto extract_sfmt_fstoi; }
2741 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2742 case 1 : itype = FRVBF_INSN_FDIVS; goto extract_sfmt_fadds;
79e59fe6
DB
2743 case 2 :
2744 if ((entire_insn & 0x1ffffc0) == 0x1e40840)
2745 { itype = FRVBF_INSN_NFSTOI; goto extract_sfmt_nfstoi; }
2746 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2747 case 3 : itype = FRVBF_INSN_NFDIVS; goto extract_sfmt_nfadds;
b34f6357
DB
2748 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2749 }
2750 }
2751 case 2 :
2752 {
2753 unsigned int val = (((insn >> 9) & (1 << 0)));
2754 switch (val)
2755 {
79e59fe6
DB
2756 case 0 :
2757 if ((entire_insn & 0x1ffffc0) == 0x1e40080)
2758 { itype = FRVBF_INSN_FMOVS; goto extract_sfmt_fmovs; }
2759 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2760 case 1 :
2761 if ((entire_insn & 0x79fc0fc0) == 0x1e40280)
2762 { itype = FRVBF_INSN_FCMPS; goto extract_sfmt_fcmps; }
2763 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2764 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2765 }
2766 }
2767 case 3 :
2768 {
2769 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2770 switch (val)
2771 {
79e59fe6
DB
2772 case 0 :
2773 if ((entire_insn & 0x1ffffc0) == 0x1e400c0)
2774 { itype = FRVBF_INSN_FNEGS; goto extract_sfmt_fmovs; }
2775 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
2776 case 1 : itype = FRVBF_INSN_FMADDS; goto extract_sfmt_fmadds;
2777 case 3 : itype = FRVBF_INSN_NFMADDS; goto extract_sfmt_nfmadds;
b34f6357
DB
2778 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2779 }
2780 }
2781 case 4 :
2782 {
2783 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2784 switch (val)
2785 {
79e59fe6
DB
2786 case 0 :
2787 if ((entire_insn & 0x1ffffc0) == 0x1e40100)
2788 { itype = FRVBF_INSN_FABSS; goto extract_sfmt_fmovs; }
2789 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
2790 case 1 : itype = FRVBF_INSN_FMSUBS; goto extract_sfmt_fmadds;
2791 case 3 : itype = FRVBF_INSN_NFMSUBS; goto extract_sfmt_nfmadds;
b34f6357
DB
2792 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2793 }
2794 }
2795 case 5 :
2796 {
2797 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2798 switch (val)
2799 {
79e59fe6
DB
2800 case 0 :
2801 if ((entire_insn & 0x1ffffc0) == 0x1e40140)
2802 { itype = FRVBF_INSN_FSQRTS; goto extract_sfmt_fmovs; }
2803 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2804 case 1 :
2805 if ((entire_insn & 0x7fffffff) == 0x1e40340)
2806 { itype = FRVBF_INSN_FNOP; goto extract_sfmt_rei; }
2807 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2808 case 2 :
2809 if ((entire_insn & 0x1ffffc0) == 0x1e40940)
2810 { itype = FRVBF_INSN_NFSQRTS; goto extract_sfmt_nfsqrts; }
2811 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2812 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2813 }
2814 }
2815 case 6 :
2816 {
2817 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2818 switch (val)
2819 {
b29791a8
DE
2820 case 0 : itype = FRVBF_INSN_FADDS; goto extract_sfmt_fadds;
2821 case 1 : itype = FRVBF_INSN_FMAS; goto extract_sfmt_fmas;
2822 case 2 : itype = FRVBF_INSN_NFADDS; goto extract_sfmt_nfadds;
2823 case 3 : itype = FRVBF_INSN_NFMAS; goto extract_sfmt_fmas;
b34f6357
DB
2824 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2825 }
2826 }
2827 case 7 :
2828 {
2829 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2830 switch (val)
2831 {
b29791a8
DE
2832 case 0 : itype = FRVBF_INSN_FSUBS; goto extract_sfmt_fadds;
2833 case 1 : itype = FRVBF_INSN_FMSS; goto extract_sfmt_fmas;
2834 case 2 : itype = FRVBF_INSN_NFSUBS; goto extract_sfmt_nfadds;
2835 case 3 : itype = FRVBF_INSN_NFMSS; goto extract_sfmt_fmas;
b34f6357
DB
2836 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2837 }
2838 }
2839 case 8 :
2840 {
2841 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2842 switch (val)
2843 {
79e59fe6
DB
2844 case 0 :
2845 if ((entire_insn & 0x1ffffc0) == 0x1e40400)
2846 { itype = FRVBF_INSN_FDITOS; goto extract_sfmt_fditos; }
2847 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2848 case 1 : itype = FRVBF_INSN_FDMULS; goto extract_sfmt_fmas;
79e59fe6
DB
2849 case 2 :
2850 if ((entire_insn & 0x1ffffc0) == 0x1e40c00)
2851 { itype = FRVBF_INSN_NFDITOS; goto extract_sfmt_fditos; }
2852 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2853 case 3 : itype = FRVBF_INSN_NFDMULS; goto extract_sfmt_fmas;
b34f6357
DB
2854 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2855 }
2856 }
2857 case 9 :
2858 {
2859 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2860 switch (val)
2861 {
79e59fe6
DB
2862 case 0 :
2863 if ((entire_insn & 0x1ffffc0) == 0x1e40440)
2864 { itype = FRVBF_INSN_FDSTOI; goto extract_sfmt_fdstoi; }
2865 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2866 case 1 : itype = FRVBF_INSN_FDDIVS; goto extract_sfmt_fmas;
79e59fe6
DB
2867 case 2 :
2868 if ((entire_insn & 0x1ffffc0) == 0x1e40c40)
2869 { itype = FRVBF_INSN_NFDSTOI; goto extract_sfmt_fdstoi; }
2870 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2871 case 3 : itype = FRVBF_INSN_NFDDIVS; goto extract_sfmt_fmas;
b34f6357
DB
2872 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2873 }
2874 }
2875 case 10 :
2876 {
2877 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2878 switch (val)
2879 {
79e59fe6
DB
2880 case 0 :
2881 if ((entire_insn & 0x1ffffc0) == 0x1e40480)
2882 { itype = FRVBF_INSN_FDMOVS; goto extract_sfmt_fdmovs; }
2883 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2884 case 1 :
2885 if ((entire_insn & 0x79fc0fc0) == 0x1e40680)
2886 { itype = FRVBF_INSN_FDCMPS; goto extract_sfmt_fdcmps; }
2887 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2888 case 3 :
2889 if ((entire_insn & 0x79fc0fc0) == 0x1e40e80)
2890 { itype = FRVBF_INSN_NFDCMPS; goto extract_sfmt_nfdcmps; }
2891 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
2892 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2893 }
2894 }
2895 case 11 :
2896 {
2897 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2898 switch (val)
2899 {
79e59fe6
DB
2900 case 0 :
2901 if ((entire_insn & 0x1ffffc0) == 0x1e404c0)
2902 { itype = FRVBF_INSN_FDNEGS; goto extract_sfmt_fdmovs; }
2903 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
2904 case 1 : itype = FRVBF_INSN_FDMADDS; goto extract_sfmt_fdmadds;
2905 case 3 : itype = FRVBF_INSN_NFDMADDS; goto extract_sfmt_fdmadds;
b34f6357
DB
2906 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2907 }
2908 }
2909 case 12 :
2910 {
2911 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2912 switch (val)
2913 {
79e59fe6
DB
2914 case 0 :
2915 if ((entire_insn & 0x1ffffc0) == 0x1e40500)
2916 { itype = FRVBF_INSN_FDABSS; goto extract_sfmt_fdmovs; }
2917 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
2918 case 1 : itype = FRVBF_INSN_FDMAS; goto extract_sfmt_fdmas;
2919 case 3 : itype = FRVBF_INSN_NFDMAS; goto extract_sfmt_fdmas;
b34f6357
DB
2920 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2921 }
2922 }
2923 case 13 :
2924 {
2925 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2926 switch (val)
2927 {
79e59fe6
DB
2928 case 0 :
2929 if ((entire_insn & 0x1ffffc0) == 0x1e40540)
2930 { itype = FRVBF_INSN_FDSQRTS; goto extract_sfmt_fdmovs; }
2931 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2932 case 1 : itype = FRVBF_INSN_FDMSS; goto extract_sfmt_fdmas;
79e59fe6
DB
2933 case 2 :
2934 if ((entire_insn & 0x1ffffc0) == 0x1e40d40)
2935 { itype = FRVBF_INSN_NFDSQRTS; goto extract_sfmt_fdmovs; }
2936 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 2937 case 3 : itype = FRVBF_INSN_NFDMSS; goto extract_sfmt_fdmas;
b34f6357
DB
2938 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2939 }
2940 }
2941 case 14 :
2942 {
2943 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2944 switch (val)
2945 {
b29791a8
DE
2946 case 0 : itype = FRVBF_INSN_FDADDS; goto extract_sfmt_fmas;
2947 case 1 : itype = FRVBF_INSN_FDSADS; goto extract_sfmt_fmas;
2948 case 2 : itype = FRVBF_INSN_NFDADDS; goto extract_sfmt_fmas;
2949 case 3 : itype = FRVBF_INSN_NFDSADS; goto extract_sfmt_fmas;
b34f6357
DB
2950 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2951 }
2952 }
2953 case 15 :
2954 {
2955 unsigned int val = (((insn >> 10) & (1 << 1)) | ((insn >> 9) & (1 << 0)));
2956 switch (val)
2957 {
b29791a8
DE
2958 case 0 : itype = FRVBF_INSN_FDSUBS; goto extract_sfmt_fmas;
2959 case 1 : itype = FRVBF_INSN_FDMULCS; goto extract_sfmt_fmas;
2960 case 2 : itype = FRVBF_INSN_NFDSUBS; goto extract_sfmt_fmas;
2961 case 3 : itype = FRVBF_INSN_NFDMULCS; goto extract_sfmt_fmas;
b34f6357
DB
2962 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2963 }
2964 }
2965 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2966 }
2967 }
2968 case 122 :
2969 {
2970 unsigned int val = (((insn >> 6) & (15 << 0)));
2971 switch (val)
2972 {
79e59fe6
DB
2973 case 0 :
2974 if ((entire_insn & 0x1ffffc0) == 0x1e80000)
2975 { itype = FRVBF_INSN_FITOD; goto extract_sfmt_fitod; }
2976 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2977 case 1 :
2978 if ((entire_insn & 0x1ffffc0) == 0x1e80040)
2979 { itype = FRVBF_INSN_FDTOI; goto extract_sfmt_fdtoi; }
2980 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2981 case 2 :
2982 if ((entire_insn & 0x1ffffc0) == 0x1e80080)
2983 { itype = FRVBF_INSN_FMOVD; goto extract_sfmt_fmovd; }
2984 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2985 case 3 :
2986 if ((entire_insn & 0x1ffffc0) == 0x1e800c0)
2987 { itype = FRVBF_INSN_FNEGD; goto extract_sfmt_fmovd; }
2988 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2989 case 4 :
2990 if ((entire_insn & 0x1ffffc0) == 0x1e80100)
2991 { itype = FRVBF_INSN_FABSD; goto extract_sfmt_fmovd; }
2992 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2993 case 5 :
2994 if ((entire_insn & 0x1ffffc0) == 0x1e80140)
2995 { itype = FRVBF_INSN_FSQRTD; goto extract_sfmt_fmovd; }
2996 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
2997 case 6 :
2998 if ((entire_insn & 0x1fc0fc0) == 0x1e80180)
2999 { itype = FRVBF_INSN_FADDD; goto extract_sfmt_faddd; }
3000 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3001 case 7 :
3002 if ((entire_insn & 0x1fc0fc0) == 0x1e801c0)
3003 { itype = FRVBF_INSN_FSUBD; goto extract_sfmt_faddd; }
3004 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3005 case 8 :
3006 if ((entire_insn & 0x1fc0fc0) == 0x1e80200)
3007 { itype = FRVBF_INSN_FMULD; goto extract_sfmt_faddd; }
3008 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3009 case 9 :
3010 if ((entire_insn & 0x1fc0fc0) == 0x1e80240)
3011 { itype = FRVBF_INSN_FDIVD; goto extract_sfmt_faddd; }
3012 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3013 case 10 :
3014 if ((entire_insn & 0x79fc0fc0) == 0x1e80280)
3015 { itype = FRVBF_INSN_FCMPD; goto extract_sfmt_fcmpd; }
3016 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3017 case 11 :
3018 if ((entire_insn & 0x1fc0fc0) == 0x1e802c0)
3019 { itype = FRVBF_INSN_FMADDD; goto extract_sfmt_fmaddd; }
3020 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3021 case 12 :
3022 if ((entire_insn & 0x1fc0fc0) == 0x1e80300)
3023 { itype = FRVBF_INSN_FMSUBD; goto extract_sfmt_fmaddd; }
3024 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3025 case 14 :
3026 if ((entire_insn & 0x1fc0fc0) == 0x1e80380)
3027 { itype = FRVBF_INSN_FMAD; goto extract_sfmt_fmas; }
3028 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3029 case 15 :
3030 if ((entire_insn & 0x1fc0fc0) == 0x1e803c0)
3031 { itype = FRVBF_INSN_FMSD; goto extract_sfmt_fmas; }
3032 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
3033 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3034 }
3035 }
3036 case 123 :
3037 {
3038 unsigned int val = (((insn >> 6) & (63 << 0)));
3039 switch (val)
3040 {
b29791a8
DE
3041 case 0 : itype = FRVBF_INSN_MAND; goto extract_sfmt_mand;
3042 case 1 : itype = FRVBF_INSN_MOR; goto extract_sfmt_mand;
3043 case 2 : itype = FRVBF_INSN_MXOR; goto extract_sfmt_mand;
79e59fe6
DB
3044 case 3 :
3045 if ((entire_insn & 0x1ffffc0) == 0x1ec00c0)
3046 { itype = FRVBF_INSN_MNOT; goto extract_sfmt_mnot; }
3047 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
3048 case 4 : itype = FRVBF_INSN_MROTLI; goto extract_sfmt_mrotli;
3049 case 5 : itype = FRVBF_INSN_MROTRI; goto extract_sfmt_mrotli;
3050 case 6 : itype = FRVBF_INSN_MWCUT; goto extract_sfmt_mwcut;
3051 case 7 : itype = FRVBF_INSN_MWCUTI; goto extract_sfmt_mwcuti;
3052 case 8 : itype = FRVBF_INSN_MAVEH; goto extract_sfmt_mand;
3053 case 9 : itype = FRVBF_INSN_MSLLHI; goto extract_sfmt_msllhi;
3054 case 10 : itype = FRVBF_INSN_MSRLHI; goto extract_sfmt_msllhi;
3055 case 11 : itype = FRVBF_INSN_MSRAHI; goto extract_sfmt_msllhi;
3056 case 12 : itype = FRVBF_INSN_MSATHS; goto extract_sfmt_msaths;
3057 case 13 : itype = FRVBF_INSN_MSATHU; goto extract_sfmt_msaths;
79e59fe6
DB
3058 case 14 :
3059 if ((entire_insn & 0x79fc0fc0) == 0x1ec0380)
3060 { itype = FRVBF_INSN_MCMPSH; goto extract_sfmt_mcmpsh; }
3061 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3062 case 15 :
3063 if ((entire_insn & 0x79fc0fc0) == 0x1ec03c0)
3064 { itype = FRVBF_INSN_MCMPUH; goto extract_sfmt_mcmpsh; }
3065 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
3066 case 16 : itype = FRVBF_INSN_MADDHSS; goto extract_sfmt_msaths;
3067 case 17 : itype = FRVBF_INSN_MADDHUS; goto extract_sfmt_msaths;
3068 case 18 : itype = FRVBF_INSN_MSUBHSS; goto extract_sfmt_msaths;
3069 case 19 : itype = FRVBF_INSN_MSUBHUS; goto extract_sfmt_msaths;
3070 case 20 : itype = FRVBF_INSN_MMULHS; goto extract_sfmt_mmulhs;
3071 case 21 : itype = FRVBF_INSN_MMULHU; goto extract_sfmt_mmulhs;
3072 case 22 : itype = FRVBF_INSN_MMACHS; goto extract_sfmt_mmachs;
3073 case 23 : itype = FRVBF_INSN_MMACHU; goto extract_sfmt_mmachu;
3074 case 24 : itype = FRVBF_INSN_MQADDHSS; goto extract_sfmt_mqsaths;
3075 case 25 : itype = FRVBF_INSN_MQADDHUS; goto extract_sfmt_mqsaths;
3076 case 26 : itype = FRVBF_INSN_MQSUBHSS; goto extract_sfmt_mqsaths;
3077 case 27 : itype = FRVBF_INSN_MQSUBHUS; goto extract_sfmt_mqsaths;
3078 case 28 : itype = FRVBF_INSN_MQMULHS; goto extract_sfmt_mqmulhs;
3079 case 29 : itype = FRVBF_INSN_MQMULHU; goto extract_sfmt_mqmulhs;
3080 case 30 : itype = FRVBF_INSN_MQMACHS; goto extract_sfmt_mqmachs;
3081 case 31 : itype = FRVBF_INSN_MQMACHU; goto extract_sfmt_mqmachu;
3082 case 32 : itype = FRVBF_INSN_MCPXRS; goto extract_sfmt_mcpxrs;
3083 case 33 : itype = FRVBF_INSN_MCPXRU; goto extract_sfmt_mcpxrs;
3084 case 34 : itype = FRVBF_INSN_MCPXIS; goto extract_sfmt_mcpxrs;
3085 case 35 : itype = FRVBF_INSN_MCPXIU; goto extract_sfmt_mcpxrs;
3086 case 36 : itype = FRVBF_INSN_MQCPXRS; goto extract_sfmt_mqcpxrs;
3087 case 37 : itype = FRVBF_INSN_MQCPXRU; goto extract_sfmt_mqcpxrs;
3088 case 38 : itype = FRVBF_INSN_MQCPXIS; goto extract_sfmt_mqcpxrs;
3089 case 39 : itype = FRVBF_INSN_MQCPXIU; goto extract_sfmt_mqcpxrs;
3090 case 40 : itype = FRVBF_INSN_MMULXHS; goto extract_sfmt_mmulhs;
3091 case 41 : itype = FRVBF_INSN_MMULXHU; goto extract_sfmt_mmulhs;
3092 case 42 : itype = FRVBF_INSN_MQMULXHS; goto extract_sfmt_mqmulhs;
3093 case 43 : itype = FRVBF_INSN_MQMULXHU; goto extract_sfmt_mqmulhs;
3094 case 44 : itype = FRVBF_INSN_MCUT; goto extract_sfmt_mcut;
3095 case 45 : itype = FRVBF_INSN_MCUTSS; goto extract_sfmt_mcut;
3096 case 46 : itype = FRVBF_INSN_MCUTI; goto extract_sfmt_mcuti;
3097 case 47 : itype = FRVBF_INSN_MCUTSSI; goto extract_sfmt_mcuti;
3098 case 48 : itype = FRVBF_INSN_MMRDHS; goto extract_sfmt_mmachs;
3099 case 49 : itype = FRVBF_INSN_MMRDHU; goto extract_sfmt_mmachu;
3100 case 50 : itype = FRVBF_INSN_MEXPDHW; goto extract_sfmt_mexpdhw;
3101 case 51 : itype = FRVBF_INSN_MEXPDHD; goto extract_sfmt_mexpdhd;
3102 case 52 : itype = FRVBF_INSN_MPACKH; goto extract_sfmt_mpackh;
79e59fe6
DB
3103 case 53 :
3104 if ((entire_insn & 0x1fc0fff) == 0x1ec0d40)
3105 { itype = FRVBF_INSN_MUNPACKH; goto extract_sfmt_munpackh; }
3106 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8 3107 case 54 : itype = FRVBF_INSN_MDPACKH; goto extract_sfmt_mdpackh;
79e59fe6
DB
3108 case 55 :
3109 if ((entire_insn & 0x1fc0fff) == 0x1ec0dc0)
3110 { itype = FRVBF_INSN_MDUNPACKH; goto extract_sfmt_mdunpackh; }
3111 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3112 case 56 :
3113 if ((entire_insn & 0x1ffffc0) == 0x1ec0e00)
3114 { itype = FRVBF_INSN_MBTOH; goto extract_sfmt_mbtoh; }
3115 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3116 case 57 :
3117 if ((entire_insn & 0x1ffffc0) == 0x1ec0e40)
3118 { itype = FRVBF_INSN_MHTOB; goto extract_sfmt_mhtob; }
3119 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3120 case 58 :
3121 if ((entire_insn & 0x1ffffc0) == 0x1ec0e80)
3122 { itype = FRVBF_INSN_MBTOHE; goto extract_sfmt_mbtohe; }
3123 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
d03ea14f
DB
3124 case 59 :
3125 {
3126 unsigned int val = (((insn >> 17) & (1 << 0)));
3127 switch (val)
3128 {
79e59fe6
DB
3129 case 0 :
3130 if ((entire_insn & 0x1ffffff) == 0x1ec0ec0)
3131 { itype = FRVBF_INSN_MCLRACC_0; goto extract_sfmt_mclracc_0; }
3132 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
d03ea14f
DB
3133 case 1 :
3134 {
3135 unsigned int val = (((insn >> 25) & (63 << 0)));
3136 switch (val)
3137 {
3138 case 0 : /* fall through */
3139 case 1 : /* fall through */
3140 case 2 : /* fall through */
3141 case 3 : /* fall through */
3142 case 4 : /* fall through */
3143 case 5 : /* fall through */
3144 case 6 : /* fall through */
3145 case 7 : /* fall through */
3146 case 8 : /* fall through */
3147 case 9 : /* fall through */
3148 case 10 : /* fall through */
3149 case 11 : /* fall through */
3150 case 12 : /* fall through */
3151 case 13 : /* fall through */
3152 case 14 : /* fall through */
3153 case 15 : /* fall through */
3154 case 16 : /* fall through */
3155 case 17 : /* fall through */
3156 case 18 : /* fall through */
3157 case 19 : /* fall through */
3158 case 20 : /* fall through */
3159 case 21 : /* fall through */
3160 case 22 : /* fall through */
3161 case 23 : /* fall through */
3162 case 24 : /* fall through */
3163 case 25 : /* fall through */
3164 case 26 : /* fall through */
3165 case 27 : /* fall through */
3166 case 28 : /* fall through */
3167 case 29 : /* fall through */
3168 case 30 : /* fall through */
3169 case 31 : /* fall through */
3170 case 32 : /* fall through */
3171 case 33 : /* fall through */
3172 case 34 : /* fall through */
3173 case 35 : /* fall through */
3174 case 36 : /* fall through */
3175 case 37 : /* fall through */
3176 case 38 : /* fall through */
3177 case 39 : /* fall through */
3178 case 40 : /* fall through */
3179 case 41 : /* fall through */
3180 case 42 : /* fall through */
3181 case 43 : /* fall through */
3182 case 44 : /* fall through */
3183 case 45 : /* fall through */
3184 case 46 : /* fall through */
3185 case 47 : /* fall through */
3186 case 48 : /* fall through */
3187 case 49 : /* fall through */
3188 case 50 : /* fall through */
3189 case 51 : /* fall through */
3190 case 52 : /* fall through */
3191 case 53 : /* fall through */
3192 case 54 : /* fall through */
3193 case 55 : /* fall through */
3194 case 56 : /* fall through */
3195 case 57 : /* fall through */
3196 case 58 : /* fall through */
3197 case 59 : /* fall through */
3198 case 60 : /* fall through */
3199 case 61 : /* fall through */
79e59fe6
DB
3200 case 62 :
3201 if ((entire_insn & 0x1ffffff) == 0x1ee0ec0)
3202 { itype = FRVBF_INSN_MCLRACC_1; goto extract_sfmt_mclracc_0; }
3203 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3204 case 63 :
3205 if ((entire_insn & 0x7fffffff) == 0x7fee0ec0)
3206 { itype = FRVBF_INSN_MNOP; goto extract_sfmt_rei; }
3207 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
d03ea14f
DB
3208 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3209 }
3210 }
3211 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3212 }
3213 }
79e59fe6
DB
3214 case 60 :
3215 if ((entire_insn & 0x1fc0fff) == 0x1ec0f00)
3216 { itype = FRVBF_INSN_MRDACC; goto extract_sfmt_mrdacc; }
3217 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3218 case 61 :
3219 if ((entire_insn & 0x1fc0fff) == 0x1ec0f40)
3220 { itype = FRVBF_INSN_MWTACC; goto extract_sfmt_mwtacc; }
3221 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3222 case 62 :
3223 if ((entire_insn & 0x1fc0fff) == 0x1ec0f80)
3224 { itype = FRVBF_INSN_MRDACCG; goto extract_sfmt_mrdaccg; }
3225 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3226 case 63 :
3227 if ((entire_insn & 0x1fc0fff) == 0x1ec0fc0)
3228 { itype = FRVBF_INSN_MWTACCG; goto extract_sfmt_mwtaccg; }
3229 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b34f6357
DB
3230 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3231 }
3232 }
79e59fe6
DB
3233 case 124 :
3234 if ((entire_insn & 0x1fc0fc0) == 0x1f00000)
3235 { itype = FRVBF_INSN_MCOP1; goto extract_sfmt_rei; }
3236 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3237 case 125 :
3238 if ((entire_insn & 0x1fc0fc0) == 0x1f40000)
3239 { itype = FRVBF_INSN_MCOP2; goto extract_sfmt_rei; }
3240 itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
b29791a8
DE
3241 case 126 : itype = FRVBF_INSN_COP1; goto extract_sfmt_rei;
3242 case 127 : itype = FRVBF_INSN_COP2; goto extract_sfmt_rei;
b34f6357
DB
3243 default : itype = FRVBF_INSN_X_INVALID; goto extract_sfmt_empty;
3244 }
3245 }
3246 }
3247
3248 /* The instruction has been decoded, now extract the fields. */
3249
3250 extract_sfmt_empty:
3251 {
3252 const IDESC *idesc = &frvbf_insn_data[itype];
3253#define FLD(f) abuf->fields.fmt_empty.f
3254
3255
3256 /* Record the fields for the semantic handler. */
3257 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_empty", (char *) 0));
3258
3259#undef FLD
3260 return idesc;
3261 }
3262
3263 extract_sfmt_add:
3264 {
3265 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3266 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3267#define FLD(f) abuf->fields.sfmt_addcc.f
3268 UINT f_GRk;
3269 UINT f_GRi;
3270 UINT f_GRj;
3271
3272 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3273 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3274 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3275
3276 /* Record the fields for the semantic handler. */
3277 FLD (f_GRi) = f_GRi;
3278 FLD (f_GRj) = f_GRj;
3279 FLD (f_GRk) = f_GRk;
3280 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_add", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3281
3282#if WITH_PROFILE_MODEL_P
3283 /* Record the fields for profiling. */
3284 if (PROFILE_MODEL_P (current_cpu))
3285 {
3286 FLD (in_GRi) = f_GRi;
3287 FLD (in_GRj) = f_GRj;
3288 FLD (out_GRk) = f_GRk;
3289 }
3290#endif
3291#undef FLD
3292 return idesc;
3293 }
3294
3295 extract_sfmt_not:
3296 {
3297 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3298 CGEN_INSN_WORD insn = entire_insn;
e930b1f5 3299#define FLD(f) abuf->fields.sfmt_scutss.f
b34f6357
DB
3300 UINT f_GRk;
3301 UINT f_GRj;
3302
3303 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3304 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3305
3306 /* Record the fields for the semantic handler. */
3307 FLD (f_GRj) = f_GRj;
3308 FLD (f_GRk) = f_GRk;
3309 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_not", "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3310
3311#if WITH_PROFILE_MODEL_P
3312 /* Record the fields for profiling. */
3313 if (PROFILE_MODEL_P (current_cpu))
3314 {
3315 FLD (in_GRj) = f_GRj;
3316 FLD (out_GRk) = f_GRk;
3317 }
3318#endif
3319#undef FLD
3320 return idesc;
3321 }
3322
3323 extract_sfmt_sdiv:
3324 {
3325 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3326 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3327#define FLD(f) abuf->fields.sfmt_addcc.f
3328 UINT f_GRk;
3329 UINT f_GRi;
3330 UINT f_GRj;
3331
3332 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3333 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3334 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3335
3336 /* Record the fields for the semantic handler. */
3337 FLD (f_GRi) = f_GRi;
3338 FLD (f_GRj) = f_GRj;
3339 FLD (f_GRk) = f_GRk;
3340 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_sdiv", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3341
3342#if WITH_PROFILE_MODEL_P
3343 /* Record the fields for profiling. */
3344 if (PROFILE_MODEL_P (current_cpu))
3345 {
3346 FLD (in_GRi) = f_GRi;
3347 FLD (in_GRj) = f_GRj;
3348 FLD (out_GRk) = f_GRk;
3349 }
3350#endif
3351#undef FLD
3352 return idesc;
3353 }
3354
3355 extract_sfmt_smul:
3356 {
3357 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3358 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3359#define FLD(f) abuf->fields.sfmt_smulcc.f
3360 UINT f_GRk;
3361 UINT f_GRi;
3362 UINT f_GRj;
3363
3364 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3365 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3366 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3367
3368 /* Record the fields for the semantic handler. */
3369 FLD (f_GRi) = f_GRi;
3370 FLD (f_GRj) = f_GRj;
3371 FLD (f_GRk) = f_GRk;
3372 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_smul", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3373
3374#if WITH_PROFILE_MODEL_P
3375 /* Record the fields for profiling. */
3376 if (PROFILE_MODEL_P (current_cpu))
3377 {
3378 FLD (in_GRi) = f_GRi;
3379 FLD (in_GRj) = f_GRj;
3380 FLD (out_GRdoublek) = f_GRk;
3381 }
3382#endif
e930b1f5
DB
3383#undef FLD
3384 return idesc;
3385 }
3386
3387 extract_sfmt_smu:
3388 {
3389 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3390 CGEN_INSN_WORD insn = entire_insn;
e930b1f5
DB
3391#define FLD(f) abuf->fields.sfmt_smass.f
3392 UINT f_GRi;
3393 UINT f_GRj;
3394
3395 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3396 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3397
3398 /* Record the fields for the semantic handler. */
3399 FLD (f_GRi) = f_GRi;
3400 FLD (f_GRj) = f_GRj;
3401 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_smu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
3402
3403#if WITH_PROFILE_MODEL_P
3404 /* Record the fields for profiling. */
3405 if (PROFILE_MODEL_P (current_cpu))
3406 {
3407 FLD (in_GRi) = f_GRi;
3408 FLD (in_GRj) = f_GRj;
3409 FLD (out_h_iacc0_DI_0) = 0;
3410 }
3411#endif
3412#undef FLD
3413 return idesc;
3414 }
3415
3416 extract_sfmt_smass:
3417 {
3418 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3419 CGEN_INSN_WORD insn = entire_insn;
e930b1f5
DB
3420#define FLD(f) abuf->fields.sfmt_smass.f
3421 UINT f_GRi;
3422 UINT f_GRj;
3423
3424 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3425 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3426
3427 /* Record the fields for the semantic handler. */
3428 FLD (f_GRi) = f_GRi;
3429 FLD (f_GRj) = f_GRj;
3430 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_smass", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
3431
3432#if WITH_PROFILE_MODEL_P
3433 /* Record the fields for profiling. */
3434 if (PROFILE_MODEL_P (current_cpu))
3435 {
3436 FLD (in_GRi) = f_GRi;
3437 FLD (in_GRj) = f_GRj;
3438 FLD (in_h_iacc0_DI_0) = 0;
3439 FLD (out_h_iacc0_DI_0) = 0;
3440 }
3441#endif
3442#undef FLD
3443 return idesc;
3444 }
3445
3446 extract_sfmt_scutss:
3447 {
3448 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3449 CGEN_INSN_WORD insn = entire_insn;
e930b1f5
DB
3450#define FLD(f) abuf->fields.sfmt_scutss.f
3451 UINT f_GRk;
3452 UINT f_GRj;
3453
3454 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3455 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3456
3457 /* Record the fields for the semantic handler. */
3458 FLD (f_GRj) = f_GRj;
3459 FLD (f_GRk) = f_GRk;
3460 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_scutss", "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3461
3462#if WITH_PROFILE_MODEL_P
3463 /* Record the fields for profiling. */
3464 if (PROFILE_MODEL_P (current_cpu))
3465 {
3466 FLD (in_GRj) = f_GRj;
3467 FLD (in_h_iacc0_DI_0) = 0;
3468 FLD (out_GRk) = f_GRk;
3469 }
3470#endif
b34f6357
DB
3471#undef FLD
3472 return idesc;
3473 }
3474
3475 extract_sfmt_cadd:
3476 {
3477 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3478 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3479#define FLD(f) abuf->fields.sfmt_cswap.f
3480 UINT f_GRk;
3481 UINT f_GRi;
3482 UINT f_CCi;
3483 UINT f_cond;
3484 UINT f_GRj;
3485
3486 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3487 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3488 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
3489 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
3490 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3491
3492 /* Record the fields for the semantic handler. */
3493 FLD (f_CCi) = f_CCi;
3494 FLD (f_GRi) = f_GRi;
3495 FLD (f_GRj) = f_GRj;
3496 FLD (f_cond) = f_cond;
3497 FLD (f_GRk) = f_GRk;
3498 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cadd", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3499
3500#if WITH_PROFILE_MODEL_P
3501 /* Record the fields for profiling. */
3502 if (PROFILE_MODEL_P (current_cpu))
3503 {
3504 FLD (in_CCi) = f_CCi;
3505 FLD (in_GRi) = f_GRi;
3506 FLD (in_GRj) = f_GRj;
3507 FLD (out_GRk) = f_GRk;
3508 }
3509#endif
3510#undef FLD
3511 return idesc;
3512 }
3513
3514 extract_sfmt_cnot:
3515 {
3516 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3517 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3518#define FLD(f) abuf->fields.sfmt_cswap.f
3519 UINT f_GRk;
3520 UINT f_CCi;
3521 UINT f_cond;
3522 UINT f_GRj;
3523
3524 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3525 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
3526 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
3527 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3528
3529 /* Record the fields for the semantic handler. */
3530 FLD (f_CCi) = f_CCi;
3531 FLD (f_GRj) = f_GRj;
3532 FLD (f_cond) = f_cond;
3533 FLD (f_GRk) = f_GRk;
3534 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cnot", "f_CCi 0x%x", 'x', f_CCi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3535
3536#if WITH_PROFILE_MODEL_P
3537 /* Record the fields for profiling. */
3538 if (PROFILE_MODEL_P (current_cpu))
3539 {
3540 FLD (in_CCi) = f_CCi;
3541 FLD (in_GRj) = f_GRj;
3542 FLD (out_GRk) = f_GRk;
3543 }
3544#endif
3545#undef FLD
3546 return idesc;
3547 }
3548
3549 extract_sfmt_csmul:
3550 {
3551 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3552 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3553#define FLD(f) abuf->fields.sfmt_clddu.f
3554 UINT f_GRk;
3555 UINT f_GRi;
3556 UINT f_CCi;
3557 UINT f_cond;
3558 UINT f_GRj;
3559
3560 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3561 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3562 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
3563 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
3564 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3565
3566 /* Record the fields for the semantic handler. */
3567 FLD (f_CCi) = f_CCi;
3568 FLD (f_GRi) = f_GRi;
3569 FLD (f_GRj) = f_GRj;
3570 FLD (f_cond) = f_cond;
3571 FLD (f_GRk) = f_GRk;
3572 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_csmul", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3573
3574#if WITH_PROFILE_MODEL_P
3575 /* Record the fields for profiling. */
3576 if (PROFILE_MODEL_P (current_cpu))
3577 {
3578 FLD (in_CCi) = f_CCi;
3579 FLD (in_GRi) = f_GRi;
3580 FLD (in_GRj) = f_GRj;
3581 FLD (out_GRdoublek) = f_GRk;
3582 }
3583#endif
3584#undef FLD
3585 return idesc;
3586 }
3587
3588 extract_sfmt_csdiv:
3589 {
3590 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3591 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3592#define FLD(f) abuf->fields.sfmt_cswap.f
3593 UINT f_GRk;
3594 UINT f_GRi;
3595 UINT f_CCi;
3596 UINT f_cond;
3597 UINT f_GRj;
3598
3599 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3600 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3601 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
3602 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
3603 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3604
3605 /* Record the fields for the semantic handler. */
3606 FLD (f_CCi) = f_CCi;
3607 FLD (f_GRi) = f_GRi;
3608 FLD (f_GRj) = f_GRj;
3609 FLD (f_cond) = f_cond;
3610 FLD (f_GRk) = f_GRk;
3611 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_csdiv", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3612
3613#if WITH_PROFILE_MODEL_P
3614 /* Record the fields for profiling. */
3615 if (PROFILE_MODEL_P (current_cpu))
3616 {
3617 FLD (in_CCi) = f_CCi;
3618 FLD (in_GRi) = f_GRi;
3619 FLD (in_GRj) = f_GRj;
3620 FLD (out_GRk) = f_GRk;
3621 }
3622#endif
3623#undef FLD
3624 return idesc;
3625 }
3626
3627 extract_sfmt_addcc:
3628 {
3629 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3630 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3631#define FLD(f) abuf->fields.sfmt_addcc.f
3632 UINT f_GRk;
3633 UINT f_GRi;
3634 UINT f_ICCi_1;
3635 UINT f_GRj;
3636
3637 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3638 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3639 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2);
3640 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3641
3642 /* Record the fields for the semantic handler. */
3643 FLD (f_GRi) = f_GRi;
3644 FLD (f_GRj) = f_GRj;
3645 FLD (f_ICCi_1) = f_ICCi_1;
3646 FLD (f_GRk) = f_GRk;
3647 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_addcc", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_ICCi_1 0x%x", 'x', f_ICCi_1, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3648
3649#if WITH_PROFILE_MODEL_P
3650 /* Record the fields for profiling. */
3651 if (PROFILE_MODEL_P (current_cpu))
3652 {
3653 FLD (in_GRi) = f_GRi;
3654 FLD (in_GRj) = f_GRj;
3655 FLD (in_ICCi_1) = f_ICCi_1;
3656 FLD (out_GRk) = f_GRk;
3657 FLD (out_ICCi_1) = f_ICCi_1;
3658 }
3659#endif
3660#undef FLD
3661 return idesc;
3662 }
3663
3664 extract_sfmt_andcc:
3665 {
3666 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3667 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3668#define FLD(f) abuf->fields.sfmt_addcc.f
3669 UINT f_GRk;
3670 UINT f_GRi;
3671 UINT f_ICCi_1;
3672 UINT f_GRj;
3673
3674 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3675 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3676 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2);
3677 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3678
3679 /* Record the fields for the semantic handler. */
3680 FLD (f_GRi) = f_GRi;
3681 FLD (f_GRj) = f_GRj;
3682 FLD (f_ICCi_1) = f_ICCi_1;
3683 FLD (f_GRk) = f_GRk;
3684 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_andcc", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_ICCi_1 0x%x", 'x', f_ICCi_1, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3685
3686#if WITH_PROFILE_MODEL_P
3687 /* Record the fields for profiling. */
3688 if (PROFILE_MODEL_P (current_cpu))
3689 {
3690 FLD (in_GRi) = f_GRi;
3691 FLD (in_GRj) = f_GRj;
3692 FLD (in_ICCi_1) = f_ICCi_1;
3693 FLD (out_GRk) = f_GRk;
3694 FLD (out_ICCi_1) = f_ICCi_1;
3695 }
3696#endif
3697#undef FLD
3698 return idesc;
3699 }
3700
3701 extract_sfmt_smulcc:
3702 {
3703 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3704 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3705#define FLD(f) abuf->fields.sfmt_smulcc.f
3706 UINT f_GRk;
3707 UINT f_GRi;
3708 UINT f_ICCi_1;
3709 UINT f_GRj;
3710
3711 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3712 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3713 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2);
3714 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3715
3716 /* Record the fields for the semantic handler. */
3717 FLD (f_GRi) = f_GRi;
3718 FLD (f_GRj) = f_GRj;
3719 FLD (f_ICCi_1) = f_ICCi_1;
3720 FLD (f_GRk) = f_GRk;
3721 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_smulcc", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_ICCi_1 0x%x", 'x', f_ICCi_1, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3722
3723#if WITH_PROFILE_MODEL_P
3724 /* Record the fields for profiling. */
3725 if (PROFILE_MODEL_P (current_cpu))
3726 {
3727 FLD (in_GRi) = f_GRi;
3728 FLD (in_GRj) = f_GRj;
3729 FLD (in_ICCi_1) = f_ICCi_1;
3730 FLD (out_GRdoublek) = f_GRk;
3731 FLD (out_ICCi_1) = f_ICCi_1;
3732 }
3733#endif
3734#undef FLD
3735 return idesc;
3736 }
3737
3738 extract_sfmt_caddcc:
3739 {
3740 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3741 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3742#define FLD(f) abuf->fields.sfmt_caddcc.f
3743 UINT f_GRk;
3744 UINT f_GRi;
3745 UINT f_CCi;
3746 UINT f_cond;
3747 UINT f_GRj;
3748
3749 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3750 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3751 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
3752 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
3753 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3754
3755 /* Record the fields for the semantic handler. */
3756 FLD (f_CCi) = f_CCi;
3757 FLD (f_GRi) = f_GRi;
3758 FLD (f_GRj) = f_GRj;
3759 FLD (f_cond) = f_cond;
3760 FLD (f_GRk) = f_GRk;
3761 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_caddcc", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3762
3763#if WITH_PROFILE_MODEL_P
3764 /* Record the fields for profiling. */
3765 if (PROFILE_MODEL_P (current_cpu))
3766 {
3767 FLD (in_CCi) = f_CCi;
3768 FLD (in_GRi) = f_GRi;
3769 FLD (in_GRj) = f_GRj;
b29791a8 3770 FLD (in_h_iccr_UQI_and__INT_index_of__INT_CCi_3) = ((FLD (f_CCi)) & (3));
b34f6357 3771 FLD (out_GRk) = f_GRk;
b29791a8 3772 FLD (out_h_iccr_UQI_and__INT_index_of__INT_CCi_3) = ((FLD (f_CCi)) & (3));
b34f6357
DB
3773 }
3774#endif
3775#undef FLD
3776 return idesc;
3777 }
3778
3779 extract_sfmt_csmulcc:
3780 {
3781 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3782 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3783#define FLD(f) abuf->fields.sfmt_csmulcc.f
3784 UINT f_GRk;
3785 UINT f_GRi;
3786 UINT f_CCi;
3787 UINT f_cond;
3788 UINT f_GRj;
3789
3790 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3791 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3792 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
3793 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
3794 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3795
3796 /* Record the fields for the semantic handler. */
3797 FLD (f_CCi) = f_CCi;
3798 FLD (f_GRi) = f_GRi;
3799 FLD (f_GRj) = f_GRj;
3800 FLD (f_cond) = f_cond;
3801 FLD (f_GRk) = f_GRk;
3802 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_csmulcc", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3803
3804#if WITH_PROFILE_MODEL_P
3805 /* Record the fields for profiling. */
3806 if (PROFILE_MODEL_P (current_cpu))
3807 {
3808 FLD (in_CCi) = f_CCi;
3809 FLD (in_GRi) = f_GRi;
3810 FLD (in_GRj) = f_GRj;
b29791a8 3811 FLD (in_h_iccr_UQI_and__INT_index_of__INT_CCi_3) = ((FLD (f_CCi)) & (3));
b34f6357 3812 FLD (out_GRdoublek) = f_GRk;
b29791a8 3813 FLD (out_h_iccr_UQI_and__INT_index_of__INT_CCi_3) = ((FLD (f_CCi)) & (3));
b34f6357
DB
3814 }
3815#endif
3816#undef FLD
3817 return idesc;
3818 }
3819
3820 extract_sfmt_addx:
3821 {
3822 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3823 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3824#define FLD(f) abuf->fields.sfmt_addcc.f
3825 UINT f_GRk;
3826 UINT f_GRi;
3827 UINT f_ICCi_1;
3828 UINT f_GRj;
3829
3830 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3831 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3832 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2);
3833 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
3834
3835 /* Record the fields for the semantic handler. */
3836 FLD (f_GRi) = f_GRi;
3837 FLD (f_GRj) = f_GRj;
3838 FLD (f_ICCi_1) = f_ICCi_1;
3839 FLD (f_GRk) = f_GRk;
3840 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_addx", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_ICCi_1 0x%x", 'x', f_ICCi_1, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3841
3842#if WITH_PROFILE_MODEL_P
3843 /* Record the fields for profiling. */
3844 if (PROFILE_MODEL_P (current_cpu))
3845 {
3846 FLD (in_GRi) = f_GRi;
3847 FLD (in_GRj) = f_GRj;
3848 FLD (in_ICCi_1) = f_ICCi_1;
3849 FLD (out_GRk) = f_GRk;
3850 }
3851#endif
3852#undef FLD
3853 return idesc;
3854 }
3855
3856 extract_sfmt_addi:
3857 {
3858 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3859 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3860#define FLD(f) abuf->fields.sfmt_swapi.f
3861 UINT f_GRk;
3862 UINT f_GRi;
3863 INT f_d12;
3864
3865 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3866 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 3867 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
3868
3869 /* Record the fields for the semantic handler. */
3870 FLD (f_GRi) = f_GRi;
3871 FLD (f_d12) = f_d12;
3872 FLD (f_GRk) = f_GRk;
3873 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_addi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3874
3875#if WITH_PROFILE_MODEL_P
3876 /* Record the fields for profiling. */
3877 if (PROFILE_MODEL_P (current_cpu))
3878 {
3879 FLD (in_GRi) = f_GRi;
3880 FLD (out_GRk) = f_GRk;
3881 }
3882#endif
3883#undef FLD
3884 return idesc;
3885 }
3886
3887 extract_sfmt_sdivi:
3888 {
3889 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3890 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3891#define FLD(f) abuf->fields.sfmt_swapi.f
3892 UINT f_GRk;
3893 UINT f_GRi;
3894 INT f_d12;
3895
3896 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3897 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 3898 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
3899
3900 /* Record the fields for the semantic handler. */
3901 FLD (f_GRi) = f_GRi;
3902 FLD (f_GRk) = f_GRk;
3903 FLD (f_d12) = f_d12;
3904 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_sdivi", "f_GRi 0x%x", 'x', f_GRi, "f_GRk 0x%x", 'x', f_GRk, "f_d12 0x%x", 'x', f_d12, (char *) 0));
3905
3906#if WITH_PROFILE_MODEL_P
3907 /* Record the fields for profiling. */
3908 if (PROFILE_MODEL_P (current_cpu))
3909 {
3910 FLD (in_GRi) = f_GRi;
3911 FLD (out_GRk) = f_GRk;
3912 }
3913#endif
3914#undef FLD
3915 return idesc;
3916 }
3917
3918 extract_sfmt_smuli:
3919 {
3920 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3921 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3922#define FLD(f) abuf->fields.sfmt_smuli.f
3923 UINT f_GRk;
3924 UINT f_GRi;
3925 INT f_d12;
3926
3927 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3928 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 3929 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
3930
3931 /* Record the fields for the semantic handler. */
3932 FLD (f_GRi) = f_GRi;
3933 FLD (f_d12) = f_d12;
3934 FLD (f_GRk) = f_GRk;
3935 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_smuli", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3936
3937#if WITH_PROFILE_MODEL_P
3938 /* Record the fields for profiling. */
3939 if (PROFILE_MODEL_P (current_cpu))
3940 {
3941 FLD (in_GRi) = f_GRi;
3942 FLD (out_GRdoublek) = f_GRk;
3943 }
3944#endif
3945#undef FLD
3946 return idesc;
3947 }
3948
3949 extract_sfmt_addicc:
3950 {
3951 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3952 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3953#define FLD(f) abuf->fields.sfmt_addicc.f
3954 UINT f_GRk;
3955 UINT f_GRi;
3956 UINT f_ICCi_1;
3957 INT f_s10;
3958
3959 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3960 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3961 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2);
62836bf4 3962 f_s10 = EXTRACT_LSB0_SINT (insn, 32, 9, 10);
b34f6357
DB
3963
3964 /* Record the fields for the semantic handler. */
3965 FLD (f_GRi) = f_GRi;
3966 FLD (f_ICCi_1) = f_ICCi_1;
3967 FLD (f_s10) = f_s10;
3968 FLD (f_GRk) = f_GRk;
3969 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_addicc", "f_GRi 0x%x", 'x', f_GRi, "f_ICCi_1 0x%x", 'x', f_ICCi_1, "f_s10 0x%x", 'x', f_s10, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
3970
3971#if WITH_PROFILE_MODEL_P
3972 /* Record the fields for profiling. */
3973 if (PROFILE_MODEL_P (current_cpu))
3974 {
3975 FLD (in_GRi) = f_GRi;
3976 FLD (in_ICCi_1) = f_ICCi_1;
3977 FLD (out_GRk) = f_GRk;
3978 FLD (out_ICCi_1) = f_ICCi_1;
3979 }
3980#endif
3981#undef FLD
3982 return idesc;
3983 }
3984
3985 extract_sfmt_andicc:
3986 {
3987 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 3988 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
3989#define FLD(f) abuf->fields.sfmt_addicc.f
3990 UINT f_GRk;
3991 UINT f_GRi;
3992 UINT f_ICCi_1;
3993 INT f_s10;
3994
3995 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
3996 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
3997 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2);
62836bf4 3998 f_s10 = EXTRACT_LSB0_SINT (insn, 32, 9, 10);
b34f6357
DB
3999
4000 /* Record the fields for the semantic handler. */
4001 FLD (f_GRi) = f_GRi;
4002 FLD (f_ICCi_1) = f_ICCi_1;
4003 FLD (f_s10) = f_s10;
4004 FLD (f_GRk) = f_GRk;
4005 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_andicc", "f_GRi 0x%x", 'x', f_GRi, "f_ICCi_1 0x%x", 'x', f_ICCi_1, "f_s10 0x%x", 'x', f_s10, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4006
4007#if WITH_PROFILE_MODEL_P
4008 /* Record the fields for profiling. */
4009 if (PROFILE_MODEL_P (current_cpu))
4010 {
4011 FLD (in_GRi) = f_GRi;
4012 FLD (in_ICCi_1) = f_ICCi_1;
4013 FLD (out_GRk) = f_GRk;
4014 FLD (out_ICCi_1) = f_ICCi_1;
4015 }
4016#endif
4017#undef FLD
4018 return idesc;
4019 }
4020
4021 extract_sfmt_smulicc:
4022 {
4023 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4024 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4025#define FLD(f) abuf->fields.sfmt_smulicc.f
4026 UINT f_GRk;
4027 UINT f_GRi;
4028 UINT f_ICCi_1;
4029 INT f_s10;
4030
4031 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4032 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4033 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2);
62836bf4 4034 f_s10 = EXTRACT_LSB0_SINT (insn, 32, 9, 10);
b34f6357
DB
4035
4036 /* Record the fields for the semantic handler. */
4037 FLD (f_GRi) = f_GRi;
4038 FLD (f_ICCi_1) = f_ICCi_1;
4039 FLD (f_s10) = f_s10;
4040 FLD (f_GRk) = f_GRk;
4041 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_smulicc", "f_GRi 0x%x", 'x', f_GRi, "f_ICCi_1 0x%x", 'x', f_ICCi_1, "f_s10 0x%x", 'x', f_s10, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4042
4043#if WITH_PROFILE_MODEL_P
4044 /* Record the fields for profiling. */
4045 if (PROFILE_MODEL_P (current_cpu))
4046 {
4047 FLD (in_GRi) = f_GRi;
4048 FLD (in_ICCi_1) = f_ICCi_1;
4049 FLD (out_GRdoublek) = f_GRk;
4050 FLD (out_ICCi_1) = f_ICCi_1;
4051 }
4052#endif
4053#undef FLD
4054 return idesc;
4055 }
4056
4057 extract_sfmt_addxi:
4058 {
4059 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4060 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4061#define FLD(f) abuf->fields.sfmt_addicc.f
4062 UINT f_GRk;
4063 UINT f_GRi;
4064 UINT f_ICCi_1;
4065 INT f_s10;
4066
4067 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4068 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4069 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2);
62836bf4 4070 f_s10 = EXTRACT_LSB0_SINT (insn, 32, 9, 10);
b34f6357
DB
4071
4072 /* Record the fields for the semantic handler. */
4073 FLD (f_GRi) = f_GRi;
4074 FLD (f_ICCi_1) = f_ICCi_1;
4075 FLD (f_s10) = f_s10;
4076 FLD (f_GRk) = f_GRk;
4077 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_addxi", "f_GRi 0x%x", 'x', f_GRi, "f_ICCi_1 0x%x", 'x', f_ICCi_1, "f_s10 0x%x", 'x', f_s10, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4078
4079#if WITH_PROFILE_MODEL_P
4080 /* Record the fields for profiling. */
4081 if (PROFILE_MODEL_P (current_cpu))
4082 {
4083 FLD (in_GRi) = f_GRi;
4084 FLD (in_ICCi_1) = f_ICCi_1;
4085 FLD (out_GRk) = f_GRk;
4086 }
4087#endif
4088#undef FLD
4089 return idesc;
4090 }
4091
4092 extract_sfmt_cmpb:
4093 {
4094 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4095 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4096#define FLD(f) abuf->fields.sfmt_smulcc.f
4097 UINT f_GRi;
4098 UINT f_ICCi_1;
4099 UINT f_GRj;
4100
4101 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4102 f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2);
4103 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4104
4105 /* Record the fields for the semantic handler. */
4106 FLD (f_GRi) = f_GRi;
4107 FLD (f_GRj) = f_GRj;
4108 FLD (f_ICCi_1) = f_ICCi_1;
4109 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmpb", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_ICCi_1 0x%x", 'x', f_ICCi_1, (char *) 0));
4110
4111#if WITH_PROFILE_MODEL_P
4112 /* Record the fields for profiling. */
4113 if (PROFILE_MODEL_P (current_cpu))
4114 {
4115 FLD (in_GRi) = f_GRi;
4116 FLD (in_GRj) = f_GRj;
4117 FLD (out_ICCi_1) = f_ICCi_1;
4118 }
4119#endif
4120#undef FLD
4121 return idesc;
4122 }
4123
4124 extract_sfmt_setlo:
4125 {
4126 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4127 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4128#define FLD(f) abuf->fields.sfmt_setlo.f
4129 UINT f_GRk;
4130 UINT f_u16;
4131
4132 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4133 f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16);
4134
4135 /* Record the fields for the semantic handler. */
4136 FLD (f_u16) = f_u16;
4137 FLD (f_GRk) = f_GRk;
4138 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_setlo", "f_u16 0x%x", 'x', f_u16, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4139
4140#if WITH_PROFILE_MODEL_P
4141 /* Record the fields for profiling. */
4142 if (PROFILE_MODEL_P (current_cpu))
4143 {
4144 FLD (out_GRklo) = f_GRk;
4145 }
4146#endif
4147#undef FLD
4148 return idesc;
4149 }
4150
4151 extract_sfmt_sethi:
4152 {
4153 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4154 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4155#define FLD(f) abuf->fields.sfmt_sethi.f
4156 UINT f_GRk;
4157 UINT f_u16;
4158
4159 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4160 f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16);
4161
4162 /* Record the fields for the semantic handler. */
4163 FLD (f_u16) = f_u16;
4164 FLD (f_GRk) = f_GRk;
4165 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_sethi", "f_u16 0x%x", 'x', f_u16, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4166
4167#if WITH_PROFILE_MODEL_P
4168 /* Record the fields for profiling. */
4169 if (PROFILE_MODEL_P (current_cpu))
4170 {
4171 FLD (out_GRkhi) = f_GRk;
4172 }
4173#endif
4174#undef FLD
4175 return idesc;
4176 }
4177
4178 extract_sfmt_setlos:
4179 {
4180 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4181 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4182#define FLD(f) abuf->fields.sfmt_setlos.f
4183 UINT f_GRk;
4184 INT f_s16;
4185
4186 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
62836bf4 4187 f_s16 = EXTRACT_LSB0_SINT (insn, 32, 15, 16);
b34f6357
DB
4188
4189 /* Record the fields for the semantic handler. */
4190 FLD (f_s16) = f_s16;
4191 FLD (f_GRk) = f_GRk;
4192 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_setlos", "f_s16 0x%x", 'x', f_s16, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4193
4194#if WITH_PROFILE_MODEL_P
4195 /* Record the fields for profiling. */
4196 if (PROFILE_MODEL_P (current_cpu))
4197 {
4198 FLD (out_GRk) = f_GRk;
4199 }
4200#endif
4201#undef FLD
4202 return idesc;
4203 }
4204
4205 extract_sfmt_ldsb:
4206 {
4207 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4208 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4209#define FLD(f) abuf->fields.sfmt_addcc.f
4210 UINT f_GRk;
4211 UINT f_GRi;
4212 UINT f_GRj;
4213
4214 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4215 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4216 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4217
4218 /* Record the fields for the semantic handler. */
4219 FLD (f_GRi) = f_GRi;
4220 FLD (f_GRj) = f_GRj;
4221 FLD (f_GRk) = f_GRk;
4222 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldsb", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4223
4224#if WITH_PROFILE_MODEL_P
4225 /* Record the fields for profiling. */
4226 if (PROFILE_MODEL_P (current_cpu))
4227 {
4228 FLD (in_GRi) = f_GRi;
4229 FLD (in_GRj) = f_GRj;
4230 FLD (out_GRk) = f_GRk;
4231 }
4232#endif
4233#undef FLD
4234 return idesc;
4235 }
4236
4237 extract_sfmt_ldbf:
4238 {
4239 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4240 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4241#define FLD(f) abuf->fields.sfmt_cldbfu.f
4242 UINT f_FRk;
4243 UINT f_GRi;
4244 UINT f_GRj;
4245
4246 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4247 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4248 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4249
4250 /* Record the fields for the semantic handler. */
4251 FLD (f_GRi) = f_GRi;
4252 FLD (f_GRj) = f_GRj;
4253 FLD (f_FRk) = f_FRk;
4254 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldbf", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
4255
4256#if WITH_PROFILE_MODEL_P
4257 /* Record the fields for profiling. */
4258 if (PROFILE_MODEL_P (current_cpu))
4259 {
4260 FLD (in_GRi) = f_GRi;
4261 FLD (in_GRj) = f_GRj;
4262 FLD (out_FRintk) = f_FRk;
4263 }
4264#endif
4265#undef FLD
4266 return idesc;
4267 }
4268
4269 extract_sfmt_ldc:
4270 {
4271 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4272 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4273#define FLD(f) abuf->fields.sfmt_ldcu.f
4274 UINT f_CPRk;
4275 UINT f_GRi;
4276 UINT f_GRj;
4277
4278 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4279 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4280 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4281
4282 /* Record the fields for the semantic handler. */
4283 FLD (f_GRi) = f_GRi;
4284 FLD (f_GRj) = f_GRj;
4285 FLD (f_CPRk) = f_CPRk;
4286 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldc", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_CPRk 0x%x", 'x', f_CPRk, (char *) 0));
4287
4288#if WITH_PROFILE_MODEL_P
4289 /* Record the fields for profiling. */
4290 if (PROFILE_MODEL_P (current_cpu))
4291 {
4292 FLD (in_GRi) = f_GRi;
4293 FLD (in_GRj) = f_GRj;
4294 FLD (out_CPRk) = f_CPRk;
4295 }
4296#endif
4297#undef FLD
4298 return idesc;
4299 }
4300
4301 extract_sfmt_nldsb:
4302 {
4303 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4304 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4305#define FLD(f) abuf->fields.sfmt_addcc.f
4306 UINT f_GRk;
4307 UINT f_GRi;
4308 UINT f_GRj;
4309
4310 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4311 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4312 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4313
4314 /* Record the fields for the semantic handler. */
4315 FLD (f_GRi) = f_GRi;
4316 FLD (f_GRj) = f_GRj;
4317 FLD (f_GRk) = f_GRk;
4318 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldsb", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4319
4320#if WITH_PROFILE_MODEL_P
4321 /* Record the fields for profiling. */
4322 if (PROFILE_MODEL_P (current_cpu))
4323 {
4324 FLD (in_GRi) = f_GRi;
4325 FLD (in_GRj) = f_GRj;
4326 FLD (out_GRk) = f_GRk;
4327 }
4328#endif
4329#undef FLD
4330 return idesc;
4331 }
4332
4333 extract_sfmt_nldbf:
4334 {
4335 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4336 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4337#define FLD(f) abuf->fields.sfmt_cldbfu.f
4338 UINT f_FRk;
4339 UINT f_GRi;
4340 UINT f_GRj;
4341
4342 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4343 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4344 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4345
4346 /* Record the fields for the semantic handler. */
4347 FLD (f_GRi) = f_GRi;
4348 FLD (f_GRj) = f_GRj;
4349 FLD (f_FRk) = f_FRk;
4350 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldbf", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
4351
4352#if WITH_PROFILE_MODEL_P
4353 /* Record the fields for profiling. */
4354 if (PROFILE_MODEL_P (current_cpu))
4355 {
4356 FLD (in_GRi) = f_GRi;
4357 FLD (in_GRj) = f_GRj;
4358 FLD (out_FRintk) = f_FRk;
4359 }
4360#endif
4361#undef FLD
4362 return idesc;
4363 }
4364
4365 extract_sfmt_ldd:
4366 {
4367 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4368 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4369#define FLD(f) abuf->fields.sfmt_smulcc.f
4370 UINT f_GRk;
4371 UINT f_GRi;
4372 UINT f_GRj;
4373
4374 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4375 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4376 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4377
4378 /* Record the fields for the semantic handler. */
4379 FLD (f_GRi) = f_GRi;
4380 FLD (f_GRj) = f_GRj;
4381 FLD (f_GRk) = f_GRk;
4382 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldd", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4383
4384#if WITH_PROFILE_MODEL_P
4385 /* Record the fields for profiling. */
4386 if (PROFILE_MODEL_P (current_cpu))
4387 {
4388 FLD (in_GRi) = f_GRi;
4389 FLD (in_GRj) = f_GRj;
4390 FLD (out_GRdoublek) = f_GRk;
4391 }
4392#endif
4393#undef FLD
4394 return idesc;
4395 }
4396
4397 extract_sfmt_lddf:
4398 {
4399 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4400 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4401#define FLD(f) abuf->fields.sfmt_clddfu.f
4402 UINT f_FRk;
4403 UINT f_GRi;
4404 UINT f_GRj;
4405
4406 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4407 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4408 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4409
4410 /* Record the fields for the semantic handler. */
4411 FLD (f_GRi) = f_GRi;
4412 FLD (f_GRj) = f_GRj;
4413 FLD (f_FRk) = f_FRk;
4414 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_lddf", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
4415
4416#if WITH_PROFILE_MODEL_P
4417 /* Record the fields for profiling. */
4418 if (PROFILE_MODEL_P (current_cpu))
4419 {
4420 FLD (in_GRi) = f_GRi;
4421 FLD (in_GRj) = f_GRj;
4422 FLD (out_FRdoublek) = f_FRk;
4423 }
4424#endif
4425#undef FLD
4426 return idesc;
4427 }
4428
4429 extract_sfmt_lddc:
4430 {
4431 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4432 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4433#define FLD(f) abuf->fields.sfmt_lddcu.f
4434 UINT f_CPRk;
4435 UINT f_GRi;
4436 UINT f_GRj;
4437
4438 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4439 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4440 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4441
4442 /* Record the fields for the semantic handler. */
4443 FLD (f_GRi) = f_GRi;
4444 FLD (f_GRj) = f_GRj;
4445 FLD (f_CPRk) = f_CPRk;
4446 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_lddc", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_CPRk 0x%x", 'x', f_CPRk, (char *) 0));
4447
4448#if WITH_PROFILE_MODEL_P
4449 /* Record the fields for profiling. */
4450 if (PROFILE_MODEL_P (current_cpu))
4451 {
4452 FLD (in_GRi) = f_GRi;
4453 FLD (in_GRj) = f_GRj;
4454 FLD (out_CPRdoublek) = f_CPRk;
4455 }
4456#endif
4457#undef FLD
4458 return idesc;
4459 }
4460
4461 extract_sfmt_nldd:
4462 {
4463 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4464 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4465#define FLD(f) abuf->fields.sfmt_smulcc.f
4466 UINT f_GRk;
4467 UINT f_GRi;
4468 UINT f_GRj;
4469
4470 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4471 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4472 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4473
4474 /* Record the fields for the semantic handler. */
4475 FLD (f_GRi) = f_GRi;
4476 FLD (f_GRj) = f_GRj;
4477 FLD (f_GRk) = f_GRk;
4478 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldd", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4479
4480#if WITH_PROFILE_MODEL_P
4481 /* Record the fields for profiling. */
4482 if (PROFILE_MODEL_P (current_cpu))
4483 {
4484 FLD (in_GRi) = f_GRi;
4485 FLD (in_GRj) = f_GRj;
4486 FLD (out_GRdoublek) = f_GRk;
4487 }
4488#endif
4489#undef FLD
4490 return idesc;
4491 }
4492
4493 extract_sfmt_nlddf:
4494 {
4495 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4496 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4497#define FLD(f) abuf->fields.sfmt_clddfu.f
4498 UINT f_FRk;
4499 UINT f_GRi;
4500 UINT f_GRj;
4501
4502 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4503 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4504 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4505
4506 /* Record the fields for the semantic handler. */
4507 FLD (f_GRi) = f_GRi;
4508 FLD (f_GRj) = f_GRj;
4509 FLD (f_FRk) = f_FRk;
4510 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nlddf", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
4511
4512#if WITH_PROFILE_MODEL_P
4513 /* Record the fields for profiling. */
4514 if (PROFILE_MODEL_P (current_cpu))
4515 {
4516 FLD (in_GRi) = f_GRi;
4517 FLD (in_GRj) = f_GRj;
4518 FLD (out_FRdoublek) = f_FRk;
4519 }
4520#endif
4521#undef FLD
4522 return idesc;
4523 }
4524
4525 extract_sfmt_ldq:
4526 {
4527 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4528 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4529#define FLD(f) abuf->fields.sfmt_smulcc.f
4530 UINT f_GRk;
4531 UINT f_GRi;
4532 UINT f_GRj;
4533
4534 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4535 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4536 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4537
4538 /* Record the fields for the semantic handler. */
4539 FLD (f_GRi) = f_GRi;
4540 FLD (f_GRj) = f_GRj;
4541 FLD (f_GRk) = f_GRk;
4542 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldq", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4543
4544#if WITH_PROFILE_MODEL_P
4545 /* Record the fields for profiling. */
4546 if (PROFILE_MODEL_P (current_cpu))
4547 {
4548 FLD (in_GRi) = f_GRi;
4549 FLD (in_GRj) = f_GRj;
4550 }
4551#endif
4552#undef FLD
4553 return idesc;
4554 }
4555
4556 extract_sfmt_ldqf:
4557 {
4558 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4559 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4560#define FLD(f) abuf->fields.sfmt_cstdfu.f
4561 UINT f_FRk;
4562 UINT f_GRi;
4563 UINT f_GRj;
4564
4565 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4566 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4567 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4568
4569 /* Record the fields for the semantic handler. */
4570 FLD (f_GRi) = f_GRi;
4571 FLD (f_GRj) = f_GRj;
4572 FLD (f_FRk) = f_FRk;
4573 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldqf", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
4574
4575#if WITH_PROFILE_MODEL_P
4576 /* Record the fields for profiling. */
4577 if (PROFILE_MODEL_P (current_cpu))
4578 {
4579 FLD (in_GRi) = f_GRi;
4580 FLD (in_GRj) = f_GRj;
4581 }
4582#endif
4583#undef FLD
4584 return idesc;
4585 }
4586
4587 extract_sfmt_ldqc:
4588 {
4589 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4590 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4591#define FLD(f) abuf->fields.sfmt_stdcu.f
4592 UINT f_CPRk;
4593 UINT f_GRi;
4594 UINT f_GRj;
4595
4596 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4597 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4598 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4599
4600 /* Record the fields for the semantic handler. */
4601 FLD (f_GRi) = f_GRi;
4602 FLD (f_GRj) = f_GRj;
4603 FLD (f_CPRk) = f_CPRk;
4604 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldqc", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_CPRk 0x%x", 'x', f_CPRk, (char *) 0));
4605
4606#if WITH_PROFILE_MODEL_P
4607 /* Record the fields for profiling. */
4608 if (PROFILE_MODEL_P (current_cpu))
4609 {
4610 FLD (in_GRi) = f_GRi;
4611 FLD (in_GRj) = f_GRj;
4612 }
4613#endif
4614#undef FLD
4615 return idesc;
4616 }
4617
4618 extract_sfmt_nldq:
4619 {
4620 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4621 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4622#define FLD(f) abuf->fields.sfmt_smulcc.f
4623 UINT f_GRk;
4624 UINT f_GRi;
4625 UINT f_GRj;
4626
4627 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4628 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4629 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4630
4631 /* Record the fields for the semantic handler. */
4632 FLD (f_GRi) = f_GRi;
4633 FLD (f_GRj) = f_GRj;
4634 FLD (f_GRk) = f_GRk;
4635 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldq", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4636
4637#if WITH_PROFILE_MODEL_P
4638 /* Record the fields for profiling. */
4639 if (PROFILE_MODEL_P (current_cpu))
4640 {
4641 FLD (in_GRi) = f_GRi;
4642 FLD (in_GRj) = f_GRj;
4643 }
4644#endif
4645#undef FLD
4646 return idesc;
4647 }
4648
4649 extract_sfmt_nldqf:
4650 {
4651 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4652 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4653#define FLD(f) abuf->fields.sfmt_cstdfu.f
4654 UINT f_FRk;
4655 UINT f_GRi;
4656 UINT f_GRj;
4657
4658 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4659 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4660 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4661
4662 /* Record the fields for the semantic handler. */
4663 FLD (f_GRi) = f_GRi;
4664 FLD (f_GRj) = f_GRj;
4665 FLD (f_FRk) = f_FRk;
4666 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldqf", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
4667
4668#if WITH_PROFILE_MODEL_P
4669 /* Record the fields for profiling. */
4670 if (PROFILE_MODEL_P (current_cpu))
4671 {
4672 FLD (in_GRi) = f_GRi;
4673 FLD (in_GRj) = f_GRj;
4674 }
4675#endif
4676#undef FLD
4677 return idesc;
4678 }
4679
4680 extract_sfmt_ldsbu:
4681 {
4682 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4683 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4684#define FLD(f) abuf->fields.sfmt_cldsbu.f
4685 UINT f_GRk;
4686 UINT f_GRi;
4687 UINT f_GRj;
4688
4689 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4690 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4691 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4692
4693 /* Record the fields for the semantic handler. */
4694 FLD (f_GRi) = f_GRi;
4695 FLD (f_GRj) = f_GRj;
4696 FLD (f_GRk) = f_GRk;
4697 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldsbu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4698
4699#if WITH_PROFILE_MODEL_P
4700 /* Record the fields for profiling. */
4701 if (PROFILE_MODEL_P (current_cpu))
4702 {
4703 FLD (in_GRi) = f_GRi;
4704 FLD (in_GRj) = f_GRj;
4705 FLD (out_GRi) = f_GRi;
4706 FLD (out_GRk) = f_GRk;
4707 }
4708#endif
4709#undef FLD
4710 return idesc;
4711 }
4712
4713 extract_sfmt_nldsbu:
4714 {
4715 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4716 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4717#define FLD(f) abuf->fields.sfmt_cldsbu.f
4718 UINT f_GRk;
4719 UINT f_GRi;
4720 UINT f_GRj;
4721
4722 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4723 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4724 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4725
4726 /* Record the fields for the semantic handler. */
4727 FLD (f_GRi) = f_GRi;
4728 FLD (f_GRj) = f_GRj;
4729 FLD (f_GRk) = f_GRk;
4730 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldsbu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4731
4732#if WITH_PROFILE_MODEL_P
4733 /* Record the fields for profiling. */
4734 if (PROFILE_MODEL_P (current_cpu))
4735 {
4736 FLD (in_GRi) = f_GRi;
4737 FLD (in_GRj) = f_GRj;
4738 FLD (out_GRi) = f_GRi;
4739 FLD (out_GRk) = f_GRk;
4740 }
4741#endif
4742#undef FLD
4743 return idesc;
4744 }
4745
4746 extract_sfmt_ldbfu:
4747 {
4748 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4749 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4750#define FLD(f) abuf->fields.sfmt_cldbfu.f
4751 UINT f_FRk;
4752 UINT f_GRi;
4753 UINT f_GRj;
4754
4755 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4756 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4757 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4758
4759 /* Record the fields for the semantic handler. */
4760 FLD (f_GRi) = f_GRi;
4761 FLD (f_GRj) = f_GRj;
4762 FLD (f_FRk) = f_FRk;
4763 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldbfu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
4764
4765#if WITH_PROFILE_MODEL_P
4766 /* Record the fields for profiling. */
4767 if (PROFILE_MODEL_P (current_cpu))
4768 {
4769 FLD (in_GRi) = f_GRi;
4770 FLD (in_GRj) = f_GRj;
4771 FLD (out_FRintk) = f_FRk;
4772 FLD (out_GRi) = f_GRi;
4773 }
4774#endif
4775#undef FLD
4776 return idesc;
4777 }
4778
4779 extract_sfmt_ldcu:
4780 {
4781 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4782 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4783#define FLD(f) abuf->fields.sfmt_ldcu.f
4784 UINT f_CPRk;
4785 UINT f_GRi;
4786 UINT f_GRj;
4787
4788 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4789 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4790 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4791
4792 /* Record the fields for the semantic handler. */
4793 FLD (f_GRi) = f_GRi;
4794 FLD (f_GRj) = f_GRj;
4795 FLD (f_CPRk) = f_CPRk;
4796 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldcu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_CPRk 0x%x", 'x', f_CPRk, (char *) 0));
4797
4798#if WITH_PROFILE_MODEL_P
4799 /* Record the fields for profiling. */
4800 if (PROFILE_MODEL_P (current_cpu))
4801 {
4802 FLD (in_GRi) = f_GRi;
4803 FLD (in_GRj) = f_GRj;
4804 FLD (out_CPRk) = f_CPRk;
4805 FLD (out_GRi) = f_GRi;
4806 }
4807#endif
4808#undef FLD
4809 return idesc;
4810 }
4811
4812 extract_sfmt_nldbfu:
4813 {
4814 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4815 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4816#define FLD(f) abuf->fields.sfmt_cldbfu.f
4817 UINT f_FRk;
4818 UINT f_GRi;
4819 UINT f_GRj;
4820
4821 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4822 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4823 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4824
4825 /* Record the fields for the semantic handler. */
4826 FLD (f_GRi) = f_GRi;
4827 FLD (f_GRj) = f_GRj;
4828 FLD (f_FRk) = f_FRk;
4829 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldbfu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
4830
4831#if WITH_PROFILE_MODEL_P
4832 /* Record the fields for profiling. */
4833 if (PROFILE_MODEL_P (current_cpu))
4834 {
4835 FLD (in_GRi) = f_GRi;
4836 FLD (in_GRj) = f_GRj;
4837 FLD (out_FRintk) = f_FRk;
4838 FLD (out_GRi) = f_GRi;
4839 }
4840#endif
4841#undef FLD
4842 return idesc;
4843 }
4844
4845 extract_sfmt_lddu:
4846 {
4847 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4848 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4849#define FLD(f) abuf->fields.sfmt_clddu.f
4850 UINT f_GRk;
4851 UINT f_GRi;
4852 UINT f_GRj;
4853
4854 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4855 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4856 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4857
4858 /* Record the fields for the semantic handler. */
4859 FLD (f_GRi) = f_GRi;
4860 FLD (f_GRj) = f_GRj;
4861 FLD (f_GRk) = f_GRk;
4862 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_lddu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4863
4864#if WITH_PROFILE_MODEL_P
4865 /* Record the fields for profiling. */
4866 if (PROFILE_MODEL_P (current_cpu))
4867 {
4868 FLD (in_GRi) = f_GRi;
4869 FLD (in_GRj) = f_GRj;
4870 FLD (out_GRdoublek) = f_GRk;
4871 FLD (out_GRi) = f_GRi;
4872 }
4873#endif
4874#undef FLD
4875 return idesc;
4876 }
4877
4878 extract_sfmt_nlddu:
4879 {
4880 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4881 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4882#define FLD(f) abuf->fields.sfmt_clddu.f
4883 UINT f_GRk;
4884 UINT f_GRi;
4885 UINT f_GRj;
4886
4887 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4888 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4889 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4890
4891 /* Record the fields for the semantic handler. */
4892 FLD (f_GRi) = f_GRi;
4893 FLD (f_GRj) = f_GRj;
4894 FLD (f_GRk) = f_GRk;
4895 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nlddu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
4896
4897#if WITH_PROFILE_MODEL_P
4898 /* Record the fields for profiling. */
4899 if (PROFILE_MODEL_P (current_cpu))
4900 {
4901 FLD (in_GRi) = f_GRi;
4902 FLD (in_GRj) = f_GRj;
4903 FLD (out_GRdoublek) = f_GRk;
4904 FLD (out_GRi) = f_GRi;
4905 }
4906#endif
4907#undef FLD
4908 return idesc;
4909 }
4910
4911 extract_sfmt_lddfu:
4912 {
4913 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4914 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4915#define FLD(f) abuf->fields.sfmt_clddfu.f
4916 UINT f_FRk;
4917 UINT f_GRi;
4918 UINT f_GRj;
4919
4920 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4921 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4922 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4923
4924 /* Record the fields for the semantic handler. */
4925 FLD (f_GRi) = f_GRi;
4926 FLD (f_GRj) = f_GRj;
4927 FLD (f_FRk) = f_FRk;
4928 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_lddfu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
4929
4930#if WITH_PROFILE_MODEL_P
4931 /* Record the fields for profiling. */
4932 if (PROFILE_MODEL_P (current_cpu))
4933 {
4934 FLD (in_GRi) = f_GRi;
4935 FLD (in_GRj) = f_GRj;
4936 FLD (out_FRdoublek) = f_FRk;
4937 FLD (out_GRi) = f_GRi;
4938 }
4939#endif
4940#undef FLD
4941 return idesc;
4942 }
4943
4944 extract_sfmt_lddcu:
4945 {
4946 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4947 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4948#define FLD(f) abuf->fields.sfmt_lddcu.f
4949 UINT f_CPRk;
4950 UINT f_GRi;
4951 UINT f_GRj;
4952
4953 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4954 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4955 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4956
4957 /* Record the fields for the semantic handler. */
4958 FLD (f_GRi) = f_GRi;
4959 FLD (f_GRj) = f_GRj;
4960 FLD (f_CPRk) = f_CPRk;
4961 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_lddcu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_CPRk 0x%x", 'x', f_CPRk, (char *) 0));
4962
4963#if WITH_PROFILE_MODEL_P
4964 /* Record the fields for profiling. */
4965 if (PROFILE_MODEL_P (current_cpu))
4966 {
4967 FLD (in_GRi) = f_GRi;
4968 FLD (in_GRj) = f_GRj;
4969 FLD (out_CPRdoublek) = f_CPRk;
4970 FLD (out_GRi) = f_GRi;
4971 }
4972#endif
4973#undef FLD
4974 return idesc;
4975 }
4976
4977 extract_sfmt_nlddfu:
4978 {
4979 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 4980 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
4981#define FLD(f) abuf->fields.sfmt_clddfu.f
4982 UINT f_FRk;
4983 UINT f_GRi;
4984 UINT f_GRj;
4985
4986 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
4987 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
4988 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
4989
4990 /* Record the fields for the semantic handler. */
4991 FLD (f_GRi) = f_GRi;
4992 FLD (f_GRj) = f_GRj;
4993 FLD (f_FRk) = f_FRk;
4994 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nlddfu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
4995
4996#if WITH_PROFILE_MODEL_P
4997 /* Record the fields for profiling. */
4998 if (PROFILE_MODEL_P (current_cpu))
4999 {
5000 FLD (in_GRi) = f_GRi;
5001 FLD (in_GRj) = f_GRj;
5002 FLD (out_FRdoublek) = f_FRk;
5003 FLD (out_GRi) = f_GRi;
5004 }
5005#endif
5006#undef FLD
5007 return idesc;
5008 }
5009
5010 extract_sfmt_ldqu:
5011 {
5012 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5013 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5014#define FLD(f) abuf->fields.sfmt_cstdu.f
5015 UINT f_GRk;
5016 UINT f_GRi;
5017 UINT f_GRj;
5018
5019 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5020 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5021 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5022
5023 /* Record the fields for the semantic handler. */
5024 FLD (f_GRi) = f_GRi;
5025 FLD (f_GRj) = f_GRj;
5026 FLD (f_GRk) = f_GRk;
5027 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldqu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
5028
5029#if WITH_PROFILE_MODEL_P
5030 /* Record the fields for profiling. */
5031 if (PROFILE_MODEL_P (current_cpu))
5032 {
5033 FLD (in_GRi) = f_GRi;
5034 FLD (in_GRj) = f_GRj;
5035 FLD (out_GRi) = f_GRi;
5036 }
5037#endif
5038#undef FLD
5039 return idesc;
5040 }
5041
5042 extract_sfmt_nldqu:
5043 {
5044 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5045 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5046#define FLD(f) abuf->fields.sfmt_cstdu.f
5047 UINT f_GRk;
5048 UINT f_GRi;
5049 UINT f_GRj;
5050
5051 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5052 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5053 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5054
5055 /* Record the fields for the semantic handler. */
5056 FLD (f_GRi) = f_GRi;
5057 FLD (f_GRj) = f_GRj;
5058 FLD (f_GRk) = f_GRk;
5059 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldqu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
5060
5061#if WITH_PROFILE_MODEL_P
5062 /* Record the fields for profiling. */
5063 if (PROFILE_MODEL_P (current_cpu))
5064 {
5065 FLD (in_GRi) = f_GRi;
5066 FLD (in_GRj) = f_GRj;
5067 FLD (out_GRi) = f_GRi;
5068 }
5069#endif
5070#undef FLD
5071 return idesc;
5072 }
5073
5074 extract_sfmt_ldqfu:
5075 {
5076 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5077 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5078#define FLD(f) abuf->fields.sfmt_cstdfu.f
5079 UINT f_FRk;
5080 UINT f_GRi;
5081 UINT f_GRj;
5082
5083 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5084 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5085 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5086
5087 /* Record the fields for the semantic handler. */
5088 FLD (f_GRi) = f_GRi;
5089 FLD (f_GRj) = f_GRj;
5090 FLD (f_FRk) = f_FRk;
5091 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldqfu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
5092
5093#if WITH_PROFILE_MODEL_P
5094 /* Record the fields for profiling. */
5095 if (PROFILE_MODEL_P (current_cpu))
5096 {
5097 FLD (in_GRi) = f_GRi;
5098 FLD (in_GRj) = f_GRj;
5099 FLD (out_GRi) = f_GRi;
5100 }
5101#endif
5102#undef FLD
5103 return idesc;
5104 }
5105
5106 extract_sfmt_ldqcu:
5107 {
5108 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5109 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5110#define FLD(f) abuf->fields.sfmt_stdcu.f
5111 UINT f_CPRk;
5112 UINT f_GRi;
5113 UINT f_GRj;
5114
5115 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5116 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5117 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5118
5119 /* Record the fields for the semantic handler. */
5120 FLD (f_GRi) = f_GRi;
5121 FLD (f_GRj) = f_GRj;
5122 FLD (f_CPRk) = f_CPRk;
5123 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldqcu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_CPRk 0x%x", 'x', f_CPRk, (char *) 0));
5124
5125#if WITH_PROFILE_MODEL_P
5126 /* Record the fields for profiling. */
5127 if (PROFILE_MODEL_P (current_cpu))
5128 {
5129 FLD (in_GRi) = f_GRi;
5130 FLD (in_GRj) = f_GRj;
5131 FLD (out_GRi) = f_GRi;
5132 }
5133#endif
5134#undef FLD
5135 return idesc;
5136 }
5137
5138 extract_sfmt_nldqfu:
5139 {
5140 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5141 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5142#define FLD(f) abuf->fields.sfmt_cstdfu.f
5143 UINT f_FRk;
5144 UINT f_GRi;
5145 UINT f_GRj;
5146
5147 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5148 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5149 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5150
5151 /* Record the fields for the semantic handler. */
5152 FLD (f_GRi) = f_GRi;
5153 FLD (f_GRj) = f_GRj;
5154 FLD (f_FRk) = f_FRk;
5155 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldqfu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
5156
5157#if WITH_PROFILE_MODEL_P
5158 /* Record the fields for profiling. */
5159 if (PROFILE_MODEL_P (current_cpu))
5160 {
5161 FLD (in_GRi) = f_GRi;
5162 FLD (in_GRj) = f_GRj;
5163 FLD (out_GRi) = f_GRi;
5164 }
5165#endif
5166#undef FLD
5167 return idesc;
5168 }
5169
5170 extract_sfmt_ldsbi:
5171 {
5172 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5173 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5174#define FLD(f) abuf->fields.sfmt_swapi.f
5175 UINT f_GRk;
5176 UINT f_GRi;
5177 INT f_d12;
5178
5179 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5180 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 5181 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
5182
5183 /* Record the fields for the semantic handler. */
5184 FLD (f_GRi) = f_GRi;
5185 FLD (f_d12) = f_d12;
5186 FLD (f_GRk) = f_GRk;
5187 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldsbi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
5188
5189#if WITH_PROFILE_MODEL_P
5190 /* Record the fields for profiling. */
5191 if (PROFILE_MODEL_P (current_cpu))
5192 {
5193 FLD (in_GRi) = f_GRi;
5194 FLD (out_GRk) = f_GRk;
5195 }
5196#endif
5197#undef FLD
5198 return idesc;
5199 }
5200
5201 extract_sfmt_ldbfi:
5202 {
5203 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5204 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5205#define FLD(f) abuf->fields.sfmt_ldbfi.f
5206 UINT f_FRk;
5207 UINT f_GRi;
5208 INT f_d12;
5209
5210 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5211 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 5212 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
5213
5214 /* Record the fields for the semantic handler. */
5215 FLD (f_GRi) = f_GRi;
5216 FLD (f_d12) = f_d12;
5217 FLD (f_FRk) = f_FRk;
5218 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldbfi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
5219
5220#if WITH_PROFILE_MODEL_P
5221 /* Record the fields for profiling. */
5222 if (PROFILE_MODEL_P (current_cpu))
5223 {
5224 FLD (in_GRi) = f_GRi;
5225 FLD (out_FRintk) = f_FRk;
5226 }
5227#endif
5228#undef FLD
5229 return idesc;
5230 }
5231
5232 extract_sfmt_nldsbi:
5233 {
5234 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5235 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5236#define FLD(f) abuf->fields.sfmt_swapi.f
5237 UINT f_GRk;
5238 UINT f_GRi;
5239 INT f_d12;
5240
5241 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5242 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 5243 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
5244
5245 /* Record the fields for the semantic handler. */
5246 FLD (f_GRi) = f_GRi;
5247 FLD (f_d12) = f_d12;
5248 FLD (f_GRk) = f_GRk;
5249 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldsbi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
5250
5251#if WITH_PROFILE_MODEL_P
5252 /* Record the fields for profiling. */
5253 if (PROFILE_MODEL_P (current_cpu))
5254 {
5255 FLD (in_GRi) = f_GRi;
5256 FLD (out_GRk) = f_GRk;
5257 }
5258#endif
5259#undef FLD
5260 return idesc;
5261 }
5262
5263 extract_sfmt_nldbfi:
5264 {
5265 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5266 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5267#define FLD(f) abuf->fields.sfmt_ldbfi.f
5268 UINT f_FRk;
5269 UINT f_GRi;
5270 INT f_d12;
5271
5272 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5273 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 5274 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
5275
5276 /* Record the fields for the semantic handler. */
5277 FLD (f_GRi) = f_GRi;
5278 FLD (f_d12) = f_d12;
5279 FLD (f_FRk) = f_FRk;
5280 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldbfi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
5281
5282#if WITH_PROFILE_MODEL_P
5283 /* Record the fields for profiling. */
5284 if (PROFILE_MODEL_P (current_cpu))
5285 {
5286 FLD (in_GRi) = f_GRi;
5287 FLD (out_FRintk) = f_FRk;
5288 }
5289#endif
5290#undef FLD
5291 return idesc;
5292 }
5293
5294 extract_sfmt_lddi:
5295 {
5296 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5297 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5298#define FLD(f) abuf->fields.sfmt_smuli.f
5299 UINT f_GRk;
5300 UINT f_GRi;
5301 INT f_d12;
5302
5303 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5304 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 5305 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
5306
5307 /* Record the fields for the semantic handler. */
5308 FLD (f_GRi) = f_GRi;
5309 FLD (f_d12) = f_d12;
5310 FLD (f_GRk) = f_GRk;
5311 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_lddi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
5312
5313#if WITH_PROFILE_MODEL_P
5314 /* Record the fields for profiling. */
5315 if (PROFILE_MODEL_P (current_cpu))
5316 {
5317 FLD (in_GRi) = f_GRi;
5318 FLD (out_GRdoublek) = f_GRk;
5319 }
5320#endif
5321#undef FLD
5322 return idesc;
5323 }
5324
5325 extract_sfmt_lddfi:
5326 {
5327 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5328 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5329#define FLD(f) abuf->fields.sfmt_lddfi.f
5330 UINT f_FRk;
5331 UINT f_GRi;
5332 INT f_d12;
5333
5334 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5335 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 5336 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
5337
5338 /* Record the fields for the semantic handler. */
5339 FLD (f_GRi) = f_GRi;
5340 FLD (f_d12) = f_d12;
5341 FLD (f_FRk) = f_FRk;
5342 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_lddfi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
5343
5344#if WITH_PROFILE_MODEL_P
5345 /* Record the fields for profiling. */
5346 if (PROFILE_MODEL_P (current_cpu))
5347 {
5348 FLD (in_GRi) = f_GRi;
5349 FLD (out_FRdoublek) = f_FRk;
5350 }
5351#endif
5352#undef FLD
5353 return idesc;
5354 }
5355
5356 extract_sfmt_nlddi:
5357 {
5358 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5359 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5360#define FLD(f) abuf->fields.sfmt_smuli.f
5361 UINT f_GRk;
5362 UINT f_GRi;
5363 INT f_d12;
5364
5365 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5366 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 5367 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
5368
5369 /* Record the fields for the semantic handler. */
5370 FLD (f_GRi) = f_GRi;
5371 FLD (f_d12) = f_d12;
5372 FLD (f_GRk) = f_GRk;
5373 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nlddi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
5374
5375#if WITH_PROFILE_MODEL_P
5376 /* Record the fields for profiling. */
5377 if (PROFILE_MODEL_P (current_cpu))
5378 {
5379 FLD (in_GRi) = f_GRi;
5380 FLD (out_GRdoublek) = f_GRk;
5381 }
5382#endif
5383#undef FLD
5384 return idesc;
5385 }
5386
5387 extract_sfmt_nlddfi:
5388 {
5389 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5390 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5391#define FLD(f) abuf->fields.sfmt_lddfi.f
5392 UINT f_FRk;
5393 UINT f_GRi;
5394 INT f_d12;
5395
5396 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5397 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 5398 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
5399
5400 /* Record the fields for the semantic handler. */
5401 FLD (f_GRi) = f_GRi;
5402 FLD (f_d12) = f_d12;
5403 FLD (f_FRk) = f_FRk;
5404 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nlddfi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
5405
5406#if WITH_PROFILE_MODEL_P
5407 /* Record the fields for profiling. */
5408 if (PROFILE_MODEL_P (current_cpu))
5409 {
5410 FLD (in_GRi) = f_GRi;
5411 FLD (out_FRdoublek) = f_FRk;
5412 }
5413#endif
5414#undef FLD
5415 return idesc;
5416 }
5417
5418 extract_sfmt_ldqi:
5419 {
5420 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5421 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5422#define FLD(f) abuf->fields.sfmt_stdi.f
5423 UINT f_GRk;
5424 UINT f_GRi;
5425 INT f_d12;
5426
5427 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5428 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 5429 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
5430
5431 /* Record the fields for the semantic handler. */
5432 FLD (f_GRi) = f_GRi;
5433 FLD (f_d12) = f_d12;
5434 FLD (f_GRk) = f_GRk;
5435 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldqi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
5436
5437#if WITH_PROFILE_MODEL_P
5438 /* Record the fields for profiling. */
5439 if (PROFILE_MODEL_P (current_cpu))
5440 {
5441 FLD (in_GRi) = f_GRi;
5442 }
5443#endif
5444#undef FLD
5445 return idesc;
5446 }
5447
5448 extract_sfmt_ldqfi:
5449 {
5450 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5451 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5452#define FLD(f) abuf->fields.sfmt_stdfi.f
5453 UINT f_FRk;
5454 UINT f_GRi;
5455 INT f_d12;
5456
5457 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5458 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 5459 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
5460
5461 /* Record the fields for the semantic handler. */
5462 FLD (f_GRi) = f_GRi;
5463 FLD (f_d12) = f_d12;
5464 FLD (f_FRk) = f_FRk;
5465 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ldqfi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
5466
b34f6357
DB
5467#if WITH_PROFILE_MODEL_P
5468 /* Record the fields for profiling. */
5469 if (PROFILE_MODEL_P (current_cpu))
5470 {
5471 FLD (in_GRi) = f_GRi;
5472 }
5473#endif
5474#undef FLD
5475 return idesc;
5476 }
5477
5478 extract_sfmt_nldqfi:
5479 {
5480 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5481 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5482#define FLD(f) abuf->fields.sfmt_stdfi.f
5483 UINT f_FRk;
5484 UINT f_GRi;
5485 INT f_d12;
5486
5487 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5488 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 5489 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
5490
5491 /* Record the fields for the semantic handler. */
5492 FLD (f_GRi) = f_GRi;
5493 FLD (f_d12) = f_d12;
5494 FLD (f_FRk) = f_FRk;
5495 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nldqfi", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
5496
5497#if WITH_PROFILE_MODEL_P
5498 /* Record the fields for profiling. */
5499 if (PROFILE_MODEL_P (current_cpu))
5500 {
5501 FLD (in_GRi) = f_GRi;
5502 }
5503#endif
5504#undef FLD
5505 return idesc;
5506 }
5507
5508 extract_sfmt_stb:
5509 {
5510 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5511 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5512#define FLD(f) abuf->fields.sfmt_cswap.f
5513 UINT f_GRk;
5514 UINT f_GRi;
5515 UINT f_GRj;
5516
5517 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5518 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5519 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5520
5521 /* Record the fields for the semantic handler. */
5522 FLD (f_GRi) = f_GRi;
5523 FLD (f_GRj) = f_GRj;
5524 FLD (f_GRk) = f_GRk;
5525 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stb", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
5526
5527#if WITH_PROFILE_MODEL_P
5528 /* Record the fields for profiling. */
5529 if (PROFILE_MODEL_P (current_cpu))
5530 {
5531 FLD (in_GRi) = f_GRi;
5532 FLD (in_GRj) = f_GRj;
5533 FLD (in_GRk) = f_GRk;
5534 }
5535#endif
5536#undef FLD
5537 return idesc;
5538 }
5539
5540 extract_sfmt_stbf:
5541 {
5542 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5543 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5544#define FLD(f) abuf->fields.sfmt_cstbfu.f
5545 UINT f_FRk;
5546 UINT f_GRi;
5547 UINT f_GRj;
5548
5549 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5550 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5551 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5552
5553 /* Record the fields for the semantic handler. */
5554 FLD (f_FRk) = f_FRk;
5555 FLD (f_GRi) = f_GRi;
5556 FLD (f_GRj) = f_GRj;
5557 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stbf", "f_FRk 0x%x", 'x', f_FRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
5558
5559#if WITH_PROFILE_MODEL_P
5560 /* Record the fields for profiling. */
5561 if (PROFILE_MODEL_P (current_cpu))
5562 {
5563 FLD (in_FRintk) = f_FRk;
5564 FLD (in_GRi) = f_GRi;
5565 FLD (in_GRj) = f_GRj;
5566 }
5567#endif
5568#undef FLD
5569 return idesc;
5570 }
5571
5572 extract_sfmt_stc:
5573 {
5574 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5575 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5576#define FLD(f) abuf->fields.sfmt_stcu.f
5577 UINT f_CPRk;
5578 UINT f_GRi;
5579 UINT f_GRj;
5580
5581 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5582 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5583 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5584
5585 /* Record the fields for the semantic handler. */
5586 FLD (f_CPRk) = f_CPRk;
5587 FLD (f_GRi) = f_GRi;
5588 FLD (f_GRj) = f_GRj;
5589 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stc", "f_CPRk 0x%x", 'x', f_CPRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
5590
5591#if WITH_PROFILE_MODEL_P
5592 /* Record the fields for profiling. */
5593 if (PROFILE_MODEL_P (current_cpu))
5594 {
5595 FLD (in_CPRk) = f_CPRk;
5596 FLD (in_GRi) = f_GRi;
5597 FLD (in_GRj) = f_GRj;
5598 }
5599#endif
b34f6357
DB
5600#undef FLD
5601 return idesc;
5602 }
5603
5604 extract_sfmt_std:
5605 {
5606 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5607 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5608#define FLD(f) abuf->fields.sfmt_cstdu.f
5609 UINT f_GRk;
5610 UINT f_GRi;
5611 UINT f_GRj;
5612
5613 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5614 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5615 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5616
5617 /* Record the fields for the semantic handler. */
5618 FLD (f_GRk) = f_GRk;
5619 FLD (f_GRi) = f_GRi;
5620 FLD (f_GRj) = f_GRj;
5621 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_std", "f_GRk 0x%x", 'x', f_GRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
5622
5623#if WITH_PROFILE_MODEL_P
5624 /* Record the fields for profiling. */
5625 if (PROFILE_MODEL_P (current_cpu))
5626 {
5627 FLD (in_GRdoublek) = f_GRk;
5628 FLD (in_GRi) = f_GRi;
5629 FLD (in_GRj) = f_GRj;
5630 }
5631#endif
5632#undef FLD
5633 return idesc;
5634 }
5635
5636 extract_sfmt_stdf:
5637 {
5638 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5639 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5640#define FLD(f) abuf->fields.sfmt_cstdfu.f
5641 UINT f_FRk;
5642 UINT f_GRi;
5643 UINT f_GRj;
5644
5645 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5646 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5647 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5648
5649 /* Record the fields for the semantic handler. */
5650 FLD (f_FRk) = f_FRk;
5651 FLD (f_GRi) = f_GRi;
5652 FLD (f_GRj) = f_GRj;
5653 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stdf", "f_FRk 0x%x", 'x', f_FRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
5654
5655#if WITH_PROFILE_MODEL_P
5656 /* Record the fields for profiling. */
5657 if (PROFILE_MODEL_P (current_cpu))
5658 {
5659 FLD (in_FRdoublek) = f_FRk;
5660 FLD (in_GRi) = f_GRi;
5661 FLD (in_GRj) = f_GRj;
5662 }
5663#endif
5664#undef FLD
5665 return idesc;
5666 }
5667
5668 extract_sfmt_stdc:
5669 {
5670 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5671 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5672#define FLD(f) abuf->fields.sfmt_stdcu.f
5673 UINT f_CPRk;
5674 UINT f_GRi;
5675 UINT f_GRj;
5676
5677 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5678 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5679 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5680
5681 /* Record the fields for the semantic handler. */
5682 FLD (f_CPRk) = f_CPRk;
5683 FLD (f_GRi) = f_GRi;
5684 FLD (f_GRj) = f_GRj;
5685 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stdc", "f_CPRk 0x%x", 'x', f_CPRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
5686
5687#if WITH_PROFILE_MODEL_P
5688 /* Record the fields for profiling. */
5689 if (PROFILE_MODEL_P (current_cpu))
5690 {
5691 FLD (in_CPRdoublek) = f_CPRk;
5692 FLD (in_GRi) = f_GRi;
5693 FLD (in_GRj) = f_GRj;
5694 }
5695#endif
b34f6357
DB
5696#undef FLD
5697 return idesc;
5698 }
5699
5700 extract_sfmt_stbu:
5701 {
5702 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5703 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5704#define FLD(f) abuf->fields.sfmt_cstbu.f
5705 UINT f_GRk;
5706 UINT f_GRi;
5707 UINT f_GRj;
5708
5709 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5710 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5711 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5712
5713 /* Record the fields for the semantic handler. */
5714 FLD (f_GRi) = f_GRi;
5715 FLD (f_GRj) = f_GRj;
5716 FLD (f_GRk) = f_GRk;
5717 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stbu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
5718
5719#if WITH_PROFILE_MODEL_P
5720 /* Record the fields for profiling. */
5721 if (PROFILE_MODEL_P (current_cpu))
5722 {
5723 FLD (in_GRi) = f_GRi;
5724 FLD (in_GRj) = f_GRj;
5725 FLD (in_GRk) = f_GRk;
5726 FLD (out_GRi) = f_GRi;
5727 }
5728#endif
5729#undef FLD
5730 return idesc;
5731 }
5732
5733 extract_sfmt_stbfu:
5734 {
5735 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5736 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5737#define FLD(f) abuf->fields.sfmt_cstbfu.f
5738 UINT f_FRk;
5739 UINT f_GRi;
5740 UINT f_GRj;
5741
5742 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5743 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5744 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5745
5746 /* Record the fields for the semantic handler. */
5747 FLD (f_FRk) = f_FRk;
5748 FLD (f_GRi) = f_GRi;
5749 FLD (f_GRj) = f_GRj;
5750 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stbfu", "f_FRk 0x%x", 'x', f_FRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
5751
5752#if WITH_PROFILE_MODEL_P
5753 /* Record the fields for profiling. */
5754 if (PROFILE_MODEL_P (current_cpu))
5755 {
5756 FLD (in_FRintk) = f_FRk;
5757 FLD (in_GRi) = f_GRi;
5758 FLD (in_GRj) = f_GRj;
5759 FLD (out_GRi) = f_GRi;
5760 }
5761#endif
5762#undef FLD
5763 return idesc;
5764 }
5765
5766 extract_sfmt_stcu:
5767 {
5768 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5769 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5770#define FLD(f) abuf->fields.sfmt_stcu.f
5771 UINT f_CPRk;
5772 UINT f_GRi;
5773 UINT f_GRj;
5774
5775 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5776 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5777 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5778
5779 /* Record the fields for the semantic handler. */
5780 FLD (f_CPRk) = f_CPRk;
5781 FLD (f_GRi) = f_GRi;
5782 FLD (f_GRj) = f_GRj;
5783 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stcu", "f_CPRk 0x%x", 'x', f_CPRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
5784
5785#if WITH_PROFILE_MODEL_P
5786 /* Record the fields for profiling. */
5787 if (PROFILE_MODEL_P (current_cpu))
5788 {
5789 FLD (in_CPRk) = f_CPRk;
5790 FLD (in_GRi) = f_GRi;
5791 FLD (in_GRj) = f_GRj;
5792 FLD (out_GRi) = f_GRi;
5793 }
5794#endif
5795#undef FLD
5796 return idesc;
5797 }
5798
5799 extract_sfmt_stdu:
5800 {
5801 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5802 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5803#define FLD(f) abuf->fields.sfmt_cstdu.f
5804 UINT f_GRk;
5805 UINT f_GRi;
5806 UINT f_GRj;
5807
5808 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5809 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5810 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5811
5812 /* Record the fields for the semantic handler. */
5813 FLD (f_GRk) = f_GRk;
5814 FLD (f_GRi) = f_GRi;
5815 FLD (f_GRj) = f_GRj;
5816 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stdu", "f_GRk 0x%x", 'x', f_GRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
5817
5818#if WITH_PROFILE_MODEL_P
5819 /* Record the fields for profiling. */
5820 if (PROFILE_MODEL_P (current_cpu))
5821 {
5822 FLD (in_GRdoublek) = f_GRk;
5823 FLD (in_GRi) = f_GRi;
5824 FLD (in_GRj) = f_GRj;
5825 FLD (out_GRi) = f_GRi;
5826 }
5827#endif
5828#undef FLD
5829 return idesc;
5830 }
5831
5832 extract_sfmt_stdfu:
5833 {
5834 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5835 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5836#define FLD(f) abuf->fields.sfmt_cstdfu.f
5837 UINT f_FRk;
5838 UINT f_GRi;
5839 UINT f_GRj;
5840
5841 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5842 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5843 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5844
5845 /* Record the fields for the semantic handler. */
5846 FLD (f_FRk) = f_FRk;
5847 FLD (f_GRi) = f_GRi;
5848 FLD (f_GRj) = f_GRj;
5849 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stdfu", "f_FRk 0x%x", 'x', f_FRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
5850
5851#if WITH_PROFILE_MODEL_P
5852 /* Record the fields for profiling. */
5853 if (PROFILE_MODEL_P (current_cpu))
5854 {
5855 FLD (in_FRdoublek) = f_FRk;
5856 FLD (in_GRi) = f_GRi;
5857 FLD (in_GRj) = f_GRj;
5858 FLD (out_GRi) = f_GRi;
5859 }
5860#endif
5861#undef FLD
5862 return idesc;
5863 }
5864
5865 extract_sfmt_stdcu:
5866 {
5867 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5868 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5869#define FLD(f) abuf->fields.sfmt_stdcu.f
5870 UINT f_CPRk;
5871 UINT f_GRi;
5872 UINT f_GRj;
5873
5874 f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5875 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5876 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5877
5878 /* Record the fields for the semantic handler. */
5879 FLD (f_CPRk) = f_CPRk;
5880 FLD (f_GRi) = f_GRi;
5881 FLD (f_GRj) = f_GRj;
5882 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stdcu", "f_CPRk 0x%x", 'x', f_CPRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
5883
5884#if WITH_PROFILE_MODEL_P
5885 /* Record the fields for profiling. */
5886 if (PROFILE_MODEL_P (current_cpu))
5887 {
5888 FLD (in_CPRdoublek) = f_CPRk;
5889 FLD (in_GRi) = f_GRi;
5890 FLD (in_GRj) = f_GRj;
5891 FLD (out_GRi) = f_GRi;
5892 }
5893#endif
5894#undef FLD
5895 return idesc;
5896 }
5897
5898 extract_sfmt_stqu:
5899 {
5900 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5901 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5902#define FLD(f) abuf->fields.sfmt_cstdu.f
5903 UINT f_GRk;
5904 UINT f_GRi;
5905 UINT f_GRj;
5906
5907 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5908 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5909 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5910
5911 /* Record the fields for the semantic handler. */
5912 FLD (f_GRi) = f_GRi;
5913 FLD (f_GRj) = f_GRj;
5914 FLD (f_GRk) = f_GRk;
5915 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stqu", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
5916
5917#if WITH_PROFILE_MODEL_P
5918 /* Record the fields for profiling. */
5919 if (PROFILE_MODEL_P (current_cpu))
5920 {
5921 FLD (in_GRi) = f_GRi;
5922 FLD (in_GRj) = f_GRj;
5923 FLD (out_GRi) = f_GRi;
5924 }
5925#endif
5926#undef FLD
5927 return idesc;
5928 }
5929
5930 extract_sfmt_cldsb:
5931 {
5932 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5933 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5934#define FLD(f) abuf->fields.sfmt_cswap.f
5935 UINT f_GRk;
5936 UINT f_GRi;
5937 UINT f_CCi;
5938 UINT f_cond;
5939 UINT f_GRj;
5940
5941 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5942 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5943 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
5944 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
5945 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5946
5947 /* Record the fields for the semantic handler. */
5948 FLD (f_CCi) = f_CCi;
5949 FLD (f_GRi) = f_GRi;
5950 FLD (f_GRj) = f_GRj;
5951 FLD (f_cond) = f_cond;
5952 FLD (f_GRk) = f_GRk;
5953 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cldsb", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
5954
5955#if WITH_PROFILE_MODEL_P
5956 /* Record the fields for profiling. */
5957 if (PROFILE_MODEL_P (current_cpu))
5958 {
5959 FLD (in_CCi) = f_CCi;
5960 FLD (in_GRi) = f_GRi;
5961 FLD (in_GRj) = f_GRj;
5962 FLD (out_GRk) = f_GRk;
5963 }
5964#endif
5965#undef FLD
5966 return idesc;
5967 }
5968
5969 extract_sfmt_cldbf:
5970 {
5971 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 5972 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
5973#define FLD(f) abuf->fields.sfmt_cldbfu.f
5974 UINT f_FRk;
5975 UINT f_GRi;
5976 UINT f_CCi;
5977 UINT f_cond;
5978 UINT f_GRj;
5979
5980 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
5981 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
5982 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
5983 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
5984 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
5985
5986 /* Record the fields for the semantic handler. */
5987 FLD (f_CCi) = f_CCi;
5988 FLD (f_GRi) = f_GRi;
5989 FLD (f_GRj) = f_GRj;
5990 FLD (f_cond) = f_cond;
5991 FLD (f_FRk) = f_FRk;
5992 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cldbf", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
5993
5994#if WITH_PROFILE_MODEL_P
5995 /* Record the fields for profiling. */
5996 if (PROFILE_MODEL_P (current_cpu))
5997 {
5998 FLD (in_CCi) = f_CCi;
5999 FLD (in_GRi) = f_GRi;
6000 FLD (in_GRj) = f_GRj;
6001 FLD (out_FRintk) = f_FRk;
6002 }
6003#endif
6004#undef FLD
6005 return idesc;
6006 }
6007
6008 extract_sfmt_cldd:
6009 {
6010 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6011 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6012#define FLD(f) abuf->fields.sfmt_clddu.f
6013 UINT f_GRk;
6014 UINT f_GRi;
6015 UINT f_CCi;
6016 UINT f_cond;
6017 UINT f_GRj;
6018
6019 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6020 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6021 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6022 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6023 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6024
6025 /* Record the fields for the semantic handler. */
6026 FLD (f_CCi) = f_CCi;
6027 FLD (f_GRi) = f_GRi;
6028 FLD (f_GRj) = f_GRj;
6029 FLD (f_cond) = f_cond;
6030 FLD (f_GRk) = f_GRk;
6031 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cldd", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
6032
6033#if WITH_PROFILE_MODEL_P
6034 /* Record the fields for profiling. */
6035 if (PROFILE_MODEL_P (current_cpu))
6036 {
6037 FLD (in_CCi) = f_CCi;
6038 FLD (in_GRi) = f_GRi;
6039 FLD (in_GRj) = f_GRj;
6040 FLD (out_GRdoublek) = f_GRk;
6041 }
6042#endif
6043#undef FLD
6044 return idesc;
6045 }
6046
6047 extract_sfmt_clddf:
6048 {
6049 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6050 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6051#define FLD(f) abuf->fields.sfmt_clddfu.f
6052 UINT f_FRk;
6053 UINT f_GRi;
6054 UINT f_CCi;
6055 UINT f_cond;
6056 UINT f_GRj;
6057
6058 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6059 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6060 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6061 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6062 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6063
6064 /* Record the fields for the semantic handler. */
6065 FLD (f_CCi) = f_CCi;
6066 FLD (f_GRi) = f_GRi;
6067 FLD (f_GRj) = f_GRj;
6068 FLD (f_cond) = f_cond;
6069 FLD (f_FRk) = f_FRk;
6070 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_clddf", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
6071
6072#if WITH_PROFILE_MODEL_P
6073 /* Record the fields for profiling. */
6074 if (PROFILE_MODEL_P (current_cpu))
6075 {
6076 FLD (in_CCi) = f_CCi;
6077 FLD (in_GRi) = f_GRi;
6078 FLD (in_GRj) = f_GRj;
6079 FLD (out_FRdoublek) = f_FRk;
6080 }
6081#endif
6082#undef FLD
6083 return idesc;
6084 }
6085
6086 extract_sfmt_cldq:
6087 {
6088 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6089 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6090#define FLD(f) abuf->fields.sfmt_cswap.f
6091 UINT f_GRk;
6092 UINT f_GRi;
6093 UINT f_CCi;
6094 UINT f_cond;
6095 UINT f_GRj;
6096
6097 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6098 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6099 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6100 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6101 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6102
6103 /* Record the fields for the semantic handler. */
6104 FLD (f_CCi) = f_CCi;
6105 FLD (f_GRi) = f_GRi;
6106 FLD (f_GRj) = f_GRj;
6107 FLD (f_cond) = f_cond;
6108 FLD (f_GRk) = f_GRk;
6109 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cldq", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
6110
6111#if WITH_PROFILE_MODEL_P
6112 /* Record the fields for profiling. */
6113 if (PROFILE_MODEL_P (current_cpu))
6114 {
6115 FLD (in_CCi) = f_CCi;
6116 FLD (in_GRi) = f_GRi;
6117 FLD (in_GRj) = f_GRj;
6118 }
6119#endif
6120#undef FLD
6121 return idesc;
6122 }
6123
6124 extract_sfmt_cldsbu:
6125 {
6126 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6127 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6128#define FLD(f) abuf->fields.sfmt_cldsbu.f
6129 UINT f_GRk;
6130 UINT f_GRi;
6131 UINT f_CCi;
6132 UINT f_cond;
6133 UINT f_GRj;
6134
6135 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6136 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6137 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6138 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6139 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6140
6141 /* Record the fields for the semantic handler. */
6142 FLD (f_CCi) = f_CCi;
6143 FLD (f_GRi) = f_GRi;
6144 FLD (f_GRj) = f_GRj;
6145 FLD (f_cond) = f_cond;
6146 FLD (f_GRk) = f_GRk;
6147 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cldsbu", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
6148
6149#if WITH_PROFILE_MODEL_P
6150 /* Record the fields for profiling. */
6151 if (PROFILE_MODEL_P (current_cpu))
6152 {
6153 FLD (in_CCi) = f_CCi;
6154 FLD (in_GRi) = f_GRi;
6155 FLD (in_GRj) = f_GRj;
6156 FLD (out_GRi) = f_GRi;
6157 FLD (out_GRk) = f_GRk;
6158 }
6159#endif
6160#undef FLD
6161 return idesc;
6162 }
6163
6164 extract_sfmt_cldbfu:
6165 {
6166 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6167 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6168#define FLD(f) abuf->fields.sfmt_cldbfu.f
6169 UINT f_FRk;
6170 UINT f_GRi;
6171 UINT f_CCi;
6172 UINT f_cond;
6173 UINT f_GRj;
6174
6175 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6176 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6177 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6178 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6179 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6180
6181 /* Record the fields for the semantic handler. */
6182 FLD (f_CCi) = f_CCi;
6183 FLD (f_GRi) = f_GRi;
6184 FLD (f_GRj) = f_GRj;
6185 FLD (f_cond) = f_cond;
6186 FLD (f_FRk) = f_FRk;
6187 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cldbfu", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
6188
6189#if WITH_PROFILE_MODEL_P
6190 /* Record the fields for profiling. */
6191 if (PROFILE_MODEL_P (current_cpu))
6192 {
6193 FLD (in_CCi) = f_CCi;
6194 FLD (in_GRi) = f_GRi;
6195 FLD (in_GRj) = f_GRj;
6196 FLD (out_FRintk) = f_FRk;
6197 FLD (out_GRi) = f_GRi;
6198 }
6199#endif
6200#undef FLD
6201 return idesc;
6202 }
6203
6204 extract_sfmt_clddu:
6205 {
6206 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6207 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6208#define FLD(f) abuf->fields.sfmt_clddu.f
6209 UINT f_GRk;
6210 UINT f_GRi;
6211 UINT f_CCi;
6212 UINT f_cond;
6213 UINT f_GRj;
6214
6215 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6216 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6217 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6218 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6219 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6220
6221 /* Record the fields for the semantic handler. */
6222 FLD (f_CCi) = f_CCi;
6223 FLD (f_GRi) = f_GRi;
6224 FLD (f_GRj) = f_GRj;
6225 FLD (f_cond) = f_cond;
6226 FLD (f_GRk) = f_GRk;
6227 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_clddu", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
6228
6229#if WITH_PROFILE_MODEL_P
6230 /* Record the fields for profiling. */
6231 if (PROFILE_MODEL_P (current_cpu))
6232 {
6233 FLD (in_CCi) = f_CCi;
6234 FLD (in_GRi) = f_GRi;
6235 FLD (in_GRj) = f_GRj;
6236 FLD (out_GRdoublek) = f_GRk;
6237 FLD (out_GRi) = f_GRi;
6238 }
6239#endif
6240#undef FLD
6241 return idesc;
6242 }
6243
6244 extract_sfmt_clddfu:
6245 {
6246 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6247 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6248#define FLD(f) abuf->fields.sfmt_clddfu.f
6249 UINT f_FRk;
6250 UINT f_GRi;
6251 UINT f_CCi;
6252 UINT f_cond;
6253 UINT f_GRj;
6254
6255 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6256 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6257 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6258 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6259 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6260
6261 /* Record the fields for the semantic handler. */
6262 FLD (f_CCi) = f_CCi;
6263 FLD (f_GRi) = f_GRi;
6264 FLD (f_GRj) = f_GRj;
6265 FLD (f_cond) = f_cond;
6266 FLD (f_FRk) = f_FRk;
6267 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_clddfu", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
6268
6269#if WITH_PROFILE_MODEL_P
6270 /* Record the fields for profiling. */
6271 if (PROFILE_MODEL_P (current_cpu))
6272 {
6273 FLD (in_CCi) = f_CCi;
6274 FLD (in_GRi) = f_GRi;
6275 FLD (in_GRj) = f_GRj;
6276 FLD (out_FRdoublek) = f_FRk;
6277 FLD (out_GRi) = f_GRi;
6278 }
6279#endif
6280#undef FLD
6281 return idesc;
6282 }
6283
6284 extract_sfmt_cldqu:
6285 {
6286 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6287 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6288#define FLD(f) abuf->fields.sfmt_cstdu.f
6289 UINT f_GRk;
6290 UINT f_GRi;
6291 UINT f_CCi;
6292 UINT f_cond;
6293 UINT f_GRj;
6294
6295 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6296 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6297 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6298 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6299 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6300
6301 /* Record the fields for the semantic handler. */
6302 FLD (f_CCi) = f_CCi;
6303 FLD (f_GRi) = f_GRi;
6304 FLD (f_GRj) = f_GRj;
6305 FLD (f_cond) = f_cond;
6306 FLD (f_GRk) = f_GRk;
6307 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cldqu", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
6308
6309#if WITH_PROFILE_MODEL_P
6310 /* Record the fields for profiling. */
6311 if (PROFILE_MODEL_P (current_cpu))
6312 {
6313 FLD (in_CCi) = f_CCi;
6314 FLD (in_GRi) = f_GRi;
6315 FLD (in_GRj) = f_GRj;
6316 FLD (out_GRi) = f_GRi;
6317 }
6318#endif
6319#undef FLD
6320 return idesc;
6321 }
6322
6323 extract_sfmt_cstb:
6324 {
6325 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6326 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6327#define FLD(f) abuf->fields.sfmt_cswap.f
6328 UINT f_GRk;
6329 UINT f_GRi;
6330 UINT f_CCi;
6331 UINT f_cond;
6332 UINT f_GRj;
6333
6334 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6335 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6336 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6337 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6338 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6339
6340 /* Record the fields for the semantic handler. */
6341 FLD (f_CCi) = f_CCi;
6342 FLD (f_GRi) = f_GRi;
6343 FLD (f_GRj) = f_GRj;
6344 FLD (f_GRk) = f_GRk;
6345 FLD (f_cond) = f_cond;
6346 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cstb", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, "f_cond 0x%x", 'x', f_cond, (char *) 0));
6347
6348#if WITH_PROFILE_MODEL_P
6349 /* Record the fields for profiling. */
6350 if (PROFILE_MODEL_P (current_cpu))
6351 {
6352 FLD (in_CCi) = f_CCi;
6353 FLD (in_GRi) = f_GRi;
6354 FLD (in_GRj) = f_GRj;
6355 FLD (in_GRk) = f_GRk;
6356 }
6357#endif
6358#undef FLD
6359 return idesc;
6360 }
6361
6362 extract_sfmt_cstbf:
6363 {
6364 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6365 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6366#define FLD(f) abuf->fields.sfmt_cstbfu.f
6367 UINT f_FRk;
6368 UINT f_GRi;
6369 UINT f_CCi;
6370 UINT f_cond;
6371 UINT f_GRj;
6372
6373 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6374 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6375 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6376 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6377 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6378
6379 /* Record the fields for the semantic handler. */
6380 FLD (f_CCi) = f_CCi;
6381 FLD (f_FRk) = f_FRk;
6382 FLD (f_GRi) = f_GRi;
6383 FLD (f_GRj) = f_GRj;
6384 FLD (f_cond) = f_cond;
6385 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cstbf", "f_CCi 0x%x", 'x', f_CCi, "f_FRk 0x%x", 'x', f_FRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, (char *) 0));
6386
6387#if WITH_PROFILE_MODEL_P
6388 /* Record the fields for profiling. */
6389 if (PROFILE_MODEL_P (current_cpu))
6390 {
6391 FLD (in_CCi) = f_CCi;
6392 FLD (in_FRintk) = f_FRk;
6393 FLD (in_GRi) = f_GRi;
6394 FLD (in_GRj) = f_GRj;
6395 }
6396#endif
6397#undef FLD
6398 return idesc;
6399 }
6400
6401 extract_sfmt_cstd:
6402 {
6403 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6404 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6405#define FLD(f) abuf->fields.sfmt_cstdu.f
6406 UINT f_GRk;
6407 UINT f_GRi;
6408 UINT f_CCi;
6409 UINT f_cond;
6410 UINT f_GRj;
6411
6412 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6413 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6414 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6415 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6416 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6417
6418 /* Record the fields for the semantic handler. */
6419 FLD (f_CCi) = f_CCi;
6420 FLD (f_GRk) = f_GRk;
6421 FLD (f_GRi) = f_GRi;
6422 FLD (f_GRj) = f_GRj;
6423 FLD (f_cond) = f_cond;
6424 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cstd", "f_CCi 0x%x", 'x', f_CCi, "f_GRk 0x%x", 'x', f_GRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, (char *) 0));
6425
6426#if WITH_PROFILE_MODEL_P
6427 /* Record the fields for profiling. */
6428 if (PROFILE_MODEL_P (current_cpu))
6429 {
6430 FLD (in_CCi) = f_CCi;
6431 FLD (in_GRdoublek) = f_GRk;
6432 FLD (in_GRi) = f_GRi;
6433 FLD (in_GRj) = f_GRj;
6434 }
6435#endif
6436#undef FLD
6437 return idesc;
6438 }
6439
6440 extract_sfmt_cstdf:
6441 {
6442 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6443 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6444#define FLD(f) abuf->fields.sfmt_cstdfu.f
6445 UINT f_FRk;
6446 UINT f_GRi;
6447 UINT f_CCi;
6448 UINT f_cond;
6449 UINT f_GRj;
6450
6451 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6452 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6453 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6454 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6455 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6456
6457 /* Record the fields for the semantic handler. */
6458 FLD (f_CCi) = f_CCi;
6459 FLD (f_FRk) = f_FRk;
6460 FLD (f_GRi) = f_GRi;
6461 FLD (f_GRj) = f_GRj;
6462 FLD (f_cond) = f_cond;
6463 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cstdf", "f_CCi 0x%x", 'x', f_CCi, "f_FRk 0x%x", 'x', f_FRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, (char *) 0));
6464
6465#if WITH_PROFILE_MODEL_P
6466 /* Record the fields for profiling. */
6467 if (PROFILE_MODEL_P (current_cpu))
6468 {
6469 FLD (in_CCi) = f_CCi;
6470 FLD (in_FRdoublek) = f_FRk;
6471 FLD (in_GRi) = f_GRi;
6472 FLD (in_GRj) = f_GRj;
6473 }
6474#endif
6475#undef FLD
6476 return idesc;
6477 }
6478
6479 extract_sfmt_cstbu:
6480 {
6481 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6482 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6483#define FLD(f) abuf->fields.sfmt_cstbu.f
6484 UINT f_GRk;
6485 UINT f_GRi;
6486 UINT f_CCi;
6487 UINT f_cond;
6488 UINT f_GRj;
6489
6490 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6491 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6492 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6493 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6494 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6495
6496 /* Record the fields for the semantic handler. */
6497 FLD (f_CCi) = f_CCi;
6498 FLD (f_GRi) = f_GRi;
6499 FLD (f_GRj) = f_GRj;
6500 FLD (f_GRk) = f_GRk;
6501 FLD (f_cond) = f_cond;
6502 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cstbu", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, "f_cond 0x%x", 'x', f_cond, (char *) 0));
6503
6504#if WITH_PROFILE_MODEL_P
6505 /* Record the fields for profiling. */
6506 if (PROFILE_MODEL_P (current_cpu))
6507 {
6508 FLD (in_CCi) = f_CCi;
6509 FLD (in_GRi) = f_GRi;
6510 FLD (in_GRj) = f_GRj;
6511 FLD (in_GRk) = f_GRk;
6512 FLD (out_GRi) = f_GRi;
6513 }
6514#endif
6515#undef FLD
6516 return idesc;
6517 }
6518
6519 extract_sfmt_cstbfu:
6520 {
6521 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6522 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6523#define FLD(f) abuf->fields.sfmt_cstbfu.f
6524 UINT f_FRk;
6525 UINT f_GRi;
6526 UINT f_CCi;
6527 UINT f_cond;
6528 UINT f_GRj;
6529
6530 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6531 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6532 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6533 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6534 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6535
6536 /* Record the fields for the semantic handler. */
6537 FLD (f_CCi) = f_CCi;
6538 FLD (f_FRk) = f_FRk;
6539 FLD (f_GRi) = f_GRi;
6540 FLD (f_GRj) = f_GRj;
6541 FLD (f_cond) = f_cond;
6542 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cstbfu", "f_CCi 0x%x", 'x', f_CCi, "f_FRk 0x%x", 'x', f_FRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, (char *) 0));
6543
6544#if WITH_PROFILE_MODEL_P
6545 /* Record the fields for profiling. */
6546 if (PROFILE_MODEL_P (current_cpu))
6547 {
6548 FLD (in_CCi) = f_CCi;
6549 FLD (in_FRintk) = f_FRk;
6550 FLD (in_GRi) = f_GRi;
6551 FLD (in_GRj) = f_GRj;
6552 FLD (out_GRi) = f_GRi;
6553 }
6554#endif
6555#undef FLD
6556 return idesc;
6557 }
6558
6559 extract_sfmt_cstdu:
6560 {
6561 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6562 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6563#define FLD(f) abuf->fields.sfmt_cstdu.f
6564 UINT f_GRk;
6565 UINT f_GRi;
6566 UINT f_CCi;
6567 UINT f_cond;
6568 UINT f_GRj;
6569
6570 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6571 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6572 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6573 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6574 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6575
6576 /* Record the fields for the semantic handler. */
6577 FLD (f_CCi) = f_CCi;
6578 FLD (f_GRk) = f_GRk;
6579 FLD (f_GRi) = f_GRi;
6580 FLD (f_GRj) = f_GRj;
6581 FLD (f_cond) = f_cond;
6582 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cstdu", "f_CCi 0x%x", 'x', f_CCi, "f_GRk 0x%x", 'x', f_GRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, (char *) 0));
6583
6584#if WITH_PROFILE_MODEL_P
6585 /* Record the fields for profiling. */
6586 if (PROFILE_MODEL_P (current_cpu))
6587 {
6588 FLD (in_CCi) = f_CCi;
6589 FLD (in_GRdoublek) = f_GRk;
6590 FLD (in_GRi) = f_GRi;
6591 FLD (in_GRj) = f_GRj;
6592 FLD (out_GRi) = f_GRi;
6593 }
6594#endif
6595#undef FLD
6596 return idesc;
6597 }
6598
6599 extract_sfmt_cstdfu:
6600 {
6601 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6602 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6603#define FLD(f) abuf->fields.sfmt_cstdfu.f
6604 UINT f_FRk;
6605 UINT f_GRi;
6606 UINT f_CCi;
6607 UINT f_cond;
6608 UINT f_GRj;
6609
6610 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6611 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6612 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6613 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6614 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6615
6616 /* Record the fields for the semantic handler. */
6617 FLD (f_CCi) = f_CCi;
6618 FLD (f_FRk) = f_FRk;
6619 FLD (f_GRi) = f_GRi;
6620 FLD (f_GRj) = f_GRj;
6621 FLD (f_cond) = f_cond;
6622 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cstdfu", "f_CCi 0x%x", 'x', f_CCi, "f_FRk 0x%x", 'x', f_FRk, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, (char *) 0));
6623
6624#if WITH_PROFILE_MODEL_P
6625 /* Record the fields for profiling. */
6626 if (PROFILE_MODEL_P (current_cpu))
6627 {
6628 FLD (in_CCi) = f_CCi;
6629 FLD (in_FRdoublek) = f_FRk;
6630 FLD (in_GRi) = f_GRi;
6631 FLD (in_GRj) = f_GRj;
6632 FLD (out_GRi) = f_GRi;
6633 }
6634#endif
6635#undef FLD
6636 return idesc;
6637 }
6638
6639 extract_sfmt_stbi:
6640 {
6641 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6642 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6643#define FLD(f) abuf->fields.sfmt_swapi.f
6644 UINT f_GRk;
6645 UINT f_GRi;
6646 INT f_d12;
6647
6648 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6649 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 6650 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
6651
6652 /* Record the fields for the semantic handler. */
6653 FLD (f_GRi) = f_GRi;
6654 FLD (f_GRk) = f_GRk;
6655 FLD (f_d12) = f_d12;
6656 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stbi", "f_GRi 0x%x", 'x', f_GRi, "f_GRk 0x%x", 'x', f_GRk, "f_d12 0x%x", 'x', f_d12, (char *) 0));
6657
6658#if WITH_PROFILE_MODEL_P
6659 /* Record the fields for profiling. */
6660 if (PROFILE_MODEL_P (current_cpu))
6661 {
6662 FLD (in_GRi) = f_GRi;
6663 FLD (in_GRk) = f_GRk;
6664 }
6665#endif
6666#undef FLD
6667 return idesc;
6668 }
6669
6670 extract_sfmt_stbfi:
6671 {
6672 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6673 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6674#define FLD(f) abuf->fields.sfmt_stbfi.f
6675 UINT f_FRk;
6676 UINT f_GRi;
6677 INT f_d12;
6678
6679 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6680 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 6681 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
6682
6683 /* Record the fields for the semantic handler. */
6684 FLD (f_FRk) = f_FRk;
6685 FLD (f_GRi) = f_GRi;
6686 FLD (f_d12) = f_d12;
6687 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stbfi", "f_FRk 0x%x", 'x', f_FRk, "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, (char *) 0));
6688
6689#if WITH_PROFILE_MODEL_P
6690 /* Record the fields for profiling. */
6691 if (PROFILE_MODEL_P (current_cpu))
6692 {
6693 FLD (in_FRintk) = f_FRk;
6694 FLD (in_GRi) = f_GRi;
6695 }
6696#endif
6697#undef FLD
6698 return idesc;
6699 }
6700
6701 extract_sfmt_stdi:
6702 {
6703 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6704 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6705#define FLD(f) abuf->fields.sfmt_stdi.f
6706 UINT f_GRk;
6707 UINT f_GRi;
6708 INT f_d12;
6709
6710 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6711 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 6712 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
6713
6714 /* Record the fields for the semantic handler. */
6715 FLD (f_GRk) = f_GRk;
6716 FLD (f_GRi) = f_GRi;
6717 FLD (f_d12) = f_d12;
6718 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stdi", "f_GRk 0x%x", 'x', f_GRk, "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, (char *) 0));
6719
6720#if WITH_PROFILE_MODEL_P
6721 /* Record the fields for profiling. */
6722 if (PROFILE_MODEL_P (current_cpu))
6723 {
6724 FLD (in_GRdoublek) = f_GRk;
6725 FLD (in_GRi) = f_GRi;
6726 }
6727#endif
6728#undef FLD
6729 return idesc;
6730 }
6731
6732 extract_sfmt_stdfi:
6733 {
6734 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6735 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6736#define FLD(f) abuf->fields.sfmt_stdfi.f
6737 UINT f_FRk;
6738 UINT f_GRi;
6739 INT f_d12;
6740
6741 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6742 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 6743 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
6744
6745 /* Record the fields for the semantic handler. */
6746 FLD (f_FRk) = f_FRk;
6747 FLD (f_GRi) = f_GRi;
6748 FLD (f_d12) = f_d12;
6749 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_stdfi", "f_FRk 0x%x", 'x', f_FRk, "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, (char *) 0));
6750
6751#if WITH_PROFILE_MODEL_P
6752 /* Record the fields for profiling. */
6753 if (PROFILE_MODEL_P (current_cpu))
6754 {
6755 FLD (in_FRdoublek) = f_FRk;
6756 FLD (in_GRi) = f_GRi;
6757 }
6758#endif
6759#undef FLD
6760 return idesc;
6761 }
6762
6763 extract_sfmt_swap:
6764 {
6765 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6766 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6767#define FLD(f) abuf->fields.sfmt_cswap.f
6768 UINT f_GRk;
6769 UINT f_GRi;
6770 UINT f_GRj;
6771
6772 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6773 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6774 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6775
6776 /* Record the fields for the semantic handler. */
6777 FLD (f_GRi) = f_GRi;
6778 FLD (f_GRj) = f_GRj;
6779 FLD (f_GRk) = f_GRk;
6780 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_swap", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
6781
6782#if WITH_PROFILE_MODEL_P
6783 /* Record the fields for profiling. */
6784 if (PROFILE_MODEL_P (current_cpu))
6785 {
6786 FLD (in_GRi) = f_GRi;
6787 FLD (in_GRj) = f_GRj;
6788 FLD (in_GRk) = f_GRk;
6789 FLD (out_GRk) = f_GRk;
6790 }
6791#endif
6792#undef FLD
6793 return idesc;
6794 }
6795
6796 extract_sfmt_swapi:
6797 {
6798 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6799 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6800#define FLD(f) abuf->fields.sfmt_swapi.f
6801 UINT f_GRk;
6802 UINT f_GRi;
6803 INT f_d12;
6804
6805 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6806 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 6807 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
6808
6809 /* Record the fields for the semantic handler. */
6810 FLD (f_GRi) = f_GRi;
6811 FLD (f_GRk) = f_GRk;
6812 FLD (f_d12) = f_d12;
6813 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_swapi", "f_GRi 0x%x", 'x', f_GRi, "f_GRk 0x%x", 'x', f_GRk, "f_d12 0x%x", 'x', f_d12, (char *) 0));
6814
6815#if WITH_PROFILE_MODEL_P
6816 /* Record the fields for profiling. */
6817 if (PROFILE_MODEL_P (current_cpu))
6818 {
6819 FLD (in_GRi) = f_GRi;
6820 FLD (in_GRk) = f_GRk;
6821 FLD (out_GRk) = f_GRk;
6822 }
6823#endif
6824#undef FLD
6825 return idesc;
6826 }
6827
6828 extract_sfmt_cswap:
6829 {
6830 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6831 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6832#define FLD(f) abuf->fields.sfmt_cswap.f
6833 UINT f_GRk;
6834 UINT f_GRi;
6835 UINT f_CCi;
6836 UINT f_cond;
6837 UINT f_GRj;
6838
6839 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6840 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
6841 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
6842 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
6843 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6844
6845 /* Record the fields for the semantic handler. */
6846 FLD (f_CCi) = f_CCi;
6847 FLD (f_GRi) = f_GRi;
6848 FLD (f_GRj) = f_GRj;
6849 FLD (f_GRk) = f_GRk;
6850 FLD (f_cond) = f_cond;
6851 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cswap", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_GRk 0x%x", 'x', f_GRk, "f_cond 0x%x", 'x', f_cond, (char *) 0));
6852
6853#if WITH_PROFILE_MODEL_P
6854 /* Record the fields for profiling. */
6855 if (PROFILE_MODEL_P (current_cpu))
6856 {
6857 FLD (in_CCi) = f_CCi;
6858 FLD (in_GRi) = f_GRi;
6859 FLD (in_GRj) = f_GRj;
6860 FLD (in_GRk) = f_GRk;
6861 FLD (out_GRk) = f_GRk;
6862 }
6863#endif
6864#undef FLD
6865 return idesc;
6866 }
6867
6868 extract_sfmt_movgf:
6869 {
6870 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6871 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6872#define FLD(f) abuf->fields.sfmt_cmovgfd.f
6873 UINT f_FRk;
6874 UINT f_GRj;
6875
6876 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6877 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6878
6879 /* Record the fields for the semantic handler. */
6880 FLD (f_GRj) = f_GRj;
6881 FLD (f_FRk) = f_FRk;
6882 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_movgf", "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
6883
6884#if WITH_PROFILE_MODEL_P
6885 /* Record the fields for profiling. */
6886 if (PROFILE_MODEL_P (current_cpu))
6887 {
6888 FLD (in_GRj) = f_GRj;
6889 FLD (out_FRintk) = f_FRk;
6890 }
6891#endif
6892#undef FLD
6893 return idesc;
6894 }
6895
6896 extract_sfmt_movfg:
6897 {
6898 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6899 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6900#define FLD(f) abuf->fields.sfmt_cmovfgd.f
6901 UINT f_FRk;
6902 UINT f_GRj;
6903
6904 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6905 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6906
6907 /* Record the fields for the semantic handler. */
6908 FLD (f_FRk) = f_FRk;
6909 FLD (f_GRj) = f_GRj;
6910 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_movfg", "f_FRk 0x%x", 'x', f_FRk, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
6911
6912#if WITH_PROFILE_MODEL_P
6913 /* Record the fields for profiling. */
6914 if (PROFILE_MODEL_P (current_cpu))
6915 {
6916 FLD (in_FRintk) = f_FRk;
6917 FLD (out_GRj) = f_GRj;
6918 }
6919#endif
6920#undef FLD
6921 return idesc;
6922 }
6923
6924 extract_sfmt_movgfd:
6925 {
6926 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6927 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6928#define FLD(f) abuf->fields.sfmt_cmovgfd.f
6929 UINT f_FRk;
6930 UINT f_GRj;
6931
6932 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6933 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6934
6935 /* Record the fields for the semantic handler. */
6936 FLD (f_GRj) = f_GRj;
6937 FLD (f_FRk) = f_FRk;
6938 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_movgfd", "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
6939
6940#if WITH_PROFILE_MODEL_P
6941 /* Record the fields for profiling. */
6942 if (PROFILE_MODEL_P (current_cpu))
6943 {
6944 FLD (in_GRj) = f_GRj;
b29791a8 6945 FLD (in_h_gr_USI_add__INT_index_of__INT_GRj_1) = ((FLD (f_GRj)) + (1));
b34f6357 6946 FLD (out_FRintk) = f_FRk;
b29791a8 6947 FLD (out_h_fr_int_USI_add__INT_index_of__INT_FRintk_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
6948 }
6949#endif
6950#undef FLD
6951 return idesc;
6952 }
6953
6954 extract_sfmt_movfgd:
6955 {
6956 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6957 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6958#define FLD(f) abuf->fields.sfmt_cmovfgd.f
6959 UINT f_FRk;
6960 UINT f_GRj;
6961
6962 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6963 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6964
6965 /* Record the fields for the semantic handler. */
6966 FLD (f_FRk) = f_FRk;
6967 FLD (f_GRj) = f_GRj;
6968 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_movfgd", "f_FRk 0x%x", 'x', f_FRk, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
6969
6970#if WITH_PROFILE_MODEL_P
6971 /* Record the fields for profiling. */
6972 if (PROFILE_MODEL_P (current_cpu))
6973 {
6974 FLD (in_FRintk) = f_FRk;
b29791a8 6975 FLD (in_h_fr_int_USI_add__INT_index_of__INT_FRintk_1) = ((FLD (f_FRk)) + (1));
b34f6357 6976 FLD (out_GRj) = f_GRj;
b29791a8 6977 FLD (out_h_gr_USI_add__INT_index_of__INT_GRj_1) = ((FLD (f_GRj)) + (1));
b34f6357
DB
6978 }
6979#endif
6980#undef FLD
6981 return idesc;
6982 }
6983
6984 extract_sfmt_movgfq:
6985 {
6986 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 6987 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
6988#define FLD(f) abuf->fields.sfmt_movgfq.f
6989 UINT f_FRk;
6990 UINT f_GRj;
6991
6992 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
6993 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
6994
6995 /* Record the fields for the semantic handler. */
6996 FLD (f_GRj) = f_GRj;
6997 FLD (f_FRk) = f_FRk;
6998 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_movgfq", "f_GRj 0x%x", 'x', f_GRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
6999
7000#if WITH_PROFILE_MODEL_P
7001 /* Record the fields for profiling. */
7002 if (PROFILE_MODEL_P (current_cpu))
7003 {
7004 FLD (in_GRj) = f_GRj;
b29791a8
DE
7005 FLD (in_h_gr_USI_add__INT_index_of__INT_GRj_1) = ((FLD (f_GRj)) + (1));
7006 FLD (in_h_gr_USI_add__INT_index_of__INT_GRj_2) = ((FLD (f_GRj)) + (2));
7007 FLD (in_h_gr_USI_add__INT_index_of__INT_GRj_3) = ((FLD (f_GRj)) + (3));
b34f6357 7008 FLD (out_FRintk) = f_FRk;
b29791a8
DE
7009 FLD (out_h_fr_int_USI_add__INT_index_of__INT_FRintk_1) = ((FLD (f_FRk)) + (1));
7010 FLD (out_h_fr_int_USI_add__INT_index_of__INT_FRintk_2) = ((FLD (f_FRk)) + (2));
7011 FLD (out_h_fr_int_USI_add__INT_index_of__INT_FRintk_3) = ((FLD (f_FRk)) + (3));
b34f6357
DB
7012 }
7013#endif
7014#undef FLD
7015 return idesc;
7016 }
7017
7018 extract_sfmt_movfgq:
7019 {
7020 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7021 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7022#define FLD(f) abuf->fields.sfmt_movfgq.f
7023 UINT f_FRk;
7024 UINT f_GRj;
7025
7026 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
7027 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
7028
7029 /* Record the fields for the semantic handler. */
7030 FLD (f_FRk) = f_FRk;
7031 FLD (f_GRj) = f_GRj;
7032 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_movfgq", "f_FRk 0x%x", 'x', f_FRk, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
7033
7034#if WITH_PROFILE_MODEL_P
7035 /* Record the fields for profiling. */
7036 if (PROFILE_MODEL_P (current_cpu))
7037 {
7038 FLD (in_FRintk) = f_FRk;
b29791a8
DE
7039 FLD (in_h_fr_int_USI_add__INT_index_of__INT_FRintk_1) = ((FLD (f_FRk)) + (1));
7040 FLD (in_h_fr_int_USI_add__INT_index_of__INT_FRintk_2) = ((FLD (f_FRk)) + (2));
7041 FLD (in_h_fr_int_USI_add__INT_index_of__INT_FRintk_3) = ((FLD (f_FRk)) + (3));
b34f6357 7042 FLD (out_GRj) = f_GRj;
b29791a8
DE
7043 FLD (out_h_gr_USI_add__INT_index_of__INT_GRj_1) = ((FLD (f_GRj)) + (1));
7044 FLD (out_h_gr_USI_add__INT_index_of__INT_GRj_2) = ((FLD (f_GRj)) + (2));
7045 FLD (out_h_gr_USI_add__INT_index_of__INT_GRj_3) = ((FLD (f_GRj)) + (3));
b34f6357
DB
7046 }
7047#endif
7048#undef FLD
7049 return idesc;
7050 }
7051
7052 extract_sfmt_cmovgf:
7053 {
7054 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7055 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7056#define FLD(f) abuf->fields.sfmt_cmovgfd.f
7057 UINT f_FRk;
7058 UINT f_CCi;
7059 UINT f_cond;
7060 UINT f_GRj;
7061
7062 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
7063 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
7064 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
7065 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
7066
7067 /* Record the fields for the semantic handler. */
7068 FLD (f_CCi) = f_CCi;
7069 FLD (f_GRj) = f_GRj;
7070 FLD (f_cond) = f_cond;
7071 FLD (f_FRk) = f_FRk;
7072 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmovgf", "f_CCi 0x%x", 'x', f_CCi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
7073
7074#if WITH_PROFILE_MODEL_P
7075 /* Record the fields for profiling. */
7076 if (PROFILE_MODEL_P (current_cpu))
7077 {
7078 FLD (in_CCi) = f_CCi;
7079 FLD (in_GRj) = f_GRj;
7080 FLD (out_FRintk) = f_FRk;
7081 }
7082#endif
7083#undef FLD
7084 return idesc;
7085 }
7086
7087 extract_sfmt_cmovfg:
7088 {
7089 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7090 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7091#define FLD(f) abuf->fields.sfmt_cmovfgd.f
7092 UINT f_FRk;
7093 UINT f_CCi;
7094 UINT f_cond;
7095 UINT f_GRj;
7096
7097 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
7098 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
7099 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
7100 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
7101
7102 /* Record the fields for the semantic handler. */
7103 FLD (f_CCi) = f_CCi;
7104 FLD (f_FRk) = f_FRk;
7105 FLD (f_cond) = f_cond;
7106 FLD (f_GRj) = f_GRj;
7107 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmovfg", "f_CCi 0x%x", 'x', f_CCi, "f_FRk 0x%x", 'x', f_FRk, "f_cond 0x%x", 'x', f_cond, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
7108
7109#if WITH_PROFILE_MODEL_P
7110 /* Record the fields for profiling. */
7111 if (PROFILE_MODEL_P (current_cpu))
7112 {
7113 FLD (in_CCi) = f_CCi;
7114 FLD (in_FRintk) = f_FRk;
7115 FLD (out_GRj) = f_GRj;
7116 }
7117#endif
7118#undef FLD
7119 return idesc;
7120 }
7121
7122 extract_sfmt_cmovgfd:
7123 {
7124 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7125 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7126#define FLD(f) abuf->fields.sfmt_cmovgfd.f
7127 UINT f_FRk;
7128 UINT f_CCi;
7129 UINT f_cond;
7130 UINT f_GRj;
7131
7132 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
7133 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
7134 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
7135 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
7136
7137 /* Record the fields for the semantic handler. */
7138 FLD (f_CCi) = f_CCi;
7139 FLD (f_GRj) = f_GRj;
7140 FLD (f_cond) = f_cond;
7141 FLD (f_FRk) = f_FRk;
7142 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmovgfd", "f_CCi 0x%x", 'x', f_CCi, "f_GRj 0x%x", 'x', f_GRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
7143
7144#if WITH_PROFILE_MODEL_P
7145 /* Record the fields for profiling. */
7146 if (PROFILE_MODEL_P (current_cpu))
7147 {
7148 FLD (in_CCi) = f_CCi;
7149 FLD (in_GRj) = f_GRj;
b29791a8 7150 FLD (in_h_gr_USI_add__INT_index_of__INT_GRj_1) = ((FLD (f_GRj)) + (1));
b34f6357 7151 FLD (out_FRintk) = f_FRk;
b29791a8 7152 FLD (out_h_fr_int_USI_add__INT_index_of__INT_FRintk_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
7153 }
7154#endif
7155#undef FLD
7156 return idesc;
7157 }
7158
7159 extract_sfmt_cmovfgd:
7160 {
7161 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7162 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7163#define FLD(f) abuf->fields.sfmt_cmovfgd.f
7164 UINT f_FRk;
7165 UINT f_CCi;
7166 UINT f_cond;
7167 UINT f_GRj;
7168
7169 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
7170 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
7171 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
7172 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
7173
7174 /* Record the fields for the semantic handler. */
7175 FLD (f_CCi) = f_CCi;
7176 FLD (f_FRk) = f_FRk;
7177 FLD (f_cond) = f_cond;
7178 FLD (f_GRj) = f_GRj;
7179 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmovfgd", "f_CCi 0x%x", 'x', f_CCi, "f_FRk 0x%x", 'x', f_FRk, "f_cond 0x%x", 'x', f_cond, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
7180
7181#if WITH_PROFILE_MODEL_P
7182 /* Record the fields for profiling. */
7183 if (PROFILE_MODEL_P (current_cpu))
7184 {
7185 FLD (in_CCi) = f_CCi;
7186 FLD (in_FRintk) = f_FRk;
b29791a8 7187 FLD (in_h_fr_int_USI_add__INT_index_of__INT_FRintk_1) = ((FLD (f_FRk)) + (1));
b34f6357 7188 FLD (out_GRj) = f_GRj;
b29791a8 7189 FLD (out_h_gr_USI_add__INT_index_of__INT_GRj_1) = ((FLD (f_GRj)) + (1));
b34f6357
DB
7190 }
7191#endif
7192#undef FLD
7193 return idesc;
7194 }
7195
7196 extract_sfmt_movgs:
7197 {
7198 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7199 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7200#define FLD(f) abuf->fields.sfmt_movgs.f
7201 UINT f_spr_h;
7202 UINT f_spr_l;
7203 UINT f_GRj;
7204 UINT f_spr;
7205
7206 f_spr_h = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
7207 f_spr_l = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
7208 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
7209{
7210 f_spr = ((((f_spr_h) << (6))) | (f_spr_l));
7211}
7212
7213 /* Record the fields for the semantic handler. */
7214 FLD (f_GRj) = f_GRj;
7215 FLD (f_spr) = f_spr;
7216 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_movgs", "f_GRj 0x%x", 'x', f_GRj, "f_spr 0x%x", 'x', f_spr, (char *) 0));
7217
7218#if WITH_PROFILE_MODEL_P
7219 /* Record the fields for profiling. */
7220 if (PROFILE_MODEL_P (current_cpu))
7221 {
7222 FLD (in_GRj) = f_GRj;
7223 FLD (out_spr) = f_spr;
7224 }
7225#endif
7226#undef FLD
7227 return idesc;
7228 }
7229
7230 extract_sfmt_movsg:
7231 {
7232 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7233 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7234#define FLD(f) abuf->fields.sfmt_movsg.f
7235 UINT f_spr_h;
7236 UINT f_spr_l;
7237 UINT f_GRj;
7238 UINT f_spr;
7239
7240 f_spr_h = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
7241 f_spr_l = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
7242 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
7243{
7244 f_spr = ((((f_spr_h) << (6))) | (f_spr_l));
7245}
7246
7247 /* Record the fields for the semantic handler. */
7248 FLD (f_spr) = f_spr;
7249 FLD (f_GRj) = f_GRj;
7250 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_movsg", "f_spr 0x%x", 'x', f_spr, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
7251
7252#if WITH_PROFILE_MODEL_P
7253 /* Record the fields for profiling. */
7254 if (PROFILE_MODEL_P (current_cpu))
7255 {
7256 FLD (in_spr) = f_spr;
7257 FLD (out_GRj) = f_GRj;
7258 }
7259#endif
7260#undef FLD
7261 return idesc;
7262 }
7263
7264 extract_sfmt_bra:
7265 {
7266 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7267 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7268#define FLD(f) abuf->fields.sfmt_fbne.f
7269 UINT f_hint;
7270 SI f_label16;
7271
7272 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
62836bf4 7273 f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc));
b34f6357
DB
7274
7275 /* Record the fields for the semantic handler. */
7276 FLD (f_hint) = f_hint;
7277 FLD (i_label16) = f_label16;
7278 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_bra", "f_hint 0x%x", 'x', f_hint, "label16 0x%x", 'x', f_label16, (char *) 0));
7279
7280#if WITH_PROFILE_MODEL_P
7281 /* Record the fields for profiling. */
7282 if (PROFILE_MODEL_P (current_cpu))
7283 {
7284 }
7285#endif
7286#undef FLD
7287 return idesc;
7288 }
7289
7290 extract_sfmt_bno:
7291 {
7292 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7293 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7294#define FLD(f) abuf->fields.sfmt_fbne.f
7295 UINT f_hint;
7296 SI f_label16;
7297
7298 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
62836bf4 7299 f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc));
b34f6357
DB
7300
7301 /* Record the fields for the semantic handler. */
7302 FLD (f_hint) = f_hint;
7303 FLD (i_label16) = f_label16;
7304 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_bno", "f_hint 0x%x", 'x', f_hint, "label16 0x%x", 'x', f_label16, (char *) 0));
7305
7306#undef FLD
7307 return idesc;
7308 }
7309
7310 extract_sfmt_beq:
7311 {
7312 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7313 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7314#define FLD(f) abuf->fields.sfmt_beq.f
7315 UINT f_ICCi_2;
7316 UINT f_hint;
7317 SI f_label16;
7318
7319 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
7320 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
62836bf4 7321 f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc));
b34f6357
DB
7322
7323 /* Record the fields for the semantic handler. */
7324 FLD (f_ICCi_2) = f_ICCi_2;
7325 FLD (f_hint) = f_hint;
7326 FLD (i_label16) = f_label16;
7327 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_beq", "f_ICCi_2 0x%x", 'x', f_ICCi_2, "f_hint 0x%x", 'x', f_hint, "label16 0x%x", 'x', f_label16, (char *) 0));
7328
7329#if WITH_PROFILE_MODEL_P
7330 /* Record the fields for profiling. */
7331 if (PROFILE_MODEL_P (current_cpu))
7332 {
7333 FLD (in_ICCi_2) = f_ICCi_2;
7334 }
7335#endif
7336#undef FLD
7337 return idesc;
7338 }
7339
7340 extract_sfmt_fbne:
7341 {
7342 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7343 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7344#define FLD(f) abuf->fields.sfmt_fbne.f
7345 UINT f_FCCi_2;
7346 UINT f_hint;
7347 SI f_label16;
7348
7349 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
7350 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
62836bf4 7351 f_label16 = ((((EXTRACT_LSB0_SINT (insn, 32, 15, 16)) << (2))) + (pc));
b34f6357
DB
7352
7353 /* Record the fields for the semantic handler. */
7354 FLD (f_FCCi_2) = f_FCCi_2;
7355 FLD (f_hint) = f_hint;
7356 FLD (i_label16) = f_label16;
7357 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fbne", "f_FCCi_2 0x%x", 'x', f_FCCi_2, "f_hint 0x%x", 'x', f_hint, "label16 0x%x", 'x', f_label16, (char *) 0));
7358
7359#if WITH_PROFILE_MODEL_P
7360 /* Record the fields for profiling. */
7361 if (PROFILE_MODEL_P (current_cpu))
7362 {
7363 FLD (in_FCCi_2) = f_FCCi_2;
7364 }
7365#endif
7366#undef FLD
7367 return idesc;
7368 }
7369
7370 extract_sfmt_bctrlr:
7371 {
7372 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7373 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7374#define FLD(f) abuf->fields.sfmt_fcbeqlr.f
7375 UINT f_hint;
7376 UINT f_ccond;
7377
7378 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
7379 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1);
7380
7381 /* Record the fields for the semantic handler. */
7382 FLD (f_ccond) = f_ccond;
7383 FLD (f_hint) = f_hint;
7384 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_bctrlr", "f_ccond 0x%x", 'x', f_ccond, "f_hint 0x%x", 'x', f_hint, (char *) 0));
7385
7386#if WITH_PROFILE_MODEL_P
7387 /* Record the fields for profiling. */
7388 if (PROFILE_MODEL_P (current_cpu))
7389 {
7390 FLD (in_h_spr_USI_272) = 272;
7391 FLD (in_h_spr_USI_273) = 273;
7392 FLD (out_h_spr_USI_273) = 273;
7393 }
7394#endif
7395#undef FLD
7396 return idesc;
7397 }
7398
7399 extract_sfmt_bralr:
7400 {
7401 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7402 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7403#define FLD(f) abuf->fields.sfmt_fcbeqlr.f
7404 UINT f_hint;
7405
7406 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
7407
7408 /* Record the fields for the semantic handler. */
7409 FLD (f_hint) = f_hint;
7410 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_bralr", "f_hint 0x%x", 'x', f_hint, (char *) 0));
7411
7412#if WITH_PROFILE_MODEL_P
7413 /* Record the fields for profiling. */
7414 if (PROFILE_MODEL_P (current_cpu))
7415 {
7416 FLD (in_h_spr_USI_272) = 272;
7417 }
7418#endif
7419#undef FLD
7420 return idesc;
7421 }
7422
7423 extract_sfmt_bnolr:
7424 {
7425 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7426 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7427#define FLD(f) abuf->fields.sfmt_fcbeqlr.f
7428 UINT f_hint;
7429
7430 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
7431
7432 /* Record the fields for the semantic handler. */
7433 FLD (f_hint) = f_hint;
7434 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_bnolr", "f_hint 0x%x", 'x', f_hint, (char *) 0));
7435
7436#if WITH_PROFILE_MODEL_P
7437 /* Record the fields for profiling. */
7438 if (PROFILE_MODEL_P (current_cpu))
7439 {
7440 FLD (in_h_spr_USI_272) = 272;
7441 }
7442#endif
7443#undef FLD
7444 return idesc;
7445 }
7446
7447 extract_sfmt_beqlr:
7448 {
7449 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7450 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7451#define FLD(f) abuf->fields.sfmt_bceqlr.f
7452 UINT f_ICCi_2;
7453 UINT f_hint;
7454
7455 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
7456 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
7457
7458 /* Record the fields for the semantic handler. */
7459 FLD (f_ICCi_2) = f_ICCi_2;
7460 FLD (f_hint) = f_hint;
7461 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_beqlr", "f_ICCi_2 0x%x", 'x', f_ICCi_2, "f_hint 0x%x", 'x', f_hint, (char *) 0));
7462
7463#if WITH_PROFILE_MODEL_P
7464 /* Record the fields for profiling. */
7465 if (PROFILE_MODEL_P (current_cpu))
7466 {
7467 FLD (in_ICCi_2) = f_ICCi_2;
7468 FLD (in_h_spr_USI_272) = 272;
7469 }
7470#endif
7471#undef FLD
7472 return idesc;
7473 }
7474
7475 extract_sfmt_fbeqlr:
7476 {
7477 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7478 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7479#define FLD(f) abuf->fields.sfmt_fcbeqlr.f
7480 UINT f_FCCi_2;
7481 UINT f_hint;
7482
7483 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
7484 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
7485
7486 /* Record the fields for the semantic handler. */
7487 FLD (f_FCCi_2) = f_FCCi_2;
7488 FLD (f_hint) = f_hint;
7489 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fbeqlr", "f_FCCi_2 0x%x", 'x', f_FCCi_2, "f_hint 0x%x", 'x', f_hint, (char *) 0));
7490
7491#if WITH_PROFILE_MODEL_P
7492 /* Record the fields for profiling. */
7493 if (PROFILE_MODEL_P (current_cpu))
7494 {
7495 FLD (in_FCCi_2) = f_FCCi_2;
7496 FLD (in_h_spr_USI_272) = 272;
7497 }
7498#endif
7499#undef FLD
7500 return idesc;
7501 }
7502
7503 extract_sfmt_bcralr:
7504 {
7505 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7506 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7507#define FLD(f) abuf->fields.sfmt_fcbeqlr.f
7508 UINT f_hint;
7509 UINT f_ccond;
7510
7511 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
7512 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1);
7513
7514 /* Record the fields for the semantic handler. */
7515 FLD (f_ccond) = f_ccond;
7516 FLD (f_hint) = f_hint;
7517 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_bcralr", "f_ccond 0x%x", 'x', f_ccond, "f_hint 0x%x", 'x', f_hint, (char *) 0));
7518
7519#if WITH_PROFILE_MODEL_P
7520 /* Record the fields for profiling. */
7521 if (PROFILE_MODEL_P (current_cpu))
7522 {
7523 FLD (in_h_spr_USI_272) = 272;
7524 FLD (in_h_spr_USI_273) = 273;
7525 FLD (out_h_spr_USI_273) = 273;
7526 }
7527#endif
7528#undef FLD
7529 return idesc;
7530 }
7531
7532 extract_sfmt_bcnolr:
7533 {
7534 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7535 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7536#define FLD(f) abuf->fields.sfmt_fcbeqlr.f
7537 UINT f_hint;
7538
7539 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
7540
7541 /* Record the fields for the semantic handler. */
7542 FLD (f_hint) = f_hint;
7543 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_bcnolr", "f_hint 0x%x", 'x', f_hint, (char *) 0));
7544
7545#if WITH_PROFILE_MODEL_P
7546 /* Record the fields for profiling. */
7547 if (PROFILE_MODEL_P (current_cpu))
7548 {
7549 FLD (in_h_spr_USI_272) = 272;
7550 FLD (in_h_spr_USI_273) = 273;
7551 FLD (out_h_spr_USI_273) = 273;
7552 }
7553#endif
7554#undef FLD
7555 return idesc;
7556 }
7557
7558 extract_sfmt_bceqlr:
7559 {
7560 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7561 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7562#define FLD(f) abuf->fields.sfmt_bceqlr.f
7563 UINT f_ICCi_2;
7564 UINT f_hint;
7565 UINT f_ccond;
7566
7567 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
7568 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
7569 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1);
7570
7571 /* Record the fields for the semantic handler. */
7572 FLD (f_ICCi_2) = f_ICCi_2;
7573 FLD (f_ccond) = f_ccond;
7574 FLD (f_hint) = f_hint;
7575 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_bceqlr", "f_ICCi_2 0x%x", 'x', f_ICCi_2, "f_ccond 0x%x", 'x', f_ccond, "f_hint 0x%x", 'x', f_hint, (char *) 0));
7576
7577#if WITH_PROFILE_MODEL_P
7578 /* Record the fields for profiling. */
7579 if (PROFILE_MODEL_P (current_cpu))
7580 {
7581 FLD (in_ICCi_2) = f_ICCi_2;
7582 FLD (in_h_spr_USI_272) = 272;
7583 FLD (in_h_spr_USI_273) = 273;
7584 FLD (out_h_spr_USI_273) = 273;
7585 }
7586#endif
7587#undef FLD
7588 return idesc;
7589 }
7590
7591 extract_sfmt_fcbeqlr:
7592 {
7593 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7594 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7595#define FLD(f) abuf->fields.sfmt_fcbeqlr.f
7596 UINT f_FCCi_2;
7597 UINT f_hint;
7598 UINT f_ccond;
7599
7600 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
7601 f_hint = EXTRACT_LSB0_UINT (insn, 32, 17, 2);
7602 f_ccond = EXTRACT_LSB0_UINT (insn, 32, 12, 1);
7603
7604 /* Record the fields for the semantic handler. */
7605 FLD (f_FCCi_2) = f_FCCi_2;
7606 FLD (f_ccond) = f_ccond;
7607 FLD (f_hint) = f_hint;
7608 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fcbeqlr", "f_FCCi_2 0x%x", 'x', f_FCCi_2, "f_ccond 0x%x", 'x', f_ccond, "f_hint 0x%x", 'x', f_hint, (char *) 0));
7609
7610#if WITH_PROFILE_MODEL_P
7611 /* Record the fields for profiling. */
7612 if (PROFILE_MODEL_P (current_cpu))
7613 {
7614 FLD (in_FCCi_2) = f_FCCi_2;
7615 FLD (in_h_spr_USI_272) = 272;
7616 FLD (in_h_spr_USI_273) = 273;
7617 FLD (out_h_spr_USI_273) = 273;
7618 }
7619#endif
7620#undef FLD
7621 return idesc;
7622 }
7623
7624 extract_sfmt_jmpl:
7625 {
7626 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7627 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7628#define FLD(f) abuf->fields.sfmt_cjmpl.f
7629 UINT f_LI;
7630 UINT f_GRi;
7631 UINT f_GRj;
7632
7633 f_LI = EXTRACT_LSB0_UINT (insn, 32, 25, 1);
7634 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
7635 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
7636
7637 /* Record the fields for the semantic handler. */
7638 FLD (f_GRi) = f_GRi;
7639 FLD (f_GRj) = f_GRj;
7640 FLD (f_LI) = f_LI;
7641 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_jmpl", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_LI 0x%x", 'x', f_LI, (char *) 0));
7642
7643#if WITH_PROFILE_MODEL_P
7644 /* Record the fields for profiling. */
7645 if (PROFILE_MODEL_P (current_cpu))
7646 {
7647 FLD (in_GRi) = f_GRi;
7648 FLD (in_GRj) = f_GRj;
7649 }
7650#endif
7651#undef FLD
7652 return idesc;
7653 }
7654
7655 extract_sfmt_jmpil:
7656 {
7657 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7658 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7659#define FLD(f) abuf->fields.sfmt_jmpil.f
7660 UINT f_LI;
7661 UINT f_GRi;
7662 INT f_d12;
7663
7664 f_LI = EXTRACT_LSB0_UINT (insn, 32, 25, 1);
7665 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 7666 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
7667
7668 /* Record the fields for the semantic handler. */
7669 FLD (f_GRi) = f_GRi;
7670 FLD (f_LI) = f_LI;
7671 FLD (f_d12) = f_d12;
7672 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_jmpil", "f_GRi 0x%x", 'x', f_GRi, "f_LI 0x%x", 'x', f_LI, "f_d12 0x%x", 'x', f_d12, (char *) 0));
7673
7674#if WITH_PROFILE_MODEL_P
7675 /* Record the fields for profiling. */
7676 if (PROFILE_MODEL_P (current_cpu))
7677 {
7678 FLD (in_GRi) = f_GRi;
7679 }
7680#endif
7681#undef FLD
7682 return idesc;
7683 }
7684
7685 extract_sfmt_call:
7686 {
7687 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7688 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7689#define FLD(f) abuf->fields.sfmt_call.f
7690 INT f_labelH6;
7691 UINT f_labelL18;
7692 INT f_label24;
7693
62836bf4 7694 f_labelH6 = EXTRACT_LSB0_SINT (insn, 32, 30, 6);
b34f6357
DB
7695 f_labelL18 = EXTRACT_LSB0_UINT (insn, 32, 17, 18);
7696{
7697 f_label24 = ((((((((f_labelH6) << (18))) | (f_labelL18))) << (2))) + (pc));
7698}
7699
7700 /* Record the fields for the semantic handler. */
7701 FLD (i_label24) = f_label24;
7702 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_call", "label24 0x%x", 'x', f_label24, (char *) 0));
7703
7704#if WITH_PROFILE_MODEL_P
7705 /* Record the fields for profiling. */
7706 if (PROFILE_MODEL_P (current_cpu))
7707 {
7708 }
7709#endif
7710#undef FLD
7711 return idesc;
7712 }
7713
7714 extract_sfmt_rett:
7715 {
7716 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7717 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7718#define FLD(f) abuf->fields.sfmt_rett.f
7719 UINT f_debug;
7720
7721 f_debug = EXTRACT_LSB0_UINT (insn, 32, 25, 1);
7722
7723 /* Record the fields for the semantic handler. */
7724 FLD (f_debug) = f_debug;
7725 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_rett", "f_debug 0x%x", 'x', f_debug, (char *) 0));
7726
7727#if WITH_PROFILE_MODEL_P
7728 /* Record the fields for profiling. */
7729 if (PROFILE_MODEL_P (current_cpu))
7730 {
7731 }
7732#endif
7733#undef FLD
7734 return idesc;
7735 }
7736
7737 extract_sfmt_rei:
7738 {
7739 const IDESC *idesc = &frvbf_insn_data[itype];
7740#define FLD(f) abuf->fields.fmt_empty.f
7741
7742
7743 /* Record the fields for the semantic handler. */
7744 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_rei", (char *) 0));
7745
7746#undef FLD
7747 return idesc;
7748 }
7749
7750 extract_sfmt_tra:
7751 {
7752 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7753 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7754#define FLD(f) abuf->fields.sfmt_ftne.f
7755 UINT f_GRi;
7756 UINT f_GRj;
7757
7758 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
7759 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
7760
7761 /* Record the fields for the semantic handler. */
7762 FLD (f_GRi) = f_GRi;
7763 FLD (f_GRj) = f_GRj;
7764 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_tra", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
7765
7766#if WITH_PROFILE_MODEL_P
7767 /* Record the fields for profiling. */
7768 if (PROFILE_MODEL_P (current_cpu))
7769 {
7770 FLD (in_GRi) = f_GRi;
7771 FLD (in_GRj) = f_GRj;
7772 FLD (out_h_spr_USI_1) = 1;
7773 FLD (out_h_spr_USI_768) = 768;
7774 FLD (out_h_spr_USI_769) = 769;
7775 FLD (out_h_spr_USI_770) = 770;
7776 FLD (out_h_spr_USI_771) = 771;
7777 }
7778#endif
7779#undef FLD
7780 return idesc;
7781 }
7782
7783 extract_sfmt_teq:
7784 {
7785 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7786 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7787#define FLD(f) abuf->fields.sfmt_teq.f
7788 UINT f_ICCi_2;
7789 UINT f_GRi;
7790 UINT f_GRj;
7791
7792 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
7793 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
7794 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
7795
7796 /* Record the fields for the semantic handler. */
7797 FLD (f_GRi) = f_GRi;
7798 FLD (f_GRj) = f_GRj;
7799 FLD (f_ICCi_2) = f_ICCi_2;
7800 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_teq", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_ICCi_2 0x%x", 'x', f_ICCi_2, (char *) 0));
7801
7802#if WITH_PROFILE_MODEL_P
7803 /* Record the fields for profiling. */
7804 if (PROFILE_MODEL_P (current_cpu))
7805 {
7806 FLD (in_GRi) = f_GRi;
7807 FLD (in_GRj) = f_GRj;
7808 FLD (in_ICCi_2) = f_ICCi_2;
7809 FLD (out_h_spr_USI_1) = 1;
7810 FLD (out_h_spr_USI_768) = 768;
7811 FLD (out_h_spr_USI_769) = 769;
7812 FLD (out_h_spr_USI_770) = 770;
7813 FLD (out_h_spr_USI_771) = 771;
7814 }
7815#endif
7816#undef FLD
7817 return idesc;
7818 }
7819
7820 extract_sfmt_ftne:
7821 {
7822 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7823 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7824#define FLD(f) abuf->fields.sfmt_ftne.f
7825 UINT f_FCCi_2;
7826 UINT f_GRi;
7827 UINT f_GRj;
7828
7829 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
7830 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
7831 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
7832
7833 /* Record the fields for the semantic handler. */
7834 FLD (f_FCCi_2) = f_FCCi_2;
7835 FLD (f_GRi) = f_GRi;
7836 FLD (f_GRj) = f_GRj;
7837 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ftne", "f_FCCi_2 0x%x", 'x', f_FCCi_2, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
7838
7839#if WITH_PROFILE_MODEL_P
7840 /* Record the fields for profiling. */
7841 if (PROFILE_MODEL_P (current_cpu))
7842 {
7843 FLD (in_FCCi_2) = f_FCCi_2;
7844 FLD (in_GRi) = f_GRi;
7845 FLD (in_GRj) = f_GRj;
7846 FLD (out_h_spr_USI_1) = 1;
7847 FLD (out_h_spr_USI_768) = 768;
7848 FLD (out_h_spr_USI_769) = 769;
7849 FLD (out_h_spr_USI_770) = 770;
7850 FLD (out_h_spr_USI_771) = 771;
7851 }
7852#endif
7853#undef FLD
7854 return idesc;
7855 }
7856
7857 extract_sfmt_tira:
7858 {
7859 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7860 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7861#define FLD(f) abuf->fields.sfmt_ftine.f
7862 UINT f_GRi;
7863 INT f_d12;
7864
7865 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 7866 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
7867
7868 /* Record the fields for the semantic handler. */
7869 FLD (f_GRi) = f_GRi;
7870 FLD (f_d12) = f_d12;
7871 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_tira", "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, (char *) 0));
7872
7873#if WITH_PROFILE_MODEL_P
7874 /* Record the fields for profiling. */
7875 if (PROFILE_MODEL_P (current_cpu))
7876 {
7877 FLD (in_GRi) = f_GRi;
7878 FLD (out_h_spr_USI_1) = 1;
7879 FLD (out_h_spr_USI_768) = 768;
7880 FLD (out_h_spr_USI_769) = 769;
7881 FLD (out_h_spr_USI_770) = 770;
7882 FLD (out_h_spr_USI_771) = 771;
7883 }
7884#endif
7885#undef FLD
7886 return idesc;
7887 }
7888
7889 extract_sfmt_tieq:
7890 {
7891 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7892 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7893#define FLD(f) abuf->fields.sfmt_tieq.f
7894 UINT f_ICCi_2;
7895 UINT f_GRi;
7896 INT f_d12;
7897
7898 f_ICCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
7899 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 7900 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
7901
7902 /* Record the fields for the semantic handler. */
7903 FLD (f_GRi) = f_GRi;
7904 FLD (f_ICCi_2) = f_ICCi_2;
7905 FLD (f_d12) = f_d12;
7906 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_tieq", "f_GRi 0x%x", 'x', f_GRi, "f_ICCi_2 0x%x", 'x', f_ICCi_2, "f_d12 0x%x", 'x', f_d12, (char *) 0));
7907
7908#if WITH_PROFILE_MODEL_P
7909 /* Record the fields for profiling. */
7910 if (PROFILE_MODEL_P (current_cpu))
7911 {
7912 FLD (in_GRi) = f_GRi;
7913 FLD (in_ICCi_2) = f_ICCi_2;
7914 FLD (out_h_spr_USI_1) = 1;
7915 FLD (out_h_spr_USI_768) = 768;
7916 FLD (out_h_spr_USI_769) = 769;
7917 FLD (out_h_spr_USI_770) = 770;
7918 FLD (out_h_spr_USI_771) = 771;
7919 }
7920#endif
7921#undef FLD
7922 return idesc;
7923 }
7924
7925 extract_sfmt_ftine:
7926 {
7927 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7928 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7929#define FLD(f) abuf->fields.sfmt_ftine.f
7930 UINT f_FCCi_2;
7931 UINT f_GRi;
7932 INT f_d12;
7933
7934 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
7935 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 7936 f_d12 = EXTRACT_LSB0_SINT (insn, 32, 11, 12);
b34f6357
DB
7937
7938 /* Record the fields for the semantic handler. */
7939 FLD (f_FCCi_2) = f_FCCi_2;
7940 FLD (f_GRi) = f_GRi;
7941 FLD (f_d12) = f_d12;
7942 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ftine", "f_FCCi_2 0x%x", 'x', f_FCCi_2, "f_GRi 0x%x", 'x', f_GRi, "f_d12 0x%x", 'x', f_d12, (char *) 0));
7943
7944#if WITH_PROFILE_MODEL_P
7945 /* Record the fields for profiling. */
7946 if (PROFILE_MODEL_P (current_cpu))
7947 {
7948 FLD (in_FCCi_2) = f_FCCi_2;
7949 FLD (in_GRi) = f_GRi;
7950 FLD (out_h_spr_USI_1) = 1;
7951 FLD (out_h_spr_USI_768) = 768;
7952 FLD (out_h_spr_USI_769) = 769;
7953 FLD (out_h_spr_USI_770) = 770;
7954 FLD (out_h_spr_USI_771) = 771;
7955 }
7956#endif
7957#undef FLD
7958 return idesc;
7959 }
7960
7961 extract_sfmt_break:
7962 {
7963 const IDESC *idesc = &frvbf_insn_data[itype];
7964#define FLD(f) abuf->fields.sfmt_break.f
7965
7966
7967 /* Record the fields for the semantic handler. */
7968 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_break", (char *) 0));
7969
7970#if WITH_PROFILE_MODEL_P
7971 /* Record the fields for profiling. */
7972 if (PROFILE_MODEL_P (current_cpu))
7973 {
7974 FLD (out_h_spr_USI_2) = 2;
7975 }
7976#endif
7977#undef FLD
7978 return idesc;
7979 }
7980
7981 extract_sfmt_andcr:
7982 {
7983 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 7984 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
7985#define FLD(f) abuf->fields.sfmt_andcr.f
7986 UINT f_CRk;
7987 UINT f_CRi;
7988 UINT f_CRj;
7989
7990 f_CRk = EXTRACT_LSB0_UINT (insn, 32, 27, 3);
7991 f_CRi = EXTRACT_LSB0_UINT (insn, 32, 14, 3);
7992 f_CRj = EXTRACT_LSB0_UINT (insn, 32, 2, 3);
7993
7994 /* Record the fields for the semantic handler. */
7995 FLD (f_CRi) = f_CRi;
7996 FLD (f_CRj) = f_CRj;
7997 FLD (f_CRk) = f_CRk;
7998 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_andcr", "f_CRi 0x%x", 'x', f_CRi, "f_CRj 0x%x", 'x', f_CRj, "f_CRk 0x%x", 'x', f_CRk, (char *) 0));
7999
8000#if WITH_PROFILE_MODEL_P
8001 /* Record the fields for profiling. */
8002 if (PROFILE_MODEL_P (current_cpu))
8003 {
8004 FLD (in_CRi) = f_CRi;
8005 FLD (in_CRj) = f_CRj;
8006 FLD (out_CRk) = f_CRk;
8007 }
8008#endif
8009#undef FLD
8010 return idesc;
8011 }
8012
8013 extract_sfmt_notcr:
8014 {
8015 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8016 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8017#define FLD(f) abuf->fields.sfmt_andcr.f
8018 UINT f_CRk;
8019 UINT f_CRj;
8020
8021 f_CRk = EXTRACT_LSB0_UINT (insn, 32, 27, 3);
8022 f_CRj = EXTRACT_LSB0_UINT (insn, 32, 2, 3);
8023
8024 /* Record the fields for the semantic handler. */
8025 FLD (f_CRj) = f_CRj;
8026 FLD (f_CRk) = f_CRk;
8027 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_notcr", "f_CRj 0x%x", 'x', f_CRj, "f_CRk 0x%x", 'x', f_CRk, (char *) 0));
8028
8029#if WITH_PROFILE_MODEL_P
8030 /* Record the fields for profiling. */
8031 if (PROFILE_MODEL_P (current_cpu))
8032 {
8033 FLD (in_CRj) = f_CRj;
8034 FLD (out_CRk) = f_CRk;
8035 }
8036#endif
8037#undef FLD
8038 return idesc;
8039 }
8040
8041 extract_sfmt_ckra:
8042 {
8043 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8044 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8045#define FLD(f) abuf->fields.sfmt_cckeq.f
8046 SI f_CRj_int;
8047
8048 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4));
8049
8050 /* Record the fields for the semantic handler. */
8051 FLD (f_CRj_int) = f_CRj_int;
8052 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ckra", "f_CRj_int 0x%x", 'x', f_CRj_int, (char *) 0));
8053
8054#if WITH_PROFILE_MODEL_P
8055 /* Record the fields for profiling. */
8056 if (PROFILE_MODEL_P (current_cpu))
8057 {
8058 FLD (out_CRj_int) = f_CRj_int;
8059 }
8060#endif
8061#undef FLD
8062 return idesc;
8063 }
8064
8065 extract_sfmt_ckeq:
8066 {
8067 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8068 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8069#define FLD(f) abuf->fields.sfmt_cckeq.f
8070 SI f_CRj_int;
8071 UINT f_ICCi_3;
8072
8073 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4));
8074 f_ICCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2);
8075
8076 /* Record the fields for the semantic handler. */
8077 FLD (f_ICCi_3) = f_ICCi_3;
8078 FLD (f_CRj_int) = f_CRj_int;
8079 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ckeq", "f_ICCi_3 0x%x", 'x', f_ICCi_3, "f_CRj_int 0x%x", 'x', f_CRj_int, (char *) 0));
8080
8081#if WITH_PROFILE_MODEL_P
8082 /* Record the fields for profiling. */
8083 if (PROFILE_MODEL_P (current_cpu))
8084 {
8085 FLD (in_ICCi_3) = f_ICCi_3;
8086 FLD (out_CRj_int) = f_CRj_int;
8087 }
8088#endif
8089#undef FLD
8090 return idesc;
8091 }
8092
8093 extract_sfmt_fckra:
8094 {
8095 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8096 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8097#define FLD(f) abuf->fields.sfmt_cfckne.f
8098 UINT f_CRj_float;
8099
8100 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
8101
8102 /* Record the fields for the semantic handler. */
8103 FLD (f_CRj_float) = f_CRj_float;
8104 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fckra", "f_CRj_float 0x%x", 'x', f_CRj_float, (char *) 0));
8105
8106#if WITH_PROFILE_MODEL_P
8107 /* Record the fields for profiling. */
8108 if (PROFILE_MODEL_P (current_cpu))
8109 {
8110 FLD (out_CRj_float) = f_CRj_float;
8111 }
8112#endif
8113#undef FLD
8114 return idesc;
8115 }
8116
8117 extract_sfmt_fckne:
8118 {
8119 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8120 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8121#define FLD(f) abuf->fields.sfmt_cfckne.f
8122 UINT f_CRj_float;
8123 UINT f_FCCi_3;
8124
8125 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
8126 f_FCCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2);
8127
8128 /* Record the fields for the semantic handler. */
8129 FLD (f_FCCi_3) = f_FCCi_3;
8130 FLD (f_CRj_float) = f_CRj_float;
8131 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fckne", "f_FCCi_3 0x%x", 'x', f_FCCi_3, "f_CRj_float 0x%x", 'x', f_CRj_float, (char *) 0));
8132
8133#if WITH_PROFILE_MODEL_P
8134 /* Record the fields for profiling. */
8135 if (PROFILE_MODEL_P (current_cpu))
8136 {
8137 FLD (in_FCCi_3) = f_FCCi_3;
8138 FLD (out_CRj_float) = f_CRj_float;
8139 }
8140#endif
8141#undef FLD
8142 return idesc;
8143 }
8144
8145 extract_sfmt_cckra:
8146 {
8147 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8148 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8149#define FLD(f) abuf->fields.sfmt_cckeq.f
8150 SI f_CRj_int;
8151 UINT f_CCi;
8152 UINT f_cond;
8153
8154 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4));
8155 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
8156 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
8157
8158 /* Record the fields for the semantic handler. */
8159 FLD (f_CCi) = f_CCi;
8160 FLD (f_cond) = f_cond;
8161 FLD (f_CRj_int) = f_CRj_int;
8162 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cckra", "f_CCi 0x%x", 'x', f_CCi, "f_cond 0x%x", 'x', f_cond, "f_CRj_int 0x%x", 'x', f_CRj_int, (char *) 0));
8163
8164#if WITH_PROFILE_MODEL_P
8165 /* Record the fields for profiling. */
8166 if (PROFILE_MODEL_P (current_cpu))
8167 {
8168 FLD (in_CCi) = f_CCi;
8169 FLD (out_CRj_int) = f_CRj_int;
8170 }
8171#endif
8172#undef FLD
8173 return idesc;
8174 }
8175
8176 extract_sfmt_cckeq:
8177 {
8178 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8179 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8180#define FLD(f) abuf->fields.sfmt_cckeq.f
8181 SI f_CRj_int;
8182 UINT f_CCi;
8183 UINT f_cond;
8184 UINT f_ICCi_3;
8185
8186 f_CRj_int = ((EXTRACT_LSB0_UINT (insn, 32, 26, 2)) + (4));
8187 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
8188 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
8189 f_ICCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2);
8190
8191 /* Record the fields for the semantic handler. */
8192 FLD (f_CCi) = f_CCi;
8193 FLD (f_ICCi_3) = f_ICCi_3;
8194 FLD (f_cond) = f_cond;
8195 FLD (f_CRj_int) = f_CRj_int;
8196 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cckeq", "f_CCi 0x%x", 'x', f_CCi, "f_ICCi_3 0x%x", 'x', f_ICCi_3, "f_cond 0x%x", 'x', f_cond, "f_CRj_int 0x%x", 'x', f_CRj_int, (char *) 0));
8197
8198#if WITH_PROFILE_MODEL_P
8199 /* Record the fields for profiling. */
8200 if (PROFILE_MODEL_P (current_cpu))
8201 {
8202 FLD (in_CCi) = f_CCi;
8203 FLD (in_ICCi_3) = f_ICCi_3;
8204 FLD (out_CRj_int) = f_CRj_int;
8205 }
8206#endif
8207#undef FLD
8208 return idesc;
8209 }
8210
8211 extract_sfmt_cfckra:
8212 {
8213 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8214 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8215#define FLD(f) abuf->fields.sfmt_cfckne.f
8216 UINT f_CRj_float;
8217 UINT f_CCi;
8218 UINT f_cond;
8219
8220 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
8221 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
8222 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
8223
8224 /* Record the fields for the semantic handler. */
8225 FLD (f_CCi) = f_CCi;
8226 FLD (f_cond) = f_cond;
8227 FLD (f_CRj_float) = f_CRj_float;
8228 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cfckra", "f_CCi 0x%x", 'x', f_CCi, "f_cond 0x%x", 'x', f_cond, "f_CRj_float 0x%x", 'x', f_CRj_float, (char *) 0));
8229
8230#if WITH_PROFILE_MODEL_P
8231 /* Record the fields for profiling. */
8232 if (PROFILE_MODEL_P (current_cpu))
8233 {
8234 FLD (in_CCi) = f_CCi;
8235 FLD (out_CRj_float) = f_CRj_float;
8236 }
8237#endif
8238#undef FLD
8239 return idesc;
8240 }
8241
8242 extract_sfmt_cfckne:
8243 {
8244 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8245 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8246#define FLD(f) abuf->fields.sfmt_cfckne.f
8247 UINT f_CRj_float;
8248 UINT f_CCi;
8249 UINT f_cond;
8250 UINT f_FCCi_3;
8251
8252 f_CRj_float = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
8253 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
8254 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
8255 f_FCCi_3 = EXTRACT_LSB0_UINT (insn, 32, 1, 2);
8256
8257 /* Record the fields for the semantic handler. */
8258 FLD (f_CCi) = f_CCi;
8259 FLD (f_FCCi_3) = f_FCCi_3;
8260 FLD (f_cond) = f_cond;
8261 FLD (f_CRj_float) = f_CRj_float;
8262 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cfckne", "f_CCi 0x%x", 'x', f_CCi, "f_FCCi_3 0x%x", 'x', f_FCCi_3, "f_cond 0x%x", 'x', f_cond, "f_CRj_float 0x%x", 'x', f_CRj_float, (char *) 0));
8263
8264#if WITH_PROFILE_MODEL_P
8265 /* Record the fields for profiling. */
8266 if (PROFILE_MODEL_P (current_cpu))
8267 {
8268 FLD (in_CCi) = f_CCi;
8269 FLD (in_FCCi_3) = f_FCCi_3;
8270 FLD (out_CRj_float) = f_CRj_float;
8271 }
8272#endif
8273#undef FLD
8274 return idesc;
8275 }
8276
8277 extract_sfmt_cjmpl:
8278 {
8279 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8280 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8281#define FLD(f) abuf->fields.sfmt_cjmpl.f
8282 UINT f_LI;
8283 UINT f_GRi;
8284 UINT f_CCi;
8285 UINT f_cond;
8286 UINT f_GRj;
8287
8288 f_LI = EXTRACT_LSB0_UINT (insn, 32, 25, 1);
8289 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
8290 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
8291 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
8292 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8293
8294 /* Record the fields for the semantic handler. */
8295 FLD (f_CCi) = f_CCi;
8296 FLD (f_GRi) = f_GRi;
8297 FLD (f_GRj) = f_GRj;
8298 FLD (f_LI) = f_LI;
8299 FLD (f_cond) = f_cond;
8300 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cjmpl", "f_CCi 0x%x", 'x', f_CCi, "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_LI 0x%x", 'x', f_LI, "f_cond 0x%x", 'x', f_cond, (char *) 0));
8301
8302#if WITH_PROFILE_MODEL_P
8303 /* Record the fields for profiling. */
8304 if (PROFILE_MODEL_P (current_cpu))
8305 {
8306 FLD (in_CCi) = f_CCi;
8307 FLD (in_GRi) = f_GRi;
8308 FLD (in_GRj) = f_GRj;
8309 }
8310#endif
8311#undef FLD
8312 return idesc;
8313 }
8314
8315 extract_sfmt_ici:
8316 {
8317 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8318 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8319#define FLD(f) abuf->fields.sfmt_icpl.f
8320 UINT f_GRi;
8321 UINT f_GRj;
8322
8323 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
8324 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8325
8326 /* Record the fields for the semantic handler. */
8327 FLD (f_GRi) = f_GRi;
8328 FLD (f_GRj) = f_GRj;
8329 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_ici", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, (char *) 0));
8330
8331#if WITH_PROFILE_MODEL_P
8332 /* Record the fields for profiling. */
8333 if (PROFILE_MODEL_P (current_cpu))
8334 {
8335 FLD (in_GRi) = f_GRi;
8336 FLD (in_GRj) = f_GRj;
8337 }
8338#endif
8339#undef FLD
8340 return idesc;
8341 }
8342
8343 extract_sfmt_icei:
8344 {
8345 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8346 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8347#define FLD(f) abuf->fields.sfmt_icei.f
8348 UINT f_ae;
8349 UINT f_GRi;
8350 UINT f_GRj;
8351
8352 f_ae = EXTRACT_LSB0_UINT (insn, 32, 25, 1);
8353 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
8354 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8355
8356 /* Record the fields for the semantic handler. */
8357 FLD (f_GRi) = f_GRi;
8358 FLD (f_GRj) = f_GRj;
8359 FLD (f_ae) = f_ae;
8360 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_icei", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_ae 0x%x", 'x', f_ae, (char *) 0));
8361
8362#if WITH_PROFILE_MODEL_P
8363 /* Record the fields for profiling. */
8364 if (PROFILE_MODEL_P (current_cpu))
8365 {
8366 FLD (in_GRi) = f_GRi;
8367 FLD (in_GRj) = f_GRj;
8368 }
8369#endif
8370#undef FLD
8371 return idesc;
8372 }
8373
8374 extract_sfmt_icpl:
8375 {
8376 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8377 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8378#define FLD(f) abuf->fields.sfmt_icpl.f
8379 UINT f_lock;
8380 UINT f_GRi;
8381 UINT f_GRj;
8382
8383 f_lock = EXTRACT_LSB0_UINT (insn, 32, 25, 1);
8384 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
8385 f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8386
8387 /* Record the fields for the semantic handler. */
8388 FLD (f_GRi) = f_GRi;
8389 FLD (f_GRj) = f_GRj;
8390 FLD (f_lock) = f_lock;
8391 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_icpl", "f_GRi 0x%x", 'x', f_GRi, "f_GRj 0x%x", 'x', f_GRj, "f_lock 0x%x", 'x', f_lock, (char *) 0));
8392
8393#if WITH_PROFILE_MODEL_P
8394 /* Record the fields for profiling. */
8395 if (PROFILE_MODEL_P (current_cpu))
8396 {
8397 FLD (in_GRi) = f_GRi;
8398 FLD (in_GRj) = f_GRj;
8399 }
8400#endif
8401#undef FLD
8402 return idesc;
8403 }
8404
8405 extract_sfmt_icul:
8406 {
8407 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8408 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8409#define FLD(f) abuf->fields.sfmt_jmpil.f
8410 UINT f_GRi;
8411
8412 f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
8413
8414 /* Record the fields for the semantic handler. */
8415 FLD (f_GRi) = f_GRi;
8416 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_icul", "f_GRi 0x%x", 'x', f_GRi, (char *) 0));
8417
8418#if WITH_PROFILE_MODEL_P
8419 /* Record the fields for profiling. */
8420 if (PROFILE_MODEL_P (current_cpu))
8421 {
8422 FLD (in_GRi) = f_GRi;
8423 }
8424#endif
8425#undef FLD
8426 return idesc;
8427 }
8428
8429 extract_sfmt_clrgr:
8430 {
8431 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8432 CGEN_INSN_WORD insn = entire_insn;
153431d6 8433#define FLD(f) abuf->fields.sfmt_swapi.f
b34f6357
DB
8434 UINT f_GRk;
8435
8436 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8437
8438 /* Record the fields for the semantic handler. */
8439 FLD (f_GRk) = f_GRk;
8440 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_clrgr", "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
8441
153431d6
DB
8442#if WITH_PROFILE_MODEL_P
8443 /* Record the fields for profiling. */
8444 if (PROFILE_MODEL_P (current_cpu))
8445 {
8446 FLD (in_GRk) = f_GRk;
8447 }
8448#endif
b34f6357
DB
8449#undef FLD
8450 return idesc;
8451 }
8452
8453 extract_sfmt_clrfr:
8454 {
8455 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8456 CGEN_INSN_WORD insn = entire_insn;
153431d6 8457#define FLD(f) abuf->fields.sfmt_cfmadds.f
b34f6357
DB
8458 UINT f_FRk;
8459
8460 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8461
8462 /* Record the fields for the semantic handler. */
8463 FLD (f_FRk) = f_FRk;
8464 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_clrfr", "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8465
153431d6
DB
8466#if WITH_PROFILE_MODEL_P
8467 /* Record the fields for profiling. */
8468 if (PROFILE_MODEL_P (current_cpu))
8469 {
8470 FLD (in_FRk) = f_FRk;
8471 }
8472#endif
8473#undef FLD
8474 return idesc;
8475 }
8476
8477 extract_sfmt_commitgr:
8478 {
8479 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8480 CGEN_INSN_WORD insn = entire_insn;
153431d6
DB
8481#define FLD(f) abuf->fields.sfmt_setlos.f
8482 UINT f_GRk;
8483
8484 f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8485
8486 /* Record the fields for the semantic handler. */
8487 FLD (f_GRk) = f_GRk;
8488 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_commitgr", "f_GRk 0x%x", 'x', f_GRk, (char *) 0));
8489
8490#undef FLD
8491 return idesc;
8492 }
8493
8494 extract_sfmt_commitfr:
8495 {
8496 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8497 CGEN_INSN_WORD insn = entire_insn;
153431d6
DB
8498#define FLD(f) abuf->fields.sfmt_mhsethis.f
8499 UINT f_FRk;
8500
8501 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8502
8503 /* Record the fields for the semantic handler. */
8504 FLD (f_FRk) = f_FRk;
8505 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_commitfr", "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8506
b34f6357
DB
8507#undef FLD
8508 return idesc;
8509 }
8510
8511 extract_sfmt_fitos:
8512 {
8513 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8514 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8515#define FLD(f) abuf->fields.sfmt_fditos.f
8516 UINT f_FRk;
8517 UINT f_FRj;
8518
8519 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8520 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8521
8522 /* Record the fields for the semantic handler. */
8523 FLD (f_FRj) = f_FRj;
8524 FLD (f_FRk) = f_FRk;
8525 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fitos", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8526
8527#if WITH_PROFILE_MODEL_P
8528 /* Record the fields for profiling. */
8529 if (PROFILE_MODEL_P (current_cpu))
8530 {
8531 FLD (in_FRintj) = f_FRj;
8532 FLD (out_FRk) = f_FRk;
8533 }
8534#endif
8535#undef FLD
8536 return idesc;
8537 }
8538
8539 extract_sfmt_fstoi:
8540 {
8541 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8542 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8543#define FLD(f) abuf->fields.sfmt_fdstoi.f
8544 UINT f_FRk;
8545 UINT f_FRj;
8546
8547 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8548 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8549
8550 /* Record the fields for the semantic handler. */
8551 FLD (f_FRj) = f_FRj;
8552 FLD (f_FRk) = f_FRk;
8553 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fstoi", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8554
8555#if WITH_PROFILE_MODEL_P
8556 /* Record the fields for profiling. */
8557 if (PROFILE_MODEL_P (current_cpu))
8558 {
8559 FLD (in_FRj) = f_FRj;
8560 FLD (out_FRintk) = f_FRk;
8561 }
8562#endif
8563#undef FLD
8564 return idesc;
8565 }
8566
8567 extract_sfmt_fitod:
8568 {
8569 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8570 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8571#define FLD(f) abuf->fields.sfmt_fitod.f
8572 UINT f_FRk;
8573 UINT f_FRj;
8574
8575 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8576 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8577
8578 /* Record the fields for the semantic handler. */
8579 FLD (f_FRj) = f_FRj;
8580 FLD (f_FRk) = f_FRk;
8581 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fitod", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8582
8583#if WITH_PROFILE_MODEL_P
8584 /* Record the fields for profiling. */
8585 if (PROFILE_MODEL_P (current_cpu))
8586 {
8587 FLD (in_FRintj) = f_FRj;
8588 FLD (out_FRdoublek) = f_FRk;
8589 }
8590#endif
8591#undef FLD
8592 return idesc;
8593 }
8594
8595 extract_sfmt_fdtoi:
8596 {
8597 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8598 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8599#define FLD(f) abuf->fields.sfmt_fdtoi.f
8600 UINT f_FRk;
8601 UINT f_FRj;
8602
8603 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8604 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8605
8606 /* Record the fields for the semantic handler. */
8607 FLD (f_FRj) = f_FRj;
8608 FLD (f_FRk) = f_FRk;
8609 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fdtoi", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8610
8611#if WITH_PROFILE_MODEL_P
8612 /* Record the fields for profiling. */
8613 if (PROFILE_MODEL_P (current_cpu))
8614 {
8615 FLD (in_FRdoublej) = f_FRj;
8616 FLD (out_FRintk) = f_FRk;
8617 }
8618#endif
8619#undef FLD
8620 return idesc;
8621 }
8622
8623 extract_sfmt_fditos:
8624 {
8625 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8626 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8627#define FLD(f) abuf->fields.sfmt_fditos.f
8628 UINT f_FRk;
8629 UINT f_FRj;
8630
8631 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8632 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8633
8634 /* Record the fields for the semantic handler. */
8635 FLD (f_FRj) = f_FRj;
8636 FLD (f_FRk) = f_FRk;
8637 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fditos", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8638
8639#if WITH_PROFILE_MODEL_P
8640 /* Record the fields for profiling. */
8641 if (PROFILE_MODEL_P (current_cpu))
8642 {
8643 FLD (in_FRintj) = f_FRj;
b29791a8 8644 FLD (in_h_fr_int_USI_add__INT_index_of__INT_FRintj_1) = ((FLD (f_FRj)) + (1));
b34f6357 8645 FLD (out_FRk) = f_FRk;
b29791a8 8646 FLD (out_h_fr_SF_add__INT_index_of__INT_FRk_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
8647 }
8648#endif
8649#undef FLD
8650 return idesc;
8651 }
8652
8653 extract_sfmt_fdstoi:
8654 {
8655 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8656 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8657#define FLD(f) abuf->fields.sfmt_fdstoi.f
8658 UINT f_FRk;
8659 UINT f_FRj;
8660
8661 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8662 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8663
8664 /* Record the fields for the semantic handler. */
8665 FLD (f_FRj) = f_FRj;
8666 FLD (f_FRk) = f_FRk;
8667 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fdstoi", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8668
8669#if WITH_PROFILE_MODEL_P
8670 /* Record the fields for profiling. */
8671 if (PROFILE_MODEL_P (current_cpu))
8672 {
8673 FLD (in_FRj) = f_FRj;
b29791a8 8674 FLD (in_h_fr_SF_add__INT_index_of__INT_FRj_1) = ((FLD (f_FRj)) + (1));
b34f6357 8675 FLD (out_FRintk) = f_FRk;
b29791a8 8676 FLD (out_h_fr_int_USI_add__INT_index_of__INT_FRintk_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
8677 }
8678#endif
8679#undef FLD
8680 return idesc;
8681 }
8682
8683 extract_sfmt_cfitos:
8684 {
8685 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8686 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8687#define FLD(f) abuf->fields.sfmt_cfitos.f
8688 UINT f_FRk;
8689 UINT f_CCi;
8690 UINT f_cond;
8691 UINT f_FRj;
8692
8693 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8694 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
8695 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
8696 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8697
8698 /* Record the fields for the semantic handler. */
8699 FLD (f_CCi) = f_CCi;
8700 FLD (f_FRj) = f_FRj;
8701 FLD (f_cond) = f_cond;
8702 FLD (f_FRk) = f_FRk;
8703 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cfitos", "f_CCi 0x%x", 'x', f_CCi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8704
8705#if WITH_PROFILE_MODEL_P
8706 /* Record the fields for profiling. */
8707 if (PROFILE_MODEL_P (current_cpu))
8708 {
8709 FLD (in_CCi) = f_CCi;
8710 FLD (in_FRintj) = f_FRj;
8711 FLD (out_FRk) = f_FRk;
8712 }
8713#endif
8714#undef FLD
8715 return idesc;
8716 }
8717
8718 extract_sfmt_cfstoi:
8719 {
8720 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8721 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8722#define FLD(f) abuf->fields.sfmt_cfstoi.f
8723 UINT f_FRk;
8724 UINT f_CCi;
8725 UINT f_cond;
8726 UINT f_FRj;
8727
8728 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8729 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
8730 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
8731 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8732
8733 /* Record the fields for the semantic handler. */
8734 FLD (f_CCi) = f_CCi;
8735 FLD (f_FRj) = f_FRj;
8736 FLD (f_cond) = f_cond;
8737 FLD (f_FRk) = f_FRk;
8738 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cfstoi", "f_CCi 0x%x", 'x', f_CCi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8739
8740#if WITH_PROFILE_MODEL_P
8741 /* Record the fields for profiling. */
8742 if (PROFILE_MODEL_P (current_cpu))
8743 {
8744 FLD (in_CCi) = f_CCi;
8745 FLD (in_FRj) = f_FRj;
8746 FLD (out_FRintk) = f_FRk;
8747 }
8748#endif
8749#undef FLD
8750 return idesc;
8751 }
8752
8753 extract_sfmt_nfitos:
8754 {
8755 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8756 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8757#define FLD(f) abuf->fields.sfmt_fditos.f
8758 UINT f_FRk;
8759 UINT f_FRj;
8760
8761 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8762 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8763
8764 /* Record the fields for the semantic handler. */
8765 FLD (f_FRj) = f_FRj;
8766 FLD (f_FRk) = f_FRk;
8767 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nfitos", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8768
8769#if WITH_PROFILE_MODEL_P
8770 /* Record the fields for profiling. */
8771 if (PROFILE_MODEL_P (current_cpu))
8772 {
8773 FLD (in_FRintj) = f_FRj;
8774 FLD (out_FRk) = f_FRk;
8775 }
8776#endif
8777#undef FLD
8778 return idesc;
8779 }
8780
8781 extract_sfmt_nfstoi:
8782 {
8783 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8784 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8785#define FLD(f) abuf->fields.sfmt_fdstoi.f
8786 UINT f_FRk;
8787 UINT f_FRj;
8788
8789 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8790 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8791
8792 /* Record the fields for the semantic handler. */
8793 FLD (f_FRj) = f_FRj;
8794 FLD (f_FRk) = f_FRk;
8795 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nfstoi", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8796
8797#if WITH_PROFILE_MODEL_P
8798 /* Record the fields for profiling. */
8799 if (PROFILE_MODEL_P (current_cpu))
8800 {
8801 FLD (in_FRj) = f_FRj;
8802 FLD (out_FRintk) = f_FRk;
8803 }
8804#endif
8805#undef FLD
8806 return idesc;
8807 }
8808
8809 extract_sfmt_fmovs:
8810 {
8811 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8812 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8813#define FLD(f) abuf->fields.sfmt_cfmadds.f
8814 UINT f_FRk;
8815 UINT f_FRj;
8816
8817 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8818 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8819
8820 /* Record the fields for the semantic handler. */
8821 FLD (f_FRj) = f_FRj;
8822 FLD (f_FRk) = f_FRk;
8823 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fmovs", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8824
8825#if WITH_PROFILE_MODEL_P
8826 /* Record the fields for profiling. */
8827 if (PROFILE_MODEL_P (current_cpu))
8828 {
8829 FLD (in_FRj) = f_FRj;
8830 FLD (out_FRk) = f_FRk;
8831 }
8832#endif
8833#undef FLD
8834 return idesc;
8835 }
8836
8837 extract_sfmt_fmovd:
8838 {
8839 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8840 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8841#define FLD(f) abuf->fields.sfmt_fmaddd.f
8842 UINT f_FRk;
8843 UINT f_FRj;
8844
8845 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8846 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8847
8848 /* Record the fields for the semantic handler. */
8849 FLD (f_FRj) = f_FRj;
8850 FLD (f_FRk) = f_FRk;
8851 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fmovd", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8852
8853#if WITH_PROFILE_MODEL_P
8854 /* Record the fields for profiling. */
8855 if (PROFILE_MODEL_P (current_cpu))
8856 {
8857 FLD (in_FRdoublej) = f_FRj;
8858 FLD (out_FRdoublek) = f_FRk;
8859 }
8860#endif
8861#undef FLD
8862 return idesc;
8863 }
8864
8865 extract_sfmt_fdmovs:
8866 {
8867 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8868 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8869#define FLD(f) abuf->fields.sfmt_fdmadds.f
8870 UINT f_FRk;
8871 UINT f_FRj;
8872
8873 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8874 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8875
8876 /* Record the fields for the semantic handler. */
8877 FLD (f_FRj) = f_FRj;
8878 FLD (f_FRk) = f_FRk;
8879 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fdmovs", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8880
8881#if WITH_PROFILE_MODEL_P
8882 /* Record the fields for profiling. */
8883 if (PROFILE_MODEL_P (current_cpu))
8884 {
8885 FLD (in_FRj) = f_FRj;
b29791a8 8886 FLD (in_h_fr_SF_add__INT_index_of__INT_FRj_1) = ((FLD (f_FRj)) + (1));
b34f6357 8887 FLD (out_FRk) = f_FRk;
b29791a8 8888 FLD (out_h_fr_SF_add__INT_index_of__INT_FRk_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
8889 }
8890#endif
8891#undef FLD
8892 return idesc;
8893 }
8894
8895 extract_sfmt_cfmovs:
8896 {
8897 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8898 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8899#define FLD(f) abuf->fields.sfmt_cfmadds.f
8900 UINT f_FRk;
8901 UINT f_CCi;
8902 UINT f_cond;
8903 UINT f_FRj;
8904
8905 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8906 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
8907 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
8908 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8909
8910 /* Record the fields for the semantic handler. */
8911 FLD (f_CCi) = f_CCi;
8912 FLD (f_FRj) = f_FRj;
8913 FLD (f_cond) = f_cond;
8914 FLD (f_FRk) = f_FRk;
8915 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cfmovs", "f_CCi 0x%x", 'x', f_CCi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8916
8917#if WITH_PROFILE_MODEL_P
8918 /* Record the fields for profiling. */
8919 if (PROFILE_MODEL_P (current_cpu))
8920 {
8921 FLD (in_CCi) = f_CCi;
8922 FLD (in_FRj) = f_FRj;
8923 FLD (out_FRk) = f_FRk;
8924 }
8925#endif
8926#undef FLD
8927 return idesc;
8928 }
8929
8930 extract_sfmt_nfsqrts:
8931 {
8932 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8933 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8934#define FLD(f) abuf->fields.sfmt_cfmadds.f
8935 UINT f_FRk;
8936 UINT f_FRj;
8937
8938 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8939 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8940
8941 /* Record the fields for the semantic handler. */
8942 FLD (f_FRj) = f_FRj;
8943 FLD (f_FRk) = f_FRk;
8944 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nfsqrts", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8945
8946#if WITH_PROFILE_MODEL_P
8947 /* Record the fields for profiling. */
8948 if (PROFILE_MODEL_P (current_cpu))
8949 {
8950 FLD (in_FRj) = f_FRj;
8951 FLD (out_FRk) = f_FRk;
8952 }
8953#endif
8954#undef FLD
8955 return idesc;
8956 }
8957
8958 extract_sfmt_fadds:
8959 {
8960 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8961 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8962#define FLD(f) abuf->fields.sfmt_cfmadds.f
8963 UINT f_FRk;
8964 UINT f_FRi;
8965 UINT f_FRj;
8966
8967 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
8968 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
8969 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
8970
8971 /* Record the fields for the semantic handler. */
8972 FLD (f_FRi) = f_FRi;
8973 FLD (f_FRj) = f_FRj;
8974 FLD (f_FRk) = f_FRk;
8975 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fadds", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
8976
8977#if WITH_PROFILE_MODEL_P
8978 /* Record the fields for profiling. */
8979 if (PROFILE_MODEL_P (current_cpu))
8980 {
8981 FLD (in_FRi) = f_FRi;
8982 FLD (in_FRj) = f_FRj;
8983 FLD (out_FRk) = f_FRk;
8984 }
8985#endif
8986#undef FLD
8987 return idesc;
8988 }
8989
8990 extract_sfmt_faddd:
8991 {
8992 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 8993 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
8994#define FLD(f) abuf->fields.sfmt_fmaddd.f
8995 UINT f_FRk;
8996 UINT f_FRi;
8997 UINT f_FRj;
8998
8999 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9000 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9001 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9002
9003 /* Record the fields for the semantic handler. */
9004 FLD (f_FRi) = f_FRi;
9005 FLD (f_FRj) = f_FRj;
9006 FLD (f_FRk) = f_FRk;
9007 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_faddd", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9008
9009#if WITH_PROFILE_MODEL_P
9010 /* Record the fields for profiling. */
9011 if (PROFILE_MODEL_P (current_cpu))
9012 {
9013 FLD (in_FRdoublei) = f_FRi;
9014 FLD (in_FRdoublej) = f_FRj;
9015 FLD (out_FRdoublek) = f_FRk;
9016 }
9017#endif
9018#undef FLD
9019 return idesc;
9020 }
9021
9022 extract_sfmt_cfadds:
9023 {
9024 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9025 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9026#define FLD(f) abuf->fields.sfmt_cfmadds.f
9027 UINT f_FRk;
9028 UINT f_FRi;
9029 UINT f_CCi;
9030 UINT f_cond;
9031 UINT f_FRj;
9032
9033 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9034 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9035 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
9036 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
9037 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9038
9039 /* Record the fields for the semantic handler. */
9040 FLD (f_CCi) = f_CCi;
9041 FLD (f_FRi) = f_FRi;
9042 FLD (f_FRj) = f_FRj;
9043 FLD (f_cond) = f_cond;
9044 FLD (f_FRk) = f_FRk;
9045 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cfadds", "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9046
9047#if WITH_PROFILE_MODEL_P
9048 /* Record the fields for profiling. */
9049 if (PROFILE_MODEL_P (current_cpu))
9050 {
9051 FLD (in_CCi) = f_CCi;
9052 FLD (in_FRi) = f_FRi;
9053 FLD (in_FRj) = f_FRj;
9054 FLD (out_FRk) = f_FRk;
9055 }
9056#endif
9057#undef FLD
9058 return idesc;
9059 }
9060
9061 extract_sfmt_nfadds:
9062 {
9063 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9064 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9065#define FLD(f) abuf->fields.sfmt_cfmadds.f
9066 UINT f_FRk;
9067 UINT f_FRi;
9068 UINT f_FRj;
9069
9070 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9071 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9072 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9073
9074 /* Record the fields for the semantic handler. */
9075 FLD (f_FRi) = f_FRi;
9076 FLD (f_FRj) = f_FRj;
9077 FLD (f_FRk) = f_FRk;
9078 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nfadds", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9079
9080#if WITH_PROFILE_MODEL_P
9081 /* Record the fields for profiling. */
9082 if (PROFILE_MODEL_P (current_cpu))
9083 {
9084 FLD (in_FRi) = f_FRi;
9085 FLD (in_FRj) = f_FRj;
9086 FLD (out_FRk) = f_FRk;
9087 }
9088#endif
9089#undef FLD
9090 return idesc;
9091 }
9092
9093 extract_sfmt_fcmps:
9094 {
9095 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9096 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9097#define FLD(f) abuf->fields.sfmt_cfcmps.f
9098 UINT f_FCCi_2;
9099 UINT f_FRi;
9100 UINT f_FRj;
9101
9102 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
9103 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9104 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9105
9106 /* Record the fields for the semantic handler. */
9107 FLD (f_FRi) = f_FRi;
9108 FLD (f_FRj) = f_FRj;
9109 FLD (f_FCCi_2) = f_FCCi_2;
9110 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fcmps", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FCCi_2 0x%x", 'x', f_FCCi_2, (char *) 0));
9111
9112#if WITH_PROFILE_MODEL_P
9113 /* Record the fields for profiling. */
9114 if (PROFILE_MODEL_P (current_cpu))
9115 {
9116 FLD (in_FRi) = f_FRi;
9117 FLD (in_FRj) = f_FRj;
9118 FLD (out_FCCi_2) = f_FCCi_2;
9119 }
9120#endif
9121#undef FLD
9122 return idesc;
9123 }
9124
9125 extract_sfmt_fcmpd:
9126 {
9127 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9128 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9129#define FLD(f) abuf->fields.sfmt_fcmpd.f
9130 UINT f_FCCi_2;
9131 UINT f_FRi;
9132 UINT f_FRj;
9133
9134 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
9135 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9136 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9137
9138 /* Record the fields for the semantic handler. */
9139 FLD (f_FRi) = f_FRi;
9140 FLD (f_FRj) = f_FRj;
9141 FLD (f_FCCi_2) = f_FCCi_2;
9142 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fcmpd", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FCCi_2 0x%x", 'x', f_FCCi_2, (char *) 0));
9143
9144#if WITH_PROFILE_MODEL_P
9145 /* Record the fields for profiling. */
9146 if (PROFILE_MODEL_P (current_cpu))
9147 {
9148 FLD (in_FRdoublei) = f_FRi;
9149 FLD (in_FRdoublej) = f_FRj;
9150 FLD (out_FCCi_2) = f_FCCi_2;
9151 }
9152#endif
9153#undef FLD
9154 return idesc;
9155 }
9156
9157 extract_sfmt_cfcmps:
9158 {
9159 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9160 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9161#define FLD(f) abuf->fields.sfmt_cfcmps.f
9162 UINT f_FCCi_2;
9163 UINT f_FRi;
9164 UINT f_CCi;
9165 UINT f_cond;
9166 UINT f_FRj;
9167
9168 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
9169 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9170 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
9171 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
9172 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9173
9174 /* Record the fields for the semantic handler. */
9175 FLD (f_CCi) = f_CCi;
9176 FLD (f_FRi) = f_FRi;
9177 FLD (f_FRj) = f_FRj;
9178 FLD (f_cond) = f_cond;
9179 FLD (f_FCCi_2) = f_FCCi_2;
9180 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cfcmps", "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_FCCi_2 0x%x", 'x', f_FCCi_2, (char *) 0));
9181
9182#if WITH_PROFILE_MODEL_P
9183 /* Record the fields for profiling. */
9184 if (PROFILE_MODEL_P (current_cpu))
9185 {
9186 FLD (in_CCi) = f_CCi;
9187 FLD (in_FRi) = f_FRi;
9188 FLD (in_FRj) = f_FRj;
9189 FLD (out_FCCi_2) = f_FCCi_2;
9190 }
9191#endif
9192#undef FLD
9193 return idesc;
9194 }
9195
9196 extract_sfmt_fdcmps:
9197 {
9198 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9199 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9200#define FLD(f) abuf->fields.sfmt_nfdcmps.f
9201 UINT f_FCCi_2;
9202 UINT f_FRi;
9203 UINT f_FRj;
9204
9205 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
9206 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9207 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9208
9209 /* Record the fields for the semantic handler. */
9210 FLD (f_FRi) = f_FRi;
9211 FLD (f_FRj) = f_FRj;
9212 FLD (f_FCCi_2) = f_FCCi_2;
9213 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fdcmps", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FCCi_2 0x%x", 'x', f_FCCi_2, (char *) 0));
9214
9215#if WITH_PROFILE_MODEL_P
9216 /* Record the fields for profiling. */
9217 if (PROFILE_MODEL_P (current_cpu))
9218 {
9219 FLD (in_FRi) = f_FRi;
9220 FLD (in_FRj) = f_FRj;
b29791a8
DE
9221 FLD (in_h_fr_SF_add__INT_index_of__INT_FRi_1) = ((FLD (f_FRi)) + (1));
9222 FLD (in_h_fr_SF_add__INT_index_of__INT_FRj_1) = ((FLD (f_FRj)) + (1));
b34f6357 9223 FLD (out_FCCi_2) = f_FCCi_2;
b29791a8 9224 FLD (out_h_fccr_UQI_add__INT_index_of__INT_FCCi_2_1) = ((FLD (f_FCCi_2)) + (1));
b34f6357
DB
9225 }
9226#endif
9227#undef FLD
9228 return idesc;
9229 }
9230
9231 extract_sfmt_fmadds:
9232 {
9233 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9234 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9235#define FLD(f) abuf->fields.sfmt_cfmadds.f
9236 UINT f_FRk;
9237 UINT f_FRi;
9238 UINT f_FRj;
9239
9240 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9241 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9242 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9243
9244 /* Record the fields for the semantic handler. */
9245 FLD (f_FRi) = f_FRi;
9246 FLD (f_FRj) = f_FRj;
9247 FLD (f_FRk) = f_FRk;
9248 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fmadds", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9249
9250#if WITH_PROFILE_MODEL_P
9251 /* Record the fields for profiling. */
9252 if (PROFILE_MODEL_P (current_cpu))
9253 {
9254 FLD (in_FRi) = f_FRi;
9255 FLD (in_FRj) = f_FRj;
9256 FLD (in_FRk) = f_FRk;
9257 FLD (out_FRk) = f_FRk;
9258 }
9259#endif
9260#undef FLD
9261 return idesc;
9262 }
9263
9264 extract_sfmt_fmaddd:
9265 {
9266 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9267 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9268#define FLD(f) abuf->fields.sfmt_fmaddd.f
9269 UINT f_FRk;
9270 UINT f_FRi;
9271 UINT f_FRj;
9272
9273 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9274 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9275 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9276
9277 /* Record the fields for the semantic handler. */
9278 FLD (f_FRi) = f_FRi;
9279 FLD (f_FRj) = f_FRj;
9280 FLD (f_FRk) = f_FRk;
9281 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fmaddd", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9282
9283#if WITH_PROFILE_MODEL_P
9284 /* Record the fields for profiling. */
9285 if (PROFILE_MODEL_P (current_cpu))
9286 {
9287 FLD (in_FRdoublei) = f_FRi;
9288 FLD (in_FRdoublej) = f_FRj;
9289 FLD (in_FRdoublek) = f_FRk;
9290 FLD (out_FRdoublek) = f_FRk;
9291 }
9292#endif
9293#undef FLD
9294 return idesc;
9295 }
9296
9297 extract_sfmt_fdmadds:
9298 {
9299 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9300 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9301#define FLD(f) abuf->fields.sfmt_fdmadds.f
9302 UINT f_FRk;
9303 UINT f_FRi;
9304 UINT f_FRj;
9305
9306 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9307 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9308 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9309
9310 /* Record the fields for the semantic handler. */
9311 FLD (f_FRi) = f_FRi;
9312 FLD (f_FRj) = f_FRj;
9313 FLD (f_FRk) = f_FRk;
9314 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fdmadds", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9315
9316#if WITH_PROFILE_MODEL_P
9317 /* Record the fields for profiling. */
9318 if (PROFILE_MODEL_P (current_cpu))
9319 {
9320 FLD (in_FRi) = f_FRi;
9321 FLD (in_FRj) = f_FRj;
9322 FLD (in_FRk) = f_FRk;
b29791a8
DE
9323 FLD (in_h_fr_SF_add__INT_index_of__INT_FRi_1) = ((FLD (f_FRi)) + (1));
9324 FLD (in_h_fr_SF_add__INT_index_of__INT_FRj_1) = ((FLD (f_FRj)) + (1));
9325 FLD (in_h_fr_SF_add__INT_index_of__INT_FRk_1) = ((FLD (f_FRk)) + (1));
b34f6357 9326 FLD (out_FRk) = f_FRk;
b29791a8 9327 FLD (out_h_fr_SF_add__INT_index_of__INT_FRk_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
9328 }
9329#endif
9330#undef FLD
9331 return idesc;
9332 }
9333
9334 extract_sfmt_cfmadds:
9335 {
9336 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9337 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9338#define FLD(f) abuf->fields.sfmt_cfmadds.f
9339 UINT f_FRk;
9340 UINT f_FRi;
9341 UINT f_CCi;
9342 UINT f_cond;
9343 UINT f_FRj;
9344
9345 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9346 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9347 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
9348 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
9349 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9350
9351 /* Record the fields for the semantic handler. */
9352 FLD (f_CCi) = f_CCi;
9353 FLD (f_FRi) = f_FRi;
9354 FLD (f_FRj) = f_FRj;
9355 FLD (f_FRk) = f_FRk;
9356 FLD (f_cond) = f_cond;
9357 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cfmadds", "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, "f_cond 0x%x", 'x', f_cond, (char *) 0));
9358
9359#if WITH_PROFILE_MODEL_P
9360 /* Record the fields for profiling. */
9361 if (PROFILE_MODEL_P (current_cpu))
9362 {
9363 FLD (in_CCi) = f_CCi;
9364 FLD (in_FRi) = f_FRi;
9365 FLD (in_FRj) = f_FRj;
9366 FLD (in_FRk) = f_FRk;
9367 FLD (out_FRk) = f_FRk;
9368 }
9369#endif
9370#undef FLD
9371 return idesc;
9372 }
9373
9374 extract_sfmt_nfmadds:
9375 {
9376 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9377 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9378#define FLD(f) abuf->fields.sfmt_cfmadds.f
9379 UINT f_FRk;
9380 UINT f_FRi;
9381 UINT f_FRj;
9382
9383 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9384 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9385 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9386
9387 /* Record the fields for the semantic handler. */
9388 FLD (f_FRi) = f_FRi;
9389 FLD (f_FRj) = f_FRj;
9390 FLD (f_FRk) = f_FRk;
9391 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nfmadds", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9392
9393#if WITH_PROFILE_MODEL_P
9394 /* Record the fields for profiling. */
9395 if (PROFILE_MODEL_P (current_cpu))
9396 {
9397 FLD (in_FRi) = f_FRi;
9398 FLD (in_FRj) = f_FRj;
9399 FLD (in_FRk) = f_FRk;
9400 FLD (out_FRk) = f_FRk;
9401 }
9402#endif
9403#undef FLD
9404 return idesc;
9405 }
9406
9407 extract_sfmt_fmas:
9408 {
9409 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9410 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9411#define FLD(f) abuf->fields.sfmt_fdmadds.f
9412 UINT f_FRk;
9413 UINT f_FRi;
9414 UINT f_FRj;
9415
9416 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9417 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9418 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9419
9420 /* Record the fields for the semantic handler. */
9421 FLD (f_FRi) = f_FRi;
9422 FLD (f_FRj) = f_FRj;
9423 FLD (f_FRk) = f_FRk;
9424 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fmas", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9425
9426#if WITH_PROFILE_MODEL_P
9427 /* Record the fields for profiling. */
9428 if (PROFILE_MODEL_P (current_cpu))
9429 {
9430 FLD (in_FRi) = f_FRi;
9431 FLD (in_FRj) = f_FRj;
b29791a8
DE
9432 FLD (in_h_fr_SF_add__INT_index_of__INT_FRi_1) = ((FLD (f_FRi)) + (1));
9433 FLD (in_h_fr_SF_add__INT_index_of__INT_FRj_1) = ((FLD (f_FRj)) + (1));
b34f6357 9434 FLD (out_FRk) = f_FRk;
b29791a8 9435 FLD (out_h_fr_SF_add__INT_index_of__INT_FRk_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
9436 }
9437#endif
9438#undef FLD
9439 return idesc;
9440 }
9441
9442 extract_sfmt_fdmas:
9443 {
9444 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9445 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9446#define FLD(f) abuf->fields.sfmt_fdmas.f
9447 UINT f_FRk;
9448 UINT f_FRi;
9449 UINT f_FRj;
9450
9451 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9452 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9453 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9454
9455 /* Record the fields for the semantic handler. */
9456 FLD (f_FRi) = f_FRi;
9457 FLD (f_FRj) = f_FRj;
9458 FLD (f_FRk) = f_FRk;
9459 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_fdmas", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9460
9461#if WITH_PROFILE_MODEL_P
9462 /* Record the fields for profiling. */
9463 if (PROFILE_MODEL_P (current_cpu))
9464 {
9465 FLD (in_FRi) = f_FRi;
9466 FLD (in_FRj) = f_FRj;
b29791a8
DE
9467 FLD (in_h_fr_SF_add__INT_index_of__INT_FRi_1) = ((FLD (f_FRi)) + (1));
9468 FLD (in_h_fr_SF_add__INT_index_of__INT_FRi_2) = ((FLD (f_FRi)) + (2));
9469 FLD (in_h_fr_SF_add__INT_index_of__INT_FRi_3) = ((FLD (f_FRi)) + (3));
9470 FLD (in_h_fr_SF_add__INT_index_of__INT_FRj_1) = ((FLD (f_FRj)) + (1));
9471 FLD (in_h_fr_SF_add__INT_index_of__INT_FRj_2) = ((FLD (f_FRj)) + (2));
9472 FLD (in_h_fr_SF_add__INT_index_of__INT_FRj_3) = ((FLD (f_FRj)) + (3));
b34f6357 9473 FLD (out_FRk) = f_FRk;
b29791a8
DE
9474 FLD (out_h_fr_SF_add__INT_index_of__INT_FRk_1) = ((FLD (f_FRk)) + (1));
9475 FLD (out_h_fr_SF_add__INT_index_of__INT_FRk_2) = ((FLD (f_FRk)) + (2));
9476 FLD (out_h_fr_SF_add__INT_index_of__INT_FRk_3) = ((FLD (f_FRk)) + (3));
b34f6357
DB
9477 }
9478#endif
9479#undef FLD
9480 return idesc;
9481 }
9482
9483 extract_sfmt_cfmas:
9484 {
9485 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9486 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9487#define FLD(f) abuf->fields.sfmt_cfmas.f
9488 UINT f_FRk;
9489 UINT f_FRi;
9490 UINT f_CCi;
9491 UINT f_cond;
9492 UINT f_FRj;
9493
9494 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9495 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9496 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
9497 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
9498 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9499
9500 /* Record the fields for the semantic handler. */
9501 FLD (f_CCi) = f_CCi;
9502 FLD (f_FRi) = f_FRi;
9503 FLD (f_FRj) = f_FRj;
9504 FLD (f_cond) = f_cond;
9505 FLD (f_FRk) = f_FRk;
9506 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cfmas", "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9507
9508#if WITH_PROFILE_MODEL_P
9509 /* Record the fields for profiling. */
9510 if (PROFILE_MODEL_P (current_cpu))
9511 {
9512 FLD (in_CCi) = f_CCi;
9513 FLD (in_FRi) = f_FRi;
9514 FLD (in_FRj) = f_FRj;
b29791a8
DE
9515 FLD (in_h_fr_SF_add__INT_index_of__INT_FRi_1) = ((FLD (f_FRi)) + (1));
9516 FLD (in_h_fr_SF_add__INT_index_of__INT_FRj_1) = ((FLD (f_FRj)) + (1));
b34f6357 9517 FLD (out_FRk) = f_FRk;
b29791a8 9518 FLD (out_h_fr_SF_add__INT_index_of__INT_FRk_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
9519 }
9520#endif
9521#undef FLD
9522 return idesc;
9523 }
9524
9525 extract_sfmt_nfdcmps:
9526 {
9527 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9528 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9529#define FLD(f) abuf->fields.sfmt_nfdcmps.f
9530 UINT f_FRk;
9531 UINT f_FCCi_2;
9532 UINT f_FRi;
9533 UINT f_FRj;
9534
9535 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9536 f_FCCi_2 = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
9537 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9538 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9539
9540 /* Record the fields for the semantic handler. */
9541 FLD (f_FRi) = f_FRi;
9542 FLD (f_FRj) = f_FRj;
9543 FLD (f_FCCi_2) = f_FCCi_2;
9544 FLD (f_FRk) = f_FRk;
9545 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_nfdcmps", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FCCi_2 0x%x", 'x', f_FCCi_2, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9546
9547#if WITH_PROFILE_MODEL_P
9548 /* Record the fields for profiling. */
9549 if (PROFILE_MODEL_P (current_cpu))
9550 {
9551 FLD (in_FRi) = f_FRi;
9552 FLD (in_FRj) = f_FRj;
b29791a8
DE
9553 FLD (in_h_fr_SF_add__INT_index_of__INT_FRi_1) = ((FLD (f_FRi)) + (1));
9554 FLD (in_h_fr_SF_add__INT_index_of__INT_FRj_1) = ((FLD (f_FRj)) + (1));
b34f6357 9555 FLD (out_FCCi_2) = f_FCCi_2;
b29791a8 9556 FLD (out_h_fccr_UQI_add__INT_index_of__INT_FCCi_2_1) = ((FLD (f_FCCi_2)) + (1));
b34f6357
DB
9557 }
9558#endif
9559#undef FLD
9560 return idesc;
9561 }
9562
9563 extract_sfmt_mhsetlos:
9564 {
9565 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9566 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9567#define FLD(f) abuf->fields.sfmt_mhsetlos.f
9568 UINT f_FRk;
9569 INT f_u12_h;
9570 UINT f_u12_l;
9571 INT f_u12;
9572
9573 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
62836bf4 9574 f_u12_h = EXTRACT_LSB0_SINT (insn, 32, 17, 6);
b34f6357
DB
9575 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9576{
9577 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));
9578}
9579
9580 /* Record the fields for the semantic handler. */
9581 FLD (f_u12) = f_u12;
9582 FLD (f_FRk) = f_FRk;
9583 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mhsetlos", "f_u12 0x%x", 'x', f_u12, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9584
9585#if WITH_PROFILE_MODEL_P
9586 /* Record the fields for profiling. */
9587 if (PROFILE_MODEL_P (current_cpu))
9588 {
9589 FLD (out_FRklo) = f_FRk;
9590 }
9591#endif
9592#undef FLD
9593 return idesc;
9594 }
9595
9596 extract_sfmt_mhsethis:
9597 {
9598 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9599 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9600#define FLD(f) abuf->fields.sfmt_mhsethis.f
9601 UINT f_FRk;
9602 INT f_u12_h;
9603 UINT f_u12_l;
9604 INT f_u12;
9605
9606 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
62836bf4 9607 f_u12_h = EXTRACT_LSB0_SINT (insn, 32, 17, 6);
b34f6357
DB
9608 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9609{
9610 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));
9611}
9612
9613 /* Record the fields for the semantic handler. */
9614 FLD (f_u12) = f_u12;
9615 FLD (f_FRk) = f_FRk;
9616 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mhsethis", "f_u12 0x%x", 'x', f_u12, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9617
9618#if WITH_PROFILE_MODEL_P
9619 /* Record the fields for profiling. */
9620 if (PROFILE_MODEL_P (current_cpu))
9621 {
9622 FLD (out_FRkhi) = f_FRk;
9623 }
9624#endif
9625#undef FLD
9626 return idesc;
9627 }
9628
9629 extract_sfmt_mhdsets:
9630 {
9631 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9632 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9633#define FLD(f) abuf->fields.sfmt_mhdsets.f
9634 UINT f_FRk;
9635 INT f_u12_h;
9636 UINT f_u12_l;
9637 INT f_u12;
9638
9639 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
62836bf4 9640 f_u12_h = EXTRACT_LSB0_SINT (insn, 32, 17, 6);
b34f6357
DB
9641 f_u12_l = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9642{
9643 f_u12 = ((((f_u12_h) << (6))) | (f_u12_l));
9644}
9645
9646 /* Record the fields for the semantic handler. */
9647 FLD (f_FRk) = f_FRk;
9648 FLD (f_u12) = f_u12;
9649 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mhdsets", "f_FRk 0x%x", 'x', f_FRk, "f_u12 0x%x", 'x', f_u12, (char *) 0));
9650
9651#if WITH_PROFILE_MODEL_P
9652 /* Record the fields for profiling. */
9653 if (PROFILE_MODEL_P (current_cpu))
9654 {
9655 FLD (in_FRintk) = f_FRk;
9656 FLD (out_FRintk) = f_FRk;
b29791a8
DE
9657 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
9658 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
9659 }
9660#endif
9661#undef FLD
9662 return idesc;
9663 }
9664
9665 extract_sfmt_mhsetloh:
9666 {
9667 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9668 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9669#define FLD(f) abuf->fields.sfmt_mhsetloh.f
9670 UINT f_FRk;
9671 INT f_s5;
9672
9673 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
62836bf4 9674 f_s5 = EXTRACT_LSB0_SINT (insn, 32, 4, 5);
b34f6357
DB
9675
9676 /* Record the fields for the semantic handler. */
9677 FLD (f_FRk) = f_FRk;
9678 FLD (f_s5) = f_s5;
9679 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mhsetloh", "f_FRk 0x%x", 'x', f_FRk, "f_s5 0x%x", 'x', f_s5, (char *) 0));
9680
9681#if WITH_PROFILE_MODEL_P
9682 /* Record the fields for profiling. */
9683 if (PROFILE_MODEL_P (current_cpu))
9684 {
9685 FLD (in_FRklo) = f_FRk;
9686 FLD (out_FRklo) = f_FRk;
9687 }
9688#endif
9689#undef FLD
9690 return idesc;
9691 }
9692
9693 extract_sfmt_mhsethih:
9694 {
9695 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9696 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9697#define FLD(f) abuf->fields.sfmt_mhsethih.f
9698 UINT f_FRk;
9699 INT f_s5;
9700
9701 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
62836bf4 9702 f_s5 = EXTRACT_LSB0_SINT (insn, 32, 4, 5);
b34f6357
DB
9703
9704 /* Record the fields for the semantic handler. */
9705 FLD (f_FRk) = f_FRk;
9706 FLD (f_s5) = f_s5;
9707 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mhsethih", "f_FRk 0x%x", 'x', f_FRk, "f_s5 0x%x", 'x', f_s5, (char *) 0));
9708
9709#if WITH_PROFILE_MODEL_P
9710 /* Record the fields for profiling. */
9711 if (PROFILE_MODEL_P (current_cpu))
9712 {
9713 FLD (in_FRkhi) = f_FRk;
9714 FLD (out_FRkhi) = f_FRk;
9715 }
9716#endif
9717#undef FLD
9718 return idesc;
9719 }
9720
9721 extract_sfmt_mhdseth:
9722 {
9723 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9724 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9725#define FLD(f) abuf->fields.sfmt_mhdseth.f
9726 UINT f_FRk;
9727 INT f_s5;
9728
9729 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
62836bf4 9730 f_s5 = EXTRACT_LSB0_SINT (insn, 32, 4, 5);
b34f6357
DB
9731
9732 /* Record the fields for the semantic handler. */
9733 FLD (f_FRk) = f_FRk;
9734 FLD (f_s5) = f_s5;
9735 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mhdseth", "f_FRk 0x%x", 'x', f_FRk, "f_s5 0x%x", 'x', f_s5, (char *) 0));
9736
9737#if WITH_PROFILE_MODEL_P
9738 /* Record the fields for profiling. */
9739 if (PROFILE_MODEL_P (current_cpu))
9740 {
9741 FLD (in_FRintk) = f_FRk;
b29791a8
DE
9742 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
9743 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357 9744 FLD (out_FRintk) = f_FRk;
b29791a8
DE
9745 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
9746 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
9747 }
9748#endif
9749#undef FLD
9750 return idesc;
9751 }
9752
9753 extract_sfmt_mand:
9754 {
9755 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9756 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9757#define FLD(f) abuf->fields.sfmt_mwcut.f
9758 UINT f_FRk;
9759 UINT f_FRi;
9760 UINT f_FRj;
9761
9762 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9763 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9764 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9765
9766 /* Record the fields for the semantic handler. */
9767 FLD (f_FRi) = f_FRi;
9768 FLD (f_FRj) = f_FRj;
9769 FLD (f_FRk) = f_FRk;
9770 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mand", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9771
9772#if WITH_PROFILE_MODEL_P
9773 /* Record the fields for profiling. */
9774 if (PROFILE_MODEL_P (current_cpu))
9775 {
9776 FLD (in_FRinti) = f_FRi;
9777 FLD (in_FRintj) = f_FRj;
9778 FLD (out_FRintk) = f_FRk;
9779 }
9780#endif
9781#undef FLD
9782 return idesc;
9783 }
9784
9785 extract_sfmt_cmand:
9786 {
9787 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9788 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9789#define FLD(f) abuf->fields.sfmt_cmand.f
9790 UINT f_FRk;
9791 UINT f_FRi;
9792 UINT f_CCi;
9793 UINT f_cond;
9794 UINT f_FRj;
9795
9796 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9797 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9798 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
9799 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
9800 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9801
9802 /* Record the fields for the semantic handler. */
9803 FLD (f_CCi) = f_CCi;
9804 FLD (f_FRi) = f_FRi;
9805 FLD (f_FRj) = f_FRj;
9806 FLD (f_cond) = f_cond;
9807 FLD (f_FRk) = f_FRk;
9808 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmand", "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9809
9810#if WITH_PROFILE_MODEL_P
9811 /* Record the fields for profiling. */
9812 if (PROFILE_MODEL_P (current_cpu))
9813 {
9814 FLD (in_CCi) = f_CCi;
9815 FLD (in_FRinti) = f_FRi;
9816 FLD (in_FRintj) = f_FRj;
9817 FLD (out_FRintk) = f_FRk;
9818 }
9819#endif
9820#undef FLD
9821 return idesc;
9822 }
9823
9824 extract_sfmt_mnot:
9825 {
9826 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9827 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9828#define FLD(f) abuf->fields.sfmt_mcut.f
9829 UINT f_FRk;
9830 UINT f_FRj;
9831
9832 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9833 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9834
9835 /* Record the fields for the semantic handler. */
9836 FLD (f_FRj) = f_FRj;
9837 FLD (f_FRk) = f_FRk;
9838 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mnot", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9839
9840#if WITH_PROFILE_MODEL_P
9841 /* Record the fields for profiling. */
9842 if (PROFILE_MODEL_P (current_cpu))
9843 {
9844 FLD (in_FRintj) = f_FRj;
9845 FLD (out_FRintk) = f_FRk;
9846 }
9847#endif
9848#undef FLD
9849 return idesc;
9850 }
9851
9852 extract_sfmt_cmnot:
9853 {
9854 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9855 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9856#define FLD(f) abuf->fields.sfmt_cmand.f
9857 UINT f_FRk;
9858 UINT f_CCi;
9859 UINT f_cond;
9860 UINT f_FRj;
9861
9862 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9863 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
9864 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
9865 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9866
9867 /* Record the fields for the semantic handler. */
9868 FLD (f_CCi) = f_CCi;
9869 FLD (f_FRj) = f_FRj;
9870 FLD (f_cond) = f_cond;
9871 FLD (f_FRk) = f_FRk;
9872 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmnot", "f_CCi 0x%x", 'x', f_CCi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9873
9874#if WITH_PROFILE_MODEL_P
9875 /* Record the fields for profiling. */
9876 if (PROFILE_MODEL_P (current_cpu))
9877 {
9878 FLD (in_CCi) = f_CCi;
9879 FLD (in_FRintj) = f_FRj;
9880 FLD (out_FRintk) = f_FRk;
9881 }
9882#endif
9883#undef FLD
9884 return idesc;
9885 }
9886
9887 extract_sfmt_mrotli:
9888 {
9889 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9890 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9891#define FLD(f) abuf->fields.sfmt_mwcuti.f
9892 UINT f_FRk;
9893 UINT f_FRi;
9894 UINT f_u6;
9895
9896 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9897 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9898 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9899
9900 /* Record the fields for the semantic handler. */
9901 FLD (f_FRi) = f_FRi;
9902 FLD (f_u6) = f_u6;
9903 FLD (f_FRk) = f_FRk;
9904 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mrotli", "f_FRi 0x%x", 'x', f_FRi, "f_u6 0x%x", 'x', f_u6, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9905
9906#if WITH_PROFILE_MODEL_P
9907 /* Record the fields for profiling. */
9908 if (PROFILE_MODEL_P (current_cpu))
9909 {
9910 FLD (in_FRinti) = f_FRi;
9911 FLD (out_FRintk) = f_FRk;
9912 }
9913#endif
9914#undef FLD
9915 return idesc;
9916 }
9917
9918 extract_sfmt_mwcut:
9919 {
9920 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9921 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9922#define FLD(f) abuf->fields.sfmt_mwcut.f
9923 UINT f_FRk;
9924 UINT f_FRi;
9925 UINT f_FRj;
9926
9927 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9928 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9929 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9930
9931 /* Record the fields for the semantic handler. */
9932 FLD (f_FRi) = f_FRi;
9933 FLD (f_FRj) = f_FRj;
9934 FLD (f_FRk) = f_FRk;
9935 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mwcut", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9936
9937#if WITH_PROFILE_MODEL_P
9938 /* Record the fields for profiling. */
9939 if (PROFILE_MODEL_P (current_cpu))
9940 {
9941 FLD (in_FRinti) = f_FRi;
9942 FLD (in_FRintj) = f_FRj;
b29791a8 9943 FLD (in_h_fr_int_USI_add__INT_index_of__INT_FRinti_1) = ((FLD (f_FRi)) + (1));
b34f6357
DB
9944 FLD (out_FRintk) = f_FRk;
9945 }
9946#endif
9947#undef FLD
9948 return idesc;
9949 }
9950
9951 extract_sfmt_mwcuti:
9952 {
9953 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9954 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9955#define FLD(f) abuf->fields.sfmt_mwcuti.f
9956 UINT f_FRk;
9957 UINT f_FRi;
9958 UINT f_u6;
9959
9960 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9961 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9962 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9963
9964 /* Record the fields for the semantic handler. */
9965 FLD (f_FRi) = f_FRi;
9966 FLD (f_u6) = f_u6;
9967 FLD (f_FRk) = f_FRk;
9968 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mwcuti", "f_FRi 0x%x", 'x', f_FRi, "f_u6 0x%x", 'x', f_u6, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
9969
9970#if WITH_PROFILE_MODEL_P
9971 /* Record the fields for profiling. */
9972 if (PROFILE_MODEL_P (current_cpu))
9973 {
9974 FLD (in_FRinti) = f_FRi;
b29791a8 9975 FLD (in_h_fr_int_USI_add__INT_index_of__INT_FRinti_1) = ((FLD (f_FRi)) + (1));
b34f6357
DB
9976 FLD (out_FRintk) = f_FRk;
9977 }
9978#endif
9979#undef FLD
9980 return idesc;
9981 }
9982
9983 extract_sfmt_mcut:
9984 {
9985 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 9986 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
9987#define FLD(f) abuf->fields.sfmt_mcut.f
9988 UINT f_FRk;
9989 UINT f_ACC40Si;
9990 UINT f_FRj;
9991
9992 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
9993 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
9994 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
9995
9996 /* Record the fields for the semantic handler. */
9997 FLD (f_ACC40Si) = f_ACC40Si;
9998 FLD (f_FRj) = f_FRj;
9999 FLD (f_FRk) = f_FRk;
10000 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mcut", "f_ACC40Si 0x%x", 'x', f_ACC40Si, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
10001
10002#if WITH_PROFILE_MODEL_P
10003 /* Record the fields for profiling. */
10004 if (PROFILE_MODEL_P (current_cpu))
10005 {
10006 FLD (in_ACC40Si) = f_ACC40Si;
10007 FLD (in_FRintj) = f_FRj;
10008 FLD (out_FRintk) = f_FRk;
10009 }
10010#endif
10011#undef FLD
10012 return idesc;
10013 }
10014
10015 extract_sfmt_mcuti:
10016 {
10017 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10018 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10019#define FLD(f) abuf->fields.sfmt_mcuti.f
10020 UINT f_FRk;
10021 UINT f_ACC40Si;
10022 INT f_s6;
10023
10024 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10025 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 10026 f_s6 = EXTRACT_LSB0_SINT (insn, 32, 5, 6);
b34f6357
DB
10027
10028 /* Record the fields for the semantic handler. */
10029 FLD (f_ACC40Si) = f_ACC40Si;
10030 FLD (f_s6) = f_s6;
10031 FLD (f_FRk) = f_FRk;
10032 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mcuti", "f_ACC40Si 0x%x", 'x', f_ACC40Si, "f_s6 0x%x", 'x', f_s6, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
10033
10034#if WITH_PROFILE_MODEL_P
10035 /* Record the fields for profiling. */
10036 if (PROFILE_MODEL_P (current_cpu))
10037 {
10038 FLD (in_ACC40Si) = f_ACC40Si;
10039 FLD (out_FRintk) = f_FRk;
10040 }
10041#endif
10042#undef FLD
10043 return idesc;
10044 }
10045
10046 extract_sfmt_mdcutssi:
10047 {
10048 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10049 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10050#define FLD(f) abuf->fields.sfmt_mdcutssi.f
10051 UINT f_FRk;
10052 UINT f_ACC40Si;
10053 INT f_s6;
10054
10055 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10056 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 10057 f_s6 = EXTRACT_LSB0_SINT (insn, 32, 5, 6);
b34f6357
DB
10058
10059 /* Record the fields for the semantic handler. */
10060 FLD (f_ACC40Si) = f_ACC40Si;
10061 FLD (f_FRk) = f_FRk;
10062 FLD (f_s6) = f_s6;
10063 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mdcutssi", "f_ACC40Si 0x%x", 'x', f_ACC40Si, "f_FRk 0x%x", 'x', f_FRk, "f_s6 0x%x", 'x', f_s6, (char *) 0));
10064
10065#if WITH_PROFILE_MODEL_P
10066 /* Record the fields for profiling. */
10067 if (PROFILE_MODEL_P (current_cpu))
10068 {
10069 FLD (in_ACC40Si) = f_ACC40Si;
b29791a8 10070 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_1) = ((FLD (f_ACC40Si)) + (1));
b34f6357 10071 FLD (out_FRintkeven) = f_FRk;
b29791a8 10072 FLD (out_h_fr_int_USI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
10073 }
10074#endif
10075#undef FLD
10076 return idesc;
10077 }
10078
10079 extract_sfmt_msllhi:
10080 {
10081 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10082 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10083#define FLD(f) abuf->fields.sfmt_msllhi.f
10084 UINT f_FRk;
10085 UINT f_FRi;
10086 UINT f_u6;
10087
10088 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10089 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10090 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10091
10092 /* Record the fields for the semantic handler. */
10093 FLD (f_FRi) = f_FRi;
10094 FLD (f_FRk) = f_FRk;
10095 FLD (f_u6) = f_u6;
10096 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_msllhi", "f_FRi 0x%x", 'x', f_FRi, "f_FRk 0x%x", 'x', f_FRk, "f_u6 0x%x", 'x', f_u6, (char *) 0));
10097
10098#if WITH_PROFILE_MODEL_P
10099 /* Record the fields for profiling. */
10100 if (PROFILE_MODEL_P (current_cpu))
10101 {
10102 FLD (in_FRinti) = f_FRi;
10103 FLD (in_FRintk) = f_FRk;
b29791a8
DE
10104 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10105 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
b34f6357
DB
10106 FLD (out_FRinti) = f_FRi;
10107 FLD (out_FRintk) = f_FRk;
b29791a8
DE
10108 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
10109 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
10110 }
10111#endif
10112#undef FLD
10113 return idesc;
10114 }
10115
10116 extract_sfmt_mdrotli:
10117 {
10118 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10119 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10120#define FLD(f) abuf->fields.sfmt_mdrotli.f
10121 UINT f_FRk;
10122 UINT f_FRi;
10123 INT f_s6;
10124
10125 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10126 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
62836bf4 10127 f_s6 = EXTRACT_LSB0_SINT (insn, 32, 5, 6);
b34f6357
DB
10128
10129 /* Record the fields for the semantic handler. */
10130 FLD (f_FRi) = f_FRi;
10131 FLD (f_FRk) = f_FRk;
10132 FLD (f_s6) = f_s6;
10133 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mdrotli", "f_FRi 0x%x", 'x', f_FRi, "f_FRk 0x%x", 'x', f_FRk, "f_s6 0x%x", 'x', f_s6, (char *) 0));
10134
10135#if WITH_PROFILE_MODEL_P
10136 /* Record the fields for profiling. */
10137 if (PROFILE_MODEL_P (current_cpu))
10138 {
10139 FLD (in_FRintieven) = f_FRi;
b29791a8 10140 FLD (in_h_fr_int_USI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
b34f6357 10141 FLD (out_FRintkeven) = f_FRk;
b29791a8 10142 FLD (out_h_fr_int_USI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
10143 }
10144#endif
10145#undef FLD
10146 return idesc;
10147 }
10148
10149 extract_sfmt_mcplhi:
10150 {
10151 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10152 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10153#define FLD(f) abuf->fields.sfmt_mcplhi.f
10154 UINT f_FRk;
10155 UINT f_FRi;
10156 UINT f_u6;
10157
10158 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10159 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10160 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10161
10162 /* Record the fields for the semantic handler. */
10163 FLD (f_FRi) = f_FRi;
10164 FLD (f_FRk) = f_FRk;
10165 FLD (f_u6) = f_u6;
10166 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mcplhi", "f_FRi 0x%x", 'x', f_FRi, "f_FRk 0x%x", 'x', f_FRk, "f_u6 0x%x", 'x', f_u6, (char *) 0));
10167
10168#if WITH_PROFILE_MODEL_P
10169 /* Record the fields for profiling. */
10170 if (PROFILE_MODEL_P (current_cpu))
10171 {
10172 FLD (in_FRinti) = f_FRi;
10173 FLD (in_FRintk) = f_FRk;
b29791a8
DE
10174 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10175 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_1) = ((FLD (f_FRi)) + (1));
b34f6357
DB
10176 FLD (out_FRinti) = f_FRi;
10177 FLD (out_FRintk) = f_FRk;
b29791a8 10178 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
10179 }
10180#endif
10181#undef FLD
10182 return idesc;
10183 }
10184
10185 extract_sfmt_mcpli:
10186 {
10187 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10188 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10189#define FLD(f) abuf->fields.sfmt_mwcuti.f
10190 UINT f_FRk;
10191 UINT f_FRi;
10192 UINT f_u6;
10193
10194 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10195 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10196 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10197
10198 /* Record the fields for the semantic handler. */
10199 FLD (f_FRi) = f_FRi;
10200 FLD (f_u6) = f_u6;
10201 FLD (f_FRk) = f_FRk;
10202 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mcpli", "f_FRi 0x%x", 'x', f_FRi, "f_u6 0x%x", 'x', f_u6, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
10203
10204#if WITH_PROFILE_MODEL_P
10205 /* Record the fields for profiling. */
10206 if (PROFILE_MODEL_P (current_cpu))
10207 {
10208 FLD (in_FRinti) = f_FRi;
b29791a8 10209 FLD (in_h_fr_int_USI_add__INT_index_of__INT_FRinti_1) = ((FLD (f_FRi)) + (1));
b34f6357
DB
10210 FLD (out_FRintk) = f_FRk;
10211 }
10212#endif
10213#undef FLD
10214 return idesc;
10215 }
10216
10217 extract_sfmt_msaths:
10218 {
10219 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10220 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10221#define FLD(f) abuf->fields.sfmt_cmaddhss.f
10222 UINT f_FRk;
10223 UINT f_FRi;
10224 UINT f_FRj;
10225
10226 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10227 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10228 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10229
10230 /* Record the fields for the semantic handler. */
10231 FLD (f_FRi) = f_FRi;
10232 FLD (f_FRj) = f_FRj;
10233 FLD (f_FRk) = f_FRk;
10234 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_msaths", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
10235
10236#if WITH_PROFILE_MODEL_P
10237 /* Record the fields for profiling. */
10238 if (PROFILE_MODEL_P (current_cpu))
10239 {
10240 FLD (in_FRinti) = f_FRi;
10241 FLD (in_FRintj) = f_FRj;
b29791a8
DE
10242 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10243 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10244 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10245 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10246 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
10247 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
10248 }
10249#endif
10250#undef FLD
10251 return idesc;
10252 }
10253
10254 extract_sfmt_mqsaths:
10255 {
10256 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10257 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10258#define FLD(f) abuf->fields.sfmt_cmqaddhss.f
10259 UINT f_FRk;
10260 UINT f_FRi;
10261 UINT f_FRj;
10262
10263 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10264 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10265 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10266
10267 /* Record the fields for the semantic handler. */
10268 FLD (f_FRi) = f_FRi;
10269 FLD (f_FRj) = f_FRj;
10270 FLD (f_FRk) = f_FRk;
10271 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mqsaths", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
10272
10273#if WITH_PROFILE_MODEL_P
10274 /* Record the fields for profiling. */
10275 if (PROFILE_MODEL_P (current_cpu))
10276 {
10277 FLD (in_FRintieven) = f_FRi;
10278 FLD (in_FRintjeven) = f_FRj;
10279 FLD (in_FRintkeven) = f_FRk;
b29791a8
DE
10280 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
10281 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
10282 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
10283 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
10284 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
10285 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
10286 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
10287 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357 10288 FLD (out_FRintkeven) = f_FRk;
b29791a8
DE
10289 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
10290 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
10291 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
10292 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
10293 }
10294#endif
10295#undef FLD
10296 return idesc;
10297 }
10298
10299 extract_sfmt_mcmpsh:
10300 {
10301 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10302 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10303#define FLD(f) abuf->fields.sfmt_mcmpsh.f
10304 UINT f_FCCk;
10305 UINT f_FRi;
10306 UINT f_FRj;
10307
10308 f_FCCk = EXTRACT_LSB0_UINT (insn, 32, 26, 2);
10309 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10310 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10311
10312 /* Record the fields for the semantic handler. */
10313 FLD (f_FRi) = f_FRi;
10314 FLD (f_FRj) = f_FRj;
10315 FLD (f_FCCk) = f_FCCk;
10316 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mcmpsh", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FCCk 0x%x", 'x', f_FCCk, (char *) 0));
10317
10318#if WITH_PROFILE_MODEL_P
10319 /* Record the fields for profiling. */
10320 if (PROFILE_MODEL_P (current_cpu))
10321 {
10322 FLD (in_FRinti) = f_FRi;
10323 FLD (in_FRintj) = f_FRj;
b29791a8
DE
10324 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10325 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10326 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10327 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357 10328 FLD (out_FCCk) = f_FCCk;
b29791a8 10329 FLD (out_h_fccr_UQI_add__INT_index_of__INT_FCCk_1) = ((FLD (f_FCCk)) + (1));
b34f6357
DB
10330 }
10331#endif
10332#undef FLD
10333 return idesc;
10334 }
10335
10336 extract_sfmt_mabshs:
10337 {
10338 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10339 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10340#define FLD(f) abuf->fields.sfmt_mabshs.f
10341 UINT f_FRk;
10342 UINT f_FRj;
10343
10344 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10345 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10346
10347 /* Record the fields for the semantic handler. */
10348 FLD (f_FRj) = f_FRj;
10349 FLD (f_FRk) = f_FRk;
10350 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mabshs", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
10351
10352#if WITH_PROFILE_MODEL_P
10353 /* Record the fields for profiling. */
10354 if (PROFILE_MODEL_P (current_cpu))
10355 {
10356 FLD (in_FRintj) = f_FRj;
10357 FLD (in_FRintk) = f_FRk;
b29791a8
DE
10358 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10359 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357
DB
10360 FLD (out_FRintj) = f_FRj;
10361 FLD (out_FRintk) = f_FRk;
b29791a8
DE
10362 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
10363 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
10364 }
10365#endif
10366#undef FLD
10367 return idesc;
10368 }
10369
10370 extract_sfmt_cmaddhss:
10371 {
10372 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10373 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10374#define FLD(f) abuf->fields.sfmt_cmaddhss.f
10375 UINT f_FRk;
10376 UINT f_FRi;
10377 UINT f_CCi;
10378 UINT f_cond;
10379 UINT f_FRj;
10380
10381 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10382 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10383 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
10384 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
10385 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10386
10387 /* Record the fields for the semantic handler. */
10388 FLD (f_CCi) = f_CCi;
10389 FLD (f_FRi) = f_FRi;
10390 FLD (f_FRj) = f_FRj;
10391 FLD (f_cond) = f_cond;
10392 FLD (f_FRk) = f_FRk;
10393 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmaddhss", "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
10394
10395#if WITH_PROFILE_MODEL_P
10396 /* Record the fields for profiling. */
10397 if (PROFILE_MODEL_P (current_cpu))
10398 {
10399 FLD (in_CCi) = f_CCi;
10400 FLD (in_FRinti) = f_FRi;
10401 FLD (in_FRintj) = f_FRj;
b29791a8
DE
10402 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10403 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10404 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10405 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10406 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
10407 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
10408 }
10409#endif
10410#undef FLD
10411 return idesc;
10412 }
10413
10414 extract_sfmt_cmqaddhss:
10415 {
10416 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10417 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10418#define FLD(f) abuf->fields.sfmt_cmqaddhss.f
10419 UINT f_FRk;
10420 UINT f_FRi;
10421 UINT f_CCi;
10422 UINT f_cond;
10423 UINT f_FRj;
10424
10425 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10426 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10427 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
10428 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
10429 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10430
10431 /* Record the fields for the semantic handler. */
10432 FLD (f_CCi) = f_CCi;
10433 FLD (f_FRi) = f_FRi;
10434 FLD (f_FRj) = f_FRj;
10435 FLD (f_FRk) = f_FRk;
10436 FLD (f_cond) = f_cond;
10437 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmqaddhss", "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, "f_cond 0x%x", 'x', f_cond, (char *) 0));
10438
10439#if WITH_PROFILE_MODEL_P
10440 /* Record the fields for profiling. */
10441 if (PROFILE_MODEL_P (current_cpu))
10442 {
10443 FLD (in_CCi) = f_CCi;
10444 FLD (in_FRintieven) = f_FRi;
10445 FLD (in_FRintjeven) = f_FRj;
10446 FLD (in_FRintkeven) = f_FRk;
b29791a8
DE
10447 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
10448 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
10449 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
10450 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
10451 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
10452 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
10453 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
10454 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357 10455 FLD (out_FRintkeven) = f_FRk;
b29791a8
DE
10456 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
10457 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
10458 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
10459 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
10460 }
10461#endif
676a64f4
RS
10462#undef FLD
10463 return idesc;
10464 }
10465
10466 extract_sfmt_mqsllhi:
10467 {
10468 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10469 CGEN_INSN_WORD insn = entire_insn;
676a64f4
RS
10470#define FLD(f) abuf->fields.sfmt_mqsllhi.f
10471 UINT f_FRk;
10472 UINT f_FRi;
10473 UINT f_u6;
10474
10475 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10476 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10477 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10478
10479 /* Record the fields for the semantic handler. */
10480 FLD (f_FRi) = f_FRi;
10481 FLD (f_FRk) = f_FRk;
10482 FLD (f_u6) = f_u6;
10483 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mqsllhi", "f_FRi 0x%x", 'x', f_FRi, "f_FRk 0x%x", 'x', f_FRk, "f_u6 0x%x", 'x', f_u6, (char *) 0));
10484
10485#if WITH_PROFILE_MODEL_P
10486 /* Record the fields for profiling. */
10487 if (PROFILE_MODEL_P (current_cpu))
10488 {
10489 FLD (in_FRintieven) = f_FRi;
10490 FLD (in_FRintkeven) = f_FRk;
b29791a8
DE
10491 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
10492 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
10493 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
10494 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
676a64f4
RS
10495 FLD (out_FRintieven) = f_FRi;
10496 FLD (out_FRintkeven) = f_FRk;
b29791a8
DE
10497 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
10498 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
10499 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
10500 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
676a64f4
RS
10501 }
10502#endif
b34f6357
DB
10503#undef FLD
10504 return idesc;
10505 }
10506
10507 extract_sfmt_maddaccs:
10508 {
10509 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10510 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10511#define FLD(f) abuf->fields.sfmt_mdasaccs.f
10512 UINT f_ACC40Sk;
10513 UINT f_ACC40Si;
10514
10515 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10516 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10517
10518 /* Record the fields for the semantic handler. */
10519 FLD (f_ACC40Si) = f_ACC40Si;
10520 FLD (f_ACC40Sk) = f_ACC40Sk;
10521 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_maddaccs", "f_ACC40Si 0x%x", 'x', f_ACC40Si, "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
10522
10523#if WITH_PROFILE_MODEL_P
10524 /* Record the fields for profiling. */
10525 if (PROFILE_MODEL_P (current_cpu))
10526 {
10527 FLD (in_ACC40Si) = f_ACC40Si;
b29791a8 10528 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_1) = ((FLD (f_ACC40Si)) + (1));
b34f6357
DB
10529 FLD (out_ACC40Sk) = f_ACC40Sk;
10530 }
10531#endif
10532#undef FLD
10533 return idesc;
10534 }
10535
10536 extract_sfmt_mdaddaccs:
10537 {
10538 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10539 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10540#define FLD(f) abuf->fields.sfmt_mdasaccs.f
10541 UINT f_ACC40Sk;
10542 UINT f_ACC40Si;
10543
10544 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10545 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10546
10547 /* Record the fields for the semantic handler. */
10548 FLD (f_ACC40Si) = f_ACC40Si;
10549 FLD (f_ACC40Sk) = f_ACC40Sk;
10550 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mdaddaccs", "f_ACC40Si 0x%x", 'x', f_ACC40Si, "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
10551
10552#if WITH_PROFILE_MODEL_P
10553 /* Record the fields for profiling. */
10554 if (PROFILE_MODEL_P (current_cpu))
10555 {
10556 FLD (in_ACC40Si) = f_ACC40Si;
b29791a8
DE
10557 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_1) = ((FLD (f_ACC40Si)) + (1));
10558 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_2) = ((FLD (f_ACC40Si)) + (2));
10559 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_3) = ((FLD (f_ACC40Si)) + (3));
b34f6357 10560 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8 10561 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
b34f6357
DB
10562 }
10563#endif
10564#undef FLD
10565 return idesc;
10566 }
10567
10568 extract_sfmt_masaccs:
10569 {
10570 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10571 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10572#define FLD(f) abuf->fields.sfmt_mdasaccs.f
10573 UINT f_ACC40Sk;
10574 UINT f_ACC40Si;
10575
10576 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10577 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10578
10579 /* Record the fields for the semantic handler. */
10580 FLD (f_ACC40Si) = f_ACC40Si;
10581 FLD (f_ACC40Sk) = f_ACC40Sk;
10582 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_masaccs", "f_ACC40Si 0x%x", 'x', f_ACC40Si, "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
10583
10584#if WITH_PROFILE_MODEL_P
10585 /* Record the fields for profiling. */
10586 if (PROFILE_MODEL_P (current_cpu))
10587 {
10588 FLD (in_ACC40Si) = f_ACC40Si;
b29791a8 10589 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_1) = ((FLD (f_ACC40Si)) + (1));
b34f6357 10590 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8 10591 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
b34f6357
DB
10592 }
10593#endif
10594#undef FLD
10595 return idesc;
10596 }
10597
10598 extract_sfmt_mdasaccs:
10599 {
10600 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10601 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10602#define FLD(f) abuf->fields.sfmt_mdasaccs.f
10603 UINT f_ACC40Sk;
10604 UINT f_ACC40Si;
10605
10606 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10607 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10608
10609 /* Record the fields for the semantic handler. */
10610 FLD (f_ACC40Si) = f_ACC40Si;
10611 FLD (f_ACC40Sk) = f_ACC40Sk;
10612 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mdasaccs", "f_ACC40Si 0x%x", 'x', f_ACC40Si, "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
10613
10614#if WITH_PROFILE_MODEL_P
10615 /* Record the fields for profiling. */
10616 if (PROFILE_MODEL_P (current_cpu))
10617 {
10618 FLD (in_ACC40Si) = f_ACC40Si;
b29791a8
DE
10619 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_1) = ((FLD (f_ACC40Si)) + (1));
10620 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_2) = ((FLD (f_ACC40Si)) + (2));
10621 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Si_3) = ((FLD (f_ACC40Si)) + (3));
b34f6357 10622 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8
DE
10623 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
10624 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2) = ((FLD (f_ACC40Sk)) + (2));
10625 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3) = ((FLD (f_ACC40Sk)) + (3));
b34f6357
DB
10626 }
10627#endif
10628#undef FLD
10629 return idesc;
10630 }
10631
10632 extract_sfmt_mmulhs:
10633 {
10634 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10635 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10636#define FLD(f) abuf->fields.sfmt_cmmachs.f
10637 UINT f_ACC40Sk;
10638 UINT f_FRi;
10639 UINT f_FRj;
10640
10641 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10642 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10643 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10644
10645 /* Record the fields for the semantic handler. */
10646 FLD (f_FRi) = f_FRi;
10647 FLD (f_FRj) = f_FRj;
10648 FLD (f_ACC40Sk) = f_ACC40Sk;
10649 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mmulhs", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
10650
10651#if WITH_PROFILE_MODEL_P
10652 /* Record the fields for profiling. */
10653 if (PROFILE_MODEL_P (current_cpu))
10654 {
10655 FLD (in_FRinti) = f_FRi;
10656 FLD (in_FRintj) = f_FRj;
b29791a8
DE
10657 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10658 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10659 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10660 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357 10661 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8 10662 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
b34f6357
DB
10663 }
10664#endif
10665#undef FLD
10666 return idesc;
10667 }
10668
10669 extract_sfmt_cmmulhs:
10670 {
10671 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10672 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10673#define FLD(f) abuf->fields.sfmt_cmmachs.f
10674 UINT f_ACC40Sk;
10675 UINT f_FRi;
10676 UINT f_CCi;
10677 UINT f_cond;
10678 UINT f_FRj;
10679
10680 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10681 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10682 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
10683 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
10684 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10685
10686 /* Record the fields for the semantic handler. */
10687 FLD (f_CCi) = f_CCi;
10688 FLD (f_FRi) = f_FRi;
10689 FLD (f_FRj) = f_FRj;
10690 FLD (f_cond) = f_cond;
10691 FLD (f_ACC40Sk) = f_ACC40Sk;
10692 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmmulhs", "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
10693
10694#if WITH_PROFILE_MODEL_P
10695 /* Record the fields for profiling. */
10696 if (PROFILE_MODEL_P (current_cpu))
10697 {
10698 FLD (in_CCi) = f_CCi;
10699 FLD (in_FRinti) = f_FRi;
10700 FLD (in_FRintj) = f_FRj;
b29791a8
DE
10701 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10702 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10703 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10704 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357 10705 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8 10706 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
b34f6357
DB
10707 }
10708#endif
10709#undef FLD
10710 return idesc;
10711 }
10712
10713 extract_sfmt_mqmulhs:
10714 {
10715 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10716 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10717#define FLD(f) abuf->fields.sfmt_cmqmachs.f
10718 UINT f_ACC40Sk;
10719 UINT f_FRi;
10720 UINT f_FRj;
10721
10722 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10723 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10724 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10725
10726 /* Record the fields for the semantic handler. */
10727 FLD (f_FRi) = f_FRi;
10728 FLD (f_FRj) = f_FRj;
10729 FLD (f_ACC40Sk) = f_ACC40Sk;
10730 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mqmulhs", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
10731
10732#if WITH_PROFILE_MODEL_P
10733 /* Record the fields for profiling. */
10734 if (PROFILE_MODEL_P (current_cpu))
10735 {
10736 FLD (in_FRintieven) = f_FRi;
10737 FLD (in_FRintjeven) = f_FRj;
b29791a8
DE
10738 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
10739 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
10740 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
10741 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
10742 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
10743 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
10744 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
10745 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357 10746 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8
DE
10747 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
10748 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2) = ((FLD (f_ACC40Sk)) + (2));
10749 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3) = ((FLD (f_ACC40Sk)) + (3));
b34f6357
DB
10750 }
10751#endif
10752#undef FLD
10753 return idesc;
10754 }
10755
10756 extract_sfmt_cmqmulhs:
10757 {
10758 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10759 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10760#define FLD(f) abuf->fields.sfmt_cmqmachs.f
10761 UINT f_ACC40Sk;
10762 UINT f_FRi;
10763 UINT f_CCi;
10764 UINT f_cond;
10765 UINT f_FRj;
10766
10767 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10768 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10769 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
10770 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
10771 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10772
10773 /* Record the fields for the semantic handler. */
10774 FLD (f_CCi) = f_CCi;
10775 FLD (f_FRi) = f_FRi;
10776 FLD (f_FRj) = f_FRj;
10777 FLD (f_cond) = f_cond;
10778 FLD (f_ACC40Sk) = f_ACC40Sk;
10779 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmqmulhs", "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
10780
10781#if WITH_PROFILE_MODEL_P
10782 /* Record the fields for profiling. */
10783 if (PROFILE_MODEL_P (current_cpu))
10784 {
10785 FLD (in_CCi) = f_CCi;
10786 FLD (in_FRintieven) = f_FRi;
10787 FLD (in_FRintjeven) = f_FRj;
b29791a8
DE
10788 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
10789 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
10790 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
10791 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
10792 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
10793 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
10794 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
10795 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357 10796 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8
DE
10797 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
10798 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2) = ((FLD (f_ACC40Sk)) + (2));
10799 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3) = ((FLD (f_ACC40Sk)) + (3));
b34f6357
DB
10800 }
10801#endif
10802#undef FLD
10803 return idesc;
10804 }
10805
10806 extract_sfmt_mmachs:
10807 {
10808 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10809 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10810#define FLD(f) abuf->fields.sfmt_cmmachs.f
10811 UINT f_ACC40Sk;
10812 UINT f_FRi;
10813 UINT f_FRj;
10814
10815 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10816 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10817 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10818
10819 /* Record the fields for the semantic handler. */
10820 FLD (f_ACC40Sk) = f_ACC40Sk;
10821 FLD (f_FRi) = f_FRi;
10822 FLD (f_FRj) = f_FRj;
10823 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mmachs", "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, (char *) 0));
10824
10825#if WITH_PROFILE_MODEL_P
10826 /* Record the fields for profiling. */
10827 if (PROFILE_MODEL_P (current_cpu))
10828 {
10829 FLD (in_ACC40Sk) = f_ACC40Sk;
10830 FLD (in_FRinti) = f_FRi;
10831 FLD (in_FRintj) = f_FRj;
b29791a8
DE
10832 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
10833 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10834 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10835 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10836 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357 10837 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8 10838 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
b34f6357
DB
10839 }
10840#endif
10841#undef FLD
10842 return idesc;
10843 }
10844
10845 extract_sfmt_mmachu:
10846 {
10847 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10848 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10849#define FLD(f) abuf->fields.sfmt_cmmachu.f
10850 UINT f_ACC40Uk;
10851 UINT f_FRi;
10852 UINT f_FRj;
10853
10854 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10855 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10856 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10857
10858 /* Record the fields for the semantic handler. */
10859 FLD (f_ACC40Uk) = f_ACC40Uk;
10860 FLD (f_FRi) = f_FRi;
10861 FLD (f_FRj) = f_FRj;
10862 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mmachu", "f_ACC40Uk 0x%x", 'x', f_ACC40Uk, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, (char *) 0));
10863
10864#if WITH_PROFILE_MODEL_P
10865 /* Record the fields for profiling. */
10866 if (PROFILE_MODEL_P (current_cpu))
10867 {
10868 FLD (in_ACC40Uk) = f_ACC40Uk;
10869 FLD (in_FRinti) = f_FRi;
10870 FLD (in_FRintj) = f_FRj;
b29791a8
DE
10871 FLD (in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1) = ((FLD (f_ACC40Uk)) + (1));
10872 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10873 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10874 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10875 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357 10876 FLD (out_ACC40Uk) = f_ACC40Uk;
b29791a8 10877 FLD (out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1) = ((FLD (f_ACC40Uk)) + (1));
b34f6357
DB
10878 }
10879#endif
10880#undef FLD
10881 return idesc;
10882 }
10883
10884 extract_sfmt_cmmachs:
10885 {
10886 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10887 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10888#define FLD(f) abuf->fields.sfmt_cmmachs.f
10889 UINT f_ACC40Sk;
10890 UINT f_FRi;
10891 UINT f_CCi;
10892 UINT f_cond;
10893 UINT f_FRj;
10894
10895 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10896 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10897 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
10898 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
10899 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10900
10901 /* Record the fields for the semantic handler. */
10902 FLD (f_ACC40Sk) = f_ACC40Sk;
10903 FLD (f_CCi) = f_CCi;
10904 FLD (f_FRi) = f_FRi;
10905 FLD (f_FRj) = f_FRj;
10906 FLD (f_cond) = f_cond;
10907 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmmachs", "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, (char *) 0));
10908
10909#if WITH_PROFILE_MODEL_P
10910 /* Record the fields for profiling. */
10911 if (PROFILE_MODEL_P (current_cpu))
10912 {
10913 FLD (in_ACC40Sk) = f_ACC40Sk;
10914 FLD (in_CCi) = f_CCi;
10915 FLD (in_FRinti) = f_FRi;
10916 FLD (in_FRintj) = f_FRj;
b29791a8
DE
10917 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
10918 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10919 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10920 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10921 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357 10922 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8 10923 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
b34f6357
DB
10924 }
10925#endif
10926#undef FLD
10927 return idesc;
10928 }
10929
10930 extract_sfmt_cmmachu:
10931 {
10932 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10933 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10934#define FLD(f) abuf->fields.sfmt_cmmachu.f
10935 UINT f_ACC40Uk;
10936 UINT f_FRi;
10937 UINT f_CCi;
10938 UINT f_cond;
10939 UINT f_FRj;
10940
10941 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10942 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10943 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
10944 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
10945 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10946
10947 /* Record the fields for the semantic handler. */
10948 FLD (f_ACC40Uk) = f_ACC40Uk;
10949 FLD (f_CCi) = f_CCi;
10950 FLD (f_FRi) = f_FRi;
10951 FLD (f_FRj) = f_FRj;
10952 FLD (f_cond) = f_cond;
10953 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmmachu", "f_ACC40Uk 0x%x", 'x', f_ACC40Uk, "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, (char *) 0));
10954
10955#if WITH_PROFILE_MODEL_P
10956 /* Record the fields for profiling. */
10957 if (PROFILE_MODEL_P (current_cpu))
10958 {
10959 FLD (in_ACC40Uk) = f_ACC40Uk;
10960 FLD (in_CCi) = f_CCi;
10961 FLD (in_FRinti) = f_FRi;
10962 FLD (in_FRintj) = f_FRj;
b29791a8
DE
10963 FLD (in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1) = ((FLD (f_ACC40Uk)) + (1));
10964 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10965 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
10966 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
10967 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357 10968 FLD (out_ACC40Uk) = f_ACC40Uk;
b29791a8 10969 FLD (out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1) = ((FLD (f_ACC40Uk)) + (1));
b34f6357
DB
10970 }
10971#endif
10972#undef FLD
10973 return idesc;
10974 }
10975
10976 extract_sfmt_mqmachs:
10977 {
10978 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 10979 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
10980#define FLD(f) abuf->fields.sfmt_cmqmachs.f
10981 UINT f_ACC40Sk;
10982 UINT f_FRi;
10983 UINT f_FRj;
10984
10985 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
10986 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
10987 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
10988
10989 /* Record the fields for the semantic handler. */
10990 FLD (f_ACC40Sk) = f_ACC40Sk;
10991 FLD (f_FRi) = f_FRi;
10992 FLD (f_FRj) = f_FRj;
10993 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mqmachs", "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, (char *) 0));
10994
10995#if WITH_PROFILE_MODEL_P
10996 /* Record the fields for profiling. */
10997 if (PROFILE_MODEL_P (current_cpu))
10998 {
10999 FLD (in_ACC40Sk) = f_ACC40Sk;
11000 FLD (in_FRintieven) = f_FRi;
11001 FLD (in_FRintjeven) = f_FRj;
b29791a8
DE
11002 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
11003 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2) = ((FLD (f_ACC40Sk)) + (2));
11004 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3) = ((FLD (f_ACC40Sk)) + (3));
11005 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11006 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11007 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11008 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
11009 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11010 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11011 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11012 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357 11013 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8
DE
11014 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
11015 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2) = ((FLD (f_ACC40Sk)) + (2));
11016 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3) = ((FLD (f_ACC40Sk)) + (3));
b34f6357
DB
11017 }
11018#endif
11019#undef FLD
11020 return idesc;
11021 }
11022
11023 extract_sfmt_mqmachu:
11024 {
11025 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11026 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11027#define FLD(f) abuf->fields.sfmt_cmqmachu.f
11028 UINT f_ACC40Uk;
11029 UINT f_FRi;
11030 UINT f_FRj;
11031
11032 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11033 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11034 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11035
11036 /* Record the fields for the semantic handler. */
11037 FLD (f_ACC40Uk) = f_ACC40Uk;
11038 FLD (f_FRi) = f_FRi;
11039 FLD (f_FRj) = f_FRj;
11040 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mqmachu", "f_ACC40Uk 0x%x", 'x', f_ACC40Uk, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, (char *) 0));
11041
11042#if WITH_PROFILE_MODEL_P
11043 /* Record the fields for profiling. */
11044 if (PROFILE_MODEL_P (current_cpu))
11045 {
11046 FLD (in_ACC40Uk) = f_ACC40Uk;
11047 FLD (in_FRintieven) = f_FRi;
11048 FLD (in_FRintjeven) = f_FRj;
b29791a8
DE
11049 FLD (in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1) = ((FLD (f_ACC40Uk)) + (1));
11050 FLD (in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_2) = ((FLD (f_ACC40Uk)) + (2));
11051 FLD (in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_3) = ((FLD (f_ACC40Uk)) + (3));
11052 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11053 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11054 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11055 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
11056 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11057 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11058 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11059 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357 11060 FLD (out_ACC40Uk) = f_ACC40Uk;
b29791a8
DE
11061 FLD (out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1) = ((FLD (f_ACC40Uk)) + (1));
11062 FLD (out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_2) = ((FLD (f_ACC40Uk)) + (2));
11063 FLD (out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_3) = ((FLD (f_ACC40Uk)) + (3));
b34f6357
DB
11064 }
11065#endif
11066#undef FLD
11067 return idesc;
11068 }
11069
11070 extract_sfmt_cmqmachs:
11071 {
11072 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11073 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11074#define FLD(f) abuf->fields.sfmt_cmqmachs.f
11075 UINT f_ACC40Sk;
11076 UINT f_FRi;
11077 UINT f_CCi;
11078 UINT f_cond;
11079 UINT f_FRj;
11080
11081 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11082 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11083 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
11084 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
11085 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11086
11087 /* Record the fields for the semantic handler. */
11088 FLD (f_ACC40Sk) = f_ACC40Sk;
11089 FLD (f_CCi) = f_CCi;
11090 FLD (f_FRi) = f_FRi;
11091 FLD (f_FRj) = f_FRj;
11092 FLD (f_cond) = f_cond;
11093 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmqmachs", "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, (char *) 0));
11094
11095#if WITH_PROFILE_MODEL_P
11096 /* Record the fields for profiling. */
11097 if (PROFILE_MODEL_P (current_cpu))
11098 {
11099 FLD (in_ACC40Sk) = f_ACC40Sk;
11100 FLD (in_CCi) = f_CCi;
11101 FLD (in_FRintieven) = f_FRi;
11102 FLD (in_FRintjeven) = f_FRj;
b29791a8
DE
11103 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
11104 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2) = ((FLD (f_ACC40Sk)) + (2));
11105 FLD (in_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3) = ((FLD (f_ACC40Sk)) + (3));
11106 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11107 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11108 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11109 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
11110 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11111 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11112 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11113 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357 11114 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8
DE
11115 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
11116 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_2) = ((FLD (f_ACC40Sk)) + (2));
11117 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_3) = ((FLD (f_ACC40Sk)) + (3));
b34f6357
DB
11118 }
11119#endif
11120#undef FLD
11121 return idesc;
11122 }
11123
11124 extract_sfmt_cmqmachu:
11125 {
11126 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11127 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11128#define FLD(f) abuf->fields.sfmt_cmqmachu.f
11129 UINT f_ACC40Uk;
11130 UINT f_FRi;
11131 UINT f_CCi;
11132 UINT f_cond;
11133 UINT f_FRj;
11134
11135 f_ACC40Uk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11136 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11137 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
11138 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
11139 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11140
11141 /* Record the fields for the semantic handler. */
11142 FLD (f_ACC40Uk) = f_ACC40Uk;
11143 FLD (f_CCi) = f_CCi;
11144 FLD (f_FRi) = f_FRi;
11145 FLD (f_FRj) = f_FRj;
11146 FLD (f_cond) = f_cond;
11147 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmqmachu", "f_ACC40Uk 0x%x", 'x', f_ACC40Uk, "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, (char *) 0));
11148
11149#if WITH_PROFILE_MODEL_P
11150 /* Record the fields for profiling. */
11151 if (PROFILE_MODEL_P (current_cpu))
11152 {
11153 FLD (in_ACC40Uk) = f_ACC40Uk;
11154 FLD (in_CCi) = f_CCi;
11155 FLD (in_FRintieven) = f_FRi;
11156 FLD (in_FRintjeven) = f_FRj;
b29791a8
DE
11157 FLD (in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1) = ((FLD (f_ACC40Uk)) + (1));
11158 FLD (in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_2) = ((FLD (f_ACC40Uk)) + (2));
11159 FLD (in_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_3) = ((FLD (f_ACC40Uk)) + (3));
11160 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11161 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11162 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11163 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
11164 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11165 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11166 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11167 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357 11168 FLD (out_ACC40Uk) = f_ACC40Uk;
b29791a8
DE
11169 FLD (out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_1) = ((FLD (f_ACC40Uk)) + (1));
11170 FLD (out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_2) = ((FLD (f_ACC40Uk)) + (2));
11171 FLD (out_h_acc40U_UDI_add__INT_index_of__INT_ACC40Uk_3) = ((FLD (f_ACC40Uk)) + (3));
b34f6357
DB
11172 }
11173#endif
11174#undef FLD
11175 return idesc;
11176 }
11177
11178 extract_sfmt_mcpxrs:
11179 {
11180 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11181 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11182#define FLD(f) abuf->fields.sfmt_cmmachs.f
11183 UINT f_ACC40Sk;
11184 UINT f_FRi;
11185 UINT f_FRj;
11186
11187 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11188 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11189 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11190
11191 /* Record the fields for the semantic handler. */
11192 FLD (f_FRi) = f_FRi;
11193 FLD (f_FRj) = f_FRj;
11194 FLD (f_ACC40Sk) = f_ACC40Sk;
11195 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mcpxrs", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
11196
11197#if WITH_PROFILE_MODEL_P
11198 /* Record the fields for profiling. */
11199 if (PROFILE_MODEL_P (current_cpu))
11200 {
11201 FLD (in_FRinti) = f_FRi;
11202 FLD (in_FRintj) = f_FRj;
b29791a8
DE
11203 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11204 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11205 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11206 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357
DB
11207 FLD (out_ACC40Sk) = f_ACC40Sk;
11208 }
11209#endif
11210#undef FLD
11211 return idesc;
11212 }
11213
11214 extract_sfmt_cmcpxrs:
11215 {
11216 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11217 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11218#define FLD(f) abuf->fields.sfmt_cmmachs.f
11219 UINT f_ACC40Sk;
11220 UINT f_FRi;
11221 UINT f_CCi;
11222 UINT f_cond;
11223 UINT f_FRj;
11224
11225 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11226 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11227 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
11228 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
11229 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11230
11231 /* Record the fields for the semantic handler. */
11232 FLD (f_CCi) = f_CCi;
11233 FLD (f_FRi) = f_FRi;
11234 FLD (f_FRj) = f_FRj;
11235 FLD (f_cond) = f_cond;
11236 FLD (f_ACC40Sk) = f_ACC40Sk;
11237 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmcpxrs", "f_CCi 0x%x", 'x', f_CCi, "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_cond 0x%x", 'x', f_cond, "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
11238
11239#if WITH_PROFILE_MODEL_P
11240 /* Record the fields for profiling. */
11241 if (PROFILE_MODEL_P (current_cpu))
11242 {
11243 FLD (in_CCi) = f_CCi;
11244 FLD (in_FRinti) = f_FRi;
11245 FLD (in_FRintj) = f_FRj;
b29791a8
DE
11246 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11247 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11248 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11249 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357
DB
11250 FLD (out_ACC40Sk) = f_ACC40Sk;
11251 }
11252#endif
11253#undef FLD
11254 return idesc;
11255 }
11256
11257 extract_sfmt_mqcpxrs:
11258 {
11259 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11260 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11261#define FLD(f) abuf->fields.sfmt_cmqmachs.f
11262 UINT f_ACC40Sk;
11263 UINT f_FRi;
11264 UINT f_FRj;
11265
11266 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11267 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11268 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11269
11270 /* Record the fields for the semantic handler. */
11271 FLD (f_FRi) = f_FRi;
11272 FLD (f_FRj) = f_FRj;
11273 FLD (f_ACC40Sk) = f_ACC40Sk;
11274 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mqcpxrs", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
11275
11276#if WITH_PROFILE_MODEL_P
11277 /* Record the fields for profiling. */
11278 if (PROFILE_MODEL_P (current_cpu))
11279 {
11280 FLD (in_FRintieven) = f_FRi;
11281 FLD (in_FRintjeven) = f_FRj;
b29791a8
DE
11282 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11283 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11284 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11285 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
11286 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11287 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11288 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11289 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357 11290 FLD (out_ACC40Sk) = f_ACC40Sk;
b29791a8 11291 FLD (out_h_acc40S_DI_add__INT_index_of__INT_ACC40Sk_1) = ((FLD (f_ACC40Sk)) + (1));
b34f6357
DB
11292 }
11293#endif
11294#undef FLD
11295 return idesc;
11296 }
11297
11298 extract_sfmt_mexpdhw:
11299 {
11300 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11301 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11302#define FLD(f) abuf->fields.sfmt_cmexpdhw.f
11303 UINT f_FRk;
11304 UINT f_FRi;
11305 UINT f_u6;
11306
11307 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11308 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11309 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11310
11311 /* Record the fields for the semantic handler. */
11312 FLD (f_FRi) = f_FRi;
11313 FLD (f_FRk) = f_FRk;
11314 FLD (f_u6) = f_u6;
11315 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mexpdhw", "f_FRi 0x%x", 'x', f_FRi, "f_FRk 0x%x", 'x', f_FRk, "f_u6 0x%x", 'x', f_u6, (char *) 0));
11316
11317#if WITH_PROFILE_MODEL_P
11318 /* Record the fields for profiling. */
11319 if (PROFILE_MODEL_P (current_cpu))
11320 {
b29791a8
DE
11321 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11322 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11323 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11324 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
11325 }
11326#endif
11327#undef FLD
11328 return idesc;
11329 }
11330
11331 extract_sfmt_cmexpdhw:
11332 {
11333 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11334 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11335#define FLD(f) abuf->fields.sfmt_cmexpdhw.f
11336 UINT f_FRk;
11337 UINT f_FRi;
11338 UINT f_CCi;
11339 UINT f_cond;
11340 UINT f_u6;
11341
11342 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11343 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11344 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
11345 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
11346 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11347
11348 /* Record the fields for the semantic handler. */
11349 FLD (f_CCi) = f_CCi;
11350 FLD (f_cond) = f_cond;
11351 FLD (f_FRi) = f_FRi;
11352 FLD (f_FRk) = f_FRk;
11353 FLD (f_u6) = f_u6;
11354 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmexpdhw", "f_CCi 0x%x", 'x', f_CCi, "f_cond 0x%x", 'x', f_cond, "f_FRi 0x%x", 'x', f_FRi, "f_FRk 0x%x", 'x', f_FRk, "f_u6 0x%x", 'x', f_u6, (char *) 0));
11355
11356#if WITH_PROFILE_MODEL_P
11357 /* Record the fields for profiling. */
11358 if (PROFILE_MODEL_P (current_cpu))
11359 {
11360 FLD (in_CCi) = f_CCi;
b29791a8
DE
11361 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11362 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11363 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11364 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
11365 }
11366#endif
11367#undef FLD
11368 return idesc;
11369 }
11370
11371 extract_sfmt_mexpdhd:
11372 {
11373 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11374 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11375#define FLD(f) abuf->fields.sfmt_cmexpdhd.f
11376 UINT f_FRk;
11377 UINT f_FRi;
11378 UINT f_u6;
11379
11380 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11381 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11382 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11383
11384 /* Record the fields for the semantic handler. */
11385 FLD (f_FRk) = f_FRk;
11386 FLD (f_FRi) = f_FRi;
11387 FLD (f_u6) = f_u6;
11388 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mexpdhd", "f_FRk 0x%x", 'x', f_FRk, "f_FRi 0x%x", 'x', f_FRi, "f_u6 0x%x", 'x', f_u6, (char *) 0));
11389
11390#if WITH_PROFILE_MODEL_P
11391 /* Record the fields for profiling. */
11392 if (PROFILE_MODEL_P (current_cpu))
11393 {
11394 FLD (in_FRintkeven) = f_FRk;
b29791a8
DE
11395 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11396 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
b34f6357 11397 FLD (out_FRintkeven) = f_FRk;
b29791a8
DE
11398 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11399 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
11400 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11401 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
11402 }
11403#endif
11404#undef FLD
11405 return idesc;
11406 }
11407
11408 extract_sfmt_cmexpdhd:
11409 {
11410 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11411 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11412#define FLD(f) abuf->fields.sfmt_cmexpdhd.f
11413 UINT f_FRk;
11414 UINT f_FRi;
11415 UINT f_CCi;
11416 UINT f_cond;
11417 UINT f_u6;
11418
11419 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11420 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11421 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
11422 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
11423 f_u6 = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11424
11425 /* Record the fields for the semantic handler. */
11426 FLD (f_CCi) = f_CCi;
11427 FLD (f_FRk) = f_FRk;
11428 FLD (f_cond) = f_cond;
11429 FLD (f_FRi) = f_FRi;
11430 FLD (f_u6) = f_u6;
11431 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmexpdhd", "f_CCi 0x%x", 'x', f_CCi, "f_FRk 0x%x", 'x', f_FRk, "f_cond 0x%x", 'x', f_cond, "f_FRi 0x%x", 'x', f_FRi, "f_u6 0x%x", 'x', f_u6, (char *) 0));
11432
11433#if WITH_PROFILE_MODEL_P
11434 /* Record the fields for profiling. */
11435 if (PROFILE_MODEL_P (current_cpu))
11436 {
11437 FLD (in_CCi) = f_CCi;
11438 FLD (in_FRintkeven) = f_FRk;
b29791a8
DE
11439 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11440 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
b34f6357 11441 FLD (out_FRintkeven) = f_FRk;
b29791a8
DE
11442 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11443 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
11444 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11445 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
11446 }
11447#endif
11448#undef FLD
11449 return idesc;
11450 }
11451
11452 extract_sfmt_mpackh:
11453 {
11454 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11455 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11456#define FLD(f) abuf->fields.sfmt_cmaddhss.f
11457 UINT f_FRk;
11458 UINT f_FRi;
11459 UINT f_FRj;
11460
11461 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11462 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11463 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11464
11465 /* Record the fields for the semantic handler. */
11466 FLD (f_FRi) = f_FRi;
11467 FLD (f_FRj) = f_FRj;
11468 FLD (f_FRk) = f_FRk;
11469 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mpackh", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
11470
11471#if WITH_PROFILE_MODEL_P
11472 /* Record the fields for profiling. */
11473 if (PROFILE_MODEL_P (current_cpu))
11474 {
b29791a8
DE
11475 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11476 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11477 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11478 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
11479 }
11480#endif
11481#undef FLD
11482 return idesc;
11483 }
11484
11485 extract_sfmt_mdpackh:
11486 {
11487 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11488 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11489#define FLD(f) abuf->fields.sfmt_mdpackh.f
11490 UINT f_FRk;
11491 UINT f_FRi;
11492 UINT f_FRj;
11493
11494 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11495 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11496 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11497
11498 /* Record the fields for the semantic handler. */
11499 FLD (f_FRi) = f_FRi;
11500 FLD (f_FRj) = f_FRj;
11501 FLD (f_FRk) = f_FRk;
11502 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mdpackh", "f_FRi 0x%x", 'x', f_FRi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
11503
11504#if WITH_PROFILE_MODEL_P
11505 /* Record the fields for profiling. */
11506 if (PROFILE_MODEL_P (current_cpu))
11507 {
11508 FLD (in_FRintieven) = f_FRi;
11509 FLD (in_FRintjeven) = f_FRj;
11510 FLD (in_FRintkeven) = f_FRk;
b29791a8
DE
11511 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11512 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11513 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11514 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357
DB
11515 FLD (out_FRintieven) = f_FRi;
11516 FLD (out_FRintjeven) = f_FRj;
11517 FLD (out_FRintkeven) = f_FRk;
b29791a8
DE
11518 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11519 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
11520 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11521 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
11522 }
11523#endif
11524#undef FLD
11525 return idesc;
11526 }
11527
11528 extract_sfmt_munpackh:
11529 {
11530 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11531 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11532#define FLD(f) abuf->fields.sfmt_munpackh.f
11533 UINT f_FRk;
11534 UINT f_FRi;
11535
11536 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11537 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11538
11539 /* Record the fields for the semantic handler. */
11540 FLD (f_FRi) = f_FRi;
11541 FLD (f_FRk) = f_FRk;
11542 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_munpackh", "f_FRi 0x%x", 'x', f_FRi, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
11543
11544#if WITH_PROFILE_MODEL_P
11545 /* Record the fields for profiling. */
11546 if (PROFILE_MODEL_P (current_cpu))
11547 {
11548 FLD (in_FRinti) = f_FRi;
11549 FLD (in_FRintkeven) = f_FRk;
b29791a8
DE
11550 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
11551 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRinti_0) = ((FLD (f_FRi)) + (0));
b34f6357
DB
11552 FLD (out_FRinti) = f_FRi;
11553 FLD (out_FRintkeven) = f_FRk;
b29791a8
DE
11554 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11555 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_add__INT_0_1) = ((FLD (f_FRk)) + (((0) + (1))));
11556 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11557 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_add__INT_0_1) = ((FLD (f_FRk)) + (((0) + (1))));
b34f6357
DB
11558 }
11559#endif
11560#undef FLD
11561 return idesc;
11562 }
11563
11564 extract_sfmt_mdunpackh:
11565 {
11566 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11567 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11568#define FLD(f) abuf->fields.sfmt_mdunpackh.f
11569 UINT f_FRk;
11570 UINT f_FRi;
11571
11572 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11573 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11574
11575 /* Record the fields for the semantic handler. */
11576 FLD (f_FRi) = f_FRi;
11577 FLD (f_FRk) = f_FRk;
11578 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mdunpackh", "f_FRi 0x%x", 'x', f_FRi, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
11579
11580#if WITH_PROFILE_MODEL_P
11581 /* Record the fields for profiling. */
11582 if (PROFILE_MODEL_P (current_cpu))
11583 {
11584 FLD (in_FRintieven) = f_FRi;
11585 FLD (in_FRintk) = f_FRk;
b29791a8
DE
11586 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11587 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
11588 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_0) = ((FLD (f_FRi)) + (0));
11589 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintieven_1) = ((FLD (f_FRi)) + (1));
b34f6357
DB
11590 FLD (out_FRintieven) = f_FRi;
11591 FLD (out_FRintk) = f_FRk;
b29791a8
DE
11592 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11593 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_2) = ((FLD (f_FRk)) + (2));
11594 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_add__INT_0_1) = ((FLD (f_FRk)) + (((0) + (1))));
11595 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_add__INT_2_1) = ((FLD (f_FRk)) + (((2) + (1))));
11596 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11597 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_2) = ((FLD (f_FRk)) + (2));
11598 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_add__INT_0_1) = ((FLD (f_FRk)) + (((0) + (1))));
11599 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_add__INT_2_1) = ((FLD (f_FRk)) + (((2) + (1))));
b34f6357
DB
11600 }
11601#endif
11602#undef FLD
11603 return idesc;
11604 }
11605
11606 extract_sfmt_mbtoh:
11607 {
11608 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11609 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11610#define FLD(f) abuf->fields.sfmt_cmbtoh.f
11611 UINT f_FRk;
11612 UINT f_FRj;
11613
11614 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11615 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11616
11617 /* Record the fields for the semantic handler. */
11618 FLD (f_FRj) = f_FRj;
11619 FLD (f_FRk) = f_FRk;
11620 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mbtoh", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
11621
11622#if WITH_PROFILE_MODEL_P
11623 /* Record the fields for profiling. */
11624 if (PROFILE_MODEL_P (current_cpu))
11625 {
11626 FLD (in_FRintj) = f_FRj;
11627 FLD (in_FRintkeven) = f_FRk;
b29791a8
DE
11628 FLD (in_h_fr_0_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11629 FLD (in_h_fr_1_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11630 FLD (in_h_fr_2_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11631 FLD (in_h_fr_3_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357
DB
11632 FLD (out_FRintj) = f_FRj;
11633 FLD (out_FRintkeven) = f_FRk;
b29791a8
DE
11634 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11635 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
11636 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11637 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
11638 }
11639#endif
11640#undef FLD
11641 return idesc;
11642 }
11643
11644 extract_sfmt_cmbtoh:
11645 {
11646 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11647 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11648#define FLD(f) abuf->fields.sfmt_cmbtoh.f
11649 UINT f_FRk;
11650 UINT f_CCi;
11651 UINT f_cond;
11652 UINT f_FRj;
11653
11654 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11655 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
11656 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
11657 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11658
11659 /* Record the fields for the semantic handler. */
11660 FLD (f_CCi) = f_CCi;
11661 FLD (f_FRj) = f_FRj;
11662 FLD (f_FRk) = f_FRk;
11663 FLD (f_cond) = f_cond;
11664 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmbtoh", "f_CCi 0x%x", 'x', f_CCi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, "f_cond 0x%x", 'x', f_cond, (char *) 0));
11665
11666#if WITH_PROFILE_MODEL_P
11667 /* Record the fields for profiling. */
11668 if (PROFILE_MODEL_P (current_cpu))
11669 {
11670 FLD (in_CCi) = f_CCi;
11671 FLD (in_FRintj) = f_FRj;
11672 FLD (in_FRintkeven) = f_FRk;
b29791a8
DE
11673 FLD (in_h_fr_0_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11674 FLD (in_h_fr_1_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11675 FLD (in_h_fr_2_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11676 FLD (in_h_fr_3_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357
DB
11677 FLD (out_FRintj) = f_FRj;
11678 FLD (out_FRintkeven) = f_FRk;
b29791a8
DE
11679 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11680 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
11681 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_0) = ((FLD (f_FRk)) + (0));
11682 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintkeven_1) = ((FLD (f_FRk)) + (1));
b34f6357
DB
11683 }
11684#endif
11685#undef FLD
11686 return idesc;
11687 }
11688
11689 extract_sfmt_mhtob:
11690 {
11691 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11692 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11693#define FLD(f) abuf->fields.sfmt_cmhtob.f
11694 UINT f_FRk;
11695 UINT f_FRj;
11696
11697 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11698 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11699
11700 /* Record the fields for the semantic handler. */
11701 FLD (f_FRj) = f_FRj;
11702 FLD (f_FRk) = f_FRk;
11703 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mhtob", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
11704
11705#if WITH_PROFILE_MODEL_P
11706 /* Record the fields for profiling. */
11707 if (PROFILE_MODEL_P (current_cpu))
11708 {
11709 FLD (in_FRintjeven) = f_FRj;
11710 FLD (in_FRintk) = f_FRk;
b29791a8
DE
11711 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11712 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
11713 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11714 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357
DB
11715 FLD (out_FRintjeven) = f_FRj;
11716 FLD (out_FRintk) = f_FRk;
b29791a8
DE
11717 FLD (out_h_fr_0_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11718 FLD (out_h_fr_1_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11719 FLD (out_h_fr_2_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11720 FLD (out_h_fr_3_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
11721 }
11722#endif
11723#undef FLD
11724 return idesc;
11725 }
11726
11727 extract_sfmt_cmhtob:
11728 {
11729 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11730 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11731#define FLD(f) abuf->fields.sfmt_cmhtob.f
11732 UINT f_FRk;
11733 UINT f_CCi;
11734 UINT f_cond;
11735 UINT f_FRj;
11736
11737 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11738 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
11739 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
11740 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11741
11742 /* Record the fields for the semantic handler. */
11743 FLD (f_CCi) = f_CCi;
11744 FLD (f_FRj) = f_FRj;
11745 FLD (f_FRk) = f_FRk;
11746 FLD (f_cond) = f_cond;
11747 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmhtob", "f_CCi 0x%x", 'x', f_CCi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, "f_cond 0x%x", 'x', f_cond, (char *) 0));
11748
11749#if WITH_PROFILE_MODEL_P
11750 /* Record the fields for profiling. */
11751 if (PROFILE_MODEL_P (current_cpu))
11752 {
11753 FLD (in_CCi) = f_CCi;
11754 FLD (in_FRintjeven) = f_FRj;
11755 FLD (in_FRintk) = f_FRk;
b29791a8
DE
11756 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11757 FLD (in_h_fr_hi_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
11758 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_0) = ((FLD (f_FRj)) + (0));
11759 FLD (in_h_fr_lo_UHI_add__INT_index_of__INT_FRintjeven_1) = ((FLD (f_FRj)) + (1));
b34f6357
DB
11760 FLD (out_FRintjeven) = f_FRj;
11761 FLD (out_FRintk) = f_FRk;
b29791a8
DE
11762 FLD (out_h_fr_0_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11763 FLD (out_h_fr_1_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11764 FLD (out_h_fr_2_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11765 FLD (out_h_fr_3_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
b34f6357
DB
11766 }
11767#endif
11768#undef FLD
11769 return idesc;
11770 }
11771
11772 extract_sfmt_mbtohe:
11773 {
11774 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11775 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11776#define FLD(f) abuf->fields.sfmt_cmbtohe.f
11777 UINT f_FRk;
11778 UINT f_FRj;
11779
11780 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11781 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11782
11783 /* Record the fields for the semantic handler. */
11784 FLD (f_FRj) = f_FRj;
11785 FLD (f_FRk) = f_FRk;
11786 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mbtohe", "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
11787
11788#if WITH_PROFILE_MODEL_P
11789 /* Record the fields for profiling. */
11790 if (PROFILE_MODEL_P (current_cpu))
11791 {
11792 FLD (in_FRintj) = f_FRj;
11793 FLD (in_FRintk) = f_FRk;
b29791a8
DE
11794 FLD (in_h_fr_0_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11795 FLD (in_h_fr_1_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11796 FLD (in_h_fr_2_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11797 FLD (in_h_fr_3_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357
DB
11798 FLD (out_FRintj) = f_FRj;
11799 FLD (out_FRintk) = f_FRk;
b29791a8
DE
11800 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11801 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_1) = ((FLD (f_FRk)) + (1));
11802 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_2) = ((FLD (f_FRk)) + (2));
11803 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_3) = ((FLD (f_FRk)) + (3));
11804 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11805 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_1) = ((FLD (f_FRk)) + (1));
11806 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_2) = ((FLD (f_FRk)) + (2));
11807 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_3) = ((FLD (f_FRk)) + (3));
b34f6357
DB
11808 }
11809#endif
11810#undef FLD
11811 return idesc;
11812 }
11813
11814 extract_sfmt_cmbtohe:
11815 {
11816 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11817 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11818#define FLD(f) abuf->fields.sfmt_cmbtohe.f
11819 UINT f_FRk;
11820 UINT f_CCi;
11821 UINT f_cond;
11822 UINT f_FRj;
11823
11824 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11825 f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3);
11826 f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1);
11827 f_FRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6);
11828
11829 /* Record the fields for the semantic handler. */
11830 FLD (f_CCi) = f_CCi;
11831 FLD (f_FRj) = f_FRj;
11832 FLD (f_FRk) = f_FRk;
11833 FLD (f_cond) = f_cond;
11834 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmbtohe", "f_CCi 0x%x", 'x', f_CCi, "f_FRj 0x%x", 'x', f_FRj, "f_FRk 0x%x", 'x', f_FRk, "f_cond 0x%x", 'x', f_cond, (char *) 0));
11835
11836#if WITH_PROFILE_MODEL_P
11837 /* Record the fields for profiling. */
11838 if (PROFILE_MODEL_P (current_cpu))
11839 {
11840 FLD (in_CCi) = f_CCi;
11841 FLD (in_FRintj) = f_FRj;
11842 FLD (in_FRintk) = f_FRk;
b29791a8
DE
11843 FLD (in_h_fr_0_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11844 FLD (in_h_fr_1_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11845 FLD (in_h_fr_2_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
11846 FLD (in_h_fr_3_UHI_add__INT_index_of__INT_FRintj_0) = ((FLD (f_FRj)) + (0));
b34f6357
DB
11847 FLD (out_FRintj) = f_FRj;
11848 FLD (out_FRintk) = f_FRk;
b29791a8
DE
11849 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11850 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_1) = ((FLD (f_FRk)) + (1));
11851 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_2) = ((FLD (f_FRk)) + (2));
11852 FLD (out_h_fr_hi_UHI_add__INT_index_of__INT_FRintk_3) = ((FLD (f_FRk)) + (3));
11853 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_0) = ((FLD (f_FRk)) + (0));
11854 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_1) = ((FLD (f_FRk)) + (1));
11855 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_2) = ((FLD (f_FRk)) + (2));
11856 FLD (out_h_fr_lo_UHI_add__INT_index_of__INT_FRintk_3) = ((FLD (f_FRk)) + (3));
b34f6357
DB
11857 }
11858#endif
11859#undef FLD
11860 return idesc;
11861 }
11862
d03ea14f 11863 extract_sfmt_mclracc_0:
b34f6357
DB
11864 {
11865 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11866 CGEN_INSN_WORD insn = entire_insn;
d03ea14f 11867#define FLD(f) abuf->fields.sfmt_mdasaccs.f
b34f6357 11868 UINT f_ACC40Sk;
b34f6357
DB
11869
11870 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
b34f6357
DB
11871
11872 /* Record the fields for the semantic handler. */
b34f6357 11873 FLD (f_ACC40Sk) = f_ACC40Sk;
d03ea14f 11874 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mclracc_0", "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, (char *) 0));
b34f6357
DB
11875
11876#undef FLD
11877 return idesc;
11878 }
11879
11880 extract_sfmt_mrdacc:
11881 {
11882 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11883 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11884#define FLD(f) abuf->fields.sfmt_mcuti.f
11885 UINT f_FRk;
11886 UINT f_ACC40Si;
11887
11888 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11889 f_ACC40Si = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11890
11891 /* Record the fields for the semantic handler. */
11892 FLD (f_ACC40Si) = f_ACC40Si;
11893 FLD (f_FRk) = f_FRk;
11894 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mrdacc", "f_ACC40Si 0x%x", 'x', f_ACC40Si, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
11895
11896#if WITH_PROFILE_MODEL_P
11897 /* Record the fields for profiling. */
11898 if (PROFILE_MODEL_P (current_cpu))
11899 {
11900 FLD (in_ACC40Si) = f_ACC40Si;
11901 FLD (out_FRintk) = f_FRk;
11902 }
11903#endif
11904#undef FLD
11905 return idesc;
11906 }
11907
11908 extract_sfmt_mrdaccg:
11909 {
11910 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11911 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11912#define FLD(f) abuf->fields.sfmt_mrdaccg.f
11913 UINT f_FRk;
11914 UINT f_ACCGi;
11915
11916 f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11917 f_ACCGi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11918
11919 /* Record the fields for the semantic handler. */
11920 FLD (f_ACCGi) = f_ACCGi;
11921 FLD (f_FRk) = f_FRk;
11922 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mrdaccg", "f_ACCGi 0x%x", 'x', f_ACCGi, "f_FRk 0x%x", 'x', f_FRk, (char *) 0));
11923
11924#if WITH_PROFILE_MODEL_P
11925 /* Record the fields for profiling. */
11926 if (PROFILE_MODEL_P (current_cpu))
11927 {
11928 FLD (in_ACCGi) = f_ACCGi;
11929 FLD (out_FRintk) = f_FRk;
11930 }
11931#endif
11932#undef FLD
11933 return idesc;
11934 }
11935
11936 extract_sfmt_mwtacc:
11937 {
11938 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11939 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11940#define FLD(f) abuf->fields.sfmt_cmmachs.f
11941 UINT f_ACC40Sk;
11942 UINT f_FRi;
11943
11944 f_ACC40Sk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11945 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11946
11947 /* Record the fields for the semantic handler. */
11948 FLD (f_ACC40Sk) = f_ACC40Sk;
11949 FLD (f_FRi) = f_FRi;
11950 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mwtacc", "f_ACC40Sk 0x%x", 'x', f_ACC40Sk, "f_FRi 0x%x", 'x', f_FRi, (char *) 0));
11951
11952#if WITH_PROFILE_MODEL_P
11953 /* Record the fields for profiling. */
11954 if (PROFILE_MODEL_P (current_cpu))
11955 {
11956 FLD (in_ACC40Sk) = f_ACC40Sk;
11957 FLD (in_FRinti) = f_FRi;
11958 FLD (out_ACC40Sk) = f_ACC40Sk;
11959 }
11960#endif
11961#undef FLD
11962 return idesc;
11963 }
11964
11965 extract_sfmt_mwtaccg:
11966 {
11967 const IDESC *idesc = &frvbf_insn_data[itype];
197fa1aa 11968 CGEN_INSN_WORD insn = entire_insn;
b34f6357
DB
11969#define FLD(f) abuf->fields.sfmt_mwtaccg.f
11970 UINT f_ACCGk;
11971 UINT f_FRi;
11972
11973 f_ACCGk = EXTRACT_LSB0_UINT (insn, 32, 30, 6);
11974 f_FRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6);
11975
11976 /* Record the fields for the semantic handler. */
b34f6357 11977 FLD (f_ACCGk) = f_ACCGk;
1c453cd6
DB
11978 FLD (f_FRi) = f_FRi;
11979 TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_mwtaccg", "f_ACCGk 0x%x", 'x', f_ACCGk, "f_FRi 0x%x", 'x', f_FRi, (char *) 0));
b34f6357
DB
11980
11981#if WITH_PROFILE_MODEL_P
11982 /* Record the fields for profiling. */
11983 if (PROFILE_MODEL_P (current_cpu))
11984 {
1c453cd6 11985 FLD (in_ACCGk) = f_ACCGk;
b34f6357
DB
11986 FLD (in_FRinti) = f_FRi;
11987 FLD (out_ACCGk) = f_ACCGk;
11988 }
11989#endif
11990#undef FLD
11991 return idesc;
11992 }
11993
11994}
This page took 1.015547 seconds and 4 git commands to generate.