1 /* Simulator model support for sh2e.
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 sh2e; // 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 sh2e_sh2e_model::sh2e_sh2e_model (sh2e_cpu *cpu)
31 sh2e_sh2e_model::model_add_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
33 #define FLD(f) abuf->fields.sfmt_macl_compact.f
34 const sh2e_scache* abuf = sem;
35 const sh2e_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 sh2e_sh2e_model::model_add_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
57 #define FLD(f) abuf->fields.sfmt_macl_compact.f
58 const sh2e_scache* abuf = sem;
59 const sh2e_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 sh2e_sh2e_model::model_addi_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
87 #define FLD(f) abuf->fields.sfmt_addi_compact.f
88 const sh2e_scache* abuf = sem;
89 const sh2e_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 sh2e_sh2e_model::model_addi_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
106 #define FLD(f) abuf->fields.sfmt_addi_compact.f
107 const sh2e_scache* abuf = sem;
108 const sh2e_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 sh2e_sh2e_model::model_addc_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
129 #define FLD(f) abuf->fields.sfmt_macl_compact.f
130 const sh2e_scache* abuf = sem;
131 const sh2e_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 sh2e_sh2e_model::model_addc_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
159 #define FLD(f) abuf->fields.sfmt_macl_compact.f
160 const sh2e_scache* abuf = sem;
161 const sh2e_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 sh2e_sh2e_model::model_addv_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
199 #define FLD(f) abuf->fields.sfmt_macl_compact.f
200 const sh2e_scache* abuf = sem;
201 const sh2e_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 sh2e_sh2e_model::model_addv_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
229 #define FLD(f) abuf->fields.sfmt_macl_compact.f
230 const sh2e_scache* abuf = sem;
231 const sh2e_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 sh2e_sh2e_model::model_and_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
269 #define FLD(f) abuf->fields.sfmt_and_compact.f
270 const sh2e_scache* abuf = sem;
271 const sh2e_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 sh2e_sh2e_model::model_and_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
293 #define FLD(f) abuf->fields.sfmt_and_compact.f
294 const sh2e_scache* abuf = sem;
295 const sh2e_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 sh2e_sh2e_model::model_andi_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
323 #define FLD(f) abuf->fields.sfmt_andi_compact.f
324 const sh2e_scache* abuf = sem;
325 const sh2e_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 sh2e_sh2e_model::model_andi_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
342 #define FLD(f) abuf->fields.sfmt_andi_compact.f
343 const sh2e_scache* abuf = sem;
344 const sh2e_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 sh2e_sh2e_model::model_andb_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
365 #define FLD(f) abuf->fields.sfmt_andi_compact.f
366 const sh2e_scache* abuf = sem;
367 const sh2e_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 sh2e_sh2e_model::model_andb_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
387 #define FLD(f) abuf->fields.sfmt_andi_compact.f
388 const sh2e_scache* abuf = sem;
389 const sh2e_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 sh2e_sh2e_model::model_bf_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
415 #define FLD(f) abuf->fields.sfmt_bf_compact.f
416 const sh2e_scache* abuf = sem;
417 const sh2e_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 sh2e_sh2e_model::model_bf_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
432 #define FLD(f) abuf->fields.sfmt_bf_compact.f
433 const sh2e_scache* abuf = sem;
434 const sh2e_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 sh2e_sh2e_model::model_bfs_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
454 #define FLD(f) abuf->fields.sfmt_bf_compact.f
455 const sh2e_scache* abuf = sem;
456 const sh2e_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 sh2e_sh2e_model::model_bfs_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
471 #define FLD(f) abuf->fields.sfmt_bf_compact.f
472 const sh2e_scache* abuf = sem;
473 const sh2e_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 sh2e_sh2e_model::model_bra_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
493 #define FLD(f) abuf->fields.sfmt_bra_compact.f
494 const sh2e_scache* abuf = sem;
495 const sh2e_idesc* idesc = abuf->idesc;
498 cycles += model_u_branch_before (current_cpu, idesc, 0);
505 sh2e_sh2e_model::model_bra_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
507 #define FLD(f) abuf->fields.sfmt_bra_compact.f
508 const sh2e_scache* abuf = sem;
509 const sh2e_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 sh2e_sh2e_model::model_braf_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
524 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
525 const sh2e_scache* abuf = sem;
526 const sh2e_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 sh2e_sh2e_model::model_braf_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
543 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
544 const sh2e_scache* abuf = sem;
545 const sh2e_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 sh2e_sh2e_model::model_bsr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
567 #define FLD(f) abuf->fields.sfmt_bra_compact.f
568 const sh2e_scache* abuf = sem;
569 const sh2e_idesc* idesc = abuf->idesc;
572 cycles += model_u_branch_before (current_cpu, idesc, 0);
579 sh2e_sh2e_model::model_bsr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
581 #define FLD(f) abuf->fields.sfmt_bra_compact.f
582 const sh2e_scache* abuf = sem;
583 const sh2e_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 sh2e_sh2e_model::model_bsrf_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
598 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
599 const sh2e_scache* abuf = sem;
600 const sh2e_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 sh2e_sh2e_model::model_bsrf_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
617 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
618 const sh2e_scache* abuf = sem;
619 const sh2e_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 sh2e_sh2e_model::model_bt_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
641 #define FLD(f) abuf->fields.sfmt_bf_compact.f
642 const sh2e_scache* abuf = sem;
643 const sh2e_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 sh2e_sh2e_model::model_bt_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
658 #define FLD(f) abuf->fields.sfmt_bf_compact.f
659 const sh2e_scache* abuf = sem;
660 const sh2e_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 sh2e_sh2e_model::model_bts_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
680 #define FLD(f) abuf->fields.sfmt_bf_compact.f
681 const sh2e_scache* abuf = sem;
682 const sh2e_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 sh2e_sh2e_model::model_bts_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
697 #define FLD(f) abuf->fields.sfmt_bf_compact.f
698 const sh2e_scache* abuf = sem;
699 const sh2e_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 sh2e_sh2e_model::model_clrmac_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
719 #define FLD(f) abuf->fields.fmt_empty.f
720 const sh2e_scache* abuf = sem;
721 const sh2e_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 sh2e_sh2e_model::model_clrmac_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
739 #define FLD(f) abuf->fields.fmt_empty.f
740 const sh2e_scache* abuf = sem;
741 const sh2e_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 sh2e_sh2e_model::model_clrt_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
765 #define FLD(f) abuf->fields.fmt_empty.f
766 const sh2e_scache* abuf = sem;
767 const sh2e_idesc* idesc = abuf->idesc;
770 cycles += model_u_exec_before (current_cpu, idesc, 0);
773 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
776 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 2);
783 sh2e_sh2e_model::model_clrt_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
785 #define FLD(f) abuf->fields.fmt_empty.f
786 const sh2e_scache* abuf = sem;
787 const sh2e_idesc* idesc = abuf->idesc;
791 unsigned long long insn_referenced = abuf->written;
792 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
796 unsigned long long insn_referenced = abuf->written;
797 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
801 unsigned long long insn_referenced = abuf->written;
802 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 2, referenced);
809 sh2e_sh2e_model::model_cmpeq_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
811 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
812 const sh2e_scache* abuf = sem;
813 const sh2e_idesc* idesc = abuf->idesc;
817 in_usereg = FLD (in_rn);
818 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
822 in_usereg = FLD (in_rm);
823 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
826 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
829 cycles += model_u_exec_before (current_cpu, idesc, 3);
832 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
839 sh2e_sh2e_model::model_cmpeq_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
841 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
842 const sh2e_scache* abuf = sem;
843 const sh2e_idesc* idesc = abuf->idesc;
847 unsigned long long insn_referenced = abuf->written;
849 in_usereg = FLD (in_rn);
850 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
854 unsigned long long insn_referenced = abuf->written;
856 in_usereg = FLD (in_rm);
857 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
861 unsigned long long insn_referenced = abuf->written;
862 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
866 unsigned long long insn_referenced = abuf->written;
867 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
871 unsigned long long insn_referenced = abuf->written;
872 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
879 sh2e_sh2e_model::model_cmpeqi_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
881 #define FLD(f) abuf->fields.sfmt_andi_compact.f
882 const sh2e_scache* abuf = sem;
883 const sh2e_idesc* idesc = abuf->idesc;
887 in_usereg = FLD (in_r0);
888 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
891 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
894 cycles += model_u_exec_before (current_cpu, idesc, 2);
897 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
904 sh2e_sh2e_model::model_cmpeqi_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
906 #define FLD(f) abuf->fields.sfmt_andi_compact.f
907 const sh2e_scache* abuf = sem;
908 const sh2e_idesc* idesc = abuf->idesc;
912 unsigned long long insn_referenced = abuf->written;
914 in_usereg = FLD (in_r0);
915 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
919 unsigned long long insn_referenced = abuf->written;
920 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
924 unsigned long long insn_referenced = abuf->written;
925 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
929 unsigned long long insn_referenced = abuf->written;
930 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
937 sh2e_sh2e_model::model_cmpge_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
939 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
940 const sh2e_scache* abuf = sem;
941 const sh2e_idesc* idesc = abuf->idesc;
945 in_usereg = FLD (in_rn);
946 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
950 in_usereg = FLD (in_rm);
951 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
954 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
957 cycles += model_u_exec_before (current_cpu, idesc, 3);
960 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
967 sh2e_sh2e_model::model_cmpge_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
969 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
970 const sh2e_scache* abuf = sem;
971 const sh2e_idesc* idesc = abuf->idesc;
975 unsigned long long insn_referenced = abuf->written;
977 in_usereg = FLD (in_rn);
978 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
982 unsigned long long insn_referenced = abuf->written;
984 in_usereg = FLD (in_rm);
985 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
989 unsigned long long insn_referenced = abuf->written;
990 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
994 unsigned long long insn_referenced = abuf->written;
995 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
999 unsigned long long insn_referenced = abuf->written;
1000 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1007 sh2e_sh2e_model::model_cmpgt_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1009 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1010 const sh2e_scache* abuf = sem;
1011 const sh2e_idesc* idesc = abuf->idesc;
1015 in_usereg = FLD (in_rn);
1016 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1020 in_usereg = FLD (in_rm);
1021 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1024 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1027 cycles += model_u_exec_before (current_cpu, idesc, 3);
1030 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1037 sh2e_sh2e_model::model_cmpgt_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1039 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1040 const sh2e_scache* abuf = sem;
1041 const sh2e_idesc* idesc = abuf->idesc;
1045 unsigned long long insn_referenced = abuf->written;
1047 in_usereg = FLD (in_rn);
1048 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1052 unsigned long long insn_referenced = abuf->written;
1054 in_usereg = FLD (in_rm);
1055 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1059 unsigned long long insn_referenced = abuf->written;
1060 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1064 unsigned long long insn_referenced = abuf->written;
1065 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1069 unsigned long long insn_referenced = abuf->written;
1070 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1077 sh2e_sh2e_model::model_cmphi_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1079 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1080 const sh2e_scache* abuf = sem;
1081 const sh2e_idesc* idesc = abuf->idesc;
1085 in_usereg = FLD (in_rn);
1086 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1090 in_usereg = FLD (in_rm);
1091 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1094 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1097 cycles += model_u_exec_before (current_cpu, idesc, 3);
1100 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1107 sh2e_sh2e_model::model_cmphi_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1109 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1110 const sh2e_scache* abuf = sem;
1111 const sh2e_idesc* idesc = abuf->idesc;
1115 unsigned long long insn_referenced = abuf->written;
1117 in_usereg = FLD (in_rn);
1118 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1122 unsigned long long insn_referenced = abuf->written;
1124 in_usereg = FLD (in_rm);
1125 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1129 unsigned long long insn_referenced = abuf->written;
1130 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1134 unsigned long long insn_referenced = abuf->written;
1135 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1139 unsigned long long insn_referenced = abuf->written;
1140 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1147 sh2e_sh2e_model::model_cmphs_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1149 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1150 const sh2e_scache* abuf = sem;
1151 const sh2e_idesc* idesc = abuf->idesc;
1155 in_usereg = FLD (in_rn);
1156 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1160 in_usereg = FLD (in_rm);
1161 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1164 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1167 cycles += model_u_exec_before (current_cpu, idesc, 3);
1170 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1177 sh2e_sh2e_model::model_cmphs_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1179 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1180 const sh2e_scache* abuf = sem;
1181 const sh2e_idesc* idesc = abuf->idesc;
1185 unsigned long long insn_referenced = abuf->written;
1187 in_usereg = FLD (in_rn);
1188 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1192 unsigned long long insn_referenced = abuf->written;
1194 in_usereg = FLD (in_rm);
1195 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1199 unsigned long long insn_referenced = abuf->written;
1200 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1204 unsigned long long insn_referenced = abuf->written;
1205 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1209 unsigned long long insn_referenced = abuf->written;
1210 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1217 sh2e_sh2e_model::model_cmppl_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1219 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1220 const sh2e_scache* abuf = sem;
1221 const sh2e_idesc* idesc = abuf->idesc;
1225 in_usereg = FLD (in_rn);
1226 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1229 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
1232 cycles += model_u_exec_before (current_cpu, idesc, 2);
1235 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
1242 sh2e_sh2e_model::model_cmppl_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1244 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1245 const sh2e_scache* abuf = sem;
1246 const sh2e_idesc* idesc = abuf->idesc;
1250 unsigned long long insn_referenced = abuf->written;
1252 in_usereg = FLD (in_rn);
1253 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1257 unsigned long long insn_referenced = abuf->written;
1258 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
1262 unsigned long long insn_referenced = abuf->written;
1263 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
1267 unsigned long long insn_referenced = abuf->written;
1268 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
1275 sh2e_sh2e_model::model_cmppz_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1277 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1278 const sh2e_scache* abuf = sem;
1279 const sh2e_idesc* idesc = abuf->idesc;
1283 in_usereg = FLD (in_rn);
1284 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1287 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
1290 cycles += model_u_exec_before (current_cpu, idesc, 2);
1293 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
1300 sh2e_sh2e_model::model_cmppz_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1302 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1303 const sh2e_scache* abuf = sem;
1304 const sh2e_idesc* idesc = abuf->idesc;
1308 unsigned long long insn_referenced = abuf->written;
1310 in_usereg = FLD (in_rn);
1311 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1315 unsigned long long insn_referenced = abuf->written;
1316 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
1320 unsigned long long insn_referenced = abuf->written;
1321 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
1325 unsigned long long insn_referenced = abuf->written;
1326 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
1333 sh2e_sh2e_model::model_cmpstr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1335 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1336 const sh2e_scache* abuf = sem;
1337 const sh2e_idesc* idesc = abuf->idesc;
1341 in_usereg = FLD (in_rn);
1342 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1346 in_usereg = FLD (in_rm);
1347 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1350 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1353 cycles += model_u_exec_before (current_cpu, idesc, 3);
1356 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1363 sh2e_sh2e_model::model_cmpstr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1365 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1366 const sh2e_scache* abuf = sem;
1367 const sh2e_idesc* idesc = abuf->idesc;
1371 unsigned long long insn_referenced = abuf->written;
1373 in_usereg = FLD (in_rn);
1374 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1378 unsigned long long insn_referenced = abuf->written;
1380 in_usereg = FLD (in_rm);
1381 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1385 unsigned long long insn_referenced = abuf->written;
1386 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1390 unsigned long long insn_referenced = abuf->written;
1391 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1395 unsigned long long insn_referenced = abuf->written;
1396 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1403 sh2e_sh2e_model::model_div0s_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1405 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1406 const sh2e_scache* abuf = sem;
1407 const sh2e_idesc* idesc = abuf->idesc;
1411 in_usereg = FLD (in_rn);
1412 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1416 in_usereg = FLD (in_rm);
1417 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1420 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1423 cycles += model_u_exec_before (current_cpu, idesc, 3);
1426 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1433 sh2e_sh2e_model::model_div0s_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1435 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1436 const sh2e_scache* abuf = sem;
1437 const sh2e_idesc* idesc = abuf->idesc;
1441 unsigned long long insn_referenced = abuf->written;
1443 in_usereg = FLD (in_rn);
1444 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1448 unsigned long long insn_referenced = abuf->written;
1450 in_usereg = FLD (in_rm);
1451 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1455 unsigned long long insn_referenced = abuf->written;
1456 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1460 unsigned long long insn_referenced = abuf->written;
1461 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1465 unsigned long long insn_referenced = abuf->written;
1466 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1473 sh2e_sh2e_model::model_div0u_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1475 #define FLD(f) abuf->fields.fmt_empty.f
1476 const sh2e_scache* abuf = sem;
1477 const sh2e_idesc* idesc = abuf->idesc;
1480 cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
1483 cycles += model_u_exec_before (current_cpu, idesc, 1);
1486 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 2);
1493 sh2e_sh2e_model::model_div0u_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1495 #define FLD(f) abuf->fields.fmt_empty.f
1496 const sh2e_scache* abuf = sem;
1497 const sh2e_idesc* idesc = abuf->idesc;
1501 unsigned long long insn_referenced = abuf->written;
1502 cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
1506 unsigned long long insn_referenced = abuf->written;
1507 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1511 unsigned long long insn_referenced = abuf->written;
1512 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 2, referenced);
1519 sh2e_sh2e_model::model_div1_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1521 #define FLD(f) abuf->fields.sfmt_macl_compact.f
1522 const sh2e_scache* abuf = sem;
1523 const sh2e_idesc* idesc = abuf->idesc;
1527 in_usereg = FLD (in_rn);
1528 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1532 in_usereg = FLD (in_rm);
1533 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1536 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1539 cycles += model_u_exec_before (current_cpu, idesc, 3);
1542 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1549 sh2e_sh2e_model::model_div1_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1551 #define FLD(f) abuf->fields.sfmt_macl_compact.f
1552 const sh2e_scache* abuf = sem;
1553 const sh2e_idesc* idesc = abuf->idesc;
1557 unsigned long long insn_referenced = abuf->written;
1559 in_usereg = FLD (in_rn);
1560 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1564 unsigned long long insn_referenced = abuf->written;
1566 in_usereg = FLD (in_rm);
1567 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1571 unsigned long long insn_referenced = abuf->written;
1572 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1576 unsigned long long insn_referenced = abuf->written;
1577 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1581 unsigned long long insn_referenced = abuf->written;
1582 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1589 sh2e_sh2e_model::model_dmulsl_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1591 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1592 const sh2e_scache* abuf = sem;
1593 const sh2e_idesc* idesc = abuf->idesc;
1597 in_usereg = FLD (in_rn);
1598 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1602 in_usereg = FLD (in_rm);
1603 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1606 cycles += model_u_dmul_before (current_cpu, idesc, 2);
1613 sh2e_sh2e_model::model_dmulsl_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1615 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1616 const sh2e_scache* abuf = sem;
1617 const sh2e_idesc* idesc = abuf->idesc;
1621 unsigned long long insn_referenced = abuf->written;
1623 in_usereg = FLD (in_rn);
1624 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1628 unsigned long long insn_referenced = abuf->written;
1630 in_usereg = FLD (in_rm);
1631 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1635 unsigned long long insn_referenced = abuf->written;
1636 cycles += model_u_dmul_after (current_cpu, idesc, 2, referenced);
1643 sh2e_sh2e_model::model_dmulul_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1645 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1646 const sh2e_scache* abuf = sem;
1647 const sh2e_idesc* idesc = abuf->idesc;
1651 in_usereg = FLD (in_rn);
1652 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1656 in_usereg = FLD (in_rm);
1657 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1660 cycles += model_u_dmul_before (current_cpu, idesc, 2);
1667 sh2e_sh2e_model::model_dmulul_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1669 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
1670 const sh2e_scache* abuf = sem;
1671 const sh2e_idesc* idesc = abuf->idesc;
1675 unsigned long long insn_referenced = abuf->written;
1677 in_usereg = FLD (in_rn);
1678 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1682 unsigned long long insn_referenced = abuf->written;
1684 in_usereg = FLD (in_rm);
1685 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1689 unsigned long long insn_referenced = abuf->written;
1690 cycles += model_u_dmul_after (current_cpu, idesc, 2, referenced);
1697 sh2e_sh2e_model::model_dt_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1699 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1700 const sh2e_scache* abuf = sem;
1701 const sh2e_idesc* idesc = abuf->idesc;
1705 in_usereg = FLD (in_rn);
1706 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1709 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
1712 cycles += model_u_exec_before (current_cpu, idesc, 2);
1715 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
1722 sh2e_sh2e_model::model_dt_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1724 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
1725 const sh2e_scache* abuf = sem;
1726 const sh2e_idesc* idesc = abuf->idesc;
1730 unsigned long long insn_referenced = abuf->written;
1732 in_usereg = FLD (in_rn);
1733 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1737 unsigned long long insn_referenced = abuf->written;
1738 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
1742 unsigned long long insn_referenced = abuf->written;
1743 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
1747 unsigned long long insn_referenced = abuf->written;
1748 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
1755 sh2e_sh2e_model::model_extsb_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1757 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1758 const sh2e_scache* abuf = sem;
1759 const sh2e_idesc* idesc = abuf->idesc;
1763 in_usereg = FLD (in_rm);
1764 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1767 cycles += model_u_exec_before (current_cpu, idesc, 1);
1770 cycles += model_u_shift_before (current_cpu, idesc, 2);
1777 sh2e_sh2e_model::model_extsb_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1779 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1780 const sh2e_scache* abuf = sem;
1781 const sh2e_idesc* idesc = abuf->idesc;
1785 unsigned long long insn_referenced = abuf->written;
1787 in_usereg = FLD (in_rm);
1788 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1792 unsigned long long insn_referenced = abuf->written;
1793 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1797 unsigned long long insn_referenced = abuf->written;
1798 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
1805 sh2e_sh2e_model::model_extsw_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1807 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1808 const sh2e_scache* abuf = sem;
1809 const sh2e_idesc* idesc = abuf->idesc;
1813 in_usereg = FLD (in_rm);
1814 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1817 cycles += model_u_exec_before (current_cpu, idesc, 1);
1820 cycles += model_u_shift_before (current_cpu, idesc, 2);
1827 sh2e_sh2e_model::model_extsw_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1829 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1830 const sh2e_scache* abuf = sem;
1831 const sh2e_idesc* idesc = abuf->idesc;
1835 unsigned long long insn_referenced = abuf->written;
1837 in_usereg = FLD (in_rm);
1838 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1842 unsigned long long insn_referenced = abuf->written;
1843 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1847 unsigned long long insn_referenced = abuf->written;
1848 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
1855 sh2e_sh2e_model::model_extub_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1857 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1858 const sh2e_scache* abuf = sem;
1859 const sh2e_idesc* idesc = abuf->idesc;
1863 in_usereg = FLD (in_rm);
1864 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1867 cycles += model_u_exec_before (current_cpu, idesc, 1);
1870 cycles += model_u_shift_before (current_cpu, idesc, 2);
1877 sh2e_sh2e_model::model_extub_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1879 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1880 const sh2e_scache* abuf = sem;
1881 const sh2e_idesc* idesc = abuf->idesc;
1885 unsigned long long insn_referenced = abuf->written;
1887 in_usereg = FLD (in_rm);
1888 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1892 unsigned long long insn_referenced = abuf->written;
1893 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1897 unsigned long long insn_referenced = abuf->written;
1898 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
1905 sh2e_sh2e_model::model_extuw_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1907 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1908 const sh2e_scache* abuf = sem;
1909 const sh2e_idesc* idesc = abuf->idesc;
1913 in_usereg = FLD (in_rm);
1914 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1917 cycles += model_u_exec_before (current_cpu, idesc, 1);
1920 cycles += model_u_shift_before (current_cpu, idesc, 2);
1927 sh2e_sh2e_model::model_extuw_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1929 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
1930 const sh2e_scache* abuf = sem;
1931 const sh2e_idesc* idesc = abuf->idesc;
1935 unsigned long long insn_referenced = abuf->written;
1937 in_usereg = FLD (in_rm);
1938 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1942 unsigned long long insn_referenced = abuf->written;
1943 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1947 unsigned long long insn_referenced = abuf->written;
1948 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
1955 sh2e_sh2e_model::model_fabs_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
1957 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
1958 const sh2e_scache* abuf = sem;
1959 const sh2e_idesc* idesc = abuf->idesc;
1963 in_usereg = FLD (in_fsdn);
1964 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
1967 cycles += model_u_exec_before (current_cpu, idesc, 1);
1970 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
1973 INT out_loadreg = -1;
1974 out_loadreg = FLD (out_fsdn);
1975 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
1982 sh2e_sh2e_model::model_fabs_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
1984 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
1985 const sh2e_scache* abuf = sem;
1986 const sh2e_idesc* idesc = abuf->idesc;
1990 unsigned long long insn_referenced = abuf->written;
1992 in_usereg = FLD (in_fsdn);
1993 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
1997 unsigned long long insn_referenced = abuf->written;
1998 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2002 unsigned long long insn_referenced = abuf->written;
2003 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
2007 unsigned long long insn_referenced = abuf->written;
2008 INT out_loadreg = -1;
2009 out_loadreg = FLD (out_fsdn);
2010 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
2017 sh2e_sh2e_model::model_fadd_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2019 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2020 const sh2e_scache* abuf = sem;
2021 const sh2e_idesc* idesc = abuf->idesc;
2025 in_usereg = FLD (in_fsdm);
2026 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2030 in_usereg = FLD (in_fsdn);
2031 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2034 cycles += model_u_exec_before (current_cpu, idesc, 2);
2037 cycles += model_u_fpu_before (current_cpu, idesc, 3);
2040 INT out_loadreg = -1;
2041 out_loadreg = FLD (out_fsdn);
2042 cycles += model_u_set_fr_before (current_cpu, idesc, 4, out_loadreg);
2049 sh2e_sh2e_model::model_fadd_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2051 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2052 const sh2e_scache* abuf = sem;
2053 const sh2e_idesc* idesc = abuf->idesc;
2057 unsigned long long insn_referenced = abuf->written;
2059 in_usereg = FLD (in_fsdm);
2060 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2064 unsigned long long insn_referenced = abuf->written;
2066 in_usereg = FLD (in_fsdn);
2067 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2071 unsigned long long insn_referenced = abuf->written;
2072 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2076 unsigned long long insn_referenced = abuf->written;
2077 cycles += model_u_fpu_after (current_cpu, idesc, 3, referenced);
2081 unsigned long long insn_referenced = abuf->written;
2082 INT out_loadreg = -1;
2083 out_loadreg = FLD (out_fsdn);
2084 cycles += model_u_set_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
2091 sh2e_sh2e_model::model_fcmpeq_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2093 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2094 const sh2e_scache* abuf = sem;
2095 const sh2e_idesc* idesc = abuf->idesc;
2099 in_usereg = FLD (in_fsdm);
2100 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2104 in_usereg = FLD (in_fsdn);
2105 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2108 cycles += model_u_exec_before (current_cpu, idesc, 2);
2111 cycles += model_u_fcmp_before (current_cpu, idesc, 3);
2114 cycles += model_u_fpu_before (current_cpu, idesc, 4);
2121 sh2e_sh2e_model::model_fcmpeq_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2123 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2124 const sh2e_scache* abuf = sem;
2125 const sh2e_idesc* idesc = abuf->idesc;
2129 unsigned long long insn_referenced = abuf->written;
2131 in_usereg = FLD (in_fsdm);
2132 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2136 unsigned long long insn_referenced = abuf->written;
2138 in_usereg = FLD (in_fsdn);
2139 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2143 unsigned long long insn_referenced = abuf->written;
2144 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2148 unsigned long long insn_referenced = abuf->written;
2149 cycles += model_u_fcmp_after (current_cpu, idesc, 3, referenced);
2153 unsigned long long insn_referenced = abuf->written;
2154 cycles += model_u_fpu_after (current_cpu, idesc, 4, referenced);
2161 sh2e_sh2e_model::model_fcmpgt_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2163 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2164 const sh2e_scache* abuf = sem;
2165 const sh2e_idesc* idesc = abuf->idesc;
2169 in_usereg = FLD (in_fsdm);
2170 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2174 in_usereg = FLD (in_fsdn);
2175 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2178 cycles += model_u_exec_before (current_cpu, idesc, 2);
2181 cycles += model_u_fcmp_before (current_cpu, idesc, 3);
2184 cycles += model_u_fpu_before (current_cpu, idesc, 4);
2191 sh2e_sh2e_model::model_fcmpgt_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2193 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2194 const sh2e_scache* abuf = sem;
2195 const sh2e_idesc* idesc = abuf->idesc;
2199 unsigned long long insn_referenced = abuf->written;
2201 in_usereg = FLD (in_fsdm);
2202 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2206 unsigned long long insn_referenced = abuf->written;
2208 in_usereg = FLD (in_fsdn);
2209 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2213 unsigned long long insn_referenced = abuf->written;
2214 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2218 unsigned long long insn_referenced = abuf->written;
2219 cycles += model_u_fcmp_after (current_cpu, idesc, 3, referenced);
2223 unsigned long long insn_referenced = abuf->written;
2224 cycles += model_u_fpu_after (current_cpu, idesc, 4, referenced);
2231 sh2e_sh2e_model::model_fdiv_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2233 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2234 const sh2e_scache* abuf = sem;
2235 const sh2e_idesc* idesc = abuf->idesc;
2239 in_usereg = FLD (in_fsdm);
2240 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2244 in_usereg = FLD (in_fsdn);
2245 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2248 cycles += model_u_exec_before (current_cpu, idesc, 2);
2251 INT out_loadreg = -1;
2252 out_loadreg = FLD (out_fsdn);
2253 cycles += model_u_fdiv_before (current_cpu, idesc, 3, out_loadreg);
2260 sh2e_sh2e_model::model_fdiv_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2262 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
2263 const sh2e_scache* abuf = sem;
2264 const sh2e_idesc* idesc = abuf->idesc;
2268 unsigned long long insn_referenced = abuf->written;
2270 in_usereg = FLD (in_fsdm);
2271 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2275 unsigned long long insn_referenced = abuf->written;
2277 in_usereg = FLD (in_fsdn);
2278 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2282 unsigned long long insn_referenced = abuf->written;
2283 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2287 unsigned long long insn_referenced = abuf->written;
2288 INT out_loadreg = -1;
2289 out_loadreg = FLD (out_fsdn);
2290 cycles += model_u_fdiv_after (current_cpu, idesc, 3, referenced, out_loadreg);
2297 sh2e_sh2e_model::model_flds_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2299 #define FLD(f) abuf->fields.sfmt_flds_compact.f
2300 const sh2e_scache* abuf = sem;
2301 const sh2e_idesc* idesc = abuf->idesc;
2305 in_usereg = FLD (in_frn);
2306 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2309 cycles += model_u_exec_before (current_cpu, idesc, 1);
2312 cycles += model_u_flds_fpul_before (current_cpu, idesc, 2);
2319 sh2e_sh2e_model::model_flds_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2321 #define FLD(f) abuf->fields.sfmt_flds_compact.f
2322 const sh2e_scache* abuf = sem;
2323 const sh2e_idesc* idesc = abuf->idesc;
2327 unsigned long long insn_referenced = abuf->written;
2329 in_usereg = FLD (in_frn);
2330 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2334 unsigned long long insn_referenced = abuf->written;
2335 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2339 unsigned long long insn_referenced = abuf->written;
2340 cycles += model_u_flds_fpul_after (current_cpu, idesc, 2, referenced);
2347 sh2e_sh2e_model::model_fldi0_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2349 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2350 const sh2e_scache* abuf = sem;
2351 const sh2e_idesc* idesc = abuf->idesc;
2354 cycles += model_u_exec_before (current_cpu, idesc, 0);
2357 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 1);
2360 INT out_loadreg = -1;
2361 out_loadreg = FLD (out_frn);
2362 cycles += model_u_set_fr_0_before (current_cpu, idesc, 2, out_loadreg);
2369 sh2e_sh2e_model::model_fldi0_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2371 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2372 const sh2e_scache* abuf = sem;
2373 const sh2e_idesc* idesc = abuf->idesc;
2377 unsigned long long insn_referenced = abuf->written;
2378 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
2382 unsigned long long insn_referenced = abuf->written;
2383 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 1, referenced);
2387 unsigned long long insn_referenced = abuf->written;
2388 INT out_loadreg = -1;
2389 out_loadreg = FLD (out_frn);
2390 cycles += model_u_set_fr_0_after (current_cpu, idesc, 2, referenced, out_loadreg);
2397 sh2e_sh2e_model::model_fldi1_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2399 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2400 const sh2e_scache* abuf = sem;
2401 const sh2e_idesc* idesc = abuf->idesc;
2404 cycles += model_u_exec_before (current_cpu, idesc, 0);
2407 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 1);
2410 INT out_loadreg = -1;
2411 out_loadreg = FLD (out_frn);
2412 cycles += model_u_set_fr_0_before (current_cpu, idesc, 2, out_loadreg);
2419 sh2e_sh2e_model::model_fldi1_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2421 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
2422 const sh2e_scache* abuf = sem;
2423 const sh2e_idesc* idesc = abuf->idesc;
2427 unsigned long long insn_referenced = abuf->written;
2428 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
2432 unsigned long long insn_referenced = abuf->written;
2433 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 1, referenced);
2437 unsigned long long insn_referenced = abuf->written;
2438 INT out_loadreg = -1;
2439 out_loadreg = FLD (out_frn);
2440 cycles += model_u_set_fr_0_after (current_cpu, idesc, 2, referenced, out_loadreg);
2447 sh2e_sh2e_model::model_float_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2449 #define FLD(f) abuf->fields.sfmt_float_compact.f
2450 const sh2e_scache* abuf = sem;
2451 const sh2e_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_fpu_before (current_cpu, idesc, 2);
2463 INT out_loadreg = -1;
2464 out_loadreg = FLD (out_fsdn);
2465 cycles += model_u_set_fr_before (current_cpu, idesc, 3, out_loadreg);
2472 sh2e_sh2e_model::model_float_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2474 #define FLD(f) abuf->fields.sfmt_float_compact.f
2475 const sh2e_scache* abuf = sem;
2476 const sh2e_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_fpu_after (current_cpu, idesc, 2, referenced);
2495 unsigned long long insn_referenced = abuf->written;
2496 INT out_loadreg = -1;
2497 out_loadreg = FLD (out_fsdn);
2498 cycles += model_u_set_fr_after (current_cpu, idesc, 3, referenced, out_loadreg);
2505 sh2e_sh2e_model::model_fmac_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2507 #define FLD(f) abuf->fields.sfmt_fmac_compact.f
2508 const sh2e_scache* abuf = sem;
2509 const sh2e_idesc* idesc = abuf->idesc;
2513 in_usereg = FLD (in_frm);
2514 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2518 in_usereg = FLD (in_frn);
2519 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
2523 in_usereg = FLD (in_fr0);
2524 cycles += model_u_use_fr_before (current_cpu, idesc, 2, in_usereg);
2527 cycles += model_u_exec_before (current_cpu, idesc, 3);
2530 cycles += model_u_fpu_before (current_cpu, idesc, 4);
2533 INT out_loadreg = -1;
2534 out_loadreg = FLD (out_frn);
2535 cycles += model_u_set_fr_before (current_cpu, idesc, 5, out_loadreg);
2542 sh2e_sh2e_model::model_fmac_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2544 #define FLD(f) abuf->fields.sfmt_fmac_compact.f
2545 const sh2e_scache* abuf = sem;
2546 const sh2e_idesc* idesc = abuf->idesc;
2550 unsigned long long insn_referenced = abuf->written;
2552 in_usereg = FLD (in_frm);
2553 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2557 unsigned long long insn_referenced = abuf->written;
2559 in_usereg = FLD (in_frn);
2560 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
2564 unsigned long long insn_referenced = abuf->written;
2566 in_usereg = FLD (in_fr0);
2567 cycles += model_u_use_fr_after (current_cpu, idesc, 2, referenced, in_usereg);
2571 unsigned long long insn_referenced = abuf->written;
2572 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
2576 unsigned long long insn_referenced = abuf->written;
2577 cycles += model_u_fpu_after (current_cpu, idesc, 4, referenced);
2581 unsigned long long insn_referenced = abuf->written;
2582 INT out_loadreg = -1;
2583 out_loadreg = FLD (out_frn);
2584 cycles += model_u_set_fr_after (current_cpu, idesc, 5, referenced, out_loadreg);
2591 sh2e_sh2e_model::model_fmov1_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2593 #define FLD(f) abuf->fields.sfmt_fmov1_compact.f
2594 const sh2e_scache* abuf = sem;
2595 const sh2e_idesc* idesc = abuf->idesc;
2599 in_usereg = FLD (in_fmovm);
2600 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2603 cycles += model_u_exec_before (current_cpu, idesc, 1);
2606 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
2609 INT out_loadreg = -1;
2610 out_loadreg = FLD (out_fmovn);
2611 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
2618 sh2e_sh2e_model::model_fmov1_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2620 #define FLD(f) abuf->fields.sfmt_fmov1_compact.f
2621 const sh2e_scache* abuf = sem;
2622 const sh2e_idesc* idesc = abuf->idesc;
2626 unsigned long long insn_referenced = abuf->written;
2628 in_usereg = FLD (in_fmovm);
2629 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2633 unsigned long long insn_referenced = abuf->written;
2634 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2638 unsigned long long insn_referenced = abuf->written;
2639 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
2643 unsigned long long insn_referenced = abuf->written;
2644 INT out_loadreg = -1;
2645 out_loadreg = FLD (out_fmovn);
2646 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
2653 sh2e_sh2e_model::model_fmov2_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2655 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
2656 const sh2e_scache* abuf = sem;
2657 const sh2e_idesc* idesc = abuf->idesc;
2661 in_usereg = FLD (in_rm);
2662 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2665 cycles += model_u_exec_before (current_cpu, idesc, 1);
2668 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
2671 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
2674 INT out_loadreg = -1;
2675 out_loadreg = FLD (out_fmovn);
2676 cycles += model_u_load_fr_before (current_cpu, idesc, 4, out_loadreg);
2683 sh2e_sh2e_model::model_fmov2_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2685 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
2686 const sh2e_scache* abuf = sem;
2687 const sh2e_idesc* idesc = abuf->idesc;
2691 unsigned long long insn_referenced = abuf->written;
2693 in_usereg = FLD (in_rm);
2694 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2698 unsigned long long insn_referenced = abuf->written;
2699 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2703 unsigned long long insn_referenced = abuf->written;
2704 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
2708 unsigned long long insn_referenced = abuf->written;
2709 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
2713 unsigned long long insn_referenced = abuf->written;
2714 INT out_loadreg = -1;
2715 out_loadreg = FLD (out_fmovn);
2716 cycles += model_u_load_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
2723 sh2e_sh2e_model::model_fmov3_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2725 #define FLD(f) abuf->fields.sfmt_fmov3_compact.f
2726 const sh2e_scache* abuf = sem;
2727 const sh2e_idesc* idesc = abuf->idesc;
2731 in_usereg = FLD (in_rm);
2732 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2735 cycles += model_u_exec_before (current_cpu, idesc, 1);
2738 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
2741 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
2744 INT out_loadreg = -1;
2745 out_loadreg = FLD (out_fmovn);
2746 cycles += model_u_load_fr_before (current_cpu, idesc, 4, out_loadreg);
2753 sh2e_sh2e_model::model_fmov3_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2755 #define FLD(f) abuf->fields.sfmt_fmov3_compact.f
2756 const sh2e_scache* abuf = sem;
2757 const sh2e_idesc* idesc = abuf->idesc;
2761 unsigned long long insn_referenced = abuf->written;
2763 in_usereg = FLD (in_rm);
2764 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2768 unsigned long long insn_referenced = abuf->written;
2769 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2773 unsigned long long insn_referenced = abuf->written;
2774 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
2778 unsigned long long insn_referenced = abuf->written;
2779 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
2783 unsigned long long insn_referenced = abuf->written;
2784 INT out_loadreg = -1;
2785 out_loadreg = FLD (out_fmovn);
2786 cycles += model_u_load_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
2793 sh2e_sh2e_model::model_fmov4_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2795 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
2796 const sh2e_scache* abuf = sem;
2797 const sh2e_idesc* idesc = abuf->idesc;
2801 in_usereg = FLD (in_rm);
2802 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2806 in_usereg = FLD (in_r0);
2807 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
2810 cycles += model_u_exec_before (current_cpu, idesc, 2);
2813 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
2816 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
2819 INT out_loadreg = -1;
2820 out_loadreg = FLD (out_fmovn);
2821 cycles += model_u_load_fr_before (current_cpu, idesc, 5, out_loadreg);
2828 sh2e_sh2e_model::model_fmov4_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2830 #define FLD(f) abuf->fields.sfmt_fmov4_compact.f
2831 const sh2e_scache* abuf = sem;
2832 const sh2e_idesc* idesc = abuf->idesc;
2836 unsigned long long insn_referenced = abuf->written;
2838 in_usereg = FLD (in_rm);
2839 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2843 unsigned long long insn_referenced = abuf->written;
2845 in_usereg = FLD (in_r0);
2846 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
2850 unsigned long long insn_referenced = abuf->written;
2851 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2855 unsigned long long insn_referenced = abuf->written;
2856 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
2860 unsigned long long insn_referenced = abuf->written;
2861 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
2865 unsigned long long insn_referenced = abuf->written;
2866 INT out_loadreg = -1;
2867 out_loadreg = FLD (out_fmovn);
2868 cycles += model_u_load_fr_after (current_cpu, idesc, 5, referenced, out_loadreg);
2875 sh2e_sh2e_model::model_fmov5_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2877 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
2878 const sh2e_scache* abuf = sem;
2879 const sh2e_idesc* idesc = abuf->idesc;
2883 in_usereg = FLD (in_fmovm);
2884 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2888 in_usereg = FLD (in_rn);
2889 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
2892 cycles += model_u_exec_before (current_cpu, idesc, 2);
2895 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
2898 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
2905 sh2e_sh2e_model::model_fmov5_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2907 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
2908 const sh2e_scache* abuf = sem;
2909 const sh2e_idesc* idesc = abuf->idesc;
2913 unsigned long long insn_referenced = abuf->written;
2915 in_usereg = FLD (in_fmovm);
2916 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2920 unsigned long long insn_referenced = abuf->written;
2922 in_usereg = FLD (in_rn);
2923 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
2927 unsigned long long insn_referenced = abuf->written;
2928 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2932 unsigned long long insn_referenced = abuf->written;
2933 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
2937 unsigned long long insn_referenced = abuf->written;
2938 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
2945 sh2e_sh2e_model::model_fmov6_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
2947 #define FLD(f) abuf->fields.sfmt_fmov6_compact.f
2948 const sh2e_scache* abuf = sem;
2949 const sh2e_idesc* idesc = abuf->idesc;
2953 in_usereg = FLD (in_fmovm);
2954 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
2958 in_usereg = FLD (in_rn);
2959 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
2962 cycles += model_u_exec_before (current_cpu, idesc, 2);
2965 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
2968 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
2975 sh2e_sh2e_model::model_fmov6_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
2977 #define FLD(f) abuf->fields.sfmt_fmov6_compact.f
2978 const sh2e_scache* abuf = sem;
2979 const sh2e_idesc* idesc = abuf->idesc;
2983 unsigned long long insn_referenced = abuf->written;
2985 in_usereg = FLD (in_fmovm);
2986 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
2990 unsigned long long insn_referenced = abuf->written;
2992 in_usereg = FLD (in_rn);
2993 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
2997 unsigned long long insn_referenced = abuf->written;
2998 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3002 unsigned long long insn_referenced = abuf->written;
3003 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
3007 unsigned long long insn_referenced = abuf->written;
3008 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
3015 sh2e_sh2e_model::model_fmov7_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3017 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
3018 const sh2e_scache* abuf = sem;
3019 const sh2e_idesc* idesc = abuf->idesc;
3023 in_usereg = FLD (in_fmovm);
3024 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3028 in_usereg = FLD (in_rn);
3029 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3033 in_usereg = FLD (in_r0);
3034 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
3037 cycles += model_u_exec_before (current_cpu, idesc, 3);
3040 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 4);
3043 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 5);
3050 sh2e_sh2e_model::model_fmov7_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3052 #define FLD(f) abuf->fields.sfmt_fmov7_compact.f
3053 const sh2e_scache* abuf = sem;
3054 const sh2e_idesc* idesc = abuf->idesc;
3058 unsigned long long insn_referenced = abuf->written;
3060 in_usereg = FLD (in_fmovm);
3061 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3065 unsigned long long insn_referenced = abuf->written;
3067 in_usereg = FLD (in_rn);
3068 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3072 unsigned long long insn_referenced = abuf->written;
3074 in_usereg = FLD (in_r0);
3075 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
3079 unsigned long long insn_referenced = abuf->written;
3080 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
3084 unsigned long long insn_referenced = abuf->written;
3085 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 4, referenced);
3089 unsigned long long insn_referenced = abuf->written;
3090 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 5, referenced);
3097 sh2e_sh2e_model::model_fmul_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3099 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3100 const sh2e_scache* abuf = sem;
3101 const sh2e_idesc* idesc = abuf->idesc;
3105 in_usereg = FLD (in_fsdm);
3106 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3110 in_usereg = FLD (in_fsdn);
3111 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
3114 cycles += model_u_exec_before (current_cpu, idesc, 2);
3117 cycles += model_u_fpu_before (current_cpu, idesc, 3);
3120 INT out_loadreg = -1;
3121 out_loadreg = FLD (out_fsdn);
3122 cycles += model_u_set_fr_before (current_cpu, idesc, 4, out_loadreg);
3129 sh2e_sh2e_model::model_fmul_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3131 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3132 const sh2e_scache* abuf = sem;
3133 const sh2e_idesc* idesc = abuf->idesc;
3137 unsigned long long insn_referenced = abuf->written;
3139 in_usereg = FLD (in_fsdm);
3140 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3144 unsigned long long insn_referenced = abuf->written;
3146 in_usereg = FLD (in_fsdn);
3147 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
3151 unsigned long long insn_referenced = abuf->written;
3152 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3156 unsigned long long insn_referenced = abuf->written;
3157 cycles += model_u_fpu_after (current_cpu, idesc, 3, referenced);
3161 unsigned long long insn_referenced = abuf->written;
3162 INT out_loadreg = -1;
3163 out_loadreg = FLD (out_fsdn);
3164 cycles += model_u_set_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
3171 sh2e_sh2e_model::model_fneg_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3173 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3174 const sh2e_scache* abuf = sem;
3175 const sh2e_idesc* idesc = abuf->idesc;
3179 in_usereg = FLD (in_fsdn);
3180 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3183 cycles += model_u_exec_before (current_cpu, idesc, 1);
3186 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
3189 INT out_loadreg = -1;
3190 out_loadreg = FLD (out_fsdn);
3191 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
3198 sh2e_sh2e_model::model_fneg_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3200 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3201 const sh2e_scache* abuf = sem;
3202 const sh2e_idesc* idesc = abuf->idesc;
3206 unsigned long long insn_referenced = abuf->written;
3208 in_usereg = FLD (in_fsdn);
3209 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3213 unsigned long long insn_referenced = abuf->written;
3214 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3218 unsigned long long insn_referenced = abuf->written;
3219 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
3223 unsigned long long insn_referenced = abuf->written;
3224 INT out_loadreg = -1;
3225 out_loadreg = FLD (out_fsdn);
3226 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
3233 sh2e_sh2e_model::model_frchg_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3235 #define FLD(f) abuf->fields.fmt_empty.f
3236 const sh2e_scache* abuf = sem;
3237 const sh2e_idesc* idesc = abuf->idesc;
3240 cycles += model_u_exec_before (current_cpu, idesc, 0);
3247 sh2e_sh2e_model::model_frchg_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3249 #define FLD(f) abuf->fields.fmt_empty.f
3250 const sh2e_scache* abuf = sem;
3251 const sh2e_idesc* idesc = abuf->idesc;
3255 unsigned long long insn_referenced = abuf->written;
3256 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
3263 sh2e_sh2e_model::model_fschg_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3265 #define FLD(f) abuf->fields.fmt_empty.f
3266 const sh2e_scache* abuf = sem;
3267 const sh2e_idesc* idesc = abuf->idesc;
3270 cycles += model_u_exec_before (current_cpu, idesc, 0);
3277 sh2e_sh2e_model::model_fschg_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3279 #define FLD(f) abuf->fields.fmt_empty.f
3280 const sh2e_scache* abuf = sem;
3281 const sh2e_idesc* idesc = abuf->idesc;
3285 unsigned long long insn_referenced = abuf->written;
3286 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
3293 sh2e_sh2e_model::model_fsts_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3295 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
3296 const sh2e_scache* abuf = sem;
3297 const sh2e_idesc* idesc = abuf->idesc;
3300 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
3303 cycles += model_u_exec_before (current_cpu, idesc, 1);
3306 cycles += model_u_fpu_before (current_cpu, idesc, 2);
3309 INT out_loadreg = -1;
3310 out_loadreg = FLD (out_frn);
3311 cycles += model_u_set_fr_0_before (current_cpu, idesc, 3, out_loadreg);
3318 sh2e_sh2e_model::model_fsts_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3320 #define FLD(f) abuf->fields.sfmt_fsts_compact.f
3321 const sh2e_scache* abuf = sem;
3322 const sh2e_idesc* idesc = abuf->idesc;
3326 unsigned long long insn_referenced = abuf->written;
3327 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
3331 unsigned long long insn_referenced = abuf->written;
3332 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3336 unsigned long long insn_referenced = abuf->written;
3337 cycles += model_u_fpu_after (current_cpu, idesc, 2, referenced);
3341 unsigned long long insn_referenced = abuf->written;
3342 INT out_loadreg = -1;
3343 out_loadreg = FLD (out_frn);
3344 cycles += model_u_set_fr_0_after (current_cpu, idesc, 3, referenced, out_loadreg);
3351 sh2e_sh2e_model::model_fsub_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3353 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3354 const sh2e_scache* abuf = sem;
3355 const sh2e_idesc* idesc = abuf->idesc;
3359 in_usereg = FLD (in_fsdm);
3360 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3364 in_usereg = FLD (in_fsdn);
3365 cycles += model_u_use_fr_before (current_cpu, idesc, 1, in_usereg);
3368 cycles += model_u_exec_before (current_cpu, idesc, 2);
3371 cycles += model_u_fpu_before (current_cpu, idesc, 3);
3374 INT out_loadreg = -1;
3375 out_loadreg = FLD (out_fsdn);
3376 cycles += model_u_set_fr_before (current_cpu, idesc, 4, out_loadreg);
3383 sh2e_sh2e_model::model_fsub_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3385 #define FLD(f) abuf->fields.sfmt_fadd_compact.f
3386 const sh2e_scache* abuf = sem;
3387 const sh2e_idesc* idesc = abuf->idesc;
3391 unsigned long long insn_referenced = abuf->written;
3393 in_usereg = FLD (in_fsdm);
3394 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3398 unsigned long long insn_referenced = abuf->written;
3400 in_usereg = FLD (in_fsdn);
3401 cycles += model_u_use_fr_after (current_cpu, idesc, 1, referenced, in_usereg);
3405 unsigned long long insn_referenced = abuf->written;
3406 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3410 unsigned long long insn_referenced = abuf->written;
3411 cycles += model_u_fpu_after (current_cpu, idesc, 3, referenced);
3415 unsigned long long insn_referenced = abuf->written;
3416 INT out_loadreg = -1;
3417 out_loadreg = FLD (out_fsdn);
3418 cycles += model_u_set_fr_after (current_cpu, idesc, 4, referenced, out_loadreg);
3425 sh2e_sh2e_model::model_ftrc_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3427 #define FLD(f) abuf->fields.sfmt_ftrc_compact.f
3428 const sh2e_scache* abuf = sem;
3429 const sh2e_idesc* idesc = abuf->idesc;
3433 in_usereg = FLD (in_fsdn);
3434 cycles += model_u_use_fr_before (current_cpu, idesc, 0, in_usereg);
3437 cycles += model_u_exec_before (current_cpu, idesc, 1);
3440 cycles += model_u_fpu_before (current_cpu, idesc, 2);
3443 cycles += model_u_set_fpul_before (current_cpu, idesc, 3);
3450 sh2e_sh2e_model::model_ftrc_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3452 #define FLD(f) abuf->fields.sfmt_ftrc_compact.f
3453 const sh2e_scache* abuf = sem;
3454 const sh2e_idesc* idesc = abuf->idesc;
3458 unsigned long long insn_referenced = abuf->written;
3460 in_usereg = FLD (in_fsdn);
3461 cycles += model_u_use_fr_after (current_cpu, idesc, 0, referenced, in_usereg);
3465 unsigned long long insn_referenced = abuf->written;
3466 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3470 unsigned long long insn_referenced = abuf->written;
3471 cycles += model_u_fpu_after (current_cpu, idesc, 2, referenced);
3475 unsigned long long insn_referenced = abuf->written;
3476 cycles += model_u_set_fpul_after (current_cpu, idesc, 3, referenced);
3483 sh2e_sh2e_model::model_jmp_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3485 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3486 const sh2e_scache* abuf = sem;
3487 const sh2e_idesc* idesc = abuf->idesc;
3490 cycles += model_u_jmp_before (current_cpu, idesc, 0);
3497 sh2e_sh2e_model::model_jmp_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3499 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3500 const sh2e_scache* abuf = sem;
3501 const sh2e_idesc* idesc = abuf->idesc;
3505 unsigned long long insn_referenced = abuf->written;
3506 referenced |= 1 << 0;
3507 cycles += model_u_jmp_after (current_cpu, idesc, 0, referenced);
3514 sh2e_sh2e_model::model_jsr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3516 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3517 const sh2e_scache* abuf = sem;
3518 const sh2e_idesc* idesc = abuf->idesc;
3521 cycles += model_u_jsr_before (current_cpu, idesc, 0);
3528 sh2e_sh2e_model::model_jsr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3530 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3531 const sh2e_scache* abuf = sem;
3532 const sh2e_idesc* idesc = abuf->idesc;
3536 unsigned long long insn_referenced = abuf->written;
3537 referenced |= 1 << 0;
3538 cycles += model_u_jsr_after (current_cpu, idesc, 0, referenced);
3545 sh2e_sh2e_model::model_ldc_gbr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3547 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3548 const sh2e_scache* abuf = sem;
3549 const sh2e_idesc* idesc = abuf->idesc;
3553 in_usereg = FLD (in_rn);
3554 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3557 cycles += model_u_ldc_gbr_before (current_cpu, idesc, 1);
3564 sh2e_sh2e_model::model_ldc_gbr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3566 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3567 const sh2e_scache* abuf = sem;
3568 const sh2e_idesc* idesc = abuf->idesc;
3572 unsigned long long insn_referenced = abuf->written;
3574 in_usereg = FLD (in_rn);
3575 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3579 unsigned long long insn_referenced = abuf->written;
3580 cycles += model_u_ldc_gbr_after (current_cpu, idesc, 1, referenced);
3587 sh2e_sh2e_model::model_ldc_vbr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3589 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3590 const sh2e_scache* abuf = sem;
3591 const sh2e_idesc* idesc = abuf->idesc;
3595 in_usereg = FLD (in_rn);
3596 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3599 cycles += model_u_exec_before (current_cpu, idesc, 1);
3606 sh2e_sh2e_model::model_ldc_vbr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3608 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3609 const sh2e_scache* abuf = sem;
3610 const sh2e_idesc* idesc = abuf->idesc;
3614 unsigned long long insn_referenced = abuf->written;
3616 in_usereg = FLD (in_rn);
3617 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3621 unsigned long long insn_referenced = abuf->written;
3622 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3629 sh2e_sh2e_model::model_ldc_sr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3631 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3632 const sh2e_scache* abuf = sem;
3633 const sh2e_idesc* idesc = abuf->idesc;
3637 in_usereg = FLD (in_rn);
3638 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3641 cycles += model_u_ldc_sr_before (current_cpu, idesc, 1);
3648 sh2e_sh2e_model::model_ldc_sr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3650 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3651 const sh2e_scache* abuf = sem;
3652 const sh2e_idesc* idesc = abuf->idesc;
3656 unsigned long long insn_referenced = abuf->written;
3658 in_usereg = FLD (in_rn);
3659 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3663 unsigned long long insn_referenced = abuf->written;
3664 cycles += model_u_ldc_sr_after (current_cpu, idesc, 1, referenced);
3671 sh2e_sh2e_model::model_ldcl_gbr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3673 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3674 const sh2e_scache* abuf = sem;
3675 const sh2e_idesc* idesc = abuf->idesc;
3679 in_usereg = FLD (in_rn);
3680 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3683 cycles += model_u_ldcl_before (current_cpu, idesc, 1);
3686 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
3689 cycles += model_u_load_gbr_before (current_cpu, idesc, 3);
3696 sh2e_sh2e_model::model_ldcl_gbr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3698 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3699 const sh2e_scache* abuf = sem;
3700 const sh2e_idesc* idesc = abuf->idesc;
3704 unsigned long long insn_referenced = abuf->written;
3706 in_usereg = FLD (in_rn);
3707 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3711 unsigned long long insn_referenced = abuf->written;
3712 cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
3716 unsigned long long insn_referenced = abuf->written;
3717 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
3721 unsigned long long insn_referenced = abuf->written;
3722 cycles += model_u_load_gbr_after (current_cpu, idesc, 3, referenced);
3729 sh2e_sh2e_model::model_ldcl_vbr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3731 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3732 const sh2e_scache* abuf = sem;
3733 const sh2e_idesc* idesc = abuf->idesc;
3737 in_usereg = FLD (in_rn);
3738 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3741 cycles += model_u_ldcl_vbr_before (current_cpu, idesc, 1);
3744 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
3747 cycles += model_u_load_vbr_before (current_cpu, idesc, 3);
3754 sh2e_sh2e_model::model_ldcl_vbr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3756 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3757 const sh2e_scache* abuf = sem;
3758 const sh2e_idesc* idesc = abuf->idesc;
3762 unsigned long long insn_referenced = abuf->written;
3764 in_usereg = FLD (in_rn);
3765 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3769 unsigned long long insn_referenced = abuf->written;
3770 cycles += model_u_ldcl_vbr_after (current_cpu, idesc, 1, referenced);
3774 unsigned long long insn_referenced = abuf->written;
3775 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
3779 unsigned long long insn_referenced = abuf->written;
3780 cycles += model_u_load_vbr_after (current_cpu, idesc, 3, referenced);
3787 sh2e_sh2e_model::model_lds_fpscr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3789 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3790 const sh2e_scache* abuf = sem;
3791 const sh2e_idesc* idesc = abuf->idesc;
3795 in_usereg = FLD (in_rn);
3796 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3799 cycles += model_u_lds_fpscr_before (current_cpu, idesc, 1);
3806 sh2e_sh2e_model::model_lds_fpscr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3808 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3809 const sh2e_scache* abuf = sem;
3810 const sh2e_idesc* idesc = abuf->idesc;
3814 unsigned long long insn_referenced = abuf->written;
3816 in_usereg = FLD (in_rn);
3817 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3821 unsigned long long insn_referenced = abuf->written;
3822 cycles += model_u_lds_fpscr_after (current_cpu, idesc, 1, referenced);
3829 sh2e_sh2e_model::model_ldsl_fpscr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3831 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3832 const sh2e_scache* abuf = sem;
3833 const sh2e_idesc* idesc = abuf->idesc;
3837 in_usereg = FLD (in_rn);
3838 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3841 cycles += model_u_lds_fpscr_before (current_cpu, idesc, 1);
3844 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 2);
3847 cycles += model_u_ldsl_fpscr_before (current_cpu, idesc, 3);
3854 sh2e_sh2e_model::model_ldsl_fpscr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3856 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
3857 const sh2e_scache* abuf = sem;
3858 const sh2e_idesc* idesc = abuf->idesc;
3862 unsigned long long insn_referenced = abuf->written;
3864 in_usereg = FLD (in_rn);
3865 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3869 unsigned long long insn_referenced = abuf->written;
3870 cycles += model_u_lds_fpscr_after (current_cpu, idesc, 1, referenced);
3874 unsigned long long insn_referenced = abuf->written;
3875 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 2, referenced);
3879 unsigned long long insn_referenced = abuf->written;
3880 cycles += model_u_ldsl_fpscr_after (current_cpu, idesc, 3, referenced);
3887 sh2e_sh2e_model::model_lds_fpul_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3889 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
3890 const sh2e_scache* abuf = sem;
3891 const sh2e_idesc* idesc = abuf->idesc;
3895 in_usereg = FLD (in_rn);
3896 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3899 cycles += model_u_exec_before (current_cpu, idesc, 1);
3902 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
3905 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
3908 cycles += model_u_load_fpul_before (current_cpu, idesc, 4);
3915 sh2e_sh2e_model::model_lds_fpul_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3917 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
3918 const sh2e_scache* abuf = sem;
3919 const sh2e_idesc* idesc = abuf->idesc;
3923 unsigned long long insn_referenced = abuf->written;
3925 in_usereg = FLD (in_rn);
3926 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3930 unsigned long long insn_referenced = abuf->written;
3931 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3935 unsigned long long insn_referenced = abuf->written;
3936 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
3940 unsigned long long insn_referenced = abuf->written;
3941 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
3945 unsigned long long insn_referenced = abuf->written;
3946 cycles += model_u_load_fpul_after (current_cpu, idesc, 4, referenced);
3953 sh2e_sh2e_model::model_ldsl_fpul_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
3955 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
3956 const sh2e_scache* abuf = sem;
3957 const sh2e_idesc* idesc = abuf->idesc;
3961 in_usereg = FLD (in_rn);
3962 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3965 cycles += model_u_exec_before (current_cpu, idesc, 1);
3968 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
3971 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
3974 cycles += model_u_load_fpul_before (current_cpu, idesc, 4);
3981 sh2e_sh2e_model::model_ldsl_fpul_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
3983 #define FLD(f) abuf->fields.sfmt_ldsl_fpul_compact.f
3984 const sh2e_scache* abuf = sem;
3985 const sh2e_idesc* idesc = abuf->idesc;
3989 unsigned long long insn_referenced = abuf->written;
3991 in_usereg = FLD (in_rn);
3992 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3996 unsigned long long insn_referenced = abuf->written;
3997 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4001 unsigned long long insn_referenced = abuf->written;
4002 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
4006 unsigned long long insn_referenced = abuf->written;
4007 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
4011 unsigned long long insn_referenced = abuf->written;
4012 cycles += model_u_load_fpul_after (current_cpu, idesc, 4, referenced);
4019 sh2e_sh2e_model::model_lds_mach_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4021 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4022 const sh2e_scache* abuf = sem;
4023 const sh2e_idesc* idesc = abuf->idesc;
4027 in_usereg = FLD (in_rn);
4028 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4031 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4034 cycles += model_u_exec_before (current_cpu, idesc, 2);
4037 cycles += model_u_set_mac_before (current_cpu, idesc, 3);
4044 sh2e_sh2e_model::model_lds_mach_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4046 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4047 const sh2e_scache* abuf = sem;
4048 const sh2e_idesc* idesc = abuf->idesc;
4052 unsigned long long insn_referenced = abuf->written;
4054 in_usereg = FLD (in_rn);
4055 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4059 unsigned long long insn_referenced = abuf->written;
4060 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4064 unsigned long long insn_referenced = abuf->written;
4065 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4069 unsigned long long insn_referenced = abuf->written;
4070 cycles += model_u_set_mac_after (current_cpu, idesc, 3, referenced);
4077 sh2e_sh2e_model::model_ldsl_mach_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4079 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4080 const sh2e_scache* abuf = sem;
4081 const sh2e_idesc* idesc = abuf->idesc;
4085 in_usereg = FLD (in_rn);
4086 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4089 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4092 cycles += model_u_exec_before (current_cpu, idesc, 2);
4095 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4098 cycles += model_u_load_mac_before (current_cpu, idesc, 4);
4105 sh2e_sh2e_model::model_ldsl_mach_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4107 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4108 const sh2e_scache* abuf = sem;
4109 const sh2e_idesc* idesc = abuf->idesc;
4113 unsigned long long insn_referenced = abuf->written;
4115 in_usereg = FLD (in_rn);
4116 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4120 unsigned long long insn_referenced = abuf->written;
4121 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4125 unsigned long long insn_referenced = abuf->written;
4126 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4130 unsigned long long insn_referenced = abuf->written;
4131 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4135 unsigned long long insn_referenced = abuf->written;
4136 cycles += model_u_load_mac_after (current_cpu, idesc, 4, referenced);
4143 sh2e_sh2e_model::model_lds_macl_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4145 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4146 const sh2e_scache* abuf = sem;
4147 const sh2e_idesc* idesc = abuf->idesc;
4151 in_usereg = FLD (in_rn);
4152 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4155 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4158 cycles += model_u_exec_before (current_cpu, idesc, 2);
4161 cycles += model_u_set_mac_before (current_cpu, idesc, 3);
4168 sh2e_sh2e_model::model_lds_macl_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4170 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4171 const sh2e_scache* abuf = sem;
4172 const sh2e_idesc* idesc = abuf->idesc;
4176 unsigned long long insn_referenced = abuf->written;
4178 in_usereg = FLD (in_rn);
4179 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4183 unsigned long long insn_referenced = abuf->written;
4184 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4188 unsigned long long insn_referenced = abuf->written;
4189 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4193 unsigned long long insn_referenced = abuf->written;
4194 cycles += model_u_set_mac_after (current_cpu, idesc, 3, referenced);
4201 sh2e_sh2e_model::model_ldsl_macl_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4203 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4204 const sh2e_scache* abuf = sem;
4205 const sh2e_idesc* idesc = abuf->idesc;
4209 in_usereg = FLD (in_rn);
4210 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4213 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
4216 cycles += model_u_exec_before (current_cpu, idesc, 2);
4219 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4222 cycles += model_u_load_mac_before (current_cpu, idesc, 4);
4229 sh2e_sh2e_model::model_ldsl_macl_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4231 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4232 const sh2e_scache* abuf = sem;
4233 const sh2e_idesc* idesc = abuf->idesc;
4237 unsigned long long insn_referenced = abuf->written;
4239 in_usereg = FLD (in_rn);
4240 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4244 unsigned long long insn_referenced = abuf->written;
4245 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
4249 unsigned long long insn_referenced = abuf->written;
4250 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4254 unsigned long long insn_referenced = abuf->written;
4255 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4259 unsigned long long insn_referenced = abuf->written;
4260 cycles += model_u_load_mac_after (current_cpu, idesc, 4, referenced);
4267 sh2e_sh2e_model::model_lds_pr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4269 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4270 const sh2e_scache* abuf = sem;
4271 const sh2e_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_lds_pr_before (current_cpu, idesc, 1);
4286 sh2e_sh2e_model::model_lds_pr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4288 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4289 const sh2e_scache* abuf = sem;
4290 const sh2e_idesc* idesc = abuf->idesc;
4294 unsigned long long insn_referenced = abuf->written;
4296 in_usereg = FLD (in_rn);
4297 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4301 unsigned long long insn_referenced = abuf->written;
4302 cycles += model_u_lds_pr_after (current_cpu, idesc, 1, referenced);
4309 sh2e_sh2e_model::model_ldsl_pr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4311 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4312 const sh2e_scache* abuf = sem;
4313 const sh2e_idesc* idesc = abuf->idesc;
4317 in_usereg = FLD (in_rn);
4318 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4321 cycles += model_u_lds_pr_before (current_cpu, idesc, 1);
4324 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4327 cycles += model_u_load_pr_before (current_cpu, idesc, 3);
4334 sh2e_sh2e_model::model_ldsl_pr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4336 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
4337 const sh2e_scache* abuf = sem;
4338 const sh2e_idesc* idesc = abuf->idesc;
4342 unsigned long long insn_referenced = abuf->written;
4344 in_usereg = FLD (in_rn);
4345 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4349 unsigned long long insn_referenced = abuf->written;
4350 cycles += model_u_lds_pr_after (current_cpu, idesc, 1, referenced);
4354 unsigned long long insn_referenced = abuf->written;
4355 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4359 unsigned long long insn_referenced = abuf->written;
4360 cycles += model_u_load_pr_after (current_cpu, idesc, 3, referenced);
4367 sh2e_sh2e_model::model_macl_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4369 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4370 const sh2e_scache* abuf = sem;
4371 const sh2e_idesc* idesc = abuf->idesc;
4375 in_usereg = FLD (in_rn);
4376 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4380 in_usereg = FLD (in_rm);
4381 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4384 cycles += model_u_macl_before (current_cpu, idesc, 2);
4391 sh2e_sh2e_model::model_macl_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4393 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4394 const sh2e_scache* abuf = sem;
4395 const sh2e_idesc* idesc = abuf->idesc;
4399 unsigned long long insn_referenced = abuf->written;
4401 in_usereg = FLD (in_rn);
4402 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4406 unsigned long long insn_referenced = abuf->written;
4408 in_usereg = FLD (in_rm);
4409 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4413 unsigned long long insn_referenced = abuf->written;
4414 cycles += model_u_macl_after (current_cpu, idesc, 2, referenced);
4421 sh2e_sh2e_model::model_macw_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4423 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4424 const sh2e_scache* abuf = sem;
4425 const sh2e_idesc* idesc = abuf->idesc;
4429 in_usereg = FLD (in_rn);
4430 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4434 in_usereg = FLD (in_rm);
4435 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4438 cycles += model_u_macw_before (current_cpu, idesc, 2);
4445 sh2e_sh2e_model::model_macw_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4447 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4448 const sh2e_scache* abuf = sem;
4449 const sh2e_idesc* idesc = abuf->idesc;
4453 unsigned long long insn_referenced = abuf->written;
4455 in_usereg = FLD (in_rn);
4456 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4460 unsigned long long insn_referenced = abuf->written;
4462 in_usereg = FLD (in_rm);
4463 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4467 unsigned long long insn_referenced = abuf->written;
4468 cycles += model_u_macw_after (current_cpu, idesc, 2, referenced);
4475 sh2e_sh2e_model::model_mov_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4477 #define FLD(f) abuf->fields.sfmt_and_compact.f
4478 const sh2e_scache* abuf = sem;
4479 const sh2e_idesc* idesc = abuf->idesc;
4483 in_usereg = FLD (in_rm64);
4484 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4487 cycles += model_u_exec_before (current_cpu, idesc, 1);
4494 sh2e_sh2e_model::model_mov_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4496 #define FLD(f) abuf->fields.sfmt_and_compact.f
4497 const sh2e_scache* abuf = sem;
4498 const sh2e_idesc* idesc = abuf->idesc;
4502 unsigned long long insn_referenced = abuf->written;
4504 in_usereg = FLD (in_rm64);
4505 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4509 unsigned long long insn_referenced = abuf->written;
4510 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4517 sh2e_sh2e_model::model_movi_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4519 #define FLD(f) abuf->fields.sfmt_addi_compact.f
4520 const sh2e_scache* abuf = sem;
4521 const sh2e_idesc* idesc = abuf->idesc;
4524 cycles += model_u_exec_before (current_cpu, idesc, 0);
4531 sh2e_sh2e_model::model_movi_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4533 #define FLD(f) abuf->fields.sfmt_addi_compact.f
4534 const sh2e_scache* abuf = sem;
4535 const sh2e_idesc* idesc = abuf->idesc;
4539 unsigned long long insn_referenced = abuf->written;
4540 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
4547 sh2e_sh2e_model::model_movb1_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4549 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
4550 const sh2e_scache* abuf = sem;
4551 const sh2e_idesc* idesc = abuf->idesc;
4555 in_usereg = FLD (in_rn);
4556 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4560 in_usereg = FLD (in_rm);
4561 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4564 cycles += model_u_exec_before (current_cpu, idesc, 2);
4567 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4574 sh2e_sh2e_model::model_movb1_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4576 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
4577 const sh2e_scache* abuf = sem;
4578 const sh2e_idesc* idesc = abuf->idesc;
4582 unsigned long long insn_referenced = abuf->written;
4584 in_usereg = FLD (in_rn);
4585 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4589 unsigned long long insn_referenced = abuf->written;
4591 in_usereg = FLD (in_rm);
4592 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4596 unsigned long long insn_referenced = abuf->written;
4597 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4601 unsigned long long insn_referenced = abuf->written;
4602 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4609 sh2e_sh2e_model::model_movb2_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4611 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4612 const sh2e_scache* abuf = sem;
4613 const sh2e_idesc* idesc = abuf->idesc;
4617 in_usereg = FLD (in_rn);
4618 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4622 in_usereg = FLD (in_rm);
4623 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4626 cycles += model_u_exec_before (current_cpu, idesc, 2);
4629 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4636 sh2e_sh2e_model::model_movb2_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4638 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4639 const sh2e_scache* abuf = sem;
4640 const sh2e_idesc* idesc = abuf->idesc;
4644 unsigned long long insn_referenced = abuf->written;
4646 in_usereg = FLD (in_rn);
4647 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4651 unsigned long long insn_referenced = abuf->written;
4653 in_usereg = FLD (in_rm);
4654 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4658 unsigned long long insn_referenced = abuf->written;
4659 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4663 unsigned long long insn_referenced = abuf->written;
4664 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4671 sh2e_sh2e_model::model_movb3_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4673 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
4674 const sh2e_scache* abuf = sem;
4675 const sh2e_idesc* idesc = abuf->idesc;
4679 in_usereg = FLD (in_rn);
4680 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4684 in_usereg = FLD (in_rm);
4685 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4689 in_usereg = FLD (in_r0);
4690 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
4693 cycles += model_u_exec_before (current_cpu, idesc, 3);
4696 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
4703 sh2e_sh2e_model::model_movb3_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4705 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
4706 const sh2e_scache* abuf = sem;
4707 const sh2e_idesc* idesc = abuf->idesc;
4711 unsigned long long insn_referenced = abuf->written;
4713 in_usereg = FLD (in_rn);
4714 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4718 unsigned long long insn_referenced = abuf->written;
4720 in_usereg = FLD (in_rm);
4721 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4725 unsigned long long insn_referenced = abuf->written;
4727 in_usereg = FLD (in_r0);
4728 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
4732 unsigned long long insn_referenced = abuf->written;
4733 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
4737 unsigned long long insn_referenced = abuf->written;
4738 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
4745 sh2e_sh2e_model::model_movb4_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4747 #define FLD(f) abuf->fields.sfmt_andi_compact.f
4748 const sh2e_scache* abuf = sem;
4749 const sh2e_idesc* idesc = abuf->idesc;
4752 cycles += model_u_exec_before (current_cpu, idesc, 0);
4755 cycles += model_u_sx_before (current_cpu, idesc, 1);
4758 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4765 sh2e_sh2e_model::model_movb4_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4767 #define FLD(f) abuf->fields.sfmt_andi_compact.f
4768 const sh2e_scache* abuf = sem;
4769 const sh2e_idesc* idesc = abuf->idesc;
4773 unsigned long long insn_referenced = abuf->written;
4774 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
4778 unsigned long long insn_referenced = abuf->written;
4779 cycles += model_u_sx_after (current_cpu, idesc, 1, referenced);
4783 unsigned long long insn_referenced = abuf->written;
4784 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4791 sh2e_sh2e_model::model_movb5_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4793 #define FLD(f) abuf->fields.sfmt_movb5_compact.f
4794 const sh2e_scache* abuf = sem;
4795 const sh2e_idesc* idesc = abuf->idesc;
4799 in_usereg = FLD (in_r0);
4800 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4804 in_usereg = FLD (in_rm);
4805 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4808 cycles += model_u_exec_before (current_cpu, idesc, 2);
4811 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4818 sh2e_sh2e_model::model_movb5_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4820 #define FLD(f) abuf->fields.sfmt_movb5_compact.f
4821 const sh2e_scache* abuf = sem;
4822 const sh2e_idesc* idesc = abuf->idesc;
4826 unsigned long long insn_referenced = abuf->written;
4828 in_usereg = FLD (in_r0);
4829 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4833 unsigned long long insn_referenced = abuf->written;
4835 in_usereg = FLD (in_rm);
4836 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4840 unsigned long long insn_referenced = abuf->written;
4841 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4845 unsigned long long insn_referenced = abuf->written;
4846 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4853 sh2e_sh2e_model::model_movb6_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4855 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
4856 const sh2e_scache* abuf = sem;
4857 const sh2e_idesc* idesc = abuf->idesc;
4861 in_usereg = FLD (in_rm);
4862 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4865 cycles += model_u_exec_before (current_cpu, idesc, 1);
4868 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4871 INT out_loadreg = -1;
4872 out_loadreg = FLD (out_rn);
4873 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
4880 sh2e_sh2e_model::model_movb6_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4882 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
4883 const sh2e_scache* abuf = sem;
4884 const sh2e_idesc* idesc = abuf->idesc;
4888 unsigned long long insn_referenced = abuf->written;
4890 in_usereg = FLD (in_rm);
4891 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4895 unsigned long long insn_referenced = abuf->written;
4896 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4900 unsigned long long insn_referenced = abuf->written;
4901 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4905 unsigned long long insn_referenced = abuf->written;
4906 INT out_loadreg = -1;
4907 out_loadreg = FLD (out_rn);
4908 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
4915 sh2e_sh2e_model::model_movb7_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4917 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4918 const sh2e_scache* abuf = sem;
4919 const sh2e_idesc* idesc = abuf->idesc;
4923 in_usereg = FLD (in_rm);
4924 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4927 cycles += model_u_exec_before (current_cpu, idesc, 1);
4930 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4933 INT out_loadreg = -1;
4934 out_loadreg = FLD (out_rn);
4935 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
4942 sh2e_sh2e_model::model_movb7_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
4944 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4945 const sh2e_scache* abuf = sem;
4946 const sh2e_idesc* idesc = abuf->idesc;
4950 unsigned long long insn_referenced = abuf->written;
4952 in_usereg = FLD (in_rm);
4953 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4957 unsigned long long insn_referenced = abuf->written;
4958 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4962 unsigned long long insn_referenced = abuf->written;
4963 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4967 unsigned long long insn_referenced = abuf->written;
4968 INT out_loadreg = -1;
4969 out_loadreg = FLD (out_rn);
4970 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
4977 sh2e_sh2e_model::model_movb8_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
4979 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
4980 const sh2e_scache* abuf = sem;
4981 const sh2e_idesc* idesc = abuf->idesc;
4985 in_usereg = FLD (in_rm);
4986 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4990 in_usereg = FLD (in_r0);
4991 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4994 cycles += model_u_exec_before (current_cpu, idesc, 2);
4997 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5000 INT out_loadreg = -1;
5001 out_loadreg = FLD (out_rn);
5002 cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
5009 sh2e_sh2e_model::model_movb8_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5011 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
5012 const sh2e_scache* abuf = sem;
5013 const sh2e_idesc* idesc = abuf->idesc;
5017 unsigned long long insn_referenced = abuf->written;
5019 in_usereg = FLD (in_rm);
5020 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5024 unsigned long long insn_referenced = abuf->written;
5026 in_usereg = FLD (in_r0);
5027 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5031 unsigned long long insn_referenced = abuf->written;
5032 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5036 unsigned long long insn_referenced = abuf->written;
5037 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5041 unsigned long long insn_referenced = abuf->written;
5042 INT out_loadreg = -1;
5043 out_loadreg = FLD (out_rn);
5044 cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
5051 sh2e_sh2e_model::model_movb9_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5053 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5054 const sh2e_scache* abuf = sem;
5055 const sh2e_idesc* idesc = abuf->idesc;
5058 cycles += model_u_exec_before (current_cpu, idesc, 0);
5061 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
5064 INT out_loadreg = -1;
5065 out_loadreg = FLD (out_r0);
5066 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
5073 sh2e_sh2e_model::model_movb9_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5075 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5076 const sh2e_scache* abuf = sem;
5077 const sh2e_idesc* idesc = abuf->idesc;
5081 unsigned long long insn_referenced = abuf->written;
5082 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5086 unsigned long long insn_referenced = abuf->written;
5087 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
5091 unsigned long long insn_referenced = abuf->written;
5092 INT out_loadreg = -1;
5093 out_loadreg = FLD (out_r0);
5094 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
5101 sh2e_sh2e_model::model_movb10_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5103 #define FLD(f) abuf->fields.sfmt_movb10_compact.f
5104 const sh2e_scache* abuf = sem;
5105 const sh2e_idesc* idesc = abuf->idesc;
5109 in_usereg = FLD (in_rm);
5110 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5113 cycles += model_u_exec_before (current_cpu, idesc, 1);
5116 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5119 INT out_loadreg = -1;
5120 out_loadreg = FLD (out_r0);
5121 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5128 sh2e_sh2e_model::model_movb10_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5130 #define FLD(f) abuf->fields.sfmt_movb10_compact.f
5131 const sh2e_scache* abuf = sem;
5132 const sh2e_idesc* idesc = abuf->idesc;
5136 unsigned long long insn_referenced = abuf->written;
5138 in_usereg = FLD (in_rm);
5139 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5143 unsigned long long insn_referenced = abuf->written;
5144 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5148 unsigned long long insn_referenced = abuf->written;
5149 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5153 unsigned long long insn_referenced = abuf->written;
5154 INT out_loadreg = -1;
5155 out_loadreg = FLD (out_r0);
5156 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5163 sh2e_sh2e_model::model_movl1_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5165 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5166 const sh2e_scache* abuf = sem;
5167 const sh2e_idesc* idesc = abuf->idesc;
5171 in_usereg = FLD (in_rm);
5172 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5176 in_usereg = FLD (in_rn);
5177 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5180 cycles += model_u_exec_before (current_cpu, idesc, 2);
5183 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5190 sh2e_sh2e_model::model_movl1_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5192 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5193 const sh2e_scache* abuf = sem;
5194 const sh2e_idesc* idesc = abuf->idesc;
5198 unsigned long long insn_referenced = abuf->written;
5200 in_usereg = FLD (in_rm);
5201 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5205 unsigned long long insn_referenced = abuf->written;
5207 in_usereg = FLD (in_rn);
5208 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5212 unsigned long long insn_referenced = abuf->written;
5213 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5217 unsigned long long insn_referenced = abuf->written;
5218 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5225 sh2e_sh2e_model::model_movl2_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5227 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5228 const sh2e_scache* abuf = sem;
5229 const sh2e_idesc* idesc = abuf->idesc;
5233 in_usereg = FLD (in_rm);
5234 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5238 in_usereg = FLD (in_rn);
5239 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5242 cycles += model_u_exec_before (current_cpu, idesc, 2);
5245 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5252 sh2e_sh2e_model::model_movl2_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5254 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5255 const sh2e_scache* abuf = sem;
5256 const sh2e_idesc* idesc = abuf->idesc;
5260 unsigned long long insn_referenced = abuf->written;
5262 in_usereg = FLD (in_rm);
5263 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5267 unsigned long long insn_referenced = abuf->written;
5269 in_usereg = FLD (in_rn);
5270 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5274 unsigned long long insn_referenced = abuf->written;
5275 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5279 unsigned long long insn_referenced = abuf->written;
5280 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5287 sh2e_sh2e_model::model_movl3_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5289 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
5290 const sh2e_scache* abuf = sem;
5291 const sh2e_idesc* idesc = abuf->idesc;
5295 in_usereg = FLD (in_rm);
5296 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5300 in_usereg = FLD (in_rn);
5301 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5305 in_usereg = FLD (in_r0);
5306 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
5309 cycles += model_u_exec_before (current_cpu, idesc, 3);
5312 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
5319 sh2e_sh2e_model::model_movl3_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5321 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
5322 const sh2e_scache* abuf = sem;
5323 const sh2e_idesc* idesc = abuf->idesc;
5327 unsigned long long insn_referenced = abuf->written;
5329 in_usereg = FLD (in_rm);
5330 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5334 unsigned long long insn_referenced = abuf->written;
5336 in_usereg = FLD (in_rn);
5337 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5341 unsigned long long insn_referenced = abuf->written;
5343 in_usereg = FLD (in_r0);
5344 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
5348 unsigned long long insn_referenced = abuf->written;
5349 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
5353 unsigned long long insn_referenced = abuf->written;
5354 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
5361 sh2e_sh2e_model::model_movl4_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5363 #define FLD(f) abuf->fields.sfmt_movl4_compact.f
5364 const sh2e_scache* abuf = sem;
5365 const sh2e_idesc* idesc = abuf->idesc;
5369 in_usereg = FLD (in_r0);
5370 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5373 cycles += model_u_exec_before (current_cpu, idesc, 1);
5376 cycles += model_u_sx_before (current_cpu, idesc, 2);
5379 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5386 sh2e_sh2e_model::model_movl4_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5388 #define FLD(f) abuf->fields.sfmt_movl4_compact.f
5389 const sh2e_scache* abuf = sem;
5390 const sh2e_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;
5402 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5406 unsigned long long insn_referenced = abuf->written;
5407 cycles += model_u_sx_after (current_cpu, idesc, 2, referenced);
5411 unsigned long long insn_referenced = abuf->written;
5412 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5419 sh2e_sh2e_model::model_movl5_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5421 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5422 const sh2e_scache* abuf = sem;
5423 const sh2e_idesc* idesc = abuf->idesc;
5427 in_usereg = FLD (in_rm);
5428 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5432 in_usereg = FLD (in_rn);
5433 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5436 cycles += model_u_exec_before (current_cpu, idesc, 2);
5439 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5446 sh2e_sh2e_model::model_movl5_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5448 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5449 const sh2e_scache* abuf = sem;
5450 const sh2e_idesc* idesc = abuf->idesc;
5454 unsigned long long insn_referenced = abuf->written;
5456 in_usereg = FLD (in_rm);
5457 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5461 unsigned long long insn_referenced = abuf->written;
5463 in_usereg = FLD (in_rn);
5464 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5468 unsigned long long insn_referenced = abuf->written;
5469 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5473 unsigned long long insn_referenced = abuf->written;
5474 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5481 sh2e_sh2e_model::model_movl6_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5483 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
5484 const sh2e_scache* abuf = sem;
5485 const sh2e_idesc* idesc = abuf->idesc;
5489 in_usereg = FLD (in_rm);
5490 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5493 cycles += model_u_exec_before (current_cpu, idesc, 1);
5496 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5499 INT out_loadreg = -1;
5500 out_loadreg = FLD (out_rn);
5501 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5508 sh2e_sh2e_model::model_movl6_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5510 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
5511 const sh2e_scache* abuf = sem;
5512 const sh2e_idesc* idesc = abuf->idesc;
5516 unsigned long long insn_referenced = abuf->written;
5518 in_usereg = FLD (in_rm);
5519 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5523 unsigned long long insn_referenced = abuf->written;
5524 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5528 unsigned long long insn_referenced = abuf->written;
5529 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5533 unsigned long long insn_referenced = abuf->written;
5534 INT out_loadreg = -1;
5535 out_loadreg = FLD (out_rn);
5536 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5543 sh2e_sh2e_model::model_movl7_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5545 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5546 const sh2e_scache* abuf = sem;
5547 const sh2e_idesc* idesc = abuf->idesc;
5551 in_usereg = FLD (in_rm);
5552 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5555 cycles += model_u_exec_before (current_cpu, idesc, 1);
5558 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5561 INT out_loadreg = -1;
5562 out_loadreg = FLD (out_rn);
5563 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5570 sh2e_sh2e_model::model_movl7_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5572 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5573 const sh2e_scache* abuf = sem;
5574 const sh2e_idesc* idesc = abuf->idesc;
5578 unsigned long long insn_referenced = abuf->written;
5580 in_usereg = FLD (in_rm);
5581 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5585 unsigned long long insn_referenced = abuf->written;
5586 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5590 unsigned long long insn_referenced = abuf->written;
5591 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5595 unsigned long long insn_referenced = abuf->written;
5596 INT out_loadreg = -1;
5597 out_loadreg = FLD (out_rn);
5598 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5605 sh2e_sh2e_model::model_movl8_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5607 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
5608 const sh2e_scache* abuf = sem;
5609 const sh2e_idesc* idesc = abuf->idesc;
5613 in_usereg = FLD (in_rm);
5614 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5618 in_usereg = FLD (in_r0);
5619 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5622 cycles += model_u_exec_before (current_cpu, idesc, 2);
5625 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5628 INT out_loadreg = -1;
5629 out_loadreg = FLD (out_rn);
5630 cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
5637 sh2e_sh2e_model::model_movl8_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5639 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
5640 const sh2e_scache* abuf = sem;
5641 const sh2e_idesc* idesc = abuf->idesc;
5645 unsigned long long insn_referenced = abuf->written;
5647 in_usereg = FLD (in_rm);
5648 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5652 unsigned long long insn_referenced = abuf->written;
5654 in_usereg = FLD (in_r0);
5655 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5659 unsigned long long insn_referenced = abuf->written;
5660 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5664 unsigned long long insn_referenced = abuf->written;
5665 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5669 unsigned long long insn_referenced = abuf->written;
5670 INT out_loadreg = -1;
5671 out_loadreg = FLD (out_rn);
5672 cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
5679 sh2e_sh2e_model::model_movl9_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5681 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
5682 const sh2e_scache* abuf = sem;
5683 const sh2e_idesc* idesc = abuf->idesc;
5686 cycles += model_u_exec_before (current_cpu, idesc, 0);
5689 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
5692 INT out_loadreg = -1;
5693 out_loadreg = FLD (out_r0);
5694 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
5701 sh2e_sh2e_model::model_movl9_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5703 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
5704 const sh2e_scache* abuf = sem;
5705 const sh2e_idesc* idesc = abuf->idesc;
5709 unsigned long long insn_referenced = abuf->written;
5710 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5714 unsigned long long insn_referenced = abuf->written;
5715 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
5719 unsigned long long insn_referenced = abuf->written;
5720 INT out_loadreg = -1;
5721 out_loadreg = FLD (out_r0);
5722 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
5729 sh2e_sh2e_model::model_movl10_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5731 #define FLD(f) abuf->fields.sfmt_movl10_compact.f
5732 const sh2e_scache* abuf = sem;
5733 const sh2e_idesc* idesc = abuf->idesc;
5736 cycles += model_u_exec_before (current_cpu, idesc, 0);
5739 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
5742 INT out_loadreg = -1;
5743 out_loadreg = FLD (out_rn);
5744 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
5751 sh2e_sh2e_model::model_movl10_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5753 #define FLD(f) abuf->fields.sfmt_movl10_compact.f
5754 const sh2e_scache* abuf = sem;
5755 const sh2e_idesc* idesc = abuf->idesc;
5759 unsigned long long insn_referenced = abuf->written;
5760 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5764 unsigned long long insn_referenced = abuf->written;
5765 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
5769 unsigned long long insn_referenced = abuf->written;
5770 INT out_loadreg = -1;
5771 out_loadreg = FLD (out_rn);
5772 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
5779 sh2e_sh2e_model::model_movl11_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5781 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
5782 const sh2e_scache* abuf = sem;
5783 const sh2e_idesc* idesc = abuf->idesc;
5787 in_usereg = FLD (in_rm);
5788 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5791 cycles += model_u_exec_before (current_cpu, idesc, 1);
5794 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5797 INT out_loadreg = -1;
5798 out_loadreg = FLD (out_rn);
5799 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5806 sh2e_sh2e_model::model_movl11_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5808 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
5809 const sh2e_scache* abuf = sem;
5810 const sh2e_idesc* idesc = abuf->idesc;
5814 unsigned long long insn_referenced = abuf->written;
5816 in_usereg = FLD (in_rm);
5817 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5821 unsigned long long insn_referenced = abuf->written;
5822 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5826 unsigned long long insn_referenced = abuf->written;
5827 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5831 unsigned long long insn_referenced = abuf->written;
5832 INT out_loadreg = -1;
5833 out_loadreg = FLD (out_rn);
5834 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5841 sh2e_sh2e_model::model_movw1_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5843 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5844 const sh2e_scache* abuf = sem;
5845 const sh2e_idesc* idesc = abuf->idesc;
5849 in_usereg = FLD (in_rm);
5850 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5854 in_usereg = FLD (in_rn);
5855 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5858 cycles += model_u_exec_before (current_cpu, idesc, 2);
5861 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5868 sh2e_sh2e_model::model_movw1_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5870 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
5871 const sh2e_scache* abuf = sem;
5872 const sh2e_idesc* idesc = abuf->idesc;
5876 unsigned long long insn_referenced = abuf->written;
5878 in_usereg = FLD (in_rm);
5879 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5883 unsigned long long insn_referenced = abuf->written;
5885 in_usereg = FLD (in_rn);
5886 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5890 unsigned long long insn_referenced = abuf->written;
5891 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5895 unsigned long long insn_referenced = abuf->written;
5896 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5903 sh2e_sh2e_model::model_movw2_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5905 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5906 const sh2e_scache* abuf = sem;
5907 const sh2e_idesc* idesc = abuf->idesc;
5911 in_usereg = FLD (in_rm);
5912 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5916 in_usereg = FLD (in_rn);
5917 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5920 cycles += model_u_exec_before (current_cpu, idesc, 2);
5923 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
5930 sh2e_sh2e_model::model_movw2_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5932 #define FLD(f) abuf->fields.sfmt_macl_compact.f
5933 const sh2e_scache* abuf = sem;
5934 const sh2e_idesc* idesc = abuf->idesc;
5938 unsigned long long insn_referenced = abuf->written;
5940 in_usereg = FLD (in_rm);
5941 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5945 unsigned long long insn_referenced = abuf->written;
5947 in_usereg = FLD (in_rn);
5948 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5952 unsigned long long insn_referenced = abuf->written;
5953 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5957 unsigned long long insn_referenced = abuf->written;
5958 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
5965 sh2e_sh2e_model::model_movw3_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
5967 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
5968 const sh2e_scache* abuf = sem;
5969 const sh2e_idesc* idesc = abuf->idesc;
5973 in_usereg = FLD (in_rm);
5974 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5978 in_usereg = FLD (in_rn);
5979 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5983 in_usereg = FLD (in_r0);
5984 cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
5987 cycles += model_u_exec_before (current_cpu, idesc, 3);
5990 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
5997 sh2e_sh2e_model::model_movw3_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
5999 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
6000 const sh2e_scache* abuf = sem;
6001 const sh2e_idesc* idesc = abuf->idesc;
6005 unsigned long long insn_referenced = abuf->written;
6007 in_usereg = FLD (in_rm);
6008 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6012 unsigned long long insn_referenced = abuf->written;
6014 in_usereg = FLD (in_rn);
6015 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6019 unsigned long long insn_referenced = abuf->written;
6021 in_usereg = FLD (in_r0);
6022 cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
6026 unsigned long long insn_referenced = abuf->written;
6027 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
6031 unsigned long long insn_referenced = abuf->written;
6032 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
6039 sh2e_sh2e_model::model_movw4_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6041 #define FLD(f) abuf->fields.sfmt_movw4_compact.f
6042 const sh2e_scache* abuf = sem;
6043 const sh2e_idesc* idesc = abuf->idesc;
6047 in_usereg = FLD (in_r0);
6048 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6051 cycles += model_u_exec_before (current_cpu, idesc, 1);
6054 cycles += model_u_sx_before (current_cpu, idesc, 2);
6057 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6064 sh2e_sh2e_model::model_movw4_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6066 #define FLD(f) abuf->fields.sfmt_movw4_compact.f
6067 const sh2e_scache* abuf = sem;
6068 const sh2e_idesc* idesc = abuf->idesc;
6072 unsigned long long insn_referenced = abuf->written;
6074 in_usereg = FLD (in_r0);
6075 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6079 unsigned long long insn_referenced = abuf->written;
6080 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6084 unsigned long long insn_referenced = abuf->written;
6085 cycles += model_u_sx_after (current_cpu, idesc, 2, referenced);
6089 unsigned long long insn_referenced = abuf->written;
6090 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6097 sh2e_sh2e_model::model_movw5_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6099 #define FLD(f) abuf->fields.sfmt_movw5_compact.f
6100 const sh2e_scache* abuf = sem;
6101 const sh2e_idesc* idesc = abuf->idesc;
6105 in_usereg = FLD (in_rm);
6106 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6110 in_usereg = FLD (in_r0);
6111 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6114 cycles += model_u_exec_before (current_cpu, idesc, 2);
6117 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6124 sh2e_sh2e_model::model_movw5_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6126 #define FLD(f) abuf->fields.sfmt_movw5_compact.f
6127 const sh2e_scache* abuf = sem;
6128 const sh2e_idesc* idesc = abuf->idesc;
6132 unsigned long long insn_referenced = abuf->written;
6134 in_usereg = FLD (in_rm);
6135 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6139 unsigned long long insn_referenced = abuf->written;
6141 in_usereg = FLD (in_r0);
6142 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6146 unsigned long long insn_referenced = abuf->written;
6147 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6151 unsigned long long insn_referenced = abuf->written;
6152 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6159 sh2e_sh2e_model::model_movw6_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6161 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6162 const sh2e_scache* abuf = sem;
6163 const sh2e_idesc* idesc = abuf->idesc;
6167 in_usereg = FLD (in_rm);
6168 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6171 cycles += model_u_exec_before (current_cpu, idesc, 1);
6174 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6177 INT out_loadreg = -1;
6178 out_loadreg = FLD (out_rn);
6179 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6186 sh2e_sh2e_model::model_movw6_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6188 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6189 const sh2e_scache* abuf = sem;
6190 const sh2e_idesc* idesc = abuf->idesc;
6194 unsigned long long insn_referenced = abuf->written;
6196 in_usereg = FLD (in_rm);
6197 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6201 unsigned long long insn_referenced = abuf->written;
6202 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6206 unsigned long long insn_referenced = abuf->written;
6207 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6211 unsigned long long insn_referenced = abuf->written;
6212 INT out_loadreg = -1;
6213 out_loadreg = FLD (out_rn);
6214 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6221 sh2e_sh2e_model::model_movw7_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6223 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6224 const sh2e_scache* abuf = sem;
6225 const sh2e_idesc* idesc = abuf->idesc;
6229 in_usereg = FLD (in_rm);
6230 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6233 cycles += model_u_exec_before (current_cpu, idesc, 1);
6236 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6239 INT out_loadreg = -1;
6240 out_loadreg = FLD (out_rn);
6241 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6248 sh2e_sh2e_model::model_movw7_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6250 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6251 const sh2e_scache* abuf = sem;
6252 const sh2e_idesc* idesc = abuf->idesc;
6256 unsigned long long insn_referenced = abuf->written;
6258 in_usereg = FLD (in_rm);
6259 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6263 unsigned long long insn_referenced = abuf->written;
6264 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6268 unsigned long long insn_referenced = abuf->written;
6269 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6273 unsigned long long insn_referenced = abuf->written;
6274 INT out_loadreg = -1;
6275 out_loadreg = FLD (out_rn);
6276 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6283 sh2e_sh2e_model::model_movw8_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6285 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
6286 const sh2e_scache* abuf = sem;
6287 const sh2e_idesc* idesc = abuf->idesc;
6291 in_usereg = FLD (in_rm);
6292 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6296 in_usereg = FLD (in_r0);
6297 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6300 cycles += model_u_exec_before (current_cpu, idesc, 2);
6303 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
6306 INT out_loadreg = -1;
6307 out_loadreg = FLD (out_rn);
6308 cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
6315 sh2e_sh2e_model::model_movw8_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6317 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
6318 const sh2e_scache* abuf = sem;
6319 const sh2e_idesc* idesc = abuf->idesc;
6323 unsigned long long insn_referenced = abuf->written;
6325 in_usereg = FLD (in_rm);
6326 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6330 unsigned long long insn_referenced = abuf->written;
6332 in_usereg = FLD (in_r0);
6333 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6337 unsigned long long insn_referenced = abuf->written;
6338 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6342 unsigned long long insn_referenced = abuf->written;
6343 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
6347 unsigned long long insn_referenced = abuf->written;
6348 INT out_loadreg = -1;
6349 out_loadreg = FLD (out_rn);
6350 cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
6357 sh2e_sh2e_model::model_movw9_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6359 #define FLD(f) abuf->fields.sfmt_movw9_compact.f
6360 const sh2e_scache* abuf = sem;
6361 const sh2e_idesc* idesc = abuf->idesc;
6364 cycles += model_u_exec_before (current_cpu, idesc, 0);
6367 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
6370 INT out_loadreg = -1;
6371 out_loadreg = FLD (out_r0);
6372 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
6379 sh2e_sh2e_model::model_movw9_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6381 #define FLD(f) abuf->fields.sfmt_movw9_compact.f
6382 const sh2e_scache* abuf = sem;
6383 const sh2e_idesc* idesc = abuf->idesc;
6387 unsigned long long insn_referenced = abuf->written;
6388 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6392 unsigned long long insn_referenced = abuf->written;
6393 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
6397 unsigned long long insn_referenced = abuf->written;
6398 INT out_loadreg = -1;
6399 out_loadreg = FLD (out_r0);
6400 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
6407 sh2e_sh2e_model::model_movw10_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6409 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
6410 const sh2e_scache* abuf = sem;
6411 const sh2e_idesc* idesc = abuf->idesc;
6414 cycles += model_u_exec_before (current_cpu, idesc, 0);
6417 cycles += model_u_memory_access_before (current_cpu, idesc, 1);
6420 INT out_loadreg = -1;
6421 out_loadreg = FLD (out_rn);
6422 cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
6429 sh2e_sh2e_model::model_movw10_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6431 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
6432 const sh2e_scache* abuf = sem;
6433 const sh2e_idesc* idesc = abuf->idesc;
6437 unsigned long long insn_referenced = abuf->written;
6438 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6442 unsigned long long insn_referenced = abuf->written;
6443 cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
6447 unsigned long long insn_referenced = abuf->written;
6448 INT out_loadreg = -1;
6449 out_loadreg = FLD (out_rn);
6450 cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
6457 sh2e_sh2e_model::model_movw11_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6459 #define FLD(f) abuf->fields.sfmt_movw11_compact.f
6460 const sh2e_scache* abuf = sem;
6461 const sh2e_idesc* idesc = abuf->idesc;
6465 in_usereg = FLD (in_rm);
6466 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6469 cycles += model_u_exec_before (current_cpu, idesc, 1);
6472 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
6475 INT out_loadreg = -1;
6476 out_loadreg = FLD (out_r0);
6477 cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
6484 sh2e_sh2e_model::model_movw11_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6486 #define FLD(f) abuf->fields.sfmt_movw11_compact.f
6487 const sh2e_scache* abuf = sem;
6488 const sh2e_idesc* idesc = abuf->idesc;
6492 unsigned long long insn_referenced = abuf->written;
6494 in_usereg = FLD (in_rm);
6495 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6499 unsigned long long insn_referenced = abuf->written;
6500 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6504 unsigned long long insn_referenced = abuf->written;
6505 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
6509 unsigned long long insn_referenced = abuf->written;
6510 INT out_loadreg = -1;
6511 out_loadreg = FLD (out_r0);
6512 cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
6519 sh2e_sh2e_model::model_mova_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6521 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
6522 const sh2e_scache* abuf = sem;
6523 const sh2e_idesc* idesc = abuf->idesc;
6526 cycles += model_u_exec_before (current_cpu, idesc, 0);
6533 sh2e_sh2e_model::model_mova_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6535 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
6536 const sh2e_scache* abuf = sem;
6537 const sh2e_idesc* idesc = abuf->idesc;
6541 unsigned long long insn_referenced = abuf->written;
6542 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6549 sh2e_sh2e_model::model_movt_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6551 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
6552 const sh2e_scache* abuf = sem;
6553 const sh2e_idesc* idesc = abuf->idesc;
6556 cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
6559 cycles += model_u_exec_before (current_cpu, idesc, 1);
6566 sh2e_sh2e_model::model_movt_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6568 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
6569 const sh2e_scache* abuf = sem;
6570 const sh2e_idesc* idesc = abuf->idesc;
6574 unsigned long long insn_referenced = abuf->written;
6575 cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
6579 unsigned long long insn_referenced = abuf->written;
6580 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6587 sh2e_sh2e_model::model_mull_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6589 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6590 const sh2e_scache* abuf = sem;
6591 const sh2e_idesc* idesc = abuf->idesc;
6595 in_usereg = FLD (in_rn);
6596 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6600 in_usereg = FLD (in_rm);
6601 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6604 cycles += model_u_mull_before (current_cpu, idesc, 2);
6611 sh2e_sh2e_model::model_mull_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6613 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6614 const sh2e_scache* abuf = sem;
6615 const sh2e_idesc* idesc = abuf->idesc;
6619 unsigned long long insn_referenced = abuf->written;
6621 in_usereg = FLD (in_rn);
6622 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6626 unsigned long long insn_referenced = abuf->written;
6628 in_usereg = FLD (in_rm);
6629 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6633 unsigned long long insn_referenced = abuf->written;
6634 cycles += model_u_mull_after (current_cpu, idesc, 2, referenced);
6641 sh2e_sh2e_model::model_mulsw_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6643 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6644 const sh2e_scache* abuf = sem;
6645 const sh2e_idesc* idesc = abuf->idesc;
6649 in_usereg = FLD (in_rn);
6650 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6654 in_usereg = FLD (in_rm);
6655 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6658 cycles += model_u_mulsw_before (current_cpu, idesc, 2);
6661 cycles += model_u_multiply_before (current_cpu, idesc, 3);
6668 sh2e_sh2e_model::model_mulsw_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6670 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6671 const sh2e_scache* abuf = sem;
6672 const sh2e_idesc* idesc = abuf->idesc;
6676 unsigned long long insn_referenced = abuf->written;
6678 in_usereg = FLD (in_rn);
6679 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6683 unsigned long long insn_referenced = abuf->written;
6685 in_usereg = FLD (in_rm);
6686 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6690 unsigned long long insn_referenced = abuf->written;
6691 cycles += model_u_mulsw_after (current_cpu, idesc, 2, referenced);
6695 unsigned long long insn_referenced = abuf->written;
6696 cycles += model_u_multiply_after (current_cpu, idesc, 3, referenced);
6703 sh2e_sh2e_model::model_muluw_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6705 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6706 const sh2e_scache* abuf = sem;
6707 const sh2e_idesc* idesc = abuf->idesc;
6711 in_usereg = FLD (in_rn);
6712 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6716 in_usereg = FLD (in_rm);
6717 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6720 cycles += model_u_mulsw_before (current_cpu, idesc, 2);
6723 cycles += model_u_multiply_before (current_cpu, idesc, 3);
6730 sh2e_sh2e_model::model_muluw_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6732 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
6733 const sh2e_scache* abuf = sem;
6734 const sh2e_idesc* idesc = abuf->idesc;
6738 unsigned long long insn_referenced = abuf->written;
6740 in_usereg = FLD (in_rn);
6741 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6745 unsigned long long insn_referenced = abuf->written;
6747 in_usereg = FLD (in_rm);
6748 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6752 unsigned long long insn_referenced = abuf->written;
6753 cycles += model_u_mulsw_after (current_cpu, idesc, 2, referenced);
6757 unsigned long long insn_referenced = abuf->written;
6758 cycles += model_u_multiply_after (current_cpu, idesc, 3, referenced);
6765 sh2e_sh2e_model::model_neg_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6767 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6768 const sh2e_scache* abuf = sem;
6769 const sh2e_idesc* idesc = abuf->idesc;
6773 in_usereg = FLD (in_rm);
6774 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6777 cycles += model_u_exec_before (current_cpu, idesc, 1);
6784 sh2e_sh2e_model::model_neg_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6786 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6787 const sh2e_scache* abuf = sem;
6788 const sh2e_idesc* idesc = abuf->idesc;
6792 unsigned long long insn_referenced = abuf->written;
6794 in_usereg = FLD (in_rm);
6795 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6799 unsigned long long insn_referenced = abuf->written;
6800 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6807 sh2e_sh2e_model::model_negc_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6809 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6810 const sh2e_scache* abuf = sem;
6811 const sh2e_idesc* idesc = abuf->idesc;
6815 in_usereg = FLD (in_rm);
6816 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6819 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
6822 cycles += model_u_exec_before (current_cpu, idesc, 2);
6825 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
6832 sh2e_sh2e_model::model_negc_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6834 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
6835 const sh2e_scache* abuf = sem;
6836 const sh2e_idesc* idesc = abuf->idesc;
6840 unsigned long long insn_referenced = abuf->written;
6842 in_usereg = FLD (in_rm);
6843 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6847 unsigned long long insn_referenced = abuf->written;
6848 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
6852 unsigned long long insn_referenced = abuf->written;
6853 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6857 unsigned long long insn_referenced = abuf->written;
6858 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
6865 sh2e_sh2e_model::model_nop_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6867 #define FLD(f) abuf->fields.fmt_empty.f
6868 const sh2e_scache* abuf = sem;
6869 const sh2e_idesc* idesc = abuf->idesc;
6872 cycles += model_u_exec_before (current_cpu, idesc, 0);
6879 sh2e_sh2e_model::model_nop_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6881 #define FLD(f) abuf->fields.fmt_empty.f
6882 const sh2e_scache* abuf = sem;
6883 const sh2e_idesc* idesc = abuf->idesc;
6887 unsigned long long insn_referenced = abuf->written;
6888 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6895 sh2e_sh2e_model::model_not_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6897 #define FLD(f) abuf->fields.sfmt_and_compact.f
6898 const sh2e_scache* abuf = sem;
6899 const sh2e_idesc* idesc = abuf->idesc;
6903 in_usereg = FLD (in_rm64);
6904 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6907 cycles += model_u_exec_before (current_cpu, idesc, 1);
6914 sh2e_sh2e_model::model_not_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6916 #define FLD(f) abuf->fields.sfmt_and_compact.f
6917 const sh2e_scache* abuf = sem;
6918 const sh2e_idesc* idesc = abuf->idesc;
6922 unsigned long long insn_referenced = abuf->written;
6924 in_usereg = FLD (in_rm64);
6925 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6929 unsigned long long insn_referenced = abuf->written;
6930 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6937 sh2e_sh2e_model::model_or_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6939 #define FLD(f) abuf->fields.sfmt_and_compact.f
6940 const sh2e_scache* abuf = sem;
6941 const sh2e_idesc* idesc = abuf->idesc;
6945 in_usereg = FLD (in_rm64);
6946 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6950 in_usereg = FLD (in_rn64);
6951 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6954 cycles += model_u_exec_before (current_cpu, idesc, 2);
6961 sh2e_sh2e_model::model_or_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
6963 #define FLD(f) abuf->fields.sfmt_and_compact.f
6964 const sh2e_scache* abuf = sem;
6965 const sh2e_idesc* idesc = abuf->idesc;
6969 unsigned long long insn_referenced = abuf->written;
6971 in_usereg = FLD (in_rm64);
6972 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6976 unsigned long long insn_referenced = abuf->written;
6978 in_usereg = FLD (in_rn64);
6979 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6983 unsigned long long insn_referenced = abuf->written;
6984 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6991 sh2e_sh2e_model::model_ori_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
6993 #define FLD(f) abuf->fields.sfmt_andi_compact.f
6994 const sh2e_scache* abuf = sem;
6995 const sh2e_idesc* idesc = abuf->idesc;
6999 in_usereg = FLD (in_r0);
7000 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7003 cycles += model_u_exec_before (current_cpu, idesc, 1);
7010 sh2e_sh2e_model::model_ori_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7012 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7013 const sh2e_scache* abuf = sem;
7014 const sh2e_idesc* idesc = abuf->idesc;
7018 unsigned long long insn_referenced = abuf->written;
7020 in_usereg = FLD (in_r0);
7021 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7025 unsigned long long insn_referenced = abuf->written;
7026 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7033 sh2e_sh2e_model::model_orb_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7035 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7036 const sh2e_scache* abuf = sem;
7037 const sh2e_idesc* idesc = abuf->idesc;
7041 in_usereg = FLD (in_r0);
7042 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7045 cycles += model_u_logic_b_before (current_cpu, idesc, 1);
7048 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
7055 sh2e_sh2e_model::model_orb_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7057 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7058 const sh2e_scache* abuf = sem;
7059 const sh2e_idesc* idesc = abuf->idesc;
7063 unsigned long long insn_referenced = abuf->written;
7065 in_usereg = FLD (in_r0);
7066 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7070 unsigned long long insn_referenced = abuf->written;
7071 cycles += model_u_logic_b_after (current_cpu, idesc, 1, referenced);
7075 unsigned long long insn_referenced = abuf->written;
7076 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
7083 sh2e_sh2e_model::model_rotcl_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7085 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7086 const sh2e_scache* abuf = sem;
7087 const sh2e_idesc* idesc = abuf->idesc;
7091 in_usereg = FLD (in_rn);
7092 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7095 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7098 cycles += model_u_exec_before (current_cpu, idesc, 2);
7101 cycles += model_u_shift_before (current_cpu, idesc, 3);
7104 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7111 sh2e_sh2e_model::model_rotcl_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7113 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7114 const sh2e_scache* abuf = sem;
7115 const sh2e_idesc* idesc = abuf->idesc;
7119 unsigned long long insn_referenced = abuf->written;
7121 in_usereg = FLD (in_rn);
7122 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7126 unsigned long long insn_referenced = abuf->written;
7127 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7131 unsigned long long insn_referenced = abuf->written;
7132 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7136 unsigned long long insn_referenced = abuf->written;
7137 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7141 unsigned long long insn_referenced = abuf->written;
7142 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7149 sh2e_sh2e_model::model_rotcr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7151 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7152 const sh2e_scache* abuf = sem;
7153 const sh2e_idesc* idesc = abuf->idesc;
7157 in_usereg = FLD (in_rn);
7158 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7161 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7164 cycles += model_u_exec_before (current_cpu, idesc, 2);
7167 cycles += model_u_shift_before (current_cpu, idesc, 3);
7170 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7177 sh2e_sh2e_model::model_rotcr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7179 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7180 const sh2e_scache* abuf = sem;
7181 const sh2e_idesc* idesc = abuf->idesc;
7185 unsigned long long insn_referenced = abuf->written;
7187 in_usereg = FLD (in_rn);
7188 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7192 unsigned long long insn_referenced = abuf->written;
7193 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7197 unsigned long long insn_referenced = abuf->written;
7198 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7202 unsigned long long insn_referenced = abuf->written;
7203 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7207 unsigned long long insn_referenced = abuf->written;
7208 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7215 sh2e_sh2e_model::model_rotl_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7217 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7218 const sh2e_scache* abuf = sem;
7219 const sh2e_idesc* idesc = abuf->idesc;
7223 in_usereg = FLD (in_rn);
7224 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7227 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7230 cycles += model_u_exec_before (current_cpu, idesc, 2);
7233 cycles += model_u_shift_before (current_cpu, idesc, 3);
7236 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7243 sh2e_sh2e_model::model_rotl_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7245 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7246 const sh2e_scache* abuf = sem;
7247 const sh2e_idesc* idesc = abuf->idesc;
7251 unsigned long long insn_referenced = abuf->written;
7253 in_usereg = FLD (in_rn);
7254 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7258 unsigned long long insn_referenced = abuf->written;
7259 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7263 unsigned long long insn_referenced = abuf->written;
7264 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7268 unsigned long long insn_referenced = abuf->written;
7269 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7273 unsigned long long insn_referenced = abuf->written;
7274 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7281 sh2e_sh2e_model::model_rotr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7283 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7284 const sh2e_scache* abuf = sem;
7285 const sh2e_idesc* idesc = abuf->idesc;
7289 in_usereg = FLD (in_rn);
7290 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7293 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7296 cycles += model_u_exec_before (current_cpu, idesc, 2);
7299 cycles += model_u_shift_before (current_cpu, idesc, 3);
7302 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7309 sh2e_sh2e_model::model_rotr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7311 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7312 const sh2e_scache* abuf = sem;
7313 const sh2e_idesc* idesc = abuf->idesc;
7317 unsigned long long insn_referenced = abuf->written;
7319 in_usereg = FLD (in_rn);
7320 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7324 unsigned long long insn_referenced = abuf->written;
7325 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7329 unsigned long long insn_referenced = abuf->written;
7330 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7334 unsigned long long insn_referenced = abuf->written;
7335 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7339 unsigned long long insn_referenced = abuf->written;
7340 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7347 sh2e_sh2e_model::model_rts_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7349 #define FLD(f) abuf->fields.fmt_empty.f
7350 const sh2e_scache* abuf = sem;
7351 const sh2e_idesc* idesc = abuf->idesc;
7354 cycles += model_u_jmp_before (current_cpu, idesc, 0);
7361 sh2e_sh2e_model::model_rts_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7363 #define FLD(f) abuf->fields.fmt_empty.f
7364 const sh2e_scache* abuf = sem;
7365 const sh2e_idesc* idesc = abuf->idesc;
7369 unsigned long long insn_referenced = abuf->written;
7370 referenced |= 1 << 0;
7371 cycles += model_u_jmp_after (current_cpu, idesc, 0, referenced);
7378 sh2e_sh2e_model::model_sett_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7380 #define FLD(f) abuf->fields.fmt_empty.f
7381 const sh2e_scache* abuf = sem;
7382 const sh2e_idesc* idesc = abuf->idesc;
7385 cycles += model_u_exec_before (current_cpu, idesc, 0);
7388 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7391 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 2);
7398 sh2e_sh2e_model::model_sett_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7400 #define FLD(f) abuf->fields.fmt_empty.f
7401 const sh2e_scache* abuf = sem;
7402 const sh2e_idesc* idesc = abuf->idesc;
7406 unsigned long long insn_referenced = abuf->written;
7407 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
7411 unsigned long long insn_referenced = abuf->written;
7412 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7416 unsigned long long insn_referenced = abuf->written;
7417 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 2, referenced);
7424 sh2e_sh2e_model::model_shal_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7426 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7427 const sh2e_scache* abuf = sem;
7428 const sh2e_idesc* idesc = abuf->idesc;
7432 in_usereg = FLD (in_rn);
7433 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7436 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7439 cycles += model_u_exec_before (current_cpu, idesc, 2);
7442 cycles += model_u_shift_before (current_cpu, idesc, 3);
7445 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7452 sh2e_sh2e_model::model_shal_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7454 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7455 const sh2e_scache* abuf = sem;
7456 const sh2e_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;
7468 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7472 unsigned long long insn_referenced = abuf->written;
7473 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7477 unsigned long long insn_referenced = abuf->written;
7478 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7482 unsigned long long insn_referenced = abuf->written;
7483 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7490 sh2e_sh2e_model::model_shar_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7492 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7493 const sh2e_scache* abuf = sem;
7494 const sh2e_idesc* idesc = abuf->idesc;
7498 in_usereg = FLD (in_rn);
7499 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7502 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7505 cycles += model_u_exec_before (current_cpu, idesc, 2);
7508 cycles += model_u_shift_before (current_cpu, idesc, 3);
7511 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7518 sh2e_sh2e_model::model_shar_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7520 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7521 const sh2e_scache* abuf = sem;
7522 const sh2e_idesc* idesc = abuf->idesc;
7526 unsigned long long insn_referenced = abuf->written;
7528 in_usereg = FLD (in_rn);
7529 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7533 unsigned long long insn_referenced = abuf->written;
7534 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7538 unsigned long long insn_referenced = abuf->written;
7539 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7543 unsigned long long insn_referenced = abuf->written;
7544 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7548 unsigned long long insn_referenced = abuf->written;
7549 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7556 sh2e_sh2e_model::model_shll_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7558 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7559 const sh2e_scache* abuf = sem;
7560 const sh2e_idesc* idesc = abuf->idesc;
7564 in_usereg = FLD (in_rn);
7565 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7568 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7571 cycles += model_u_exec_before (current_cpu, idesc, 2);
7574 cycles += model_u_shift_before (current_cpu, idesc, 3);
7577 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7584 sh2e_sh2e_model::model_shll_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7586 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7587 const sh2e_scache* abuf = sem;
7588 const sh2e_idesc* idesc = abuf->idesc;
7592 unsigned long long insn_referenced = abuf->written;
7594 in_usereg = FLD (in_rn);
7595 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7599 unsigned long long insn_referenced = abuf->written;
7600 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7604 unsigned long long insn_referenced = abuf->written;
7605 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7609 unsigned long long insn_referenced = abuf->written;
7610 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7614 unsigned long long insn_referenced = abuf->written;
7615 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7622 sh2e_sh2e_model::model_shll2_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7624 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7625 const sh2e_scache* abuf = sem;
7626 const sh2e_idesc* idesc = abuf->idesc;
7630 in_usereg = FLD (in_rn);
7631 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7634 cycles += model_u_exec_before (current_cpu, idesc, 1);
7637 cycles += model_u_shift_before (current_cpu, idesc, 2);
7644 sh2e_sh2e_model::model_shll2_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7646 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7647 const sh2e_scache* abuf = sem;
7648 const sh2e_idesc* idesc = abuf->idesc;
7652 unsigned long long insn_referenced = abuf->written;
7654 in_usereg = FLD (in_rn);
7655 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7659 unsigned long long insn_referenced = abuf->written;
7660 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7664 unsigned long long insn_referenced = abuf->written;
7665 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
7672 sh2e_sh2e_model::model_shll8_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7674 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7675 const sh2e_scache* abuf = sem;
7676 const sh2e_idesc* idesc = abuf->idesc;
7680 in_usereg = FLD (in_rn);
7681 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7684 cycles += model_u_exec_before (current_cpu, idesc, 1);
7687 cycles += model_u_shift_before (current_cpu, idesc, 2);
7694 sh2e_sh2e_model::model_shll8_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7696 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7697 const sh2e_scache* abuf = sem;
7698 const sh2e_idesc* idesc = abuf->idesc;
7702 unsigned long long insn_referenced = abuf->written;
7704 in_usereg = FLD (in_rn);
7705 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7709 unsigned long long insn_referenced = abuf->written;
7710 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7714 unsigned long long insn_referenced = abuf->written;
7715 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
7722 sh2e_sh2e_model::model_shll16_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7724 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7725 const sh2e_scache* abuf = sem;
7726 const sh2e_idesc* idesc = abuf->idesc;
7730 in_usereg = FLD (in_rn);
7731 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7734 cycles += model_u_exec_before (current_cpu, idesc, 1);
7737 cycles += model_u_shift_before (current_cpu, idesc, 2);
7744 sh2e_sh2e_model::model_shll16_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7746 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7747 const sh2e_scache* abuf = sem;
7748 const sh2e_idesc* idesc = abuf->idesc;
7752 unsigned long long insn_referenced = abuf->written;
7754 in_usereg = FLD (in_rn);
7755 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7759 unsigned long long insn_referenced = abuf->written;
7760 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7764 unsigned long long insn_referenced = abuf->written;
7765 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
7772 sh2e_sh2e_model::model_shlr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7774 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7775 const sh2e_scache* abuf = sem;
7776 const sh2e_idesc* idesc = abuf->idesc;
7780 in_usereg = FLD (in_rn);
7781 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7784 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7787 cycles += model_u_exec_before (current_cpu, idesc, 2);
7790 cycles += model_u_shift_before (current_cpu, idesc, 3);
7793 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7800 sh2e_sh2e_model::model_shlr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7802 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7803 const sh2e_scache* abuf = sem;
7804 const sh2e_idesc* idesc = abuf->idesc;
7808 unsigned long long insn_referenced = abuf->written;
7810 in_usereg = FLD (in_rn);
7811 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7815 unsigned long long insn_referenced = abuf->written;
7816 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7820 unsigned long long insn_referenced = abuf->written;
7821 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7825 unsigned long long insn_referenced = abuf->written;
7826 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
7830 unsigned long long insn_referenced = abuf->written;
7831 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7838 sh2e_sh2e_model::model_shlr2_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7840 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7841 const sh2e_scache* abuf = sem;
7842 const sh2e_idesc* idesc = abuf->idesc;
7846 in_usereg = FLD (in_rn);
7847 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7850 cycles += model_u_exec_before (current_cpu, idesc, 1);
7853 cycles += model_u_shift_before (current_cpu, idesc, 2);
7860 sh2e_sh2e_model::model_shlr2_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7862 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7863 const sh2e_scache* abuf = sem;
7864 const sh2e_idesc* idesc = abuf->idesc;
7868 unsigned long long insn_referenced = abuf->written;
7870 in_usereg = FLD (in_rn);
7871 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7875 unsigned long long insn_referenced = abuf->written;
7876 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7880 unsigned long long insn_referenced = abuf->written;
7881 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
7888 sh2e_sh2e_model::model_shlr8_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7890 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7891 const sh2e_scache* abuf = sem;
7892 const sh2e_idesc* idesc = abuf->idesc;
7896 in_usereg = FLD (in_rn);
7897 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7900 cycles += model_u_exec_before (current_cpu, idesc, 1);
7903 cycles += model_u_shift_before (current_cpu, idesc, 2);
7910 sh2e_sh2e_model::model_shlr8_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7912 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7913 const sh2e_scache* abuf = sem;
7914 const sh2e_idesc* idesc = abuf->idesc;
7918 unsigned long long insn_referenced = abuf->written;
7920 in_usereg = FLD (in_rn);
7921 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7925 unsigned long long insn_referenced = abuf->written;
7926 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7930 unsigned long long insn_referenced = abuf->written;
7931 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
7938 sh2e_sh2e_model::model_shlr16_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7940 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7941 const sh2e_scache* abuf = sem;
7942 const sh2e_idesc* idesc = abuf->idesc;
7946 in_usereg = FLD (in_rn);
7947 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7950 cycles += model_u_exec_before (current_cpu, idesc, 1);
7953 cycles += model_u_shift_before (current_cpu, idesc, 2);
7960 sh2e_sh2e_model::model_shlr16_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
7962 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
7963 const sh2e_scache* abuf = sem;
7964 const sh2e_idesc* idesc = abuf->idesc;
7968 unsigned long long insn_referenced = abuf->written;
7970 in_usereg = FLD (in_rn);
7971 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7975 unsigned long long insn_referenced = abuf->written;
7976 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7980 unsigned long long insn_referenced = abuf->written;
7981 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
7988 sh2e_sh2e_model::model_stc_gbr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
7990 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7991 const sh2e_scache* abuf = sem;
7992 const sh2e_idesc* idesc = abuf->idesc;
7995 cycles += model_u_exec_before (current_cpu, idesc, 0);
8002 sh2e_sh2e_model::model_stc_gbr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8004 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8005 const sh2e_scache* abuf = sem;
8006 const sh2e_idesc* idesc = abuf->idesc;
8010 unsigned long long insn_referenced = abuf->written;
8011 cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
8018 sh2e_sh2e_model::model_stc_vbr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8020 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8021 const sh2e_scache* abuf = sem;
8022 const sh2e_idesc* idesc = abuf->idesc;
8025 cycles += model_u_stc_vbr_before (current_cpu, idesc, 0);
8032 sh2e_sh2e_model::model_stc_vbr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8034 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8035 const sh2e_scache* abuf = sem;
8036 const sh2e_idesc* idesc = abuf->idesc;
8040 unsigned long long insn_referenced = abuf->written;
8041 cycles += model_u_stc_vbr_after (current_cpu, idesc, 0, referenced);
8048 sh2e_sh2e_model::model_stcl_gbr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8050 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8051 const sh2e_scache* abuf = sem;
8052 const sh2e_idesc* idesc = abuf->idesc;
8056 in_usereg = FLD (in_rn);
8057 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8060 cycles += model_u_ldcl_before (current_cpu, idesc, 1);
8063 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
8070 sh2e_sh2e_model::model_stcl_gbr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8072 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8073 const sh2e_scache* abuf = sem;
8074 const sh2e_idesc* idesc = abuf->idesc;
8078 unsigned long long insn_referenced = abuf->written;
8080 in_usereg = FLD (in_rn);
8081 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8085 unsigned long long insn_referenced = abuf->written;
8086 cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
8090 unsigned long long insn_referenced = abuf->written;
8091 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
8098 sh2e_sh2e_model::model_stcl_vbr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8100 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8101 const sh2e_scache* abuf = sem;
8102 const sh2e_idesc* idesc = abuf->idesc;
8106 in_usereg = FLD (in_rn);
8107 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8110 cycles += model_u_ldcl_before (current_cpu, idesc, 1);
8113 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
8120 sh2e_sh2e_model::model_stcl_vbr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8122 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8123 const sh2e_scache* abuf = sem;
8124 const sh2e_idesc* idesc = abuf->idesc;
8128 unsigned long long insn_referenced = abuf->written;
8130 in_usereg = FLD (in_rn);
8131 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8135 unsigned long long insn_referenced = abuf->written;
8136 cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
8140 unsigned long long insn_referenced = abuf->written;
8141 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
8148 sh2e_sh2e_model::model_sts_fpscr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8150 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8151 const sh2e_scache* abuf = sem;
8152 const sh2e_idesc* idesc = abuf->idesc;
8155 cycles += model_u_use_fpscr_before (current_cpu, idesc, 0);
8158 cycles += model_u_exec_before (current_cpu, idesc, 1);
8161 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
8164 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
8167 INT out_loadreg = -1;
8168 out_loadreg = FLD (out_rn);
8169 cycles += model_u_fpu_load_gr_before (current_cpu, idesc, 4, out_loadreg);
8176 sh2e_sh2e_model::model_sts_fpscr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8178 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8179 const sh2e_scache* abuf = sem;
8180 const sh2e_idesc* idesc = abuf->idesc;
8184 unsigned long long insn_referenced = abuf->written;
8185 cycles += model_u_use_fpscr_after (current_cpu, idesc, 0, referenced);
8189 unsigned long long insn_referenced = abuf->written;
8190 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8194 unsigned long long insn_referenced = abuf->written;
8195 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
8199 unsigned long long insn_referenced = abuf->written;
8200 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
8204 unsigned long long insn_referenced = abuf->written;
8205 INT out_loadreg = -1;
8206 out_loadreg = FLD (out_rn);
8207 cycles += model_u_fpu_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
8214 sh2e_sh2e_model::model_stsl_fpscr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8216 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8217 const sh2e_scache* abuf = sem;
8218 const sh2e_idesc* idesc = abuf->idesc;
8222 in_usereg = FLD (in_rn);
8223 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8226 cycles += model_u_use_fpscr_before (current_cpu, idesc, 1);
8229 cycles += model_u_exec_before (current_cpu, idesc, 2);
8232 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
8235 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
8242 sh2e_sh2e_model::model_stsl_fpscr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8244 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8245 const sh2e_scache* abuf = sem;
8246 const sh2e_idesc* idesc = abuf->idesc;
8250 unsigned long long insn_referenced = abuf->written;
8252 in_usereg = FLD (in_rn);
8253 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8257 unsigned long long insn_referenced = abuf->written;
8258 cycles += model_u_use_fpscr_after (current_cpu, idesc, 1, referenced);
8262 unsigned long long insn_referenced = abuf->written;
8263 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8267 unsigned long long insn_referenced = abuf->written;
8268 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
8272 unsigned long long insn_referenced = abuf->written;
8273 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
8280 sh2e_sh2e_model::model_sts_fpul_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8282 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8283 const sh2e_scache* abuf = sem;
8284 const sh2e_idesc* idesc = abuf->idesc;
8287 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
8290 cycles += model_u_exec_before (current_cpu, idesc, 1);
8293 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 2);
8296 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 3);
8299 INT out_loadreg = -1;
8300 out_loadreg = FLD (out_rn);
8301 cycles += model_u_fpu_load_gr_before (current_cpu, idesc, 4, out_loadreg);
8308 sh2e_sh2e_model::model_sts_fpul_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8310 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8311 const sh2e_scache* abuf = sem;
8312 const sh2e_idesc* idesc = abuf->idesc;
8316 unsigned long long insn_referenced = abuf->written;
8317 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
8321 unsigned long long insn_referenced = abuf->written;
8322 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8326 unsigned long long insn_referenced = abuf->written;
8327 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 2, referenced);
8331 unsigned long long insn_referenced = abuf->written;
8332 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 3, referenced);
8336 unsigned long long insn_referenced = abuf->written;
8337 INT out_loadreg = -1;
8338 out_loadreg = FLD (out_rn);
8339 cycles += model_u_fpu_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
8346 sh2e_sh2e_model::model_stsl_fpul_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8348 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8349 const sh2e_scache* abuf = sem;
8350 const sh2e_idesc* idesc = abuf->idesc;
8353 cycles += model_u_use_fpul_before (current_cpu, idesc, 0);
8357 in_usereg = FLD (in_rn);
8358 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
8361 cycles += model_u_exec_before (current_cpu, idesc, 2);
8364 cycles += model_u_maybe_fpu_before (current_cpu, idesc, 3);
8367 cycles += model_u_fpu_memory_access_before (current_cpu, idesc, 4);
8374 sh2e_sh2e_model::model_stsl_fpul_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8376 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8377 const sh2e_scache* abuf = sem;
8378 const sh2e_idesc* idesc = abuf->idesc;
8382 unsigned long long insn_referenced = abuf->written;
8383 cycles += model_u_use_fpul_after (current_cpu, idesc, 0, referenced);
8387 unsigned long long insn_referenced = abuf->written;
8389 in_usereg = FLD (in_rn);
8390 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
8394 unsigned long long insn_referenced = abuf->written;
8395 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8399 unsigned long long insn_referenced = abuf->written;
8400 cycles += model_u_maybe_fpu_after (current_cpu, idesc, 3, referenced);
8404 unsigned long long insn_referenced = abuf->written;
8405 cycles += model_u_fpu_memory_access_after (current_cpu, idesc, 4, referenced);
8412 sh2e_sh2e_model::model_sts_mach_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8414 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8415 const sh2e_scache* abuf = sem;
8416 const sh2e_idesc* idesc = abuf->idesc;
8419 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 0);
8422 cycles += model_u_write_back_before (current_cpu, idesc, 1);
8425 cycles += model_u_exec_before (current_cpu, idesc, 2);
8428 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
8435 sh2e_sh2e_model::model_sts_mach_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8437 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8438 const sh2e_scache* abuf = sem;
8439 const sh2e_idesc* idesc = abuf->idesc;
8443 unsigned long long insn_referenced = abuf->written;
8444 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 0, referenced);
8448 unsigned long long insn_referenced = abuf->written;
8449 cycles += model_u_write_back_after (current_cpu, idesc, 1, referenced);
8453 unsigned long long insn_referenced = abuf->written;
8454 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8458 unsigned long long insn_referenced = abuf->written;
8459 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
8466 sh2e_sh2e_model::model_stsl_mach_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8468 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8469 const sh2e_scache* abuf = sem;
8470 const sh2e_idesc* idesc = abuf->idesc;
8474 in_usereg = FLD (in_rn);
8475 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8478 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
8481 cycles += model_u_write_back_before (current_cpu, idesc, 2);
8484 cycles += model_u_exec_before (current_cpu, idesc, 3);
8487 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
8494 sh2e_sh2e_model::model_stsl_mach_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8496 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8497 const sh2e_scache* abuf = sem;
8498 const sh2e_idesc* idesc = abuf->idesc;
8502 unsigned long long insn_referenced = abuf->written;
8504 in_usereg = FLD (in_rn);
8505 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8509 unsigned long long insn_referenced = abuf->written;
8510 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
8514 unsigned long long insn_referenced = abuf->written;
8515 cycles += model_u_write_back_after (current_cpu, idesc, 2, referenced);
8519 unsigned long long insn_referenced = abuf->written;
8520 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
8524 unsigned long long insn_referenced = abuf->written;
8525 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
8532 sh2e_sh2e_model::model_sts_macl_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8534 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8535 const sh2e_scache* abuf = sem;
8536 const sh2e_idesc* idesc = abuf->idesc;
8539 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 0);
8542 cycles += model_u_write_back_before (current_cpu, idesc, 1);
8545 cycles += model_u_exec_before (current_cpu, idesc, 2);
8548 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
8555 sh2e_sh2e_model::model_sts_macl_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8557 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8558 const sh2e_scache* abuf = sem;
8559 const sh2e_idesc* idesc = abuf->idesc;
8563 unsigned long long insn_referenced = abuf->written;
8564 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 0, referenced);
8568 unsigned long long insn_referenced = abuf->written;
8569 cycles += model_u_write_back_after (current_cpu, idesc, 1, referenced);
8573 unsigned long long insn_referenced = abuf->written;
8574 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8578 unsigned long long insn_referenced = abuf->written;
8579 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
8586 sh2e_sh2e_model::model_stsl_macl_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8588 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8589 const sh2e_scache* abuf = sem;
8590 const sh2e_idesc* idesc = abuf->idesc;
8594 in_usereg = FLD (in_rn);
8595 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8598 cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
8601 cycles += model_u_write_back_before (current_cpu, idesc, 2);
8604 cycles += model_u_exec_before (current_cpu, idesc, 3);
8607 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
8614 sh2e_sh2e_model::model_stsl_macl_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8616 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8617 const sh2e_scache* abuf = sem;
8618 const sh2e_idesc* idesc = abuf->idesc;
8622 unsigned long long insn_referenced = abuf->written;
8624 in_usereg = FLD (in_rn);
8625 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8629 unsigned long long insn_referenced = abuf->written;
8630 cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
8634 unsigned long long insn_referenced = abuf->written;
8635 cycles += model_u_write_back_after (current_cpu, idesc, 2, referenced);
8639 unsigned long long insn_referenced = abuf->written;
8640 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
8644 unsigned long long insn_referenced = abuf->written;
8645 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
8652 sh2e_sh2e_model::model_sts_pr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8654 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8655 const sh2e_scache* abuf = sem;
8656 const sh2e_idesc* idesc = abuf->idesc;
8659 cycles += model_u_use_pr_before (current_cpu, idesc, 0);
8662 cycles += model_u_sts_pr_before (current_cpu, idesc, 1);
8669 sh2e_sh2e_model::model_sts_pr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8671 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
8672 const sh2e_scache* abuf = sem;
8673 const sh2e_idesc* idesc = abuf->idesc;
8677 unsigned long long insn_referenced = abuf->written;
8678 cycles += model_u_use_pr_after (current_cpu, idesc, 0, referenced);
8682 unsigned long long insn_referenced = abuf->written;
8683 cycles += model_u_sts_pr_after (current_cpu, idesc, 1, referenced);
8690 sh2e_sh2e_model::model_stsl_pr_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8692 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8693 const sh2e_scache* abuf = sem;
8694 const sh2e_idesc* idesc = abuf->idesc;
8698 in_usereg = FLD (in_rn);
8699 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8702 cycles += model_u_use_pr_before (current_cpu, idesc, 1);
8705 cycles += model_u_sts_pr_before (current_cpu, idesc, 2);
8708 cycles += model_u_memory_access_before (current_cpu, idesc, 3);
8715 sh2e_sh2e_model::model_stsl_pr_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8717 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
8718 const sh2e_scache* abuf = sem;
8719 const sh2e_idesc* idesc = abuf->idesc;
8723 unsigned long long insn_referenced = abuf->written;
8725 in_usereg = FLD (in_rn);
8726 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8730 unsigned long long insn_referenced = abuf->written;
8731 cycles += model_u_use_pr_after (current_cpu, idesc, 1, referenced);
8735 unsigned long long insn_referenced = abuf->written;
8736 cycles += model_u_sts_pr_after (current_cpu, idesc, 2, referenced);
8740 unsigned long long insn_referenced = abuf->written;
8741 cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
8748 sh2e_sh2e_model::model_sub_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8750 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8751 const sh2e_scache* abuf = sem;
8752 const sh2e_idesc* idesc = abuf->idesc;
8756 in_usereg = FLD (in_rn);
8757 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8761 in_usereg = FLD (in_rm);
8762 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
8765 cycles += model_u_exec_before (current_cpu, idesc, 2);
8772 sh2e_sh2e_model::model_sub_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8774 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8775 const sh2e_scache* abuf = sem;
8776 const sh2e_idesc* idesc = abuf->idesc;
8780 unsigned long long insn_referenced = abuf->written;
8782 in_usereg = FLD (in_rn);
8783 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8787 unsigned long long insn_referenced = abuf->written;
8789 in_usereg = FLD (in_rm);
8790 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
8794 unsigned long long insn_referenced = abuf->written;
8795 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8802 sh2e_sh2e_model::model_subc_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8804 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8805 const sh2e_scache* abuf = sem;
8806 const sh2e_idesc* idesc = abuf->idesc;
8810 in_usereg = FLD (in_rn);
8811 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8815 in_usereg = FLD (in_rm);
8816 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
8819 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
8822 cycles += model_u_exec_before (current_cpu, idesc, 3);
8829 sh2e_sh2e_model::model_subc_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8831 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8832 const sh2e_scache* abuf = sem;
8833 const sh2e_idesc* idesc = abuf->idesc;
8837 unsigned long long insn_referenced = abuf->written;
8839 in_usereg = FLD (in_rn);
8840 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8844 unsigned long long insn_referenced = abuf->written;
8846 in_usereg = FLD (in_rm);
8847 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
8851 unsigned long long insn_referenced = abuf->written;
8852 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
8856 unsigned long long insn_referenced = abuf->written;
8857 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
8864 sh2e_sh2e_model::model_subv_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8866 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8867 const sh2e_scache* abuf = sem;
8868 const sh2e_idesc* idesc = abuf->idesc;
8872 in_usereg = FLD (in_rn);
8873 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8877 in_usereg = FLD (in_rm);
8878 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
8881 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
8884 cycles += model_u_exec_before (current_cpu, idesc, 3);
8887 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
8894 sh2e_sh2e_model::model_subv_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8896 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8897 const sh2e_scache* abuf = sem;
8898 const sh2e_idesc* idesc = abuf->idesc;
8902 unsigned long long insn_referenced = abuf->written;
8904 in_usereg = FLD (in_rn);
8905 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8909 unsigned long long insn_referenced = abuf->written;
8911 in_usereg = FLD (in_rm);
8912 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
8916 unsigned long long insn_referenced = abuf->written;
8917 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
8921 unsigned long long insn_referenced = abuf->written;
8922 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
8926 unsigned long long insn_referenced = abuf->written;
8927 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
8934 sh2e_sh2e_model::model_swapb_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8936 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
8937 const sh2e_scache* abuf = sem;
8938 const sh2e_idesc* idesc = abuf->idesc;
8942 in_usereg = FLD (in_rm);
8943 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8946 cycles += model_u_exec_before (current_cpu, idesc, 1);
8949 cycles += model_u_shift_before (current_cpu, idesc, 2);
8956 sh2e_sh2e_model::model_swapb_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
8958 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
8959 const sh2e_scache* abuf = sem;
8960 const sh2e_idesc* idesc = abuf->idesc;
8964 unsigned long long insn_referenced = abuf->written;
8966 in_usereg = FLD (in_rm);
8967 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8971 unsigned long long insn_referenced = abuf->written;
8972 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8976 unsigned long long insn_referenced = abuf->written;
8977 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
8984 sh2e_sh2e_model::model_swapw_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
8986 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
8987 const sh2e_scache* abuf = sem;
8988 const sh2e_idesc* idesc = abuf->idesc;
8992 in_usereg = FLD (in_rm);
8993 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8996 cycles += model_u_exec_before (current_cpu, idesc, 1);
8999 cycles += model_u_shift_before (current_cpu, idesc, 2);
9006 sh2e_sh2e_model::model_swapw_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
9008 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
9009 const sh2e_scache* abuf = sem;
9010 const sh2e_idesc* idesc = abuf->idesc;
9014 unsigned long long insn_referenced = abuf->written;
9016 in_usereg = FLD (in_rm);
9017 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9021 unsigned long long insn_referenced = abuf->written;
9022 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
9026 unsigned long long insn_referenced = abuf->written;
9027 cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
9034 sh2e_sh2e_model::model_tasb_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
9036 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9037 const sh2e_scache* abuf = sem;
9038 const sh2e_idesc* idesc = abuf->idesc;
9042 in_usereg = FLD (in_rn);
9043 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9046 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
9049 cycles += model_u_tas_before (current_cpu, idesc, 2);
9052 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
9055 cycles += model_u_memory_access_before (current_cpu, idesc, 4);
9062 sh2e_sh2e_model::model_tasb_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
9064 #define FLD(f) abuf->fields.sfmt_stsl_fpul_compact.f
9065 const sh2e_scache* abuf = sem;
9066 const sh2e_idesc* idesc = abuf->idesc;
9070 unsigned long long insn_referenced = abuf->written;
9072 in_usereg = FLD (in_rn);
9073 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9077 unsigned long long insn_referenced = abuf->written;
9078 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
9082 unsigned long long insn_referenced = abuf->written;
9083 cycles += model_u_tas_after (current_cpu, idesc, 2, referenced);
9087 unsigned long long insn_referenced = abuf->written;
9088 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
9092 unsigned long long insn_referenced = abuf->written;
9093 cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
9100 sh2e_sh2e_model::model_trapa_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
9102 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9103 const sh2e_scache* abuf = sem;
9104 const sh2e_idesc* idesc = abuf->idesc;
9107 cycles += model_u_trap_before (current_cpu, idesc, 0);
9114 sh2e_sh2e_model::model_trapa_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
9116 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9117 const sh2e_scache* abuf = sem;
9118 const sh2e_idesc* idesc = abuf->idesc;
9122 unsigned long long insn_referenced = abuf->written;
9123 cycles += model_u_trap_after (current_cpu, idesc, 0, referenced);
9130 sh2e_sh2e_model::model_tst_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
9132 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
9133 const sh2e_scache* abuf = sem;
9134 const sh2e_idesc* idesc = abuf->idesc;
9138 in_usereg = FLD (in_rn);
9139 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9143 in_usereg = FLD (in_rm);
9144 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9147 cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
9150 cycles += model_u_exec_before (current_cpu, idesc, 3);
9153 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
9160 sh2e_sh2e_model::model_tst_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
9162 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
9163 const sh2e_scache* abuf = sem;
9164 const sh2e_idesc* idesc = abuf->idesc;
9168 unsigned long long insn_referenced = abuf->written;
9170 in_usereg = FLD (in_rn);
9171 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9175 unsigned long long insn_referenced = abuf->written;
9177 in_usereg = FLD (in_rm);
9178 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9182 unsigned long long insn_referenced = abuf->written;
9183 cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
9187 unsigned long long insn_referenced = abuf->written;
9188 cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
9192 unsigned long long insn_referenced = abuf->written;
9193 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
9200 sh2e_sh2e_model::model_tsti_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
9202 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9203 const sh2e_scache* abuf = sem;
9204 const sh2e_idesc* idesc = abuf->idesc;
9208 in_usereg = FLD (in_r0);
9209 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9212 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
9215 cycles += model_u_exec_before (current_cpu, idesc, 2);
9218 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
9225 sh2e_sh2e_model::model_tsti_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
9227 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9228 const sh2e_scache* abuf = sem;
9229 const sh2e_idesc* idesc = abuf->idesc;
9233 unsigned long long insn_referenced = abuf->written;
9235 in_usereg = FLD (in_r0);
9236 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9240 unsigned long long insn_referenced = abuf->written;
9241 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
9245 unsigned long long insn_referenced = abuf->written;
9246 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9250 unsigned long long insn_referenced = abuf->written;
9251 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
9258 sh2e_sh2e_model::model_tstb_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
9260 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9261 const sh2e_scache* abuf = sem;
9262 const sh2e_idesc* idesc = abuf->idesc;
9266 in_usereg = FLD (in_r0);
9267 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9270 cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
9273 cycles += model_u_exec_before (current_cpu, idesc, 2);
9276 cycles += model_u_sx_before (current_cpu, idesc, 3);
9279 cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
9282 cycles += model_u_memory_access_before (current_cpu, idesc, 5);
9289 sh2e_sh2e_model::model_tstb_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
9291 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9292 const sh2e_scache* abuf = sem;
9293 const sh2e_idesc* idesc = abuf->idesc;
9297 unsigned long long insn_referenced = abuf->written;
9299 in_usereg = FLD (in_r0);
9300 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9304 unsigned long long insn_referenced = abuf->written;
9305 cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
9309 unsigned long long insn_referenced = abuf->written;
9310 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9314 unsigned long long insn_referenced = abuf->written;
9315 cycles += model_u_sx_after (current_cpu, idesc, 3, referenced);
9319 unsigned long long insn_referenced = abuf->written;
9320 cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
9324 unsigned long long insn_referenced = abuf->written;
9325 cycles += model_u_memory_access_after (current_cpu, idesc, 5, referenced);
9332 sh2e_sh2e_model::model_xor_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
9334 #define FLD(f) abuf->fields.sfmt_and_compact.f
9335 const sh2e_scache* abuf = sem;
9336 const sh2e_idesc* idesc = abuf->idesc;
9340 in_usereg = FLD (in_rn64);
9341 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9345 in_usereg = FLD (in_rm64);
9346 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9349 cycles += model_u_exec_before (current_cpu, idesc, 2);
9356 sh2e_sh2e_model::model_xor_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
9358 #define FLD(f) abuf->fields.sfmt_and_compact.f
9359 const sh2e_scache* abuf = sem;
9360 const sh2e_idesc* idesc = abuf->idesc;
9364 unsigned long long insn_referenced = abuf->written;
9366 in_usereg = FLD (in_rn64);
9367 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9371 unsigned long long insn_referenced = abuf->written;
9373 in_usereg = FLD (in_rm64);
9374 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9378 unsigned long long insn_referenced = abuf->written;
9379 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9386 sh2e_sh2e_model::model_xori_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
9388 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9389 const sh2e_scache* abuf = sem;
9390 const sh2e_idesc* idesc = abuf->idesc;
9394 in_usereg = FLD (in_r0);
9395 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9398 cycles += model_u_exec_before (current_cpu, idesc, 1);
9405 sh2e_sh2e_model::model_xori_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
9407 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9408 const sh2e_scache* abuf = sem;
9409 const sh2e_idesc* idesc = abuf->idesc;
9413 unsigned long long insn_referenced = abuf->written;
9415 in_usereg = FLD (in_r0);
9416 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9420 unsigned long long insn_referenced = abuf->written;
9421 cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
9428 sh2e_sh2e_model::model_xorb_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
9430 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9431 const sh2e_scache* abuf = sem;
9432 const sh2e_idesc* idesc = abuf->idesc;
9436 in_usereg = FLD (in_r0);
9437 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9440 cycles += model_u_logic_b_before (current_cpu, idesc, 1);
9443 cycles += model_u_memory_access_before (current_cpu, idesc, 2);
9450 sh2e_sh2e_model::model_xorb_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
9452 #define FLD(f) abuf->fields.sfmt_andi_compact.f
9453 const sh2e_scache* abuf = sem;
9454 const sh2e_idesc* idesc = abuf->idesc;
9458 unsigned long long insn_referenced = abuf->written;
9460 in_usereg = FLD (in_r0);
9461 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9465 unsigned long long insn_referenced = abuf->written;
9466 cycles += model_u_logic_b_after (current_cpu, idesc, 1, referenced);
9470 unsigned long long insn_referenced = abuf->written;
9471 cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
9478 sh2e_sh2e_model::model_xtrct_compact_before (sh2e_cpu *current_cpu, sh2e_scache *sem)
9480 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9481 const sh2e_scache* abuf = sem;
9482 const sh2e_idesc* idesc = abuf->idesc;
9486 in_usereg = FLD (in_rn);
9487 cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
9491 in_usereg = FLD (in_rm);
9492 cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
9495 cycles += model_u_exec_before (current_cpu, idesc, 2);
9498 cycles += model_u_shift_before (current_cpu, idesc, 3);
9505 sh2e_sh2e_model::model_xtrct_compact_after (sh2e_cpu *current_cpu, sh2e_scache *sem)
9507 #define FLD(f) abuf->fields.sfmt_macl_compact.f
9508 const sh2e_scache* abuf = sem;
9509 const sh2e_idesc* idesc = abuf->idesc;
9513 unsigned long long insn_referenced = abuf->written;
9515 in_usereg = FLD (in_rn);
9516 cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
9520 unsigned long long insn_referenced = abuf->written;
9522 in_usereg = FLD (in_rm);
9523 cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
9527 unsigned long long insn_referenced = abuf->written;
9528 cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
9532 unsigned long long insn_referenced = abuf->written;
9533 cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
9539 /* We assume UNIT_NONE == 0 because the tables don't always terminate
9542 /* Model timing data for `sh2e'. */
9544 const sh2e_sh2e_model::insn_timing sh2e_sh2e_model::timing[] = {
9545 { SH2E_INSN_X_INVALID, 0, 0, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9546 { SH2E_INSN_ADD_COMPACT, & sh2e_sh2e_model::model_add_compact_before, & sh2e_sh2e_model::model_add_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9547 { SH2E_INSN_ADDI_COMPACT, & sh2e_sh2e_model::model_addi_compact_before, & sh2e_sh2e_model::model_addi_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9548 { SH2E_INSN_ADDC_COMPACT, & sh2e_sh2e_model::model_addc_compact_before, & sh2e_sh2e_model::model_addc_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9549 { SH2E_INSN_ADDV_COMPACT, & sh2e_sh2e_model::model_addv_compact_before, & sh2e_sh2e_model::model_addv_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9550 { SH2E_INSN_AND_COMPACT, & sh2e_sh2e_model::model_and_compact_before, & sh2e_sh2e_model::model_and_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9551 { SH2E_INSN_ANDI_COMPACT, & sh2e_sh2e_model::model_andi_compact_before, & sh2e_sh2e_model::model_andi_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9552 { SH2E_INSN_ANDB_COMPACT, & sh2e_sh2e_model::model_andb_compact_before, & sh2e_sh2e_model::model_andb_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOGIC_B, 0, 3 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9553 { SH2E_INSN_BF_COMPACT, & sh2e_sh2e_model::model_bf_compact_before, & sh2e_sh2e_model::model_bf_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_BRANCH, 0, 3 } } },
9554 { SH2E_INSN_BFS_COMPACT, & sh2e_sh2e_model::model_bfs_compact_before, & sh2e_sh2e_model::model_bfs_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_BRANCH, 0, 2 } } },
9555 { SH2E_INSN_BRA_COMPACT, & sh2e_sh2e_model::model_bra_compact_before, & sh2e_sh2e_model::model_bra_compact_after, { { sh2e_sh2e_model::UNIT_U_BRANCH, 0, 2 } } },
9556 { SH2E_INSN_BRAF_COMPACT, & sh2e_sh2e_model::model_braf_compact_before, & sh2e_sh2e_model::model_braf_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_JMP, 0, 2 } } },
9557 { SH2E_INSN_BSR_COMPACT, & sh2e_sh2e_model::model_bsr_compact_before, & sh2e_sh2e_model::model_bsr_compact_after, { { sh2e_sh2e_model::UNIT_U_BRANCH, 0, 2 } } },
9558 { SH2E_INSN_BSRF_COMPACT, & sh2e_sh2e_model::model_bsrf_compact_before, & sh2e_sh2e_model::model_bsrf_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_JSR, 0, 2 } } },
9559 { SH2E_INSN_BT_COMPACT, & sh2e_sh2e_model::model_bt_compact_before, & sh2e_sh2e_model::model_bt_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_BRANCH, 0, 3 } } },
9560 { SH2E_INSN_BTS_COMPACT, & sh2e_sh2e_model::model_bts_compact_before, & sh2e_sh2e_model::model_bts_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_BRANCH, 0, 2 } } },
9561 { SH2E_INSN_CLRMAC_COMPACT, & sh2e_sh2e_model::model_clrmac_compact_before, & sh2e_sh2e_model::model_clrmac_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_MAC, 0, 0 } } },
9562 { SH2E_INSN_CLRT_COMPACT, & sh2e_sh2e_model::model_clrt_compact_before, & sh2e_sh2e_model::model_clrt_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9563 { SH2E_INSN_CMPEQ_COMPACT, & sh2e_sh2e_model::model_cmpeq_compact_before, & sh2e_sh2e_model::model_cmpeq_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9564 { SH2E_INSN_CMPEQI_COMPACT, & sh2e_sh2e_model::model_cmpeqi_compact_before, & sh2e_sh2e_model::model_cmpeqi_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9565 { SH2E_INSN_CMPGE_COMPACT, & sh2e_sh2e_model::model_cmpge_compact_before, & sh2e_sh2e_model::model_cmpge_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9566 { SH2E_INSN_CMPGT_COMPACT, & sh2e_sh2e_model::model_cmpgt_compact_before, & sh2e_sh2e_model::model_cmpgt_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9567 { SH2E_INSN_CMPHI_COMPACT, & sh2e_sh2e_model::model_cmphi_compact_before, & sh2e_sh2e_model::model_cmphi_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9568 { SH2E_INSN_CMPHS_COMPACT, & sh2e_sh2e_model::model_cmphs_compact_before, & sh2e_sh2e_model::model_cmphs_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9569 { SH2E_INSN_CMPPL_COMPACT, & sh2e_sh2e_model::model_cmppl_compact_before, & sh2e_sh2e_model::model_cmppl_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9570 { SH2E_INSN_CMPPZ_COMPACT, & sh2e_sh2e_model::model_cmppz_compact_before, & sh2e_sh2e_model::model_cmppz_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9571 { SH2E_INSN_CMPSTR_COMPACT, & sh2e_sh2e_model::model_cmpstr_compact_before, & sh2e_sh2e_model::model_cmpstr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9572 { SH2E_INSN_DIV0S_COMPACT, & sh2e_sh2e_model::model_div0s_compact_before, & sh2e_sh2e_model::model_div0s_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9573 { SH2E_INSN_DIV0U_COMPACT, & sh2e_sh2e_model::model_div0u_compact_before, & sh2e_sh2e_model::model_div0u_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9574 { SH2E_INSN_DIV1_COMPACT, & sh2e_sh2e_model::model_div1_compact_before, & sh2e_sh2e_model::model_div1_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9575 { SH2E_INSN_DMULSL_COMPACT, & sh2e_sh2e_model::model_dmulsl_compact_before, & sh2e_sh2e_model::model_dmulsl_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_DMUL, 1, 2 } } },
9576 { SH2E_INSN_DMULUL_COMPACT, & sh2e_sh2e_model::model_dmulul_compact_before, & sh2e_sh2e_model::model_dmulul_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_DMUL, 1, 2 } } },
9577 { SH2E_INSN_DT_COMPACT, & sh2e_sh2e_model::model_dt_compact_before, & sh2e_sh2e_model::model_dt_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9578 { SH2E_INSN_EXTSB_COMPACT, & sh2e_sh2e_model::model_extsb_compact_before, & sh2e_sh2e_model::model_extsb_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9579 { SH2E_INSN_EXTSW_COMPACT, & sh2e_sh2e_model::model_extsw_compact_before, & sh2e_sh2e_model::model_extsw_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9580 { SH2E_INSN_EXTUB_COMPACT, & sh2e_sh2e_model::model_extub_compact_before, & sh2e_sh2e_model::model_extub_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9581 { SH2E_INSN_EXTUW_COMPACT, & sh2e_sh2e_model::model_extuw_compact_before, & sh2e_sh2e_model::model_extuw_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9582 { SH2E_INSN_FABS_COMPACT, & sh2e_sh2e_model::model_fabs_compact_before, & sh2e_sh2e_model::model_fabs_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9583 { SH2E_INSN_FADD_COMPACT, & sh2e_sh2e_model::model_fadd_compact_before, & sh2e_sh2e_model::model_fadd_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FR, 0, 0 } } },
9584 { SH2E_INSN_FCMPEQ_COMPACT, & sh2e_sh2e_model::model_fcmpeq_compact_before, & sh2e_sh2e_model::model_fcmpeq_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_FCMP, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU, 0, 0 } } },
9585 { SH2E_INSN_FCMPGT_COMPACT, & sh2e_sh2e_model::model_fcmpgt_compact_before, & sh2e_sh2e_model::model_fcmpgt_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_FCMP, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU, 0, 0 } } },
9586 { SH2E_INSN_FDIV_COMPACT, & sh2e_sh2e_model::model_fdiv_compact_before, & sh2e_sh2e_model::model_fdiv_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_FDIV, 0, 0 } } },
9587 { SH2E_INSN_FLDS_COMPACT, & sh2e_sh2e_model::model_flds_compact_before, & sh2e_sh2e_model::model_flds_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_FLDS_FPUL, 0, 0 } } },
9588 { SH2E_INSN_FLDI0_COMPACT, & sh2e_sh2e_model::model_fldi0_compact_before, & sh2e_sh2e_model::model_fldi0_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9589 { SH2E_INSN_FLDI1_COMPACT, & sh2e_sh2e_model::model_fldi1_compact_before, & sh2e_sh2e_model::model_fldi1_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9590 { SH2E_INSN_FLOAT_COMPACT, & sh2e_sh2e_model::model_float_compact_before, & sh2e_sh2e_model::model_float_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FPUL, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FR, 0, 0 } } },
9591 { SH2E_INSN_FMAC_COMPACT, & sh2e_sh2e_model::model_fmac_compact_before, & sh2e_sh2e_model::model_fmac_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FR, 0, 0 } } },
9592 { SH2E_INSN_FMOV1_COMPACT, & sh2e_sh2e_model::model_fmov1_compact_before, & sh2e_sh2e_model::model_fmov1_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9593 { SH2E_INSN_FMOV2_COMPACT, & sh2e_sh2e_model::model_fmov2_compact_before, & sh2e_sh2e_model::model_fmov2_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_FR, 0, 0 } } },
9594 { SH2E_INSN_FMOV3_COMPACT, & sh2e_sh2e_model::model_fmov3_compact_before, & sh2e_sh2e_model::model_fmov3_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_FR, 0, 0 } } },
9595 { SH2E_INSN_FMOV4_COMPACT, & sh2e_sh2e_model::model_fmov4_compact_before, & sh2e_sh2e_model::model_fmov4_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_FR, 0, 0 } } },
9596 { SH2E_INSN_FMOV5_COMPACT, & sh2e_sh2e_model::model_fmov5_compact_before, & sh2e_sh2e_model::model_fmov5_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
9597 { SH2E_INSN_FMOV6_COMPACT, & sh2e_sh2e_model::model_fmov6_compact_before, & sh2e_sh2e_model::model_fmov6_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
9598 { SH2E_INSN_FMOV7_COMPACT, & sh2e_sh2e_model::model_fmov7_compact_before, & sh2e_sh2e_model::model_fmov7_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
9599 { SH2E_INSN_FMUL_COMPACT, & sh2e_sh2e_model::model_fmul_compact_before, & sh2e_sh2e_model::model_fmul_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FR, 0, 0 } } },
9600 { SH2E_INSN_FNEG_COMPACT, & sh2e_sh2e_model::model_fneg_compact_before, & sh2e_sh2e_model::model_fneg_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9601 { SH2E_INSN_FRCHG_COMPACT, & sh2e_sh2e_model::model_frchg_compact_before, & sh2e_sh2e_model::model_frchg_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9602 { SH2E_INSN_FSCHG_COMPACT, & sh2e_sh2e_model::model_fschg_compact_before, & sh2e_sh2e_model::model_fschg_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9603 { SH2E_INSN_FSTS_COMPACT, & sh2e_sh2e_model::model_fsts_compact_before, & sh2e_sh2e_model::model_fsts_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FPUL, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FR_0, 0, 0 } } },
9604 { SH2E_INSN_FSUB_COMPACT, & sh2e_sh2e_model::model_fsub_compact_before, & sh2e_sh2e_model::model_fsub_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FR, 0, 0 } } },
9605 { SH2E_INSN_FTRC_COMPACT, & sh2e_sh2e_model::model_ftrc_compact_before, & sh2e_sh2e_model::model_ftrc_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_FPUL, 0, 0 } } },
9606 { SH2E_INSN_JMP_COMPACT, & sh2e_sh2e_model::model_jmp_compact_before, & sh2e_sh2e_model::model_jmp_compact_after, { { sh2e_sh2e_model::UNIT_U_JMP, 0, 2 } } },
9607 { SH2E_INSN_JSR_COMPACT, & sh2e_sh2e_model::model_jsr_compact_before, & sh2e_sh2e_model::model_jsr_compact_after, { { sh2e_sh2e_model::UNIT_U_JSR, 0, 2 } } },
9608 { SH2E_INSN_LDC_GBR_COMPACT, & sh2e_sh2e_model::model_ldc_gbr_compact_before, & sh2e_sh2e_model::model_ldc_gbr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LDC_GBR, 0, 1 } } },
9609 { SH2E_INSN_LDC_VBR_COMPACT, & sh2e_sh2e_model::model_ldc_vbr_compact_before, & sh2e_sh2e_model::model_ldc_vbr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9610 { SH2E_INSN_LDC_SR_COMPACT, & sh2e_sh2e_model::model_ldc_sr_compact_before, & sh2e_sh2e_model::model_ldc_sr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LDC_SR, 0, 1 } } },
9611 { SH2E_INSN_LDCL_GBR_COMPACT, & sh2e_sh2e_model::model_ldcl_gbr_compact_before, & sh2e_sh2e_model::model_ldcl_gbr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LDCL, 0, 3 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GBR, 0, 0 } } },
9612 { SH2E_INSN_LDCL_VBR_COMPACT, & sh2e_sh2e_model::model_ldcl_vbr_compact_before, & sh2e_sh2e_model::model_ldcl_vbr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LDCL_VBR, 0, 3 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_VBR, 0, 0 } } },
9613 { SH2E_INSN_LDS_FPSCR_COMPACT, & sh2e_sh2e_model::model_lds_fpscr_compact_before, & sh2e_sh2e_model::model_lds_fpscr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LDS_FPSCR, 0, 3 } } },
9614 { SH2E_INSN_LDSL_FPSCR_COMPACT, & sh2e_sh2e_model::model_ldsl_fpscr_compact_before, & sh2e_sh2e_model::model_ldsl_fpscr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LDS_FPSCR, 0, 3 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LDSL_FPSCR, 0, 0 } } },
9615 { SH2E_INSN_LDS_FPUL_COMPACT, & sh2e_sh2e_model::model_lds_fpul_compact_before, & sh2e_sh2e_model::model_lds_fpul_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_FPUL, 0, 0 } } },
9616 { SH2E_INSN_LDSL_FPUL_COMPACT, & sh2e_sh2e_model::model_ldsl_fpul_compact_before, & sh2e_sh2e_model::model_ldsl_fpul_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_FPUL, 0, 0 } } },
9617 { SH2E_INSN_LDS_MACH_COMPACT, & sh2e_sh2e_model::model_lds_mach_compact_before, & sh2e_sh2e_model::model_lds_mach_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_MAC, 0, 0 } } },
9618 { SH2E_INSN_LDSL_MACH_COMPACT, & sh2e_sh2e_model::model_ldsl_mach_compact_before, & sh2e_sh2e_model::model_ldsl_mach_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_MAC, 0, 0 } } },
9619 { SH2E_INSN_LDS_MACL_COMPACT, & sh2e_sh2e_model::model_lds_macl_compact_before, & sh2e_sh2e_model::model_lds_macl_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_MAC, 0, 0 } } },
9620 { SH2E_INSN_LDSL_MACL_COMPACT, & sh2e_sh2e_model::model_ldsl_macl_compact_before, & sh2e_sh2e_model::model_ldsl_macl_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_MAC, 0, 0 } } },
9621 { SH2E_INSN_LDS_PR_COMPACT, & sh2e_sh2e_model::model_lds_pr_compact_before, & sh2e_sh2e_model::model_lds_pr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LDS_PR, 0, 1 } } },
9622 { SH2E_INSN_LDSL_PR_COMPACT, & sh2e_sh2e_model::model_ldsl_pr_compact_before, & sh2e_sh2e_model::model_ldsl_pr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LDS_PR, 0, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_PR, 0, 0 } } },
9623 { SH2E_INSN_MACL_COMPACT, & sh2e_sh2e_model::model_macl_compact_before, & sh2e_sh2e_model::model_macl_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_MACL, 1, 2 } } },
9624 { SH2E_INSN_MACW_COMPACT, & sh2e_sh2e_model::model_macw_compact_before, & sh2e_sh2e_model::model_macw_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_MACW, 1, 2 } } },
9625 { SH2E_INSN_MOV_COMPACT, & sh2e_sh2e_model::model_mov_compact_before, & sh2e_sh2e_model::model_mov_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9626 { SH2E_INSN_MOVI_COMPACT, & sh2e_sh2e_model::model_movi_compact_before, & sh2e_sh2e_model::model_movi_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9627 { SH2E_INSN_MOVB1_COMPACT, & sh2e_sh2e_model::model_movb1_compact_before, & sh2e_sh2e_model::model_movb1_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9628 { SH2E_INSN_MOVB2_COMPACT, & sh2e_sh2e_model::model_movb2_compact_before, & sh2e_sh2e_model::model_movb2_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9629 { SH2E_INSN_MOVB3_COMPACT, & sh2e_sh2e_model::model_movb3_compact_before, & sh2e_sh2e_model::model_movb3_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9630 { SH2E_INSN_MOVB4_COMPACT, & sh2e_sh2e_model::model_movb4_compact_before, & sh2e_sh2e_model::model_movb4_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SX, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9631 { SH2E_INSN_MOVB5_COMPACT, & sh2e_sh2e_model::model_movb5_compact_before, & sh2e_sh2e_model::model_movb5_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9632 { SH2E_INSN_MOVB6_COMPACT, & sh2e_sh2e_model::model_movb6_compact_before, & sh2e_sh2e_model::model_movb6_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9633 { SH2E_INSN_MOVB7_COMPACT, & sh2e_sh2e_model::model_movb7_compact_before, & sh2e_sh2e_model::model_movb7_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9634 { SH2E_INSN_MOVB8_COMPACT, & sh2e_sh2e_model::model_movb8_compact_before, & sh2e_sh2e_model::model_movb8_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9635 { SH2E_INSN_MOVB9_COMPACT, & sh2e_sh2e_model::model_movb9_compact_before, & sh2e_sh2e_model::model_movb9_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9636 { SH2E_INSN_MOVB10_COMPACT, & sh2e_sh2e_model::model_movb10_compact_before, & sh2e_sh2e_model::model_movb10_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9637 { SH2E_INSN_MOVL1_COMPACT, & sh2e_sh2e_model::model_movl1_compact_before, & sh2e_sh2e_model::model_movl1_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9638 { SH2E_INSN_MOVL2_COMPACT, & sh2e_sh2e_model::model_movl2_compact_before, & sh2e_sh2e_model::model_movl2_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9639 { SH2E_INSN_MOVL3_COMPACT, & sh2e_sh2e_model::model_movl3_compact_before, & sh2e_sh2e_model::model_movl3_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9640 { SH2E_INSN_MOVL4_COMPACT, & sh2e_sh2e_model::model_movl4_compact_before, & sh2e_sh2e_model::model_movl4_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SX, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9641 { SH2E_INSN_MOVL5_COMPACT, & sh2e_sh2e_model::model_movl5_compact_before, & sh2e_sh2e_model::model_movl5_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9642 { SH2E_INSN_MOVL6_COMPACT, & sh2e_sh2e_model::model_movl6_compact_before, & sh2e_sh2e_model::model_movl6_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9643 { SH2E_INSN_MOVL7_COMPACT, & sh2e_sh2e_model::model_movl7_compact_before, & sh2e_sh2e_model::model_movl7_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9644 { SH2E_INSN_MOVL8_COMPACT, & sh2e_sh2e_model::model_movl8_compact_before, & sh2e_sh2e_model::model_movl8_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9645 { SH2E_INSN_MOVL9_COMPACT, & sh2e_sh2e_model::model_movl9_compact_before, & sh2e_sh2e_model::model_movl9_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9646 { SH2E_INSN_MOVL10_COMPACT, & sh2e_sh2e_model::model_movl10_compact_before, & sh2e_sh2e_model::model_movl10_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9647 { SH2E_INSN_MOVL11_COMPACT, & sh2e_sh2e_model::model_movl11_compact_before, & sh2e_sh2e_model::model_movl11_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9648 { SH2E_INSN_MOVW1_COMPACT, & sh2e_sh2e_model::model_movw1_compact_before, & sh2e_sh2e_model::model_movw1_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9649 { SH2E_INSN_MOVW2_COMPACT, & sh2e_sh2e_model::model_movw2_compact_before, & sh2e_sh2e_model::model_movw2_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9650 { SH2E_INSN_MOVW3_COMPACT, & sh2e_sh2e_model::model_movw3_compact_before, & sh2e_sh2e_model::model_movw3_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9651 { SH2E_INSN_MOVW4_COMPACT, & sh2e_sh2e_model::model_movw4_compact_before, & sh2e_sh2e_model::model_movw4_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SX, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9652 { SH2E_INSN_MOVW5_COMPACT, & sh2e_sh2e_model::model_movw5_compact_before, & sh2e_sh2e_model::model_movw5_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9653 { SH2E_INSN_MOVW6_COMPACT, & sh2e_sh2e_model::model_movw6_compact_before, & sh2e_sh2e_model::model_movw6_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9654 { SH2E_INSN_MOVW7_COMPACT, & sh2e_sh2e_model::model_movw7_compact_before, & sh2e_sh2e_model::model_movw7_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9655 { SH2E_INSN_MOVW8_COMPACT, & sh2e_sh2e_model::model_movw8_compact_before, & sh2e_sh2e_model::model_movw8_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9656 { SH2E_INSN_MOVW9_COMPACT, & sh2e_sh2e_model::model_movw9_compact_before, & sh2e_sh2e_model::model_movw9_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9657 { SH2E_INSN_MOVW10_COMPACT, & sh2e_sh2e_model::model_movw10_compact_before, & sh2e_sh2e_model::model_movw10_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9658 { SH2E_INSN_MOVW11_COMPACT, & sh2e_sh2e_model::model_movw11_compact_before, & sh2e_sh2e_model::model_movw11_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOAD_GR, 0, 0 } } },
9659 { SH2E_INSN_MOVA_COMPACT, & sh2e_sh2e_model::model_mova_compact_before, & sh2e_sh2e_model::model_mova_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9660 { SH2E_INSN_MOVT_COMPACT, & sh2e_sh2e_model::model_movt_compact_before, & sh2e_sh2e_model::model_movt_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9661 { SH2E_INSN_MULL_COMPACT, & sh2e_sh2e_model::model_mull_compact_before, & sh2e_sh2e_model::model_mull_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_MULL, 1, 2 } } },
9662 { SH2E_INSN_MULSW_COMPACT, & sh2e_sh2e_model::model_mulsw_compact_before, & sh2e_sh2e_model::model_mulsw_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_MULSW, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MULTIPLY, 1, 2 } } },
9663 { SH2E_INSN_MULUW_COMPACT, & sh2e_sh2e_model::model_muluw_compact_before, & sh2e_sh2e_model::model_muluw_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_MULSW, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MULTIPLY, 1, 2 } } },
9664 { SH2E_INSN_NEG_COMPACT, & sh2e_sh2e_model::model_neg_compact_before, & sh2e_sh2e_model::model_neg_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9665 { SH2E_INSN_NEGC_COMPACT, & sh2e_sh2e_model::model_negc_compact_before, & sh2e_sh2e_model::model_negc_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9666 { SH2E_INSN_NOP_COMPACT, & sh2e_sh2e_model::model_nop_compact_before, & sh2e_sh2e_model::model_nop_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9667 { SH2E_INSN_NOT_COMPACT, & sh2e_sh2e_model::model_not_compact_before, & sh2e_sh2e_model::model_not_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9668 { SH2E_INSN_OR_COMPACT, & sh2e_sh2e_model::model_or_compact_before, & sh2e_sh2e_model::model_or_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9669 { SH2E_INSN_ORI_COMPACT, & sh2e_sh2e_model::model_ori_compact_before, & sh2e_sh2e_model::model_ori_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9670 { SH2E_INSN_ORB_COMPACT, & sh2e_sh2e_model::model_orb_compact_before, & sh2e_sh2e_model::model_orb_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOGIC_B, 0, 3 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9671 { SH2E_INSN_ROTCL_COMPACT, & sh2e_sh2e_model::model_rotcl_compact_before, & sh2e_sh2e_model::model_rotcl_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9672 { SH2E_INSN_ROTCR_COMPACT, & sh2e_sh2e_model::model_rotcr_compact_before, & sh2e_sh2e_model::model_rotcr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9673 { SH2E_INSN_ROTL_COMPACT, & sh2e_sh2e_model::model_rotl_compact_before, & sh2e_sh2e_model::model_rotl_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9674 { SH2E_INSN_ROTR_COMPACT, & sh2e_sh2e_model::model_rotr_compact_before, & sh2e_sh2e_model::model_rotr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9675 { SH2E_INSN_RTS_COMPACT, & sh2e_sh2e_model::model_rts_compact_before, & sh2e_sh2e_model::model_rts_compact_after, { { sh2e_sh2e_model::UNIT_U_JMP, 0, 2 } } },
9676 { SH2E_INSN_SETT_COMPACT, & sh2e_sh2e_model::model_sett_compact_before, & sh2e_sh2e_model::model_sett_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9677 { SH2E_INSN_SHAL_COMPACT, & sh2e_sh2e_model::model_shal_compact_before, & sh2e_sh2e_model::model_shal_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9678 { SH2E_INSN_SHAR_COMPACT, & sh2e_sh2e_model::model_shar_compact_before, & sh2e_sh2e_model::model_shar_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9679 { SH2E_INSN_SHLL_COMPACT, & sh2e_sh2e_model::model_shll_compact_before, & sh2e_sh2e_model::model_shll_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9680 { SH2E_INSN_SHLL2_COMPACT, & sh2e_sh2e_model::model_shll2_compact_before, & sh2e_sh2e_model::model_shll2_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9681 { SH2E_INSN_SHLL8_COMPACT, & sh2e_sh2e_model::model_shll8_compact_before, & sh2e_sh2e_model::model_shll8_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9682 { SH2E_INSN_SHLL16_COMPACT, & sh2e_sh2e_model::model_shll16_compact_before, & sh2e_sh2e_model::model_shll16_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9683 { SH2E_INSN_SHLR_COMPACT, & sh2e_sh2e_model::model_shlr_compact_before, & sh2e_sh2e_model::model_shlr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9684 { SH2E_INSN_SHLR2_COMPACT, & sh2e_sh2e_model::model_shlr2_compact_before, & sh2e_sh2e_model::model_shlr2_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9685 { SH2E_INSN_SHLR8_COMPACT, & sh2e_sh2e_model::model_shlr8_compact_before, & sh2e_sh2e_model::model_shlr8_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9686 { SH2E_INSN_SHLR16_COMPACT, & sh2e_sh2e_model::model_shlr16_compact_before, & sh2e_sh2e_model::model_shlr16_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9687 { SH2E_INSN_STC_GBR_COMPACT, & sh2e_sh2e_model::model_stc_gbr_compact_before, & sh2e_sh2e_model::model_stc_gbr_compact_after, { { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9688 { SH2E_INSN_STC_VBR_COMPACT, & sh2e_sh2e_model::model_stc_vbr_compact_before, & sh2e_sh2e_model::model_stc_vbr_compact_after, { { sh2e_sh2e_model::UNIT_U_STC_VBR, 0, 1 } } },
9689 { SH2E_INSN_STCL_GBR_COMPACT, & sh2e_sh2e_model::model_stcl_gbr_compact_before, & sh2e_sh2e_model::model_stcl_gbr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LDCL, 0, 2 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9690 { SH2E_INSN_STCL_VBR_COMPACT, & sh2e_sh2e_model::model_stcl_vbr_compact_before, & sh2e_sh2e_model::model_stcl_vbr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LDCL, 0, 2 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9691 { SH2E_INSN_STS_FPSCR_COMPACT, & sh2e_sh2e_model::model_sts_fpscr_compact_before, & sh2e_sh2e_model::model_sts_fpscr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FPSCR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_LOAD_GR, 0, 0 } } },
9692 { SH2E_INSN_STSL_FPSCR_COMPACT, & sh2e_sh2e_model::model_stsl_fpscr_compact_before, & sh2e_sh2e_model::model_stsl_fpscr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_FPSCR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
9693 { SH2E_INSN_STS_FPUL_COMPACT, & sh2e_sh2e_model::model_sts_fpul_compact_before, & sh2e_sh2e_model::model_sts_fpul_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FPUL, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_LOAD_GR, 0, 0 } } },
9694 { SH2E_INSN_STSL_FPUL_COMPACT, & sh2e_sh2e_model::model_stsl_fpul_compact_before, & sh2e_sh2e_model::model_stsl_fpul_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_FPUL, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MAYBE_FPU, 0, 0 }, { sh2e_sh2e_model::UNIT_U_FPU_MEMORY_ACCESS, 0, 0 } } },
9695 { SH2E_INSN_STS_MACH_COMPACT, & sh2e_sh2e_model::model_sts_mach_compact_before, & sh2e_sh2e_model::model_sts_mach_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9696 { SH2E_INSN_STSL_MACH_COMPACT, & sh2e_sh2e_model::model_stsl_mach_compact_before, & sh2e_sh2e_model::model_stsl_mach_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9697 { SH2E_INSN_STS_MACL_COMPACT, & sh2e_sh2e_model::model_sts_macl_compact_before, & sh2e_sh2e_model::model_sts_macl_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9698 { SH2E_INSN_STSL_MACL_COMPACT, & sh2e_sh2e_model::model_stsl_macl_compact_before, & sh2e_sh2e_model::model_stsl_macl_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9699 { SH2E_INSN_STS_PR_COMPACT, & sh2e_sh2e_model::model_sts_pr_compact_before, & sh2e_sh2e_model::model_sts_pr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_PR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_STS_PR, 0, 1 } } },
9700 { SH2E_INSN_STSL_PR_COMPACT, & sh2e_sh2e_model::model_stsl_pr_compact_before, & sh2e_sh2e_model::model_stsl_pr_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_PR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_STS_PR, 0, 1 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9701 { SH2E_INSN_SUB_COMPACT, & sh2e_sh2e_model::model_sub_compact_before, & sh2e_sh2e_model::model_sub_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9702 { SH2E_INSN_SUBC_COMPACT, & sh2e_sh2e_model::model_subc_compact_before, & sh2e_sh2e_model::model_subc_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9703 { SH2E_INSN_SUBV_COMPACT, & sh2e_sh2e_model::model_subv_compact_before, & sh2e_sh2e_model::model_subv_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9704 { SH2E_INSN_SWAPB_COMPACT, & sh2e_sh2e_model::model_swapb_compact_before, & sh2e_sh2e_model::model_swapb_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9705 { SH2E_INSN_SWAPW_COMPACT, & sh2e_sh2e_model::model_swapw_compact_before, & sh2e_sh2e_model::model_swapw_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },
9706 { SH2E_INSN_TASB_COMPACT, & sh2e_sh2e_model::model_tasb_compact_before, & sh2e_sh2e_model::model_tasb_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_TAS, 1, 4 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9707 { SH2E_INSN_TRAPA_COMPACT, & sh2e_sh2e_model::model_trapa_compact_before, & sh2e_sh2e_model::model_trapa_compact_after, { { sh2e_sh2e_model::UNIT_U_TRAP, 0, 8 } } },
9708 { SH2E_INSN_TST_COMPACT, & sh2e_sh2e_model::model_tst_compact_before, & sh2e_sh2e_model::model_tst_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9709 { SH2E_INSN_TSTI_COMPACT, & sh2e_sh2e_model::model_tsti_compact_before, & sh2e_sh2e_model::model_tsti_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
9710 { SH2E_INSN_TSTB_COMPACT, & sh2e_sh2e_model::model_tstb_compact_before, & sh2e_sh2e_model::model_tstb_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_TBIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 3 }, { sh2e_sh2e_model::UNIT_U_SX, 1, 3 }, { sh2e_sh2e_model::UNIT_U_SET_SR_BIT, 0, 0 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9711 { SH2E_INSN_XOR_COMPACT, & sh2e_sh2e_model::model_xor_compact_before, & sh2e_sh2e_model::model_xor_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9712 { SH2E_INSN_XORI_COMPACT, & sh2e_sh2e_model::model_xori_compact_before, & sh2e_sh2e_model::model_xori_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 } } },
9713 { SH2E_INSN_XORB_COMPACT, & sh2e_sh2e_model::model_xorb_compact_before, & sh2e_sh2e_model::model_xorb_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_LOGIC_B, 0, 3 }, { sh2e_sh2e_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
9714 { SH2E_INSN_XTRCT_COMPACT, & sh2e_sh2e_model::model_xtrct_compact_before, & sh2e_sh2e_model::model_xtrct_compact_after, { { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_USE_GR, 0, 0 }, { sh2e_sh2e_model::UNIT_U_EXEC, 1, 1 }, { sh2e_sh2e_model::UNIT_U_SHIFT, 0, 0 } } },