OSDN Git Service

942688c73ee99d298479032134fa7072d7387366
[pf3gnuchains/pf3gnuchains3x.git] / sid / component / cgen-cpu / sh / sh4-nofpu-model.cxx
1 /* Simulator model support for sh4_nofpu.
2
3 THIS FILE IS MACHINE GENERATED WITH CGEN.
4
5 Copyright (C) 2000-2009 Red Hat, Inc.
6
7 This file is part of the Red Hat simulators.
8
9
10 */
11
12
13 #if HAVE_CONFIG_H
14 #include "config.h"
15 #endif
16 #include "sh4_nofpu.h"
17
18 using namespace sh4_nofpu; // FIXME: namespace organization still wip
19
20 /* The profiling data is recorded here, but is accessed via the profiling
21    mechanism.  After all, this is information for profiling.  */
22
23 /* Model handlers for each insn.  */
24
25 sh4_nofpu_sh4_nofpu_model::sh4_nofpu_sh4_nofpu_model (sh4_nofpu_cpu *cpu)
26   : cgen_model (cpu)
27 {
28 }
29
30 UINT
31 sh4_nofpu_sh4_nofpu_model::model_add_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
32 {
33 #define FLD(f) abuf->fields.sfmt_macl_compact.f
34   const sh4_nofpu_scache* abuf = sem;
35   const sh4_nofpu_idesc* idesc = abuf->idesc;
36   int cycles = 0;
37   {
38     INT in_usereg = -1;
39     in_usereg = FLD (in_rn);
40     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
41   }
42   {
43     INT in_usereg = -1;
44     in_usereg = FLD (in_rm);
45     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
46   }
47   {
48     cycles += model_u_exec_before (current_cpu, idesc, 2);
49   }
50   return cycles;
51 #undef FLD
52 }
53
54 UINT
55 sh4_nofpu_sh4_nofpu_model::model_add_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
56 {
57 #define FLD(f) abuf->fields.sfmt_macl_compact.f
58   const sh4_nofpu_scache* abuf = sem;
59   const sh4_nofpu_idesc* idesc = abuf->idesc;
60   int cycles = 0;
61   {
62     int referenced = 0;
63     unsigned long long insn_referenced = abuf->written;
64     INT in_usereg = -1;
65     in_usereg = FLD (in_rn);
66     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
67   }
68   {
69     int referenced = 0;
70     unsigned long long insn_referenced = abuf->written;
71     INT in_usereg = -1;
72     in_usereg = FLD (in_rm);
73     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
74   }
75   {
76     int referenced = 0;
77     unsigned long long insn_referenced = abuf->written;
78     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
79   }
80   return cycles;
81 #undef FLD
82 }
83
84 UINT
85 sh4_nofpu_sh4_nofpu_model::model_addi_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
86 {
87 #define FLD(f) abuf->fields.sfmt_addi_compact.f
88   const sh4_nofpu_scache* abuf = sem;
89   const sh4_nofpu_idesc* idesc = abuf->idesc;
90   int cycles = 0;
91   {
92     INT in_usereg = -1;
93     in_usereg = FLD (in_rn);
94     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
95   }
96   {
97     cycles += model_u_exec_before (current_cpu, idesc, 1);
98   }
99   return cycles;
100 #undef FLD
101 }
102
103 UINT
104 sh4_nofpu_sh4_nofpu_model::model_addi_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
105 {
106 #define FLD(f) abuf->fields.sfmt_addi_compact.f
107   const sh4_nofpu_scache* abuf = sem;
108   const sh4_nofpu_idesc* idesc = abuf->idesc;
109   int cycles = 0;
110   {
111     int referenced = 0;
112     unsigned long long insn_referenced = abuf->written;
113     INT in_usereg = -1;
114     in_usereg = FLD (in_rn);
115     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
116   }
117   {
118     int referenced = 0;
119     unsigned long long insn_referenced = abuf->written;
120     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
121   }
122   return cycles;
123 #undef FLD
124 }
125
126 UINT
127 sh4_nofpu_sh4_nofpu_model::model_addc_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
128 {
129 #define FLD(f) abuf->fields.sfmt_macl_compact.f
130   const sh4_nofpu_scache* abuf = sem;
131   const sh4_nofpu_idesc* idesc = abuf->idesc;
132   int cycles = 0;
133   {
134     INT in_usereg = -1;
135     in_usereg = FLD (in_rn);
136     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
137   }
138   {
139     INT in_usereg = -1;
140     in_usereg = FLD (in_rm);
141     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
142   }
143   {
144     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
145   }
146   {
147     cycles += model_u_exec_before (current_cpu, idesc, 3);
148   }
149   {
150     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
151   }
152   return cycles;
153 #undef FLD
154 }
155
156 UINT
157 sh4_nofpu_sh4_nofpu_model::model_addc_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
158 {
159 #define FLD(f) abuf->fields.sfmt_macl_compact.f
160   const sh4_nofpu_scache* abuf = sem;
161   const sh4_nofpu_idesc* idesc = abuf->idesc;
162   int cycles = 0;
163   {
164     int referenced = 0;
165     unsigned long long insn_referenced = abuf->written;
166     INT in_usereg = -1;
167     in_usereg = FLD (in_rn);
168     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
169   }
170   {
171     int referenced = 0;
172     unsigned long long insn_referenced = abuf->written;
173     INT in_usereg = -1;
174     in_usereg = FLD (in_rm);
175     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
176   }
177   {
178     int referenced = 0;
179     unsigned long long insn_referenced = abuf->written;
180     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
181   }
182   {
183     int referenced = 0;
184     unsigned long long insn_referenced = abuf->written;
185     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
186   }
187   {
188     int referenced = 0;
189     unsigned long long insn_referenced = abuf->written;
190     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
191   }
192   return cycles;
193 #undef FLD
194 }
195
196 UINT
197 sh4_nofpu_sh4_nofpu_model::model_addv_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
198 {
199 #define FLD(f) abuf->fields.sfmt_macl_compact.f
200   const sh4_nofpu_scache* abuf = sem;
201   const sh4_nofpu_idesc* idesc = abuf->idesc;
202   int cycles = 0;
203   {
204     INT in_usereg = -1;
205     in_usereg = FLD (in_rn);
206     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
207   }
208   {
209     INT in_usereg = -1;
210     in_usereg = FLD (in_rm);
211     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
212   }
213   {
214     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
215   }
216   {
217     cycles += model_u_exec_before (current_cpu, idesc, 3);
218   }
219   {
220     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
221   }
222   return cycles;
223 #undef FLD
224 }
225
226 UINT
227 sh4_nofpu_sh4_nofpu_model::model_addv_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
228 {
229 #define FLD(f) abuf->fields.sfmt_macl_compact.f
230   const sh4_nofpu_scache* abuf = sem;
231   const sh4_nofpu_idesc* idesc = abuf->idesc;
232   int cycles = 0;
233   {
234     int referenced = 0;
235     unsigned long long insn_referenced = abuf->written;
236     INT in_usereg = -1;
237     in_usereg = FLD (in_rn);
238     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
239   }
240   {
241     int referenced = 0;
242     unsigned long long insn_referenced = abuf->written;
243     INT in_usereg = -1;
244     in_usereg = FLD (in_rm);
245     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
246   }
247   {
248     int referenced = 0;
249     unsigned long long insn_referenced = abuf->written;
250     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
251   }
252   {
253     int referenced = 0;
254     unsigned long long insn_referenced = abuf->written;
255     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
256   }
257   {
258     int referenced = 0;
259     unsigned long long insn_referenced = abuf->written;
260     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
261   }
262   return cycles;
263 #undef FLD
264 }
265
266 UINT
267 sh4_nofpu_sh4_nofpu_model::model_and_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
268 {
269 #define FLD(f) abuf->fields.sfmt_and_compact.f
270   const sh4_nofpu_scache* abuf = sem;
271   const sh4_nofpu_idesc* idesc = abuf->idesc;
272   int cycles = 0;
273   {
274     INT in_usereg = -1;
275     in_usereg = FLD (in_rn64);
276     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
277   }
278   {
279     INT in_usereg = -1;
280     in_usereg = FLD (in_rm64);
281     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
282   }
283   {
284     cycles += model_u_exec_before (current_cpu, idesc, 2);
285   }
286   return cycles;
287 #undef FLD
288 }
289
290 UINT
291 sh4_nofpu_sh4_nofpu_model::model_and_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
292 {
293 #define FLD(f) abuf->fields.sfmt_and_compact.f
294   const sh4_nofpu_scache* abuf = sem;
295   const sh4_nofpu_idesc* idesc = abuf->idesc;
296   int cycles = 0;
297   {
298     int referenced = 0;
299     unsigned long long insn_referenced = abuf->written;
300     INT in_usereg = -1;
301     in_usereg = FLD (in_rn64);
302     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
303   }
304   {
305     int referenced = 0;
306     unsigned long long insn_referenced = abuf->written;
307     INT in_usereg = -1;
308     in_usereg = FLD (in_rm64);
309     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
310   }
311   {
312     int referenced = 0;
313     unsigned long long insn_referenced = abuf->written;
314     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
315   }
316   return cycles;
317 #undef FLD
318 }
319
320 UINT
321 sh4_nofpu_sh4_nofpu_model::model_andi_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
322 {
323 #define FLD(f) abuf->fields.sfmt_andi_compact.f
324   const sh4_nofpu_scache* abuf = sem;
325   const sh4_nofpu_idesc* idesc = abuf->idesc;
326   int cycles = 0;
327   {
328     INT in_usereg = -1;
329     in_usereg = FLD (in_r0);
330     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
331   }
332   {
333     cycles += model_u_exec_before (current_cpu, idesc, 1);
334   }
335   return cycles;
336 #undef FLD
337 }
338
339 UINT
340 sh4_nofpu_sh4_nofpu_model::model_andi_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
341 {
342 #define FLD(f) abuf->fields.sfmt_andi_compact.f
343   const sh4_nofpu_scache* abuf = sem;
344   const sh4_nofpu_idesc* idesc = abuf->idesc;
345   int cycles = 0;
346   {
347     int referenced = 0;
348     unsigned long long insn_referenced = abuf->written;
349     INT in_usereg = -1;
350     in_usereg = FLD (in_r0);
351     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
352   }
353   {
354     int referenced = 0;
355     unsigned long long insn_referenced = abuf->written;
356     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
357   }
358   return cycles;
359 #undef FLD
360 }
361
362 UINT
363 sh4_nofpu_sh4_nofpu_model::model_andb_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
364 {
365 #define FLD(f) abuf->fields.sfmt_andi_compact.f
366   const sh4_nofpu_scache* abuf = sem;
367   const sh4_nofpu_idesc* idesc = abuf->idesc;
368   int cycles = 0;
369   {
370     INT in_usereg = -1;
371     in_usereg = FLD (in_r0);
372     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
373   }
374   {
375     cycles += model_u_logic_b_before (current_cpu, idesc, 1);
376   }
377   {
378     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
379   }
380   return cycles;
381 #undef FLD
382 }
383
384 UINT
385 sh4_nofpu_sh4_nofpu_model::model_andb_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
386 {
387 #define FLD(f) abuf->fields.sfmt_andi_compact.f
388   const sh4_nofpu_scache* abuf = sem;
389   const sh4_nofpu_idesc* idesc = abuf->idesc;
390   int cycles = 0;
391   {
392     int referenced = 0;
393     unsigned long long insn_referenced = abuf->written;
394     INT in_usereg = -1;
395     in_usereg = FLD (in_r0);
396     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
397   }
398   {
399     int referenced = 0;
400     unsigned long long insn_referenced = abuf->written;
401     cycles += model_u_logic_b_after (current_cpu, idesc, 1, referenced);
402   }
403   {
404     int referenced = 0;
405     unsigned long long insn_referenced = abuf->written;
406     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
407   }
408   return cycles;
409 #undef FLD
410 }
411
412 UINT
413 sh4_nofpu_sh4_nofpu_model::model_bf_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
414 {
415 #define FLD(f) abuf->fields.sfmt_bf_compact.f
416   const sh4_nofpu_scache* abuf = sem;
417   const sh4_nofpu_idesc* idesc = abuf->idesc;
418   int cycles = 0;
419   {
420     cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
421   }
422   {
423     cycles += model_u_branch_before (current_cpu, idesc, 1);
424   }
425   return cycles;
426 #undef FLD
427 }
428
429 UINT
430 sh4_nofpu_sh4_nofpu_model::model_bf_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
431 {
432 #define FLD(f) abuf->fields.sfmt_bf_compact.f
433   const sh4_nofpu_scache* abuf = sem;
434   const sh4_nofpu_idesc* idesc = abuf->idesc;
435   int cycles = 0;
436   {
437     int referenced = 0;
438     unsigned long long insn_referenced = abuf->written;
439     cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
440   }
441   {
442     int referenced = 0;
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);
446   }
447   return cycles;
448 #undef FLD
449 }
450
451 UINT
452 sh4_nofpu_sh4_nofpu_model::model_bfs_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
453 {
454 #define FLD(f) abuf->fields.sfmt_bf_compact.f
455   const sh4_nofpu_scache* abuf = sem;
456   const sh4_nofpu_idesc* idesc = abuf->idesc;
457   int cycles = 0;
458   {
459     cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
460   }
461   {
462     cycles += model_u_branch_before (current_cpu, idesc, 1);
463   }
464   return cycles;
465 #undef FLD
466 }
467
468 UINT
469 sh4_nofpu_sh4_nofpu_model::model_bfs_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
470 {
471 #define FLD(f) abuf->fields.sfmt_bf_compact.f
472   const sh4_nofpu_scache* abuf = sem;
473   const sh4_nofpu_idesc* idesc = abuf->idesc;
474   int cycles = 0;
475   {
476     int referenced = 0;
477     unsigned long long insn_referenced = abuf->written;
478     cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
479   }
480   {
481     int referenced = 0;
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);
485   }
486   return cycles;
487 #undef FLD
488 }
489
490 UINT
491 sh4_nofpu_sh4_nofpu_model::model_bra_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
492 {
493 #define FLD(f) abuf->fields.sfmt_bra_compact.f
494   const sh4_nofpu_scache* abuf = sem;
495   const sh4_nofpu_idesc* idesc = abuf->idesc;
496   int cycles = 0;
497   {
498     cycles += model_u_branch_before (current_cpu, idesc, 0);
499   }
500   return cycles;
501 #undef FLD
502 }
503
504 UINT
505 sh4_nofpu_sh4_nofpu_model::model_bra_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
506 {
507 #define FLD(f) abuf->fields.sfmt_bra_compact.f
508   const sh4_nofpu_scache* abuf = sem;
509   const sh4_nofpu_idesc* idesc = abuf->idesc;
510   int cycles = 0;
511   {
512     int referenced = 0;
513     unsigned long long insn_referenced = abuf->written;
514     referenced |= 1 << 0;
515     cycles += model_u_branch_after (current_cpu, idesc, 0, referenced);
516   }
517   return cycles;
518 #undef FLD
519 }
520
521 UINT
522 sh4_nofpu_sh4_nofpu_model::model_braf_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
523 {
524 #define FLD(f) abuf->fields.sfmt_divu_compact.f
525   const sh4_nofpu_scache* abuf = sem;
526   const sh4_nofpu_idesc* idesc = abuf->idesc;
527   int cycles = 0;
528   {
529     INT in_usereg = -1;
530     in_usereg = FLD (in_rn);
531     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
532   }
533   {
534     cycles += model_u_jmp_before (current_cpu, idesc, 1);
535   }
536   return cycles;
537 #undef FLD
538 }
539
540 UINT
541 sh4_nofpu_sh4_nofpu_model::model_braf_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
542 {
543 #define FLD(f) abuf->fields.sfmt_divu_compact.f
544   const sh4_nofpu_scache* abuf = sem;
545   const sh4_nofpu_idesc* idesc = abuf->idesc;
546   int cycles = 0;
547   {
548     int referenced = 0;
549     unsigned long long insn_referenced = abuf->written;
550     INT in_usereg = -1;
551     in_usereg = FLD (in_rn);
552     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
553   }
554   {
555     int referenced = 0;
556     unsigned long long insn_referenced = abuf->written;
557     referenced |= 1 << 0;
558     cycles += model_u_jmp_after (current_cpu, idesc, 1, referenced);
559   }
560   return cycles;
561 #undef FLD
562 }
563
564 UINT
565 sh4_nofpu_sh4_nofpu_model::model_bsr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
566 {
567 #define FLD(f) abuf->fields.sfmt_bra_compact.f
568   const sh4_nofpu_scache* abuf = sem;
569   const sh4_nofpu_idesc* idesc = abuf->idesc;
570   int cycles = 0;
571   {
572     cycles += model_u_branch_before (current_cpu, idesc, 0);
573   }
574   return cycles;
575 #undef FLD
576 }
577
578 UINT
579 sh4_nofpu_sh4_nofpu_model::model_bsr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
580 {
581 #define FLD(f) abuf->fields.sfmt_bra_compact.f
582   const sh4_nofpu_scache* abuf = sem;
583   const sh4_nofpu_idesc* idesc = abuf->idesc;
584   int cycles = 0;
585   {
586     int referenced = 0;
587     unsigned long long insn_referenced = abuf->written;
588     referenced |= 1 << 0;
589     cycles += model_u_branch_after (current_cpu, idesc, 0, referenced);
590   }
591   return cycles;
592 #undef FLD
593 }
594
595 UINT
596 sh4_nofpu_sh4_nofpu_model::model_bsrf_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
597 {
598 #define FLD(f) abuf->fields.sfmt_divu_compact.f
599   const sh4_nofpu_scache* abuf = sem;
600   const sh4_nofpu_idesc* idesc = abuf->idesc;
601   int cycles = 0;
602   {
603     INT in_usereg = -1;
604     in_usereg = FLD (in_rn);
605     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
606   }
607   {
608     cycles += model_u_jsr_before (current_cpu, idesc, 1);
609   }
610   return cycles;
611 #undef FLD
612 }
613
614 UINT
615 sh4_nofpu_sh4_nofpu_model::model_bsrf_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
616 {
617 #define FLD(f) abuf->fields.sfmt_divu_compact.f
618   const sh4_nofpu_scache* abuf = sem;
619   const sh4_nofpu_idesc* idesc = abuf->idesc;
620   int cycles = 0;
621   {
622     int referenced = 0;
623     unsigned long long insn_referenced = abuf->written;
624     INT in_usereg = -1;
625     in_usereg = FLD (in_rn);
626     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
627   }
628   {
629     int referenced = 0;
630     unsigned long long insn_referenced = abuf->written;
631     referenced |= 1 << 0;
632     cycles += model_u_jsr_after (current_cpu, idesc, 1, referenced);
633   }
634   return cycles;
635 #undef FLD
636 }
637
638 UINT
639 sh4_nofpu_sh4_nofpu_model::model_bt_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
640 {
641 #define FLD(f) abuf->fields.sfmt_bf_compact.f
642   const sh4_nofpu_scache* abuf = sem;
643   const sh4_nofpu_idesc* idesc = abuf->idesc;
644   int cycles = 0;
645   {
646     cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
647   }
648   {
649     cycles += model_u_branch_before (current_cpu, idesc, 1);
650   }
651   return cycles;
652 #undef FLD
653 }
654
655 UINT
656 sh4_nofpu_sh4_nofpu_model::model_bt_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
657 {
658 #define FLD(f) abuf->fields.sfmt_bf_compact.f
659   const sh4_nofpu_scache* abuf = sem;
660   const sh4_nofpu_idesc* idesc = abuf->idesc;
661   int cycles = 0;
662   {
663     int referenced = 0;
664     unsigned long long insn_referenced = abuf->written;
665     cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
666   }
667   {
668     int referenced = 0;
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);
672   }
673   return cycles;
674 #undef FLD
675 }
676
677 UINT
678 sh4_nofpu_sh4_nofpu_model::model_bts_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
679 {
680 #define FLD(f) abuf->fields.sfmt_bf_compact.f
681   const sh4_nofpu_scache* abuf = sem;
682   const sh4_nofpu_idesc* idesc = abuf->idesc;
683   int cycles = 0;
684   {
685     cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
686   }
687   {
688     cycles += model_u_branch_before (current_cpu, idesc, 1);
689   }
690   return cycles;
691 #undef FLD
692 }
693
694 UINT
695 sh4_nofpu_sh4_nofpu_model::model_bts_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
696 {
697 #define FLD(f) abuf->fields.sfmt_bf_compact.f
698   const sh4_nofpu_scache* abuf = sem;
699   const sh4_nofpu_idesc* idesc = abuf->idesc;
700   int cycles = 0;
701   {
702     int referenced = 0;
703     unsigned long long insn_referenced = abuf->written;
704     cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
705   }
706   {
707     int referenced = 0;
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);
711   }
712   return cycles;
713 #undef FLD
714 }
715
716 UINT
717 sh4_nofpu_sh4_nofpu_model::model_clrmac_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
718 {
719 #define FLD(f) abuf->fields.fmt_empty.f
720   const sh4_nofpu_scache* abuf = sem;
721   const sh4_nofpu_idesc* idesc = abuf->idesc;
722   int cycles = 0;
723   {
724     cycles += model_u_use_multiply_result_before (current_cpu, idesc, 0);
725   }
726   {
727     cycles += model_u_exec_before (current_cpu, idesc, 1);
728   }
729   {
730     cycles += model_u_set_mac_before (current_cpu, idesc, 2);
731   }
732   return cycles;
733 #undef FLD
734 }
735
736 UINT
737 sh4_nofpu_sh4_nofpu_model::model_clrmac_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
738 {
739 #define FLD(f) abuf->fields.fmt_empty.f
740   const sh4_nofpu_scache* abuf = sem;
741   const sh4_nofpu_idesc* idesc = abuf->idesc;
742   int cycles = 0;
743   {
744     int referenced = 0;
745     unsigned long long insn_referenced = abuf->written;
746     cycles += model_u_use_multiply_result_after (current_cpu, idesc, 0, referenced);
747   }
748   {
749     int referenced = 0;
750     unsigned long long insn_referenced = abuf->written;
751     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
752   }
753   {
754     int referenced = 0;
755     unsigned long long insn_referenced = abuf->written;
756     cycles += model_u_set_mac_after (current_cpu, idesc, 2, referenced);
757   }
758   return cycles;
759 #undef FLD
760 }
761
762 UINT
763 sh4_nofpu_sh4_nofpu_model::model_clrs_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
764 {
765 #define FLD(f) abuf->fields.fmt_empty.f
766   const sh4_nofpu_scache* abuf = sem;
767   const sh4_nofpu_idesc* idesc = abuf->idesc;
768   int cycles = 0;
769   {
770     cycles += model_u_exec_before (current_cpu, idesc, 0);
771   }
772   {
773     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 1);
774   }
775   return cycles;
776 #undef FLD
777 }
778
779 UINT
780 sh4_nofpu_sh4_nofpu_model::model_clrs_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
781 {
782 #define FLD(f) abuf->fields.fmt_empty.f
783   const sh4_nofpu_scache* abuf = sem;
784   const sh4_nofpu_idesc* idesc = abuf->idesc;
785   int cycles = 0;
786   {
787     int referenced = 0;
788     unsigned long long insn_referenced = abuf->written;
789     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
790   }
791   {
792     int referenced = 0;
793     unsigned long long insn_referenced = abuf->written;
794     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 1, referenced);
795   }
796   return cycles;
797 #undef FLD
798 }
799
800 UINT
801 sh4_nofpu_sh4_nofpu_model::model_clrt_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
802 {
803 #define FLD(f) abuf->fields.fmt_empty.f
804   const sh4_nofpu_scache* abuf = sem;
805   const sh4_nofpu_idesc* idesc = abuf->idesc;
806   int cycles = 0;
807   {
808     cycles += model_u_exec_before (current_cpu, idesc, 0);
809   }
810   {
811     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
812   }
813   {
814     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 2);
815   }
816   return cycles;
817 #undef FLD
818 }
819
820 UINT
821 sh4_nofpu_sh4_nofpu_model::model_clrt_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
822 {
823 #define FLD(f) abuf->fields.fmt_empty.f
824   const sh4_nofpu_scache* abuf = sem;
825   const sh4_nofpu_idesc* idesc = abuf->idesc;
826   int cycles = 0;
827   {
828     int referenced = 0;
829     unsigned long long insn_referenced = abuf->written;
830     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
831   }
832   {
833     int referenced = 0;
834     unsigned long long insn_referenced = abuf->written;
835     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
836   }
837   {
838     int referenced = 0;
839     unsigned long long insn_referenced = abuf->written;
840     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 2, referenced);
841   }
842   return cycles;
843 #undef FLD
844 }
845
846 UINT
847 sh4_nofpu_sh4_nofpu_model::model_cmpeq_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
848 {
849 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
850   const sh4_nofpu_scache* abuf = sem;
851   const sh4_nofpu_idesc* idesc = abuf->idesc;
852   int cycles = 0;
853   {
854     INT in_usereg = -1;
855     in_usereg = FLD (in_rn);
856     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
857   }
858   {
859     INT in_usereg = -1;
860     in_usereg = FLD (in_rm);
861     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
862   }
863   {
864     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
865   }
866   {
867     cycles += model_u_exec_before (current_cpu, idesc, 3);
868   }
869   {
870     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
871   }
872   return cycles;
873 #undef FLD
874 }
875
876 UINT
877 sh4_nofpu_sh4_nofpu_model::model_cmpeq_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
878 {
879 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
880   const sh4_nofpu_scache* abuf = sem;
881   const sh4_nofpu_idesc* idesc = abuf->idesc;
882   int cycles = 0;
883   {
884     int referenced = 0;
885     unsigned long long insn_referenced = abuf->written;
886     INT in_usereg = -1;
887     in_usereg = FLD (in_rn);
888     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
889   }
890   {
891     int referenced = 0;
892     unsigned long long insn_referenced = abuf->written;
893     INT in_usereg = -1;
894     in_usereg = FLD (in_rm);
895     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
896   }
897   {
898     int referenced = 0;
899     unsigned long long insn_referenced = abuf->written;
900     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
901   }
902   {
903     int referenced = 0;
904     unsigned long long insn_referenced = abuf->written;
905     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
906   }
907   {
908     int referenced = 0;
909     unsigned long long insn_referenced = abuf->written;
910     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
911   }
912   return cycles;
913 #undef FLD
914 }
915
916 UINT
917 sh4_nofpu_sh4_nofpu_model::model_cmpeqi_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
918 {
919 #define FLD(f) abuf->fields.sfmt_andi_compact.f
920   const sh4_nofpu_scache* abuf = sem;
921   const sh4_nofpu_idesc* idesc = abuf->idesc;
922   int cycles = 0;
923   {
924     INT in_usereg = -1;
925     in_usereg = FLD (in_r0);
926     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
927   }
928   {
929     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
930   }
931   {
932     cycles += model_u_exec_before (current_cpu, idesc, 2);
933   }
934   {
935     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
936   }
937   return cycles;
938 #undef FLD
939 }
940
941 UINT
942 sh4_nofpu_sh4_nofpu_model::model_cmpeqi_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
943 {
944 #define FLD(f) abuf->fields.sfmt_andi_compact.f
945   const sh4_nofpu_scache* abuf = sem;
946   const sh4_nofpu_idesc* idesc = abuf->idesc;
947   int cycles = 0;
948   {
949     int referenced = 0;
950     unsigned long long insn_referenced = abuf->written;
951     INT in_usereg = -1;
952     in_usereg = FLD (in_r0);
953     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
954   }
955   {
956     int referenced = 0;
957     unsigned long long insn_referenced = abuf->written;
958     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
959   }
960   {
961     int referenced = 0;
962     unsigned long long insn_referenced = abuf->written;
963     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
964   }
965   {
966     int referenced = 0;
967     unsigned long long insn_referenced = abuf->written;
968     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
969   }
970   return cycles;
971 #undef FLD
972 }
973
974 UINT
975 sh4_nofpu_sh4_nofpu_model::model_cmpge_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
976 {
977 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
978   const sh4_nofpu_scache* abuf = sem;
979   const sh4_nofpu_idesc* idesc = abuf->idesc;
980   int cycles = 0;
981   {
982     INT in_usereg = -1;
983     in_usereg = FLD (in_rn);
984     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
985   }
986   {
987     INT in_usereg = -1;
988     in_usereg = FLD (in_rm);
989     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
990   }
991   {
992     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
993   }
994   {
995     cycles += model_u_exec_before (current_cpu, idesc, 3);
996   }
997   {
998     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
999   }
1000   return cycles;
1001 #undef FLD
1002 }
1003
1004 UINT
1005 sh4_nofpu_sh4_nofpu_model::model_cmpge_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1006 {
1007 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1008   const sh4_nofpu_scache* abuf = sem;
1009   const sh4_nofpu_idesc* idesc = abuf->idesc;
1010   int cycles = 0;
1011   {
1012     int referenced = 0;
1013     unsigned long long insn_referenced = abuf->written;
1014     INT in_usereg = -1;
1015     in_usereg = FLD (in_rn);
1016     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1017   }
1018   {
1019     int referenced = 0;
1020     unsigned long long insn_referenced = abuf->written;
1021     INT in_usereg = -1;
1022     in_usereg = FLD (in_rm);
1023     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1024   }
1025   {
1026     int referenced = 0;
1027     unsigned long long insn_referenced = abuf->written;
1028     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1029   }
1030   {
1031     int referenced = 0;
1032     unsigned long long insn_referenced = abuf->written;
1033     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1034   }
1035   {
1036     int referenced = 0;
1037     unsigned long long insn_referenced = abuf->written;
1038     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1039   }
1040   return cycles;
1041 #undef FLD
1042 }
1043
1044 UINT
1045 sh4_nofpu_sh4_nofpu_model::model_cmpgt_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1046 {
1047 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1048   const sh4_nofpu_scache* abuf = sem;
1049   const sh4_nofpu_idesc* idesc = abuf->idesc;
1050   int cycles = 0;
1051   {
1052     INT in_usereg = -1;
1053     in_usereg = FLD (in_rn);
1054     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1055   }
1056   {
1057     INT in_usereg = -1;
1058     in_usereg = FLD (in_rm);
1059     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1060   }
1061   {
1062     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1063   }
1064   {
1065     cycles += model_u_exec_before (current_cpu, idesc, 3);
1066   }
1067   {
1068     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1069   }
1070   return cycles;
1071 #undef FLD
1072 }
1073
1074 UINT
1075 sh4_nofpu_sh4_nofpu_model::model_cmpgt_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1076 {
1077 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1078   const sh4_nofpu_scache* abuf = sem;
1079   const sh4_nofpu_idesc* idesc = abuf->idesc;
1080   int cycles = 0;
1081   {
1082     int referenced = 0;
1083     unsigned long long insn_referenced = abuf->written;
1084     INT in_usereg = -1;
1085     in_usereg = FLD (in_rn);
1086     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1087   }
1088   {
1089     int referenced = 0;
1090     unsigned long long insn_referenced = abuf->written;
1091     INT in_usereg = -1;
1092     in_usereg = FLD (in_rm);
1093     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1094   }
1095   {
1096     int referenced = 0;
1097     unsigned long long insn_referenced = abuf->written;
1098     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1099   }
1100   {
1101     int referenced = 0;
1102     unsigned long long insn_referenced = abuf->written;
1103     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1104   }
1105   {
1106     int referenced = 0;
1107     unsigned long long insn_referenced = abuf->written;
1108     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1109   }
1110   return cycles;
1111 #undef FLD
1112 }
1113
1114 UINT
1115 sh4_nofpu_sh4_nofpu_model::model_cmphi_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1116 {
1117 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1118   const sh4_nofpu_scache* abuf = sem;
1119   const sh4_nofpu_idesc* idesc = abuf->idesc;
1120   int cycles = 0;
1121   {
1122     INT in_usereg = -1;
1123     in_usereg = FLD (in_rn);
1124     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1125   }
1126   {
1127     INT in_usereg = -1;
1128     in_usereg = FLD (in_rm);
1129     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1130   }
1131   {
1132     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1133   }
1134   {
1135     cycles += model_u_exec_before (current_cpu, idesc, 3);
1136   }
1137   {
1138     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1139   }
1140   return cycles;
1141 #undef FLD
1142 }
1143
1144 UINT
1145 sh4_nofpu_sh4_nofpu_model::model_cmphi_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1146 {
1147 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1148   const sh4_nofpu_scache* abuf = sem;
1149   const sh4_nofpu_idesc* idesc = abuf->idesc;
1150   int cycles = 0;
1151   {
1152     int referenced = 0;
1153     unsigned long long insn_referenced = abuf->written;
1154     INT in_usereg = -1;
1155     in_usereg = FLD (in_rn);
1156     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1157   }
1158   {
1159     int referenced = 0;
1160     unsigned long long insn_referenced = abuf->written;
1161     INT in_usereg = -1;
1162     in_usereg = FLD (in_rm);
1163     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1164   }
1165   {
1166     int referenced = 0;
1167     unsigned long long insn_referenced = abuf->written;
1168     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1169   }
1170   {
1171     int referenced = 0;
1172     unsigned long long insn_referenced = abuf->written;
1173     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1174   }
1175   {
1176     int referenced = 0;
1177     unsigned long long insn_referenced = abuf->written;
1178     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1179   }
1180   return cycles;
1181 #undef FLD
1182 }
1183
1184 UINT
1185 sh4_nofpu_sh4_nofpu_model::model_cmphs_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1186 {
1187 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1188   const sh4_nofpu_scache* abuf = sem;
1189   const sh4_nofpu_idesc* idesc = abuf->idesc;
1190   int cycles = 0;
1191   {
1192     INT in_usereg = -1;
1193     in_usereg = FLD (in_rn);
1194     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1195   }
1196   {
1197     INT in_usereg = -1;
1198     in_usereg = FLD (in_rm);
1199     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1200   }
1201   {
1202     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1203   }
1204   {
1205     cycles += model_u_exec_before (current_cpu, idesc, 3);
1206   }
1207   {
1208     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1209   }
1210   return cycles;
1211 #undef FLD
1212 }
1213
1214 UINT
1215 sh4_nofpu_sh4_nofpu_model::model_cmphs_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1216 {
1217 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1218   const sh4_nofpu_scache* abuf = sem;
1219   const sh4_nofpu_idesc* idesc = abuf->idesc;
1220   int cycles = 0;
1221   {
1222     int referenced = 0;
1223     unsigned long long insn_referenced = abuf->written;
1224     INT in_usereg = -1;
1225     in_usereg = FLD (in_rn);
1226     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1227   }
1228   {
1229     int referenced = 0;
1230     unsigned long long insn_referenced = abuf->written;
1231     INT in_usereg = -1;
1232     in_usereg = FLD (in_rm);
1233     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1234   }
1235   {
1236     int referenced = 0;
1237     unsigned long long insn_referenced = abuf->written;
1238     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1239   }
1240   {
1241     int referenced = 0;
1242     unsigned long long insn_referenced = abuf->written;
1243     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1244   }
1245   {
1246     int referenced = 0;
1247     unsigned long long insn_referenced = abuf->written;
1248     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1249   }
1250   return cycles;
1251 #undef FLD
1252 }
1253
1254 UINT
1255 sh4_nofpu_sh4_nofpu_model::model_cmppl_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1256 {
1257 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1258   const sh4_nofpu_scache* abuf = sem;
1259   const sh4_nofpu_idesc* idesc = abuf->idesc;
1260   int cycles = 0;
1261   {
1262     INT in_usereg = -1;
1263     in_usereg = FLD (in_rn);
1264     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1265   }
1266   {
1267     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
1268   }
1269   {
1270     cycles += model_u_exec_before (current_cpu, idesc, 2);
1271   }
1272   {
1273     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
1274   }
1275   return cycles;
1276 #undef FLD
1277 }
1278
1279 UINT
1280 sh4_nofpu_sh4_nofpu_model::model_cmppl_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1281 {
1282 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1283   const sh4_nofpu_scache* abuf = sem;
1284   const sh4_nofpu_idesc* idesc = abuf->idesc;
1285   int cycles = 0;
1286   {
1287     int referenced = 0;
1288     unsigned long long insn_referenced = abuf->written;
1289     INT in_usereg = -1;
1290     in_usereg = FLD (in_rn);
1291     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1292   }
1293   {
1294     int referenced = 0;
1295     unsigned long long insn_referenced = abuf->written;
1296     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
1297   }
1298   {
1299     int referenced = 0;
1300     unsigned long long insn_referenced = abuf->written;
1301     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
1302   }
1303   {
1304     int referenced = 0;
1305     unsigned long long insn_referenced = abuf->written;
1306     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
1307   }
1308   return cycles;
1309 #undef FLD
1310 }
1311
1312 UINT
1313 sh4_nofpu_sh4_nofpu_model::model_cmppz_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1314 {
1315 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1316   const sh4_nofpu_scache* abuf = sem;
1317   const sh4_nofpu_idesc* idesc = abuf->idesc;
1318   int cycles = 0;
1319   {
1320     INT in_usereg = -1;
1321     in_usereg = FLD (in_rn);
1322     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1323   }
1324   {
1325     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
1326   }
1327   {
1328     cycles += model_u_exec_before (current_cpu, idesc, 2);
1329   }
1330   {
1331     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
1332   }
1333   return cycles;
1334 #undef FLD
1335 }
1336
1337 UINT
1338 sh4_nofpu_sh4_nofpu_model::model_cmppz_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1339 {
1340 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1341   const sh4_nofpu_scache* abuf = sem;
1342   const sh4_nofpu_idesc* idesc = abuf->idesc;
1343   int cycles = 0;
1344   {
1345     int referenced = 0;
1346     unsigned long long insn_referenced = abuf->written;
1347     INT in_usereg = -1;
1348     in_usereg = FLD (in_rn);
1349     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1350   }
1351   {
1352     int referenced = 0;
1353     unsigned long long insn_referenced = abuf->written;
1354     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
1355   }
1356   {
1357     int referenced = 0;
1358     unsigned long long insn_referenced = abuf->written;
1359     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
1360   }
1361   {
1362     int referenced = 0;
1363     unsigned long long insn_referenced = abuf->written;
1364     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
1365   }
1366   return cycles;
1367 #undef FLD
1368 }
1369
1370 UINT
1371 sh4_nofpu_sh4_nofpu_model::model_cmpstr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1372 {
1373 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1374   const sh4_nofpu_scache* abuf = sem;
1375   const sh4_nofpu_idesc* idesc = abuf->idesc;
1376   int cycles = 0;
1377   {
1378     INT in_usereg = -1;
1379     in_usereg = FLD (in_rn);
1380     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1381   }
1382   {
1383     INT in_usereg = -1;
1384     in_usereg = FLD (in_rm);
1385     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1386   }
1387   {
1388     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1389   }
1390   {
1391     cycles += model_u_exec_before (current_cpu, idesc, 3);
1392   }
1393   {
1394     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1395   }
1396   return cycles;
1397 #undef FLD
1398 }
1399
1400 UINT
1401 sh4_nofpu_sh4_nofpu_model::model_cmpstr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1402 {
1403 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1404   const sh4_nofpu_scache* abuf = sem;
1405   const sh4_nofpu_idesc* idesc = abuf->idesc;
1406   int cycles = 0;
1407   {
1408     int referenced = 0;
1409     unsigned long long insn_referenced = abuf->written;
1410     INT in_usereg = -1;
1411     in_usereg = FLD (in_rn);
1412     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1413   }
1414   {
1415     int referenced = 0;
1416     unsigned long long insn_referenced = abuf->written;
1417     INT in_usereg = -1;
1418     in_usereg = FLD (in_rm);
1419     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1420   }
1421   {
1422     int referenced = 0;
1423     unsigned long long insn_referenced = abuf->written;
1424     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1425   }
1426   {
1427     int referenced = 0;
1428     unsigned long long insn_referenced = abuf->written;
1429     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1430   }
1431   {
1432     int referenced = 0;
1433     unsigned long long insn_referenced = abuf->written;
1434     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1435   }
1436   return cycles;
1437 #undef FLD
1438 }
1439
1440 UINT
1441 sh4_nofpu_sh4_nofpu_model::model_div0s_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1442 {
1443 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1444   const sh4_nofpu_scache* abuf = sem;
1445   const sh4_nofpu_idesc* idesc = abuf->idesc;
1446   int cycles = 0;
1447   {
1448     INT in_usereg = -1;
1449     in_usereg = FLD (in_rn);
1450     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1451   }
1452   {
1453     INT in_usereg = -1;
1454     in_usereg = FLD (in_rm);
1455     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1456   }
1457   {
1458     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1459   }
1460   {
1461     cycles += model_u_exec_before (current_cpu, idesc, 3);
1462   }
1463   {
1464     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1465   }
1466   return cycles;
1467 #undef FLD
1468 }
1469
1470 UINT
1471 sh4_nofpu_sh4_nofpu_model::model_div0s_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1472 {
1473 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1474   const sh4_nofpu_scache* abuf = sem;
1475   const sh4_nofpu_idesc* idesc = abuf->idesc;
1476   int cycles = 0;
1477   {
1478     int referenced = 0;
1479     unsigned long long insn_referenced = abuf->written;
1480     INT in_usereg = -1;
1481     in_usereg = FLD (in_rn);
1482     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1483   }
1484   {
1485     int referenced = 0;
1486     unsigned long long insn_referenced = abuf->written;
1487     INT in_usereg = -1;
1488     in_usereg = FLD (in_rm);
1489     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1490   }
1491   {
1492     int referenced = 0;
1493     unsigned long long insn_referenced = abuf->written;
1494     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1495   }
1496   {
1497     int referenced = 0;
1498     unsigned long long insn_referenced = abuf->written;
1499     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1500   }
1501   {
1502     int referenced = 0;
1503     unsigned long long insn_referenced = abuf->written;
1504     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1505   }
1506   return cycles;
1507 #undef FLD
1508 }
1509
1510 UINT
1511 sh4_nofpu_sh4_nofpu_model::model_div0u_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1512 {
1513 #define FLD(f) abuf->fields.fmt_empty.f
1514   const sh4_nofpu_scache* abuf = sem;
1515   const sh4_nofpu_idesc* idesc = abuf->idesc;
1516   int cycles = 0;
1517   {
1518     cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
1519   }
1520   {
1521     cycles += model_u_exec_before (current_cpu, idesc, 1);
1522   }
1523   {
1524     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 2);
1525   }
1526   return cycles;
1527 #undef FLD
1528 }
1529
1530 UINT
1531 sh4_nofpu_sh4_nofpu_model::model_div0u_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1532 {
1533 #define FLD(f) abuf->fields.fmt_empty.f
1534   const sh4_nofpu_scache* abuf = sem;
1535   const sh4_nofpu_idesc* idesc = abuf->idesc;
1536   int cycles = 0;
1537   {
1538     int referenced = 0;
1539     unsigned long long insn_referenced = abuf->written;
1540     cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
1541   }
1542   {
1543     int referenced = 0;
1544     unsigned long long insn_referenced = abuf->written;
1545     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1546   }
1547   {
1548     int referenced = 0;
1549     unsigned long long insn_referenced = abuf->written;
1550     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 2, referenced);
1551   }
1552   return cycles;
1553 #undef FLD
1554 }
1555
1556 UINT
1557 sh4_nofpu_sh4_nofpu_model::model_div1_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1558 {
1559 #define FLD(f) abuf->fields.sfmt_macl_compact.f
1560   const sh4_nofpu_scache* abuf = sem;
1561   const sh4_nofpu_idesc* idesc = abuf->idesc;
1562   int cycles = 0;
1563   {
1564     INT in_usereg = -1;
1565     in_usereg = FLD (in_rn);
1566     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1567   }
1568   {
1569     INT in_usereg = -1;
1570     in_usereg = FLD (in_rm);
1571     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1572   }
1573   {
1574     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
1575   }
1576   {
1577     cycles += model_u_exec_before (current_cpu, idesc, 3);
1578   }
1579   {
1580     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
1581   }
1582   return cycles;
1583 #undef FLD
1584 }
1585
1586 UINT
1587 sh4_nofpu_sh4_nofpu_model::model_div1_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1588 {
1589 #define FLD(f) abuf->fields.sfmt_macl_compact.f
1590   const sh4_nofpu_scache* abuf = sem;
1591   const sh4_nofpu_idesc* idesc = abuf->idesc;
1592   int cycles = 0;
1593   {
1594     int referenced = 0;
1595     unsigned long long insn_referenced = abuf->written;
1596     INT in_usereg = -1;
1597     in_usereg = FLD (in_rn);
1598     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1599   }
1600   {
1601     int referenced = 0;
1602     unsigned long long insn_referenced = abuf->written;
1603     INT in_usereg = -1;
1604     in_usereg = FLD (in_rm);
1605     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1606   }
1607   {
1608     int referenced = 0;
1609     unsigned long long insn_referenced = abuf->written;
1610     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
1611   }
1612   {
1613     int referenced = 0;
1614     unsigned long long insn_referenced = abuf->written;
1615     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
1616   }
1617   {
1618     int referenced = 0;
1619     unsigned long long insn_referenced = abuf->written;
1620     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
1621   }
1622   return cycles;
1623 #undef FLD
1624 }
1625
1626 UINT
1627 sh4_nofpu_sh4_nofpu_model::model_divu_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1628 {
1629 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1630   const sh4_nofpu_scache* abuf = sem;
1631   const sh4_nofpu_idesc* idesc = abuf->idesc;
1632   int cycles = 0;
1633   {
1634     INT in_usereg = -1;
1635     in_usereg = FLD (in_rn);
1636     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1637   }
1638   {
1639     INT in_usereg = -1;
1640     in_usereg = FLD (in_r0);
1641     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1642   }
1643   {
1644     cycles += model_u_exec_before (current_cpu, idesc, 2);
1645   }
1646   return cycles;
1647 #undef FLD
1648 }
1649
1650 UINT
1651 sh4_nofpu_sh4_nofpu_model::model_divu_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1652 {
1653 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1654   const sh4_nofpu_scache* abuf = sem;
1655   const sh4_nofpu_idesc* idesc = abuf->idesc;
1656   int cycles = 0;
1657   {
1658     int referenced = 0;
1659     unsigned long long insn_referenced = abuf->written;
1660     INT in_usereg = -1;
1661     in_usereg = FLD (in_rn);
1662     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1663   }
1664   {
1665     int referenced = 0;
1666     unsigned long long insn_referenced = abuf->written;
1667     INT in_usereg = -1;
1668     in_usereg = FLD (in_r0);
1669     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1670   }
1671   {
1672     int referenced = 0;
1673     unsigned long long insn_referenced = abuf->written;
1674     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
1675   }
1676   return cycles;
1677 #undef FLD
1678 }
1679
1680 UINT
1681 sh4_nofpu_sh4_nofpu_model::model_mulr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1682 {
1683 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1684   const sh4_nofpu_scache* abuf = sem;
1685   const sh4_nofpu_idesc* idesc = abuf->idesc;
1686   int cycles = 0;
1687   {
1688     INT in_usereg = -1;
1689     in_usereg = FLD (in_rn);
1690     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1691   }
1692   {
1693     INT in_usereg = -1;
1694     in_usereg = FLD (in_r0);
1695     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1696   }
1697   {
1698     cycles += model_u_mulr_before (current_cpu, idesc, 2);
1699   }
1700   {
1701     INT out_loadreg = -1;
1702     out_loadreg = FLD (out_rn);
1703     cycles += model_u_mulr_gr_before (current_cpu, idesc, 3, out_loadreg);
1704   }
1705   return cycles;
1706 #undef FLD
1707 }
1708
1709 UINT
1710 sh4_nofpu_sh4_nofpu_model::model_mulr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1711 {
1712 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1713   const sh4_nofpu_scache* abuf = sem;
1714   const sh4_nofpu_idesc* idesc = abuf->idesc;
1715   int cycles = 0;
1716   {
1717     int referenced = 0;
1718     unsigned long long insn_referenced = abuf->written;
1719     INT in_usereg = -1;
1720     in_usereg = FLD (in_rn);
1721     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1722   }
1723   {
1724     int referenced = 0;
1725     unsigned long long insn_referenced = abuf->written;
1726     INT in_usereg = -1;
1727     in_usereg = FLD (in_r0);
1728     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1729   }
1730   {
1731     int referenced = 0;
1732     unsigned long long insn_referenced = abuf->written;
1733     cycles += model_u_mulr_after (current_cpu, idesc, 2, referenced);
1734   }
1735   {
1736     int referenced = 0;
1737     unsigned long long insn_referenced = abuf->written;
1738     INT out_loadreg = -1;
1739     out_loadreg = FLD (out_rn);
1740     cycles += model_u_mulr_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
1741   }
1742   return cycles;
1743 #undef FLD
1744 }
1745
1746 UINT
1747 sh4_nofpu_sh4_nofpu_model::model_dmulsl_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1748 {
1749 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1750   const sh4_nofpu_scache* abuf = sem;
1751   const sh4_nofpu_idesc* idesc = abuf->idesc;
1752   int cycles = 0;
1753   {
1754     INT in_usereg = -1;
1755     in_usereg = FLD (in_rn);
1756     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1757   }
1758   {
1759     INT in_usereg = -1;
1760     in_usereg = FLD (in_rm);
1761     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1762   }
1763   {
1764     cycles += model_u_dmul_before (current_cpu, idesc, 2);
1765   }
1766   return cycles;
1767 #undef FLD
1768 }
1769
1770 UINT
1771 sh4_nofpu_sh4_nofpu_model::model_dmulsl_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1772 {
1773 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1774   const sh4_nofpu_scache* abuf = sem;
1775   const sh4_nofpu_idesc* idesc = abuf->idesc;
1776   int cycles = 0;
1777   {
1778     int referenced = 0;
1779     unsigned long long insn_referenced = abuf->written;
1780     INT in_usereg = -1;
1781     in_usereg = FLD (in_rn);
1782     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1783   }
1784   {
1785     int referenced = 0;
1786     unsigned long long insn_referenced = abuf->written;
1787     INT in_usereg = -1;
1788     in_usereg = FLD (in_rm);
1789     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1790   }
1791   {
1792     int referenced = 0;
1793     unsigned long long insn_referenced = abuf->written;
1794     cycles += model_u_dmul_after (current_cpu, idesc, 2, referenced);
1795   }
1796   return cycles;
1797 #undef FLD
1798 }
1799
1800 UINT
1801 sh4_nofpu_sh4_nofpu_model::model_dmulul_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1802 {
1803 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1804   const sh4_nofpu_scache* abuf = sem;
1805   const sh4_nofpu_idesc* idesc = abuf->idesc;
1806   int cycles = 0;
1807   {
1808     INT in_usereg = -1;
1809     in_usereg = FLD (in_rn);
1810     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1811   }
1812   {
1813     INT in_usereg = -1;
1814     in_usereg = FLD (in_rm);
1815     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
1816   }
1817   {
1818     cycles += model_u_dmul_before (current_cpu, idesc, 2);
1819   }
1820   return cycles;
1821 #undef FLD
1822 }
1823
1824 UINT
1825 sh4_nofpu_sh4_nofpu_model::model_dmulul_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1826 {
1827 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
1828   const sh4_nofpu_scache* abuf = sem;
1829   const sh4_nofpu_idesc* idesc = abuf->idesc;
1830   int cycles = 0;
1831   {
1832     int referenced = 0;
1833     unsigned long long insn_referenced = abuf->written;
1834     INT in_usereg = -1;
1835     in_usereg = FLD (in_rn);
1836     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1837   }
1838   {
1839     int referenced = 0;
1840     unsigned long long insn_referenced = abuf->written;
1841     INT in_usereg = -1;
1842     in_usereg = FLD (in_rm);
1843     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
1844   }
1845   {
1846     int referenced = 0;
1847     unsigned long long insn_referenced = abuf->written;
1848     cycles += model_u_dmul_after (current_cpu, idesc, 2, referenced);
1849   }
1850   return cycles;
1851 #undef FLD
1852 }
1853
1854 UINT
1855 sh4_nofpu_sh4_nofpu_model::model_dt_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1856 {
1857 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1858   const sh4_nofpu_scache* abuf = sem;
1859   const sh4_nofpu_idesc* idesc = abuf->idesc;
1860   int cycles = 0;
1861   {
1862     INT in_usereg = -1;
1863     in_usereg = FLD (in_rn);
1864     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1865   }
1866   {
1867     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
1868   }
1869   {
1870     cycles += model_u_exec_before (current_cpu, idesc, 2);
1871   }
1872   {
1873     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
1874   }
1875   return cycles;
1876 #undef FLD
1877 }
1878
1879 UINT
1880 sh4_nofpu_sh4_nofpu_model::model_dt_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1881 {
1882 #define FLD(f) abuf->fields.sfmt_divu_compact.f
1883   const sh4_nofpu_scache* abuf = sem;
1884   const sh4_nofpu_idesc* idesc = abuf->idesc;
1885   int cycles = 0;
1886   {
1887     int referenced = 0;
1888     unsigned long long insn_referenced = abuf->written;
1889     INT in_usereg = -1;
1890     in_usereg = FLD (in_rn);
1891     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1892   }
1893   {
1894     int referenced = 0;
1895     unsigned long long insn_referenced = abuf->written;
1896     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
1897   }
1898   {
1899     int referenced = 0;
1900     unsigned long long insn_referenced = abuf->written;
1901     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
1902   }
1903   {
1904     int referenced = 0;
1905     unsigned long long insn_referenced = abuf->written;
1906     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
1907   }
1908   return cycles;
1909 #undef FLD
1910 }
1911
1912 UINT
1913 sh4_nofpu_sh4_nofpu_model::model_extsb_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1914 {
1915 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
1916   const sh4_nofpu_scache* abuf = sem;
1917   const sh4_nofpu_idesc* idesc = abuf->idesc;
1918   int cycles = 0;
1919   {
1920     INT in_usereg = -1;
1921     in_usereg = FLD (in_rm);
1922     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1923   }
1924   {
1925     cycles += model_u_exec_before (current_cpu, idesc, 1);
1926   }
1927   {
1928     cycles += model_u_shift_before (current_cpu, idesc, 2);
1929   }
1930   return cycles;
1931 #undef FLD
1932 }
1933
1934 UINT
1935 sh4_nofpu_sh4_nofpu_model::model_extsb_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1936 {
1937 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
1938   const sh4_nofpu_scache* abuf = sem;
1939   const sh4_nofpu_idesc* idesc = abuf->idesc;
1940   int cycles = 0;
1941   {
1942     int referenced = 0;
1943     unsigned long long insn_referenced = abuf->written;
1944     INT in_usereg = -1;
1945     in_usereg = FLD (in_rm);
1946     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1947   }
1948   {
1949     int referenced = 0;
1950     unsigned long long insn_referenced = abuf->written;
1951     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
1952   }
1953   {
1954     int referenced = 0;
1955     unsigned long long insn_referenced = abuf->written;
1956     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
1957   }
1958   return cycles;
1959 #undef FLD
1960 }
1961
1962 UINT
1963 sh4_nofpu_sh4_nofpu_model::model_extsw_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1964 {
1965 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
1966   const sh4_nofpu_scache* abuf = sem;
1967   const sh4_nofpu_idesc* idesc = abuf->idesc;
1968   int cycles = 0;
1969   {
1970     INT in_usereg = -1;
1971     in_usereg = FLD (in_rm);
1972     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
1973   }
1974   {
1975     cycles += model_u_exec_before (current_cpu, idesc, 1);
1976   }
1977   {
1978     cycles += model_u_shift_before (current_cpu, idesc, 2);
1979   }
1980   return cycles;
1981 #undef FLD
1982 }
1983
1984 UINT
1985 sh4_nofpu_sh4_nofpu_model::model_extsw_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
1986 {
1987 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
1988   const sh4_nofpu_scache* abuf = sem;
1989   const sh4_nofpu_idesc* idesc = abuf->idesc;
1990   int cycles = 0;
1991   {
1992     int referenced = 0;
1993     unsigned long long insn_referenced = abuf->written;
1994     INT in_usereg = -1;
1995     in_usereg = FLD (in_rm);
1996     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
1997   }
1998   {
1999     int referenced = 0;
2000     unsigned long long insn_referenced = abuf->written;
2001     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2002   }
2003   {
2004     int referenced = 0;
2005     unsigned long long insn_referenced = abuf->written;
2006     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
2007   }
2008   return cycles;
2009 #undef FLD
2010 }
2011
2012 UINT
2013 sh4_nofpu_sh4_nofpu_model::model_extub_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2014 {
2015 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
2016   const sh4_nofpu_scache* abuf = sem;
2017   const sh4_nofpu_idesc* idesc = abuf->idesc;
2018   int cycles = 0;
2019   {
2020     INT in_usereg = -1;
2021     in_usereg = FLD (in_rm);
2022     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2023   }
2024   {
2025     cycles += model_u_exec_before (current_cpu, idesc, 1);
2026   }
2027   {
2028     cycles += model_u_shift_before (current_cpu, idesc, 2);
2029   }
2030   return cycles;
2031 #undef FLD
2032 }
2033
2034 UINT
2035 sh4_nofpu_sh4_nofpu_model::model_extub_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2036 {
2037 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
2038   const sh4_nofpu_scache* abuf = sem;
2039   const sh4_nofpu_idesc* idesc = abuf->idesc;
2040   int cycles = 0;
2041   {
2042     int referenced = 0;
2043     unsigned long long insn_referenced = abuf->written;
2044     INT in_usereg = -1;
2045     in_usereg = FLD (in_rm);
2046     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2047   }
2048   {
2049     int referenced = 0;
2050     unsigned long long insn_referenced = abuf->written;
2051     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2052   }
2053   {
2054     int referenced = 0;
2055     unsigned long long insn_referenced = abuf->written;
2056     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
2057   }
2058   return cycles;
2059 #undef FLD
2060 }
2061
2062 UINT
2063 sh4_nofpu_sh4_nofpu_model::model_extuw_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2064 {
2065 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
2066   const sh4_nofpu_scache* abuf = sem;
2067   const sh4_nofpu_idesc* idesc = abuf->idesc;
2068   int cycles = 0;
2069   {
2070     INT in_usereg = -1;
2071     in_usereg = FLD (in_rm);
2072     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2073   }
2074   {
2075     cycles += model_u_exec_before (current_cpu, idesc, 1);
2076   }
2077   {
2078     cycles += model_u_shift_before (current_cpu, idesc, 2);
2079   }
2080   return cycles;
2081 #undef FLD
2082 }
2083
2084 UINT
2085 sh4_nofpu_sh4_nofpu_model::model_extuw_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2086 {
2087 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
2088   const sh4_nofpu_scache* abuf = sem;
2089   const sh4_nofpu_idesc* idesc = abuf->idesc;
2090   int cycles = 0;
2091   {
2092     int referenced = 0;
2093     unsigned long long insn_referenced = abuf->written;
2094     INT in_usereg = -1;
2095     in_usereg = FLD (in_rm);
2096     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2097   }
2098   {
2099     int referenced = 0;
2100     unsigned long long insn_referenced = abuf->written;
2101     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2102   }
2103   {
2104     int referenced = 0;
2105     unsigned long long insn_referenced = abuf->written;
2106     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
2107   }
2108   return cycles;
2109 #undef FLD
2110 }
2111
2112 UINT
2113 sh4_nofpu_sh4_nofpu_model::model_frchg_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2114 {
2115 #define FLD(f) abuf->fields.fmt_empty.f
2116   const sh4_nofpu_scache* abuf = sem;
2117   const sh4_nofpu_idesc* idesc = abuf->idesc;
2118   int cycles = 0;
2119   {
2120     cycles += model_u_exec_before (current_cpu, idesc, 0);
2121   }
2122   return cycles;
2123 #undef FLD
2124 }
2125
2126 UINT
2127 sh4_nofpu_sh4_nofpu_model::model_frchg_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2128 {
2129 #define FLD(f) abuf->fields.fmt_empty.f
2130   const sh4_nofpu_scache* abuf = sem;
2131   const sh4_nofpu_idesc* idesc = abuf->idesc;
2132   int cycles = 0;
2133   {
2134     int referenced = 0;
2135     unsigned long long insn_referenced = abuf->written;
2136     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
2137   }
2138   return cycles;
2139 #undef FLD
2140 }
2141
2142 UINT
2143 sh4_nofpu_sh4_nofpu_model::model_fschg_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2144 {
2145 #define FLD(f) abuf->fields.fmt_empty.f
2146   const sh4_nofpu_scache* abuf = sem;
2147   const sh4_nofpu_idesc* idesc = abuf->idesc;
2148   int cycles = 0;
2149   {
2150     cycles += model_u_exec_before (current_cpu, idesc, 0);
2151   }
2152   return cycles;
2153 #undef FLD
2154 }
2155
2156 UINT
2157 sh4_nofpu_sh4_nofpu_model::model_fschg_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2158 {
2159 #define FLD(f) abuf->fields.fmt_empty.f
2160   const sh4_nofpu_scache* abuf = sem;
2161   const sh4_nofpu_idesc* idesc = abuf->idesc;
2162   int cycles = 0;
2163   {
2164     int referenced = 0;
2165     unsigned long long insn_referenced = abuf->written;
2166     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
2167   }
2168   return cycles;
2169 #undef FLD
2170 }
2171
2172 UINT
2173 sh4_nofpu_sh4_nofpu_model::model_jmp_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2174 {
2175 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2176   const sh4_nofpu_scache* abuf = sem;
2177   const sh4_nofpu_idesc* idesc = abuf->idesc;
2178   int cycles = 0;
2179   {
2180     cycles += model_u_jmp_before (current_cpu, idesc, 0);
2181   }
2182   return cycles;
2183 #undef FLD
2184 }
2185
2186 UINT
2187 sh4_nofpu_sh4_nofpu_model::model_jmp_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2188 {
2189 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2190   const sh4_nofpu_scache* abuf = sem;
2191   const sh4_nofpu_idesc* idesc = abuf->idesc;
2192   int cycles = 0;
2193   {
2194     int referenced = 0;
2195     unsigned long long insn_referenced = abuf->written;
2196     referenced |= 1 << 0;
2197     cycles += model_u_jmp_after (current_cpu, idesc, 0, referenced);
2198   }
2199   return cycles;
2200 #undef FLD
2201 }
2202
2203 UINT
2204 sh4_nofpu_sh4_nofpu_model::model_jsr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2205 {
2206 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2207   const sh4_nofpu_scache* abuf = sem;
2208   const sh4_nofpu_idesc* idesc = abuf->idesc;
2209   int cycles = 0;
2210   {
2211     cycles += model_u_jsr_before (current_cpu, idesc, 0);
2212   }
2213   return cycles;
2214 #undef FLD
2215 }
2216
2217 UINT
2218 sh4_nofpu_sh4_nofpu_model::model_jsr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2219 {
2220 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2221   const sh4_nofpu_scache* abuf = sem;
2222   const sh4_nofpu_idesc* idesc = abuf->idesc;
2223   int cycles = 0;
2224   {
2225     int referenced = 0;
2226     unsigned long long insn_referenced = abuf->written;
2227     referenced |= 1 << 0;
2228     cycles += model_u_jsr_after (current_cpu, idesc, 0, referenced);
2229   }
2230   return cycles;
2231 #undef FLD
2232 }
2233
2234 UINT
2235 sh4_nofpu_sh4_nofpu_model::model_ldc_gbr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2236 {
2237 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2238   const sh4_nofpu_scache* abuf = sem;
2239   const sh4_nofpu_idesc* idesc = abuf->idesc;
2240   int cycles = 0;
2241   {
2242     INT in_usereg = -1;
2243     in_usereg = FLD (in_rn);
2244     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2245   }
2246   {
2247     cycles += model_u_ldc_gbr_before (current_cpu, idesc, 1);
2248   }
2249   return cycles;
2250 #undef FLD
2251 }
2252
2253 UINT
2254 sh4_nofpu_sh4_nofpu_model::model_ldc_gbr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2255 {
2256 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2257   const sh4_nofpu_scache* abuf = sem;
2258   const sh4_nofpu_idesc* idesc = abuf->idesc;
2259   int cycles = 0;
2260   {
2261     int referenced = 0;
2262     unsigned long long insn_referenced = abuf->written;
2263     INT in_usereg = -1;
2264     in_usereg = FLD (in_rn);
2265     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2266   }
2267   {
2268     int referenced = 0;
2269     unsigned long long insn_referenced = abuf->written;
2270     cycles += model_u_ldc_gbr_after (current_cpu, idesc, 1, referenced);
2271   }
2272   return cycles;
2273 #undef FLD
2274 }
2275
2276 UINT
2277 sh4_nofpu_sh4_nofpu_model::model_ldc_vbr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2278 {
2279 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2280   const sh4_nofpu_scache* abuf = sem;
2281   const sh4_nofpu_idesc* idesc = abuf->idesc;
2282   int cycles = 0;
2283   {
2284     INT in_usereg = -1;
2285     in_usereg = FLD (in_rn);
2286     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2287   }
2288   {
2289     cycles += model_u_exec_before (current_cpu, idesc, 1);
2290   }
2291   return cycles;
2292 #undef FLD
2293 }
2294
2295 UINT
2296 sh4_nofpu_sh4_nofpu_model::model_ldc_vbr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2297 {
2298 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2299   const sh4_nofpu_scache* abuf = sem;
2300   const sh4_nofpu_idesc* idesc = abuf->idesc;
2301   int cycles = 0;
2302   {
2303     int referenced = 0;
2304     unsigned long long insn_referenced = abuf->written;
2305     INT in_usereg = -1;
2306     in_usereg = FLD (in_rn);
2307     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2308   }
2309   {
2310     int referenced = 0;
2311     unsigned long long insn_referenced = abuf->written;
2312     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2313   }
2314   return cycles;
2315 #undef FLD
2316 }
2317
2318 UINT
2319 sh4_nofpu_sh4_nofpu_model::model_ldc_sr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2320 {
2321 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2322   const sh4_nofpu_scache* abuf = sem;
2323   const sh4_nofpu_idesc* idesc = abuf->idesc;
2324   int cycles = 0;
2325   {
2326     INT in_usereg = -1;
2327     in_usereg = FLD (in_rn);
2328     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2329   }
2330   {
2331     cycles += model_u_ldc_sr_before (current_cpu, idesc, 1);
2332   }
2333   return cycles;
2334 #undef FLD
2335 }
2336
2337 UINT
2338 sh4_nofpu_sh4_nofpu_model::model_ldc_sr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2339 {
2340 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2341   const sh4_nofpu_scache* abuf = sem;
2342   const sh4_nofpu_idesc* idesc = abuf->idesc;
2343   int cycles = 0;
2344   {
2345     int referenced = 0;
2346     unsigned long long insn_referenced = abuf->written;
2347     INT in_usereg = -1;
2348     in_usereg = FLD (in_rn);
2349     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2350   }
2351   {
2352     int referenced = 0;
2353     unsigned long long insn_referenced = abuf->written;
2354     cycles += model_u_ldc_sr_after (current_cpu, idesc, 1, referenced);
2355   }
2356   return cycles;
2357 #undef FLD
2358 }
2359
2360 UINT
2361 sh4_nofpu_sh4_nofpu_model::model_ldcl_gbr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2362 {
2363 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2364   const sh4_nofpu_scache* abuf = sem;
2365   const sh4_nofpu_idesc* idesc = abuf->idesc;
2366   int cycles = 0;
2367   {
2368     INT in_usereg = -1;
2369     in_usereg = FLD (in_rn);
2370     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2371   }
2372   {
2373     cycles += model_u_ldcl_before (current_cpu, idesc, 1);
2374   }
2375   {
2376     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
2377   }
2378   {
2379     cycles += model_u_load_gbr_before (current_cpu, idesc, 3);
2380   }
2381   return cycles;
2382 #undef FLD
2383 }
2384
2385 UINT
2386 sh4_nofpu_sh4_nofpu_model::model_ldcl_gbr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2387 {
2388 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2389   const sh4_nofpu_scache* abuf = sem;
2390   const sh4_nofpu_idesc* idesc = abuf->idesc;
2391   int cycles = 0;
2392   {
2393     int referenced = 0;
2394     unsigned long long insn_referenced = abuf->written;
2395     INT in_usereg = -1;
2396     in_usereg = FLD (in_rn);
2397     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2398   }
2399   {
2400     int referenced = 0;
2401     unsigned long long insn_referenced = abuf->written;
2402     cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
2403   }
2404   {
2405     int referenced = 0;
2406     unsigned long long insn_referenced = abuf->written;
2407     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
2408   }
2409   {
2410     int referenced = 0;
2411     unsigned long long insn_referenced = abuf->written;
2412     cycles += model_u_load_gbr_after (current_cpu, idesc, 3, referenced);
2413   }
2414   return cycles;
2415 #undef FLD
2416 }
2417
2418 UINT
2419 sh4_nofpu_sh4_nofpu_model::model_ldcl_vbr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2420 {
2421 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2422   const sh4_nofpu_scache* abuf = sem;
2423   const sh4_nofpu_idesc* idesc = abuf->idesc;
2424   int cycles = 0;
2425   {
2426     INT in_usereg = -1;
2427     in_usereg = FLD (in_rn);
2428     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2429   }
2430   {
2431     cycles += model_u_ldcl_vbr_before (current_cpu, idesc, 1);
2432   }
2433   {
2434     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
2435   }
2436   {
2437     cycles += model_u_load_vbr_before (current_cpu, idesc, 3);
2438   }
2439   return cycles;
2440 #undef FLD
2441 }
2442
2443 UINT
2444 sh4_nofpu_sh4_nofpu_model::model_ldcl_vbr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2445 {
2446 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2447   const sh4_nofpu_scache* abuf = sem;
2448   const sh4_nofpu_idesc* idesc = abuf->idesc;
2449   int cycles = 0;
2450   {
2451     int referenced = 0;
2452     unsigned long long insn_referenced = abuf->written;
2453     INT in_usereg = -1;
2454     in_usereg = FLD (in_rn);
2455     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2456   }
2457   {
2458     int referenced = 0;
2459     unsigned long long insn_referenced = abuf->written;
2460     cycles += model_u_ldcl_vbr_after (current_cpu, idesc, 1, referenced);
2461   }
2462   {
2463     int referenced = 0;
2464     unsigned long long insn_referenced = abuf->written;
2465     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
2466   }
2467   {
2468     int referenced = 0;
2469     unsigned long long insn_referenced = abuf->written;
2470     cycles += model_u_load_vbr_after (current_cpu, idesc, 3, referenced);
2471   }
2472   return cycles;
2473 #undef FLD
2474 }
2475
2476 UINT
2477 sh4_nofpu_sh4_nofpu_model::model_lds_mach_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2478 {
2479 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2480   const sh4_nofpu_scache* abuf = sem;
2481   const sh4_nofpu_idesc* idesc = abuf->idesc;
2482   int cycles = 0;
2483   {
2484     INT in_usereg = -1;
2485     in_usereg = FLD (in_rn);
2486     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2487   }
2488   {
2489     cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
2490   }
2491   {
2492     cycles += model_u_exec_before (current_cpu, idesc, 2);
2493   }
2494   {
2495     cycles += model_u_set_mac_before (current_cpu, idesc, 3);
2496   }
2497   return cycles;
2498 #undef FLD
2499 }
2500
2501 UINT
2502 sh4_nofpu_sh4_nofpu_model::model_lds_mach_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2503 {
2504 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2505   const sh4_nofpu_scache* abuf = sem;
2506   const sh4_nofpu_idesc* idesc = abuf->idesc;
2507   int cycles = 0;
2508   {
2509     int referenced = 0;
2510     unsigned long long insn_referenced = abuf->written;
2511     INT in_usereg = -1;
2512     in_usereg = FLD (in_rn);
2513     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2514   }
2515   {
2516     int referenced = 0;
2517     unsigned long long insn_referenced = abuf->written;
2518     cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
2519   }
2520   {
2521     int referenced = 0;
2522     unsigned long long insn_referenced = abuf->written;
2523     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2524   }
2525   {
2526     int referenced = 0;
2527     unsigned long long insn_referenced = abuf->written;
2528     cycles += model_u_set_mac_after (current_cpu, idesc, 3, referenced);
2529   }
2530   return cycles;
2531 #undef FLD
2532 }
2533
2534 UINT
2535 sh4_nofpu_sh4_nofpu_model::model_ldsl_mach_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2536 {
2537 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2538   const sh4_nofpu_scache* abuf = sem;
2539   const sh4_nofpu_idesc* idesc = abuf->idesc;
2540   int cycles = 0;
2541   {
2542     INT in_usereg = -1;
2543     in_usereg = FLD (in_rn);
2544     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2545   }
2546   {
2547     cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
2548   }
2549   {
2550     cycles += model_u_exec_before (current_cpu, idesc, 2);
2551   }
2552   {
2553     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
2554   }
2555   {
2556     cycles += model_u_load_mac_before (current_cpu, idesc, 4);
2557   }
2558   return cycles;
2559 #undef FLD
2560 }
2561
2562 UINT
2563 sh4_nofpu_sh4_nofpu_model::model_ldsl_mach_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2564 {
2565 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2566   const sh4_nofpu_scache* abuf = sem;
2567   const sh4_nofpu_idesc* idesc = abuf->idesc;
2568   int cycles = 0;
2569   {
2570     int referenced = 0;
2571     unsigned long long insn_referenced = abuf->written;
2572     INT in_usereg = -1;
2573     in_usereg = FLD (in_rn);
2574     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2575   }
2576   {
2577     int referenced = 0;
2578     unsigned long long insn_referenced = abuf->written;
2579     cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
2580   }
2581   {
2582     int referenced = 0;
2583     unsigned long long insn_referenced = abuf->written;
2584     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2585   }
2586   {
2587     int referenced = 0;
2588     unsigned long long insn_referenced = abuf->written;
2589     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
2590   }
2591   {
2592     int referenced = 0;
2593     unsigned long long insn_referenced = abuf->written;
2594     cycles += model_u_load_mac_after (current_cpu, idesc, 4, referenced);
2595   }
2596   return cycles;
2597 #undef FLD
2598 }
2599
2600 UINT
2601 sh4_nofpu_sh4_nofpu_model::model_lds_macl_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2602 {
2603 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2604   const sh4_nofpu_scache* abuf = sem;
2605   const sh4_nofpu_idesc* idesc = abuf->idesc;
2606   int cycles = 0;
2607   {
2608     INT in_usereg = -1;
2609     in_usereg = FLD (in_rn);
2610     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2611   }
2612   {
2613     cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
2614   }
2615   {
2616     cycles += model_u_exec_before (current_cpu, idesc, 2);
2617   }
2618   {
2619     cycles += model_u_set_mac_before (current_cpu, idesc, 3);
2620   }
2621   return cycles;
2622 #undef FLD
2623 }
2624
2625 UINT
2626 sh4_nofpu_sh4_nofpu_model::model_lds_macl_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2627 {
2628 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2629   const sh4_nofpu_scache* abuf = sem;
2630   const sh4_nofpu_idesc* idesc = abuf->idesc;
2631   int cycles = 0;
2632   {
2633     int referenced = 0;
2634     unsigned long long insn_referenced = abuf->written;
2635     INT in_usereg = -1;
2636     in_usereg = FLD (in_rn);
2637     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2638   }
2639   {
2640     int referenced = 0;
2641     unsigned long long insn_referenced = abuf->written;
2642     cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
2643   }
2644   {
2645     int referenced = 0;
2646     unsigned long long insn_referenced = abuf->written;
2647     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2648   }
2649   {
2650     int referenced = 0;
2651     unsigned long long insn_referenced = abuf->written;
2652     cycles += model_u_set_mac_after (current_cpu, idesc, 3, referenced);
2653   }
2654   return cycles;
2655 #undef FLD
2656 }
2657
2658 UINT
2659 sh4_nofpu_sh4_nofpu_model::model_ldsl_macl_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2660 {
2661 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2662   const sh4_nofpu_scache* abuf = sem;
2663   const sh4_nofpu_idesc* idesc = abuf->idesc;
2664   int cycles = 0;
2665   {
2666     INT in_usereg = -1;
2667     in_usereg = FLD (in_rn);
2668     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2669   }
2670   {
2671     cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
2672   }
2673   {
2674     cycles += model_u_exec_before (current_cpu, idesc, 2);
2675   }
2676   {
2677     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
2678   }
2679   {
2680     cycles += model_u_load_mac_before (current_cpu, idesc, 4);
2681   }
2682   return cycles;
2683 #undef FLD
2684 }
2685
2686 UINT
2687 sh4_nofpu_sh4_nofpu_model::model_ldsl_macl_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2688 {
2689 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2690   const sh4_nofpu_scache* abuf = sem;
2691   const sh4_nofpu_idesc* idesc = abuf->idesc;
2692   int cycles = 0;
2693   {
2694     int referenced = 0;
2695     unsigned long long insn_referenced = abuf->written;
2696     INT in_usereg = -1;
2697     in_usereg = FLD (in_rn);
2698     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2699   }
2700   {
2701     int referenced = 0;
2702     unsigned long long insn_referenced = abuf->written;
2703     cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
2704   }
2705   {
2706     int referenced = 0;
2707     unsigned long long insn_referenced = abuf->written;
2708     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
2709   }
2710   {
2711     int referenced = 0;
2712     unsigned long long insn_referenced = abuf->written;
2713     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
2714   }
2715   {
2716     int referenced = 0;
2717     unsigned long long insn_referenced = abuf->written;
2718     cycles += model_u_load_mac_after (current_cpu, idesc, 4, referenced);
2719   }
2720   return cycles;
2721 #undef FLD
2722 }
2723
2724 UINT
2725 sh4_nofpu_sh4_nofpu_model::model_lds_pr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2726 {
2727 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2728   const sh4_nofpu_scache* abuf = sem;
2729   const sh4_nofpu_idesc* idesc = abuf->idesc;
2730   int cycles = 0;
2731   {
2732     INT in_usereg = -1;
2733     in_usereg = FLD (in_rn);
2734     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2735   }
2736   {
2737     cycles += model_u_lds_pr_before (current_cpu, idesc, 1);
2738   }
2739   return cycles;
2740 #undef FLD
2741 }
2742
2743 UINT
2744 sh4_nofpu_sh4_nofpu_model::model_lds_pr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2745 {
2746 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2747   const sh4_nofpu_scache* abuf = sem;
2748   const sh4_nofpu_idesc* idesc = abuf->idesc;
2749   int cycles = 0;
2750   {
2751     int referenced = 0;
2752     unsigned long long insn_referenced = abuf->written;
2753     INT in_usereg = -1;
2754     in_usereg = FLD (in_rn);
2755     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2756   }
2757   {
2758     int referenced = 0;
2759     unsigned long long insn_referenced = abuf->written;
2760     cycles += model_u_lds_pr_after (current_cpu, idesc, 1, referenced);
2761   }
2762   return cycles;
2763 #undef FLD
2764 }
2765
2766 UINT
2767 sh4_nofpu_sh4_nofpu_model::model_ldsl_pr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2768 {
2769 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2770   const sh4_nofpu_scache* abuf = sem;
2771   const sh4_nofpu_idesc* idesc = abuf->idesc;
2772   int cycles = 0;
2773   {
2774     INT in_usereg = -1;
2775     in_usereg = FLD (in_rn);
2776     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2777   }
2778   {
2779     cycles += model_u_lds_pr_before (current_cpu, idesc, 1);
2780   }
2781   {
2782     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
2783   }
2784   {
2785     cycles += model_u_load_pr_before (current_cpu, idesc, 3);
2786   }
2787   return cycles;
2788 #undef FLD
2789 }
2790
2791 UINT
2792 sh4_nofpu_sh4_nofpu_model::model_ldsl_pr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2793 {
2794 #define FLD(f) abuf->fields.sfmt_divu_compact.f
2795   const sh4_nofpu_scache* abuf = sem;
2796   const sh4_nofpu_idesc* idesc = abuf->idesc;
2797   int cycles = 0;
2798   {
2799     int referenced = 0;
2800     unsigned long long insn_referenced = abuf->written;
2801     INT in_usereg = -1;
2802     in_usereg = FLD (in_rn);
2803     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2804   }
2805   {
2806     int referenced = 0;
2807     unsigned long long insn_referenced = abuf->written;
2808     cycles += model_u_lds_pr_after (current_cpu, idesc, 1, referenced);
2809   }
2810   {
2811     int referenced = 0;
2812     unsigned long long insn_referenced = abuf->written;
2813     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
2814   }
2815   {
2816     int referenced = 0;
2817     unsigned long long insn_referenced = abuf->written;
2818     cycles += model_u_load_pr_after (current_cpu, idesc, 3, referenced);
2819   }
2820   return cycles;
2821 #undef FLD
2822 }
2823
2824 UINT
2825 sh4_nofpu_sh4_nofpu_model::model_macl_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2826 {
2827 #define FLD(f) abuf->fields.sfmt_macl_compact.f
2828   const sh4_nofpu_scache* abuf = sem;
2829   const sh4_nofpu_idesc* idesc = abuf->idesc;
2830   int cycles = 0;
2831   {
2832     INT in_usereg = -1;
2833     in_usereg = FLD (in_rn);
2834     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2835   }
2836   {
2837     INT in_usereg = -1;
2838     in_usereg = FLD (in_rm);
2839     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
2840   }
2841   {
2842     cycles += model_u_macl_before (current_cpu, idesc, 2);
2843   }
2844   return cycles;
2845 #undef FLD
2846 }
2847
2848 UINT
2849 sh4_nofpu_sh4_nofpu_model::model_macl_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2850 {
2851 #define FLD(f) abuf->fields.sfmt_macl_compact.f
2852   const sh4_nofpu_scache* abuf = sem;
2853   const sh4_nofpu_idesc* idesc = abuf->idesc;
2854   int cycles = 0;
2855   {
2856     int referenced = 0;
2857     unsigned long long insn_referenced = abuf->written;
2858     INT in_usereg = -1;
2859     in_usereg = FLD (in_rn);
2860     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2861   }
2862   {
2863     int referenced = 0;
2864     unsigned long long insn_referenced = abuf->written;
2865     INT in_usereg = -1;
2866     in_usereg = FLD (in_rm);
2867     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
2868   }
2869   {
2870     int referenced = 0;
2871     unsigned long long insn_referenced = abuf->written;
2872     cycles += model_u_macl_after (current_cpu, idesc, 2, referenced);
2873   }
2874   return cycles;
2875 #undef FLD
2876 }
2877
2878 UINT
2879 sh4_nofpu_sh4_nofpu_model::model_macw_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2880 {
2881 #define FLD(f) abuf->fields.sfmt_macl_compact.f
2882   const sh4_nofpu_scache* abuf = sem;
2883   const sh4_nofpu_idesc* idesc = abuf->idesc;
2884   int cycles = 0;
2885   {
2886     INT in_usereg = -1;
2887     in_usereg = FLD (in_rn);
2888     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2889   }
2890   {
2891     INT in_usereg = -1;
2892     in_usereg = FLD (in_rm);
2893     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
2894   }
2895   {
2896     cycles += model_u_macw_before (current_cpu, idesc, 2);
2897   }
2898   return cycles;
2899 #undef FLD
2900 }
2901
2902 UINT
2903 sh4_nofpu_sh4_nofpu_model::model_macw_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2904 {
2905 #define FLD(f) abuf->fields.sfmt_macl_compact.f
2906   const sh4_nofpu_scache* abuf = sem;
2907   const sh4_nofpu_idesc* idesc = abuf->idesc;
2908   int cycles = 0;
2909   {
2910     int referenced = 0;
2911     unsigned long long insn_referenced = abuf->written;
2912     INT in_usereg = -1;
2913     in_usereg = FLD (in_rn);
2914     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2915   }
2916   {
2917     int referenced = 0;
2918     unsigned long long insn_referenced = abuf->written;
2919     INT in_usereg = -1;
2920     in_usereg = FLD (in_rm);
2921     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
2922   }
2923   {
2924     int referenced = 0;
2925     unsigned long long insn_referenced = abuf->written;
2926     cycles += model_u_macw_after (current_cpu, idesc, 2, referenced);
2927   }
2928   return cycles;
2929 #undef FLD
2930 }
2931
2932 UINT
2933 sh4_nofpu_sh4_nofpu_model::model_mov_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2934 {
2935 #define FLD(f) abuf->fields.sfmt_and_compact.f
2936   const sh4_nofpu_scache* abuf = sem;
2937   const sh4_nofpu_idesc* idesc = abuf->idesc;
2938   int cycles = 0;
2939   {
2940     INT in_usereg = -1;
2941     in_usereg = FLD (in_rm64);
2942     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
2943   }
2944   {
2945     cycles += model_u_exec_before (current_cpu, idesc, 1);
2946   }
2947   return cycles;
2948 #undef FLD
2949 }
2950
2951 UINT
2952 sh4_nofpu_sh4_nofpu_model::model_mov_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2953 {
2954 #define FLD(f) abuf->fields.sfmt_and_compact.f
2955   const sh4_nofpu_scache* abuf = sem;
2956   const sh4_nofpu_idesc* idesc = abuf->idesc;
2957   int cycles = 0;
2958   {
2959     int referenced = 0;
2960     unsigned long long insn_referenced = abuf->written;
2961     INT in_usereg = -1;
2962     in_usereg = FLD (in_rm64);
2963     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
2964   }
2965   {
2966     int referenced = 0;
2967     unsigned long long insn_referenced = abuf->written;
2968     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
2969   }
2970   return cycles;
2971 #undef FLD
2972 }
2973
2974 UINT
2975 sh4_nofpu_sh4_nofpu_model::model_movi_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2976 {
2977 #define FLD(f) abuf->fields.sfmt_addi_compact.f
2978   const sh4_nofpu_scache* abuf = sem;
2979   const sh4_nofpu_idesc* idesc = abuf->idesc;
2980   int cycles = 0;
2981   {
2982     cycles += model_u_exec_before (current_cpu, idesc, 0);
2983   }
2984   return cycles;
2985 #undef FLD
2986 }
2987
2988 UINT
2989 sh4_nofpu_sh4_nofpu_model::model_movi_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
2990 {
2991 #define FLD(f) abuf->fields.sfmt_addi_compact.f
2992   const sh4_nofpu_scache* abuf = sem;
2993   const sh4_nofpu_idesc* idesc = abuf->idesc;
2994   int cycles = 0;
2995   {
2996     int referenced = 0;
2997     unsigned long long insn_referenced = abuf->written;
2998     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
2999   }
3000   return cycles;
3001 #undef FLD
3002 }
3003
3004 UINT
3005 sh4_nofpu_sh4_nofpu_model::model_movi20_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3006 {
3007 #define FLD(f) abuf->fields.sfmt_movi20_compact.f
3008   const sh4_nofpu_scache* abuf = sem;
3009   const sh4_nofpu_idesc* idesc = abuf->idesc;
3010   int cycles = 0;
3011   {
3012     cycles += model_u_exec_before (current_cpu, idesc, 0);
3013   }
3014   return cycles;
3015 #undef FLD
3016 }
3017
3018 UINT
3019 sh4_nofpu_sh4_nofpu_model::model_movi20_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3020 {
3021 #define FLD(f) abuf->fields.sfmt_movi20_compact.f
3022   const sh4_nofpu_scache* abuf = sem;
3023   const sh4_nofpu_idesc* idesc = abuf->idesc;
3024   int cycles = 0;
3025   {
3026     int referenced = 0;
3027     unsigned long long insn_referenced = abuf->written;
3028     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
3029   }
3030   return cycles;
3031 #undef FLD
3032 }
3033
3034 UINT
3035 sh4_nofpu_sh4_nofpu_model::model_movb1_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3036 {
3037 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
3038   const sh4_nofpu_scache* abuf = sem;
3039   const sh4_nofpu_idesc* idesc = abuf->idesc;
3040   int cycles = 0;
3041   {
3042     INT in_usereg = -1;
3043     in_usereg = FLD (in_rn);
3044     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3045   }
3046   {
3047     INT in_usereg = -1;
3048     in_usereg = FLD (in_rm);
3049     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3050   }
3051   {
3052     cycles += model_u_exec_before (current_cpu, idesc, 2);
3053   }
3054   {
3055     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
3056   }
3057   return cycles;
3058 #undef FLD
3059 }
3060
3061 UINT
3062 sh4_nofpu_sh4_nofpu_model::model_movb1_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3063 {
3064 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
3065   const sh4_nofpu_scache* abuf = sem;
3066   const sh4_nofpu_idesc* idesc = abuf->idesc;
3067   int cycles = 0;
3068   {
3069     int referenced = 0;
3070     unsigned long long insn_referenced = abuf->written;
3071     INT in_usereg = -1;
3072     in_usereg = FLD (in_rn);
3073     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3074   }
3075   {
3076     int referenced = 0;
3077     unsigned long long insn_referenced = abuf->written;
3078     INT in_usereg = -1;
3079     in_usereg = FLD (in_rm);
3080     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3081   }
3082   {
3083     int referenced = 0;
3084     unsigned long long insn_referenced = abuf->written;
3085     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3086   }
3087   {
3088     int referenced = 0;
3089     unsigned long long insn_referenced = abuf->written;
3090     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
3091   }
3092   return cycles;
3093 #undef FLD
3094 }
3095
3096 UINT
3097 sh4_nofpu_sh4_nofpu_model::model_movb2_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3098 {
3099 #define FLD(f) abuf->fields.sfmt_macl_compact.f
3100   const sh4_nofpu_scache* abuf = sem;
3101   const sh4_nofpu_idesc* idesc = abuf->idesc;
3102   int cycles = 0;
3103   {
3104     INT in_usereg = -1;
3105     in_usereg = FLD (in_rn);
3106     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3107   }
3108   {
3109     INT in_usereg = -1;
3110     in_usereg = FLD (in_rm);
3111     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3112   }
3113   {
3114     cycles += model_u_exec_before (current_cpu, idesc, 2);
3115   }
3116   {
3117     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
3118   }
3119   return cycles;
3120 #undef FLD
3121 }
3122
3123 UINT
3124 sh4_nofpu_sh4_nofpu_model::model_movb2_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3125 {
3126 #define FLD(f) abuf->fields.sfmt_macl_compact.f
3127   const sh4_nofpu_scache* abuf = sem;
3128   const sh4_nofpu_idesc* idesc = abuf->idesc;
3129   int cycles = 0;
3130   {
3131     int referenced = 0;
3132     unsigned long long insn_referenced = abuf->written;
3133     INT in_usereg = -1;
3134     in_usereg = FLD (in_rn);
3135     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3136   }
3137   {
3138     int referenced = 0;
3139     unsigned long long insn_referenced = abuf->written;
3140     INT in_usereg = -1;
3141     in_usereg = FLD (in_rm);
3142     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3143   }
3144   {
3145     int referenced = 0;
3146     unsigned long long insn_referenced = abuf->written;
3147     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3148   }
3149   {
3150     int referenced = 0;
3151     unsigned long long insn_referenced = abuf->written;
3152     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
3153   }
3154   return cycles;
3155 #undef FLD
3156 }
3157
3158 UINT
3159 sh4_nofpu_sh4_nofpu_model::model_movb3_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3160 {
3161 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
3162   const sh4_nofpu_scache* abuf = sem;
3163   const sh4_nofpu_idesc* idesc = abuf->idesc;
3164   int cycles = 0;
3165   {
3166     INT in_usereg = -1;
3167     in_usereg = FLD (in_rn);
3168     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3169   }
3170   {
3171     INT in_usereg = -1;
3172     in_usereg = FLD (in_rm);
3173     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3174   }
3175   {
3176     INT in_usereg = -1;
3177     in_usereg = FLD (in_r0);
3178     cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
3179   }
3180   {
3181     cycles += model_u_exec_before (current_cpu, idesc, 3);
3182   }
3183   {
3184     cycles += model_u_memory_access_before (current_cpu, idesc, 4);
3185   }
3186   return cycles;
3187 #undef FLD
3188 }
3189
3190 UINT
3191 sh4_nofpu_sh4_nofpu_model::model_movb3_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3192 {
3193 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
3194   const sh4_nofpu_scache* abuf = sem;
3195   const sh4_nofpu_idesc* idesc = abuf->idesc;
3196   int cycles = 0;
3197   {
3198     int referenced = 0;
3199     unsigned long long insn_referenced = abuf->written;
3200     INT in_usereg = -1;
3201     in_usereg = FLD (in_rn);
3202     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3203   }
3204   {
3205     int referenced = 0;
3206     unsigned long long insn_referenced = abuf->written;
3207     INT in_usereg = -1;
3208     in_usereg = FLD (in_rm);
3209     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3210   }
3211   {
3212     int referenced = 0;
3213     unsigned long long insn_referenced = abuf->written;
3214     INT in_usereg = -1;
3215     in_usereg = FLD (in_r0);
3216     cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
3217   }
3218   {
3219     int referenced = 0;
3220     unsigned long long insn_referenced = abuf->written;
3221     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
3222   }
3223   {
3224     int referenced = 0;
3225     unsigned long long insn_referenced = abuf->written;
3226     cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
3227   }
3228   return cycles;
3229 #undef FLD
3230 }
3231
3232 UINT
3233 sh4_nofpu_sh4_nofpu_model::model_movb4_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3234 {
3235 #define FLD(f) abuf->fields.sfmt_andi_compact.f
3236   const sh4_nofpu_scache* abuf = sem;
3237   const sh4_nofpu_idesc* idesc = abuf->idesc;
3238   int cycles = 0;
3239   {
3240     cycles += model_u_exec_before (current_cpu, idesc, 0);
3241   }
3242   {
3243     cycles += model_u_sx_before (current_cpu, idesc, 1);
3244   }
3245   {
3246     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
3247   }
3248   return cycles;
3249 #undef FLD
3250 }
3251
3252 UINT
3253 sh4_nofpu_sh4_nofpu_model::model_movb4_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3254 {
3255 #define FLD(f) abuf->fields.sfmt_andi_compact.f
3256   const sh4_nofpu_scache* abuf = sem;
3257   const sh4_nofpu_idesc* idesc = abuf->idesc;
3258   int cycles = 0;
3259   {
3260     int referenced = 0;
3261     unsigned long long insn_referenced = abuf->written;
3262     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
3263   }
3264   {
3265     int referenced = 0;
3266     unsigned long long insn_referenced = abuf->written;
3267     cycles += model_u_sx_after (current_cpu, idesc, 1, referenced);
3268   }
3269   {
3270     int referenced = 0;
3271     unsigned long long insn_referenced = abuf->written;
3272     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
3273   }
3274   return cycles;
3275 #undef FLD
3276 }
3277
3278 UINT
3279 sh4_nofpu_sh4_nofpu_model::model_movb5_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3280 {
3281 #define FLD(f) abuf->fields.sfmt_movb5_compact.f
3282   const sh4_nofpu_scache* abuf = sem;
3283   const sh4_nofpu_idesc* idesc = abuf->idesc;
3284   int cycles = 0;
3285   {
3286     INT in_usereg = -1;
3287     in_usereg = FLD (in_r0);
3288     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3289   }
3290   {
3291     INT in_usereg = -1;
3292     in_usereg = FLD (in_rm);
3293     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3294   }
3295   {
3296     cycles += model_u_exec_before (current_cpu, idesc, 2);
3297   }
3298   {
3299     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
3300   }
3301   return cycles;
3302 #undef FLD
3303 }
3304
3305 UINT
3306 sh4_nofpu_sh4_nofpu_model::model_movb5_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3307 {
3308 #define FLD(f) abuf->fields.sfmt_movb5_compact.f
3309   const sh4_nofpu_scache* abuf = sem;
3310   const sh4_nofpu_idesc* idesc = abuf->idesc;
3311   int cycles = 0;
3312   {
3313     int referenced = 0;
3314     unsigned long long insn_referenced = abuf->written;
3315     INT in_usereg = -1;
3316     in_usereg = FLD (in_r0);
3317     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3318   }
3319   {
3320     int referenced = 0;
3321     unsigned long long insn_referenced = abuf->written;
3322     INT in_usereg = -1;
3323     in_usereg = FLD (in_rm);
3324     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3325   }
3326   {
3327     int referenced = 0;
3328     unsigned long long insn_referenced = abuf->written;
3329     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3330   }
3331   {
3332     int referenced = 0;
3333     unsigned long long insn_referenced = abuf->written;
3334     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
3335   }
3336   return cycles;
3337 #undef FLD
3338 }
3339
3340 UINT
3341 sh4_nofpu_sh4_nofpu_model::model_movb6_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3342 {
3343 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
3344   const sh4_nofpu_scache* abuf = sem;
3345   const sh4_nofpu_idesc* idesc = abuf->idesc;
3346   int cycles = 0;
3347   {
3348     INT in_usereg = -1;
3349     in_usereg = FLD (in_rm);
3350     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3351   }
3352   {
3353     cycles += model_u_exec_before (current_cpu, idesc, 1);
3354   }
3355   {
3356     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
3357   }
3358   {
3359     INT out_loadreg = -1;
3360     out_loadreg = FLD (out_rn);
3361     cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
3362   }
3363   return cycles;
3364 #undef FLD
3365 }
3366
3367 UINT
3368 sh4_nofpu_sh4_nofpu_model::model_movb6_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3369 {
3370 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
3371   const sh4_nofpu_scache* abuf = sem;
3372   const sh4_nofpu_idesc* idesc = abuf->idesc;
3373   int cycles = 0;
3374   {
3375     int referenced = 0;
3376     unsigned long long insn_referenced = abuf->written;
3377     INT in_usereg = -1;
3378     in_usereg = FLD (in_rm);
3379     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3380   }
3381   {
3382     int referenced = 0;
3383     unsigned long long insn_referenced = abuf->written;
3384     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3385   }
3386   {
3387     int referenced = 0;
3388     unsigned long long insn_referenced = abuf->written;
3389     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
3390   }
3391   {
3392     int referenced = 0;
3393     unsigned long long insn_referenced = abuf->written;
3394     INT out_loadreg = -1;
3395     out_loadreg = FLD (out_rn);
3396     cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
3397   }
3398   return cycles;
3399 #undef FLD
3400 }
3401
3402 UINT
3403 sh4_nofpu_sh4_nofpu_model::model_movb7_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3404 {
3405 #define FLD(f) abuf->fields.sfmt_macl_compact.f
3406   const sh4_nofpu_scache* abuf = sem;
3407   const sh4_nofpu_idesc* idesc = abuf->idesc;
3408   int cycles = 0;
3409   {
3410     INT in_usereg = -1;
3411     in_usereg = FLD (in_rm);
3412     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3413   }
3414   {
3415     cycles += model_u_exec_before (current_cpu, idesc, 1);
3416   }
3417   {
3418     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
3419   }
3420   {
3421     INT out_loadreg = -1;
3422     out_loadreg = FLD (out_rn);
3423     cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
3424   }
3425   return cycles;
3426 #undef FLD
3427 }
3428
3429 UINT
3430 sh4_nofpu_sh4_nofpu_model::model_movb7_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3431 {
3432 #define FLD(f) abuf->fields.sfmt_macl_compact.f
3433   const sh4_nofpu_scache* abuf = sem;
3434   const sh4_nofpu_idesc* idesc = abuf->idesc;
3435   int cycles = 0;
3436   {
3437     int referenced = 0;
3438     unsigned long long insn_referenced = abuf->written;
3439     INT in_usereg = -1;
3440     in_usereg = FLD (in_rm);
3441     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3442   }
3443   {
3444     int referenced = 0;
3445     unsigned long long insn_referenced = abuf->written;
3446     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3447   }
3448   {
3449     int referenced = 0;
3450     unsigned long long insn_referenced = abuf->written;
3451     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
3452   }
3453   {
3454     int referenced = 0;
3455     unsigned long long insn_referenced = abuf->written;
3456     INT out_loadreg = -1;
3457     out_loadreg = FLD (out_rn);
3458     cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
3459   }
3460   return cycles;
3461 #undef FLD
3462 }
3463
3464 UINT
3465 sh4_nofpu_sh4_nofpu_model::model_movb8_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3466 {
3467 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
3468   const sh4_nofpu_scache* abuf = sem;
3469   const sh4_nofpu_idesc* idesc = abuf->idesc;
3470   int cycles = 0;
3471   {
3472     INT in_usereg = -1;
3473     in_usereg = FLD (in_rm);
3474     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3475   }
3476   {
3477     INT in_usereg = -1;
3478     in_usereg = FLD (in_r0);
3479     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3480   }
3481   {
3482     cycles += model_u_exec_before (current_cpu, idesc, 2);
3483   }
3484   {
3485     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
3486   }
3487   {
3488     INT out_loadreg = -1;
3489     out_loadreg = FLD (out_rn);
3490     cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
3491   }
3492   return cycles;
3493 #undef FLD
3494 }
3495
3496 UINT
3497 sh4_nofpu_sh4_nofpu_model::model_movb8_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3498 {
3499 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
3500   const sh4_nofpu_scache* abuf = sem;
3501   const sh4_nofpu_idesc* idesc = abuf->idesc;
3502   int cycles = 0;
3503   {
3504     int referenced = 0;
3505     unsigned long long insn_referenced = abuf->written;
3506     INT in_usereg = -1;
3507     in_usereg = FLD (in_rm);
3508     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3509   }
3510   {
3511     int referenced = 0;
3512     unsigned long long insn_referenced = abuf->written;
3513     INT in_usereg = -1;
3514     in_usereg = FLD (in_r0);
3515     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3516   }
3517   {
3518     int referenced = 0;
3519     unsigned long long insn_referenced = abuf->written;
3520     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3521   }
3522   {
3523     int referenced = 0;
3524     unsigned long long insn_referenced = abuf->written;
3525     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
3526   }
3527   {
3528     int referenced = 0;
3529     unsigned long long insn_referenced = abuf->written;
3530     INT out_loadreg = -1;
3531     out_loadreg = FLD (out_rn);
3532     cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
3533   }
3534   return cycles;
3535 #undef FLD
3536 }
3537
3538 UINT
3539 sh4_nofpu_sh4_nofpu_model::model_movb9_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3540 {
3541 #define FLD(f) abuf->fields.sfmt_andi_compact.f
3542   const sh4_nofpu_scache* abuf = sem;
3543   const sh4_nofpu_idesc* idesc = abuf->idesc;
3544   int cycles = 0;
3545   {
3546     cycles += model_u_exec_before (current_cpu, idesc, 0);
3547   }
3548   {
3549     cycles += model_u_memory_access_before (current_cpu, idesc, 1);
3550   }
3551   {
3552     INT out_loadreg = -1;
3553     out_loadreg = FLD (out_r0);
3554     cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
3555   }
3556   return cycles;
3557 #undef FLD
3558 }
3559
3560 UINT
3561 sh4_nofpu_sh4_nofpu_model::model_movb9_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3562 {
3563 #define FLD(f) abuf->fields.sfmt_andi_compact.f
3564   const sh4_nofpu_scache* abuf = sem;
3565   const sh4_nofpu_idesc* idesc = abuf->idesc;
3566   int cycles = 0;
3567   {
3568     int referenced = 0;
3569     unsigned long long insn_referenced = abuf->written;
3570     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
3571   }
3572   {
3573     int referenced = 0;
3574     unsigned long long insn_referenced = abuf->written;
3575     cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
3576   }
3577   {
3578     int referenced = 0;
3579     unsigned long long insn_referenced = abuf->written;
3580     INT out_loadreg = -1;
3581     out_loadreg = FLD (out_r0);
3582     cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
3583   }
3584   return cycles;
3585 #undef FLD
3586 }
3587
3588 UINT
3589 sh4_nofpu_sh4_nofpu_model::model_movb10_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3590 {
3591 #define FLD(f) abuf->fields.sfmt_movb10_compact.f
3592   const sh4_nofpu_scache* abuf = sem;
3593   const sh4_nofpu_idesc* idesc = abuf->idesc;
3594   int cycles = 0;
3595   {
3596     INT in_usereg = -1;
3597     in_usereg = FLD (in_rm);
3598     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3599   }
3600   {
3601     cycles += model_u_exec_before (current_cpu, idesc, 1);
3602   }
3603   {
3604     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
3605   }
3606   {
3607     INT out_loadreg = -1;
3608     out_loadreg = FLD (out_r0);
3609     cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
3610   }
3611   return cycles;
3612 #undef FLD
3613 }
3614
3615 UINT
3616 sh4_nofpu_sh4_nofpu_model::model_movb10_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3617 {
3618 #define FLD(f) abuf->fields.sfmt_movb10_compact.f
3619   const sh4_nofpu_scache* abuf = sem;
3620   const sh4_nofpu_idesc* idesc = abuf->idesc;
3621   int cycles = 0;
3622   {
3623     int referenced = 0;
3624     unsigned long long insn_referenced = abuf->written;
3625     INT in_usereg = -1;
3626     in_usereg = FLD (in_rm);
3627     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3628   }
3629   {
3630     int referenced = 0;
3631     unsigned long long insn_referenced = abuf->written;
3632     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3633   }
3634   {
3635     int referenced = 0;
3636     unsigned long long insn_referenced = abuf->written;
3637     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
3638   }
3639   {
3640     int referenced = 0;
3641     unsigned long long insn_referenced = abuf->written;
3642     INT out_loadreg = -1;
3643     out_loadreg = FLD (out_r0);
3644     cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
3645   }
3646   return cycles;
3647 #undef FLD
3648 }
3649
3650 UINT
3651 sh4_nofpu_sh4_nofpu_model::model_movl1_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3652 {
3653 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
3654   const sh4_nofpu_scache* abuf = sem;
3655   const sh4_nofpu_idesc* idesc = abuf->idesc;
3656   int cycles = 0;
3657   {
3658     INT in_usereg = -1;
3659     in_usereg = FLD (in_rm);
3660     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3661   }
3662   {
3663     INT in_usereg = -1;
3664     in_usereg = FLD (in_rn);
3665     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3666   }
3667   {
3668     cycles += model_u_exec_before (current_cpu, idesc, 2);
3669   }
3670   {
3671     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
3672   }
3673   return cycles;
3674 #undef FLD
3675 }
3676
3677 UINT
3678 sh4_nofpu_sh4_nofpu_model::model_movl1_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3679 {
3680 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
3681   const sh4_nofpu_scache* abuf = sem;
3682   const sh4_nofpu_idesc* idesc = abuf->idesc;
3683   int cycles = 0;
3684   {
3685     int referenced = 0;
3686     unsigned long long insn_referenced = abuf->written;
3687     INT in_usereg = -1;
3688     in_usereg = FLD (in_rm);
3689     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3690   }
3691   {
3692     int referenced = 0;
3693     unsigned long long insn_referenced = abuf->written;
3694     INT in_usereg = -1;
3695     in_usereg = FLD (in_rn);
3696     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3697   }
3698   {
3699     int referenced = 0;
3700     unsigned long long insn_referenced = abuf->written;
3701     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3702   }
3703   {
3704     int referenced = 0;
3705     unsigned long long insn_referenced = abuf->written;
3706     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
3707   }
3708   return cycles;
3709 #undef FLD
3710 }
3711
3712 UINT
3713 sh4_nofpu_sh4_nofpu_model::model_movl2_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3714 {
3715 #define FLD(f) abuf->fields.sfmt_macl_compact.f
3716   const sh4_nofpu_scache* abuf = sem;
3717   const sh4_nofpu_idesc* idesc = abuf->idesc;
3718   int cycles = 0;
3719   {
3720     INT in_usereg = -1;
3721     in_usereg = FLD (in_rm);
3722     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3723   }
3724   {
3725     INT in_usereg = -1;
3726     in_usereg = FLD (in_rn);
3727     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3728   }
3729   {
3730     cycles += model_u_exec_before (current_cpu, idesc, 2);
3731   }
3732   {
3733     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
3734   }
3735   return cycles;
3736 #undef FLD
3737 }
3738
3739 UINT
3740 sh4_nofpu_sh4_nofpu_model::model_movl2_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3741 {
3742 #define FLD(f) abuf->fields.sfmt_macl_compact.f
3743   const sh4_nofpu_scache* abuf = sem;
3744   const sh4_nofpu_idesc* idesc = abuf->idesc;
3745   int cycles = 0;
3746   {
3747     int referenced = 0;
3748     unsigned long long insn_referenced = abuf->written;
3749     INT in_usereg = -1;
3750     in_usereg = FLD (in_rm);
3751     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3752   }
3753   {
3754     int referenced = 0;
3755     unsigned long long insn_referenced = abuf->written;
3756     INT in_usereg = -1;
3757     in_usereg = FLD (in_rn);
3758     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3759   }
3760   {
3761     int referenced = 0;
3762     unsigned long long insn_referenced = abuf->written;
3763     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3764   }
3765   {
3766     int referenced = 0;
3767     unsigned long long insn_referenced = abuf->written;
3768     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
3769   }
3770   return cycles;
3771 #undef FLD
3772 }
3773
3774 UINT
3775 sh4_nofpu_sh4_nofpu_model::model_movl3_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3776 {
3777 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
3778   const sh4_nofpu_scache* abuf = sem;
3779   const sh4_nofpu_idesc* idesc = abuf->idesc;
3780   int cycles = 0;
3781   {
3782     INT in_usereg = -1;
3783     in_usereg = FLD (in_rm);
3784     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3785   }
3786   {
3787     INT in_usereg = -1;
3788     in_usereg = FLD (in_rn);
3789     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3790   }
3791   {
3792     INT in_usereg = -1;
3793     in_usereg = FLD (in_r0);
3794     cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
3795   }
3796   {
3797     cycles += model_u_exec_before (current_cpu, idesc, 3);
3798   }
3799   {
3800     cycles += model_u_memory_access_before (current_cpu, idesc, 4);
3801   }
3802   return cycles;
3803 #undef FLD
3804 }
3805
3806 UINT
3807 sh4_nofpu_sh4_nofpu_model::model_movl3_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3808 {
3809 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
3810   const sh4_nofpu_scache* abuf = sem;
3811   const sh4_nofpu_idesc* idesc = abuf->idesc;
3812   int cycles = 0;
3813   {
3814     int referenced = 0;
3815     unsigned long long insn_referenced = abuf->written;
3816     INT in_usereg = -1;
3817     in_usereg = FLD (in_rm);
3818     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3819   }
3820   {
3821     int referenced = 0;
3822     unsigned long long insn_referenced = abuf->written;
3823     INT in_usereg = -1;
3824     in_usereg = FLD (in_rn);
3825     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3826   }
3827   {
3828     int referenced = 0;
3829     unsigned long long insn_referenced = abuf->written;
3830     INT in_usereg = -1;
3831     in_usereg = FLD (in_r0);
3832     cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
3833   }
3834   {
3835     int referenced = 0;
3836     unsigned long long insn_referenced = abuf->written;
3837     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
3838   }
3839   {
3840     int referenced = 0;
3841     unsigned long long insn_referenced = abuf->written;
3842     cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
3843   }
3844   return cycles;
3845 #undef FLD
3846 }
3847
3848 UINT
3849 sh4_nofpu_sh4_nofpu_model::model_movl4_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3850 {
3851 #define FLD(f) abuf->fields.sfmt_movl4_compact.f
3852   const sh4_nofpu_scache* abuf = sem;
3853   const sh4_nofpu_idesc* idesc = abuf->idesc;
3854   int cycles = 0;
3855   {
3856     INT in_usereg = -1;
3857     in_usereg = FLD (in_r0);
3858     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3859   }
3860   {
3861     cycles += model_u_exec_before (current_cpu, idesc, 1);
3862   }
3863   {
3864     cycles += model_u_sx_before (current_cpu, idesc, 2);
3865   }
3866   {
3867     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
3868   }
3869   return cycles;
3870 #undef FLD
3871 }
3872
3873 UINT
3874 sh4_nofpu_sh4_nofpu_model::model_movl4_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3875 {
3876 #define FLD(f) abuf->fields.sfmt_movl4_compact.f
3877   const sh4_nofpu_scache* abuf = sem;
3878   const sh4_nofpu_idesc* idesc = abuf->idesc;
3879   int cycles = 0;
3880   {
3881     int referenced = 0;
3882     unsigned long long insn_referenced = abuf->written;
3883     INT in_usereg = -1;
3884     in_usereg = FLD (in_r0);
3885     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3886   }
3887   {
3888     int referenced = 0;
3889     unsigned long long insn_referenced = abuf->written;
3890     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
3891   }
3892   {
3893     int referenced = 0;
3894     unsigned long long insn_referenced = abuf->written;
3895     cycles += model_u_sx_after (current_cpu, idesc, 2, referenced);
3896   }
3897   {
3898     int referenced = 0;
3899     unsigned long long insn_referenced = abuf->written;
3900     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
3901   }
3902   return cycles;
3903 #undef FLD
3904 }
3905
3906 UINT
3907 sh4_nofpu_sh4_nofpu_model::model_movl5_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3908 {
3909 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
3910   const sh4_nofpu_scache* abuf = sem;
3911   const sh4_nofpu_idesc* idesc = abuf->idesc;
3912   int cycles = 0;
3913   {
3914     INT in_usereg = -1;
3915     in_usereg = FLD (in_rm);
3916     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3917   }
3918   {
3919     INT in_usereg = -1;
3920     in_usereg = FLD (in_rn);
3921     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
3922   }
3923   {
3924     cycles += model_u_exec_before (current_cpu, idesc, 2);
3925   }
3926   {
3927     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
3928   }
3929   return cycles;
3930 #undef FLD
3931 }
3932
3933 UINT
3934 sh4_nofpu_sh4_nofpu_model::model_movl5_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3935 {
3936 #define FLD(f) abuf->fields.sfmt_movl5_compact.f
3937   const sh4_nofpu_scache* abuf = sem;
3938   const sh4_nofpu_idesc* idesc = abuf->idesc;
3939   int cycles = 0;
3940   {
3941     int referenced = 0;
3942     unsigned long long insn_referenced = abuf->written;
3943     INT in_usereg = -1;
3944     in_usereg = FLD (in_rm);
3945     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
3946   }
3947   {
3948     int referenced = 0;
3949     unsigned long long insn_referenced = abuf->written;
3950     INT in_usereg = -1;
3951     in_usereg = FLD (in_rn);
3952     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
3953   }
3954   {
3955     int referenced = 0;
3956     unsigned long long insn_referenced = abuf->written;
3957     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
3958   }
3959   {
3960     int referenced = 0;
3961     unsigned long long insn_referenced = abuf->written;
3962     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
3963   }
3964   return cycles;
3965 #undef FLD
3966 }
3967
3968 UINT
3969 sh4_nofpu_sh4_nofpu_model::model_movl6_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3970 {
3971 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
3972   const sh4_nofpu_scache* abuf = sem;
3973   const sh4_nofpu_idesc* idesc = abuf->idesc;
3974   int cycles = 0;
3975   {
3976     INT in_usereg = -1;
3977     in_usereg = FLD (in_rm);
3978     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
3979   }
3980   {
3981     cycles += model_u_exec_before (current_cpu, idesc, 1);
3982   }
3983   {
3984     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
3985   }
3986   {
3987     INT out_loadreg = -1;
3988     out_loadreg = FLD (out_rn);
3989     cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
3990   }
3991   return cycles;
3992 #undef FLD
3993 }
3994
3995 UINT
3996 sh4_nofpu_sh4_nofpu_model::model_movl6_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
3997 {
3998 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
3999   const sh4_nofpu_scache* abuf = sem;
4000   const sh4_nofpu_idesc* idesc = abuf->idesc;
4001   int cycles = 0;
4002   {
4003     int referenced = 0;
4004     unsigned long long insn_referenced = abuf->written;
4005     INT in_usereg = -1;
4006     in_usereg = FLD (in_rm);
4007     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4008   }
4009   {
4010     int referenced = 0;
4011     unsigned long long insn_referenced = abuf->written;
4012     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4013   }
4014   {
4015     int referenced = 0;
4016     unsigned long long insn_referenced = abuf->written;
4017     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4018   }
4019   {
4020     int referenced = 0;
4021     unsigned long long insn_referenced = abuf->written;
4022     INT out_loadreg = -1;
4023     out_loadreg = FLD (out_rn);
4024     cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
4025   }
4026   return cycles;
4027 #undef FLD
4028 }
4029
4030 UINT
4031 sh4_nofpu_sh4_nofpu_model::model_movl7_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4032 {
4033 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4034   const sh4_nofpu_scache* abuf = sem;
4035   const sh4_nofpu_idesc* idesc = abuf->idesc;
4036   int cycles = 0;
4037   {
4038     INT in_usereg = -1;
4039     in_usereg = FLD (in_rm);
4040     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4041   }
4042   {
4043     cycles += model_u_exec_before (current_cpu, idesc, 1);
4044   }
4045   {
4046     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4047   }
4048   {
4049     INT out_loadreg = -1;
4050     out_loadreg = FLD (out_rn);
4051     cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
4052   }
4053   return cycles;
4054 #undef FLD
4055 }
4056
4057 UINT
4058 sh4_nofpu_sh4_nofpu_model::model_movl7_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4059 {
4060 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4061   const sh4_nofpu_scache* abuf = sem;
4062   const sh4_nofpu_idesc* idesc = abuf->idesc;
4063   int cycles = 0;
4064   {
4065     int referenced = 0;
4066     unsigned long long insn_referenced = abuf->written;
4067     INT in_usereg = -1;
4068     in_usereg = FLD (in_rm);
4069     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4070   }
4071   {
4072     int referenced = 0;
4073     unsigned long long insn_referenced = abuf->written;
4074     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4075   }
4076   {
4077     int referenced = 0;
4078     unsigned long long insn_referenced = abuf->written;
4079     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4080   }
4081   {
4082     int referenced = 0;
4083     unsigned long long insn_referenced = abuf->written;
4084     INT out_loadreg = -1;
4085     out_loadreg = FLD (out_rn);
4086     cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
4087   }
4088   return cycles;
4089 #undef FLD
4090 }
4091
4092 UINT
4093 sh4_nofpu_sh4_nofpu_model::model_movl8_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4094 {
4095 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
4096   const sh4_nofpu_scache* abuf = sem;
4097   const sh4_nofpu_idesc* idesc = abuf->idesc;
4098   int cycles = 0;
4099   {
4100     INT in_usereg = -1;
4101     in_usereg = FLD (in_rm);
4102     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4103   }
4104   {
4105     INT in_usereg = -1;
4106     in_usereg = FLD (in_r0);
4107     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4108   }
4109   {
4110     cycles += model_u_exec_before (current_cpu, idesc, 2);
4111   }
4112   {
4113     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4114   }
4115   {
4116     INT out_loadreg = -1;
4117     out_loadreg = FLD (out_rn);
4118     cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
4119   }
4120   return cycles;
4121 #undef FLD
4122 }
4123
4124 UINT
4125 sh4_nofpu_sh4_nofpu_model::model_movl8_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4126 {
4127 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
4128   const sh4_nofpu_scache* abuf = sem;
4129   const sh4_nofpu_idesc* idesc = abuf->idesc;
4130   int cycles = 0;
4131   {
4132     int referenced = 0;
4133     unsigned long long insn_referenced = abuf->written;
4134     INT in_usereg = -1;
4135     in_usereg = FLD (in_rm);
4136     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4137   }
4138   {
4139     int referenced = 0;
4140     unsigned long long insn_referenced = abuf->written;
4141     INT in_usereg = -1;
4142     in_usereg = FLD (in_r0);
4143     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4144   }
4145   {
4146     int referenced = 0;
4147     unsigned long long insn_referenced = abuf->written;
4148     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4149   }
4150   {
4151     int referenced = 0;
4152     unsigned long long insn_referenced = abuf->written;
4153     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4154   }
4155   {
4156     int referenced = 0;
4157     unsigned long long insn_referenced = abuf->written;
4158     INT out_loadreg = -1;
4159     out_loadreg = FLD (out_rn);
4160     cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
4161   }
4162   return cycles;
4163 #undef FLD
4164 }
4165
4166 UINT
4167 sh4_nofpu_sh4_nofpu_model::model_movl9_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4168 {
4169 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
4170   const sh4_nofpu_scache* abuf = sem;
4171   const sh4_nofpu_idesc* idesc = abuf->idesc;
4172   int cycles = 0;
4173   {
4174     cycles += model_u_exec_before (current_cpu, idesc, 0);
4175   }
4176   {
4177     cycles += model_u_memory_access_before (current_cpu, idesc, 1);
4178   }
4179   {
4180     INT out_loadreg = -1;
4181     out_loadreg = FLD (out_r0);
4182     cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
4183   }
4184   return cycles;
4185 #undef FLD
4186 }
4187
4188 UINT
4189 sh4_nofpu_sh4_nofpu_model::model_movl9_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4190 {
4191 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
4192   const sh4_nofpu_scache* abuf = sem;
4193   const sh4_nofpu_idesc* idesc = abuf->idesc;
4194   int cycles = 0;
4195   {
4196     int referenced = 0;
4197     unsigned long long insn_referenced = abuf->written;
4198     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
4199   }
4200   {
4201     int referenced = 0;
4202     unsigned long long insn_referenced = abuf->written;
4203     cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
4204   }
4205   {
4206     int referenced = 0;
4207     unsigned long long insn_referenced = abuf->written;
4208     INT out_loadreg = -1;
4209     out_loadreg = FLD (out_r0);
4210     cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
4211   }
4212   return cycles;
4213 #undef FLD
4214 }
4215
4216 UINT
4217 sh4_nofpu_sh4_nofpu_model::model_movl10_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4218 {
4219 #define FLD(f) abuf->fields.sfmt_movl10_compact.f
4220   const sh4_nofpu_scache* abuf = sem;
4221   const sh4_nofpu_idesc* idesc = abuf->idesc;
4222   int cycles = 0;
4223   {
4224     cycles += model_u_exec_before (current_cpu, idesc, 0);
4225   }
4226   {
4227     cycles += model_u_memory_access_before (current_cpu, idesc, 1);
4228   }
4229   {
4230     INT out_loadreg = -1;
4231     out_loadreg = FLD (out_rn);
4232     cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
4233   }
4234   return cycles;
4235 #undef FLD
4236 }
4237
4238 UINT
4239 sh4_nofpu_sh4_nofpu_model::model_movl10_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4240 {
4241 #define FLD(f) abuf->fields.sfmt_movl10_compact.f
4242   const sh4_nofpu_scache* abuf = sem;
4243   const sh4_nofpu_idesc* idesc = abuf->idesc;
4244   int cycles = 0;
4245   {
4246     int referenced = 0;
4247     unsigned long long insn_referenced = abuf->written;
4248     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
4249   }
4250   {
4251     int referenced = 0;
4252     unsigned long long insn_referenced = abuf->written;
4253     cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
4254   }
4255   {
4256     int referenced = 0;
4257     unsigned long long insn_referenced = abuf->written;
4258     INT out_loadreg = -1;
4259     out_loadreg = FLD (out_rn);
4260     cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
4261   }
4262   return cycles;
4263 #undef FLD
4264 }
4265
4266 UINT
4267 sh4_nofpu_sh4_nofpu_model::model_movl11_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4268 {
4269 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
4270   const sh4_nofpu_scache* abuf = sem;
4271   const sh4_nofpu_idesc* idesc = abuf->idesc;
4272   int cycles = 0;
4273   {
4274     INT in_usereg = -1;
4275     in_usereg = FLD (in_rm);
4276     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4277   }
4278   {
4279     cycles += model_u_exec_before (current_cpu, idesc, 1);
4280   }
4281   {
4282     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4283   }
4284   {
4285     INT out_loadreg = -1;
4286     out_loadreg = FLD (out_rn);
4287     cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
4288   }
4289   return cycles;
4290 #undef FLD
4291 }
4292
4293 UINT
4294 sh4_nofpu_sh4_nofpu_model::model_movl11_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4295 {
4296 #define FLD(f) abuf->fields.sfmt_movl11_compact.f
4297   const sh4_nofpu_scache* abuf = sem;
4298   const sh4_nofpu_idesc* idesc = abuf->idesc;
4299   int cycles = 0;
4300   {
4301     int referenced = 0;
4302     unsigned long long insn_referenced = abuf->written;
4303     INT in_usereg = -1;
4304     in_usereg = FLD (in_rm);
4305     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4306   }
4307   {
4308     int referenced = 0;
4309     unsigned long long insn_referenced = abuf->written;
4310     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4311   }
4312   {
4313     int referenced = 0;
4314     unsigned long long insn_referenced = abuf->written;
4315     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4316   }
4317   {
4318     int referenced = 0;
4319     unsigned long long insn_referenced = abuf->written;
4320     INT out_loadreg = -1;
4321     out_loadreg = FLD (out_rn);
4322     cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
4323   }
4324   return cycles;
4325 #undef FLD
4326 }
4327
4328 UINT
4329 sh4_nofpu_sh4_nofpu_model::model_movl12_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4330 {
4331 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
4332   const sh4_nofpu_scache* abuf = sem;
4333   const sh4_nofpu_idesc* idesc = abuf->idesc;
4334   int cycles = 0;
4335   {
4336     INT in_usereg = -1;
4337     in_usereg = FLD (in_rm);
4338     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4339   }
4340   {
4341     cycles += model_u_exec_before (current_cpu, idesc, 1);
4342   }
4343   {
4344     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4345   }
4346   {
4347     INT out_loadreg = -1;
4348     out_loadreg = FLD (out_rn);
4349     cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
4350   }
4351   return cycles;
4352 #undef FLD
4353 }
4354
4355 UINT
4356 sh4_nofpu_sh4_nofpu_model::model_movl12_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4357 {
4358 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
4359   const sh4_nofpu_scache* abuf = sem;
4360   const sh4_nofpu_idesc* idesc = abuf->idesc;
4361   int cycles = 0;
4362   {
4363     int referenced = 0;
4364     unsigned long long insn_referenced = abuf->written;
4365     INT in_usereg = -1;
4366     in_usereg = FLD (in_rm);
4367     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4368   }
4369   {
4370     int referenced = 0;
4371     unsigned long long insn_referenced = abuf->written;
4372     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4373   }
4374   {
4375     int referenced = 0;
4376     unsigned long long insn_referenced = abuf->written;
4377     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4378   }
4379   {
4380     int referenced = 0;
4381     unsigned long long insn_referenced = abuf->written;
4382     INT out_loadreg = -1;
4383     out_loadreg = FLD (out_rn);
4384     cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
4385   }
4386   return cycles;
4387 #undef FLD
4388 }
4389
4390 UINT
4391 sh4_nofpu_sh4_nofpu_model::model_movl13_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4392 {
4393 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
4394   const sh4_nofpu_scache* abuf = sem;
4395   const sh4_nofpu_idesc* idesc = abuf->idesc;
4396   int cycles = 0;
4397   {
4398     INT in_usereg = -1;
4399     in_usereg = FLD (in_rm);
4400     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4401   }
4402   {
4403     cycles += model_u_exec_before (current_cpu, idesc, 1);
4404   }
4405   {
4406     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4407   }
4408   return cycles;
4409 #undef FLD
4410 }
4411
4412 UINT
4413 sh4_nofpu_sh4_nofpu_model::model_movl13_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4414 {
4415 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
4416   const sh4_nofpu_scache* abuf = sem;
4417   const sh4_nofpu_idesc* idesc = abuf->idesc;
4418   int cycles = 0;
4419   {
4420     int referenced = 0;
4421     unsigned long long insn_referenced = abuf->written;
4422     INT in_usereg = -1;
4423     in_usereg = FLD (in_rm);
4424     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4425   }
4426   {
4427     int referenced = 0;
4428     unsigned long long insn_referenced = abuf->written;
4429     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4430   }
4431   {
4432     int referenced = 0;
4433     unsigned long long insn_referenced = abuf->written;
4434     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4435   }
4436   return cycles;
4437 #undef FLD
4438 }
4439
4440 UINT
4441 sh4_nofpu_sh4_nofpu_model::model_movw1_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4442 {
4443 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
4444   const sh4_nofpu_scache* abuf = sem;
4445   const sh4_nofpu_idesc* idesc = abuf->idesc;
4446   int cycles = 0;
4447   {
4448     INT in_usereg = -1;
4449     in_usereg = FLD (in_rm);
4450     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4451   }
4452   {
4453     INT in_usereg = -1;
4454     in_usereg = FLD (in_rn);
4455     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4456   }
4457   {
4458     cycles += model_u_exec_before (current_cpu, idesc, 2);
4459   }
4460   {
4461     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4462   }
4463   return cycles;
4464 #undef FLD
4465 }
4466
4467 UINT
4468 sh4_nofpu_sh4_nofpu_model::model_movw1_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4469 {
4470 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
4471   const sh4_nofpu_scache* abuf = sem;
4472   const sh4_nofpu_idesc* idesc = abuf->idesc;
4473   int cycles = 0;
4474   {
4475     int referenced = 0;
4476     unsigned long long insn_referenced = abuf->written;
4477     INT in_usereg = -1;
4478     in_usereg = FLD (in_rm);
4479     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4480   }
4481   {
4482     int referenced = 0;
4483     unsigned long long insn_referenced = abuf->written;
4484     INT in_usereg = -1;
4485     in_usereg = FLD (in_rn);
4486     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4487   }
4488   {
4489     int referenced = 0;
4490     unsigned long long insn_referenced = abuf->written;
4491     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4492   }
4493   {
4494     int referenced = 0;
4495     unsigned long long insn_referenced = abuf->written;
4496     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4497   }
4498   return cycles;
4499 #undef FLD
4500 }
4501
4502 UINT
4503 sh4_nofpu_sh4_nofpu_model::model_movw2_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4504 {
4505 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4506   const sh4_nofpu_scache* abuf = sem;
4507   const sh4_nofpu_idesc* idesc = abuf->idesc;
4508   int cycles = 0;
4509   {
4510     INT in_usereg = -1;
4511     in_usereg = FLD (in_rm);
4512     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4513   }
4514   {
4515     INT in_usereg = -1;
4516     in_usereg = FLD (in_rn);
4517     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4518   }
4519   {
4520     cycles += model_u_exec_before (current_cpu, idesc, 2);
4521   }
4522   {
4523     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4524   }
4525   return cycles;
4526 #undef FLD
4527 }
4528
4529 UINT
4530 sh4_nofpu_sh4_nofpu_model::model_movw2_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4531 {
4532 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4533   const sh4_nofpu_scache* abuf = sem;
4534   const sh4_nofpu_idesc* idesc = abuf->idesc;
4535   int cycles = 0;
4536   {
4537     int referenced = 0;
4538     unsigned long long insn_referenced = abuf->written;
4539     INT in_usereg = -1;
4540     in_usereg = FLD (in_rm);
4541     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4542   }
4543   {
4544     int referenced = 0;
4545     unsigned long long insn_referenced = abuf->written;
4546     INT in_usereg = -1;
4547     in_usereg = FLD (in_rn);
4548     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4549   }
4550   {
4551     int referenced = 0;
4552     unsigned long long insn_referenced = abuf->written;
4553     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4554   }
4555   {
4556     int referenced = 0;
4557     unsigned long long insn_referenced = abuf->written;
4558     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4559   }
4560   return cycles;
4561 #undef FLD
4562 }
4563
4564 UINT
4565 sh4_nofpu_sh4_nofpu_model::model_movw3_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4566 {
4567 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
4568   const sh4_nofpu_scache* abuf = sem;
4569   const sh4_nofpu_idesc* idesc = abuf->idesc;
4570   int cycles = 0;
4571   {
4572     INT in_usereg = -1;
4573     in_usereg = FLD (in_rm);
4574     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4575   }
4576   {
4577     INT in_usereg = -1;
4578     in_usereg = FLD (in_rn);
4579     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4580   }
4581   {
4582     INT in_usereg = -1;
4583     in_usereg = FLD (in_r0);
4584     cycles += model_u_use_gr_before (current_cpu, idesc, 2, in_usereg);
4585   }
4586   {
4587     cycles += model_u_exec_before (current_cpu, idesc, 3);
4588   }
4589   {
4590     cycles += model_u_memory_access_before (current_cpu, idesc, 4);
4591   }
4592   return cycles;
4593 #undef FLD
4594 }
4595
4596 UINT
4597 sh4_nofpu_sh4_nofpu_model::model_movw3_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4598 {
4599 #define FLD(f) abuf->fields.sfmt_movb3_compact.f
4600   const sh4_nofpu_scache* abuf = sem;
4601   const sh4_nofpu_idesc* idesc = abuf->idesc;
4602   int cycles = 0;
4603   {
4604     int referenced = 0;
4605     unsigned long long insn_referenced = abuf->written;
4606     INT in_usereg = -1;
4607     in_usereg = FLD (in_rm);
4608     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4609   }
4610   {
4611     int referenced = 0;
4612     unsigned long long insn_referenced = abuf->written;
4613     INT in_usereg = -1;
4614     in_usereg = FLD (in_rn);
4615     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4616   }
4617   {
4618     int referenced = 0;
4619     unsigned long long insn_referenced = abuf->written;
4620     INT in_usereg = -1;
4621     in_usereg = FLD (in_r0);
4622     cycles += model_u_use_gr_after (current_cpu, idesc, 2, referenced, in_usereg);
4623   }
4624   {
4625     int referenced = 0;
4626     unsigned long long insn_referenced = abuf->written;
4627     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
4628   }
4629   {
4630     int referenced = 0;
4631     unsigned long long insn_referenced = abuf->written;
4632     cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
4633   }
4634   return cycles;
4635 #undef FLD
4636 }
4637
4638 UINT
4639 sh4_nofpu_sh4_nofpu_model::model_movw4_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4640 {
4641 #define FLD(f) abuf->fields.sfmt_movw4_compact.f
4642   const sh4_nofpu_scache* abuf = sem;
4643   const sh4_nofpu_idesc* idesc = abuf->idesc;
4644   int cycles = 0;
4645   {
4646     INT in_usereg = -1;
4647     in_usereg = FLD (in_r0);
4648     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4649   }
4650   {
4651     cycles += model_u_exec_before (current_cpu, idesc, 1);
4652   }
4653   {
4654     cycles += model_u_sx_before (current_cpu, idesc, 2);
4655   }
4656   {
4657     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4658   }
4659   return cycles;
4660 #undef FLD
4661 }
4662
4663 UINT
4664 sh4_nofpu_sh4_nofpu_model::model_movw4_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4665 {
4666 #define FLD(f) abuf->fields.sfmt_movw4_compact.f
4667   const sh4_nofpu_scache* abuf = sem;
4668   const sh4_nofpu_idesc* idesc = abuf->idesc;
4669   int cycles = 0;
4670   {
4671     int referenced = 0;
4672     unsigned long long insn_referenced = abuf->written;
4673     INT in_usereg = -1;
4674     in_usereg = FLD (in_r0);
4675     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4676   }
4677   {
4678     int referenced = 0;
4679     unsigned long long insn_referenced = abuf->written;
4680     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4681   }
4682   {
4683     int referenced = 0;
4684     unsigned long long insn_referenced = abuf->written;
4685     cycles += model_u_sx_after (current_cpu, idesc, 2, referenced);
4686   }
4687   {
4688     int referenced = 0;
4689     unsigned long long insn_referenced = abuf->written;
4690     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4691   }
4692   return cycles;
4693 #undef FLD
4694 }
4695
4696 UINT
4697 sh4_nofpu_sh4_nofpu_model::model_movw5_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4698 {
4699 #define FLD(f) abuf->fields.sfmt_movw5_compact.f
4700   const sh4_nofpu_scache* abuf = sem;
4701   const sh4_nofpu_idesc* idesc = abuf->idesc;
4702   int cycles = 0;
4703   {
4704     INT in_usereg = -1;
4705     in_usereg = FLD (in_rm);
4706     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4707   }
4708   {
4709     INT in_usereg = -1;
4710     in_usereg = FLD (in_r0);
4711     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4712   }
4713   {
4714     cycles += model_u_exec_before (current_cpu, idesc, 2);
4715   }
4716   {
4717     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4718   }
4719   return cycles;
4720 #undef FLD
4721 }
4722
4723 UINT
4724 sh4_nofpu_sh4_nofpu_model::model_movw5_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4725 {
4726 #define FLD(f) abuf->fields.sfmt_movw5_compact.f
4727   const sh4_nofpu_scache* abuf = sem;
4728   const sh4_nofpu_idesc* idesc = abuf->idesc;
4729   int cycles = 0;
4730   {
4731     int referenced = 0;
4732     unsigned long long insn_referenced = abuf->written;
4733     INT in_usereg = -1;
4734     in_usereg = FLD (in_rm);
4735     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4736   }
4737   {
4738     int referenced = 0;
4739     unsigned long long insn_referenced = abuf->written;
4740     INT in_usereg = -1;
4741     in_usereg = FLD (in_r0);
4742     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4743   }
4744   {
4745     int referenced = 0;
4746     unsigned long long insn_referenced = abuf->written;
4747     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4748   }
4749   {
4750     int referenced = 0;
4751     unsigned long long insn_referenced = abuf->written;
4752     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4753   }
4754   return cycles;
4755 #undef FLD
4756 }
4757
4758 UINT
4759 sh4_nofpu_sh4_nofpu_model::model_movw6_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4760 {
4761 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
4762   const sh4_nofpu_scache* abuf = sem;
4763   const sh4_nofpu_idesc* idesc = abuf->idesc;
4764   int cycles = 0;
4765   {
4766     INT in_usereg = -1;
4767     in_usereg = FLD (in_rm);
4768     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4769   }
4770   {
4771     cycles += model_u_exec_before (current_cpu, idesc, 1);
4772   }
4773   {
4774     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4775   }
4776   {
4777     INT out_loadreg = -1;
4778     out_loadreg = FLD (out_rn);
4779     cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
4780   }
4781   return cycles;
4782 #undef FLD
4783 }
4784
4785 UINT
4786 sh4_nofpu_sh4_nofpu_model::model_movw6_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4787 {
4788 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
4789   const sh4_nofpu_scache* abuf = sem;
4790   const sh4_nofpu_idesc* idesc = abuf->idesc;
4791   int cycles = 0;
4792   {
4793     int referenced = 0;
4794     unsigned long long insn_referenced = abuf->written;
4795     INT in_usereg = -1;
4796     in_usereg = FLD (in_rm);
4797     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4798   }
4799   {
4800     int referenced = 0;
4801     unsigned long long insn_referenced = abuf->written;
4802     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4803   }
4804   {
4805     int referenced = 0;
4806     unsigned long long insn_referenced = abuf->written;
4807     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4808   }
4809   {
4810     int referenced = 0;
4811     unsigned long long insn_referenced = abuf->written;
4812     INT out_loadreg = -1;
4813     out_loadreg = FLD (out_rn);
4814     cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
4815   }
4816   return cycles;
4817 #undef FLD
4818 }
4819
4820 UINT
4821 sh4_nofpu_sh4_nofpu_model::model_movw7_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4822 {
4823 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4824   const sh4_nofpu_scache* abuf = sem;
4825   const sh4_nofpu_idesc* idesc = abuf->idesc;
4826   int cycles = 0;
4827   {
4828     INT in_usereg = -1;
4829     in_usereg = FLD (in_rm);
4830     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4831   }
4832   {
4833     cycles += model_u_exec_before (current_cpu, idesc, 1);
4834   }
4835   {
4836     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
4837   }
4838   {
4839     INT out_loadreg = -1;
4840     out_loadreg = FLD (out_rn);
4841     cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
4842   }
4843   return cycles;
4844 #undef FLD
4845 }
4846
4847 UINT
4848 sh4_nofpu_sh4_nofpu_model::model_movw7_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4849 {
4850 #define FLD(f) abuf->fields.sfmt_macl_compact.f
4851   const sh4_nofpu_scache* abuf = sem;
4852   const sh4_nofpu_idesc* idesc = abuf->idesc;
4853   int cycles = 0;
4854   {
4855     int referenced = 0;
4856     unsigned long long insn_referenced = abuf->written;
4857     INT in_usereg = -1;
4858     in_usereg = FLD (in_rm);
4859     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4860   }
4861   {
4862     int referenced = 0;
4863     unsigned long long insn_referenced = abuf->written;
4864     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
4865   }
4866   {
4867     int referenced = 0;
4868     unsigned long long insn_referenced = abuf->written;
4869     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
4870   }
4871   {
4872     int referenced = 0;
4873     unsigned long long insn_referenced = abuf->written;
4874     INT out_loadreg = -1;
4875     out_loadreg = FLD (out_rn);
4876     cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
4877   }
4878   return cycles;
4879 #undef FLD
4880 }
4881
4882 UINT
4883 sh4_nofpu_sh4_nofpu_model::model_movw8_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4884 {
4885 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
4886   const sh4_nofpu_scache* abuf = sem;
4887   const sh4_nofpu_idesc* idesc = abuf->idesc;
4888   int cycles = 0;
4889   {
4890     INT in_usereg = -1;
4891     in_usereg = FLD (in_rm);
4892     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
4893   }
4894   {
4895     INT in_usereg = -1;
4896     in_usereg = FLD (in_r0);
4897     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
4898   }
4899   {
4900     cycles += model_u_exec_before (current_cpu, idesc, 2);
4901   }
4902   {
4903     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
4904   }
4905   {
4906     INT out_loadreg = -1;
4907     out_loadreg = FLD (out_rn);
4908     cycles += model_u_load_gr_before (current_cpu, idesc, 4, out_loadreg);
4909   }
4910   return cycles;
4911 #undef FLD
4912 }
4913
4914 UINT
4915 sh4_nofpu_sh4_nofpu_model::model_movw8_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4916 {
4917 #define FLD(f) abuf->fields.sfmt_movb8_compact.f
4918   const sh4_nofpu_scache* abuf = sem;
4919   const sh4_nofpu_idesc* idesc = abuf->idesc;
4920   int cycles = 0;
4921   {
4922     int referenced = 0;
4923     unsigned long long insn_referenced = abuf->written;
4924     INT in_usereg = -1;
4925     in_usereg = FLD (in_rm);
4926     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
4927   }
4928   {
4929     int referenced = 0;
4930     unsigned long long insn_referenced = abuf->written;
4931     INT in_usereg = -1;
4932     in_usereg = FLD (in_r0);
4933     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
4934   }
4935   {
4936     int referenced = 0;
4937     unsigned long long insn_referenced = abuf->written;
4938     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
4939   }
4940   {
4941     int referenced = 0;
4942     unsigned long long insn_referenced = abuf->written;
4943     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
4944   }
4945   {
4946     int referenced = 0;
4947     unsigned long long insn_referenced = abuf->written;
4948     INT out_loadreg = -1;
4949     out_loadreg = FLD (out_rn);
4950     cycles += model_u_load_gr_after (current_cpu, idesc, 4, referenced, out_loadreg);
4951   }
4952   return cycles;
4953 #undef FLD
4954 }
4955
4956 UINT
4957 sh4_nofpu_sh4_nofpu_model::model_movw9_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4958 {
4959 #define FLD(f) abuf->fields.sfmt_movw9_compact.f
4960   const sh4_nofpu_scache* abuf = sem;
4961   const sh4_nofpu_idesc* idesc = abuf->idesc;
4962   int cycles = 0;
4963   {
4964     cycles += model_u_exec_before (current_cpu, idesc, 0);
4965   }
4966   {
4967     cycles += model_u_memory_access_before (current_cpu, idesc, 1);
4968   }
4969   {
4970     INT out_loadreg = -1;
4971     out_loadreg = FLD (out_r0);
4972     cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
4973   }
4974   return cycles;
4975 #undef FLD
4976 }
4977
4978 UINT
4979 sh4_nofpu_sh4_nofpu_model::model_movw9_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
4980 {
4981 #define FLD(f) abuf->fields.sfmt_movw9_compact.f
4982   const sh4_nofpu_scache* abuf = sem;
4983   const sh4_nofpu_idesc* idesc = abuf->idesc;
4984   int cycles = 0;
4985   {
4986     int referenced = 0;
4987     unsigned long long insn_referenced = abuf->written;
4988     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
4989   }
4990   {
4991     int referenced = 0;
4992     unsigned long long insn_referenced = abuf->written;
4993     cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
4994   }
4995   {
4996     int referenced = 0;
4997     unsigned long long insn_referenced = abuf->written;
4998     INT out_loadreg = -1;
4999     out_loadreg = FLD (out_r0);
5000     cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
5001   }
5002   return cycles;
5003 #undef FLD
5004 }
5005
5006 UINT
5007 sh4_nofpu_sh4_nofpu_model::model_movw10_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5008 {
5009 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
5010   const sh4_nofpu_scache* abuf = sem;
5011   const sh4_nofpu_idesc* idesc = abuf->idesc;
5012   int cycles = 0;
5013   {
5014     cycles += model_u_exec_before (current_cpu, idesc, 0);
5015   }
5016   {
5017     cycles += model_u_memory_access_before (current_cpu, idesc, 1);
5018   }
5019   {
5020     INT out_loadreg = -1;
5021     out_loadreg = FLD (out_rn);
5022     cycles += model_u_load_gr_before (current_cpu, idesc, 2, out_loadreg);
5023   }
5024   return cycles;
5025 #undef FLD
5026 }
5027
5028 UINT
5029 sh4_nofpu_sh4_nofpu_model::model_movw10_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5030 {
5031 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
5032   const sh4_nofpu_scache* abuf = sem;
5033   const sh4_nofpu_idesc* idesc = abuf->idesc;
5034   int cycles = 0;
5035   {
5036     int referenced = 0;
5037     unsigned long long insn_referenced = abuf->written;
5038     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5039   }
5040   {
5041     int referenced = 0;
5042     unsigned long long insn_referenced = abuf->written;
5043     cycles += model_u_memory_access_after (current_cpu, idesc, 1, referenced);
5044   }
5045   {
5046     int referenced = 0;
5047     unsigned long long insn_referenced = abuf->written;
5048     INT out_loadreg = -1;
5049     out_loadreg = FLD (out_rn);
5050     cycles += model_u_load_gr_after (current_cpu, idesc, 2, referenced, out_loadreg);
5051   }
5052   return cycles;
5053 #undef FLD
5054 }
5055
5056 UINT
5057 sh4_nofpu_sh4_nofpu_model::model_movw11_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5058 {
5059 #define FLD(f) abuf->fields.sfmt_movw11_compact.f
5060   const sh4_nofpu_scache* abuf = sem;
5061   const sh4_nofpu_idesc* idesc = abuf->idesc;
5062   int cycles = 0;
5063   {
5064     INT in_usereg = -1;
5065     in_usereg = FLD (in_rm);
5066     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5067   }
5068   {
5069     cycles += model_u_exec_before (current_cpu, idesc, 1);
5070   }
5071   {
5072     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5073   }
5074   {
5075     INT out_loadreg = -1;
5076     out_loadreg = FLD (out_r0);
5077     cycles += model_u_load_gr_before (current_cpu, idesc, 3, out_loadreg);
5078   }
5079   return cycles;
5080 #undef FLD
5081 }
5082
5083 UINT
5084 sh4_nofpu_sh4_nofpu_model::model_movw11_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5085 {
5086 #define FLD(f) abuf->fields.sfmt_movw11_compact.f
5087   const sh4_nofpu_scache* abuf = sem;
5088   const sh4_nofpu_idesc* idesc = abuf->idesc;
5089   int cycles = 0;
5090   {
5091     int referenced = 0;
5092     unsigned long long insn_referenced = abuf->written;
5093     INT in_usereg = -1;
5094     in_usereg = FLD (in_rm);
5095     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5096   }
5097   {
5098     int referenced = 0;
5099     unsigned long long insn_referenced = abuf->written;
5100     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5101   }
5102   {
5103     int referenced = 0;
5104     unsigned long long insn_referenced = abuf->written;
5105     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5106   }
5107   {
5108     int referenced = 0;
5109     unsigned long long insn_referenced = abuf->written;
5110     INT out_loadreg = -1;
5111     out_loadreg = FLD (out_r0);
5112     cycles += model_u_load_gr_after (current_cpu, idesc, 3, referenced, out_loadreg);
5113   }
5114   return cycles;
5115 #undef FLD
5116 }
5117
5118 UINT
5119 sh4_nofpu_sh4_nofpu_model::model_mova_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5120 {
5121 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
5122   const sh4_nofpu_scache* abuf = sem;
5123   const sh4_nofpu_idesc* idesc = abuf->idesc;
5124   int cycles = 0;
5125   {
5126     cycles += model_u_exec_before (current_cpu, idesc, 0);
5127   }
5128   return cycles;
5129 #undef FLD
5130 }
5131
5132 UINT
5133 sh4_nofpu_sh4_nofpu_model::model_mova_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5134 {
5135 #define FLD(f) abuf->fields.sfmt_movl9_compact.f
5136   const sh4_nofpu_scache* abuf = sem;
5137   const sh4_nofpu_idesc* idesc = abuf->idesc;
5138   int cycles = 0;
5139   {
5140     int referenced = 0;
5141     unsigned long long insn_referenced = abuf->written;
5142     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5143   }
5144   return cycles;
5145 #undef FLD
5146 }
5147
5148 UINT
5149 sh4_nofpu_sh4_nofpu_model::model_movcal_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5150 {
5151 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5152   const sh4_nofpu_scache* abuf = sem;
5153   const sh4_nofpu_idesc* idesc = abuf->idesc;
5154   int cycles = 0;
5155   {
5156     INT in_usereg = -1;
5157     in_usereg = FLD (in_rn);
5158     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5159   }
5160   {
5161     cycles += model_u_ocb_before (current_cpu, idesc, 1);
5162   }
5163   return cycles;
5164 #undef FLD
5165 }
5166
5167 UINT
5168 sh4_nofpu_sh4_nofpu_model::model_movcal_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5169 {
5170 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5171   const sh4_nofpu_scache* abuf = sem;
5172   const sh4_nofpu_idesc* idesc = abuf->idesc;
5173   int cycles = 0;
5174   {
5175     int referenced = 0;
5176     unsigned long long insn_referenced = abuf->written;
5177     INT in_usereg = -1;
5178     in_usereg = FLD (in_rn);
5179     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5180   }
5181   {
5182     int referenced = 0;
5183     unsigned long long insn_referenced = abuf->written;
5184     cycles += model_u_ocb_after (current_cpu, idesc, 1, referenced);
5185   }
5186   return cycles;
5187 #undef FLD
5188 }
5189
5190 UINT
5191 sh4_nofpu_sh4_nofpu_model::model_movt_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5192 {
5193 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
5194   const sh4_nofpu_scache* abuf = sem;
5195   const sh4_nofpu_idesc* idesc = abuf->idesc;
5196   int cycles = 0;
5197   {
5198     cycles += model_u_use_tbit_before (current_cpu, idesc, 0);
5199   }
5200   {
5201     cycles += model_u_exec_before (current_cpu, idesc, 1);
5202   }
5203   return cycles;
5204 #undef FLD
5205 }
5206
5207 UINT
5208 sh4_nofpu_sh4_nofpu_model::model_movt_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5209 {
5210 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
5211   const sh4_nofpu_scache* abuf = sem;
5212   const sh4_nofpu_idesc* idesc = abuf->idesc;
5213   int cycles = 0;
5214   {
5215     int referenced = 0;
5216     unsigned long long insn_referenced = abuf->written;
5217     cycles += model_u_use_tbit_after (current_cpu, idesc, 0, referenced);
5218   }
5219   {
5220     int referenced = 0;
5221     unsigned long long insn_referenced = abuf->written;
5222     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5223   }
5224   return cycles;
5225 #undef FLD
5226 }
5227
5228 UINT
5229 sh4_nofpu_sh4_nofpu_model::model_mull_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5230 {
5231 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
5232   const sh4_nofpu_scache* abuf = sem;
5233   const sh4_nofpu_idesc* idesc = abuf->idesc;
5234   int cycles = 0;
5235   {
5236     INT in_usereg = -1;
5237     in_usereg = FLD (in_rn);
5238     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5239   }
5240   {
5241     INT in_usereg = -1;
5242     in_usereg = FLD (in_rm);
5243     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5244   }
5245   {
5246     cycles += model_u_mull_before (current_cpu, idesc, 2);
5247   }
5248   return cycles;
5249 #undef FLD
5250 }
5251
5252 UINT
5253 sh4_nofpu_sh4_nofpu_model::model_mull_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5254 {
5255 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
5256   const sh4_nofpu_scache* abuf = sem;
5257   const sh4_nofpu_idesc* idesc = abuf->idesc;
5258   int cycles = 0;
5259   {
5260     int referenced = 0;
5261     unsigned long long insn_referenced = abuf->written;
5262     INT in_usereg = -1;
5263     in_usereg = FLD (in_rn);
5264     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5265   }
5266   {
5267     int referenced = 0;
5268     unsigned long long insn_referenced = abuf->written;
5269     INT in_usereg = -1;
5270     in_usereg = FLD (in_rm);
5271     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5272   }
5273   {
5274     int referenced = 0;
5275     unsigned long long insn_referenced = abuf->written;
5276     cycles += model_u_mull_after (current_cpu, idesc, 2, referenced);
5277   }
5278   return cycles;
5279 #undef FLD
5280 }
5281
5282 UINT
5283 sh4_nofpu_sh4_nofpu_model::model_mulsw_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5284 {
5285 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
5286   const sh4_nofpu_scache* abuf = sem;
5287   const sh4_nofpu_idesc* idesc = abuf->idesc;
5288   int cycles = 0;
5289   {
5290     INT in_usereg = -1;
5291     in_usereg = FLD (in_rn);
5292     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5293   }
5294   {
5295     INT in_usereg = -1;
5296     in_usereg = FLD (in_rm);
5297     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5298   }
5299   {
5300     cycles += model_u_mulsw_before (current_cpu, idesc, 2);
5301   }
5302   {
5303     cycles += model_u_multiply_before (current_cpu, idesc, 3);
5304   }
5305   return cycles;
5306 #undef FLD
5307 }
5308
5309 UINT
5310 sh4_nofpu_sh4_nofpu_model::model_mulsw_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5311 {
5312 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
5313   const sh4_nofpu_scache* abuf = sem;
5314   const sh4_nofpu_idesc* idesc = abuf->idesc;
5315   int cycles = 0;
5316   {
5317     int referenced = 0;
5318     unsigned long long insn_referenced = abuf->written;
5319     INT in_usereg = -1;
5320     in_usereg = FLD (in_rn);
5321     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5322   }
5323   {
5324     int referenced = 0;
5325     unsigned long long insn_referenced = abuf->written;
5326     INT in_usereg = -1;
5327     in_usereg = FLD (in_rm);
5328     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5329   }
5330   {
5331     int referenced = 0;
5332     unsigned long long insn_referenced = abuf->written;
5333     cycles += model_u_mulsw_after (current_cpu, idesc, 2, referenced);
5334   }
5335   {
5336     int referenced = 0;
5337     unsigned long long insn_referenced = abuf->written;
5338     cycles += model_u_multiply_after (current_cpu, idesc, 3, referenced);
5339   }
5340   return cycles;
5341 #undef FLD
5342 }
5343
5344 UINT
5345 sh4_nofpu_sh4_nofpu_model::model_muluw_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5346 {
5347 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
5348   const sh4_nofpu_scache* abuf = sem;
5349   const sh4_nofpu_idesc* idesc = abuf->idesc;
5350   int cycles = 0;
5351   {
5352     INT in_usereg = -1;
5353     in_usereg = FLD (in_rn);
5354     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5355   }
5356   {
5357     INT in_usereg = -1;
5358     in_usereg = FLD (in_rm);
5359     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5360   }
5361   {
5362     cycles += model_u_mulsw_before (current_cpu, idesc, 2);
5363   }
5364   {
5365     cycles += model_u_multiply_before (current_cpu, idesc, 3);
5366   }
5367   return cycles;
5368 #undef FLD
5369 }
5370
5371 UINT
5372 sh4_nofpu_sh4_nofpu_model::model_muluw_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5373 {
5374 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
5375   const sh4_nofpu_scache* abuf = sem;
5376   const sh4_nofpu_idesc* idesc = abuf->idesc;
5377   int cycles = 0;
5378   {
5379     int referenced = 0;
5380     unsigned long long insn_referenced = abuf->written;
5381     INT in_usereg = -1;
5382     in_usereg = FLD (in_rn);
5383     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5384   }
5385   {
5386     int referenced = 0;
5387     unsigned long long insn_referenced = abuf->written;
5388     INT in_usereg = -1;
5389     in_usereg = FLD (in_rm);
5390     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5391   }
5392   {
5393     int referenced = 0;
5394     unsigned long long insn_referenced = abuf->written;
5395     cycles += model_u_mulsw_after (current_cpu, idesc, 2, referenced);
5396   }
5397   {
5398     int referenced = 0;
5399     unsigned long long insn_referenced = abuf->written;
5400     cycles += model_u_multiply_after (current_cpu, idesc, 3, referenced);
5401   }
5402   return cycles;
5403 #undef FLD
5404 }
5405
5406 UINT
5407 sh4_nofpu_sh4_nofpu_model::model_neg_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5408 {
5409 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
5410   const sh4_nofpu_scache* abuf = sem;
5411   const sh4_nofpu_idesc* idesc = abuf->idesc;
5412   int cycles = 0;
5413   {
5414     INT in_usereg = -1;
5415     in_usereg = FLD (in_rm);
5416     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5417   }
5418   {
5419     cycles += model_u_exec_before (current_cpu, idesc, 1);
5420   }
5421   return cycles;
5422 #undef FLD
5423 }
5424
5425 UINT
5426 sh4_nofpu_sh4_nofpu_model::model_neg_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5427 {
5428 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
5429   const sh4_nofpu_scache* abuf = sem;
5430   const sh4_nofpu_idesc* idesc = abuf->idesc;
5431   int cycles = 0;
5432   {
5433     int referenced = 0;
5434     unsigned long long insn_referenced = abuf->written;
5435     INT in_usereg = -1;
5436     in_usereg = FLD (in_rm);
5437     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5438   }
5439   {
5440     int referenced = 0;
5441     unsigned long long insn_referenced = abuf->written;
5442     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5443   }
5444   return cycles;
5445 #undef FLD
5446 }
5447
5448 UINT
5449 sh4_nofpu_sh4_nofpu_model::model_negc_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5450 {
5451 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
5452   const sh4_nofpu_scache* abuf = sem;
5453   const sh4_nofpu_idesc* idesc = abuf->idesc;
5454   int cycles = 0;
5455   {
5456     INT in_usereg = -1;
5457     in_usereg = FLD (in_rm);
5458     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5459   }
5460   {
5461     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
5462   }
5463   {
5464     cycles += model_u_exec_before (current_cpu, idesc, 2);
5465   }
5466   {
5467     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
5468   }
5469   return cycles;
5470 #undef FLD
5471 }
5472
5473 UINT
5474 sh4_nofpu_sh4_nofpu_model::model_negc_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5475 {
5476 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
5477   const sh4_nofpu_scache* abuf = sem;
5478   const sh4_nofpu_idesc* idesc = abuf->idesc;
5479   int cycles = 0;
5480   {
5481     int referenced = 0;
5482     unsigned long long insn_referenced = abuf->written;
5483     INT in_usereg = -1;
5484     in_usereg = FLD (in_rm);
5485     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5486   }
5487   {
5488     int referenced = 0;
5489     unsigned long long insn_referenced = abuf->written;
5490     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
5491   }
5492   {
5493     int referenced = 0;
5494     unsigned long long insn_referenced = abuf->written;
5495     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5496   }
5497   {
5498     int referenced = 0;
5499     unsigned long long insn_referenced = abuf->written;
5500     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
5501   }
5502   return cycles;
5503 #undef FLD
5504 }
5505
5506 UINT
5507 sh4_nofpu_sh4_nofpu_model::model_nop_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5508 {
5509 #define FLD(f) abuf->fields.fmt_empty.f
5510   const sh4_nofpu_scache* abuf = sem;
5511   const sh4_nofpu_idesc* idesc = abuf->idesc;
5512   int cycles = 0;
5513   {
5514     cycles += model_u_exec_before (current_cpu, idesc, 0);
5515   }
5516   return cycles;
5517 #undef FLD
5518 }
5519
5520 UINT
5521 sh4_nofpu_sh4_nofpu_model::model_nop_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5522 {
5523 #define FLD(f) abuf->fields.fmt_empty.f
5524   const sh4_nofpu_scache* abuf = sem;
5525   const sh4_nofpu_idesc* idesc = abuf->idesc;
5526   int cycles = 0;
5527   {
5528     int referenced = 0;
5529     unsigned long long insn_referenced = abuf->written;
5530     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
5531   }
5532   return cycles;
5533 #undef FLD
5534 }
5535
5536 UINT
5537 sh4_nofpu_sh4_nofpu_model::model_not_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5538 {
5539 #define FLD(f) abuf->fields.sfmt_and_compact.f
5540   const sh4_nofpu_scache* abuf = sem;
5541   const sh4_nofpu_idesc* idesc = abuf->idesc;
5542   int cycles = 0;
5543   {
5544     INT in_usereg = -1;
5545     in_usereg = FLD (in_rm64);
5546     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5547   }
5548   {
5549     cycles += model_u_exec_before (current_cpu, idesc, 1);
5550   }
5551   return cycles;
5552 #undef FLD
5553 }
5554
5555 UINT
5556 sh4_nofpu_sh4_nofpu_model::model_not_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5557 {
5558 #define FLD(f) abuf->fields.sfmt_and_compact.f
5559   const sh4_nofpu_scache* abuf = sem;
5560   const sh4_nofpu_idesc* idesc = abuf->idesc;
5561   int cycles = 0;
5562   {
5563     int referenced = 0;
5564     unsigned long long insn_referenced = abuf->written;
5565     INT in_usereg = -1;
5566     in_usereg = FLD (in_rm64);
5567     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5568   }
5569   {
5570     int referenced = 0;
5571     unsigned long long insn_referenced = abuf->written;
5572     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5573   }
5574   return cycles;
5575 #undef FLD
5576 }
5577
5578 UINT
5579 sh4_nofpu_sh4_nofpu_model::model_ocbi_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5580 {
5581 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5582   const sh4_nofpu_scache* abuf = sem;
5583   const sh4_nofpu_idesc* idesc = abuf->idesc;
5584   int cycles = 0;
5585   {
5586     INT in_usereg = -1;
5587     in_usereg = FLD (in_rn);
5588     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5589   }
5590   {
5591     cycles += model_u_ocb_before (current_cpu, idesc, 1);
5592   }
5593   return cycles;
5594 #undef FLD
5595 }
5596
5597 UINT
5598 sh4_nofpu_sh4_nofpu_model::model_ocbi_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5599 {
5600 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5601   const sh4_nofpu_scache* abuf = sem;
5602   const sh4_nofpu_idesc* idesc = abuf->idesc;
5603   int cycles = 0;
5604   {
5605     int referenced = 0;
5606     unsigned long long insn_referenced = abuf->written;
5607     INT in_usereg = -1;
5608     in_usereg = FLD (in_rn);
5609     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5610   }
5611   {
5612     int referenced = 0;
5613     unsigned long long insn_referenced = abuf->written;
5614     cycles += model_u_ocb_after (current_cpu, idesc, 1, referenced);
5615   }
5616   return cycles;
5617 #undef FLD
5618 }
5619
5620 UINT
5621 sh4_nofpu_sh4_nofpu_model::model_ocbp_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5622 {
5623 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5624   const sh4_nofpu_scache* abuf = sem;
5625   const sh4_nofpu_idesc* idesc = abuf->idesc;
5626   int cycles = 0;
5627   {
5628     INT in_usereg = -1;
5629     in_usereg = FLD (in_rn);
5630     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5631   }
5632   {
5633     cycles += model_u_ocb_before (current_cpu, idesc, 1);
5634   }
5635   return cycles;
5636 #undef FLD
5637 }
5638
5639 UINT
5640 sh4_nofpu_sh4_nofpu_model::model_ocbp_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5641 {
5642 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5643   const sh4_nofpu_scache* abuf = sem;
5644   const sh4_nofpu_idesc* idesc = abuf->idesc;
5645   int cycles = 0;
5646   {
5647     int referenced = 0;
5648     unsigned long long insn_referenced = abuf->written;
5649     INT in_usereg = -1;
5650     in_usereg = FLD (in_rn);
5651     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5652   }
5653   {
5654     int referenced = 0;
5655     unsigned long long insn_referenced = abuf->written;
5656     cycles += model_u_ocb_after (current_cpu, idesc, 1, referenced);
5657   }
5658   return cycles;
5659 #undef FLD
5660 }
5661
5662 UINT
5663 sh4_nofpu_sh4_nofpu_model::model_ocbwb_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5664 {
5665 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5666   const sh4_nofpu_scache* abuf = sem;
5667   const sh4_nofpu_idesc* idesc = abuf->idesc;
5668   int cycles = 0;
5669   {
5670     INT in_usereg = -1;
5671     in_usereg = FLD (in_rn);
5672     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5673   }
5674   {
5675     cycles += model_u_ocb_before (current_cpu, idesc, 1);
5676   }
5677   return cycles;
5678 #undef FLD
5679 }
5680
5681 UINT
5682 sh4_nofpu_sh4_nofpu_model::model_ocbwb_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5683 {
5684 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5685   const sh4_nofpu_scache* abuf = sem;
5686   const sh4_nofpu_idesc* idesc = abuf->idesc;
5687   int cycles = 0;
5688   {
5689     int referenced = 0;
5690     unsigned long long insn_referenced = abuf->written;
5691     INT in_usereg = -1;
5692     in_usereg = FLD (in_rn);
5693     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5694   }
5695   {
5696     int referenced = 0;
5697     unsigned long long insn_referenced = abuf->written;
5698     cycles += model_u_ocb_after (current_cpu, idesc, 1, referenced);
5699   }
5700   return cycles;
5701 #undef FLD
5702 }
5703
5704 UINT
5705 sh4_nofpu_sh4_nofpu_model::model_or_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5706 {
5707 #define FLD(f) abuf->fields.sfmt_and_compact.f
5708   const sh4_nofpu_scache* abuf = sem;
5709   const sh4_nofpu_idesc* idesc = abuf->idesc;
5710   int cycles = 0;
5711   {
5712     INT in_usereg = -1;
5713     in_usereg = FLD (in_rm64);
5714     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5715   }
5716   {
5717     INT in_usereg = -1;
5718     in_usereg = FLD (in_rn64);
5719     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
5720   }
5721   {
5722     cycles += model_u_exec_before (current_cpu, idesc, 2);
5723   }
5724   return cycles;
5725 #undef FLD
5726 }
5727
5728 UINT
5729 sh4_nofpu_sh4_nofpu_model::model_or_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5730 {
5731 #define FLD(f) abuf->fields.sfmt_and_compact.f
5732   const sh4_nofpu_scache* abuf = sem;
5733   const sh4_nofpu_idesc* idesc = abuf->idesc;
5734   int cycles = 0;
5735   {
5736     int referenced = 0;
5737     unsigned long long insn_referenced = abuf->written;
5738     INT in_usereg = -1;
5739     in_usereg = FLD (in_rm64);
5740     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5741   }
5742   {
5743     int referenced = 0;
5744     unsigned long long insn_referenced = abuf->written;
5745     INT in_usereg = -1;
5746     in_usereg = FLD (in_rn64);
5747     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
5748   }
5749   {
5750     int referenced = 0;
5751     unsigned long long insn_referenced = abuf->written;
5752     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5753   }
5754   return cycles;
5755 #undef FLD
5756 }
5757
5758 UINT
5759 sh4_nofpu_sh4_nofpu_model::model_ori_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5760 {
5761 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5762   const sh4_nofpu_scache* abuf = sem;
5763   const sh4_nofpu_idesc* idesc = abuf->idesc;
5764   int cycles = 0;
5765   {
5766     INT in_usereg = -1;
5767     in_usereg = FLD (in_r0);
5768     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5769   }
5770   {
5771     cycles += model_u_exec_before (current_cpu, idesc, 1);
5772   }
5773   return cycles;
5774 #undef FLD
5775 }
5776
5777 UINT
5778 sh4_nofpu_sh4_nofpu_model::model_ori_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5779 {
5780 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5781   const sh4_nofpu_scache* abuf = sem;
5782   const sh4_nofpu_idesc* idesc = abuf->idesc;
5783   int cycles = 0;
5784   {
5785     int referenced = 0;
5786     unsigned long long insn_referenced = abuf->written;
5787     INT in_usereg = -1;
5788     in_usereg = FLD (in_r0);
5789     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5790   }
5791   {
5792     int referenced = 0;
5793     unsigned long long insn_referenced = abuf->written;
5794     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5795   }
5796   return cycles;
5797 #undef FLD
5798 }
5799
5800 UINT
5801 sh4_nofpu_sh4_nofpu_model::model_orb_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5802 {
5803 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5804   const sh4_nofpu_scache* abuf = sem;
5805   const sh4_nofpu_idesc* idesc = abuf->idesc;
5806   int cycles = 0;
5807   {
5808     INT in_usereg = -1;
5809     in_usereg = FLD (in_r0);
5810     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5811   }
5812   {
5813     cycles += model_u_logic_b_before (current_cpu, idesc, 1);
5814   }
5815   {
5816     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5817   }
5818   return cycles;
5819 #undef FLD
5820 }
5821
5822 UINT
5823 sh4_nofpu_sh4_nofpu_model::model_orb_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5824 {
5825 #define FLD(f) abuf->fields.sfmt_andi_compact.f
5826   const sh4_nofpu_scache* abuf = sem;
5827   const sh4_nofpu_idesc* idesc = abuf->idesc;
5828   int cycles = 0;
5829   {
5830     int referenced = 0;
5831     unsigned long long insn_referenced = abuf->written;
5832     INT in_usereg = -1;
5833     in_usereg = FLD (in_r0);
5834     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5835   }
5836   {
5837     int referenced = 0;
5838     unsigned long long insn_referenced = abuf->written;
5839     cycles += model_u_logic_b_after (current_cpu, idesc, 1, referenced);
5840   }
5841   {
5842     int referenced = 0;
5843     unsigned long long insn_referenced = abuf->written;
5844     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5845   }
5846   return cycles;
5847 #undef FLD
5848 }
5849
5850 UINT
5851 sh4_nofpu_sh4_nofpu_model::model_pref_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5852 {
5853 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5854   const sh4_nofpu_scache* abuf = sem;
5855   const sh4_nofpu_idesc* idesc = abuf->idesc;
5856   int cycles = 0;
5857   {
5858     INT in_usereg = -1;
5859     in_usereg = FLD (in_rn);
5860     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5861   }
5862   {
5863     cycles += model_u_exec_before (current_cpu, idesc, 1);
5864   }
5865   {
5866     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
5867   }
5868   return cycles;
5869 #undef FLD
5870 }
5871
5872 UINT
5873 sh4_nofpu_sh4_nofpu_model::model_pref_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5874 {
5875 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5876   const sh4_nofpu_scache* abuf = sem;
5877   const sh4_nofpu_idesc* idesc = abuf->idesc;
5878   int cycles = 0;
5879   {
5880     int referenced = 0;
5881     unsigned long long insn_referenced = abuf->written;
5882     INT in_usereg = -1;
5883     in_usereg = FLD (in_rn);
5884     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5885   }
5886   {
5887     int referenced = 0;
5888     unsigned long long insn_referenced = abuf->written;
5889     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
5890   }
5891   {
5892     int referenced = 0;
5893     unsigned long long insn_referenced = abuf->written;
5894     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
5895   }
5896   return cycles;
5897 #undef FLD
5898 }
5899
5900 UINT
5901 sh4_nofpu_sh4_nofpu_model::model_rotcl_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5902 {
5903 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5904   const sh4_nofpu_scache* abuf = sem;
5905   const sh4_nofpu_idesc* idesc = abuf->idesc;
5906   int cycles = 0;
5907   {
5908     INT in_usereg = -1;
5909     in_usereg = FLD (in_rn);
5910     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5911   }
5912   {
5913     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
5914   }
5915   {
5916     cycles += model_u_exec_before (current_cpu, idesc, 2);
5917   }
5918   {
5919     cycles += model_u_shift_before (current_cpu, idesc, 3);
5920   }
5921   {
5922     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
5923   }
5924   return cycles;
5925 #undef FLD
5926 }
5927
5928 UINT
5929 sh4_nofpu_sh4_nofpu_model::model_rotcl_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5930 {
5931 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5932   const sh4_nofpu_scache* abuf = sem;
5933   const sh4_nofpu_idesc* idesc = abuf->idesc;
5934   int cycles = 0;
5935   {
5936     int referenced = 0;
5937     unsigned long long insn_referenced = abuf->written;
5938     INT in_usereg = -1;
5939     in_usereg = FLD (in_rn);
5940     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
5941   }
5942   {
5943     int referenced = 0;
5944     unsigned long long insn_referenced = abuf->written;
5945     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
5946   }
5947   {
5948     int referenced = 0;
5949     unsigned long long insn_referenced = abuf->written;
5950     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
5951   }
5952   {
5953     int referenced = 0;
5954     unsigned long long insn_referenced = abuf->written;
5955     cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
5956   }
5957   {
5958     int referenced = 0;
5959     unsigned long long insn_referenced = abuf->written;
5960     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
5961   }
5962   return cycles;
5963 #undef FLD
5964 }
5965
5966 UINT
5967 sh4_nofpu_sh4_nofpu_model::model_rotcr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5968 {
5969 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5970   const sh4_nofpu_scache* abuf = sem;
5971   const sh4_nofpu_idesc* idesc = abuf->idesc;
5972   int cycles = 0;
5973   {
5974     INT in_usereg = -1;
5975     in_usereg = FLD (in_rn);
5976     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
5977   }
5978   {
5979     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
5980   }
5981   {
5982     cycles += model_u_exec_before (current_cpu, idesc, 2);
5983   }
5984   {
5985     cycles += model_u_shift_before (current_cpu, idesc, 3);
5986   }
5987   {
5988     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
5989   }
5990   return cycles;
5991 #undef FLD
5992 }
5993
5994 UINT
5995 sh4_nofpu_sh4_nofpu_model::model_rotcr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
5996 {
5997 #define FLD(f) abuf->fields.sfmt_divu_compact.f
5998   const sh4_nofpu_scache* abuf = sem;
5999   const sh4_nofpu_idesc* idesc = abuf->idesc;
6000   int cycles = 0;
6001   {
6002     int referenced = 0;
6003     unsigned long long insn_referenced = abuf->written;
6004     INT in_usereg = -1;
6005     in_usereg = FLD (in_rn);
6006     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6007   }
6008   {
6009     int referenced = 0;
6010     unsigned long long insn_referenced = abuf->written;
6011     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
6012   }
6013   {
6014     int referenced = 0;
6015     unsigned long long insn_referenced = abuf->written;
6016     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6017   }
6018   {
6019     int referenced = 0;
6020     unsigned long long insn_referenced = abuf->written;
6021     cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
6022   }
6023   {
6024     int referenced = 0;
6025     unsigned long long insn_referenced = abuf->written;
6026     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
6027   }
6028   return cycles;
6029 #undef FLD
6030 }
6031
6032 UINT
6033 sh4_nofpu_sh4_nofpu_model::model_rotl_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6034 {
6035 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6036   const sh4_nofpu_scache* abuf = sem;
6037   const sh4_nofpu_idesc* idesc = abuf->idesc;
6038   int cycles = 0;
6039   {
6040     INT in_usereg = -1;
6041     in_usereg = FLD (in_rn);
6042     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6043   }
6044   {
6045     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
6046   }
6047   {
6048     cycles += model_u_exec_before (current_cpu, idesc, 2);
6049   }
6050   {
6051     cycles += model_u_shift_before (current_cpu, idesc, 3);
6052   }
6053   {
6054     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
6055   }
6056   return cycles;
6057 #undef FLD
6058 }
6059
6060 UINT
6061 sh4_nofpu_sh4_nofpu_model::model_rotl_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6062 {
6063 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6064   const sh4_nofpu_scache* abuf = sem;
6065   const sh4_nofpu_idesc* idesc = abuf->idesc;
6066   int cycles = 0;
6067   {
6068     int referenced = 0;
6069     unsigned long long insn_referenced = abuf->written;
6070     INT in_usereg = -1;
6071     in_usereg = FLD (in_rn);
6072     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6073   }
6074   {
6075     int referenced = 0;
6076     unsigned long long insn_referenced = abuf->written;
6077     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
6078   }
6079   {
6080     int referenced = 0;
6081     unsigned long long insn_referenced = abuf->written;
6082     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6083   }
6084   {
6085     int referenced = 0;
6086     unsigned long long insn_referenced = abuf->written;
6087     cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
6088   }
6089   {
6090     int referenced = 0;
6091     unsigned long long insn_referenced = abuf->written;
6092     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
6093   }
6094   return cycles;
6095 #undef FLD
6096 }
6097
6098 UINT
6099 sh4_nofpu_sh4_nofpu_model::model_rotr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6100 {
6101 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6102   const sh4_nofpu_scache* abuf = sem;
6103   const sh4_nofpu_idesc* idesc = abuf->idesc;
6104   int cycles = 0;
6105   {
6106     INT in_usereg = -1;
6107     in_usereg = FLD (in_rn);
6108     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6109   }
6110   {
6111     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
6112   }
6113   {
6114     cycles += model_u_exec_before (current_cpu, idesc, 2);
6115   }
6116   {
6117     cycles += model_u_shift_before (current_cpu, idesc, 3);
6118   }
6119   {
6120     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
6121   }
6122   return cycles;
6123 #undef FLD
6124 }
6125
6126 UINT
6127 sh4_nofpu_sh4_nofpu_model::model_rotr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6128 {
6129 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6130   const sh4_nofpu_scache* abuf = sem;
6131   const sh4_nofpu_idesc* idesc = abuf->idesc;
6132   int cycles = 0;
6133   {
6134     int referenced = 0;
6135     unsigned long long insn_referenced = abuf->written;
6136     INT in_usereg = -1;
6137     in_usereg = FLD (in_rn);
6138     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6139   }
6140   {
6141     int referenced = 0;
6142     unsigned long long insn_referenced = abuf->written;
6143     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
6144   }
6145   {
6146     int referenced = 0;
6147     unsigned long long insn_referenced = abuf->written;
6148     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6149   }
6150   {
6151     int referenced = 0;
6152     unsigned long long insn_referenced = abuf->written;
6153     cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
6154   }
6155   {
6156     int referenced = 0;
6157     unsigned long long insn_referenced = abuf->written;
6158     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
6159   }
6160   return cycles;
6161 #undef FLD
6162 }
6163
6164 UINT
6165 sh4_nofpu_sh4_nofpu_model::model_rts_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6166 {
6167 #define FLD(f) abuf->fields.fmt_empty.f
6168   const sh4_nofpu_scache* abuf = sem;
6169   const sh4_nofpu_idesc* idesc = abuf->idesc;
6170   int cycles = 0;
6171   {
6172     cycles += model_u_jmp_before (current_cpu, idesc, 0);
6173   }
6174   return cycles;
6175 #undef FLD
6176 }
6177
6178 UINT
6179 sh4_nofpu_sh4_nofpu_model::model_rts_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6180 {
6181 #define FLD(f) abuf->fields.fmt_empty.f
6182   const sh4_nofpu_scache* abuf = sem;
6183   const sh4_nofpu_idesc* idesc = abuf->idesc;
6184   int cycles = 0;
6185   {
6186     int referenced = 0;
6187     unsigned long long insn_referenced = abuf->written;
6188     referenced |= 1 << 0;
6189     cycles += model_u_jmp_after (current_cpu, idesc, 0, referenced);
6190   }
6191   return cycles;
6192 #undef FLD
6193 }
6194
6195 UINT
6196 sh4_nofpu_sh4_nofpu_model::model_sets_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6197 {
6198 #define FLD(f) abuf->fields.fmt_empty.f
6199   const sh4_nofpu_scache* abuf = sem;
6200   const sh4_nofpu_idesc* idesc = abuf->idesc;
6201   int cycles = 0;
6202   {
6203     cycles += model_u_exec_before (current_cpu, idesc, 0);
6204   }
6205   {
6206     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 1);
6207   }
6208   return cycles;
6209 #undef FLD
6210 }
6211
6212 UINT
6213 sh4_nofpu_sh4_nofpu_model::model_sets_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6214 {
6215 #define FLD(f) abuf->fields.fmt_empty.f
6216   const sh4_nofpu_scache* abuf = sem;
6217   const sh4_nofpu_idesc* idesc = abuf->idesc;
6218   int cycles = 0;
6219   {
6220     int referenced = 0;
6221     unsigned long long insn_referenced = abuf->written;
6222     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6223   }
6224   {
6225     int referenced = 0;
6226     unsigned long long insn_referenced = abuf->written;
6227     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 1, referenced);
6228   }
6229   return cycles;
6230 #undef FLD
6231 }
6232
6233 UINT
6234 sh4_nofpu_sh4_nofpu_model::model_sett_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6235 {
6236 #define FLD(f) abuf->fields.fmt_empty.f
6237   const sh4_nofpu_scache* abuf = sem;
6238   const sh4_nofpu_idesc* idesc = abuf->idesc;
6239   int cycles = 0;
6240   {
6241     cycles += model_u_exec_before (current_cpu, idesc, 0);
6242   }
6243   {
6244     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
6245   }
6246   {
6247     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 2);
6248   }
6249   return cycles;
6250 #undef FLD
6251 }
6252
6253 UINT
6254 sh4_nofpu_sh4_nofpu_model::model_sett_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6255 {
6256 #define FLD(f) abuf->fields.fmt_empty.f
6257   const sh4_nofpu_scache* abuf = sem;
6258   const sh4_nofpu_idesc* idesc = abuf->idesc;
6259   int cycles = 0;
6260   {
6261     int referenced = 0;
6262     unsigned long long insn_referenced = abuf->written;
6263     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6264   }
6265   {
6266     int referenced = 0;
6267     unsigned long long insn_referenced = abuf->written;
6268     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
6269   }
6270   {
6271     int referenced = 0;
6272     unsigned long long insn_referenced = abuf->written;
6273     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 2, referenced);
6274   }
6275   return cycles;
6276 #undef FLD
6277 }
6278
6279 UINT
6280 sh4_nofpu_sh4_nofpu_model::model_shad_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6281 {
6282 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6283   const sh4_nofpu_scache* abuf = sem;
6284   const sh4_nofpu_idesc* idesc = abuf->idesc;
6285   int cycles = 0;
6286   {
6287     INT in_usereg = -1;
6288     in_usereg = FLD (in_rn);
6289     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6290   }
6291   {
6292     INT in_usereg = -1;
6293     in_usereg = FLD (in_rm);
6294     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
6295   }
6296   {
6297     cycles += model_u_exec_before (current_cpu, idesc, 2);
6298   }
6299   {
6300     cycles += model_u_shift_before (current_cpu, idesc, 3);
6301   }
6302   return cycles;
6303 #undef FLD
6304 }
6305
6306 UINT
6307 sh4_nofpu_sh4_nofpu_model::model_shad_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6308 {
6309 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6310   const sh4_nofpu_scache* abuf = sem;
6311   const sh4_nofpu_idesc* idesc = abuf->idesc;
6312   int cycles = 0;
6313   {
6314     int referenced = 0;
6315     unsigned long long insn_referenced = abuf->written;
6316     INT in_usereg = -1;
6317     in_usereg = FLD (in_rn);
6318     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6319   }
6320   {
6321     int referenced = 0;
6322     unsigned long long insn_referenced = abuf->written;
6323     INT in_usereg = -1;
6324     in_usereg = FLD (in_rm);
6325     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
6326   }
6327   {
6328     int referenced = 0;
6329     unsigned long long insn_referenced = abuf->written;
6330     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6331   }
6332   {
6333     int referenced = 0;
6334     unsigned long long insn_referenced = abuf->written;
6335     cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
6336   }
6337   return cycles;
6338 #undef FLD
6339 }
6340
6341 UINT
6342 sh4_nofpu_sh4_nofpu_model::model_shal_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6343 {
6344 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6345   const sh4_nofpu_scache* abuf = sem;
6346   const sh4_nofpu_idesc* idesc = abuf->idesc;
6347   int cycles = 0;
6348   {
6349     INT in_usereg = -1;
6350     in_usereg = FLD (in_rn);
6351     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6352   }
6353   {
6354     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
6355   }
6356   {
6357     cycles += model_u_exec_before (current_cpu, idesc, 2);
6358   }
6359   {
6360     cycles += model_u_shift_before (current_cpu, idesc, 3);
6361   }
6362   {
6363     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
6364   }
6365   return cycles;
6366 #undef FLD
6367 }
6368
6369 UINT
6370 sh4_nofpu_sh4_nofpu_model::model_shal_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6371 {
6372 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6373   const sh4_nofpu_scache* abuf = sem;
6374   const sh4_nofpu_idesc* idesc = abuf->idesc;
6375   int cycles = 0;
6376   {
6377     int referenced = 0;
6378     unsigned long long insn_referenced = abuf->written;
6379     INT in_usereg = -1;
6380     in_usereg = FLD (in_rn);
6381     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6382   }
6383   {
6384     int referenced = 0;
6385     unsigned long long insn_referenced = abuf->written;
6386     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
6387   }
6388   {
6389     int referenced = 0;
6390     unsigned long long insn_referenced = abuf->written;
6391     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6392   }
6393   {
6394     int referenced = 0;
6395     unsigned long long insn_referenced = abuf->written;
6396     cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
6397   }
6398   {
6399     int referenced = 0;
6400     unsigned long long insn_referenced = abuf->written;
6401     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
6402   }
6403   return cycles;
6404 #undef FLD
6405 }
6406
6407 UINT
6408 sh4_nofpu_sh4_nofpu_model::model_shar_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6409 {
6410 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6411   const sh4_nofpu_scache* abuf = sem;
6412   const sh4_nofpu_idesc* idesc = abuf->idesc;
6413   int cycles = 0;
6414   {
6415     INT in_usereg = -1;
6416     in_usereg = FLD (in_rn);
6417     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6418   }
6419   {
6420     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
6421   }
6422   {
6423     cycles += model_u_exec_before (current_cpu, idesc, 2);
6424   }
6425   {
6426     cycles += model_u_shift_before (current_cpu, idesc, 3);
6427   }
6428   {
6429     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
6430   }
6431   return cycles;
6432 #undef FLD
6433 }
6434
6435 UINT
6436 sh4_nofpu_sh4_nofpu_model::model_shar_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6437 {
6438 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6439   const sh4_nofpu_scache* abuf = sem;
6440   const sh4_nofpu_idesc* idesc = abuf->idesc;
6441   int cycles = 0;
6442   {
6443     int referenced = 0;
6444     unsigned long long insn_referenced = abuf->written;
6445     INT in_usereg = -1;
6446     in_usereg = FLD (in_rn);
6447     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6448   }
6449   {
6450     int referenced = 0;
6451     unsigned long long insn_referenced = abuf->written;
6452     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
6453   }
6454   {
6455     int referenced = 0;
6456     unsigned long long insn_referenced = abuf->written;
6457     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6458   }
6459   {
6460     int referenced = 0;
6461     unsigned long long insn_referenced = abuf->written;
6462     cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
6463   }
6464   {
6465     int referenced = 0;
6466     unsigned long long insn_referenced = abuf->written;
6467     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
6468   }
6469   return cycles;
6470 #undef FLD
6471 }
6472
6473 UINT
6474 sh4_nofpu_sh4_nofpu_model::model_shld_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6475 {
6476 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6477   const sh4_nofpu_scache* abuf = sem;
6478   const sh4_nofpu_idesc* idesc = abuf->idesc;
6479   int cycles = 0;
6480   {
6481     INT in_usereg = -1;
6482     in_usereg = FLD (in_rn);
6483     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6484   }
6485   {
6486     cycles += model_u_exec_before (current_cpu, idesc, 1);
6487   }
6488   {
6489     cycles += model_u_shift_before (current_cpu, idesc, 2);
6490   }
6491   return cycles;
6492 #undef FLD
6493 }
6494
6495 UINT
6496 sh4_nofpu_sh4_nofpu_model::model_shld_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6497 {
6498 #define FLD(f) abuf->fields.sfmt_macl_compact.f
6499   const sh4_nofpu_scache* abuf = sem;
6500   const sh4_nofpu_idesc* idesc = abuf->idesc;
6501   int cycles = 0;
6502   {
6503     int referenced = 0;
6504     unsigned long long insn_referenced = abuf->written;
6505     INT in_usereg = -1;
6506     in_usereg = FLD (in_rn);
6507     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6508   }
6509   {
6510     int referenced = 0;
6511     unsigned long long insn_referenced = abuf->written;
6512     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6513   }
6514   {
6515     int referenced = 0;
6516     unsigned long long insn_referenced = abuf->written;
6517     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
6518   }
6519   return cycles;
6520 #undef FLD
6521 }
6522
6523 UINT
6524 sh4_nofpu_sh4_nofpu_model::model_shll_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6525 {
6526 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6527   const sh4_nofpu_scache* abuf = sem;
6528   const sh4_nofpu_idesc* idesc = abuf->idesc;
6529   int cycles = 0;
6530   {
6531     INT in_usereg = -1;
6532     in_usereg = FLD (in_rn);
6533     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6534   }
6535   {
6536     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
6537   }
6538   {
6539     cycles += model_u_exec_before (current_cpu, idesc, 2);
6540   }
6541   {
6542     cycles += model_u_shift_before (current_cpu, idesc, 3);
6543   }
6544   {
6545     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
6546   }
6547   return cycles;
6548 #undef FLD
6549 }
6550
6551 UINT
6552 sh4_nofpu_sh4_nofpu_model::model_shll_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6553 {
6554 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6555   const sh4_nofpu_scache* abuf = sem;
6556   const sh4_nofpu_idesc* idesc = abuf->idesc;
6557   int cycles = 0;
6558   {
6559     int referenced = 0;
6560     unsigned long long insn_referenced = abuf->written;
6561     INT in_usereg = -1;
6562     in_usereg = FLD (in_rn);
6563     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6564   }
6565   {
6566     int referenced = 0;
6567     unsigned long long insn_referenced = abuf->written;
6568     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
6569   }
6570   {
6571     int referenced = 0;
6572     unsigned long long insn_referenced = abuf->written;
6573     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6574   }
6575   {
6576     int referenced = 0;
6577     unsigned long long insn_referenced = abuf->written;
6578     cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
6579   }
6580   {
6581     int referenced = 0;
6582     unsigned long long insn_referenced = abuf->written;
6583     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
6584   }
6585   return cycles;
6586 #undef FLD
6587 }
6588
6589 UINT
6590 sh4_nofpu_sh4_nofpu_model::model_shll2_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6591 {
6592 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6593   const sh4_nofpu_scache* abuf = sem;
6594   const sh4_nofpu_idesc* idesc = abuf->idesc;
6595   int cycles = 0;
6596   {
6597     INT in_usereg = -1;
6598     in_usereg = FLD (in_rn);
6599     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6600   }
6601   {
6602     cycles += model_u_exec_before (current_cpu, idesc, 1);
6603   }
6604   {
6605     cycles += model_u_shift_before (current_cpu, idesc, 2);
6606   }
6607   return cycles;
6608 #undef FLD
6609 }
6610
6611 UINT
6612 sh4_nofpu_sh4_nofpu_model::model_shll2_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6613 {
6614 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6615   const sh4_nofpu_scache* abuf = sem;
6616   const sh4_nofpu_idesc* idesc = abuf->idesc;
6617   int cycles = 0;
6618   {
6619     int referenced = 0;
6620     unsigned long long insn_referenced = abuf->written;
6621     INT in_usereg = -1;
6622     in_usereg = FLD (in_rn);
6623     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6624   }
6625   {
6626     int referenced = 0;
6627     unsigned long long insn_referenced = abuf->written;
6628     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6629   }
6630   {
6631     int referenced = 0;
6632     unsigned long long insn_referenced = abuf->written;
6633     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
6634   }
6635   return cycles;
6636 #undef FLD
6637 }
6638
6639 UINT
6640 sh4_nofpu_sh4_nofpu_model::model_shll8_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6641 {
6642 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6643   const sh4_nofpu_scache* abuf = sem;
6644   const sh4_nofpu_idesc* idesc = abuf->idesc;
6645   int cycles = 0;
6646   {
6647     INT in_usereg = -1;
6648     in_usereg = FLD (in_rn);
6649     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6650   }
6651   {
6652     cycles += model_u_exec_before (current_cpu, idesc, 1);
6653   }
6654   {
6655     cycles += model_u_shift_before (current_cpu, idesc, 2);
6656   }
6657   return cycles;
6658 #undef FLD
6659 }
6660
6661 UINT
6662 sh4_nofpu_sh4_nofpu_model::model_shll8_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6663 {
6664 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6665   const sh4_nofpu_scache* abuf = sem;
6666   const sh4_nofpu_idesc* idesc = abuf->idesc;
6667   int cycles = 0;
6668   {
6669     int referenced = 0;
6670     unsigned long long insn_referenced = abuf->written;
6671     INT in_usereg = -1;
6672     in_usereg = FLD (in_rn);
6673     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6674   }
6675   {
6676     int referenced = 0;
6677     unsigned long long insn_referenced = abuf->written;
6678     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6679   }
6680   {
6681     int referenced = 0;
6682     unsigned long long insn_referenced = abuf->written;
6683     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
6684   }
6685   return cycles;
6686 #undef FLD
6687 }
6688
6689 UINT
6690 sh4_nofpu_sh4_nofpu_model::model_shll16_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6691 {
6692 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6693   const sh4_nofpu_scache* abuf = sem;
6694   const sh4_nofpu_idesc* idesc = abuf->idesc;
6695   int cycles = 0;
6696   {
6697     INT in_usereg = -1;
6698     in_usereg = FLD (in_rn);
6699     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6700   }
6701   {
6702     cycles += model_u_exec_before (current_cpu, idesc, 1);
6703   }
6704   {
6705     cycles += model_u_shift_before (current_cpu, idesc, 2);
6706   }
6707   return cycles;
6708 #undef FLD
6709 }
6710
6711 UINT
6712 sh4_nofpu_sh4_nofpu_model::model_shll16_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6713 {
6714 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6715   const sh4_nofpu_scache* abuf = sem;
6716   const sh4_nofpu_idesc* idesc = abuf->idesc;
6717   int cycles = 0;
6718   {
6719     int referenced = 0;
6720     unsigned long long insn_referenced = abuf->written;
6721     INT in_usereg = -1;
6722     in_usereg = FLD (in_rn);
6723     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6724   }
6725   {
6726     int referenced = 0;
6727     unsigned long long insn_referenced = abuf->written;
6728     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6729   }
6730   {
6731     int referenced = 0;
6732     unsigned long long insn_referenced = abuf->written;
6733     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
6734   }
6735   return cycles;
6736 #undef FLD
6737 }
6738
6739 UINT
6740 sh4_nofpu_sh4_nofpu_model::model_shlr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6741 {
6742 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6743   const sh4_nofpu_scache* abuf = sem;
6744   const sh4_nofpu_idesc* idesc = abuf->idesc;
6745   int cycles = 0;
6746   {
6747     INT in_usereg = -1;
6748     in_usereg = FLD (in_rn);
6749     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6750   }
6751   {
6752     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
6753   }
6754   {
6755     cycles += model_u_exec_before (current_cpu, idesc, 2);
6756   }
6757   {
6758     cycles += model_u_shift_before (current_cpu, idesc, 3);
6759   }
6760   {
6761     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
6762   }
6763   return cycles;
6764 #undef FLD
6765 }
6766
6767 UINT
6768 sh4_nofpu_sh4_nofpu_model::model_shlr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6769 {
6770 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6771   const sh4_nofpu_scache* abuf = sem;
6772   const sh4_nofpu_idesc* idesc = abuf->idesc;
6773   int cycles = 0;
6774   {
6775     int referenced = 0;
6776     unsigned long long insn_referenced = abuf->written;
6777     INT in_usereg = -1;
6778     in_usereg = FLD (in_rn);
6779     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6780   }
6781   {
6782     int referenced = 0;
6783     unsigned long long insn_referenced = abuf->written;
6784     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
6785   }
6786   {
6787     int referenced = 0;
6788     unsigned long long insn_referenced = abuf->written;
6789     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
6790   }
6791   {
6792     int referenced = 0;
6793     unsigned long long insn_referenced = abuf->written;
6794     cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
6795   }
6796   {
6797     int referenced = 0;
6798     unsigned long long insn_referenced = abuf->written;
6799     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
6800   }
6801   return cycles;
6802 #undef FLD
6803 }
6804
6805 UINT
6806 sh4_nofpu_sh4_nofpu_model::model_shlr2_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6807 {
6808 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6809   const sh4_nofpu_scache* abuf = sem;
6810   const sh4_nofpu_idesc* idesc = abuf->idesc;
6811   int cycles = 0;
6812   {
6813     INT in_usereg = -1;
6814     in_usereg = FLD (in_rn);
6815     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6816   }
6817   {
6818     cycles += model_u_exec_before (current_cpu, idesc, 1);
6819   }
6820   {
6821     cycles += model_u_shift_before (current_cpu, idesc, 2);
6822   }
6823   return cycles;
6824 #undef FLD
6825 }
6826
6827 UINT
6828 sh4_nofpu_sh4_nofpu_model::model_shlr2_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6829 {
6830 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6831   const sh4_nofpu_scache* abuf = sem;
6832   const sh4_nofpu_idesc* idesc = abuf->idesc;
6833   int cycles = 0;
6834   {
6835     int referenced = 0;
6836     unsigned long long insn_referenced = abuf->written;
6837     INT in_usereg = -1;
6838     in_usereg = FLD (in_rn);
6839     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6840   }
6841   {
6842     int referenced = 0;
6843     unsigned long long insn_referenced = abuf->written;
6844     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6845   }
6846   {
6847     int referenced = 0;
6848     unsigned long long insn_referenced = abuf->written;
6849     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
6850   }
6851   return cycles;
6852 #undef FLD
6853 }
6854
6855 UINT
6856 sh4_nofpu_sh4_nofpu_model::model_shlr8_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6857 {
6858 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6859   const sh4_nofpu_scache* abuf = sem;
6860   const sh4_nofpu_idesc* idesc = abuf->idesc;
6861   int cycles = 0;
6862   {
6863     INT in_usereg = -1;
6864     in_usereg = FLD (in_rn);
6865     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6866   }
6867   {
6868     cycles += model_u_exec_before (current_cpu, idesc, 1);
6869   }
6870   {
6871     cycles += model_u_shift_before (current_cpu, idesc, 2);
6872   }
6873   return cycles;
6874 #undef FLD
6875 }
6876
6877 UINT
6878 sh4_nofpu_sh4_nofpu_model::model_shlr8_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6879 {
6880 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6881   const sh4_nofpu_scache* abuf = sem;
6882   const sh4_nofpu_idesc* idesc = abuf->idesc;
6883   int cycles = 0;
6884   {
6885     int referenced = 0;
6886     unsigned long long insn_referenced = abuf->written;
6887     INT in_usereg = -1;
6888     in_usereg = FLD (in_rn);
6889     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6890   }
6891   {
6892     int referenced = 0;
6893     unsigned long long insn_referenced = abuf->written;
6894     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6895   }
6896   {
6897     int referenced = 0;
6898     unsigned long long insn_referenced = abuf->written;
6899     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
6900   }
6901   return cycles;
6902 #undef FLD
6903 }
6904
6905 UINT
6906 sh4_nofpu_sh4_nofpu_model::model_shlr16_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6907 {
6908 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6909   const sh4_nofpu_scache* abuf = sem;
6910   const sh4_nofpu_idesc* idesc = abuf->idesc;
6911   int cycles = 0;
6912   {
6913     INT in_usereg = -1;
6914     in_usereg = FLD (in_rn);
6915     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
6916   }
6917   {
6918     cycles += model_u_exec_before (current_cpu, idesc, 1);
6919   }
6920   {
6921     cycles += model_u_shift_before (current_cpu, idesc, 2);
6922   }
6923   return cycles;
6924 #undef FLD
6925 }
6926
6927 UINT
6928 sh4_nofpu_sh4_nofpu_model::model_shlr16_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6929 {
6930 #define FLD(f) abuf->fields.sfmt_divu_compact.f
6931   const sh4_nofpu_scache* abuf = sem;
6932   const sh4_nofpu_idesc* idesc = abuf->idesc;
6933   int cycles = 0;
6934   {
6935     int referenced = 0;
6936     unsigned long long insn_referenced = abuf->written;
6937     INT in_usereg = -1;
6938     in_usereg = FLD (in_rn);
6939     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
6940   }
6941   {
6942     int referenced = 0;
6943     unsigned long long insn_referenced = abuf->written;
6944     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
6945   }
6946   {
6947     int referenced = 0;
6948     unsigned long long insn_referenced = abuf->written;
6949     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
6950   }
6951   return cycles;
6952 #undef FLD
6953 }
6954
6955 UINT
6956 sh4_nofpu_sh4_nofpu_model::model_stc_gbr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6957 {
6958 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
6959   const sh4_nofpu_scache* abuf = sem;
6960   const sh4_nofpu_idesc* idesc = abuf->idesc;
6961   int cycles = 0;
6962   {
6963     cycles += model_u_exec_before (current_cpu, idesc, 0);
6964   }
6965   return cycles;
6966 #undef FLD
6967 }
6968
6969 UINT
6970 sh4_nofpu_sh4_nofpu_model::model_stc_gbr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6971 {
6972 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
6973   const sh4_nofpu_scache* abuf = sem;
6974   const sh4_nofpu_idesc* idesc = abuf->idesc;
6975   int cycles = 0;
6976   {
6977     int referenced = 0;
6978     unsigned long long insn_referenced = abuf->written;
6979     cycles += model_u_exec_after (current_cpu, idesc, 0, referenced);
6980   }
6981   return cycles;
6982 #undef FLD
6983 }
6984
6985 UINT
6986 sh4_nofpu_sh4_nofpu_model::model_stc_vbr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
6987 {
6988 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
6989   const sh4_nofpu_scache* abuf = sem;
6990   const sh4_nofpu_idesc* idesc = abuf->idesc;
6991   int cycles = 0;
6992   {
6993     cycles += model_u_stc_vbr_before (current_cpu, idesc, 0);
6994   }
6995   return cycles;
6996 #undef FLD
6997 }
6998
6999 UINT
7000 sh4_nofpu_sh4_nofpu_model::model_stc_vbr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7001 {
7002 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7003   const sh4_nofpu_scache* abuf = sem;
7004   const sh4_nofpu_idesc* idesc = abuf->idesc;
7005   int cycles = 0;
7006   {
7007     int referenced = 0;
7008     unsigned long long insn_referenced = abuf->written;
7009     cycles += model_u_stc_vbr_after (current_cpu, idesc, 0, referenced);
7010   }
7011   return cycles;
7012 #undef FLD
7013 }
7014
7015 UINT
7016 sh4_nofpu_sh4_nofpu_model::model_stcl_gbr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7017 {
7018 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7019   const sh4_nofpu_scache* abuf = sem;
7020   const sh4_nofpu_idesc* idesc = abuf->idesc;
7021   int cycles = 0;
7022   {
7023     INT in_usereg = -1;
7024     in_usereg = FLD (in_rn);
7025     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7026   }
7027   {
7028     cycles += model_u_ldcl_before (current_cpu, idesc, 1);
7029   }
7030   {
7031     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
7032   }
7033   return cycles;
7034 #undef FLD
7035 }
7036
7037 UINT
7038 sh4_nofpu_sh4_nofpu_model::model_stcl_gbr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7039 {
7040 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7041   const sh4_nofpu_scache* abuf = sem;
7042   const sh4_nofpu_idesc* idesc = abuf->idesc;
7043   int cycles = 0;
7044   {
7045     int referenced = 0;
7046     unsigned long long insn_referenced = abuf->written;
7047     INT in_usereg = -1;
7048     in_usereg = FLD (in_rn);
7049     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7050   }
7051   {
7052     int referenced = 0;
7053     unsigned long long insn_referenced = abuf->written;
7054     cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
7055   }
7056   {
7057     int referenced = 0;
7058     unsigned long long insn_referenced = abuf->written;
7059     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
7060   }
7061   return cycles;
7062 #undef FLD
7063 }
7064
7065 UINT
7066 sh4_nofpu_sh4_nofpu_model::model_stcl_vbr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7067 {
7068 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7069   const sh4_nofpu_scache* abuf = sem;
7070   const sh4_nofpu_idesc* idesc = abuf->idesc;
7071   int cycles = 0;
7072   {
7073     INT in_usereg = -1;
7074     in_usereg = FLD (in_rn);
7075     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7076   }
7077   {
7078     cycles += model_u_ldcl_before (current_cpu, idesc, 1);
7079   }
7080   {
7081     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
7082   }
7083   return cycles;
7084 #undef FLD
7085 }
7086
7087 UINT
7088 sh4_nofpu_sh4_nofpu_model::model_stcl_vbr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7089 {
7090 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7091   const sh4_nofpu_scache* abuf = sem;
7092   const sh4_nofpu_idesc* idesc = abuf->idesc;
7093   int cycles = 0;
7094   {
7095     int referenced = 0;
7096     unsigned long long insn_referenced = abuf->written;
7097     INT in_usereg = -1;
7098     in_usereg = FLD (in_rn);
7099     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7100   }
7101   {
7102     int referenced = 0;
7103     unsigned long long insn_referenced = abuf->written;
7104     cycles += model_u_ldcl_after (current_cpu, idesc, 1, referenced);
7105   }
7106   {
7107     int referenced = 0;
7108     unsigned long long insn_referenced = abuf->written;
7109     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
7110   }
7111   return cycles;
7112 #undef FLD
7113 }
7114
7115 UINT
7116 sh4_nofpu_sh4_nofpu_model::model_sts_mach_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7117 {
7118 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7119   const sh4_nofpu_scache* abuf = sem;
7120   const sh4_nofpu_idesc* idesc = abuf->idesc;
7121   int cycles = 0;
7122   {
7123     cycles += model_u_use_multiply_result_before (current_cpu, idesc, 0);
7124   }
7125   {
7126     cycles += model_u_write_back_before (current_cpu, idesc, 1);
7127   }
7128   {
7129     cycles += model_u_exec_before (current_cpu, idesc, 2);
7130   }
7131   {
7132     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
7133   }
7134   return cycles;
7135 #undef FLD
7136 }
7137
7138 UINT
7139 sh4_nofpu_sh4_nofpu_model::model_sts_mach_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7140 {
7141 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7142   const sh4_nofpu_scache* abuf = sem;
7143   const sh4_nofpu_idesc* idesc = abuf->idesc;
7144   int cycles = 0;
7145   {
7146     int referenced = 0;
7147     unsigned long long insn_referenced = abuf->written;
7148     cycles += model_u_use_multiply_result_after (current_cpu, idesc, 0, referenced);
7149   }
7150   {
7151     int referenced = 0;
7152     unsigned long long insn_referenced = abuf->written;
7153     cycles += model_u_write_back_after (current_cpu, idesc, 1, referenced);
7154   }
7155   {
7156     int referenced = 0;
7157     unsigned long long insn_referenced = abuf->written;
7158     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7159   }
7160   {
7161     int referenced = 0;
7162     unsigned long long insn_referenced = abuf->written;
7163     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
7164   }
7165   return cycles;
7166 #undef FLD
7167 }
7168
7169 UINT
7170 sh4_nofpu_sh4_nofpu_model::model_stsl_mach_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7171 {
7172 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7173   const sh4_nofpu_scache* abuf = sem;
7174   const sh4_nofpu_idesc* idesc = abuf->idesc;
7175   int cycles = 0;
7176   {
7177     INT in_usereg = -1;
7178     in_usereg = FLD (in_rn);
7179     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7180   }
7181   {
7182     cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
7183   }
7184   {
7185     cycles += model_u_write_back_before (current_cpu, idesc, 2);
7186   }
7187   {
7188     cycles += model_u_exec_before (current_cpu, idesc, 3);
7189   }
7190   {
7191     cycles += model_u_memory_access_before (current_cpu, idesc, 4);
7192   }
7193   return cycles;
7194 #undef FLD
7195 }
7196
7197 UINT
7198 sh4_nofpu_sh4_nofpu_model::model_stsl_mach_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7199 {
7200 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7201   const sh4_nofpu_scache* abuf = sem;
7202   const sh4_nofpu_idesc* idesc = abuf->idesc;
7203   int cycles = 0;
7204   {
7205     int referenced = 0;
7206     unsigned long long insn_referenced = abuf->written;
7207     INT in_usereg = -1;
7208     in_usereg = FLD (in_rn);
7209     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7210   }
7211   {
7212     int referenced = 0;
7213     unsigned long long insn_referenced = abuf->written;
7214     cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
7215   }
7216   {
7217     int referenced = 0;
7218     unsigned long long insn_referenced = abuf->written;
7219     cycles += model_u_write_back_after (current_cpu, idesc, 2, referenced);
7220   }
7221   {
7222     int referenced = 0;
7223     unsigned long long insn_referenced = abuf->written;
7224     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
7225   }
7226   {
7227     int referenced = 0;
7228     unsigned long long insn_referenced = abuf->written;
7229     cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
7230   }
7231   return cycles;
7232 #undef FLD
7233 }
7234
7235 UINT
7236 sh4_nofpu_sh4_nofpu_model::model_sts_macl_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7237 {
7238 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7239   const sh4_nofpu_scache* abuf = sem;
7240   const sh4_nofpu_idesc* idesc = abuf->idesc;
7241   int cycles = 0;
7242   {
7243     cycles += model_u_use_multiply_result_before (current_cpu, idesc, 0);
7244   }
7245   {
7246     cycles += model_u_write_back_before (current_cpu, idesc, 1);
7247   }
7248   {
7249     cycles += model_u_exec_before (current_cpu, idesc, 2);
7250   }
7251   {
7252     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
7253   }
7254   return cycles;
7255 #undef FLD
7256 }
7257
7258 UINT
7259 sh4_nofpu_sh4_nofpu_model::model_sts_macl_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7260 {
7261 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7262   const sh4_nofpu_scache* abuf = sem;
7263   const sh4_nofpu_idesc* idesc = abuf->idesc;
7264   int cycles = 0;
7265   {
7266     int referenced = 0;
7267     unsigned long long insn_referenced = abuf->written;
7268     cycles += model_u_use_multiply_result_after (current_cpu, idesc, 0, referenced);
7269   }
7270   {
7271     int referenced = 0;
7272     unsigned long long insn_referenced = abuf->written;
7273     cycles += model_u_write_back_after (current_cpu, idesc, 1, referenced);
7274   }
7275   {
7276     int referenced = 0;
7277     unsigned long long insn_referenced = abuf->written;
7278     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7279   }
7280   {
7281     int referenced = 0;
7282     unsigned long long insn_referenced = abuf->written;
7283     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
7284   }
7285   return cycles;
7286 #undef FLD
7287 }
7288
7289 UINT
7290 sh4_nofpu_sh4_nofpu_model::model_stsl_macl_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7291 {
7292 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7293   const sh4_nofpu_scache* abuf = sem;
7294   const sh4_nofpu_idesc* idesc = abuf->idesc;
7295   int cycles = 0;
7296   {
7297     INT in_usereg = -1;
7298     in_usereg = FLD (in_rn);
7299     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7300   }
7301   {
7302     cycles += model_u_use_multiply_result_before (current_cpu, idesc, 1);
7303   }
7304   {
7305     cycles += model_u_write_back_before (current_cpu, idesc, 2);
7306   }
7307   {
7308     cycles += model_u_exec_before (current_cpu, idesc, 3);
7309   }
7310   {
7311     cycles += model_u_memory_access_before (current_cpu, idesc, 4);
7312   }
7313   return cycles;
7314 #undef FLD
7315 }
7316
7317 UINT
7318 sh4_nofpu_sh4_nofpu_model::model_stsl_macl_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7319 {
7320 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7321   const sh4_nofpu_scache* abuf = sem;
7322   const sh4_nofpu_idesc* idesc = abuf->idesc;
7323   int cycles = 0;
7324   {
7325     int referenced = 0;
7326     unsigned long long insn_referenced = abuf->written;
7327     INT in_usereg = -1;
7328     in_usereg = FLD (in_rn);
7329     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7330   }
7331   {
7332     int referenced = 0;
7333     unsigned long long insn_referenced = abuf->written;
7334     cycles += model_u_use_multiply_result_after (current_cpu, idesc, 1, referenced);
7335   }
7336   {
7337     int referenced = 0;
7338     unsigned long long insn_referenced = abuf->written;
7339     cycles += model_u_write_back_after (current_cpu, idesc, 2, referenced);
7340   }
7341   {
7342     int referenced = 0;
7343     unsigned long long insn_referenced = abuf->written;
7344     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
7345   }
7346   {
7347     int referenced = 0;
7348     unsigned long long insn_referenced = abuf->written;
7349     cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
7350   }
7351   return cycles;
7352 #undef FLD
7353 }
7354
7355 UINT
7356 sh4_nofpu_sh4_nofpu_model::model_sts_pr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7357 {
7358 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7359   const sh4_nofpu_scache* abuf = sem;
7360   const sh4_nofpu_idesc* idesc = abuf->idesc;
7361   int cycles = 0;
7362   {
7363     cycles += model_u_use_pr_before (current_cpu, idesc, 0);
7364   }
7365   {
7366     cycles += model_u_sts_pr_before (current_cpu, idesc, 1);
7367   }
7368   return cycles;
7369 #undef FLD
7370 }
7371
7372 UINT
7373 sh4_nofpu_sh4_nofpu_model::model_sts_pr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7374 {
7375 #define FLD(f) abuf->fields.sfmt_movw10_compact.f
7376   const sh4_nofpu_scache* abuf = sem;
7377   const sh4_nofpu_idesc* idesc = abuf->idesc;
7378   int cycles = 0;
7379   {
7380     int referenced = 0;
7381     unsigned long long insn_referenced = abuf->written;
7382     cycles += model_u_use_pr_after (current_cpu, idesc, 0, referenced);
7383   }
7384   {
7385     int referenced = 0;
7386     unsigned long long insn_referenced = abuf->written;
7387     cycles += model_u_sts_pr_after (current_cpu, idesc, 1, referenced);
7388   }
7389   return cycles;
7390 #undef FLD
7391 }
7392
7393 UINT
7394 sh4_nofpu_sh4_nofpu_model::model_stsl_pr_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7395 {
7396 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7397   const sh4_nofpu_scache* abuf = sem;
7398   const sh4_nofpu_idesc* idesc = abuf->idesc;
7399   int cycles = 0;
7400   {
7401     INT in_usereg = -1;
7402     in_usereg = FLD (in_rn);
7403     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7404   }
7405   {
7406     cycles += model_u_use_pr_before (current_cpu, idesc, 1);
7407   }
7408   {
7409     cycles += model_u_sts_pr_before (current_cpu, idesc, 2);
7410   }
7411   {
7412     cycles += model_u_memory_access_before (current_cpu, idesc, 3);
7413   }
7414   return cycles;
7415 #undef FLD
7416 }
7417
7418 UINT
7419 sh4_nofpu_sh4_nofpu_model::model_stsl_pr_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7420 {
7421 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7422   const sh4_nofpu_scache* abuf = sem;
7423   const sh4_nofpu_idesc* idesc = abuf->idesc;
7424   int cycles = 0;
7425   {
7426     int referenced = 0;
7427     unsigned long long insn_referenced = abuf->written;
7428     INT in_usereg = -1;
7429     in_usereg = FLD (in_rn);
7430     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7431   }
7432   {
7433     int referenced = 0;
7434     unsigned long long insn_referenced = abuf->written;
7435     cycles += model_u_use_pr_after (current_cpu, idesc, 1, referenced);
7436   }
7437   {
7438     int referenced = 0;
7439     unsigned long long insn_referenced = abuf->written;
7440     cycles += model_u_sts_pr_after (current_cpu, idesc, 2, referenced);
7441   }
7442   {
7443     int referenced = 0;
7444     unsigned long long insn_referenced = abuf->written;
7445     cycles += model_u_memory_access_after (current_cpu, idesc, 3, referenced);
7446   }
7447   return cycles;
7448 #undef FLD
7449 }
7450
7451 UINT
7452 sh4_nofpu_sh4_nofpu_model::model_sub_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7453 {
7454 #define FLD(f) abuf->fields.sfmt_macl_compact.f
7455   const sh4_nofpu_scache* abuf = sem;
7456   const sh4_nofpu_idesc* idesc = abuf->idesc;
7457   int cycles = 0;
7458   {
7459     INT in_usereg = -1;
7460     in_usereg = FLD (in_rn);
7461     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7462   }
7463   {
7464     INT in_usereg = -1;
7465     in_usereg = FLD (in_rm);
7466     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
7467   }
7468   {
7469     cycles += model_u_exec_before (current_cpu, idesc, 2);
7470   }
7471   return cycles;
7472 #undef FLD
7473 }
7474
7475 UINT
7476 sh4_nofpu_sh4_nofpu_model::model_sub_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7477 {
7478 #define FLD(f) abuf->fields.sfmt_macl_compact.f
7479   const sh4_nofpu_scache* abuf = sem;
7480   const sh4_nofpu_idesc* idesc = abuf->idesc;
7481   int cycles = 0;
7482   {
7483     int referenced = 0;
7484     unsigned long long insn_referenced = abuf->written;
7485     INT in_usereg = -1;
7486     in_usereg = FLD (in_rn);
7487     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7488   }
7489   {
7490     int referenced = 0;
7491     unsigned long long insn_referenced = abuf->written;
7492     INT in_usereg = -1;
7493     in_usereg = FLD (in_rm);
7494     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
7495   }
7496   {
7497     int referenced = 0;
7498     unsigned long long insn_referenced = abuf->written;
7499     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7500   }
7501   return cycles;
7502 #undef FLD
7503 }
7504
7505 UINT
7506 sh4_nofpu_sh4_nofpu_model::model_subc_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7507 {
7508 #define FLD(f) abuf->fields.sfmt_macl_compact.f
7509   const sh4_nofpu_scache* abuf = sem;
7510   const sh4_nofpu_idesc* idesc = abuf->idesc;
7511   int cycles = 0;
7512   {
7513     INT in_usereg = -1;
7514     in_usereg = FLD (in_rn);
7515     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7516   }
7517   {
7518     INT in_usereg = -1;
7519     in_usereg = FLD (in_rm);
7520     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
7521   }
7522   {
7523     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
7524   }
7525   {
7526     cycles += model_u_exec_before (current_cpu, idesc, 3);
7527   }
7528   return cycles;
7529 #undef FLD
7530 }
7531
7532 UINT
7533 sh4_nofpu_sh4_nofpu_model::model_subc_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7534 {
7535 #define FLD(f) abuf->fields.sfmt_macl_compact.f
7536   const sh4_nofpu_scache* abuf = sem;
7537   const sh4_nofpu_idesc* idesc = abuf->idesc;
7538   int cycles = 0;
7539   {
7540     int referenced = 0;
7541     unsigned long long insn_referenced = abuf->written;
7542     INT in_usereg = -1;
7543     in_usereg = FLD (in_rn);
7544     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7545   }
7546   {
7547     int referenced = 0;
7548     unsigned long long insn_referenced = abuf->written;
7549     INT in_usereg = -1;
7550     in_usereg = FLD (in_rm);
7551     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
7552   }
7553   {
7554     int referenced = 0;
7555     unsigned long long insn_referenced = abuf->written;
7556     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
7557   }
7558   {
7559     int referenced = 0;
7560     unsigned long long insn_referenced = abuf->written;
7561     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
7562   }
7563   return cycles;
7564 #undef FLD
7565 }
7566
7567 UINT
7568 sh4_nofpu_sh4_nofpu_model::model_subv_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7569 {
7570 #define FLD(f) abuf->fields.sfmt_macl_compact.f
7571   const sh4_nofpu_scache* abuf = sem;
7572   const sh4_nofpu_idesc* idesc = abuf->idesc;
7573   int cycles = 0;
7574   {
7575     INT in_usereg = -1;
7576     in_usereg = FLD (in_rn);
7577     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7578   }
7579   {
7580     INT in_usereg = -1;
7581     in_usereg = FLD (in_rm);
7582     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
7583   }
7584   {
7585     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
7586   }
7587   {
7588     cycles += model_u_exec_before (current_cpu, idesc, 3);
7589   }
7590   {
7591     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7592   }
7593   return cycles;
7594 #undef FLD
7595 }
7596
7597 UINT
7598 sh4_nofpu_sh4_nofpu_model::model_subv_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7599 {
7600 #define FLD(f) abuf->fields.sfmt_macl_compact.f
7601   const sh4_nofpu_scache* abuf = sem;
7602   const sh4_nofpu_idesc* idesc = abuf->idesc;
7603   int cycles = 0;
7604   {
7605     int referenced = 0;
7606     unsigned long long insn_referenced = abuf->written;
7607     INT in_usereg = -1;
7608     in_usereg = FLD (in_rn);
7609     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7610   }
7611   {
7612     int referenced = 0;
7613     unsigned long long insn_referenced = abuf->written;
7614     INT in_usereg = -1;
7615     in_usereg = FLD (in_rm);
7616     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
7617   }
7618   {
7619     int referenced = 0;
7620     unsigned long long insn_referenced = abuf->written;
7621     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
7622   }
7623   {
7624     int referenced = 0;
7625     unsigned long long insn_referenced = abuf->written;
7626     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
7627   }
7628   {
7629     int referenced = 0;
7630     unsigned long long insn_referenced = abuf->written;
7631     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7632   }
7633   return cycles;
7634 #undef FLD
7635 }
7636
7637 UINT
7638 sh4_nofpu_sh4_nofpu_model::model_swapb_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7639 {
7640 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
7641   const sh4_nofpu_scache* abuf = sem;
7642   const sh4_nofpu_idesc* idesc = abuf->idesc;
7643   int cycles = 0;
7644   {
7645     INT in_usereg = -1;
7646     in_usereg = FLD (in_rm);
7647     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7648   }
7649   {
7650     cycles += model_u_exec_before (current_cpu, idesc, 1);
7651   }
7652   {
7653     cycles += model_u_shift_before (current_cpu, idesc, 2);
7654   }
7655   return cycles;
7656 #undef FLD
7657 }
7658
7659 UINT
7660 sh4_nofpu_sh4_nofpu_model::model_swapb_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7661 {
7662 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
7663   const sh4_nofpu_scache* abuf = sem;
7664   const sh4_nofpu_idesc* idesc = abuf->idesc;
7665   int cycles = 0;
7666   {
7667     int referenced = 0;
7668     unsigned long long insn_referenced = abuf->written;
7669     INT in_usereg = -1;
7670     in_usereg = FLD (in_rm);
7671     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7672   }
7673   {
7674     int referenced = 0;
7675     unsigned long long insn_referenced = abuf->written;
7676     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7677   }
7678   {
7679     int referenced = 0;
7680     unsigned long long insn_referenced = abuf->written;
7681     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
7682   }
7683   return cycles;
7684 #undef FLD
7685 }
7686
7687 UINT
7688 sh4_nofpu_sh4_nofpu_model::model_swapw_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7689 {
7690 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
7691   const sh4_nofpu_scache* abuf = sem;
7692   const sh4_nofpu_idesc* idesc = abuf->idesc;
7693   int cycles = 0;
7694   {
7695     INT in_usereg = -1;
7696     in_usereg = FLD (in_rm);
7697     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7698   }
7699   {
7700     cycles += model_u_exec_before (current_cpu, idesc, 1);
7701   }
7702   {
7703     cycles += model_u_shift_before (current_cpu, idesc, 2);
7704   }
7705   return cycles;
7706 #undef FLD
7707 }
7708
7709 UINT
7710 sh4_nofpu_sh4_nofpu_model::model_swapw_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7711 {
7712 #define FLD(f) abuf->fields.sfmt_movl12_compact.f
7713   const sh4_nofpu_scache* abuf = sem;
7714   const sh4_nofpu_idesc* idesc = abuf->idesc;
7715   int cycles = 0;
7716   {
7717     int referenced = 0;
7718     unsigned long long insn_referenced = abuf->written;
7719     INT in_usereg = -1;
7720     in_usereg = FLD (in_rm);
7721     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7722   }
7723   {
7724     int referenced = 0;
7725     unsigned long long insn_referenced = abuf->written;
7726     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
7727   }
7728   {
7729     int referenced = 0;
7730     unsigned long long insn_referenced = abuf->written;
7731     cycles += model_u_shift_after (current_cpu, idesc, 2, referenced);
7732   }
7733   return cycles;
7734 #undef FLD
7735 }
7736
7737 UINT
7738 sh4_nofpu_sh4_nofpu_model::model_tasb_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7739 {
7740 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7741   const sh4_nofpu_scache* abuf = sem;
7742   const sh4_nofpu_idesc* idesc = abuf->idesc;
7743   int cycles = 0;
7744   {
7745     INT in_usereg = -1;
7746     in_usereg = FLD (in_rn);
7747     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7748   }
7749   {
7750     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7751   }
7752   {
7753     cycles += model_u_tas_before (current_cpu, idesc, 2);
7754   }
7755   {
7756     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
7757   }
7758   {
7759     cycles += model_u_memory_access_before (current_cpu, idesc, 4);
7760   }
7761   return cycles;
7762 #undef FLD
7763 }
7764
7765 UINT
7766 sh4_nofpu_sh4_nofpu_model::model_tasb_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7767 {
7768 #define FLD(f) abuf->fields.sfmt_divu_compact.f
7769   const sh4_nofpu_scache* abuf = sem;
7770   const sh4_nofpu_idesc* idesc = abuf->idesc;
7771   int cycles = 0;
7772   {
7773     int referenced = 0;
7774     unsigned long long insn_referenced = abuf->written;
7775     INT in_usereg = -1;
7776     in_usereg = FLD (in_rn);
7777     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7778   }
7779   {
7780     int referenced = 0;
7781     unsigned long long insn_referenced = abuf->written;
7782     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7783   }
7784   {
7785     int referenced = 0;
7786     unsigned long long insn_referenced = abuf->written;
7787     cycles += model_u_tas_after (current_cpu, idesc, 2, referenced);
7788   }
7789   {
7790     int referenced = 0;
7791     unsigned long long insn_referenced = abuf->written;
7792     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
7793   }
7794   {
7795     int referenced = 0;
7796     unsigned long long insn_referenced = abuf->written;
7797     cycles += model_u_memory_access_after (current_cpu, idesc, 4, referenced);
7798   }
7799   return cycles;
7800 #undef FLD
7801 }
7802
7803 UINT
7804 sh4_nofpu_sh4_nofpu_model::model_trapa_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7805 {
7806 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7807   const sh4_nofpu_scache* abuf = sem;
7808   const sh4_nofpu_idesc* idesc = abuf->idesc;
7809   int cycles = 0;
7810   {
7811     cycles += model_u_trap_before (current_cpu, idesc, 0);
7812   }
7813   return cycles;
7814 #undef FLD
7815 }
7816
7817 UINT
7818 sh4_nofpu_sh4_nofpu_model::model_trapa_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7819 {
7820 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7821   const sh4_nofpu_scache* abuf = sem;
7822   const sh4_nofpu_idesc* idesc = abuf->idesc;
7823   int cycles = 0;
7824   {
7825     int referenced = 0;
7826     unsigned long long insn_referenced = abuf->written;
7827     cycles += model_u_trap_after (current_cpu, idesc, 0, referenced);
7828   }
7829   return cycles;
7830 #undef FLD
7831 }
7832
7833 UINT
7834 sh4_nofpu_sh4_nofpu_model::model_tst_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7835 {
7836 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
7837   const sh4_nofpu_scache* abuf = sem;
7838   const sh4_nofpu_idesc* idesc = abuf->idesc;
7839   int cycles = 0;
7840   {
7841     INT in_usereg = -1;
7842     in_usereg = FLD (in_rn);
7843     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7844   }
7845   {
7846     INT in_usereg = -1;
7847     in_usereg = FLD (in_rm);
7848     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
7849   }
7850   {
7851     cycles += model_u_use_tbit_before (current_cpu, idesc, 2);
7852   }
7853   {
7854     cycles += model_u_exec_before (current_cpu, idesc, 3);
7855   }
7856   {
7857     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7858   }
7859   return cycles;
7860 #undef FLD
7861 }
7862
7863 UINT
7864 sh4_nofpu_sh4_nofpu_model::model_tst_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7865 {
7866 #define FLD(f) abuf->fields.sfmt_movl13_compact.f
7867   const sh4_nofpu_scache* abuf = sem;
7868   const sh4_nofpu_idesc* idesc = abuf->idesc;
7869   int cycles = 0;
7870   {
7871     int referenced = 0;
7872     unsigned long long insn_referenced = abuf->written;
7873     INT in_usereg = -1;
7874     in_usereg = FLD (in_rn);
7875     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7876   }
7877   {
7878     int referenced = 0;
7879     unsigned long long insn_referenced = abuf->written;
7880     INT in_usereg = -1;
7881     in_usereg = FLD (in_rm);
7882     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
7883   }
7884   {
7885     int referenced = 0;
7886     unsigned long long insn_referenced = abuf->written;
7887     cycles += model_u_use_tbit_after (current_cpu, idesc, 2, referenced);
7888   }
7889   {
7890     int referenced = 0;
7891     unsigned long long insn_referenced = abuf->written;
7892     cycles += model_u_exec_after (current_cpu, idesc, 3, referenced);
7893   }
7894   {
7895     int referenced = 0;
7896     unsigned long long insn_referenced = abuf->written;
7897     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
7898   }
7899   return cycles;
7900 #undef FLD
7901 }
7902
7903 UINT
7904 sh4_nofpu_sh4_nofpu_model::model_tsti_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7905 {
7906 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7907   const sh4_nofpu_scache* abuf = sem;
7908   const sh4_nofpu_idesc* idesc = abuf->idesc;
7909   int cycles = 0;
7910   {
7911     INT in_usereg = -1;
7912     in_usereg = FLD (in_r0);
7913     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7914   }
7915   {
7916     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7917   }
7918   {
7919     cycles += model_u_exec_before (current_cpu, idesc, 2);
7920   }
7921   {
7922     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 3);
7923   }
7924   return cycles;
7925 #undef FLD
7926 }
7927
7928 UINT
7929 sh4_nofpu_sh4_nofpu_model::model_tsti_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7930 {
7931 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7932   const sh4_nofpu_scache* abuf = sem;
7933   const sh4_nofpu_idesc* idesc = abuf->idesc;
7934   int cycles = 0;
7935   {
7936     int referenced = 0;
7937     unsigned long long insn_referenced = abuf->written;
7938     INT in_usereg = -1;
7939     in_usereg = FLD (in_r0);
7940     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
7941   }
7942   {
7943     int referenced = 0;
7944     unsigned long long insn_referenced = abuf->written;
7945     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
7946   }
7947   {
7948     int referenced = 0;
7949     unsigned long long insn_referenced = abuf->written;
7950     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
7951   }
7952   {
7953     int referenced = 0;
7954     unsigned long long insn_referenced = abuf->written;
7955     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 3, referenced);
7956   }
7957   return cycles;
7958 #undef FLD
7959 }
7960
7961 UINT
7962 sh4_nofpu_sh4_nofpu_model::model_tstb_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7963 {
7964 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7965   const sh4_nofpu_scache* abuf = sem;
7966   const sh4_nofpu_idesc* idesc = abuf->idesc;
7967   int cycles = 0;
7968   {
7969     INT in_usereg = -1;
7970     in_usereg = FLD (in_r0);
7971     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
7972   }
7973   {
7974     cycles += model_u_use_tbit_before (current_cpu, idesc, 1);
7975   }
7976   {
7977     cycles += model_u_exec_before (current_cpu, idesc, 2);
7978   }
7979   {
7980     cycles += model_u_sx_before (current_cpu, idesc, 3);
7981   }
7982   {
7983     cycles += model_u_set_sr_bit_before (current_cpu, idesc, 4);
7984   }
7985   {
7986     cycles += model_u_memory_access_before (current_cpu, idesc, 5);
7987   }
7988   return cycles;
7989 #undef FLD
7990 }
7991
7992 UINT
7993 sh4_nofpu_sh4_nofpu_model::model_tstb_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
7994 {
7995 #define FLD(f) abuf->fields.sfmt_andi_compact.f
7996   const sh4_nofpu_scache* abuf = sem;
7997   const sh4_nofpu_idesc* idesc = abuf->idesc;
7998   int cycles = 0;
7999   {
8000     int referenced = 0;
8001     unsigned long long insn_referenced = abuf->written;
8002     INT in_usereg = -1;
8003     in_usereg = FLD (in_r0);
8004     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8005   }
8006   {
8007     int referenced = 0;
8008     unsigned long long insn_referenced = abuf->written;
8009     cycles += model_u_use_tbit_after (current_cpu, idesc, 1, referenced);
8010   }
8011   {
8012     int referenced = 0;
8013     unsigned long long insn_referenced = abuf->written;
8014     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8015   }
8016   {
8017     int referenced = 0;
8018     unsigned long long insn_referenced = abuf->written;
8019     cycles += model_u_sx_after (current_cpu, idesc, 3, referenced);
8020   }
8021   {
8022     int referenced = 0;
8023     unsigned long long insn_referenced = abuf->written;
8024     cycles += model_u_set_sr_bit_after (current_cpu, idesc, 4, referenced);
8025   }
8026   {
8027     int referenced = 0;
8028     unsigned long long insn_referenced = abuf->written;
8029     cycles += model_u_memory_access_after (current_cpu, idesc, 5, referenced);
8030   }
8031   return cycles;
8032 #undef FLD
8033 }
8034
8035 UINT
8036 sh4_nofpu_sh4_nofpu_model::model_xor_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
8037 {
8038 #define FLD(f) abuf->fields.sfmt_and_compact.f
8039   const sh4_nofpu_scache* abuf = sem;
8040   const sh4_nofpu_idesc* idesc = abuf->idesc;
8041   int cycles = 0;
8042   {
8043     INT in_usereg = -1;
8044     in_usereg = FLD (in_rn64);
8045     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8046   }
8047   {
8048     INT in_usereg = -1;
8049     in_usereg = FLD (in_rm64);
8050     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
8051   }
8052   {
8053     cycles += model_u_exec_before (current_cpu, idesc, 2);
8054   }
8055   return cycles;
8056 #undef FLD
8057 }
8058
8059 UINT
8060 sh4_nofpu_sh4_nofpu_model::model_xor_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
8061 {
8062 #define FLD(f) abuf->fields.sfmt_and_compact.f
8063   const sh4_nofpu_scache* abuf = sem;
8064   const sh4_nofpu_idesc* idesc = abuf->idesc;
8065   int cycles = 0;
8066   {
8067     int referenced = 0;
8068     unsigned long long insn_referenced = abuf->written;
8069     INT in_usereg = -1;
8070     in_usereg = FLD (in_rn64);
8071     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8072   }
8073   {
8074     int referenced = 0;
8075     unsigned long long insn_referenced = abuf->written;
8076     INT in_usereg = -1;
8077     in_usereg = FLD (in_rm64);
8078     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
8079   }
8080   {
8081     int referenced = 0;
8082     unsigned long long insn_referenced = abuf->written;
8083     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8084   }
8085   return cycles;
8086 #undef FLD
8087 }
8088
8089 UINT
8090 sh4_nofpu_sh4_nofpu_model::model_xori_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
8091 {
8092 #define FLD(f) abuf->fields.sfmt_andi_compact.f
8093   const sh4_nofpu_scache* abuf = sem;
8094   const sh4_nofpu_idesc* idesc = abuf->idesc;
8095   int cycles = 0;
8096   {
8097     INT in_usereg = -1;
8098     in_usereg = FLD (in_r0);
8099     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8100   }
8101   {
8102     cycles += model_u_exec_before (current_cpu, idesc, 1);
8103   }
8104   return cycles;
8105 #undef FLD
8106 }
8107
8108 UINT
8109 sh4_nofpu_sh4_nofpu_model::model_xori_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
8110 {
8111 #define FLD(f) abuf->fields.sfmt_andi_compact.f
8112   const sh4_nofpu_scache* abuf = sem;
8113   const sh4_nofpu_idesc* idesc = abuf->idesc;
8114   int cycles = 0;
8115   {
8116     int referenced = 0;
8117     unsigned long long insn_referenced = abuf->written;
8118     INT in_usereg = -1;
8119     in_usereg = FLD (in_r0);
8120     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8121   }
8122   {
8123     int referenced = 0;
8124     unsigned long long insn_referenced = abuf->written;
8125     cycles += model_u_exec_after (current_cpu, idesc, 1, referenced);
8126   }
8127   return cycles;
8128 #undef FLD
8129 }
8130
8131 UINT
8132 sh4_nofpu_sh4_nofpu_model::model_xorb_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
8133 {
8134 #define FLD(f) abuf->fields.sfmt_andi_compact.f
8135   const sh4_nofpu_scache* abuf = sem;
8136   const sh4_nofpu_idesc* idesc = abuf->idesc;
8137   int cycles = 0;
8138   {
8139     INT in_usereg = -1;
8140     in_usereg = FLD (in_r0);
8141     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8142   }
8143   {
8144     cycles += model_u_logic_b_before (current_cpu, idesc, 1);
8145   }
8146   {
8147     cycles += model_u_memory_access_before (current_cpu, idesc, 2);
8148   }
8149   return cycles;
8150 #undef FLD
8151 }
8152
8153 UINT
8154 sh4_nofpu_sh4_nofpu_model::model_xorb_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
8155 {
8156 #define FLD(f) abuf->fields.sfmt_andi_compact.f
8157   const sh4_nofpu_scache* abuf = sem;
8158   const sh4_nofpu_idesc* idesc = abuf->idesc;
8159   int cycles = 0;
8160   {
8161     int referenced = 0;
8162     unsigned long long insn_referenced = abuf->written;
8163     INT in_usereg = -1;
8164     in_usereg = FLD (in_r0);
8165     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8166   }
8167   {
8168     int referenced = 0;
8169     unsigned long long insn_referenced = abuf->written;
8170     cycles += model_u_logic_b_after (current_cpu, idesc, 1, referenced);
8171   }
8172   {
8173     int referenced = 0;
8174     unsigned long long insn_referenced = abuf->written;
8175     cycles += model_u_memory_access_after (current_cpu, idesc, 2, referenced);
8176   }
8177   return cycles;
8178 #undef FLD
8179 }
8180
8181 UINT
8182 sh4_nofpu_sh4_nofpu_model::model_xtrct_compact_before (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
8183 {
8184 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8185   const sh4_nofpu_scache* abuf = sem;
8186   const sh4_nofpu_idesc* idesc = abuf->idesc;
8187   int cycles = 0;
8188   {
8189     INT in_usereg = -1;
8190     in_usereg = FLD (in_rn);
8191     cycles += model_u_use_gr_before (current_cpu, idesc, 0, in_usereg);
8192   }
8193   {
8194     INT in_usereg = -1;
8195     in_usereg = FLD (in_rm);
8196     cycles += model_u_use_gr_before (current_cpu, idesc, 1, in_usereg);
8197   }
8198   {
8199     cycles += model_u_exec_before (current_cpu, idesc, 2);
8200   }
8201   {
8202     cycles += model_u_shift_before (current_cpu, idesc, 3);
8203   }
8204   return cycles;
8205 #undef FLD
8206 }
8207
8208 UINT
8209 sh4_nofpu_sh4_nofpu_model::model_xtrct_compact_after (sh4_nofpu_cpu *current_cpu, sh4_nofpu_scache *sem)
8210 {
8211 #define FLD(f) abuf->fields.sfmt_macl_compact.f
8212   const sh4_nofpu_scache* abuf = sem;
8213   const sh4_nofpu_idesc* idesc = abuf->idesc;
8214   int cycles = 0;
8215   {
8216     int referenced = 0;
8217     unsigned long long insn_referenced = abuf->written;
8218     INT in_usereg = -1;
8219     in_usereg = FLD (in_rn);
8220     cycles += model_u_use_gr_after (current_cpu, idesc, 0, referenced, in_usereg);
8221   }
8222   {
8223     int referenced = 0;
8224     unsigned long long insn_referenced = abuf->written;
8225     INT in_usereg = -1;
8226     in_usereg = FLD (in_rm);
8227     cycles += model_u_use_gr_after (current_cpu, idesc, 1, referenced, in_usereg);
8228   }
8229   {
8230     int referenced = 0;
8231     unsigned long long insn_referenced = abuf->written;
8232     cycles += model_u_exec_after (current_cpu, idesc, 2, referenced);
8233   }
8234   {
8235     int referenced = 0;
8236     unsigned long long insn_referenced = abuf->written;
8237     cycles += model_u_shift_after (current_cpu, idesc, 3, referenced);
8238   }
8239   return cycles;
8240 #undef FLD
8241 }
8242
8243 /* We assume UNIT_NONE == 0 because the tables don't always terminate
8244    entries with it.  */
8245
8246 /* Model timing data for `sh4-nofpu'.  */
8247
8248 const sh4_nofpu_sh4_nofpu_model::insn_timing sh4_nofpu_sh4_nofpu_model::timing[] = {
8249   { SH4_NOFPU_INSN_X_INVALID, 0, 0, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8250   { SH4_NOFPU_INSN_ADD_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_add_compact_before, & sh4_nofpu_sh4_nofpu_model::model_add_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8251   { SH4_NOFPU_INSN_ADDI_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_addi_compact_before, & sh4_nofpu_sh4_nofpu_model::model_addi_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8252   { SH4_NOFPU_INSN_ADDC_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_addc_compact_before, & sh4_nofpu_sh4_nofpu_model::model_addc_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8253   { SH4_NOFPU_INSN_ADDV_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_addv_compact_before, & sh4_nofpu_sh4_nofpu_model::model_addv_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8254   { SH4_NOFPU_INSN_AND_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_and_compact_before, & sh4_nofpu_sh4_nofpu_model::model_and_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8255   { SH4_NOFPU_INSN_ANDI_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_andi_compact_before, & sh4_nofpu_sh4_nofpu_model::model_andi_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8256   { SH4_NOFPU_INSN_ANDB_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_andb_compact_before, & sh4_nofpu_sh4_nofpu_model::model_andb_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOGIC_B, 0, 3 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8257   { SH4_NOFPU_INSN_BF_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_bf_compact_before, & sh4_nofpu_sh4_nofpu_model::model_bf_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_BRANCH, 0, 3 } } },
8258   { SH4_NOFPU_INSN_BFS_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_bfs_compact_before, & sh4_nofpu_sh4_nofpu_model::model_bfs_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_BRANCH, 0, 2 } } },
8259   { SH4_NOFPU_INSN_BRA_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_bra_compact_before, & sh4_nofpu_sh4_nofpu_model::model_bra_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_BRANCH, 0, 2 } } },
8260   { SH4_NOFPU_INSN_BRAF_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_braf_compact_before, & sh4_nofpu_sh4_nofpu_model::model_braf_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_JMP, 0, 2 } } },
8261   { SH4_NOFPU_INSN_BSR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_bsr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_bsr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_BRANCH, 0, 2 } } },
8262   { SH4_NOFPU_INSN_BSRF_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_bsrf_compact_before, & sh4_nofpu_sh4_nofpu_model::model_bsrf_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_JSR, 0, 2 } } },
8263   { SH4_NOFPU_INSN_BT_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_bt_compact_before, & sh4_nofpu_sh4_nofpu_model::model_bt_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_BRANCH, 0, 3 } } },
8264   { SH4_NOFPU_INSN_BTS_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_bts_compact_before, & sh4_nofpu_sh4_nofpu_model::model_bts_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_BRANCH, 0, 2 } } },
8265   { SH4_NOFPU_INSN_CLRMAC_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_clrmac_compact_before, & sh4_nofpu_sh4_nofpu_model::model_clrmac_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_MAC, 0, 0 } } },
8266   { SH4_NOFPU_INSN_CLRS_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_clrs_compact_before, & sh4_nofpu_sh4_nofpu_model::model_clrs_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8267   { SH4_NOFPU_INSN_CLRT_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_clrt_compact_before, & sh4_nofpu_sh4_nofpu_model::model_clrt_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8268   { SH4_NOFPU_INSN_CMPEQ_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_cmpeq_compact_before, & sh4_nofpu_sh4_nofpu_model::model_cmpeq_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8269   { SH4_NOFPU_INSN_CMPEQI_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_cmpeqi_compact_before, & sh4_nofpu_sh4_nofpu_model::model_cmpeqi_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8270   { SH4_NOFPU_INSN_CMPGE_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_cmpge_compact_before, & sh4_nofpu_sh4_nofpu_model::model_cmpge_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8271   { SH4_NOFPU_INSN_CMPGT_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_cmpgt_compact_before, & sh4_nofpu_sh4_nofpu_model::model_cmpgt_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8272   { SH4_NOFPU_INSN_CMPHI_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_cmphi_compact_before, & sh4_nofpu_sh4_nofpu_model::model_cmphi_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8273   { SH4_NOFPU_INSN_CMPHS_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_cmphs_compact_before, & sh4_nofpu_sh4_nofpu_model::model_cmphs_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8274   { SH4_NOFPU_INSN_CMPPL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_cmppl_compact_before, & sh4_nofpu_sh4_nofpu_model::model_cmppl_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8275   { SH4_NOFPU_INSN_CMPPZ_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_cmppz_compact_before, & sh4_nofpu_sh4_nofpu_model::model_cmppz_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8276   { SH4_NOFPU_INSN_CMPSTR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_cmpstr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_cmpstr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8277   { SH4_NOFPU_INSN_DIV0S_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_div0s_compact_before, & sh4_nofpu_sh4_nofpu_model::model_div0s_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8278   { SH4_NOFPU_INSN_DIV0U_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_div0u_compact_before, & sh4_nofpu_sh4_nofpu_model::model_div0u_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8279   { SH4_NOFPU_INSN_DIV1_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_div1_compact_before, & sh4_nofpu_sh4_nofpu_model::model_div1_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8280   { SH4_NOFPU_INSN_DIVU_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_divu_compact_before, & sh4_nofpu_sh4_nofpu_model::model_divu_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 34 } } },
8281   { SH4_NOFPU_INSN_MULR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_mulr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_mulr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MULR, 1, 2 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MULR_GR, 0, 0 } } },
8282   { SH4_NOFPU_INSN_DMULSL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_dmulsl_compact_before, & sh4_nofpu_sh4_nofpu_model::model_dmulsl_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_DMUL, 1, 2 } } },
8283   { SH4_NOFPU_INSN_DMULUL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_dmulul_compact_before, & sh4_nofpu_sh4_nofpu_model::model_dmulul_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_DMUL, 1, 2 } } },
8284   { SH4_NOFPU_INSN_DT_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_dt_compact_before, & sh4_nofpu_sh4_nofpu_model::model_dt_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8285   { SH4_NOFPU_INSN_EXTSB_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_extsb_compact_before, & sh4_nofpu_sh4_nofpu_model::model_extsb_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8286   { SH4_NOFPU_INSN_EXTSW_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_extsw_compact_before, & sh4_nofpu_sh4_nofpu_model::model_extsw_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8287   { SH4_NOFPU_INSN_EXTUB_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_extub_compact_before, & sh4_nofpu_sh4_nofpu_model::model_extub_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8288   { SH4_NOFPU_INSN_EXTUW_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_extuw_compact_before, & sh4_nofpu_sh4_nofpu_model::model_extuw_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8289   { SH4_NOFPU_INSN_FRCHG_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_frchg_compact_before, & sh4_nofpu_sh4_nofpu_model::model_frchg_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8290   { SH4_NOFPU_INSN_FSCHG_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_fschg_compact_before, & sh4_nofpu_sh4_nofpu_model::model_fschg_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8291   { SH4_NOFPU_INSN_JMP_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_jmp_compact_before, & sh4_nofpu_sh4_nofpu_model::model_jmp_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_JMP, 0, 2 } } },
8292   { SH4_NOFPU_INSN_JSR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_jsr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_jsr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_JSR, 0, 2 } } },
8293   { SH4_NOFPU_INSN_LDC_GBR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ldc_gbr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ldc_gbr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LDC_GBR, 0, 1 } } },
8294   { SH4_NOFPU_INSN_LDC_VBR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ldc_vbr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ldc_vbr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8295   { SH4_NOFPU_INSN_LDC_SR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ldc_sr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ldc_sr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LDC_SR, 0, 1 } } },
8296   { SH4_NOFPU_INSN_LDCL_GBR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ldcl_gbr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ldcl_gbr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LDCL, 0, 3 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GBR, 0, 0 } } },
8297   { SH4_NOFPU_INSN_LDCL_VBR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ldcl_vbr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ldcl_vbr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LDCL_VBR, 0, 3 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_VBR, 0, 0 } } },
8298   { SH4_NOFPU_INSN_LDS_MACH_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_lds_mach_compact_before, & sh4_nofpu_sh4_nofpu_model::model_lds_mach_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_MAC, 0, 0 } } },
8299   { SH4_NOFPU_INSN_LDSL_MACH_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ldsl_mach_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ldsl_mach_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_MAC, 0, 0 } } },
8300   { SH4_NOFPU_INSN_LDS_MACL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_lds_macl_compact_before, & sh4_nofpu_sh4_nofpu_model::model_lds_macl_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_MAC, 0, 0 } } },
8301   { SH4_NOFPU_INSN_LDSL_MACL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ldsl_macl_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ldsl_macl_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_MAC, 0, 0 } } },
8302   { SH4_NOFPU_INSN_LDS_PR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_lds_pr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_lds_pr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LDS_PR, 0, 1 } } },
8303   { SH4_NOFPU_INSN_LDSL_PR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ldsl_pr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ldsl_pr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LDS_PR, 0, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_PR, 0, 0 } } },
8304   { SH4_NOFPU_INSN_MACL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_macl_compact_before, & sh4_nofpu_sh4_nofpu_model::model_macl_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MACL, 1, 2 } } },
8305   { SH4_NOFPU_INSN_MACW_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_macw_compact_before, & sh4_nofpu_sh4_nofpu_model::model_macw_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MACW, 1, 2 } } },
8306   { SH4_NOFPU_INSN_MOV_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_mov_compact_before, & sh4_nofpu_sh4_nofpu_model::model_mov_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8307   { SH4_NOFPU_INSN_MOVI_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movi_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movi_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8308   { SH4_NOFPU_INSN_MOVI20_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movi20_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movi20_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8309   { SH4_NOFPU_INSN_MOVB1_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movb1_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movb1_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8310   { SH4_NOFPU_INSN_MOVB2_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movb2_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movb2_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8311   { SH4_NOFPU_INSN_MOVB3_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movb3_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movb3_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8312   { SH4_NOFPU_INSN_MOVB4_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movb4_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movb4_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SX, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8313   { SH4_NOFPU_INSN_MOVB5_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movb5_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movb5_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8314   { SH4_NOFPU_INSN_MOVB6_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movb6_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movb6_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8315   { SH4_NOFPU_INSN_MOVB7_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movb7_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movb7_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8316   { SH4_NOFPU_INSN_MOVB8_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movb8_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movb8_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8317   { SH4_NOFPU_INSN_MOVB9_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movb9_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movb9_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8318   { SH4_NOFPU_INSN_MOVB10_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movb10_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movb10_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8319   { SH4_NOFPU_INSN_MOVL1_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl1_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl1_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8320   { SH4_NOFPU_INSN_MOVL2_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl2_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl2_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8321   { SH4_NOFPU_INSN_MOVL3_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl3_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl3_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8322   { SH4_NOFPU_INSN_MOVL4_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl4_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl4_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SX, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8323   { SH4_NOFPU_INSN_MOVL5_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl5_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl5_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8324   { SH4_NOFPU_INSN_MOVL6_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl6_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl6_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8325   { SH4_NOFPU_INSN_MOVL7_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl7_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl7_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8326   { SH4_NOFPU_INSN_MOVL8_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl8_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl8_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8327   { SH4_NOFPU_INSN_MOVL9_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl9_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl9_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8328   { SH4_NOFPU_INSN_MOVL10_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl10_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl10_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8329   { SH4_NOFPU_INSN_MOVL11_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl11_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl11_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8330   { SH4_NOFPU_INSN_MOVL12_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl12_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl12_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8331   { SH4_NOFPU_INSN_MOVL13_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movl13_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movl13_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8332   { SH4_NOFPU_INSN_MOVW1_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movw1_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movw1_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8333   { SH4_NOFPU_INSN_MOVW2_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movw2_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movw2_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8334   { SH4_NOFPU_INSN_MOVW3_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movw3_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movw3_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8335   { SH4_NOFPU_INSN_MOVW4_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movw4_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movw4_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SX, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8336   { SH4_NOFPU_INSN_MOVW5_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movw5_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movw5_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8337   { SH4_NOFPU_INSN_MOVW6_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movw6_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movw6_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8338   { SH4_NOFPU_INSN_MOVW7_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movw7_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movw7_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8339   { SH4_NOFPU_INSN_MOVW8_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movw8_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movw8_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8340   { SH4_NOFPU_INSN_MOVW9_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movw9_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movw9_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8341   { SH4_NOFPU_INSN_MOVW10_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movw10_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movw10_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8342   { SH4_NOFPU_INSN_MOVW11_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movw11_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movw11_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOAD_GR, 0, 0 } } },
8343   { SH4_NOFPU_INSN_MOVA_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_mova_compact_before, & sh4_nofpu_sh4_nofpu_model::model_mova_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8344   { SH4_NOFPU_INSN_MOVCAL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movcal_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movcal_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_OCB, 0, 6 } } },
8345   { SH4_NOFPU_INSN_MOVT_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_movt_compact_before, & sh4_nofpu_sh4_nofpu_model::model_movt_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8346   { SH4_NOFPU_INSN_MULL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_mull_compact_before, & sh4_nofpu_sh4_nofpu_model::model_mull_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MULL, 1, 2 } } },
8347   { SH4_NOFPU_INSN_MULSW_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_mulsw_compact_before, & sh4_nofpu_sh4_nofpu_model::model_mulsw_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MULSW, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MULTIPLY, 1, 2 } } },
8348   { SH4_NOFPU_INSN_MULUW_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_muluw_compact_before, & sh4_nofpu_sh4_nofpu_model::model_muluw_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MULSW, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MULTIPLY, 1, 2 } } },
8349   { SH4_NOFPU_INSN_NEG_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_neg_compact_before, & sh4_nofpu_sh4_nofpu_model::model_neg_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8350   { SH4_NOFPU_INSN_NEGC_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_negc_compact_before, & sh4_nofpu_sh4_nofpu_model::model_negc_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8351   { SH4_NOFPU_INSN_NOP_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_nop_compact_before, & sh4_nofpu_sh4_nofpu_model::model_nop_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8352   { SH4_NOFPU_INSN_NOT_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_not_compact_before, & sh4_nofpu_sh4_nofpu_model::model_not_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8353   { SH4_NOFPU_INSN_OCBI_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ocbi_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ocbi_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_OCB, 0, 1 } } },
8354   { SH4_NOFPU_INSN_OCBP_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ocbp_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ocbp_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_OCB, 0, 4 } } },
8355   { SH4_NOFPU_INSN_OCBWB_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ocbwb_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ocbwb_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_OCB, 0, 4 } } },
8356   { SH4_NOFPU_INSN_OR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_or_compact_before, & sh4_nofpu_sh4_nofpu_model::model_or_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8357   { SH4_NOFPU_INSN_ORI_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_ori_compact_before, & sh4_nofpu_sh4_nofpu_model::model_ori_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8358   { SH4_NOFPU_INSN_ORB_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_orb_compact_before, & sh4_nofpu_sh4_nofpu_model::model_orb_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOGIC_B, 0, 3 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8359   { SH4_NOFPU_INSN_PREF_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_pref_compact_before, & sh4_nofpu_sh4_nofpu_model::model_pref_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8360   { SH4_NOFPU_INSN_ROTCL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_rotcl_compact_before, & sh4_nofpu_sh4_nofpu_model::model_rotcl_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8361   { SH4_NOFPU_INSN_ROTCR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_rotcr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_rotcr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8362   { SH4_NOFPU_INSN_ROTL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_rotl_compact_before, & sh4_nofpu_sh4_nofpu_model::model_rotl_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8363   { SH4_NOFPU_INSN_ROTR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_rotr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_rotr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8364   { SH4_NOFPU_INSN_RTS_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_rts_compact_before, & sh4_nofpu_sh4_nofpu_model::model_rts_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_JMP, 0, 2 } } },
8365   { SH4_NOFPU_INSN_SETS_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_sets_compact_before, & sh4_nofpu_sh4_nofpu_model::model_sets_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8366   { SH4_NOFPU_INSN_SETT_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_sett_compact_before, & sh4_nofpu_sh4_nofpu_model::model_sett_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8367   { SH4_NOFPU_INSN_SHAD_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shad_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shad_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8368   { SH4_NOFPU_INSN_SHAL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shal_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shal_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8369   { SH4_NOFPU_INSN_SHAR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shar_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shar_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8370   { SH4_NOFPU_INSN_SHLD_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shld_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shld_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8371   { SH4_NOFPU_INSN_SHLL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shll_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shll_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8372   { SH4_NOFPU_INSN_SHLL2_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shll2_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shll2_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8373   { SH4_NOFPU_INSN_SHLL8_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shll8_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shll8_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8374   { SH4_NOFPU_INSN_SHLL16_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shll16_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shll16_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8375   { SH4_NOFPU_INSN_SHLR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shlr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shlr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8376   { SH4_NOFPU_INSN_SHLR2_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shlr2_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shlr2_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8377   { SH4_NOFPU_INSN_SHLR8_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shlr8_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shlr8_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8378   { SH4_NOFPU_INSN_SHLR16_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_shlr16_compact_before, & sh4_nofpu_sh4_nofpu_model::model_shlr16_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8379   { SH4_NOFPU_INSN_STC_GBR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_stc_gbr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_stc_gbr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8380   { SH4_NOFPU_INSN_STC_VBR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_stc_vbr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_stc_vbr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_STC_VBR, 0, 1 } } },
8381   { SH4_NOFPU_INSN_STCL_GBR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_stcl_gbr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_stcl_gbr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LDCL, 0, 2 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8382   { SH4_NOFPU_INSN_STCL_VBR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_stcl_vbr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_stcl_vbr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LDCL, 0, 2 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8383   { SH4_NOFPU_INSN_STS_MACH_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_sts_mach_compact_before, & sh4_nofpu_sh4_nofpu_model::model_sts_mach_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8384   { SH4_NOFPU_INSN_STSL_MACH_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_stsl_mach_compact_before, & sh4_nofpu_sh4_nofpu_model::model_stsl_mach_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8385   { SH4_NOFPU_INSN_STS_MACL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_sts_macl_compact_before, & sh4_nofpu_sh4_nofpu_model::model_sts_macl_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8386   { SH4_NOFPU_INSN_STSL_MACL_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_stsl_macl_compact_before, & sh4_nofpu_sh4_nofpu_model::model_stsl_macl_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_MULTIPLY_RESULT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_WRITE_BACK, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8387   { SH4_NOFPU_INSN_STS_PR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_sts_pr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_sts_pr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_PR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_STS_PR, 0, 1 } } },
8388   { SH4_NOFPU_INSN_STSL_PR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_stsl_pr_compact_before, & sh4_nofpu_sh4_nofpu_model::model_stsl_pr_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_PR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_STS_PR, 0, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8389   { SH4_NOFPU_INSN_SUB_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_sub_compact_before, & sh4_nofpu_sh4_nofpu_model::model_sub_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8390   { SH4_NOFPU_INSN_SUBC_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_subc_compact_before, & sh4_nofpu_sh4_nofpu_model::model_subc_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8391   { SH4_NOFPU_INSN_SUBV_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_subv_compact_before, & sh4_nofpu_sh4_nofpu_model::model_subv_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8392   { SH4_NOFPU_INSN_SWAPB_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_swapb_compact_before, & sh4_nofpu_sh4_nofpu_model::model_swapb_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8393   { SH4_NOFPU_INSN_SWAPW_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_swapw_compact_before, & sh4_nofpu_sh4_nofpu_model::model_swapw_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8394   { SH4_NOFPU_INSN_TASB_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_tasb_compact_before, & sh4_nofpu_sh4_nofpu_model::model_tasb_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_TAS, 1, 4 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8395   { SH4_NOFPU_INSN_TRAPA_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_trapa_compact_before, & sh4_nofpu_sh4_nofpu_model::model_trapa_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_TRAP, 0, 8 } } },
8396   { SH4_NOFPU_INSN_TST_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_tst_compact_before, & sh4_nofpu_sh4_nofpu_model::model_tst_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8397   { SH4_NOFPU_INSN_TSTI_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_tsti_compact_before, & sh4_nofpu_sh4_nofpu_model::model_tsti_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 } } },
8398   { SH4_NOFPU_INSN_TSTB_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_tstb_compact_before, & sh4_nofpu_sh4_nofpu_model::model_tstb_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_TBIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 3 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SX, 1, 3 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SET_SR_BIT, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8399   { SH4_NOFPU_INSN_XOR_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_xor_compact_before, & sh4_nofpu_sh4_nofpu_model::model_xor_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8400   { SH4_NOFPU_INSN_XORI_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_xori_compact_before, & sh4_nofpu_sh4_nofpu_model::model_xori_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 } } },
8401   { SH4_NOFPU_INSN_XORB_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_xorb_compact_before, & sh4_nofpu_sh4_nofpu_model::model_xorb_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_LOGIC_B, 0, 3 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_MEMORY_ACCESS, 0, 0 } } },
8402   { SH4_NOFPU_INSN_XTRCT_COMPACT, & sh4_nofpu_sh4_nofpu_model::model_xtrct_compact_before, & sh4_nofpu_sh4_nofpu_model::model_xtrct_compact_after, { { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_USE_GR, 0, 0 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_EXEC, 1, 1 }, { sh4_nofpu_sh4_nofpu_model::UNIT_U_SHIFT, 0, 0 } } },
8403 };
8404