1 /* Simulator model support for sh4.
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
5 Copyright (C) 2000-2010 Red Hat, Inc.
7 This file is part of the Red Hat simulators.
18 using namespace sh4; // 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 sh4_sh4_model::sh4_sh4_model (sh4_cpu *cpu)
31 sh4_sh4_model::model_add_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
33 #define FLD(f) abuf->fields.sfmt_macl_compact.f
34 const sh4_scache* abuf = sem;
35 const sh4_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 sh4_sh4_model::model_add_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
57 #define FLD(f) abuf->fields.sfmt_macl_compact.f
58 const sh4_scache* abuf = sem;
59 const sh4_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 sh4_sh4_model::model_addi_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
87 #define FLD(f) abuf->fields.sfmt_addi_compact.f
88 const sh4_scache* abuf = sem;
89 const sh4_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 sh4_sh4_model::model_addi_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
106 #define FLD(f) abuf->fields.sfmt_addi_compact.f
107 const sh4_scache* abuf = sem;
108 const sh4_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 sh4_sh4_model::model_addc_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
129 #define FLD(f) abuf->fields.sfmt_macl_compact.f
130 const sh4_scache* abuf = sem;
131 const sh4_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 sh4_sh4_model::model_addc_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
159 #define FLD(f) abuf->fields.sfmt_macl_compact.f
160 const sh4_scache* abuf = sem;
161 const sh4_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 sh4_sh4_model::model_addv_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
199 #define FLD(f) abuf->fields.sfmt_macl_compact.f
200 const sh4_scache* abuf = sem;
201 const sh4_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 sh4_sh4_model::model_addv_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
229 #define FLD(f) abuf->fields.sfmt_macl_compact.f
230 const sh4_scache* abuf = sem;
231 const sh4_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 sh4_sh4_model::model_and_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
269 #define FLD(f) abuf->fields.sfmt_and_compact.f
270 const sh4_scache* abuf = sem;
271 const sh4_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 sh4_sh4_model::model_and_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
293 #define FLD(f) abuf->fields.sfmt_and_compact.f
294 const sh4_scache* abuf = sem;
295 const sh4_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 sh4_sh4_model::model_andi_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
323 #define FLD(f) abuf->fields.sfmt_andi_compact.f
324 const sh4_scache* abuf = sem;
325 const sh4_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 sh4_sh4_model::model_andi_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
342 #define FLD(f) abuf->fields.sfmt_andi_compact.f
343 const sh4_scache* abuf = sem;
344 const sh4_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 sh4_sh4_model::model_andb_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
365 #define FLD(f) abuf->fields.sfmt_andi_compact.f
366 const sh4_scache* abuf = sem;
367 const sh4_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 sh4_sh4_model::model_andb_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
387 #define FLD(f) abuf->fields.sfmt_andi_compact.f
388 const sh4_scache* abuf = sem;
389 const sh4_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 sh4_sh4_model::model_bf_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
415 #define FLD(f) abuf->fields.sfmt_bf_compact.f
416 const sh4_scache* abuf = sem;
417 const sh4_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 sh4_sh4_model::model_bf_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
432 #define FLD(f) abuf->fields.sfmt_bf_compact.f
433 const sh4_scache* abuf = sem;
434 const sh4_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 sh4_sh4_model::model_bfs_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
454 #define FLD(f) abuf->fields.sfmt_bf_compact.f
455 const sh4_scache* abuf = sem;
456 const sh4_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 sh4_sh4_model::model_bfs_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
471 #define FLD(f) abuf->fields.sfmt_bf_compact.f
472 const sh4_scache* abuf = sem;
473 const sh4_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 sh4_sh4_model::model_bra_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
493 #define FLD(f) abuf->fields.sfmt_bra_compact.f
494 const sh4_scache* abuf = sem;
495 const sh4_idesc* idesc = abuf->idesc;
498 cycles += model_u_branch_before (current_cpu, idesc, 0);
505 sh4_sh4_model::model_bra_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
507 #define FLD(f) abuf->fields.sfmt_bra_compact.f
508 const sh4_scache* abuf = sem;
509 const sh4_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 sh4_sh4_model::model_braf_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
524 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
525 const sh4_scache* abuf = sem;
526 const sh4_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 sh4_sh4_model::model_braf_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
543 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
544 const sh4_scache* abuf = sem;
545 const sh4_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 sh4_sh4_model::model_bsr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
567 #define FLD(f) abuf->fields.sfmt_bra_compact.f
568 const sh4_scache* abuf = sem;
569 const sh4_idesc* idesc = abuf->idesc;
572 cycles += model_u_branch_before (current_cpu, idesc, 0);
579 sh4_sh4_model::model_bsr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
581 #define FLD(f) abuf->fields.sfmt_bra_compact.f
582 const sh4_scache* abuf = sem;
583 const sh4_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 sh4_sh4_model::model_bsrf_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
598 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
599 const sh4_scache* abuf = sem;
600 const sh4_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 sh4_sh4_model::model_bsrf_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
617 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
618 const sh4_scache* abuf = sem;
619 const sh4_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 sh4_sh4_model::model_bt_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
641 #define FLD(f) abuf->fields.sfmt_bf_compact.f
642 const sh4_scache* abuf = sem;
643 const sh4_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 sh4_sh4_model::model_bt_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
658 #define FLD(f) abuf->fields.sfmt_bf_compact.f
659 const sh4_scache* abuf = sem;
660 const sh4_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 sh4_sh4_model::model_bts_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
680 #define FLD(f) abuf->fields.sfmt_bf_compact.f
681 const sh4_scache* abuf = sem;
682 const sh4_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 sh4_sh4_model::model_bts_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
697 #define FLD(f) abuf->fields.sfmt_bf_compact.f
698 const sh4_scache* abuf = sem;
699 const sh4_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 sh4_sh4_model::model_clrmac_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
719 #define FLD(f) abuf->fields.fmt_empty.f
720 const sh4_scache* abuf = sem;
721 const sh4_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 sh4_sh4_model::model_clrmac_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
739 #define FLD(f) abuf->fields.fmt_empty.f
740 const sh4_scache* abuf = sem;
741 const sh4_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 sh4_sh4_model::model_clrs_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
765 #define FLD(f) abuf->fields.fmt_empty.f
766 const sh4_scache* abuf = sem;
767 const sh4_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 sh4_sh4_model::model_clrs_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
782 #define FLD(f) abuf->fields.fmt_empty.f
783 const sh4_scache* abuf = sem;
784 const sh4_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 sh4_sh4_model::model_clrt_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
803 #define FLD(f) abuf->fields.fmt_empty.f
804 const sh4_scache* abuf = sem;
805 const sh4_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 sh4_sh4_model::model_clrt_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
823 #define FLD(f) abuf->fields.fmt_empty.f
824 const sh4_scache* abuf = sem;
825 const sh4_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 sh4_sh4_model::model_cmpeq_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
849 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
850 const sh4_scache* abuf = sem;
851 const sh4_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 sh4_sh4_model::model_cmpeq_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
879 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
880 const sh4_scache* abuf = sem;
881 const sh4_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 sh4_sh4_model::model_cmpeqi_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
919 #define FLD(f) abuf->fields.sfmt_andi_compact.f
920 const sh4_scache* abuf = sem;
921 const sh4_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 sh4_sh4_model::model_cmpeqi_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
944 #define FLD(f) abuf->fields.sfmt_andi_compact.f
945 const sh4_scache* abuf = sem;
946 const sh4_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 sh4_sh4_model::model_cmpge_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
977 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
978 const sh4_scache* abuf = sem;
979 const sh4_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 sh4_sh4_model::model_cmpge_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1007 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1008 const sh4_scache* abuf = sem;
1009 const sh4_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 sh4_sh4_model::model_cmpgt_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1047 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1048 const sh4_scache* abuf = sem;
1049 const sh4_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 sh4_sh4_model::model_cmpgt_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1077 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1078 const sh4_scache* abuf = sem;
1079 const sh4_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 sh4_sh4_model::model_cmphi_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1117 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1118 const sh4_scache* abuf = sem;
1119 const sh4_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 sh4_sh4_model::model_cmphi_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1147 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1148 const sh4_scache* abuf = sem;
1149 const sh4_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 sh4_sh4_model::model_cmphs_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1187 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1188 const sh4_scache* abuf = sem;
1189 const sh4_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 sh4_sh4_model::model_cmphs_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1217 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1218 const sh4_scache* abuf = sem;
1219 const sh4_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 sh4_sh4_model::model_cmppl_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1257 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1258 const sh4_scache* abuf = sem;
1259 const sh4_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 sh4_sh4_model::model_cmppl_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1282 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1283 const sh4_scache* abuf = sem;
1284 const sh4_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 sh4_sh4_model::model_cmppz_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1315 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1316 const sh4_scache* abuf = sem;
1317 const sh4_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 sh4_sh4_model::model_cmppz_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1340 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1341 const sh4_scache* abuf = sem;
1342 const sh4_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 sh4_sh4_model::model_cmpstr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1373 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1374 const sh4_scache* abuf = sem;
1375 const sh4_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 sh4_sh4_model::model_cmpstr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1403 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1404 const sh4_scache* abuf = sem;
1405 const sh4_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 sh4_sh4_model::model_div0s_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1443 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1444 const sh4_scache* abuf = sem;
1445 const sh4_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 sh4_sh4_model::model_div0s_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1473 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1474 const sh4_scache* abuf = sem;
1475 const sh4_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 sh4_sh4_model::model_div0u_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1513 #define FLD(f) abuf->fields.fmt_empty.f
1514 const sh4_scache* abuf = sem;
1515 const sh4_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 sh4_sh4_model::model_div0u_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1533 #define FLD(f) abuf->fields.fmt_empty.f
1534 const sh4_scache* abuf = sem;
1535 const sh4_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 sh4_sh4_model::model_div1_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1559 #define FLD(f) abuf->fields.sfmt_macl_compact.f
1560 const sh4_scache* abuf = sem;
1561 const sh4_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 sh4_sh4_model::model_div1_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1589 #define FLD(f) abuf->fields.sfmt_macl_compact.f
1590 const sh4_scache* abuf = sem;
1591 const sh4_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 sh4_sh4_model::model_divu_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1629 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1630 const sh4_scache* abuf = sem;
1631 const sh4_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_r0);
1641 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1644 cycles += model_u_exec_before (current_cpu, idesc, 2);
1651 sh4_sh4_model::model_divu_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1653 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1654 const sh4_scache* abuf = sem;
1655 const sh4_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_r0);
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_exec_after (current_cpu, idesc, 2, referenced);
1681 sh4_sh4_model::model_mulr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1683 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1684 const sh4_scache* abuf = sem;
1685 const sh4_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_r0);
1695 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1698 cycles += model_u_mulr_before (current_cpu, idesc, 2);
1701 INT out_loadreg = -1;
1702 out_loadreg = FLD (out_rn);
1703 cycles += model_u_mulr_gr_before (current_cpu, idesc, 3, out_loadreg);
1710 sh4_sh4_model::model_mulr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1712 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1713 const sh4_scache* abuf = sem;
1714 const sh4_idesc* idesc = abuf->idesc;
1718 unsigned long long insn_referenced = abuf->written;
1720 in_usereg = FLD (in_rn);
1721 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1725 unsigned long long insn_referenced = abuf->written;
1727 in_usereg = FLD (in_r0);
1728 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1732 unsigned long long insn_referenced = abuf->written;
1733 cycles += model_u_mulr_after (current_cpu, idesc, 2, referenced);
1737 unsigned long long insn_referenced = abuf->written;
1738 INT out_loadreg = -1;
1739 out_loadreg = FLD (out_rn);
1740 cycles += model_u_mulr_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
1747 sh4_sh4_model::model_dmulsl_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1749 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1750 const sh4_scache* abuf = sem;
1751 const sh4_idesc* idesc = abuf->idesc;
1755 in_usereg = FLD (in_rn);
1756 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1760 in_usereg = FLD (in_rm);
1761 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1764 cycles += model_u_dmul_before (current_cpu, idesc, 2);
1771 sh4_sh4_model::model_dmulsl_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1773 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1774 const sh4_scache* abuf = sem;
1775 const sh4_idesc* idesc = abuf->idesc;
1779 unsigned long long insn_referenced = abuf->written;
1781 in_usereg = FLD (in_rn);
1782 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1786 unsigned long long insn_referenced = abuf->written;
1788 in_usereg = FLD (in_rm);
1789 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1793 unsigned long long insn_referenced = abuf->written;
1794 cycles += model_u_dmul_after (current_cpu, idesc, 2, referenced);
1801 sh4_sh4_model::model_dmulul_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1803 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1804 const sh4_scache* abuf = sem;
1805 const sh4_idesc* idesc = abuf->idesc;
1809 in_usereg = FLD (in_rn);
1810 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1814 in_usereg = FLD (in_rm);
1815 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1818 cycles += model_u_dmul_before (current_cpu, idesc, 2);
1825 sh4_sh4_model::model_dmulul_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1827 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1828 const sh4_scache* abuf = sem;
1829 const sh4_idesc* idesc = abuf->idesc;
1833 unsigned long long insn_referenced = abuf->written;
1835 in_usereg = FLD (in_rn);
1836 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1840 unsigned long long insn_referenced = abuf->written;
1842 in_usereg = FLD (in_rm);
1843 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1847 unsigned long long insn_referenced = abuf->written;
1848 cycles += model_u_dmul_after (current_cpu, idesc, 2, referenced);
1855 sh4_sh4_model::model_dt_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1857 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1858 const sh4_scache* abuf = sem;
1859 const sh4_idesc* idesc = abuf->idesc;
1863 in_usereg = FLD (in_rn);
1864 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1867 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
1870 cycles += model_u_exec_before (current_cpu, idesc, 2);
1873 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
1880 sh4_sh4_model::model_dt_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1882 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1883 const sh4_scache* abuf = sem;
1884 const sh4_idesc* idesc = abuf->idesc;
1888 unsigned long long insn_referenced = abuf->written;
1890 in_usereg = FLD (in_rn);
1891 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1895 unsigned long long insn_referenced = abuf->written;
1896 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
1900 unsigned long long insn_referenced = abuf->written;
1901 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
1905 unsigned long long insn_referenced = abuf->written;
1906 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
1913 sh4_sh4_model::model_extsb_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1915 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
1916 const sh4_scache* abuf = sem;
1917 const sh4_idesc* idesc = abuf->idesc;
1921 in_usereg = FLD (in_rm);
1922 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1925 cycles += model_u_exec_before (current_cpu, idesc, 1);
1928 cycles += model_u_shift_before (current_cpu, idesc, 2);
1935 sh4_sh4_model::model_extsb_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1937 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
1938 const sh4_scache* abuf = sem;
1939 const sh4_idesc* idesc = abuf->idesc;
1943 unsigned long long insn_referenced = abuf->written;
1945 in_usereg = FLD (in_rm);
1946 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1950 unsigned long long insn_referenced = abuf->written;
1951 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1955 unsigned long long insn_referenced = abuf->written;
1956 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
1963 sh4_sh4_model::model_extsw_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
1965 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
1966 const sh4_scache* abuf = sem;
1967 const sh4_idesc* idesc = abuf->idesc;
1971 in_usereg = FLD (in_rm);
1972 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1975 cycles += model_u_exec_before (current_cpu, idesc, 1);
1978 cycles += model_u_shift_before (current_cpu, idesc, 2);
1985 sh4_sh4_model::model_extsw_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
1987 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
1988 const sh4_scache* abuf = sem;
1989 const sh4_idesc* idesc = abuf->idesc;
1993 unsigned long long insn_referenced = abuf->written;
1995 in_usereg = FLD (in_rm);
1996 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2000 unsigned long long insn_referenced = abuf->written;
2001 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2005 unsigned long long insn_referenced = abuf->written;
2006 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
2013 sh4_sh4_model::model_extub_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2015 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
2016 const sh4_scache* abuf = sem;
2017 const sh4_idesc* idesc = abuf->idesc;
2021 in_usereg = FLD (in_rm);
2022 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2025 cycles += model_u_exec_before (current_cpu, idesc, 1);
2028 cycles += model_u_shift_before (current_cpu, idesc, 2);
2035 sh4_sh4_model::model_extub_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2037 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
2038 const sh4_scache* abuf = sem;
2039 const sh4_idesc* idesc = abuf->idesc;
2043 unsigned long long insn_referenced = abuf->written;
2045 in_usereg = FLD (in_rm);
2046 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2050 unsigned long long insn_referenced = abuf->written;
2051 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2055 unsigned long long insn_referenced = abuf->written;
2056 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
2063 sh4_sh4_model::model_extuw_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2065 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
2066 const sh4_scache* abuf = sem;
2067 const sh4_idesc* idesc = abuf->idesc;
2071 in_usereg = FLD (in_rm);
2072 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2075 cycles += model_u_exec_before (current_cpu, idesc, 1);
2078 cycles += model_u_shift_before (current_cpu, idesc, 2);
2085 sh4_sh4_model::model_extuw_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2087 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
2088 const sh4_scache* abuf = sem;
2089 const sh4_idesc* idesc = abuf->idesc;
2093 unsigned long long insn_referenced = abuf->written;
2095 in_usereg = FLD (in_rm);
2096 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2100 unsigned long long insn_referenced = abuf->written;
2101 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2105 unsigned long long insn_referenced = abuf->written;
2106 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
2113 sh4_sh4_model::model_fabs_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2115 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2116 const sh4_scache* abuf = sem;
2117 const sh4_idesc* idesc = abuf->idesc;
2121 in_usereg = FLD (in_fsdn);
2122 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2125 cycles += model_u_exec_before (current_cpu, idesc, 1);
2128 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
2131 INT out_loadreg = -1;
2132 out_loadreg = FLD (out_fsdn);
2133 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
2140 sh4_sh4_model::model_fabs_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2142 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2143 const sh4_scache* abuf = sem;
2144 const sh4_idesc* idesc = abuf->idesc;
2148 unsigned long long insn_referenced = abuf->written;
2150 in_usereg = FLD (in_fsdn);
2151 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2155 unsigned long long insn_referenced = abuf->written;
2156 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2160 unsigned long long insn_referenced = abuf->written;
2161 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
2165 unsigned long long insn_referenced = abuf->written;
2166 INT out_loadreg = -1;
2167 out_loadreg = FLD (out_fsdn);
2168 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
2175 sh4_sh4_model::model_fadd_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2177 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2178 const sh4_scache* abuf = sem;
2179 const sh4_idesc* idesc = abuf->idesc;
2183 in_usereg = FLD (in_fsdm);
2184 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2188 in_usereg = FLD (in_fsdn);
2189 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2192 cycles += model_u_exec_before (current_cpu, idesc, 2);
2195 cycles += model_u_fpu_before (current_cpu, idesc, 3);
2198 INT out_loadreg = -1;
2199 out_loadreg = FLD (out_fsdn);
2200 cycles += model_u_set_fr_before (current_cpu, idesc, 4, out_loadreg);
2207 sh4_sh4_model::model_fadd_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2209 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2210 const sh4_scache* abuf = sem;
2211 const sh4_idesc* idesc = abuf->idesc;
2215 unsigned long long insn_referenced = abuf->written;
2217 in_usereg = FLD (in_fsdm);
2218 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2222 unsigned long long insn_referenced = abuf->written;
2224 in_usereg = FLD (in_fsdn);
2225 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2229 unsigned long long insn_referenced = abuf->written;
2230 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2234 unsigned long long insn_referenced = abuf->written;
2235 cycles += model_u_fpu_after (current_cpu, idesc, 3, referenced);
2239 unsigned long long insn_referenced = abuf->written;
2240 INT out_loadreg = -1;
2241 out_loadreg = FLD (out_fsdn);
2242 cycles += model_u_set_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
2249 sh4_sh4_model::model_fcmpeq_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2251 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2252 const sh4_scache* abuf = sem;
2253 const sh4_idesc* idesc = abuf->idesc;
2257 in_usereg = FLD (in_fsdm);
2258 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2262 in_usereg = FLD (in_fsdn);
2263 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2266 cycles += model_u_exec_before (current_cpu, idesc, 2);
2269 cycles += model_u_fcmp_before (current_cpu, idesc, 3);
2272 cycles += model_u_fpu_before (current_cpu, idesc, 4);
2279 sh4_sh4_model::model_fcmpeq_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2281 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2282 const sh4_scache* abuf = sem;
2283 const sh4_idesc* idesc = abuf->idesc;
2287 unsigned long long insn_referenced = abuf->written;
2289 in_usereg = FLD (in_fsdm);
2290 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2294 unsigned long long insn_referenced = abuf->written;
2296 in_usereg = FLD (in_fsdn);
2297 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2301 unsigned long long insn_referenced = abuf->written;
2302 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2306 unsigned long long insn_referenced = abuf->written;
2307 cycles += model_u_fcmp_after (current_cpu, idesc, 3, referenced);
2311 unsigned long long insn_referenced = abuf->written;
2312 cycles += model_u_fpu_after (current_cpu, idesc, 4, referenced);
2319 sh4_sh4_model::model_fcmpgt_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2321 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2322 const sh4_scache* abuf = sem;
2323 const sh4_idesc* idesc = abuf->idesc;
2327 in_usereg = FLD (in_fsdm);
2328 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2332 in_usereg = FLD (in_fsdn);
2333 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2336 cycles += model_u_exec_before (current_cpu, idesc, 2);
2339 cycles += model_u_fcmp_before (current_cpu, idesc, 3);
2342 cycles += model_u_fpu_before (current_cpu, idesc, 4);
2349 sh4_sh4_model::model_fcmpgt_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2351 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2352 const sh4_scache* abuf = sem;
2353 const sh4_idesc* idesc = abuf->idesc;
2357 unsigned long long insn_referenced = abuf->written;
2359 in_usereg = FLD (in_fsdm);
2360 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2364 unsigned long long insn_referenced = abuf->written;
2366 in_usereg = FLD (in_fsdn);
2367 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2371 unsigned long long insn_referenced = abuf->written;
2372 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2376 unsigned long long insn_referenced = abuf->written;
2377 cycles += model_u_fcmp_after (current_cpu, idesc, 3, referenced);
2381 unsigned long long insn_referenced = abuf->written;
2382 cycles += model_u_fpu_after (current_cpu, idesc, 4, referenced);
2389 sh4_sh4_model::model_fcnvds_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2391 #define FLD(f) abuf->fields.sfmt_fcnvds_compact.f
2392 const sh4_scache* abuf = sem;
2393 const sh4_idesc* idesc = abuf->idesc;
2397 in_usereg = FLD (in_drn);
2398 cycles += model_u_use_dr_before (current_cpu, idesc, 0, in_usereg);
2401 cycles += model_u_exec_before (current_cpu, idesc, 1);
2404 cycles += model_u_fcnv_before (current_cpu, idesc, 2);
2407 cycles += model_u_set_fpul_before (current_cpu, idesc, 3);
2414 sh4_sh4_model::model_fcnvds_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2416 #define FLD(f) abuf->fields.sfmt_fcnvds_compact.f
2417 const sh4_scache* abuf = sem;
2418 const sh4_idesc* idesc = abuf->idesc;
2422 unsigned long long insn_referenced = abuf->written;
2424 in_usereg = FLD (in_drn);
2425 cycles += model_u_use_dr_after (current_cpu, idesc, 0, referenced, in_usereg);
2429 unsigned long long insn_referenced = abuf->written;
2430 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2434 unsigned long long insn_referenced = abuf->written;
2435 cycles += model_u_fcnv_after (current_cpu, idesc, 2, referenced);
2439 unsigned long long insn_referenced = abuf->written;
2440 cycles += model_u_set_fpul_after (current_cpu, idesc, 3, referenced);
2447 sh4_sh4_model::model_fcnvsd_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2449 #define FLD(f) abuf->fields.sfmt_fcnvsd_compact.f
2450 const sh4_scache* abuf = sem;
2451 const sh4_idesc* idesc = abuf->idesc;
2454 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
2457 cycles += model_u_exec_before (current_cpu, idesc, 1);
2460 cycles += model_u_fcnv_before (current_cpu, idesc, 2);
2463 INT out_loadreg = -1;
2464 out_loadreg = FLD (out_drn);
2465 cycles += model_u_set_dr_before (current_cpu, idesc, 3, out_loadreg);
2472 sh4_sh4_model::model_fcnvsd_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2474 #define FLD(f) abuf->fields.sfmt_fcnvsd_compact.f
2475 const sh4_scache* abuf = sem;
2476 const sh4_idesc* idesc = abuf->idesc;
2480 unsigned long long insn_referenced = abuf->written;
2481 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
2485 unsigned long long insn_referenced = abuf->written;
2486 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2490 unsigned long long insn_referenced = abuf->written;
2491 cycles += model_u_fcnv_after (current_cpu, idesc, 2, referenced);
2495 unsigned long long insn_referenced = abuf->written;
2496 INT out_loadreg = -1;
2497 out_loadreg = FLD (out_drn);
2498 cycles += model_u_set_dr_after (current_cpu, idesc, 3, referenced, out_loadreg);
2505 sh4_sh4_model::model_fdiv_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2507 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2508 const sh4_scache* abuf = sem;
2509 const sh4_idesc* idesc = abuf->idesc;
2513 in_usereg = FLD (in_fsdm);
2514 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2518 in_usereg = FLD (in_fsdn);
2519 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2522 cycles += model_u_exec_before (current_cpu, idesc, 2);
2525 INT out_loadreg = -1;
2526 out_loadreg = FLD (out_fsdn);
2527 cycles += model_u_fdiv_before (current_cpu, idesc, 3, out_loadreg);
2534 sh4_sh4_model::model_fdiv_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2536 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2537 const sh4_scache* abuf = sem;
2538 const sh4_idesc* idesc = abuf->idesc;
2542 unsigned long long insn_referenced = abuf->written;
2544 in_usereg = FLD (in_fsdm);
2545 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2549 unsigned long long insn_referenced = abuf->written;
2551 in_usereg = FLD (in_fsdn);
2552 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2556 unsigned long long insn_referenced = abuf->written;
2557 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2561 unsigned long long insn_referenced = abuf->written;
2562 INT out_loadreg = -1;
2563 out_loadreg = FLD (out_fsdn);
2564 cycles += model_u_fdiv_after (current_cpu, idesc, 3, referenced, out_loadreg);
2571 sh4_sh4_model::model_fipr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2573 #define FLD(f) abuf->fields.sfmt_fipr_compact.f
2574 const sh4_scache* abuf = sem;
2575 const sh4_idesc* idesc = abuf->idesc;
2578 cycles += model_u_exec_before (current_cpu, idesc, 0);
2583 cycles += model_u_fipr_before (current_cpu, idesc, 1, in_fvm, in_fvn);
2590 sh4_sh4_model::model_fipr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2592 #define FLD(f) abuf->fields.sfmt_fipr_compact.f
2593 const sh4_scache* abuf = sem;
2594 const sh4_idesc* idesc = abuf->idesc;
2598 unsigned long long insn_referenced = abuf->written;
2599 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
2603 unsigned long long insn_referenced = abuf->written;
2606 cycles += model_u_fipr_after (current_cpu, idesc, 1, referenced, in_fvm, in_fvn);
2613 sh4_sh4_model::model_flds_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2615 #define FLD(f) abuf->fields.sfmt_flds_compact.f
2616 const sh4_scache* abuf = sem;
2617 const sh4_idesc* idesc = abuf->idesc;
2621 in_usereg = FLD (in_frn);
2622 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2625 cycles += model_u_exec_before (current_cpu, idesc, 1);
2628 cycles += model_u_flds_fpul_before (current_cpu, idesc, 2);
2635 sh4_sh4_model::model_flds_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2637 #define FLD(f) abuf->fields.sfmt_flds_compact.f
2638 const sh4_scache* abuf = sem;
2639 const sh4_idesc* idesc = abuf->idesc;
2643 unsigned long long insn_referenced = abuf->written;
2645 in_usereg = FLD (in_frn);
2646 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2650 unsigned long long insn_referenced = abuf->written;
2651 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2655 unsigned long long insn_referenced = abuf->written;
2656 cycles += model_u_flds_fpul_after (current_cpu, idesc, 2, referenced);
2663 sh4_sh4_model::model_fldi0_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2665 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2666 const sh4_scache* abuf = sem;
2667 const sh4_idesc* idesc = abuf->idesc;
2670 cycles += model_u_exec_before (current_cpu, idesc, 0);
2673 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 1);
2676 INT out_loadreg = -1;
2677 out_loadreg = FLD (out_frn);
2678 cycles += model_u_set_fr_0_before (current_cpu, idesc, 2, out_loadreg);
2685 sh4_sh4_model::model_fldi0_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2687 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2688 const sh4_scache* abuf = sem;
2689 const sh4_idesc* idesc = abuf->idesc;
2693 unsigned long long insn_referenced = abuf->written;
2694 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
2698 unsigned long long insn_referenced = abuf->written;
2699 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 1, referenced);
2703 unsigned long long insn_referenced = abuf->written;
2704 INT out_loadreg = -1;
2705 out_loadreg = FLD (out_frn);
2706 cycles += model_u_set_fr_0_after (current_cpu, idesc, 2, referenced, out_loadreg);
2713 sh4_sh4_model::model_fldi1_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2715 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2716 const sh4_scache* abuf = sem;
2717 const sh4_idesc* idesc = abuf->idesc;
2720 cycles += model_u_exec_before (current_cpu, idesc, 0);
2723 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 1);
2726 INT out_loadreg = -1;
2727 out_loadreg = FLD (out_frn);
2728 cycles += model_u_set_fr_0_before (current_cpu, idesc, 2, out_loadreg);
2735 sh4_sh4_model::model_fldi1_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2737 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2738 const sh4_scache* abuf = sem;
2739 const sh4_idesc* idesc = abuf->idesc;
2743 unsigned long long insn_referenced = abuf->written;
2744 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
2748 unsigned long long insn_referenced = abuf->written;
2749 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 1, referenced);
2753 unsigned long long insn_referenced = abuf->written;
2754 INT out_loadreg = -1;
2755 out_loadreg = FLD (out_frn);
2756 cycles += model_u_set_fr_0_after (current_cpu, idesc, 2, referenced, out_loadreg);
2763 sh4_sh4_model::model_float_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2765 #define FLD(f) abuf->fields.sfmt_float_compact.f
2766 const sh4_scache* abuf = sem;
2767 const sh4_idesc* idesc = abuf->idesc;
2770 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
2773 cycles += model_u_exec_before (current_cpu, idesc, 1);
2776 cycles += model_u_fpu_before (current_cpu, idesc, 2);
2779 INT out_loadreg = -1;
2780 out_loadreg = FLD (out_fsdn);
2781 cycles += model_u_set_fr_before (current_cpu, idesc, 3, out_loadreg);
2788 sh4_sh4_model::model_float_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2790 #define FLD(f) abuf->fields.sfmt_float_compact.f
2791 const sh4_scache* abuf = sem;
2792 const sh4_idesc* idesc = abuf->idesc;
2796 unsigned long long insn_referenced = abuf->written;
2797 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
2801 unsigned long long insn_referenced = abuf->written;
2802 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2806 unsigned long long insn_referenced = abuf->written;
2807 cycles += model_u_fpu_after (current_cpu, idesc, 2, referenced);
2811 unsigned long long insn_referenced = abuf->written;
2812 INT out_loadreg = -1;
2813 out_loadreg = FLD (out_fsdn);
2814 cycles += model_u_set_fr_after (current_cpu, idesc, 3, referenced, out_loadreg);
2821 sh4_sh4_model::model_fmac_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2823 #define FLD(f) abuf->fields.sfmt_fmac_compact.f
2824 const sh4_scache* abuf = sem;
2825 const sh4_idesc* idesc = abuf->idesc;
2829 in_usereg = FLD (in_frm);
2830 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2834 in_usereg = FLD (in_frn);
2835 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2839 in_usereg = FLD (in_fr0);
2840 cycles += model_u_use_fr_before (current_cpu, idesc, 2, in_usereg);
2843 cycles += model_u_exec_before (current_cpu, idesc, 3);
2846 cycles += model_u_fpu_before (current_cpu, idesc, 4);
2849 INT out_loadreg = -1;
2850 out_loadreg = FLD (out_frn);
2851 cycles += model_u_set_fr_before (current_cpu, idesc, 5, out_loadreg);
2858 sh4_sh4_model::model_fmac_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2860 #define FLD(f) abuf->fields.sfmt_fmac_compact.f
2861 const sh4_scache* abuf = sem;
2862 const sh4_idesc* idesc = abuf->idesc;
2866 unsigned long long insn_referenced = abuf->written;
2868 in_usereg = FLD (in_frm);
2869 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2873 unsigned long long insn_referenced = abuf->written;
2875 in_usereg = FLD (in_frn);
2876 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2880 unsigned long long insn_referenced = abuf->written;
2882 in_usereg = FLD (in_fr0);
2883 cycles += model_u_use_fr_after (current_cpu, idesc, 2, referenced, in_usereg);
2887 unsigned long long insn_referenced = abuf->written;
2888 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
2892 unsigned long long insn_referenced = abuf->written;
2893 cycles += model_u_fpu_after (current_cpu, idesc, 4, referenced);
2897 unsigned long long insn_referenced = abuf->written;
2898 INT out_loadreg = -1;
2899 out_loadreg = FLD (out_frn);
2900 cycles += model_u_set_fr_after (current_cpu, idesc, 5, referenced, out_loadreg);
2907 sh4_sh4_model::model_fmov1_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2909 #define FLD(f) abuf->fields.sfmt_fmov1_compact.f
2910 const sh4_scache* abuf = sem;
2911 const sh4_idesc* idesc = abuf->idesc;
2915 in_usereg = FLD (in_fmovm);
2916 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2919 cycles += model_u_exec_before (current_cpu, idesc, 1);
2922 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
2925 INT out_loadreg = -1;
2926 out_loadreg = FLD (out_fmovn);
2927 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
2934 sh4_sh4_model::model_fmov1_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
2936 #define FLD(f) abuf->fields.sfmt_fmov1_compact.f
2937 const sh4_scache* abuf = sem;
2938 const sh4_idesc* idesc = abuf->idesc;
2942 unsigned long long insn_referenced = abuf->written;
2944 in_usereg = FLD (in_fmovm);
2945 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2949 unsigned long long insn_referenced = abuf->written;
2950 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2954 unsigned long long insn_referenced = abuf->written;
2955 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
2959 unsigned long long insn_referenced = abuf->written;
2960 INT out_loadreg = -1;
2961 out_loadreg = FLD (out_fmovn);
2962 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
2969 sh4_sh4_model::model_fmov2_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
2971 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
2972 const sh4_scache* abuf = sem;
2973 const sh4_idesc* idesc = abuf->idesc;
2977 in_usereg = FLD (in_rm);
2978 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2981 cycles += model_u_exec_before (current_cpu, idesc, 1);
2984 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
2987 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
2990 INT out_loadreg = -1;
2991 out_loadreg = FLD (out_fmovn);
2992 cycles += model_u_load_fr_before (current_cpu, idesc, 4, out_loadreg);
2999 sh4_sh4_model::model_fmov2_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3001 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
3002 const sh4_scache* abuf = sem;
3003 const sh4_idesc* idesc = abuf->idesc;
3007 unsigned long long insn_referenced = abuf->written;
3009 in_usereg = FLD (in_rm);
3010 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3014 unsigned long long insn_referenced = abuf->written;
3015 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3019 unsigned long long insn_referenced = abuf->written;
3020 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
3024 unsigned long long insn_referenced = abuf->written;
3025 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
3029 unsigned long long insn_referenced = abuf->written;
3030 INT out_loadreg = -1;
3031 out_loadreg = FLD (out_fmovn);
3032 cycles += model_u_load_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
3039 sh4_sh4_model::model_fmov3_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3041 #define FLD(f) abuf->fields.sfmt_fmov3_compact.f
3042 const sh4_scache* abuf = sem;
3043 const sh4_idesc* idesc = abuf->idesc;
3047 in_usereg = FLD (in_rm);
3048 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3051 cycles += model_u_exec_before (current_cpu, idesc, 1);
3054 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
3057 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
3060 INT out_loadreg = -1;
3061 out_loadreg = FLD (out_fmovn);
3062 cycles += model_u_load_fr_before (current_cpu, idesc, 4, out_loadreg);
3069 sh4_sh4_model::model_fmov3_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3071 #define FLD(f) abuf->fields.sfmt_fmov3_compact.f
3072 const sh4_scache* abuf = sem;
3073 const sh4_idesc* idesc = abuf->idesc;
3077 unsigned long long insn_referenced = abuf->written;
3079 in_usereg = FLD (in_rm);
3080 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3084 unsigned long long insn_referenced = abuf->written;
3085 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3089 unsigned long long insn_referenced = abuf->written;
3090 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
3094 unsigned long long insn_referenced = abuf->written;
3095 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
3099 unsigned long long insn_referenced = abuf->written;
3100 INT out_loadreg = -1;
3101 out_loadreg = FLD (out_fmovn);
3102 cycles += model_u_load_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
3109 sh4_sh4_model::model_fmov4_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3111 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
3112 const sh4_scache* abuf = sem;
3113 const sh4_idesc* idesc = abuf->idesc;
3117 in_usereg = FLD (in_rm);
3118 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3122 in_usereg = FLD (in_r0);
3123 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3126 cycles += model_u_exec_before (current_cpu, idesc, 2);
3129 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
3132 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
3135 INT out_loadreg = -1;
3136 out_loadreg = FLD (out_fmovn);
3137 cycles += model_u_load_fr_before (current_cpu, idesc, 5, out_loadreg);
3144 sh4_sh4_model::model_fmov4_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3146 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
3147 const sh4_scache* abuf = sem;
3148 const sh4_idesc* idesc = abuf->idesc;
3152 unsigned long long insn_referenced = abuf->written;
3154 in_usereg = FLD (in_rm);
3155 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3159 unsigned long long insn_referenced = abuf->written;
3161 in_usereg = FLD (in_r0);
3162 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3166 unsigned long long insn_referenced = abuf->written;
3167 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3171 unsigned long long insn_referenced = abuf->written;
3172 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
3176 unsigned long long insn_referenced = abuf->written;
3177 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
3181 unsigned long long insn_referenced = abuf->written;
3182 INT out_loadreg = -1;
3183 out_loadreg = FLD (out_fmovn);
3184 cycles += model_u_load_fr_after (current_cpu, idesc, 5, referenced, out_loadreg);
3191 sh4_sh4_model::model_fmov5_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3193 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
3194 const sh4_scache* abuf = sem;
3195 const sh4_idesc* idesc = abuf->idesc;
3199 in_usereg = FLD (in_fmovm);
3200 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3204 in_usereg = FLD (in_rn);
3205 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3208 cycles += model_u_exec_before (current_cpu, idesc, 2);
3211 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
3214 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
3221 sh4_sh4_model::model_fmov5_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3223 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
3224 const sh4_scache* abuf = sem;
3225 const sh4_idesc* idesc = abuf->idesc;
3229 unsigned long long insn_referenced = abuf->written;
3231 in_usereg = FLD (in_fmovm);
3232 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3236 unsigned long long insn_referenced = abuf->written;
3238 in_usereg = FLD (in_rn);
3239 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3243 unsigned long long insn_referenced = abuf->written;
3244 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3248 unsigned long long insn_referenced = abuf->written;
3249 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
3253 unsigned long long insn_referenced = abuf->written;
3254 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
3261 sh4_sh4_model::model_fmov6_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3263 #define FLD(f) abuf->fields.sfmt_fmov6_compact.f
3264 const sh4_scache* abuf = sem;
3265 const sh4_idesc* idesc = abuf->idesc;
3269 in_usereg = FLD (in_fmovm);
3270 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3274 in_usereg = FLD (in_rn);
3275 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3278 cycles += model_u_exec_before (current_cpu, idesc, 2);
3281 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
3284 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
3291 sh4_sh4_model::model_fmov6_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3293 #define FLD(f) abuf->fields.sfmt_fmov6_compact.f
3294 const sh4_scache* abuf = sem;
3295 const sh4_idesc* idesc = abuf->idesc;
3299 unsigned long long insn_referenced = abuf->written;
3301 in_usereg = FLD (in_fmovm);
3302 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3306 unsigned long long insn_referenced = abuf->written;
3308 in_usereg = FLD (in_rn);
3309 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3313 unsigned long long insn_referenced = abuf->written;
3314 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3318 unsigned long long insn_referenced = abuf->written;
3319 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
3323 unsigned long long insn_referenced = abuf->written;
3324 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
3331 sh4_sh4_model::model_fmov7_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3333 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
3334 const sh4_scache* abuf = sem;
3335 const sh4_idesc* idesc = abuf->idesc;
3339 in_usereg = FLD (in_fmovm);
3340 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3344 in_usereg = FLD (in_rn);
3345 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3349 in_usereg = FLD (in_r0);
3350 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
3353 cycles += model_u_exec_before (current_cpu, idesc, 3);
3356 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 4);
3359 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 5);
3366 sh4_sh4_model::model_fmov7_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3368 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
3369 const sh4_scache* abuf = sem;
3370 const sh4_idesc* idesc = abuf->idesc;
3374 unsigned long long insn_referenced = abuf->written;
3376 in_usereg = FLD (in_fmovm);
3377 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3381 unsigned long long insn_referenced = abuf->written;
3383 in_usereg = FLD (in_rn);
3384 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3388 unsigned long long insn_referenced = abuf->written;
3390 in_usereg = FLD (in_r0);
3391 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
3395 unsigned long long insn_referenced = abuf->written;
3396 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
3400 unsigned long long insn_referenced = abuf->written;
3401 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 4, referenced);
3405 unsigned long long insn_referenced = abuf->written;
3406 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 5, referenced);
3413 sh4_sh4_model::model_fmov8_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3415 #define FLD(f) abuf->fields.sfmt_fmov8_compact.f
3416 const sh4_scache* abuf = sem;
3417 const sh4_idesc* idesc = abuf->idesc;
3421 in_usereg = FLD (in_rm);
3422 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3425 cycles += model_u_exec_before (current_cpu, idesc, 1);
3428 cycles += model_u_fpu_before (current_cpu, idesc, 2);
3431 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
3434 INT out_loadreg = -1;
3435 out_loadreg = FLD (out_drn);
3436 cycles += model_u_load_dr_before (current_cpu, idesc, 4, out_loadreg);
3443 sh4_sh4_model::model_fmov8_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3445 #define FLD(f) abuf->fields.sfmt_fmov8_compact.f
3446 const sh4_scache* abuf = sem;
3447 const sh4_idesc* idesc = abuf->idesc;
3451 unsigned long long insn_referenced = abuf->written;
3453 in_usereg = FLD (in_rm);
3454 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3458 unsigned long long insn_referenced = abuf->written;
3459 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3463 unsigned long long insn_referenced = abuf->written;
3464 cycles += model_u_fpu_after (current_cpu, idesc, 2, referenced);
3468 unsigned long long insn_referenced = abuf->written;
3469 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
3473 unsigned long long insn_referenced = abuf->written;
3474 INT out_loadreg = -1;
3475 out_loadreg = FLD (out_drn);
3476 cycles += model_u_load_dr_after (current_cpu, idesc, 4, referenced, out_loadreg);
3483 sh4_sh4_model::model_fmov9_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3485 #define FLD(f) abuf->fields.sfmt_fmov9_compact.f
3486 const sh4_scache* abuf = sem;
3487 const sh4_idesc* idesc = abuf->idesc;
3491 in_usereg = FLD (in_drm);
3492 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3495 cycles += model_u_exec_before (current_cpu, idesc, 1);
3498 cycles += model_u_fpu_before (current_cpu, idesc, 2);
3501 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
3508 sh4_sh4_model::model_fmov9_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3510 #define FLD(f) abuf->fields.sfmt_fmov9_compact.f
3511 const sh4_scache* abuf = sem;
3512 const sh4_idesc* idesc = abuf->idesc;
3516 unsigned long long insn_referenced = abuf->written;
3518 in_usereg = FLD (in_drm);
3519 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3523 unsigned long long insn_referenced = abuf->written;
3524 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3528 unsigned long long insn_referenced = abuf->written;
3529 cycles += model_u_fpu_after (current_cpu, idesc, 2, referenced);
3533 unsigned long long insn_referenced = abuf->written;
3534 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
3541 sh4_sh4_model::model_fmul_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3543 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3544 const sh4_scache* abuf = sem;
3545 const sh4_idesc* idesc = abuf->idesc;
3549 in_usereg = FLD (in_fsdm);
3550 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3554 in_usereg = FLD (in_fsdn);
3555 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
3558 cycles += model_u_exec_before (current_cpu, idesc, 2);
3561 cycles += model_u_fpu_before (current_cpu, idesc, 3);
3564 INT out_loadreg = -1;
3565 out_loadreg = FLD (out_fsdn);
3566 cycles += model_u_set_fr_before (current_cpu, idesc, 4, out_loadreg);
3573 sh4_sh4_model::model_fmul_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3575 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3576 const sh4_scache* abuf = sem;
3577 const sh4_idesc* idesc = abuf->idesc;
3581 unsigned long long insn_referenced = abuf->written;
3583 in_usereg = FLD (in_fsdm);
3584 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3588 unsigned long long insn_referenced = abuf->written;
3590 in_usereg = FLD (in_fsdn);
3591 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
3595 unsigned long long insn_referenced = abuf->written;
3596 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3600 unsigned long long insn_referenced = abuf->written;
3601 cycles += model_u_fpu_after (current_cpu, idesc, 3, referenced);
3605 unsigned long long insn_referenced = abuf->written;
3606 INT out_loadreg = -1;
3607 out_loadreg = FLD (out_fsdn);
3608 cycles += model_u_set_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
3615 sh4_sh4_model::model_fneg_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3617 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3618 const sh4_scache* abuf = sem;
3619 const sh4_idesc* idesc = abuf->idesc;
3623 in_usereg = FLD (in_fsdn);
3624 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3627 cycles += model_u_exec_before (current_cpu, idesc, 1);
3630 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
3633 INT out_loadreg = -1;
3634 out_loadreg = FLD (out_fsdn);
3635 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
3642 sh4_sh4_model::model_fneg_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3644 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3645 const sh4_scache* abuf = sem;
3646 const sh4_idesc* idesc = abuf->idesc;
3650 unsigned long long insn_referenced = abuf->written;
3652 in_usereg = FLD (in_fsdn);
3653 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3657 unsigned long long insn_referenced = abuf->written;
3658 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3662 unsigned long long insn_referenced = abuf->written;
3663 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
3667 unsigned long long insn_referenced = abuf->written;
3668 INT out_loadreg = -1;
3669 out_loadreg = FLD (out_fsdn);
3670 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
3677 sh4_sh4_model::model_frchg_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3679 #define FLD(f) abuf->fields.fmt_empty.f
3680 const sh4_scache* abuf = sem;
3681 const sh4_idesc* idesc = abuf->idesc;
3684 cycles += model_u_exec_before (current_cpu, idesc, 0);
3691 sh4_sh4_model::model_frchg_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3693 #define FLD(f) abuf->fields.fmt_empty.f
3694 const sh4_scache* abuf = sem;
3695 const sh4_idesc* idesc = abuf->idesc;
3699 unsigned long long insn_referenced = abuf->written;
3700 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
3707 sh4_sh4_model::model_fschg_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3709 #define FLD(f) abuf->fields.fmt_empty.f
3710 const sh4_scache* abuf = sem;
3711 const sh4_idesc* idesc = abuf->idesc;
3714 cycles += model_u_exec_before (current_cpu, idesc, 0);
3721 sh4_sh4_model::model_fschg_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3723 #define FLD(f) abuf->fields.fmt_empty.f
3724 const sh4_scache* abuf = sem;
3725 const sh4_idesc* idesc = abuf->idesc;
3729 unsigned long long insn_referenced = abuf->written;
3730 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
3737 sh4_sh4_model::model_fsqrt_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3739 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3740 const sh4_scache* abuf = sem;
3741 const sh4_idesc* idesc = abuf->idesc;
3745 in_usereg = FLD (in_fsdn);
3746 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3749 cycles += model_u_exec_before (current_cpu, idesc, 1);
3752 INT out_loadreg = -1;
3753 out_loadreg = FLD (out_fsdn);
3754 cycles += model_u_fsqrt_before (current_cpu, idesc, 2, out_loadreg);
3761 sh4_sh4_model::model_fsqrt_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3763 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3764 const sh4_scache* abuf = sem;
3765 const sh4_idesc* idesc = abuf->idesc;
3769 unsigned long long insn_referenced = abuf->written;
3771 in_usereg = FLD (in_fsdn);
3772 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3776 unsigned long long insn_referenced = abuf->written;
3777 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3781 unsigned long long insn_referenced = abuf->written;
3782 INT out_loadreg = -1;
3783 out_loadreg = FLD (out_fsdn);
3784 cycles += model_u_fsqrt_after (current_cpu, idesc, 2, referenced, out_loadreg);
3791 sh4_sh4_model::model_fsts_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3793 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
3794 const sh4_scache* abuf = sem;
3795 const sh4_idesc* idesc = abuf->idesc;
3798 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
3801 cycles += model_u_exec_before (current_cpu, idesc, 1);
3804 cycles += model_u_fpu_before (current_cpu, idesc, 2);
3807 INT out_loadreg = -1;
3808 out_loadreg = FLD (out_frn);
3809 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
3816 sh4_sh4_model::model_fsts_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3818 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
3819 const sh4_scache* abuf = sem;
3820 const sh4_idesc* idesc = abuf->idesc;
3824 unsigned long long insn_referenced = abuf->written;
3825 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
3829 unsigned long long insn_referenced = abuf->written;
3830 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3834 unsigned long long insn_referenced = abuf->written;
3835 cycles += model_u_fpu_after (current_cpu, idesc, 2, referenced);
3839 unsigned long long insn_referenced = abuf->written;
3840 INT out_loadreg = -1;
3841 out_loadreg = FLD (out_frn);
3842 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
3849 sh4_sh4_model::model_fsub_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3851 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3852 const sh4_scache* abuf = sem;
3853 const sh4_idesc* idesc = abuf->idesc;
3857 in_usereg = FLD (in_fsdm);
3858 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3862 in_usereg = FLD (in_fsdn);
3863 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
3866 cycles += model_u_exec_before (current_cpu, idesc, 2);
3869 cycles += model_u_fpu_before (current_cpu, idesc, 3);
3872 INT out_loadreg = -1;
3873 out_loadreg = FLD (out_fsdn);
3874 cycles += model_u_set_fr_before (current_cpu, idesc, 4, out_loadreg);
3881 sh4_sh4_model::model_fsub_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3883 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3884 const sh4_scache* abuf = sem;
3885 const sh4_idesc* idesc = abuf->idesc;
3889 unsigned long long insn_referenced = abuf->written;
3891 in_usereg = FLD (in_fsdm);
3892 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3896 unsigned long long insn_referenced = abuf->written;
3898 in_usereg = FLD (in_fsdn);
3899 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
3903 unsigned long long insn_referenced = abuf->written;
3904 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3908 unsigned long long insn_referenced = abuf->written;
3909 cycles += model_u_fpu_after (current_cpu, idesc, 3, referenced);
3913 unsigned long long insn_referenced = abuf->written;
3914 INT out_loadreg = -1;
3915 out_loadreg = FLD (out_fsdn);
3916 cycles += model_u_set_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
3923 sh4_sh4_model::model_ftrc_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3925 #define FLD(f) abuf->fields.sfmt_ftrc_compact.f
3926 const sh4_scache* abuf = sem;
3927 const sh4_idesc* idesc = abuf->idesc;
3931 in_usereg = FLD (in_fsdn);
3932 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3935 cycles += model_u_exec_before (current_cpu, idesc, 1);
3938 cycles += model_u_fpu_before (current_cpu, idesc, 2);
3941 cycles += model_u_set_fpul_before (current_cpu, idesc, 3);
3948 sh4_sh4_model::model_ftrc_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
3950 #define FLD(f) abuf->fields.sfmt_ftrc_compact.f
3951 const sh4_scache* abuf = sem;
3952 const sh4_idesc* idesc = abuf->idesc;
3956 unsigned long long insn_referenced = abuf->written;
3958 in_usereg = FLD (in_fsdn);
3959 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3963 unsigned long long insn_referenced = abuf->written;
3964 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3968 unsigned long long insn_referenced = abuf->written;
3969 cycles += model_u_fpu_after (current_cpu, idesc, 2, referenced);
3973 unsigned long long insn_referenced = abuf->written;
3974 cycles += model_u_set_fpul_after (current_cpu, idesc, 3, referenced);
3981 sh4_sh4_model::model_ftrv_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
3983 #define FLD(f) abuf->fields.sfmt_fipr_compact.f
3984 const sh4_scache* abuf = sem;
3985 const sh4_idesc* idesc = abuf->idesc;
3988 cycles += model_u_exec_before (current_cpu, idesc, 0);
3992 cycles += model_u_ftrv_before (current_cpu, idesc, 1, in_fvn);
3999 sh4_sh4_model::model_ftrv_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4001 #define FLD(f) abuf->fields.sfmt_fipr_compact.f
4002 const sh4_scache* abuf = sem;
4003 const sh4_idesc* idesc = abuf->idesc;
4007 unsigned long long insn_referenced = abuf->written;
4008 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
4012 unsigned long long insn_referenced = abuf->written;
4014 cycles += model_u_ftrv_after (current_cpu, idesc, 1, referenced, in_fvn);
4021 sh4_sh4_model::model_jmp_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4023 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4024 const sh4_scache* abuf = sem;
4025 const sh4_idesc* idesc = abuf->idesc;
4028 cycles += model_u_jmp_before (current_cpu, idesc, 0);
4035 sh4_sh4_model::model_jmp_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4037 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4038 const sh4_scache* abuf = sem;
4039 const sh4_idesc* idesc = abuf->idesc;
4043 unsigned long long insn_referenced = abuf->written;
4044 referenced |= 1 << 0;
4045 cycles += model_u_jmp_after (current_cpu, idesc, 0, referenced);
4052 sh4_sh4_model::model_jsr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4054 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4055 const sh4_scache* abuf = sem;
4056 const sh4_idesc* idesc = abuf->idesc;
4059 cycles += model_u_jsr_before (current_cpu, idesc, 0);
4066 sh4_sh4_model::model_jsr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4068 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4069 const sh4_scache* abuf = sem;
4070 const sh4_idesc* idesc = abuf->idesc;
4074 unsigned long long insn_referenced = abuf->written;
4075 referenced |= 1 << 0;
4076 cycles += model_u_jsr_after (current_cpu, idesc, 0, referenced);
4083 sh4_sh4_model::model_ldc_gbr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4085 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4086 const sh4_scache* abuf = sem;
4087 const sh4_idesc* idesc = abuf->idesc;
4091 in_usereg = FLD (in_rn);
4092 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4095 cycles += model_u_ldc_gbr_before (current_cpu, idesc, 1);
4102 sh4_sh4_model::model_ldc_gbr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4104 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4105 const sh4_scache* abuf = sem;
4106 const sh4_idesc* idesc = abuf->idesc;
4110 unsigned long long insn_referenced = abuf->written;
4112 in_usereg = FLD (in_rn);
4113 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4117 unsigned long long insn_referenced = abuf->written;
4118 cycles += model_u_ldc_gbr_after (current_cpu, idesc, 1, referenced);
4125 sh4_sh4_model::model_ldc_vbr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4127 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4128 const sh4_scache* abuf = sem;
4129 const sh4_idesc* idesc = abuf->idesc;
4133 in_usereg = FLD (in_rn);
4134 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4137 cycles += model_u_exec_before (current_cpu, idesc, 1);
4144 sh4_sh4_model::model_ldc_vbr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4146 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4147 const sh4_scache* abuf = sem;
4148 const sh4_idesc* idesc = abuf->idesc;
4152 unsigned long long insn_referenced = abuf->written;
4154 in_usereg = FLD (in_rn);
4155 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4159 unsigned long long insn_referenced = abuf->written;
4160 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4167 sh4_sh4_model::model_ldc_sr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4169 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4170 const sh4_scache* abuf = sem;
4171 const sh4_idesc* idesc = abuf->idesc;
4175 in_usereg = FLD (in_rn);
4176 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4179 cycles += model_u_ldc_sr_before (current_cpu, idesc, 1);
4186 sh4_sh4_model::model_ldc_sr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4188 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4189 const sh4_scache* abuf = sem;
4190 const sh4_idesc* idesc = abuf->idesc;
4194 unsigned long long insn_referenced = abuf->written;
4196 in_usereg = FLD (in_rn);
4197 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4201 unsigned long long insn_referenced = abuf->written;
4202 cycles += model_u_ldc_sr_after (current_cpu, idesc, 1, referenced);
4209 sh4_sh4_model::model_ldcl_gbr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4211 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4212 const sh4_scache* abuf = sem;
4213 const sh4_idesc* idesc = abuf->idesc;
4217 in_usereg = FLD (in_rn);
4218 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4221 cycles += model_u_ldcl_before (current_cpu, idesc, 1);
4224 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4227 cycles += model_u_load_gbr_before (current_cpu, idesc, 3);
4234 sh4_sh4_model::model_ldcl_gbr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4236 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4237 const sh4_scache* abuf = sem;
4238 const sh4_idesc* idesc = abuf->idesc;
4242 unsigned long long insn_referenced = abuf->written;
4244 in_usereg = FLD (in_rn);
4245 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4249 unsigned long long insn_referenced = abuf->written;
4250 cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
4254 unsigned long long insn_referenced = abuf->written;
4255 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4259 unsigned long long insn_referenced = abuf->written;
4260 cycles += model_u_load_gbr_after (current_cpu, idesc, 3, referenced);
4267 sh4_sh4_model::model_ldcl_vbr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4269 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4270 const sh4_scache* abuf = sem;
4271 const sh4_idesc* idesc = abuf->idesc;
4275 in_usereg = FLD (in_rn);
4276 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4279 cycles += model_u_ldcl_vbr_before (current_cpu, idesc, 1);
4282 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4285 cycles += model_u_load_vbr_before (current_cpu, idesc, 3);
4292 sh4_sh4_model::model_ldcl_vbr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4294 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4295 const sh4_scache* abuf = sem;
4296 const sh4_idesc* idesc = abuf->idesc;
4300 unsigned long long insn_referenced = abuf->written;
4302 in_usereg = FLD (in_rn);
4303 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4307 unsigned long long insn_referenced = abuf->written;
4308 cycles += model_u_ldcl_vbr_after (current_cpu, idesc, 1, referenced);
4312 unsigned long long insn_referenced = abuf->written;
4313 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4317 unsigned long long insn_referenced = abuf->written;
4318 cycles += model_u_load_vbr_after (current_cpu, idesc, 3, referenced);
4325 sh4_sh4_model::model_lds_fpscr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4327 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4328 const sh4_scache* abuf = sem;
4329 const sh4_idesc* idesc = abuf->idesc;
4333 in_usereg = FLD (in_rn);
4334 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4337 cycles += model_u_lds_fpscr_before (current_cpu, idesc, 1);
4344 sh4_sh4_model::model_lds_fpscr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4346 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4347 const sh4_scache* abuf = sem;
4348 const sh4_idesc* idesc = abuf->idesc;
4352 unsigned long long insn_referenced = abuf->written;
4354 in_usereg = FLD (in_rn);
4355 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4359 unsigned long long insn_referenced = abuf->written;
4360 cycles += model_u_lds_fpscr_after (current_cpu, idesc, 1, referenced);
4367 sh4_sh4_model::model_ldsl_fpscr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4369 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4370 const sh4_scache* abuf = sem;
4371 const sh4_idesc* idesc = abuf->idesc;
4375 in_usereg = FLD (in_rn);
4376 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4379 cycles += model_u_lds_fpscr_before (current_cpu, idesc, 1);
4382 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 2);
4385 cycles += model_u_ldsl_fpscr_before (current_cpu, idesc, 3);
4392 sh4_sh4_model::model_ldsl_fpscr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4394 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4395 const sh4_scache* abuf = sem;
4396 const sh4_idesc* idesc = abuf->idesc;
4400 unsigned long long insn_referenced = abuf->written;
4402 in_usereg = FLD (in_rn);
4403 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4407 unsigned long long insn_referenced = abuf->written;
4408 cycles += model_u_lds_fpscr_after (current_cpu, idesc, 1, referenced);
4412 unsigned long long insn_referenced = abuf->written;
4413 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 2, referenced);
4417 unsigned long long insn_referenced = abuf->written;
4418 cycles += model_u_ldsl_fpscr_after (current_cpu, idesc, 3, referenced);
4425 sh4_sh4_model::model_lds_fpul_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4427 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
4428 const sh4_scache* abuf = sem;
4429 const sh4_idesc* idesc = abuf->idesc;
4433 in_usereg = FLD (in_rn);
4434 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4437 cycles += model_u_exec_before (current_cpu, idesc, 1);
4440 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
4443 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
4446 cycles += model_u_load_fpul_before (current_cpu, idesc, 4);
4453 sh4_sh4_model::model_lds_fpul_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4455 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
4456 const sh4_scache* abuf = sem;
4457 const sh4_idesc* idesc = abuf->idesc;
4461 unsigned long long insn_referenced = abuf->written;
4463 in_usereg = FLD (in_rn);
4464 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4468 unsigned long long insn_referenced = abuf->written;
4469 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4473 unsigned long long insn_referenced = abuf->written;
4474 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
4478 unsigned long long insn_referenced = abuf->written;
4479 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
4483 unsigned long long insn_referenced = abuf->written;
4484 cycles += model_u_load_fpul_after (current_cpu, idesc, 4, referenced);
4491 sh4_sh4_model::model_ldsl_fpul_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4493 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
4494 const sh4_scache* abuf = sem;
4495 const sh4_idesc* idesc = abuf->idesc;
4499 in_usereg = FLD (in_rn);
4500 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4503 cycles += model_u_exec_before (current_cpu, idesc, 1);
4506 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
4509 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
4512 cycles += model_u_load_fpul_before (current_cpu, idesc, 4);
4519 sh4_sh4_model::model_ldsl_fpul_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4521 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
4522 const sh4_scache* abuf = sem;
4523 const sh4_idesc* idesc = abuf->idesc;
4527 unsigned long long insn_referenced = abuf->written;
4529 in_usereg = FLD (in_rn);
4530 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4534 unsigned long long insn_referenced = abuf->written;
4535 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4539 unsigned long long insn_referenced = abuf->written;
4540 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
4544 unsigned long long insn_referenced = abuf->written;
4545 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
4549 unsigned long long insn_referenced = abuf->written;
4550 cycles += model_u_load_fpul_after (current_cpu, idesc, 4, referenced);
4557 sh4_sh4_model::model_lds_mach_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4559 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4560 const sh4_scache* abuf = sem;
4561 const sh4_idesc* idesc = abuf->idesc;
4565 in_usereg = FLD (in_rn);
4566 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4569 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4572 cycles += model_u_exec_before (current_cpu, idesc, 2);
4575 cycles += model_u_set_mac_before (current_cpu, idesc, 3);
4582 sh4_sh4_model::model_lds_mach_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4584 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4585 const sh4_scache* abuf = sem;
4586 const sh4_idesc* idesc = abuf->idesc;
4590 unsigned long long insn_referenced = abuf->written;
4592 in_usereg = FLD (in_rn);
4593 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4597 unsigned long long insn_referenced = abuf->written;
4598 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4602 unsigned long long insn_referenced = abuf->written;
4603 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4607 unsigned long long insn_referenced = abuf->written;
4608 cycles += model_u_set_mac_after (current_cpu, idesc, 3, referenced);
4615 sh4_sh4_model::model_ldsl_mach_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4617 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4618 const sh4_scache* abuf = sem;
4619 const sh4_idesc* idesc = abuf->idesc;
4623 in_usereg = FLD (in_rn);
4624 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4627 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4630 cycles += model_u_exec_before (current_cpu, idesc, 2);
4633 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4636 cycles += model_u_load_mac_before (current_cpu, idesc, 4);
4643 sh4_sh4_model::model_ldsl_mach_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4645 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4646 const sh4_scache* abuf = sem;
4647 const sh4_idesc* idesc = abuf->idesc;
4651 unsigned long long insn_referenced = abuf->written;
4653 in_usereg = FLD (in_rn);
4654 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4658 unsigned long long insn_referenced = abuf->written;
4659 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4663 unsigned long long insn_referenced = abuf->written;
4664 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4668 unsigned long long insn_referenced = abuf->written;
4669 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4673 unsigned long long insn_referenced = abuf->written;
4674 cycles += model_u_load_mac_after (current_cpu, idesc, 4, referenced);
4681 sh4_sh4_model::model_lds_macl_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4683 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4684 const sh4_scache* abuf = sem;
4685 const sh4_idesc* idesc = abuf->idesc;
4689 in_usereg = FLD (in_rn);
4690 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4693 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4696 cycles += model_u_exec_before (current_cpu, idesc, 2);
4699 cycles += model_u_set_mac_before (current_cpu, idesc, 3);
4706 sh4_sh4_model::model_lds_macl_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4708 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4709 const sh4_scache* abuf = sem;
4710 const sh4_idesc* idesc = abuf->idesc;
4714 unsigned long long insn_referenced = abuf->written;
4716 in_usereg = FLD (in_rn);
4717 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4721 unsigned long long insn_referenced = abuf->written;
4722 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4726 unsigned long long insn_referenced = abuf->written;
4727 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4731 unsigned long long insn_referenced = abuf->written;
4732 cycles += model_u_set_mac_after (current_cpu, idesc, 3, referenced);
4739 sh4_sh4_model::model_ldsl_macl_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4741 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4742 const sh4_scache* abuf = sem;
4743 const sh4_idesc* idesc = abuf->idesc;
4747 in_usereg = FLD (in_rn);
4748 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4751 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4754 cycles += model_u_exec_before (current_cpu, idesc, 2);
4757 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4760 cycles += model_u_load_mac_before (current_cpu, idesc, 4);
4767 sh4_sh4_model::model_ldsl_macl_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4769 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4770 const sh4_scache* abuf = sem;
4771 const sh4_idesc* idesc = abuf->idesc;
4775 unsigned long long insn_referenced = abuf->written;
4777 in_usereg = FLD (in_rn);
4778 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4782 unsigned long long insn_referenced = abuf->written;
4783 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4787 unsigned long long insn_referenced = abuf->written;
4788 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4792 unsigned long long insn_referenced = abuf->written;
4793 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4797 unsigned long long insn_referenced = abuf->written;
4798 cycles += model_u_load_mac_after (current_cpu, idesc, 4, referenced);
4805 sh4_sh4_model::model_lds_pr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4807 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4808 const sh4_scache* abuf = sem;
4809 const sh4_idesc* idesc = abuf->idesc;
4813 in_usereg = FLD (in_rn);
4814 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4817 cycles += model_u_lds_pr_before (current_cpu, idesc, 1);
4824 sh4_sh4_model::model_lds_pr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4826 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4827 const sh4_scache* abuf = sem;
4828 const sh4_idesc* idesc = abuf->idesc;
4832 unsigned long long insn_referenced = abuf->written;
4834 in_usereg = FLD (in_rn);
4835 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4839 unsigned long long insn_referenced = abuf->written;
4840 cycles += model_u_lds_pr_after (current_cpu, idesc, 1, referenced);
4847 sh4_sh4_model::model_ldsl_pr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4849 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4850 const sh4_scache* abuf = sem;
4851 const sh4_idesc* idesc = abuf->idesc;
4855 in_usereg = FLD (in_rn);
4856 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4859 cycles += model_u_lds_pr_before (current_cpu, idesc, 1);
4862 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4865 cycles += model_u_load_pr_before (current_cpu, idesc, 3);
4872 sh4_sh4_model::model_ldsl_pr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4874 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4875 const sh4_scache* abuf = sem;
4876 const sh4_idesc* idesc = abuf->idesc;
4880 unsigned long long insn_referenced = abuf->written;
4882 in_usereg = FLD (in_rn);
4883 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4887 unsigned long long insn_referenced = abuf->written;
4888 cycles += model_u_lds_pr_after (current_cpu, idesc, 1, referenced);
4892 unsigned long long insn_referenced = abuf->written;
4893 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4897 unsigned long long insn_referenced = abuf->written;
4898 cycles += model_u_load_pr_after (current_cpu, idesc, 3, referenced);
4905 sh4_sh4_model::model_macl_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4907 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4908 const sh4_scache* abuf = sem;
4909 const sh4_idesc* idesc = abuf->idesc;
4913 in_usereg = FLD (in_rn);
4914 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4918 in_usereg = FLD (in_rm);
4919 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4922 cycles += model_u_macl_before (current_cpu, idesc, 2);
4929 sh4_sh4_model::model_macl_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4931 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4932 const sh4_scache* abuf = sem;
4933 const sh4_idesc* idesc = abuf->idesc;
4937 unsigned long long insn_referenced = abuf->written;
4939 in_usereg = FLD (in_rn);
4940 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4944 unsigned long long insn_referenced = abuf->written;
4946 in_usereg = FLD (in_rm);
4947 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4951 unsigned long long insn_referenced = abuf->written;
4952 cycles += model_u_macl_after (current_cpu, idesc, 2, referenced);
4959 sh4_sh4_model::model_macw_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
4961 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4962 const sh4_scache* abuf = sem;
4963 const sh4_idesc* idesc = abuf->idesc;
4967 in_usereg = FLD (in_rn);
4968 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4972 in_usereg = FLD (in_rm);
4973 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4976 cycles += model_u_macw_before (current_cpu, idesc, 2);
4983 sh4_sh4_model::model_macw_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
4985 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4986 const sh4_scache* abuf = sem;
4987 const sh4_idesc* idesc = abuf->idesc;
4991 unsigned long long insn_referenced = abuf->written;
4993 in_usereg = FLD (in_rn);
4994 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4998 unsigned long long insn_referenced = abuf->written;
5000 in_usereg = FLD (in_rm);
5001 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5005 unsigned long long insn_referenced = abuf->written;
5006 cycles += model_u_macw_after (current_cpu, idesc, 2, referenced);
5013 sh4_sh4_model::model_mov_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5015 #define FLD(f) abuf->fields.sfmt_and_compact.f
5016 const sh4_scache* abuf = sem;
5017 const sh4_idesc* idesc = abuf->idesc;
5021 in_usereg = FLD (in_rm64);
5022 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5025 cycles += model_u_exec_before (current_cpu, idesc, 1);
5032 sh4_sh4_model::model_mov_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5034 #define FLD(f) abuf->fields.sfmt_and_compact.f
5035 const sh4_scache* abuf = sem;
5036 const sh4_idesc* idesc = abuf->idesc;
5040 unsigned long long insn_referenced = abuf->written;
5042 in_usereg = FLD (in_rm64);
5043 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5047 unsigned long long insn_referenced = abuf->written;
5048 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5055 sh4_sh4_model::model_movi_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5057 #define FLD(f) abuf->fields.sfmt_addi_compact.f
5058 const sh4_scache* abuf = sem;
5059 const sh4_idesc* idesc = abuf->idesc;
5062 cycles += model_u_exec_before (current_cpu, idesc, 0);
5069 sh4_sh4_model::model_movi_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5071 #define FLD(f) abuf->fields.sfmt_addi_compact.f
5072 const sh4_scache* abuf = sem;
5073 const sh4_idesc* idesc = abuf->idesc;
5077 unsigned long long insn_referenced = abuf->written;
5078 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5085 sh4_sh4_model::model_movi20_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5087 #define FLD(f) abuf->fields.sfmt_movi20_compact.f
5088 const sh4_scache* abuf = sem;
5089 const sh4_idesc* idesc = abuf->idesc;
5092 cycles += model_u_exec_before (current_cpu, idesc, 0);
5099 sh4_sh4_model::model_movi20_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5101 #define FLD(f) abuf->fields.sfmt_movi20_compact.f
5102 const sh4_scache* abuf = sem;
5103 const sh4_idesc* idesc = abuf->idesc;
5107 unsigned long long insn_referenced = abuf->written;
5108 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5115 sh4_sh4_model::model_movb1_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5117 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
5118 const sh4_scache* abuf = sem;
5119 const sh4_idesc* idesc = abuf->idesc;
5123 in_usereg = FLD (in_rn);
5124 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5128 in_usereg = FLD (in_rm);
5129 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5132 cycles += model_u_exec_before (current_cpu, idesc, 2);
5135 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5142 sh4_sh4_model::model_movb1_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5144 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
5145 const sh4_scache* abuf = sem;
5146 const sh4_idesc* idesc = abuf->idesc;
5150 unsigned long long insn_referenced = abuf->written;
5152 in_usereg = FLD (in_rn);
5153 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5157 unsigned long long insn_referenced = abuf->written;
5159 in_usereg = FLD (in_rm);
5160 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5164 unsigned long long insn_referenced = abuf->written;
5165 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5169 unsigned long long insn_referenced = abuf->written;
5170 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5177 sh4_sh4_model::model_movb2_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5179 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5180 const sh4_scache* abuf = sem;
5181 const sh4_idesc* idesc = abuf->idesc;
5185 in_usereg = FLD (in_rn);
5186 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5190 in_usereg = FLD (in_rm);
5191 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5194 cycles += model_u_exec_before (current_cpu, idesc, 2);
5197 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5204 sh4_sh4_model::model_movb2_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5206 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5207 const sh4_scache* abuf = sem;
5208 const sh4_idesc* idesc = abuf->idesc;
5212 unsigned long long insn_referenced = abuf->written;
5214 in_usereg = FLD (in_rn);
5215 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5219 unsigned long long insn_referenced = abuf->written;
5221 in_usereg = FLD (in_rm);
5222 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5226 unsigned long long insn_referenced = abuf->written;
5227 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5231 unsigned long long insn_referenced = abuf->written;
5232 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5239 sh4_sh4_model::model_movb3_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5241 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
5242 const sh4_scache* abuf = sem;
5243 const sh4_idesc* idesc = abuf->idesc;
5247 in_usereg = FLD (in_rn);
5248 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5252 in_usereg = FLD (in_rm);
5253 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5257 in_usereg = FLD (in_r0);
5258 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
5261 cycles += model_u_exec_before (current_cpu, idesc, 3);
5264 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
5271 sh4_sh4_model::model_movb3_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5273 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
5274 const sh4_scache* abuf = sem;
5275 const sh4_idesc* idesc = abuf->idesc;
5279 unsigned long long insn_referenced = abuf->written;
5281 in_usereg = FLD (in_rn);
5282 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5286 unsigned long long insn_referenced = abuf->written;
5288 in_usereg = FLD (in_rm);
5289 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5293 unsigned long long insn_referenced = abuf->written;
5295 in_usereg = FLD (in_r0);
5296 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
5300 unsigned long long insn_referenced = abuf->written;
5301 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
5305 unsigned long long insn_referenced = abuf->written;
5306 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
5313 sh4_sh4_model::model_movb4_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5315 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5316 const sh4_scache* abuf = sem;
5317 const sh4_idesc* idesc = abuf->idesc;
5320 cycles += model_u_exec_before (current_cpu, idesc, 0);
5323 cycles += model_u_sx_before (current_cpu, idesc, 1);
5326 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5333 sh4_sh4_model::model_movb4_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5335 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5336 const sh4_scache* abuf = sem;
5337 const sh4_idesc* idesc = abuf->idesc;
5341 unsigned long long insn_referenced = abuf->written;
5342 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5346 unsigned long long insn_referenced = abuf->written;
5347 cycles += model_u_sx_after (current_cpu, idesc, 1, referenced);
5351 unsigned long long insn_referenced = abuf->written;
5352 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5359 sh4_sh4_model::model_movb5_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5361 #define FLD(f) abuf->fields.sfmt_movb5_compact.f
5362 const sh4_scache* abuf = sem;
5363 const sh4_idesc* idesc = abuf->idesc;
5367 in_usereg = FLD (in_r0);
5368 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5372 in_usereg = FLD (in_rm);
5373 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5376 cycles += model_u_exec_before (current_cpu, idesc, 2);
5379 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5386 sh4_sh4_model::model_movb5_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5388 #define FLD(f) abuf->fields.sfmt_movb5_compact.f
5389 const sh4_scache* abuf = sem;
5390 const sh4_idesc* idesc = abuf->idesc;
5394 unsigned long long insn_referenced = abuf->written;
5396 in_usereg = FLD (in_r0);
5397 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5401 unsigned long long insn_referenced = abuf->written;
5403 in_usereg = FLD (in_rm);
5404 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5408 unsigned long long insn_referenced = abuf->written;
5409 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5413 unsigned long long insn_referenced = abuf->written;
5414 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5421 sh4_sh4_model::model_movb6_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5423 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
5424 const sh4_scache* abuf = sem;
5425 const sh4_idesc* idesc = abuf->idesc;
5429 in_usereg = FLD (in_rm);
5430 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5433 cycles += model_u_exec_before (current_cpu, idesc, 1);
5436 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5439 INT out_loadreg = -1;
5440 out_loadreg = FLD (out_rn);
5441 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5448 sh4_sh4_model::model_movb6_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5450 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
5451 const sh4_scache* abuf = sem;
5452 const sh4_idesc* idesc = abuf->idesc;
5456 unsigned long long insn_referenced = abuf->written;
5458 in_usereg = FLD (in_rm);
5459 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5463 unsigned long long insn_referenced = abuf->written;
5464 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5468 unsigned long long insn_referenced = abuf->written;
5469 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5473 unsigned long long insn_referenced = abuf->written;
5474 INT out_loadreg = -1;
5475 out_loadreg = FLD (out_rn);
5476 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5483 sh4_sh4_model::model_movb7_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5485 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5486 const sh4_scache* abuf = sem;
5487 const sh4_idesc* idesc = abuf->idesc;
5491 in_usereg = FLD (in_rm);
5492 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5495 cycles += model_u_exec_before (current_cpu, idesc, 1);
5498 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5501 INT out_loadreg = -1;
5502 out_loadreg = FLD (out_rn);
5503 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5510 sh4_sh4_model::model_movb7_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5512 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5513 const sh4_scache* abuf = sem;
5514 const sh4_idesc* idesc = abuf->idesc;
5518 unsigned long long insn_referenced = abuf->written;
5520 in_usereg = FLD (in_rm);
5521 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5525 unsigned long long insn_referenced = abuf->written;
5526 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5530 unsigned long long insn_referenced = abuf->written;
5531 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5535 unsigned long long insn_referenced = abuf->written;
5536 INT out_loadreg = -1;
5537 out_loadreg = FLD (out_rn);
5538 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5545 sh4_sh4_model::model_movb8_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5547 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
5548 const sh4_scache* abuf = sem;
5549 const sh4_idesc* idesc = abuf->idesc;
5553 in_usereg = FLD (in_rm);
5554 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5558 in_usereg = FLD (in_r0);
5559 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5562 cycles += model_u_exec_before (current_cpu, idesc, 2);
5565 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5568 INT out_loadreg = -1;
5569 out_loadreg = FLD (out_rn);
5570 cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
5577 sh4_sh4_model::model_movb8_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5579 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
5580 const sh4_scache* abuf = sem;
5581 const sh4_idesc* idesc = abuf->idesc;
5585 unsigned long long insn_referenced = abuf->written;
5587 in_usereg = FLD (in_rm);
5588 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5592 unsigned long long insn_referenced = abuf->written;
5594 in_usereg = FLD (in_r0);
5595 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5599 unsigned long long insn_referenced = abuf->written;
5600 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5604 unsigned long long insn_referenced = abuf->written;
5605 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5609 unsigned long long insn_referenced = abuf->written;
5610 INT out_loadreg = -1;
5611 out_loadreg = FLD (out_rn);
5612 cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
5619 sh4_sh4_model::model_movb9_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5621 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5622 const sh4_scache* abuf = sem;
5623 const sh4_idesc* idesc = abuf->idesc;
5626 cycles += model_u_exec_before (current_cpu, idesc, 0);
5629 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
5632 INT out_loadreg = -1;
5633 out_loadreg = FLD (out_r0);
5634 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
5641 sh4_sh4_model::model_movb9_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5643 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5644 const sh4_scache* abuf = sem;
5645 const sh4_idesc* idesc = abuf->idesc;
5649 unsigned long long insn_referenced = abuf->written;
5650 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5654 unsigned long long insn_referenced = abuf->written;
5655 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
5659 unsigned long long insn_referenced = abuf->written;
5660 INT out_loadreg = -1;
5661 out_loadreg = FLD (out_r0);
5662 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
5669 sh4_sh4_model::model_movb10_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5671 #define FLD(f) abuf->fields.sfmt_movb10_compact.f
5672 const sh4_scache* abuf = sem;
5673 const sh4_idesc* idesc = abuf->idesc;
5677 in_usereg = FLD (in_rm);
5678 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5681 cycles += model_u_exec_before (current_cpu, idesc, 1);
5684 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5687 INT out_loadreg = -1;
5688 out_loadreg = FLD (out_r0);
5689 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5696 sh4_sh4_model::model_movb10_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5698 #define FLD(f) abuf->fields.sfmt_movb10_compact.f
5699 const sh4_scache* abuf = sem;
5700 const sh4_idesc* idesc = abuf->idesc;
5704 unsigned long long insn_referenced = abuf->written;
5706 in_usereg = FLD (in_rm);
5707 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5711 unsigned long long insn_referenced = abuf->written;
5712 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5716 unsigned long long insn_referenced = abuf->written;
5717 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5721 unsigned long long insn_referenced = abuf->written;
5722 INT out_loadreg = -1;
5723 out_loadreg = FLD (out_r0);
5724 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5731 sh4_sh4_model::model_movl1_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5733 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
5734 const sh4_scache* abuf = sem;
5735 const sh4_idesc* idesc = abuf->idesc;
5739 in_usereg = FLD (in_rm);
5740 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5744 in_usereg = FLD (in_rn);
5745 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5748 cycles += model_u_exec_before (current_cpu, idesc, 2);
5751 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5758 sh4_sh4_model::model_movl1_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5760 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
5761 const sh4_scache* abuf = sem;
5762 const sh4_idesc* idesc = abuf->idesc;
5766 unsigned long long insn_referenced = abuf->written;
5768 in_usereg = FLD (in_rm);
5769 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5773 unsigned long long insn_referenced = abuf->written;
5775 in_usereg = FLD (in_rn);
5776 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5780 unsigned long long insn_referenced = abuf->written;
5781 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5785 unsigned long long insn_referenced = abuf->written;
5786 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5793 sh4_sh4_model::model_movl2_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5795 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5796 const sh4_scache* abuf = sem;
5797 const sh4_idesc* idesc = abuf->idesc;
5801 in_usereg = FLD (in_rm);
5802 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5806 in_usereg = FLD (in_rn);
5807 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5810 cycles += model_u_exec_before (current_cpu, idesc, 2);
5813 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5820 sh4_sh4_model::model_movl2_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5822 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5823 const sh4_scache* abuf = sem;
5824 const sh4_idesc* idesc = abuf->idesc;
5828 unsigned long long insn_referenced = abuf->written;
5830 in_usereg = FLD (in_rm);
5831 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5835 unsigned long long insn_referenced = abuf->written;
5837 in_usereg = FLD (in_rn);
5838 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5842 unsigned long long insn_referenced = abuf->written;
5843 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5847 unsigned long long insn_referenced = abuf->written;
5848 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5855 sh4_sh4_model::model_movl3_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5857 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
5858 const sh4_scache* abuf = sem;
5859 const sh4_idesc* idesc = abuf->idesc;
5863 in_usereg = FLD (in_rm);
5864 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5868 in_usereg = FLD (in_rn);
5869 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5873 in_usereg = FLD (in_r0);
5874 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
5877 cycles += model_u_exec_before (current_cpu, idesc, 3);
5880 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
5887 sh4_sh4_model::model_movl3_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5889 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
5890 const sh4_scache* abuf = sem;
5891 const sh4_idesc* idesc = abuf->idesc;
5895 unsigned long long insn_referenced = abuf->written;
5897 in_usereg = FLD (in_rm);
5898 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5902 unsigned long long insn_referenced = abuf->written;
5904 in_usereg = FLD (in_rn);
5905 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5909 unsigned long long insn_referenced = abuf->written;
5911 in_usereg = FLD (in_r0);
5912 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
5916 unsigned long long insn_referenced = abuf->written;
5917 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
5921 unsigned long long insn_referenced = abuf->written;
5922 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
5929 sh4_sh4_model::model_movl4_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5931 #define FLD(f) abuf->fields.sfmt_movl4_compact.f
5932 const sh4_scache* abuf = sem;
5933 const sh4_idesc* idesc = abuf->idesc;
5937 in_usereg = FLD (in_r0);
5938 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5941 cycles += model_u_exec_before (current_cpu, idesc, 1);
5944 cycles += model_u_sx_before (current_cpu, idesc, 2);
5947 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5954 sh4_sh4_model::model_movl4_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
5956 #define FLD(f) abuf->fields.sfmt_movl4_compact.f
5957 const sh4_scache* abuf = sem;
5958 const sh4_idesc* idesc = abuf->idesc;
5962 unsigned long long insn_referenced = abuf->written;
5964 in_usereg = FLD (in_r0);
5965 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5969 unsigned long long insn_referenced = abuf->written;
5970 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5974 unsigned long long insn_referenced = abuf->written;
5975 cycles += model_u_sx_after (current_cpu, idesc, 2, referenced);
5979 unsigned long long insn_referenced = abuf->written;
5980 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5987 sh4_sh4_model::model_movl5_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
5989 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5990 const sh4_scache* abuf = sem;
5991 const sh4_idesc* idesc = abuf->idesc;
5995 in_usereg = FLD (in_rm);
5996 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6000 in_usereg = FLD (in_rn);
6001 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6004 cycles += model_u_exec_before (current_cpu, idesc, 2);
6007 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6014 sh4_sh4_model::model_movl5_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6016 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6017 const sh4_scache* abuf = sem;
6018 const sh4_idesc* idesc = abuf->idesc;
6022 unsigned long long insn_referenced = abuf->written;
6024 in_usereg = FLD (in_rm);
6025 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6029 unsigned long long insn_referenced = abuf->written;
6031 in_usereg = FLD (in_rn);
6032 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6036 unsigned long long insn_referenced = abuf->written;
6037 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6041 unsigned long long insn_referenced = abuf->written;
6042 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6049 sh4_sh4_model::model_movl6_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6051 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
6052 const sh4_scache* abuf = sem;
6053 const sh4_idesc* idesc = abuf->idesc;
6057 in_usereg = FLD (in_rm);
6058 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6061 cycles += model_u_exec_before (current_cpu, idesc, 1);
6064 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6067 INT out_loadreg = -1;
6068 out_loadreg = FLD (out_rn);
6069 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6076 sh4_sh4_model::model_movl6_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6078 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
6079 const sh4_scache* abuf = sem;
6080 const sh4_idesc* idesc = abuf->idesc;
6084 unsigned long long insn_referenced = abuf->written;
6086 in_usereg = FLD (in_rm);
6087 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6091 unsigned long long insn_referenced = abuf->written;
6092 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6096 unsigned long long insn_referenced = abuf->written;
6097 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6101 unsigned long long insn_referenced = abuf->written;
6102 INT out_loadreg = -1;
6103 out_loadreg = FLD (out_rn);
6104 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6111 sh4_sh4_model::model_movl7_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6113 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6114 const sh4_scache* abuf = sem;
6115 const sh4_idesc* idesc = abuf->idesc;
6119 in_usereg = FLD (in_rm);
6120 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6123 cycles += model_u_exec_before (current_cpu, idesc, 1);
6126 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6129 INT out_loadreg = -1;
6130 out_loadreg = FLD (out_rn);
6131 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6138 sh4_sh4_model::model_movl7_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6140 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6141 const sh4_scache* abuf = sem;
6142 const sh4_idesc* idesc = abuf->idesc;
6146 unsigned long long insn_referenced = abuf->written;
6148 in_usereg = FLD (in_rm);
6149 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6153 unsigned long long insn_referenced = abuf->written;
6154 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6158 unsigned long long insn_referenced = abuf->written;
6159 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6163 unsigned long long insn_referenced = abuf->written;
6164 INT out_loadreg = -1;
6165 out_loadreg = FLD (out_rn);
6166 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6173 sh4_sh4_model::model_movl8_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6175 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
6176 const sh4_scache* abuf = sem;
6177 const sh4_idesc* idesc = abuf->idesc;
6181 in_usereg = FLD (in_rm);
6182 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6186 in_usereg = FLD (in_r0);
6187 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6190 cycles += model_u_exec_before (current_cpu, idesc, 2);
6193 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6196 INT out_loadreg = -1;
6197 out_loadreg = FLD (out_rn);
6198 cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
6205 sh4_sh4_model::model_movl8_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6207 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
6208 const sh4_scache* abuf = sem;
6209 const sh4_idesc* idesc = abuf->idesc;
6213 unsigned long long insn_referenced = abuf->written;
6215 in_usereg = FLD (in_rm);
6216 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6220 unsigned long long insn_referenced = abuf->written;
6222 in_usereg = FLD (in_r0);
6223 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6227 unsigned long long insn_referenced = abuf->written;
6228 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6232 unsigned long long insn_referenced = abuf->written;
6233 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6237 unsigned long long insn_referenced = abuf->written;
6238 INT out_loadreg = -1;
6239 out_loadreg = FLD (out_rn);
6240 cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
6247 sh4_sh4_model::model_movl9_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6249 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
6250 const sh4_scache* abuf = sem;
6251 const sh4_idesc* idesc = abuf->idesc;
6254 cycles += model_u_exec_before (current_cpu, idesc, 0);
6257 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
6260 INT out_loadreg = -1;
6261 out_loadreg = FLD (out_r0);
6262 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
6269 sh4_sh4_model::model_movl9_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6271 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
6272 const sh4_scache* abuf = sem;
6273 const sh4_idesc* idesc = abuf->idesc;
6277 unsigned long long insn_referenced = abuf->written;
6278 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6282 unsigned long long insn_referenced = abuf->written;
6283 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
6287 unsigned long long insn_referenced = abuf->written;
6288 INT out_loadreg = -1;
6289 out_loadreg = FLD (out_r0);
6290 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
6297 sh4_sh4_model::model_movl10_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6299 #define FLD(f) abuf->fields.sfmt_movl10_compact.f
6300 const sh4_scache* abuf = sem;
6301 const sh4_idesc* idesc = abuf->idesc;
6304 cycles += model_u_exec_before (current_cpu, idesc, 0);
6307 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
6310 INT out_loadreg = -1;
6311 out_loadreg = FLD (out_rn);
6312 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
6319 sh4_sh4_model::model_movl10_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6321 #define FLD(f) abuf->fields.sfmt_movl10_compact.f
6322 const sh4_scache* abuf = sem;
6323 const sh4_idesc* idesc = abuf->idesc;
6327 unsigned long long insn_referenced = abuf->written;
6328 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6332 unsigned long long insn_referenced = abuf->written;
6333 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
6337 unsigned long long insn_referenced = abuf->written;
6338 INT out_loadreg = -1;
6339 out_loadreg = FLD (out_rn);
6340 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
6347 sh4_sh4_model::model_movl11_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6349 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6350 const sh4_scache* abuf = sem;
6351 const sh4_idesc* idesc = abuf->idesc;
6355 in_usereg = FLD (in_rm);
6356 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6359 cycles += model_u_exec_before (current_cpu, idesc, 1);
6362 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6365 INT out_loadreg = -1;
6366 out_loadreg = FLD (out_rn);
6367 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6374 sh4_sh4_model::model_movl11_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6376 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6377 const sh4_scache* abuf = sem;
6378 const sh4_idesc* idesc = abuf->idesc;
6382 unsigned long long insn_referenced = abuf->written;
6384 in_usereg = FLD (in_rm);
6385 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6389 unsigned long long insn_referenced = abuf->written;
6390 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6394 unsigned long long insn_referenced = abuf->written;
6395 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6399 unsigned long long insn_referenced = abuf->written;
6400 INT out_loadreg = -1;
6401 out_loadreg = FLD (out_rn);
6402 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6409 sh4_sh4_model::model_movl12_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6411 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
6412 const sh4_scache* abuf = sem;
6413 const sh4_idesc* idesc = abuf->idesc;
6417 in_usereg = FLD (in_rm);
6418 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6421 cycles += model_u_exec_before (current_cpu, idesc, 1);
6424 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6427 INT out_loadreg = -1;
6428 out_loadreg = FLD (out_rn);
6429 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6436 sh4_sh4_model::model_movl12_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6438 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
6439 const sh4_scache* abuf = sem;
6440 const sh4_idesc* idesc = abuf->idesc;
6444 unsigned long long insn_referenced = abuf->written;
6446 in_usereg = FLD (in_rm);
6447 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6451 unsigned long long insn_referenced = abuf->written;
6452 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6456 unsigned long long insn_referenced = abuf->written;
6457 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6461 unsigned long long insn_referenced = abuf->written;
6462 INT out_loadreg = -1;
6463 out_loadreg = FLD (out_rn);
6464 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6471 sh4_sh4_model::model_movl13_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6473 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
6474 const sh4_scache* abuf = sem;
6475 const sh4_idesc* idesc = abuf->idesc;
6479 in_usereg = FLD (in_rm);
6480 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6483 cycles += model_u_exec_before (current_cpu, idesc, 1);
6486 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6493 sh4_sh4_model::model_movl13_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6495 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
6496 const sh4_scache* abuf = sem;
6497 const sh4_idesc* idesc = abuf->idesc;
6501 unsigned long long insn_referenced = abuf->written;
6503 in_usereg = FLD (in_rm);
6504 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6508 unsigned long long insn_referenced = abuf->written;
6509 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6513 unsigned long long insn_referenced = abuf->written;
6514 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6521 sh4_sh4_model::model_movw1_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6523 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
6524 const sh4_scache* abuf = sem;
6525 const sh4_idesc* idesc = abuf->idesc;
6529 in_usereg = FLD (in_rm);
6530 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6534 in_usereg = FLD (in_rn);
6535 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6538 cycles += model_u_exec_before (current_cpu, idesc, 2);
6541 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6548 sh4_sh4_model::model_movw1_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6550 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
6551 const sh4_scache* abuf = sem;
6552 const sh4_idesc* idesc = abuf->idesc;
6556 unsigned long long insn_referenced = abuf->written;
6558 in_usereg = FLD (in_rm);
6559 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6563 unsigned long long insn_referenced = abuf->written;
6565 in_usereg = FLD (in_rn);
6566 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6570 unsigned long long insn_referenced = abuf->written;
6571 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6575 unsigned long long insn_referenced = abuf->written;
6576 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6583 sh4_sh4_model::model_movw2_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6585 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6586 const sh4_scache* abuf = sem;
6587 const sh4_idesc* idesc = abuf->idesc;
6591 in_usereg = FLD (in_rm);
6592 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6596 in_usereg = FLD (in_rn);
6597 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6600 cycles += model_u_exec_before (current_cpu, idesc, 2);
6603 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6610 sh4_sh4_model::model_movw2_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6612 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6613 const sh4_scache* abuf = sem;
6614 const sh4_idesc* idesc = abuf->idesc;
6618 unsigned long long insn_referenced = abuf->written;
6620 in_usereg = FLD (in_rm);
6621 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6625 unsigned long long insn_referenced = abuf->written;
6627 in_usereg = FLD (in_rn);
6628 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6632 unsigned long long insn_referenced = abuf->written;
6633 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6637 unsigned long long insn_referenced = abuf->written;
6638 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6645 sh4_sh4_model::model_movw3_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6647 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
6648 const sh4_scache* abuf = sem;
6649 const sh4_idesc* idesc = abuf->idesc;
6653 in_usereg = FLD (in_rm);
6654 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6658 in_usereg = FLD (in_rn);
6659 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6663 in_usereg = FLD (in_r0);
6664 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
6667 cycles += model_u_exec_before (current_cpu, idesc, 3);
6670 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
6677 sh4_sh4_model::model_movw3_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6679 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
6680 const sh4_scache* abuf = sem;
6681 const sh4_idesc* idesc = abuf->idesc;
6685 unsigned long long insn_referenced = abuf->written;
6687 in_usereg = FLD (in_rm);
6688 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6692 unsigned long long insn_referenced = abuf->written;
6694 in_usereg = FLD (in_rn);
6695 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6699 unsigned long long insn_referenced = abuf->written;
6701 in_usereg = FLD (in_r0);
6702 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
6706 unsigned long long insn_referenced = abuf->written;
6707 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
6711 unsigned long long insn_referenced = abuf->written;
6712 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
6719 sh4_sh4_model::model_movw4_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6721 #define FLD(f) abuf->fields.sfmt_movw4_compact.f
6722 const sh4_scache* abuf = sem;
6723 const sh4_idesc* idesc = abuf->idesc;
6727 in_usereg = FLD (in_r0);
6728 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6731 cycles += model_u_exec_before (current_cpu, idesc, 1);
6734 cycles += model_u_sx_before (current_cpu, idesc, 2);
6737 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6744 sh4_sh4_model::model_movw4_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6746 #define FLD(f) abuf->fields.sfmt_movw4_compact.f
6747 const sh4_scache* abuf = sem;
6748 const sh4_idesc* idesc = abuf->idesc;
6752 unsigned long long insn_referenced = abuf->written;
6754 in_usereg = FLD (in_r0);
6755 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6759 unsigned long long insn_referenced = abuf->written;
6760 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6764 unsigned long long insn_referenced = abuf->written;
6765 cycles += model_u_sx_after (current_cpu, idesc, 2, referenced);
6769 unsigned long long insn_referenced = abuf->written;
6770 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6777 sh4_sh4_model::model_movw5_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6779 #define FLD(f) abuf->fields.sfmt_movw5_compact.f
6780 const sh4_scache* abuf = sem;
6781 const sh4_idesc* idesc = abuf->idesc;
6785 in_usereg = FLD (in_rm);
6786 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6790 in_usereg = FLD (in_r0);
6791 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6794 cycles += model_u_exec_before (current_cpu, idesc, 2);
6797 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6804 sh4_sh4_model::model_movw5_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6806 #define FLD(f) abuf->fields.sfmt_movw5_compact.f
6807 const sh4_scache* abuf = sem;
6808 const sh4_idesc* idesc = abuf->idesc;
6812 unsigned long long insn_referenced = abuf->written;
6814 in_usereg = FLD (in_rm);
6815 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6819 unsigned long long insn_referenced = abuf->written;
6821 in_usereg = FLD (in_r0);
6822 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6826 unsigned long long insn_referenced = abuf->written;
6827 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6831 unsigned long long insn_referenced = abuf->written;
6832 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6839 sh4_sh4_model::model_movw6_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6841 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
6842 const sh4_scache* abuf = sem;
6843 const sh4_idesc* idesc = abuf->idesc;
6847 in_usereg = FLD (in_rm);
6848 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6851 cycles += model_u_exec_before (current_cpu, idesc, 1);
6854 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6857 INT out_loadreg = -1;
6858 out_loadreg = FLD (out_rn);
6859 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6866 sh4_sh4_model::model_movw6_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6868 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
6869 const sh4_scache* abuf = sem;
6870 const sh4_idesc* idesc = abuf->idesc;
6874 unsigned long long insn_referenced = abuf->written;
6876 in_usereg = FLD (in_rm);
6877 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6881 unsigned long long insn_referenced = abuf->written;
6882 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6886 unsigned long long insn_referenced = abuf->written;
6887 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6891 unsigned long long insn_referenced = abuf->written;
6892 INT out_loadreg = -1;
6893 out_loadreg = FLD (out_rn);
6894 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6901 sh4_sh4_model::model_movw7_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6903 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6904 const sh4_scache* abuf = sem;
6905 const sh4_idesc* idesc = abuf->idesc;
6909 in_usereg = FLD (in_rm);
6910 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6913 cycles += model_u_exec_before (current_cpu, idesc, 1);
6916 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6919 INT out_loadreg = -1;
6920 out_loadreg = FLD (out_rn);
6921 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6928 sh4_sh4_model::model_movw7_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6930 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6931 const sh4_scache* abuf = sem;
6932 const sh4_idesc* idesc = abuf->idesc;
6936 unsigned long long insn_referenced = abuf->written;
6938 in_usereg = FLD (in_rm);
6939 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6943 unsigned long long insn_referenced = abuf->written;
6944 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6948 unsigned long long insn_referenced = abuf->written;
6949 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6953 unsigned long long insn_referenced = abuf->written;
6954 INT out_loadreg = -1;
6955 out_loadreg = FLD (out_rn);
6956 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6963 sh4_sh4_model::model_movw8_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
6965 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
6966 const sh4_scache* abuf = sem;
6967 const sh4_idesc* idesc = abuf->idesc;
6971 in_usereg = FLD (in_rm);
6972 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6976 in_usereg = FLD (in_r0);
6977 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6980 cycles += model_u_exec_before (current_cpu, idesc, 2);
6983 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6986 INT out_loadreg = -1;
6987 out_loadreg = FLD (out_rn);
6988 cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
6995 sh4_sh4_model::model_movw8_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
6997 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
6998 const sh4_scache* abuf = sem;
6999 const sh4_idesc* idesc = abuf->idesc;
7003 unsigned long long insn_referenced = abuf->written;
7005 in_usereg = FLD (in_rm);
7006 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7010 unsigned long long insn_referenced = abuf->written;
7012 in_usereg = FLD (in_r0);
7013 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
7017 unsigned long long insn_referenced = abuf->written;
7018 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7022 unsigned long long insn_referenced = abuf->written;
7023 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
7027 unsigned long long insn_referenced = abuf->written;
7028 INT out_loadreg = -1;
7029 out_loadreg = FLD (out_rn);
7030 cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
7037 sh4_sh4_model::model_movw9_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7039 #define FLD(f) abuf->fields.sfmt_movw9_compact.f
7040 const sh4_scache* abuf = sem;
7041 const sh4_idesc* idesc = abuf->idesc;
7044 cycles += model_u_exec_before (current_cpu, idesc, 0);
7047 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
7050 INT out_loadreg = -1;
7051 out_loadreg = FLD (out_r0);
7052 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
7059 sh4_sh4_model::model_movw9_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7061 #define FLD(f) abuf->fields.sfmt_movw9_compact.f
7062 const sh4_scache* abuf = sem;
7063 const sh4_idesc* idesc = abuf->idesc;
7067 unsigned long long insn_referenced = abuf->written;
7068 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
7072 unsigned long long insn_referenced = abuf->written;
7073 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
7077 unsigned long long insn_referenced = abuf->written;
7078 INT out_loadreg = -1;
7079 out_loadreg = FLD (out_r0);
7080 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
7087 sh4_sh4_model::model_movw10_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7089 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7090 const sh4_scache* abuf = sem;
7091 const sh4_idesc* idesc = abuf->idesc;
7094 cycles += model_u_exec_before (current_cpu, idesc, 0);
7097 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
7100 INT out_loadreg = -1;
7101 out_loadreg = FLD (out_rn);
7102 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
7109 sh4_sh4_model::model_movw10_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7111 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7112 const sh4_scache* abuf = sem;
7113 const sh4_idesc* idesc = abuf->idesc;
7117 unsigned long long insn_referenced = abuf->written;
7118 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
7122 unsigned long long insn_referenced = abuf->written;
7123 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
7127 unsigned long long insn_referenced = abuf->written;
7128 INT out_loadreg = -1;
7129 out_loadreg = FLD (out_rn);
7130 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
7137 sh4_sh4_model::model_movw11_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7139 #define FLD(f) abuf->fields.sfmt_movw11_compact.f
7140 const sh4_scache* abuf = sem;
7141 const sh4_idesc* idesc = abuf->idesc;
7145 in_usereg = FLD (in_rm);
7146 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7149 cycles += model_u_exec_before (current_cpu, idesc, 1);
7152 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
7155 INT out_loadreg = -1;
7156 out_loadreg = FLD (out_r0);
7157 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
7164 sh4_sh4_model::model_movw11_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7166 #define FLD(f) abuf->fields.sfmt_movw11_compact.f
7167 const sh4_scache* abuf = sem;
7168 const sh4_idesc* idesc = abuf->idesc;
7172 unsigned long long insn_referenced = abuf->written;
7174 in_usereg = FLD (in_rm);
7175 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7179 unsigned long long insn_referenced = abuf->written;
7180 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7184 unsigned long long insn_referenced = abuf->written;
7185 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
7189 unsigned long long insn_referenced = abuf->written;
7190 INT out_loadreg = -1;
7191 out_loadreg = FLD (out_r0);
7192 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
7199 sh4_sh4_model::model_mova_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7201 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
7202 const sh4_scache* abuf = sem;
7203 const sh4_idesc* idesc = abuf->idesc;
7206 cycles += model_u_exec_before (current_cpu, idesc, 0);
7213 sh4_sh4_model::model_mova_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7215 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
7216 const sh4_scache* abuf = sem;
7217 const sh4_idesc* idesc = abuf->idesc;
7221 unsigned long long insn_referenced = abuf->written;
7222 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
7229 sh4_sh4_model::model_movcal_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7231 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7232 const sh4_scache* abuf = sem;
7233 const sh4_idesc* idesc = abuf->idesc;
7237 in_usereg = FLD (in_rn);
7238 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7241 cycles += model_u_ocb_before (current_cpu, idesc, 1);
7248 sh4_sh4_model::model_movcal_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7250 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7251 const sh4_scache* abuf = sem;
7252 const sh4_idesc* idesc = abuf->idesc;
7256 unsigned long long insn_referenced = abuf->written;
7258 in_usereg = FLD (in_rn);
7259 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7263 unsigned long long insn_referenced = abuf->written;
7264 cycles += model_u_ocb_after (current_cpu, idesc, 1, referenced);
7271 sh4_sh4_model::model_movt_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7273 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7274 const sh4_scache* abuf = sem;
7275 const sh4_idesc* idesc = abuf->idesc;
7278 cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
7281 cycles += model_u_exec_before (current_cpu, idesc, 1);
7288 sh4_sh4_model::model_movt_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7290 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7291 const sh4_scache* abuf = sem;
7292 const sh4_idesc* idesc = abuf->idesc;
7296 unsigned long long insn_referenced = abuf->written;
7297 cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
7301 unsigned long long insn_referenced = abuf->written;
7302 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7309 sh4_sh4_model::model_mull_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7311 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
7312 const sh4_scache* abuf = sem;
7313 const sh4_idesc* idesc = abuf->idesc;
7317 in_usereg = FLD (in_rn);
7318 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7322 in_usereg = FLD (in_rm);
7323 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
7326 cycles += model_u_mull_before (current_cpu, idesc, 2);
7333 sh4_sh4_model::model_mull_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7335 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
7336 const sh4_scache* abuf = sem;
7337 const sh4_idesc* idesc = abuf->idesc;
7341 unsigned long long insn_referenced = abuf->written;
7343 in_usereg = FLD (in_rn);
7344 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7348 unsigned long long insn_referenced = abuf->written;
7350 in_usereg = FLD (in_rm);
7351 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
7355 unsigned long long insn_referenced = abuf->written;
7356 cycles += model_u_mull_after (current_cpu, idesc, 2, referenced);
7363 sh4_sh4_model::model_mulsw_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7365 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
7366 const sh4_scache* abuf = sem;
7367 const sh4_idesc* idesc = abuf->idesc;
7371 in_usereg = FLD (in_rn);
7372 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7376 in_usereg = FLD (in_rm);
7377 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
7380 cycles += model_u_mulsw_before (current_cpu, idesc, 2);
7383 cycles += model_u_multiply_before (current_cpu, idesc, 3);
7390 sh4_sh4_model::model_mulsw_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7392 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
7393 const sh4_scache* abuf = sem;
7394 const sh4_idesc* idesc = abuf->idesc;
7398 unsigned long long insn_referenced = abuf->written;
7400 in_usereg = FLD (in_rn);
7401 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7405 unsigned long long insn_referenced = abuf->written;
7407 in_usereg = FLD (in_rm);
7408 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
7412 unsigned long long insn_referenced = abuf->written;
7413 cycles += model_u_mulsw_after (current_cpu, idesc, 2, referenced);
7417 unsigned long long insn_referenced = abuf->written;
7418 cycles += model_u_multiply_after (current_cpu, idesc, 3, referenced);
7425 sh4_sh4_model::model_muluw_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7427 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
7428 const sh4_scache* abuf = sem;
7429 const sh4_idesc* idesc = abuf->idesc;
7433 in_usereg = FLD (in_rn);
7434 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7438 in_usereg = FLD (in_rm);
7439 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
7442 cycles += model_u_mulsw_before (current_cpu, idesc, 2);
7445 cycles += model_u_multiply_before (current_cpu, idesc, 3);
7452 sh4_sh4_model::model_muluw_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7454 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
7455 const sh4_scache* abuf = sem;
7456 const sh4_idesc* idesc = abuf->idesc;
7460 unsigned long long insn_referenced = abuf->written;
7462 in_usereg = FLD (in_rn);
7463 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7467 unsigned long long insn_referenced = abuf->written;
7469 in_usereg = FLD (in_rm);
7470 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
7474 unsigned long long insn_referenced = abuf->written;
7475 cycles += model_u_mulsw_after (current_cpu, idesc, 2, referenced);
7479 unsigned long long insn_referenced = abuf->written;
7480 cycles += model_u_multiply_after (current_cpu, idesc, 3, referenced);
7487 sh4_sh4_model::model_neg_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7489 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
7490 const sh4_scache* abuf = sem;
7491 const sh4_idesc* idesc = abuf->idesc;
7495 in_usereg = FLD (in_rm);
7496 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7499 cycles += model_u_exec_before (current_cpu, idesc, 1);
7506 sh4_sh4_model::model_neg_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7508 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
7509 const sh4_scache* abuf = sem;
7510 const sh4_idesc* idesc = abuf->idesc;
7514 unsigned long long insn_referenced = abuf->written;
7516 in_usereg = FLD (in_rm);
7517 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7521 unsigned long long insn_referenced = abuf->written;
7522 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7529 sh4_sh4_model::model_negc_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7531 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
7532 const sh4_scache* abuf = sem;
7533 const sh4_idesc* idesc = abuf->idesc;
7537 in_usereg = FLD (in_rm);
7538 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7541 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7544 cycles += model_u_exec_before (current_cpu, idesc, 2);
7547 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
7554 sh4_sh4_model::model_negc_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7556 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
7557 const sh4_scache* abuf = sem;
7558 const sh4_idesc* idesc = abuf->idesc;
7562 unsigned long long insn_referenced = abuf->written;
7564 in_usereg = FLD (in_rm);
7565 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7569 unsigned long long insn_referenced = abuf->written;
7570 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7574 unsigned long long insn_referenced = abuf->written;
7575 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7579 unsigned long long insn_referenced = abuf->written;
7580 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
7587 sh4_sh4_model::model_nop_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7589 #define FLD(f) abuf->fields.fmt_empty.f
7590 const sh4_scache* abuf = sem;
7591 const sh4_idesc* idesc = abuf->idesc;
7594 cycles += model_u_exec_before (current_cpu, idesc, 0);
7601 sh4_sh4_model::model_nop_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7603 #define FLD(f) abuf->fields.fmt_empty.f
7604 const sh4_scache* abuf = sem;
7605 const sh4_idesc* idesc = abuf->idesc;
7609 unsigned long long insn_referenced = abuf->written;
7610 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
7617 sh4_sh4_model::model_not_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7619 #define FLD(f) abuf->fields.sfmt_and_compact.f
7620 const sh4_scache* abuf = sem;
7621 const sh4_idesc* idesc = abuf->idesc;
7625 in_usereg = FLD (in_rm64);
7626 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7629 cycles += model_u_exec_before (current_cpu, idesc, 1);
7636 sh4_sh4_model::model_not_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7638 #define FLD(f) abuf->fields.sfmt_and_compact.f
7639 const sh4_scache* abuf = sem;
7640 const sh4_idesc* idesc = abuf->idesc;
7644 unsigned long long insn_referenced = abuf->written;
7646 in_usereg = FLD (in_rm64);
7647 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7651 unsigned long long insn_referenced = abuf->written;
7652 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7659 sh4_sh4_model::model_ocbi_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7661 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7662 const sh4_scache* abuf = sem;
7663 const sh4_idesc* idesc = abuf->idesc;
7667 in_usereg = FLD (in_rn);
7668 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7671 cycles += model_u_ocb_before (current_cpu, idesc, 1);
7678 sh4_sh4_model::model_ocbi_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7680 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7681 const sh4_scache* abuf = sem;
7682 const sh4_idesc* idesc = abuf->idesc;
7686 unsigned long long insn_referenced = abuf->written;
7688 in_usereg = FLD (in_rn);
7689 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7693 unsigned long long insn_referenced = abuf->written;
7694 cycles += model_u_ocb_after (current_cpu, idesc, 1, referenced);
7701 sh4_sh4_model::model_ocbp_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7703 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7704 const sh4_scache* abuf = sem;
7705 const sh4_idesc* idesc = abuf->idesc;
7709 in_usereg = FLD (in_rn);
7710 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7713 cycles += model_u_ocb_before (current_cpu, idesc, 1);
7720 sh4_sh4_model::model_ocbp_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7722 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7723 const sh4_scache* abuf = sem;
7724 const sh4_idesc* idesc = abuf->idesc;
7728 unsigned long long insn_referenced = abuf->written;
7730 in_usereg = FLD (in_rn);
7731 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7735 unsigned long long insn_referenced = abuf->written;
7736 cycles += model_u_ocb_after (current_cpu, idesc, 1, referenced);
7743 sh4_sh4_model::model_ocbwb_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7745 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7746 const sh4_scache* abuf = sem;
7747 const sh4_idesc* idesc = abuf->idesc;
7751 in_usereg = FLD (in_rn);
7752 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7755 cycles += model_u_ocb_before (current_cpu, idesc, 1);
7762 sh4_sh4_model::model_ocbwb_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7764 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7765 const sh4_scache* abuf = sem;
7766 const sh4_idesc* idesc = abuf->idesc;
7770 unsigned long long insn_referenced = abuf->written;
7772 in_usereg = FLD (in_rn);
7773 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7777 unsigned long long insn_referenced = abuf->written;
7778 cycles += model_u_ocb_after (current_cpu, idesc, 1, referenced);
7785 sh4_sh4_model::model_or_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7787 #define FLD(f) abuf->fields.sfmt_and_compact.f
7788 const sh4_scache* abuf = sem;
7789 const sh4_idesc* idesc = abuf->idesc;
7793 in_usereg = FLD (in_rm64);
7794 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7798 in_usereg = FLD (in_rn64);
7799 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
7802 cycles += model_u_exec_before (current_cpu, idesc, 2);
7809 sh4_sh4_model::model_or_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7811 #define FLD(f) abuf->fields.sfmt_and_compact.f
7812 const sh4_scache* abuf = sem;
7813 const sh4_idesc* idesc = abuf->idesc;
7817 unsigned long long insn_referenced = abuf->written;
7819 in_usereg = FLD (in_rm64);
7820 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7824 unsigned long long insn_referenced = abuf->written;
7826 in_usereg = FLD (in_rn64);
7827 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
7831 unsigned long long insn_referenced = abuf->written;
7832 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7839 sh4_sh4_model::model_ori_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7841 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7842 const sh4_scache* abuf = sem;
7843 const sh4_idesc* idesc = abuf->idesc;
7847 in_usereg = FLD (in_r0);
7848 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7851 cycles += model_u_exec_before (current_cpu, idesc, 1);
7858 sh4_sh4_model::model_ori_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7860 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7861 const sh4_scache* abuf = sem;
7862 const sh4_idesc* idesc = abuf->idesc;
7866 unsigned long long insn_referenced = abuf->written;
7868 in_usereg = FLD (in_r0);
7869 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7873 unsigned long long insn_referenced = abuf->written;
7874 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7881 sh4_sh4_model::model_orb_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7883 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7884 const sh4_scache* abuf = sem;
7885 const sh4_idesc* idesc = abuf->idesc;
7889 in_usereg = FLD (in_r0);
7890 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7893 cycles += model_u_logic_b_before (current_cpu, idesc, 1);
7896 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
7903 sh4_sh4_model::model_orb_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7905 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7906 const sh4_scache* abuf = sem;
7907 const sh4_idesc* idesc = abuf->idesc;
7911 unsigned long long insn_referenced = abuf->written;
7913 in_usereg = FLD (in_r0);
7914 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7918 unsigned long long insn_referenced = abuf->written;
7919 cycles += model_u_logic_b_after (current_cpu, idesc, 1, referenced);
7923 unsigned long long insn_referenced = abuf->written;
7924 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
7931 sh4_sh4_model::model_pref_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7933 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7934 const sh4_scache* abuf = sem;
7935 const sh4_idesc* idesc = abuf->idesc;
7939 in_usereg = FLD (in_rn);
7940 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7943 cycles += model_u_exec_before (current_cpu, idesc, 1);
7946 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
7953 sh4_sh4_model::model_pref_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
7955 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7956 const sh4_scache* abuf = sem;
7957 const sh4_idesc* idesc = abuf->idesc;
7961 unsigned long long insn_referenced = abuf->written;
7963 in_usereg = FLD (in_rn);
7964 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7968 unsigned long long insn_referenced = abuf->written;
7969 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7973 unsigned long long insn_referenced = abuf->written;
7974 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
7981 sh4_sh4_model::model_rotcl_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
7983 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7984 const sh4_scache* abuf = sem;
7985 const sh4_idesc* idesc = abuf->idesc;
7989 in_usereg = FLD (in_rn);
7990 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7993 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7996 cycles += model_u_exec_before (current_cpu, idesc, 2);
7999 cycles += model_u_shift_before (current_cpu, idesc, 3);
8002 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
8009 sh4_sh4_model::model_rotcl_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8011 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8012 const sh4_scache* abuf = sem;
8013 const sh4_idesc* idesc = abuf->idesc;
8017 unsigned long long insn_referenced = abuf->written;
8019 in_usereg = FLD (in_rn);
8020 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8024 unsigned long long insn_referenced = abuf->written;
8025 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
8029 unsigned long long insn_referenced = abuf->written;
8030 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8034 unsigned long long insn_referenced = abuf->written;
8035 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
8039 unsigned long long insn_referenced = abuf->written;
8040 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
8047 sh4_sh4_model::model_rotcr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8049 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8050 const sh4_scache* abuf = sem;
8051 const sh4_idesc* idesc = abuf->idesc;
8055 in_usereg = FLD (in_rn);
8056 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8059 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
8062 cycles += model_u_exec_before (current_cpu, idesc, 2);
8065 cycles += model_u_shift_before (current_cpu, idesc, 3);
8068 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
8075 sh4_sh4_model::model_rotcr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8077 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8078 const sh4_scache* abuf = sem;
8079 const sh4_idesc* idesc = abuf->idesc;
8083 unsigned long long insn_referenced = abuf->written;
8085 in_usereg = FLD (in_rn);
8086 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8090 unsigned long long insn_referenced = abuf->written;
8091 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
8095 unsigned long long insn_referenced = abuf->written;
8096 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8100 unsigned long long insn_referenced = abuf->written;
8101 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
8105 unsigned long long insn_referenced = abuf->written;
8106 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
8113 sh4_sh4_model::model_rotl_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8115 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8116 const sh4_scache* abuf = sem;
8117 const sh4_idesc* idesc = abuf->idesc;
8121 in_usereg = FLD (in_rn);
8122 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8125 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
8128 cycles += model_u_exec_before (current_cpu, idesc, 2);
8131 cycles += model_u_shift_before (current_cpu, idesc, 3);
8134 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
8141 sh4_sh4_model::model_rotl_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8143 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8144 const sh4_scache* abuf = sem;
8145 const sh4_idesc* idesc = abuf->idesc;
8149 unsigned long long insn_referenced = abuf->written;
8151 in_usereg = FLD (in_rn);
8152 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8156 unsigned long long insn_referenced = abuf->written;
8157 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
8161 unsigned long long insn_referenced = abuf->written;
8162 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8166 unsigned long long insn_referenced = abuf->written;
8167 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
8171 unsigned long long insn_referenced = abuf->written;
8172 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
8179 sh4_sh4_model::model_rotr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8181 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8182 const sh4_scache* abuf = sem;
8183 const sh4_idesc* idesc = abuf->idesc;
8187 in_usereg = FLD (in_rn);
8188 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8191 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
8194 cycles += model_u_exec_before (current_cpu, idesc, 2);
8197 cycles += model_u_shift_before (current_cpu, idesc, 3);
8200 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
8207 sh4_sh4_model::model_rotr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8209 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8210 const sh4_scache* abuf = sem;
8211 const sh4_idesc* idesc = abuf->idesc;
8215 unsigned long long insn_referenced = abuf->written;
8217 in_usereg = FLD (in_rn);
8218 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8222 unsigned long long insn_referenced = abuf->written;
8223 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
8227 unsigned long long insn_referenced = abuf->written;
8228 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8232 unsigned long long insn_referenced = abuf->written;
8233 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
8237 unsigned long long insn_referenced = abuf->written;
8238 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
8245 sh4_sh4_model::model_rts_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8247 #define FLD(f) abuf->fields.fmt_empty.f
8248 const sh4_scache* abuf = sem;
8249 const sh4_idesc* idesc = abuf->idesc;
8252 cycles += model_u_jmp_before (current_cpu, idesc, 0);
8259 sh4_sh4_model::model_rts_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8261 #define FLD(f) abuf->fields.fmt_empty.f
8262 const sh4_scache* abuf = sem;
8263 const sh4_idesc* idesc = abuf->idesc;
8267 unsigned long long insn_referenced = abuf->written;
8268 referenced |= 1 << 0;
8269 cycles += model_u_jmp_after (current_cpu, idesc, 0, referenced);
8276 sh4_sh4_model::model_sets_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8278 #define FLD(f) abuf->fields.fmt_empty.f
8279 const sh4_scache* abuf = sem;
8280 const sh4_idesc* idesc = abuf->idesc;
8283 cycles += model_u_exec_before (current_cpu, idesc, 0);
8286 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 1);
8293 sh4_sh4_model::model_sets_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8295 #define FLD(f) abuf->fields.fmt_empty.f
8296 const sh4_scache* abuf = sem;
8297 const sh4_idesc* idesc = abuf->idesc;
8301 unsigned long long insn_referenced = abuf->written;
8302 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
8306 unsigned long long insn_referenced = abuf->written;
8307 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 1, referenced);
8314 sh4_sh4_model::model_sett_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8316 #define FLD(f) abuf->fields.fmt_empty.f
8317 const sh4_scache* abuf = sem;
8318 const sh4_idesc* idesc = abuf->idesc;
8321 cycles += model_u_exec_before (current_cpu, idesc, 0);
8324 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
8327 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 2);
8334 sh4_sh4_model::model_sett_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8336 #define FLD(f) abuf->fields.fmt_empty.f
8337 const sh4_scache* abuf = sem;
8338 const sh4_idesc* idesc = abuf->idesc;
8342 unsigned long long insn_referenced = abuf->written;
8343 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
8347 unsigned long long insn_referenced = abuf->written;
8348 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
8352 unsigned long long insn_referenced = abuf->written;
8353 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 2, referenced);
8360 sh4_sh4_model::model_shad_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8362 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8363 const sh4_scache* abuf = sem;
8364 const sh4_idesc* idesc = abuf->idesc;
8368 in_usereg = FLD (in_rn);
8369 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8373 in_usereg = FLD (in_rm);
8374 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
8377 cycles += model_u_exec_before (current_cpu, idesc, 2);
8380 cycles += model_u_shift_before (current_cpu, idesc, 3);
8387 sh4_sh4_model::model_shad_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8389 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8390 const sh4_scache* abuf = sem;
8391 const sh4_idesc* idesc = abuf->idesc;
8395 unsigned long long insn_referenced = abuf->written;
8397 in_usereg = FLD (in_rn);
8398 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8402 unsigned long long insn_referenced = abuf->written;
8404 in_usereg = FLD (in_rm);
8405 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
8409 unsigned long long insn_referenced = abuf->written;
8410 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8414 unsigned long long insn_referenced = abuf->written;
8415 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
8422 sh4_sh4_model::model_shal_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8424 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8425 const sh4_scache* abuf = sem;
8426 const sh4_idesc* idesc = abuf->idesc;
8430 in_usereg = FLD (in_rn);
8431 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8434 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
8437 cycles += model_u_exec_before (current_cpu, idesc, 2);
8440 cycles += model_u_shift_before (current_cpu, idesc, 3);
8443 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
8450 sh4_sh4_model::model_shal_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8452 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8453 const sh4_scache* abuf = sem;
8454 const sh4_idesc* idesc = abuf->idesc;
8458 unsigned long long insn_referenced = abuf->written;
8460 in_usereg = FLD (in_rn);
8461 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8465 unsigned long long insn_referenced = abuf->written;
8466 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
8470 unsigned long long insn_referenced = abuf->written;
8471 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8475 unsigned long long insn_referenced = abuf->written;
8476 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
8480 unsigned long long insn_referenced = abuf->written;
8481 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
8488 sh4_sh4_model::model_shar_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8490 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8491 const sh4_scache* abuf = sem;
8492 const sh4_idesc* idesc = abuf->idesc;
8496 in_usereg = FLD (in_rn);
8497 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8500 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
8503 cycles += model_u_exec_before (current_cpu, idesc, 2);
8506 cycles += model_u_shift_before (current_cpu, idesc, 3);
8509 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
8516 sh4_sh4_model::model_shar_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8518 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8519 const sh4_scache* abuf = sem;
8520 const sh4_idesc* idesc = abuf->idesc;
8524 unsigned long long insn_referenced = abuf->written;
8526 in_usereg = FLD (in_rn);
8527 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8531 unsigned long long insn_referenced = abuf->written;
8532 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
8536 unsigned long long insn_referenced = abuf->written;
8537 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8541 unsigned long long insn_referenced = abuf->written;
8542 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
8546 unsigned long long insn_referenced = abuf->written;
8547 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
8554 sh4_sh4_model::model_shld_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8556 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8557 const sh4_scache* abuf = sem;
8558 const sh4_idesc* idesc = abuf->idesc;
8562 in_usereg = FLD (in_rn);
8563 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8566 cycles += model_u_exec_before (current_cpu, idesc, 1);
8569 cycles += model_u_shift_before (current_cpu, idesc, 2);
8576 sh4_sh4_model::model_shld_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8578 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8579 const sh4_scache* abuf = sem;
8580 const sh4_idesc* idesc = abuf->idesc;
8584 unsigned long long insn_referenced = abuf->written;
8586 in_usereg = FLD (in_rn);
8587 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8591 unsigned long long insn_referenced = abuf->written;
8592 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8596 unsigned long long insn_referenced = abuf->written;
8597 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8604 sh4_sh4_model::model_shll_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8606 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8607 const sh4_scache* abuf = sem;
8608 const sh4_idesc* idesc = abuf->idesc;
8612 in_usereg = FLD (in_rn);
8613 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8616 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
8619 cycles += model_u_exec_before (current_cpu, idesc, 2);
8622 cycles += model_u_shift_before (current_cpu, idesc, 3);
8625 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
8632 sh4_sh4_model::model_shll_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8634 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8635 const sh4_scache* abuf = sem;
8636 const sh4_idesc* idesc = abuf->idesc;
8640 unsigned long long insn_referenced = abuf->written;
8642 in_usereg = FLD (in_rn);
8643 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8647 unsigned long long insn_referenced = abuf->written;
8648 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
8652 unsigned long long insn_referenced = abuf->written;
8653 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8657 unsigned long long insn_referenced = abuf->written;
8658 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
8662 unsigned long long insn_referenced = abuf->written;
8663 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
8670 sh4_sh4_model::model_shll2_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8672 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8673 const sh4_scache* abuf = sem;
8674 const sh4_idesc* idesc = abuf->idesc;
8678 in_usereg = FLD (in_rn);
8679 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8682 cycles += model_u_exec_before (current_cpu, idesc, 1);
8685 cycles += model_u_shift_before (current_cpu, idesc, 2);
8692 sh4_sh4_model::model_shll2_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8694 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8695 const sh4_scache* abuf = sem;
8696 const sh4_idesc* idesc = abuf->idesc;
8700 unsigned long long insn_referenced = abuf->written;
8702 in_usereg = FLD (in_rn);
8703 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8707 unsigned long long insn_referenced = abuf->written;
8708 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8712 unsigned long long insn_referenced = abuf->written;
8713 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8720 sh4_sh4_model::model_shll8_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8722 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8723 const sh4_scache* abuf = sem;
8724 const sh4_idesc* idesc = abuf->idesc;
8728 in_usereg = FLD (in_rn);
8729 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8732 cycles += model_u_exec_before (current_cpu, idesc, 1);
8735 cycles += model_u_shift_before (current_cpu, idesc, 2);
8742 sh4_sh4_model::model_shll8_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8744 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8745 const sh4_scache* abuf = sem;
8746 const sh4_idesc* idesc = abuf->idesc;
8750 unsigned long long insn_referenced = abuf->written;
8752 in_usereg = FLD (in_rn);
8753 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8757 unsigned long long insn_referenced = abuf->written;
8758 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8762 unsigned long long insn_referenced = abuf->written;
8763 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8770 sh4_sh4_model::model_shll16_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8772 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8773 const sh4_scache* abuf = sem;
8774 const sh4_idesc* idesc = abuf->idesc;
8778 in_usereg = FLD (in_rn);
8779 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8782 cycles += model_u_exec_before (current_cpu, idesc, 1);
8785 cycles += model_u_shift_before (current_cpu, idesc, 2);
8792 sh4_sh4_model::model_shll16_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8794 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8795 const sh4_scache* abuf = sem;
8796 const sh4_idesc* idesc = abuf->idesc;
8800 unsigned long long insn_referenced = abuf->written;
8802 in_usereg = FLD (in_rn);
8803 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8807 unsigned long long insn_referenced = abuf->written;
8808 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8812 unsigned long long insn_referenced = abuf->written;
8813 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8820 sh4_sh4_model::model_shlr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8822 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8823 const sh4_scache* abuf = sem;
8824 const sh4_idesc* idesc = abuf->idesc;
8828 in_usereg = FLD (in_rn);
8829 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8832 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
8835 cycles += model_u_exec_before (current_cpu, idesc, 2);
8838 cycles += model_u_shift_before (current_cpu, idesc, 3);
8841 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
8848 sh4_sh4_model::model_shlr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8850 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8851 const sh4_scache* abuf = sem;
8852 const sh4_idesc* idesc = abuf->idesc;
8856 unsigned long long insn_referenced = abuf->written;
8858 in_usereg = FLD (in_rn);
8859 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8863 unsigned long long insn_referenced = abuf->written;
8864 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
8868 unsigned long long insn_referenced = abuf->written;
8869 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8873 unsigned long long insn_referenced = abuf->written;
8874 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
8878 unsigned long long insn_referenced = abuf->written;
8879 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
8886 sh4_sh4_model::model_shlr2_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8888 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8889 const sh4_scache* abuf = sem;
8890 const sh4_idesc* idesc = abuf->idesc;
8894 in_usereg = FLD (in_rn);
8895 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8898 cycles += model_u_exec_before (current_cpu, idesc, 1);
8901 cycles += model_u_shift_before (current_cpu, idesc, 2);
8908 sh4_sh4_model::model_shlr2_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8910 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8911 const sh4_scache* abuf = sem;
8912 const sh4_idesc* idesc = abuf->idesc;
8916 unsigned long long insn_referenced = abuf->written;
8918 in_usereg = FLD (in_rn);
8919 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8923 unsigned long long insn_referenced = abuf->written;
8924 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8928 unsigned long long insn_referenced = abuf->written;
8929 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8936 sh4_sh4_model::model_shlr8_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8938 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8939 const sh4_scache* abuf = sem;
8940 const sh4_idesc* idesc = abuf->idesc;
8944 in_usereg = FLD (in_rn);
8945 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8948 cycles += model_u_exec_before (current_cpu, idesc, 1);
8951 cycles += model_u_shift_before (current_cpu, idesc, 2);
8958 sh4_sh4_model::model_shlr8_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
8960 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8961 const sh4_scache* abuf = sem;
8962 const sh4_idesc* idesc = abuf->idesc;
8966 unsigned long long insn_referenced = abuf->written;
8968 in_usereg = FLD (in_rn);
8969 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8973 unsigned long long insn_referenced = abuf->written;
8974 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8978 unsigned long long insn_referenced = abuf->written;
8979 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8986 sh4_sh4_model::model_shlr16_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
8988 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8989 const sh4_scache* abuf = sem;
8990 const sh4_idesc* idesc = abuf->idesc;
8994 in_usereg = FLD (in_rn);
8995 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8998 cycles += model_u_exec_before (current_cpu, idesc, 1);
9001 cycles += model_u_shift_before (current_cpu, idesc, 2);
9008 sh4_sh4_model::model_shlr16_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9010 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9011 const sh4_scache* abuf = sem;
9012 const sh4_idesc* idesc = abuf->idesc;
9016 unsigned long long insn_referenced = abuf->written;
9018 in_usereg = FLD (in_rn);
9019 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9023 unsigned long long insn_referenced = abuf->written;
9024 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
9028 unsigned long long insn_referenced = abuf->written;
9029 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
9036 sh4_sh4_model::model_stc_gbr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9038 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9039 const sh4_scache* abuf = sem;
9040 const sh4_idesc* idesc = abuf->idesc;
9043 cycles += model_u_exec_before (current_cpu, idesc, 0);
9050 sh4_sh4_model::model_stc_gbr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9052 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9053 const sh4_scache* abuf = sem;
9054 const sh4_idesc* idesc = abuf->idesc;
9058 unsigned long long insn_referenced = abuf->written;
9059 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
9066 sh4_sh4_model::model_stc_vbr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9068 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9069 const sh4_scache* abuf = sem;
9070 const sh4_idesc* idesc = abuf->idesc;
9073 cycles += model_u_stc_vbr_before (current_cpu, idesc, 0);
9080 sh4_sh4_model::model_stc_vbr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9082 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9083 const sh4_scache* abuf = sem;
9084 const sh4_idesc* idesc = abuf->idesc;
9088 unsigned long long insn_referenced = abuf->written;
9089 cycles += model_u_stc_vbr_after (current_cpu, idesc, 0, referenced);
9096 sh4_sh4_model::model_stcl_gbr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9098 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9099 const sh4_scache* abuf = sem;
9100 const sh4_idesc* idesc = abuf->idesc;
9104 in_usereg = FLD (in_rn);
9105 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9108 cycles += model_u_ldcl_before (current_cpu, idesc, 1);
9111 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
9118 sh4_sh4_model::model_stcl_gbr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9120 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9121 const sh4_scache* abuf = sem;
9122 const sh4_idesc* idesc = abuf->idesc;
9126 unsigned long long insn_referenced = abuf->written;
9128 in_usereg = FLD (in_rn);
9129 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9133 unsigned long long insn_referenced = abuf->written;
9134 cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
9138 unsigned long long insn_referenced = abuf->written;
9139 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
9146 sh4_sh4_model::model_stcl_vbr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9148 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9149 const sh4_scache* abuf = sem;
9150 const sh4_idesc* idesc = abuf->idesc;
9154 in_usereg = FLD (in_rn);
9155 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9158 cycles += model_u_ldcl_before (current_cpu, idesc, 1);
9161 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
9168 sh4_sh4_model::model_stcl_vbr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9170 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9171 const sh4_scache* abuf = sem;
9172 const sh4_idesc* idesc = abuf->idesc;
9176 unsigned long long insn_referenced = abuf->written;
9178 in_usereg = FLD (in_rn);
9179 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9183 unsigned long long insn_referenced = abuf->written;
9184 cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
9188 unsigned long long insn_referenced = abuf->written;
9189 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
9196 sh4_sh4_model::model_sts_fpscr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9198 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9199 const sh4_scache* abuf = sem;
9200 const sh4_idesc* idesc = abuf->idesc;
9203 cycles += model_u_use_fpscr_before (current_cpu, idesc, 0);
9206 cycles += model_u_exec_before (current_cpu, idesc, 1);
9209 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
9212 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
9215 INT out_loadreg = -1;
9216 out_loadreg = FLD (out_rn);
9217 cycles += model_u_fpu_load_gr_before (current_cpu, idesc, 4, out_loadreg);
9224 sh4_sh4_model::model_sts_fpscr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9226 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9227 const sh4_scache* abuf = sem;
9228 const sh4_idesc* idesc = abuf->idesc;
9232 unsigned long long insn_referenced = abuf->written;
9233 cycles += model_u_use_fpscr_after (current_cpu, idesc, 0, referenced);
9237 unsigned long long insn_referenced = abuf->written;
9238 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
9242 unsigned long long insn_referenced = abuf->written;
9243 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
9247 unsigned long long insn_referenced = abuf->written;
9248 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
9252 unsigned long long insn_referenced = abuf->written;
9253 INT out_loadreg = -1;
9254 out_loadreg = FLD (out_rn);
9255 cycles += model_u_fpu_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
9262 sh4_sh4_model::model_stsl_fpscr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9264 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9265 const sh4_scache* abuf = sem;
9266 const sh4_idesc* idesc = abuf->idesc;
9270 in_usereg = FLD (in_rn);
9271 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9274 cycles += model_u_use_fpscr_before (current_cpu, idesc, 1);
9277 cycles += model_u_exec_before (current_cpu, idesc, 2);
9280 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
9283 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
9290 sh4_sh4_model::model_stsl_fpscr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9292 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9293 const sh4_scache* abuf = sem;
9294 const sh4_idesc* idesc = abuf->idesc;
9298 unsigned long long insn_referenced = abuf->written;
9300 in_usereg = FLD (in_rn);
9301 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9305 unsigned long long insn_referenced = abuf->written;
9306 cycles += model_u_use_fpscr_after (current_cpu, idesc, 1, referenced);
9310 unsigned long long insn_referenced = abuf->written;
9311 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9315 unsigned long long insn_referenced = abuf->written;
9316 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
9320 unsigned long long insn_referenced = abuf->written;
9321 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
9328 sh4_sh4_model::model_sts_fpul_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9330 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9331 const sh4_scache* abuf = sem;
9332 const sh4_idesc* idesc = abuf->idesc;
9335 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
9338 cycles += model_u_exec_before (current_cpu, idesc, 1);
9341 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
9344 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
9347 INT out_loadreg = -1;
9348 out_loadreg = FLD (out_rn);
9349 cycles += model_u_fpu_load_gr_before (current_cpu, idesc, 4, out_loadreg);
9356 sh4_sh4_model::model_sts_fpul_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9358 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9359 const sh4_scache* abuf = sem;
9360 const sh4_idesc* idesc = abuf->idesc;
9364 unsigned long long insn_referenced = abuf->written;
9365 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
9369 unsigned long long insn_referenced = abuf->written;
9370 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
9374 unsigned long long insn_referenced = abuf->written;
9375 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
9379 unsigned long long insn_referenced = abuf->written;
9380 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
9384 unsigned long long insn_referenced = abuf->written;
9385 INT out_loadreg = -1;
9386 out_loadreg = FLD (out_rn);
9387 cycles += model_u_fpu_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
9394 sh4_sh4_model::model_stsl_fpul_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9396 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9397 const sh4_scache* abuf = sem;
9398 const sh4_idesc* idesc = abuf->idesc;
9401 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
9405 in_usereg = FLD (in_rn);
9406 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9409 cycles += model_u_exec_before (current_cpu, idesc, 2);
9412 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
9415 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
9422 sh4_sh4_model::model_stsl_fpul_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9424 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9425 const sh4_scache* abuf = sem;
9426 const sh4_idesc* idesc = abuf->idesc;
9430 unsigned long long insn_referenced = abuf->written;
9431 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
9435 unsigned long long insn_referenced = abuf->written;
9437 in_usereg = FLD (in_rn);
9438 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9442 unsigned long long insn_referenced = abuf->written;
9443 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9447 unsigned long long insn_referenced = abuf->written;
9448 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
9452 unsigned long long insn_referenced = abuf->written;
9453 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
9460 sh4_sh4_model::model_sts_mach_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9462 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9463 const sh4_scache* abuf = sem;
9464 const sh4_idesc* idesc = abuf->idesc;
9467 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 0);
9470 cycles += model_u_write_back_before (current_cpu, idesc, 1);
9473 cycles += model_u_exec_before (current_cpu, idesc, 2);
9476 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
9483 sh4_sh4_model::model_sts_mach_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9485 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9486 const sh4_scache* abuf = sem;
9487 const sh4_idesc* idesc = abuf->idesc;
9491 unsigned long long insn_referenced = abuf->written;
9492 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 0, referenced);
9496 unsigned long long insn_referenced = abuf->written;
9497 cycles += model_u_write_back_after (current_cpu, idesc, 1, referenced);
9501 unsigned long long insn_referenced = abuf->written;
9502 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9506 unsigned long long insn_referenced = abuf->written;
9507 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
9514 sh4_sh4_model::model_stsl_mach_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9516 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9517 const sh4_scache* abuf = sem;
9518 const sh4_idesc* idesc = abuf->idesc;
9522 in_usereg = FLD (in_rn);
9523 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9526 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
9529 cycles += model_u_write_back_before (current_cpu, idesc, 2);
9532 cycles += model_u_exec_before (current_cpu, idesc, 3);
9535 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
9542 sh4_sh4_model::model_stsl_mach_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9544 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9545 const sh4_scache* abuf = sem;
9546 const sh4_idesc* idesc = abuf->idesc;
9550 unsigned long long insn_referenced = abuf->written;
9552 in_usereg = FLD (in_rn);
9553 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9557 unsigned long long insn_referenced = abuf->written;
9558 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
9562 unsigned long long insn_referenced = abuf->written;
9563 cycles += model_u_write_back_after (current_cpu, idesc, 2, referenced);
9567 unsigned long long insn_referenced = abuf->written;
9568 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
9572 unsigned long long insn_referenced = abuf->written;
9573 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
9580 sh4_sh4_model::model_sts_macl_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9582 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9583 const sh4_scache* abuf = sem;
9584 const sh4_idesc* idesc = abuf->idesc;
9587 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 0);
9590 cycles += model_u_write_back_before (current_cpu, idesc, 1);
9593 cycles += model_u_exec_before (current_cpu, idesc, 2);
9596 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
9603 sh4_sh4_model::model_sts_macl_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9605 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9606 const sh4_scache* abuf = sem;
9607 const sh4_idesc* idesc = abuf->idesc;
9611 unsigned long long insn_referenced = abuf->written;
9612 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 0, referenced);
9616 unsigned long long insn_referenced = abuf->written;
9617 cycles += model_u_write_back_after (current_cpu, idesc, 1, referenced);
9621 unsigned long long insn_referenced = abuf->written;
9622 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9626 unsigned long long insn_referenced = abuf->written;
9627 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
9634 sh4_sh4_model::model_stsl_macl_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9636 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9637 const sh4_scache* abuf = sem;
9638 const sh4_idesc* idesc = abuf->idesc;
9642 in_usereg = FLD (in_rn);
9643 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9646 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
9649 cycles += model_u_write_back_before (current_cpu, idesc, 2);
9652 cycles += model_u_exec_before (current_cpu, idesc, 3);
9655 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
9662 sh4_sh4_model::model_stsl_macl_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9664 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9665 const sh4_scache* abuf = sem;
9666 const sh4_idesc* idesc = abuf->idesc;
9670 unsigned long long insn_referenced = abuf->written;
9672 in_usereg = FLD (in_rn);
9673 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9677 unsigned long long insn_referenced = abuf->written;
9678 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
9682 unsigned long long insn_referenced = abuf->written;
9683 cycles += model_u_write_back_after (current_cpu, idesc, 2, referenced);
9687 unsigned long long insn_referenced = abuf->written;
9688 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
9692 unsigned long long insn_referenced = abuf->written;
9693 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
9700 sh4_sh4_model::model_sts_pr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9702 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9703 const sh4_scache* abuf = sem;
9704 const sh4_idesc* idesc = abuf->idesc;
9707 cycles += model_u_use_pr_before (current_cpu, idesc, 0);
9710 cycles += model_u_sts_pr_before (current_cpu, idesc, 1);
9717 sh4_sh4_model::model_sts_pr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9719 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
9720 const sh4_scache* abuf = sem;
9721 const sh4_idesc* idesc = abuf->idesc;
9725 unsigned long long insn_referenced = abuf->written;
9726 cycles += model_u_use_pr_after (current_cpu, idesc, 0, referenced);
9730 unsigned long long insn_referenced = abuf->written;
9731 cycles += model_u_sts_pr_after (current_cpu, idesc, 1, referenced);
9738 sh4_sh4_model::model_stsl_pr_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9740 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9741 const sh4_scache* abuf = sem;
9742 const sh4_idesc* idesc = abuf->idesc;
9746 in_usereg = FLD (in_rn);
9747 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9750 cycles += model_u_use_pr_before (current_cpu, idesc, 1);
9753 cycles += model_u_sts_pr_before (current_cpu, idesc, 2);
9756 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
9763 sh4_sh4_model::model_stsl_pr_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9765 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9766 const sh4_scache* abuf = sem;
9767 const sh4_idesc* idesc = abuf->idesc;
9771 unsigned long long insn_referenced = abuf->written;
9773 in_usereg = FLD (in_rn);
9774 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9778 unsigned long long insn_referenced = abuf->written;
9779 cycles += model_u_use_pr_after (current_cpu, idesc, 1, referenced);
9783 unsigned long long insn_referenced = abuf->written;
9784 cycles += model_u_sts_pr_after (current_cpu, idesc, 2, referenced);
9788 unsigned long long insn_referenced = abuf->written;
9789 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
9796 sh4_sh4_model::model_sub_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9798 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9799 const sh4_scache* abuf = sem;
9800 const sh4_idesc* idesc = abuf->idesc;
9804 in_usereg = FLD (in_rn);
9805 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9809 in_usereg = FLD (in_rm);
9810 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9813 cycles += model_u_exec_before (current_cpu, idesc, 2);
9820 sh4_sh4_model::model_sub_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9822 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9823 const sh4_scache* abuf = sem;
9824 const sh4_idesc* idesc = abuf->idesc;
9828 unsigned long long insn_referenced = abuf->written;
9830 in_usereg = FLD (in_rn);
9831 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9835 unsigned long long insn_referenced = abuf->written;
9837 in_usereg = FLD (in_rm);
9838 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9842 unsigned long long insn_referenced = abuf->written;
9843 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9850 sh4_sh4_model::model_subc_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9852 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9853 const sh4_scache* abuf = sem;
9854 const sh4_idesc* idesc = abuf->idesc;
9858 in_usereg = FLD (in_rn);
9859 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9863 in_usereg = FLD (in_rm);
9864 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9867 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
9870 cycles += model_u_exec_before (current_cpu, idesc, 3);
9877 sh4_sh4_model::model_subc_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9879 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9880 const sh4_scache* abuf = sem;
9881 const sh4_idesc* idesc = abuf->idesc;
9885 unsigned long long insn_referenced = abuf->written;
9887 in_usereg = FLD (in_rn);
9888 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9892 unsigned long long insn_referenced = abuf->written;
9894 in_usereg = FLD (in_rm);
9895 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9899 unsigned long long insn_referenced = abuf->written;
9900 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
9904 unsigned long long insn_referenced = abuf->written;
9905 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
9912 sh4_sh4_model::model_subv_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9914 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9915 const sh4_scache* abuf = sem;
9916 const sh4_idesc* idesc = abuf->idesc;
9920 in_usereg = FLD (in_rn);
9921 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9925 in_usereg = FLD (in_rm);
9926 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9929 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
9932 cycles += model_u_exec_before (current_cpu, idesc, 3);
9935 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
9942 sh4_sh4_model::model_subv_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
9944 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9945 const sh4_scache* abuf = sem;
9946 const sh4_idesc* idesc = abuf->idesc;
9950 unsigned long long insn_referenced = abuf->written;
9952 in_usereg = FLD (in_rn);
9953 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9957 unsigned long long insn_referenced = abuf->written;
9959 in_usereg = FLD (in_rm);
9960 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9964 unsigned long long insn_referenced = abuf->written;
9965 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
9969 unsigned long long insn_referenced = abuf->written;
9970 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
9974 unsigned long long insn_referenced = abuf->written;
9975 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
9982 sh4_sh4_model::model_swapb_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
9984 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
9985 const sh4_scache* abuf = sem;
9986 const sh4_idesc* idesc = abuf->idesc;
9990 in_usereg = FLD (in_rm);
9991 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9994 cycles += model_u_exec_before (current_cpu, idesc, 1);
9997 cycles += model_u_shift_before (current_cpu, idesc, 2);
10004 sh4_sh4_model::model_swapb_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
10006 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
10007 const sh4_scache* abuf = sem;
10008 const sh4_idesc* idesc = abuf->idesc;
10011 int referenced = 0;
10012 unsigned long long insn_referenced = abuf->written;
10013 INT in_usereg = -1;
10014 in_usereg = FLD (in_rm);
10015 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
10018 int referenced = 0;
10019 unsigned long long insn_referenced = abuf->written;
10020 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
10023 int referenced = 0;
10024 unsigned long long insn_referenced = abuf->written;
10025 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
10032 sh4_sh4_model::model_swapw_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
10034 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
10035 const sh4_scache* abuf = sem;
10036 const sh4_idesc* idesc = abuf->idesc;
10039 INT in_usereg = -1;
10040 in_usereg = FLD (in_rm);
10041 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
10044 cycles += model_u_exec_before (current_cpu, idesc, 1);
10047 cycles += model_u_shift_before (current_cpu, idesc, 2);
10054 sh4_sh4_model::model_swapw_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
10056 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
10057 const sh4_scache* abuf = sem;
10058 const sh4_idesc* idesc = abuf->idesc;
10061 int referenced = 0;
10062 unsigned long long insn_referenced = abuf->written;
10063 INT in_usereg = -1;
10064 in_usereg = FLD (in_rm);
10065 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
10068 int referenced = 0;
10069 unsigned long long insn_referenced = abuf->written;
10070 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
10073 int referenced = 0;
10074 unsigned long long insn_referenced = abuf->written;
10075 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
10082 sh4_sh4_model::model_tasb_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
10084 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
10085 const sh4_scache* abuf = sem;
10086 const sh4_idesc* idesc = abuf->idesc;
10089 INT in_usereg = -1;
10090 in_usereg = FLD (in_rn);
10091 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
10094 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
10097 cycles += model_u_tas_before (current_cpu, idesc, 2);
10100 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
10103 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
10110 sh4_sh4_model::model_tasb_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
10112 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
10113 const sh4_scache* abuf = sem;
10114 const sh4_idesc* idesc = abuf->idesc;
10117 int referenced = 0;
10118 unsigned long long insn_referenced = abuf->written;
10119 INT in_usereg = -1;
10120 in_usereg = FLD (in_rn);
10121 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
10124 int referenced = 0;
10125 unsigned long long insn_referenced = abuf->written;
10126 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
10129 int referenced = 0;
10130 unsigned long long insn_referenced = abuf->written;
10131 cycles += model_u_tas_after (current_cpu, idesc, 2, referenced);
10134 int referenced = 0;
10135 unsigned long long insn_referenced = abuf->written;
10136 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
10139 int referenced = 0;
10140 unsigned long long insn_referenced = abuf->written;
10141 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
10148 sh4_sh4_model::model_trapa_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
10150 #define FLD(f) abuf->fields.sfmt_andi_compact.f
10151 const sh4_scache* abuf = sem;
10152 const sh4_idesc* idesc = abuf->idesc;
10155 cycles += model_u_trap_before (current_cpu, idesc, 0);
10162 sh4_sh4_model::model_trapa_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
10164 #define FLD(f) abuf->fields.sfmt_andi_compact.f
10165 const sh4_scache* abuf = sem;
10166 const sh4_idesc* idesc = abuf->idesc;
10169 int referenced = 0;
10170 unsigned long long insn_referenced = abuf->written;
10171 cycles += model_u_trap_after (current_cpu, idesc, 0, referenced);
10178 sh4_sh4_model::model_tst_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
10180 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
10181 const sh4_scache* abuf = sem;
10182 const sh4_idesc* idesc = abuf->idesc;
10185 INT in_usereg = -1;
10186 in_usereg = FLD (in_rn);
10187 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
10190 INT in_usereg = -1;
10191 in_usereg = FLD (in_rm);
10192 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
10195 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
10198 cycles += model_u_exec_before (current_cpu, idesc, 3);
10201 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
10208 sh4_sh4_model::model_tst_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
10210 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
10211 const sh4_scache* abuf = sem;
10212 const sh4_idesc* idesc = abuf->idesc;
10215 int referenced = 0;
10216 unsigned long long insn_referenced = abuf->written;
10217 INT in_usereg = -1;
10218 in_usereg = FLD (in_rn);
10219 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
10222 int referenced = 0;
10223 unsigned long long insn_referenced = abuf->written;
10224 INT in_usereg = -1;
10225 in_usereg = FLD (in_rm);
10226 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
10229 int referenced = 0;
10230 unsigned long long insn_referenced = abuf->written;
10231 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
10234 int referenced = 0;
10235 unsigned long long insn_referenced = abuf->written;
10236 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
10239 int referenced = 0;
10240 unsigned long long insn_referenced = abuf->written;
10241 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
10248 sh4_sh4_model::model_tsti_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
10250 #define FLD(f) abuf->fields.sfmt_andi_compact.f
10251 const sh4_scache* abuf = sem;
10252 const sh4_idesc* idesc = abuf->idesc;
10255 INT in_usereg = -1;
10256 in_usereg = FLD (in_r0);
10257 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
10260 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
10263 cycles += model_u_exec_before (current_cpu, idesc, 2);
10266 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
10273 sh4_sh4_model::model_tsti_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
10275 #define FLD(f) abuf->fields.sfmt_andi_compact.f
10276 const sh4_scache* abuf = sem;
10277 const sh4_idesc* idesc = abuf->idesc;
10280 int referenced = 0;
10281 unsigned long long insn_referenced = abuf->written;
10282 INT in_usereg = -1;
10283 in_usereg = FLD (in_r0);
10284 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
10287 int referenced = 0;
10288 unsigned long long insn_referenced = abuf->written;
10289 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
10292 int referenced = 0;
10293 unsigned long long insn_referenced = abuf->written;
10294 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
10297 int referenced = 0;
10298 unsigned long long insn_referenced = abuf->written;
10299 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
10306 sh4_sh4_model::model_tstb_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
10308 #define FLD(f) abuf->fields.sfmt_andi_compact.f
10309 const sh4_scache* abuf = sem;
10310 const sh4_idesc* idesc = abuf->idesc;
10313 INT in_usereg = -1;
10314 in_usereg = FLD (in_r0);
10315 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
10318 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
10321 cycles += model_u_exec_before (current_cpu, idesc, 2);
10324 cycles += model_u_sx_before (current_cpu, idesc, 3);
10327 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
10330 cycles += model_u_memory_access_before (current_cpu, idesc, 5);
10337 sh4_sh4_model::model_tstb_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
10339 #define FLD(f) abuf->fields.sfmt_andi_compact.f
10340 const sh4_scache* abuf = sem;
10341 const sh4_idesc* idesc = abuf->idesc;
10344 int referenced = 0;
10345 unsigned long long insn_referenced = abuf->written;
10346 INT in_usereg = -1;
10347 in_usereg = FLD (in_r0);
10348 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
10351 int referenced = 0;
10352 unsigned long long insn_referenced = abuf->written;
10353 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
10356 int referenced = 0;
10357 unsigned long long insn_referenced = abuf->written;
10358 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
10361 int referenced = 0;
10362 unsigned long long insn_referenced = abuf->written;
10363 cycles += model_u_sx_after (current_cpu, idesc, 3, referenced);
10366 int referenced = 0;
10367 unsigned long long insn_referenced = abuf->written;
10368 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
10371 int referenced = 0;
10372 unsigned long long insn_referenced = abuf->written;
10373 cycles += model_u_memory_access_after (current_cpu, idesc, 5, referenced);
10380 sh4_sh4_model::model_xor_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
10382 #define FLD(f) abuf->fields.sfmt_and_compact.f
10383 const sh4_scache* abuf = sem;
10384 const sh4_idesc* idesc = abuf->idesc;
10387 INT in_usereg = -1;
10388 in_usereg = FLD (in_rn64);
10389 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
10392 INT in_usereg = -1;
10393 in_usereg = FLD (in_rm64);
10394 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
10397 cycles += model_u_exec_before (current_cpu, idesc, 2);
10404 sh4_sh4_model::model_xor_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
10406 #define FLD(f) abuf->fields.sfmt_and_compact.f
10407 const sh4_scache* abuf = sem;
10408 const sh4_idesc* idesc = abuf->idesc;
10411 int referenced = 0;
10412 unsigned long long insn_referenced = abuf->written;
10413 INT in_usereg = -1;
10414 in_usereg = FLD (in_rn64);
10415 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
10418 int referenced = 0;
10419 unsigned long long insn_referenced = abuf->written;
10420 INT in_usereg = -1;
10421 in_usereg = FLD (in_rm64);
10422 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
10425 int referenced = 0;
10426 unsigned long long insn_referenced = abuf->written;
10427 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
10434 sh4_sh4_model::model_xori_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
10436 #define FLD(f) abuf->fields.sfmt_andi_compact.f
10437 const sh4_scache* abuf = sem;
10438 const sh4_idesc* idesc = abuf->idesc;
10441 INT in_usereg = -1;
10442 in_usereg = FLD (in_r0);
10443 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
10446 cycles += model_u_exec_before (current_cpu, idesc, 1);
10453 sh4_sh4_model::model_xori_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
10455 #define FLD(f) abuf->fields.sfmt_andi_compact.f
10456 const sh4_scache* abuf = sem;
10457 const sh4_idesc* idesc = abuf->idesc;
10460 int referenced = 0;
10461 unsigned long long insn_referenced = abuf->written;
10462 INT in_usereg = -1;
10463 in_usereg = FLD (in_r0);
10464 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
10467 int referenced = 0;
10468 unsigned long long insn_referenced = abuf->written;
10469 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
10476 sh4_sh4_model::model_xorb_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
10478 #define FLD(f) abuf->fields.sfmt_andi_compact.f
10479 const sh4_scache* abuf = sem;
10480 const sh4_idesc* idesc = abuf->idesc;
10483 INT in_usereg = -1;
10484 in_usereg = FLD (in_r0);
10485 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
10488 cycles += model_u_logic_b_before (current_cpu, idesc, 1);
10491 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
10498 sh4_sh4_model::model_xorb_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
10500 #define FLD(f) abuf->fields.sfmt_andi_compact.f
10501 const sh4_scache* abuf = sem;
10502 const sh4_idesc* idesc = abuf->idesc;
10505 int referenced = 0;
10506 unsigned long long insn_referenced = abuf->written;
10507 INT in_usereg = -1;
10508 in_usereg = FLD (in_r0);
10509 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
10512 int referenced = 0;
10513 unsigned long long insn_referenced = abuf->written;
10514 cycles += model_u_logic_b_after (current_cpu, idesc, 1, referenced);
10517 int referenced = 0;
10518 unsigned long long insn_referenced = abuf->written;
10519 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
10526 sh4_sh4_model::model_xtrct_compact_before (sh4_cpu *current_cpu, sh4_scache *sem)
10528 #define FLD(f) abuf->fields.sfmt_macl_compact.f
10529 const sh4_scache* abuf = sem;
10530 const sh4_idesc* idesc = abuf->idesc;
10533 INT in_usereg = -1;
10534 in_usereg = FLD (in_rn);
10535 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
10538 INT in_usereg = -1;
10539 in_usereg = FLD (in_rm);
10540 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
10543 cycles += model_u_exec_before (current_cpu, idesc, 2);
10546 cycles += model_u_shift_before (current_cpu, idesc, 3);
10553 sh4_sh4_model::model_xtrct_compact_after (sh4_cpu *current_cpu, sh4_scache *sem)
10555 #define FLD(f) abuf->fields.sfmt_macl_compact.f
10556 const sh4_scache* abuf = sem;
10557 const sh4_idesc* idesc = abuf->idesc;
10560 int referenced = 0;
10561 unsigned long long insn_referenced = abuf->written;
10562 INT in_usereg = -1;
10563 in_usereg = FLD (in_rn);
10564 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
10567 int referenced = 0;
10568 unsigned long long insn_referenced = abuf->written;
10569 INT in_usereg = -1;
10570 in_usereg = FLD (in_rm);
10571 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
10574 int referenced = 0;
10575 unsigned long long insn_referenced = abuf->written;
10576 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
10579 int referenced = 0;
10580 unsigned long long insn_referenced = abuf->written;
10581 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
10587 /* We assume UNIT_NONE == 0 because the tables don't always terminate
10588 entries with it. */
10590 /* Model timing data for `sh4'. */
10592 const sh4_sh4_model::insn_timing sh4_sh4_model::timing[] = {
10593 { SH4_INSN_X_INVALID, 0, 0, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10594 { SH4_INSN_ADD_COMPACT, & sh4_sh4_model::model_add_compact_before, & sh4_sh4_model::model_add_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10595 { SH4_INSN_ADDI_COMPACT, & sh4_sh4_model::model_addi_compact_before, & sh4_sh4_model::model_addi_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10596 { SH4_INSN_ADDC_COMPACT, & sh4_sh4_model::model_addc_compact_before, & sh4_sh4_model::model_addc_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10597 { SH4_INSN_ADDV_COMPACT, & sh4_sh4_model::model_addv_compact_before, & sh4_sh4_model::model_addv_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10598 { SH4_INSN_AND_COMPACT, & sh4_sh4_model::model_and_compact_before, & sh4_sh4_model::model_and_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10599 { SH4_INSN_ANDI_COMPACT, & sh4_sh4_model::model_andi_compact_before, & sh4_sh4_model::model_andi_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10600 { SH4_INSN_ANDB_COMPACT, & sh4_sh4_model::model_andb_compact_before, & sh4_sh4_model::model_andb_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LOGIC_B, 0, 3 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10601 { SH4_INSN_BF_COMPACT, & sh4_sh4_model::model_bf_compact_before, & sh4_sh4_model::model_bf_compact_after, { { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_BRANCH, 0, 3 } } },
10602 { SH4_INSN_BFS_COMPACT, & sh4_sh4_model::model_bfs_compact_before, & sh4_sh4_model::model_bfs_compact_after, { { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_BRANCH, 0, 2 } } },
10603 { SH4_INSN_BRA_COMPACT, & sh4_sh4_model::model_bra_compact_before, & sh4_sh4_model::model_bra_compact_after, { { sh4_sh4_model::UNIT_U_BRANCH, 0, 2 } } },
10604 { SH4_INSN_BRAF_COMPACT, & sh4_sh4_model::model_braf_compact_before, & sh4_sh4_model::model_braf_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_JMP, 0, 2 } } },
10605 { SH4_INSN_BSR_COMPACT, & sh4_sh4_model::model_bsr_compact_before, & sh4_sh4_model::model_bsr_compact_after, { { sh4_sh4_model::UNIT_U_BRANCH, 0, 2 } } },
10606 { SH4_INSN_BSRF_COMPACT, & sh4_sh4_model::model_bsrf_compact_before, & sh4_sh4_model::model_bsrf_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_JSR, 0, 2 } } },
10607 { SH4_INSN_BT_COMPACT, & sh4_sh4_model::model_bt_compact_before, & sh4_sh4_model::model_bt_compact_after, { { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_BRANCH, 0, 3 } } },
10608 { SH4_INSN_BTS_COMPACT, & sh4_sh4_model::model_bts_compact_before, & sh4_sh4_model::model_bts_compact_after, { { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_BRANCH, 0, 2 } } },
10609 { SH4_INSN_CLRMAC_COMPACT, & sh4_sh4_model::model_clrmac_compact_before, & sh4_sh4_model::model_clrmac_compact_after, { { sh4_sh4_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_MAC, 0, 0 } } },
10610 { SH4_INSN_CLRS_COMPACT, & sh4_sh4_model::model_clrs_compact_before, & sh4_sh4_model::model_clrs_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10611 { SH4_INSN_CLRT_COMPACT, & sh4_sh4_model::model_clrt_compact_before, & sh4_sh4_model::model_clrt_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10612 { SH4_INSN_CMPEQ_COMPACT, & sh4_sh4_model::model_cmpeq_compact_before, & sh4_sh4_model::model_cmpeq_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10613 { SH4_INSN_CMPEQI_COMPACT, & sh4_sh4_model::model_cmpeqi_compact_before, & sh4_sh4_model::model_cmpeqi_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10614 { SH4_INSN_CMPGE_COMPACT, & sh4_sh4_model::model_cmpge_compact_before, & sh4_sh4_model::model_cmpge_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10615 { SH4_INSN_CMPGT_COMPACT, & sh4_sh4_model::model_cmpgt_compact_before, & sh4_sh4_model::model_cmpgt_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10616 { SH4_INSN_CMPHI_COMPACT, & sh4_sh4_model::model_cmphi_compact_before, & sh4_sh4_model::model_cmphi_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10617 { SH4_INSN_CMPHS_COMPACT, & sh4_sh4_model::model_cmphs_compact_before, & sh4_sh4_model::model_cmphs_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10618 { SH4_INSN_CMPPL_COMPACT, & sh4_sh4_model::model_cmppl_compact_before, & sh4_sh4_model::model_cmppl_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10619 { SH4_INSN_CMPPZ_COMPACT, & sh4_sh4_model::model_cmppz_compact_before, & sh4_sh4_model::model_cmppz_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10620 { SH4_INSN_CMPSTR_COMPACT, & sh4_sh4_model::model_cmpstr_compact_before, & sh4_sh4_model::model_cmpstr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10621 { SH4_INSN_DIV0S_COMPACT, & sh4_sh4_model::model_div0s_compact_before, & sh4_sh4_model::model_div0s_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10622 { SH4_INSN_DIV0U_COMPACT, & sh4_sh4_model::model_div0u_compact_before, & sh4_sh4_model::model_div0u_compact_after, { { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10623 { SH4_INSN_DIV1_COMPACT, & sh4_sh4_model::model_div1_compact_before, & sh4_sh4_model::model_div1_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10624 { SH4_INSN_DIVU_COMPACT, & sh4_sh4_model::model_divu_compact_before, & sh4_sh4_model::model_divu_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 34 } } },
10625 { SH4_INSN_MULR_COMPACT, & sh4_sh4_model::model_mulr_compact_before, & sh4_sh4_model::model_mulr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_MULR, 1, 2 }, { sh4_sh4_model::UNIT_U_MULR_GR, 0, 0 } } },
10626 { SH4_INSN_DMULSL_COMPACT, & sh4_sh4_model::model_dmulsl_compact_before, & sh4_sh4_model::model_dmulsl_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_DMUL, 1, 2 } } },
10627 { SH4_INSN_DMULUL_COMPACT, & sh4_sh4_model::model_dmulul_compact_before, & sh4_sh4_model::model_dmulul_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_DMUL, 1, 2 } } },
10628 { SH4_INSN_DT_COMPACT, & sh4_sh4_model::model_dt_compact_before, & sh4_sh4_model::model_dt_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10629 { SH4_INSN_EXTSB_COMPACT, & sh4_sh4_model::model_extsb_compact_before, & sh4_sh4_model::model_extsb_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10630 { SH4_INSN_EXTSW_COMPACT, & sh4_sh4_model::model_extsw_compact_before, & sh4_sh4_model::model_extsw_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10631 { SH4_INSN_EXTUB_COMPACT, & sh4_sh4_model::model_extub_compact_before, & sh4_sh4_model::model_extub_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10632 { SH4_INSN_EXTUW_COMPACT, & sh4_sh4_model::model_extuw_compact_before, & sh4_sh4_model::model_extuw_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10633 { SH4_INSN_FABS_COMPACT, & sh4_sh4_model::model_fabs_compact_before, & sh4_sh4_model::model_fabs_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FR_0, 0, 0 } } },
10634 { SH4_INSN_FADD_COMPACT, & sh4_sh4_model::model_fadd_compact_before, & sh4_sh4_model::model_fadd_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FR, 0, 0 } } },
10635 { SH4_INSN_FCMPEQ_COMPACT, & sh4_sh4_model::model_fcmpeq_compact_before, & sh4_sh4_model::model_fcmpeq_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FCMP, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU, 0, 0 } } },
10636 { SH4_INSN_FCMPGT_COMPACT, & sh4_sh4_model::model_fcmpgt_compact_before, & sh4_sh4_model::model_fcmpgt_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FCMP, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU, 0, 0 } } },
10637 { SH4_INSN_FCNVDS_COMPACT, & sh4_sh4_model::model_fcnvds_compact_before, & sh4_sh4_model::model_fcnvds_compact_after, { { sh4_sh4_model::UNIT_U_USE_DR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FCNV, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FPUL, 0, 0 } } },
10638 { SH4_INSN_FCNVSD_COMPACT, & sh4_sh4_model::model_fcnvsd_compact_before, & sh4_sh4_model::model_fcnvsd_compact_after, { { sh4_sh4_model::UNIT_U_USE_FPUL, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FCNV, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_DR, 0, 0 } } },
10639 { SH4_INSN_FDIV_COMPACT, & sh4_sh4_model::model_fdiv_compact_before, & sh4_sh4_model::model_fdiv_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FDIV, 0, 0 } } },
10640 { SH4_INSN_FIPR_COMPACT, & sh4_sh4_model::model_fipr_compact_before, & sh4_sh4_model::model_fipr_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FIPR, 0, 0 } } },
10641 { SH4_INSN_FLDS_COMPACT, & sh4_sh4_model::model_flds_compact_before, & sh4_sh4_model::model_flds_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FLDS_FPUL, 0, 0 } } },
10642 { SH4_INSN_FLDI0_COMPACT, & sh4_sh4_model::model_fldi0_compact_before, & sh4_sh4_model::model_fldi0_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FR_0, 0, 0 } } },
10643 { SH4_INSN_FLDI1_COMPACT, & sh4_sh4_model::model_fldi1_compact_before, & sh4_sh4_model::model_fldi1_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FR_0, 0, 0 } } },
10644 { SH4_INSN_FLOAT_COMPACT, & sh4_sh4_model::model_float_compact_before, & sh4_sh4_model::model_float_compact_after, { { sh4_sh4_model::UNIT_U_USE_FPUL, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FR, 0, 0 } } },
10645 { SH4_INSN_FMAC_COMPACT, & sh4_sh4_model::model_fmac_compact_before, & sh4_sh4_model::model_fmac_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FR, 0, 0 } } },
10646 { SH4_INSN_FMOV1_COMPACT, & sh4_sh4_model::model_fmov1_compact_before, & sh4_sh4_model::model_fmov1_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FR_0, 0, 0 } } },
10647 { SH4_INSN_FMOV2_COMPACT, & sh4_sh4_model::model_fmov2_compact_before, & sh4_sh4_model::model_fmov2_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_FR, 0, 0 } } },
10648 { SH4_INSN_FMOV3_COMPACT, & sh4_sh4_model::model_fmov3_compact_before, & sh4_sh4_model::model_fmov3_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_FR, 0, 0 } } },
10649 { SH4_INSN_FMOV4_COMPACT, & sh4_sh4_model::model_fmov4_compact_before, & sh4_sh4_model::model_fmov4_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_FR, 0, 0 } } },
10650 { SH4_INSN_FMOV5_COMPACT, & sh4_sh4_model::model_fmov5_compact_before, & sh4_sh4_model::model_fmov5_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
10651 { SH4_INSN_FMOV6_COMPACT, & sh4_sh4_model::model_fmov6_compact_before, & sh4_sh4_model::model_fmov6_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
10652 { SH4_INSN_FMOV7_COMPACT, & sh4_sh4_model::model_fmov7_compact_before, & sh4_sh4_model::model_fmov7_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
10653 { SH4_INSN_FMOV8_COMPACT, & sh4_sh4_model::model_fmov8_compact_before, & sh4_sh4_model::model_fmov8_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 1 }, { sh4_sh4_model::UNIT_U_LOAD_DR, 0, 0 } } },
10654 { SH4_INSN_FMOV9_COMPACT, & sh4_sh4_model::model_fmov9_compact_before, & sh4_sh4_model::model_fmov9_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 1 } } },
10655 { SH4_INSN_FMUL_COMPACT, & sh4_sh4_model::model_fmul_compact_before, & sh4_sh4_model::model_fmul_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FR, 0, 0 } } },
10656 { SH4_INSN_FNEG_COMPACT, & sh4_sh4_model::model_fneg_compact_before, & sh4_sh4_model::model_fneg_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FR_0, 0, 0 } } },
10657 { SH4_INSN_FRCHG_COMPACT, & sh4_sh4_model::model_frchg_compact_before, & sh4_sh4_model::model_frchg_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10658 { SH4_INSN_FSCHG_COMPACT, & sh4_sh4_model::model_fschg_compact_before, & sh4_sh4_model::model_fschg_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10659 { SH4_INSN_FSQRT_COMPACT, & sh4_sh4_model::model_fsqrt_compact_before, & sh4_sh4_model::model_fsqrt_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FSQRT, 0, 0 } } },
10660 { SH4_INSN_FSTS_COMPACT, & sh4_sh4_model::model_fsts_compact_before, & sh4_sh4_model::model_fsts_compact_after, { { sh4_sh4_model::UNIT_U_USE_FPUL, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FR_0, 0, 0 } } },
10661 { SH4_INSN_FSUB_COMPACT, & sh4_sh4_model::model_fsub_compact_before, & sh4_sh4_model::model_fsub_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FR, 0, 0 } } },
10662 { SH4_INSN_FTRC_COMPACT, & sh4_sh4_model::model_ftrc_compact_before, & sh4_sh4_model::model_ftrc_compact_after, { { sh4_sh4_model::UNIT_U_USE_FR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_FPUL, 0, 0 } } },
10663 { SH4_INSN_FTRV_COMPACT, & sh4_sh4_model::model_ftrv_compact_before, & sh4_sh4_model::model_ftrv_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_FTRV, 0, 0 } } },
10664 { SH4_INSN_JMP_COMPACT, & sh4_sh4_model::model_jmp_compact_before, & sh4_sh4_model::model_jmp_compact_after, { { sh4_sh4_model::UNIT_U_JMP, 0, 2 } } },
10665 { SH4_INSN_JSR_COMPACT, & sh4_sh4_model::model_jsr_compact_before, & sh4_sh4_model::model_jsr_compact_after, { { sh4_sh4_model::UNIT_U_JSR, 0, 2 } } },
10666 { SH4_INSN_LDC_GBR_COMPACT, & sh4_sh4_model::model_ldc_gbr_compact_before, & sh4_sh4_model::model_ldc_gbr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LDC_GBR, 0, 1 } } },
10667 { SH4_INSN_LDC_VBR_COMPACT, & sh4_sh4_model::model_ldc_vbr_compact_before, & sh4_sh4_model::model_ldc_vbr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10668 { SH4_INSN_LDC_SR_COMPACT, & sh4_sh4_model::model_ldc_sr_compact_before, & sh4_sh4_model::model_ldc_sr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LDC_SR, 0, 1 } } },
10669 { SH4_INSN_LDCL_GBR_COMPACT, & sh4_sh4_model::model_ldcl_gbr_compact_before, & sh4_sh4_model::model_ldcl_gbr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LDCL, 0, 3 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GBR, 0, 0 } } },
10670 { SH4_INSN_LDCL_VBR_COMPACT, & sh4_sh4_model::model_ldcl_vbr_compact_before, & sh4_sh4_model::model_ldcl_vbr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LDCL_VBR, 0, 3 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_VBR, 0, 0 } } },
10671 { SH4_INSN_LDS_FPSCR_COMPACT, & sh4_sh4_model::model_lds_fpscr_compact_before, & sh4_sh4_model::model_lds_fpscr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LDS_FPSCR, 0, 3 } } },
10672 { SH4_INSN_LDSL_FPSCR_COMPACT, & sh4_sh4_model::model_ldsl_fpscr_compact_before, & sh4_sh4_model::model_ldsl_fpscr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LDS_FPSCR, 0, 3 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LDSL_FPSCR, 0, 0 } } },
10673 { SH4_INSN_LDS_FPUL_COMPACT, & sh4_sh4_model::model_lds_fpul_compact_before, & sh4_sh4_model::model_lds_fpul_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_FPUL, 0, 0 } } },
10674 { SH4_INSN_LDSL_FPUL_COMPACT, & sh4_sh4_model::model_ldsl_fpul_compact_before, & sh4_sh4_model::model_ldsl_fpul_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_FPUL, 0, 0 } } },
10675 { SH4_INSN_LDS_MACH_COMPACT, & sh4_sh4_model::model_lds_mach_compact_before, & sh4_sh4_model::model_lds_mach_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_MAC, 0, 0 } } },
10676 { SH4_INSN_LDSL_MACH_COMPACT, & sh4_sh4_model::model_ldsl_mach_compact_before, & sh4_sh4_model::model_ldsl_mach_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_MAC, 0, 0 } } },
10677 { SH4_INSN_LDS_MACL_COMPACT, & sh4_sh4_model::model_lds_macl_compact_before, & sh4_sh4_model::model_lds_macl_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_MAC, 0, 0 } } },
10678 { SH4_INSN_LDSL_MACL_COMPACT, & sh4_sh4_model::model_ldsl_macl_compact_before, & sh4_sh4_model::model_ldsl_macl_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_MAC, 0, 0 } } },
10679 { SH4_INSN_LDS_PR_COMPACT, & sh4_sh4_model::model_lds_pr_compact_before, & sh4_sh4_model::model_lds_pr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LDS_PR, 0, 1 } } },
10680 { SH4_INSN_LDSL_PR_COMPACT, & sh4_sh4_model::model_ldsl_pr_compact_before, & sh4_sh4_model::model_ldsl_pr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LDS_PR, 0, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_PR, 0, 0 } } },
10681 { SH4_INSN_MACL_COMPACT, & sh4_sh4_model::model_macl_compact_before, & sh4_sh4_model::model_macl_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_MACL, 1, 2 } } },
10682 { SH4_INSN_MACW_COMPACT, & sh4_sh4_model::model_macw_compact_before, & sh4_sh4_model::model_macw_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_MACW, 1, 2 } } },
10683 { SH4_INSN_MOV_COMPACT, & sh4_sh4_model::model_mov_compact_before, & sh4_sh4_model::model_mov_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10684 { SH4_INSN_MOVI_COMPACT, & sh4_sh4_model::model_movi_compact_before, & sh4_sh4_model::model_movi_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10685 { SH4_INSN_MOVI20_COMPACT, & sh4_sh4_model::model_movi20_compact_before, & sh4_sh4_model::model_movi20_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10686 { SH4_INSN_MOVB1_COMPACT, & sh4_sh4_model::model_movb1_compact_before, & sh4_sh4_model::model_movb1_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10687 { SH4_INSN_MOVB2_COMPACT, & sh4_sh4_model::model_movb2_compact_before, & sh4_sh4_model::model_movb2_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10688 { SH4_INSN_MOVB3_COMPACT, & sh4_sh4_model::model_movb3_compact_before, & sh4_sh4_model::model_movb3_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10689 { SH4_INSN_MOVB4_COMPACT, & sh4_sh4_model::model_movb4_compact_before, & sh4_sh4_model::model_movb4_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SX, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10690 { SH4_INSN_MOVB5_COMPACT, & sh4_sh4_model::model_movb5_compact_before, & sh4_sh4_model::model_movb5_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10691 { SH4_INSN_MOVB6_COMPACT, & sh4_sh4_model::model_movb6_compact_before, & sh4_sh4_model::model_movb6_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10692 { SH4_INSN_MOVB7_COMPACT, & sh4_sh4_model::model_movb7_compact_before, & sh4_sh4_model::model_movb7_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10693 { SH4_INSN_MOVB8_COMPACT, & sh4_sh4_model::model_movb8_compact_before, & sh4_sh4_model::model_movb8_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10694 { SH4_INSN_MOVB9_COMPACT, & sh4_sh4_model::model_movb9_compact_before, & sh4_sh4_model::model_movb9_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10695 { SH4_INSN_MOVB10_COMPACT, & sh4_sh4_model::model_movb10_compact_before, & sh4_sh4_model::model_movb10_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10696 { SH4_INSN_MOVL1_COMPACT, & sh4_sh4_model::model_movl1_compact_before, & sh4_sh4_model::model_movl1_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10697 { SH4_INSN_MOVL2_COMPACT, & sh4_sh4_model::model_movl2_compact_before, & sh4_sh4_model::model_movl2_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10698 { SH4_INSN_MOVL3_COMPACT, & sh4_sh4_model::model_movl3_compact_before, & sh4_sh4_model::model_movl3_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10699 { SH4_INSN_MOVL4_COMPACT, & sh4_sh4_model::model_movl4_compact_before, & sh4_sh4_model::model_movl4_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SX, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10700 { SH4_INSN_MOVL5_COMPACT, & sh4_sh4_model::model_movl5_compact_before, & sh4_sh4_model::model_movl5_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10701 { SH4_INSN_MOVL6_COMPACT, & sh4_sh4_model::model_movl6_compact_before, & sh4_sh4_model::model_movl6_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10702 { SH4_INSN_MOVL7_COMPACT, & sh4_sh4_model::model_movl7_compact_before, & sh4_sh4_model::model_movl7_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10703 { SH4_INSN_MOVL8_COMPACT, & sh4_sh4_model::model_movl8_compact_before, & sh4_sh4_model::model_movl8_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10704 { SH4_INSN_MOVL9_COMPACT, & sh4_sh4_model::model_movl9_compact_before, & sh4_sh4_model::model_movl9_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10705 { SH4_INSN_MOVL10_COMPACT, & sh4_sh4_model::model_movl10_compact_before, & sh4_sh4_model::model_movl10_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10706 { SH4_INSN_MOVL11_COMPACT, & sh4_sh4_model::model_movl11_compact_before, & sh4_sh4_model::model_movl11_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10707 { SH4_INSN_MOVL12_COMPACT, & sh4_sh4_model::model_movl12_compact_before, & sh4_sh4_model::model_movl12_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10708 { SH4_INSN_MOVL13_COMPACT, & sh4_sh4_model::model_movl13_compact_before, & sh4_sh4_model::model_movl13_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10709 { SH4_INSN_MOVW1_COMPACT, & sh4_sh4_model::model_movw1_compact_before, & sh4_sh4_model::model_movw1_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10710 { SH4_INSN_MOVW2_COMPACT, & sh4_sh4_model::model_movw2_compact_before, & sh4_sh4_model::model_movw2_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10711 { SH4_INSN_MOVW3_COMPACT, & sh4_sh4_model::model_movw3_compact_before, & sh4_sh4_model::model_movw3_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10712 { SH4_INSN_MOVW4_COMPACT, & sh4_sh4_model::model_movw4_compact_before, & sh4_sh4_model::model_movw4_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SX, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10713 { SH4_INSN_MOVW5_COMPACT, & sh4_sh4_model::model_movw5_compact_before, & sh4_sh4_model::model_movw5_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10714 { SH4_INSN_MOVW6_COMPACT, & sh4_sh4_model::model_movw6_compact_before, & sh4_sh4_model::model_movw6_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10715 { SH4_INSN_MOVW7_COMPACT, & sh4_sh4_model::model_movw7_compact_before, & sh4_sh4_model::model_movw7_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10716 { SH4_INSN_MOVW8_COMPACT, & sh4_sh4_model::model_movw8_compact_before, & sh4_sh4_model::model_movw8_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10717 { SH4_INSN_MOVW9_COMPACT, & sh4_sh4_model::model_movw9_compact_before, & sh4_sh4_model::model_movw9_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10718 { SH4_INSN_MOVW10_COMPACT, & sh4_sh4_model::model_movw10_compact_before, & sh4_sh4_model::model_movw10_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10719 { SH4_INSN_MOVW11_COMPACT, & sh4_sh4_model::model_movw11_compact_before, & sh4_sh4_model::model_movw11_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_LOAD_GR, 0, 0 } } },
10720 { SH4_INSN_MOVA_COMPACT, & sh4_sh4_model::model_mova_compact_before, & sh4_sh4_model::model_mova_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10721 { SH4_INSN_MOVCAL_COMPACT, & sh4_sh4_model::model_movcal_compact_before, & sh4_sh4_model::model_movcal_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_OCB, 0, 6 } } },
10722 { SH4_INSN_MOVT_COMPACT, & sh4_sh4_model::model_movt_compact_before, & sh4_sh4_model::model_movt_compact_after, { { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10723 { SH4_INSN_MULL_COMPACT, & sh4_sh4_model::model_mull_compact_before, & sh4_sh4_model::model_mull_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_MULL, 1, 2 } } },
10724 { SH4_INSN_MULSW_COMPACT, & sh4_sh4_model::model_mulsw_compact_before, & sh4_sh4_model::model_mulsw_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_MULSW, 1, 1 }, { sh4_sh4_model::UNIT_U_MULTIPLY, 1, 2 } } },
10725 { SH4_INSN_MULUW_COMPACT, & sh4_sh4_model::model_muluw_compact_before, & sh4_sh4_model::model_muluw_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_MULSW, 1, 1 }, { sh4_sh4_model::UNIT_U_MULTIPLY, 1, 2 } } },
10726 { SH4_INSN_NEG_COMPACT, & sh4_sh4_model::model_neg_compact_before, & sh4_sh4_model::model_neg_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10727 { SH4_INSN_NEGC_COMPACT, & sh4_sh4_model::model_negc_compact_before, & sh4_sh4_model::model_negc_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10728 { SH4_INSN_NOP_COMPACT, & sh4_sh4_model::model_nop_compact_before, & sh4_sh4_model::model_nop_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10729 { SH4_INSN_NOT_COMPACT, & sh4_sh4_model::model_not_compact_before, & sh4_sh4_model::model_not_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10730 { SH4_INSN_OCBI_COMPACT, & sh4_sh4_model::model_ocbi_compact_before, & sh4_sh4_model::model_ocbi_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_OCB, 0, 1 } } },
10731 { SH4_INSN_OCBP_COMPACT, & sh4_sh4_model::model_ocbp_compact_before, & sh4_sh4_model::model_ocbp_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_OCB, 0, 4 } } },
10732 { SH4_INSN_OCBWB_COMPACT, & sh4_sh4_model::model_ocbwb_compact_before, & sh4_sh4_model::model_ocbwb_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_OCB, 0, 4 } } },
10733 { SH4_INSN_OR_COMPACT, & sh4_sh4_model::model_or_compact_before, & sh4_sh4_model::model_or_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10734 { SH4_INSN_ORI_COMPACT, & sh4_sh4_model::model_ori_compact_before, & sh4_sh4_model::model_ori_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10735 { SH4_INSN_ORB_COMPACT, & sh4_sh4_model::model_orb_compact_before, & sh4_sh4_model::model_orb_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LOGIC_B, 0, 3 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10736 { SH4_INSN_PREF_COMPACT, & sh4_sh4_model::model_pref_compact_before, & sh4_sh4_model::model_pref_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10737 { SH4_INSN_ROTCL_COMPACT, & sh4_sh4_model::model_rotcl_compact_before, & sh4_sh4_model::model_rotcl_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10738 { SH4_INSN_ROTCR_COMPACT, & sh4_sh4_model::model_rotcr_compact_before, & sh4_sh4_model::model_rotcr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10739 { SH4_INSN_ROTL_COMPACT, & sh4_sh4_model::model_rotl_compact_before, & sh4_sh4_model::model_rotl_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10740 { SH4_INSN_ROTR_COMPACT, & sh4_sh4_model::model_rotr_compact_before, & sh4_sh4_model::model_rotr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10741 { SH4_INSN_RTS_COMPACT, & sh4_sh4_model::model_rts_compact_before, & sh4_sh4_model::model_rts_compact_after, { { sh4_sh4_model::UNIT_U_JMP, 0, 2 } } },
10742 { SH4_INSN_SETS_COMPACT, & sh4_sh4_model::model_sets_compact_before, & sh4_sh4_model::model_sets_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10743 { SH4_INSN_SETT_COMPACT, & sh4_sh4_model::model_sett_compact_before, & sh4_sh4_model::model_sett_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10744 { SH4_INSN_SHAD_COMPACT, & sh4_sh4_model::model_shad_compact_before, & sh4_sh4_model::model_shad_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10745 { SH4_INSN_SHAL_COMPACT, & sh4_sh4_model::model_shal_compact_before, & sh4_sh4_model::model_shal_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10746 { SH4_INSN_SHAR_COMPACT, & sh4_sh4_model::model_shar_compact_before, & sh4_sh4_model::model_shar_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10747 { SH4_INSN_SHLD_COMPACT, & sh4_sh4_model::model_shld_compact_before, & sh4_sh4_model::model_shld_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10748 { SH4_INSN_SHLL_COMPACT, & sh4_sh4_model::model_shll_compact_before, & sh4_sh4_model::model_shll_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10749 { SH4_INSN_SHLL2_COMPACT, & sh4_sh4_model::model_shll2_compact_before, & sh4_sh4_model::model_shll2_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10750 { SH4_INSN_SHLL8_COMPACT, & sh4_sh4_model::model_shll8_compact_before, & sh4_sh4_model::model_shll8_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10751 { SH4_INSN_SHLL16_COMPACT, & sh4_sh4_model::model_shll16_compact_before, & sh4_sh4_model::model_shll16_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10752 { SH4_INSN_SHLR_COMPACT, & sh4_sh4_model::model_shlr_compact_before, & sh4_sh4_model::model_shlr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10753 { SH4_INSN_SHLR2_COMPACT, & sh4_sh4_model::model_shlr2_compact_before, & sh4_sh4_model::model_shlr2_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10754 { SH4_INSN_SHLR8_COMPACT, & sh4_sh4_model::model_shlr8_compact_before, & sh4_sh4_model::model_shlr8_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10755 { SH4_INSN_SHLR16_COMPACT, & sh4_sh4_model::model_shlr16_compact_before, & sh4_sh4_model::model_shlr16_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10756 { SH4_INSN_STC_GBR_COMPACT, & sh4_sh4_model::model_stc_gbr_compact_before, & sh4_sh4_model::model_stc_gbr_compact_after, { { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10757 { SH4_INSN_STC_VBR_COMPACT, & sh4_sh4_model::model_stc_vbr_compact_before, & sh4_sh4_model::model_stc_vbr_compact_after, { { sh4_sh4_model::UNIT_U_STC_VBR, 0, 1 } } },
10758 { SH4_INSN_STCL_GBR_COMPACT, & sh4_sh4_model::model_stcl_gbr_compact_before, & sh4_sh4_model::model_stcl_gbr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LDCL, 0, 2 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10759 { SH4_INSN_STCL_VBR_COMPACT, & sh4_sh4_model::model_stcl_vbr_compact_before, & sh4_sh4_model::model_stcl_vbr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LDCL, 0, 2 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10760 { SH4_INSN_STS_FPSCR_COMPACT, & sh4_sh4_model::model_sts_fpscr_compact_before, & sh4_sh4_model::model_sts_fpscr_compact_after, { { sh4_sh4_model::UNIT_U_USE_FPSCR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_LOAD_GR, 0, 0 } } },
10761 { SH4_INSN_STSL_FPSCR_COMPACT, & sh4_sh4_model::model_stsl_fpscr_compact_before, & sh4_sh4_model::model_stsl_fpscr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_FPSCR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
10762 { SH4_INSN_STS_FPUL_COMPACT, & sh4_sh4_model::model_sts_fpul_compact_before, & sh4_sh4_model::model_sts_fpul_compact_after, { { sh4_sh4_model::UNIT_U_USE_FPUL, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_LOAD_GR, 0, 0 } } },
10763 { SH4_INSN_STSL_FPUL_COMPACT, & sh4_sh4_model::model_stsl_fpul_compact_before, & sh4_sh4_model::model_stsl_fpul_compact_after, { { sh4_sh4_model::UNIT_U_USE_FPUL, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh4_sh4_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
10764 { SH4_INSN_STS_MACH_COMPACT, & sh4_sh4_model::model_sts_mach_compact_before, & sh4_sh4_model::model_sts_mach_compact_after, { { sh4_sh4_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_sh4_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10765 { SH4_INSN_STSL_MACH_COMPACT, & sh4_sh4_model::model_stsl_mach_compact_before, & sh4_sh4_model::model_stsl_mach_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_sh4_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10766 { SH4_INSN_STS_MACL_COMPACT, & sh4_sh4_model::model_sts_macl_compact_before, & sh4_sh4_model::model_sts_macl_compact_after, { { sh4_sh4_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_sh4_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10767 { SH4_INSN_STSL_MACL_COMPACT, & sh4_sh4_model::model_stsl_macl_compact_before, & sh4_sh4_model::model_stsl_macl_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_sh4_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10768 { SH4_INSN_STS_PR_COMPACT, & sh4_sh4_model::model_sts_pr_compact_before, & sh4_sh4_model::model_sts_pr_compact_after, { { sh4_sh4_model::UNIT_U_USE_PR, 0, 0 }, { sh4_sh4_model::UNIT_U_STS_PR, 0, 1 } } },
10769 { SH4_INSN_STSL_PR_COMPACT, & sh4_sh4_model::model_stsl_pr_compact_before, & sh4_sh4_model::model_stsl_pr_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_PR, 0, 0 }, { sh4_sh4_model::UNIT_U_STS_PR, 0, 1 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10770 { SH4_INSN_SUB_COMPACT, & sh4_sh4_model::model_sub_compact_before, & sh4_sh4_model::model_sub_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10771 { SH4_INSN_SUBC_COMPACT, & sh4_sh4_model::model_subc_compact_before, & sh4_sh4_model::model_subc_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10772 { SH4_INSN_SUBV_COMPACT, & sh4_sh4_model::model_subv_compact_before, & sh4_sh4_model::model_subv_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10773 { SH4_INSN_SWAPB_COMPACT, & sh4_sh4_model::model_swapb_compact_before, & sh4_sh4_model::model_swapb_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10774 { SH4_INSN_SWAPW_COMPACT, & sh4_sh4_model::model_swapw_compact_before, & sh4_sh4_model::model_swapw_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },
10775 { SH4_INSN_TASB_COMPACT, & sh4_sh4_model::model_tasb_compact_before, & sh4_sh4_model::model_tasb_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_TAS, 1, 4 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10776 { SH4_INSN_TRAPA_COMPACT, & sh4_sh4_model::model_trapa_compact_before, & sh4_sh4_model::model_trapa_compact_after, { { sh4_sh4_model::UNIT_U_TRAP, 0, 8 } } },
10777 { SH4_INSN_TST_COMPACT, & sh4_sh4_model::model_tst_compact_before, & sh4_sh4_model::model_tst_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10778 { SH4_INSN_TSTI_COMPACT, & sh4_sh4_model::model_tsti_compact_before, & sh4_sh4_model::model_tsti_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
10779 { SH4_INSN_TSTB_COMPACT, & sh4_sh4_model::model_tstb_compact_before, & sh4_sh4_model::model_tstb_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 3 }, { sh4_sh4_model::UNIT_U_SX, 1, 3 }, { sh4_sh4_model::UNIT_U_SET_SR_BIT, 0, 0 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10780 { SH4_INSN_XOR_COMPACT, & sh4_sh4_model::model_xor_compact_before, & sh4_sh4_model::model_xor_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10781 { SH4_INSN_XORI_COMPACT, & sh4_sh4_model::model_xori_compact_before, & sh4_sh4_model::model_xori_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 } } },
10782 { SH4_INSN_XORB_COMPACT, & sh4_sh4_model::model_xorb_compact_before, & sh4_sh4_model::model_xorb_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_LOGIC_B, 0, 3 }, { sh4_sh4_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
10783 { SH4_INSN_XTRCT_COMPACT, & sh4_sh4_model::model_xtrct_compact_before, & sh4_sh4_model::model_xtrct_compact_after, { { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_USE_GR, 0, 0 }, { sh4_sh4_model::UNIT_U_EXEC, 1, 1 }, { sh4_sh4_model::UNIT_U_SHIFT, 0, 0 } } },