1 /* Simulator model support for sh3e.
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
5 Copyright (C) 2000-2009 Red Hat, Inc.
7 This file is part of the Red Hat simulators.
18 using namespace sh3e; // FIXME: namespace organization still wip
20 /* The profiling data is recorded here, but is accessed via the profiling
21 mechanism. After all, this is information for profiling. */
23 /* Model handlers for each insn. */
25 sh3e_sh3e_model::sh3e_sh3e_model (sh3e_cpu *cpu)
31 sh3e_sh3e_model::model_add_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
33 #define FLD(f) abuf->fields.sfmt_macl_compact.f
34 const sh3e_scache* abuf = sem;
35 const sh3e_idesc* idesc = abuf->idesc;
39 in_usereg = FLD (in_rn);
40 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
44 in_usereg = FLD (in_rm);
45 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
48 cycles += model_u_exec_before (current_cpu, idesc, 2);
55 sh3e_sh3e_model::model_add_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
57 #define FLD(f) abuf->fields.sfmt_macl_compact.f
58 const sh3e_scache* abuf = sem;
59 const sh3e_idesc* idesc = abuf->idesc;
63 unsigned long long insn_referenced = abuf->written;
65 in_usereg = FLD (in_rn);
66 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
70 unsigned long long insn_referenced = abuf->written;
72 in_usereg = FLD (in_rm);
73 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
77 unsigned long long insn_referenced = abuf->written;
78 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
85 sh3e_sh3e_model::model_addi_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
87 #define FLD(f) abuf->fields.sfmt_addi_compact.f
88 const sh3e_scache* abuf = sem;
89 const sh3e_idesc* idesc = abuf->idesc;
93 in_usereg = FLD (in_rn);
94 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
97 cycles += model_u_exec_before (current_cpu, idesc, 1);
104 sh3e_sh3e_model::model_addi_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
106 #define FLD(f) abuf->fields.sfmt_addi_compact.f
107 const sh3e_scache* abuf = sem;
108 const sh3e_idesc* idesc = abuf->idesc;
112 unsigned long long insn_referenced = abuf->written;
114 in_usereg = FLD (in_rn);
115 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
119 unsigned long long insn_referenced = abuf->written;
120 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
127 sh3e_sh3e_model::model_addc_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
129 #define FLD(f) abuf->fields.sfmt_macl_compact.f
130 const sh3e_scache* abuf = sem;
131 const sh3e_idesc* idesc = abuf->idesc;
135 in_usereg = FLD (in_rn);
136 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
140 in_usereg = FLD (in_rm);
141 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
144 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
147 cycles += model_u_exec_before (current_cpu, idesc, 3);
150 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
157 sh3e_sh3e_model::model_addc_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
159 #define FLD(f) abuf->fields.sfmt_macl_compact.f
160 const sh3e_scache* abuf = sem;
161 const sh3e_idesc* idesc = abuf->idesc;
165 unsigned long long insn_referenced = abuf->written;
167 in_usereg = FLD (in_rn);
168 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
172 unsigned long long insn_referenced = abuf->written;
174 in_usereg = FLD (in_rm);
175 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
179 unsigned long long insn_referenced = abuf->written;
180 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
184 unsigned long long insn_referenced = abuf->written;
185 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
189 unsigned long long insn_referenced = abuf->written;
190 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
197 sh3e_sh3e_model::model_addv_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
199 #define FLD(f) abuf->fields.sfmt_macl_compact.f
200 const sh3e_scache* abuf = sem;
201 const sh3e_idesc* idesc = abuf->idesc;
205 in_usereg = FLD (in_rn);
206 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
210 in_usereg = FLD (in_rm);
211 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
214 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
217 cycles += model_u_exec_before (current_cpu, idesc, 3);
220 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
227 sh3e_sh3e_model::model_addv_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
229 #define FLD(f) abuf->fields.sfmt_macl_compact.f
230 const sh3e_scache* abuf = sem;
231 const sh3e_idesc* idesc = abuf->idesc;
235 unsigned long long insn_referenced = abuf->written;
237 in_usereg = FLD (in_rn);
238 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
242 unsigned long long insn_referenced = abuf->written;
244 in_usereg = FLD (in_rm);
245 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
249 unsigned long long insn_referenced = abuf->written;
250 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
254 unsigned long long insn_referenced = abuf->written;
255 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
259 unsigned long long insn_referenced = abuf->written;
260 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
267 sh3e_sh3e_model::model_and_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
269 #define FLD(f) abuf->fields.sfmt_and_compact.f
270 const sh3e_scache* abuf = sem;
271 const sh3e_idesc* idesc = abuf->idesc;
275 in_usereg = FLD (in_rn64);
276 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
280 in_usereg = FLD (in_rm64);
281 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
284 cycles += model_u_exec_before (current_cpu, idesc, 2);
291 sh3e_sh3e_model::model_and_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
293 #define FLD(f) abuf->fields.sfmt_and_compact.f
294 const sh3e_scache* abuf = sem;
295 const sh3e_idesc* idesc = abuf->idesc;
299 unsigned long long insn_referenced = abuf->written;
301 in_usereg = FLD (in_rn64);
302 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
306 unsigned long long insn_referenced = abuf->written;
308 in_usereg = FLD (in_rm64);
309 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
313 unsigned long long insn_referenced = abuf->written;
314 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
321 sh3e_sh3e_model::model_andi_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
323 #define FLD(f) abuf->fields.sfmt_andi_compact.f
324 const sh3e_scache* abuf = sem;
325 const sh3e_idesc* idesc = abuf->idesc;
329 in_usereg = FLD (in_r0);
330 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
333 cycles += model_u_exec_before (current_cpu, idesc, 1);
340 sh3e_sh3e_model::model_andi_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
342 #define FLD(f) abuf->fields.sfmt_andi_compact.f
343 const sh3e_scache* abuf = sem;
344 const sh3e_idesc* idesc = abuf->idesc;
348 unsigned long long insn_referenced = abuf->written;
350 in_usereg = FLD (in_r0);
351 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
355 unsigned long long insn_referenced = abuf->written;
356 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
363 sh3e_sh3e_model::model_andb_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
365 #define FLD(f) abuf->fields.sfmt_andi_compact.f
366 const sh3e_scache* abuf = sem;
367 const sh3e_idesc* idesc = abuf->idesc;
371 in_usereg = FLD (in_r0);
372 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
375 cycles += model_u_logic_b_before (current_cpu, idesc, 1);
378 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
385 sh3e_sh3e_model::model_andb_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
387 #define FLD(f) abuf->fields.sfmt_andi_compact.f
388 const sh3e_scache* abuf = sem;
389 const sh3e_idesc* idesc = abuf->idesc;
393 unsigned long long insn_referenced = abuf->written;
395 in_usereg = FLD (in_r0);
396 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
400 unsigned long long insn_referenced = abuf->written;
401 cycles += model_u_logic_b_after (current_cpu, idesc, 1, referenced);
405 unsigned long long insn_referenced = abuf->written;
406 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
413 sh3e_sh3e_model::model_bf_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
415 #define FLD(f) abuf->fields.sfmt_bf_compact.f
416 const sh3e_scache* abuf = sem;
417 const sh3e_idesc* idesc = abuf->idesc;
420 cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
423 cycles += model_u_branch_before (current_cpu, idesc, 1);
430 sh3e_sh3e_model::model_bf_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
432 #define FLD(f) abuf->fields.sfmt_bf_compact.f
433 const sh3e_scache* abuf = sem;
434 const sh3e_idesc* idesc = abuf->idesc;
438 unsigned long long insn_referenced = abuf->written;
439 cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
443 unsigned long long insn_referenced = abuf->written;
444 if (insn_referenced & (1 << 2)) referenced |= 1 << 0;
445 cycles += model_u_branch_after (current_cpu, idesc, 1, referenced);
452 sh3e_sh3e_model::model_bfs_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
454 #define FLD(f) abuf->fields.sfmt_bf_compact.f
455 const sh3e_scache* abuf = sem;
456 const sh3e_idesc* idesc = abuf->idesc;
459 cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
462 cycles += model_u_branch_before (current_cpu, idesc, 1);
469 sh3e_sh3e_model::model_bfs_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
471 #define FLD(f) abuf->fields.sfmt_bf_compact.f
472 const sh3e_scache* abuf = sem;
473 const sh3e_idesc* idesc = abuf->idesc;
477 unsigned long long insn_referenced = abuf->written;
478 cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
482 unsigned long long insn_referenced = abuf->written;
483 if (insn_referenced & (1 << 3)) referenced |= 1 << 0;
484 cycles += model_u_branch_after (current_cpu, idesc, 1, referenced);
491 sh3e_sh3e_model::model_bra_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
493 #define FLD(f) abuf->fields.sfmt_bra_compact.f
494 const sh3e_scache* abuf = sem;
495 const sh3e_idesc* idesc = abuf->idesc;
498 cycles += model_u_branch_before (current_cpu, idesc, 0);
505 sh3e_sh3e_model::model_bra_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
507 #define FLD(f) abuf->fields.sfmt_bra_compact.f
508 const sh3e_scache* abuf = sem;
509 const sh3e_idesc* idesc = abuf->idesc;
513 unsigned long long insn_referenced = abuf->written;
514 referenced |= 1 << 0;
515 cycles += model_u_branch_after (current_cpu, idesc, 0, referenced);
522 sh3e_sh3e_model::model_braf_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
524 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
525 const sh3e_scache* abuf = sem;
526 const sh3e_idesc* idesc = abuf->idesc;
530 in_usereg = FLD (in_rn);
531 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
534 cycles += model_u_jmp_before (current_cpu, idesc, 1);
541 sh3e_sh3e_model::model_braf_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
543 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
544 const sh3e_scache* abuf = sem;
545 const sh3e_idesc* idesc = abuf->idesc;
549 unsigned long long insn_referenced = abuf->written;
551 in_usereg = FLD (in_rn);
552 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
556 unsigned long long insn_referenced = abuf->written;
557 referenced |= 1 << 0;
558 cycles += model_u_jmp_after (current_cpu, idesc, 1, referenced);
565 sh3e_sh3e_model::model_bsr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
567 #define FLD(f) abuf->fields.sfmt_bra_compact.f
568 const sh3e_scache* abuf = sem;
569 const sh3e_idesc* idesc = abuf->idesc;
572 cycles += model_u_branch_before (current_cpu, idesc, 0);
579 sh3e_sh3e_model::model_bsr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
581 #define FLD(f) abuf->fields.sfmt_bra_compact.f
582 const sh3e_scache* abuf = sem;
583 const sh3e_idesc* idesc = abuf->idesc;
587 unsigned long long insn_referenced = abuf->written;
588 referenced |= 1 << 0;
589 cycles += model_u_branch_after (current_cpu, idesc, 0, referenced);
596 sh3e_sh3e_model::model_bsrf_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
598 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
599 const sh3e_scache* abuf = sem;
600 const sh3e_idesc* idesc = abuf->idesc;
604 in_usereg = FLD (in_rn);
605 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
608 cycles += model_u_jsr_before (current_cpu, idesc, 1);
615 sh3e_sh3e_model::model_bsrf_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
617 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
618 const sh3e_scache* abuf = sem;
619 const sh3e_idesc* idesc = abuf->idesc;
623 unsigned long long insn_referenced = abuf->written;
625 in_usereg = FLD (in_rn);
626 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
630 unsigned long long insn_referenced = abuf->written;
631 referenced |= 1 << 0;
632 cycles += model_u_jsr_after (current_cpu, idesc, 1, referenced);
639 sh3e_sh3e_model::model_bt_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
641 #define FLD(f) abuf->fields.sfmt_bf_compact.f
642 const sh3e_scache* abuf = sem;
643 const sh3e_idesc* idesc = abuf->idesc;
646 cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
649 cycles += model_u_branch_before (current_cpu, idesc, 1);
656 sh3e_sh3e_model::model_bt_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
658 #define FLD(f) abuf->fields.sfmt_bf_compact.f
659 const sh3e_scache* abuf = sem;
660 const sh3e_idesc* idesc = abuf->idesc;
664 unsigned long long insn_referenced = abuf->written;
665 cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
669 unsigned long long insn_referenced = abuf->written;
670 if (insn_referenced & (1 << 2)) referenced |= 1 << 0;
671 cycles += model_u_branch_after (current_cpu, idesc, 1, referenced);
678 sh3e_sh3e_model::model_bts_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
680 #define FLD(f) abuf->fields.sfmt_bf_compact.f
681 const sh3e_scache* abuf = sem;
682 const sh3e_idesc* idesc = abuf->idesc;
685 cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
688 cycles += model_u_branch_before (current_cpu, idesc, 1);
695 sh3e_sh3e_model::model_bts_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
697 #define FLD(f) abuf->fields.sfmt_bf_compact.f
698 const sh3e_scache* abuf = sem;
699 const sh3e_idesc* idesc = abuf->idesc;
703 unsigned long long insn_referenced = abuf->written;
704 cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
708 unsigned long long insn_referenced = abuf->written;
709 if (insn_referenced & (1 << 3)) referenced |= 1 << 0;
710 cycles += model_u_branch_after (current_cpu, idesc, 1, referenced);
717 sh3e_sh3e_model::model_clrmac_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
719 #define FLD(f) abuf->fields.fmt_empty.f
720 const sh3e_scache* abuf = sem;
721 const sh3e_idesc* idesc = abuf->idesc;
724 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 0);
727 cycles += model_u_exec_before (current_cpu, idesc, 1);
730 cycles += model_u_set_mac_before (current_cpu, idesc, 2);
737 sh3e_sh3e_model::model_clrmac_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
739 #define FLD(f) abuf->fields.fmt_empty.f
740 const sh3e_scache* abuf = sem;
741 const sh3e_idesc* idesc = abuf->idesc;
745 unsigned long long insn_referenced = abuf->written;
746 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 0, referenced);
750 unsigned long long insn_referenced = abuf->written;
751 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
755 unsigned long long insn_referenced = abuf->written;
756 cycles += model_u_set_mac_after (current_cpu, idesc, 2, referenced);
763 sh3e_sh3e_model::model_clrs_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
765 #define FLD(f) abuf->fields.fmt_empty.f
766 const sh3e_scache* abuf = sem;
767 const sh3e_idesc* idesc = abuf->idesc;
770 cycles += model_u_exec_before (current_cpu, idesc, 0);
773 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 1);
780 sh3e_sh3e_model::model_clrs_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
782 #define FLD(f) abuf->fields.fmt_empty.f
783 const sh3e_scache* abuf = sem;
784 const sh3e_idesc* idesc = abuf->idesc;
788 unsigned long long insn_referenced = abuf->written;
789 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
793 unsigned long long insn_referenced = abuf->written;
794 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 1, referenced);
801 sh3e_sh3e_model::model_clrt_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
803 #define FLD(f) abuf->fields.fmt_empty.f
804 const sh3e_scache* abuf = sem;
805 const sh3e_idesc* idesc = abuf->idesc;
808 cycles += model_u_exec_before (current_cpu, idesc, 0);
811 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
814 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 2);
821 sh3e_sh3e_model::model_clrt_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
823 #define FLD(f) abuf->fields.fmt_empty.f
824 const sh3e_scache* abuf = sem;
825 const sh3e_idesc* idesc = abuf->idesc;
829 unsigned long long insn_referenced = abuf->written;
830 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
834 unsigned long long insn_referenced = abuf->written;
835 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
839 unsigned long long insn_referenced = abuf->written;
840 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 2, referenced);
847 sh3e_sh3e_model::model_cmpeq_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
849 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
850 const sh3e_scache* abuf = sem;
851 const sh3e_idesc* idesc = abuf->idesc;
855 in_usereg = FLD (in_rn);
856 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
860 in_usereg = FLD (in_rm);
861 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
864 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
867 cycles += model_u_exec_before (current_cpu, idesc, 3);
870 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
877 sh3e_sh3e_model::model_cmpeq_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
879 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
880 const sh3e_scache* abuf = sem;
881 const sh3e_idesc* idesc = abuf->idesc;
885 unsigned long long insn_referenced = abuf->written;
887 in_usereg = FLD (in_rn);
888 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
892 unsigned long long insn_referenced = abuf->written;
894 in_usereg = FLD (in_rm);
895 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
899 unsigned long long insn_referenced = abuf->written;
900 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
904 unsigned long long insn_referenced = abuf->written;
905 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
909 unsigned long long insn_referenced = abuf->written;
910 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
917 sh3e_sh3e_model::model_cmpeqi_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
919 #define FLD(f) abuf->fields.sfmt_andi_compact.f
920 const sh3e_scache* abuf = sem;
921 const sh3e_idesc* idesc = abuf->idesc;
925 in_usereg = FLD (in_r0);
926 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
929 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
932 cycles += model_u_exec_before (current_cpu, idesc, 2);
935 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
942 sh3e_sh3e_model::model_cmpeqi_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
944 #define FLD(f) abuf->fields.sfmt_andi_compact.f
945 const sh3e_scache* abuf = sem;
946 const sh3e_idesc* idesc = abuf->idesc;
950 unsigned long long insn_referenced = abuf->written;
952 in_usereg = FLD (in_r0);
953 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
957 unsigned long long insn_referenced = abuf->written;
958 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
962 unsigned long long insn_referenced = abuf->written;
963 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
967 unsigned long long insn_referenced = abuf->written;
968 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
975 sh3e_sh3e_model::model_cmpge_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
977 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
978 const sh3e_scache* abuf = sem;
979 const sh3e_idesc* idesc = abuf->idesc;
983 in_usereg = FLD (in_rn);
984 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
988 in_usereg = FLD (in_rm);
989 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
992 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
995 cycles += model_u_exec_before (current_cpu, idesc, 3);
998 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1005 sh3e_sh3e_model::model_cmpge_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1007 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1008 const sh3e_scache* abuf = sem;
1009 const sh3e_idesc* idesc = abuf->idesc;
1013 unsigned long long insn_referenced = abuf->written;
1015 in_usereg = FLD (in_rn);
1016 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1020 unsigned long long insn_referenced = abuf->written;
1022 in_usereg = FLD (in_rm);
1023 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1027 unsigned long long insn_referenced = abuf->written;
1028 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1032 unsigned long long insn_referenced = abuf->written;
1033 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1037 unsigned long long insn_referenced = abuf->written;
1038 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1045 sh3e_sh3e_model::model_cmpgt_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1047 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1048 const sh3e_scache* abuf = sem;
1049 const sh3e_idesc* idesc = abuf->idesc;
1053 in_usereg = FLD (in_rn);
1054 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1058 in_usereg = FLD (in_rm);
1059 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1062 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1065 cycles += model_u_exec_before (current_cpu, idesc, 3);
1068 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1075 sh3e_sh3e_model::model_cmpgt_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1077 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1078 const sh3e_scache* abuf = sem;
1079 const sh3e_idesc* idesc = abuf->idesc;
1083 unsigned long long insn_referenced = abuf->written;
1085 in_usereg = FLD (in_rn);
1086 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1090 unsigned long long insn_referenced = abuf->written;
1092 in_usereg = FLD (in_rm);
1093 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1097 unsigned long long insn_referenced = abuf->written;
1098 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1102 unsigned long long insn_referenced = abuf->written;
1103 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1107 unsigned long long insn_referenced = abuf->written;
1108 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1115 sh3e_sh3e_model::model_cmphi_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1117 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1118 const sh3e_scache* abuf = sem;
1119 const sh3e_idesc* idesc = abuf->idesc;
1123 in_usereg = FLD (in_rn);
1124 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1128 in_usereg = FLD (in_rm);
1129 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1132 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1135 cycles += model_u_exec_before (current_cpu, idesc, 3);
1138 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1145 sh3e_sh3e_model::model_cmphi_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1147 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1148 const sh3e_scache* abuf = sem;
1149 const sh3e_idesc* idesc = abuf->idesc;
1153 unsigned long long insn_referenced = abuf->written;
1155 in_usereg = FLD (in_rn);
1156 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1160 unsigned long long insn_referenced = abuf->written;
1162 in_usereg = FLD (in_rm);
1163 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1167 unsigned long long insn_referenced = abuf->written;
1168 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1172 unsigned long long insn_referenced = abuf->written;
1173 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1177 unsigned long long insn_referenced = abuf->written;
1178 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1185 sh3e_sh3e_model::model_cmphs_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1187 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1188 const sh3e_scache* abuf = sem;
1189 const sh3e_idesc* idesc = abuf->idesc;
1193 in_usereg = FLD (in_rn);
1194 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1198 in_usereg = FLD (in_rm);
1199 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1202 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1205 cycles += model_u_exec_before (current_cpu, idesc, 3);
1208 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1215 sh3e_sh3e_model::model_cmphs_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1217 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1218 const sh3e_scache* abuf = sem;
1219 const sh3e_idesc* idesc = abuf->idesc;
1223 unsigned long long insn_referenced = abuf->written;
1225 in_usereg = FLD (in_rn);
1226 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1230 unsigned long long insn_referenced = abuf->written;
1232 in_usereg = FLD (in_rm);
1233 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1237 unsigned long long insn_referenced = abuf->written;
1238 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1242 unsigned long long insn_referenced = abuf->written;
1243 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1247 unsigned long long insn_referenced = abuf->written;
1248 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1255 sh3e_sh3e_model::model_cmppl_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1257 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1258 const sh3e_scache* abuf = sem;
1259 const sh3e_idesc* idesc = abuf->idesc;
1263 in_usereg = FLD (in_rn);
1264 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1267 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
1270 cycles += model_u_exec_before (current_cpu, idesc, 2);
1273 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
1280 sh3e_sh3e_model::model_cmppl_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1282 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1283 const sh3e_scache* abuf = sem;
1284 const sh3e_idesc* idesc = abuf->idesc;
1288 unsigned long long insn_referenced = abuf->written;
1290 in_usereg = FLD (in_rn);
1291 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1295 unsigned long long insn_referenced = abuf->written;
1296 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
1300 unsigned long long insn_referenced = abuf->written;
1301 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
1305 unsigned long long insn_referenced = abuf->written;
1306 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
1313 sh3e_sh3e_model::model_cmppz_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1315 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1316 const sh3e_scache* abuf = sem;
1317 const sh3e_idesc* idesc = abuf->idesc;
1321 in_usereg = FLD (in_rn);
1322 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1325 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
1328 cycles += model_u_exec_before (current_cpu, idesc, 2);
1331 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
1338 sh3e_sh3e_model::model_cmppz_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1340 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1341 const sh3e_scache* abuf = sem;
1342 const sh3e_idesc* idesc = abuf->idesc;
1346 unsigned long long insn_referenced = abuf->written;
1348 in_usereg = FLD (in_rn);
1349 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1353 unsigned long long insn_referenced = abuf->written;
1354 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
1358 unsigned long long insn_referenced = abuf->written;
1359 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
1363 unsigned long long insn_referenced = abuf->written;
1364 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
1371 sh3e_sh3e_model::model_cmpstr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1373 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1374 const sh3e_scache* abuf = sem;
1375 const sh3e_idesc* idesc = abuf->idesc;
1379 in_usereg = FLD (in_rn);
1380 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1384 in_usereg = FLD (in_rm);
1385 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1388 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1391 cycles += model_u_exec_before (current_cpu, idesc, 3);
1394 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1401 sh3e_sh3e_model::model_cmpstr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1403 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1404 const sh3e_scache* abuf = sem;
1405 const sh3e_idesc* idesc = abuf->idesc;
1409 unsigned long long insn_referenced = abuf->written;
1411 in_usereg = FLD (in_rn);
1412 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1416 unsigned long long insn_referenced = abuf->written;
1418 in_usereg = FLD (in_rm);
1419 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1423 unsigned long long insn_referenced = abuf->written;
1424 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1428 unsigned long long insn_referenced = abuf->written;
1429 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1433 unsigned long long insn_referenced = abuf->written;
1434 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1441 sh3e_sh3e_model::model_div0s_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1443 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1444 const sh3e_scache* abuf = sem;
1445 const sh3e_idesc* idesc = abuf->idesc;
1449 in_usereg = FLD (in_rn);
1450 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1454 in_usereg = FLD (in_rm);
1455 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1458 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1461 cycles += model_u_exec_before (current_cpu, idesc, 3);
1464 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1471 sh3e_sh3e_model::model_div0s_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1473 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1474 const sh3e_scache* abuf = sem;
1475 const sh3e_idesc* idesc = abuf->idesc;
1479 unsigned long long insn_referenced = abuf->written;
1481 in_usereg = FLD (in_rn);
1482 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1486 unsigned long long insn_referenced = abuf->written;
1488 in_usereg = FLD (in_rm);
1489 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1493 unsigned long long insn_referenced = abuf->written;
1494 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1498 unsigned long long insn_referenced = abuf->written;
1499 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1503 unsigned long long insn_referenced = abuf->written;
1504 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1511 sh3e_sh3e_model::model_div0u_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1513 #define FLD(f) abuf->fields.fmt_empty.f
1514 const sh3e_scache* abuf = sem;
1515 const sh3e_idesc* idesc = abuf->idesc;
1518 cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
1521 cycles += model_u_exec_before (current_cpu, idesc, 1);
1524 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 2);
1531 sh3e_sh3e_model::model_div0u_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1533 #define FLD(f) abuf->fields.fmt_empty.f
1534 const sh3e_scache* abuf = sem;
1535 const sh3e_idesc* idesc = abuf->idesc;
1539 unsigned long long insn_referenced = abuf->written;
1540 cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
1544 unsigned long long insn_referenced = abuf->written;
1545 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1549 unsigned long long insn_referenced = abuf->written;
1550 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 2, referenced);
1557 sh3e_sh3e_model::model_div1_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1559 #define FLD(f) abuf->fields.sfmt_macl_compact.f
1560 const sh3e_scache* abuf = sem;
1561 const sh3e_idesc* idesc = abuf->idesc;
1565 in_usereg = FLD (in_rn);
1566 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1570 in_usereg = FLD (in_rm);
1571 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1574 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1577 cycles += model_u_exec_before (current_cpu, idesc, 3);
1580 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1587 sh3e_sh3e_model::model_div1_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1589 #define FLD(f) abuf->fields.sfmt_macl_compact.f
1590 const sh3e_scache* abuf = sem;
1591 const sh3e_idesc* idesc = abuf->idesc;
1595 unsigned long long insn_referenced = abuf->written;
1597 in_usereg = FLD (in_rn);
1598 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1602 unsigned long long insn_referenced = abuf->written;
1604 in_usereg = FLD (in_rm);
1605 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1609 unsigned long long insn_referenced = abuf->written;
1610 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1614 unsigned long long insn_referenced = abuf->written;
1615 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1619 unsigned long long insn_referenced = abuf->written;
1620 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1627 sh3e_sh3e_model::model_dmulsl_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1629 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1630 const sh3e_scache* abuf = sem;
1631 const sh3e_idesc* idesc = abuf->idesc;
1635 in_usereg = FLD (in_rn);
1636 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1640 in_usereg = FLD (in_rm);
1641 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1644 cycles += model_u_dmul_before (current_cpu, idesc, 2);
1651 sh3e_sh3e_model::model_dmulsl_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1653 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1654 const sh3e_scache* abuf = sem;
1655 const sh3e_idesc* idesc = abuf->idesc;
1659 unsigned long long insn_referenced = abuf->written;
1661 in_usereg = FLD (in_rn);
1662 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1666 unsigned long long insn_referenced = abuf->written;
1668 in_usereg = FLD (in_rm);
1669 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1673 unsigned long long insn_referenced = abuf->written;
1674 cycles += model_u_dmul_after (current_cpu, idesc, 2, referenced);
1681 sh3e_sh3e_model::model_dmulul_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1683 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1684 const sh3e_scache* abuf = sem;
1685 const sh3e_idesc* idesc = abuf->idesc;
1689 in_usereg = FLD (in_rn);
1690 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1694 in_usereg = FLD (in_rm);
1695 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1698 cycles += model_u_dmul_before (current_cpu, idesc, 2);
1705 sh3e_sh3e_model::model_dmulul_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1707 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1708 const sh3e_scache* abuf = sem;
1709 const sh3e_idesc* idesc = abuf->idesc;
1713 unsigned long long insn_referenced = abuf->written;
1715 in_usereg = FLD (in_rn);
1716 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1720 unsigned long long insn_referenced = abuf->written;
1722 in_usereg = FLD (in_rm);
1723 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1727 unsigned long long insn_referenced = abuf->written;
1728 cycles += model_u_dmul_after (current_cpu, idesc, 2, referenced);
1735 sh3e_sh3e_model::model_dt_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1737 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1738 const sh3e_scache* abuf = sem;
1739 const sh3e_idesc* idesc = abuf->idesc;
1743 in_usereg = FLD (in_rn);
1744 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1747 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
1750 cycles += model_u_exec_before (current_cpu, idesc, 2);
1753 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
1760 sh3e_sh3e_model::model_dt_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1762 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1763 const sh3e_scache* abuf = sem;
1764 const sh3e_idesc* idesc = abuf->idesc;
1768 unsigned long long insn_referenced = abuf->written;
1770 in_usereg = FLD (in_rn);
1771 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1775 unsigned long long insn_referenced = abuf->written;
1776 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
1780 unsigned long long insn_referenced = abuf->written;
1781 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
1785 unsigned long long insn_referenced = abuf->written;
1786 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
1793 sh3e_sh3e_model::model_extsb_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1795 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1796 const sh3e_scache* abuf = sem;
1797 const sh3e_idesc* idesc = abuf->idesc;
1801 in_usereg = FLD (in_rm);
1802 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1805 cycles += model_u_exec_before (current_cpu, idesc, 1);
1808 cycles += model_u_shift_before (current_cpu, idesc, 2);
1815 sh3e_sh3e_model::model_extsb_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1817 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1818 const sh3e_scache* abuf = sem;
1819 const sh3e_idesc* idesc = abuf->idesc;
1823 unsigned long long insn_referenced = abuf->written;
1825 in_usereg = FLD (in_rm);
1826 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1830 unsigned long long insn_referenced = abuf->written;
1831 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1835 unsigned long long insn_referenced = abuf->written;
1836 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
1843 sh3e_sh3e_model::model_extsw_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1845 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1846 const sh3e_scache* abuf = sem;
1847 const sh3e_idesc* idesc = abuf->idesc;
1851 in_usereg = FLD (in_rm);
1852 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1855 cycles += model_u_exec_before (current_cpu, idesc, 1);
1858 cycles += model_u_shift_before (current_cpu, idesc, 2);
1865 sh3e_sh3e_model::model_extsw_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1867 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1868 const sh3e_scache* abuf = sem;
1869 const sh3e_idesc* idesc = abuf->idesc;
1873 unsigned long long insn_referenced = abuf->written;
1875 in_usereg = FLD (in_rm);
1876 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1880 unsigned long long insn_referenced = abuf->written;
1881 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1885 unsigned long long insn_referenced = abuf->written;
1886 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
1893 sh3e_sh3e_model::model_extub_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1895 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1896 const sh3e_scache* abuf = sem;
1897 const sh3e_idesc* idesc = abuf->idesc;
1901 in_usereg = FLD (in_rm);
1902 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1905 cycles += model_u_exec_before (current_cpu, idesc, 1);
1908 cycles += model_u_shift_before (current_cpu, idesc, 2);
1915 sh3e_sh3e_model::model_extub_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1917 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1918 const sh3e_scache* abuf = sem;
1919 const sh3e_idesc* idesc = abuf->idesc;
1923 unsigned long long insn_referenced = abuf->written;
1925 in_usereg = FLD (in_rm);
1926 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1930 unsigned long long insn_referenced = abuf->written;
1931 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1935 unsigned long long insn_referenced = abuf->written;
1936 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
1943 sh3e_sh3e_model::model_extuw_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1945 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1946 const sh3e_scache* abuf = sem;
1947 const sh3e_idesc* idesc = abuf->idesc;
1951 in_usereg = FLD (in_rm);
1952 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1955 cycles += model_u_exec_before (current_cpu, idesc, 1);
1958 cycles += model_u_shift_before (current_cpu, idesc, 2);
1965 sh3e_sh3e_model::model_extuw_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
1967 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1968 const sh3e_scache* abuf = sem;
1969 const sh3e_idesc* idesc = abuf->idesc;
1973 unsigned long long insn_referenced = abuf->written;
1975 in_usereg = FLD (in_rm);
1976 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1980 unsigned long long insn_referenced = abuf->written;
1981 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1985 unsigned long long insn_referenced = abuf->written;
1986 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
1993 sh3e_sh3e_model::model_fabs_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
1995 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
1996 const sh3e_scache* abuf = sem;
1997 const sh3e_idesc* idesc = abuf->idesc;
2001 in_usereg = FLD (in_fsdn);
2002 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2005 cycles += model_u_exec_before (current_cpu, idesc, 1);
2008 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
2011 INT out_loadreg = -1;
2012 out_loadreg = FLD (out_fsdn);
2013 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
2020 sh3e_sh3e_model::model_fabs_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2022 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2023 const sh3e_scache* abuf = sem;
2024 const sh3e_idesc* idesc = abuf->idesc;
2028 unsigned long long insn_referenced = abuf->written;
2030 in_usereg = FLD (in_fsdn);
2031 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2035 unsigned long long insn_referenced = abuf->written;
2036 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2040 unsigned long long insn_referenced = abuf->written;
2041 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
2045 unsigned long long insn_referenced = abuf->written;
2046 INT out_loadreg = -1;
2047 out_loadreg = FLD (out_fsdn);
2048 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
2055 sh3e_sh3e_model::model_fadd_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2057 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2058 const sh3e_scache* abuf = sem;
2059 const sh3e_idesc* idesc = abuf->idesc;
2063 in_usereg = FLD (in_fsdm);
2064 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2068 in_usereg = FLD (in_fsdn);
2069 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2072 cycles += model_u_exec_before (current_cpu, idesc, 2);
2075 cycles += model_u_fpu_before (current_cpu, idesc, 3);
2078 INT out_loadreg = -1;
2079 out_loadreg = FLD (out_fsdn);
2080 cycles += model_u_set_fr_before (current_cpu, idesc, 4, out_loadreg);
2087 sh3e_sh3e_model::model_fadd_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2089 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2090 const sh3e_scache* abuf = sem;
2091 const sh3e_idesc* idesc = abuf->idesc;
2095 unsigned long long insn_referenced = abuf->written;
2097 in_usereg = FLD (in_fsdm);
2098 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2102 unsigned long long insn_referenced = abuf->written;
2104 in_usereg = FLD (in_fsdn);
2105 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2109 unsigned long long insn_referenced = abuf->written;
2110 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2114 unsigned long long insn_referenced = abuf->written;
2115 cycles += model_u_fpu_after (current_cpu, idesc, 3, referenced);
2119 unsigned long long insn_referenced = abuf->written;
2120 INT out_loadreg = -1;
2121 out_loadreg = FLD (out_fsdn);
2122 cycles += model_u_set_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
2129 sh3e_sh3e_model::model_fcmpeq_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2131 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2132 const sh3e_scache* abuf = sem;
2133 const sh3e_idesc* idesc = abuf->idesc;
2137 in_usereg = FLD (in_fsdm);
2138 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2142 in_usereg = FLD (in_fsdn);
2143 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2146 cycles += model_u_exec_before (current_cpu, idesc, 2);
2149 cycles += model_u_fcmp_before (current_cpu, idesc, 3);
2152 cycles += model_u_fpu_before (current_cpu, idesc, 4);
2159 sh3e_sh3e_model::model_fcmpeq_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2161 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2162 const sh3e_scache* abuf = sem;
2163 const sh3e_idesc* idesc = abuf->idesc;
2167 unsigned long long insn_referenced = abuf->written;
2169 in_usereg = FLD (in_fsdm);
2170 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2174 unsigned long long insn_referenced = abuf->written;
2176 in_usereg = FLD (in_fsdn);
2177 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2181 unsigned long long insn_referenced = abuf->written;
2182 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2186 unsigned long long insn_referenced = abuf->written;
2187 cycles += model_u_fcmp_after (current_cpu, idesc, 3, referenced);
2191 unsigned long long insn_referenced = abuf->written;
2192 cycles += model_u_fpu_after (current_cpu, idesc, 4, referenced);
2199 sh3e_sh3e_model::model_fcmpgt_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2201 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2202 const sh3e_scache* abuf = sem;
2203 const sh3e_idesc* idesc = abuf->idesc;
2207 in_usereg = FLD (in_fsdm);
2208 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2212 in_usereg = FLD (in_fsdn);
2213 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2216 cycles += model_u_exec_before (current_cpu, idesc, 2);
2219 cycles += model_u_fcmp_before (current_cpu, idesc, 3);
2222 cycles += model_u_fpu_before (current_cpu, idesc, 4);
2229 sh3e_sh3e_model::model_fcmpgt_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2231 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2232 const sh3e_scache* abuf = sem;
2233 const sh3e_idesc* idesc = abuf->idesc;
2237 unsigned long long insn_referenced = abuf->written;
2239 in_usereg = FLD (in_fsdm);
2240 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2244 unsigned long long insn_referenced = abuf->written;
2246 in_usereg = FLD (in_fsdn);
2247 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2251 unsigned long long insn_referenced = abuf->written;
2252 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2256 unsigned long long insn_referenced = abuf->written;
2257 cycles += model_u_fcmp_after (current_cpu, idesc, 3, referenced);
2261 unsigned long long insn_referenced = abuf->written;
2262 cycles += model_u_fpu_after (current_cpu, idesc, 4, referenced);
2269 sh3e_sh3e_model::model_fdiv_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2271 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2272 const sh3e_scache* abuf = sem;
2273 const sh3e_idesc* idesc = abuf->idesc;
2277 in_usereg = FLD (in_fsdm);
2278 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2282 in_usereg = FLD (in_fsdn);
2283 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2286 cycles += model_u_exec_before (current_cpu, idesc, 2);
2289 INT out_loadreg = -1;
2290 out_loadreg = FLD (out_fsdn);
2291 cycles += model_u_fdiv_before (current_cpu, idesc, 3, out_loadreg);
2298 sh3e_sh3e_model::model_fdiv_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2300 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2301 const sh3e_scache* abuf = sem;
2302 const sh3e_idesc* idesc = abuf->idesc;
2306 unsigned long long insn_referenced = abuf->written;
2308 in_usereg = FLD (in_fsdm);
2309 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2313 unsigned long long insn_referenced = abuf->written;
2315 in_usereg = FLD (in_fsdn);
2316 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2320 unsigned long long insn_referenced = abuf->written;
2321 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2325 unsigned long long insn_referenced = abuf->written;
2326 INT out_loadreg = -1;
2327 out_loadreg = FLD (out_fsdn);
2328 cycles += model_u_fdiv_after (current_cpu, idesc, 3, referenced, out_loadreg);
2335 sh3e_sh3e_model::model_flds_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2337 #define FLD(f) abuf->fields.sfmt_flds_compact.f
2338 const sh3e_scache* abuf = sem;
2339 const sh3e_idesc* idesc = abuf->idesc;
2343 in_usereg = FLD (in_frn);
2344 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2347 cycles += model_u_exec_before (current_cpu, idesc, 1);
2350 cycles += model_u_flds_fpul_before (current_cpu, idesc, 2);
2357 sh3e_sh3e_model::model_flds_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2359 #define FLD(f) abuf->fields.sfmt_flds_compact.f
2360 const sh3e_scache* abuf = sem;
2361 const sh3e_idesc* idesc = abuf->idesc;
2365 unsigned long long insn_referenced = abuf->written;
2367 in_usereg = FLD (in_frn);
2368 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2372 unsigned long long insn_referenced = abuf->written;
2373 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2377 unsigned long long insn_referenced = abuf->written;
2378 cycles += model_u_flds_fpul_after (current_cpu, idesc, 2, referenced);
2385 sh3e_sh3e_model::model_fldi0_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2387 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2388 const sh3e_scache* abuf = sem;
2389 const sh3e_idesc* idesc = abuf->idesc;
2392 cycles += model_u_exec_before (current_cpu, idesc, 0);
2395 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 1);
2398 INT out_loadreg = -1;
2399 out_loadreg = FLD (out_frn);
2400 cycles += model_u_set_fr_0_before (current_cpu, idesc, 2, out_loadreg);
2407 sh3e_sh3e_model::model_fldi0_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2409 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2410 const sh3e_scache* abuf = sem;
2411 const sh3e_idesc* idesc = abuf->idesc;
2415 unsigned long long insn_referenced = abuf->written;
2416 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
2420 unsigned long long insn_referenced = abuf->written;
2421 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 1, referenced);
2425 unsigned long long insn_referenced = abuf->written;
2426 INT out_loadreg = -1;
2427 out_loadreg = FLD (out_frn);
2428 cycles += model_u_set_fr_0_after (current_cpu, idesc, 2, referenced, out_loadreg);
2435 sh3e_sh3e_model::model_fldi1_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2437 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2438 const sh3e_scache* abuf = sem;
2439 const sh3e_idesc* idesc = abuf->idesc;
2442 cycles += model_u_exec_before (current_cpu, idesc, 0);
2445 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 1);
2448 INT out_loadreg = -1;
2449 out_loadreg = FLD (out_frn);
2450 cycles += model_u_set_fr_0_before (current_cpu, idesc, 2, out_loadreg);
2457 sh3e_sh3e_model::model_fldi1_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2459 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2460 const sh3e_scache* abuf = sem;
2461 const sh3e_idesc* idesc = abuf->idesc;
2465 unsigned long long insn_referenced = abuf->written;
2466 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
2470 unsigned long long insn_referenced = abuf->written;
2471 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 1, referenced);
2475 unsigned long long insn_referenced = abuf->written;
2476 INT out_loadreg = -1;
2477 out_loadreg = FLD (out_frn);
2478 cycles += model_u_set_fr_0_after (current_cpu, idesc, 2, referenced, out_loadreg);
2485 sh3e_sh3e_model::model_float_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2487 #define FLD(f) abuf->fields.sfmt_float_compact.f
2488 const sh3e_scache* abuf = sem;
2489 const sh3e_idesc* idesc = abuf->idesc;
2492 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
2495 cycles += model_u_exec_before (current_cpu, idesc, 1);
2498 cycles += model_u_fpu_before (current_cpu, idesc, 2);
2501 INT out_loadreg = -1;
2502 out_loadreg = FLD (out_fsdn);
2503 cycles += model_u_set_fr_before (current_cpu, idesc, 3, out_loadreg);
2510 sh3e_sh3e_model::model_float_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2512 #define FLD(f) abuf->fields.sfmt_float_compact.f
2513 const sh3e_scache* abuf = sem;
2514 const sh3e_idesc* idesc = abuf->idesc;
2518 unsigned long long insn_referenced = abuf->written;
2519 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
2523 unsigned long long insn_referenced = abuf->written;
2524 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2528 unsigned long long insn_referenced = abuf->written;
2529 cycles += model_u_fpu_after (current_cpu, idesc, 2, referenced);
2533 unsigned long long insn_referenced = abuf->written;
2534 INT out_loadreg = -1;
2535 out_loadreg = FLD (out_fsdn);
2536 cycles += model_u_set_fr_after (current_cpu, idesc, 3, referenced, out_loadreg);
2543 sh3e_sh3e_model::model_fmac_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2545 #define FLD(f) abuf->fields.sfmt_fmac_compact.f
2546 const sh3e_scache* abuf = sem;
2547 const sh3e_idesc* idesc = abuf->idesc;
2551 in_usereg = FLD (in_frm);
2552 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2556 in_usereg = FLD (in_frn);
2557 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2561 in_usereg = FLD (in_fr0);
2562 cycles += model_u_use_fr_before (current_cpu, idesc, 2, in_usereg);
2565 cycles += model_u_exec_before (current_cpu, idesc, 3);
2568 cycles += model_u_fpu_before (current_cpu, idesc, 4);
2571 INT out_loadreg = -1;
2572 out_loadreg = FLD (out_frn);
2573 cycles += model_u_set_fr_before (current_cpu, idesc, 5, out_loadreg);
2580 sh3e_sh3e_model::model_fmac_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2582 #define FLD(f) abuf->fields.sfmt_fmac_compact.f
2583 const sh3e_scache* abuf = sem;
2584 const sh3e_idesc* idesc = abuf->idesc;
2588 unsigned long long insn_referenced = abuf->written;
2590 in_usereg = FLD (in_frm);
2591 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2595 unsigned long long insn_referenced = abuf->written;
2597 in_usereg = FLD (in_frn);
2598 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2602 unsigned long long insn_referenced = abuf->written;
2604 in_usereg = FLD (in_fr0);
2605 cycles += model_u_use_fr_after (current_cpu, idesc, 2, referenced, in_usereg);
2609 unsigned long long insn_referenced = abuf->written;
2610 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
2614 unsigned long long insn_referenced = abuf->written;
2615 cycles += model_u_fpu_after (current_cpu, idesc, 4, referenced);
2619 unsigned long long insn_referenced = abuf->written;
2620 INT out_loadreg = -1;
2621 out_loadreg = FLD (out_frn);
2622 cycles += model_u_set_fr_after (current_cpu, idesc, 5, referenced, out_loadreg);
2629 sh3e_sh3e_model::model_fmov1_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2631 #define FLD(f) abuf->fields.sfmt_fmov1_compact.f
2632 const sh3e_scache* abuf = sem;
2633 const sh3e_idesc* idesc = abuf->idesc;
2637 in_usereg = FLD (in_fmovm);
2638 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2641 cycles += model_u_exec_before (current_cpu, idesc, 1);
2644 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
2647 INT out_loadreg = -1;
2648 out_loadreg = FLD (out_fmovn);
2649 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
2656 sh3e_sh3e_model::model_fmov1_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2658 #define FLD(f) abuf->fields.sfmt_fmov1_compact.f
2659 const sh3e_scache* abuf = sem;
2660 const sh3e_idesc* idesc = abuf->idesc;
2664 unsigned long long insn_referenced = abuf->written;
2666 in_usereg = FLD (in_fmovm);
2667 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2671 unsigned long long insn_referenced = abuf->written;
2672 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2676 unsigned long long insn_referenced = abuf->written;
2677 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
2681 unsigned long long insn_referenced = abuf->written;
2682 INT out_loadreg = -1;
2683 out_loadreg = FLD (out_fmovn);
2684 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
2691 sh3e_sh3e_model::model_fmov2_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2693 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
2694 const sh3e_scache* abuf = sem;
2695 const sh3e_idesc* idesc = abuf->idesc;
2699 in_usereg = FLD (in_rm);
2700 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2703 cycles += model_u_exec_before (current_cpu, idesc, 1);
2706 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
2709 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
2712 INT out_loadreg = -1;
2713 out_loadreg = FLD (out_fmovn);
2714 cycles += model_u_load_fr_before (current_cpu, idesc, 4, out_loadreg);
2721 sh3e_sh3e_model::model_fmov2_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2723 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
2724 const sh3e_scache* abuf = sem;
2725 const sh3e_idesc* idesc = abuf->idesc;
2729 unsigned long long insn_referenced = abuf->written;
2731 in_usereg = FLD (in_rm);
2732 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2736 unsigned long long insn_referenced = abuf->written;
2737 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2741 unsigned long long insn_referenced = abuf->written;
2742 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
2746 unsigned long long insn_referenced = abuf->written;
2747 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
2751 unsigned long long insn_referenced = abuf->written;
2752 INT out_loadreg = -1;
2753 out_loadreg = FLD (out_fmovn);
2754 cycles += model_u_load_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
2761 sh3e_sh3e_model::model_fmov3_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2763 #define FLD(f) abuf->fields.sfmt_fmov3_compact.f
2764 const sh3e_scache* abuf = sem;
2765 const sh3e_idesc* idesc = abuf->idesc;
2769 in_usereg = FLD (in_rm);
2770 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2773 cycles += model_u_exec_before (current_cpu, idesc, 1);
2776 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
2779 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
2782 INT out_loadreg = -1;
2783 out_loadreg = FLD (out_fmovn);
2784 cycles += model_u_load_fr_before (current_cpu, idesc, 4, out_loadreg);
2791 sh3e_sh3e_model::model_fmov3_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2793 #define FLD(f) abuf->fields.sfmt_fmov3_compact.f
2794 const sh3e_scache* abuf = sem;
2795 const sh3e_idesc* idesc = abuf->idesc;
2799 unsigned long long insn_referenced = abuf->written;
2801 in_usereg = FLD (in_rm);
2802 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2806 unsigned long long insn_referenced = abuf->written;
2807 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2811 unsigned long long insn_referenced = abuf->written;
2812 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
2816 unsigned long long insn_referenced = abuf->written;
2817 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
2821 unsigned long long insn_referenced = abuf->written;
2822 INT out_loadreg = -1;
2823 out_loadreg = FLD (out_fmovn);
2824 cycles += model_u_load_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
2831 sh3e_sh3e_model::model_fmov4_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2833 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
2834 const sh3e_scache* abuf = sem;
2835 const sh3e_idesc* idesc = abuf->idesc;
2839 in_usereg = FLD (in_rm);
2840 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2844 in_usereg = FLD (in_r0);
2845 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
2848 cycles += model_u_exec_before (current_cpu, idesc, 2);
2851 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
2854 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
2857 INT out_loadreg = -1;
2858 out_loadreg = FLD (out_fmovn);
2859 cycles += model_u_load_fr_before (current_cpu, idesc, 5, out_loadreg);
2866 sh3e_sh3e_model::model_fmov4_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2868 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
2869 const sh3e_scache* abuf = sem;
2870 const sh3e_idesc* idesc = abuf->idesc;
2874 unsigned long long insn_referenced = abuf->written;
2876 in_usereg = FLD (in_rm);
2877 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2881 unsigned long long insn_referenced = abuf->written;
2883 in_usereg = FLD (in_r0);
2884 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
2888 unsigned long long insn_referenced = abuf->written;
2889 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2893 unsigned long long insn_referenced = abuf->written;
2894 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
2898 unsigned long long insn_referenced = abuf->written;
2899 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
2903 unsigned long long insn_referenced = abuf->written;
2904 INT out_loadreg = -1;
2905 out_loadreg = FLD (out_fmovn);
2906 cycles += model_u_load_fr_after (current_cpu, idesc, 5, referenced, out_loadreg);
2913 sh3e_sh3e_model::model_fmov5_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2915 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
2916 const sh3e_scache* abuf = sem;
2917 const sh3e_idesc* idesc = abuf->idesc;
2921 in_usereg = FLD (in_fmovm);
2922 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2926 in_usereg = FLD (in_rn);
2927 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
2930 cycles += model_u_exec_before (current_cpu, idesc, 2);
2933 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
2936 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
2943 sh3e_sh3e_model::model_fmov5_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
2945 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
2946 const sh3e_scache* abuf = sem;
2947 const sh3e_idesc* idesc = abuf->idesc;
2951 unsigned long long insn_referenced = abuf->written;
2953 in_usereg = FLD (in_fmovm);
2954 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2958 unsigned long long insn_referenced = abuf->written;
2960 in_usereg = FLD (in_rn);
2961 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
2965 unsigned long long insn_referenced = abuf->written;
2966 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2970 unsigned long long insn_referenced = abuf->written;
2971 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
2975 unsigned long long insn_referenced = abuf->written;
2976 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
2983 sh3e_sh3e_model::model_fmov6_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
2985 #define FLD(f) abuf->fields.sfmt_fmov6_compact.f
2986 const sh3e_scache* abuf = sem;
2987 const sh3e_idesc* idesc = abuf->idesc;
2991 in_usereg = FLD (in_fmovm);
2992 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2996 in_usereg = FLD (in_rn);
2997 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3000 cycles += model_u_exec_before (current_cpu, idesc, 2);
3003 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
3006 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
3013 sh3e_sh3e_model::model_fmov6_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3015 #define FLD(f) abuf->fields.sfmt_fmov6_compact.f
3016 const sh3e_scache* abuf = sem;
3017 const sh3e_idesc* idesc = abuf->idesc;
3021 unsigned long long insn_referenced = abuf->written;
3023 in_usereg = FLD (in_fmovm);
3024 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3028 unsigned long long insn_referenced = abuf->written;
3030 in_usereg = FLD (in_rn);
3031 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3035 unsigned long long insn_referenced = abuf->written;
3036 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3040 unsigned long long insn_referenced = abuf->written;
3041 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
3045 unsigned long long insn_referenced = abuf->written;
3046 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
3053 sh3e_sh3e_model::model_fmov7_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3055 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
3056 const sh3e_scache* abuf = sem;
3057 const sh3e_idesc* idesc = abuf->idesc;
3061 in_usereg = FLD (in_fmovm);
3062 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3066 in_usereg = FLD (in_rn);
3067 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3071 in_usereg = FLD (in_r0);
3072 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
3075 cycles += model_u_exec_before (current_cpu, idesc, 3);
3078 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 4);
3081 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 5);
3088 sh3e_sh3e_model::model_fmov7_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3090 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
3091 const sh3e_scache* abuf = sem;
3092 const sh3e_idesc* idesc = abuf->idesc;
3096 unsigned long long insn_referenced = abuf->written;
3098 in_usereg = FLD (in_fmovm);
3099 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3103 unsigned long long insn_referenced = abuf->written;
3105 in_usereg = FLD (in_rn);
3106 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3110 unsigned long long insn_referenced = abuf->written;
3112 in_usereg = FLD (in_r0);
3113 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
3117 unsigned long long insn_referenced = abuf->written;
3118 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
3122 unsigned long long insn_referenced = abuf->written;
3123 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 4, referenced);
3127 unsigned long long insn_referenced = abuf->written;
3128 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 5, referenced);
3135 sh3e_sh3e_model::model_fmul_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3137 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3138 const sh3e_scache* abuf = sem;
3139 const sh3e_idesc* idesc = abuf->idesc;
3143 in_usereg = FLD (in_fsdm);
3144 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3148 in_usereg = FLD (in_fsdn);
3149 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
3152 cycles += model_u_exec_before (current_cpu, idesc, 2);
3155 cycles += model_u_fpu_before (current_cpu, idesc, 3);
3158 INT out_loadreg = -1;
3159 out_loadreg = FLD (out_fsdn);
3160 cycles += model_u_set_fr_before (current_cpu, idesc, 4, out_loadreg);
3167 sh3e_sh3e_model::model_fmul_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3169 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3170 const sh3e_scache* abuf = sem;
3171 const sh3e_idesc* idesc = abuf->idesc;
3175 unsigned long long insn_referenced = abuf->written;
3177 in_usereg = FLD (in_fsdm);
3178 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3182 unsigned long long insn_referenced = abuf->written;
3184 in_usereg = FLD (in_fsdn);
3185 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
3189 unsigned long long insn_referenced = abuf->written;
3190 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3194 unsigned long long insn_referenced = abuf->written;
3195 cycles += model_u_fpu_after (current_cpu, idesc, 3, referenced);
3199 unsigned long long insn_referenced = abuf->written;
3200 INT out_loadreg = -1;
3201 out_loadreg = FLD (out_fsdn);
3202 cycles += model_u_set_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
3209 sh3e_sh3e_model::model_fneg_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3211 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3212 const sh3e_scache* abuf = sem;
3213 const sh3e_idesc* idesc = abuf->idesc;
3217 in_usereg = FLD (in_fsdn);
3218 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3221 cycles += model_u_exec_before (current_cpu, idesc, 1);
3224 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
3227 INT out_loadreg = -1;
3228 out_loadreg = FLD (out_fsdn);
3229 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
3236 sh3e_sh3e_model::model_fneg_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3238 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3239 const sh3e_scache* abuf = sem;
3240 const sh3e_idesc* idesc = abuf->idesc;
3244 unsigned long long insn_referenced = abuf->written;
3246 in_usereg = FLD (in_fsdn);
3247 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3251 unsigned long long insn_referenced = abuf->written;
3252 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3256 unsigned long long insn_referenced = abuf->written;
3257 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
3261 unsigned long long insn_referenced = abuf->written;
3262 INT out_loadreg = -1;
3263 out_loadreg = FLD (out_fsdn);
3264 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
3271 sh3e_sh3e_model::model_frchg_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3273 #define FLD(f) abuf->fields.fmt_empty.f
3274 const sh3e_scache* abuf = sem;
3275 const sh3e_idesc* idesc = abuf->idesc;
3278 cycles += model_u_exec_before (current_cpu, idesc, 0);
3285 sh3e_sh3e_model::model_frchg_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3287 #define FLD(f) abuf->fields.fmt_empty.f
3288 const sh3e_scache* abuf = sem;
3289 const sh3e_idesc* idesc = abuf->idesc;
3293 unsigned long long insn_referenced = abuf->written;
3294 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
3301 sh3e_sh3e_model::model_fschg_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3303 #define FLD(f) abuf->fields.fmt_empty.f
3304 const sh3e_scache* abuf = sem;
3305 const sh3e_idesc* idesc = abuf->idesc;
3308 cycles += model_u_exec_before (current_cpu, idesc, 0);
3315 sh3e_sh3e_model::model_fschg_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3317 #define FLD(f) abuf->fields.fmt_empty.f
3318 const sh3e_scache* abuf = sem;
3319 const sh3e_idesc* idesc = abuf->idesc;
3323 unsigned long long insn_referenced = abuf->written;
3324 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
3331 sh3e_sh3e_model::model_fsqrt_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3333 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3334 const sh3e_scache* abuf = sem;
3335 const sh3e_idesc* idesc = abuf->idesc;
3339 in_usereg = FLD (in_fsdn);
3340 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3343 cycles += model_u_exec_before (current_cpu, idesc, 1);
3346 INT out_loadreg = -1;
3347 out_loadreg = FLD (out_fsdn);
3348 cycles += model_u_fsqrt_before (current_cpu, idesc, 2, out_loadreg);
3355 sh3e_sh3e_model::model_fsqrt_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3357 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3358 const sh3e_scache* abuf = sem;
3359 const sh3e_idesc* idesc = abuf->idesc;
3363 unsigned long long insn_referenced = abuf->written;
3365 in_usereg = FLD (in_fsdn);
3366 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3370 unsigned long long insn_referenced = abuf->written;
3371 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3375 unsigned long long insn_referenced = abuf->written;
3376 INT out_loadreg = -1;
3377 out_loadreg = FLD (out_fsdn);
3378 cycles += model_u_fsqrt_after (current_cpu, idesc, 2, referenced, out_loadreg);
3385 sh3e_sh3e_model::model_fsts_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3387 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
3388 const sh3e_scache* abuf = sem;
3389 const sh3e_idesc* idesc = abuf->idesc;
3392 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
3395 cycles += model_u_exec_before (current_cpu, idesc, 1);
3398 cycles += model_u_fpu_before (current_cpu, idesc, 2);
3401 INT out_loadreg = -1;
3402 out_loadreg = FLD (out_frn);
3403 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
3410 sh3e_sh3e_model::model_fsts_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3412 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
3413 const sh3e_scache* abuf = sem;
3414 const sh3e_idesc* idesc = abuf->idesc;
3418 unsigned long long insn_referenced = abuf->written;
3419 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
3423 unsigned long long insn_referenced = abuf->written;
3424 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3428 unsigned long long insn_referenced = abuf->written;
3429 cycles += model_u_fpu_after (current_cpu, idesc, 2, referenced);
3433 unsigned long long insn_referenced = abuf->written;
3434 INT out_loadreg = -1;
3435 out_loadreg = FLD (out_frn);
3436 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
3443 sh3e_sh3e_model::model_fsub_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3445 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3446 const sh3e_scache* abuf = sem;
3447 const sh3e_idesc* idesc = abuf->idesc;
3451 in_usereg = FLD (in_fsdm);
3452 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3456 in_usereg = FLD (in_fsdn);
3457 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
3460 cycles += model_u_exec_before (current_cpu, idesc, 2);
3463 cycles += model_u_fpu_before (current_cpu, idesc, 3);
3466 INT out_loadreg = -1;
3467 out_loadreg = FLD (out_fsdn);
3468 cycles += model_u_set_fr_before (current_cpu, idesc, 4, out_loadreg);
3475 sh3e_sh3e_model::model_fsub_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3477 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3478 const sh3e_scache* abuf = sem;
3479 const sh3e_idesc* idesc = abuf->idesc;
3483 unsigned long long insn_referenced = abuf->written;
3485 in_usereg = FLD (in_fsdm);
3486 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3490 unsigned long long insn_referenced = abuf->written;
3492 in_usereg = FLD (in_fsdn);
3493 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
3497 unsigned long long insn_referenced = abuf->written;
3498 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3502 unsigned long long insn_referenced = abuf->written;
3503 cycles += model_u_fpu_after (current_cpu, idesc, 3, referenced);
3507 unsigned long long insn_referenced = abuf->written;
3508 INT out_loadreg = -1;
3509 out_loadreg = FLD (out_fsdn);
3510 cycles += model_u_set_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
3517 sh3e_sh3e_model::model_ftrc_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3519 #define FLD(f) abuf->fields.sfmt_ftrc_compact.f
3520 const sh3e_scache* abuf = sem;
3521 const sh3e_idesc* idesc = abuf->idesc;
3525 in_usereg = FLD (in_fsdn);
3526 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3529 cycles += model_u_exec_before (current_cpu, idesc, 1);
3532 cycles += model_u_fpu_before (current_cpu, idesc, 2);
3535 cycles += model_u_set_fpul_before (current_cpu, idesc, 3);
3542 sh3e_sh3e_model::model_ftrc_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3544 #define FLD(f) abuf->fields.sfmt_ftrc_compact.f
3545 const sh3e_scache* abuf = sem;
3546 const sh3e_idesc* idesc = abuf->idesc;
3550 unsigned long long insn_referenced = abuf->written;
3552 in_usereg = FLD (in_fsdn);
3553 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3557 unsigned long long insn_referenced = abuf->written;
3558 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3562 unsigned long long insn_referenced = abuf->written;
3563 cycles += model_u_fpu_after (current_cpu, idesc, 2, referenced);
3567 unsigned long long insn_referenced = abuf->written;
3568 cycles += model_u_set_fpul_after (current_cpu, idesc, 3, referenced);
3575 sh3e_sh3e_model::model_jmp_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3577 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3578 const sh3e_scache* abuf = sem;
3579 const sh3e_idesc* idesc = abuf->idesc;
3582 cycles += model_u_jmp_before (current_cpu, idesc, 0);
3589 sh3e_sh3e_model::model_jmp_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3591 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3592 const sh3e_scache* abuf = sem;
3593 const sh3e_idesc* idesc = abuf->idesc;
3597 unsigned long long insn_referenced = abuf->written;
3598 referenced |= 1 << 0;
3599 cycles += model_u_jmp_after (current_cpu, idesc, 0, referenced);
3606 sh3e_sh3e_model::model_jsr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3608 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3609 const sh3e_scache* abuf = sem;
3610 const sh3e_idesc* idesc = abuf->idesc;
3613 cycles += model_u_jsr_before (current_cpu, idesc, 0);
3620 sh3e_sh3e_model::model_jsr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3622 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3623 const sh3e_scache* abuf = sem;
3624 const sh3e_idesc* idesc = abuf->idesc;
3628 unsigned long long insn_referenced = abuf->written;
3629 referenced |= 1 << 0;
3630 cycles += model_u_jsr_after (current_cpu, idesc, 0, referenced);
3637 sh3e_sh3e_model::model_ldc_gbr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3639 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3640 const sh3e_scache* abuf = sem;
3641 const sh3e_idesc* idesc = abuf->idesc;
3645 in_usereg = FLD (in_rn);
3646 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3649 cycles += model_u_ldc_gbr_before (current_cpu, idesc, 1);
3656 sh3e_sh3e_model::model_ldc_gbr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3658 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3659 const sh3e_scache* abuf = sem;
3660 const sh3e_idesc* idesc = abuf->idesc;
3664 unsigned long long insn_referenced = abuf->written;
3666 in_usereg = FLD (in_rn);
3667 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3671 unsigned long long insn_referenced = abuf->written;
3672 cycles += model_u_ldc_gbr_after (current_cpu, idesc, 1, referenced);
3679 sh3e_sh3e_model::model_ldc_vbr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3681 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3682 const sh3e_scache* abuf = sem;
3683 const sh3e_idesc* idesc = abuf->idesc;
3687 in_usereg = FLD (in_rn);
3688 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3691 cycles += model_u_exec_before (current_cpu, idesc, 1);
3698 sh3e_sh3e_model::model_ldc_vbr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3700 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3701 const sh3e_scache* abuf = sem;
3702 const sh3e_idesc* idesc = abuf->idesc;
3706 unsigned long long insn_referenced = abuf->written;
3708 in_usereg = FLD (in_rn);
3709 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3713 unsigned long long insn_referenced = abuf->written;
3714 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3721 sh3e_sh3e_model::model_ldc_sr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3723 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3724 const sh3e_scache* abuf = sem;
3725 const sh3e_idesc* idesc = abuf->idesc;
3729 in_usereg = FLD (in_rn);
3730 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3733 cycles += model_u_ldc_sr_before (current_cpu, idesc, 1);
3740 sh3e_sh3e_model::model_ldc_sr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3742 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3743 const sh3e_scache* abuf = sem;
3744 const sh3e_idesc* idesc = abuf->idesc;
3748 unsigned long long insn_referenced = abuf->written;
3750 in_usereg = FLD (in_rn);
3751 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3755 unsigned long long insn_referenced = abuf->written;
3756 cycles += model_u_ldc_sr_after (current_cpu, idesc, 1, referenced);
3763 sh3e_sh3e_model::model_ldcl_gbr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3765 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3766 const sh3e_scache* abuf = sem;
3767 const sh3e_idesc* idesc = abuf->idesc;
3771 in_usereg = FLD (in_rn);
3772 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3775 cycles += model_u_ldcl_before (current_cpu, idesc, 1);
3778 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
3781 cycles += model_u_load_gbr_before (current_cpu, idesc, 3);
3788 sh3e_sh3e_model::model_ldcl_gbr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3790 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3791 const sh3e_scache* abuf = sem;
3792 const sh3e_idesc* idesc = abuf->idesc;
3796 unsigned long long insn_referenced = abuf->written;
3798 in_usereg = FLD (in_rn);
3799 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3803 unsigned long long insn_referenced = abuf->written;
3804 cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
3808 unsigned long long insn_referenced = abuf->written;
3809 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
3813 unsigned long long insn_referenced = abuf->written;
3814 cycles += model_u_load_gbr_after (current_cpu, idesc, 3, referenced);
3821 sh3e_sh3e_model::model_ldcl_vbr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3823 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3824 const sh3e_scache* abuf = sem;
3825 const sh3e_idesc* idesc = abuf->idesc;
3829 in_usereg = FLD (in_rn);
3830 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3833 cycles += model_u_ldcl_vbr_before (current_cpu, idesc, 1);
3836 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
3839 cycles += model_u_load_vbr_before (current_cpu, idesc, 3);
3846 sh3e_sh3e_model::model_ldcl_vbr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3848 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3849 const sh3e_scache* abuf = sem;
3850 const sh3e_idesc* idesc = abuf->idesc;
3854 unsigned long long insn_referenced = abuf->written;
3856 in_usereg = FLD (in_rn);
3857 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3861 unsigned long long insn_referenced = abuf->written;
3862 cycles += model_u_ldcl_vbr_after (current_cpu, idesc, 1, referenced);
3866 unsigned long long insn_referenced = abuf->written;
3867 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
3871 unsigned long long insn_referenced = abuf->written;
3872 cycles += model_u_load_vbr_after (current_cpu, idesc, 3, referenced);
3879 sh3e_sh3e_model::model_lds_fpscr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3881 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3882 const sh3e_scache* abuf = sem;
3883 const sh3e_idesc* idesc = abuf->idesc;
3887 in_usereg = FLD (in_rn);
3888 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3891 cycles += model_u_lds_fpscr_before (current_cpu, idesc, 1);
3898 sh3e_sh3e_model::model_lds_fpscr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3900 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3901 const sh3e_scache* abuf = sem;
3902 const sh3e_idesc* idesc = abuf->idesc;
3906 unsigned long long insn_referenced = abuf->written;
3908 in_usereg = FLD (in_rn);
3909 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3913 unsigned long long insn_referenced = abuf->written;
3914 cycles += model_u_lds_fpscr_after (current_cpu, idesc, 1, referenced);
3921 sh3e_sh3e_model::model_ldsl_fpscr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3923 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3924 const sh3e_scache* abuf = sem;
3925 const sh3e_idesc* idesc = abuf->idesc;
3929 in_usereg = FLD (in_rn);
3930 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3933 cycles += model_u_lds_fpscr_before (current_cpu, idesc, 1);
3936 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 2);
3939 cycles += model_u_ldsl_fpscr_before (current_cpu, idesc, 3);
3946 sh3e_sh3e_model::model_ldsl_fpscr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
3948 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3949 const sh3e_scache* abuf = sem;
3950 const sh3e_idesc* idesc = abuf->idesc;
3954 unsigned long long insn_referenced = abuf->written;
3956 in_usereg = FLD (in_rn);
3957 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3961 unsigned long long insn_referenced = abuf->written;
3962 cycles += model_u_lds_fpscr_after (current_cpu, idesc, 1, referenced);
3966 unsigned long long insn_referenced = abuf->written;
3967 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 2, referenced);
3971 unsigned long long insn_referenced = abuf->written;
3972 cycles += model_u_ldsl_fpscr_after (current_cpu, idesc, 3, referenced);
3979 sh3e_sh3e_model::model_lds_fpul_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
3981 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
3982 const sh3e_scache* abuf = sem;
3983 const sh3e_idesc* idesc = abuf->idesc;
3987 in_usereg = FLD (in_rn);
3988 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3991 cycles += model_u_exec_before (current_cpu, idesc, 1);
3994 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
3997 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
4000 cycles += model_u_load_fpul_before (current_cpu, idesc, 4);
4007 sh3e_sh3e_model::model_lds_fpul_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4009 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
4010 const sh3e_scache* abuf = sem;
4011 const sh3e_idesc* idesc = abuf->idesc;
4015 unsigned long long insn_referenced = abuf->written;
4017 in_usereg = FLD (in_rn);
4018 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4022 unsigned long long insn_referenced = abuf->written;
4023 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4027 unsigned long long insn_referenced = abuf->written;
4028 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
4032 unsigned long long insn_referenced = abuf->written;
4033 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
4037 unsigned long long insn_referenced = abuf->written;
4038 cycles += model_u_load_fpul_after (current_cpu, idesc, 4, referenced);
4045 sh3e_sh3e_model::model_ldsl_fpul_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4047 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
4048 const sh3e_scache* abuf = sem;
4049 const sh3e_idesc* idesc = abuf->idesc;
4053 in_usereg = FLD (in_rn);
4054 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4057 cycles += model_u_exec_before (current_cpu, idesc, 1);
4060 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
4063 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
4066 cycles += model_u_load_fpul_before (current_cpu, idesc, 4);
4073 sh3e_sh3e_model::model_ldsl_fpul_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4075 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
4076 const sh3e_scache* abuf = sem;
4077 const sh3e_idesc* idesc = abuf->idesc;
4081 unsigned long long insn_referenced = abuf->written;
4083 in_usereg = FLD (in_rn);
4084 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4088 unsigned long long insn_referenced = abuf->written;
4089 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4093 unsigned long long insn_referenced = abuf->written;
4094 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
4098 unsigned long long insn_referenced = abuf->written;
4099 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
4103 unsigned long long insn_referenced = abuf->written;
4104 cycles += model_u_load_fpul_after (current_cpu, idesc, 4, referenced);
4111 sh3e_sh3e_model::model_lds_mach_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4113 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4114 const sh3e_scache* abuf = sem;
4115 const sh3e_idesc* idesc = abuf->idesc;
4119 in_usereg = FLD (in_rn);
4120 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4123 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4126 cycles += model_u_exec_before (current_cpu, idesc, 2);
4129 cycles += model_u_set_mac_before (current_cpu, idesc, 3);
4136 sh3e_sh3e_model::model_lds_mach_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4138 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4139 const sh3e_scache* abuf = sem;
4140 const sh3e_idesc* idesc = abuf->idesc;
4144 unsigned long long insn_referenced = abuf->written;
4146 in_usereg = FLD (in_rn);
4147 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4151 unsigned long long insn_referenced = abuf->written;
4152 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4156 unsigned long long insn_referenced = abuf->written;
4157 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4161 unsigned long long insn_referenced = abuf->written;
4162 cycles += model_u_set_mac_after (current_cpu, idesc, 3, referenced);
4169 sh3e_sh3e_model::model_ldsl_mach_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4171 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4172 const sh3e_scache* abuf = sem;
4173 const sh3e_idesc* idesc = abuf->idesc;
4177 in_usereg = FLD (in_rn);
4178 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4181 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4184 cycles += model_u_exec_before (current_cpu, idesc, 2);
4187 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4190 cycles += model_u_load_mac_before (current_cpu, idesc, 4);
4197 sh3e_sh3e_model::model_ldsl_mach_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4199 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4200 const sh3e_scache* abuf = sem;
4201 const sh3e_idesc* idesc = abuf->idesc;
4205 unsigned long long insn_referenced = abuf->written;
4207 in_usereg = FLD (in_rn);
4208 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4212 unsigned long long insn_referenced = abuf->written;
4213 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4217 unsigned long long insn_referenced = abuf->written;
4218 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4222 unsigned long long insn_referenced = abuf->written;
4223 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4227 unsigned long long insn_referenced = abuf->written;
4228 cycles += model_u_load_mac_after (current_cpu, idesc, 4, referenced);
4235 sh3e_sh3e_model::model_lds_macl_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4237 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4238 const sh3e_scache* abuf = sem;
4239 const sh3e_idesc* idesc = abuf->idesc;
4243 in_usereg = FLD (in_rn);
4244 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4247 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4250 cycles += model_u_exec_before (current_cpu, idesc, 2);
4253 cycles += model_u_set_mac_before (current_cpu, idesc, 3);
4260 sh3e_sh3e_model::model_lds_macl_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4262 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4263 const sh3e_scache* abuf = sem;
4264 const sh3e_idesc* idesc = abuf->idesc;
4268 unsigned long long insn_referenced = abuf->written;
4270 in_usereg = FLD (in_rn);
4271 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4275 unsigned long long insn_referenced = abuf->written;
4276 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4280 unsigned long long insn_referenced = abuf->written;
4281 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4285 unsigned long long insn_referenced = abuf->written;
4286 cycles += model_u_set_mac_after (current_cpu, idesc, 3, referenced);
4293 sh3e_sh3e_model::model_ldsl_macl_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4295 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4296 const sh3e_scache* abuf = sem;
4297 const sh3e_idesc* idesc = abuf->idesc;
4301 in_usereg = FLD (in_rn);
4302 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4305 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4308 cycles += model_u_exec_before (current_cpu, idesc, 2);
4311 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4314 cycles += model_u_load_mac_before (current_cpu, idesc, 4);
4321 sh3e_sh3e_model::model_ldsl_macl_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4323 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4324 const sh3e_scache* abuf = sem;
4325 const sh3e_idesc* idesc = abuf->idesc;
4329 unsigned long long insn_referenced = abuf->written;
4331 in_usereg = FLD (in_rn);
4332 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4336 unsigned long long insn_referenced = abuf->written;
4337 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4341 unsigned long long insn_referenced = abuf->written;
4342 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4346 unsigned long long insn_referenced = abuf->written;
4347 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4351 unsigned long long insn_referenced = abuf->written;
4352 cycles += model_u_load_mac_after (current_cpu, idesc, 4, referenced);
4359 sh3e_sh3e_model::model_lds_pr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4361 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4362 const sh3e_scache* abuf = sem;
4363 const sh3e_idesc* idesc = abuf->idesc;
4367 in_usereg = FLD (in_rn);
4368 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4371 cycles += model_u_lds_pr_before (current_cpu, idesc, 1);
4378 sh3e_sh3e_model::model_lds_pr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4380 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4381 const sh3e_scache* abuf = sem;
4382 const sh3e_idesc* idesc = abuf->idesc;
4386 unsigned long long insn_referenced = abuf->written;
4388 in_usereg = FLD (in_rn);
4389 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4393 unsigned long long insn_referenced = abuf->written;
4394 cycles += model_u_lds_pr_after (current_cpu, idesc, 1, referenced);
4401 sh3e_sh3e_model::model_ldsl_pr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4403 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4404 const sh3e_scache* abuf = sem;
4405 const sh3e_idesc* idesc = abuf->idesc;
4409 in_usereg = FLD (in_rn);
4410 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4413 cycles += model_u_lds_pr_before (current_cpu, idesc, 1);
4416 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4419 cycles += model_u_load_pr_before (current_cpu, idesc, 3);
4426 sh3e_sh3e_model::model_ldsl_pr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4428 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4429 const sh3e_scache* abuf = sem;
4430 const sh3e_idesc* idesc = abuf->idesc;
4434 unsigned long long insn_referenced = abuf->written;
4436 in_usereg = FLD (in_rn);
4437 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4441 unsigned long long insn_referenced = abuf->written;
4442 cycles += model_u_lds_pr_after (current_cpu, idesc, 1, referenced);
4446 unsigned long long insn_referenced = abuf->written;
4447 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4451 unsigned long long insn_referenced = abuf->written;
4452 cycles += model_u_load_pr_after (current_cpu, idesc, 3, referenced);
4459 sh3e_sh3e_model::model_macl_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4461 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4462 const sh3e_scache* abuf = sem;
4463 const sh3e_idesc* idesc = abuf->idesc;
4467 in_usereg = FLD (in_rn);
4468 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4472 in_usereg = FLD (in_rm);
4473 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4476 cycles += model_u_macl_before (current_cpu, idesc, 2);
4483 sh3e_sh3e_model::model_macl_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4485 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4486 const sh3e_scache* abuf = sem;
4487 const sh3e_idesc* idesc = abuf->idesc;
4491 unsigned long long insn_referenced = abuf->written;
4493 in_usereg = FLD (in_rn);
4494 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4498 unsigned long long insn_referenced = abuf->written;
4500 in_usereg = FLD (in_rm);
4501 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4505 unsigned long long insn_referenced = abuf->written;
4506 cycles += model_u_macl_after (current_cpu, idesc, 2, referenced);
4513 sh3e_sh3e_model::model_macw_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4515 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4516 const sh3e_scache* abuf = sem;
4517 const sh3e_idesc* idesc = abuf->idesc;
4521 in_usereg = FLD (in_rn);
4522 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4526 in_usereg = FLD (in_rm);
4527 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4530 cycles += model_u_macw_before (current_cpu, idesc, 2);
4537 sh3e_sh3e_model::model_macw_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4539 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4540 const sh3e_scache* abuf = sem;
4541 const sh3e_idesc* idesc = abuf->idesc;
4545 unsigned long long insn_referenced = abuf->written;
4547 in_usereg = FLD (in_rn);
4548 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4552 unsigned long long insn_referenced = abuf->written;
4554 in_usereg = FLD (in_rm);
4555 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4559 unsigned long long insn_referenced = abuf->written;
4560 cycles += model_u_macw_after (current_cpu, idesc, 2, referenced);
4567 sh3e_sh3e_model::model_mov_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4569 #define FLD(f) abuf->fields.sfmt_and_compact.f
4570 const sh3e_scache* abuf = sem;
4571 const sh3e_idesc* idesc = abuf->idesc;
4575 in_usereg = FLD (in_rm64);
4576 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4579 cycles += model_u_exec_before (current_cpu, idesc, 1);
4586 sh3e_sh3e_model::model_mov_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4588 #define FLD(f) abuf->fields.sfmt_and_compact.f
4589 const sh3e_scache* abuf = sem;
4590 const sh3e_idesc* idesc = abuf->idesc;
4594 unsigned long long insn_referenced = abuf->written;
4596 in_usereg = FLD (in_rm64);
4597 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4601 unsigned long long insn_referenced = abuf->written;
4602 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4609 sh3e_sh3e_model::model_movi_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4611 #define FLD(f) abuf->fields.sfmt_addi_compact.f
4612 const sh3e_scache* abuf = sem;
4613 const sh3e_idesc* idesc = abuf->idesc;
4616 cycles += model_u_exec_before (current_cpu, idesc, 0);
4623 sh3e_sh3e_model::model_movi_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4625 #define FLD(f) abuf->fields.sfmt_addi_compact.f
4626 const sh3e_scache* abuf = sem;
4627 const sh3e_idesc* idesc = abuf->idesc;
4631 unsigned long long insn_referenced = abuf->written;
4632 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
4639 sh3e_sh3e_model::model_movb1_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4641 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
4642 const sh3e_scache* abuf = sem;
4643 const sh3e_idesc* idesc = abuf->idesc;
4647 in_usereg = FLD (in_rn);
4648 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4652 in_usereg = FLD (in_rm);
4653 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4656 cycles += model_u_exec_before (current_cpu, idesc, 2);
4659 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4666 sh3e_sh3e_model::model_movb1_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4668 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
4669 const sh3e_scache* abuf = sem;
4670 const sh3e_idesc* idesc = abuf->idesc;
4674 unsigned long long insn_referenced = abuf->written;
4676 in_usereg = FLD (in_rn);
4677 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4681 unsigned long long insn_referenced = abuf->written;
4683 in_usereg = FLD (in_rm);
4684 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4688 unsigned long long insn_referenced = abuf->written;
4689 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4693 unsigned long long insn_referenced = abuf->written;
4694 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4701 sh3e_sh3e_model::model_movb2_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4703 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4704 const sh3e_scache* abuf = sem;
4705 const sh3e_idesc* idesc = abuf->idesc;
4709 in_usereg = FLD (in_rn);
4710 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4714 in_usereg = FLD (in_rm);
4715 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4718 cycles += model_u_exec_before (current_cpu, idesc, 2);
4721 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4728 sh3e_sh3e_model::model_movb2_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4730 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4731 const sh3e_scache* abuf = sem;
4732 const sh3e_idesc* idesc = abuf->idesc;
4736 unsigned long long insn_referenced = abuf->written;
4738 in_usereg = FLD (in_rn);
4739 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4743 unsigned long long insn_referenced = abuf->written;
4745 in_usereg = FLD (in_rm);
4746 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4750 unsigned long long insn_referenced = abuf->written;
4751 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4755 unsigned long long insn_referenced = abuf->written;
4756 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4763 sh3e_sh3e_model::model_movb3_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4765 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
4766 const sh3e_scache* abuf = sem;
4767 const sh3e_idesc* idesc = abuf->idesc;
4771 in_usereg = FLD (in_rn);
4772 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4776 in_usereg = FLD (in_rm);
4777 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4781 in_usereg = FLD (in_r0);
4782 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
4785 cycles += model_u_exec_before (current_cpu, idesc, 3);
4788 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
4795 sh3e_sh3e_model::model_movb3_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4797 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
4798 const sh3e_scache* abuf = sem;
4799 const sh3e_idesc* idesc = abuf->idesc;
4803 unsigned long long insn_referenced = abuf->written;
4805 in_usereg = FLD (in_rn);
4806 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4810 unsigned long long insn_referenced = abuf->written;
4812 in_usereg = FLD (in_rm);
4813 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4817 unsigned long long insn_referenced = abuf->written;
4819 in_usereg = FLD (in_r0);
4820 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
4824 unsigned long long insn_referenced = abuf->written;
4825 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
4829 unsigned long long insn_referenced = abuf->written;
4830 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
4837 sh3e_sh3e_model::model_movb4_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4839 #define FLD(f) abuf->fields.sfmt_andi_compact.f
4840 const sh3e_scache* abuf = sem;
4841 const sh3e_idesc* idesc = abuf->idesc;
4844 cycles += model_u_exec_before (current_cpu, idesc, 0);
4847 cycles += model_u_sx_before (current_cpu, idesc, 1);
4850 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4857 sh3e_sh3e_model::model_movb4_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4859 #define FLD(f) abuf->fields.sfmt_andi_compact.f
4860 const sh3e_scache* abuf = sem;
4861 const sh3e_idesc* idesc = abuf->idesc;
4865 unsigned long long insn_referenced = abuf->written;
4866 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
4870 unsigned long long insn_referenced = abuf->written;
4871 cycles += model_u_sx_after (current_cpu, idesc, 1, referenced);
4875 unsigned long long insn_referenced = abuf->written;
4876 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4883 sh3e_sh3e_model::model_movb5_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4885 #define FLD(f) abuf->fields.sfmt_movb5_compact.f
4886 const sh3e_scache* abuf = sem;
4887 const sh3e_idesc* idesc = abuf->idesc;
4891 in_usereg = FLD (in_r0);
4892 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4896 in_usereg = FLD (in_rm);
4897 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4900 cycles += model_u_exec_before (current_cpu, idesc, 2);
4903 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4910 sh3e_sh3e_model::model_movb5_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4912 #define FLD(f) abuf->fields.sfmt_movb5_compact.f
4913 const sh3e_scache* abuf = sem;
4914 const sh3e_idesc* idesc = abuf->idesc;
4918 unsigned long long insn_referenced = abuf->written;
4920 in_usereg = FLD (in_r0);
4921 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4925 unsigned long long insn_referenced = abuf->written;
4927 in_usereg = FLD (in_rm);
4928 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4932 unsigned long long insn_referenced = abuf->written;
4933 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4937 unsigned long long insn_referenced = abuf->written;
4938 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4945 sh3e_sh3e_model::model_movb6_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
4947 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
4948 const sh3e_scache* abuf = sem;
4949 const sh3e_idesc* idesc = abuf->idesc;
4953 in_usereg = FLD (in_rm);
4954 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4957 cycles += model_u_exec_before (current_cpu, idesc, 1);
4960 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4963 INT out_loadreg = -1;
4964 out_loadreg = FLD (out_rn);
4965 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
4972 sh3e_sh3e_model::model_movb6_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
4974 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
4975 const sh3e_scache* abuf = sem;
4976 const sh3e_idesc* idesc = abuf->idesc;
4980 unsigned long long insn_referenced = abuf->written;
4982 in_usereg = FLD (in_rm);
4983 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4987 unsigned long long insn_referenced = abuf->written;
4988 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4992 unsigned long long insn_referenced = abuf->written;
4993 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4997 unsigned long long insn_referenced = abuf->written;
4998 INT out_loadreg = -1;
4999 out_loadreg = FLD (out_rn);
5000 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5007 sh3e_sh3e_model::model_movb7_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5009 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5010 const sh3e_scache* abuf = sem;
5011 const sh3e_idesc* idesc = abuf->idesc;
5015 in_usereg = FLD (in_rm);
5016 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5019 cycles += model_u_exec_before (current_cpu, idesc, 1);
5022 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5025 INT out_loadreg = -1;
5026 out_loadreg = FLD (out_rn);
5027 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5034 sh3e_sh3e_model::model_movb7_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5036 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5037 const sh3e_scache* abuf = sem;
5038 const sh3e_idesc* idesc = abuf->idesc;
5042 unsigned long long insn_referenced = abuf->written;
5044 in_usereg = FLD (in_rm);
5045 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5049 unsigned long long insn_referenced = abuf->written;
5050 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5054 unsigned long long insn_referenced = abuf->written;
5055 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5059 unsigned long long insn_referenced = abuf->written;
5060 INT out_loadreg = -1;
5061 out_loadreg = FLD (out_rn);
5062 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5069 sh3e_sh3e_model::model_movb8_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5071 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
5072 const sh3e_scache* abuf = sem;
5073 const sh3e_idesc* idesc = abuf->idesc;
5077 in_usereg = FLD (in_rm);
5078 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5082 in_usereg = FLD (in_r0);
5083 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5086 cycles += model_u_exec_before (current_cpu, idesc, 2);
5089 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5092 INT out_loadreg = -1;
5093 out_loadreg = FLD (out_rn);
5094 cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
5101 sh3e_sh3e_model::model_movb8_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5103 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
5104 const sh3e_scache* abuf = sem;
5105 const sh3e_idesc* idesc = abuf->idesc;
5109 unsigned long long insn_referenced = abuf->written;
5111 in_usereg = FLD (in_rm);
5112 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5116 unsigned long long insn_referenced = abuf->written;
5118 in_usereg = FLD (in_r0);
5119 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5123 unsigned long long insn_referenced = abuf->written;
5124 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5128 unsigned long long insn_referenced = abuf->written;
5129 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5133 unsigned long long insn_referenced = abuf->written;
5134 INT out_loadreg = -1;
5135 out_loadreg = FLD (out_rn);
5136 cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
5143 sh3e_sh3e_model::model_movb9_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5145 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5146 const sh3e_scache* abuf = sem;
5147 const sh3e_idesc* idesc = abuf->idesc;
5150 cycles += model_u_exec_before (current_cpu, idesc, 0);
5153 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
5156 INT out_loadreg = -1;
5157 out_loadreg = FLD (out_r0);
5158 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
5165 sh3e_sh3e_model::model_movb9_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5167 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5168 const sh3e_scache* abuf = sem;
5169 const sh3e_idesc* idesc = abuf->idesc;
5173 unsigned long long insn_referenced = abuf->written;
5174 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5178 unsigned long long insn_referenced = abuf->written;
5179 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
5183 unsigned long long insn_referenced = abuf->written;
5184 INT out_loadreg = -1;
5185 out_loadreg = FLD (out_r0);
5186 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
5193 sh3e_sh3e_model::model_movb10_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5195 #define FLD(f) abuf->fields.sfmt_movb10_compact.f
5196 const sh3e_scache* abuf = sem;
5197 const sh3e_idesc* idesc = abuf->idesc;
5201 in_usereg = FLD (in_rm);
5202 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5205 cycles += model_u_exec_before (current_cpu, idesc, 1);
5208 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5211 INT out_loadreg = -1;
5212 out_loadreg = FLD (out_r0);
5213 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5220 sh3e_sh3e_model::model_movb10_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5222 #define FLD(f) abuf->fields.sfmt_movb10_compact.f
5223 const sh3e_scache* abuf = sem;
5224 const sh3e_idesc* idesc = abuf->idesc;
5228 unsigned long long insn_referenced = abuf->written;
5230 in_usereg = FLD (in_rm);
5231 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5235 unsigned long long insn_referenced = abuf->written;
5236 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5240 unsigned long long insn_referenced = abuf->written;
5241 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5245 unsigned long long insn_referenced = abuf->written;
5246 INT out_loadreg = -1;
5247 out_loadreg = FLD (out_r0);
5248 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5255 sh3e_sh3e_model::model_movl1_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5257 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5258 const sh3e_scache* abuf = sem;
5259 const sh3e_idesc* idesc = abuf->idesc;
5263 in_usereg = FLD (in_rm);
5264 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5268 in_usereg = FLD (in_rn);
5269 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5272 cycles += model_u_exec_before (current_cpu, idesc, 2);
5275 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5282 sh3e_sh3e_model::model_movl1_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5284 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5285 const sh3e_scache* abuf = sem;
5286 const sh3e_idesc* idesc = abuf->idesc;
5290 unsigned long long insn_referenced = abuf->written;
5292 in_usereg = FLD (in_rm);
5293 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5297 unsigned long long insn_referenced = abuf->written;
5299 in_usereg = FLD (in_rn);
5300 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5304 unsigned long long insn_referenced = abuf->written;
5305 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5309 unsigned long long insn_referenced = abuf->written;
5310 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5317 sh3e_sh3e_model::model_movl2_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5319 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5320 const sh3e_scache* abuf = sem;
5321 const sh3e_idesc* idesc = abuf->idesc;
5325 in_usereg = FLD (in_rm);
5326 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5330 in_usereg = FLD (in_rn);
5331 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5334 cycles += model_u_exec_before (current_cpu, idesc, 2);
5337 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5344 sh3e_sh3e_model::model_movl2_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5346 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5347 const sh3e_scache* abuf = sem;
5348 const sh3e_idesc* idesc = abuf->idesc;
5352 unsigned long long insn_referenced = abuf->written;
5354 in_usereg = FLD (in_rm);
5355 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5359 unsigned long long insn_referenced = abuf->written;
5361 in_usereg = FLD (in_rn);
5362 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5366 unsigned long long insn_referenced = abuf->written;
5367 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5371 unsigned long long insn_referenced = abuf->written;
5372 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5379 sh3e_sh3e_model::model_movl3_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5381 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
5382 const sh3e_scache* abuf = sem;
5383 const sh3e_idesc* idesc = abuf->idesc;
5387 in_usereg = FLD (in_rm);
5388 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5392 in_usereg = FLD (in_rn);
5393 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5397 in_usereg = FLD (in_r0);
5398 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
5401 cycles += model_u_exec_before (current_cpu, idesc, 3);
5404 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
5411 sh3e_sh3e_model::model_movl3_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5413 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
5414 const sh3e_scache* abuf = sem;
5415 const sh3e_idesc* idesc = abuf->idesc;
5419 unsigned long long insn_referenced = abuf->written;
5421 in_usereg = FLD (in_rm);
5422 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5426 unsigned long long insn_referenced = abuf->written;
5428 in_usereg = FLD (in_rn);
5429 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5433 unsigned long long insn_referenced = abuf->written;
5435 in_usereg = FLD (in_r0);
5436 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
5440 unsigned long long insn_referenced = abuf->written;
5441 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
5445 unsigned long long insn_referenced = abuf->written;
5446 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
5453 sh3e_sh3e_model::model_movl4_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5455 #define FLD(f) abuf->fields.sfmt_movl4_compact.f
5456 const sh3e_scache* abuf = sem;
5457 const sh3e_idesc* idesc = abuf->idesc;
5461 in_usereg = FLD (in_r0);
5462 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5465 cycles += model_u_exec_before (current_cpu, idesc, 1);
5468 cycles += model_u_sx_before (current_cpu, idesc, 2);
5471 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5478 sh3e_sh3e_model::model_movl4_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5480 #define FLD(f) abuf->fields.sfmt_movl4_compact.f
5481 const sh3e_scache* abuf = sem;
5482 const sh3e_idesc* idesc = abuf->idesc;
5486 unsigned long long insn_referenced = abuf->written;
5488 in_usereg = FLD (in_r0);
5489 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5493 unsigned long long insn_referenced = abuf->written;
5494 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5498 unsigned long long insn_referenced = abuf->written;
5499 cycles += model_u_sx_after (current_cpu, idesc, 2, referenced);
5503 unsigned long long insn_referenced = abuf->written;
5504 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5511 sh3e_sh3e_model::model_movl5_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5513 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5514 const sh3e_scache* abuf = sem;
5515 const sh3e_idesc* idesc = abuf->idesc;
5519 in_usereg = FLD (in_rm);
5520 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5524 in_usereg = FLD (in_rn);
5525 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5528 cycles += model_u_exec_before (current_cpu, idesc, 2);
5531 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5538 sh3e_sh3e_model::model_movl5_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5540 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5541 const sh3e_scache* abuf = sem;
5542 const sh3e_idesc* idesc = abuf->idesc;
5546 unsigned long long insn_referenced = abuf->written;
5548 in_usereg = FLD (in_rm);
5549 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5553 unsigned long long insn_referenced = abuf->written;
5555 in_usereg = FLD (in_rn);
5556 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5560 unsigned long long insn_referenced = abuf->written;
5561 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5565 unsigned long long insn_referenced = abuf->written;
5566 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5573 sh3e_sh3e_model::model_movl6_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5575 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
5576 const sh3e_scache* abuf = sem;
5577 const sh3e_idesc* idesc = abuf->idesc;
5581 in_usereg = FLD (in_rm);
5582 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5585 cycles += model_u_exec_before (current_cpu, idesc, 1);
5588 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5591 INT out_loadreg = -1;
5592 out_loadreg = FLD (out_rn);
5593 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5600 sh3e_sh3e_model::model_movl6_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5602 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
5603 const sh3e_scache* abuf = sem;
5604 const sh3e_idesc* idesc = abuf->idesc;
5608 unsigned long long insn_referenced = abuf->written;
5610 in_usereg = FLD (in_rm);
5611 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5615 unsigned long long insn_referenced = abuf->written;
5616 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5620 unsigned long long insn_referenced = abuf->written;
5621 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5625 unsigned long long insn_referenced = abuf->written;
5626 INT out_loadreg = -1;
5627 out_loadreg = FLD (out_rn);
5628 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5635 sh3e_sh3e_model::model_movl7_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5637 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5638 const sh3e_scache* abuf = sem;
5639 const sh3e_idesc* idesc = abuf->idesc;
5643 in_usereg = FLD (in_rm);
5644 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5647 cycles += model_u_exec_before (current_cpu, idesc, 1);
5650 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5653 INT out_loadreg = -1;
5654 out_loadreg = FLD (out_rn);
5655 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5662 sh3e_sh3e_model::model_movl7_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5664 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5665 const sh3e_scache* abuf = sem;
5666 const sh3e_idesc* idesc = abuf->idesc;
5670 unsigned long long insn_referenced = abuf->written;
5672 in_usereg = FLD (in_rm);
5673 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5677 unsigned long long insn_referenced = abuf->written;
5678 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5682 unsigned long long insn_referenced = abuf->written;
5683 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5687 unsigned long long insn_referenced = abuf->written;
5688 INT out_loadreg = -1;
5689 out_loadreg = FLD (out_rn);
5690 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5697 sh3e_sh3e_model::model_movl8_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5699 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
5700 const sh3e_scache* abuf = sem;
5701 const sh3e_idesc* idesc = abuf->idesc;
5705 in_usereg = FLD (in_rm);
5706 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5710 in_usereg = FLD (in_r0);
5711 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5714 cycles += model_u_exec_before (current_cpu, idesc, 2);
5717 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5720 INT out_loadreg = -1;
5721 out_loadreg = FLD (out_rn);
5722 cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
5729 sh3e_sh3e_model::model_movl8_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5731 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
5732 const sh3e_scache* abuf = sem;
5733 const sh3e_idesc* idesc = abuf->idesc;
5737 unsigned long long insn_referenced = abuf->written;
5739 in_usereg = FLD (in_rm);
5740 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5744 unsigned long long insn_referenced = abuf->written;
5746 in_usereg = FLD (in_r0);
5747 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5751 unsigned long long insn_referenced = abuf->written;
5752 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5756 unsigned long long insn_referenced = abuf->written;
5757 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5761 unsigned long long insn_referenced = abuf->written;
5762 INT out_loadreg = -1;
5763 out_loadreg = FLD (out_rn);
5764 cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
5771 sh3e_sh3e_model::model_movl9_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5773 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
5774 const sh3e_scache* abuf = sem;
5775 const sh3e_idesc* idesc = abuf->idesc;
5778 cycles += model_u_exec_before (current_cpu, idesc, 0);
5781 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
5784 INT out_loadreg = -1;
5785 out_loadreg = FLD (out_r0);
5786 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
5793 sh3e_sh3e_model::model_movl9_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5795 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
5796 const sh3e_scache* abuf = sem;
5797 const sh3e_idesc* idesc = abuf->idesc;
5801 unsigned long long insn_referenced = abuf->written;
5802 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5806 unsigned long long insn_referenced = abuf->written;
5807 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
5811 unsigned long long insn_referenced = abuf->written;
5812 INT out_loadreg = -1;
5813 out_loadreg = FLD (out_r0);
5814 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
5821 sh3e_sh3e_model::model_movl10_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5823 #define FLD(f) abuf->fields.sfmt_movl10_compact.f
5824 const sh3e_scache* abuf = sem;
5825 const sh3e_idesc* idesc = abuf->idesc;
5828 cycles += model_u_exec_before (current_cpu, idesc, 0);
5831 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
5834 INT out_loadreg = -1;
5835 out_loadreg = FLD (out_rn);
5836 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
5843 sh3e_sh3e_model::model_movl10_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5845 #define FLD(f) abuf->fields.sfmt_movl10_compact.f
5846 const sh3e_scache* abuf = sem;
5847 const sh3e_idesc* idesc = abuf->idesc;
5851 unsigned long long insn_referenced = abuf->written;
5852 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5856 unsigned long long insn_referenced = abuf->written;
5857 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
5861 unsigned long long insn_referenced = abuf->written;
5862 INT out_loadreg = -1;
5863 out_loadreg = FLD (out_rn);
5864 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
5871 sh3e_sh3e_model::model_movl11_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5873 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
5874 const sh3e_scache* abuf = sem;
5875 const sh3e_idesc* idesc = abuf->idesc;
5879 in_usereg = FLD (in_rm);
5880 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5883 cycles += model_u_exec_before (current_cpu, idesc, 1);
5886 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5889 INT out_loadreg = -1;
5890 out_loadreg = FLD (out_rn);
5891 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5898 sh3e_sh3e_model::model_movl11_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5900 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
5901 const sh3e_scache* abuf = sem;
5902 const sh3e_idesc* idesc = abuf->idesc;
5906 unsigned long long insn_referenced = abuf->written;
5908 in_usereg = FLD (in_rm);
5909 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5913 unsigned long long insn_referenced = abuf->written;
5914 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5918 unsigned long long insn_referenced = abuf->written;
5919 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5923 unsigned long long insn_referenced = abuf->written;
5924 INT out_loadreg = -1;
5925 out_loadreg = FLD (out_rn);
5926 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5933 sh3e_sh3e_model::model_movw1_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5935 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5936 const sh3e_scache* abuf = sem;
5937 const sh3e_idesc* idesc = abuf->idesc;
5941 in_usereg = FLD (in_rm);
5942 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5946 in_usereg = FLD (in_rn);
5947 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5950 cycles += model_u_exec_before (current_cpu, idesc, 2);
5953 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5960 sh3e_sh3e_model::model_movw1_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
5962 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5963 const sh3e_scache* abuf = sem;
5964 const sh3e_idesc* idesc = abuf->idesc;
5968 unsigned long long insn_referenced = abuf->written;
5970 in_usereg = FLD (in_rm);
5971 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5975 unsigned long long insn_referenced = abuf->written;
5977 in_usereg = FLD (in_rn);
5978 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5982 unsigned long long insn_referenced = abuf->written;
5983 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5987 unsigned long long insn_referenced = abuf->written;
5988 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5995 sh3e_sh3e_model::model_movw2_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
5997 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5998 const sh3e_scache* abuf = sem;
5999 const sh3e_idesc* idesc = abuf->idesc;
6003 in_usereg = FLD (in_rm);
6004 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6008 in_usereg = FLD (in_rn);
6009 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6012 cycles += model_u_exec_before (current_cpu, idesc, 2);
6015 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6022 sh3e_sh3e_model::model_movw2_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6024 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6025 const sh3e_scache* abuf = sem;
6026 const sh3e_idesc* idesc = abuf->idesc;
6030 unsigned long long insn_referenced = abuf->written;
6032 in_usereg = FLD (in_rm);
6033 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6037 unsigned long long insn_referenced = abuf->written;
6039 in_usereg = FLD (in_rn);
6040 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6044 unsigned long long insn_referenced = abuf->written;
6045 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6049 unsigned long long insn_referenced = abuf->written;
6050 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6057 sh3e_sh3e_model::model_movw3_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6059 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
6060 const sh3e_scache* abuf = sem;
6061 const sh3e_idesc* idesc = abuf->idesc;
6065 in_usereg = FLD (in_rm);
6066 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6070 in_usereg = FLD (in_rn);
6071 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6075 in_usereg = FLD (in_r0);
6076 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
6079 cycles += model_u_exec_before (current_cpu, idesc, 3);
6082 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
6089 sh3e_sh3e_model::model_movw3_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6091 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
6092 const sh3e_scache* abuf = sem;
6093 const sh3e_idesc* idesc = abuf->idesc;
6097 unsigned long long insn_referenced = abuf->written;
6099 in_usereg = FLD (in_rm);
6100 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6104 unsigned long long insn_referenced = abuf->written;
6106 in_usereg = FLD (in_rn);
6107 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6111 unsigned long long insn_referenced = abuf->written;
6113 in_usereg = FLD (in_r0);
6114 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
6118 unsigned long long insn_referenced = abuf->written;
6119 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
6123 unsigned long long insn_referenced = abuf->written;
6124 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
6131 sh3e_sh3e_model::model_movw4_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6133 #define FLD(f) abuf->fields.sfmt_movw4_compact.f
6134 const sh3e_scache* abuf = sem;
6135 const sh3e_idesc* idesc = abuf->idesc;
6139 in_usereg = FLD (in_r0);
6140 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6143 cycles += model_u_exec_before (current_cpu, idesc, 1);
6146 cycles += model_u_sx_before (current_cpu, idesc, 2);
6149 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6156 sh3e_sh3e_model::model_movw4_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6158 #define FLD(f) abuf->fields.sfmt_movw4_compact.f
6159 const sh3e_scache* abuf = sem;
6160 const sh3e_idesc* idesc = abuf->idesc;
6164 unsigned long long insn_referenced = abuf->written;
6166 in_usereg = FLD (in_r0);
6167 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6171 unsigned long long insn_referenced = abuf->written;
6172 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6176 unsigned long long insn_referenced = abuf->written;
6177 cycles += model_u_sx_after (current_cpu, idesc, 2, referenced);
6181 unsigned long long insn_referenced = abuf->written;
6182 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6189 sh3e_sh3e_model::model_movw5_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6191 #define FLD(f) abuf->fields.sfmt_movw5_compact.f
6192 const sh3e_scache* abuf = sem;
6193 const sh3e_idesc* idesc = abuf->idesc;
6197 in_usereg = FLD (in_rm);
6198 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6202 in_usereg = FLD (in_r0);
6203 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6206 cycles += model_u_exec_before (current_cpu, idesc, 2);
6209 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6216 sh3e_sh3e_model::model_movw5_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6218 #define FLD(f) abuf->fields.sfmt_movw5_compact.f
6219 const sh3e_scache* abuf = sem;
6220 const sh3e_idesc* idesc = abuf->idesc;
6224 unsigned long long insn_referenced = abuf->written;
6226 in_usereg = FLD (in_rm);
6227 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6231 unsigned long long insn_referenced = abuf->written;
6233 in_usereg = FLD (in_r0);
6234 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6238 unsigned long long insn_referenced = abuf->written;
6239 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6243 unsigned long long insn_referenced = abuf->written;
6244 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6251 sh3e_sh3e_model::model_movw6_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6253 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6254 const sh3e_scache* abuf = sem;
6255 const sh3e_idesc* idesc = abuf->idesc;
6259 in_usereg = FLD (in_rm);
6260 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6263 cycles += model_u_exec_before (current_cpu, idesc, 1);
6266 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6269 INT out_loadreg = -1;
6270 out_loadreg = FLD (out_rn);
6271 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6278 sh3e_sh3e_model::model_movw6_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6280 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6281 const sh3e_scache* abuf = sem;
6282 const sh3e_idesc* idesc = abuf->idesc;
6286 unsigned long long insn_referenced = abuf->written;
6288 in_usereg = FLD (in_rm);
6289 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6293 unsigned long long insn_referenced = abuf->written;
6294 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6298 unsigned long long insn_referenced = abuf->written;
6299 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6303 unsigned long long insn_referenced = abuf->written;
6304 INT out_loadreg = -1;
6305 out_loadreg = FLD (out_rn);
6306 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6313 sh3e_sh3e_model::model_movw7_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6315 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6316 const sh3e_scache* abuf = sem;
6317 const sh3e_idesc* idesc = abuf->idesc;
6321 in_usereg = FLD (in_rm);
6322 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6325 cycles += model_u_exec_before (current_cpu, idesc, 1);
6328 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6331 INT out_loadreg = -1;
6332 out_loadreg = FLD (out_rn);
6333 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6340 sh3e_sh3e_model::model_movw7_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6342 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6343 const sh3e_scache* abuf = sem;
6344 const sh3e_idesc* idesc = abuf->idesc;
6348 unsigned long long insn_referenced = abuf->written;
6350 in_usereg = FLD (in_rm);
6351 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6355 unsigned long long insn_referenced = abuf->written;
6356 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6360 unsigned long long insn_referenced = abuf->written;
6361 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6365 unsigned long long insn_referenced = abuf->written;
6366 INT out_loadreg = -1;
6367 out_loadreg = FLD (out_rn);
6368 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6375 sh3e_sh3e_model::model_movw8_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6377 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
6378 const sh3e_scache* abuf = sem;
6379 const sh3e_idesc* idesc = abuf->idesc;
6383 in_usereg = FLD (in_rm);
6384 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6388 in_usereg = FLD (in_r0);
6389 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6392 cycles += model_u_exec_before (current_cpu, idesc, 2);
6395 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6398 INT out_loadreg = -1;
6399 out_loadreg = FLD (out_rn);
6400 cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
6407 sh3e_sh3e_model::model_movw8_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6409 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
6410 const sh3e_scache* abuf = sem;
6411 const sh3e_idesc* idesc = abuf->idesc;
6415 unsigned long long insn_referenced = abuf->written;
6417 in_usereg = FLD (in_rm);
6418 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6422 unsigned long long insn_referenced = abuf->written;
6424 in_usereg = FLD (in_r0);
6425 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6429 unsigned long long insn_referenced = abuf->written;
6430 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6434 unsigned long long insn_referenced = abuf->written;
6435 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6439 unsigned long long insn_referenced = abuf->written;
6440 INT out_loadreg = -1;
6441 out_loadreg = FLD (out_rn);
6442 cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
6449 sh3e_sh3e_model::model_movw9_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6451 #define FLD(f) abuf->fields.sfmt_movw9_compact.f
6452 const sh3e_scache* abuf = sem;
6453 const sh3e_idesc* idesc = abuf->idesc;
6456 cycles += model_u_exec_before (current_cpu, idesc, 0);
6459 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
6462 INT out_loadreg = -1;
6463 out_loadreg = FLD (out_r0);
6464 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
6471 sh3e_sh3e_model::model_movw9_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6473 #define FLD(f) abuf->fields.sfmt_movw9_compact.f
6474 const sh3e_scache* abuf = sem;
6475 const sh3e_idesc* idesc = abuf->idesc;
6479 unsigned long long insn_referenced = abuf->written;
6480 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6484 unsigned long long insn_referenced = abuf->written;
6485 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
6489 unsigned long long insn_referenced = abuf->written;
6490 INT out_loadreg = -1;
6491 out_loadreg = FLD (out_r0);
6492 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
6499 sh3e_sh3e_model::model_movw10_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6501 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
6502 const sh3e_scache* abuf = sem;
6503 const sh3e_idesc* idesc = abuf->idesc;
6506 cycles += model_u_exec_before (current_cpu, idesc, 0);
6509 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
6512 INT out_loadreg = -1;
6513 out_loadreg = FLD (out_rn);
6514 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
6521 sh3e_sh3e_model::model_movw10_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6523 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
6524 const sh3e_scache* abuf = sem;
6525 const sh3e_idesc* idesc = abuf->idesc;
6529 unsigned long long insn_referenced = abuf->written;
6530 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6534 unsigned long long insn_referenced = abuf->written;
6535 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
6539 unsigned long long insn_referenced = abuf->written;
6540 INT out_loadreg = -1;
6541 out_loadreg = FLD (out_rn);
6542 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
6549 sh3e_sh3e_model::model_movw11_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6551 #define FLD(f) abuf->fields.sfmt_movw11_compact.f
6552 const sh3e_scache* abuf = sem;
6553 const sh3e_idesc* idesc = abuf->idesc;
6557 in_usereg = FLD (in_rm);
6558 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6561 cycles += model_u_exec_before (current_cpu, idesc, 1);
6564 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6567 INT out_loadreg = -1;
6568 out_loadreg = FLD (out_r0);
6569 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6576 sh3e_sh3e_model::model_movw11_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6578 #define FLD(f) abuf->fields.sfmt_movw11_compact.f
6579 const sh3e_scache* abuf = sem;
6580 const sh3e_idesc* idesc = abuf->idesc;
6584 unsigned long long insn_referenced = abuf->written;
6586 in_usereg = FLD (in_rm);
6587 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6591 unsigned long long insn_referenced = abuf->written;
6592 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6596 unsigned long long insn_referenced = abuf->written;
6597 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6601 unsigned long long insn_referenced = abuf->written;
6602 INT out_loadreg = -1;
6603 out_loadreg = FLD (out_r0);
6604 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6611 sh3e_sh3e_model::model_mova_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6613 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
6614 const sh3e_scache* abuf = sem;
6615 const sh3e_idesc* idesc = abuf->idesc;
6618 cycles += model_u_exec_before (current_cpu, idesc, 0);
6625 sh3e_sh3e_model::model_mova_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6627 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
6628 const sh3e_scache* abuf = sem;
6629 const sh3e_idesc* idesc = abuf->idesc;
6633 unsigned long long insn_referenced = abuf->written;
6634 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6641 sh3e_sh3e_model::model_movt_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6643 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
6644 const sh3e_scache* abuf = sem;
6645 const sh3e_idesc* idesc = abuf->idesc;
6648 cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
6651 cycles += model_u_exec_before (current_cpu, idesc, 1);
6658 sh3e_sh3e_model::model_movt_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6660 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
6661 const sh3e_scache* abuf = sem;
6662 const sh3e_idesc* idesc = abuf->idesc;
6666 unsigned long long insn_referenced = abuf->written;
6667 cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
6671 unsigned long long insn_referenced = abuf->written;
6672 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6679 sh3e_sh3e_model::model_mull_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6681 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6682 const sh3e_scache* abuf = sem;
6683 const sh3e_idesc* idesc = abuf->idesc;
6687 in_usereg = FLD (in_rn);
6688 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6692 in_usereg = FLD (in_rm);
6693 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6696 cycles += model_u_mull_before (current_cpu, idesc, 2);
6703 sh3e_sh3e_model::model_mull_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6705 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6706 const sh3e_scache* abuf = sem;
6707 const sh3e_idesc* idesc = abuf->idesc;
6711 unsigned long long insn_referenced = abuf->written;
6713 in_usereg = FLD (in_rn);
6714 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6718 unsigned long long insn_referenced = abuf->written;
6720 in_usereg = FLD (in_rm);
6721 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6725 unsigned long long insn_referenced = abuf->written;
6726 cycles += model_u_mull_after (current_cpu, idesc, 2, referenced);
6733 sh3e_sh3e_model::model_mulsw_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6735 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6736 const sh3e_scache* abuf = sem;
6737 const sh3e_idesc* idesc = abuf->idesc;
6741 in_usereg = FLD (in_rn);
6742 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6746 in_usereg = FLD (in_rm);
6747 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6750 cycles += model_u_mulsw_before (current_cpu, idesc, 2);
6753 cycles += model_u_multiply_before (current_cpu, idesc, 3);
6760 sh3e_sh3e_model::model_mulsw_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6762 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6763 const sh3e_scache* abuf = sem;
6764 const sh3e_idesc* idesc = abuf->idesc;
6768 unsigned long long insn_referenced = abuf->written;
6770 in_usereg = FLD (in_rn);
6771 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6775 unsigned long long insn_referenced = abuf->written;
6777 in_usereg = FLD (in_rm);
6778 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6782 unsigned long long insn_referenced = abuf->written;
6783 cycles += model_u_mulsw_after (current_cpu, idesc, 2, referenced);
6787 unsigned long long insn_referenced = abuf->written;
6788 cycles += model_u_multiply_after (current_cpu, idesc, 3, referenced);
6795 sh3e_sh3e_model::model_muluw_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6797 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6798 const sh3e_scache* abuf = sem;
6799 const sh3e_idesc* idesc = abuf->idesc;
6803 in_usereg = FLD (in_rn);
6804 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6808 in_usereg = FLD (in_rm);
6809 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6812 cycles += model_u_mulsw_before (current_cpu, idesc, 2);
6815 cycles += model_u_multiply_before (current_cpu, idesc, 3);
6822 sh3e_sh3e_model::model_muluw_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6824 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6825 const sh3e_scache* abuf = sem;
6826 const sh3e_idesc* idesc = abuf->idesc;
6830 unsigned long long insn_referenced = abuf->written;
6832 in_usereg = FLD (in_rn);
6833 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6837 unsigned long long insn_referenced = abuf->written;
6839 in_usereg = FLD (in_rm);
6840 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6844 unsigned long long insn_referenced = abuf->written;
6845 cycles += model_u_mulsw_after (current_cpu, idesc, 2, referenced);
6849 unsigned long long insn_referenced = abuf->written;
6850 cycles += model_u_multiply_after (current_cpu, idesc, 3, referenced);
6857 sh3e_sh3e_model::model_neg_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6859 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6860 const sh3e_scache* abuf = sem;
6861 const sh3e_idesc* idesc = abuf->idesc;
6865 in_usereg = FLD (in_rm);
6866 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6869 cycles += model_u_exec_before (current_cpu, idesc, 1);
6876 sh3e_sh3e_model::model_neg_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6878 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6879 const sh3e_scache* abuf = sem;
6880 const sh3e_idesc* idesc = abuf->idesc;
6884 unsigned long long insn_referenced = abuf->written;
6886 in_usereg = FLD (in_rm);
6887 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6891 unsigned long long insn_referenced = abuf->written;
6892 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6899 sh3e_sh3e_model::model_negc_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6901 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6902 const sh3e_scache* abuf = sem;
6903 const sh3e_idesc* idesc = abuf->idesc;
6907 in_usereg = FLD (in_rm);
6908 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6911 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
6914 cycles += model_u_exec_before (current_cpu, idesc, 2);
6917 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
6924 sh3e_sh3e_model::model_negc_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6926 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6927 const sh3e_scache* abuf = sem;
6928 const sh3e_idesc* idesc = abuf->idesc;
6932 unsigned long long insn_referenced = abuf->written;
6934 in_usereg = FLD (in_rm);
6935 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6939 unsigned long long insn_referenced = abuf->written;
6940 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
6944 unsigned long long insn_referenced = abuf->written;
6945 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6949 unsigned long long insn_referenced = abuf->written;
6950 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
6957 sh3e_sh3e_model::model_nop_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6959 #define FLD(f) abuf->fields.fmt_empty.f
6960 const sh3e_scache* abuf = sem;
6961 const sh3e_idesc* idesc = abuf->idesc;
6964 cycles += model_u_exec_before (current_cpu, idesc, 0);
6971 sh3e_sh3e_model::model_nop_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
6973 #define FLD(f) abuf->fields.fmt_empty.f
6974 const sh3e_scache* abuf = sem;
6975 const sh3e_idesc* idesc = abuf->idesc;
6979 unsigned long long insn_referenced = abuf->written;
6980 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6987 sh3e_sh3e_model::model_not_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
6989 #define FLD(f) abuf->fields.sfmt_and_compact.f
6990 const sh3e_scache* abuf = sem;
6991 const sh3e_idesc* idesc = abuf->idesc;
6995 in_usereg = FLD (in_rm64);
6996 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6999 cycles += model_u_exec_before (current_cpu, idesc, 1);
7006 sh3e_sh3e_model::model_not_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7008 #define FLD(f) abuf->fields.sfmt_and_compact.f
7009 const sh3e_scache* abuf = sem;
7010 const sh3e_idesc* idesc = abuf->idesc;
7014 unsigned long long insn_referenced = abuf->written;
7016 in_usereg = FLD (in_rm64);
7017 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7021 unsigned long long insn_referenced = abuf->written;
7022 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7029 sh3e_sh3e_model::model_or_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7031 #define FLD(f) abuf->fields.sfmt_and_compact.f
7032 const sh3e_scache* abuf = sem;
7033 const sh3e_idesc* idesc = abuf->idesc;
7037 in_usereg = FLD (in_rm64);
7038 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7042 in_usereg = FLD (in_rn64);
7043 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
7046 cycles += model_u_exec_before (current_cpu, idesc, 2);
7053 sh3e_sh3e_model::model_or_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7055 #define FLD(f) abuf->fields.sfmt_and_compact.f
7056 const sh3e_scache* abuf = sem;
7057 const sh3e_idesc* idesc = abuf->idesc;
7061 unsigned long long insn_referenced = abuf->written;
7063 in_usereg = FLD (in_rm64);
7064 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7068 unsigned long long insn_referenced = abuf->written;
7070 in_usereg = FLD (in_rn64);
7071 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
7075 unsigned long long insn_referenced = abuf->written;
7076 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7083 sh3e_sh3e_model::model_ori_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7085 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7086 const sh3e_scache* abuf = sem;
7087 const sh3e_idesc* idesc = abuf->idesc;
7091 in_usereg = FLD (in_r0);
7092 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7095 cycles += model_u_exec_before (current_cpu, idesc, 1);
7102 sh3e_sh3e_model::model_ori_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7104 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7105 const sh3e_scache* abuf = sem;
7106 const sh3e_idesc* idesc = abuf->idesc;
7110 unsigned long long insn_referenced = abuf->written;
7112 in_usereg = FLD (in_r0);
7113 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7117 unsigned long long insn_referenced = abuf->written;
7118 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7125 sh3e_sh3e_model::model_orb_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7127 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7128 const sh3e_scache* abuf = sem;
7129 const sh3e_idesc* idesc = abuf->idesc;
7133 in_usereg = FLD (in_r0);
7134 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7137 cycles += model_u_logic_b_before (current_cpu, idesc, 1);
7140 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
7147 sh3e_sh3e_model::model_orb_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7149 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7150 const sh3e_scache* abuf = sem;
7151 const sh3e_idesc* idesc = abuf->idesc;
7155 unsigned long long insn_referenced = abuf->written;
7157 in_usereg = FLD (in_r0);
7158 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7162 unsigned long long insn_referenced = abuf->written;
7163 cycles += model_u_logic_b_after (current_cpu, idesc, 1, referenced);
7167 unsigned long long insn_referenced = abuf->written;
7168 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
7175 sh3e_sh3e_model::model_pref_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7177 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7178 const sh3e_scache* abuf = sem;
7179 const sh3e_idesc* idesc = abuf->idesc;
7183 in_usereg = FLD (in_rn);
7184 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7187 cycles += model_u_exec_before (current_cpu, idesc, 1);
7190 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
7197 sh3e_sh3e_model::model_pref_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7199 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7200 const sh3e_scache* abuf = sem;
7201 const sh3e_idesc* idesc = abuf->idesc;
7205 unsigned long long insn_referenced = abuf->written;
7207 in_usereg = FLD (in_rn);
7208 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7212 unsigned long long insn_referenced = abuf->written;
7213 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7217 unsigned long long insn_referenced = abuf->written;
7218 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
7225 sh3e_sh3e_model::model_rotcl_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7227 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7228 const sh3e_scache* abuf = sem;
7229 const sh3e_idesc* idesc = abuf->idesc;
7233 in_usereg = FLD (in_rn);
7234 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7237 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7240 cycles += model_u_exec_before (current_cpu, idesc, 2);
7243 cycles += model_u_shift_before (current_cpu, idesc, 3);
7246 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7253 sh3e_sh3e_model::model_rotcl_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7255 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7256 const sh3e_scache* abuf = sem;
7257 const sh3e_idesc* idesc = abuf->idesc;
7261 unsigned long long insn_referenced = abuf->written;
7263 in_usereg = FLD (in_rn);
7264 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7268 unsigned long long insn_referenced = abuf->written;
7269 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7273 unsigned long long insn_referenced = abuf->written;
7274 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7278 unsigned long long insn_referenced = abuf->written;
7279 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7283 unsigned long long insn_referenced = abuf->written;
7284 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7291 sh3e_sh3e_model::model_rotcr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7293 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7294 const sh3e_scache* abuf = sem;
7295 const sh3e_idesc* idesc = abuf->idesc;
7299 in_usereg = FLD (in_rn);
7300 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7303 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7306 cycles += model_u_exec_before (current_cpu, idesc, 2);
7309 cycles += model_u_shift_before (current_cpu, idesc, 3);
7312 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7319 sh3e_sh3e_model::model_rotcr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7321 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7322 const sh3e_scache* abuf = sem;
7323 const sh3e_idesc* idesc = abuf->idesc;
7327 unsigned long long insn_referenced = abuf->written;
7329 in_usereg = FLD (in_rn);
7330 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7334 unsigned long long insn_referenced = abuf->written;
7335 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7339 unsigned long long insn_referenced = abuf->written;
7340 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7344 unsigned long long insn_referenced = abuf->written;
7345 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7349 unsigned long long insn_referenced = abuf->written;
7350 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7357 sh3e_sh3e_model::model_rotl_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7359 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7360 const sh3e_scache* abuf = sem;
7361 const sh3e_idesc* idesc = abuf->idesc;
7365 in_usereg = FLD (in_rn);
7366 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7369 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7372 cycles += model_u_exec_before (current_cpu, idesc, 2);
7375 cycles += model_u_shift_before (current_cpu, idesc, 3);
7378 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7385 sh3e_sh3e_model::model_rotl_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7387 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7388 const sh3e_scache* abuf = sem;
7389 const sh3e_idesc* idesc = abuf->idesc;
7393 unsigned long long insn_referenced = abuf->written;
7395 in_usereg = FLD (in_rn);
7396 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7400 unsigned long long insn_referenced = abuf->written;
7401 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7405 unsigned long long insn_referenced = abuf->written;
7406 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7410 unsigned long long insn_referenced = abuf->written;
7411 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7415 unsigned long long insn_referenced = abuf->written;
7416 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7423 sh3e_sh3e_model::model_rotr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7425 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7426 const sh3e_scache* abuf = sem;
7427 const sh3e_idesc* idesc = abuf->idesc;
7431 in_usereg = FLD (in_rn);
7432 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7435 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7438 cycles += model_u_exec_before (current_cpu, idesc, 2);
7441 cycles += model_u_shift_before (current_cpu, idesc, 3);
7444 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7451 sh3e_sh3e_model::model_rotr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7453 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7454 const sh3e_scache* abuf = sem;
7455 const sh3e_idesc* idesc = abuf->idesc;
7459 unsigned long long insn_referenced = abuf->written;
7461 in_usereg = FLD (in_rn);
7462 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7466 unsigned long long insn_referenced = abuf->written;
7467 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7471 unsigned long long insn_referenced = abuf->written;
7472 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7476 unsigned long long insn_referenced = abuf->written;
7477 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7481 unsigned long long insn_referenced = abuf->written;
7482 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7489 sh3e_sh3e_model::model_rts_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7491 #define FLD(f) abuf->fields.fmt_empty.f
7492 const sh3e_scache* abuf = sem;
7493 const sh3e_idesc* idesc = abuf->idesc;
7496 cycles += model_u_jmp_before (current_cpu, idesc, 0);
7503 sh3e_sh3e_model::model_rts_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7505 #define FLD(f) abuf->fields.fmt_empty.f
7506 const sh3e_scache* abuf = sem;
7507 const sh3e_idesc* idesc = abuf->idesc;
7511 unsigned long long insn_referenced = abuf->written;
7512 referenced |= 1 << 0;
7513 cycles += model_u_jmp_after (current_cpu, idesc, 0, referenced);
7520 sh3e_sh3e_model::model_sets_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7522 #define FLD(f) abuf->fields.fmt_empty.f
7523 const sh3e_scache* abuf = sem;
7524 const sh3e_idesc* idesc = abuf->idesc;
7527 cycles += model_u_exec_before (current_cpu, idesc, 0);
7530 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 1);
7537 sh3e_sh3e_model::model_sets_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7539 #define FLD(f) abuf->fields.fmt_empty.f
7540 const sh3e_scache* abuf = sem;
7541 const sh3e_idesc* idesc = abuf->idesc;
7545 unsigned long long insn_referenced = abuf->written;
7546 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
7550 unsigned long long insn_referenced = abuf->written;
7551 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 1, referenced);
7558 sh3e_sh3e_model::model_sett_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7560 #define FLD(f) abuf->fields.fmt_empty.f
7561 const sh3e_scache* abuf = sem;
7562 const sh3e_idesc* idesc = abuf->idesc;
7565 cycles += model_u_exec_before (current_cpu, idesc, 0);
7568 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7571 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 2);
7578 sh3e_sh3e_model::model_sett_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7580 #define FLD(f) abuf->fields.fmt_empty.f
7581 const sh3e_scache* abuf = sem;
7582 const sh3e_idesc* idesc = abuf->idesc;
7586 unsigned long long insn_referenced = abuf->written;
7587 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
7591 unsigned long long insn_referenced = abuf->written;
7592 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7596 unsigned long long insn_referenced = abuf->written;
7597 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 2, referenced);
7604 sh3e_sh3e_model::model_shad_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7606 #define FLD(f) abuf->fields.sfmt_macl_compact.f
7607 const sh3e_scache* abuf = sem;
7608 const sh3e_idesc* idesc = abuf->idesc;
7612 in_usereg = FLD (in_rn);
7613 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7617 in_usereg = FLD (in_rm);
7618 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
7621 cycles += model_u_exec_before (current_cpu, idesc, 2);
7624 cycles += model_u_shift_before (current_cpu, idesc, 3);
7631 sh3e_sh3e_model::model_shad_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7633 #define FLD(f) abuf->fields.sfmt_macl_compact.f
7634 const sh3e_scache* abuf = sem;
7635 const sh3e_idesc* idesc = abuf->idesc;
7639 unsigned long long insn_referenced = abuf->written;
7641 in_usereg = FLD (in_rn);
7642 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7646 unsigned long long insn_referenced = abuf->written;
7648 in_usereg = FLD (in_rm);
7649 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
7653 unsigned long long insn_referenced = abuf->written;
7654 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7658 unsigned long long insn_referenced = abuf->written;
7659 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7666 sh3e_sh3e_model::model_shal_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7668 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7669 const sh3e_scache* abuf = sem;
7670 const sh3e_idesc* idesc = abuf->idesc;
7674 in_usereg = FLD (in_rn);
7675 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7678 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7681 cycles += model_u_exec_before (current_cpu, idesc, 2);
7684 cycles += model_u_shift_before (current_cpu, idesc, 3);
7687 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7694 sh3e_sh3e_model::model_shal_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7696 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7697 const sh3e_scache* abuf = sem;
7698 const sh3e_idesc* idesc = abuf->idesc;
7702 unsigned long long insn_referenced = abuf->written;
7704 in_usereg = FLD (in_rn);
7705 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7709 unsigned long long insn_referenced = abuf->written;
7710 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7714 unsigned long long insn_referenced = abuf->written;
7715 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7719 unsigned long long insn_referenced = abuf->written;
7720 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7724 unsigned long long insn_referenced = abuf->written;
7725 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7732 sh3e_sh3e_model::model_shar_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7734 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7735 const sh3e_scache* abuf = sem;
7736 const sh3e_idesc* idesc = abuf->idesc;
7740 in_usereg = FLD (in_rn);
7741 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7744 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7747 cycles += model_u_exec_before (current_cpu, idesc, 2);
7750 cycles += model_u_shift_before (current_cpu, idesc, 3);
7753 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7760 sh3e_sh3e_model::model_shar_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7762 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7763 const sh3e_scache* abuf = sem;
7764 const sh3e_idesc* idesc = abuf->idesc;
7768 unsigned long long insn_referenced = abuf->written;
7770 in_usereg = FLD (in_rn);
7771 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7775 unsigned long long insn_referenced = abuf->written;
7776 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7780 unsigned long long insn_referenced = abuf->written;
7781 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7785 unsigned long long insn_referenced = abuf->written;
7786 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7790 unsigned long long insn_referenced = abuf->written;
7791 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7798 sh3e_sh3e_model::model_shld_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7800 #define FLD(f) abuf->fields.sfmt_macl_compact.f
7801 const sh3e_scache* abuf = sem;
7802 const sh3e_idesc* idesc = abuf->idesc;
7806 in_usereg = FLD (in_rn);
7807 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7810 cycles += model_u_exec_before (current_cpu, idesc, 1);
7813 cycles += model_u_shift_before (current_cpu, idesc, 2);
7820 sh3e_sh3e_model::model_shld_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7822 #define FLD(f) abuf->fields.sfmt_macl_compact.f
7823 const sh3e_scache* abuf = sem;
7824 const sh3e_idesc* idesc = abuf->idesc;
7828 unsigned long long insn_referenced = abuf->written;
7830 in_usereg = FLD (in_rn);
7831 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7835 unsigned long long insn_referenced = abuf->written;
7836 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7840 unsigned long long insn_referenced = abuf->written;
7841 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
7848 sh3e_sh3e_model::model_shll_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7850 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7851 const sh3e_scache* abuf = sem;
7852 const sh3e_idesc* idesc = abuf->idesc;
7856 in_usereg = FLD (in_rn);
7857 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7860 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7863 cycles += model_u_exec_before (current_cpu, idesc, 2);
7866 cycles += model_u_shift_before (current_cpu, idesc, 3);
7869 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7876 sh3e_sh3e_model::model_shll_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7878 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7879 const sh3e_scache* abuf = sem;
7880 const sh3e_idesc* idesc = abuf->idesc;
7884 unsigned long long insn_referenced = abuf->written;
7886 in_usereg = FLD (in_rn);
7887 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7891 unsigned long long insn_referenced = abuf->written;
7892 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7896 unsigned long long insn_referenced = abuf->written;
7897 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7901 unsigned long long insn_referenced = abuf->written;
7902 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7906 unsigned long long insn_referenced = abuf->written;
7907 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7914 sh3e_sh3e_model::model_shll2_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7916 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7917 const sh3e_scache* abuf = sem;
7918 const sh3e_idesc* idesc = abuf->idesc;
7922 in_usereg = FLD (in_rn);
7923 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7926 cycles += model_u_exec_before (current_cpu, idesc, 1);
7929 cycles += model_u_shift_before (current_cpu, idesc, 2);
7936 sh3e_sh3e_model::model_shll2_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7938 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7939 const sh3e_scache* abuf = sem;
7940 const sh3e_idesc* idesc = abuf->idesc;
7944 unsigned long long insn_referenced = abuf->written;
7946 in_usereg = FLD (in_rn);
7947 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7951 unsigned long long insn_referenced = abuf->written;
7952 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7956 unsigned long long insn_referenced = abuf->written;
7957 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
7964 sh3e_sh3e_model::model_shll8_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
7966 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7967 const sh3e_scache* abuf = sem;
7968 const sh3e_idesc* idesc = abuf->idesc;
7972 in_usereg = FLD (in_rn);
7973 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7976 cycles += model_u_exec_before (current_cpu, idesc, 1);
7979 cycles += model_u_shift_before (current_cpu, idesc, 2);
7986 sh3e_sh3e_model::model_shll8_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
7988 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7989 const sh3e_scache* abuf = sem;
7990 const sh3e_idesc* idesc = abuf->idesc;
7994 unsigned long long insn_referenced = abuf->written;
7996 in_usereg = FLD (in_rn);
7997 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8001 unsigned long long insn_referenced = abuf->written;
8002 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8006 unsigned long long insn_referenced = abuf->written;
8007 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8014 sh3e_sh3e_model::model_shll16_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8016 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8017 const sh3e_scache* abuf = sem;
8018 const sh3e_idesc* idesc = abuf->idesc;
8022 in_usereg = FLD (in_rn);
8023 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8026 cycles += model_u_exec_before (current_cpu, idesc, 1);
8029 cycles += model_u_shift_before (current_cpu, idesc, 2);
8036 sh3e_sh3e_model::model_shll16_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8038 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8039 const sh3e_scache* abuf = sem;
8040 const sh3e_idesc* idesc = abuf->idesc;
8044 unsigned long long insn_referenced = abuf->written;
8046 in_usereg = FLD (in_rn);
8047 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8051 unsigned long long insn_referenced = abuf->written;
8052 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8056 unsigned long long insn_referenced = abuf->written;
8057 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8064 sh3e_sh3e_model::model_shlr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8066 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8067 const sh3e_scache* abuf = sem;
8068 const sh3e_idesc* idesc = abuf->idesc;
8072 in_usereg = FLD (in_rn);
8073 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8076 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
8079 cycles += model_u_exec_before (current_cpu, idesc, 2);
8082 cycles += model_u_shift_before (current_cpu, idesc, 3);
8085 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
8092 sh3e_sh3e_model::model_shlr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8094 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8095 const sh3e_scache* abuf = sem;
8096 const sh3e_idesc* idesc = abuf->idesc;
8100 unsigned long long insn_referenced = abuf->written;
8102 in_usereg = FLD (in_rn);
8103 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8107 unsigned long long insn_referenced = abuf->written;
8108 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
8112 unsigned long long insn_referenced = abuf->written;
8113 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8117 unsigned long long insn_referenced = abuf->written;
8118 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
8122 unsigned long long insn_referenced = abuf->written;
8123 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
8130 sh3e_sh3e_model::model_shlr2_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8132 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8133 const sh3e_scache* abuf = sem;
8134 const sh3e_idesc* idesc = abuf->idesc;
8138 in_usereg = FLD (in_rn);
8139 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8142 cycles += model_u_exec_before (current_cpu, idesc, 1);
8145 cycles += model_u_shift_before (current_cpu, idesc, 2);
8152 sh3e_sh3e_model::model_shlr2_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8154 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8155 const sh3e_scache* abuf = sem;
8156 const sh3e_idesc* idesc = abuf->idesc;
8160 unsigned long long insn_referenced = abuf->written;
8162 in_usereg = FLD (in_rn);
8163 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8167 unsigned long long insn_referenced = abuf->written;
8168 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8172 unsigned long long insn_referenced = abuf->written;
8173 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8180 sh3e_sh3e_model::model_shlr8_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8182 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8183 const sh3e_scache* abuf = sem;
8184 const sh3e_idesc* idesc = abuf->idesc;
8188 in_usereg = FLD (in_rn);
8189 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8192 cycles += model_u_exec_before (current_cpu, idesc, 1);
8195 cycles += model_u_shift_before (current_cpu, idesc, 2);
8202 sh3e_sh3e_model::model_shlr8_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8204 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8205 const sh3e_scache* abuf = sem;
8206 const sh3e_idesc* idesc = abuf->idesc;
8210 unsigned long long insn_referenced = abuf->written;
8212 in_usereg = FLD (in_rn);
8213 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8217 unsigned long long insn_referenced = abuf->written;
8218 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8222 unsigned long long insn_referenced = abuf->written;
8223 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8230 sh3e_sh3e_model::model_shlr16_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8232 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8233 const sh3e_scache* abuf = sem;
8234 const sh3e_idesc* idesc = abuf->idesc;
8238 in_usereg = FLD (in_rn);
8239 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8242 cycles += model_u_exec_before (current_cpu, idesc, 1);
8245 cycles += model_u_shift_before (current_cpu, idesc, 2);
8252 sh3e_sh3e_model::model_shlr16_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8254 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8255 const sh3e_scache* abuf = sem;
8256 const sh3e_idesc* idesc = abuf->idesc;
8260 unsigned long long insn_referenced = abuf->written;
8262 in_usereg = FLD (in_rn);
8263 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8267 unsigned long long insn_referenced = abuf->written;
8268 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8272 unsigned long long insn_referenced = abuf->written;
8273 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8280 sh3e_sh3e_model::model_stc_gbr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8282 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8283 const sh3e_scache* abuf = sem;
8284 const sh3e_idesc* idesc = abuf->idesc;
8287 cycles += model_u_exec_before (current_cpu, idesc, 0);
8294 sh3e_sh3e_model::model_stc_gbr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8296 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8297 const sh3e_scache* abuf = sem;
8298 const sh3e_idesc* idesc = abuf->idesc;
8302 unsigned long long insn_referenced = abuf->written;
8303 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
8310 sh3e_sh3e_model::model_stc_vbr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8312 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8313 const sh3e_scache* abuf = sem;
8314 const sh3e_idesc* idesc = abuf->idesc;
8317 cycles += model_u_stc_vbr_before (current_cpu, idesc, 0);
8324 sh3e_sh3e_model::model_stc_vbr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8326 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8327 const sh3e_scache* abuf = sem;
8328 const sh3e_idesc* idesc = abuf->idesc;
8332 unsigned long long insn_referenced = abuf->written;
8333 cycles += model_u_stc_vbr_after (current_cpu, idesc, 0, referenced);
8340 sh3e_sh3e_model::model_stcl_gbr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8342 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8343 const sh3e_scache* abuf = sem;
8344 const sh3e_idesc* idesc = abuf->idesc;
8348 in_usereg = FLD (in_rn);
8349 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8352 cycles += model_u_ldcl_before (current_cpu, idesc, 1);
8355 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
8362 sh3e_sh3e_model::model_stcl_gbr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8364 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8365 const sh3e_scache* abuf = sem;
8366 const sh3e_idesc* idesc = abuf->idesc;
8370 unsigned long long insn_referenced = abuf->written;
8372 in_usereg = FLD (in_rn);
8373 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8377 unsigned long long insn_referenced = abuf->written;
8378 cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
8382 unsigned long long insn_referenced = abuf->written;
8383 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
8390 sh3e_sh3e_model::model_stcl_vbr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8392 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8393 const sh3e_scache* abuf = sem;
8394 const sh3e_idesc* idesc = abuf->idesc;
8398 in_usereg = FLD (in_rn);
8399 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8402 cycles += model_u_ldcl_before (current_cpu, idesc, 1);
8405 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
8412 sh3e_sh3e_model::model_stcl_vbr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8414 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8415 const sh3e_scache* abuf = sem;
8416 const sh3e_idesc* idesc = abuf->idesc;
8420 unsigned long long insn_referenced = abuf->written;
8422 in_usereg = FLD (in_rn);
8423 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8427 unsigned long long insn_referenced = abuf->written;
8428 cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
8432 unsigned long long insn_referenced = abuf->written;
8433 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
8440 sh3e_sh3e_model::model_sts_fpscr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8442 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8443 const sh3e_scache* abuf = sem;
8444 const sh3e_idesc* idesc = abuf->idesc;
8447 cycles += model_u_use_fpscr_before (current_cpu, idesc, 0);
8450 cycles += model_u_exec_before (current_cpu, idesc, 1);
8453 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
8456 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
8459 INT out_loadreg = -1;
8460 out_loadreg = FLD (out_rn);
8461 cycles += model_u_fpu_load_gr_before (current_cpu, idesc, 4, out_loadreg);
8468 sh3e_sh3e_model::model_sts_fpscr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8470 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8471 const sh3e_scache* abuf = sem;
8472 const sh3e_idesc* idesc = abuf->idesc;
8476 unsigned long long insn_referenced = abuf->written;
8477 cycles += model_u_use_fpscr_after (current_cpu, idesc, 0, referenced);
8481 unsigned long long insn_referenced = abuf->written;
8482 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8486 unsigned long long insn_referenced = abuf->written;
8487 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
8491 unsigned long long insn_referenced = abuf->written;
8492 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
8496 unsigned long long insn_referenced = abuf->written;
8497 INT out_loadreg = -1;
8498 out_loadreg = FLD (out_rn);
8499 cycles += model_u_fpu_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
8506 sh3e_sh3e_model::model_stsl_fpscr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8508 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8509 const sh3e_scache* abuf = sem;
8510 const sh3e_idesc* idesc = abuf->idesc;
8514 in_usereg = FLD (in_rn);
8515 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8518 cycles += model_u_use_fpscr_before (current_cpu, idesc, 1);
8521 cycles += model_u_exec_before (current_cpu, idesc, 2);
8524 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
8527 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
8534 sh3e_sh3e_model::model_stsl_fpscr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8536 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8537 const sh3e_scache* abuf = sem;
8538 const sh3e_idesc* idesc = abuf->idesc;
8542 unsigned long long insn_referenced = abuf->written;
8544 in_usereg = FLD (in_rn);
8545 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8549 unsigned long long insn_referenced = abuf->written;
8550 cycles += model_u_use_fpscr_after (current_cpu, idesc, 1, referenced);
8554 unsigned long long insn_referenced = abuf->written;
8555 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8559 unsigned long long insn_referenced = abuf->written;
8560 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
8564 unsigned long long insn_referenced = abuf->written;
8565 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
8572 sh3e_sh3e_model::model_sts_fpul_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8574 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8575 const sh3e_scache* abuf = sem;
8576 const sh3e_idesc* idesc = abuf->idesc;
8579 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
8582 cycles += model_u_exec_before (current_cpu, idesc, 1);
8585 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
8588 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
8591 INT out_loadreg = -1;
8592 out_loadreg = FLD (out_rn);
8593 cycles += model_u_fpu_load_gr_before (current_cpu, idesc, 4, out_loadreg);
8600 sh3e_sh3e_model::model_sts_fpul_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8602 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8603 const sh3e_scache* abuf = sem;
8604 const sh3e_idesc* idesc = abuf->idesc;
8608 unsigned long long insn_referenced = abuf->written;
8609 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
8613 unsigned long long insn_referenced = abuf->written;
8614 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8618 unsigned long long insn_referenced = abuf->written;
8619 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
8623 unsigned long long insn_referenced = abuf->written;
8624 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
8628 unsigned long long insn_referenced = abuf->written;
8629 INT out_loadreg = -1;
8630 out_loadreg = FLD (out_rn);
8631 cycles += model_u_fpu_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
8638 sh3e_sh3e_model::model_stsl_fpul_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8640 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8641 const sh3e_scache* abuf = sem;
8642 const sh3e_idesc* idesc = abuf->idesc;
8645 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
8649 in_usereg = FLD (in_rn);
8650 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
8653 cycles += model_u_exec_before (current_cpu, idesc, 2);
8656 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
8659 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
8666 sh3e_sh3e_model::model_stsl_fpul_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8668 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8669 const sh3e_scache* abuf = sem;
8670 const sh3e_idesc* idesc = abuf->idesc;
8674 unsigned long long insn_referenced = abuf->written;
8675 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
8679 unsigned long long insn_referenced = abuf->written;
8681 in_usereg = FLD (in_rn);
8682 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
8686 unsigned long long insn_referenced = abuf->written;
8687 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8691 unsigned long long insn_referenced = abuf->written;
8692 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
8696 unsigned long long insn_referenced = abuf->written;
8697 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
8704 sh3e_sh3e_model::model_sts_mach_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8706 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8707 const sh3e_scache* abuf = sem;
8708 const sh3e_idesc* idesc = abuf->idesc;
8711 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 0);
8714 cycles += model_u_write_back_before (current_cpu, idesc, 1);
8717 cycles += model_u_exec_before (current_cpu, idesc, 2);
8720 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
8727 sh3e_sh3e_model::model_sts_mach_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8729 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8730 const sh3e_scache* abuf = sem;
8731 const sh3e_idesc* idesc = abuf->idesc;
8735 unsigned long long insn_referenced = abuf->written;
8736 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 0, referenced);
8740 unsigned long long insn_referenced = abuf->written;
8741 cycles += model_u_write_back_after (current_cpu, idesc, 1, referenced);
8745 unsigned long long insn_referenced = abuf->written;
8746 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8750 unsigned long long insn_referenced = abuf->written;
8751 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
8758 sh3e_sh3e_model::model_stsl_mach_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8760 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8761 const sh3e_scache* abuf = sem;
8762 const sh3e_idesc* idesc = abuf->idesc;
8766 in_usereg = FLD (in_rn);
8767 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8770 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
8773 cycles += model_u_write_back_before (current_cpu, idesc, 2);
8776 cycles += model_u_exec_before (current_cpu, idesc, 3);
8779 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
8786 sh3e_sh3e_model::model_stsl_mach_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8788 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8789 const sh3e_scache* abuf = sem;
8790 const sh3e_idesc* idesc = abuf->idesc;
8794 unsigned long long insn_referenced = abuf->written;
8796 in_usereg = FLD (in_rn);
8797 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8801 unsigned long long insn_referenced = abuf->written;
8802 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
8806 unsigned long long insn_referenced = abuf->written;
8807 cycles += model_u_write_back_after (current_cpu, idesc, 2, referenced);
8811 unsigned long long insn_referenced = abuf->written;
8812 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
8816 unsigned long long insn_referenced = abuf->written;
8817 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
8824 sh3e_sh3e_model::model_sts_macl_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8826 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8827 const sh3e_scache* abuf = sem;
8828 const sh3e_idesc* idesc = abuf->idesc;
8831 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 0);
8834 cycles += model_u_write_back_before (current_cpu, idesc, 1);
8837 cycles += model_u_exec_before (current_cpu, idesc, 2);
8840 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
8847 sh3e_sh3e_model::model_sts_macl_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8849 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8850 const sh3e_scache* abuf = sem;
8851 const sh3e_idesc* idesc = abuf->idesc;
8855 unsigned long long insn_referenced = abuf->written;
8856 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 0, referenced);
8860 unsigned long long insn_referenced = abuf->written;
8861 cycles += model_u_write_back_after (current_cpu, idesc, 1, referenced);
8865 unsigned long long insn_referenced = abuf->written;
8866 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8870 unsigned long long insn_referenced = abuf->written;
8871 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
8878 sh3e_sh3e_model::model_stsl_macl_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8880 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8881 const sh3e_scache* abuf = sem;
8882 const sh3e_idesc* idesc = abuf->idesc;
8886 in_usereg = FLD (in_rn);
8887 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8890 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
8893 cycles += model_u_write_back_before (current_cpu, idesc, 2);
8896 cycles += model_u_exec_before (current_cpu, idesc, 3);
8899 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
8906 sh3e_sh3e_model::model_stsl_macl_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8908 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8909 const sh3e_scache* abuf = sem;
8910 const sh3e_idesc* idesc = abuf->idesc;
8914 unsigned long long insn_referenced = abuf->written;
8916 in_usereg = FLD (in_rn);
8917 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8921 unsigned long long insn_referenced = abuf->written;
8922 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
8926 unsigned long long insn_referenced = abuf->written;
8927 cycles += model_u_write_back_after (current_cpu, idesc, 2, referenced);
8931 unsigned long long insn_referenced = abuf->written;
8932 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
8936 unsigned long long insn_referenced = abuf->written;
8937 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
8944 sh3e_sh3e_model::model_sts_pr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8946 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8947 const sh3e_scache* abuf = sem;
8948 const sh3e_idesc* idesc = abuf->idesc;
8951 cycles += model_u_use_pr_before (current_cpu, idesc, 0);
8954 cycles += model_u_sts_pr_before (current_cpu, idesc, 1);
8961 sh3e_sh3e_model::model_sts_pr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
8963 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8964 const sh3e_scache* abuf = sem;
8965 const sh3e_idesc* idesc = abuf->idesc;
8969 unsigned long long insn_referenced = abuf->written;
8970 cycles += model_u_use_pr_after (current_cpu, idesc, 0, referenced);
8974 unsigned long long insn_referenced = abuf->written;
8975 cycles += model_u_sts_pr_after (current_cpu, idesc, 1, referenced);
8982 sh3e_sh3e_model::model_stsl_pr_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
8984 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8985 const sh3e_scache* abuf = sem;
8986 const sh3e_idesc* idesc = abuf->idesc;
8990 in_usereg = FLD (in_rn);
8991 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8994 cycles += model_u_use_pr_before (current_cpu, idesc, 1);
8997 cycles += model_u_sts_pr_before (current_cpu, idesc, 2);
9000 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
9007 sh3e_sh3e_model::model_stsl_pr_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9009 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9010 const sh3e_scache* abuf = sem;
9011 const sh3e_idesc* idesc = abuf->idesc;
9015 unsigned long long insn_referenced = abuf->written;
9017 in_usereg = FLD (in_rn);
9018 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9022 unsigned long long insn_referenced = abuf->written;
9023 cycles += model_u_use_pr_after (current_cpu, idesc, 1, referenced);
9027 unsigned long long insn_referenced = abuf->written;
9028 cycles += model_u_sts_pr_after (current_cpu, idesc, 2, referenced);
9032 unsigned long long insn_referenced = abuf->written;
9033 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
9040 sh3e_sh3e_model::model_sub_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9042 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9043 const sh3e_scache* abuf = sem;
9044 const sh3e_idesc* idesc = abuf->idesc;
9048 in_usereg = FLD (in_rn);
9049 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9053 in_usereg = FLD (in_rm);
9054 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9057 cycles += model_u_exec_before (current_cpu, idesc, 2);
9064 sh3e_sh3e_model::model_sub_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9066 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9067 const sh3e_scache* abuf = sem;
9068 const sh3e_idesc* idesc = abuf->idesc;
9072 unsigned long long insn_referenced = abuf->written;
9074 in_usereg = FLD (in_rn);
9075 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9079 unsigned long long insn_referenced = abuf->written;
9081 in_usereg = FLD (in_rm);
9082 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9086 unsigned long long insn_referenced = abuf->written;
9087 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9094 sh3e_sh3e_model::model_subc_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9096 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9097 const sh3e_scache* abuf = sem;
9098 const sh3e_idesc* idesc = abuf->idesc;
9102 in_usereg = FLD (in_rn);
9103 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9107 in_usereg = FLD (in_rm);
9108 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9111 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
9114 cycles += model_u_exec_before (current_cpu, idesc, 3);
9121 sh3e_sh3e_model::model_subc_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9123 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9124 const sh3e_scache* abuf = sem;
9125 const sh3e_idesc* idesc = abuf->idesc;
9129 unsigned long long insn_referenced = abuf->written;
9131 in_usereg = FLD (in_rn);
9132 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9136 unsigned long long insn_referenced = abuf->written;
9138 in_usereg = FLD (in_rm);
9139 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9143 unsigned long long insn_referenced = abuf->written;
9144 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
9148 unsigned long long insn_referenced = abuf->written;
9149 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
9156 sh3e_sh3e_model::model_subv_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9158 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9159 const sh3e_scache* abuf = sem;
9160 const sh3e_idesc* idesc = abuf->idesc;
9164 in_usereg = FLD (in_rn);
9165 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9169 in_usereg = FLD (in_rm);
9170 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9173 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
9176 cycles += model_u_exec_before (current_cpu, idesc, 3);
9179 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
9186 sh3e_sh3e_model::model_subv_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9188 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9189 const sh3e_scache* abuf = sem;
9190 const sh3e_idesc* idesc = abuf->idesc;
9194 unsigned long long insn_referenced = abuf->written;
9196 in_usereg = FLD (in_rn);
9197 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9201 unsigned long long insn_referenced = abuf->written;
9203 in_usereg = FLD (in_rm);
9204 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9208 unsigned long long insn_referenced = abuf->written;
9209 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
9213 unsigned long long insn_referenced = abuf->written;
9214 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
9218 unsigned long long insn_referenced = abuf->written;
9219 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
9226 sh3e_sh3e_model::model_swapb_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9228 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
9229 const sh3e_scache* abuf = sem;
9230 const sh3e_idesc* idesc = abuf->idesc;
9234 in_usereg = FLD (in_rm);
9235 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9238 cycles += model_u_exec_before (current_cpu, idesc, 1);
9241 cycles += model_u_shift_before (current_cpu, idesc, 2);
9248 sh3e_sh3e_model::model_swapb_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9250 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
9251 const sh3e_scache* abuf = sem;
9252 const sh3e_idesc* idesc = abuf->idesc;
9256 unsigned long long insn_referenced = abuf->written;
9258 in_usereg = FLD (in_rm);
9259 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9263 unsigned long long insn_referenced = abuf->written;
9264 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
9268 unsigned long long insn_referenced = abuf->written;
9269 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
9276 sh3e_sh3e_model::model_swapw_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9278 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
9279 const sh3e_scache* abuf = sem;
9280 const sh3e_idesc* idesc = abuf->idesc;
9284 in_usereg = FLD (in_rm);
9285 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9288 cycles += model_u_exec_before (current_cpu, idesc, 1);
9291 cycles += model_u_shift_before (current_cpu, idesc, 2);
9298 sh3e_sh3e_model::model_swapw_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9300 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
9301 const sh3e_scache* abuf = sem;
9302 const sh3e_idesc* idesc = abuf->idesc;
9306 unsigned long long insn_referenced = abuf->written;
9308 in_usereg = FLD (in_rm);
9309 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9313 unsigned long long insn_referenced = abuf->written;
9314 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
9318 unsigned long long insn_referenced = abuf->written;
9319 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
9326 sh3e_sh3e_model::model_tasb_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9328 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9329 const sh3e_scache* abuf = sem;
9330 const sh3e_idesc* idesc = abuf->idesc;
9334 in_usereg = FLD (in_rn);
9335 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9338 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
9341 cycles += model_u_tas_before (current_cpu, idesc, 2);
9344 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
9347 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
9354 sh3e_sh3e_model::model_tasb_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9356 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9357 const sh3e_scache* abuf = sem;
9358 const sh3e_idesc* idesc = abuf->idesc;
9362 unsigned long long insn_referenced = abuf->written;
9364 in_usereg = FLD (in_rn);
9365 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9369 unsigned long long insn_referenced = abuf->written;
9370 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
9374 unsigned long long insn_referenced = abuf->written;
9375 cycles += model_u_tas_after (current_cpu, idesc, 2, referenced);
9379 unsigned long long insn_referenced = abuf->written;
9380 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
9384 unsigned long long insn_referenced = abuf->written;
9385 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
9392 sh3e_sh3e_model::model_trapa_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9394 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9395 const sh3e_scache* abuf = sem;
9396 const sh3e_idesc* idesc = abuf->idesc;
9399 cycles += model_u_trap_before (current_cpu, idesc, 0);
9406 sh3e_sh3e_model::model_trapa_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9408 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9409 const sh3e_scache* abuf = sem;
9410 const sh3e_idesc* idesc = abuf->idesc;
9414 unsigned long long insn_referenced = abuf->written;
9415 cycles += model_u_trap_after (current_cpu, idesc, 0, referenced);
9422 sh3e_sh3e_model::model_tst_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9424 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
9425 const sh3e_scache* abuf = sem;
9426 const sh3e_idesc* idesc = abuf->idesc;
9430 in_usereg = FLD (in_rn);
9431 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9435 in_usereg = FLD (in_rm);
9436 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9439 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
9442 cycles += model_u_exec_before (current_cpu, idesc, 3);
9445 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
9452 sh3e_sh3e_model::model_tst_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9454 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
9455 const sh3e_scache* abuf = sem;
9456 const sh3e_idesc* idesc = abuf->idesc;
9460 unsigned long long insn_referenced = abuf->written;
9462 in_usereg = FLD (in_rn);
9463 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9467 unsigned long long insn_referenced = abuf->written;
9469 in_usereg = FLD (in_rm);
9470 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9474 unsigned long long insn_referenced = abuf->written;
9475 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
9479 unsigned long long insn_referenced = abuf->written;
9480 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
9484 unsigned long long insn_referenced = abuf->written;
9485 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
9492 sh3e_sh3e_model::model_tsti_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9494 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9495 const sh3e_scache* abuf = sem;
9496 const sh3e_idesc* idesc = abuf->idesc;
9500 in_usereg = FLD (in_r0);
9501 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9504 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
9507 cycles += model_u_exec_before (current_cpu, idesc, 2);
9510 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
9517 sh3e_sh3e_model::model_tsti_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9519 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9520 const sh3e_scache* abuf = sem;
9521 const sh3e_idesc* idesc = abuf->idesc;
9525 unsigned long long insn_referenced = abuf->written;
9527 in_usereg = FLD (in_r0);
9528 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9532 unsigned long long insn_referenced = abuf->written;
9533 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
9537 unsigned long long insn_referenced = abuf->written;
9538 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9542 unsigned long long insn_referenced = abuf->written;
9543 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
9550 sh3e_sh3e_model::model_tstb_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9552 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9553 const sh3e_scache* abuf = sem;
9554 const sh3e_idesc* idesc = abuf->idesc;
9558 in_usereg = FLD (in_r0);
9559 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9562 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
9565 cycles += model_u_exec_before (current_cpu, idesc, 2);
9568 cycles += model_u_sx_before (current_cpu, idesc, 3);
9571 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
9574 cycles += model_u_memory_access_before (current_cpu, idesc, 5);
9581 sh3e_sh3e_model::model_tstb_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9583 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9584 const sh3e_scache* abuf = sem;
9585 const sh3e_idesc* idesc = abuf->idesc;
9589 unsigned long long insn_referenced = abuf->written;
9591 in_usereg = FLD (in_r0);
9592 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9596 unsigned long long insn_referenced = abuf->written;
9597 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
9601 unsigned long long insn_referenced = abuf->written;
9602 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9606 unsigned long long insn_referenced = abuf->written;
9607 cycles += model_u_sx_after (current_cpu, idesc, 3, referenced);
9611 unsigned long long insn_referenced = abuf->written;
9612 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
9616 unsigned long long insn_referenced = abuf->written;
9617 cycles += model_u_memory_access_after (current_cpu, idesc, 5, referenced);
9624 sh3e_sh3e_model::model_xor_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9626 #define FLD(f) abuf->fields.sfmt_and_compact.f
9627 const sh3e_scache* abuf = sem;
9628 const sh3e_idesc* idesc = abuf->idesc;
9632 in_usereg = FLD (in_rn64);
9633 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9637 in_usereg = FLD (in_rm64);
9638 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9641 cycles += model_u_exec_before (current_cpu, idesc, 2);
9648 sh3e_sh3e_model::model_xor_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9650 #define FLD(f) abuf->fields.sfmt_and_compact.f
9651 const sh3e_scache* abuf = sem;
9652 const sh3e_idesc* idesc = abuf->idesc;
9656 unsigned long long insn_referenced = abuf->written;
9658 in_usereg = FLD (in_rn64);
9659 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9663 unsigned long long insn_referenced = abuf->written;
9665 in_usereg = FLD (in_rm64);
9666 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9670 unsigned long long insn_referenced = abuf->written;
9671 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9678 sh3e_sh3e_model::model_xori_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9680 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9681 const sh3e_scache* abuf = sem;
9682 const sh3e_idesc* idesc = abuf->idesc;
9686 in_usereg = FLD (in_r0);
9687 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9690 cycles += model_u_exec_before (current_cpu, idesc, 1);
9697 sh3e_sh3e_model::model_xori_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9699 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9700 const sh3e_scache* abuf = sem;
9701 const sh3e_idesc* idesc = abuf->idesc;
9705 unsigned long long insn_referenced = abuf->written;
9707 in_usereg = FLD (in_r0);
9708 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9712 unsigned long long insn_referenced = abuf->written;
9713 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
9720 sh3e_sh3e_model::model_xorb_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9722 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9723 const sh3e_scache* abuf = sem;
9724 const sh3e_idesc* idesc = abuf->idesc;
9728 in_usereg = FLD (in_r0);
9729 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9732 cycles += model_u_logic_b_before (current_cpu, idesc, 1);
9735 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
9742 sh3e_sh3e_model::model_xorb_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9744 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9745 const sh3e_scache* abuf = sem;
9746 const sh3e_idesc* idesc = abuf->idesc;
9750 unsigned long long insn_referenced = abuf->written;
9752 in_usereg = FLD (in_r0);
9753 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9757 unsigned long long insn_referenced = abuf->written;
9758 cycles += model_u_logic_b_after (current_cpu, idesc, 1, referenced);
9762 unsigned long long insn_referenced = abuf->written;
9763 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
9770 sh3e_sh3e_model::model_xtrct_compact_before (sh3e_cpu *current_cpu, sh3e_scache *sem)
9772 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9773 const sh3e_scache* abuf = sem;
9774 const sh3e_idesc* idesc = abuf->idesc;
9778 in_usereg = FLD (in_rn);
9779 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9783 in_usereg = FLD (in_rm);
9784 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9787 cycles += model_u_exec_before (current_cpu, idesc, 2);
9790 cycles += model_u_shift_before (current_cpu, idesc, 3);
9797 sh3e_sh3e_model::model_xtrct_compact_after (sh3e_cpu *current_cpu, sh3e_scache *sem)
9799 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9800 const sh3e_scache* abuf = sem;
9801 const sh3e_idesc* idesc = abuf->idesc;
9805 unsigned long long insn_referenced = abuf->written;
9807 in_usereg = FLD (in_rn);
9808 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9812 unsigned long long insn_referenced = abuf->written;
9814 in_usereg = FLD (in_rm);
9815 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9819 unsigned long long insn_referenced = abuf->written;
9820 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9824 unsigned long long insn_referenced = abuf->written;
9825 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
9831 /* We assume UNIT_NONE == 0 because the tables don't always terminate
9834 /* Model timing data for `sh3e'. */
9836 const sh3e_sh3e_model::insn_timing sh3e_sh3e_model::timing[] = {
9837 { SH3E_INSN_X_INVALID, 0, 0, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9838 { SH3E_INSN_ADD_COMPACT, & sh3e_sh3e_model::model_add_compact_before, & sh3e_sh3e_model::model_add_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9839 { SH3E_INSN_ADDI_COMPACT, & sh3e_sh3e_model::model_addi_compact_before, & sh3e_sh3e_model::model_addi_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9840 { SH3E_INSN_ADDC_COMPACT, & sh3e_sh3e_model::model_addc_compact_before, & sh3e_sh3e_model::model_addc_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9841 { SH3E_INSN_ADDV_COMPACT, & sh3e_sh3e_model::model_addv_compact_before, & sh3e_sh3e_model::model_addv_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9842 { SH3E_INSN_AND_COMPACT, & sh3e_sh3e_model::model_and_compact_before, & sh3e_sh3e_model::model_and_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9843 { SH3E_INSN_ANDI_COMPACT, & sh3e_sh3e_model::model_andi_compact_before, & sh3e_sh3e_model::model_andi_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9844 { SH3E_INSN_ANDB_COMPACT, & sh3e_sh3e_model::model_andb_compact_before, & sh3e_sh3e_model::model_andb_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOGIC_B, 0, 3 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9845 { SH3E_INSN_BF_COMPACT, & sh3e_sh3e_model::model_bf_compact_before, & sh3e_sh3e_model::model_bf_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_BRANCH, 0, 3 } } },
9846 { SH3E_INSN_BFS_COMPACT, & sh3e_sh3e_model::model_bfs_compact_before, & sh3e_sh3e_model::model_bfs_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_BRANCH, 0, 2 } } },
9847 { SH3E_INSN_BRA_COMPACT, & sh3e_sh3e_model::model_bra_compact_before, & sh3e_sh3e_model::model_bra_compact_after, { { sh3e_sh3e_model::UNIT_U_BRANCH, 0, 2 } } },
9848 { SH3E_INSN_BRAF_COMPACT, & sh3e_sh3e_model::model_braf_compact_before, & sh3e_sh3e_model::model_braf_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_JMP, 0, 2 } } },
9849 { SH3E_INSN_BSR_COMPACT, & sh3e_sh3e_model::model_bsr_compact_before, & sh3e_sh3e_model::model_bsr_compact_after, { { sh3e_sh3e_model::UNIT_U_BRANCH, 0, 2 } } },
9850 { SH3E_INSN_BSRF_COMPACT, & sh3e_sh3e_model::model_bsrf_compact_before, & sh3e_sh3e_model::model_bsrf_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_JSR, 0, 2 } } },
9851 { SH3E_INSN_BT_COMPACT, & sh3e_sh3e_model::model_bt_compact_before, & sh3e_sh3e_model::model_bt_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_BRANCH, 0, 3 } } },
9852 { SH3E_INSN_BTS_COMPACT, & sh3e_sh3e_model::model_bts_compact_before, & sh3e_sh3e_model::model_bts_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_BRANCH, 0, 2 } } },
9853 { SH3E_INSN_CLRMAC_COMPACT, & sh3e_sh3e_model::model_clrmac_compact_before, & sh3e_sh3e_model::model_clrmac_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_MAC, 0, 0 } } },
9854 { SH3E_INSN_CLRS_COMPACT, & sh3e_sh3e_model::model_clrs_compact_before, & sh3e_sh3e_model::model_clrs_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9855 { SH3E_INSN_CLRT_COMPACT, & sh3e_sh3e_model::model_clrt_compact_before, & sh3e_sh3e_model::model_clrt_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9856 { SH3E_INSN_CMPEQ_COMPACT, & sh3e_sh3e_model::model_cmpeq_compact_before, & sh3e_sh3e_model::model_cmpeq_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9857 { SH3E_INSN_CMPEQI_COMPACT, & sh3e_sh3e_model::model_cmpeqi_compact_before, & sh3e_sh3e_model::model_cmpeqi_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9858 { SH3E_INSN_CMPGE_COMPACT, & sh3e_sh3e_model::model_cmpge_compact_before, & sh3e_sh3e_model::model_cmpge_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9859 { SH3E_INSN_CMPGT_COMPACT, & sh3e_sh3e_model::model_cmpgt_compact_before, & sh3e_sh3e_model::model_cmpgt_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9860 { SH3E_INSN_CMPHI_COMPACT, & sh3e_sh3e_model::model_cmphi_compact_before, & sh3e_sh3e_model::model_cmphi_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9861 { SH3E_INSN_CMPHS_COMPACT, & sh3e_sh3e_model::model_cmphs_compact_before, & sh3e_sh3e_model::model_cmphs_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9862 { SH3E_INSN_CMPPL_COMPACT, & sh3e_sh3e_model::model_cmppl_compact_before, & sh3e_sh3e_model::model_cmppl_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9863 { SH3E_INSN_CMPPZ_COMPACT, & sh3e_sh3e_model::model_cmppz_compact_before, & sh3e_sh3e_model::model_cmppz_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9864 { SH3E_INSN_CMPSTR_COMPACT, & sh3e_sh3e_model::model_cmpstr_compact_before, & sh3e_sh3e_model::model_cmpstr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9865 { SH3E_INSN_DIV0S_COMPACT, & sh3e_sh3e_model::model_div0s_compact_before, & sh3e_sh3e_model::model_div0s_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9866 { SH3E_INSN_DIV0U_COMPACT, & sh3e_sh3e_model::model_div0u_compact_before, & sh3e_sh3e_model::model_div0u_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9867 { SH3E_INSN_DIV1_COMPACT, & sh3e_sh3e_model::model_div1_compact_before, & sh3e_sh3e_model::model_div1_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9868 { SH3E_INSN_DMULSL_COMPACT, & sh3e_sh3e_model::model_dmulsl_compact_before, & sh3e_sh3e_model::model_dmulsl_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_DMUL, 1, 2 } } },
9869 { SH3E_INSN_DMULUL_COMPACT, & sh3e_sh3e_model::model_dmulul_compact_before, & sh3e_sh3e_model::model_dmulul_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_DMUL, 1, 2 } } },
9870 { SH3E_INSN_DT_COMPACT, & sh3e_sh3e_model::model_dt_compact_before, & sh3e_sh3e_model::model_dt_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9871 { SH3E_INSN_EXTSB_COMPACT, & sh3e_sh3e_model::model_extsb_compact_before, & sh3e_sh3e_model::model_extsb_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9872 { SH3E_INSN_EXTSW_COMPACT, & sh3e_sh3e_model::model_extsw_compact_before, & sh3e_sh3e_model::model_extsw_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9873 { SH3E_INSN_EXTUB_COMPACT, & sh3e_sh3e_model::model_extub_compact_before, & sh3e_sh3e_model::model_extub_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9874 { SH3E_INSN_EXTUW_COMPACT, & sh3e_sh3e_model::model_extuw_compact_before, & sh3e_sh3e_model::model_extuw_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9875 { SH3E_INSN_FABS_COMPACT, & sh3e_sh3e_model::model_fabs_compact_before, & sh3e_sh3e_model::model_fabs_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9876 { SH3E_INSN_FADD_COMPACT, & sh3e_sh3e_model::model_fadd_compact_before, & sh3e_sh3e_model::model_fadd_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FR, 0, 0 } } },
9877 { SH3E_INSN_FCMPEQ_COMPACT, & sh3e_sh3e_model::model_fcmpeq_compact_before, & sh3e_sh3e_model::model_fcmpeq_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FCMP, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU, 0, 0 } } },
9878 { SH3E_INSN_FCMPGT_COMPACT, & sh3e_sh3e_model::model_fcmpgt_compact_before, & sh3e_sh3e_model::model_fcmpgt_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FCMP, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU, 0, 0 } } },
9879 { SH3E_INSN_FDIV_COMPACT, & sh3e_sh3e_model::model_fdiv_compact_before, & sh3e_sh3e_model::model_fdiv_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FDIV, 0, 0 } } },
9880 { SH3E_INSN_FLDS_COMPACT, & sh3e_sh3e_model::model_flds_compact_before, & sh3e_sh3e_model::model_flds_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FLDS_FPUL, 0, 0 } } },
9881 { SH3E_INSN_FLDI0_COMPACT, & sh3e_sh3e_model::model_fldi0_compact_before, & sh3e_sh3e_model::model_fldi0_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9882 { SH3E_INSN_FLDI1_COMPACT, & sh3e_sh3e_model::model_fldi1_compact_before, & sh3e_sh3e_model::model_fldi1_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9883 { SH3E_INSN_FLOAT_COMPACT, & sh3e_sh3e_model::model_float_compact_before, & sh3e_sh3e_model::model_float_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FPUL, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FR, 0, 0 } } },
9884 { SH3E_INSN_FMAC_COMPACT, & sh3e_sh3e_model::model_fmac_compact_before, & sh3e_sh3e_model::model_fmac_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FR, 0, 0 } } },
9885 { SH3E_INSN_FMOV1_COMPACT, & sh3e_sh3e_model::model_fmov1_compact_before, & sh3e_sh3e_model::model_fmov1_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9886 { SH3E_INSN_FMOV2_COMPACT, & sh3e_sh3e_model::model_fmov2_compact_before, & sh3e_sh3e_model::model_fmov2_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_FR, 0, 0 } } },
9887 { SH3E_INSN_FMOV3_COMPACT, & sh3e_sh3e_model::model_fmov3_compact_before, & sh3e_sh3e_model::model_fmov3_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_FR, 0, 0 } } },
9888 { SH3E_INSN_FMOV4_COMPACT, & sh3e_sh3e_model::model_fmov4_compact_before, & sh3e_sh3e_model::model_fmov4_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_FR, 0, 0 } } },
9889 { SH3E_INSN_FMOV5_COMPACT, & sh3e_sh3e_model::model_fmov5_compact_before, & sh3e_sh3e_model::model_fmov5_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
9890 { SH3E_INSN_FMOV6_COMPACT, & sh3e_sh3e_model::model_fmov6_compact_before, & sh3e_sh3e_model::model_fmov6_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
9891 { SH3E_INSN_FMOV7_COMPACT, & sh3e_sh3e_model::model_fmov7_compact_before, & sh3e_sh3e_model::model_fmov7_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
9892 { SH3E_INSN_FMUL_COMPACT, & sh3e_sh3e_model::model_fmul_compact_before, & sh3e_sh3e_model::model_fmul_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FR, 0, 0 } } },
9893 { SH3E_INSN_FNEG_COMPACT, & sh3e_sh3e_model::model_fneg_compact_before, & sh3e_sh3e_model::model_fneg_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9894 { SH3E_INSN_FRCHG_COMPACT, & sh3e_sh3e_model::model_frchg_compact_before, & sh3e_sh3e_model::model_frchg_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9895 { SH3E_INSN_FSCHG_COMPACT, & sh3e_sh3e_model::model_fschg_compact_before, & sh3e_sh3e_model::model_fschg_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9896 { SH3E_INSN_FSQRT_COMPACT, & sh3e_sh3e_model::model_fsqrt_compact_before, & sh3e_sh3e_model::model_fsqrt_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FSQRT, 0, 0 } } },
9897 { SH3E_INSN_FSTS_COMPACT, & sh3e_sh3e_model::model_fsts_compact_before, & sh3e_sh3e_model::model_fsts_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FPUL, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9898 { SH3E_INSN_FSUB_COMPACT, & sh3e_sh3e_model::model_fsub_compact_before, & sh3e_sh3e_model::model_fsub_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FR, 0, 0 } } },
9899 { SH3E_INSN_FTRC_COMPACT, & sh3e_sh3e_model::model_ftrc_compact_before, & sh3e_sh3e_model::model_ftrc_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_FPUL, 0, 0 } } },
9900 { SH3E_INSN_JMP_COMPACT, & sh3e_sh3e_model::model_jmp_compact_before, & sh3e_sh3e_model::model_jmp_compact_after, { { sh3e_sh3e_model::UNIT_U_JMP, 0, 2 } } },
9901 { SH3E_INSN_JSR_COMPACT, & sh3e_sh3e_model::model_jsr_compact_before, & sh3e_sh3e_model::model_jsr_compact_after, { { sh3e_sh3e_model::UNIT_U_JSR, 0, 2 } } },
9902 { SH3E_INSN_LDC_GBR_COMPACT, & sh3e_sh3e_model::model_ldc_gbr_compact_before, & sh3e_sh3e_model::model_ldc_gbr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LDC_GBR, 0, 1 } } },
9903 { SH3E_INSN_LDC_VBR_COMPACT, & sh3e_sh3e_model::model_ldc_vbr_compact_before, & sh3e_sh3e_model::model_ldc_vbr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9904 { SH3E_INSN_LDC_SR_COMPACT, & sh3e_sh3e_model::model_ldc_sr_compact_before, & sh3e_sh3e_model::model_ldc_sr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LDC_SR, 0, 1 } } },
9905 { SH3E_INSN_LDCL_GBR_COMPACT, & sh3e_sh3e_model::model_ldcl_gbr_compact_before, & sh3e_sh3e_model::model_ldcl_gbr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LDCL, 0, 3 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GBR, 0, 0 } } },
9906 { SH3E_INSN_LDCL_VBR_COMPACT, & sh3e_sh3e_model::model_ldcl_vbr_compact_before, & sh3e_sh3e_model::model_ldcl_vbr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LDCL_VBR, 0, 3 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_VBR, 0, 0 } } },
9907 { SH3E_INSN_LDS_FPSCR_COMPACT, & sh3e_sh3e_model::model_lds_fpscr_compact_before, & sh3e_sh3e_model::model_lds_fpscr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LDS_FPSCR, 0, 3 } } },
9908 { SH3E_INSN_LDSL_FPSCR_COMPACT, & sh3e_sh3e_model::model_ldsl_fpscr_compact_before, & sh3e_sh3e_model::model_ldsl_fpscr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LDS_FPSCR, 0, 3 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LDSL_FPSCR, 0, 0 } } },
9909 { SH3E_INSN_LDS_FPUL_COMPACT, & sh3e_sh3e_model::model_lds_fpul_compact_before, & sh3e_sh3e_model::model_lds_fpul_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_FPUL, 0, 0 } } },
9910 { SH3E_INSN_LDSL_FPUL_COMPACT, & sh3e_sh3e_model::model_ldsl_fpul_compact_before, & sh3e_sh3e_model::model_ldsl_fpul_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_FPUL, 0, 0 } } },
9911 { SH3E_INSN_LDS_MACH_COMPACT, & sh3e_sh3e_model::model_lds_mach_compact_before, & sh3e_sh3e_model::model_lds_mach_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_MAC, 0, 0 } } },
9912 { SH3E_INSN_LDSL_MACH_COMPACT, & sh3e_sh3e_model::model_ldsl_mach_compact_before, & sh3e_sh3e_model::model_ldsl_mach_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_MAC, 0, 0 } } },
9913 { SH3E_INSN_LDS_MACL_COMPACT, & sh3e_sh3e_model::model_lds_macl_compact_before, & sh3e_sh3e_model::model_lds_macl_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_MAC, 0, 0 } } },
9914 { SH3E_INSN_LDSL_MACL_COMPACT, & sh3e_sh3e_model::model_ldsl_macl_compact_before, & sh3e_sh3e_model::model_ldsl_macl_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_MAC, 0, 0 } } },
9915 { SH3E_INSN_LDS_PR_COMPACT, & sh3e_sh3e_model::model_lds_pr_compact_before, & sh3e_sh3e_model::model_lds_pr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LDS_PR, 0, 1 } } },
9916 { SH3E_INSN_LDSL_PR_COMPACT, & sh3e_sh3e_model::model_ldsl_pr_compact_before, & sh3e_sh3e_model::model_ldsl_pr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LDS_PR, 0, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_PR, 0, 0 } } },
9917 { SH3E_INSN_MACL_COMPACT, & sh3e_sh3e_model::model_macl_compact_before, & sh3e_sh3e_model::model_macl_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_MACL, 1, 2 } } },
9918 { SH3E_INSN_MACW_COMPACT, & sh3e_sh3e_model::model_macw_compact_before, & sh3e_sh3e_model::model_macw_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_MACW, 1, 2 } } },
9919 { SH3E_INSN_MOV_COMPACT, & sh3e_sh3e_model::model_mov_compact_before, & sh3e_sh3e_model::model_mov_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9920 { SH3E_INSN_MOVI_COMPACT, & sh3e_sh3e_model::model_movi_compact_before, & sh3e_sh3e_model::model_movi_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9921 { SH3E_INSN_MOVB1_COMPACT, & sh3e_sh3e_model::model_movb1_compact_before, & sh3e_sh3e_model::model_movb1_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9922 { SH3E_INSN_MOVB2_COMPACT, & sh3e_sh3e_model::model_movb2_compact_before, & sh3e_sh3e_model::model_movb2_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9923 { SH3E_INSN_MOVB3_COMPACT, & sh3e_sh3e_model::model_movb3_compact_before, & sh3e_sh3e_model::model_movb3_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9924 { SH3E_INSN_MOVB4_COMPACT, & sh3e_sh3e_model::model_movb4_compact_before, & sh3e_sh3e_model::model_movb4_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SX, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9925 { SH3E_INSN_MOVB5_COMPACT, & sh3e_sh3e_model::model_movb5_compact_before, & sh3e_sh3e_model::model_movb5_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9926 { SH3E_INSN_MOVB6_COMPACT, & sh3e_sh3e_model::model_movb6_compact_before, & sh3e_sh3e_model::model_movb6_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9927 { SH3E_INSN_MOVB7_COMPACT, & sh3e_sh3e_model::model_movb7_compact_before, & sh3e_sh3e_model::model_movb7_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9928 { SH3E_INSN_MOVB8_COMPACT, & sh3e_sh3e_model::model_movb8_compact_before, & sh3e_sh3e_model::model_movb8_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9929 { SH3E_INSN_MOVB9_COMPACT, & sh3e_sh3e_model::model_movb9_compact_before, & sh3e_sh3e_model::model_movb9_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9930 { SH3E_INSN_MOVB10_COMPACT, & sh3e_sh3e_model::model_movb10_compact_before, & sh3e_sh3e_model::model_movb10_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9931 { SH3E_INSN_MOVL1_COMPACT, & sh3e_sh3e_model::model_movl1_compact_before, & sh3e_sh3e_model::model_movl1_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9932 { SH3E_INSN_MOVL2_COMPACT, & sh3e_sh3e_model::model_movl2_compact_before, & sh3e_sh3e_model::model_movl2_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9933 { SH3E_INSN_MOVL3_COMPACT, & sh3e_sh3e_model::model_movl3_compact_before, & sh3e_sh3e_model::model_movl3_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9934 { SH3E_INSN_MOVL4_COMPACT, & sh3e_sh3e_model::model_movl4_compact_before, & sh3e_sh3e_model::model_movl4_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SX, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9935 { SH3E_INSN_MOVL5_COMPACT, & sh3e_sh3e_model::model_movl5_compact_before, & sh3e_sh3e_model::model_movl5_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9936 { SH3E_INSN_MOVL6_COMPACT, & sh3e_sh3e_model::model_movl6_compact_before, & sh3e_sh3e_model::model_movl6_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9937 { SH3E_INSN_MOVL7_COMPACT, & sh3e_sh3e_model::model_movl7_compact_before, & sh3e_sh3e_model::model_movl7_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9938 { SH3E_INSN_MOVL8_COMPACT, & sh3e_sh3e_model::model_movl8_compact_before, & sh3e_sh3e_model::model_movl8_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9939 { SH3E_INSN_MOVL9_COMPACT, & sh3e_sh3e_model::model_movl9_compact_before, & sh3e_sh3e_model::model_movl9_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9940 { SH3E_INSN_MOVL10_COMPACT, & sh3e_sh3e_model::model_movl10_compact_before, & sh3e_sh3e_model::model_movl10_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9941 { SH3E_INSN_MOVL11_COMPACT, & sh3e_sh3e_model::model_movl11_compact_before, & sh3e_sh3e_model::model_movl11_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9942 { SH3E_INSN_MOVW1_COMPACT, & sh3e_sh3e_model::model_movw1_compact_before, & sh3e_sh3e_model::model_movw1_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9943 { SH3E_INSN_MOVW2_COMPACT, & sh3e_sh3e_model::model_movw2_compact_before, & sh3e_sh3e_model::model_movw2_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9944 { SH3E_INSN_MOVW3_COMPACT, & sh3e_sh3e_model::model_movw3_compact_before, & sh3e_sh3e_model::model_movw3_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9945 { SH3E_INSN_MOVW4_COMPACT, & sh3e_sh3e_model::model_movw4_compact_before, & sh3e_sh3e_model::model_movw4_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SX, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9946 { SH3E_INSN_MOVW5_COMPACT, & sh3e_sh3e_model::model_movw5_compact_before, & sh3e_sh3e_model::model_movw5_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9947 { SH3E_INSN_MOVW6_COMPACT, & sh3e_sh3e_model::model_movw6_compact_before, & sh3e_sh3e_model::model_movw6_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9948 { SH3E_INSN_MOVW7_COMPACT, & sh3e_sh3e_model::model_movw7_compact_before, & sh3e_sh3e_model::model_movw7_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9949 { SH3E_INSN_MOVW8_COMPACT, & sh3e_sh3e_model::model_movw8_compact_before, & sh3e_sh3e_model::model_movw8_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9950 { SH3E_INSN_MOVW9_COMPACT, & sh3e_sh3e_model::model_movw9_compact_before, & sh3e_sh3e_model::model_movw9_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9951 { SH3E_INSN_MOVW10_COMPACT, & sh3e_sh3e_model::model_movw10_compact_before, & sh3e_sh3e_model::model_movw10_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9952 { SH3E_INSN_MOVW11_COMPACT, & sh3e_sh3e_model::model_movw11_compact_before, & sh3e_sh3e_model::model_movw11_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9953 { SH3E_INSN_MOVA_COMPACT, & sh3e_sh3e_model::model_mova_compact_before, & sh3e_sh3e_model::model_mova_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9954 { SH3E_INSN_MOVT_COMPACT, & sh3e_sh3e_model::model_movt_compact_before, & sh3e_sh3e_model::model_movt_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9955 { SH3E_INSN_MULL_COMPACT, & sh3e_sh3e_model::model_mull_compact_before, & sh3e_sh3e_model::model_mull_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_MULL, 1, 2 } } },
9956 { SH3E_INSN_MULSW_COMPACT, & sh3e_sh3e_model::model_mulsw_compact_before, & sh3e_sh3e_model::model_mulsw_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_MULSW, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MULTIPLY, 1, 2 } } },
9957 { SH3E_INSN_MULUW_COMPACT, & sh3e_sh3e_model::model_muluw_compact_before, & sh3e_sh3e_model::model_muluw_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_MULSW, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MULTIPLY, 1, 2 } } },
9958 { SH3E_INSN_NEG_COMPACT, & sh3e_sh3e_model::model_neg_compact_before, & sh3e_sh3e_model::model_neg_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9959 { SH3E_INSN_NEGC_COMPACT, & sh3e_sh3e_model::model_negc_compact_before, & sh3e_sh3e_model::model_negc_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9960 { SH3E_INSN_NOP_COMPACT, & sh3e_sh3e_model::model_nop_compact_before, & sh3e_sh3e_model::model_nop_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9961 { SH3E_INSN_NOT_COMPACT, & sh3e_sh3e_model::model_not_compact_before, & sh3e_sh3e_model::model_not_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9962 { SH3E_INSN_OR_COMPACT, & sh3e_sh3e_model::model_or_compact_before, & sh3e_sh3e_model::model_or_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9963 { SH3E_INSN_ORI_COMPACT, & sh3e_sh3e_model::model_ori_compact_before, & sh3e_sh3e_model::model_ori_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9964 { SH3E_INSN_ORB_COMPACT, & sh3e_sh3e_model::model_orb_compact_before, & sh3e_sh3e_model::model_orb_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOGIC_B, 0, 3 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9965 { SH3E_INSN_PREF_COMPACT, & sh3e_sh3e_model::model_pref_compact_before, & sh3e_sh3e_model::model_pref_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9966 { SH3E_INSN_ROTCL_COMPACT, & sh3e_sh3e_model::model_rotcl_compact_before, & sh3e_sh3e_model::model_rotcl_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9967 { SH3E_INSN_ROTCR_COMPACT, & sh3e_sh3e_model::model_rotcr_compact_before, & sh3e_sh3e_model::model_rotcr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9968 { SH3E_INSN_ROTL_COMPACT, & sh3e_sh3e_model::model_rotl_compact_before, & sh3e_sh3e_model::model_rotl_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9969 { SH3E_INSN_ROTR_COMPACT, & sh3e_sh3e_model::model_rotr_compact_before, & sh3e_sh3e_model::model_rotr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9970 { SH3E_INSN_RTS_COMPACT, & sh3e_sh3e_model::model_rts_compact_before, & sh3e_sh3e_model::model_rts_compact_after, { { sh3e_sh3e_model::UNIT_U_JMP, 0, 2 } } },
9971 { SH3E_INSN_SETS_COMPACT, & sh3e_sh3e_model::model_sets_compact_before, & sh3e_sh3e_model::model_sets_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9972 { SH3E_INSN_SETT_COMPACT, & sh3e_sh3e_model::model_sett_compact_before, & sh3e_sh3e_model::model_sett_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9973 { SH3E_INSN_SHAD_COMPACT, & sh3e_sh3e_model::model_shad_compact_before, & sh3e_sh3e_model::model_shad_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9974 { SH3E_INSN_SHAL_COMPACT, & sh3e_sh3e_model::model_shal_compact_before, & sh3e_sh3e_model::model_shal_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9975 { SH3E_INSN_SHAR_COMPACT, & sh3e_sh3e_model::model_shar_compact_before, & sh3e_sh3e_model::model_shar_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9976 { SH3E_INSN_SHLD_COMPACT, & sh3e_sh3e_model::model_shld_compact_before, & sh3e_sh3e_model::model_shld_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9977 { SH3E_INSN_SHLL_COMPACT, & sh3e_sh3e_model::model_shll_compact_before, & sh3e_sh3e_model::model_shll_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9978 { SH3E_INSN_SHLL2_COMPACT, & sh3e_sh3e_model::model_shll2_compact_before, & sh3e_sh3e_model::model_shll2_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9979 { SH3E_INSN_SHLL8_COMPACT, & sh3e_sh3e_model::model_shll8_compact_before, & sh3e_sh3e_model::model_shll8_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9980 { SH3E_INSN_SHLL16_COMPACT, & sh3e_sh3e_model::model_shll16_compact_before, & sh3e_sh3e_model::model_shll16_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9981 { SH3E_INSN_SHLR_COMPACT, & sh3e_sh3e_model::model_shlr_compact_before, & sh3e_sh3e_model::model_shlr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9982 { SH3E_INSN_SHLR2_COMPACT, & sh3e_sh3e_model::model_shlr2_compact_before, & sh3e_sh3e_model::model_shlr2_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9983 { SH3E_INSN_SHLR8_COMPACT, & sh3e_sh3e_model::model_shlr8_compact_before, & sh3e_sh3e_model::model_shlr8_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9984 { SH3E_INSN_SHLR16_COMPACT, & sh3e_sh3e_model::model_shlr16_compact_before, & sh3e_sh3e_model::model_shlr16_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
9985 { SH3E_INSN_STC_GBR_COMPACT, & sh3e_sh3e_model::model_stc_gbr_compact_before, & sh3e_sh3e_model::model_stc_gbr_compact_after, { { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
9986 { SH3E_INSN_STC_VBR_COMPACT, & sh3e_sh3e_model::model_stc_vbr_compact_before, & sh3e_sh3e_model::model_stc_vbr_compact_after, { { sh3e_sh3e_model::UNIT_U_STC_VBR, 0, 1 } } },
9987 { SH3E_INSN_STCL_GBR_COMPACT, & sh3e_sh3e_model::model_stcl_gbr_compact_before, & sh3e_sh3e_model::model_stcl_gbr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LDCL, 0, 2 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9988 { SH3E_INSN_STCL_VBR_COMPACT, & sh3e_sh3e_model::model_stcl_vbr_compact_before, & sh3e_sh3e_model::model_stcl_vbr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LDCL, 0, 2 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9989 { SH3E_INSN_STS_FPSCR_COMPACT, & sh3e_sh3e_model::model_sts_fpscr_compact_before, & sh3e_sh3e_model::model_sts_fpscr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FPSCR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_LOAD_GR, 0, 0 } } },
9990 { SH3E_INSN_STSL_FPSCR_COMPACT, & sh3e_sh3e_model::model_stsl_fpscr_compact_before, & sh3e_sh3e_model::model_stsl_fpscr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_FPSCR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
9991 { SH3E_INSN_STS_FPUL_COMPACT, & sh3e_sh3e_model::model_sts_fpul_compact_before, & sh3e_sh3e_model::model_sts_fpul_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FPUL, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_LOAD_GR, 0, 0 } } },
9992 { SH3E_INSN_STSL_FPUL_COMPACT, & sh3e_sh3e_model::model_stsl_fpul_compact_before, & sh3e_sh3e_model::model_stsl_fpul_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_FPUL, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh3e_sh3e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
9993 { SH3E_INSN_STS_MACH_COMPACT, & sh3e_sh3e_model::model_sts_mach_compact_before, & sh3e_sh3e_model::model_sts_mach_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9994 { SH3E_INSN_STSL_MACH_COMPACT, & sh3e_sh3e_model::model_stsl_mach_compact_before, & sh3e_sh3e_model::model_stsl_mach_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9995 { SH3E_INSN_STS_MACL_COMPACT, & sh3e_sh3e_model::model_sts_macl_compact_before, & sh3e_sh3e_model::model_sts_macl_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9996 { SH3E_INSN_STSL_MACL_COMPACT, & sh3e_sh3e_model::model_stsl_macl_compact_before, & sh3e_sh3e_model::model_stsl_macl_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9997 { SH3E_INSN_STS_PR_COMPACT, & sh3e_sh3e_model::model_sts_pr_compact_before, & sh3e_sh3e_model::model_sts_pr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_PR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_STS_PR, 0, 1 } } },
9998 { SH3E_INSN_STSL_PR_COMPACT, & sh3e_sh3e_model::model_stsl_pr_compact_before, & sh3e_sh3e_model::model_stsl_pr_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_PR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_STS_PR, 0, 1 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9999 { SH3E_INSN_SUB_COMPACT, & sh3e_sh3e_model::model_sub_compact_before, & sh3e_sh3e_model::model_sub_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
10000 { SH3E_INSN_SUBC_COMPACT, & sh3e_sh3e_model::model_subc_compact_before, & sh3e_sh3e_model::model_subc_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
10001 { SH3E_INSN_SUBV_COMPACT, & sh3e_sh3e_model::model_subv_compact_before, & sh3e_sh3e_model::model_subv_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10002 { SH3E_INSN_SWAPB_COMPACT, & sh3e_sh3e_model::model_swapb_compact_before, & sh3e_sh3e_model::model_swapb_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
10003 { SH3E_INSN_SWAPW_COMPACT, & sh3e_sh3e_model::model_swapw_compact_before, & sh3e_sh3e_model::model_swapw_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },
10004 { SH3E_INSN_TASB_COMPACT, & sh3e_sh3e_model::model_tasb_compact_before, & sh3e_sh3e_model::model_tasb_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_TAS, 1, 4 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10005 { SH3E_INSN_TRAPA_COMPACT, & sh3e_sh3e_model::model_trapa_compact_before, & sh3e_sh3e_model::model_trapa_compact_after, { { sh3e_sh3e_model::UNIT_U_TRAP, 0, 8 } } },
10006 { SH3E_INSN_TST_COMPACT, & sh3e_sh3e_model::model_tst_compact_before, & sh3e_sh3e_model::model_tst_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10007 { SH3E_INSN_TSTI_COMPACT, & sh3e_sh3e_model::model_tsti_compact_before, & sh3e_sh3e_model::model_tsti_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10008 { SH3E_INSN_TSTB_COMPACT, & sh3e_sh3e_model::model_tstb_compact_before, & sh3e_sh3e_model::model_tstb_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 3 }, { sh3e_sh3e_model::UNIT_U_SX, 1, 3 }, { sh3e_sh3e_model::UNIT_U_SET_SR_BIT, 0, 0 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10009 { SH3E_INSN_XOR_COMPACT, & sh3e_sh3e_model::model_xor_compact_before, & sh3e_sh3e_model::model_xor_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
10010 { SH3E_INSN_XORI_COMPACT, & sh3e_sh3e_model::model_xori_compact_before, & sh3e_sh3e_model::model_xori_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 } } },
10011 { SH3E_INSN_XORB_COMPACT, & sh3e_sh3e_model::model_xorb_compact_before, & sh3e_sh3e_model::model_xorb_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_LOGIC_B, 0, 3 }, { sh3e_sh3e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10012 { SH3E_INSN_XTRCT_COMPACT, & sh3e_sh3e_model::model_xtrct_compact_before, & sh3e_sh3e_model::model_xtrct_compact_after, { { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_USE_GR, 0, 0 }, { sh3e_sh3e_model::UNIT_U_EXEC, 1, 1 }, { sh3e_sh3e_model::UNIT_U_SHIFT, 0, 0 } } },