1 /* Simulator model support for m32rbf.
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
5 Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
7 This file is part of the GNU Simulators.
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 2, or (at your option)
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
19 You should have received a copy of the GNU General Public License along
20 with this program; if not, write to the Free Software Foundation, Inc.,
21 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25 #define WANT_CPU m32rbf
26 #define WANT_CPU_M32RBF
30 /* The profiling data is recorded here, but is accessed via the profiling
31 mechanism. After all, this is information for profiling. */
33 #if WITH_PROFILE_MODEL_P
35 /* Model handlers for each insn. */
38 model_m32r_d_add (SIM_CPU
*current_cpu
, void *sem_arg
)
40 #define FLD(f) abuf->fields.fmt_add.f
41 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
42 const IDESC
* UNUSED idesc
= abuf
->idesc
;
46 int UNUSED insn_referenced
= abuf
->written
;
54 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
61 model_m32r_d_add3 (SIM_CPU
*current_cpu
, void *sem_arg
)
63 #define FLD(f) abuf->fields.fmt_add3.f
64 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
65 const IDESC
* UNUSED idesc
= abuf
->idesc
;
69 int UNUSED insn_referenced
= abuf
->written
;
77 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
84 model_m32r_d_and (SIM_CPU
*current_cpu
, void *sem_arg
)
86 #define FLD(f) abuf->fields.fmt_add.f
87 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
88 const IDESC
* UNUSED idesc
= abuf
->idesc
;
92 int UNUSED insn_referenced
= abuf
->written
;
100 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
107 model_m32r_d_and3 (SIM_CPU
*current_cpu
, void *sem_arg
)
109 #define FLD(f) abuf->fields.fmt_and3.f
110 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
111 const IDESC
* UNUSED idesc
= abuf
->idesc
;
115 int UNUSED insn_referenced
= abuf
->written
;
121 referenced
|= 1 << 0;
122 referenced
|= 1 << 2;
123 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
130 model_m32r_d_or (SIM_CPU
*current_cpu
, void *sem_arg
)
132 #define FLD(f) abuf->fields.fmt_add.f
133 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
134 const IDESC
* UNUSED idesc
= abuf
->idesc
;
138 int UNUSED insn_referenced
= abuf
->written
;
144 referenced
|= 1 << 0;
145 referenced
|= 1 << 2;
146 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
153 model_m32r_d_or3 (SIM_CPU
*current_cpu
, void *sem_arg
)
155 #define FLD(f) abuf->fields.fmt_or3.f
156 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
157 const IDESC
* UNUSED idesc
= abuf
->idesc
;
161 int UNUSED insn_referenced
= abuf
->written
;
167 referenced
|= 1 << 0;
168 referenced
|= 1 << 2;
169 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
176 model_m32r_d_xor (SIM_CPU
*current_cpu
, void *sem_arg
)
178 #define FLD(f) abuf->fields.fmt_add.f
179 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
180 const IDESC
* UNUSED idesc
= abuf
->idesc
;
184 int UNUSED insn_referenced
= abuf
->written
;
190 referenced
|= 1 << 0;
191 referenced
|= 1 << 2;
192 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
199 model_m32r_d_xor3 (SIM_CPU
*current_cpu
, void *sem_arg
)
201 #define FLD(f) abuf->fields.fmt_and3.f
202 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
203 const IDESC
* UNUSED idesc
= abuf
->idesc
;
207 int UNUSED insn_referenced
= abuf
->written
;
213 referenced
|= 1 << 0;
214 referenced
|= 1 << 2;
215 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
222 model_m32r_d_addi (SIM_CPU
*current_cpu
, void *sem_arg
)
224 #define FLD(f) abuf->fields.fmt_addi.f
225 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
226 const IDESC
* UNUSED idesc
= abuf
->idesc
;
230 int UNUSED insn_referenced
= abuf
->written
;
236 referenced
|= 1 << 0;
237 referenced
|= 1 << 2;
238 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
245 model_m32r_d_addv (SIM_CPU
*current_cpu
, void *sem_arg
)
247 #define FLD(f) abuf->fields.fmt_addv.f
248 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
249 const IDESC
* UNUSED idesc
= abuf
->idesc
;
253 int UNUSED insn_referenced
= abuf
->written
;
259 referenced
|= 1 << 0;
260 referenced
|= 1 << 2;
261 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
268 model_m32r_d_addv3 (SIM_CPU
*current_cpu
, void *sem_arg
)
270 #define FLD(f) abuf->fields.fmt_addv3.f
271 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
272 const IDESC
* UNUSED idesc
= abuf
->idesc
;
276 int UNUSED insn_referenced
= abuf
->written
;
282 referenced
|= 1 << 0;
283 referenced
|= 1 << 2;
284 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
291 model_m32r_d_addx (SIM_CPU
*current_cpu
, void *sem_arg
)
293 #define FLD(f) abuf->fields.fmt_addx.f
294 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
295 const IDESC
* UNUSED idesc
= abuf
->idesc
;
299 int UNUSED insn_referenced
= abuf
->written
;
305 referenced
|= 1 << 0;
306 referenced
|= 1 << 2;
307 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
314 model_m32r_d_bc8 (SIM_CPU
*current_cpu
, void *sem_arg
)
316 #define FLD(f) abuf->fields.cti.fields.fmt_bc8.f
317 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
318 const IDESC
* UNUSED idesc
= abuf
->idesc
;
322 int UNUSED insn_referenced
= abuf
->written
;
324 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 1;
325 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
332 model_m32r_d_bc24 (SIM_CPU
*current_cpu
, void *sem_arg
)
334 #define FLD(f) abuf->fields.cti.fields.fmt_bc24.f
335 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
336 const IDESC
* UNUSED idesc
= abuf
->idesc
;
340 int UNUSED insn_referenced
= abuf
->written
;
342 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 1;
343 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
350 model_m32r_d_beq (SIM_CPU
*current_cpu
, void *sem_arg
)
352 #define FLD(f) abuf->fields.cti.fields.fmt_beq.f
353 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
354 const IDESC
* UNUSED idesc
= abuf
->idesc
;
358 int UNUSED insn_referenced
= abuf
->written
;
360 if (insn_referenced
& (1 << 3)) referenced
|= 1 << 1;
361 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
365 int UNUSED insn_referenced
= abuf
->written
;
368 src1
= FLD (in_src1
);
369 src2
= FLD (in_src2
);
370 referenced
|= 1 << 0;
371 referenced
|= 1 << 1;
372 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 1, referenced
, src1
, src2
);
379 model_m32r_d_beqz (SIM_CPU
*current_cpu
, void *sem_arg
)
381 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
382 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
383 const IDESC
* UNUSED idesc
= abuf
->idesc
;
387 int UNUSED insn_referenced
= abuf
->written
;
389 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 1;
390 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
394 int UNUSED insn_referenced
= abuf
->written
;
397 src2
= FLD (in_src2
);
398 referenced
|= 1 << 1;
399 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 1, referenced
, src1
, src2
);
406 model_m32r_d_bgez (SIM_CPU
*current_cpu
, void *sem_arg
)
408 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
409 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
410 const IDESC
* UNUSED idesc
= abuf
->idesc
;
414 int UNUSED insn_referenced
= abuf
->written
;
416 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 1;
417 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
421 int UNUSED insn_referenced
= abuf
->written
;
424 src2
= FLD (in_src2
);
425 referenced
|= 1 << 1;
426 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 1, referenced
, src1
, src2
);
433 model_m32r_d_bgtz (SIM_CPU
*current_cpu
, void *sem_arg
)
435 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
436 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
437 const IDESC
* UNUSED idesc
= abuf
->idesc
;
441 int UNUSED insn_referenced
= abuf
->written
;
443 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 1;
444 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
448 int UNUSED insn_referenced
= abuf
->written
;
451 src2
= FLD (in_src2
);
452 referenced
|= 1 << 1;
453 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 1, referenced
, src1
, src2
);
460 model_m32r_d_blez (SIM_CPU
*current_cpu
, void *sem_arg
)
462 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
463 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
464 const IDESC
* UNUSED idesc
= abuf
->idesc
;
468 int UNUSED insn_referenced
= abuf
->written
;
470 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 1;
471 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
475 int UNUSED insn_referenced
= abuf
->written
;
478 src2
= FLD (in_src2
);
479 referenced
|= 1 << 1;
480 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 1, referenced
, src1
, src2
);
487 model_m32r_d_bltz (SIM_CPU
*current_cpu
, void *sem_arg
)
489 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
490 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
491 const IDESC
* UNUSED idesc
= abuf
->idesc
;
495 int UNUSED insn_referenced
= abuf
->written
;
497 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 1;
498 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
502 int UNUSED insn_referenced
= abuf
->written
;
505 src2
= FLD (in_src2
);
506 referenced
|= 1 << 1;
507 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 1, referenced
, src1
, src2
);
514 model_m32r_d_bnez (SIM_CPU
*current_cpu
, void *sem_arg
)
516 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
517 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
518 const IDESC
* UNUSED idesc
= abuf
->idesc
;
522 int UNUSED insn_referenced
= abuf
->written
;
524 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 1;
525 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
529 int UNUSED insn_referenced
= abuf
->written
;
532 src2
= FLD (in_src2
);
533 referenced
|= 1 << 1;
534 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 1, referenced
, src1
, src2
);
541 model_m32r_d_bl8 (SIM_CPU
*current_cpu
, void *sem_arg
)
543 #define FLD(f) abuf->fields.cti.fields.fmt_bl8.f
544 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
545 const IDESC
* UNUSED idesc
= abuf
->idesc
;
549 int UNUSED insn_referenced
= abuf
->written
;
551 referenced
|= 1 << 1;
552 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
559 model_m32r_d_bl24 (SIM_CPU
*current_cpu
, void *sem_arg
)
561 #define FLD(f) abuf->fields.cti.fields.fmt_bl24.f
562 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
563 const IDESC
* UNUSED idesc
= abuf
->idesc
;
567 int UNUSED insn_referenced
= abuf
->written
;
569 referenced
|= 1 << 1;
570 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
577 model_m32r_d_bnc8 (SIM_CPU
*current_cpu
, void *sem_arg
)
579 #define FLD(f) abuf->fields.cti.fields.fmt_bc8.f
580 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
581 const IDESC
* UNUSED idesc
= abuf
->idesc
;
585 int UNUSED insn_referenced
= abuf
->written
;
587 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 1;
588 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
595 model_m32r_d_bnc24 (SIM_CPU
*current_cpu
, void *sem_arg
)
597 #define FLD(f) abuf->fields.cti.fields.fmt_bc24.f
598 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
599 const IDESC
* UNUSED idesc
= abuf
->idesc
;
603 int UNUSED insn_referenced
= abuf
->written
;
605 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 1;
606 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
613 model_m32r_d_bne (SIM_CPU
*current_cpu
, void *sem_arg
)
615 #define FLD(f) abuf->fields.cti.fields.fmt_beq.f
616 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
617 const IDESC
* UNUSED idesc
= abuf
->idesc
;
621 int UNUSED insn_referenced
= abuf
->written
;
623 if (insn_referenced
& (1 << 3)) referenced
|= 1 << 1;
624 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
628 int UNUSED insn_referenced
= abuf
->written
;
631 src1
= FLD (in_src1
);
632 src2
= FLD (in_src2
);
633 referenced
|= 1 << 0;
634 referenced
|= 1 << 1;
635 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 1, referenced
, src1
, src2
);
642 model_m32r_d_bra8 (SIM_CPU
*current_cpu
, void *sem_arg
)
644 #define FLD(f) abuf->fields.cti.fields.fmt_bra8.f
645 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
646 const IDESC
* UNUSED idesc
= abuf
->idesc
;
650 int UNUSED insn_referenced
= abuf
->written
;
652 referenced
|= 1 << 1;
653 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
660 model_m32r_d_bra24 (SIM_CPU
*current_cpu
, void *sem_arg
)
662 #define FLD(f) abuf->fields.cti.fields.fmt_bra24.f
663 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
664 const IDESC
* UNUSED idesc
= abuf
->idesc
;
668 int UNUSED insn_referenced
= abuf
->written
;
670 referenced
|= 1 << 1;
671 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
678 model_m32r_d_cmp (SIM_CPU
*current_cpu
, void *sem_arg
)
680 #define FLD(f) abuf->fields.fmt_cmp.f
681 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
682 const IDESC
* UNUSED idesc
= abuf
->idesc
;
686 int UNUSED insn_referenced
= abuf
->written
;
689 src1
= FLD (in_src1
);
690 src2
= FLD (in_src2
);
691 referenced
|= 1 << 0;
692 referenced
|= 1 << 1;
693 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
700 model_m32r_d_cmpi (SIM_CPU
*current_cpu
, void *sem_arg
)
702 #define FLD(f) abuf->fields.fmt_cmpi.f
703 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
704 const IDESC
* UNUSED idesc
= abuf
->idesc
;
708 int UNUSED insn_referenced
= abuf
->written
;
711 src2
= FLD (in_src2
);
712 referenced
|= 1 << 1;
713 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
720 model_m32r_d_cmpu (SIM_CPU
*current_cpu
, void *sem_arg
)
722 #define FLD(f) abuf->fields.fmt_cmp.f
723 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
724 const IDESC
* UNUSED idesc
= abuf
->idesc
;
728 int UNUSED insn_referenced
= abuf
->written
;
731 src1
= FLD (in_src1
);
732 src2
= FLD (in_src2
);
733 referenced
|= 1 << 0;
734 referenced
|= 1 << 1;
735 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
742 model_m32r_d_cmpui (SIM_CPU
*current_cpu
, void *sem_arg
)
744 #define FLD(f) abuf->fields.fmt_cmpi.f
745 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
746 const IDESC
* UNUSED idesc
= abuf
->idesc
;
750 int UNUSED insn_referenced
= abuf
->written
;
753 src2
= FLD (in_src2
);
754 referenced
|= 1 << 1;
755 cycles
+= m32rbf_model_m32r_d_u_cmp (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
762 model_m32r_d_div (SIM_CPU
*current_cpu
, void *sem_arg
)
764 #define FLD(f) abuf->fields.fmt_div.f
765 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
766 const IDESC
* UNUSED idesc
= abuf
->idesc
;
770 int UNUSED insn_referenced
= abuf
->written
;
776 referenced
|= 1 << 0;
777 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 2;
778 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
785 model_m32r_d_divu (SIM_CPU
*current_cpu
, void *sem_arg
)
787 #define FLD(f) abuf->fields.fmt_div.f
788 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
789 const IDESC
* UNUSED idesc
= abuf
->idesc
;
793 int UNUSED insn_referenced
= abuf
->written
;
799 referenced
|= 1 << 0;
800 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 2;
801 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
808 model_m32r_d_rem (SIM_CPU
*current_cpu
, void *sem_arg
)
810 #define FLD(f) abuf->fields.fmt_div.f
811 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
812 const IDESC
* UNUSED idesc
= abuf
->idesc
;
816 int UNUSED insn_referenced
= abuf
->written
;
822 referenced
|= 1 << 0;
823 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 2;
824 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
831 model_m32r_d_remu (SIM_CPU
*current_cpu
, void *sem_arg
)
833 #define FLD(f) abuf->fields.fmt_div.f
834 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
835 const IDESC
* UNUSED idesc
= abuf
->idesc
;
839 int UNUSED insn_referenced
= abuf
->written
;
845 referenced
|= 1 << 0;
846 if (insn_referenced
& (1 << 2)) referenced
|= 1 << 2;
847 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
854 model_m32r_d_jl (SIM_CPU
*current_cpu
, void *sem_arg
)
856 #define FLD(f) abuf->fields.cti.fields.fmt_jl.f
857 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
858 const IDESC
* UNUSED idesc
= abuf
->idesc
;
862 int UNUSED insn_referenced
= abuf
->written
;
865 referenced
|= 1 << 0;
866 referenced
|= 1 << 1;
867 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
874 model_m32r_d_jmp (SIM_CPU
*current_cpu
, void *sem_arg
)
876 #define FLD(f) abuf->fields.cti.fields.fmt_jmp.f
877 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
878 const IDESC
* UNUSED idesc
= abuf
->idesc
;
882 int UNUSED insn_referenced
= abuf
->written
;
885 referenced
|= 1 << 0;
886 referenced
|= 1 << 1;
887 cycles
+= m32rbf_model_m32r_d_u_cti (current_cpu
, idesc
, 0, referenced
, sr
);
894 model_m32r_d_ld (SIM_CPU
*current_cpu
, void *sem_arg
)
896 #define FLD(f) abuf->fields.fmt_ld.f
897 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
898 const IDESC
* UNUSED idesc
= abuf
->idesc
;
902 int UNUSED insn_referenced
= abuf
->written
;
907 referenced
|= 1 << 0;
908 referenced
|= 1 << 1;
909 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
916 model_m32r_d_ld_d (SIM_CPU
*current_cpu
, void *sem_arg
)
918 #define FLD(f) abuf->fields.fmt_ld_d.f
919 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
920 const IDESC
* UNUSED idesc
= abuf
->idesc
;
924 int UNUSED insn_referenced
= abuf
->written
;
929 referenced
|= 1 << 0;
930 referenced
|= 1 << 1;
931 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
938 model_m32r_d_ldb (SIM_CPU
*current_cpu
, void *sem_arg
)
940 #define FLD(f) abuf->fields.fmt_ldb.f
941 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
942 const IDESC
* UNUSED idesc
= abuf
->idesc
;
946 int UNUSED insn_referenced
= abuf
->written
;
951 referenced
|= 1 << 0;
952 referenced
|= 1 << 1;
953 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
960 model_m32r_d_ldb_d (SIM_CPU
*current_cpu
, void *sem_arg
)
962 #define FLD(f) abuf->fields.fmt_ldb_d.f
963 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
964 const IDESC
* UNUSED idesc
= abuf
->idesc
;
968 int UNUSED insn_referenced
= abuf
->written
;
973 referenced
|= 1 << 0;
974 referenced
|= 1 << 1;
975 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
982 model_m32r_d_ldh (SIM_CPU
*current_cpu
, void *sem_arg
)
984 #define FLD(f) abuf->fields.fmt_ldh.f
985 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
986 const IDESC
* UNUSED idesc
= abuf
->idesc
;
990 int UNUSED insn_referenced
= abuf
->written
;
995 referenced
|= 1 << 0;
996 referenced
|= 1 << 1;
997 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
1004 model_m32r_d_ldh_d (SIM_CPU
*current_cpu
, void *sem_arg
)
1006 #define FLD(f) abuf->fields.fmt_ldh_d.f
1007 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1008 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1012 int UNUSED insn_referenced
= abuf
->written
;
1017 referenced
|= 1 << 0;
1018 referenced
|= 1 << 1;
1019 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
1026 model_m32r_d_ldub (SIM_CPU
*current_cpu
, void *sem_arg
)
1028 #define FLD(f) abuf->fields.fmt_ldb.f
1029 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1030 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1034 int UNUSED insn_referenced
= abuf
->written
;
1039 referenced
|= 1 << 0;
1040 referenced
|= 1 << 1;
1041 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
1048 model_m32r_d_ldub_d (SIM_CPU
*current_cpu
, void *sem_arg
)
1050 #define FLD(f) abuf->fields.fmt_ldb_d.f
1051 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1052 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1056 int UNUSED insn_referenced
= abuf
->written
;
1061 referenced
|= 1 << 0;
1062 referenced
|= 1 << 1;
1063 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
1070 model_m32r_d_lduh (SIM_CPU
*current_cpu
, void *sem_arg
)
1072 #define FLD(f) abuf->fields.fmt_ldh.f
1073 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1074 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1078 int UNUSED insn_referenced
= abuf
->written
;
1083 referenced
|= 1 << 0;
1084 referenced
|= 1 << 1;
1085 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
1092 model_m32r_d_lduh_d (SIM_CPU
*current_cpu
, void *sem_arg
)
1094 #define FLD(f) abuf->fields.fmt_ldh_d.f
1095 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1096 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1100 int UNUSED insn_referenced
= abuf
->written
;
1105 referenced
|= 1 << 0;
1106 referenced
|= 1 << 1;
1107 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
1114 model_m32r_d_ld_plus (SIM_CPU
*current_cpu
, void *sem_arg
)
1116 #define FLD(f) abuf->fields.fmt_ld_plus.f
1117 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1118 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1122 int UNUSED insn_referenced
= abuf
->written
;
1127 referenced
|= 1 << 0;
1128 referenced
|= 1 << 1;
1129 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
1133 int UNUSED insn_referenced
= abuf
->written
;
1139 referenced
|= 1 << 0;
1140 referenced
|= 1 << 2;
1141 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 1, referenced
, sr
, sr2
, dr
);
1148 model_m32r_d_ld24 (SIM_CPU
*current_cpu
, void *sem_arg
)
1150 #define FLD(f) abuf->fields.fmt_ld24.f
1151 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1152 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1156 int UNUSED insn_referenced
= abuf
->written
;
1161 referenced
|= 1 << 2;
1162 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1169 model_m32r_d_ldi8 (SIM_CPU
*current_cpu
, void *sem_arg
)
1171 #define FLD(f) abuf->fields.fmt_ldi8.f
1172 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1173 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1177 int UNUSED insn_referenced
= abuf
->written
;
1182 referenced
|= 1 << 2;
1183 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1190 model_m32r_d_ldi16 (SIM_CPU
*current_cpu
, void *sem_arg
)
1192 #define FLD(f) abuf->fields.fmt_ldi16.f
1193 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1194 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1198 int UNUSED insn_referenced
= abuf
->written
;
1203 referenced
|= 1 << 2;
1204 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1211 model_m32r_d_lock (SIM_CPU
*current_cpu
, void *sem_arg
)
1213 #define FLD(f) abuf->fields.fmt_lock.f
1214 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1215 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1219 int UNUSED insn_referenced
= abuf
->written
;
1224 referenced
|= 1 << 0;
1225 referenced
|= 1 << 1;
1226 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
1233 model_m32r_d_machi (SIM_CPU
*current_cpu
, void *sem_arg
)
1235 #define FLD(f) abuf->fields.fmt_machi.f
1236 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1237 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1241 int UNUSED insn_referenced
= abuf
->written
;
1244 src1
= FLD (in_src1
);
1245 src2
= FLD (in_src2
);
1246 referenced
|= 1 << 0;
1247 referenced
|= 1 << 1;
1248 cycles
+= m32rbf_model_m32r_d_u_mac (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1255 model_m32r_d_maclo (SIM_CPU
*current_cpu
, void *sem_arg
)
1257 #define FLD(f) abuf->fields.fmt_machi.f
1258 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1259 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1263 int UNUSED insn_referenced
= abuf
->written
;
1266 src1
= FLD (in_src1
);
1267 src2
= FLD (in_src2
);
1268 referenced
|= 1 << 0;
1269 referenced
|= 1 << 1;
1270 cycles
+= m32rbf_model_m32r_d_u_mac (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1277 model_m32r_d_macwhi (SIM_CPU
*current_cpu
, void *sem_arg
)
1279 #define FLD(f) abuf->fields.fmt_machi.f
1280 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1281 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1285 int UNUSED insn_referenced
= abuf
->written
;
1288 src1
= FLD (in_src1
);
1289 src2
= FLD (in_src2
);
1290 referenced
|= 1 << 0;
1291 referenced
|= 1 << 1;
1292 cycles
+= m32rbf_model_m32r_d_u_mac (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1299 model_m32r_d_macwlo (SIM_CPU
*current_cpu
, void *sem_arg
)
1301 #define FLD(f) abuf->fields.fmt_machi.f
1302 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1303 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1307 int UNUSED insn_referenced
= abuf
->written
;
1310 src1
= FLD (in_src1
);
1311 src2
= FLD (in_src2
);
1312 referenced
|= 1 << 0;
1313 referenced
|= 1 << 1;
1314 cycles
+= m32rbf_model_m32r_d_u_mac (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1321 model_m32r_d_mul (SIM_CPU
*current_cpu
, void *sem_arg
)
1323 #define FLD(f) abuf->fields.fmt_add.f
1324 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1325 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1329 int UNUSED insn_referenced
= abuf
->written
;
1335 referenced
|= 1 << 0;
1336 referenced
|= 1 << 2;
1337 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1344 model_m32r_d_mulhi (SIM_CPU
*current_cpu
, void *sem_arg
)
1346 #define FLD(f) abuf->fields.fmt_mulhi.f
1347 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1348 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1352 int UNUSED insn_referenced
= abuf
->written
;
1355 src1
= FLD (in_src1
);
1356 src2
= FLD (in_src2
);
1357 referenced
|= 1 << 0;
1358 referenced
|= 1 << 1;
1359 cycles
+= m32rbf_model_m32r_d_u_mac (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1366 model_m32r_d_mullo (SIM_CPU
*current_cpu
, void *sem_arg
)
1368 #define FLD(f) abuf->fields.fmt_mulhi.f
1369 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1370 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1374 int UNUSED insn_referenced
= abuf
->written
;
1377 src1
= FLD (in_src1
);
1378 src2
= FLD (in_src2
);
1379 referenced
|= 1 << 0;
1380 referenced
|= 1 << 1;
1381 cycles
+= m32rbf_model_m32r_d_u_mac (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1388 model_m32r_d_mulwhi (SIM_CPU
*current_cpu
, void *sem_arg
)
1390 #define FLD(f) abuf->fields.fmt_mulhi.f
1391 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1392 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1396 int UNUSED insn_referenced
= abuf
->written
;
1399 src1
= FLD (in_src1
);
1400 src2
= FLD (in_src2
);
1401 referenced
|= 1 << 0;
1402 referenced
|= 1 << 1;
1403 cycles
+= m32rbf_model_m32r_d_u_mac (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1410 model_m32r_d_mulwlo (SIM_CPU
*current_cpu
, void *sem_arg
)
1412 #define FLD(f) abuf->fields.fmt_mulhi.f
1413 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1414 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1418 int UNUSED insn_referenced
= abuf
->written
;
1421 src1
= FLD (in_src1
);
1422 src2
= FLD (in_src2
);
1423 referenced
|= 1 << 0;
1424 referenced
|= 1 << 1;
1425 cycles
+= m32rbf_model_m32r_d_u_mac (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1432 model_m32r_d_mv (SIM_CPU
*current_cpu
, void *sem_arg
)
1434 #define FLD(f) abuf->fields.fmt_mv.f
1435 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1436 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1440 int UNUSED insn_referenced
= abuf
->written
;
1446 referenced
|= 1 << 0;
1447 referenced
|= 1 << 2;
1448 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1455 model_m32r_d_mvfachi (SIM_CPU
*current_cpu
, void *sem_arg
)
1457 #define FLD(f) abuf->fields.fmt_mvfachi.f
1458 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1459 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1463 int UNUSED insn_referenced
= abuf
->written
;
1468 referenced
|= 1 << 2;
1469 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1476 model_m32r_d_mvfaclo (SIM_CPU
*current_cpu
, void *sem_arg
)
1478 #define FLD(f) abuf->fields.fmt_mvfachi.f
1479 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1480 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1484 int UNUSED insn_referenced
= abuf
->written
;
1489 referenced
|= 1 << 2;
1490 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1497 model_m32r_d_mvfacmi (SIM_CPU
*current_cpu
, void *sem_arg
)
1499 #define FLD(f) abuf->fields.fmt_mvfachi.f
1500 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1501 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1505 int UNUSED insn_referenced
= abuf
->written
;
1510 referenced
|= 1 << 2;
1511 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1518 model_m32r_d_mvfc (SIM_CPU
*current_cpu
, void *sem_arg
)
1520 #define FLD(f) abuf->fields.fmt_mvfc.f
1521 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1522 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1526 int UNUSED insn_referenced
= abuf
->written
;
1531 referenced
|= 1 << 2;
1532 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1539 model_m32r_d_mvtachi (SIM_CPU
*current_cpu
, void *sem_arg
)
1541 #define FLD(f) abuf->fields.fmt_mvtachi.f
1542 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1543 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1547 int UNUSED insn_referenced
= abuf
->written
;
1552 referenced
|= 1 << 0;
1553 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1560 model_m32r_d_mvtaclo (SIM_CPU
*current_cpu
, void *sem_arg
)
1562 #define FLD(f) abuf->fields.fmt_mvtachi.f
1563 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1564 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1568 int UNUSED insn_referenced
= abuf
->written
;
1573 referenced
|= 1 << 0;
1574 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1581 model_m32r_d_mvtc (SIM_CPU
*current_cpu
, void *sem_arg
)
1583 #define FLD(f) abuf->fields.fmt_mvtc.f
1584 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1585 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1589 int UNUSED insn_referenced
= abuf
->written
;
1594 referenced
|= 1 << 0;
1595 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1602 model_m32r_d_neg (SIM_CPU
*current_cpu
, void *sem_arg
)
1604 #define FLD(f) abuf->fields.fmt_mv.f
1605 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1606 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1610 int UNUSED insn_referenced
= abuf
->written
;
1616 referenced
|= 1 << 0;
1617 referenced
|= 1 << 2;
1618 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1625 model_m32r_d_nop (SIM_CPU
*current_cpu
, void *sem_arg
)
1627 #define FLD(f) abuf->fields.fmt_nop.f
1628 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1629 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1633 int UNUSED insn_referenced
= abuf
->written
;
1637 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1644 model_m32r_d_not (SIM_CPU
*current_cpu
, void *sem_arg
)
1646 #define FLD(f) abuf->fields.fmt_mv.f
1647 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1648 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1652 int UNUSED insn_referenced
= abuf
->written
;
1658 referenced
|= 1 << 0;
1659 referenced
|= 1 << 2;
1660 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1667 model_m32r_d_rac (SIM_CPU
*current_cpu
, void *sem_arg
)
1669 #define FLD(f) abuf->fields.fmt_rac.f
1670 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1671 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1675 int UNUSED insn_referenced
= abuf
->written
;
1678 cycles
+= m32rbf_model_m32r_d_u_mac (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1685 model_m32r_d_rach (SIM_CPU
*current_cpu
, void *sem_arg
)
1687 #define FLD(f) abuf->fields.fmt_rac.f
1688 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1689 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1693 int UNUSED insn_referenced
= abuf
->written
;
1696 cycles
+= m32rbf_model_m32r_d_u_mac (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1703 model_m32r_d_rte (SIM_CPU
*current_cpu
, void *sem_arg
)
1705 #define FLD(f) abuf->fields.cti.fields.fmt_rte.f
1706 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1707 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1711 int UNUSED insn_referenced
= abuf
->written
;
1715 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1722 model_m32r_d_seth (SIM_CPU
*current_cpu
, void *sem_arg
)
1724 #define FLD(f) abuf->fields.fmt_seth.f
1725 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1726 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1730 int UNUSED insn_referenced
= abuf
->written
;
1735 referenced
|= 1 << 2;
1736 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1743 model_m32r_d_sll (SIM_CPU
*current_cpu
, void *sem_arg
)
1745 #define FLD(f) abuf->fields.fmt_add.f
1746 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1747 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1751 int UNUSED insn_referenced
= abuf
->written
;
1757 referenced
|= 1 << 0;
1758 referenced
|= 1 << 2;
1759 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1766 model_m32r_d_sll3 (SIM_CPU
*current_cpu
, void *sem_arg
)
1768 #define FLD(f) abuf->fields.fmt_sll3.f
1769 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1770 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1774 int UNUSED insn_referenced
= abuf
->written
;
1780 referenced
|= 1 << 0;
1781 referenced
|= 1 << 2;
1782 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1789 model_m32r_d_slli (SIM_CPU
*current_cpu
, void *sem_arg
)
1791 #define FLD(f) abuf->fields.fmt_slli.f
1792 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1793 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1797 int UNUSED insn_referenced
= abuf
->written
;
1802 referenced
|= 1 << 2;
1803 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1810 model_m32r_d_sra (SIM_CPU
*current_cpu
, void *sem_arg
)
1812 #define FLD(f) abuf->fields.fmt_add.f
1813 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1814 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1818 int UNUSED insn_referenced
= abuf
->written
;
1824 referenced
|= 1 << 0;
1825 referenced
|= 1 << 2;
1826 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1833 model_m32r_d_sra3 (SIM_CPU
*current_cpu
, void *sem_arg
)
1835 #define FLD(f) abuf->fields.fmt_sll3.f
1836 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1837 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1841 int UNUSED insn_referenced
= abuf
->written
;
1847 referenced
|= 1 << 0;
1848 referenced
|= 1 << 2;
1849 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1856 model_m32r_d_srai (SIM_CPU
*current_cpu
, void *sem_arg
)
1858 #define FLD(f) abuf->fields.fmt_slli.f
1859 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1860 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1864 int UNUSED insn_referenced
= abuf
->written
;
1869 referenced
|= 1 << 2;
1870 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1877 model_m32r_d_srl (SIM_CPU
*current_cpu
, void *sem_arg
)
1879 #define FLD(f) abuf->fields.fmt_add.f
1880 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1881 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1885 int UNUSED insn_referenced
= abuf
->written
;
1891 referenced
|= 1 << 0;
1892 referenced
|= 1 << 2;
1893 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1900 model_m32r_d_srl3 (SIM_CPU
*current_cpu
, void *sem_arg
)
1902 #define FLD(f) abuf->fields.fmt_sll3.f
1903 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1904 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1908 int UNUSED insn_referenced
= abuf
->written
;
1914 referenced
|= 1 << 0;
1915 referenced
|= 1 << 2;
1916 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1923 model_m32r_d_srli (SIM_CPU
*current_cpu
, void *sem_arg
)
1925 #define FLD(f) abuf->fields.fmt_slli.f
1926 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1927 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1931 int UNUSED insn_referenced
= abuf
->written
;
1936 referenced
|= 1 << 2;
1937 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
1944 model_m32r_d_st (SIM_CPU
*current_cpu
, void *sem_arg
)
1946 #define FLD(f) abuf->fields.fmt_st.f
1947 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1948 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1952 int UNUSED insn_referenced
= abuf
->written
;
1955 src1
= FLD (in_src1
);
1956 src2
= FLD (in_src2
);
1957 referenced
|= 1 << 0;
1958 referenced
|= 1 << 1;
1959 cycles
+= m32rbf_model_m32r_d_u_store (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1966 model_m32r_d_st_d (SIM_CPU
*current_cpu
, void *sem_arg
)
1968 #define FLD(f) abuf->fields.fmt_st_d.f
1969 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1970 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1974 int UNUSED insn_referenced
= abuf
->written
;
1977 src1
= FLD (in_src1
);
1978 src2
= FLD (in_src2
);
1979 referenced
|= 1 << 0;
1980 referenced
|= 1 << 1;
1981 cycles
+= m32rbf_model_m32r_d_u_store (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
1988 model_m32r_d_stb (SIM_CPU
*current_cpu
, void *sem_arg
)
1990 #define FLD(f) abuf->fields.fmt_stb.f
1991 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
1992 const IDESC
* UNUSED idesc
= abuf
->idesc
;
1996 int UNUSED insn_referenced
= abuf
->written
;
1999 src1
= FLD (in_src1
);
2000 src2
= FLD (in_src2
);
2001 referenced
|= 1 << 0;
2002 referenced
|= 1 << 1;
2003 cycles
+= m32rbf_model_m32r_d_u_store (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
2010 model_m32r_d_stb_d (SIM_CPU
*current_cpu
, void *sem_arg
)
2012 #define FLD(f) abuf->fields.fmt_stb_d.f
2013 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2014 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2018 int UNUSED insn_referenced
= abuf
->written
;
2021 src1
= FLD (in_src1
);
2022 src2
= FLD (in_src2
);
2023 referenced
|= 1 << 0;
2024 referenced
|= 1 << 1;
2025 cycles
+= m32rbf_model_m32r_d_u_store (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
2032 model_m32r_d_sth (SIM_CPU
*current_cpu
, void *sem_arg
)
2034 #define FLD(f) abuf->fields.fmt_sth.f
2035 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2036 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2040 int UNUSED insn_referenced
= abuf
->written
;
2043 src1
= FLD (in_src1
);
2044 src2
= FLD (in_src2
);
2045 referenced
|= 1 << 0;
2046 referenced
|= 1 << 1;
2047 cycles
+= m32rbf_model_m32r_d_u_store (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
2054 model_m32r_d_sth_d (SIM_CPU
*current_cpu
, void *sem_arg
)
2056 #define FLD(f) abuf->fields.fmt_sth_d.f
2057 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2058 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2062 int UNUSED insn_referenced
= abuf
->written
;
2065 src1
= FLD (in_src1
);
2066 src2
= FLD (in_src2
);
2067 referenced
|= 1 << 0;
2068 referenced
|= 1 << 1;
2069 cycles
+= m32rbf_model_m32r_d_u_store (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
2076 model_m32r_d_st_plus (SIM_CPU
*current_cpu
, void *sem_arg
)
2078 #define FLD(f) abuf->fields.fmt_st_plus.f
2079 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2080 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2084 int UNUSED insn_referenced
= abuf
->written
;
2087 src1
= FLD (in_src1
);
2088 src2
= FLD (in_src2
);
2089 referenced
|= 1 << 0;
2090 referenced
|= 1 << 1;
2091 cycles
+= m32rbf_model_m32r_d_u_store (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
2095 int UNUSED insn_referenced
= abuf
->written
;
2099 dr
= FLD (out_src2
);
2101 referenced
|= 1 << 0;
2102 referenced
|= 1 << 2;
2103 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 1, referenced
, sr
, sr2
, dr
);
2110 model_m32r_d_st_minus (SIM_CPU
*current_cpu
, void *sem_arg
)
2112 #define FLD(f) abuf->fields.fmt_st_plus.f
2113 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2114 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2118 int UNUSED insn_referenced
= abuf
->written
;
2121 src1
= FLD (in_src1
);
2122 src2
= FLD (in_src2
);
2123 referenced
|= 1 << 0;
2124 referenced
|= 1 << 1;
2125 cycles
+= m32rbf_model_m32r_d_u_store (current_cpu
, idesc
, 0, referenced
, src1
, src2
);
2129 int UNUSED insn_referenced
= abuf
->written
;
2133 dr
= FLD (out_src2
);
2135 referenced
|= 1 << 0;
2136 referenced
|= 1 << 2;
2137 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 1, referenced
, sr
, sr2
, dr
);
2144 model_m32r_d_sub (SIM_CPU
*current_cpu
, void *sem_arg
)
2146 #define FLD(f) abuf->fields.fmt_add.f
2147 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2148 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2152 int UNUSED insn_referenced
= abuf
->written
;
2158 referenced
|= 1 << 0;
2159 referenced
|= 1 << 2;
2160 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
2167 model_m32r_d_subv (SIM_CPU
*current_cpu
, void *sem_arg
)
2169 #define FLD(f) abuf->fields.fmt_addv.f
2170 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2171 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2175 int UNUSED insn_referenced
= abuf
->written
;
2181 referenced
|= 1 << 0;
2182 referenced
|= 1 << 2;
2183 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
2190 model_m32r_d_subx (SIM_CPU
*current_cpu
, void *sem_arg
)
2192 #define FLD(f) abuf->fields.fmt_addx.f
2193 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2194 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2198 int UNUSED insn_referenced
= abuf
->written
;
2204 referenced
|= 1 << 0;
2205 referenced
|= 1 << 2;
2206 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
2213 model_m32r_d_trap (SIM_CPU
*current_cpu
, void *sem_arg
)
2215 #define FLD(f) abuf->fields.cti.fields.fmt_trap.f
2216 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2217 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2221 int UNUSED insn_referenced
= abuf
->written
;
2225 cycles
+= m32rbf_model_m32r_d_u_exec (current_cpu
, idesc
, 0, referenced
, sr
, sr2
, dr
);
2232 model_m32r_d_unlock (SIM_CPU
*current_cpu
, void *sem_arg
)
2234 #define FLD(f) abuf->fields.fmt_unlock.f
2235 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2236 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2240 int UNUSED insn_referenced
= abuf
->written
;
2243 cycles
+= m32rbf_model_m32r_d_u_load (current_cpu
, idesc
, 0, referenced
, sr
, dr
);
2250 model_test_add (SIM_CPU
*current_cpu
, void *sem_arg
)
2252 #define FLD(f) abuf->fields.fmt_add.f
2253 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2254 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2258 int UNUSED insn_referenced
= abuf
->written
;
2259 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2266 model_test_add3 (SIM_CPU
*current_cpu
, void *sem_arg
)
2268 #define FLD(f) abuf->fields.fmt_add3.f
2269 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2270 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2274 int UNUSED insn_referenced
= abuf
->written
;
2275 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2282 model_test_and (SIM_CPU
*current_cpu
, void *sem_arg
)
2284 #define FLD(f) abuf->fields.fmt_add.f
2285 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2286 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2290 int UNUSED insn_referenced
= abuf
->written
;
2291 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2298 model_test_and3 (SIM_CPU
*current_cpu
, void *sem_arg
)
2300 #define FLD(f) abuf->fields.fmt_and3.f
2301 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2302 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2306 int UNUSED insn_referenced
= abuf
->written
;
2307 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2314 model_test_or (SIM_CPU
*current_cpu
, void *sem_arg
)
2316 #define FLD(f) abuf->fields.fmt_add.f
2317 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2318 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2322 int UNUSED insn_referenced
= abuf
->written
;
2323 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2330 model_test_or3 (SIM_CPU
*current_cpu
, void *sem_arg
)
2332 #define FLD(f) abuf->fields.fmt_or3.f
2333 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2334 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2338 int UNUSED insn_referenced
= abuf
->written
;
2339 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2346 model_test_xor (SIM_CPU
*current_cpu
, void *sem_arg
)
2348 #define FLD(f) abuf->fields.fmt_add.f
2349 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2350 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2354 int UNUSED insn_referenced
= abuf
->written
;
2355 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2362 model_test_xor3 (SIM_CPU
*current_cpu
, void *sem_arg
)
2364 #define FLD(f) abuf->fields.fmt_and3.f
2365 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2366 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2370 int UNUSED insn_referenced
= abuf
->written
;
2371 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2378 model_test_addi (SIM_CPU
*current_cpu
, void *sem_arg
)
2380 #define FLD(f) abuf->fields.fmt_addi.f
2381 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2382 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2386 int UNUSED insn_referenced
= abuf
->written
;
2387 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2394 model_test_addv (SIM_CPU
*current_cpu
, void *sem_arg
)
2396 #define FLD(f) abuf->fields.fmt_addv.f
2397 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2398 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2402 int UNUSED insn_referenced
= abuf
->written
;
2403 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2410 model_test_addv3 (SIM_CPU
*current_cpu
, void *sem_arg
)
2412 #define FLD(f) abuf->fields.fmt_addv3.f
2413 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2414 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2418 int UNUSED insn_referenced
= abuf
->written
;
2419 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2426 model_test_addx (SIM_CPU
*current_cpu
, void *sem_arg
)
2428 #define FLD(f) abuf->fields.fmt_addx.f
2429 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2430 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2434 int UNUSED insn_referenced
= abuf
->written
;
2435 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2442 model_test_bc8 (SIM_CPU
*current_cpu
, void *sem_arg
)
2444 #define FLD(f) abuf->fields.cti.fields.fmt_bc8.f
2445 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2446 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2450 int UNUSED insn_referenced
= abuf
->written
;
2451 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2458 model_test_bc24 (SIM_CPU
*current_cpu
, void *sem_arg
)
2460 #define FLD(f) abuf->fields.cti.fields.fmt_bc24.f
2461 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2462 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2466 int UNUSED insn_referenced
= abuf
->written
;
2467 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2474 model_test_beq (SIM_CPU
*current_cpu
, void *sem_arg
)
2476 #define FLD(f) abuf->fields.cti.fields.fmt_beq.f
2477 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2478 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2482 int UNUSED insn_referenced
= abuf
->written
;
2483 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2490 model_test_beqz (SIM_CPU
*current_cpu
, void *sem_arg
)
2492 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
2493 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2494 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2498 int UNUSED insn_referenced
= abuf
->written
;
2499 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2506 model_test_bgez (SIM_CPU
*current_cpu
, void *sem_arg
)
2508 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
2509 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2510 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2514 int UNUSED insn_referenced
= abuf
->written
;
2515 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2522 model_test_bgtz (SIM_CPU
*current_cpu
, void *sem_arg
)
2524 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
2525 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2526 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2530 int UNUSED insn_referenced
= abuf
->written
;
2531 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2538 model_test_blez (SIM_CPU
*current_cpu
, void *sem_arg
)
2540 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
2541 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2542 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2546 int UNUSED insn_referenced
= abuf
->written
;
2547 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2554 model_test_bltz (SIM_CPU
*current_cpu
, void *sem_arg
)
2556 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
2557 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2558 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2562 int UNUSED insn_referenced
= abuf
->written
;
2563 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2570 model_test_bnez (SIM_CPU
*current_cpu
, void *sem_arg
)
2572 #define FLD(f) abuf->fields.cti.fields.fmt_beqz.f
2573 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2574 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2578 int UNUSED insn_referenced
= abuf
->written
;
2579 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2586 model_test_bl8 (SIM_CPU
*current_cpu
, void *sem_arg
)
2588 #define FLD(f) abuf->fields.cti.fields.fmt_bl8.f
2589 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2590 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2594 int UNUSED insn_referenced
= abuf
->written
;
2595 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2602 model_test_bl24 (SIM_CPU
*current_cpu
, void *sem_arg
)
2604 #define FLD(f) abuf->fields.cti.fields.fmt_bl24.f
2605 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2606 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2610 int UNUSED insn_referenced
= abuf
->written
;
2611 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2618 model_test_bnc8 (SIM_CPU
*current_cpu
, void *sem_arg
)
2620 #define FLD(f) abuf->fields.cti.fields.fmt_bc8.f
2621 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2622 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2626 int UNUSED insn_referenced
= abuf
->written
;
2627 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2634 model_test_bnc24 (SIM_CPU
*current_cpu
, void *sem_arg
)
2636 #define FLD(f) abuf->fields.cti.fields.fmt_bc24.f
2637 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2638 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2642 int UNUSED insn_referenced
= abuf
->written
;
2643 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2650 model_test_bne (SIM_CPU
*current_cpu
, void *sem_arg
)
2652 #define FLD(f) abuf->fields.cti.fields.fmt_beq.f
2653 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2654 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2658 int UNUSED insn_referenced
= abuf
->written
;
2659 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2666 model_test_bra8 (SIM_CPU
*current_cpu
, void *sem_arg
)
2668 #define FLD(f) abuf->fields.cti.fields.fmt_bra8.f
2669 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2670 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2674 int UNUSED insn_referenced
= abuf
->written
;
2675 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2682 model_test_bra24 (SIM_CPU
*current_cpu
, void *sem_arg
)
2684 #define FLD(f) abuf->fields.cti.fields.fmt_bra24.f
2685 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2686 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2690 int UNUSED insn_referenced
= abuf
->written
;
2691 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2698 model_test_cmp (SIM_CPU
*current_cpu
, void *sem_arg
)
2700 #define FLD(f) abuf->fields.fmt_cmp.f
2701 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2702 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2706 int UNUSED insn_referenced
= abuf
->written
;
2707 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2714 model_test_cmpi (SIM_CPU
*current_cpu
, void *sem_arg
)
2716 #define FLD(f) abuf->fields.fmt_cmpi.f
2717 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2718 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2722 int UNUSED insn_referenced
= abuf
->written
;
2723 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2730 model_test_cmpu (SIM_CPU
*current_cpu
, void *sem_arg
)
2732 #define FLD(f) abuf->fields.fmt_cmp.f
2733 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2734 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2738 int UNUSED insn_referenced
= abuf
->written
;
2739 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2746 model_test_cmpui (SIM_CPU
*current_cpu
, void *sem_arg
)
2748 #define FLD(f) abuf->fields.fmt_cmpi.f
2749 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2750 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2754 int UNUSED insn_referenced
= abuf
->written
;
2755 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2762 model_test_div (SIM_CPU
*current_cpu
, void *sem_arg
)
2764 #define FLD(f) abuf->fields.fmt_div.f
2765 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2766 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2770 int UNUSED insn_referenced
= abuf
->written
;
2771 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2778 model_test_divu (SIM_CPU
*current_cpu
, void *sem_arg
)
2780 #define FLD(f) abuf->fields.fmt_div.f
2781 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2782 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2786 int UNUSED insn_referenced
= abuf
->written
;
2787 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2794 model_test_rem (SIM_CPU
*current_cpu
, void *sem_arg
)
2796 #define FLD(f) abuf->fields.fmt_div.f
2797 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2798 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2802 int UNUSED insn_referenced
= abuf
->written
;
2803 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2810 model_test_remu (SIM_CPU
*current_cpu
, void *sem_arg
)
2812 #define FLD(f) abuf->fields.fmt_div.f
2813 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2814 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2818 int UNUSED insn_referenced
= abuf
->written
;
2819 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2826 model_test_jl (SIM_CPU
*current_cpu
, void *sem_arg
)
2828 #define FLD(f) abuf->fields.cti.fields.fmt_jl.f
2829 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2830 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2834 int UNUSED insn_referenced
= abuf
->written
;
2835 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2842 model_test_jmp (SIM_CPU
*current_cpu
, void *sem_arg
)
2844 #define FLD(f) abuf->fields.cti.fields.fmt_jmp.f
2845 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2846 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2850 int UNUSED insn_referenced
= abuf
->written
;
2851 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2858 model_test_ld (SIM_CPU
*current_cpu
, void *sem_arg
)
2860 #define FLD(f) abuf->fields.fmt_ld.f
2861 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2862 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2866 int UNUSED insn_referenced
= abuf
->written
;
2867 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2874 model_test_ld_d (SIM_CPU
*current_cpu
, void *sem_arg
)
2876 #define FLD(f) abuf->fields.fmt_ld_d.f
2877 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2878 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2882 int UNUSED insn_referenced
= abuf
->written
;
2883 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2890 model_test_ldb (SIM_CPU
*current_cpu
, void *sem_arg
)
2892 #define FLD(f) abuf->fields.fmt_ldb.f
2893 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2894 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2898 int UNUSED insn_referenced
= abuf
->written
;
2899 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2906 model_test_ldb_d (SIM_CPU
*current_cpu
, void *sem_arg
)
2908 #define FLD(f) abuf->fields.fmt_ldb_d.f
2909 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2910 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2914 int UNUSED insn_referenced
= abuf
->written
;
2915 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2922 model_test_ldh (SIM_CPU
*current_cpu
, void *sem_arg
)
2924 #define FLD(f) abuf->fields.fmt_ldh.f
2925 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2926 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2930 int UNUSED insn_referenced
= abuf
->written
;
2931 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2938 model_test_ldh_d (SIM_CPU
*current_cpu
, void *sem_arg
)
2940 #define FLD(f) abuf->fields.fmt_ldh_d.f
2941 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2942 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2946 int UNUSED insn_referenced
= abuf
->written
;
2947 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2954 model_test_ldub (SIM_CPU
*current_cpu
, void *sem_arg
)
2956 #define FLD(f) abuf->fields.fmt_ldb.f
2957 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2958 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2962 int UNUSED insn_referenced
= abuf
->written
;
2963 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2970 model_test_ldub_d (SIM_CPU
*current_cpu
, void *sem_arg
)
2972 #define FLD(f) abuf->fields.fmt_ldb_d.f
2973 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2974 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2978 int UNUSED insn_referenced
= abuf
->written
;
2979 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
2986 model_test_lduh (SIM_CPU
*current_cpu
, void *sem_arg
)
2988 #define FLD(f) abuf->fields.fmt_ldh.f
2989 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
2990 const IDESC
* UNUSED idesc
= abuf
->idesc
;
2994 int UNUSED insn_referenced
= abuf
->written
;
2995 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3002 model_test_lduh_d (SIM_CPU
*current_cpu
, void *sem_arg
)
3004 #define FLD(f) abuf->fields.fmt_ldh_d.f
3005 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3006 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3010 int UNUSED insn_referenced
= abuf
->written
;
3011 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3018 model_test_ld_plus (SIM_CPU
*current_cpu
, void *sem_arg
)
3020 #define FLD(f) abuf->fields.fmt_ld_plus.f
3021 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3022 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3026 int UNUSED insn_referenced
= abuf
->written
;
3027 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3034 model_test_ld24 (SIM_CPU
*current_cpu
, void *sem_arg
)
3036 #define FLD(f) abuf->fields.fmt_ld24.f
3037 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3038 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3042 int UNUSED insn_referenced
= abuf
->written
;
3043 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3050 model_test_ldi8 (SIM_CPU
*current_cpu
, void *sem_arg
)
3052 #define FLD(f) abuf->fields.fmt_ldi8.f
3053 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3054 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3058 int UNUSED insn_referenced
= abuf
->written
;
3059 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3066 model_test_ldi16 (SIM_CPU
*current_cpu
, void *sem_arg
)
3068 #define FLD(f) abuf->fields.fmt_ldi16.f
3069 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3070 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3074 int UNUSED insn_referenced
= abuf
->written
;
3075 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3082 model_test_lock (SIM_CPU
*current_cpu
, void *sem_arg
)
3084 #define FLD(f) abuf->fields.fmt_lock.f
3085 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3086 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3090 int UNUSED insn_referenced
= abuf
->written
;
3091 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3098 model_test_machi (SIM_CPU
*current_cpu
, void *sem_arg
)
3100 #define FLD(f) abuf->fields.fmt_machi.f
3101 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3102 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3106 int UNUSED insn_referenced
= abuf
->written
;
3107 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3114 model_test_maclo (SIM_CPU
*current_cpu
, void *sem_arg
)
3116 #define FLD(f) abuf->fields.fmt_machi.f
3117 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3118 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3122 int UNUSED insn_referenced
= abuf
->written
;
3123 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3130 model_test_macwhi (SIM_CPU
*current_cpu
, void *sem_arg
)
3132 #define FLD(f) abuf->fields.fmt_machi.f
3133 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3134 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3138 int UNUSED insn_referenced
= abuf
->written
;
3139 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3146 model_test_macwlo (SIM_CPU
*current_cpu
, void *sem_arg
)
3148 #define FLD(f) abuf->fields.fmt_machi.f
3149 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3150 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3154 int UNUSED insn_referenced
= abuf
->written
;
3155 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3162 model_test_mul (SIM_CPU
*current_cpu
, void *sem_arg
)
3164 #define FLD(f) abuf->fields.fmt_add.f
3165 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3166 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3170 int UNUSED insn_referenced
= abuf
->written
;
3171 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3178 model_test_mulhi (SIM_CPU
*current_cpu
, void *sem_arg
)
3180 #define FLD(f) abuf->fields.fmt_mulhi.f
3181 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3182 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3186 int UNUSED insn_referenced
= abuf
->written
;
3187 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3194 model_test_mullo (SIM_CPU
*current_cpu
, void *sem_arg
)
3196 #define FLD(f) abuf->fields.fmt_mulhi.f
3197 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3198 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3202 int UNUSED insn_referenced
= abuf
->written
;
3203 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3210 model_test_mulwhi (SIM_CPU
*current_cpu
, void *sem_arg
)
3212 #define FLD(f) abuf->fields.fmt_mulhi.f
3213 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3214 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3218 int UNUSED insn_referenced
= abuf
->written
;
3219 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3226 model_test_mulwlo (SIM_CPU
*current_cpu
, void *sem_arg
)
3228 #define FLD(f) abuf->fields.fmt_mulhi.f
3229 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3230 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3234 int UNUSED insn_referenced
= abuf
->written
;
3235 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3242 model_test_mv (SIM_CPU
*current_cpu
, void *sem_arg
)
3244 #define FLD(f) abuf->fields.fmt_mv.f
3245 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3246 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3250 int UNUSED insn_referenced
= abuf
->written
;
3251 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3258 model_test_mvfachi (SIM_CPU
*current_cpu
, void *sem_arg
)
3260 #define FLD(f) abuf->fields.fmt_mvfachi.f
3261 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3262 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3266 int UNUSED insn_referenced
= abuf
->written
;
3267 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3274 model_test_mvfaclo (SIM_CPU
*current_cpu
, void *sem_arg
)
3276 #define FLD(f) abuf->fields.fmt_mvfachi.f
3277 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3278 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3282 int UNUSED insn_referenced
= abuf
->written
;
3283 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3290 model_test_mvfacmi (SIM_CPU
*current_cpu
, void *sem_arg
)
3292 #define FLD(f) abuf->fields.fmt_mvfachi.f
3293 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3294 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3298 int UNUSED insn_referenced
= abuf
->written
;
3299 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3306 model_test_mvfc (SIM_CPU
*current_cpu
, void *sem_arg
)
3308 #define FLD(f) abuf->fields.fmt_mvfc.f
3309 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3310 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3314 int UNUSED insn_referenced
= abuf
->written
;
3315 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3322 model_test_mvtachi (SIM_CPU
*current_cpu
, void *sem_arg
)
3324 #define FLD(f) abuf->fields.fmt_mvtachi.f
3325 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3326 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3330 int UNUSED insn_referenced
= abuf
->written
;
3331 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3338 model_test_mvtaclo (SIM_CPU
*current_cpu
, void *sem_arg
)
3340 #define FLD(f) abuf->fields.fmt_mvtachi.f
3341 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3342 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3346 int UNUSED insn_referenced
= abuf
->written
;
3347 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3354 model_test_mvtc (SIM_CPU
*current_cpu
, void *sem_arg
)
3356 #define FLD(f) abuf->fields.fmt_mvtc.f
3357 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3358 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3362 int UNUSED insn_referenced
= abuf
->written
;
3363 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3370 model_test_neg (SIM_CPU
*current_cpu
, void *sem_arg
)
3372 #define FLD(f) abuf->fields.fmt_mv.f
3373 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3374 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3378 int UNUSED insn_referenced
= abuf
->written
;
3379 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3386 model_test_nop (SIM_CPU
*current_cpu
, void *sem_arg
)
3388 #define FLD(f) abuf->fields.fmt_nop.f
3389 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3390 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3394 int UNUSED insn_referenced
= abuf
->written
;
3395 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3402 model_test_not (SIM_CPU
*current_cpu
, void *sem_arg
)
3404 #define FLD(f) abuf->fields.fmt_mv.f
3405 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3406 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3410 int UNUSED insn_referenced
= abuf
->written
;
3411 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3418 model_test_rac (SIM_CPU
*current_cpu
, void *sem_arg
)
3420 #define FLD(f) abuf->fields.fmt_rac.f
3421 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3422 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3426 int UNUSED insn_referenced
= abuf
->written
;
3427 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3434 model_test_rach (SIM_CPU
*current_cpu
, void *sem_arg
)
3436 #define FLD(f) abuf->fields.fmt_rac.f
3437 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3438 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3442 int UNUSED insn_referenced
= abuf
->written
;
3443 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3450 model_test_rte (SIM_CPU
*current_cpu
, void *sem_arg
)
3452 #define FLD(f) abuf->fields.cti.fields.fmt_rte.f
3453 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3454 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3458 int UNUSED insn_referenced
= abuf
->written
;
3459 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3466 model_test_seth (SIM_CPU
*current_cpu
, void *sem_arg
)
3468 #define FLD(f) abuf->fields.fmt_seth.f
3469 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3470 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3474 int UNUSED insn_referenced
= abuf
->written
;
3475 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3482 model_test_sll (SIM_CPU
*current_cpu
, void *sem_arg
)
3484 #define FLD(f) abuf->fields.fmt_add.f
3485 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3486 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3490 int UNUSED insn_referenced
= abuf
->written
;
3491 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3498 model_test_sll3 (SIM_CPU
*current_cpu
, void *sem_arg
)
3500 #define FLD(f) abuf->fields.fmt_sll3.f
3501 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3502 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3506 int UNUSED insn_referenced
= abuf
->written
;
3507 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3514 model_test_slli (SIM_CPU
*current_cpu
, void *sem_arg
)
3516 #define FLD(f) abuf->fields.fmt_slli.f
3517 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3518 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3522 int UNUSED insn_referenced
= abuf
->written
;
3523 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3530 model_test_sra (SIM_CPU
*current_cpu
, void *sem_arg
)
3532 #define FLD(f) abuf->fields.fmt_add.f
3533 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3534 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3538 int UNUSED insn_referenced
= abuf
->written
;
3539 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3546 model_test_sra3 (SIM_CPU
*current_cpu
, void *sem_arg
)
3548 #define FLD(f) abuf->fields.fmt_sll3.f
3549 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3550 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3554 int UNUSED insn_referenced
= abuf
->written
;
3555 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3562 model_test_srai (SIM_CPU
*current_cpu
, void *sem_arg
)
3564 #define FLD(f) abuf->fields.fmt_slli.f
3565 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3566 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3570 int UNUSED insn_referenced
= abuf
->written
;
3571 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3578 model_test_srl (SIM_CPU
*current_cpu
, void *sem_arg
)
3580 #define FLD(f) abuf->fields.fmt_add.f
3581 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3582 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3586 int UNUSED insn_referenced
= abuf
->written
;
3587 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3594 model_test_srl3 (SIM_CPU
*current_cpu
, void *sem_arg
)
3596 #define FLD(f) abuf->fields.fmt_sll3.f
3597 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3598 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3602 int UNUSED insn_referenced
= abuf
->written
;
3603 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3610 model_test_srli (SIM_CPU
*current_cpu
, void *sem_arg
)
3612 #define FLD(f) abuf->fields.fmt_slli.f
3613 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3614 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3618 int UNUSED insn_referenced
= abuf
->written
;
3619 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3626 model_test_st (SIM_CPU
*current_cpu
, void *sem_arg
)
3628 #define FLD(f) abuf->fields.fmt_st.f
3629 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3630 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3634 int UNUSED insn_referenced
= abuf
->written
;
3635 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3642 model_test_st_d (SIM_CPU
*current_cpu
, void *sem_arg
)
3644 #define FLD(f) abuf->fields.fmt_st_d.f
3645 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3646 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3650 int UNUSED insn_referenced
= abuf
->written
;
3651 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3658 model_test_stb (SIM_CPU
*current_cpu
, void *sem_arg
)
3660 #define FLD(f) abuf->fields.fmt_stb.f
3661 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3662 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3666 int UNUSED insn_referenced
= abuf
->written
;
3667 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3674 model_test_stb_d (SIM_CPU
*current_cpu
, void *sem_arg
)
3676 #define FLD(f) abuf->fields.fmt_stb_d.f
3677 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3678 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3682 int UNUSED insn_referenced
= abuf
->written
;
3683 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3690 model_test_sth (SIM_CPU
*current_cpu
, void *sem_arg
)
3692 #define FLD(f) abuf->fields.fmt_sth.f
3693 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3694 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3698 int UNUSED insn_referenced
= abuf
->written
;
3699 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3706 model_test_sth_d (SIM_CPU
*current_cpu
, void *sem_arg
)
3708 #define FLD(f) abuf->fields.fmt_sth_d.f
3709 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3710 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3714 int UNUSED insn_referenced
= abuf
->written
;
3715 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3722 model_test_st_plus (SIM_CPU
*current_cpu
, void *sem_arg
)
3724 #define FLD(f) abuf->fields.fmt_st_plus.f
3725 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3726 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3730 int UNUSED insn_referenced
= abuf
->written
;
3731 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3738 model_test_st_minus (SIM_CPU
*current_cpu
, void *sem_arg
)
3740 #define FLD(f) abuf->fields.fmt_st_plus.f
3741 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3742 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3746 int UNUSED insn_referenced
= abuf
->written
;
3747 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3754 model_test_sub (SIM_CPU
*current_cpu
, void *sem_arg
)
3756 #define FLD(f) abuf->fields.fmt_add.f
3757 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3758 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3762 int UNUSED insn_referenced
= abuf
->written
;
3763 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3770 model_test_subv (SIM_CPU
*current_cpu
, void *sem_arg
)
3772 #define FLD(f) abuf->fields.fmt_addv.f
3773 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3774 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3778 int UNUSED insn_referenced
= abuf
->written
;
3779 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3786 model_test_subx (SIM_CPU
*current_cpu
, void *sem_arg
)
3788 #define FLD(f) abuf->fields.fmt_addx.f
3789 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3790 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3794 int UNUSED insn_referenced
= abuf
->written
;
3795 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3802 model_test_trap (SIM_CPU
*current_cpu
, void *sem_arg
)
3804 #define FLD(f) abuf->fields.cti.fields.fmt_trap.f
3805 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3806 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3810 int UNUSED insn_referenced
= abuf
->written
;
3811 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3818 model_test_unlock (SIM_CPU
*current_cpu
, void *sem_arg
)
3820 #define FLD(f) abuf->fields.fmt_unlock.f
3821 const ARGBUF
* UNUSED abuf
= SEM_ARGBUF ((SEM_ARG
) sem_arg
);
3822 const IDESC
* UNUSED idesc
= abuf
->idesc
;
3826 int UNUSED insn_referenced
= abuf
->written
;
3827 cycles
+= m32rbf_model_test_u_exec (current_cpu
, idesc
, 0, referenced
);
3833 /* We assume UNIT_NONE == 0 because the tables don't always terminate
3836 /* Model timing data for `m32r/d'. */
3838 static const INSN_TIMING m32r_d_timing
[] = {
3839 { M32RBF_INSN_X_INVALID
, 0, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3840 { M32RBF_INSN_X_AFTER
, 0, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3841 { M32RBF_INSN_X_BEFORE
, 0, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3842 { M32RBF_INSN_X_CTI_CHAIN
, 0, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3843 { M32RBF_INSN_X_CHAIN
, 0, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3844 { M32RBF_INSN_X_BEGIN
, 0, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3845 { M32RBF_INSN_ADD
, model_m32r_d_add
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3846 { M32RBF_INSN_ADD3
, model_m32r_d_add3
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3847 { M32RBF_INSN_AND
, model_m32r_d_and
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3848 { M32RBF_INSN_AND3
, model_m32r_d_and3
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3849 { M32RBF_INSN_OR
, model_m32r_d_or
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3850 { M32RBF_INSN_OR3
, model_m32r_d_or3
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3851 { M32RBF_INSN_XOR
, model_m32r_d_xor
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3852 { M32RBF_INSN_XOR3
, model_m32r_d_xor3
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3853 { M32RBF_INSN_ADDI
, model_m32r_d_addi
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3854 { M32RBF_INSN_ADDV
, model_m32r_d_addv
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3855 { M32RBF_INSN_ADDV3
, model_m32r_d_addv3
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3856 { M32RBF_INSN_ADDX
, model_m32r_d_addx
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3857 { M32RBF_INSN_BC8
, model_m32r_d_bc8
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 } } },
3858 { M32RBF_INSN_BC24
, model_m32r_d_bc24
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 } } },
3859 { M32RBF_INSN_BEQ
, model_m32r_d_beq
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 }, { (int) UNIT_M32R_D_U_CMP
, 1, 0 } } },
3860 { M32RBF_INSN_BEQZ
, model_m32r_d_beqz
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 }, { (int) UNIT_M32R_D_U_CMP
, 1, 0 } } },
3861 { M32RBF_INSN_BGEZ
, model_m32r_d_bgez
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 }, { (int) UNIT_M32R_D_U_CMP
, 1, 0 } } },
3862 { M32RBF_INSN_BGTZ
, model_m32r_d_bgtz
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 }, { (int) UNIT_M32R_D_U_CMP
, 1, 0 } } },
3863 { M32RBF_INSN_BLEZ
, model_m32r_d_blez
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 }, { (int) UNIT_M32R_D_U_CMP
, 1, 0 } } },
3864 { M32RBF_INSN_BLTZ
, model_m32r_d_bltz
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 }, { (int) UNIT_M32R_D_U_CMP
, 1, 0 } } },
3865 { M32RBF_INSN_BNEZ
, model_m32r_d_bnez
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 }, { (int) UNIT_M32R_D_U_CMP
, 1, 0 } } },
3866 { M32RBF_INSN_BL8
, model_m32r_d_bl8
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 } } },
3867 { M32RBF_INSN_BL24
, model_m32r_d_bl24
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 } } },
3868 { M32RBF_INSN_BNC8
, model_m32r_d_bnc8
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 } } },
3869 { M32RBF_INSN_BNC24
, model_m32r_d_bnc24
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 } } },
3870 { M32RBF_INSN_BNE
, model_m32r_d_bne
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 }, { (int) UNIT_M32R_D_U_CMP
, 1, 0 } } },
3871 { M32RBF_INSN_BRA8
, model_m32r_d_bra8
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 } } },
3872 { M32RBF_INSN_BRA24
, model_m32r_d_bra24
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 } } },
3873 { M32RBF_INSN_CMP
, model_m32r_d_cmp
, { { (int) UNIT_M32R_D_U_CMP
, 1, 1 } } },
3874 { M32RBF_INSN_CMPI
, model_m32r_d_cmpi
, { { (int) UNIT_M32R_D_U_CMP
, 1, 1 } } },
3875 { M32RBF_INSN_CMPU
, model_m32r_d_cmpu
, { { (int) UNIT_M32R_D_U_CMP
, 1, 1 } } },
3876 { M32RBF_INSN_CMPUI
, model_m32r_d_cmpui
, { { (int) UNIT_M32R_D_U_CMP
, 1, 1 } } },
3877 { M32RBF_INSN_DIV
, model_m32r_d_div
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 37 } } },
3878 { M32RBF_INSN_DIVU
, model_m32r_d_divu
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 37 } } },
3879 { M32RBF_INSN_REM
, model_m32r_d_rem
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 37 } } },
3880 { M32RBF_INSN_REMU
, model_m32r_d_remu
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 37 } } },
3881 { M32RBF_INSN_JL
, model_m32r_d_jl
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 } } },
3882 { M32RBF_INSN_JMP
, model_m32r_d_jmp
, { { (int) UNIT_M32R_D_U_CTI
, 1, 1 } } },
3883 { M32RBF_INSN_LD
, model_m32r_d_ld
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 1 } } },
3884 { M32RBF_INSN_LD_D
, model_m32r_d_ld_d
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 2 } } },
3885 { M32RBF_INSN_LDB
, model_m32r_d_ldb
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 1 } } },
3886 { M32RBF_INSN_LDB_D
, model_m32r_d_ldb_d
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 2 } } },
3887 { M32RBF_INSN_LDH
, model_m32r_d_ldh
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 1 } } },
3888 { M32RBF_INSN_LDH_D
, model_m32r_d_ldh_d
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 2 } } },
3889 { M32RBF_INSN_LDUB
, model_m32r_d_ldub
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 1 } } },
3890 { M32RBF_INSN_LDUB_D
, model_m32r_d_ldub_d
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 2 } } },
3891 { M32RBF_INSN_LDUH
, model_m32r_d_lduh
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 1 } } },
3892 { M32RBF_INSN_LDUH_D
, model_m32r_d_lduh_d
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 2 } } },
3893 { M32RBF_INSN_LD_PLUS
, model_m32r_d_ld_plus
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 1 }, { (int) UNIT_M32R_D_U_EXEC
, 1, 0 } } },
3894 { M32RBF_INSN_LD24
, model_m32r_d_ld24
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3895 { M32RBF_INSN_LDI8
, model_m32r_d_ldi8
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3896 { M32RBF_INSN_LDI16
, model_m32r_d_ldi16
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3897 { M32RBF_INSN_LOCK
, model_m32r_d_lock
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 1 } } },
3898 { M32RBF_INSN_MACHI
, model_m32r_d_machi
, { { (int) UNIT_M32R_D_U_MAC
, 1, 1 } } },
3899 { M32RBF_INSN_MACLO
, model_m32r_d_maclo
, { { (int) UNIT_M32R_D_U_MAC
, 1, 1 } } },
3900 { M32RBF_INSN_MACWHI
, model_m32r_d_macwhi
, { { (int) UNIT_M32R_D_U_MAC
, 1, 1 } } },
3901 { M32RBF_INSN_MACWLO
, model_m32r_d_macwlo
, { { (int) UNIT_M32R_D_U_MAC
, 1, 1 } } },
3902 { M32RBF_INSN_MUL
, model_m32r_d_mul
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 4 } } },
3903 { M32RBF_INSN_MULHI
, model_m32r_d_mulhi
, { { (int) UNIT_M32R_D_U_MAC
, 1, 1 } } },
3904 { M32RBF_INSN_MULLO
, model_m32r_d_mullo
, { { (int) UNIT_M32R_D_U_MAC
, 1, 1 } } },
3905 { M32RBF_INSN_MULWHI
, model_m32r_d_mulwhi
, { { (int) UNIT_M32R_D_U_MAC
, 1, 1 } } },
3906 { M32RBF_INSN_MULWLO
, model_m32r_d_mulwlo
, { { (int) UNIT_M32R_D_U_MAC
, 1, 1 } } },
3907 { M32RBF_INSN_MV
, model_m32r_d_mv
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3908 { M32RBF_INSN_MVFACHI
, model_m32r_d_mvfachi
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 2 } } },
3909 { M32RBF_INSN_MVFACLO
, model_m32r_d_mvfaclo
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 2 } } },
3910 { M32RBF_INSN_MVFACMI
, model_m32r_d_mvfacmi
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 2 } } },
3911 { M32RBF_INSN_MVFC
, model_m32r_d_mvfc
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3912 { M32RBF_INSN_MVTACHI
, model_m32r_d_mvtachi
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3913 { M32RBF_INSN_MVTACLO
, model_m32r_d_mvtaclo
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3914 { M32RBF_INSN_MVTC
, model_m32r_d_mvtc
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3915 { M32RBF_INSN_NEG
, model_m32r_d_neg
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3916 { M32RBF_INSN_NOP
, model_m32r_d_nop
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 0 } } },
3917 { M32RBF_INSN_NOT
, model_m32r_d_not
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3918 { M32RBF_INSN_RAC
, model_m32r_d_rac
, { { (int) UNIT_M32R_D_U_MAC
, 1, 1 } } },
3919 { M32RBF_INSN_RACH
, model_m32r_d_rach
, { { (int) UNIT_M32R_D_U_MAC
, 1, 1 } } },
3920 { M32RBF_INSN_RTE
, model_m32r_d_rte
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3921 { M32RBF_INSN_SETH
, model_m32r_d_seth
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3922 { M32RBF_INSN_SLL
, model_m32r_d_sll
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3923 { M32RBF_INSN_SLL3
, model_m32r_d_sll3
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3924 { M32RBF_INSN_SLLI
, model_m32r_d_slli
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3925 { M32RBF_INSN_SRA
, model_m32r_d_sra
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3926 { M32RBF_INSN_SRA3
, model_m32r_d_sra3
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3927 { M32RBF_INSN_SRAI
, model_m32r_d_srai
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3928 { M32RBF_INSN_SRL
, model_m32r_d_srl
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3929 { M32RBF_INSN_SRL3
, model_m32r_d_srl3
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3930 { M32RBF_INSN_SRLI
, model_m32r_d_srli
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3931 { M32RBF_INSN_ST
, model_m32r_d_st
, { { (int) UNIT_M32R_D_U_STORE
, 1, 1 } } },
3932 { M32RBF_INSN_ST_D
, model_m32r_d_st_d
, { { (int) UNIT_M32R_D_U_STORE
, 1, 2 } } },
3933 { M32RBF_INSN_STB
, model_m32r_d_stb
, { { (int) UNIT_M32R_D_U_STORE
, 1, 1 } } },
3934 { M32RBF_INSN_STB_D
, model_m32r_d_stb_d
, { { (int) UNIT_M32R_D_U_STORE
, 1, 2 } } },
3935 { M32RBF_INSN_STH
, model_m32r_d_sth
, { { (int) UNIT_M32R_D_U_STORE
, 1, 1 } } },
3936 { M32RBF_INSN_STH_D
, model_m32r_d_sth_d
, { { (int) UNIT_M32R_D_U_STORE
, 1, 2 } } },
3937 { M32RBF_INSN_ST_PLUS
, model_m32r_d_st_plus
, { { (int) UNIT_M32R_D_U_STORE
, 1, 1 }, { (int) UNIT_M32R_D_U_EXEC
, 1, 0 } } },
3938 { M32RBF_INSN_ST_MINUS
, model_m32r_d_st_minus
, { { (int) UNIT_M32R_D_U_STORE
, 1, 1 }, { (int) UNIT_M32R_D_U_EXEC
, 1, 0 } } },
3939 { M32RBF_INSN_SUB
, model_m32r_d_sub
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3940 { M32RBF_INSN_SUBV
, model_m32r_d_subv
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3941 { M32RBF_INSN_SUBX
, model_m32r_d_subx
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3942 { M32RBF_INSN_TRAP
, model_m32r_d_trap
, { { (int) UNIT_M32R_D_U_EXEC
, 1, 1 } } },
3943 { M32RBF_INSN_UNLOCK
, model_m32r_d_unlock
, { { (int) UNIT_M32R_D_U_LOAD
, 1, 1 } } },
3946 /* Model timing data for `test'. */
3948 static const INSN_TIMING test_timing
[] = {
3949 { M32RBF_INSN_X_INVALID
, 0, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3950 { M32RBF_INSN_X_AFTER
, 0, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3951 { M32RBF_INSN_X_BEFORE
, 0, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3952 { M32RBF_INSN_X_CTI_CHAIN
, 0, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3953 { M32RBF_INSN_X_CHAIN
, 0, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3954 { M32RBF_INSN_X_BEGIN
, 0, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3955 { M32RBF_INSN_ADD
, model_test_add
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3956 { M32RBF_INSN_ADD3
, model_test_add3
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3957 { M32RBF_INSN_AND
, model_test_and
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3958 { M32RBF_INSN_AND3
, model_test_and3
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3959 { M32RBF_INSN_OR
, model_test_or
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3960 { M32RBF_INSN_OR3
, model_test_or3
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3961 { M32RBF_INSN_XOR
, model_test_xor
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3962 { M32RBF_INSN_XOR3
, model_test_xor3
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3963 { M32RBF_INSN_ADDI
, model_test_addi
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3964 { M32RBF_INSN_ADDV
, model_test_addv
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3965 { M32RBF_INSN_ADDV3
, model_test_addv3
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3966 { M32RBF_INSN_ADDX
, model_test_addx
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3967 { M32RBF_INSN_BC8
, model_test_bc8
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3968 { M32RBF_INSN_BC24
, model_test_bc24
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3969 { M32RBF_INSN_BEQ
, model_test_beq
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3970 { M32RBF_INSN_BEQZ
, model_test_beqz
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3971 { M32RBF_INSN_BGEZ
, model_test_bgez
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3972 { M32RBF_INSN_BGTZ
, model_test_bgtz
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3973 { M32RBF_INSN_BLEZ
, model_test_blez
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3974 { M32RBF_INSN_BLTZ
, model_test_bltz
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3975 { M32RBF_INSN_BNEZ
, model_test_bnez
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3976 { M32RBF_INSN_BL8
, model_test_bl8
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3977 { M32RBF_INSN_BL24
, model_test_bl24
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3978 { M32RBF_INSN_BNC8
, model_test_bnc8
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3979 { M32RBF_INSN_BNC24
, model_test_bnc24
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3980 { M32RBF_INSN_BNE
, model_test_bne
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3981 { M32RBF_INSN_BRA8
, model_test_bra8
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3982 { M32RBF_INSN_BRA24
, model_test_bra24
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3983 { M32RBF_INSN_CMP
, model_test_cmp
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3984 { M32RBF_INSN_CMPI
, model_test_cmpi
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3985 { M32RBF_INSN_CMPU
, model_test_cmpu
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3986 { M32RBF_INSN_CMPUI
, model_test_cmpui
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3987 { M32RBF_INSN_DIV
, model_test_div
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3988 { M32RBF_INSN_DIVU
, model_test_divu
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3989 { M32RBF_INSN_REM
, model_test_rem
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3990 { M32RBF_INSN_REMU
, model_test_remu
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3991 { M32RBF_INSN_JL
, model_test_jl
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3992 { M32RBF_INSN_JMP
, model_test_jmp
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3993 { M32RBF_INSN_LD
, model_test_ld
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3994 { M32RBF_INSN_LD_D
, model_test_ld_d
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3995 { M32RBF_INSN_LDB
, model_test_ldb
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3996 { M32RBF_INSN_LDB_D
, model_test_ldb_d
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3997 { M32RBF_INSN_LDH
, model_test_ldh
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3998 { M32RBF_INSN_LDH_D
, model_test_ldh_d
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
3999 { M32RBF_INSN_LDUB
, model_test_ldub
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4000 { M32RBF_INSN_LDUB_D
, model_test_ldub_d
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4001 { M32RBF_INSN_LDUH
, model_test_lduh
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4002 { M32RBF_INSN_LDUH_D
, model_test_lduh_d
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4003 { M32RBF_INSN_LD_PLUS
, model_test_ld_plus
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4004 { M32RBF_INSN_LD24
, model_test_ld24
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4005 { M32RBF_INSN_LDI8
, model_test_ldi8
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4006 { M32RBF_INSN_LDI16
, model_test_ldi16
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4007 { M32RBF_INSN_LOCK
, model_test_lock
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4008 { M32RBF_INSN_MACHI
, model_test_machi
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4009 { M32RBF_INSN_MACLO
, model_test_maclo
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4010 { M32RBF_INSN_MACWHI
, model_test_macwhi
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4011 { M32RBF_INSN_MACWLO
, model_test_macwlo
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4012 { M32RBF_INSN_MUL
, model_test_mul
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4013 { M32RBF_INSN_MULHI
, model_test_mulhi
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4014 { M32RBF_INSN_MULLO
, model_test_mullo
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4015 { M32RBF_INSN_MULWHI
, model_test_mulwhi
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4016 { M32RBF_INSN_MULWLO
, model_test_mulwlo
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4017 { M32RBF_INSN_MV
, model_test_mv
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4018 { M32RBF_INSN_MVFACHI
, model_test_mvfachi
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4019 { M32RBF_INSN_MVFACLO
, model_test_mvfaclo
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4020 { M32RBF_INSN_MVFACMI
, model_test_mvfacmi
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4021 { M32RBF_INSN_MVFC
, model_test_mvfc
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4022 { M32RBF_INSN_MVTACHI
, model_test_mvtachi
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4023 { M32RBF_INSN_MVTACLO
, model_test_mvtaclo
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4024 { M32RBF_INSN_MVTC
, model_test_mvtc
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4025 { M32RBF_INSN_NEG
, model_test_neg
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4026 { M32RBF_INSN_NOP
, model_test_nop
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4027 { M32RBF_INSN_NOT
, model_test_not
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4028 { M32RBF_INSN_RAC
, model_test_rac
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4029 { M32RBF_INSN_RACH
, model_test_rach
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4030 { M32RBF_INSN_RTE
, model_test_rte
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4031 { M32RBF_INSN_SETH
, model_test_seth
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4032 { M32RBF_INSN_SLL
, model_test_sll
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4033 { M32RBF_INSN_SLL3
, model_test_sll3
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4034 { M32RBF_INSN_SLLI
, model_test_slli
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4035 { M32RBF_INSN_SRA
, model_test_sra
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4036 { M32RBF_INSN_SRA3
, model_test_sra3
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4037 { M32RBF_INSN_SRAI
, model_test_srai
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4038 { M32RBF_INSN_SRL
, model_test_srl
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4039 { M32RBF_INSN_SRL3
, model_test_srl3
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4040 { M32RBF_INSN_SRLI
, model_test_srli
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4041 { M32RBF_INSN_ST
, model_test_st
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4042 { M32RBF_INSN_ST_D
, model_test_st_d
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4043 { M32RBF_INSN_STB
, model_test_stb
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4044 { M32RBF_INSN_STB_D
, model_test_stb_d
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4045 { M32RBF_INSN_STH
, model_test_sth
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4046 { M32RBF_INSN_STH_D
, model_test_sth_d
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4047 { M32RBF_INSN_ST_PLUS
, model_test_st_plus
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4048 { M32RBF_INSN_ST_MINUS
, model_test_st_minus
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4049 { M32RBF_INSN_SUB
, model_test_sub
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4050 { M32RBF_INSN_SUBV
, model_test_subv
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4051 { M32RBF_INSN_SUBX
, model_test_subx
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4052 { M32RBF_INSN_TRAP
, model_test_trap
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4053 { M32RBF_INSN_UNLOCK
, model_test_unlock
, { { (int) UNIT_TEST_U_EXEC
, 1, 1 } } },
4056 #endif /* WITH_PROFILE_MODEL_P */
4059 m32r_d_model_init (SIM_CPU
*cpu
)
4061 CPU_MODEL_DATA (cpu
) = (void *) zalloc (sizeof (MODEL_M32R_D_DATA
));
4065 test_model_init (SIM_CPU
*cpu
)
4067 CPU_MODEL_DATA (cpu
) = (void *) zalloc (sizeof (MODEL_TEST_DATA
));
4070 #if WITH_PROFILE_MODEL_P
4071 #define TIMING_DATA(td) td
4073 #define TIMING_DATA(td) 0
4076 static const MODEL m32r_models
[] =
4078 { "m32r/d", & m32r_mach
, MODEL_M32R_D
, TIMING_DATA (& m32r_d_timing
[0]), m32r_d_model_init
},
4079 { "test", & m32r_mach
, MODEL_TEST
, TIMING_DATA (& test_timing
[0]), test_model_init
},
4083 /* The properties of this cpu's implementation. */
4085 static const MACH_IMP_PROPERTIES m32rbf_imp_properties
=
4095 static const CGEN_INSN
*
4096 m32rbf_opcode (SIM_CPU
*cpu
, int inum
)
4098 return CPU_IDESC (cpu
) [inum
].opcode
;
4102 m32r_init_cpu (SIM_CPU
*cpu
)
4104 CPU_REG_FETCH (cpu
) = m32rbf_fetch_register
;
4105 CPU_REG_STORE (cpu
) = m32rbf_store_register
;
4106 CPU_PC_FETCH (cpu
) = m32rbf_h_pc_get
;
4107 CPU_PC_STORE (cpu
) = m32rbf_h_pc_set
;
4108 CPU_OPCODE (cpu
) = m32rbf_opcode
;
4109 CPU_MAX_INSNS (cpu
) = M32RBF_INSN_MAX
;
4110 CPU_INSN_NAME (cpu
) = cgen_insn_name
;
4111 CPU_FULL_ENGINE_FN (cpu
) = m32rbf_engine_run_full
;
4113 CPU_FAST_ENGINE_FN (cpu
) = m32rbf_engine_run_fast
;
4115 CPU_FAST_ENGINE_FN (cpu
) = m32rbf_engine_run_full
;
4117 m32rbf_init_idesc_table (cpu
);
4120 const MACH m32r_mach
=
4123 32, 32, & m32r_models
[0], & m32rbf_imp_properties
,