OSDN Git Service

957e7caaae1e0ec28fc8be01adc5e4d6df719f6e
[pf3gnuchains/pf3gnuchains3x.git] / sid / component / cgen-cpu / mep / mep-cop1-64-sem.cxx
1 /* Simulator instruction semantics for mepcop1_64.
2
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
4
5 Copyright (C) 2000-2009 Red Hat, Inc.
6
7 This file is part of the Red Hat simulators.
8
9
10 */
11
12
13 #if HAVE_CONFIG_H
14 #include "config.h"
15 #endif
16 #include "mep_ext1.h"
17
18 using namespace mep_ext1; // FIXME: namespace organization still wip
19 #define GET_ATTR(name) GET_ATTR_##name ()
20
21
22 // ********** x-invalid: --invalid--
23
24 sem_status
25 mepcop1_64_sem_x_invalid (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
26 {
27 #define FLD(f) abuf->fields.fmt_empty.f
28   sem_status status = SEM_STATUS_NORMAL;
29   mepcop1_64_scache* abuf = sem;
30   unsigned long long written = 0;
31   PCADDR pc = abuf->addr;
32   PCADDR npc = pc + 0;
33
34   {
35     current_cpu->invalid_insn (pc);
36     assert (0);
37     /* NOTREACHED */
38   }
39
40   current_cpu->done_insn (npc, status);
41   return status;
42 #undef FLD
43 }
44
45 // ********** cpadd3_b_P0S_P1: cpadd3.b $crop,$crqp,$crpp
46
47 sem_status
48 mepcop1_64_sem_cpadd3_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
49 {
50 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
51   sem_status status = SEM_STATUS_NORMAL;
52   mepcop1_64_scache* abuf = sem;
53   unsigned long long written = 0;
54   PCADDR pc = abuf->addr;
55   PCADDR npc = pc + 4;
56
57 {
58 current_cpu->check_option_cp (pc);
59   {
60     DI opval = current_cpu->ivc2_cpadd3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
61     if (UNLIKELY(current_cpu->trace_result_p))
62       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
63     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
64   }
65 }
66
67   current_cpu->done_insn (npc, status);
68   return status;
69 #undef FLD
70 }
71
72 // ********** cpadd3_h_P0S_P1: cpadd3.h $crop,$crqp,$crpp
73
74 sem_status
75 mepcop1_64_sem_cpadd3_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
76 {
77 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
78   sem_status status = SEM_STATUS_NORMAL;
79   mepcop1_64_scache* abuf = sem;
80   unsigned long long written = 0;
81   PCADDR pc = abuf->addr;
82   PCADDR npc = pc + 4;
83
84 {
85 current_cpu->check_option_cp (pc);
86   {
87     DI opval = current_cpu->ivc2_cpadd3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
88     if (UNLIKELY(current_cpu->trace_result_p))
89       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
90     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
91   }
92 }
93
94   current_cpu->done_insn (npc, status);
95   return status;
96 #undef FLD
97 }
98
99 // ********** cpadd3_w_P0S_P1: cpadd3.w $crop,$crqp,$crpp
100
101 sem_status
102 mepcop1_64_sem_cpadd3_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
103 {
104 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
105   sem_status status = SEM_STATUS_NORMAL;
106   mepcop1_64_scache* abuf = sem;
107   unsigned long long written = 0;
108   PCADDR pc = abuf->addr;
109   PCADDR npc = pc + 4;
110
111 {
112 current_cpu->check_option_cp (pc);
113   {
114     DI opval = current_cpu->ivc2_cpadd3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
115     if (UNLIKELY(current_cpu->trace_result_p))
116       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
117     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
118   }
119 }
120
121   current_cpu->done_insn (npc, status);
122   return status;
123 #undef FLD
124 }
125
126 // ********** cpunpacku_b_P0S_P1: cpunpacku.b $crop,$crqp,$crpp
127
128 sem_status
129 mepcop1_64_sem_cpunpacku_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
130 {
131 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
132   sem_status status = SEM_STATUS_NORMAL;
133   mepcop1_64_scache* abuf = sem;
134   unsigned long long written = 0;
135   PCADDR pc = abuf->addr;
136   PCADDR npc = pc + 4;
137
138 {
139 current_cpu->check_option_cp (pc);
140   {
141     DI opval = current_cpu->ivc2_cpunpacku_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
142     if (UNLIKELY(current_cpu->trace_result_p))
143       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
144     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
145   }
146 }
147
148   current_cpu->done_insn (npc, status);
149   return status;
150 #undef FLD
151 }
152
153 // ********** cpunpacku_h_P0S_P1: cpunpacku.h $crop,$crqp,$crpp
154
155 sem_status
156 mepcop1_64_sem_cpunpacku_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
157 {
158 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
159   sem_status status = SEM_STATUS_NORMAL;
160   mepcop1_64_scache* abuf = sem;
161   unsigned long long written = 0;
162   PCADDR pc = abuf->addr;
163   PCADDR npc = pc + 4;
164
165 {
166 current_cpu->check_option_cp (pc);
167   {
168     DI opval = current_cpu->ivc2_cpunpacku_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
169     if (UNLIKELY(current_cpu->trace_result_p))
170       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
171     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
172   }
173 }
174
175   current_cpu->done_insn (npc, status);
176   return status;
177 #undef FLD
178 }
179
180 // ********** cpunpacku_w_P0S_P1: cpunpacku.w $crop,$crqp,$crpp
181
182 sem_status
183 mepcop1_64_sem_cpunpacku_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
184 {
185 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
186   sem_status status = SEM_STATUS_NORMAL;
187   mepcop1_64_scache* abuf = sem;
188   unsigned long long written = 0;
189   PCADDR pc = abuf->addr;
190   PCADDR npc = pc + 4;
191
192 {
193 current_cpu->check_option_cp (pc);
194   {
195     DI opval = current_cpu->ivc2_cpunpacku_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
196     if (UNLIKELY(current_cpu->trace_result_p))
197       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
198     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
199   }
200 }
201
202   current_cpu->done_insn (npc, status);
203   return status;
204 #undef FLD
205 }
206
207 // ********** cpunpackl_b_P0S_P1: cpunpackl.b $crop,$crqp,$crpp
208
209 sem_status
210 mepcop1_64_sem_cpunpackl_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
211 {
212 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
213   sem_status status = SEM_STATUS_NORMAL;
214   mepcop1_64_scache* abuf = sem;
215   unsigned long long written = 0;
216   PCADDR pc = abuf->addr;
217   PCADDR npc = pc + 4;
218
219 {
220 current_cpu->check_option_cp (pc);
221   {
222     DI opval = current_cpu->ivc2_cpunpackl_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
223     if (UNLIKELY(current_cpu->trace_result_p))
224       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
225     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
226   }
227 }
228
229   current_cpu->done_insn (npc, status);
230   return status;
231 #undef FLD
232 }
233
234 // ********** cpunpackl_h_P0S_P1: cpunpackl.h $crop,$crqp,$crpp
235
236 sem_status
237 mepcop1_64_sem_cpunpackl_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
238 {
239 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
240   sem_status status = SEM_STATUS_NORMAL;
241   mepcop1_64_scache* abuf = sem;
242   unsigned long long written = 0;
243   PCADDR pc = abuf->addr;
244   PCADDR npc = pc + 4;
245
246 {
247 current_cpu->check_option_cp (pc);
248   {
249     DI opval = current_cpu->ivc2_cpunpackl_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
250     if (UNLIKELY(current_cpu->trace_result_p))
251       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
252     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
253   }
254 }
255
256   current_cpu->done_insn (npc, status);
257   return status;
258 #undef FLD
259 }
260
261 // ********** cpunpackl_w_P0S_P1: cpunpackl.w $crop,$crqp,$crpp
262
263 sem_status
264 mepcop1_64_sem_cpunpackl_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
265 {
266 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
267   sem_status status = SEM_STATUS_NORMAL;
268   mepcop1_64_scache* abuf = sem;
269   unsigned long long written = 0;
270   PCADDR pc = abuf->addr;
271   PCADDR npc = pc + 4;
272
273 {
274 current_cpu->check_option_cp (pc);
275   {
276     DI opval = current_cpu->ivc2_cpunpackl_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
277     if (UNLIKELY(current_cpu->trace_result_p))
278       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
279     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
280   }
281 }
282
283   current_cpu->done_insn (npc, status);
284   return status;
285 #undef FLD
286 }
287
288 // ********** cpsel_P0S_P1: cpsel $crop,$crqp,$crpp
289
290 sem_status
291 mepcop1_64_sem_cpsel_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
292 {
293 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
294   sem_status status = SEM_STATUS_NORMAL;
295   mepcop1_64_scache* abuf = sem;
296   unsigned long long written = 0;
297   PCADDR pc = abuf->addr;
298   PCADDR npc = pc + 4;
299
300 {
301 current_cpu->check_option_cp (pc);
302   {
303     DI opval = current_cpu->ivc2_cpsel (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
304     if (UNLIKELY(current_cpu->trace_result_p))
305       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
306     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
307   }
308 }
309
310   current_cpu->done_insn (npc, status);
311   return status;
312 #undef FLD
313 }
314
315 // ********** cpfsftbs0_P0S_P1: cpfsftbs0 $crop,$crqp,$crpp
316
317 sem_status
318 mepcop1_64_sem_cpfsftbs0_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
319 {
320 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
321   sem_status status = SEM_STATUS_NORMAL;
322   mepcop1_64_scache* abuf = sem;
323   unsigned long long written = 0;
324   PCADDR pc = abuf->addr;
325   PCADDR npc = pc + 4;
326
327 {
328 current_cpu->check_option_cp (pc);
329   {
330     DI opval = current_cpu->ivc2_cpfsftbs0 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
331     if (UNLIKELY(current_cpu->trace_result_p))
332       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
333     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
334   }
335 }
336
337   current_cpu->done_insn (npc, status);
338   return status;
339 #undef FLD
340 }
341
342 // ********** cpfsftbs1_P0S_P1: cpfsftbs1 $crop,$crqp,$crpp
343
344 sem_status
345 mepcop1_64_sem_cpfsftbs1_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
346 {
347 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
348   sem_status status = SEM_STATUS_NORMAL;
349   mepcop1_64_scache* abuf = sem;
350   unsigned long long written = 0;
351   PCADDR pc = abuf->addr;
352   PCADDR npc = pc + 4;
353
354 {
355 current_cpu->check_option_cp (pc);
356   {
357     DI opval = current_cpu->ivc2_cpfsftbs1 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
358     if (UNLIKELY(current_cpu->trace_result_p))
359       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
360     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
361   }
362 }
363
364   current_cpu->done_insn (npc, status);
365   return status;
366 #undef FLD
367 }
368
369 // ********** cpmov_P0S_P1: cpmov $crop,$crqp
370
371 sem_status
372 mepcop1_64_sem_cpmov_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
373 {
374 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
375   sem_status status = SEM_STATUS_NORMAL;
376   mepcop1_64_scache* abuf = sem;
377   unsigned long long written = 0;
378   PCADDR pc = abuf->addr;
379   PCADDR npc = pc + 4;
380
381 {
382 current_cpu->check_option_cp (pc);
383   {
384     DI opval = current_cpu->ivc2_cpmov (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
385     if (UNLIKELY(current_cpu->trace_result_p))
386       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
387     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
388   }
389 }
390
391   current_cpu->done_insn (npc, status);
392   return status;
393 #undef FLD
394 }
395
396 // ********** cpabsz_b_P0S_P1: cpabsz.b $crop,$crqp
397
398 sem_status
399 mepcop1_64_sem_cpabsz_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
400 {
401 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
402   sem_status status = SEM_STATUS_NORMAL;
403   mepcop1_64_scache* abuf = sem;
404   unsigned long long written = 0;
405   PCADDR pc = abuf->addr;
406   PCADDR npc = pc + 4;
407
408 {
409 current_cpu->check_option_cp (pc);
410   {
411     DI opval = current_cpu->ivc2_cpabsz_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
412     if (UNLIKELY(current_cpu->trace_result_p))
413       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
414     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
415   }
416 }
417
418   current_cpu->done_insn (npc, status);
419   return status;
420 #undef FLD
421 }
422
423 // ********** cpabsz_h_P0S_P1: cpabsz.h $crop,$crqp
424
425 sem_status
426 mepcop1_64_sem_cpabsz_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
427 {
428 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
429   sem_status status = SEM_STATUS_NORMAL;
430   mepcop1_64_scache* abuf = sem;
431   unsigned long long written = 0;
432   PCADDR pc = abuf->addr;
433   PCADDR npc = pc + 4;
434
435 {
436 current_cpu->check_option_cp (pc);
437   {
438     DI opval = current_cpu->ivc2_cpabsz_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
439     if (UNLIKELY(current_cpu->trace_result_p))
440       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
441     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
442   }
443 }
444
445   current_cpu->done_insn (npc, status);
446   return status;
447 #undef FLD
448 }
449
450 // ********** cpabsz_w_P0S_P1: cpabsz.w $crop,$crqp
451
452 sem_status
453 mepcop1_64_sem_cpabsz_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
454 {
455 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
456   sem_status status = SEM_STATUS_NORMAL;
457   mepcop1_64_scache* abuf = sem;
458   unsigned long long written = 0;
459   PCADDR pc = abuf->addr;
460   PCADDR npc = pc + 4;
461
462 {
463 current_cpu->check_option_cp (pc);
464   {
465     DI opval = current_cpu->ivc2_cpabsz_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
466     if (UNLIKELY(current_cpu->trace_result_p))
467       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
468     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
469   }
470 }
471
472   current_cpu->done_insn (npc, status);
473   return status;
474 #undef FLD
475 }
476
477 // ********** cpldz_h_P0S_P1: cpldz.h $crop,$crqp
478
479 sem_status
480 mepcop1_64_sem_cpldz_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
481 {
482 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
483   sem_status status = SEM_STATUS_NORMAL;
484   mepcop1_64_scache* abuf = sem;
485   unsigned long long written = 0;
486   PCADDR pc = abuf->addr;
487   PCADDR npc = pc + 4;
488
489 {
490 current_cpu->check_option_cp (pc);
491   {
492     DI opval = current_cpu->ivc2_cpldz_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
493     if (UNLIKELY(current_cpu->trace_result_p))
494       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
495     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
496   }
497 }
498
499   current_cpu->done_insn (npc, status);
500   return status;
501 #undef FLD
502 }
503
504 // ********** cpldz_w_P0S_P1: cpldz.w $crop,$crqp
505
506 sem_status
507 mepcop1_64_sem_cpldz_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
508 {
509 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
510   sem_status status = SEM_STATUS_NORMAL;
511   mepcop1_64_scache* abuf = sem;
512   unsigned long long written = 0;
513   PCADDR pc = abuf->addr;
514   PCADDR npc = pc + 4;
515
516 {
517 current_cpu->check_option_cp (pc);
518   {
519     DI opval = current_cpu->ivc2_cpldz_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
520     if (UNLIKELY(current_cpu->trace_result_p))
521       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
522     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
523   }
524 }
525
526   current_cpu->done_insn (npc, status);
527   return status;
528 #undef FLD
529 }
530
531 // ********** cpnorm_h_P0S_P1: cpnorm.h $crop,$crqp
532
533 sem_status
534 mepcop1_64_sem_cpnorm_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
535 {
536 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
537   sem_status status = SEM_STATUS_NORMAL;
538   mepcop1_64_scache* abuf = sem;
539   unsigned long long written = 0;
540   PCADDR pc = abuf->addr;
541   PCADDR npc = pc + 4;
542
543 {
544 current_cpu->check_option_cp (pc);
545   {
546     DI opval = current_cpu->ivc2_cpnorm_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
547     if (UNLIKELY(current_cpu->trace_result_p))
548       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
549     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
550   }
551 }
552
553   current_cpu->done_insn (npc, status);
554   return status;
555 #undef FLD
556 }
557
558 // ********** cpnorm_w_P0S_P1: cpnorm.w $crop,$crqp
559
560 sem_status
561 mepcop1_64_sem_cpnorm_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
562 {
563 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
564   sem_status status = SEM_STATUS_NORMAL;
565   mepcop1_64_scache* abuf = sem;
566   unsigned long long written = 0;
567   PCADDR pc = abuf->addr;
568   PCADDR npc = pc + 4;
569
570 {
571 current_cpu->check_option_cp (pc);
572   {
573     DI opval = current_cpu->ivc2_cpnorm_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
574     if (UNLIKELY(current_cpu->trace_result_p))
575       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
576     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
577   }
578 }
579
580   current_cpu->done_insn (npc, status);
581   return status;
582 #undef FLD
583 }
584
585 // ********** cphaddu_b_P0S_P1: cphaddu.b $crop,$crqp
586
587 sem_status
588 mepcop1_64_sem_cphaddu_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
589 {
590 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
591   sem_status status = SEM_STATUS_NORMAL;
592   mepcop1_64_scache* abuf = sem;
593   unsigned long long written = 0;
594   PCADDR pc = abuf->addr;
595   PCADDR npc = pc + 4;
596
597 {
598 current_cpu->check_option_cp (pc);
599   {
600     DI opval = current_cpu->ivc2_cphaddu_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
601     if (UNLIKELY(current_cpu->trace_result_p))
602       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
603     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
604   }
605 }
606
607   current_cpu->done_insn (npc, status);
608   return status;
609 #undef FLD
610 }
611
612 // ********** cphadd_b_P0S_P1: cphadd.b $crop,$crqp
613
614 sem_status
615 mepcop1_64_sem_cphadd_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
616 {
617 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
618   sem_status status = SEM_STATUS_NORMAL;
619   mepcop1_64_scache* abuf = sem;
620   unsigned long long written = 0;
621   PCADDR pc = abuf->addr;
622   PCADDR npc = pc + 4;
623
624 {
625 current_cpu->check_option_cp (pc);
626   {
627     DI opval = current_cpu->ivc2_cphadd_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
628     if (UNLIKELY(current_cpu->trace_result_p))
629       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
630     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
631   }
632 }
633
634   current_cpu->done_insn (npc, status);
635   return status;
636 #undef FLD
637 }
638
639 // ********** cphadd_h_P0S_P1: cphadd.h $crop,$crqp
640
641 sem_status
642 mepcop1_64_sem_cphadd_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
643 {
644 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
645   sem_status status = SEM_STATUS_NORMAL;
646   mepcop1_64_scache* abuf = sem;
647   unsigned long long written = 0;
648   PCADDR pc = abuf->addr;
649   PCADDR npc = pc + 4;
650
651 {
652 current_cpu->check_option_cp (pc);
653   {
654     DI opval = current_cpu->ivc2_cphadd_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
655     if (UNLIKELY(current_cpu->trace_result_p))
656       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
657     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
658   }
659 }
660
661   current_cpu->done_insn (npc, status);
662   return status;
663 #undef FLD
664 }
665
666 // ********** cphadd_w_P0S_P1: cphadd.w $crop,$crqp
667
668 sem_status
669 mepcop1_64_sem_cphadd_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
670 {
671 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
672   sem_status status = SEM_STATUS_NORMAL;
673   mepcop1_64_scache* abuf = sem;
674   unsigned long long written = 0;
675   PCADDR pc = abuf->addr;
676   PCADDR npc = pc + 4;
677
678 {
679 current_cpu->check_option_cp (pc);
680   {
681     DI opval = current_cpu->ivc2_cphadd_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
682     if (UNLIKELY(current_cpu->trace_result_p))
683       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
684     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
685   }
686 }
687
688   current_cpu->done_insn (npc, status);
689   return status;
690 #undef FLD
691 }
692
693 // ********** cpccadd_b_P0S_P1: cpccadd.b $crqp
694
695 sem_status
696 mepcop1_64_sem_cpccadd_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
697 {
698 #define FLD(f) abuf->fields.sfmt_cpmovi_b_P0S_P1.f
699   sem_status status = SEM_STATUS_NORMAL;
700   mepcop1_64_scache* abuf = sem;
701   unsigned long long written = 0;
702   PCADDR pc = abuf->addr;
703   PCADDR npc = pc + 4;
704
705 {
706 current_cpu->check_option_cp (pc);
707   {
708     DI opval = current_cpu->ivc2_cpccadd_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
709     if (UNLIKELY(current_cpu->trace_result_p))
710       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u13) << ']' << ":=0x" << hex << opval << dec << "  ";
711     current_cpu->h_cr64_set (FLD (f_ivc2_5u13), opval);
712   }
713 }
714
715   current_cpu->done_insn (npc, status);
716   return status;
717 #undef FLD
718 }
719
720 // ********** cpbcast_b_P0S_P1: cpbcast.b $crop,$crqp
721
722 sem_status
723 mepcop1_64_sem_cpbcast_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
724 {
725 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
726   sem_status status = SEM_STATUS_NORMAL;
727   mepcop1_64_scache* abuf = sem;
728   unsigned long long written = 0;
729   PCADDR pc = abuf->addr;
730   PCADDR npc = pc + 4;
731
732 {
733 current_cpu->check_option_cp (pc);
734   {
735     DI opval = current_cpu->ivc2_cpbcast_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
736     if (UNLIKELY(current_cpu->trace_result_p))
737       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
738     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
739   }
740 }
741
742   current_cpu->done_insn (npc, status);
743   return status;
744 #undef FLD
745 }
746
747 // ********** cpbcast_h_P0S_P1: cpbcast.h $crop,$crqp
748
749 sem_status
750 mepcop1_64_sem_cpbcast_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
751 {
752 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
753   sem_status status = SEM_STATUS_NORMAL;
754   mepcop1_64_scache* abuf = sem;
755   unsigned long long written = 0;
756   PCADDR pc = abuf->addr;
757   PCADDR npc = pc + 4;
758
759 {
760 current_cpu->check_option_cp (pc);
761   {
762     DI opval = current_cpu->ivc2_cpbcast_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
763     if (UNLIKELY(current_cpu->trace_result_p))
764       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
765     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
766   }
767 }
768
769   current_cpu->done_insn (npc, status);
770   return status;
771 #undef FLD
772 }
773
774 // ********** cpbcast_w_P0S_P1: cpbcast.w $crop,$crqp
775
776 sem_status
777 mepcop1_64_sem_cpbcast_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
778 {
779 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
780   sem_status status = SEM_STATUS_NORMAL;
781   mepcop1_64_scache* abuf = sem;
782   unsigned long long written = 0;
783   PCADDR pc = abuf->addr;
784   PCADDR npc = pc + 4;
785
786 {
787 current_cpu->check_option_cp (pc);
788   {
789     DI opval = current_cpu->ivc2_cpbcast_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
790     if (UNLIKELY(current_cpu->trace_result_p))
791       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
792     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
793   }
794 }
795
796   current_cpu->done_insn (npc, status);
797   return status;
798 #undef FLD
799 }
800
801 // ********** cpextuu_b_P0S_P1: cpextuu.b $crop,$crqp
802
803 sem_status
804 mepcop1_64_sem_cpextuu_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
805 {
806 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
807   sem_status status = SEM_STATUS_NORMAL;
808   mepcop1_64_scache* abuf = sem;
809   unsigned long long written = 0;
810   PCADDR pc = abuf->addr;
811   PCADDR npc = pc + 4;
812
813 {
814 current_cpu->check_option_cp (pc);
815   {
816     DI opval = current_cpu->ivc2_cpextuu_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
817     if (UNLIKELY(current_cpu->trace_result_p))
818       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
819     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
820   }
821 }
822
823   current_cpu->done_insn (npc, status);
824   return status;
825 #undef FLD
826 }
827
828 // ********** cpextu_b_P0S_P1: cpextu.b $crop,$crqp
829
830 sem_status
831 mepcop1_64_sem_cpextu_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
832 {
833 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
834   sem_status status = SEM_STATUS_NORMAL;
835   mepcop1_64_scache* abuf = sem;
836   unsigned long long written = 0;
837   PCADDR pc = abuf->addr;
838   PCADDR npc = pc + 4;
839
840 {
841 current_cpu->check_option_cp (pc);
842   {
843     DI opval = current_cpu->ivc2_cpextu_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
844     if (UNLIKELY(current_cpu->trace_result_p))
845       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
846     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
847   }
848 }
849
850   current_cpu->done_insn (npc, status);
851   return status;
852 #undef FLD
853 }
854
855 // ********** cpextuu_h_P0S_P1: cpextuu.h $crop,$crqp
856
857 sem_status
858 mepcop1_64_sem_cpextuu_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
859 {
860 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
861   sem_status status = SEM_STATUS_NORMAL;
862   mepcop1_64_scache* abuf = sem;
863   unsigned long long written = 0;
864   PCADDR pc = abuf->addr;
865   PCADDR npc = pc + 4;
866
867 {
868 current_cpu->check_option_cp (pc);
869   {
870     DI opval = current_cpu->ivc2_cpextuu_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
871     if (UNLIKELY(current_cpu->trace_result_p))
872       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
873     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
874   }
875 }
876
877   current_cpu->done_insn (npc, status);
878   return status;
879 #undef FLD
880 }
881
882 // ********** cpextu_h_P0S_P1: cpextu.h $crop,$crqp
883
884 sem_status
885 mepcop1_64_sem_cpextu_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
886 {
887 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
888   sem_status status = SEM_STATUS_NORMAL;
889   mepcop1_64_scache* abuf = sem;
890   unsigned long long written = 0;
891   PCADDR pc = abuf->addr;
892   PCADDR npc = pc + 4;
893
894 {
895 current_cpu->check_option_cp (pc);
896   {
897     DI opval = current_cpu->ivc2_cpextu_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
898     if (UNLIKELY(current_cpu->trace_result_p))
899       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
900     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
901   }
902 }
903
904   current_cpu->done_insn (npc, status);
905   return status;
906 #undef FLD
907 }
908
909 // ********** cpextlu_b_P0S_P1: cpextlu.b $crop,$crqp
910
911 sem_status
912 mepcop1_64_sem_cpextlu_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
913 {
914 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
915   sem_status status = SEM_STATUS_NORMAL;
916   mepcop1_64_scache* abuf = sem;
917   unsigned long long written = 0;
918   PCADDR pc = abuf->addr;
919   PCADDR npc = pc + 4;
920
921 {
922 current_cpu->check_option_cp (pc);
923   {
924     DI opval = current_cpu->ivc2_cpextlu_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
925     if (UNLIKELY(current_cpu->trace_result_p))
926       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
927     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
928   }
929 }
930
931   current_cpu->done_insn (npc, status);
932   return status;
933 #undef FLD
934 }
935
936 // ********** cpextl_b_P0S_P1: cpextl.b $crop,$crqp
937
938 sem_status
939 mepcop1_64_sem_cpextl_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
940 {
941 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
942   sem_status status = SEM_STATUS_NORMAL;
943   mepcop1_64_scache* abuf = sem;
944   unsigned long long written = 0;
945   PCADDR pc = abuf->addr;
946   PCADDR npc = pc + 4;
947
948 {
949 current_cpu->check_option_cp (pc);
950   {
951     DI opval = current_cpu->ivc2_cpextl_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
952     if (UNLIKELY(current_cpu->trace_result_p))
953       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
954     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
955   }
956 }
957
958   current_cpu->done_insn (npc, status);
959   return status;
960 #undef FLD
961 }
962
963 // ********** cpextlu_h_P0S_P1: cpextlu.h $crop,$crqp
964
965 sem_status
966 mepcop1_64_sem_cpextlu_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
967 {
968 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
969   sem_status status = SEM_STATUS_NORMAL;
970   mepcop1_64_scache* abuf = sem;
971   unsigned long long written = 0;
972   PCADDR pc = abuf->addr;
973   PCADDR npc = pc + 4;
974
975 {
976 current_cpu->check_option_cp (pc);
977   {
978     DI opval = current_cpu->ivc2_cpextlu_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
979     if (UNLIKELY(current_cpu->trace_result_p))
980       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
981     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
982   }
983 }
984
985   current_cpu->done_insn (npc, status);
986   return status;
987 #undef FLD
988 }
989
990 // ********** cpextl_h_P0S_P1: cpextl.h $crop,$crqp
991
992 sem_status
993 mepcop1_64_sem_cpextl_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
994 {
995 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
996   sem_status status = SEM_STATUS_NORMAL;
997   mepcop1_64_scache* abuf = sem;
998   unsigned long long written = 0;
999   PCADDR pc = abuf->addr;
1000   PCADDR npc = pc + 4;
1001
1002 {
1003 current_cpu->check_option_cp (pc);
1004   {
1005     DI opval = current_cpu->ivc2_cpextl_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1006     if (UNLIKELY(current_cpu->trace_result_p))
1007       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1008     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1009   }
1010 }
1011
1012   current_cpu->done_insn (npc, status);
1013   return status;
1014 #undef FLD
1015 }
1016
1017 // ********** cpcastub_h_P0S_P1: cpcastub.h $crop,$crqp
1018
1019 sem_status
1020 mepcop1_64_sem_cpcastub_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1021 {
1022 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
1023   sem_status status = SEM_STATUS_NORMAL;
1024   mepcop1_64_scache* abuf = sem;
1025   unsigned long long written = 0;
1026   PCADDR pc = abuf->addr;
1027   PCADDR npc = pc + 4;
1028
1029 {
1030 current_cpu->check_option_cp (pc);
1031   {
1032     DI opval = current_cpu->ivc2_cpcastub_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1033     if (UNLIKELY(current_cpu->trace_result_p))
1034       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1035     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1036   }
1037 }
1038
1039   current_cpu->done_insn (npc, status);
1040   return status;
1041 #undef FLD
1042 }
1043
1044 // ********** cpcastb_h_P0S_P1: cpcastb.h $crop,$crqp
1045
1046 sem_status
1047 mepcop1_64_sem_cpcastb_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1048 {
1049 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
1050   sem_status status = SEM_STATUS_NORMAL;
1051   mepcop1_64_scache* abuf = sem;
1052   unsigned long long written = 0;
1053   PCADDR pc = abuf->addr;
1054   PCADDR npc = pc + 4;
1055
1056 {
1057 current_cpu->check_option_cp (pc);
1058   {
1059     DI opval = current_cpu->ivc2_cpcastb_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1060     if (UNLIKELY(current_cpu->trace_result_p))
1061       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1062     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1063   }
1064 }
1065
1066   current_cpu->done_insn (npc, status);
1067   return status;
1068 #undef FLD
1069 }
1070
1071 // ********** cpcastub_w_P0S_P1: cpcastub.w $crop,$crqp
1072
1073 sem_status
1074 mepcop1_64_sem_cpcastub_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1075 {
1076 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
1077   sem_status status = SEM_STATUS_NORMAL;
1078   mepcop1_64_scache* abuf = sem;
1079   unsigned long long written = 0;
1080   PCADDR pc = abuf->addr;
1081   PCADDR npc = pc + 4;
1082
1083 {
1084 current_cpu->check_option_cp (pc);
1085   {
1086     DI opval = current_cpu->ivc2_cpcastub_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1087     if (UNLIKELY(current_cpu->trace_result_p))
1088       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1089     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1090   }
1091 }
1092
1093   current_cpu->done_insn (npc, status);
1094   return status;
1095 #undef FLD
1096 }
1097
1098 // ********** cpcastb_w_P0S_P1: cpcastb.w $crop,$crqp
1099
1100 sem_status
1101 mepcop1_64_sem_cpcastb_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1102 {
1103 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
1104   sem_status status = SEM_STATUS_NORMAL;
1105   mepcop1_64_scache* abuf = sem;
1106   unsigned long long written = 0;
1107   PCADDR pc = abuf->addr;
1108   PCADDR npc = pc + 4;
1109
1110 {
1111 current_cpu->check_option_cp (pc);
1112   {
1113     DI opval = current_cpu->ivc2_cpcastb_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1114     if (UNLIKELY(current_cpu->trace_result_p))
1115       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1116     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1117   }
1118 }
1119
1120   current_cpu->done_insn (npc, status);
1121   return status;
1122 #undef FLD
1123 }
1124
1125 // ********** cpcastuh_w_P0S_P1: cpcastuh.w $crop,$crqp
1126
1127 sem_status
1128 mepcop1_64_sem_cpcastuh_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1129 {
1130 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
1131   sem_status status = SEM_STATUS_NORMAL;
1132   mepcop1_64_scache* abuf = sem;
1133   unsigned long long written = 0;
1134   PCADDR pc = abuf->addr;
1135   PCADDR npc = pc + 4;
1136
1137 {
1138 current_cpu->check_option_cp (pc);
1139   {
1140     DI opval = current_cpu->ivc2_cpcastuh_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1141     if (UNLIKELY(current_cpu->trace_result_p))
1142       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1143     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1144   }
1145 }
1146
1147   current_cpu->done_insn (npc, status);
1148   return status;
1149 #undef FLD
1150 }
1151
1152 // ********** cpcasth_w_P0S_P1: cpcasth.w $crop,$crqp
1153
1154 sem_status
1155 mepcop1_64_sem_cpcasth_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1156 {
1157 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
1158   sem_status status = SEM_STATUS_NORMAL;
1159   mepcop1_64_scache* abuf = sem;
1160   unsigned long long written = 0;
1161   PCADDR pc = abuf->addr;
1162   PCADDR npc = pc + 4;
1163
1164 {
1165 current_cpu->check_option_cp (pc);
1166   {
1167     DI opval = current_cpu->ivc2_cpcasth_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1168     if (UNLIKELY(current_cpu->trace_result_p))
1169       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1170     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1171   }
1172 }
1173
1174   current_cpu->done_insn (npc, status);
1175   return status;
1176 #undef FLD
1177 }
1178
1179 // ********** cdcastuw_P0S_P1: cdcastuw $crop,$crqp
1180
1181 sem_status
1182 mepcop1_64_sem_cdcastuw_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1183 {
1184 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
1185   sem_status status = SEM_STATUS_NORMAL;
1186   mepcop1_64_scache* abuf = sem;
1187   unsigned long long written = 0;
1188   PCADDR pc = abuf->addr;
1189   PCADDR npc = pc + 4;
1190
1191 {
1192 current_cpu->check_option_cp (pc);
1193   {
1194     DI opval = current_cpu->ivc2_cdcastuw (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1195     if (UNLIKELY(current_cpu->trace_result_p))
1196       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1197     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1198   }
1199 }
1200
1201   current_cpu->done_insn (npc, status);
1202   return status;
1203 #undef FLD
1204 }
1205
1206 // ********** cdcastw_P0S_P1: cdcastw $crop,$crqp
1207
1208 sem_status
1209 mepcop1_64_sem_cdcastw_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1210 {
1211 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
1212   sem_status status = SEM_STATUS_NORMAL;
1213   mepcop1_64_scache* abuf = sem;
1214   unsigned long long written = 0;
1215   PCADDR pc = abuf->addr;
1216   PCADDR npc = pc + 4;
1217
1218 {
1219 current_cpu->check_option_cp (pc);
1220   {
1221     DI opval = current_cpu->ivc2_cdcastw (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1222     if (UNLIKELY(current_cpu->trace_result_p))
1223       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1224     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1225   }
1226 }
1227
1228   current_cpu->done_insn (npc, status);
1229   return status;
1230 #undef FLD
1231 }
1232
1233 // ********** cpmovfrcsar0_P0S_P1: cpmovfrcsar0 $crop
1234
1235 sem_status
1236 mepcop1_64_sem_cpmovfrcsar0_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1237 {
1238 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
1239   sem_status status = SEM_STATUS_NORMAL;
1240   mepcop1_64_scache* abuf = sem;
1241   unsigned long long written = 0;
1242   PCADDR pc = abuf->addr;
1243   PCADDR npc = pc + 4;
1244
1245 {
1246 current_cpu->check_option_cp (pc);
1247   {
1248     DI opval = current_cpu->ivc2_cpmovfrcsar0 (pc);
1249     if (UNLIKELY(current_cpu->trace_result_p))
1250       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1251     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1252   }
1253 }
1254
1255   current_cpu->done_insn (npc, status);
1256   return status;
1257 #undef FLD
1258 }
1259
1260 // ********** cpmovfrcsar1_P0S_P1: cpmovfrcsar1 $crop
1261
1262 sem_status
1263 mepcop1_64_sem_cpmovfrcsar1_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1264 {
1265 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
1266   sem_status status = SEM_STATUS_NORMAL;
1267   mepcop1_64_scache* abuf = sem;
1268   unsigned long long written = 0;
1269   PCADDR pc = abuf->addr;
1270   PCADDR npc = pc + 4;
1271
1272 {
1273 current_cpu->check_option_cp (pc);
1274   {
1275     DI opval = current_cpu->ivc2_cpmovfrcsar1 (pc);
1276     if (UNLIKELY(current_cpu->trace_result_p))
1277       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1278     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1279   }
1280 }
1281
1282   current_cpu->done_insn (npc, status);
1283   return status;
1284 #undef FLD
1285 }
1286
1287 // ********** cpmovfrcc_P0S_P1: cpmovfrcc $crop
1288
1289 sem_status
1290 mepcop1_64_sem_cpmovfrcc_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1291 {
1292 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
1293   sem_status status = SEM_STATUS_NORMAL;
1294   mepcop1_64_scache* abuf = sem;
1295   unsigned long long written = 0;
1296   PCADDR pc = abuf->addr;
1297   PCADDR npc = pc + 4;
1298
1299 {
1300 current_cpu->check_option_cp (pc);
1301   {
1302     DI opval = current_cpu->ivc2_cpmovfrcc (pc);
1303     if (UNLIKELY(current_cpu->trace_result_p))
1304       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1305     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1306   }
1307 }
1308
1309   current_cpu->done_insn (npc, status);
1310   return status;
1311 #undef FLD
1312 }
1313
1314 // ********** cpmovtocsar0_P0S_P1: cpmovtocsar0 $crqp
1315
1316 sem_status
1317 mepcop1_64_sem_cpmovtocsar0_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1318 {
1319 #define FLD(f) abuf->fields.sfmt_cpmovi_b_P0S_P1.f
1320   sem_status status = SEM_STATUS_NORMAL;
1321   mepcop1_64_scache* abuf = sem;
1322   unsigned long long written = 0;
1323   PCADDR pc = abuf->addr;
1324   PCADDR npc = pc + 4;
1325
1326 {
1327 current_cpu->check_option_cp (pc);
1328   {
1329     SI opval = 0;
1330     if (UNLIKELY(current_cpu->trace_result_p))
1331       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 0) << ']' << ":=0x" << hex << opval << dec << "  ";
1332     current_cpu->h_ccr_ivc2_set (((UINT) 0), opval);
1333   }
1334 current_cpu->ivc2_cpmovtocsar0 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1335 }
1336
1337   current_cpu->done_insn (npc, status);
1338   return status;
1339 #undef FLD
1340 }
1341
1342 // ********** cpmovtocsar1_P0S_P1: cpmovtocsar1 $crqp
1343
1344 sem_status
1345 mepcop1_64_sem_cpmovtocsar1_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1346 {
1347 #define FLD(f) abuf->fields.sfmt_cpmovi_b_P0S_P1.f
1348   sem_status status = SEM_STATUS_NORMAL;
1349   mepcop1_64_scache* abuf = sem;
1350   unsigned long long written = 0;
1351   PCADDR pc = abuf->addr;
1352   PCADDR npc = pc + 4;
1353
1354 {
1355 current_cpu->check_option_cp (pc);
1356   {
1357     SI opval = 0;
1358     if (UNLIKELY(current_cpu->trace_result_p))
1359       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 15) << ']' << ":=0x" << hex << opval << dec << "  ";
1360     current_cpu->h_ccr_ivc2_set (((UINT) 15), opval);
1361   }
1362 current_cpu->ivc2_cpmovtocsar1 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1363 }
1364
1365   current_cpu->done_insn (npc, status);
1366   return status;
1367 #undef FLD
1368 }
1369
1370 // ********** cpmovtocc_P0S_P1: cpmovtocc $crqp
1371
1372 sem_status
1373 mepcop1_64_sem_cpmovtocc_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1374 {
1375 #define FLD(f) abuf->fields.sfmt_cpmovi_b_P0S_P1.f
1376   sem_status status = SEM_STATUS_NORMAL;
1377   mepcop1_64_scache* abuf = sem;
1378   unsigned long long written = 0;
1379   PCADDR pc = abuf->addr;
1380   PCADDR npc = pc + 4;
1381
1382 {
1383 current_cpu->check_option_cp (pc);
1384   {
1385     SI opval = 0;
1386     if (UNLIKELY(current_cpu->trace_result_p))
1387       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1388     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1389   }
1390 current_cpu->ivc2_cpmovtocc (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
1391 }
1392
1393   current_cpu->done_insn (npc, status);
1394   return status;
1395 #undef FLD
1396 }
1397
1398 // ********** cpcmpeqz_b_P0S_P1: cpcmpeqz.b $crqp,$crpp
1399
1400 sem_status
1401 mepcop1_64_sem_cpcmpeqz_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1402 {
1403 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1404   sem_status status = SEM_STATUS_NORMAL;
1405   mepcop1_64_scache* abuf = sem;
1406   unsigned long long written = 0;
1407   PCADDR pc = abuf->addr;
1408   PCADDR npc = pc + 4;
1409
1410 {
1411 current_cpu->check_option_cp (pc);
1412   {
1413     SI opval = 0;
1414     if (UNLIKELY(current_cpu->trace_result_p))
1415       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1416     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1417   }
1418 current_cpu->ivc2_cpcmpeqz_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1419 }
1420
1421   current_cpu->done_insn (npc, status);
1422   return status;
1423 #undef FLD
1424 }
1425
1426 // ********** cpcmpeq_b_P0S_P1: cpcmpeq.b $crqp,$crpp
1427
1428 sem_status
1429 mepcop1_64_sem_cpcmpeq_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1430 {
1431 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1432   sem_status status = SEM_STATUS_NORMAL;
1433   mepcop1_64_scache* abuf = sem;
1434   unsigned long long written = 0;
1435   PCADDR pc = abuf->addr;
1436   PCADDR npc = pc + 4;
1437
1438 {
1439 current_cpu->check_option_cp (pc);
1440   {
1441     SI opval = 0;
1442     if (UNLIKELY(current_cpu->trace_result_p))
1443       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1444     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1445   }
1446 current_cpu->ivc2_cpcmpeq_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1447 }
1448
1449   current_cpu->done_insn (npc, status);
1450   return status;
1451 #undef FLD
1452 }
1453
1454 // ********** cpcmpeq_h_P0S_P1: cpcmpeq.h $crqp,$crpp
1455
1456 sem_status
1457 mepcop1_64_sem_cpcmpeq_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1458 {
1459 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1460   sem_status status = SEM_STATUS_NORMAL;
1461   mepcop1_64_scache* abuf = sem;
1462   unsigned long long written = 0;
1463   PCADDR pc = abuf->addr;
1464   PCADDR npc = pc + 4;
1465
1466 {
1467 current_cpu->check_option_cp (pc);
1468   {
1469     SI opval = 0;
1470     if (UNLIKELY(current_cpu->trace_result_p))
1471       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1472     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1473   }
1474 current_cpu->ivc2_cpcmpeq_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1475 }
1476
1477   current_cpu->done_insn (npc, status);
1478   return status;
1479 #undef FLD
1480 }
1481
1482 // ********** cpcmpeq_w_P0S_P1: cpcmpeq.w $crqp,$crpp
1483
1484 sem_status
1485 mepcop1_64_sem_cpcmpeq_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1486 {
1487 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1488   sem_status status = SEM_STATUS_NORMAL;
1489   mepcop1_64_scache* abuf = sem;
1490   unsigned long long written = 0;
1491   PCADDR pc = abuf->addr;
1492   PCADDR npc = pc + 4;
1493
1494 {
1495 current_cpu->check_option_cp (pc);
1496   {
1497     SI opval = 0;
1498     if (UNLIKELY(current_cpu->trace_result_p))
1499       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1500     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1501   }
1502 current_cpu->ivc2_cpcmpeq_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1503 }
1504
1505   current_cpu->done_insn (npc, status);
1506   return status;
1507 #undef FLD
1508 }
1509
1510 // ********** cpcmpne_b_P0S_P1: cpcmpne.b $crqp,$crpp
1511
1512 sem_status
1513 mepcop1_64_sem_cpcmpne_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1514 {
1515 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1516   sem_status status = SEM_STATUS_NORMAL;
1517   mepcop1_64_scache* abuf = sem;
1518   unsigned long long written = 0;
1519   PCADDR pc = abuf->addr;
1520   PCADDR npc = pc + 4;
1521
1522 {
1523 current_cpu->check_option_cp (pc);
1524   {
1525     SI opval = 0;
1526     if (UNLIKELY(current_cpu->trace_result_p))
1527       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1528     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1529   }
1530 current_cpu->ivc2_cpcmpne_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1531 }
1532
1533   current_cpu->done_insn (npc, status);
1534   return status;
1535 #undef FLD
1536 }
1537
1538 // ********** cpcmpne_h_P0S_P1: cpcmpne.h $crqp,$crpp
1539
1540 sem_status
1541 mepcop1_64_sem_cpcmpne_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1542 {
1543 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1544   sem_status status = SEM_STATUS_NORMAL;
1545   mepcop1_64_scache* abuf = sem;
1546   unsigned long long written = 0;
1547   PCADDR pc = abuf->addr;
1548   PCADDR npc = pc + 4;
1549
1550 {
1551 current_cpu->check_option_cp (pc);
1552   {
1553     SI opval = 0;
1554     if (UNLIKELY(current_cpu->trace_result_p))
1555       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1556     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1557   }
1558 current_cpu->ivc2_cpcmpne_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1559 }
1560
1561   current_cpu->done_insn (npc, status);
1562   return status;
1563 #undef FLD
1564 }
1565
1566 // ********** cpcmpne_w_P0S_P1: cpcmpne.w $crqp,$crpp
1567
1568 sem_status
1569 mepcop1_64_sem_cpcmpne_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1570 {
1571 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1572   sem_status status = SEM_STATUS_NORMAL;
1573   mepcop1_64_scache* abuf = sem;
1574   unsigned long long written = 0;
1575   PCADDR pc = abuf->addr;
1576   PCADDR npc = pc + 4;
1577
1578 {
1579 current_cpu->check_option_cp (pc);
1580   {
1581     SI opval = 0;
1582     if (UNLIKELY(current_cpu->trace_result_p))
1583       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1584     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1585   }
1586 current_cpu->ivc2_cpcmpne_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1587 }
1588
1589   current_cpu->done_insn (npc, status);
1590   return status;
1591 #undef FLD
1592 }
1593
1594 // ********** cpcmpgtu_b_P0S_P1: cpcmpgtu.b $crqp,$crpp
1595
1596 sem_status
1597 mepcop1_64_sem_cpcmpgtu_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1598 {
1599 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1600   sem_status status = SEM_STATUS_NORMAL;
1601   mepcop1_64_scache* abuf = sem;
1602   unsigned long long written = 0;
1603   PCADDR pc = abuf->addr;
1604   PCADDR npc = pc + 4;
1605
1606 {
1607 current_cpu->check_option_cp (pc);
1608   {
1609     SI opval = 0;
1610     if (UNLIKELY(current_cpu->trace_result_p))
1611       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1612     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1613   }
1614 current_cpu->ivc2_cpcmpgtu_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1615 }
1616
1617   current_cpu->done_insn (npc, status);
1618   return status;
1619 #undef FLD
1620 }
1621
1622 // ********** cpcmpgt_b_P0S_P1: cpcmpgt.b $crqp,$crpp
1623
1624 sem_status
1625 mepcop1_64_sem_cpcmpgt_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1626 {
1627 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1628   sem_status status = SEM_STATUS_NORMAL;
1629   mepcop1_64_scache* abuf = sem;
1630   unsigned long long written = 0;
1631   PCADDR pc = abuf->addr;
1632   PCADDR npc = pc + 4;
1633
1634 {
1635 current_cpu->check_option_cp (pc);
1636   {
1637     SI opval = 0;
1638     if (UNLIKELY(current_cpu->trace_result_p))
1639       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1640     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1641   }
1642 current_cpu->ivc2_cpcmpgt_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1643 }
1644
1645   current_cpu->done_insn (npc, status);
1646   return status;
1647 #undef FLD
1648 }
1649
1650 // ********** cpcmpgt_h_P0S_P1: cpcmpgt.h $crqp,$crpp
1651
1652 sem_status
1653 mepcop1_64_sem_cpcmpgt_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1654 {
1655 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1656   sem_status status = SEM_STATUS_NORMAL;
1657   mepcop1_64_scache* abuf = sem;
1658   unsigned long long written = 0;
1659   PCADDR pc = abuf->addr;
1660   PCADDR npc = pc + 4;
1661
1662 {
1663 current_cpu->check_option_cp (pc);
1664   {
1665     SI opval = 0;
1666     if (UNLIKELY(current_cpu->trace_result_p))
1667       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1668     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1669   }
1670 current_cpu->ivc2_cpcmpgt_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1671 }
1672
1673   current_cpu->done_insn (npc, status);
1674   return status;
1675 #undef FLD
1676 }
1677
1678 // ********** cpcmpgtu_w_P0S_P1: cpcmpgtu.w $crqp,$crpp
1679
1680 sem_status
1681 mepcop1_64_sem_cpcmpgtu_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1682 {
1683 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1684   sem_status status = SEM_STATUS_NORMAL;
1685   mepcop1_64_scache* abuf = sem;
1686   unsigned long long written = 0;
1687   PCADDR pc = abuf->addr;
1688   PCADDR npc = pc + 4;
1689
1690 {
1691 current_cpu->check_option_cp (pc);
1692   {
1693     SI opval = 0;
1694     if (UNLIKELY(current_cpu->trace_result_p))
1695       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1696     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1697   }
1698 current_cpu->ivc2_cpcmpgtu_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1699 }
1700
1701   current_cpu->done_insn (npc, status);
1702   return status;
1703 #undef FLD
1704 }
1705
1706 // ********** cpcmpgt_w_P0S_P1: cpcmpgt.w $crqp,$crpp
1707
1708 sem_status
1709 mepcop1_64_sem_cpcmpgt_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1710 {
1711 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1712   sem_status status = SEM_STATUS_NORMAL;
1713   mepcop1_64_scache* abuf = sem;
1714   unsigned long long written = 0;
1715   PCADDR pc = abuf->addr;
1716   PCADDR npc = pc + 4;
1717
1718 {
1719 current_cpu->check_option_cp (pc);
1720   {
1721     SI opval = 0;
1722     if (UNLIKELY(current_cpu->trace_result_p))
1723       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1724     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1725   }
1726 current_cpu->ivc2_cpcmpgt_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1727 }
1728
1729   current_cpu->done_insn (npc, status);
1730   return status;
1731 #undef FLD
1732 }
1733
1734 // ********** cpcmpgeu_b_P0S_P1: cpcmpgeu.b $crqp,$crpp
1735
1736 sem_status
1737 mepcop1_64_sem_cpcmpgeu_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1738 {
1739 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1740   sem_status status = SEM_STATUS_NORMAL;
1741   mepcop1_64_scache* abuf = sem;
1742   unsigned long long written = 0;
1743   PCADDR pc = abuf->addr;
1744   PCADDR npc = pc + 4;
1745
1746 {
1747 current_cpu->check_option_cp (pc);
1748   {
1749     SI opval = 0;
1750     if (UNLIKELY(current_cpu->trace_result_p))
1751       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1752     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1753   }
1754 current_cpu->ivc2_cpcmpgeu_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1755 }
1756
1757   current_cpu->done_insn (npc, status);
1758   return status;
1759 #undef FLD
1760 }
1761
1762 // ********** cpcmpge_b_P0S_P1: cpcmpge.b $crqp,$crpp
1763
1764 sem_status
1765 mepcop1_64_sem_cpcmpge_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1766 {
1767 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1768   sem_status status = SEM_STATUS_NORMAL;
1769   mepcop1_64_scache* abuf = sem;
1770   unsigned long long written = 0;
1771   PCADDR pc = abuf->addr;
1772   PCADDR npc = pc + 4;
1773
1774 {
1775 current_cpu->check_option_cp (pc);
1776   {
1777     SI opval = 0;
1778     if (UNLIKELY(current_cpu->trace_result_p))
1779       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1780     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1781   }
1782 current_cpu->ivc2_cpcmpge_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1783 }
1784
1785   current_cpu->done_insn (npc, status);
1786   return status;
1787 #undef FLD
1788 }
1789
1790 // ********** cpcmpge_h_P0S_P1: cpcmpge.h $crqp,$crpp
1791
1792 sem_status
1793 mepcop1_64_sem_cpcmpge_h_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1794 {
1795 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1796   sem_status status = SEM_STATUS_NORMAL;
1797   mepcop1_64_scache* abuf = sem;
1798   unsigned long long written = 0;
1799   PCADDR pc = abuf->addr;
1800   PCADDR npc = pc + 4;
1801
1802 {
1803 current_cpu->check_option_cp (pc);
1804   {
1805     SI opval = 0;
1806     if (UNLIKELY(current_cpu->trace_result_p))
1807       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1808     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1809   }
1810 current_cpu->ivc2_cpcmpge_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1811 }
1812
1813   current_cpu->done_insn (npc, status);
1814   return status;
1815 #undef FLD
1816 }
1817
1818 // ********** cpcmpgeu_w_P0S_P1: cpcmpgeu.w $crqp,$crpp
1819
1820 sem_status
1821 mepcop1_64_sem_cpcmpgeu_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1822 {
1823 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1824   sem_status status = SEM_STATUS_NORMAL;
1825   mepcop1_64_scache* abuf = sem;
1826   unsigned long long written = 0;
1827   PCADDR pc = abuf->addr;
1828   PCADDR npc = pc + 4;
1829
1830 {
1831 current_cpu->check_option_cp (pc);
1832   {
1833     SI opval = 0;
1834     if (UNLIKELY(current_cpu->trace_result_p))
1835       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1836     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1837   }
1838 current_cpu->ivc2_cpcmpgeu_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1839 }
1840
1841   current_cpu->done_insn (npc, status);
1842   return status;
1843 #undef FLD
1844 }
1845
1846 // ********** cpcmpge_w_P0S_P1: cpcmpge.w $crqp,$crpp
1847
1848 sem_status
1849 mepcop1_64_sem_cpcmpge_w_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1850 {
1851 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1852   sem_status status = SEM_STATUS_NORMAL;
1853   mepcop1_64_scache* abuf = sem;
1854   unsigned long long written = 0;
1855   PCADDR pc = abuf->addr;
1856   PCADDR npc = pc + 4;
1857
1858 {
1859 current_cpu->check_option_cp (pc);
1860   {
1861     SI opval = 0;
1862     if (UNLIKELY(current_cpu->trace_result_p))
1863       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 1) << ']' << ":=0x" << hex << opval << dec << "  ";
1864     current_cpu->h_ccr_ivc2_set (((UINT) 1), opval);
1865   }
1866 current_cpu->ivc2_cpcmpge_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1867 }
1868
1869   current_cpu->done_insn (npc, status);
1870   return status;
1871 #undef FLD
1872 }
1873
1874 // ********** cpfsftbi_P0_P1: cpfsftbi $crop,$crqp,$crpp,$imm3p5
1875
1876 sem_status
1877 mepcop1_64_sem_cpfsftbi_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1878 {
1879 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
1880   sem_status status = SEM_STATUS_NORMAL;
1881   mepcop1_64_scache* abuf = sem;
1882   unsigned long long written = 0;
1883   PCADDR pc = abuf->addr;
1884   PCADDR npc = pc + 4;
1885
1886 {
1887 current_cpu->check_option_cp (pc);
1888   {
1889     DI opval = current_cpu->ivc2_cpfsftbi (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_3u5));
1890     if (UNLIKELY(current_cpu->trace_result_p))
1891       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
1892     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
1893   }
1894 }
1895
1896   current_cpu->done_insn (npc, status);
1897   return status;
1898 #undef FLD
1899 }
1900
1901 // ********** cpacmpeq_b_P0_P1: cpacmpeq.b $crqp,$crpp
1902
1903 sem_status
1904 mepcop1_64_sem_cpacmpeq_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1905 {
1906 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1907   sem_status status = SEM_STATUS_NORMAL;
1908   mepcop1_64_scache* abuf = sem;
1909   unsigned long long written = 0;
1910   PCADDR pc = abuf->addr;
1911   PCADDR npc = pc + 4;
1912
1913 {
1914 current_cpu->check_option_cp (pc);
1915 current_cpu->ivc2_cpacmpeq_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1916 }
1917
1918   current_cpu->done_insn (npc, status);
1919   return status;
1920 #undef FLD
1921 }
1922
1923 // ********** cpacmpeq_h_P0_P1: cpacmpeq.h $crqp,$crpp
1924
1925 sem_status
1926 mepcop1_64_sem_cpacmpeq_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1927 {
1928 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1929   sem_status status = SEM_STATUS_NORMAL;
1930   mepcop1_64_scache* abuf = sem;
1931   unsigned long long written = 0;
1932   PCADDR pc = abuf->addr;
1933   PCADDR npc = pc + 4;
1934
1935 {
1936 current_cpu->check_option_cp (pc);
1937 current_cpu->ivc2_cpacmpeq_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1938 }
1939
1940   current_cpu->done_insn (npc, status);
1941   return status;
1942 #undef FLD
1943 }
1944
1945 // ********** cpacmpeq_w_P0_P1: cpacmpeq.w $crqp,$crpp
1946
1947 sem_status
1948 mepcop1_64_sem_cpacmpeq_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1949 {
1950 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1951   sem_status status = SEM_STATUS_NORMAL;
1952   mepcop1_64_scache* abuf = sem;
1953   unsigned long long written = 0;
1954   PCADDR pc = abuf->addr;
1955   PCADDR npc = pc + 4;
1956
1957 {
1958 current_cpu->check_option_cp (pc);
1959 current_cpu->ivc2_cpacmpeq_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1960 }
1961
1962   current_cpu->done_insn (npc, status);
1963   return status;
1964 #undef FLD
1965 }
1966
1967 // ********** cpacmpne_b_P0_P1: cpacmpne.b $crqp,$crpp
1968
1969 sem_status
1970 mepcop1_64_sem_cpacmpne_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1971 {
1972 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1973   sem_status status = SEM_STATUS_NORMAL;
1974   mepcop1_64_scache* abuf = sem;
1975   unsigned long long written = 0;
1976   PCADDR pc = abuf->addr;
1977   PCADDR npc = pc + 4;
1978
1979 {
1980 current_cpu->check_option_cp (pc);
1981 current_cpu->ivc2_cpacmpne_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
1982 }
1983
1984   current_cpu->done_insn (npc, status);
1985   return status;
1986 #undef FLD
1987 }
1988
1989 // ********** cpacmpne_h_P0_P1: cpacmpne.h $crqp,$crpp
1990
1991 sem_status
1992 mepcop1_64_sem_cpacmpne_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
1993 {
1994 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
1995   sem_status status = SEM_STATUS_NORMAL;
1996   mepcop1_64_scache* abuf = sem;
1997   unsigned long long written = 0;
1998   PCADDR pc = abuf->addr;
1999   PCADDR npc = pc + 4;
2000
2001 {
2002 current_cpu->check_option_cp (pc);
2003 current_cpu->ivc2_cpacmpne_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2004 }
2005
2006   current_cpu->done_insn (npc, status);
2007   return status;
2008 #undef FLD
2009 }
2010
2011 // ********** cpacmpne_w_P0_P1: cpacmpne.w $crqp,$crpp
2012
2013 sem_status
2014 mepcop1_64_sem_cpacmpne_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2015 {
2016 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2017   sem_status status = SEM_STATUS_NORMAL;
2018   mepcop1_64_scache* abuf = sem;
2019   unsigned long long written = 0;
2020   PCADDR pc = abuf->addr;
2021   PCADDR npc = pc + 4;
2022
2023 {
2024 current_cpu->check_option_cp (pc);
2025 current_cpu->ivc2_cpacmpne_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2026 }
2027
2028   current_cpu->done_insn (npc, status);
2029   return status;
2030 #undef FLD
2031 }
2032
2033 // ********** cpacmpgtu_b_P0_P1: cpacmpgtu.b $crqp,$crpp
2034
2035 sem_status
2036 mepcop1_64_sem_cpacmpgtu_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2037 {
2038 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2039   sem_status status = SEM_STATUS_NORMAL;
2040   mepcop1_64_scache* abuf = sem;
2041   unsigned long long written = 0;
2042   PCADDR pc = abuf->addr;
2043   PCADDR npc = pc + 4;
2044
2045 {
2046 current_cpu->check_option_cp (pc);
2047 current_cpu->ivc2_cpacmpgtu_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2048 }
2049
2050   current_cpu->done_insn (npc, status);
2051   return status;
2052 #undef FLD
2053 }
2054
2055 // ********** cpacmpgt_b_P0_P1: cpacmpgt.b $crqp,$crpp
2056
2057 sem_status
2058 mepcop1_64_sem_cpacmpgt_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2059 {
2060 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2061   sem_status status = SEM_STATUS_NORMAL;
2062   mepcop1_64_scache* abuf = sem;
2063   unsigned long long written = 0;
2064   PCADDR pc = abuf->addr;
2065   PCADDR npc = pc + 4;
2066
2067 {
2068 current_cpu->check_option_cp (pc);
2069 current_cpu->ivc2_cpacmpgt_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2070 }
2071
2072   current_cpu->done_insn (npc, status);
2073   return status;
2074 #undef FLD
2075 }
2076
2077 // ********** cpacmpgt_h_P0_P1: cpacmpgt.h $crqp,$crpp
2078
2079 sem_status
2080 mepcop1_64_sem_cpacmpgt_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2081 {
2082 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2083   sem_status status = SEM_STATUS_NORMAL;
2084   mepcop1_64_scache* abuf = sem;
2085   unsigned long long written = 0;
2086   PCADDR pc = abuf->addr;
2087   PCADDR npc = pc + 4;
2088
2089 {
2090 current_cpu->check_option_cp (pc);
2091 current_cpu->ivc2_cpacmpgt_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2092 }
2093
2094   current_cpu->done_insn (npc, status);
2095   return status;
2096 #undef FLD
2097 }
2098
2099 // ********** cpacmpgtu_w_P0_P1: cpacmpgtu.w $crqp,$crpp
2100
2101 sem_status
2102 mepcop1_64_sem_cpacmpgtu_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2103 {
2104 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2105   sem_status status = SEM_STATUS_NORMAL;
2106   mepcop1_64_scache* abuf = sem;
2107   unsigned long long written = 0;
2108   PCADDR pc = abuf->addr;
2109   PCADDR npc = pc + 4;
2110
2111 {
2112 current_cpu->check_option_cp (pc);
2113 current_cpu->ivc2_cpacmpgtu_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2114 }
2115
2116   current_cpu->done_insn (npc, status);
2117   return status;
2118 #undef FLD
2119 }
2120
2121 // ********** cpacmpgt_w_P0_P1: cpacmpgt.w $crqp,$crpp
2122
2123 sem_status
2124 mepcop1_64_sem_cpacmpgt_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2125 {
2126 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2127   sem_status status = SEM_STATUS_NORMAL;
2128   mepcop1_64_scache* abuf = sem;
2129   unsigned long long written = 0;
2130   PCADDR pc = abuf->addr;
2131   PCADDR npc = pc + 4;
2132
2133 {
2134 current_cpu->check_option_cp (pc);
2135 current_cpu->ivc2_cpacmpgt_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2136 }
2137
2138   current_cpu->done_insn (npc, status);
2139   return status;
2140 #undef FLD
2141 }
2142
2143 // ********** cpacmpgeu_b_P0_P1: cpacmpgeu.b $crqp,$crpp
2144
2145 sem_status
2146 mepcop1_64_sem_cpacmpgeu_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2147 {
2148 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2149   sem_status status = SEM_STATUS_NORMAL;
2150   mepcop1_64_scache* abuf = sem;
2151   unsigned long long written = 0;
2152   PCADDR pc = abuf->addr;
2153   PCADDR npc = pc + 4;
2154
2155 {
2156 current_cpu->check_option_cp (pc);
2157 current_cpu->ivc2_cpacmpgeu_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2158 }
2159
2160   current_cpu->done_insn (npc, status);
2161   return status;
2162 #undef FLD
2163 }
2164
2165 // ********** cpacmpge_b_P0_P1: cpacmpge.b $crqp,$crpp
2166
2167 sem_status
2168 mepcop1_64_sem_cpacmpge_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2169 {
2170 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2171   sem_status status = SEM_STATUS_NORMAL;
2172   mepcop1_64_scache* abuf = sem;
2173   unsigned long long written = 0;
2174   PCADDR pc = abuf->addr;
2175   PCADDR npc = pc + 4;
2176
2177 {
2178 current_cpu->check_option_cp (pc);
2179 current_cpu->ivc2_cpacmpge_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2180 }
2181
2182   current_cpu->done_insn (npc, status);
2183   return status;
2184 #undef FLD
2185 }
2186
2187 // ********** cpacmpge_h_P0_P1: cpacmpge.h $crqp,$crpp
2188
2189 sem_status
2190 mepcop1_64_sem_cpacmpge_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2191 {
2192 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2193   sem_status status = SEM_STATUS_NORMAL;
2194   mepcop1_64_scache* abuf = sem;
2195   unsigned long long written = 0;
2196   PCADDR pc = abuf->addr;
2197   PCADDR npc = pc + 4;
2198
2199 {
2200 current_cpu->check_option_cp (pc);
2201 current_cpu->ivc2_cpacmpge_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2202 }
2203
2204   current_cpu->done_insn (npc, status);
2205   return status;
2206 #undef FLD
2207 }
2208
2209 // ********** cpacmpgeu_w_P0_P1: cpacmpgeu.w $crqp,$crpp
2210
2211 sem_status
2212 mepcop1_64_sem_cpacmpgeu_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2213 {
2214 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2215   sem_status status = SEM_STATUS_NORMAL;
2216   mepcop1_64_scache* abuf = sem;
2217   unsigned long long written = 0;
2218   PCADDR pc = abuf->addr;
2219   PCADDR npc = pc + 4;
2220
2221 {
2222 current_cpu->check_option_cp (pc);
2223 current_cpu->ivc2_cpacmpgeu_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2224 }
2225
2226   current_cpu->done_insn (npc, status);
2227   return status;
2228 #undef FLD
2229 }
2230
2231 // ********** cpacmpge_w_P0_P1: cpacmpge.w $crqp,$crpp
2232
2233 sem_status
2234 mepcop1_64_sem_cpacmpge_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2235 {
2236 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2237   sem_status status = SEM_STATUS_NORMAL;
2238   mepcop1_64_scache* abuf = sem;
2239   unsigned long long written = 0;
2240   PCADDR pc = abuf->addr;
2241   PCADDR npc = pc + 4;
2242
2243 {
2244 current_cpu->check_option_cp (pc);
2245 current_cpu->ivc2_cpacmpge_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2246 }
2247
2248   current_cpu->done_insn (npc, status);
2249   return status;
2250 #undef FLD
2251 }
2252
2253 // ********** cpocmpeq_b_P0_P1: cpocmpeq.b $crqp,$crpp
2254
2255 sem_status
2256 mepcop1_64_sem_cpocmpeq_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2257 {
2258 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2259   sem_status status = SEM_STATUS_NORMAL;
2260   mepcop1_64_scache* abuf = sem;
2261   unsigned long long written = 0;
2262   PCADDR pc = abuf->addr;
2263   PCADDR npc = pc + 4;
2264
2265 {
2266 current_cpu->check_option_cp (pc);
2267 current_cpu->ivc2_cpocmpeq_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2268 }
2269
2270   current_cpu->done_insn (npc, status);
2271   return status;
2272 #undef FLD
2273 }
2274
2275 // ********** cpocmpeq_h_P0_P1: cpocmpeq.h $crqp,$crpp
2276
2277 sem_status
2278 mepcop1_64_sem_cpocmpeq_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2279 {
2280 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2281   sem_status status = SEM_STATUS_NORMAL;
2282   mepcop1_64_scache* abuf = sem;
2283   unsigned long long written = 0;
2284   PCADDR pc = abuf->addr;
2285   PCADDR npc = pc + 4;
2286
2287 {
2288 current_cpu->check_option_cp (pc);
2289 current_cpu->ivc2_cpocmpeq_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2290 }
2291
2292   current_cpu->done_insn (npc, status);
2293   return status;
2294 #undef FLD
2295 }
2296
2297 // ********** cpocmpeq_w_P0_P1: cpocmpeq.w $crqp,$crpp
2298
2299 sem_status
2300 mepcop1_64_sem_cpocmpeq_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2301 {
2302 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2303   sem_status status = SEM_STATUS_NORMAL;
2304   mepcop1_64_scache* abuf = sem;
2305   unsigned long long written = 0;
2306   PCADDR pc = abuf->addr;
2307   PCADDR npc = pc + 4;
2308
2309 {
2310 current_cpu->check_option_cp (pc);
2311 current_cpu->ivc2_cpocmpeq_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2312 }
2313
2314   current_cpu->done_insn (npc, status);
2315   return status;
2316 #undef FLD
2317 }
2318
2319 // ********** cpocmpne_b_P0_P1: cpocmpne.b $crqp,$crpp
2320
2321 sem_status
2322 mepcop1_64_sem_cpocmpne_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2323 {
2324 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2325   sem_status status = SEM_STATUS_NORMAL;
2326   mepcop1_64_scache* abuf = sem;
2327   unsigned long long written = 0;
2328   PCADDR pc = abuf->addr;
2329   PCADDR npc = pc + 4;
2330
2331 {
2332 current_cpu->check_option_cp (pc);
2333 current_cpu->ivc2_cpocmpne_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2334 }
2335
2336   current_cpu->done_insn (npc, status);
2337   return status;
2338 #undef FLD
2339 }
2340
2341 // ********** cpocmpne_h_P0_P1: cpocmpne.h $crqp,$crpp
2342
2343 sem_status
2344 mepcop1_64_sem_cpocmpne_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2345 {
2346 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2347   sem_status status = SEM_STATUS_NORMAL;
2348   mepcop1_64_scache* abuf = sem;
2349   unsigned long long written = 0;
2350   PCADDR pc = abuf->addr;
2351   PCADDR npc = pc + 4;
2352
2353 {
2354 current_cpu->check_option_cp (pc);
2355 current_cpu->ivc2_cpocmpne_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2356 }
2357
2358   current_cpu->done_insn (npc, status);
2359   return status;
2360 #undef FLD
2361 }
2362
2363 // ********** cpocmpne_w_P0_P1: cpocmpne.w $crqp,$crpp
2364
2365 sem_status
2366 mepcop1_64_sem_cpocmpne_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2367 {
2368 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2369   sem_status status = SEM_STATUS_NORMAL;
2370   mepcop1_64_scache* abuf = sem;
2371   unsigned long long written = 0;
2372   PCADDR pc = abuf->addr;
2373   PCADDR npc = pc + 4;
2374
2375 {
2376 current_cpu->check_option_cp (pc);
2377 current_cpu->ivc2_cpocmpne_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2378 }
2379
2380   current_cpu->done_insn (npc, status);
2381   return status;
2382 #undef FLD
2383 }
2384
2385 // ********** cpocmpgtu_b_P0_P1: cpocmpgtu.b $crqp,$crpp
2386
2387 sem_status
2388 mepcop1_64_sem_cpocmpgtu_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2389 {
2390 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2391   sem_status status = SEM_STATUS_NORMAL;
2392   mepcop1_64_scache* abuf = sem;
2393   unsigned long long written = 0;
2394   PCADDR pc = abuf->addr;
2395   PCADDR npc = pc + 4;
2396
2397 {
2398 current_cpu->check_option_cp (pc);
2399 current_cpu->ivc2_cpocmpgtu_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2400 }
2401
2402   current_cpu->done_insn (npc, status);
2403   return status;
2404 #undef FLD
2405 }
2406
2407 // ********** cpocmpgt_b_P0_P1: cpocmpgt.b $crqp,$crpp
2408
2409 sem_status
2410 mepcop1_64_sem_cpocmpgt_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2411 {
2412 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2413   sem_status status = SEM_STATUS_NORMAL;
2414   mepcop1_64_scache* abuf = sem;
2415   unsigned long long written = 0;
2416   PCADDR pc = abuf->addr;
2417   PCADDR npc = pc + 4;
2418
2419 {
2420 current_cpu->check_option_cp (pc);
2421 current_cpu->ivc2_cpocmpgt_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2422 }
2423
2424   current_cpu->done_insn (npc, status);
2425   return status;
2426 #undef FLD
2427 }
2428
2429 // ********** cpocmpgt_h_P0_P1: cpocmpgt.h $crqp,$crpp
2430
2431 sem_status
2432 mepcop1_64_sem_cpocmpgt_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2433 {
2434 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2435   sem_status status = SEM_STATUS_NORMAL;
2436   mepcop1_64_scache* abuf = sem;
2437   unsigned long long written = 0;
2438   PCADDR pc = abuf->addr;
2439   PCADDR npc = pc + 4;
2440
2441 {
2442 current_cpu->check_option_cp (pc);
2443 current_cpu->ivc2_cpocmpgt_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2444 }
2445
2446   current_cpu->done_insn (npc, status);
2447   return status;
2448 #undef FLD
2449 }
2450
2451 // ********** cpocmpgtu_w_P0_P1: cpocmpgtu.w $crqp,$crpp
2452
2453 sem_status
2454 mepcop1_64_sem_cpocmpgtu_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2455 {
2456 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2457   sem_status status = SEM_STATUS_NORMAL;
2458   mepcop1_64_scache* abuf = sem;
2459   unsigned long long written = 0;
2460   PCADDR pc = abuf->addr;
2461   PCADDR npc = pc + 4;
2462
2463 {
2464 current_cpu->check_option_cp (pc);
2465 current_cpu->ivc2_cpocmpgtu_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2466 }
2467
2468   current_cpu->done_insn (npc, status);
2469   return status;
2470 #undef FLD
2471 }
2472
2473 // ********** cpocmpgt_w_P0_P1: cpocmpgt.w $crqp,$crpp
2474
2475 sem_status
2476 mepcop1_64_sem_cpocmpgt_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2477 {
2478 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2479   sem_status status = SEM_STATUS_NORMAL;
2480   mepcop1_64_scache* abuf = sem;
2481   unsigned long long written = 0;
2482   PCADDR pc = abuf->addr;
2483   PCADDR npc = pc + 4;
2484
2485 {
2486 current_cpu->check_option_cp (pc);
2487 current_cpu->ivc2_cpocmpgt_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2488 }
2489
2490   current_cpu->done_insn (npc, status);
2491   return status;
2492 #undef FLD
2493 }
2494
2495 // ********** cpocmpgeu_b_P0_P1: cpocmpgeu.b $crqp,$crpp
2496
2497 sem_status
2498 mepcop1_64_sem_cpocmpgeu_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2499 {
2500 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2501   sem_status status = SEM_STATUS_NORMAL;
2502   mepcop1_64_scache* abuf = sem;
2503   unsigned long long written = 0;
2504   PCADDR pc = abuf->addr;
2505   PCADDR npc = pc + 4;
2506
2507 {
2508 current_cpu->check_option_cp (pc);
2509 current_cpu->ivc2_cpocmpgeu_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2510 }
2511
2512   current_cpu->done_insn (npc, status);
2513   return status;
2514 #undef FLD
2515 }
2516
2517 // ********** cpocmpge_b_P0_P1: cpocmpge.b $crqp,$crpp
2518
2519 sem_status
2520 mepcop1_64_sem_cpocmpge_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2521 {
2522 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2523   sem_status status = SEM_STATUS_NORMAL;
2524   mepcop1_64_scache* abuf = sem;
2525   unsigned long long written = 0;
2526   PCADDR pc = abuf->addr;
2527   PCADDR npc = pc + 4;
2528
2529 {
2530 current_cpu->check_option_cp (pc);
2531 current_cpu->ivc2_cpocmpge_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2532 }
2533
2534   current_cpu->done_insn (npc, status);
2535   return status;
2536 #undef FLD
2537 }
2538
2539 // ********** cpocmpge_h_P0_P1: cpocmpge.h $crqp,$crpp
2540
2541 sem_status
2542 mepcop1_64_sem_cpocmpge_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2543 {
2544 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2545   sem_status status = SEM_STATUS_NORMAL;
2546   mepcop1_64_scache* abuf = sem;
2547   unsigned long long written = 0;
2548   PCADDR pc = abuf->addr;
2549   PCADDR npc = pc + 4;
2550
2551 {
2552 current_cpu->check_option_cp (pc);
2553 current_cpu->ivc2_cpocmpge_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2554 }
2555
2556   current_cpu->done_insn (npc, status);
2557   return status;
2558 #undef FLD
2559 }
2560
2561 // ********** cpocmpgeu_w_P0_P1: cpocmpgeu.w $crqp,$crpp
2562
2563 sem_status
2564 mepcop1_64_sem_cpocmpgeu_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2565 {
2566 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2567   sem_status status = SEM_STATUS_NORMAL;
2568   mepcop1_64_scache* abuf = sem;
2569   unsigned long long written = 0;
2570   PCADDR pc = abuf->addr;
2571   PCADDR npc = pc + 4;
2572
2573 {
2574 current_cpu->check_option_cp (pc);
2575 current_cpu->ivc2_cpocmpgeu_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2576 }
2577
2578   current_cpu->done_insn (npc, status);
2579   return status;
2580 #undef FLD
2581 }
2582
2583 // ********** cpocmpge_w_P0_P1: cpocmpge.w $crqp,$crpp
2584
2585 sem_status
2586 mepcop1_64_sem_cpocmpge_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2587 {
2588 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
2589   sem_status status = SEM_STATUS_NORMAL;
2590   mepcop1_64_scache* abuf = sem;
2591   unsigned long long written = 0;
2592   PCADDR pc = abuf->addr;
2593   PCADDR npc = pc + 4;
2594
2595 {
2596 current_cpu->check_option_cp (pc);
2597 current_cpu->ivc2_cpocmpge_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2598 }
2599
2600   current_cpu->done_insn (npc, status);
2601   return status;
2602 #undef FLD
2603 }
2604
2605 // ********** cdadd3_P0_P1: cdadd3 $crop,$crqp,$crpp
2606
2607 sem_status
2608 mepcop1_64_sem_cdadd3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2609 {
2610 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2611   sem_status status = SEM_STATUS_NORMAL;
2612   mepcop1_64_scache* abuf = sem;
2613   unsigned long long written = 0;
2614   PCADDR pc = abuf->addr;
2615   PCADDR npc = pc + 4;
2616
2617 {
2618 current_cpu->check_option_cp (pc);
2619   {
2620     DI opval = current_cpu->ivc2_cdadd3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2621     if (UNLIKELY(current_cpu->trace_result_p))
2622       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2623     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2624   }
2625 }
2626
2627   current_cpu->done_insn (npc, status);
2628   return status;
2629 #undef FLD
2630 }
2631
2632 // ********** cpsub3_b_P0_P1: cpsub3.b $crop,$crqp,$crpp
2633
2634 sem_status
2635 mepcop1_64_sem_cpsub3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2636 {
2637 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2638   sem_status status = SEM_STATUS_NORMAL;
2639   mepcop1_64_scache* abuf = sem;
2640   unsigned long long written = 0;
2641   PCADDR pc = abuf->addr;
2642   PCADDR npc = pc + 4;
2643
2644 {
2645 current_cpu->check_option_cp (pc);
2646   {
2647     DI opval = current_cpu->ivc2_cpsub3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2648     if (UNLIKELY(current_cpu->trace_result_p))
2649       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2650     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2651   }
2652 }
2653
2654   current_cpu->done_insn (npc, status);
2655   return status;
2656 #undef FLD
2657 }
2658
2659 // ********** cpsub3_h_P0_P1: cpsub3.h $crop,$crqp,$crpp
2660
2661 sem_status
2662 mepcop1_64_sem_cpsub3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2663 {
2664 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2665   sem_status status = SEM_STATUS_NORMAL;
2666   mepcop1_64_scache* abuf = sem;
2667   unsigned long long written = 0;
2668   PCADDR pc = abuf->addr;
2669   PCADDR npc = pc + 4;
2670
2671 {
2672 current_cpu->check_option_cp (pc);
2673   {
2674     DI opval = current_cpu->ivc2_cpsub3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2675     if (UNLIKELY(current_cpu->trace_result_p))
2676       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2677     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2678   }
2679 }
2680
2681   current_cpu->done_insn (npc, status);
2682   return status;
2683 #undef FLD
2684 }
2685
2686 // ********** cpsub3_w_P0_P1: cpsub3.w $crop,$crqp,$crpp
2687
2688 sem_status
2689 mepcop1_64_sem_cpsub3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2690 {
2691 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2692   sem_status status = SEM_STATUS_NORMAL;
2693   mepcop1_64_scache* abuf = sem;
2694   unsigned long long written = 0;
2695   PCADDR pc = abuf->addr;
2696   PCADDR npc = pc + 4;
2697
2698 {
2699 current_cpu->check_option_cp (pc);
2700   {
2701     DI opval = current_cpu->ivc2_cpsub3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2702     if (UNLIKELY(current_cpu->trace_result_p))
2703       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2704     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2705   }
2706 }
2707
2708   current_cpu->done_insn (npc, status);
2709   return status;
2710 #undef FLD
2711 }
2712
2713 // ********** cdsub3_P0_P1: cdsub3 $crop,$crqp,$crpp
2714
2715 sem_status
2716 mepcop1_64_sem_cdsub3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2717 {
2718 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2719   sem_status status = SEM_STATUS_NORMAL;
2720   mepcop1_64_scache* abuf = sem;
2721   unsigned long long written = 0;
2722   PCADDR pc = abuf->addr;
2723   PCADDR npc = pc + 4;
2724
2725 {
2726 current_cpu->check_option_cp (pc);
2727   {
2728     DI opval = current_cpu->ivc2_cdsub3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2729     if (UNLIKELY(current_cpu->trace_result_p))
2730       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2731     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2732   }
2733 }
2734
2735   current_cpu->done_insn (npc, status);
2736   return status;
2737 #undef FLD
2738 }
2739
2740 // ********** cpsadd3_h_P0_P1: cpsadd3.h $crop,$crqp,$crpp
2741
2742 sem_status
2743 mepcop1_64_sem_cpsadd3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2744 {
2745 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2746   sem_status status = SEM_STATUS_NORMAL;
2747   mepcop1_64_scache* abuf = sem;
2748   unsigned long long written = 0;
2749   PCADDR pc = abuf->addr;
2750   PCADDR npc = pc + 4;
2751
2752 {
2753 current_cpu->check_option_cp (pc);
2754   {
2755     DI opval = current_cpu->ivc2_cpsadd3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2756     if (UNLIKELY(current_cpu->trace_result_p))
2757       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2758     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2759   }
2760 }
2761
2762   current_cpu->done_insn (npc, status);
2763   return status;
2764 #undef FLD
2765 }
2766
2767 // ********** cpsadd3_w_P0_P1: cpsadd3.w $crop,$crqp,$crpp
2768
2769 sem_status
2770 mepcop1_64_sem_cpsadd3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2771 {
2772 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2773   sem_status status = SEM_STATUS_NORMAL;
2774   mepcop1_64_scache* abuf = sem;
2775   unsigned long long written = 0;
2776   PCADDR pc = abuf->addr;
2777   PCADDR npc = pc + 4;
2778
2779 {
2780 current_cpu->check_option_cp (pc);
2781   {
2782     DI opval = current_cpu->ivc2_cpsadd3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2783     if (UNLIKELY(current_cpu->trace_result_p))
2784       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2785     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2786   }
2787 }
2788
2789   current_cpu->done_insn (npc, status);
2790   return status;
2791 #undef FLD
2792 }
2793
2794 // ********** cpssub3_h_P0_P1: cpssub3.h $crop,$crqp,$crpp
2795
2796 sem_status
2797 mepcop1_64_sem_cpssub3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2798 {
2799 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2800   sem_status status = SEM_STATUS_NORMAL;
2801   mepcop1_64_scache* abuf = sem;
2802   unsigned long long written = 0;
2803   PCADDR pc = abuf->addr;
2804   PCADDR npc = pc + 4;
2805
2806 {
2807 current_cpu->check_option_cp (pc);
2808   {
2809     SI opval = 0;
2810     if (UNLIKELY(current_cpu->trace_result_p))
2811       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 4) << ']' << ":=0x" << hex << opval << dec << "  ";
2812     current_cpu->h_ccr_ivc2_set (((UINT) 4), opval);
2813   }
2814   {
2815     DI opval = current_cpu->ivc2_cpssub3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2816     if (UNLIKELY(current_cpu->trace_result_p))
2817       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2818     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2819   }
2820 }
2821
2822   current_cpu->done_insn (npc, status);
2823   return status;
2824 #undef FLD
2825 }
2826
2827 // ********** cpssub3_w_P0_P1: cpssub3.w $crop,$crqp,$crpp
2828
2829 sem_status
2830 mepcop1_64_sem_cpssub3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2831 {
2832 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2833   sem_status status = SEM_STATUS_NORMAL;
2834   mepcop1_64_scache* abuf = sem;
2835   unsigned long long written = 0;
2836   PCADDR pc = abuf->addr;
2837   PCADDR npc = pc + 4;
2838
2839 {
2840 current_cpu->check_option_cp (pc);
2841   {
2842     SI opval = 0;
2843     if (UNLIKELY(current_cpu->trace_result_p))
2844       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 4) << ']' << ":=0x" << hex << opval << dec << "  ";
2845     current_cpu->h_ccr_ivc2_set (((UINT) 4), opval);
2846   }
2847   {
2848     DI opval = current_cpu->ivc2_cpssub3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2849     if (UNLIKELY(current_cpu->trace_result_p))
2850       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2851     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2852   }
2853 }
2854
2855   current_cpu->done_insn (npc, status);
2856   return status;
2857 #undef FLD
2858 }
2859
2860 // ********** cpextuaddu3_b_P0_P1: cpextuaddu3.b $crop,$crqp,$crpp
2861
2862 sem_status
2863 mepcop1_64_sem_cpextuaddu3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2864 {
2865 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2866   sem_status status = SEM_STATUS_NORMAL;
2867   mepcop1_64_scache* abuf = sem;
2868   unsigned long long written = 0;
2869   PCADDR pc = abuf->addr;
2870   PCADDR npc = pc + 4;
2871
2872 {
2873 current_cpu->check_option_cp (pc);
2874   {
2875     DI opval = current_cpu->ivc2_cpextuaddu3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2876     if (UNLIKELY(current_cpu->trace_result_p))
2877       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2878     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2879   }
2880 }
2881
2882   current_cpu->done_insn (npc, status);
2883   return status;
2884 #undef FLD
2885 }
2886
2887 // ********** cpextuadd3_b_P0_P1: cpextuadd3.b $crop,$crqp,$crpp
2888
2889 sem_status
2890 mepcop1_64_sem_cpextuadd3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2891 {
2892 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2893   sem_status status = SEM_STATUS_NORMAL;
2894   mepcop1_64_scache* abuf = sem;
2895   unsigned long long written = 0;
2896   PCADDR pc = abuf->addr;
2897   PCADDR npc = pc + 4;
2898
2899 {
2900 current_cpu->check_option_cp (pc);
2901   {
2902     DI opval = current_cpu->ivc2_cpextuadd3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2903     if (UNLIKELY(current_cpu->trace_result_p))
2904       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2905     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2906   }
2907 }
2908
2909   current_cpu->done_insn (npc, status);
2910   return status;
2911 #undef FLD
2912 }
2913
2914 // ********** cpextladdu3_b_P0_P1: cpextladdu3.b $crop,$crqp,$crpp
2915
2916 sem_status
2917 mepcop1_64_sem_cpextladdu3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2918 {
2919 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2920   sem_status status = SEM_STATUS_NORMAL;
2921   mepcop1_64_scache* abuf = sem;
2922   unsigned long long written = 0;
2923   PCADDR pc = abuf->addr;
2924   PCADDR npc = pc + 4;
2925
2926 {
2927 current_cpu->check_option_cp (pc);
2928   {
2929     DI opval = current_cpu->ivc2_cpextladdu3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2930     if (UNLIKELY(current_cpu->trace_result_p))
2931       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2932     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2933   }
2934 }
2935
2936   current_cpu->done_insn (npc, status);
2937   return status;
2938 #undef FLD
2939 }
2940
2941 // ********** cpextladd3_b_P0_P1: cpextladd3.b $crop,$crqp,$crpp
2942
2943 sem_status
2944 mepcop1_64_sem_cpextladd3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2945 {
2946 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2947   sem_status status = SEM_STATUS_NORMAL;
2948   mepcop1_64_scache* abuf = sem;
2949   unsigned long long written = 0;
2950   PCADDR pc = abuf->addr;
2951   PCADDR npc = pc + 4;
2952
2953 {
2954 current_cpu->check_option_cp (pc);
2955   {
2956     DI opval = current_cpu->ivc2_cpextladd3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2957     if (UNLIKELY(current_cpu->trace_result_p))
2958       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2959     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2960   }
2961 }
2962
2963   current_cpu->done_insn (npc, status);
2964   return status;
2965 #undef FLD
2966 }
2967
2968 // ********** cpextusubu3_b_P0_P1: cpextusubu3.b $crop,$crqp,$crpp
2969
2970 sem_status
2971 mepcop1_64_sem_cpextusubu3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2972 {
2973 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
2974   sem_status status = SEM_STATUS_NORMAL;
2975   mepcop1_64_scache* abuf = sem;
2976   unsigned long long written = 0;
2977   PCADDR pc = abuf->addr;
2978   PCADDR npc = pc + 4;
2979
2980 {
2981 current_cpu->check_option_cp (pc);
2982   {
2983     DI opval = current_cpu->ivc2_cpextusubu3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
2984     if (UNLIKELY(current_cpu->trace_result_p))
2985       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
2986     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
2987   }
2988 }
2989
2990   current_cpu->done_insn (npc, status);
2991   return status;
2992 #undef FLD
2993 }
2994
2995 // ********** cpextusub3_b_P0_P1: cpextusub3.b $crop,$crqp,$crpp
2996
2997 sem_status
2998 mepcop1_64_sem_cpextusub3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
2999 {
3000 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3001   sem_status status = SEM_STATUS_NORMAL;
3002   mepcop1_64_scache* abuf = sem;
3003   unsigned long long written = 0;
3004   PCADDR pc = abuf->addr;
3005   PCADDR npc = pc + 4;
3006
3007 {
3008 current_cpu->check_option_cp (pc);
3009   {
3010     DI opval = current_cpu->ivc2_cpextusub3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3011     if (UNLIKELY(current_cpu->trace_result_p))
3012       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3013     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3014   }
3015 }
3016
3017   current_cpu->done_insn (npc, status);
3018   return status;
3019 #undef FLD
3020 }
3021
3022 // ********** cpextlsubu3_b_P0_P1: cpextlsubu3.b $crop,$crqp,$crpp
3023
3024 sem_status
3025 mepcop1_64_sem_cpextlsubu3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3026 {
3027 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3028   sem_status status = SEM_STATUS_NORMAL;
3029   mepcop1_64_scache* abuf = sem;
3030   unsigned long long written = 0;
3031   PCADDR pc = abuf->addr;
3032   PCADDR npc = pc + 4;
3033
3034 {
3035 current_cpu->check_option_cp (pc);
3036   {
3037     DI opval = current_cpu->ivc2_cpextlsubu3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3038     if (UNLIKELY(current_cpu->trace_result_p))
3039       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3040     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3041   }
3042 }
3043
3044   current_cpu->done_insn (npc, status);
3045   return status;
3046 #undef FLD
3047 }
3048
3049 // ********** cpextlsub3_b_P0_P1: cpextlsub3.b $crop,$crqp,$crpp
3050
3051 sem_status
3052 mepcop1_64_sem_cpextlsub3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3053 {
3054 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3055   sem_status status = SEM_STATUS_NORMAL;
3056   mepcop1_64_scache* abuf = sem;
3057   unsigned long long written = 0;
3058   PCADDR pc = abuf->addr;
3059   PCADDR npc = pc + 4;
3060
3061 {
3062 current_cpu->check_option_cp (pc);
3063   {
3064     DI opval = current_cpu->ivc2_cpextlsub3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3065     if (UNLIKELY(current_cpu->trace_result_p))
3066       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3067     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3068   }
3069 }
3070
3071   current_cpu->done_insn (npc, status);
3072   return status;
3073 #undef FLD
3074 }
3075
3076 // ********** cpaveu3_b_P0_P1: cpaveu3.b $crop,$crqp,$crpp
3077
3078 sem_status
3079 mepcop1_64_sem_cpaveu3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3080 {
3081 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3082   sem_status status = SEM_STATUS_NORMAL;
3083   mepcop1_64_scache* abuf = sem;
3084   unsigned long long written = 0;
3085   PCADDR pc = abuf->addr;
3086   PCADDR npc = pc + 4;
3087
3088 {
3089 current_cpu->check_option_cp (pc);
3090   {
3091     DI opval = current_cpu->ivc2_cpaveu3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3092     if (UNLIKELY(current_cpu->trace_result_p))
3093       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3094     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3095   }
3096 }
3097
3098   current_cpu->done_insn (npc, status);
3099   return status;
3100 #undef FLD
3101 }
3102
3103 // ********** cpave3_b_P0_P1: cpave3.b $crop,$crqp,$crpp
3104
3105 sem_status
3106 mepcop1_64_sem_cpave3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3107 {
3108 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3109   sem_status status = SEM_STATUS_NORMAL;
3110   mepcop1_64_scache* abuf = sem;
3111   unsigned long long written = 0;
3112   PCADDR pc = abuf->addr;
3113   PCADDR npc = pc + 4;
3114
3115 {
3116 current_cpu->check_option_cp (pc);
3117   {
3118     DI opval = current_cpu->ivc2_cpave3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3119     if (UNLIKELY(current_cpu->trace_result_p))
3120       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3121     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3122   }
3123 }
3124
3125   current_cpu->done_insn (npc, status);
3126   return status;
3127 #undef FLD
3128 }
3129
3130 // ********** cpave3_h_P0_P1: cpave3.h $crop,$crqp,$crpp
3131
3132 sem_status
3133 mepcop1_64_sem_cpave3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3134 {
3135 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3136   sem_status status = SEM_STATUS_NORMAL;
3137   mepcop1_64_scache* abuf = sem;
3138   unsigned long long written = 0;
3139   PCADDR pc = abuf->addr;
3140   PCADDR npc = pc + 4;
3141
3142 {
3143 current_cpu->check_option_cp (pc);
3144   {
3145     DI opval = current_cpu->ivc2_cpave3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3146     if (UNLIKELY(current_cpu->trace_result_p))
3147       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3148     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3149   }
3150 }
3151
3152   current_cpu->done_insn (npc, status);
3153   return status;
3154 #undef FLD
3155 }
3156
3157 // ********** cpave3_w_P0_P1: cpave3.w $crop,$crqp,$crpp
3158
3159 sem_status
3160 mepcop1_64_sem_cpave3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3161 {
3162 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3163   sem_status status = SEM_STATUS_NORMAL;
3164   mepcop1_64_scache* abuf = sem;
3165   unsigned long long written = 0;
3166   PCADDR pc = abuf->addr;
3167   PCADDR npc = pc + 4;
3168
3169 {
3170 current_cpu->check_option_cp (pc);
3171   {
3172     DI opval = current_cpu->ivc2_cpave3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3173     if (UNLIKELY(current_cpu->trace_result_p))
3174       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3175     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3176   }
3177 }
3178
3179   current_cpu->done_insn (npc, status);
3180   return status;
3181 #undef FLD
3182 }
3183
3184 // ********** cpaddsru3_b_P0_P1: cpaddsru3.b $crop,$crqp,$crpp
3185
3186 sem_status
3187 mepcop1_64_sem_cpaddsru3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3188 {
3189 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3190   sem_status status = SEM_STATUS_NORMAL;
3191   mepcop1_64_scache* abuf = sem;
3192   unsigned long long written = 0;
3193   PCADDR pc = abuf->addr;
3194   PCADDR npc = pc + 4;
3195
3196 {
3197 current_cpu->check_option_cp (pc);
3198   {
3199     DI opval = current_cpu->ivc2_cpaddsru3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3200     if (UNLIKELY(current_cpu->trace_result_p))
3201       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3202     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3203   }
3204 }
3205
3206   current_cpu->done_insn (npc, status);
3207   return status;
3208 #undef FLD
3209 }
3210
3211 // ********** cpaddsr3_b_P0_P1: cpaddsr3.b $crop,$crqp,$crpp
3212
3213 sem_status
3214 mepcop1_64_sem_cpaddsr3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3215 {
3216 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3217   sem_status status = SEM_STATUS_NORMAL;
3218   mepcop1_64_scache* abuf = sem;
3219   unsigned long long written = 0;
3220   PCADDR pc = abuf->addr;
3221   PCADDR npc = pc + 4;
3222
3223 {
3224 current_cpu->check_option_cp (pc);
3225   {
3226     DI opval = current_cpu->ivc2_cpaddsr3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3227     if (UNLIKELY(current_cpu->trace_result_p))
3228       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3229     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3230   }
3231 }
3232
3233   current_cpu->done_insn (npc, status);
3234   return status;
3235 #undef FLD
3236 }
3237
3238 // ********** cpaddsr3_h_P0_P1: cpaddsr3.h $crop,$crqp,$crpp
3239
3240 sem_status
3241 mepcop1_64_sem_cpaddsr3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3242 {
3243 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3244   sem_status status = SEM_STATUS_NORMAL;
3245   mepcop1_64_scache* abuf = sem;
3246   unsigned long long written = 0;
3247   PCADDR pc = abuf->addr;
3248   PCADDR npc = pc + 4;
3249
3250 {
3251 current_cpu->check_option_cp (pc);
3252   {
3253     DI opval = current_cpu->ivc2_cpaddsr3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3254     if (UNLIKELY(current_cpu->trace_result_p))
3255       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3256     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3257   }
3258 }
3259
3260   current_cpu->done_insn (npc, status);
3261   return status;
3262 #undef FLD
3263 }
3264
3265 // ********** cpaddsr3_w_P0_P1: cpaddsr3.w $crop,$crqp,$crpp
3266
3267 sem_status
3268 mepcop1_64_sem_cpaddsr3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3269 {
3270 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3271   sem_status status = SEM_STATUS_NORMAL;
3272   mepcop1_64_scache* abuf = sem;
3273   unsigned long long written = 0;
3274   PCADDR pc = abuf->addr;
3275   PCADDR npc = pc + 4;
3276
3277 {
3278 current_cpu->check_option_cp (pc);
3279   {
3280     DI opval = current_cpu->ivc2_cpaddsr3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3281     if (UNLIKELY(current_cpu->trace_result_p))
3282       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3283     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3284   }
3285 }
3286
3287   current_cpu->done_insn (npc, status);
3288   return status;
3289 #undef FLD
3290 }
3291
3292 // ********** cpabsu3_b_P0_P1: cpabsu3.b $crop,$crqp,$crpp
3293
3294 sem_status
3295 mepcop1_64_sem_cpabsu3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3296 {
3297 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3298   sem_status status = SEM_STATUS_NORMAL;
3299   mepcop1_64_scache* abuf = sem;
3300   unsigned long long written = 0;
3301   PCADDR pc = abuf->addr;
3302   PCADDR npc = pc + 4;
3303
3304 {
3305 current_cpu->check_option_cp (pc);
3306   {
3307     DI opval = current_cpu->ivc2_cpabsu3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3308     if (UNLIKELY(current_cpu->trace_result_p))
3309       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3310     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3311   }
3312 }
3313
3314   current_cpu->done_insn (npc, status);
3315   return status;
3316 #undef FLD
3317 }
3318
3319 // ********** cpabs3_b_P0_P1: cpabs3.b $crop,$crqp,$crpp
3320
3321 sem_status
3322 mepcop1_64_sem_cpabs3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3323 {
3324 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3325   sem_status status = SEM_STATUS_NORMAL;
3326   mepcop1_64_scache* abuf = sem;
3327   unsigned long long written = 0;
3328   PCADDR pc = abuf->addr;
3329   PCADDR npc = pc + 4;
3330
3331 {
3332 current_cpu->check_option_cp (pc);
3333   {
3334     DI opval = current_cpu->ivc2_cpabs3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3335     if (UNLIKELY(current_cpu->trace_result_p))
3336       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3337     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3338   }
3339 }
3340
3341   current_cpu->done_insn (npc, status);
3342   return status;
3343 #undef FLD
3344 }
3345
3346 // ********** cpabs3_h_P0_P1: cpabs3.h $crop,$crqp,$crpp
3347
3348 sem_status
3349 mepcop1_64_sem_cpabs3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3350 {
3351 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3352   sem_status status = SEM_STATUS_NORMAL;
3353   mepcop1_64_scache* abuf = sem;
3354   unsigned long long written = 0;
3355   PCADDR pc = abuf->addr;
3356   PCADDR npc = pc + 4;
3357
3358 {
3359 current_cpu->check_option_cp (pc);
3360   {
3361     DI opval = current_cpu->ivc2_cpabs3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3362     if (UNLIKELY(current_cpu->trace_result_p))
3363       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3364     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3365   }
3366 }
3367
3368   current_cpu->done_insn (npc, status);
3369   return status;
3370 #undef FLD
3371 }
3372
3373 // ********** cpand3_P0_P1: cpand3 $crop,$crqp,$crpp
3374
3375 sem_status
3376 mepcop1_64_sem_cpand3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3377 {
3378 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3379   sem_status status = SEM_STATUS_NORMAL;
3380   mepcop1_64_scache* abuf = sem;
3381   unsigned long long written = 0;
3382   PCADDR pc = abuf->addr;
3383   PCADDR npc = pc + 4;
3384
3385 {
3386 current_cpu->check_option_cp (pc);
3387   {
3388     DI opval = current_cpu->ivc2_cpand3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3389     if (UNLIKELY(current_cpu->trace_result_p))
3390       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3391     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3392   }
3393 }
3394
3395   current_cpu->done_insn (npc, status);
3396   return status;
3397 #undef FLD
3398 }
3399
3400 // ********** cpor3_P0_P1: cpor3 $crop,$crqp,$crpp
3401
3402 sem_status
3403 mepcop1_64_sem_cpor3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3404 {
3405 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3406   sem_status status = SEM_STATUS_NORMAL;
3407   mepcop1_64_scache* abuf = sem;
3408   unsigned long long written = 0;
3409   PCADDR pc = abuf->addr;
3410   PCADDR npc = pc + 4;
3411
3412 {
3413 current_cpu->check_option_cp (pc);
3414   {
3415     DI opval = current_cpu->ivc2_cpor3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3416     if (UNLIKELY(current_cpu->trace_result_p))
3417       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3418     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3419   }
3420 }
3421
3422   current_cpu->done_insn (npc, status);
3423   return status;
3424 #undef FLD
3425 }
3426
3427 // ********** cpnor3_P0_P1: cpnor3 $crop,$crqp,$crpp
3428
3429 sem_status
3430 mepcop1_64_sem_cpnor3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3431 {
3432 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3433   sem_status status = SEM_STATUS_NORMAL;
3434   mepcop1_64_scache* abuf = sem;
3435   unsigned long long written = 0;
3436   PCADDR pc = abuf->addr;
3437   PCADDR npc = pc + 4;
3438
3439 {
3440 current_cpu->check_option_cp (pc);
3441   {
3442     DI opval = current_cpu->ivc2_cpnor3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3443     if (UNLIKELY(current_cpu->trace_result_p))
3444       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3445     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3446   }
3447 }
3448
3449   current_cpu->done_insn (npc, status);
3450   return status;
3451 #undef FLD
3452 }
3453
3454 // ********** cpxor3_P0_P1: cpxor3 $crop,$crqp,$crpp
3455
3456 sem_status
3457 mepcop1_64_sem_cpxor3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3458 {
3459 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3460   sem_status status = SEM_STATUS_NORMAL;
3461   mepcop1_64_scache* abuf = sem;
3462   unsigned long long written = 0;
3463   PCADDR pc = abuf->addr;
3464   PCADDR npc = pc + 4;
3465
3466 {
3467 current_cpu->check_option_cp (pc);
3468   {
3469     DI opval = current_cpu->ivc2_cpxor3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3470     if (UNLIKELY(current_cpu->trace_result_p))
3471       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3472     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3473   }
3474 }
3475
3476   current_cpu->done_insn (npc, status);
3477   return status;
3478 #undef FLD
3479 }
3480
3481 // ********** cppacku_b_P0_P1: cppacku.b $crop,$crqp,$crpp
3482
3483 sem_status
3484 mepcop1_64_sem_cppacku_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3485 {
3486 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3487   sem_status status = SEM_STATUS_NORMAL;
3488   mepcop1_64_scache* abuf = sem;
3489   unsigned long long written = 0;
3490   PCADDR pc = abuf->addr;
3491   PCADDR npc = pc + 4;
3492
3493 {
3494 current_cpu->check_option_cp (pc);
3495   {
3496     DI opval = current_cpu->ivc2_cppacku_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3497     if (UNLIKELY(current_cpu->trace_result_p))
3498       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3499     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3500   }
3501 }
3502
3503   current_cpu->done_insn (npc, status);
3504   return status;
3505 #undef FLD
3506 }
3507
3508 // ********** cppack_b_P0_P1: cppack.b $crop,$crqp,$crpp
3509
3510 sem_status
3511 mepcop1_64_sem_cppack_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3512 {
3513 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3514   sem_status status = SEM_STATUS_NORMAL;
3515   mepcop1_64_scache* abuf = sem;
3516   unsigned long long written = 0;
3517   PCADDR pc = abuf->addr;
3518   PCADDR npc = pc + 4;
3519
3520 {
3521 current_cpu->check_option_cp (pc);
3522   {
3523     DI opval = current_cpu->ivc2_cppack_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3524     if (UNLIKELY(current_cpu->trace_result_p))
3525       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3526     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3527   }
3528 }
3529
3530   current_cpu->done_insn (npc, status);
3531   return status;
3532 #undef FLD
3533 }
3534
3535 // ********** cppack_h_P0_P1: cppack.h $crop,$crqp,$crpp
3536
3537 sem_status
3538 mepcop1_64_sem_cppack_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3539 {
3540 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3541   sem_status status = SEM_STATUS_NORMAL;
3542   mepcop1_64_scache* abuf = sem;
3543   unsigned long long written = 0;
3544   PCADDR pc = abuf->addr;
3545   PCADDR npc = pc + 4;
3546
3547 {
3548 current_cpu->check_option_cp (pc);
3549   {
3550     DI opval = current_cpu->ivc2_cppack_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3551     if (UNLIKELY(current_cpu->trace_result_p))
3552       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3553     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3554   }
3555 }
3556
3557   current_cpu->done_insn (npc, status);
3558   return status;
3559 #undef FLD
3560 }
3561
3562 // ********** cpmaxu3_b_P0_P1: cpmaxu3.b $crop,$crqp,$crpp
3563
3564 sem_status
3565 mepcop1_64_sem_cpmaxu3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3566 {
3567 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3568   sem_status status = SEM_STATUS_NORMAL;
3569   mepcop1_64_scache* abuf = sem;
3570   unsigned long long written = 0;
3571   PCADDR pc = abuf->addr;
3572   PCADDR npc = pc + 4;
3573
3574 {
3575 current_cpu->check_option_cp (pc);
3576   {
3577     DI opval = current_cpu->ivc2_cpmaxu3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3578     if (UNLIKELY(current_cpu->trace_result_p))
3579       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3580     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3581   }
3582 }
3583
3584   current_cpu->done_insn (npc, status);
3585   return status;
3586 #undef FLD
3587 }
3588
3589 // ********** cpmax3_b_P0_P1: cpmax3.b $crop,$crqp,$crpp
3590
3591 sem_status
3592 mepcop1_64_sem_cpmax3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3593 {
3594 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3595   sem_status status = SEM_STATUS_NORMAL;
3596   mepcop1_64_scache* abuf = sem;
3597   unsigned long long written = 0;
3598   PCADDR pc = abuf->addr;
3599   PCADDR npc = pc + 4;
3600
3601 {
3602 current_cpu->check_option_cp (pc);
3603   {
3604     DI opval = current_cpu->ivc2_cpmax3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3605     if (UNLIKELY(current_cpu->trace_result_p))
3606       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3607     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3608   }
3609 }
3610
3611   current_cpu->done_insn (npc, status);
3612   return status;
3613 #undef FLD
3614 }
3615
3616 // ********** cpmax3_h_P0_P1: cpmax3.h $crop,$crqp,$crpp
3617
3618 sem_status
3619 mepcop1_64_sem_cpmax3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3620 {
3621 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3622   sem_status status = SEM_STATUS_NORMAL;
3623   mepcop1_64_scache* abuf = sem;
3624   unsigned long long written = 0;
3625   PCADDR pc = abuf->addr;
3626   PCADDR npc = pc + 4;
3627
3628 {
3629 current_cpu->check_option_cp (pc);
3630   {
3631     DI opval = current_cpu->ivc2_cpmax3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3632     if (UNLIKELY(current_cpu->trace_result_p))
3633       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3634     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3635   }
3636 }
3637
3638   current_cpu->done_insn (npc, status);
3639   return status;
3640 #undef FLD
3641 }
3642
3643 // ********** cpmaxu3_w_P0_P1: cpmaxu3.w $crop,$crqp,$crpp
3644
3645 sem_status
3646 mepcop1_64_sem_cpmaxu3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3647 {
3648 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3649   sem_status status = SEM_STATUS_NORMAL;
3650   mepcop1_64_scache* abuf = sem;
3651   unsigned long long written = 0;
3652   PCADDR pc = abuf->addr;
3653   PCADDR npc = pc + 4;
3654
3655 {
3656 current_cpu->check_option_cp (pc);
3657   {
3658     DI opval = current_cpu->ivc2_cpmaxu3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3659     if (UNLIKELY(current_cpu->trace_result_p))
3660       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3661     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3662   }
3663 }
3664
3665   current_cpu->done_insn (npc, status);
3666   return status;
3667 #undef FLD
3668 }
3669
3670 // ********** cpmax3_w_P0_P1: cpmax3.w $crop,$crqp,$crpp
3671
3672 sem_status
3673 mepcop1_64_sem_cpmax3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3674 {
3675 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3676   sem_status status = SEM_STATUS_NORMAL;
3677   mepcop1_64_scache* abuf = sem;
3678   unsigned long long written = 0;
3679   PCADDR pc = abuf->addr;
3680   PCADDR npc = pc + 4;
3681
3682 {
3683 current_cpu->check_option_cp (pc);
3684   {
3685     DI opval = current_cpu->ivc2_cpmax3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3686     if (UNLIKELY(current_cpu->trace_result_p))
3687       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3688     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3689   }
3690 }
3691
3692   current_cpu->done_insn (npc, status);
3693   return status;
3694 #undef FLD
3695 }
3696
3697 // ********** cpminu3_b_P0_P1: cpminu3.b $crop,$crqp,$crpp
3698
3699 sem_status
3700 mepcop1_64_sem_cpminu3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3701 {
3702 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3703   sem_status status = SEM_STATUS_NORMAL;
3704   mepcop1_64_scache* abuf = sem;
3705   unsigned long long written = 0;
3706   PCADDR pc = abuf->addr;
3707   PCADDR npc = pc + 4;
3708
3709 {
3710 current_cpu->check_option_cp (pc);
3711   {
3712     DI opval = current_cpu->ivc2_cpminu3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3713     if (UNLIKELY(current_cpu->trace_result_p))
3714       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3715     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3716   }
3717 }
3718
3719   current_cpu->done_insn (npc, status);
3720   return status;
3721 #undef FLD
3722 }
3723
3724 // ********** cpmin3_b_P0_P1: cpmin3.b $crop,$crqp,$crpp
3725
3726 sem_status
3727 mepcop1_64_sem_cpmin3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3728 {
3729 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3730   sem_status status = SEM_STATUS_NORMAL;
3731   mepcop1_64_scache* abuf = sem;
3732   unsigned long long written = 0;
3733   PCADDR pc = abuf->addr;
3734   PCADDR npc = pc + 4;
3735
3736 {
3737 current_cpu->check_option_cp (pc);
3738   {
3739     DI opval = current_cpu->ivc2_cpmin3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3740     if (UNLIKELY(current_cpu->trace_result_p))
3741       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3742     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3743   }
3744 }
3745
3746   current_cpu->done_insn (npc, status);
3747   return status;
3748 #undef FLD
3749 }
3750
3751 // ********** cpmin3_h_P0_P1: cpmin3.h $crop,$crqp,$crpp
3752
3753 sem_status
3754 mepcop1_64_sem_cpmin3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3755 {
3756 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3757   sem_status status = SEM_STATUS_NORMAL;
3758   mepcop1_64_scache* abuf = sem;
3759   unsigned long long written = 0;
3760   PCADDR pc = abuf->addr;
3761   PCADDR npc = pc + 4;
3762
3763 {
3764 current_cpu->check_option_cp (pc);
3765   {
3766     DI opval = current_cpu->ivc2_cpmin3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3767     if (UNLIKELY(current_cpu->trace_result_p))
3768       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3769     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3770   }
3771 }
3772
3773   current_cpu->done_insn (npc, status);
3774   return status;
3775 #undef FLD
3776 }
3777
3778 // ********** cpminu3_w_P0_P1: cpminu3.w $crop,$crqp,$crpp
3779
3780 sem_status
3781 mepcop1_64_sem_cpminu3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3782 {
3783 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3784   sem_status status = SEM_STATUS_NORMAL;
3785   mepcop1_64_scache* abuf = sem;
3786   unsigned long long written = 0;
3787   PCADDR pc = abuf->addr;
3788   PCADDR npc = pc + 4;
3789
3790 {
3791 current_cpu->check_option_cp (pc);
3792   {
3793     DI opval = current_cpu->ivc2_cpminu3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3794     if (UNLIKELY(current_cpu->trace_result_p))
3795       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3796     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3797   }
3798 }
3799
3800   current_cpu->done_insn (npc, status);
3801   return status;
3802 #undef FLD
3803 }
3804
3805 // ********** cpmin3_w_P0_P1: cpmin3.w $crop,$crqp,$crpp
3806
3807 sem_status
3808 mepcop1_64_sem_cpmin3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3809 {
3810 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3811   sem_status status = SEM_STATUS_NORMAL;
3812   mepcop1_64_scache* abuf = sem;
3813   unsigned long long written = 0;
3814   PCADDR pc = abuf->addr;
3815   PCADDR npc = pc + 4;
3816
3817 {
3818 current_cpu->check_option_cp (pc);
3819   {
3820     DI opval = current_cpu->ivc2_cpmin3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3821     if (UNLIKELY(current_cpu->trace_result_p))
3822       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3823     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3824   }
3825 }
3826
3827   current_cpu->done_insn (npc, status);
3828   return status;
3829 #undef FLD
3830 }
3831
3832 // ********** cpsrl3_b_P0_P1: cpsrl3.b $crop,$crqp,$crpp
3833
3834 sem_status
3835 mepcop1_64_sem_cpsrl3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3836 {
3837 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3838   sem_status status = SEM_STATUS_NORMAL;
3839   mepcop1_64_scache* abuf = sem;
3840   unsigned long long written = 0;
3841   PCADDR pc = abuf->addr;
3842   PCADDR npc = pc + 4;
3843
3844 {
3845 current_cpu->check_option_cp (pc);
3846   {
3847     DI opval = current_cpu->ivc2_cpsrl3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3848     if (UNLIKELY(current_cpu->trace_result_p))
3849       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3850     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3851   }
3852 }
3853
3854   current_cpu->done_insn (npc, status);
3855   return status;
3856 #undef FLD
3857 }
3858
3859 // ********** cpssrl3_b_P0_P1: cpssrl3.b $crop,$crqp,$crpp
3860
3861 sem_status
3862 mepcop1_64_sem_cpssrl3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3863 {
3864 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3865   sem_status status = SEM_STATUS_NORMAL;
3866   mepcop1_64_scache* abuf = sem;
3867   unsigned long long written = 0;
3868   PCADDR pc = abuf->addr;
3869   PCADDR npc = pc + 4;
3870
3871 {
3872 current_cpu->check_option_cp (pc);
3873   {
3874     DI opval = current_cpu->ivc2_cpssrl3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3875     if (UNLIKELY(current_cpu->trace_result_p))
3876       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3877     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3878   }
3879 }
3880
3881   current_cpu->done_insn (npc, status);
3882   return status;
3883 #undef FLD
3884 }
3885
3886 // ********** cpsrl3_h_P0_P1: cpsrl3.h $crop,$crqp,$crpp
3887
3888 sem_status
3889 mepcop1_64_sem_cpsrl3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3890 {
3891 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3892   sem_status status = SEM_STATUS_NORMAL;
3893   mepcop1_64_scache* abuf = sem;
3894   unsigned long long written = 0;
3895   PCADDR pc = abuf->addr;
3896   PCADDR npc = pc + 4;
3897
3898 {
3899 current_cpu->check_option_cp (pc);
3900   {
3901     DI opval = current_cpu->ivc2_cpsrl3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3902     if (UNLIKELY(current_cpu->trace_result_p))
3903       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3904     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3905   }
3906 }
3907
3908   current_cpu->done_insn (npc, status);
3909   return status;
3910 #undef FLD
3911 }
3912
3913 // ********** cpssrl3_h_P0_P1: cpssrl3.h $crop,$crqp,$crpp
3914
3915 sem_status
3916 mepcop1_64_sem_cpssrl3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3917 {
3918 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3919   sem_status status = SEM_STATUS_NORMAL;
3920   mepcop1_64_scache* abuf = sem;
3921   unsigned long long written = 0;
3922   PCADDR pc = abuf->addr;
3923   PCADDR npc = pc + 4;
3924
3925 {
3926 current_cpu->check_option_cp (pc);
3927   {
3928     DI opval = current_cpu->ivc2_cpssrl3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3929     if (UNLIKELY(current_cpu->trace_result_p))
3930       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3931     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3932   }
3933 }
3934
3935   current_cpu->done_insn (npc, status);
3936   return status;
3937 #undef FLD
3938 }
3939
3940 // ********** cpsrl3_w_P0_P1: cpsrl3.w $crop,$crqp,$crpp
3941
3942 sem_status
3943 mepcop1_64_sem_cpsrl3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3944 {
3945 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3946   sem_status status = SEM_STATUS_NORMAL;
3947   mepcop1_64_scache* abuf = sem;
3948   unsigned long long written = 0;
3949   PCADDR pc = abuf->addr;
3950   PCADDR npc = pc + 4;
3951
3952 {
3953 current_cpu->check_option_cp (pc);
3954   {
3955     DI opval = current_cpu->ivc2_cpsrl3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3956     if (UNLIKELY(current_cpu->trace_result_p))
3957       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3958     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3959   }
3960 }
3961
3962   current_cpu->done_insn (npc, status);
3963   return status;
3964 #undef FLD
3965 }
3966
3967 // ********** cpssrl3_w_P0_P1: cpssrl3.w $crop,$crqp,$crpp
3968
3969 sem_status
3970 mepcop1_64_sem_cpssrl3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3971 {
3972 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
3973   sem_status status = SEM_STATUS_NORMAL;
3974   mepcop1_64_scache* abuf = sem;
3975   unsigned long long written = 0;
3976   PCADDR pc = abuf->addr;
3977   PCADDR npc = pc + 4;
3978
3979 {
3980 current_cpu->check_option_cp (pc);
3981   {
3982     DI opval = current_cpu->ivc2_cpssrl3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
3983     if (UNLIKELY(current_cpu->trace_result_p))
3984       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
3985     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
3986   }
3987 }
3988
3989   current_cpu->done_insn (npc, status);
3990   return status;
3991 #undef FLD
3992 }
3993
3994 // ********** cdsrl3_P0_P1: cdsrl3 $crop,$crqp,$crpp
3995
3996 sem_status
3997 mepcop1_64_sem_cdsrl3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
3998 {
3999 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4000   sem_status status = SEM_STATUS_NORMAL;
4001   mepcop1_64_scache* abuf = sem;
4002   unsigned long long written = 0;
4003   PCADDR pc = abuf->addr;
4004   PCADDR npc = pc + 4;
4005
4006 {
4007 current_cpu->check_option_cp (pc);
4008   {
4009     DI opval = current_cpu->ivc2_cdsrl3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4010     if (UNLIKELY(current_cpu->trace_result_p))
4011       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4012     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4013   }
4014 }
4015
4016   current_cpu->done_insn (npc, status);
4017   return status;
4018 #undef FLD
4019 }
4020
4021 // ********** cpsra3_b_P0_P1: cpsra3.b $crop,$crqp,$crpp
4022
4023 sem_status
4024 mepcop1_64_sem_cpsra3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4025 {
4026 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4027   sem_status status = SEM_STATUS_NORMAL;
4028   mepcop1_64_scache* abuf = sem;
4029   unsigned long long written = 0;
4030   PCADDR pc = abuf->addr;
4031   PCADDR npc = pc + 4;
4032
4033 {
4034 current_cpu->check_option_cp (pc);
4035   {
4036     DI opval = current_cpu->ivc2_cpsra3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4037     if (UNLIKELY(current_cpu->trace_result_p))
4038       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4039     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4040   }
4041 }
4042
4043   current_cpu->done_insn (npc, status);
4044   return status;
4045 #undef FLD
4046 }
4047
4048 // ********** cpssra3_b_P0_P1: cpssra3.b $crop,$crqp,$crpp
4049
4050 sem_status
4051 mepcop1_64_sem_cpssra3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4052 {
4053 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4054   sem_status status = SEM_STATUS_NORMAL;
4055   mepcop1_64_scache* abuf = sem;
4056   unsigned long long written = 0;
4057   PCADDR pc = abuf->addr;
4058   PCADDR npc = pc + 4;
4059
4060 {
4061 current_cpu->check_option_cp (pc);
4062   {
4063     DI opval = current_cpu->ivc2_cpssra3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4064     if (UNLIKELY(current_cpu->trace_result_p))
4065       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4066     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4067   }
4068 }
4069
4070   current_cpu->done_insn (npc, status);
4071   return status;
4072 #undef FLD
4073 }
4074
4075 // ********** cpsra3_h_P0_P1: cpsra3.h $crop,$crqp,$crpp
4076
4077 sem_status
4078 mepcop1_64_sem_cpsra3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4079 {
4080 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4081   sem_status status = SEM_STATUS_NORMAL;
4082   mepcop1_64_scache* abuf = sem;
4083   unsigned long long written = 0;
4084   PCADDR pc = abuf->addr;
4085   PCADDR npc = pc + 4;
4086
4087 {
4088 current_cpu->check_option_cp (pc);
4089   {
4090     DI opval = current_cpu->ivc2_cpsra3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4091     if (UNLIKELY(current_cpu->trace_result_p))
4092       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4093     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4094   }
4095 }
4096
4097   current_cpu->done_insn (npc, status);
4098   return status;
4099 #undef FLD
4100 }
4101
4102 // ********** cpssra3_h_P0_P1: cpssra3.h $crop,$crqp,$crpp
4103
4104 sem_status
4105 mepcop1_64_sem_cpssra3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4106 {
4107 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4108   sem_status status = SEM_STATUS_NORMAL;
4109   mepcop1_64_scache* abuf = sem;
4110   unsigned long long written = 0;
4111   PCADDR pc = abuf->addr;
4112   PCADDR npc = pc + 4;
4113
4114 {
4115 current_cpu->check_option_cp (pc);
4116   {
4117     DI opval = current_cpu->ivc2_cpssra3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4118     if (UNLIKELY(current_cpu->trace_result_p))
4119       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4120     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4121   }
4122 }
4123
4124   current_cpu->done_insn (npc, status);
4125   return status;
4126 #undef FLD
4127 }
4128
4129 // ********** cpsra3_w_P0_P1: cpsra3.w $crop,$crqp,$crpp
4130
4131 sem_status
4132 mepcop1_64_sem_cpsra3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4133 {
4134 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4135   sem_status status = SEM_STATUS_NORMAL;
4136   mepcop1_64_scache* abuf = sem;
4137   unsigned long long written = 0;
4138   PCADDR pc = abuf->addr;
4139   PCADDR npc = pc + 4;
4140
4141 {
4142 current_cpu->check_option_cp (pc);
4143   {
4144     DI opval = current_cpu->ivc2_cpsra3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4145     if (UNLIKELY(current_cpu->trace_result_p))
4146       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4147     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4148   }
4149 }
4150
4151   current_cpu->done_insn (npc, status);
4152   return status;
4153 #undef FLD
4154 }
4155
4156 // ********** cpssra3_w_P0_P1: cpssra3.w $crop,$crqp,$crpp
4157
4158 sem_status
4159 mepcop1_64_sem_cpssra3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4160 {
4161 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4162   sem_status status = SEM_STATUS_NORMAL;
4163   mepcop1_64_scache* abuf = sem;
4164   unsigned long long written = 0;
4165   PCADDR pc = abuf->addr;
4166   PCADDR npc = pc + 4;
4167
4168 {
4169 current_cpu->check_option_cp (pc);
4170   {
4171     DI opval = current_cpu->ivc2_cpssra3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4172     if (UNLIKELY(current_cpu->trace_result_p))
4173       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4174     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4175   }
4176 }
4177
4178   current_cpu->done_insn (npc, status);
4179   return status;
4180 #undef FLD
4181 }
4182
4183 // ********** cdsra3_P0_P1: cdsra3 $crop,$crqp,$crpp
4184
4185 sem_status
4186 mepcop1_64_sem_cdsra3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4187 {
4188 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4189   sem_status status = SEM_STATUS_NORMAL;
4190   mepcop1_64_scache* abuf = sem;
4191   unsigned long long written = 0;
4192   PCADDR pc = abuf->addr;
4193   PCADDR npc = pc + 4;
4194
4195 {
4196 current_cpu->check_option_cp (pc);
4197   {
4198     DI opval = current_cpu->ivc2_cdsra3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4199     if (UNLIKELY(current_cpu->trace_result_p))
4200       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4201     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4202   }
4203 }
4204
4205   current_cpu->done_insn (npc, status);
4206   return status;
4207 #undef FLD
4208 }
4209
4210 // ********** cpsll3_b_P0_P1: cpsll3.b $crop,$crqp,$crpp
4211
4212 sem_status
4213 mepcop1_64_sem_cpsll3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4214 {
4215 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4216   sem_status status = SEM_STATUS_NORMAL;
4217   mepcop1_64_scache* abuf = sem;
4218   unsigned long long written = 0;
4219   PCADDR pc = abuf->addr;
4220   PCADDR npc = pc + 4;
4221
4222 {
4223 current_cpu->check_option_cp (pc);
4224   {
4225     DI opval = current_cpu->ivc2_cpsll3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4226     if (UNLIKELY(current_cpu->trace_result_p))
4227       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4228     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4229   }
4230 }
4231
4232   current_cpu->done_insn (npc, status);
4233   return status;
4234 #undef FLD
4235 }
4236
4237 // ********** cpssll3_b_P0_P1: cpssll3.b $crop,$crqp,$crpp
4238
4239 sem_status
4240 mepcop1_64_sem_cpssll3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4241 {
4242 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4243   sem_status status = SEM_STATUS_NORMAL;
4244   mepcop1_64_scache* abuf = sem;
4245   unsigned long long written = 0;
4246   PCADDR pc = abuf->addr;
4247   PCADDR npc = pc + 4;
4248
4249 {
4250 current_cpu->check_option_cp (pc);
4251   {
4252     DI opval = current_cpu->ivc2_cpssll3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4253     if (UNLIKELY(current_cpu->trace_result_p))
4254       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4255     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4256   }
4257 }
4258
4259   current_cpu->done_insn (npc, status);
4260   return status;
4261 #undef FLD
4262 }
4263
4264 // ********** cpsll3_h_P0_P1: cpsll3.h $crop,$crqp,$crpp
4265
4266 sem_status
4267 mepcop1_64_sem_cpsll3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4268 {
4269 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4270   sem_status status = SEM_STATUS_NORMAL;
4271   mepcop1_64_scache* abuf = sem;
4272   unsigned long long written = 0;
4273   PCADDR pc = abuf->addr;
4274   PCADDR npc = pc + 4;
4275
4276 {
4277 current_cpu->check_option_cp (pc);
4278   {
4279     DI opval = current_cpu->ivc2_cpsll3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4280     if (UNLIKELY(current_cpu->trace_result_p))
4281       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4282     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4283   }
4284 }
4285
4286   current_cpu->done_insn (npc, status);
4287   return status;
4288 #undef FLD
4289 }
4290
4291 // ********** cpssll3_h_P0_P1: cpssll3.h $crop,$crqp,$crpp
4292
4293 sem_status
4294 mepcop1_64_sem_cpssll3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4295 {
4296 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4297   sem_status status = SEM_STATUS_NORMAL;
4298   mepcop1_64_scache* abuf = sem;
4299   unsigned long long written = 0;
4300   PCADDR pc = abuf->addr;
4301   PCADDR npc = pc + 4;
4302
4303 {
4304 current_cpu->check_option_cp (pc);
4305   {
4306     DI opval = current_cpu->ivc2_cpssll3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4307     if (UNLIKELY(current_cpu->trace_result_p))
4308       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4309     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4310   }
4311 }
4312
4313   current_cpu->done_insn (npc, status);
4314   return status;
4315 #undef FLD
4316 }
4317
4318 // ********** cpsll3_w_P0_P1: cpsll3.w $crop,$crqp,$crpp
4319
4320 sem_status
4321 mepcop1_64_sem_cpsll3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4322 {
4323 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4324   sem_status status = SEM_STATUS_NORMAL;
4325   mepcop1_64_scache* abuf = sem;
4326   unsigned long long written = 0;
4327   PCADDR pc = abuf->addr;
4328   PCADDR npc = pc + 4;
4329
4330 {
4331 current_cpu->check_option_cp (pc);
4332   {
4333     DI opval = current_cpu->ivc2_cpsll3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4334     if (UNLIKELY(current_cpu->trace_result_p))
4335       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4336     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4337   }
4338 }
4339
4340   current_cpu->done_insn (npc, status);
4341   return status;
4342 #undef FLD
4343 }
4344
4345 // ********** cpssll3_w_P0_P1: cpssll3.w $crop,$crqp,$crpp
4346
4347 sem_status
4348 mepcop1_64_sem_cpssll3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4349 {
4350 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4351   sem_status status = SEM_STATUS_NORMAL;
4352   mepcop1_64_scache* abuf = sem;
4353   unsigned long long written = 0;
4354   PCADDR pc = abuf->addr;
4355   PCADDR npc = pc + 4;
4356
4357 {
4358 current_cpu->check_option_cp (pc);
4359   {
4360     DI opval = current_cpu->ivc2_cpssll3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4361     if (UNLIKELY(current_cpu->trace_result_p))
4362       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4363     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4364   }
4365 }
4366
4367   current_cpu->done_insn (npc, status);
4368   return status;
4369 #undef FLD
4370 }
4371
4372 // ********** cdsll3_P0_P1: cdsll3 $crop,$crqp,$crpp
4373
4374 sem_status
4375 mepcop1_64_sem_cdsll3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4376 {
4377 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4378   sem_status status = SEM_STATUS_NORMAL;
4379   mepcop1_64_scache* abuf = sem;
4380   unsigned long long written = 0;
4381   PCADDR pc = abuf->addr;
4382   PCADDR npc = pc + 4;
4383
4384 {
4385 current_cpu->check_option_cp (pc);
4386   {
4387     DI opval = current_cpu->ivc2_cdsll3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4388     if (UNLIKELY(current_cpu->trace_result_p))
4389       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4390     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4391   }
4392 }
4393
4394   current_cpu->done_insn (npc, status);
4395   return status;
4396 #undef FLD
4397 }
4398
4399 // ********** cpsla3_h_P0_P1: cpsla3.h $crop,$crqp,$crpp
4400
4401 sem_status
4402 mepcop1_64_sem_cpsla3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4403 {
4404 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4405   sem_status status = SEM_STATUS_NORMAL;
4406   mepcop1_64_scache* abuf = sem;
4407   unsigned long long written = 0;
4408   PCADDR pc = abuf->addr;
4409   PCADDR npc = pc + 4;
4410
4411 {
4412 current_cpu->check_option_cp (pc);
4413   {
4414     DI opval = current_cpu->ivc2_cpsla3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4415     if (UNLIKELY(current_cpu->trace_result_p))
4416       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4417     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4418   }
4419 }
4420
4421   current_cpu->done_insn (npc, status);
4422   return status;
4423 #undef FLD
4424 }
4425
4426 // ********** cpsla3_w_P0_P1: cpsla3.w $crop,$crqp,$crpp
4427
4428 sem_status
4429 mepcop1_64_sem_cpsla3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4430 {
4431 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4432   sem_status status = SEM_STATUS_NORMAL;
4433   mepcop1_64_scache* abuf = sem;
4434   unsigned long long written = 0;
4435   PCADDR pc = abuf->addr;
4436   PCADDR npc = pc + 4;
4437
4438 {
4439 current_cpu->check_option_cp (pc);
4440   {
4441     DI opval = current_cpu->ivc2_cpsla3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
4442     if (UNLIKELY(current_cpu->trace_result_p))
4443       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4444     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4445   }
4446 }
4447
4448   current_cpu->done_insn (npc, status);
4449   return status;
4450 #undef FLD
4451 }
4452
4453 // ********** cpsrli3_b_P0_P1: cpsrli3.b $crop,$crqp,$imm3p5
4454
4455 sem_status
4456 mepcop1_64_sem_cpsrli3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4457 {
4458 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4459   sem_status status = SEM_STATUS_NORMAL;
4460   mepcop1_64_scache* abuf = sem;
4461   unsigned long long written = 0;
4462   PCADDR pc = abuf->addr;
4463   PCADDR npc = pc + 4;
4464
4465 {
4466 current_cpu->check_option_cp (pc);
4467   {
4468     DI opval = current_cpu->ivc2_cpsrli3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_3u5));
4469     if (UNLIKELY(current_cpu->trace_result_p))
4470       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4471     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4472   }
4473 }
4474
4475   current_cpu->done_insn (npc, status);
4476   return status;
4477 #undef FLD
4478 }
4479
4480 // ********** cpsrli3_h_P0_P1: cpsrli3.h $crop,$crqp,$imm4p4
4481
4482 sem_status
4483 mepcop1_64_sem_cpsrli3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4484 {
4485 #define FLD(f) abuf->fields.sfmt_cpsrli3_h_P0_P1.f
4486   sem_status status = SEM_STATUS_NORMAL;
4487   mepcop1_64_scache* abuf = sem;
4488   unsigned long long written = 0;
4489   PCADDR pc = abuf->addr;
4490   PCADDR npc = pc + 4;
4491
4492 {
4493 current_cpu->check_option_cp (pc);
4494   {
4495     DI opval = current_cpu->ivc2_cpsrli3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_4u4));
4496     if (UNLIKELY(current_cpu->trace_result_p))
4497       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4498     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4499   }
4500 }
4501
4502   current_cpu->done_insn (npc, status);
4503   return status;
4504 #undef FLD
4505 }
4506
4507 // ********** cpsrli3_w_P0_P1: cpsrli3.w $crop,$crqp,$imm5p3
4508
4509 sem_status
4510 mepcop1_64_sem_cpsrli3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4511 {
4512 #define FLD(f) abuf->fields.sfmt_cpsrli3_w_P0_P1.f
4513   sem_status status = SEM_STATUS_NORMAL;
4514   mepcop1_64_scache* abuf = sem;
4515   unsigned long long written = 0;
4516   PCADDR pc = abuf->addr;
4517   PCADDR npc = pc + 4;
4518
4519 {
4520 current_cpu->check_option_cp (pc);
4521   {
4522     DI opval = current_cpu->ivc2_cpsrli3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_5u3));
4523     if (UNLIKELY(current_cpu->trace_result_p))
4524       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4525     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4526   }
4527 }
4528
4529   current_cpu->done_insn (npc, status);
4530   return status;
4531 #undef FLD
4532 }
4533
4534 // ********** cdsrli3_P0_P1: cdsrli3 $crop,$crqp,$imm6p2
4535
4536 sem_status
4537 mepcop1_64_sem_cdsrli3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4538 {
4539 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
4540   sem_status status = SEM_STATUS_NORMAL;
4541   mepcop1_64_scache* abuf = sem;
4542   unsigned long long written = 0;
4543   PCADDR pc = abuf->addr;
4544   PCADDR npc = pc + 4;
4545
4546 {
4547 current_cpu->check_option_cp (pc);
4548   {
4549     DI opval = current_cpu->ivc2_cdsrli3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_6u2));
4550     if (UNLIKELY(current_cpu->trace_result_p))
4551       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4552     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4553   }
4554 }
4555
4556   current_cpu->done_insn (npc, status);
4557   return status;
4558 #undef FLD
4559 }
4560
4561 // ********** cpsrai3_b_P0_P1: cpsrai3.b $crop,$crqp,$imm3p5
4562
4563 sem_status
4564 mepcop1_64_sem_cpsrai3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4565 {
4566 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4567   sem_status status = SEM_STATUS_NORMAL;
4568   mepcop1_64_scache* abuf = sem;
4569   unsigned long long written = 0;
4570   PCADDR pc = abuf->addr;
4571   PCADDR npc = pc + 4;
4572
4573 {
4574 current_cpu->check_option_cp (pc);
4575   {
4576     DI opval = current_cpu->ivc2_cpsrai3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_3u5));
4577     if (UNLIKELY(current_cpu->trace_result_p))
4578       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4579     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4580   }
4581 }
4582
4583   current_cpu->done_insn (npc, status);
4584   return status;
4585 #undef FLD
4586 }
4587
4588 // ********** cpsrai3_h_P0_P1: cpsrai3.h $crop,$crqp,$imm4p4
4589
4590 sem_status
4591 mepcop1_64_sem_cpsrai3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4592 {
4593 #define FLD(f) abuf->fields.sfmt_cpsrli3_h_P0_P1.f
4594   sem_status status = SEM_STATUS_NORMAL;
4595   mepcop1_64_scache* abuf = sem;
4596   unsigned long long written = 0;
4597   PCADDR pc = abuf->addr;
4598   PCADDR npc = pc + 4;
4599
4600 {
4601 current_cpu->check_option_cp (pc);
4602   {
4603     DI opval = current_cpu->ivc2_cpsrai3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_4u4));
4604     if (UNLIKELY(current_cpu->trace_result_p))
4605       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4606     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4607   }
4608 }
4609
4610   current_cpu->done_insn (npc, status);
4611   return status;
4612 #undef FLD
4613 }
4614
4615 // ********** cpsrai3_w_P0_P1: cpsrai3.w $crop,$crqp,$imm5p3
4616
4617 sem_status
4618 mepcop1_64_sem_cpsrai3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4619 {
4620 #define FLD(f) abuf->fields.sfmt_cpsrli3_w_P0_P1.f
4621   sem_status status = SEM_STATUS_NORMAL;
4622   mepcop1_64_scache* abuf = sem;
4623   unsigned long long written = 0;
4624   PCADDR pc = abuf->addr;
4625   PCADDR npc = pc + 4;
4626
4627 {
4628 current_cpu->check_option_cp (pc);
4629   {
4630     DI opval = current_cpu->ivc2_cpsrai3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_5u3));
4631     if (UNLIKELY(current_cpu->trace_result_p))
4632       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4633     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4634   }
4635 }
4636
4637   current_cpu->done_insn (npc, status);
4638   return status;
4639 #undef FLD
4640 }
4641
4642 // ********** cdsrai3_P0_P1: cdsrai3 $crop,$crqp,$imm6p2
4643
4644 sem_status
4645 mepcop1_64_sem_cdsrai3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4646 {
4647 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
4648   sem_status status = SEM_STATUS_NORMAL;
4649   mepcop1_64_scache* abuf = sem;
4650   unsigned long long written = 0;
4651   PCADDR pc = abuf->addr;
4652   PCADDR npc = pc + 4;
4653
4654 {
4655 current_cpu->check_option_cp (pc);
4656   {
4657     DI opval = current_cpu->ivc2_cdsrai3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_6u2));
4658     if (UNLIKELY(current_cpu->trace_result_p))
4659       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4660     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4661   }
4662 }
4663
4664   current_cpu->done_insn (npc, status);
4665   return status;
4666 #undef FLD
4667 }
4668
4669 // ********** cpslli3_b_P0_P1: cpslli3.b $crop,$crqp,$imm3p5
4670
4671 sem_status
4672 mepcop1_64_sem_cpslli3_b_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4673 {
4674 #define FLD(f) abuf->fields.sfmt_cpfsftbi_P0_P1.f
4675   sem_status status = SEM_STATUS_NORMAL;
4676   mepcop1_64_scache* abuf = sem;
4677   unsigned long long written = 0;
4678   PCADDR pc = abuf->addr;
4679   PCADDR npc = pc + 4;
4680
4681 {
4682 current_cpu->check_option_cp (pc);
4683   {
4684     DI opval = current_cpu->ivc2_cpslli3_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_3u5));
4685     if (UNLIKELY(current_cpu->trace_result_p))
4686       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4687     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4688   }
4689 }
4690
4691   current_cpu->done_insn (npc, status);
4692   return status;
4693 #undef FLD
4694 }
4695
4696 // ********** cpslli3_h_P0_P1: cpslli3.h $crop,$crqp,$imm4p4
4697
4698 sem_status
4699 mepcop1_64_sem_cpslli3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4700 {
4701 #define FLD(f) abuf->fields.sfmt_cpsrli3_h_P0_P1.f
4702   sem_status status = SEM_STATUS_NORMAL;
4703   mepcop1_64_scache* abuf = sem;
4704   unsigned long long written = 0;
4705   PCADDR pc = abuf->addr;
4706   PCADDR npc = pc + 4;
4707
4708 {
4709 current_cpu->check_option_cp (pc);
4710   {
4711     DI opval = current_cpu->ivc2_cpslli3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_4u4));
4712     if (UNLIKELY(current_cpu->trace_result_p))
4713       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4714     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4715   }
4716 }
4717
4718   current_cpu->done_insn (npc, status);
4719   return status;
4720 #undef FLD
4721 }
4722
4723 // ********** cpslli3_w_P0_P1: cpslli3.w $crop,$crqp,$imm5p3
4724
4725 sem_status
4726 mepcop1_64_sem_cpslli3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4727 {
4728 #define FLD(f) abuf->fields.sfmt_cpsrli3_w_P0_P1.f
4729   sem_status status = SEM_STATUS_NORMAL;
4730   mepcop1_64_scache* abuf = sem;
4731   unsigned long long written = 0;
4732   PCADDR pc = abuf->addr;
4733   PCADDR npc = pc + 4;
4734
4735 {
4736 current_cpu->check_option_cp (pc);
4737   {
4738     DI opval = current_cpu->ivc2_cpslli3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_5u3));
4739     if (UNLIKELY(current_cpu->trace_result_p))
4740       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4741     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4742   }
4743 }
4744
4745   current_cpu->done_insn (npc, status);
4746   return status;
4747 #undef FLD
4748 }
4749
4750 // ********** cdslli3_P0_P1: cdslli3 $crop,$crqp,$imm6p2
4751
4752 sem_status
4753 mepcop1_64_sem_cdslli3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4754 {
4755 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
4756   sem_status status = SEM_STATUS_NORMAL;
4757   mepcop1_64_scache* abuf = sem;
4758   unsigned long long written = 0;
4759   PCADDR pc = abuf->addr;
4760   PCADDR npc = pc + 4;
4761
4762 {
4763 current_cpu->check_option_cp (pc);
4764   {
4765     DI opval = current_cpu->ivc2_cdslli3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_6u2));
4766     if (UNLIKELY(current_cpu->trace_result_p))
4767       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4768     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4769   }
4770 }
4771
4772   current_cpu->done_insn (npc, status);
4773   return status;
4774 #undef FLD
4775 }
4776
4777 // ********** cpslai3_h_P0_P1: cpslai3.h $crop,$crqp,$imm4p4
4778
4779 sem_status
4780 mepcop1_64_sem_cpslai3_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4781 {
4782 #define FLD(f) abuf->fields.sfmt_cpsrli3_h_P0_P1.f
4783   sem_status status = SEM_STATUS_NORMAL;
4784   mepcop1_64_scache* abuf = sem;
4785   unsigned long long written = 0;
4786   PCADDR pc = abuf->addr;
4787   PCADDR npc = pc + 4;
4788
4789 {
4790 current_cpu->check_option_cp (pc);
4791   {
4792     DI opval = current_cpu->ivc2_cpslai3_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_4u4));
4793     if (UNLIKELY(current_cpu->trace_result_p))
4794       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4795     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4796   }
4797 }
4798
4799   current_cpu->done_insn (npc, status);
4800   return status;
4801 #undef FLD
4802 }
4803
4804 // ********** cpslai3_w_P0_P1: cpslai3.w $crop,$crqp,$imm5p3
4805
4806 sem_status
4807 mepcop1_64_sem_cpslai3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4808 {
4809 #define FLD(f) abuf->fields.sfmt_cpsrli3_w_P0_P1.f
4810   sem_status status = SEM_STATUS_NORMAL;
4811   mepcop1_64_scache* abuf = sem;
4812   unsigned long long written = 0;
4813   PCADDR pc = abuf->addr;
4814   PCADDR npc = pc + 4;
4815
4816 {
4817 current_cpu->check_option_cp (pc);
4818   {
4819     DI opval = current_cpu->ivc2_cpslai3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_5u3));
4820     if (UNLIKELY(current_cpu->trace_result_p))
4821       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4822     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4823   }
4824 }
4825
4826   current_cpu->done_insn (npc, status);
4827   return status;
4828 #undef FLD
4829 }
4830
4831 // ********** cpclipiu3_w_P0_P1: cpclipiu3.w $crop,$crqp,$imm5p3
4832
4833 sem_status
4834 mepcop1_64_sem_cpclipiu3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4835 {
4836 #define FLD(f) abuf->fields.sfmt_cpsrli3_w_P0_P1.f
4837   sem_status status = SEM_STATUS_NORMAL;
4838   mepcop1_64_scache* abuf = sem;
4839   unsigned long long written = 0;
4840   PCADDR pc = abuf->addr;
4841   PCADDR npc = pc + 4;
4842
4843 {
4844 current_cpu->check_option_cp (pc);
4845   {
4846     DI opval = current_cpu->ivc2_cpclipiu3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_5u3));
4847     if (UNLIKELY(current_cpu->trace_result_p))
4848       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4849     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4850   }
4851 }
4852
4853   current_cpu->done_insn (npc, status);
4854   return status;
4855 #undef FLD
4856 }
4857
4858 // ********** cpclipi3_w_P0_P1: cpclipi3.w $crop,$crqp,$imm5p3
4859
4860 sem_status
4861 mepcop1_64_sem_cpclipi3_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4862 {
4863 #define FLD(f) abuf->fields.sfmt_cpsrli3_w_P0_P1.f
4864   sem_status status = SEM_STATUS_NORMAL;
4865   mepcop1_64_scache* abuf = sem;
4866   unsigned long long written = 0;
4867   PCADDR pc = abuf->addr;
4868   PCADDR npc = pc + 4;
4869
4870 {
4871 current_cpu->check_option_cp (pc);
4872   {
4873     DI opval = current_cpu->ivc2_cpclipi3_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_5u3));
4874     if (UNLIKELY(current_cpu->trace_result_p))
4875       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4876     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4877   }
4878 }
4879
4880   current_cpu->done_insn (npc, status);
4881   return status;
4882 #undef FLD
4883 }
4884
4885 // ********** cdclipiu3_P0_P1: cdclipiu3 $crop,$crqp,$imm6p2
4886
4887 sem_status
4888 mepcop1_64_sem_cdclipiu3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4889 {
4890 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
4891   sem_status status = SEM_STATUS_NORMAL;
4892   mepcop1_64_scache* abuf = sem;
4893   unsigned long long written = 0;
4894   PCADDR pc = abuf->addr;
4895   PCADDR npc = pc + 4;
4896
4897 {
4898 current_cpu->check_option_cp (pc);
4899   {
4900     DI opval = current_cpu->ivc2_cdclipiu3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_6u2));
4901     if (UNLIKELY(current_cpu->trace_result_p))
4902       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4903     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4904   }
4905 }
4906
4907   current_cpu->done_insn (npc, status);
4908   return status;
4909 #undef FLD
4910 }
4911
4912 // ********** cdclipi3_P0_P1: cdclipi3 $crop,$crqp,$imm6p2
4913
4914 sem_status
4915 mepcop1_64_sem_cdclipi3_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4916 {
4917 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
4918   sem_status status = SEM_STATUS_NORMAL;
4919   mepcop1_64_scache* abuf = sem;
4920   unsigned long long written = 0;
4921   PCADDR pc = abuf->addr;
4922   PCADDR npc = pc + 4;
4923
4924 {
4925 current_cpu->check_option_cp (pc);
4926   {
4927     DI opval = current_cpu->ivc2_cdclipi3 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], FLD (f_ivc2_6u2));
4928     if (UNLIKELY(current_cpu->trace_result_p))
4929       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
4930     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
4931   }
4932 }
4933
4934   current_cpu->done_insn (npc, status);
4935   return status;
4936 #undef FLD
4937 }
4938
4939 // ********** cpmovi_h_P0_P1: cpmovi.h $crqp,$simm16p0
4940
4941 sem_status
4942 mepcop1_64_sem_cpmovi_h_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4943 {
4944 #define FLD(f) abuf->fields.sfmt_cpmovi_h_P0_P1.f
4945   sem_status status = SEM_STATUS_NORMAL;
4946   mepcop1_64_scache* abuf = sem;
4947   unsigned long long written = 0;
4948   PCADDR pc = abuf->addr;
4949   PCADDR npc = pc + 4;
4950
4951 {
4952 current_cpu->check_option_cp (pc);
4953   {
4954     DI opval = current_cpu->ivc2_cpmovi_h16 (pc, FLD (f_ivc2_simm16p0));
4955     if (UNLIKELY(current_cpu->trace_result_p))
4956       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u13) << ']' << ":=0x" << hex << opval << dec << "  ";
4957     current_cpu->h_cr64_set (FLD (f_ivc2_5u13), opval);
4958   }
4959 }
4960
4961   current_cpu->done_insn (npc, status);
4962   return status;
4963 #undef FLD
4964 }
4965
4966 // ********** cpmoviu_w_P0_P1: cpmoviu.w $crqp,$imm16p0
4967
4968 sem_status
4969 mepcop1_64_sem_cpmoviu_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4970 {
4971 #define FLD(f) abuf->fields.sfmt_cpmoviu_w_P0_P1.f
4972   sem_status status = SEM_STATUS_NORMAL;
4973   mepcop1_64_scache* abuf = sem;
4974   unsigned long long written = 0;
4975   PCADDR pc = abuf->addr;
4976   PCADDR npc = pc + 4;
4977
4978 {
4979 current_cpu->check_option_cp (pc);
4980   {
4981     DI opval = current_cpu->ivc2_cpmoviu_w16 (pc, FLD (f_ivc2_imm16p0));
4982     if (UNLIKELY(current_cpu->trace_result_p))
4983       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u13) << ']' << ":=0x" << hex << opval << dec << "  ";
4984     current_cpu->h_cr64_set (FLD (f_ivc2_5u13), opval);
4985   }
4986 }
4987
4988   current_cpu->done_insn (npc, status);
4989   return status;
4990 #undef FLD
4991 }
4992
4993 // ********** cpmovi_w_P0_P1: cpmovi.w $crqp,$simm16p0
4994
4995 sem_status
4996 mepcop1_64_sem_cpmovi_w_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
4997 {
4998 #define FLD(f) abuf->fields.sfmt_cpmovi_h_P0_P1.f
4999   sem_status status = SEM_STATUS_NORMAL;
5000   mepcop1_64_scache* abuf = sem;
5001   unsigned long long written = 0;
5002   PCADDR pc = abuf->addr;
5003   PCADDR npc = pc + 4;
5004
5005 {
5006 current_cpu->check_option_cp (pc);
5007   {
5008     DI opval = current_cpu->ivc2_cpmovi_w16 (pc, FLD (f_ivc2_simm16p0));
5009     if (UNLIKELY(current_cpu->trace_result_p))
5010       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u13) << ']' << ":=0x" << hex << opval << dec << "  ";
5011     current_cpu->h_cr64_set (FLD (f_ivc2_5u13), opval);
5012   }
5013 }
5014
5015   current_cpu->done_insn (npc, status);
5016   return status;
5017 #undef FLD
5018 }
5019
5020 // ********** cdmoviu_P0_P1: cdmoviu $crqp,$imm16p0
5021
5022 sem_status
5023 mepcop1_64_sem_cdmoviu_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5024 {
5025 #define FLD(f) abuf->fields.sfmt_cpmoviu_w_P0_P1.f
5026   sem_status status = SEM_STATUS_NORMAL;
5027   mepcop1_64_scache* abuf = sem;
5028   unsigned long long written = 0;
5029   PCADDR pc = abuf->addr;
5030   PCADDR npc = pc + 4;
5031
5032 {
5033 current_cpu->check_option_cp (pc);
5034   {
5035     DI opval = current_cpu->ivc2_cdmoviu16 (pc, FLD (f_ivc2_imm16p0));
5036     if (UNLIKELY(current_cpu->trace_result_p))
5037       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u13) << ']' << ":=0x" << hex << opval << dec << "  ";
5038     current_cpu->h_cr64_set (FLD (f_ivc2_5u13), opval);
5039   }
5040 }
5041
5042   current_cpu->done_insn (npc, status);
5043   return status;
5044 #undef FLD
5045 }
5046
5047 // ********** cdmovi_P0_P1: cdmovi $crqp,$simm16p0
5048
5049 sem_status
5050 mepcop1_64_sem_cdmovi_P0_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5051 {
5052 #define FLD(f) abuf->fields.sfmt_cpmovi_h_P0_P1.f
5053   sem_status status = SEM_STATUS_NORMAL;
5054   mepcop1_64_scache* abuf = sem;
5055   unsigned long long written = 0;
5056   PCADDR pc = abuf->addr;
5057   PCADDR npc = pc + 4;
5058
5059 {
5060 current_cpu->check_option_cp (pc);
5061   {
5062     DI opval = current_cpu->ivc2_cdmovi16 (pc, FLD (f_ivc2_simm16p0));
5063     if (UNLIKELY(current_cpu->trace_result_p))
5064       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u13) << ']' << ":=0x" << hex << opval << dec << "  ";
5065     current_cpu->h_cr64_set (FLD (f_ivc2_5u13), opval);
5066   }
5067 }
5068
5069   current_cpu->done_insn (npc, status);
5070   return status;
5071 #undef FLD
5072 }
5073
5074 // ********** c1nop_P1: c1nop
5075
5076 sem_status
5077 mepcop1_64_sem_c1nop_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5078 {
5079 #define FLD(f) abuf->fields.fmt_empty.f
5080   sem_status status = SEM_STATUS_NORMAL;
5081   mepcop1_64_scache* abuf = sem;
5082   unsigned long long written = 0;
5083   PCADDR pc = abuf->addr;
5084   PCADDR npc = pc + 4;
5085
5086 {
5087 current_cpu->check_option_cp (pc);
5088 current_cpu->ivc2_c1nop (pc);
5089 }
5090
5091   current_cpu->done_insn (npc, status);
5092   return status;
5093 #undef FLD
5094 }
5095
5096 // ********** cpmovi_b_P0S_P1: cpmovi.b $crqp,$simm8p20
5097
5098 sem_status
5099 mepcop1_64_sem_cpmovi_b_P0S_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5100 {
5101 #define FLD(f) abuf->fields.sfmt_cpmovi_b_P0S_P1.f
5102   sem_status status = SEM_STATUS_NORMAL;
5103   mepcop1_64_scache* abuf = sem;
5104   unsigned long long written = 0;
5105   PCADDR pc = abuf->addr;
5106   PCADDR npc = pc + 4;
5107
5108 {
5109 current_cpu->check_option_cp (pc);
5110   {
5111     DI opval = current_cpu->ivc2_cpmovi_b (pc, FLD (f_ivc2_8s20));
5112     if (UNLIKELY(current_cpu->trace_result_p))
5113       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u13) << ']' << ":=0x" << hex << opval << dec << "  ";
5114     current_cpu->h_cr64_set (FLD (f_ivc2_5u13), opval);
5115   }
5116 }
5117
5118   current_cpu->done_insn (npc, status);
5119   return status;
5120 #undef FLD
5121 }
5122
5123 // ********** cpadda1u_b_P1: cpadda1u.b $crqp,$crpp
5124
5125 sem_status
5126 mepcop1_64_sem_cpadda1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5127 {
5128 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5129   sem_status status = SEM_STATUS_NORMAL;
5130   mepcop1_64_scache* abuf = sem;
5131   unsigned long long written = 0;
5132   PCADDR pc = abuf->addr;
5133   PCADDR npc = pc + 4;
5134
5135 {
5136 current_cpu->check_option_cp (pc);
5137   {
5138     SI opval = 0;
5139     if (UNLIKELY(current_cpu->trace_result_p))
5140       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
5141     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
5142   }
5143   {
5144     SI opval = 0;
5145     if (UNLIKELY(current_cpu->trace_result_p))
5146       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
5147     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
5148   }
5149   {
5150     SI opval = 0;
5151     if (UNLIKELY(current_cpu->trace_result_p))
5152       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
5153     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
5154   }
5155   {
5156     SI opval = 0;
5157     if (UNLIKELY(current_cpu->trace_result_p))
5158       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
5159     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
5160   }
5161   {
5162     SI opval = 0;
5163     if (UNLIKELY(current_cpu->trace_result_p))
5164       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
5165     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
5166   }
5167   {
5168     SI opval = 0;
5169     if (UNLIKELY(current_cpu->trace_result_p))
5170       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
5171     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
5172   }
5173   {
5174     SI opval = 0;
5175     if (UNLIKELY(current_cpu->trace_result_p))
5176       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
5177     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
5178   }
5179   {
5180     SI opval = 0;
5181     if (UNLIKELY(current_cpu->trace_result_p))
5182       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
5183     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
5184   }
5185 current_cpu->ivc2_cpadda1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5186 }
5187
5188   current_cpu->done_insn (npc, status);
5189   return status;
5190 #undef FLD
5191 }
5192
5193 // ********** cpadda1_b_P1: cpadda1.b $crqp,$crpp
5194
5195 sem_status
5196 mepcop1_64_sem_cpadda1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5197 {
5198 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5199   sem_status status = SEM_STATUS_NORMAL;
5200   mepcop1_64_scache* abuf = sem;
5201   unsigned long long written = 0;
5202   PCADDR pc = abuf->addr;
5203   PCADDR npc = pc + 4;
5204
5205 {
5206 current_cpu->check_option_cp (pc);
5207   {
5208     SI opval = 0;
5209     if (UNLIKELY(current_cpu->trace_result_p))
5210       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
5211     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
5212   }
5213   {
5214     SI opval = 0;
5215     if (UNLIKELY(current_cpu->trace_result_p))
5216       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
5217     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
5218   }
5219   {
5220     SI opval = 0;
5221     if (UNLIKELY(current_cpu->trace_result_p))
5222       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
5223     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
5224   }
5225   {
5226     SI opval = 0;
5227     if (UNLIKELY(current_cpu->trace_result_p))
5228       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
5229     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
5230   }
5231   {
5232     SI opval = 0;
5233     if (UNLIKELY(current_cpu->trace_result_p))
5234       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
5235     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
5236   }
5237   {
5238     SI opval = 0;
5239     if (UNLIKELY(current_cpu->trace_result_p))
5240       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
5241     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
5242   }
5243   {
5244     SI opval = 0;
5245     if (UNLIKELY(current_cpu->trace_result_p))
5246       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
5247     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
5248   }
5249   {
5250     SI opval = 0;
5251     if (UNLIKELY(current_cpu->trace_result_p))
5252       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
5253     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
5254   }
5255 current_cpu->ivc2_cpadda1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5256 }
5257
5258   current_cpu->done_insn (npc, status);
5259   return status;
5260 #undef FLD
5261 }
5262
5263 // ********** cpaddua1_h_P1: cpaddua1.h $crqp,$crpp
5264
5265 sem_status
5266 mepcop1_64_sem_cpaddua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5267 {
5268 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5269   sem_status status = SEM_STATUS_NORMAL;
5270   mepcop1_64_scache* abuf = sem;
5271   unsigned long long written = 0;
5272   PCADDR pc = abuf->addr;
5273   PCADDR npc = pc + 4;
5274
5275 {
5276 current_cpu->check_option_cp (pc);
5277   {
5278     SI opval = 0;
5279     if (UNLIKELY(current_cpu->trace_result_p))
5280       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
5281     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
5282   }
5283   {
5284     SI opval = 0;
5285     if (UNLIKELY(current_cpu->trace_result_p))
5286       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
5287     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
5288   }
5289   {
5290     SI opval = 0;
5291     if (UNLIKELY(current_cpu->trace_result_p))
5292       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
5293     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
5294   }
5295   {
5296     SI opval = 0;
5297     if (UNLIKELY(current_cpu->trace_result_p))
5298       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
5299     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
5300   }
5301 current_cpu->ivc2_cpaddua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5302 }
5303
5304   current_cpu->done_insn (npc, status);
5305   return status;
5306 #undef FLD
5307 }
5308
5309 // ********** cpaddla1_h_P1: cpaddla1.h $crqp,$crpp
5310
5311 sem_status
5312 mepcop1_64_sem_cpaddla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5313 {
5314 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5315   sem_status status = SEM_STATUS_NORMAL;
5316   mepcop1_64_scache* abuf = sem;
5317   unsigned long long written = 0;
5318   PCADDR pc = abuf->addr;
5319   PCADDR npc = pc + 4;
5320
5321 {
5322 current_cpu->check_option_cp (pc);
5323   {
5324     SI opval = 0;
5325     if (UNLIKELY(current_cpu->trace_result_p))
5326       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
5327     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
5328   }
5329   {
5330     SI opval = 0;
5331     if (UNLIKELY(current_cpu->trace_result_p))
5332       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
5333     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
5334   }
5335   {
5336     SI opval = 0;
5337     if (UNLIKELY(current_cpu->trace_result_p))
5338       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
5339     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
5340   }
5341   {
5342     SI opval = 0;
5343     if (UNLIKELY(current_cpu->trace_result_p))
5344       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
5345     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
5346   }
5347 current_cpu->ivc2_cpaddla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5348 }
5349
5350   current_cpu->done_insn (npc, status);
5351   return status;
5352 #undef FLD
5353 }
5354
5355 // ********** cpaddaca1u_b_P1: cpaddaca1u.b $crqp,$crpp
5356
5357 sem_status
5358 mepcop1_64_sem_cpaddaca1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5359 {
5360 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5361   sem_status status = SEM_STATUS_NORMAL;
5362   mepcop1_64_scache* abuf = sem;
5363   unsigned long long written = 0;
5364   PCADDR pc = abuf->addr;
5365   PCADDR npc = pc + 4;
5366
5367 {
5368 current_cpu->check_option_cp (pc);
5369   {
5370     SI opval = 0;
5371     if (UNLIKELY(current_cpu->trace_result_p))
5372       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
5373     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
5374   }
5375   {
5376     SI opval = 0;
5377     if (UNLIKELY(current_cpu->trace_result_p))
5378       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
5379     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
5380   }
5381   {
5382     SI opval = 0;
5383     if (UNLIKELY(current_cpu->trace_result_p))
5384       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
5385     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
5386   }
5387   {
5388     SI opval = 0;
5389     if (UNLIKELY(current_cpu->trace_result_p))
5390       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
5391     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
5392   }
5393   {
5394     SI opval = 0;
5395     if (UNLIKELY(current_cpu->trace_result_p))
5396       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
5397     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
5398   }
5399   {
5400     SI opval = 0;
5401     if (UNLIKELY(current_cpu->trace_result_p))
5402       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
5403     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
5404   }
5405   {
5406     SI opval = 0;
5407     if (UNLIKELY(current_cpu->trace_result_p))
5408       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
5409     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
5410   }
5411   {
5412     SI opval = 0;
5413     if (UNLIKELY(current_cpu->trace_result_p))
5414       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
5415     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
5416   }
5417   {
5418     SI opval = 0;
5419     if (UNLIKELY(current_cpu->trace_result_p))
5420       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
5421     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
5422   }
5423 current_cpu->ivc2_cpaddaca1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5424 }
5425
5426   current_cpu->done_insn (npc, status);
5427   return status;
5428 #undef FLD
5429 }
5430
5431 // ********** cpaddaca1_b_P1: cpaddaca1.b $crqp,$crpp
5432
5433 sem_status
5434 mepcop1_64_sem_cpaddaca1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5435 {
5436 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5437   sem_status status = SEM_STATUS_NORMAL;
5438   mepcop1_64_scache* abuf = sem;
5439   unsigned long long written = 0;
5440   PCADDR pc = abuf->addr;
5441   PCADDR npc = pc + 4;
5442
5443 {
5444 current_cpu->check_option_cp (pc);
5445   {
5446     SI opval = 0;
5447     if (UNLIKELY(current_cpu->trace_result_p))
5448       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
5449     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
5450   }
5451   {
5452     SI opval = 0;
5453     if (UNLIKELY(current_cpu->trace_result_p))
5454       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
5455     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
5456   }
5457   {
5458     SI opval = 0;
5459     if (UNLIKELY(current_cpu->trace_result_p))
5460       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
5461     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
5462   }
5463   {
5464     SI opval = 0;
5465     if (UNLIKELY(current_cpu->trace_result_p))
5466       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
5467     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
5468   }
5469   {
5470     SI opval = 0;
5471     if (UNLIKELY(current_cpu->trace_result_p))
5472       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
5473     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
5474   }
5475   {
5476     SI opval = 0;
5477     if (UNLIKELY(current_cpu->trace_result_p))
5478       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
5479     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
5480   }
5481   {
5482     SI opval = 0;
5483     if (UNLIKELY(current_cpu->trace_result_p))
5484       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
5485     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
5486   }
5487   {
5488     SI opval = 0;
5489     if (UNLIKELY(current_cpu->trace_result_p))
5490       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
5491     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
5492   }
5493   {
5494     SI opval = 0;
5495     if (UNLIKELY(current_cpu->trace_result_p))
5496       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
5497     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
5498   }
5499 current_cpu->ivc2_cpaddaca1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5500 }
5501
5502   current_cpu->done_insn (npc, status);
5503   return status;
5504 #undef FLD
5505 }
5506
5507 // ********** cpaddacua1_h_P1: cpaddacua1.h $crqp,$crpp
5508
5509 sem_status
5510 mepcop1_64_sem_cpaddacua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5511 {
5512 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5513   sem_status status = SEM_STATUS_NORMAL;
5514   mepcop1_64_scache* abuf = sem;
5515   unsigned long long written = 0;
5516   PCADDR pc = abuf->addr;
5517   PCADDR npc = pc + 4;
5518
5519 {
5520 current_cpu->check_option_cp (pc);
5521   {
5522     SI opval = 0;
5523     if (UNLIKELY(current_cpu->trace_result_p))
5524       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
5525     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
5526   }
5527   {
5528     SI opval = 0;
5529     if (UNLIKELY(current_cpu->trace_result_p))
5530       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
5531     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
5532   }
5533   {
5534     SI opval = 0;
5535     if (UNLIKELY(current_cpu->trace_result_p))
5536       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
5537     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
5538   }
5539   {
5540     SI opval = 0;
5541     if (UNLIKELY(current_cpu->trace_result_p))
5542       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
5543     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
5544   }
5545   {
5546     SI opval = 0;
5547     if (UNLIKELY(current_cpu->trace_result_p))
5548       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
5549     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
5550   }
5551 current_cpu->ivc2_cpaddacua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5552 }
5553
5554   current_cpu->done_insn (npc, status);
5555   return status;
5556 #undef FLD
5557 }
5558
5559 // ********** cpaddacla1_h_P1: cpaddacla1.h $crqp,$crpp
5560
5561 sem_status
5562 mepcop1_64_sem_cpaddacla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5563 {
5564 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5565   sem_status status = SEM_STATUS_NORMAL;
5566   mepcop1_64_scache* abuf = sem;
5567   unsigned long long written = 0;
5568   PCADDR pc = abuf->addr;
5569   PCADDR npc = pc + 4;
5570
5571 {
5572 current_cpu->check_option_cp (pc);
5573   {
5574     SI opval = 0;
5575     if (UNLIKELY(current_cpu->trace_result_p))
5576       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
5577     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
5578   }
5579   {
5580     SI opval = 0;
5581     if (UNLIKELY(current_cpu->trace_result_p))
5582       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
5583     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
5584   }
5585   {
5586     SI opval = 0;
5587     if (UNLIKELY(current_cpu->trace_result_p))
5588       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
5589     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
5590   }
5591   {
5592     SI opval = 0;
5593     if (UNLIKELY(current_cpu->trace_result_p))
5594       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
5595     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
5596   }
5597   {
5598     SI opval = 0;
5599     if (UNLIKELY(current_cpu->trace_result_p))
5600       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
5601     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
5602   }
5603 current_cpu->ivc2_cpaddacla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5604 }
5605
5606   current_cpu->done_insn (npc, status);
5607   return status;
5608 #undef FLD
5609 }
5610
5611 // ********** cpsuba1u_b_P1: cpsuba1u.b $crqp,$crpp
5612
5613 sem_status
5614 mepcop1_64_sem_cpsuba1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5615 {
5616 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5617   sem_status status = SEM_STATUS_NORMAL;
5618   mepcop1_64_scache* abuf = sem;
5619   unsigned long long written = 0;
5620   PCADDR pc = abuf->addr;
5621   PCADDR npc = pc + 4;
5622
5623 {
5624 current_cpu->check_option_cp (pc);
5625   {
5626     SI opval = 0;
5627     if (UNLIKELY(current_cpu->trace_result_p))
5628       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
5629     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
5630   }
5631   {
5632     SI opval = 0;
5633     if (UNLIKELY(current_cpu->trace_result_p))
5634       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
5635     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
5636   }
5637   {
5638     SI opval = 0;
5639     if (UNLIKELY(current_cpu->trace_result_p))
5640       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
5641     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
5642   }
5643   {
5644     SI opval = 0;
5645     if (UNLIKELY(current_cpu->trace_result_p))
5646       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
5647     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
5648   }
5649   {
5650     SI opval = 0;
5651     if (UNLIKELY(current_cpu->trace_result_p))
5652       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
5653     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
5654   }
5655   {
5656     SI opval = 0;
5657     if (UNLIKELY(current_cpu->trace_result_p))
5658       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
5659     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
5660   }
5661   {
5662     SI opval = 0;
5663     if (UNLIKELY(current_cpu->trace_result_p))
5664       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
5665     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
5666   }
5667   {
5668     SI opval = 0;
5669     if (UNLIKELY(current_cpu->trace_result_p))
5670       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
5671     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
5672   }
5673 current_cpu->ivc2_cpsuba1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5674 }
5675
5676   current_cpu->done_insn (npc, status);
5677   return status;
5678 #undef FLD
5679 }
5680
5681 // ********** cpsuba1_b_P1: cpsuba1.b $crqp,$crpp
5682
5683 sem_status
5684 mepcop1_64_sem_cpsuba1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5685 {
5686 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5687   sem_status status = SEM_STATUS_NORMAL;
5688   mepcop1_64_scache* abuf = sem;
5689   unsigned long long written = 0;
5690   PCADDR pc = abuf->addr;
5691   PCADDR npc = pc + 4;
5692
5693 {
5694 current_cpu->check_option_cp (pc);
5695   {
5696     SI opval = 0;
5697     if (UNLIKELY(current_cpu->trace_result_p))
5698       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
5699     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
5700   }
5701   {
5702     SI opval = 0;
5703     if (UNLIKELY(current_cpu->trace_result_p))
5704       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
5705     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
5706   }
5707   {
5708     SI opval = 0;
5709     if (UNLIKELY(current_cpu->trace_result_p))
5710       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
5711     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
5712   }
5713   {
5714     SI opval = 0;
5715     if (UNLIKELY(current_cpu->trace_result_p))
5716       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
5717     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
5718   }
5719   {
5720     SI opval = 0;
5721     if (UNLIKELY(current_cpu->trace_result_p))
5722       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
5723     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
5724   }
5725   {
5726     SI opval = 0;
5727     if (UNLIKELY(current_cpu->trace_result_p))
5728       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
5729     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
5730   }
5731   {
5732     SI opval = 0;
5733     if (UNLIKELY(current_cpu->trace_result_p))
5734       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
5735     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
5736   }
5737   {
5738     SI opval = 0;
5739     if (UNLIKELY(current_cpu->trace_result_p))
5740       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
5741     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
5742   }
5743 current_cpu->ivc2_cpsuba1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5744 }
5745
5746   current_cpu->done_insn (npc, status);
5747   return status;
5748 #undef FLD
5749 }
5750
5751 // ********** cpsubua1_h_P1: cpsubua1.h $crqp,$crpp
5752
5753 sem_status
5754 mepcop1_64_sem_cpsubua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5755 {
5756 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5757   sem_status status = SEM_STATUS_NORMAL;
5758   mepcop1_64_scache* abuf = sem;
5759   unsigned long long written = 0;
5760   PCADDR pc = abuf->addr;
5761   PCADDR npc = pc + 4;
5762
5763 {
5764 current_cpu->check_option_cp (pc);
5765   {
5766     SI opval = 0;
5767     if (UNLIKELY(current_cpu->trace_result_p))
5768       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
5769     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
5770   }
5771   {
5772     SI opval = 0;
5773     if (UNLIKELY(current_cpu->trace_result_p))
5774       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
5775     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
5776   }
5777   {
5778     SI opval = 0;
5779     if (UNLIKELY(current_cpu->trace_result_p))
5780       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
5781     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
5782   }
5783   {
5784     SI opval = 0;
5785     if (UNLIKELY(current_cpu->trace_result_p))
5786       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
5787     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
5788   }
5789 current_cpu->ivc2_cpsubua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5790 }
5791
5792   current_cpu->done_insn (npc, status);
5793   return status;
5794 #undef FLD
5795 }
5796
5797 // ********** cpsubla1_h_P1: cpsubla1.h $crqp,$crpp
5798
5799 sem_status
5800 mepcop1_64_sem_cpsubla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5801 {
5802 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5803   sem_status status = SEM_STATUS_NORMAL;
5804   mepcop1_64_scache* abuf = sem;
5805   unsigned long long written = 0;
5806   PCADDR pc = abuf->addr;
5807   PCADDR npc = pc + 4;
5808
5809 {
5810 current_cpu->check_option_cp (pc);
5811   {
5812     SI opval = 0;
5813     if (UNLIKELY(current_cpu->trace_result_p))
5814       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
5815     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
5816   }
5817   {
5818     SI opval = 0;
5819     if (UNLIKELY(current_cpu->trace_result_p))
5820       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
5821     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
5822   }
5823   {
5824     SI opval = 0;
5825     if (UNLIKELY(current_cpu->trace_result_p))
5826       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
5827     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
5828   }
5829   {
5830     SI opval = 0;
5831     if (UNLIKELY(current_cpu->trace_result_p))
5832       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
5833     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
5834   }
5835 current_cpu->ivc2_cpsubla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5836 }
5837
5838   current_cpu->done_insn (npc, status);
5839   return status;
5840 #undef FLD
5841 }
5842
5843 // ********** cpsubaca1u_b_P1: cpsubaca1u.b $crqp,$crpp
5844
5845 sem_status
5846 mepcop1_64_sem_cpsubaca1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5847 {
5848 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5849   sem_status status = SEM_STATUS_NORMAL;
5850   mepcop1_64_scache* abuf = sem;
5851   unsigned long long written = 0;
5852   PCADDR pc = abuf->addr;
5853   PCADDR npc = pc + 4;
5854
5855 {
5856 current_cpu->check_option_cp (pc);
5857   {
5858     SI opval = 0;
5859     if (UNLIKELY(current_cpu->trace_result_p))
5860       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
5861     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
5862   }
5863   {
5864     SI opval = 0;
5865     if (UNLIKELY(current_cpu->trace_result_p))
5866       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
5867     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
5868   }
5869   {
5870     SI opval = 0;
5871     if (UNLIKELY(current_cpu->trace_result_p))
5872       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
5873     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
5874   }
5875   {
5876     SI opval = 0;
5877     if (UNLIKELY(current_cpu->trace_result_p))
5878       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
5879     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
5880   }
5881   {
5882     SI opval = 0;
5883     if (UNLIKELY(current_cpu->trace_result_p))
5884       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
5885     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
5886   }
5887   {
5888     SI opval = 0;
5889     if (UNLIKELY(current_cpu->trace_result_p))
5890       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
5891     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
5892   }
5893   {
5894     SI opval = 0;
5895     if (UNLIKELY(current_cpu->trace_result_p))
5896       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
5897     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
5898   }
5899   {
5900     SI opval = 0;
5901     if (UNLIKELY(current_cpu->trace_result_p))
5902       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
5903     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
5904   }
5905   {
5906     SI opval = 0;
5907     if (UNLIKELY(current_cpu->trace_result_p))
5908       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
5909     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
5910   }
5911 current_cpu->ivc2_cpsubaca1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5912 }
5913
5914   current_cpu->done_insn (npc, status);
5915   return status;
5916 #undef FLD
5917 }
5918
5919 // ********** cpsubaca1_b_P1: cpsubaca1.b $crqp,$crpp
5920
5921 sem_status
5922 mepcop1_64_sem_cpsubaca1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5923 {
5924 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
5925   sem_status status = SEM_STATUS_NORMAL;
5926   mepcop1_64_scache* abuf = sem;
5927   unsigned long long written = 0;
5928   PCADDR pc = abuf->addr;
5929   PCADDR npc = pc + 4;
5930
5931 {
5932 current_cpu->check_option_cp (pc);
5933   {
5934     SI opval = 0;
5935     if (UNLIKELY(current_cpu->trace_result_p))
5936       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
5937     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
5938   }
5939   {
5940     SI opval = 0;
5941     if (UNLIKELY(current_cpu->trace_result_p))
5942       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
5943     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
5944   }
5945   {
5946     SI opval = 0;
5947     if (UNLIKELY(current_cpu->trace_result_p))
5948       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
5949     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
5950   }
5951   {
5952     SI opval = 0;
5953     if (UNLIKELY(current_cpu->trace_result_p))
5954       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
5955     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
5956   }
5957   {
5958     SI opval = 0;
5959     if (UNLIKELY(current_cpu->trace_result_p))
5960       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
5961     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
5962   }
5963   {
5964     SI opval = 0;
5965     if (UNLIKELY(current_cpu->trace_result_p))
5966       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
5967     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
5968   }
5969   {
5970     SI opval = 0;
5971     if (UNLIKELY(current_cpu->trace_result_p))
5972       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
5973     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
5974   }
5975   {
5976     SI opval = 0;
5977     if (UNLIKELY(current_cpu->trace_result_p))
5978       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
5979     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
5980   }
5981   {
5982     SI opval = 0;
5983     if (UNLIKELY(current_cpu->trace_result_p))
5984       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
5985     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
5986   }
5987 current_cpu->ivc2_cpsubaca1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
5988 }
5989
5990   current_cpu->done_insn (npc, status);
5991   return status;
5992 #undef FLD
5993 }
5994
5995 // ********** cpsubacua1_h_P1: cpsubacua1.h $crqp,$crpp
5996
5997 sem_status
5998 mepcop1_64_sem_cpsubacua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
5999 {
6000 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6001   sem_status status = SEM_STATUS_NORMAL;
6002   mepcop1_64_scache* abuf = sem;
6003   unsigned long long written = 0;
6004   PCADDR pc = abuf->addr;
6005   PCADDR npc = pc + 4;
6006
6007 {
6008 current_cpu->check_option_cp (pc);
6009   {
6010     SI opval = 0;
6011     if (UNLIKELY(current_cpu->trace_result_p))
6012       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
6013     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
6014   }
6015   {
6016     SI opval = 0;
6017     if (UNLIKELY(current_cpu->trace_result_p))
6018       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
6019     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
6020   }
6021   {
6022     SI opval = 0;
6023     if (UNLIKELY(current_cpu->trace_result_p))
6024       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
6025     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
6026   }
6027   {
6028     SI opval = 0;
6029     if (UNLIKELY(current_cpu->trace_result_p))
6030       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
6031     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
6032   }
6033   {
6034     SI opval = 0;
6035     if (UNLIKELY(current_cpu->trace_result_p))
6036       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
6037     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
6038   }
6039 current_cpu->ivc2_cpsubacua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6040 }
6041
6042   current_cpu->done_insn (npc, status);
6043   return status;
6044 #undef FLD
6045 }
6046
6047 // ********** cpsubacla1_h_P1: cpsubacla1.h $crqp,$crpp
6048
6049 sem_status
6050 mepcop1_64_sem_cpsubacla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6051 {
6052 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6053   sem_status status = SEM_STATUS_NORMAL;
6054   mepcop1_64_scache* abuf = sem;
6055   unsigned long long written = 0;
6056   PCADDR pc = abuf->addr;
6057   PCADDR npc = pc + 4;
6058
6059 {
6060 current_cpu->check_option_cp (pc);
6061   {
6062     SI opval = 0;
6063     if (UNLIKELY(current_cpu->trace_result_p))
6064       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
6065     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
6066   }
6067   {
6068     SI opval = 0;
6069     if (UNLIKELY(current_cpu->trace_result_p))
6070       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
6071     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
6072   }
6073   {
6074     SI opval = 0;
6075     if (UNLIKELY(current_cpu->trace_result_p))
6076       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
6077     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
6078   }
6079   {
6080     SI opval = 0;
6081     if (UNLIKELY(current_cpu->trace_result_p))
6082       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
6083     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
6084   }
6085   {
6086     SI opval = 0;
6087     if (UNLIKELY(current_cpu->trace_result_p))
6088       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
6089     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
6090   }
6091 current_cpu->ivc2_cpsubacla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6092 }
6093
6094   current_cpu->done_insn (npc, status);
6095   return status;
6096 #undef FLD
6097 }
6098
6099 // ********** cpabsa1u_b_P1: cpabsa1u.b $crqp,$crpp
6100
6101 sem_status
6102 mepcop1_64_sem_cpabsa1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6103 {
6104 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6105   sem_status status = SEM_STATUS_NORMAL;
6106   mepcop1_64_scache* abuf = sem;
6107   unsigned long long written = 0;
6108   PCADDR pc = abuf->addr;
6109   PCADDR npc = pc + 4;
6110
6111 {
6112 current_cpu->check_option_cp (pc);
6113   {
6114     SI opval = 0;
6115     if (UNLIKELY(current_cpu->trace_result_p))
6116       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
6117     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
6118   }
6119   {
6120     SI opval = 0;
6121     if (UNLIKELY(current_cpu->trace_result_p))
6122       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
6123     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
6124   }
6125   {
6126     SI opval = 0;
6127     if (UNLIKELY(current_cpu->trace_result_p))
6128       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
6129     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
6130   }
6131   {
6132     SI opval = 0;
6133     if (UNLIKELY(current_cpu->trace_result_p))
6134       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
6135     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
6136   }
6137   {
6138     SI opval = 0;
6139     if (UNLIKELY(current_cpu->trace_result_p))
6140       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
6141     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
6142   }
6143   {
6144     SI opval = 0;
6145     if (UNLIKELY(current_cpu->trace_result_p))
6146       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
6147     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
6148   }
6149   {
6150     SI opval = 0;
6151     if (UNLIKELY(current_cpu->trace_result_p))
6152       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
6153     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
6154   }
6155   {
6156     SI opval = 0;
6157     if (UNLIKELY(current_cpu->trace_result_p))
6158       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
6159     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
6160   }
6161 current_cpu->ivc2_cpabsa1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6162 }
6163
6164   current_cpu->done_insn (npc, status);
6165   return status;
6166 #undef FLD
6167 }
6168
6169 // ********** cpabsa1_b_P1: cpabsa1.b $crqp,$crpp
6170
6171 sem_status
6172 mepcop1_64_sem_cpabsa1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6173 {
6174 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6175   sem_status status = SEM_STATUS_NORMAL;
6176   mepcop1_64_scache* abuf = sem;
6177   unsigned long long written = 0;
6178   PCADDR pc = abuf->addr;
6179   PCADDR npc = pc + 4;
6180
6181 {
6182 current_cpu->check_option_cp (pc);
6183   {
6184     SI opval = 0;
6185     if (UNLIKELY(current_cpu->trace_result_p))
6186       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
6187     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
6188   }
6189   {
6190     SI opval = 0;
6191     if (UNLIKELY(current_cpu->trace_result_p))
6192       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
6193     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
6194   }
6195   {
6196     SI opval = 0;
6197     if (UNLIKELY(current_cpu->trace_result_p))
6198       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
6199     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
6200   }
6201   {
6202     SI opval = 0;
6203     if (UNLIKELY(current_cpu->trace_result_p))
6204       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
6205     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
6206   }
6207   {
6208     SI opval = 0;
6209     if (UNLIKELY(current_cpu->trace_result_p))
6210       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
6211     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
6212   }
6213   {
6214     SI opval = 0;
6215     if (UNLIKELY(current_cpu->trace_result_p))
6216       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
6217     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
6218   }
6219   {
6220     SI opval = 0;
6221     if (UNLIKELY(current_cpu->trace_result_p))
6222       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
6223     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
6224   }
6225   {
6226     SI opval = 0;
6227     if (UNLIKELY(current_cpu->trace_result_p))
6228       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
6229     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
6230   }
6231 current_cpu->ivc2_cpabsa1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6232 }
6233
6234   current_cpu->done_insn (npc, status);
6235   return status;
6236 #undef FLD
6237 }
6238
6239 // ********** cpabsua1_h_P1: cpabsua1.h $crqp,$crpp
6240
6241 sem_status
6242 mepcop1_64_sem_cpabsua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6243 {
6244 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6245   sem_status status = SEM_STATUS_NORMAL;
6246   mepcop1_64_scache* abuf = sem;
6247   unsigned long long written = 0;
6248   PCADDR pc = abuf->addr;
6249   PCADDR npc = pc + 4;
6250
6251 {
6252 current_cpu->check_option_cp (pc);
6253   {
6254     SI opval = 0;
6255     if (UNLIKELY(current_cpu->trace_result_p))
6256       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
6257     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
6258   }
6259   {
6260     SI opval = 0;
6261     if (UNLIKELY(current_cpu->trace_result_p))
6262       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
6263     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
6264   }
6265   {
6266     SI opval = 0;
6267     if (UNLIKELY(current_cpu->trace_result_p))
6268       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
6269     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
6270   }
6271   {
6272     SI opval = 0;
6273     if (UNLIKELY(current_cpu->trace_result_p))
6274       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
6275     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
6276   }
6277 current_cpu->ivc2_cpabsua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6278 }
6279
6280   current_cpu->done_insn (npc, status);
6281   return status;
6282 #undef FLD
6283 }
6284
6285 // ********** cpabsla1_h_P1: cpabsla1.h $crqp,$crpp
6286
6287 sem_status
6288 mepcop1_64_sem_cpabsla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6289 {
6290 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6291   sem_status status = SEM_STATUS_NORMAL;
6292   mepcop1_64_scache* abuf = sem;
6293   unsigned long long written = 0;
6294   PCADDR pc = abuf->addr;
6295   PCADDR npc = pc + 4;
6296
6297 {
6298 current_cpu->check_option_cp (pc);
6299   {
6300     SI opval = 0;
6301     if (UNLIKELY(current_cpu->trace_result_p))
6302       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
6303     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
6304   }
6305   {
6306     SI opval = 0;
6307     if (UNLIKELY(current_cpu->trace_result_p))
6308       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
6309     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
6310   }
6311   {
6312     SI opval = 0;
6313     if (UNLIKELY(current_cpu->trace_result_p))
6314       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
6315     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
6316   }
6317   {
6318     SI opval = 0;
6319     if (UNLIKELY(current_cpu->trace_result_p))
6320       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
6321     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
6322   }
6323 current_cpu->ivc2_cpabsla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6324 }
6325
6326   current_cpu->done_insn (npc, status);
6327   return status;
6328 #undef FLD
6329 }
6330
6331 // ********** cpsada1u_b_P1: cpsada1u.b $crqp,$crpp
6332
6333 sem_status
6334 mepcop1_64_sem_cpsada1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6335 {
6336 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6337   sem_status status = SEM_STATUS_NORMAL;
6338   mepcop1_64_scache* abuf = sem;
6339   unsigned long long written = 0;
6340   PCADDR pc = abuf->addr;
6341   PCADDR npc = pc + 4;
6342
6343 {
6344 current_cpu->check_option_cp (pc);
6345   {
6346     SI opval = 0;
6347     if (UNLIKELY(current_cpu->trace_result_p))
6348       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
6349     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
6350   }
6351   {
6352     SI opval = 0;
6353     if (UNLIKELY(current_cpu->trace_result_p))
6354       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
6355     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
6356   }
6357   {
6358     SI opval = 0;
6359     if (UNLIKELY(current_cpu->trace_result_p))
6360       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
6361     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
6362   }
6363   {
6364     SI opval = 0;
6365     if (UNLIKELY(current_cpu->trace_result_p))
6366       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
6367     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
6368   }
6369   {
6370     SI opval = 0;
6371     if (UNLIKELY(current_cpu->trace_result_p))
6372       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
6373     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
6374   }
6375   {
6376     SI opval = 0;
6377     if (UNLIKELY(current_cpu->trace_result_p))
6378       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
6379     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
6380   }
6381   {
6382     SI opval = 0;
6383     if (UNLIKELY(current_cpu->trace_result_p))
6384       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
6385     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
6386   }
6387   {
6388     SI opval = 0;
6389     if (UNLIKELY(current_cpu->trace_result_p))
6390       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
6391     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
6392   }
6393   {
6394     SI opval = 0;
6395     if (UNLIKELY(current_cpu->trace_result_p))
6396       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
6397     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
6398   }
6399 current_cpu->ivc2_cpsada1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6400 }
6401
6402   current_cpu->done_insn (npc, status);
6403   return status;
6404 #undef FLD
6405 }
6406
6407 // ********** cpsada1_b_P1: cpsada1.b $crqp,$crpp
6408
6409 sem_status
6410 mepcop1_64_sem_cpsada1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6411 {
6412 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6413   sem_status status = SEM_STATUS_NORMAL;
6414   mepcop1_64_scache* abuf = sem;
6415   unsigned long long written = 0;
6416   PCADDR pc = abuf->addr;
6417   PCADDR npc = pc + 4;
6418
6419 {
6420 current_cpu->check_option_cp (pc);
6421   {
6422     SI opval = 0;
6423     if (UNLIKELY(current_cpu->trace_result_p))
6424       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
6425     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
6426   }
6427   {
6428     SI opval = 0;
6429     if (UNLIKELY(current_cpu->trace_result_p))
6430       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
6431     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
6432   }
6433   {
6434     SI opval = 0;
6435     if (UNLIKELY(current_cpu->trace_result_p))
6436       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
6437     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
6438   }
6439   {
6440     SI opval = 0;
6441     if (UNLIKELY(current_cpu->trace_result_p))
6442       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
6443     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
6444   }
6445   {
6446     SI opval = 0;
6447     if (UNLIKELY(current_cpu->trace_result_p))
6448       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
6449     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
6450   }
6451   {
6452     SI opval = 0;
6453     if (UNLIKELY(current_cpu->trace_result_p))
6454       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
6455     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
6456   }
6457   {
6458     SI opval = 0;
6459     if (UNLIKELY(current_cpu->trace_result_p))
6460       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
6461     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
6462   }
6463   {
6464     SI opval = 0;
6465     if (UNLIKELY(current_cpu->trace_result_p))
6466       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
6467     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
6468   }
6469   {
6470     SI opval = 0;
6471     if (UNLIKELY(current_cpu->trace_result_p))
6472       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
6473     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
6474   }
6475 current_cpu->ivc2_cpsada1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6476 }
6477
6478   current_cpu->done_insn (npc, status);
6479   return status;
6480 #undef FLD
6481 }
6482
6483 // ********** cpsadua1_h_P1: cpsadua1.h $crqp,$crpp
6484
6485 sem_status
6486 mepcop1_64_sem_cpsadua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6487 {
6488 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6489   sem_status status = SEM_STATUS_NORMAL;
6490   mepcop1_64_scache* abuf = sem;
6491   unsigned long long written = 0;
6492   PCADDR pc = abuf->addr;
6493   PCADDR npc = pc + 4;
6494
6495 {
6496 current_cpu->check_option_cp (pc);
6497   {
6498     SI opval = 0;
6499     if (UNLIKELY(current_cpu->trace_result_p))
6500       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
6501     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
6502   }
6503   {
6504     SI opval = 0;
6505     if (UNLIKELY(current_cpu->trace_result_p))
6506       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
6507     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
6508   }
6509   {
6510     SI opval = 0;
6511     if (UNLIKELY(current_cpu->trace_result_p))
6512       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
6513     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
6514   }
6515   {
6516     SI opval = 0;
6517     if (UNLIKELY(current_cpu->trace_result_p))
6518       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
6519     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
6520   }
6521   {
6522     SI opval = 0;
6523     if (UNLIKELY(current_cpu->trace_result_p))
6524       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
6525     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
6526   }
6527 current_cpu->ivc2_cpsadua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6528 }
6529
6530   current_cpu->done_insn (npc, status);
6531   return status;
6532 #undef FLD
6533 }
6534
6535 // ********** cpsadla1_h_P1: cpsadla1.h $crqp,$crpp
6536
6537 sem_status
6538 mepcop1_64_sem_cpsadla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6539 {
6540 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6541   sem_status status = SEM_STATUS_NORMAL;
6542   mepcop1_64_scache* abuf = sem;
6543   unsigned long long written = 0;
6544   PCADDR pc = abuf->addr;
6545   PCADDR npc = pc + 4;
6546
6547 {
6548 current_cpu->check_option_cp (pc);
6549   {
6550     SI opval = 0;
6551     if (UNLIKELY(current_cpu->trace_result_p))
6552       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
6553     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
6554   }
6555   {
6556     SI opval = 0;
6557     if (UNLIKELY(current_cpu->trace_result_p))
6558       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
6559     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
6560   }
6561   {
6562     SI opval = 0;
6563     if (UNLIKELY(current_cpu->trace_result_p))
6564       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
6565     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
6566   }
6567   {
6568     SI opval = 0;
6569     if (UNLIKELY(current_cpu->trace_result_p))
6570       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
6571     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
6572   }
6573   {
6574     SI opval = 0;
6575     if (UNLIKELY(current_cpu->trace_result_p))
6576       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
6577     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
6578   }
6579 current_cpu->ivc2_cpsadla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6580 }
6581
6582   current_cpu->done_insn (npc, status);
6583   return status;
6584 #undef FLD
6585 }
6586
6587 // ********** cpseta1_h_P1: cpseta1.h $crqp,$crpp
6588
6589 sem_status
6590 mepcop1_64_sem_cpseta1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6591 {
6592 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6593   sem_status status = SEM_STATUS_NORMAL;
6594   mepcop1_64_scache* abuf = sem;
6595   unsigned long long written = 0;
6596   PCADDR pc = abuf->addr;
6597   PCADDR npc = pc + 4;
6598
6599 {
6600 current_cpu->check_option_cp (pc);
6601   {
6602     SI opval = 0;
6603     if (UNLIKELY(current_cpu->trace_result_p))
6604       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
6605     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
6606   }
6607   {
6608     SI opval = 0;
6609     if (UNLIKELY(current_cpu->trace_result_p))
6610       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
6611     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
6612   }
6613   {
6614     SI opval = 0;
6615     if (UNLIKELY(current_cpu->trace_result_p))
6616       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
6617     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
6618   }
6619   {
6620     SI opval = 0;
6621     if (UNLIKELY(current_cpu->trace_result_p))
6622       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
6623     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
6624   }
6625   {
6626     SI opval = 0;
6627     if (UNLIKELY(current_cpu->trace_result_p))
6628       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
6629     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
6630   }
6631   {
6632     SI opval = 0;
6633     if (UNLIKELY(current_cpu->trace_result_p))
6634       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
6635     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
6636   }
6637   {
6638     SI opval = 0;
6639     if (UNLIKELY(current_cpu->trace_result_p))
6640       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
6641     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
6642   }
6643   {
6644     SI opval = 0;
6645     if (UNLIKELY(current_cpu->trace_result_p))
6646       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
6647     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
6648   }
6649 current_cpu->ivc2_cpseta1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6650 }
6651
6652   current_cpu->done_insn (npc, status);
6653   return status;
6654 #undef FLD
6655 }
6656
6657 // ********** cpsetua1_w_P1: cpsetua1.w $crqp,$crpp
6658
6659 sem_status
6660 mepcop1_64_sem_cpsetua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6661 {
6662 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6663   sem_status status = SEM_STATUS_NORMAL;
6664   mepcop1_64_scache* abuf = sem;
6665   unsigned long long written = 0;
6666   PCADDR pc = abuf->addr;
6667   PCADDR npc = pc + 4;
6668
6669 {
6670 current_cpu->check_option_cp (pc);
6671   {
6672     SI opval = 0;
6673     if (UNLIKELY(current_cpu->trace_result_p))
6674       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
6675     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
6676   }
6677   {
6678     SI opval = 0;
6679     if (UNLIKELY(current_cpu->trace_result_p))
6680       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
6681     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
6682   }
6683   {
6684     SI opval = 0;
6685     if (UNLIKELY(current_cpu->trace_result_p))
6686       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
6687     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
6688   }
6689   {
6690     SI opval = 0;
6691     if (UNLIKELY(current_cpu->trace_result_p))
6692       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
6693     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
6694   }
6695 current_cpu->ivc2_cpsetua1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6696 }
6697
6698   current_cpu->done_insn (npc, status);
6699   return status;
6700 #undef FLD
6701 }
6702
6703 // ********** cpsetla1_w_P1: cpsetla1.w $crqp,$crpp
6704
6705 sem_status
6706 mepcop1_64_sem_cpsetla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6707 {
6708 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
6709   sem_status status = SEM_STATUS_NORMAL;
6710   mepcop1_64_scache* abuf = sem;
6711   unsigned long long written = 0;
6712   PCADDR pc = abuf->addr;
6713   PCADDR npc = pc + 4;
6714
6715 {
6716 current_cpu->check_option_cp (pc);
6717   {
6718     SI opval = 0;
6719     if (UNLIKELY(current_cpu->trace_result_p))
6720       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
6721     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
6722   }
6723   {
6724     SI opval = 0;
6725     if (UNLIKELY(current_cpu->trace_result_p))
6726       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
6727     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
6728   }
6729   {
6730     SI opval = 0;
6731     if (UNLIKELY(current_cpu->trace_result_p))
6732       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
6733     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
6734   }
6735   {
6736     SI opval = 0;
6737     if (UNLIKELY(current_cpu->trace_result_p))
6738       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
6739     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
6740   }
6741 current_cpu->ivc2_cpsetla1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
6742 }
6743
6744   current_cpu->done_insn (npc, status);
6745   return status;
6746 #undef FLD
6747 }
6748
6749 // ********** cpmova1_b_P1: cpmova1.b $crop
6750
6751 sem_status
6752 mepcop1_64_sem_cpmova1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6753 {
6754 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
6755   sem_status status = SEM_STATUS_NORMAL;
6756   mepcop1_64_scache* abuf = sem;
6757   unsigned long long written = 0;
6758   PCADDR pc = abuf->addr;
6759   PCADDR npc = pc + 4;
6760
6761 {
6762 current_cpu->check_option_cp (pc);
6763   {
6764     DI opval = current_cpu->ivc2_cpmova1_b (pc);
6765     if (UNLIKELY(current_cpu->trace_result_p))
6766       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
6767     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
6768   }
6769 }
6770
6771   current_cpu->done_insn (npc, status);
6772   return status;
6773 #undef FLD
6774 }
6775
6776 // ********** cpmovua1_h_P1: cpmovua1.h $crop
6777
6778 sem_status
6779 mepcop1_64_sem_cpmovua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6780 {
6781 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
6782   sem_status status = SEM_STATUS_NORMAL;
6783   mepcop1_64_scache* abuf = sem;
6784   unsigned long long written = 0;
6785   PCADDR pc = abuf->addr;
6786   PCADDR npc = pc + 4;
6787
6788 {
6789 current_cpu->check_option_cp (pc);
6790   {
6791     DI opval = current_cpu->ivc2_cpmovua1_h (pc);
6792     if (UNLIKELY(current_cpu->trace_result_p))
6793       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
6794     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
6795   }
6796 }
6797
6798   current_cpu->done_insn (npc, status);
6799   return status;
6800 #undef FLD
6801 }
6802
6803 // ********** cpmovla1_h_P1: cpmovla1.h $crop
6804
6805 sem_status
6806 mepcop1_64_sem_cpmovla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6807 {
6808 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
6809   sem_status status = SEM_STATUS_NORMAL;
6810   mepcop1_64_scache* abuf = sem;
6811   unsigned long long written = 0;
6812   PCADDR pc = abuf->addr;
6813   PCADDR npc = pc + 4;
6814
6815 {
6816 current_cpu->check_option_cp (pc);
6817   {
6818     DI opval = current_cpu->ivc2_cpmovla1_h (pc);
6819     if (UNLIKELY(current_cpu->trace_result_p))
6820       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
6821     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
6822   }
6823 }
6824
6825   current_cpu->done_insn (npc, status);
6826   return status;
6827 #undef FLD
6828 }
6829
6830 // ********** cpmovuua1_w_P1: cpmovuua1.w $crop
6831
6832 sem_status
6833 mepcop1_64_sem_cpmovuua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6834 {
6835 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
6836   sem_status status = SEM_STATUS_NORMAL;
6837   mepcop1_64_scache* abuf = sem;
6838   unsigned long long written = 0;
6839   PCADDR pc = abuf->addr;
6840   PCADDR npc = pc + 4;
6841
6842 {
6843 current_cpu->check_option_cp (pc);
6844   {
6845     DI opval = current_cpu->ivc2_cpmovuua1_w (pc);
6846     if (UNLIKELY(current_cpu->trace_result_p))
6847       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
6848     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
6849   }
6850 }
6851
6852   current_cpu->done_insn (npc, status);
6853   return status;
6854 #undef FLD
6855 }
6856
6857 // ********** cpmovula1_w_P1: cpmovula1.w $crop
6858
6859 sem_status
6860 mepcop1_64_sem_cpmovula1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6861 {
6862 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
6863   sem_status status = SEM_STATUS_NORMAL;
6864   mepcop1_64_scache* abuf = sem;
6865   unsigned long long written = 0;
6866   PCADDR pc = abuf->addr;
6867   PCADDR npc = pc + 4;
6868
6869 {
6870 current_cpu->check_option_cp (pc);
6871   {
6872     DI opval = current_cpu->ivc2_cpmovula1_w (pc);
6873     if (UNLIKELY(current_cpu->trace_result_p))
6874       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
6875     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
6876   }
6877 }
6878
6879   current_cpu->done_insn (npc, status);
6880   return status;
6881 #undef FLD
6882 }
6883
6884 // ********** cpmovlua1_w_P1: cpmovlua1.w $crop
6885
6886 sem_status
6887 mepcop1_64_sem_cpmovlua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6888 {
6889 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
6890   sem_status status = SEM_STATUS_NORMAL;
6891   mepcop1_64_scache* abuf = sem;
6892   unsigned long long written = 0;
6893   PCADDR pc = abuf->addr;
6894   PCADDR npc = pc + 4;
6895
6896 {
6897 current_cpu->check_option_cp (pc);
6898   {
6899     DI opval = current_cpu->ivc2_cpmovlua1_w (pc);
6900     if (UNLIKELY(current_cpu->trace_result_p))
6901       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
6902     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
6903   }
6904 }
6905
6906   current_cpu->done_insn (npc, status);
6907   return status;
6908 #undef FLD
6909 }
6910
6911 // ********** cpmovlla1_w_P1: cpmovlla1.w $crop
6912
6913 sem_status
6914 mepcop1_64_sem_cpmovlla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6915 {
6916 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
6917   sem_status status = SEM_STATUS_NORMAL;
6918   mepcop1_64_scache* abuf = sem;
6919   unsigned long long written = 0;
6920   PCADDR pc = abuf->addr;
6921   PCADDR npc = pc + 4;
6922
6923 {
6924 current_cpu->check_option_cp (pc);
6925   {
6926     DI opval = current_cpu->ivc2_cpmovlla1_w (pc);
6927     if (UNLIKELY(current_cpu->trace_result_p))
6928       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
6929     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
6930   }
6931 }
6932
6933   current_cpu->done_insn (npc, status);
6934   return status;
6935 #undef FLD
6936 }
6937
6938 // ********** cppacka1u_b_P1: cppacka1u.b $crop
6939
6940 sem_status
6941 mepcop1_64_sem_cppacka1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6942 {
6943 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
6944   sem_status status = SEM_STATUS_NORMAL;
6945   mepcop1_64_scache* abuf = sem;
6946   unsigned long long written = 0;
6947   PCADDR pc = abuf->addr;
6948   PCADDR npc = pc + 4;
6949
6950 {
6951 current_cpu->check_option_cp (pc);
6952   {
6953     DI opval = current_cpu->ivc2_cppacka1u_b (pc);
6954     if (UNLIKELY(current_cpu->trace_result_p))
6955       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
6956     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
6957   }
6958 }
6959
6960   current_cpu->done_insn (npc, status);
6961   return status;
6962 #undef FLD
6963 }
6964
6965 // ********** cppacka1_b_P1: cppacka1.b $crop
6966
6967 sem_status
6968 mepcop1_64_sem_cppacka1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6969 {
6970 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
6971   sem_status status = SEM_STATUS_NORMAL;
6972   mepcop1_64_scache* abuf = sem;
6973   unsigned long long written = 0;
6974   PCADDR pc = abuf->addr;
6975   PCADDR npc = pc + 4;
6976
6977 {
6978 current_cpu->check_option_cp (pc);
6979   {
6980     DI opval = current_cpu->ivc2_cppacka1_b (pc);
6981     if (UNLIKELY(current_cpu->trace_result_p))
6982       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
6983     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
6984   }
6985 }
6986
6987   current_cpu->done_insn (npc, status);
6988   return status;
6989 #undef FLD
6990 }
6991
6992 // ********** cppackua1_h_P1: cppackua1.h $crop
6993
6994 sem_status
6995 mepcop1_64_sem_cppackua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
6996 {
6997 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
6998   sem_status status = SEM_STATUS_NORMAL;
6999   mepcop1_64_scache* abuf = sem;
7000   unsigned long long written = 0;
7001   PCADDR pc = abuf->addr;
7002   PCADDR npc = pc + 4;
7003
7004 {
7005 current_cpu->check_option_cp (pc);
7006   {
7007     DI opval = current_cpu->ivc2_cppackua1_h (pc);
7008     if (UNLIKELY(current_cpu->trace_result_p))
7009       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
7010     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
7011   }
7012 }
7013
7014   current_cpu->done_insn (npc, status);
7015   return status;
7016 #undef FLD
7017 }
7018
7019 // ********** cppackla1_h_P1: cppackla1.h $crop
7020
7021 sem_status
7022 mepcop1_64_sem_cppackla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7023 {
7024 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
7025   sem_status status = SEM_STATUS_NORMAL;
7026   mepcop1_64_scache* abuf = sem;
7027   unsigned long long written = 0;
7028   PCADDR pc = abuf->addr;
7029   PCADDR npc = pc + 4;
7030
7031 {
7032 current_cpu->check_option_cp (pc);
7033   {
7034     DI opval = current_cpu->ivc2_cppackla1_h (pc);
7035     if (UNLIKELY(current_cpu->trace_result_p))
7036       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
7037     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
7038   }
7039 }
7040
7041   current_cpu->done_insn (npc, status);
7042   return status;
7043 #undef FLD
7044 }
7045
7046 // ********** cppackua1_w_P1: cppackua1.w $crop
7047
7048 sem_status
7049 mepcop1_64_sem_cppackua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7050 {
7051 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
7052   sem_status status = SEM_STATUS_NORMAL;
7053   mepcop1_64_scache* abuf = sem;
7054   unsigned long long written = 0;
7055   PCADDR pc = abuf->addr;
7056   PCADDR npc = pc + 4;
7057
7058 {
7059 current_cpu->check_option_cp (pc);
7060   {
7061     DI opval = current_cpu->ivc2_cppackua1_w (pc);
7062     if (UNLIKELY(current_cpu->trace_result_p))
7063       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
7064     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
7065   }
7066 }
7067
7068   current_cpu->done_insn (npc, status);
7069   return status;
7070 #undef FLD
7071 }
7072
7073 // ********** cppackla1_w_P1: cppackla1.w $crop
7074
7075 sem_status
7076 mepcop1_64_sem_cppackla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7077 {
7078 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
7079   sem_status status = SEM_STATUS_NORMAL;
7080   mepcop1_64_scache* abuf = sem;
7081   unsigned long long written = 0;
7082   PCADDR pc = abuf->addr;
7083   PCADDR npc = pc + 4;
7084
7085 {
7086 current_cpu->check_option_cp (pc);
7087   {
7088     DI opval = current_cpu->ivc2_cppackla1_w (pc);
7089     if (UNLIKELY(current_cpu->trace_result_p))
7090       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
7091     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
7092   }
7093 }
7094
7095   current_cpu->done_insn (npc, status);
7096   return status;
7097 #undef FLD
7098 }
7099
7100 // ********** cpmovhua1_w_P1: cpmovhua1.w $crop
7101
7102 sem_status
7103 mepcop1_64_sem_cpmovhua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7104 {
7105 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
7106   sem_status status = SEM_STATUS_NORMAL;
7107   mepcop1_64_scache* abuf = sem;
7108   unsigned long long written = 0;
7109   PCADDR pc = abuf->addr;
7110   PCADDR npc = pc + 4;
7111
7112 {
7113 current_cpu->check_option_cp (pc);
7114   {
7115     DI opval = current_cpu->ivc2_cpmovhua1_w (pc);
7116     if (UNLIKELY(current_cpu->trace_result_p))
7117       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
7118     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
7119   }
7120 }
7121
7122   current_cpu->done_insn (npc, status);
7123   return status;
7124 #undef FLD
7125 }
7126
7127 // ********** cpmovhla1_w_P1: cpmovhla1.w $crop
7128
7129 sem_status
7130 mepcop1_64_sem_cpmovhla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7131 {
7132 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
7133   sem_status status = SEM_STATUS_NORMAL;
7134   mepcop1_64_scache* abuf = sem;
7135   unsigned long long written = 0;
7136   PCADDR pc = abuf->addr;
7137   PCADDR npc = pc + 4;
7138
7139 {
7140 current_cpu->check_option_cp (pc);
7141   {
7142     DI opval = current_cpu->ivc2_cpmovhla1_w (pc);
7143     if (UNLIKELY(current_cpu->trace_result_p))
7144       current_cpu->trace_stream << "cr64" << '[' << FLD (f_ivc2_5u23) << ']' << ":=0x" << hex << opval << dec << "  ";
7145     current_cpu->h_cr64_set (FLD (f_ivc2_5u23), opval);
7146   }
7147 }
7148
7149   current_cpu->done_insn (npc, status);
7150   return status;
7151 #undef FLD
7152 }
7153
7154 // ********** cpacsuma1_P1: cpacsuma1
7155
7156 sem_status
7157 mepcop1_64_sem_cpacsuma1_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7158 {
7159 #define FLD(f) abuf->fields.fmt_empty.f
7160   sem_status status = SEM_STATUS_NORMAL;
7161   mepcop1_64_scache* abuf = sem;
7162   unsigned long long written = 0;
7163   PCADDR pc = abuf->addr;
7164   PCADDR npc = pc + 4;
7165
7166 {
7167 current_cpu->check_option_cp (pc);
7168   {
7169     SI opval = 0;
7170     if (UNLIKELY(current_cpu->trace_result_p))
7171       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
7172     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
7173   }
7174   {
7175     SI opval = 0;
7176     if (UNLIKELY(current_cpu->trace_result_p))
7177       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
7178     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
7179   }
7180   {
7181     SI opval = 0;
7182     if (UNLIKELY(current_cpu->trace_result_p))
7183       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
7184     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
7185   }
7186   {
7187     SI opval = 0;
7188     if (UNLIKELY(current_cpu->trace_result_p))
7189       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
7190     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
7191   }
7192   {
7193     SI opval = 0;
7194     if (UNLIKELY(current_cpu->trace_result_p))
7195       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7196     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7197   }
7198   {
7199     SI opval = 0;
7200     if (UNLIKELY(current_cpu->trace_result_p))
7201       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
7202     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
7203   }
7204   {
7205     SI opval = 0;
7206     if (UNLIKELY(current_cpu->trace_result_p))
7207       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
7208     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
7209   }
7210   {
7211     SI opval = 0;
7212     if (UNLIKELY(current_cpu->trace_result_p))
7213       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
7214     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
7215   }
7216   {
7217     SI opval = 0;
7218     if (UNLIKELY(current_cpu->trace_result_p))
7219       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
7220     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
7221   }
7222 current_cpu->ivc2_cpacsuma1 (pc);
7223 }
7224
7225   current_cpu->done_insn (npc, status);
7226   return status;
7227 #undef FLD
7228 }
7229
7230 // ********** cpaccpa1_P1: cpaccpa1
7231
7232 sem_status
7233 mepcop1_64_sem_cpaccpa1_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7234 {
7235 #define FLD(f) abuf->fields.fmt_empty.f
7236   sem_status status = SEM_STATUS_NORMAL;
7237   mepcop1_64_scache* abuf = sem;
7238   unsigned long long written = 0;
7239   PCADDR pc = abuf->addr;
7240   PCADDR npc = pc + 4;
7241
7242 {
7243 current_cpu->check_option_cp (pc);
7244   {
7245     SI opval = 0;
7246     if (UNLIKELY(current_cpu->trace_result_p))
7247       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
7248     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
7249   }
7250   {
7251     SI opval = 0;
7252     if (UNLIKELY(current_cpu->trace_result_p))
7253       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
7254     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
7255   }
7256   {
7257     SI opval = 0;
7258     if (UNLIKELY(current_cpu->trace_result_p))
7259       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
7260     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
7261   }
7262   {
7263     SI opval = 0;
7264     if (UNLIKELY(current_cpu->trace_result_p))
7265       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
7266     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
7267   }
7268   {
7269     SI opval = 0;
7270     if (UNLIKELY(current_cpu->trace_result_p))
7271       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7272     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7273   }
7274   {
7275     SI opval = 0;
7276     if (UNLIKELY(current_cpu->trace_result_p))
7277       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
7278     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
7279   }
7280   {
7281     SI opval = 0;
7282     if (UNLIKELY(current_cpu->trace_result_p))
7283       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
7284     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
7285   }
7286   {
7287     SI opval = 0;
7288     if (UNLIKELY(current_cpu->trace_result_p))
7289       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
7290     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
7291   }
7292 current_cpu->ivc2_cpaccpa1 (pc);
7293 }
7294
7295   current_cpu->done_insn (npc, status);
7296   return status;
7297 #undef FLD
7298 }
7299
7300 // ********** cpacswp_P1: cpacswp
7301
7302 sem_status
7303 mepcop1_64_sem_cpacswp_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7304 {
7305 #define FLD(f) abuf->fields.fmt_empty.f
7306   sem_status status = SEM_STATUS_NORMAL;
7307   mepcop1_64_scache* abuf = sem;
7308   unsigned long long written = 0;
7309   PCADDR pc = abuf->addr;
7310   PCADDR npc = pc + 4;
7311
7312 {
7313 current_cpu->check_option_cp (pc);
7314   {
7315     SI opval = 0;
7316     if (UNLIKELY(current_cpu->trace_result_p))
7317       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 16) << ']' << ":=0x" << hex << opval << dec << "  ";
7318     current_cpu->h_ccr_ivc2_set (((UINT) 16), opval);
7319   }
7320   {
7321     SI opval = 0;
7322     if (UNLIKELY(current_cpu->trace_result_p))
7323       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 17) << ']' << ":=0x" << hex << opval << dec << "  ";
7324     current_cpu->h_ccr_ivc2_set (((UINT) 17), opval);
7325   }
7326   {
7327     SI opval = 0;
7328     if (UNLIKELY(current_cpu->trace_result_p))
7329       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 18) << ']' << ":=0x" << hex << opval << dec << "  ";
7330     current_cpu->h_ccr_ivc2_set (((UINT) 18), opval);
7331   }
7332   {
7333     SI opval = 0;
7334     if (UNLIKELY(current_cpu->trace_result_p))
7335       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 19) << ']' << ":=0x" << hex << opval << dec << "  ";
7336     current_cpu->h_ccr_ivc2_set (((UINT) 19), opval);
7337   }
7338   {
7339     SI opval = 0;
7340     if (UNLIKELY(current_cpu->trace_result_p))
7341       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 20) << ']' << ":=0x" << hex << opval << dec << "  ";
7342     current_cpu->h_ccr_ivc2_set (((UINT) 20), opval);
7343   }
7344   {
7345     SI opval = 0;
7346     if (UNLIKELY(current_cpu->trace_result_p))
7347       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 21) << ']' << ":=0x" << hex << opval << dec << "  ";
7348     current_cpu->h_ccr_ivc2_set (((UINT) 21), opval);
7349   }
7350   {
7351     SI opval = 0;
7352     if (UNLIKELY(current_cpu->trace_result_p))
7353       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 22) << ']' << ":=0x" << hex << opval << dec << "  ";
7354     current_cpu->h_ccr_ivc2_set (((UINT) 22), opval);
7355   }
7356   {
7357     SI opval = 0;
7358     if (UNLIKELY(current_cpu->trace_result_p))
7359       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 23) << ']' << ":=0x" << hex << opval << dec << "  ";
7360     current_cpu->h_ccr_ivc2_set (((UINT) 23), opval);
7361   }
7362   {
7363     SI opval = 0;
7364     if (UNLIKELY(current_cpu->trace_result_p))
7365       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
7366     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
7367   }
7368   {
7369     SI opval = 0;
7370     if (UNLIKELY(current_cpu->trace_result_p))
7371       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
7372     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
7373   }
7374   {
7375     SI opval = 0;
7376     if (UNLIKELY(current_cpu->trace_result_p))
7377       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
7378     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
7379   }
7380   {
7381     SI opval = 0;
7382     if (UNLIKELY(current_cpu->trace_result_p))
7383       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
7384     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
7385   }
7386   {
7387     SI opval = 0;
7388     if (UNLIKELY(current_cpu->trace_result_p))
7389       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7390     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7391   }
7392   {
7393     SI opval = 0;
7394     if (UNLIKELY(current_cpu->trace_result_p))
7395       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
7396     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
7397   }
7398   {
7399     SI opval = 0;
7400     if (UNLIKELY(current_cpu->trace_result_p))
7401       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
7402     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
7403   }
7404   {
7405     SI opval = 0;
7406     if (UNLIKELY(current_cpu->trace_result_p))
7407       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
7408     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
7409   }
7410 current_cpu->ivc2_cpacswp (pc);
7411 }
7412
7413   current_cpu->done_insn (npc, status);
7414   return status;
7415 #undef FLD
7416 }
7417
7418 // ********** cpsrla1_P1: cpsrla1 $crqp
7419
7420 sem_status
7421 mepcop1_64_sem_cpsrla1_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7422 {
7423 #define FLD(f) abuf->fields.sfmt_cpmovi_b_P0S_P1.f
7424   sem_status status = SEM_STATUS_NORMAL;
7425   mepcop1_64_scache* abuf = sem;
7426   unsigned long long written = 0;
7427   PCADDR pc = abuf->addr;
7428   PCADDR npc = pc + 4;
7429
7430 {
7431 current_cpu->check_option_cp (pc);
7432   {
7433     SI opval = 0;
7434     if (UNLIKELY(current_cpu->trace_result_p))
7435       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
7436     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
7437   }
7438   {
7439     SI opval = 0;
7440     if (UNLIKELY(current_cpu->trace_result_p))
7441       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
7442     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
7443   }
7444   {
7445     SI opval = 0;
7446     if (UNLIKELY(current_cpu->trace_result_p))
7447       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
7448     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
7449   }
7450   {
7451     SI opval = 0;
7452     if (UNLIKELY(current_cpu->trace_result_p))
7453       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
7454     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
7455   }
7456   {
7457     SI opval = 0;
7458     if (UNLIKELY(current_cpu->trace_result_p))
7459       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7460     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7461   }
7462   {
7463     SI opval = 0;
7464     if (UNLIKELY(current_cpu->trace_result_p))
7465       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
7466     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
7467   }
7468   {
7469     SI opval = 0;
7470     if (UNLIKELY(current_cpu->trace_result_p))
7471       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
7472     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
7473   }
7474   {
7475     SI opval = 0;
7476     if (UNLIKELY(current_cpu->trace_result_p))
7477       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
7478     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
7479   }
7480 current_cpu->ivc2_cpsrla1 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
7481 }
7482
7483   current_cpu->done_insn (npc, status);
7484   return status;
7485 #undef FLD
7486 }
7487
7488 // ********** cpsraa1_P1: cpsraa1 $crqp
7489
7490 sem_status
7491 mepcop1_64_sem_cpsraa1_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7492 {
7493 #define FLD(f) abuf->fields.sfmt_cpmovi_b_P0S_P1.f
7494   sem_status status = SEM_STATUS_NORMAL;
7495   mepcop1_64_scache* abuf = sem;
7496   unsigned long long written = 0;
7497   PCADDR pc = abuf->addr;
7498   PCADDR npc = pc + 4;
7499
7500 {
7501 current_cpu->check_option_cp (pc);
7502   {
7503     SI opval = 0;
7504     if (UNLIKELY(current_cpu->trace_result_p))
7505       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
7506     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
7507   }
7508   {
7509     SI opval = 0;
7510     if (UNLIKELY(current_cpu->trace_result_p))
7511       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
7512     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
7513   }
7514   {
7515     SI opval = 0;
7516     if (UNLIKELY(current_cpu->trace_result_p))
7517       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
7518     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
7519   }
7520   {
7521     SI opval = 0;
7522     if (UNLIKELY(current_cpu->trace_result_p))
7523       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
7524     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
7525   }
7526   {
7527     SI opval = 0;
7528     if (UNLIKELY(current_cpu->trace_result_p))
7529       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7530     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7531   }
7532   {
7533     SI opval = 0;
7534     if (UNLIKELY(current_cpu->trace_result_p))
7535       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
7536     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
7537   }
7538   {
7539     SI opval = 0;
7540     if (UNLIKELY(current_cpu->trace_result_p))
7541       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
7542     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
7543   }
7544   {
7545     SI opval = 0;
7546     if (UNLIKELY(current_cpu->trace_result_p))
7547       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
7548     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
7549   }
7550 current_cpu->ivc2_cpsraa1 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
7551 }
7552
7553   current_cpu->done_insn (npc, status);
7554   return status;
7555 #undef FLD
7556 }
7557
7558 // ********** cpslla1_P1: cpslla1 $crqp
7559
7560 sem_status
7561 mepcop1_64_sem_cpslla1_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7562 {
7563 #define FLD(f) abuf->fields.sfmt_cpmovi_b_P0S_P1.f
7564   sem_status status = SEM_STATUS_NORMAL;
7565   mepcop1_64_scache* abuf = sem;
7566   unsigned long long written = 0;
7567   PCADDR pc = abuf->addr;
7568   PCADDR npc = pc + 4;
7569
7570 {
7571 current_cpu->check_option_cp (pc);
7572   {
7573     SI opval = 0;
7574     if (UNLIKELY(current_cpu->trace_result_p))
7575       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
7576     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
7577   }
7578   {
7579     SI opval = 0;
7580     if (UNLIKELY(current_cpu->trace_result_p))
7581       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
7582     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
7583   }
7584   {
7585     SI opval = 0;
7586     if (UNLIKELY(current_cpu->trace_result_p))
7587       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
7588     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
7589   }
7590   {
7591     SI opval = 0;
7592     if (UNLIKELY(current_cpu->trace_result_p))
7593       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
7594     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
7595   }
7596   {
7597     SI opval = 0;
7598     if (UNLIKELY(current_cpu->trace_result_p))
7599       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7600     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7601   }
7602   {
7603     SI opval = 0;
7604     if (UNLIKELY(current_cpu->trace_result_p))
7605       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
7606     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
7607   }
7608   {
7609     SI opval = 0;
7610     if (UNLIKELY(current_cpu->trace_result_p))
7611       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
7612     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
7613   }
7614   {
7615     SI opval = 0;
7616     if (UNLIKELY(current_cpu->trace_result_p))
7617       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
7618     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
7619   }
7620 current_cpu->ivc2_cpslla1 (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)]);
7621 }
7622
7623   current_cpu->done_insn (npc, status);
7624   return status;
7625 #undef FLD
7626 }
7627
7628 // ********** cpsrlia1_1_p1: cpsrlia1 $imm5p23
7629
7630 sem_status
7631 mepcop1_64_sem_cpsrlia1_1_p1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7632 {
7633 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
7634   sem_status status = SEM_STATUS_NORMAL;
7635   mepcop1_64_scache* abuf = sem;
7636   unsigned long long written = 0;
7637   PCADDR pc = abuf->addr;
7638   PCADDR npc = pc + 4;
7639
7640 {
7641 current_cpu->check_option_cp (pc);
7642   {
7643     SI opval = 0;
7644     if (UNLIKELY(current_cpu->trace_result_p))
7645       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
7646     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
7647   }
7648   {
7649     SI opval = 0;
7650     if (UNLIKELY(current_cpu->trace_result_p))
7651       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
7652     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
7653   }
7654   {
7655     SI opval = 0;
7656     if (UNLIKELY(current_cpu->trace_result_p))
7657       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
7658     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
7659   }
7660   {
7661     SI opval = 0;
7662     if (UNLIKELY(current_cpu->trace_result_p))
7663       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
7664     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
7665   }
7666   {
7667     SI opval = 0;
7668     if (UNLIKELY(current_cpu->trace_result_p))
7669       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7670     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7671   }
7672   {
7673     SI opval = 0;
7674     if (UNLIKELY(current_cpu->trace_result_p))
7675       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
7676     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
7677   }
7678   {
7679     SI opval = 0;
7680     if (UNLIKELY(current_cpu->trace_result_p))
7681       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
7682     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
7683   }
7684   {
7685     SI opval = 0;
7686     if (UNLIKELY(current_cpu->trace_result_p))
7687       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
7688     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
7689   }
7690 current_cpu->ivc2_cpsrlia1 (pc, FLD (f_ivc2_5u23));
7691 }
7692
7693   current_cpu->done_insn (npc, status);
7694   return status;
7695 #undef FLD
7696 }
7697
7698 // ********** cpsraia1_1_p1: cpsraia1 $imm5p23
7699
7700 sem_status
7701 mepcop1_64_sem_cpsraia1_1_p1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7702 {
7703 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
7704   sem_status status = SEM_STATUS_NORMAL;
7705   mepcop1_64_scache* abuf = sem;
7706   unsigned long long written = 0;
7707   PCADDR pc = abuf->addr;
7708   PCADDR npc = pc + 4;
7709
7710 {
7711 current_cpu->check_option_cp (pc);
7712   {
7713     SI opval = 0;
7714     if (UNLIKELY(current_cpu->trace_result_p))
7715       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
7716     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
7717   }
7718   {
7719     SI opval = 0;
7720     if (UNLIKELY(current_cpu->trace_result_p))
7721       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
7722     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
7723   }
7724   {
7725     SI opval = 0;
7726     if (UNLIKELY(current_cpu->trace_result_p))
7727       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
7728     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
7729   }
7730   {
7731     SI opval = 0;
7732     if (UNLIKELY(current_cpu->trace_result_p))
7733       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
7734     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
7735   }
7736   {
7737     SI opval = 0;
7738     if (UNLIKELY(current_cpu->trace_result_p))
7739       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7740     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7741   }
7742   {
7743     SI opval = 0;
7744     if (UNLIKELY(current_cpu->trace_result_p))
7745       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
7746     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
7747   }
7748   {
7749     SI opval = 0;
7750     if (UNLIKELY(current_cpu->trace_result_p))
7751       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
7752     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
7753   }
7754   {
7755     SI opval = 0;
7756     if (UNLIKELY(current_cpu->trace_result_p))
7757       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
7758     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
7759   }
7760 current_cpu->ivc2_cpsraia1 (pc, FLD (f_ivc2_5u23));
7761 }
7762
7763   current_cpu->done_insn (npc, status);
7764   return status;
7765 #undef FLD
7766 }
7767
7768 // ********** cpsllia1_1_p1: cpsllia1 $imm5p23
7769
7770 sem_status
7771 mepcop1_64_sem_cpsllia1_1_p1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7772 {
7773 #define FLD(f) abuf->fields.sfmt_cdsrli3_P0_P1.f
7774   sem_status status = SEM_STATUS_NORMAL;
7775   mepcop1_64_scache* abuf = sem;
7776   unsigned long long written = 0;
7777   PCADDR pc = abuf->addr;
7778   PCADDR npc = pc + 4;
7779
7780 {
7781 current_cpu->check_option_cp (pc);
7782   {
7783     SI opval = 0;
7784     if (UNLIKELY(current_cpu->trace_result_p))
7785       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
7786     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
7787   }
7788   {
7789     SI opval = 0;
7790     if (UNLIKELY(current_cpu->trace_result_p))
7791       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
7792     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
7793   }
7794   {
7795     SI opval = 0;
7796     if (UNLIKELY(current_cpu->trace_result_p))
7797       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
7798     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
7799   }
7800   {
7801     SI opval = 0;
7802     if (UNLIKELY(current_cpu->trace_result_p))
7803       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
7804     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
7805   }
7806   {
7807     SI opval = 0;
7808     if (UNLIKELY(current_cpu->trace_result_p))
7809       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7810     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7811   }
7812   {
7813     SI opval = 0;
7814     if (UNLIKELY(current_cpu->trace_result_p))
7815       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
7816     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
7817   }
7818   {
7819     SI opval = 0;
7820     if (UNLIKELY(current_cpu->trace_result_p))
7821       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
7822     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
7823   }
7824   {
7825     SI opval = 0;
7826     if (UNLIKELY(current_cpu->trace_result_p))
7827       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
7828     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
7829   }
7830 current_cpu->ivc2_cpsllia1 (pc, FLD (f_ivc2_5u23));
7831 }
7832
7833   current_cpu->done_insn (npc, status);
7834   return status;
7835 #undef FLD
7836 }
7837
7838 // ********** cpfmulia1s0u_b_P1: cpfmulia1s0u.b $crqp,$crpp,$simm8p0
7839
7840 sem_status
7841 mepcop1_64_sem_cpfmulia1s0u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7842 {
7843 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
7844   sem_status status = SEM_STATUS_NORMAL;
7845   mepcop1_64_scache* abuf = sem;
7846   unsigned long long written = 0;
7847   PCADDR pc = abuf->addr;
7848   PCADDR npc = pc + 4;
7849
7850 {
7851 current_cpu->check_option_cp (pc);
7852   {
7853     SI opval = 0;
7854     if (UNLIKELY(current_cpu->trace_result_p))
7855       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
7856     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
7857   }
7858   {
7859     SI opval = 0;
7860     if (UNLIKELY(current_cpu->trace_result_p))
7861       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
7862     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
7863   }
7864   {
7865     SI opval = 0;
7866     if (UNLIKELY(current_cpu->trace_result_p))
7867       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
7868     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
7869   }
7870   {
7871     SI opval = 0;
7872     if (UNLIKELY(current_cpu->trace_result_p))
7873       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
7874     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
7875   }
7876   {
7877     SI opval = 0;
7878     if (UNLIKELY(current_cpu->trace_result_p))
7879       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7880     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7881   }
7882   {
7883     SI opval = 0;
7884     if (UNLIKELY(current_cpu->trace_result_p))
7885       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
7886     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
7887   }
7888   {
7889     SI opval = 0;
7890     if (UNLIKELY(current_cpu->trace_result_p))
7891       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
7892     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
7893   }
7894   {
7895     SI opval = 0;
7896     if (UNLIKELY(current_cpu->trace_result_p))
7897       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
7898     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
7899   }
7900 current_cpu->ivc2_cpfmulia1s0u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
7901 }
7902
7903   current_cpu->done_insn (npc, status);
7904   return status;
7905 #undef FLD
7906 }
7907
7908 // ********** cpfmulia1s0_b_P1: cpfmulia1s0.b $crqp,$crpp,$simm8p0
7909
7910 sem_status
7911 mepcop1_64_sem_cpfmulia1s0_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7912 {
7913 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
7914   sem_status status = SEM_STATUS_NORMAL;
7915   mepcop1_64_scache* abuf = sem;
7916   unsigned long long written = 0;
7917   PCADDR pc = abuf->addr;
7918   PCADDR npc = pc + 4;
7919
7920 {
7921 current_cpu->check_option_cp (pc);
7922   {
7923     SI opval = 0;
7924     if (UNLIKELY(current_cpu->trace_result_p))
7925       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
7926     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
7927   }
7928   {
7929     SI opval = 0;
7930     if (UNLIKELY(current_cpu->trace_result_p))
7931       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
7932     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
7933   }
7934   {
7935     SI opval = 0;
7936     if (UNLIKELY(current_cpu->trace_result_p))
7937       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
7938     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
7939   }
7940   {
7941     SI opval = 0;
7942     if (UNLIKELY(current_cpu->trace_result_p))
7943       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
7944     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
7945   }
7946   {
7947     SI opval = 0;
7948     if (UNLIKELY(current_cpu->trace_result_p))
7949       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7950     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7951   }
7952   {
7953     SI opval = 0;
7954     if (UNLIKELY(current_cpu->trace_result_p))
7955       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
7956     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
7957   }
7958   {
7959     SI opval = 0;
7960     if (UNLIKELY(current_cpu->trace_result_p))
7961       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
7962     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
7963   }
7964   {
7965     SI opval = 0;
7966     if (UNLIKELY(current_cpu->trace_result_p))
7967       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
7968     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
7969   }
7970 current_cpu->ivc2_cpfmulia1s0_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
7971 }
7972
7973   current_cpu->done_insn (npc, status);
7974   return status;
7975 #undef FLD
7976 }
7977
7978 // ********** cpfmuliua1s0_h_P1: cpfmuliua1s0.h $crqp,$crpp,$simm8p0
7979
7980 sem_status
7981 mepcop1_64_sem_cpfmuliua1s0_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
7982 {
7983 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
7984   sem_status status = SEM_STATUS_NORMAL;
7985   mepcop1_64_scache* abuf = sem;
7986   unsigned long long written = 0;
7987   PCADDR pc = abuf->addr;
7988   PCADDR npc = pc + 4;
7989
7990 {
7991 current_cpu->check_option_cp (pc);
7992   {
7993     SI opval = 0;
7994     if (UNLIKELY(current_cpu->trace_result_p))
7995       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
7996     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
7997   }
7998   {
7999     SI opval = 0;
8000     if (UNLIKELY(current_cpu->trace_result_p))
8001       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8002     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8003   }
8004   {
8005     SI opval = 0;
8006     if (UNLIKELY(current_cpu->trace_result_p))
8007       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8008     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8009   }
8010   {
8011     SI opval = 0;
8012     if (UNLIKELY(current_cpu->trace_result_p))
8013       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8014     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8015   }
8016 current_cpu->ivc2_cpfmuliua1s0_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8017 }
8018
8019   current_cpu->done_insn (npc, status);
8020   return status;
8021 #undef FLD
8022 }
8023
8024 // ********** cpfmulila1s0_h_P1: cpfmulila1s0.h $crqp,$crpp,$simm8p0
8025
8026 sem_status
8027 mepcop1_64_sem_cpfmulila1s0_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8028 {
8029 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8030   sem_status status = SEM_STATUS_NORMAL;
8031   mepcop1_64_scache* abuf = sem;
8032   unsigned long long written = 0;
8033   PCADDR pc = abuf->addr;
8034   PCADDR npc = pc + 4;
8035
8036 {
8037 current_cpu->check_option_cp (pc);
8038   {
8039     SI opval = 0;
8040     if (UNLIKELY(current_cpu->trace_result_p))
8041       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8042     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8043   }
8044   {
8045     SI opval = 0;
8046     if (UNLIKELY(current_cpu->trace_result_p))
8047       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8048     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8049   }
8050   {
8051     SI opval = 0;
8052     if (UNLIKELY(current_cpu->trace_result_p))
8053       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8054     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8055   }
8056   {
8057     SI opval = 0;
8058     if (UNLIKELY(current_cpu->trace_result_p))
8059       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8060     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8061   }
8062 current_cpu->ivc2_cpfmulila1s0_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8063 }
8064
8065   current_cpu->done_insn (npc, status);
8066   return status;
8067 #undef FLD
8068 }
8069
8070 // ********** cpfmadia1s0u_b_P1: cpfmadia1s0u.b $crqp,$crpp,$simm8p0
8071
8072 sem_status
8073 mepcop1_64_sem_cpfmadia1s0u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8074 {
8075 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8076   sem_status status = SEM_STATUS_NORMAL;
8077   mepcop1_64_scache* abuf = sem;
8078   unsigned long long written = 0;
8079   PCADDR pc = abuf->addr;
8080   PCADDR npc = pc + 4;
8081
8082 {
8083 current_cpu->check_option_cp (pc);
8084   {
8085     SI opval = 0;
8086     if (UNLIKELY(current_cpu->trace_result_p))
8087       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8088     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8089   }
8090   {
8091     SI opval = 0;
8092     if (UNLIKELY(current_cpu->trace_result_p))
8093       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8094     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8095   }
8096   {
8097     SI opval = 0;
8098     if (UNLIKELY(current_cpu->trace_result_p))
8099       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8100     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8101   }
8102   {
8103     SI opval = 0;
8104     if (UNLIKELY(current_cpu->trace_result_p))
8105       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8106     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8107   }
8108   {
8109     SI opval = 0;
8110     if (UNLIKELY(current_cpu->trace_result_p))
8111       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8112     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8113   }
8114   {
8115     SI opval = 0;
8116     if (UNLIKELY(current_cpu->trace_result_p))
8117       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8118     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8119   }
8120   {
8121     SI opval = 0;
8122     if (UNLIKELY(current_cpu->trace_result_p))
8123       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8124     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8125   }
8126   {
8127     SI opval = 0;
8128     if (UNLIKELY(current_cpu->trace_result_p))
8129       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8130     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8131   }
8132   {
8133     SI opval = 0;
8134     if (UNLIKELY(current_cpu->trace_result_p))
8135       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
8136     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
8137   }
8138 current_cpu->ivc2_cpfmadia1s0u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8139 }
8140
8141   current_cpu->done_insn (npc, status);
8142   return status;
8143 #undef FLD
8144 }
8145
8146 // ********** cpfmadia1s0_b_P1: cpfmadia1s0.b $crqp,$crpp,$simm8p0
8147
8148 sem_status
8149 mepcop1_64_sem_cpfmadia1s0_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8150 {
8151 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8152   sem_status status = SEM_STATUS_NORMAL;
8153   mepcop1_64_scache* abuf = sem;
8154   unsigned long long written = 0;
8155   PCADDR pc = abuf->addr;
8156   PCADDR npc = pc + 4;
8157
8158 {
8159 current_cpu->check_option_cp (pc);
8160   {
8161     SI opval = 0;
8162     if (UNLIKELY(current_cpu->trace_result_p))
8163       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8164     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8165   }
8166   {
8167     SI opval = 0;
8168     if (UNLIKELY(current_cpu->trace_result_p))
8169       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8170     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8171   }
8172   {
8173     SI opval = 0;
8174     if (UNLIKELY(current_cpu->trace_result_p))
8175       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8176     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8177   }
8178   {
8179     SI opval = 0;
8180     if (UNLIKELY(current_cpu->trace_result_p))
8181       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8182     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8183   }
8184   {
8185     SI opval = 0;
8186     if (UNLIKELY(current_cpu->trace_result_p))
8187       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8188     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8189   }
8190   {
8191     SI opval = 0;
8192     if (UNLIKELY(current_cpu->trace_result_p))
8193       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8194     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8195   }
8196   {
8197     SI opval = 0;
8198     if (UNLIKELY(current_cpu->trace_result_p))
8199       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8200     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8201   }
8202   {
8203     SI opval = 0;
8204     if (UNLIKELY(current_cpu->trace_result_p))
8205       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8206     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8207   }
8208   {
8209     SI opval = 0;
8210     if (UNLIKELY(current_cpu->trace_result_p))
8211       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
8212     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
8213   }
8214 current_cpu->ivc2_cpfmadia1s0_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8215 }
8216
8217   current_cpu->done_insn (npc, status);
8218   return status;
8219 #undef FLD
8220 }
8221
8222 // ********** cpfmadiua1s0_h_P1: cpfmadiua1s0.h $crqp,$crpp,$simm8p0
8223
8224 sem_status
8225 mepcop1_64_sem_cpfmadiua1s0_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8226 {
8227 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8228   sem_status status = SEM_STATUS_NORMAL;
8229   mepcop1_64_scache* abuf = sem;
8230   unsigned long long written = 0;
8231   PCADDR pc = abuf->addr;
8232   PCADDR npc = pc + 4;
8233
8234 {
8235 current_cpu->check_option_cp (pc);
8236   {
8237     SI opval = 0;
8238     if (UNLIKELY(current_cpu->trace_result_p))
8239       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8240     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8241   }
8242   {
8243     SI opval = 0;
8244     if (UNLIKELY(current_cpu->trace_result_p))
8245       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8246     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8247   }
8248   {
8249     SI opval = 0;
8250     if (UNLIKELY(current_cpu->trace_result_p))
8251       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8252     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8253   }
8254   {
8255     SI opval = 0;
8256     if (UNLIKELY(current_cpu->trace_result_p))
8257       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8258     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8259   }
8260   {
8261     SI opval = 0;
8262     if (UNLIKELY(current_cpu->trace_result_p))
8263       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
8264     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
8265   }
8266 current_cpu->ivc2_cpfmadiua1s0_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8267 }
8268
8269   current_cpu->done_insn (npc, status);
8270   return status;
8271 #undef FLD
8272 }
8273
8274 // ********** cpfmadila1s0_h_P1: cpfmadila1s0.h $crqp,$crpp,$simm8p0
8275
8276 sem_status
8277 mepcop1_64_sem_cpfmadila1s0_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8278 {
8279 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8280   sem_status status = SEM_STATUS_NORMAL;
8281   mepcop1_64_scache* abuf = sem;
8282   unsigned long long written = 0;
8283   PCADDR pc = abuf->addr;
8284   PCADDR npc = pc + 4;
8285
8286 {
8287 current_cpu->check_option_cp (pc);
8288   {
8289     SI opval = 0;
8290     if (UNLIKELY(current_cpu->trace_result_p))
8291       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8292     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8293   }
8294   {
8295     SI opval = 0;
8296     if (UNLIKELY(current_cpu->trace_result_p))
8297       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8298     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8299   }
8300   {
8301     SI opval = 0;
8302     if (UNLIKELY(current_cpu->trace_result_p))
8303       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8304     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8305   }
8306   {
8307     SI opval = 0;
8308     if (UNLIKELY(current_cpu->trace_result_p))
8309       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8310     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8311   }
8312   {
8313     SI opval = 0;
8314     if (UNLIKELY(current_cpu->trace_result_p))
8315       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
8316     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
8317   }
8318 current_cpu->ivc2_cpfmadila1s0_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8319 }
8320
8321   current_cpu->done_insn (npc, status);
8322   return status;
8323 #undef FLD
8324 }
8325
8326 // ********** cpfmulia1s1u_b_P1: cpfmulia1s1u.b $crqp,$crpp,$simm8p0
8327
8328 sem_status
8329 mepcop1_64_sem_cpfmulia1s1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8330 {
8331 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8332   sem_status status = SEM_STATUS_NORMAL;
8333   mepcop1_64_scache* abuf = sem;
8334   unsigned long long written = 0;
8335   PCADDR pc = abuf->addr;
8336   PCADDR npc = pc + 4;
8337
8338 {
8339 current_cpu->check_option_cp (pc);
8340   {
8341     SI opval = 0;
8342     if (UNLIKELY(current_cpu->trace_result_p))
8343       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8344     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8345   }
8346   {
8347     SI opval = 0;
8348     if (UNLIKELY(current_cpu->trace_result_p))
8349       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8350     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8351   }
8352   {
8353     SI opval = 0;
8354     if (UNLIKELY(current_cpu->trace_result_p))
8355       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8356     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8357   }
8358   {
8359     SI opval = 0;
8360     if (UNLIKELY(current_cpu->trace_result_p))
8361       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8362     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8363   }
8364   {
8365     SI opval = 0;
8366     if (UNLIKELY(current_cpu->trace_result_p))
8367       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8368     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8369   }
8370   {
8371     SI opval = 0;
8372     if (UNLIKELY(current_cpu->trace_result_p))
8373       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8374     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8375   }
8376   {
8377     SI opval = 0;
8378     if (UNLIKELY(current_cpu->trace_result_p))
8379       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8380     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8381   }
8382   {
8383     SI opval = 0;
8384     if (UNLIKELY(current_cpu->trace_result_p))
8385       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8386     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8387   }
8388 current_cpu->ivc2_cpfmulia1s1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8389 }
8390
8391   current_cpu->done_insn (npc, status);
8392   return status;
8393 #undef FLD
8394 }
8395
8396 // ********** cpfmulia1s1_b_P1: cpfmulia1s1.b $crqp,$crpp,$simm8p0
8397
8398 sem_status
8399 mepcop1_64_sem_cpfmulia1s1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8400 {
8401 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8402   sem_status status = SEM_STATUS_NORMAL;
8403   mepcop1_64_scache* abuf = sem;
8404   unsigned long long written = 0;
8405   PCADDR pc = abuf->addr;
8406   PCADDR npc = pc + 4;
8407
8408 {
8409 current_cpu->check_option_cp (pc);
8410   {
8411     SI opval = 0;
8412     if (UNLIKELY(current_cpu->trace_result_p))
8413       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8414     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8415   }
8416   {
8417     SI opval = 0;
8418     if (UNLIKELY(current_cpu->trace_result_p))
8419       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8420     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8421   }
8422   {
8423     SI opval = 0;
8424     if (UNLIKELY(current_cpu->trace_result_p))
8425       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8426     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8427   }
8428   {
8429     SI opval = 0;
8430     if (UNLIKELY(current_cpu->trace_result_p))
8431       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8432     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8433   }
8434   {
8435     SI opval = 0;
8436     if (UNLIKELY(current_cpu->trace_result_p))
8437       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8438     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8439   }
8440   {
8441     SI opval = 0;
8442     if (UNLIKELY(current_cpu->trace_result_p))
8443       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8444     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8445   }
8446   {
8447     SI opval = 0;
8448     if (UNLIKELY(current_cpu->trace_result_p))
8449       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8450     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8451   }
8452   {
8453     SI opval = 0;
8454     if (UNLIKELY(current_cpu->trace_result_p))
8455       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8456     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8457   }
8458 current_cpu->ivc2_cpfmulia1s1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8459 }
8460
8461   current_cpu->done_insn (npc, status);
8462   return status;
8463 #undef FLD
8464 }
8465
8466 // ********** cpfmuliua1s1_h_P1: cpfmuliua1s1.h $crqp,$crpp,$simm8p0
8467
8468 sem_status
8469 mepcop1_64_sem_cpfmuliua1s1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8470 {
8471 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8472   sem_status status = SEM_STATUS_NORMAL;
8473   mepcop1_64_scache* abuf = sem;
8474   unsigned long long written = 0;
8475   PCADDR pc = abuf->addr;
8476   PCADDR npc = pc + 4;
8477
8478 {
8479 current_cpu->check_option_cp (pc);
8480   {
8481     SI opval = 0;
8482     if (UNLIKELY(current_cpu->trace_result_p))
8483       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8484     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8485   }
8486   {
8487     SI opval = 0;
8488     if (UNLIKELY(current_cpu->trace_result_p))
8489       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8490     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8491   }
8492   {
8493     SI opval = 0;
8494     if (UNLIKELY(current_cpu->trace_result_p))
8495       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8496     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8497   }
8498   {
8499     SI opval = 0;
8500     if (UNLIKELY(current_cpu->trace_result_p))
8501       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8502     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8503   }
8504 current_cpu->ivc2_cpfmuliua1s1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8505 }
8506
8507   current_cpu->done_insn (npc, status);
8508   return status;
8509 #undef FLD
8510 }
8511
8512 // ********** cpfmulila1s1_h_P1: cpfmulila1s1.h $crqp,$crpp,$simm8p0
8513
8514 sem_status
8515 mepcop1_64_sem_cpfmulila1s1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8516 {
8517 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8518   sem_status status = SEM_STATUS_NORMAL;
8519   mepcop1_64_scache* abuf = sem;
8520   unsigned long long written = 0;
8521   PCADDR pc = abuf->addr;
8522   PCADDR npc = pc + 4;
8523
8524 {
8525 current_cpu->check_option_cp (pc);
8526   {
8527     SI opval = 0;
8528     if (UNLIKELY(current_cpu->trace_result_p))
8529       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8530     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8531   }
8532   {
8533     SI opval = 0;
8534     if (UNLIKELY(current_cpu->trace_result_p))
8535       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8536     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8537   }
8538   {
8539     SI opval = 0;
8540     if (UNLIKELY(current_cpu->trace_result_p))
8541       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8542     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8543   }
8544   {
8545     SI opval = 0;
8546     if (UNLIKELY(current_cpu->trace_result_p))
8547       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8548     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8549   }
8550 current_cpu->ivc2_cpfmulila1s1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8551 }
8552
8553   current_cpu->done_insn (npc, status);
8554   return status;
8555 #undef FLD
8556 }
8557
8558 // ********** cpfmadia1s1u_b_P1: cpfmadia1s1u.b $crqp,$crpp,$simm8p0
8559
8560 sem_status
8561 mepcop1_64_sem_cpfmadia1s1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8562 {
8563 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8564   sem_status status = SEM_STATUS_NORMAL;
8565   mepcop1_64_scache* abuf = sem;
8566   unsigned long long written = 0;
8567   PCADDR pc = abuf->addr;
8568   PCADDR npc = pc + 4;
8569
8570 {
8571 current_cpu->check_option_cp (pc);
8572   {
8573     SI opval = 0;
8574     if (UNLIKELY(current_cpu->trace_result_p))
8575       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8576     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8577   }
8578   {
8579     SI opval = 0;
8580     if (UNLIKELY(current_cpu->trace_result_p))
8581       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8582     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8583   }
8584   {
8585     SI opval = 0;
8586     if (UNLIKELY(current_cpu->trace_result_p))
8587       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8588     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8589   }
8590   {
8591     SI opval = 0;
8592     if (UNLIKELY(current_cpu->trace_result_p))
8593       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8594     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8595   }
8596   {
8597     SI opval = 0;
8598     if (UNLIKELY(current_cpu->trace_result_p))
8599       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8600     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8601   }
8602   {
8603     SI opval = 0;
8604     if (UNLIKELY(current_cpu->trace_result_p))
8605       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8606     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8607   }
8608   {
8609     SI opval = 0;
8610     if (UNLIKELY(current_cpu->trace_result_p))
8611       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8612     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8613   }
8614   {
8615     SI opval = 0;
8616     if (UNLIKELY(current_cpu->trace_result_p))
8617       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8618     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8619   }
8620   {
8621     SI opval = 0;
8622     if (UNLIKELY(current_cpu->trace_result_p))
8623       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
8624     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
8625   }
8626 current_cpu->ivc2_cpfmadia1s1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8627 }
8628
8629   current_cpu->done_insn (npc, status);
8630   return status;
8631 #undef FLD
8632 }
8633
8634 // ********** cpfmadia1s1_b_P1: cpfmadia1s1.b $crqp,$crpp,$simm8p0
8635
8636 sem_status
8637 mepcop1_64_sem_cpfmadia1s1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8638 {
8639 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8640   sem_status status = SEM_STATUS_NORMAL;
8641   mepcop1_64_scache* abuf = sem;
8642   unsigned long long written = 0;
8643   PCADDR pc = abuf->addr;
8644   PCADDR npc = pc + 4;
8645
8646 {
8647 current_cpu->check_option_cp (pc);
8648   {
8649     SI opval = 0;
8650     if (UNLIKELY(current_cpu->trace_result_p))
8651       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8652     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8653   }
8654   {
8655     SI opval = 0;
8656     if (UNLIKELY(current_cpu->trace_result_p))
8657       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8658     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8659   }
8660   {
8661     SI opval = 0;
8662     if (UNLIKELY(current_cpu->trace_result_p))
8663       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8664     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8665   }
8666   {
8667     SI opval = 0;
8668     if (UNLIKELY(current_cpu->trace_result_p))
8669       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8670     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8671   }
8672   {
8673     SI opval = 0;
8674     if (UNLIKELY(current_cpu->trace_result_p))
8675       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8676     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8677   }
8678   {
8679     SI opval = 0;
8680     if (UNLIKELY(current_cpu->trace_result_p))
8681       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8682     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8683   }
8684   {
8685     SI opval = 0;
8686     if (UNLIKELY(current_cpu->trace_result_p))
8687       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8688     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8689   }
8690   {
8691     SI opval = 0;
8692     if (UNLIKELY(current_cpu->trace_result_p))
8693       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8694     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8695   }
8696   {
8697     SI opval = 0;
8698     if (UNLIKELY(current_cpu->trace_result_p))
8699       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
8700     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
8701   }
8702 current_cpu->ivc2_cpfmadia1s1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8703 }
8704
8705   current_cpu->done_insn (npc, status);
8706   return status;
8707 #undef FLD
8708 }
8709
8710 // ********** cpfmadiua1s1_h_P1: cpfmadiua1s1.h $crqp,$crpp,$simm8p0
8711
8712 sem_status
8713 mepcop1_64_sem_cpfmadiua1s1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8714 {
8715 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8716   sem_status status = SEM_STATUS_NORMAL;
8717   mepcop1_64_scache* abuf = sem;
8718   unsigned long long written = 0;
8719   PCADDR pc = abuf->addr;
8720   PCADDR npc = pc + 4;
8721
8722 {
8723 current_cpu->check_option_cp (pc);
8724   {
8725     SI opval = 0;
8726     if (UNLIKELY(current_cpu->trace_result_p))
8727       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8728     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8729   }
8730   {
8731     SI opval = 0;
8732     if (UNLIKELY(current_cpu->trace_result_p))
8733       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8734     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8735   }
8736   {
8737     SI opval = 0;
8738     if (UNLIKELY(current_cpu->trace_result_p))
8739       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8740     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8741   }
8742   {
8743     SI opval = 0;
8744     if (UNLIKELY(current_cpu->trace_result_p))
8745       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8746     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8747   }
8748   {
8749     SI opval = 0;
8750     if (UNLIKELY(current_cpu->trace_result_p))
8751       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
8752     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
8753   }
8754 current_cpu->ivc2_cpfmadiua1s1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8755 }
8756
8757   current_cpu->done_insn (npc, status);
8758   return status;
8759 #undef FLD
8760 }
8761
8762 // ********** cpfmadila1s1_h_P1: cpfmadila1s1.h $crqp,$crpp,$simm8p0
8763
8764 sem_status
8765 mepcop1_64_sem_cpfmadila1s1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8766 {
8767 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8768   sem_status status = SEM_STATUS_NORMAL;
8769   mepcop1_64_scache* abuf = sem;
8770   unsigned long long written = 0;
8771   PCADDR pc = abuf->addr;
8772   PCADDR npc = pc + 4;
8773
8774 {
8775 current_cpu->check_option_cp (pc);
8776   {
8777     SI opval = 0;
8778     if (UNLIKELY(current_cpu->trace_result_p))
8779       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8780     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8781   }
8782   {
8783     SI opval = 0;
8784     if (UNLIKELY(current_cpu->trace_result_p))
8785       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8786     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8787   }
8788   {
8789     SI opval = 0;
8790     if (UNLIKELY(current_cpu->trace_result_p))
8791       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8792     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8793   }
8794   {
8795     SI opval = 0;
8796     if (UNLIKELY(current_cpu->trace_result_p))
8797       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8798     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8799   }
8800   {
8801     SI opval = 0;
8802     if (UNLIKELY(current_cpu->trace_result_p))
8803       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
8804     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
8805   }
8806 current_cpu->ivc2_cpfmadila1s1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8807 }
8808
8809   current_cpu->done_insn (npc, status);
8810   return status;
8811 #undef FLD
8812 }
8813
8814 // ********** cpamulia1u_b_P1: cpamulia1u.b $crqp,$crpp,$simm8p0
8815
8816 sem_status
8817 mepcop1_64_sem_cpamulia1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8818 {
8819 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8820   sem_status status = SEM_STATUS_NORMAL;
8821   mepcop1_64_scache* abuf = sem;
8822   unsigned long long written = 0;
8823   PCADDR pc = abuf->addr;
8824   PCADDR npc = pc + 4;
8825
8826 {
8827 current_cpu->check_option_cp (pc);
8828   {
8829     SI opval = 0;
8830     if (UNLIKELY(current_cpu->trace_result_p))
8831       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8832     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8833   }
8834   {
8835     SI opval = 0;
8836     if (UNLIKELY(current_cpu->trace_result_p))
8837       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8838     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8839   }
8840   {
8841     SI opval = 0;
8842     if (UNLIKELY(current_cpu->trace_result_p))
8843       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8844     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8845   }
8846   {
8847     SI opval = 0;
8848     if (UNLIKELY(current_cpu->trace_result_p))
8849       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8850     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8851   }
8852   {
8853     SI opval = 0;
8854     if (UNLIKELY(current_cpu->trace_result_p))
8855       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8856     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8857   }
8858   {
8859     SI opval = 0;
8860     if (UNLIKELY(current_cpu->trace_result_p))
8861       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8862     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8863   }
8864   {
8865     SI opval = 0;
8866     if (UNLIKELY(current_cpu->trace_result_p))
8867       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8868     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8869   }
8870   {
8871     SI opval = 0;
8872     if (UNLIKELY(current_cpu->trace_result_p))
8873       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8874     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8875   }
8876 current_cpu->ivc2_cpamulia1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8877 }
8878
8879   current_cpu->done_insn (npc, status);
8880   return status;
8881 #undef FLD
8882 }
8883
8884 // ********** cpamulia1_b_P1: cpamulia1.b $crqp,$crpp,$simm8p0
8885
8886 sem_status
8887 mepcop1_64_sem_cpamulia1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8888 {
8889 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8890   sem_status status = SEM_STATUS_NORMAL;
8891   mepcop1_64_scache* abuf = sem;
8892   unsigned long long written = 0;
8893   PCADDR pc = abuf->addr;
8894   PCADDR npc = pc + 4;
8895
8896 {
8897 current_cpu->check_option_cp (pc);
8898   {
8899     SI opval = 0;
8900     if (UNLIKELY(current_cpu->trace_result_p))
8901       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
8902     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
8903   }
8904   {
8905     SI opval = 0;
8906     if (UNLIKELY(current_cpu->trace_result_p))
8907       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
8908     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
8909   }
8910   {
8911     SI opval = 0;
8912     if (UNLIKELY(current_cpu->trace_result_p))
8913       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
8914     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
8915   }
8916   {
8917     SI opval = 0;
8918     if (UNLIKELY(current_cpu->trace_result_p))
8919       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
8920     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
8921   }
8922   {
8923     SI opval = 0;
8924     if (UNLIKELY(current_cpu->trace_result_p))
8925       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8926     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8927   }
8928   {
8929     SI opval = 0;
8930     if (UNLIKELY(current_cpu->trace_result_p))
8931       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8932     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8933   }
8934   {
8935     SI opval = 0;
8936     if (UNLIKELY(current_cpu->trace_result_p))
8937       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8938     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8939   }
8940   {
8941     SI opval = 0;
8942     if (UNLIKELY(current_cpu->trace_result_p))
8943       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8944     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8945   }
8946 current_cpu->ivc2_cpamulia1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8947 }
8948
8949   current_cpu->done_insn (npc, status);
8950   return status;
8951 #undef FLD
8952 }
8953
8954 // ********** cpamuliua1_h_P1: cpamuliua1.h $crqp,$crpp,$simm8p0
8955
8956 sem_status
8957 mepcop1_64_sem_cpamuliua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
8958 {
8959 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
8960   sem_status status = SEM_STATUS_NORMAL;
8961   mepcop1_64_scache* abuf = sem;
8962   unsigned long long written = 0;
8963   PCADDR pc = abuf->addr;
8964   PCADDR npc = pc + 4;
8965
8966 {
8967 current_cpu->check_option_cp (pc);
8968   {
8969     SI opval = 0;
8970     if (UNLIKELY(current_cpu->trace_result_p))
8971       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
8972     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
8973   }
8974   {
8975     SI opval = 0;
8976     if (UNLIKELY(current_cpu->trace_result_p))
8977       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
8978     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
8979   }
8980   {
8981     SI opval = 0;
8982     if (UNLIKELY(current_cpu->trace_result_p))
8983       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
8984     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
8985   }
8986   {
8987     SI opval = 0;
8988     if (UNLIKELY(current_cpu->trace_result_p))
8989       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
8990     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
8991   }
8992 current_cpu->ivc2_cpamuliua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
8993 }
8994
8995   current_cpu->done_insn (npc, status);
8996   return status;
8997 #undef FLD
8998 }
8999
9000 // ********** cpamulila1_h_P1: cpamulila1.h $crqp,$crpp,$simm8p0
9001
9002 sem_status
9003 mepcop1_64_sem_cpamulila1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9004 {
9005 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9006   sem_status status = SEM_STATUS_NORMAL;
9007   mepcop1_64_scache* abuf = sem;
9008   unsigned long long written = 0;
9009   PCADDR pc = abuf->addr;
9010   PCADDR npc = pc + 4;
9011
9012 {
9013 current_cpu->check_option_cp (pc);
9014   {
9015     SI opval = 0;
9016     if (UNLIKELY(current_cpu->trace_result_p))
9017       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9018     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9019   }
9020   {
9021     SI opval = 0;
9022     if (UNLIKELY(current_cpu->trace_result_p))
9023       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9024     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9025   }
9026   {
9027     SI opval = 0;
9028     if (UNLIKELY(current_cpu->trace_result_p))
9029       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9030     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9031   }
9032   {
9033     SI opval = 0;
9034     if (UNLIKELY(current_cpu->trace_result_p))
9035       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9036     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9037   }
9038 current_cpu->ivc2_cpamulila1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
9039 }
9040
9041   current_cpu->done_insn (npc, status);
9042   return status;
9043 #undef FLD
9044 }
9045
9046 // ********** cpamadia1u_b_P1: cpamadia1u.b $crqp,$crpp,$simm8p0
9047
9048 sem_status
9049 mepcop1_64_sem_cpamadia1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9050 {
9051 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9052   sem_status status = SEM_STATUS_NORMAL;
9053   mepcop1_64_scache* abuf = sem;
9054   unsigned long long written = 0;
9055   PCADDR pc = abuf->addr;
9056   PCADDR npc = pc + 4;
9057
9058 {
9059 current_cpu->check_option_cp (pc);
9060   {
9061     SI opval = 0;
9062     if (UNLIKELY(current_cpu->trace_result_p))
9063       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9064     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9065   }
9066   {
9067     SI opval = 0;
9068     if (UNLIKELY(current_cpu->trace_result_p))
9069       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9070     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9071   }
9072   {
9073     SI opval = 0;
9074     if (UNLIKELY(current_cpu->trace_result_p))
9075       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9076     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9077   }
9078   {
9079     SI opval = 0;
9080     if (UNLIKELY(current_cpu->trace_result_p))
9081       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9082     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9083   }
9084   {
9085     SI opval = 0;
9086     if (UNLIKELY(current_cpu->trace_result_p))
9087       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9088     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9089   }
9090   {
9091     SI opval = 0;
9092     if (UNLIKELY(current_cpu->trace_result_p))
9093       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9094     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9095   }
9096   {
9097     SI opval = 0;
9098     if (UNLIKELY(current_cpu->trace_result_p))
9099       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9100     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9101   }
9102   {
9103     SI opval = 0;
9104     if (UNLIKELY(current_cpu->trace_result_p))
9105       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9106     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9107   }
9108   {
9109     SI opval = 0;
9110     if (UNLIKELY(current_cpu->trace_result_p))
9111       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
9112     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
9113   }
9114 current_cpu->ivc2_cpamadia1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
9115 }
9116
9117   current_cpu->done_insn (npc, status);
9118   return status;
9119 #undef FLD
9120 }
9121
9122 // ********** cpamadia1_b_P1: cpamadia1.b $crqp,$crpp,$simm8p0
9123
9124 sem_status
9125 mepcop1_64_sem_cpamadia1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9126 {
9127 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9128   sem_status status = SEM_STATUS_NORMAL;
9129   mepcop1_64_scache* abuf = sem;
9130   unsigned long long written = 0;
9131   PCADDR pc = abuf->addr;
9132   PCADDR npc = pc + 4;
9133
9134 {
9135 current_cpu->check_option_cp (pc);
9136   {
9137     SI opval = 0;
9138     if (UNLIKELY(current_cpu->trace_result_p))
9139       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9140     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9141   }
9142   {
9143     SI opval = 0;
9144     if (UNLIKELY(current_cpu->trace_result_p))
9145       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9146     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9147   }
9148   {
9149     SI opval = 0;
9150     if (UNLIKELY(current_cpu->trace_result_p))
9151       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9152     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9153   }
9154   {
9155     SI opval = 0;
9156     if (UNLIKELY(current_cpu->trace_result_p))
9157       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9158     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9159   }
9160   {
9161     SI opval = 0;
9162     if (UNLIKELY(current_cpu->trace_result_p))
9163       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9164     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9165   }
9166   {
9167     SI opval = 0;
9168     if (UNLIKELY(current_cpu->trace_result_p))
9169       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9170     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9171   }
9172   {
9173     SI opval = 0;
9174     if (UNLIKELY(current_cpu->trace_result_p))
9175       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9176     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9177   }
9178   {
9179     SI opval = 0;
9180     if (UNLIKELY(current_cpu->trace_result_p))
9181       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9182     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9183   }
9184   {
9185     SI opval = 0;
9186     if (UNLIKELY(current_cpu->trace_result_p))
9187       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
9188     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
9189   }
9190 current_cpu->ivc2_cpamadia1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
9191 }
9192
9193   current_cpu->done_insn (npc, status);
9194   return status;
9195 #undef FLD
9196 }
9197
9198 // ********** cpamadiua1_h_P1: cpamadiua1.h $crqp,$crpp,$simm8p0
9199
9200 sem_status
9201 mepcop1_64_sem_cpamadiua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9202 {
9203 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9204   sem_status status = SEM_STATUS_NORMAL;
9205   mepcop1_64_scache* abuf = sem;
9206   unsigned long long written = 0;
9207   PCADDR pc = abuf->addr;
9208   PCADDR npc = pc + 4;
9209
9210 {
9211 current_cpu->check_option_cp (pc);
9212   {
9213     SI opval = 0;
9214     if (UNLIKELY(current_cpu->trace_result_p))
9215       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9216     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9217   }
9218   {
9219     SI opval = 0;
9220     if (UNLIKELY(current_cpu->trace_result_p))
9221       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9222     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9223   }
9224   {
9225     SI opval = 0;
9226     if (UNLIKELY(current_cpu->trace_result_p))
9227       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9228     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9229   }
9230   {
9231     SI opval = 0;
9232     if (UNLIKELY(current_cpu->trace_result_p))
9233       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9234     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9235   }
9236   {
9237     SI opval = 0;
9238     if (UNLIKELY(current_cpu->trace_result_p))
9239       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
9240     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
9241   }
9242 current_cpu->ivc2_cpamadiua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
9243 }
9244
9245   current_cpu->done_insn (npc, status);
9246   return status;
9247 #undef FLD
9248 }
9249
9250 // ********** cpamadila1_h_P1: cpamadila1.h $crqp,$crpp,$simm8p0
9251
9252 sem_status
9253 mepcop1_64_sem_cpamadila1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9254 {
9255 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9256   sem_status status = SEM_STATUS_NORMAL;
9257   mepcop1_64_scache* abuf = sem;
9258   unsigned long long written = 0;
9259   PCADDR pc = abuf->addr;
9260   PCADDR npc = pc + 4;
9261
9262 {
9263 current_cpu->check_option_cp (pc);
9264   {
9265     SI opval = 0;
9266     if (UNLIKELY(current_cpu->trace_result_p))
9267       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9268     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9269   }
9270   {
9271     SI opval = 0;
9272     if (UNLIKELY(current_cpu->trace_result_p))
9273       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9274     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9275   }
9276   {
9277     SI opval = 0;
9278     if (UNLIKELY(current_cpu->trace_result_p))
9279       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9280     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9281   }
9282   {
9283     SI opval = 0;
9284     if (UNLIKELY(current_cpu->trace_result_p))
9285       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9286     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9287   }
9288   {
9289     SI opval = 0;
9290     if (UNLIKELY(current_cpu->trace_result_p))
9291       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
9292     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
9293   }
9294 current_cpu->ivc2_cpamadila1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_8s0));
9295 }
9296
9297   current_cpu->done_insn (npc, status);
9298   return status;
9299 #undef FLD
9300 }
9301
9302 // ********** cpfmulia1u_b_P1: cpfmulia1u.b $crqp,$crpp,$imm3p25,$simm8p0
9303
9304 sem_status
9305 mepcop1_64_sem_cpfmulia1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9306 {
9307 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9308   sem_status status = SEM_STATUS_NORMAL;
9309   mepcop1_64_scache* abuf = sem;
9310   unsigned long long written = 0;
9311   PCADDR pc = abuf->addr;
9312   PCADDR npc = pc + 4;
9313
9314 {
9315 current_cpu->check_option_cp (pc);
9316   {
9317     SI opval = 0;
9318     if (UNLIKELY(current_cpu->trace_result_p))
9319       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9320     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9321   }
9322   {
9323     SI opval = 0;
9324     if (UNLIKELY(current_cpu->trace_result_p))
9325       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9326     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9327   }
9328   {
9329     SI opval = 0;
9330     if (UNLIKELY(current_cpu->trace_result_p))
9331       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9332     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9333   }
9334   {
9335     SI opval = 0;
9336     if (UNLIKELY(current_cpu->trace_result_p))
9337       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9338     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9339   }
9340   {
9341     SI opval = 0;
9342     if (UNLIKELY(current_cpu->trace_result_p))
9343       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9344     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9345   }
9346   {
9347     SI opval = 0;
9348     if (UNLIKELY(current_cpu->trace_result_p))
9349       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9350     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9351   }
9352   {
9353     SI opval = 0;
9354     if (UNLIKELY(current_cpu->trace_result_p))
9355       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9356     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9357   }
9358   {
9359     SI opval = 0;
9360     if (UNLIKELY(current_cpu->trace_result_p))
9361       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9362     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9363   }
9364 current_cpu->ivc2_cpfmulia1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_3u25), FLD (f_ivc2_8s0));
9365 }
9366
9367   current_cpu->done_insn (npc, status);
9368   return status;
9369 #undef FLD
9370 }
9371
9372 // ********** cpfmulia1_b_P1: cpfmulia1.b $crqp,$crpp,$imm3p25,$simm8p0
9373
9374 sem_status
9375 mepcop1_64_sem_cpfmulia1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9376 {
9377 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9378   sem_status status = SEM_STATUS_NORMAL;
9379   mepcop1_64_scache* abuf = sem;
9380   unsigned long long written = 0;
9381   PCADDR pc = abuf->addr;
9382   PCADDR npc = pc + 4;
9383
9384 {
9385 current_cpu->check_option_cp (pc);
9386   {
9387     SI opval = 0;
9388     if (UNLIKELY(current_cpu->trace_result_p))
9389       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9390     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9391   }
9392   {
9393     SI opval = 0;
9394     if (UNLIKELY(current_cpu->trace_result_p))
9395       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9396     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9397   }
9398   {
9399     SI opval = 0;
9400     if (UNLIKELY(current_cpu->trace_result_p))
9401       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9402     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9403   }
9404   {
9405     SI opval = 0;
9406     if (UNLIKELY(current_cpu->trace_result_p))
9407       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9408     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9409   }
9410   {
9411     SI opval = 0;
9412     if (UNLIKELY(current_cpu->trace_result_p))
9413       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9414     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9415   }
9416   {
9417     SI opval = 0;
9418     if (UNLIKELY(current_cpu->trace_result_p))
9419       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9420     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9421   }
9422   {
9423     SI opval = 0;
9424     if (UNLIKELY(current_cpu->trace_result_p))
9425       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9426     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9427   }
9428   {
9429     SI opval = 0;
9430     if (UNLIKELY(current_cpu->trace_result_p))
9431       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9432     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9433   }
9434 current_cpu->ivc2_cpfmulia1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_3u25), FLD (f_ivc2_8s0));
9435 }
9436
9437   current_cpu->done_insn (npc, status);
9438   return status;
9439 #undef FLD
9440 }
9441
9442 // ********** cpfmuliua1_h_P1: cpfmuliua1.h $crqp,$crpp,$imm3p25,$simm8p0
9443
9444 sem_status
9445 mepcop1_64_sem_cpfmuliua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9446 {
9447 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9448   sem_status status = SEM_STATUS_NORMAL;
9449   mepcop1_64_scache* abuf = sem;
9450   unsigned long long written = 0;
9451   PCADDR pc = abuf->addr;
9452   PCADDR npc = pc + 4;
9453
9454 {
9455 current_cpu->check_option_cp (pc);
9456   {
9457     SI opval = 0;
9458     if (UNLIKELY(current_cpu->trace_result_p))
9459       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9460     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9461   }
9462   {
9463     SI opval = 0;
9464     if (UNLIKELY(current_cpu->trace_result_p))
9465       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9466     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9467   }
9468   {
9469     SI opval = 0;
9470     if (UNLIKELY(current_cpu->trace_result_p))
9471       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9472     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9473   }
9474   {
9475     SI opval = 0;
9476     if (UNLIKELY(current_cpu->trace_result_p))
9477       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9478     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9479   }
9480 current_cpu->ivc2_cpfmuliua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_3u25), FLD (f_ivc2_8s0));
9481 }
9482
9483   current_cpu->done_insn (npc, status);
9484   return status;
9485 #undef FLD
9486 }
9487
9488 // ********** cpfmulila1_h_P1: cpfmulila1.h $crqp,$crpp,$imm3p25,$simm8p0
9489
9490 sem_status
9491 mepcop1_64_sem_cpfmulila1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9492 {
9493 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9494   sem_status status = SEM_STATUS_NORMAL;
9495   mepcop1_64_scache* abuf = sem;
9496   unsigned long long written = 0;
9497   PCADDR pc = abuf->addr;
9498   PCADDR npc = pc + 4;
9499
9500 {
9501 current_cpu->check_option_cp (pc);
9502   {
9503     SI opval = 0;
9504     if (UNLIKELY(current_cpu->trace_result_p))
9505       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9506     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9507   }
9508   {
9509     SI opval = 0;
9510     if (UNLIKELY(current_cpu->trace_result_p))
9511       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9512     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9513   }
9514   {
9515     SI opval = 0;
9516     if (UNLIKELY(current_cpu->trace_result_p))
9517       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9518     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9519   }
9520   {
9521     SI opval = 0;
9522     if (UNLIKELY(current_cpu->trace_result_p))
9523       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9524     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9525   }
9526 current_cpu->ivc2_cpfmulila1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_3u25), FLD (f_ivc2_8s0));
9527 }
9528
9529   current_cpu->done_insn (npc, status);
9530   return status;
9531 #undef FLD
9532 }
9533
9534 // ********** cpfmadia1u_b_P1: cpfmadia1u.b $crqp,$crpp,$imm3p25,$simm8p0
9535
9536 sem_status
9537 mepcop1_64_sem_cpfmadia1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9538 {
9539 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9540   sem_status status = SEM_STATUS_NORMAL;
9541   mepcop1_64_scache* abuf = sem;
9542   unsigned long long written = 0;
9543   PCADDR pc = abuf->addr;
9544   PCADDR npc = pc + 4;
9545
9546 {
9547 current_cpu->check_option_cp (pc);
9548   {
9549     SI opval = 0;
9550     if (UNLIKELY(current_cpu->trace_result_p))
9551       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9552     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9553   }
9554   {
9555     SI opval = 0;
9556     if (UNLIKELY(current_cpu->trace_result_p))
9557       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9558     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9559   }
9560   {
9561     SI opval = 0;
9562     if (UNLIKELY(current_cpu->trace_result_p))
9563       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9564     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9565   }
9566   {
9567     SI opval = 0;
9568     if (UNLIKELY(current_cpu->trace_result_p))
9569       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9570     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9571   }
9572   {
9573     SI opval = 0;
9574     if (UNLIKELY(current_cpu->trace_result_p))
9575       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9576     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9577   }
9578   {
9579     SI opval = 0;
9580     if (UNLIKELY(current_cpu->trace_result_p))
9581       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9582     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9583   }
9584   {
9585     SI opval = 0;
9586     if (UNLIKELY(current_cpu->trace_result_p))
9587       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9588     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9589   }
9590   {
9591     SI opval = 0;
9592     if (UNLIKELY(current_cpu->trace_result_p))
9593       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9594     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9595   }
9596   {
9597     SI opval = 0;
9598     if (UNLIKELY(current_cpu->trace_result_p))
9599       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
9600     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
9601   }
9602 current_cpu->ivc2_cpfmadia1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_3u25), FLD (f_ivc2_8s0));
9603 }
9604
9605   current_cpu->done_insn (npc, status);
9606   return status;
9607 #undef FLD
9608 }
9609
9610 // ********** cpfmadia1_b_P1: cpfmadia1.b $crqp,$crpp,$imm3p25,$simm8p0
9611
9612 sem_status
9613 mepcop1_64_sem_cpfmadia1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9614 {
9615 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9616   sem_status status = SEM_STATUS_NORMAL;
9617   mepcop1_64_scache* abuf = sem;
9618   unsigned long long written = 0;
9619   PCADDR pc = abuf->addr;
9620   PCADDR npc = pc + 4;
9621
9622 {
9623 current_cpu->check_option_cp (pc);
9624   {
9625     SI opval = 0;
9626     if (UNLIKELY(current_cpu->trace_result_p))
9627       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9628     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9629   }
9630   {
9631     SI opval = 0;
9632     if (UNLIKELY(current_cpu->trace_result_p))
9633       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9634     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9635   }
9636   {
9637     SI opval = 0;
9638     if (UNLIKELY(current_cpu->trace_result_p))
9639       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9640     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9641   }
9642   {
9643     SI opval = 0;
9644     if (UNLIKELY(current_cpu->trace_result_p))
9645       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9646     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9647   }
9648   {
9649     SI opval = 0;
9650     if (UNLIKELY(current_cpu->trace_result_p))
9651       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9652     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9653   }
9654   {
9655     SI opval = 0;
9656     if (UNLIKELY(current_cpu->trace_result_p))
9657       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9658     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9659   }
9660   {
9661     SI opval = 0;
9662     if (UNLIKELY(current_cpu->trace_result_p))
9663       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9664     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9665   }
9666   {
9667     SI opval = 0;
9668     if (UNLIKELY(current_cpu->trace_result_p))
9669       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9670     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9671   }
9672   {
9673     SI opval = 0;
9674     if (UNLIKELY(current_cpu->trace_result_p))
9675       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
9676     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
9677   }
9678 current_cpu->ivc2_cpfmadia1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_3u25), FLD (f_ivc2_8s0));
9679 }
9680
9681   current_cpu->done_insn (npc, status);
9682   return status;
9683 #undef FLD
9684 }
9685
9686 // ********** cpfmadiua1_h_P1: cpfmadiua1.h $crqp,$crpp,$imm3p25,$simm8p0
9687
9688 sem_status
9689 mepcop1_64_sem_cpfmadiua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9690 {
9691 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9692   sem_status status = SEM_STATUS_NORMAL;
9693   mepcop1_64_scache* abuf = sem;
9694   unsigned long long written = 0;
9695   PCADDR pc = abuf->addr;
9696   PCADDR npc = pc + 4;
9697
9698 {
9699 current_cpu->check_option_cp (pc);
9700   {
9701     SI opval = 0;
9702     if (UNLIKELY(current_cpu->trace_result_p))
9703       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9704     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9705   }
9706   {
9707     SI opval = 0;
9708     if (UNLIKELY(current_cpu->trace_result_p))
9709       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9710     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9711   }
9712   {
9713     SI opval = 0;
9714     if (UNLIKELY(current_cpu->trace_result_p))
9715       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9716     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9717   }
9718   {
9719     SI opval = 0;
9720     if (UNLIKELY(current_cpu->trace_result_p))
9721       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9722     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9723   }
9724   {
9725     SI opval = 0;
9726     if (UNLIKELY(current_cpu->trace_result_p))
9727       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
9728     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
9729   }
9730 current_cpu->ivc2_cpfmadiua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_3u25), FLD (f_ivc2_8s0));
9731 }
9732
9733   current_cpu->done_insn (npc, status);
9734   return status;
9735 #undef FLD
9736 }
9737
9738 // ********** cpfmadila1_h_P1: cpfmadila1.h $crqp,$crpp,$imm3p25,$simm8p0
9739
9740 sem_status
9741 mepcop1_64_sem_cpfmadila1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9742 {
9743 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9744   sem_status status = SEM_STATUS_NORMAL;
9745   mepcop1_64_scache* abuf = sem;
9746   unsigned long long written = 0;
9747   PCADDR pc = abuf->addr;
9748   PCADDR npc = pc + 4;
9749
9750 {
9751 current_cpu->check_option_cp (pc);
9752   {
9753     SI opval = 0;
9754     if (UNLIKELY(current_cpu->trace_result_p))
9755       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9756     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9757   }
9758   {
9759     SI opval = 0;
9760     if (UNLIKELY(current_cpu->trace_result_p))
9761       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9762     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9763   }
9764   {
9765     SI opval = 0;
9766     if (UNLIKELY(current_cpu->trace_result_p))
9767       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9768     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9769   }
9770   {
9771     SI opval = 0;
9772     if (UNLIKELY(current_cpu->trace_result_p))
9773       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9774     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9775   }
9776   {
9777     SI opval = 0;
9778     if (UNLIKELY(current_cpu->trace_result_p))
9779       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
9780     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
9781   }
9782 current_cpu->ivc2_cpfmadila1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)], FLD (f_ivc2_3u25), FLD (f_ivc2_8s0));
9783 }
9784
9785   current_cpu->done_insn (npc, status);
9786   return status;
9787 #undef FLD
9788 }
9789
9790 // ********** cpssqa1u_b_P1: cpssqa1u.b $crqp,$crpp
9791
9792 sem_status
9793 mepcop1_64_sem_cpssqa1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9794 {
9795 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9796   sem_status status = SEM_STATUS_NORMAL;
9797   mepcop1_64_scache* abuf = sem;
9798   unsigned long long written = 0;
9799   PCADDR pc = abuf->addr;
9800   PCADDR npc = pc + 4;
9801
9802 {
9803 current_cpu->check_option_cp (pc);
9804   {
9805     SI opval = 0;
9806     if (UNLIKELY(current_cpu->trace_result_p))
9807       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9808     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9809   }
9810   {
9811     SI opval = 0;
9812     if (UNLIKELY(current_cpu->trace_result_p))
9813       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9814     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9815   }
9816   {
9817     SI opval = 0;
9818     if (UNLIKELY(current_cpu->trace_result_p))
9819       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9820     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9821   }
9822   {
9823     SI opval = 0;
9824     if (UNLIKELY(current_cpu->trace_result_p))
9825       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9826     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9827   }
9828   {
9829     SI opval = 0;
9830     if (UNLIKELY(current_cpu->trace_result_p))
9831       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9832     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9833   }
9834   {
9835     SI opval = 0;
9836     if (UNLIKELY(current_cpu->trace_result_p))
9837       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9838     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9839   }
9840   {
9841     SI opval = 0;
9842     if (UNLIKELY(current_cpu->trace_result_p))
9843       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9844     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9845   }
9846   {
9847     SI opval = 0;
9848     if (UNLIKELY(current_cpu->trace_result_p))
9849       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9850     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9851   }
9852 current_cpu->ivc2_cpssqa1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
9853 }
9854
9855   current_cpu->done_insn (npc, status);
9856   return status;
9857 #undef FLD
9858 }
9859
9860 // ********** cpssqa1_b_P1: cpssqa1.b $crqp,$crpp
9861
9862 sem_status
9863 mepcop1_64_sem_cpssqa1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9864 {
9865 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9866   sem_status status = SEM_STATUS_NORMAL;
9867   mepcop1_64_scache* abuf = sem;
9868   unsigned long long written = 0;
9869   PCADDR pc = abuf->addr;
9870   PCADDR npc = pc + 4;
9871
9872 {
9873 current_cpu->check_option_cp (pc);
9874   {
9875     SI opval = 0;
9876     if (UNLIKELY(current_cpu->trace_result_p))
9877       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9878     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9879   }
9880   {
9881     SI opval = 0;
9882     if (UNLIKELY(current_cpu->trace_result_p))
9883       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9884     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9885   }
9886   {
9887     SI opval = 0;
9888     if (UNLIKELY(current_cpu->trace_result_p))
9889       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9890     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9891   }
9892   {
9893     SI opval = 0;
9894     if (UNLIKELY(current_cpu->trace_result_p))
9895       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9896     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9897   }
9898   {
9899     SI opval = 0;
9900     if (UNLIKELY(current_cpu->trace_result_p))
9901       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9902     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9903   }
9904   {
9905     SI opval = 0;
9906     if (UNLIKELY(current_cpu->trace_result_p))
9907       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9908     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9909   }
9910   {
9911     SI opval = 0;
9912     if (UNLIKELY(current_cpu->trace_result_p))
9913       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9914     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9915   }
9916   {
9917     SI opval = 0;
9918     if (UNLIKELY(current_cpu->trace_result_p))
9919       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9920     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9921   }
9922 current_cpu->ivc2_cpssqa1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
9923 }
9924
9925   current_cpu->done_insn (npc, status);
9926   return status;
9927 #undef FLD
9928 }
9929
9930 // ********** cpssda1u_b_P1: cpssda1u.b $crqp,$crpp
9931
9932 sem_status
9933 mepcop1_64_sem_cpssda1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
9934 {
9935 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
9936   sem_status status = SEM_STATUS_NORMAL;
9937   mepcop1_64_scache* abuf = sem;
9938   unsigned long long written = 0;
9939   PCADDR pc = abuf->addr;
9940   PCADDR npc = pc + 4;
9941
9942 {
9943 current_cpu->check_option_cp (pc);
9944   {
9945     SI opval = 0;
9946     if (UNLIKELY(current_cpu->trace_result_p))
9947       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
9948     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
9949   }
9950   {
9951     SI opval = 0;
9952     if (UNLIKELY(current_cpu->trace_result_p))
9953       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
9954     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
9955   }
9956   {
9957     SI opval = 0;
9958     if (UNLIKELY(current_cpu->trace_result_p))
9959       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
9960     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
9961   }
9962   {
9963     SI opval = 0;
9964     if (UNLIKELY(current_cpu->trace_result_p))
9965       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
9966     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
9967   }
9968   {
9969     SI opval = 0;
9970     if (UNLIKELY(current_cpu->trace_result_p))
9971       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
9972     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
9973   }
9974   {
9975     SI opval = 0;
9976     if (UNLIKELY(current_cpu->trace_result_p))
9977       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
9978     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
9979   }
9980   {
9981     SI opval = 0;
9982     if (UNLIKELY(current_cpu->trace_result_p))
9983       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
9984     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
9985   }
9986   {
9987     SI opval = 0;
9988     if (UNLIKELY(current_cpu->trace_result_p))
9989       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
9990     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
9991   }
9992 current_cpu->ivc2_cpssda1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
9993 }
9994
9995   current_cpu->done_insn (npc, status);
9996   return status;
9997 #undef FLD
9998 }
9999
10000 // ********** cpssda1_b_P1: cpssda1.b $crqp,$crpp
10001
10002 sem_status
10003 mepcop1_64_sem_cpssda1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10004 {
10005 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10006   sem_status status = SEM_STATUS_NORMAL;
10007   mepcop1_64_scache* abuf = sem;
10008   unsigned long long written = 0;
10009   PCADDR pc = abuf->addr;
10010   PCADDR npc = pc + 4;
10011
10012 {
10013 current_cpu->check_option_cp (pc);
10014   {
10015     SI opval = 0;
10016     if (UNLIKELY(current_cpu->trace_result_p))
10017       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
10018     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
10019   }
10020   {
10021     SI opval = 0;
10022     if (UNLIKELY(current_cpu->trace_result_p))
10023       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
10024     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
10025   }
10026   {
10027     SI opval = 0;
10028     if (UNLIKELY(current_cpu->trace_result_p))
10029       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
10030     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
10031   }
10032   {
10033     SI opval = 0;
10034     if (UNLIKELY(current_cpu->trace_result_p))
10035       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
10036     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
10037   }
10038   {
10039     SI opval = 0;
10040     if (UNLIKELY(current_cpu->trace_result_p))
10041       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10042     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10043   }
10044   {
10045     SI opval = 0;
10046     if (UNLIKELY(current_cpu->trace_result_p))
10047       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10048     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10049   }
10050   {
10051     SI opval = 0;
10052     if (UNLIKELY(current_cpu->trace_result_p))
10053       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10054     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10055   }
10056   {
10057     SI opval = 0;
10058     if (UNLIKELY(current_cpu->trace_result_p))
10059       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10060     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10061   }
10062 current_cpu->ivc2_cpssda1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10063 }
10064
10065   current_cpu->done_insn (npc, status);
10066   return status;
10067 #undef FLD
10068 }
10069
10070 // ********** cpmula1u_b_P1: cpmula1u.b $crqp,$crpp
10071
10072 sem_status
10073 mepcop1_64_sem_cpmula1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10074 {
10075 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10076   sem_status status = SEM_STATUS_NORMAL;
10077   mepcop1_64_scache* abuf = sem;
10078   unsigned long long written = 0;
10079   PCADDR pc = abuf->addr;
10080   PCADDR npc = pc + 4;
10081
10082 {
10083 current_cpu->check_option_cp (pc);
10084   {
10085     SI opval = 0;
10086     if (UNLIKELY(current_cpu->trace_result_p))
10087       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
10088     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
10089   }
10090   {
10091     SI opval = 0;
10092     if (UNLIKELY(current_cpu->trace_result_p))
10093       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
10094     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
10095   }
10096   {
10097     SI opval = 0;
10098     if (UNLIKELY(current_cpu->trace_result_p))
10099       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
10100     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
10101   }
10102   {
10103     SI opval = 0;
10104     if (UNLIKELY(current_cpu->trace_result_p))
10105       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
10106     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
10107   }
10108   {
10109     SI opval = 0;
10110     if (UNLIKELY(current_cpu->trace_result_p))
10111       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10112     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10113   }
10114   {
10115     SI opval = 0;
10116     if (UNLIKELY(current_cpu->trace_result_p))
10117       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10118     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10119   }
10120   {
10121     SI opval = 0;
10122     if (UNLIKELY(current_cpu->trace_result_p))
10123       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10124     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10125   }
10126   {
10127     SI opval = 0;
10128     if (UNLIKELY(current_cpu->trace_result_p))
10129       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10130     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10131   }
10132 current_cpu->ivc2_cpmula1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10133 }
10134
10135   current_cpu->done_insn (npc, status);
10136   return status;
10137 #undef FLD
10138 }
10139
10140 // ********** cpmula1_b_P1: cpmula1.b $crqp,$crpp
10141
10142 sem_status
10143 mepcop1_64_sem_cpmula1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10144 {
10145 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10146   sem_status status = SEM_STATUS_NORMAL;
10147   mepcop1_64_scache* abuf = sem;
10148   unsigned long long written = 0;
10149   PCADDR pc = abuf->addr;
10150   PCADDR npc = pc + 4;
10151
10152 {
10153 current_cpu->check_option_cp (pc);
10154   {
10155     SI opval = 0;
10156     if (UNLIKELY(current_cpu->trace_result_p))
10157       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
10158     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
10159   }
10160   {
10161     SI opval = 0;
10162     if (UNLIKELY(current_cpu->trace_result_p))
10163       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
10164     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
10165   }
10166   {
10167     SI opval = 0;
10168     if (UNLIKELY(current_cpu->trace_result_p))
10169       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
10170     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
10171   }
10172   {
10173     SI opval = 0;
10174     if (UNLIKELY(current_cpu->trace_result_p))
10175       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
10176     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
10177   }
10178   {
10179     SI opval = 0;
10180     if (UNLIKELY(current_cpu->trace_result_p))
10181       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10182     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10183   }
10184   {
10185     SI opval = 0;
10186     if (UNLIKELY(current_cpu->trace_result_p))
10187       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10188     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10189   }
10190   {
10191     SI opval = 0;
10192     if (UNLIKELY(current_cpu->trace_result_p))
10193       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10194     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10195   }
10196   {
10197     SI opval = 0;
10198     if (UNLIKELY(current_cpu->trace_result_p))
10199       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10200     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10201   }
10202 current_cpu->ivc2_cpmula1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10203 }
10204
10205   current_cpu->done_insn (npc, status);
10206   return status;
10207 #undef FLD
10208 }
10209
10210 // ********** cpmulua1_h_P1: cpmulua1.h $crqp,$crpp
10211
10212 sem_status
10213 mepcop1_64_sem_cpmulua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10214 {
10215 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10216   sem_status status = SEM_STATUS_NORMAL;
10217   mepcop1_64_scache* abuf = sem;
10218   unsigned long long written = 0;
10219   PCADDR pc = abuf->addr;
10220   PCADDR npc = pc + 4;
10221
10222 {
10223 current_cpu->check_option_cp (pc);
10224   {
10225     SI opval = 0;
10226     if (UNLIKELY(current_cpu->trace_result_p))
10227       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10228     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10229   }
10230   {
10231     SI opval = 0;
10232     if (UNLIKELY(current_cpu->trace_result_p))
10233       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10234     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10235   }
10236   {
10237     SI opval = 0;
10238     if (UNLIKELY(current_cpu->trace_result_p))
10239       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10240     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10241   }
10242   {
10243     SI opval = 0;
10244     if (UNLIKELY(current_cpu->trace_result_p))
10245       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10246     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10247   }
10248 current_cpu->ivc2_cpmulua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10249 }
10250
10251   current_cpu->done_insn (npc, status);
10252   return status;
10253 #undef FLD
10254 }
10255
10256 // ********** cpmulla1_h_P1: cpmulla1.h $crqp,$crpp
10257
10258 sem_status
10259 mepcop1_64_sem_cpmulla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10260 {
10261 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10262   sem_status status = SEM_STATUS_NORMAL;
10263   mepcop1_64_scache* abuf = sem;
10264   unsigned long long written = 0;
10265   PCADDR pc = abuf->addr;
10266   PCADDR npc = pc + 4;
10267
10268 {
10269 current_cpu->check_option_cp (pc);
10270   {
10271     SI opval = 0;
10272     if (UNLIKELY(current_cpu->trace_result_p))
10273       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
10274     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
10275   }
10276   {
10277     SI opval = 0;
10278     if (UNLIKELY(current_cpu->trace_result_p))
10279       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
10280     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
10281   }
10282   {
10283     SI opval = 0;
10284     if (UNLIKELY(current_cpu->trace_result_p))
10285       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
10286     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
10287   }
10288   {
10289     SI opval = 0;
10290     if (UNLIKELY(current_cpu->trace_result_p))
10291       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
10292     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
10293   }
10294 current_cpu->ivc2_cpmulla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10295 }
10296
10297   current_cpu->done_insn (npc, status);
10298   return status;
10299 #undef FLD
10300 }
10301
10302 // ********** cpmulua1u_w_P1: cpmulua1u.w $crqp,$crpp
10303
10304 sem_status
10305 mepcop1_64_sem_cpmulua1u_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10306 {
10307 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10308   sem_status status = SEM_STATUS_NORMAL;
10309   mepcop1_64_scache* abuf = sem;
10310   unsigned long long written = 0;
10311   PCADDR pc = abuf->addr;
10312   PCADDR npc = pc + 4;
10313
10314 {
10315 current_cpu->check_option_cp (pc);
10316   {
10317     SI opval = 0;
10318     if (UNLIKELY(current_cpu->trace_result_p))
10319       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10320     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10321   }
10322   {
10323     SI opval = 0;
10324     if (UNLIKELY(current_cpu->trace_result_p))
10325       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10326     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10327   }
10328   {
10329     SI opval = 0;
10330     if (UNLIKELY(current_cpu->trace_result_p))
10331       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10332     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10333   }
10334   {
10335     SI opval = 0;
10336     if (UNLIKELY(current_cpu->trace_result_p))
10337       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10338     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10339   }
10340 current_cpu->ivc2_cpmulua1u_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10341 }
10342
10343   current_cpu->done_insn (npc, status);
10344   return status;
10345 #undef FLD
10346 }
10347
10348 // ********** cpmulla1u_w_P1: cpmulla1u.w $crqp,$crpp
10349
10350 sem_status
10351 mepcop1_64_sem_cpmulla1u_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10352 {
10353 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10354   sem_status status = SEM_STATUS_NORMAL;
10355   mepcop1_64_scache* abuf = sem;
10356   unsigned long long written = 0;
10357   PCADDR pc = abuf->addr;
10358   PCADDR npc = pc + 4;
10359
10360 {
10361 current_cpu->check_option_cp (pc);
10362   {
10363     SI opval = 0;
10364     if (UNLIKELY(current_cpu->trace_result_p))
10365       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
10366     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
10367   }
10368   {
10369     SI opval = 0;
10370     if (UNLIKELY(current_cpu->trace_result_p))
10371       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
10372     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
10373   }
10374   {
10375     SI opval = 0;
10376     if (UNLIKELY(current_cpu->trace_result_p))
10377       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
10378     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
10379   }
10380   {
10381     SI opval = 0;
10382     if (UNLIKELY(current_cpu->trace_result_p))
10383       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
10384     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
10385   }
10386 current_cpu->ivc2_cpmulla1u_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10387 }
10388
10389   current_cpu->done_insn (npc, status);
10390   return status;
10391 #undef FLD
10392 }
10393
10394 // ********** cpmulua1_w_P1: cpmulua1.w $crqp,$crpp
10395
10396 sem_status
10397 mepcop1_64_sem_cpmulua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10398 {
10399 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10400   sem_status status = SEM_STATUS_NORMAL;
10401   mepcop1_64_scache* abuf = sem;
10402   unsigned long long written = 0;
10403   PCADDR pc = abuf->addr;
10404   PCADDR npc = pc + 4;
10405
10406 {
10407 current_cpu->check_option_cp (pc);
10408   {
10409     SI opval = 0;
10410     if (UNLIKELY(current_cpu->trace_result_p))
10411       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10412     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10413   }
10414   {
10415     SI opval = 0;
10416     if (UNLIKELY(current_cpu->trace_result_p))
10417       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10418     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10419   }
10420   {
10421     SI opval = 0;
10422     if (UNLIKELY(current_cpu->trace_result_p))
10423       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10424     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10425   }
10426   {
10427     SI opval = 0;
10428     if (UNLIKELY(current_cpu->trace_result_p))
10429       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10430     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10431   }
10432 current_cpu->ivc2_cpmulua1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10433 }
10434
10435   current_cpu->done_insn (npc, status);
10436   return status;
10437 #undef FLD
10438 }
10439
10440 // ********** cpmulla1_w_P1: cpmulla1.w $crqp,$crpp
10441
10442 sem_status
10443 mepcop1_64_sem_cpmulla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10444 {
10445 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10446   sem_status status = SEM_STATUS_NORMAL;
10447   mepcop1_64_scache* abuf = sem;
10448   unsigned long long written = 0;
10449   PCADDR pc = abuf->addr;
10450   PCADDR npc = pc + 4;
10451
10452 {
10453 current_cpu->check_option_cp (pc);
10454   {
10455     SI opval = 0;
10456     if (UNLIKELY(current_cpu->trace_result_p))
10457       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
10458     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
10459   }
10460   {
10461     SI opval = 0;
10462     if (UNLIKELY(current_cpu->trace_result_p))
10463       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
10464     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
10465   }
10466   {
10467     SI opval = 0;
10468     if (UNLIKELY(current_cpu->trace_result_p))
10469       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
10470     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
10471   }
10472   {
10473     SI opval = 0;
10474     if (UNLIKELY(current_cpu->trace_result_p))
10475       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
10476     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
10477   }
10478 current_cpu->ivc2_cpmulla1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10479 }
10480
10481   current_cpu->done_insn (npc, status);
10482   return status;
10483 #undef FLD
10484 }
10485
10486 // ********** cpmada1u_b_P1: cpmada1u.b $crqp,$crpp
10487
10488 sem_status
10489 mepcop1_64_sem_cpmada1u_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10490 {
10491 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10492   sem_status status = SEM_STATUS_NORMAL;
10493   mepcop1_64_scache* abuf = sem;
10494   unsigned long long written = 0;
10495   PCADDR pc = abuf->addr;
10496   PCADDR npc = pc + 4;
10497
10498 {
10499 current_cpu->check_option_cp (pc);
10500   {
10501     SI opval = 0;
10502     if (UNLIKELY(current_cpu->trace_result_p))
10503       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
10504     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
10505   }
10506   {
10507     SI opval = 0;
10508     if (UNLIKELY(current_cpu->trace_result_p))
10509       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
10510     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
10511   }
10512   {
10513     SI opval = 0;
10514     if (UNLIKELY(current_cpu->trace_result_p))
10515       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
10516     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
10517   }
10518   {
10519     SI opval = 0;
10520     if (UNLIKELY(current_cpu->trace_result_p))
10521       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
10522     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
10523   }
10524   {
10525     SI opval = 0;
10526     if (UNLIKELY(current_cpu->trace_result_p))
10527       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10528     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10529   }
10530   {
10531     SI opval = 0;
10532     if (UNLIKELY(current_cpu->trace_result_p))
10533       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10534     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10535   }
10536   {
10537     SI opval = 0;
10538     if (UNLIKELY(current_cpu->trace_result_p))
10539       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10540     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10541   }
10542   {
10543     SI opval = 0;
10544     if (UNLIKELY(current_cpu->trace_result_p))
10545       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10546     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10547   }
10548   {
10549     SI opval = 0;
10550     if (UNLIKELY(current_cpu->trace_result_p))
10551       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
10552     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
10553   }
10554 current_cpu->ivc2_cpmada1u_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10555 }
10556
10557   current_cpu->done_insn (npc, status);
10558   return status;
10559 #undef FLD
10560 }
10561
10562 // ********** cpmada1_b_P1: cpmada1.b $crqp,$crpp
10563
10564 sem_status
10565 mepcop1_64_sem_cpmada1_b_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10566 {
10567 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10568   sem_status status = SEM_STATUS_NORMAL;
10569   mepcop1_64_scache* abuf = sem;
10570   unsigned long long written = 0;
10571   PCADDR pc = abuf->addr;
10572   PCADDR npc = pc + 4;
10573
10574 {
10575 current_cpu->check_option_cp (pc);
10576   {
10577     SI opval = 0;
10578     if (UNLIKELY(current_cpu->trace_result_p))
10579       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
10580     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
10581   }
10582   {
10583     SI opval = 0;
10584     if (UNLIKELY(current_cpu->trace_result_p))
10585       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
10586     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
10587   }
10588   {
10589     SI opval = 0;
10590     if (UNLIKELY(current_cpu->trace_result_p))
10591       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
10592     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
10593   }
10594   {
10595     SI opval = 0;
10596     if (UNLIKELY(current_cpu->trace_result_p))
10597       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
10598     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
10599   }
10600   {
10601     SI opval = 0;
10602     if (UNLIKELY(current_cpu->trace_result_p))
10603       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10604     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10605   }
10606   {
10607     SI opval = 0;
10608     if (UNLIKELY(current_cpu->trace_result_p))
10609       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10610     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10611   }
10612   {
10613     SI opval = 0;
10614     if (UNLIKELY(current_cpu->trace_result_p))
10615       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10616     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10617   }
10618   {
10619     SI opval = 0;
10620     if (UNLIKELY(current_cpu->trace_result_p))
10621       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10622     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10623   }
10624   {
10625     SI opval = 0;
10626     if (UNLIKELY(current_cpu->trace_result_p))
10627       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
10628     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
10629   }
10630 current_cpu->ivc2_cpmada1_b (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10631 }
10632
10633   current_cpu->done_insn (npc, status);
10634   return status;
10635 #undef FLD
10636 }
10637
10638 // ********** cpmadua1_h_P1: cpmadua1.h $crqp,$crpp
10639
10640 sem_status
10641 mepcop1_64_sem_cpmadua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10642 {
10643 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10644   sem_status status = SEM_STATUS_NORMAL;
10645   mepcop1_64_scache* abuf = sem;
10646   unsigned long long written = 0;
10647   PCADDR pc = abuf->addr;
10648   PCADDR npc = pc + 4;
10649
10650 {
10651 current_cpu->check_option_cp (pc);
10652   {
10653     SI opval = 0;
10654     if (UNLIKELY(current_cpu->trace_result_p))
10655       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10656     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10657   }
10658   {
10659     SI opval = 0;
10660     if (UNLIKELY(current_cpu->trace_result_p))
10661       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10662     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10663   }
10664   {
10665     SI opval = 0;
10666     if (UNLIKELY(current_cpu->trace_result_p))
10667       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10668     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10669   }
10670   {
10671     SI opval = 0;
10672     if (UNLIKELY(current_cpu->trace_result_p))
10673       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10674     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10675   }
10676   {
10677     SI opval = 0;
10678     if (UNLIKELY(current_cpu->trace_result_p))
10679       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
10680     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
10681   }
10682 current_cpu->ivc2_cpmadua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10683 }
10684
10685   current_cpu->done_insn (npc, status);
10686   return status;
10687 #undef FLD
10688 }
10689
10690 // ********** cpmadla1_h_P1: cpmadla1.h $crqp,$crpp
10691
10692 sem_status
10693 mepcop1_64_sem_cpmadla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10694 {
10695 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10696   sem_status status = SEM_STATUS_NORMAL;
10697   mepcop1_64_scache* abuf = sem;
10698   unsigned long long written = 0;
10699   PCADDR pc = abuf->addr;
10700   PCADDR npc = pc + 4;
10701
10702 {
10703 current_cpu->check_option_cp (pc);
10704   {
10705     SI opval = 0;
10706     if (UNLIKELY(current_cpu->trace_result_p))
10707       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
10708     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
10709   }
10710   {
10711     SI opval = 0;
10712     if (UNLIKELY(current_cpu->trace_result_p))
10713       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
10714     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
10715   }
10716   {
10717     SI opval = 0;
10718     if (UNLIKELY(current_cpu->trace_result_p))
10719       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
10720     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
10721   }
10722   {
10723     SI opval = 0;
10724     if (UNLIKELY(current_cpu->trace_result_p))
10725       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
10726     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
10727   }
10728   {
10729     SI opval = 0;
10730     if (UNLIKELY(current_cpu->trace_result_p))
10731       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
10732     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
10733   }
10734 current_cpu->ivc2_cpmadla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10735 }
10736
10737   current_cpu->done_insn (npc, status);
10738   return status;
10739 #undef FLD
10740 }
10741
10742 // ********** cpmadua1u_w_P1: cpmadua1u.w $crqp,$crpp
10743
10744 sem_status
10745 mepcop1_64_sem_cpmadua1u_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10746 {
10747 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10748   sem_status status = SEM_STATUS_NORMAL;
10749   mepcop1_64_scache* abuf = sem;
10750   unsigned long long written = 0;
10751   PCADDR pc = abuf->addr;
10752   PCADDR npc = pc + 4;
10753
10754 {
10755 current_cpu->check_option_cp (pc);
10756   {
10757     SI opval = 0;
10758     if (UNLIKELY(current_cpu->trace_result_p))
10759       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10760     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10761   }
10762   {
10763     SI opval = 0;
10764     if (UNLIKELY(current_cpu->trace_result_p))
10765       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10766     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10767   }
10768   {
10769     SI opval = 0;
10770     if (UNLIKELY(current_cpu->trace_result_p))
10771       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10772     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10773   }
10774   {
10775     SI opval = 0;
10776     if (UNLIKELY(current_cpu->trace_result_p))
10777       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10778     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10779   }
10780   {
10781     SI opval = 0;
10782     if (UNLIKELY(current_cpu->trace_result_p))
10783       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
10784     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
10785   }
10786 current_cpu->ivc2_cpmadua1u_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10787 }
10788
10789   current_cpu->done_insn (npc, status);
10790   return status;
10791 #undef FLD
10792 }
10793
10794 // ********** cpmadla1u_w_P1: cpmadla1u.w $crqp,$crpp
10795
10796 sem_status
10797 mepcop1_64_sem_cpmadla1u_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10798 {
10799 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10800   sem_status status = SEM_STATUS_NORMAL;
10801   mepcop1_64_scache* abuf = sem;
10802   unsigned long long written = 0;
10803   PCADDR pc = abuf->addr;
10804   PCADDR npc = pc + 4;
10805
10806 {
10807 current_cpu->check_option_cp (pc);
10808   {
10809     SI opval = 0;
10810     if (UNLIKELY(current_cpu->trace_result_p))
10811       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
10812     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
10813   }
10814   {
10815     SI opval = 0;
10816     if (UNLIKELY(current_cpu->trace_result_p))
10817       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
10818     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
10819   }
10820   {
10821     SI opval = 0;
10822     if (UNLIKELY(current_cpu->trace_result_p))
10823       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
10824     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
10825   }
10826   {
10827     SI opval = 0;
10828     if (UNLIKELY(current_cpu->trace_result_p))
10829       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
10830     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
10831   }
10832   {
10833     SI opval = 0;
10834     if (UNLIKELY(current_cpu->trace_result_p))
10835       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
10836     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
10837   }
10838 current_cpu->ivc2_cpmadla1u_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10839 }
10840
10841   current_cpu->done_insn (npc, status);
10842   return status;
10843 #undef FLD
10844 }
10845
10846 // ********** cpmadua1_w_P1: cpmadua1.w $crqp,$crpp
10847
10848 sem_status
10849 mepcop1_64_sem_cpmadua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10850 {
10851 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10852   sem_status status = SEM_STATUS_NORMAL;
10853   mepcop1_64_scache* abuf = sem;
10854   unsigned long long written = 0;
10855   PCADDR pc = abuf->addr;
10856   PCADDR npc = pc + 4;
10857
10858 {
10859 current_cpu->check_option_cp (pc);
10860   {
10861     SI opval = 0;
10862     if (UNLIKELY(current_cpu->trace_result_p))
10863       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10864     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10865   }
10866   {
10867     SI opval = 0;
10868     if (UNLIKELY(current_cpu->trace_result_p))
10869       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10870     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10871   }
10872   {
10873     SI opval = 0;
10874     if (UNLIKELY(current_cpu->trace_result_p))
10875       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10876     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10877   }
10878   {
10879     SI opval = 0;
10880     if (UNLIKELY(current_cpu->trace_result_p))
10881       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10882     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10883   }
10884   {
10885     SI opval = 0;
10886     if (UNLIKELY(current_cpu->trace_result_p))
10887       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
10888     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
10889   }
10890 current_cpu->ivc2_cpmadua1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10891 }
10892
10893   current_cpu->done_insn (npc, status);
10894   return status;
10895 #undef FLD
10896 }
10897
10898 // ********** cpmadla1_w_P1: cpmadla1.w $crqp,$crpp
10899
10900 sem_status
10901 mepcop1_64_sem_cpmadla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10902 {
10903 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10904   sem_status status = SEM_STATUS_NORMAL;
10905   mepcop1_64_scache* abuf = sem;
10906   unsigned long long written = 0;
10907   PCADDR pc = abuf->addr;
10908   PCADDR npc = pc + 4;
10909
10910 {
10911 current_cpu->check_option_cp (pc);
10912   {
10913     SI opval = 0;
10914     if (UNLIKELY(current_cpu->trace_result_p))
10915       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
10916     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
10917   }
10918   {
10919     SI opval = 0;
10920     if (UNLIKELY(current_cpu->trace_result_p))
10921       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
10922     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
10923   }
10924   {
10925     SI opval = 0;
10926     if (UNLIKELY(current_cpu->trace_result_p))
10927       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
10928     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
10929   }
10930   {
10931     SI opval = 0;
10932     if (UNLIKELY(current_cpu->trace_result_p))
10933       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
10934     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
10935   }
10936   {
10937     SI opval = 0;
10938     if (UNLIKELY(current_cpu->trace_result_p))
10939       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
10940     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
10941   }
10942 current_cpu->ivc2_cpmadla1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10943 }
10944
10945   current_cpu->done_insn (npc, status);
10946   return status;
10947 #undef FLD
10948 }
10949
10950 // ********** cpmsbua1_h_P1: cpmsbua1.h $crqp,$crpp
10951
10952 sem_status
10953 mepcop1_64_sem_cpmsbua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
10954 {
10955 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
10956   sem_status status = SEM_STATUS_NORMAL;
10957   mepcop1_64_scache* abuf = sem;
10958   unsigned long long written = 0;
10959   PCADDR pc = abuf->addr;
10960   PCADDR npc = pc + 4;
10961
10962 {
10963 current_cpu->check_option_cp (pc);
10964   {
10965     SI opval = 0;
10966     if (UNLIKELY(current_cpu->trace_result_p))
10967       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
10968     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
10969   }
10970   {
10971     SI opval = 0;
10972     if (UNLIKELY(current_cpu->trace_result_p))
10973       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
10974     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
10975   }
10976   {
10977     SI opval = 0;
10978     if (UNLIKELY(current_cpu->trace_result_p))
10979       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
10980     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
10981   }
10982   {
10983     SI opval = 0;
10984     if (UNLIKELY(current_cpu->trace_result_p))
10985       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
10986     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
10987   }
10988   {
10989     SI opval = 0;
10990     if (UNLIKELY(current_cpu->trace_result_p))
10991       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
10992     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
10993   }
10994 current_cpu->ivc2_cpmsbua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
10995 }
10996
10997   current_cpu->done_insn (npc, status);
10998   return status;
10999 #undef FLD
11000 }
11001
11002 // ********** cpmsbla1_h_P1: cpmsbla1.h $crqp,$crpp
11003
11004 sem_status
11005 mepcop1_64_sem_cpmsbla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11006 {
11007 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11008   sem_status status = SEM_STATUS_NORMAL;
11009   mepcop1_64_scache* abuf = sem;
11010   unsigned long long written = 0;
11011   PCADDR pc = abuf->addr;
11012   PCADDR npc = pc + 4;
11013
11014 {
11015 current_cpu->check_option_cp (pc);
11016   {
11017     SI opval = 0;
11018     if (UNLIKELY(current_cpu->trace_result_p))
11019       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
11020     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
11021   }
11022   {
11023     SI opval = 0;
11024     if (UNLIKELY(current_cpu->trace_result_p))
11025       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
11026     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
11027   }
11028   {
11029     SI opval = 0;
11030     if (UNLIKELY(current_cpu->trace_result_p))
11031       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
11032     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
11033   }
11034   {
11035     SI opval = 0;
11036     if (UNLIKELY(current_cpu->trace_result_p))
11037       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
11038     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
11039   }
11040   {
11041     SI opval = 0;
11042     if (UNLIKELY(current_cpu->trace_result_p))
11043       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11044     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11045   }
11046 current_cpu->ivc2_cpmsbla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11047 }
11048
11049   current_cpu->done_insn (npc, status);
11050   return status;
11051 #undef FLD
11052 }
11053
11054 // ********** cpmsbua1u_w_P1: cpmsbua1u.w $crqp,$crpp
11055
11056 sem_status
11057 mepcop1_64_sem_cpmsbua1u_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11058 {
11059 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11060   sem_status status = SEM_STATUS_NORMAL;
11061   mepcop1_64_scache* abuf = sem;
11062   unsigned long long written = 0;
11063   PCADDR pc = abuf->addr;
11064   PCADDR npc = pc + 4;
11065
11066 {
11067 current_cpu->check_option_cp (pc);
11068   {
11069     SI opval = 0;
11070     if (UNLIKELY(current_cpu->trace_result_p))
11071       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
11072     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
11073   }
11074   {
11075     SI opval = 0;
11076     if (UNLIKELY(current_cpu->trace_result_p))
11077       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
11078     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
11079   }
11080   {
11081     SI opval = 0;
11082     if (UNLIKELY(current_cpu->trace_result_p))
11083       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
11084     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
11085   }
11086   {
11087     SI opval = 0;
11088     if (UNLIKELY(current_cpu->trace_result_p))
11089       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
11090     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
11091   }
11092   {
11093     SI opval = 0;
11094     if (UNLIKELY(current_cpu->trace_result_p))
11095       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11096     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11097   }
11098 current_cpu->ivc2_cpmsbua1u_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11099 }
11100
11101   current_cpu->done_insn (npc, status);
11102   return status;
11103 #undef FLD
11104 }
11105
11106 // ********** cpmsbla1u_w_P1: cpmsbla1u.w $crqp,$crpp
11107
11108 sem_status
11109 mepcop1_64_sem_cpmsbla1u_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11110 {
11111 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11112   sem_status status = SEM_STATUS_NORMAL;
11113   mepcop1_64_scache* abuf = sem;
11114   unsigned long long written = 0;
11115   PCADDR pc = abuf->addr;
11116   PCADDR npc = pc + 4;
11117
11118 {
11119 current_cpu->check_option_cp (pc);
11120   {
11121     SI opval = 0;
11122     if (UNLIKELY(current_cpu->trace_result_p))
11123       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
11124     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
11125   }
11126   {
11127     SI opval = 0;
11128     if (UNLIKELY(current_cpu->trace_result_p))
11129       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
11130     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
11131   }
11132   {
11133     SI opval = 0;
11134     if (UNLIKELY(current_cpu->trace_result_p))
11135       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
11136     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
11137   }
11138   {
11139     SI opval = 0;
11140     if (UNLIKELY(current_cpu->trace_result_p))
11141       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
11142     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
11143   }
11144   {
11145     SI opval = 0;
11146     if (UNLIKELY(current_cpu->trace_result_p))
11147       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11148     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11149   }
11150 current_cpu->ivc2_cpmsbla1u_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11151 }
11152
11153   current_cpu->done_insn (npc, status);
11154   return status;
11155 #undef FLD
11156 }
11157
11158 // ********** cpmsbua1_w_P1: cpmsbua1.w $crqp,$crpp
11159
11160 sem_status
11161 mepcop1_64_sem_cpmsbua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11162 {
11163 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11164   sem_status status = SEM_STATUS_NORMAL;
11165   mepcop1_64_scache* abuf = sem;
11166   unsigned long long written = 0;
11167   PCADDR pc = abuf->addr;
11168   PCADDR npc = pc + 4;
11169
11170 {
11171 current_cpu->check_option_cp (pc);
11172   {
11173     SI opval = 0;
11174     if (UNLIKELY(current_cpu->trace_result_p))
11175       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
11176     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
11177   }
11178   {
11179     SI opval = 0;
11180     if (UNLIKELY(current_cpu->trace_result_p))
11181       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
11182     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
11183   }
11184   {
11185     SI opval = 0;
11186     if (UNLIKELY(current_cpu->trace_result_p))
11187       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
11188     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
11189   }
11190   {
11191     SI opval = 0;
11192     if (UNLIKELY(current_cpu->trace_result_p))
11193       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
11194     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
11195   }
11196   {
11197     SI opval = 0;
11198     if (UNLIKELY(current_cpu->trace_result_p))
11199       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11200     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11201   }
11202 current_cpu->ivc2_cpmsbua1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11203 }
11204
11205   current_cpu->done_insn (npc, status);
11206   return status;
11207 #undef FLD
11208 }
11209
11210 // ********** cpmsbla1_w_P1: cpmsbla1.w $crqp,$crpp
11211
11212 sem_status
11213 mepcop1_64_sem_cpmsbla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11214 {
11215 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11216   sem_status status = SEM_STATUS_NORMAL;
11217   mepcop1_64_scache* abuf = sem;
11218   unsigned long long written = 0;
11219   PCADDR pc = abuf->addr;
11220   PCADDR npc = pc + 4;
11221
11222 {
11223 current_cpu->check_option_cp (pc);
11224   {
11225     SI opval = 0;
11226     if (UNLIKELY(current_cpu->trace_result_p))
11227       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
11228     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
11229   }
11230   {
11231     SI opval = 0;
11232     if (UNLIKELY(current_cpu->trace_result_p))
11233       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
11234     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
11235   }
11236   {
11237     SI opval = 0;
11238     if (UNLIKELY(current_cpu->trace_result_p))
11239       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
11240     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
11241   }
11242   {
11243     SI opval = 0;
11244     if (UNLIKELY(current_cpu->trace_result_p))
11245       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
11246     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
11247   }
11248   {
11249     SI opval = 0;
11250     if (UNLIKELY(current_cpu->trace_result_p))
11251       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11252     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11253   }
11254 current_cpu->ivc2_cpmsbla1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11255 }
11256
11257   current_cpu->done_insn (npc, status);
11258   return status;
11259 #undef FLD
11260 }
11261
11262 // ********** cpsmadua1_h_P1: cpsmadua1.h $crqp,$crpp
11263
11264 sem_status
11265 mepcop1_64_sem_cpsmadua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11266 {
11267 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11268   sem_status status = SEM_STATUS_NORMAL;
11269   mepcop1_64_scache* abuf = sem;
11270   unsigned long long written = 0;
11271   PCADDR pc = abuf->addr;
11272   PCADDR npc = pc + 4;
11273
11274 {
11275 current_cpu->check_option_cp (pc);
11276   {
11277     SI opval = 0;
11278     if (UNLIKELY(current_cpu->trace_result_p))
11279       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
11280     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
11281   }
11282   {
11283     SI opval = 0;
11284     if (UNLIKELY(current_cpu->trace_result_p))
11285       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
11286     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
11287   }
11288   {
11289     SI opval = 0;
11290     if (UNLIKELY(current_cpu->trace_result_p))
11291       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
11292     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
11293   }
11294   {
11295     SI opval = 0;
11296     if (UNLIKELY(current_cpu->trace_result_p))
11297       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
11298     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
11299   }
11300   {
11301     SI opval = 0;
11302     if (UNLIKELY(current_cpu->trace_result_p))
11303       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11304     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11305   }
11306 current_cpu->ivc2_cpsmadua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11307 }
11308
11309   current_cpu->done_insn (npc, status);
11310   return status;
11311 #undef FLD
11312 }
11313
11314 // ********** cpsmadla1_h_P1: cpsmadla1.h $crqp,$crpp
11315
11316 sem_status
11317 mepcop1_64_sem_cpsmadla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11318 {
11319 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11320   sem_status status = SEM_STATUS_NORMAL;
11321   mepcop1_64_scache* abuf = sem;
11322   unsigned long long written = 0;
11323   PCADDR pc = abuf->addr;
11324   PCADDR npc = pc + 4;
11325
11326 {
11327 current_cpu->check_option_cp (pc);
11328   {
11329     SI opval = 0;
11330     if (UNLIKELY(current_cpu->trace_result_p))
11331       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
11332     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
11333   }
11334   {
11335     SI opval = 0;
11336     if (UNLIKELY(current_cpu->trace_result_p))
11337       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
11338     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
11339   }
11340   {
11341     SI opval = 0;
11342     if (UNLIKELY(current_cpu->trace_result_p))
11343       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
11344     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
11345   }
11346   {
11347     SI opval = 0;
11348     if (UNLIKELY(current_cpu->trace_result_p))
11349       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
11350     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
11351   }
11352   {
11353     SI opval = 0;
11354     if (UNLIKELY(current_cpu->trace_result_p))
11355       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11356     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11357   }
11358 current_cpu->ivc2_cpsmadla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11359 }
11360
11361   current_cpu->done_insn (npc, status);
11362   return status;
11363 #undef FLD
11364 }
11365
11366 // ********** cpsmadua1_w_P1: cpsmadua1.w $crqp,$crpp
11367
11368 sem_status
11369 mepcop1_64_sem_cpsmadua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11370 {
11371 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11372   sem_status status = SEM_STATUS_NORMAL;
11373   mepcop1_64_scache* abuf = sem;
11374   unsigned long long written = 0;
11375   PCADDR pc = abuf->addr;
11376   PCADDR npc = pc + 4;
11377
11378 {
11379 current_cpu->check_option_cp (pc);
11380   {
11381     SI opval = 0;
11382     if (UNLIKELY(current_cpu->trace_result_p))
11383       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
11384     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
11385   }
11386   {
11387     SI opval = 0;
11388     if (UNLIKELY(current_cpu->trace_result_p))
11389       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
11390     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
11391   }
11392   {
11393     SI opval = 0;
11394     if (UNLIKELY(current_cpu->trace_result_p))
11395       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
11396     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
11397   }
11398   {
11399     SI opval = 0;
11400     if (UNLIKELY(current_cpu->trace_result_p))
11401       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
11402     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
11403   }
11404   {
11405     SI opval = 0;
11406     if (UNLIKELY(current_cpu->trace_result_p))
11407       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11408     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11409   }
11410 current_cpu->ivc2_cpsmadua1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11411 }
11412
11413   current_cpu->done_insn (npc, status);
11414   return status;
11415 #undef FLD
11416 }
11417
11418 // ********** cpsmadla1_w_P1: cpsmadla1.w $crqp,$crpp
11419
11420 sem_status
11421 mepcop1_64_sem_cpsmadla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11422 {
11423 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11424   sem_status status = SEM_STATUS_NORMAL;
11425   mepcop1_64_scache* abuf = sem;
11426   unsigned long long written = 0;
11427   PCADDR pc = abuf->addr;
11428   PCADDR npc = pc + 4;
11429
11430 {
11431 current_cpu->check_option_cp (pc);
11432   {
11433     SI opval = 0;
11434     if (UNLIKELY(current_cpu->trace_result_p))
11435       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
11436     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
11437   }
11438   {
11439     SI opval = 0;
11440     if (UNLIKELY(current_cpu->trace_result_p))
11441       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
11442     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
11443   }
11444   {
11445     SI opval = 0;
11446     if (UNLIKELY(current_cpu->trace_result_p))
11447       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
11448     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
11449   }
11450   {
11451     SI opval = 0;
11452     if (UNLIKELY(current_cpu->trace_result_p))
11453       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
11454     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
11455   }
11456   {
11457     SI opval = 0;
11458     if (UNLIKELY(current_cpu->trace_result_p))
11459       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11460     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11461   }
11462 current_cpu->ivc2_cpsmadla1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11463 }
11464
11465   current_cpu->done_insn (npc, status);
11466   return status;
11467 #undef FLD
11468 }
11469
11470 // ********** cpsmsbua1_h_P1: cpsmsbua1.h $crqp,$crpp
11471
11472 sem_status
11473 mepcop1_64_sem_cpsmsbua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11474 {
11475 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11476   sem_status status = SEM_STATUS_NORMAL;
11477   mepcop1_64_scache* abuf = sem;
11478   unsigned long long written = 0;
11479   PCADDR pc = abuf->addr;
11480   PCADDR npc = pc + 4;
11481
11482 {
11483 current_cpu->check_option_cp (pc);
11484   {
11485     SI opval = 0;
11486     if (UNLIKELY(current_cpu->trace_result_p))
11487       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
11488     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
11489   }
11490   {
11491     SI opval = 0;
11492     if (UNLIKELY(current_cpu->trace_result_p))
11493       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
11494     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
11495   }
11496   {
11497     SI opval = 0;
11498     if (UNLIKELY(current_cpu->trace_result_p))
11499       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
11500     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
11501   }
11502   {
11503     SI opval = 0;
11504     if (UNLIKELY(current_cpu->trace_result_p))
11505       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
11506     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
11507   }
11508   {
11509     SI opval = 0;
11510     if (UNLIKELY(current_cpu->trace_result_p))
11511       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11512     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11513   }
11514 current_cpu->ivc2_cpsmsbua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11515 }
11516
11517   current_cpu->done_insn (npc, status);
11518   return status;
11519 #undef FLD
11520 }
11521
11522 // ********** cpsmsbla1_h_P1: cpsmsbla1.h $crqp,$crpp
11523
11524 sem_status
11525 mepcop1_64_sem_cpsmsbla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11526 {
11527 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11528   sem_status status = SEM_STATUS_NORMAL;
11529   mepcop1_64_scache* abuf = sem;
11530   unsigned long long written = 0;
11531   PCADDR pc = abuf->addr;
11532   PCADDR npc = pc + 4;
11533
11534 {
11535 current_cpu->check_option_cp (pc);
11536   {
11537     SI opval = 0;
11538     if (UNLIKELY(current_cpu->trace_result_p))
11539       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
11540     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
11541   }
11542   {
11543     SI opval = 0;
11544     if (UNLIKELY(current_cpu->trace_result_p))
11545       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
11546     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
11547   }
11548   {
11549     SI opval = 0;
11550     if (UNLIKELY(current_cpu->trace_result_p))
11551       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
11552     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
11553   }
11554   {
11555     SI opval = 0;
11556     if (UNLIKELY(current_cpu->trace_result_p))
11557       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
11558     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
11559   }
11560   {
11561     SI opval = 0;
11562     if (UNLIKELY(current_cpu->trace_result_p))
11563       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11564     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11565   }
11566 current_cpu->ivc2_cpsmsbla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11567 }
11568
11569   current_cpu->done_insn (npc, status);
11570   return status;
11571 #undef FLD
11572 }
11573
11574 // ********** cpsmsbua1_w_P1: cpsmsbua1.w $crqp,$crpp
11575
11576 sem_status
11577 mepcop1_64_sem_cpsmsbua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11578 {
11579 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11580   sem_status status = SEM_STATUS_NORMAL;
11581   mepcop1_64_scache* abuf = sem;
11582   unsigned long long written = 0;
11583   PCADDR pc = abuf->addr;
11584   PCADDR npc = pc + 4;
11585
11586 {
11587 current_cpu->check_option_cp (pc);
11588   {
11589     SI opval = 0;
11590     if (UNLIKELY(current_cpu->trace_result_p))
11591       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
11592     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
11593   }
11594   {
11595     SI opval = 0;
11596     if (UNLIKELY(current_cpu->trace_result_p))
11597       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
11598     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
11599   }
11600   {
11601     SI opval = 0;
11602     if (UNLIKELY(current_cpu->trace_result_p))
11603       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
11604     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
11605   }
11606   {
11607     SI opval = 0;
11608     if (UNLIKELY(current_cpu->trace_result_p))
11609       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
11610     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
11611   }
11612   {
11613     SI opval = 0;
11614     if (UNLIKELY(current_cpu->trace_result_p))
11615       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11616     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11617   }
11618 current_cpu->ivc2_cpsmsbua1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11619 }
11620
11621   current_cpu->done_insn (npc, status);
11622   return status;
11623 #undef FLD
11624 }
11625
11626 // ********** cpsmsbla1_w_P1: cpsmsbla1.w $crqp,$crpp
11627
11628 sem_status
11629 mepcop1_64_sem_cpsmsbla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11630 {
11631 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11632   sem_status status = SEM_STATUS_NORMAL;
11633   mepcop1_64_scache* abuf = sem;
11634   unsigned long long written = 0;
11635   PCADDR pc = abuf->addr;
11636   PCADDR npc = pc + 4;
11637
11638 {
11639 current_cpu->check_option_cp (pc);
11640   {
11641     SI opval = 0;
11642     if (UNLIKELY(current_cpu->trace_result_p))
11643       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
11644     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
11645   }
11646   {
11647     SI opval = 0;
11648     if (UNLIKELY(current_cpu->trace_result_p))
11649       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
11650     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
11651   }
11652   {
11653     SI opval = 0;
11654     if (UNLIKELY(current_cpu->trace_result_p))
11655       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
11656     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
11657   }
11658   {
11659     SI opval = 0;
11660     if (UNLIKELY(current_cpu->trace_result_p))
11661       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
11662     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
11663   }
11664   {
11665     SI opval = 0;
11666     if (UNLIKELY(current_cpu->trace_result_p))
11667       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11668     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11669   }
11670 current_cpu->ivc2_cpsmsbla1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11671 }
11672
11673   current_cpu->done_insn (npc, status);
11674   return status;
11675 #undef FLD
11676 }
11677
11678 // ********** cpmulslua1_h_P1: cpmulslua1.h $crqp,$crpp
11679
11680 sem_status
11681 mepcop1_64_sem_cpmulslua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11682 {
11683 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11684   sem_status status = SEM_STATUS_NORMAL;
11685   mepcop1_64_scache* abuf = sem;
11686   unsigned long long written = 0;
11687   PCADDR pc = abuf->addr;
11688   PCADDR npc = pc + 4;
11689
11690 {
11691 current_cpu->check_option_cp (pc);
11692   {
11693     SI opval = 0;
11694     if (UNLIKELY(current_cpu->trace_result_p))
11695       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
11696     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
11697   }
11698   {
11699     SI opval = 0;
11700     if (UNLIKELY(current_cpu->trace_result_p))
11701       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
11702     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
11703   }
11704   {
11705     SI opval = 0;
11706     if (UNLIKELY(current_cpu->trace_result_p))
11707       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
11708     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
11709   }
11710   {
11711     SI opval = 0;
11712     if (UNLIKELY(current_cpu->trace_result_p))
11713       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
11714     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
11715   }
11716   {
11717     SI opval = 0;
11718     if (UNLIKELY(current_cpu->trace_result_p))
11719       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11720     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11721   }
11722 current_cpu->ivc2_cpmulslua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11723 }
11724
11725   current_cpu->done_insn (npc, status);
11726   return status;
11727 #undef FLD
11728 }
11729
11730 // ********** cpmulslla1_h_P1: cpmulslla1.h $crqp,$crpp
11731
11732 sem_status
11733 mepcop1_64_sem_cpmulslla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11734 {
11735 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11736   sem_status status = SEM_STATUS_NORMAL;
11737   mepcop1_64_scache* abuf = sem;
11738   unsigned long long written = 0;
11739   PCADDR pc = abuf->addr;
11740   PCADDR npc = pc + 4;
11741
11742 {
11743 current_cpu->check_option_cp (pc);
11744   {
11745     SI opval = 0;
11746     if (UNLIKELY(current_cpu->trace_result_p))
11747       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
11748     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
11749   }
11750   {
11751     SI opval = 0;
11752     if (UNLIKELY(current_cpu->trace_result_p))
11753       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
11754     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
11755   }
11756   {
11757     SI opval = 0;
11758     if (UNLIKELY(current_cpu->trace_result_p))
11759       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
11760     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
11761   }
11762   {
11763     SI opval = 0;
11764     if (UNLIKELY(current_cpu->trace_result_p))
11765       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
11766     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
11767   }
11768   {
11769     SI opval = 0;
11770     if (UNLIKELY(current_cpu->trace_result_p))
11771       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11772     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11773   }
11774 current_cpu->ivc2_cpmulslla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11775 }
11776
11777   current_cpu->done_insn (npc, status);
11778   return status;
11779 #undef FLD
11780 }
11781
11782 // ********** cpmulslua1_w_P1: cpmulslua1.w $crqp,$crpp
11783
11784 sem_status
11785 mepcop1_64_sem_cpmulslua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11786 {
11787 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11788   sem_status status = SEM_STATUS_NORMAL;
11789   mepcop1_64_scache* abuf = sem;
11790   unsigned long long written = 0;
11791   PCADDR pc = abuf->addr;
11792   PCADDR npc = pc + 4;
11793
11794 {
11795 current_cpu->check_option_cp (pc);
11796   {
11797     SI opval = 0;
11798     if (UNLIKELY(current_cpu->trace_result_p))
11799       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
11800     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
11801   }
11802   {
11803     SI opval = 0;
11804     if (UNLIKELY(current_cpu->trace_result_p))
11805       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
11806     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
11807   }
11808   {
11809     SI opval = 0;
11810     if (UNLIKELY(current_cpu->trace_result_p))
11811       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
11812     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
11813   }
11814   {
11815     SI opval = 0;
11816     if (UNLIKELY(current_cpu->trace_result_p))
11817       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
11818     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
11819   }
11820   {
11821     SI opval = 0;
11822     if (UNLIKELY(current_cpu->trace_result_p))
11823       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11824     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11825   }
11826 current_cpu->ivc2_cpmulslua1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11827 }
11828
11829   current_cpu->done_insn (npc, status);
11830   return status;
11831 #undef FLD
11832 }
11833
11834 // ********** cpmulslla1_w_P1: cpmulslla1.w $crqp,$crpp
11835
11836 sem_status
11837 mepcop1_64_sem_cpmulslla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11838 {
11839 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11840   sem_status status = SEM_STATUS_NORMAL;
11841   mepcop1_64_scache* abuf = sem;
11842   unsigned long long written = 0;
11843   PCADDR pc = abuf->addr;
11844   PCADDR npc = pc + 4;
11845
11846 {
11847 current_cpu->check_option_cp (pc);
11848   {
11849     SI opval = 0;
11850     if (UNLIKELY(current_cpu->trace_result_p))
11851       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
11852     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
11853   }
11854   {
11855     SI opval = 0;
11856     if (UNLIKELY(current_cpu->trace_result_p))
11857       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
11858     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
11859   }
11860   {
11861     SI opval = 0;
11862     if (UNLIKELY(current_cpu->trace_result_p))
11863       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
11864     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
11865   }
11866   {
11867     SI opval = 0;
11868     if (UNLIKELY(current_cpu->trace_result_p))
11869       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
11870     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
11871   }
11872   {
11873     SI opval = 0;
11874     if (UNLIKELY(current_cpu->trace_result_p))
11875       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11876     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11877   }
11878 current_cpu->ivc2_cpmulslla1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11879 }
11880
11881   current_cpu->done_insn (npc, status);
11882   return status;
11883 #undef FLD
11884 }
11885
11886 // ********** cpsmadslua1_h_P1: cpsmadslua1.h $crqp,$crpp
11887
11888 sem_status
11889 mepcop1_64_sem_cpsmadslua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11890 {
11891 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11892   sem_status status = SEM_STATUS_NORMAL;
11893   mepcop1_64_scache* abuf = sem;
11894   unsigned long long written = 0;
11895   PCADDR pc = abuf->addr;
11896   PCADDR npc = pc + 4;
11897
11898 {
11899 current_cpu->check_option_cp (pc);
11900   {
11901     SI opval = 0;
11902     if (UNLIKELY(current_cpu->trace_result_p))
11903       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
11904     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
11905   }
11906   {
11907     SI opval = 0;
11908     if (UNLIKELY(current_cpu->trace_result_p))
11909       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
11910     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
11911   }
11912   {
11913     SI opval = 0;
11914     if (UNLIKELY(current_cpu->trace_result_p))
11915       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
11916     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
11917   }
11918   {
11919     SI opval = 0;
11920     if (UNLIKELY(current_cpu->trace_result_p))
11921       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
11922     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
11923   }
11924   {
11925     SI opval = 0;
11926     if (UNLIKELY(current_cpu->trace_result_p))
11927       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11928     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11929   }
11930 current_cpu->ivc2_cpsmadslua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11931 }
11932
11933   current_cpu->done_insn (npc, status);
11934   return status;
11935 #undef FLD
11936 }
11937
11938 // ********** cpsmadslla1_h_P1: cpsmadslla1.h $crqp,$crpp
11939
11940 sem_status
11941 mepcop1_64_sem_cpsmadslla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11942 {
11943 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11944   sem_status status = SEM_STATUS_NORMAL;
11945   mepcop1_64_scache* abuf = sem;
11946   unsigned long long written = 0;
11947   PCADDR pc = abuf->addr;
11948   PCADDR npc = pc + 4;
11949
11950 {
11951 current_cpu->check_option_cp (pc);
11952   {
11953     SI opval = 0;
11954     if (UNLIKELY(current_cpu->trace_result_p))
11955       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
11956     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
11957   }
11958   {
11959     SI opval = 0;
11960     if (UNLIKELY(current_cpu->trace_result_p))
11961       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
11962     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
11963   }
11964   {
11965     SI opval = 0;
11966     if (UNLIKELY(current_cpu->trace_result_p))
11967       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
11968     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
11969   }
11970   {
11971     SI opval = 0;
11972     if (UNLIKELY(current_cpu->trace_result_p))
11973       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
11974     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
11975   }
11976   {
11977     SI opval = 0;
11978     if (UNLIKELY(current_cpu->trace_result_p))
11979       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
11980     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
11981   }
11982 current_cpu->ivc2_cpsmadslla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
11983 }
11984
11985   current_cpu->done_insn (npc, status);
11986   return status;
11987 #undef FLD
11988 }
11989
11990 // ********** cpsmadslua1_w_P1: cpsmadslua1.w $crqp,$crpp
11991
11992 sem_status
11993 mepcop1_64_sem_cpsmadslua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
11994 {
11995 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
11996   sem_status status = SEM_STATUS_NORMAL;
11997   mepcop1_64_scache* abuf = sem;
11998   unsigned long long written = 0;
11999   PCADDR pc = abuf->addr;
12000   PCADDR npc = pc + 4;
12001
12002 {
12003 current_cpu->check_option_cp (pc);
12004   {
12005     SI opval = 0;
12006     if (UNLIKELY(current_cpu->trace_result_p))
12007       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
12008     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
12009   }
12010   {
12011     SI opval = 0;
12012     if (UNLIKELY(current_cpu->trace_result_p))
12013       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
12014     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
12015   }
12016   {
12017     SI opval = 0;
12018     if (UNLIKELY(current_cpu->trace_result_p))
12019       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
12020     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
12021   }
12022   {
12023     SI opval = 0;
12024     if (UNLIKELY(current_cpu->trace_result_p))
12025       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
12026     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
12027   }
12028   {
12029     SI opval = 0;
12030     if (UNLIKELY(current_cpu->trace_result_p))
12031       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
12032     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
12033   }
12034 current_cpu->ivc2_cpsmadslua1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
12035 }
12036
12037   current_cpu->done_insn (npc, status);
12038   return status;
12039 #undef FLD
12040 }
12041
12042 // ********** cpsmadslla1_w_P1: cpsmadslla1.w $crqp,$crpp
12043
12044 sem_status
12045 mepcop1_64_sem_cpsmadslla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
12046 {
12047 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
12048   sem_status status = SEM_STATUS_NORMAL;
12049   mepcop1_64_scache* abuf = sem;
12050   unsigned long long written = 0;
12051   PCADDR pc = abuf->addr;
12052   PCADDR npc = pc + 4;
12053
12054 {
12055 current_cpu->check_option_cp (pc);
12056   {
12057     SI opval = 0;
12058     if (UNLIKELY(current_cpu->trace_result_p))
12059       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
12060     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
12061   }
12062   {
12063     SI opval = 0;
12064     if (UNLIKELY(current_cpu->trace_result_p))
12065       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
12066     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
12067   }
12068   {
12069     SI opval = 0;
12070     if (UNLIKELY(current_cpu->trace_result_p))
12071       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
12072     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
12073   }
12074   {
12075     SI opval = 0;
12076     if (UNLIKELY(current_cpu->trace_result_p))
12077       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
12078     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
12079   }
12080   {
12081     SI opval = 0;
12082     if (UNLIKELY(current_cpu->trace_result_p))
12083       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
12084     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
12085   }
12086 current_cpu->ivc2_cpsmadslla1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
12087 }
12088
12089   current_cpu->done_insn (npc, status);
12090   return status;
12091 #undef FLD
12092 }
12093
12094 // ********** cpsmsbslua1_h_P1: cpsmsbslua1.h $crqp,$crpp
12095
12096 sem_status
12097 mepcop1_64_sem_cpsmsbslua1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
12098 {
12099 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
12100   sem_status status = SEM_STATUS_NORMAL;
12101   mepcop1_64_scache* abuf = sem;
12102   unsigned long long written = 0;
12103   PCADDR pc = abuf->addr;
12104   PCADDR npc = pc + 4;
12105
12106 {
12107 current_cpu->check_option_cp (pc);
12108   {
12109     SI opval = 0;
12110     if (UNLIKELY(current_cpu->trace_result_p))
12111       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
12112     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
12113   }
12114   {
12115     SI opval = 0;
12116     if (UNLIKELY(current_cpu->trace_result_p))
12117       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
12118     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
12119   }
12120   {
12121     SI opval = 0;
12122     if (UNLIKELY(current_cpu->trace_result_p))
12123       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
12124     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
12125   }
12126   {
12127     SI opval = 0;
12128     if (UNLIKELY(current_cpu->trace_result_p))
12129       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
12130     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
12131   }
12132   {
12133     SI opval = 0;
12134     if (UNLIKELY(current_cpu->trace_result_p))
12135       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
12136     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
12137   }
12138 current_cpu->ivc2_cpsmsbslua1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
12139 }
12140
12141   current_cpu->done_insn (npc, status);
12142   return status;
12143 #undef FLD
12144 }
12145
12146 // ********** cpsmsbslla1_h_P1: cpsmsbslla1.h $crqp,$crpp
12147
12148 sem_status
12149 mepcop1_64_sem_cpsmsbslla1_h_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
12150 {
12151 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
12152   sem_status status = SEM_STATUS_NORMAL;
12153   mepcop1_64_scache* abuf = sem;
12154   unsigned long long written = 0;
12155   PCADDR pc = abuf->addr;
12156   PCADDR npc = pc + 4;
12157
12158 {
12159 current_cpu->check_option_cp (pc);
12160   {
12161     SI opval = 0;
12162     if (UNLIKELY(current_cpu->trace_result_p))
12163       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
12164     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
12165   }
12166   {
12167     SI opval = 0;
12168     if (UNLIKELY(current_cpu->trace_result_p))
12169       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
12170     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
12171   }
12172   {
12173     SI opval = 0;
12174     if (UNLIKELY(current_cpu->trace_result_p))
12175       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
12176     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
12177   }
12178   {
12179     SI opval = 0;
12180     if (UNLIKELY(current_cpu->trace_result_p))
12181       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
12182     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
12183   }
12184   {
12185     SI opval = 0;
12186     if (UNLIKELY(current_cpu->trace_result_p))
12187       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
12188     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
12189   }
12190 current_cpu->ivc2_cpsmsbslla1_h (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
12191 }
12192
12193   current_cpu->done_insn (npc, status);
12194   return status;
12195 #undef FLD
12196 }
12197
12198 // ********** cpsmsbslua1_w_P1: cpsmsbslua1.w $crqp,$crpp
12199
12200 sem_status
12201 mepcop1_64_sem_cpsmsbslua1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
12202 {
12203 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
12204   sem_status status = SEM_STATUS_NORMAL;
12205   mepcop1_64_scache* abuf = sem;
12206   unsigned long long written = 0;
12207   PCADDR pc = abuf->addr;
12208   PCADDR npc = pc + 4;
12209
12210 {
12211 current_cpu->check_option_cp (pc);
12212   {
12213     SI opval = 0;
12214     if (UNLIKELY(current_cpu->trace_result_p))
12215       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 28) << ']' << ":=0x" << hex << opval << dec << "  ";
12216     current_cpu->h_ccr_ivc2_set (((UINT) 28), opval);
12217   }
12218   {
12219     SI opval = 0;
12220     if (UNLIKELY(current_cpu->trace_result_p))
12221       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 29) << ']' << ":=0x" << hex << opval << dec << "  ";
12222     current_cpu->h_ccr_ivc2_set (((UINT) 29), opval);
12223   }
12224   {
12225     SI opval = 0;
12226     if (UNLIKELY(current_cpu->trace_result_p))
12227       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 30) << ']' << ":=0x" << hex << opval << dec << "  ";
12228     current_cpu->h_ccr_ivc2_set (((UINT) 30), opval);
12229   }
12230   {
12231     SI opval = 0;
12232     if (UNLIKELY(current_cpu->trace_result_p))
12233       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 31) << ']' << ":=0x" << hex << opval << dec << "  ";
12234     current_cpu->h_ccr_ivc2_set (((UINT) 31), opval);
12235   }
12236   {
12237     SI opval = 0;
12238     if (UNLIKELY(current_cpu->trace_result_p))
12239       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
12240     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
12241   }
12242 current_cpu->ivc2_cpsmsbslua1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
12243 }
12244
12245   current_cpu->done_insn (npc, status);
12246   return status;
12247 #undef FLD
12248 }
12249
12250 // ********** cpsmsbslla1_w_P1: cpsmsbslla1.w $crqp,$crpp
12251
12252 sem_status
12253 mepcop1_64_sem_cpsmsbslla1_w_P1 (mep_ext1_cpu* current_cpu, mepcop1_64_scache* sem)
12254 {
12255 #define FLD(f) abuf->fields.sfmt_cpfmulia1u_b_P1.f
12256   sem_status status = SEM_STATUS_NORMAL;
12257   mepcop1_64_scache* abuf = sem;
12258   unsigned long long written = 0;
12259   PCADDR pc = abuf->addr;
12260   PCADDR npc = pc + 4;
12261
12262 {
12263 current_cpu->check_option_cp (pc);
12264   {
12265     SI opval = 0;
12266     if (UNLIKELY(current_cpu->trace_result_p))
12267       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 24) << ']' << ":=0x" << hex << opval << dec << "  ";
12268     current_cpu->h_ccr_ivc2_set (((UINT) 24), opval);
12269   }
12270   {
12271     SI opval = 0;
12272     if (UNLIKELY(current_cpu->trace_result_p))
12273       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 25) << ']' << ":=0x" << hex << opval << dec << "  ";
12274     current_cpu->h_ccr_ivc2_set (((UINT) 25), opval);
12275   }
12276   {
12277     SI opval = 0;
12278     if (UNLIKELY(current_cpu->trace_result_p))
12279       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 26) << ']' << ":=0x" << hex << opval << dec << "  ";
12280     current_cpu->h_ccr_ivc2_set (((UINT) 26), opval);
12281   }
12282   {
12283     SI opval = 0;
12284     if (UNLIKELY(current_cpu->trace_result_p))
12285       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 27) << ']' << ":=0x" << hex << opval << dec << "  ";
12286     current_cpu->h_ccr_ivc2_set (((UINT) 27), opval);
12287   }
12288   {
12289     SI opval = 0;
12290     if (UNLIKELY(current_cpu->trace_result_p))
12291       current_cpu->trace_stream << "ccr-ivc2" << '[' << ((UINT) 7) << ']' << ":=0x" << hex << opval << dec << "  ";
12292     current_cpu->h_ccr_ivc2_set (((UINT) 7), opval);
12293   }
12294 current_cpu->ivc2_cpsmsbslla1_w (pc, current_cpu->hardware.h_cr64[FLD (f_ivc2_5u13)], current_cpu->hardware.h_cr64[FLD (f_ivc2_5u18)]);
12295 }
12296
12297   current_cpu->done_insn (npc, status);
12298   return status;
12299 #undef FLD
12300 }
12301