Commit | Line | Data |
---|---|---|
cbb38b47 BE |
1 | /* Simulator CPU header for sh. |
2 | ||
3 | THIS FILE IS MACHINE GENERATED WITH CGEN. | |
4 | ||
0f51e9bf | 5 | Copyright 1996-2010 Free Software Foundation, Inc. |
cbb38b47 | 6 | |
c7e628df | 7 | This file is part of the GNU simulators. |
cbb38b47 | 8 | |
fda1c30b DE |
9 | This file is free software; you can redistribute it and/or modify |
10 | it under the terms of the GNU General Public License as published by | |
11 | the Free Software Foundation; either version 3, or (at your option) | |
12 | any later version. | |
cbb38b47 | 13 | |
fda1c30b DE |
14 | It is distributed in the hope that it will be useful, but WITHOUT |
15 | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY | |
16 | or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public | |
17 | License for more details. | |
cbb38b47 | 18 | |
fda1c30b DE |
19 | You should have received a copy of the GNU General Public License along |
20 | with this program; if not, write to the Free Software Foundation, Inc., | |
21 | 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. | |
cbb38b47 BE |
22 | |
23 | */ | |
24 | ||
25 | #ifndef SH_CPUALL_H | |
26 | #define SH_CPUALL_H | |
27 | ||
28 | /* Include files for each cpu family. */ | |
29 | ||
30 | #ifdef WANT_CPU_SH64 | |
31 | #include "eng.h" | |
cbb38b47 BE |
32 | #include "cpu.h" |
33 | #include "decode.h" | |
34 | #endif | |
35 | ||
36 | extern const MACH sh2_mach; | |
c7e628df DB |
37 | extern const MACH sh2e_mach; |
38 | extern const MACH sh2a_fpu_mach; | |
39 | extern const MACH sh2a_nofpu_mach; | |
cbb38b47 BE |
40 | extern const MACH sh3_mach; |
41 | extern const MACH sh3e_mach; | |
c7e628df | 42 | extern const MACH sh4_nofpu_mach; |
cbb38b47 | 43 | extern const MACH sh4_mach; |
c7e628df DB |
44 | extern const MACH sh4a_nofpu_mach; |
45 | extern const MACH sh4a_mach; | |
46 | extern const MACH sh4al_mach; | |
cbb38b47 BE |
47 | extern const MACH sh5_mach; |
48 | ||
49 | #ifndef WANT_CPU | |
50 | /* The ARGBUF struct. */ | |
51 | struct argbuf { | |
52 | /* These are the baseclass definitions. */ | |
53 | IADDR addr; | |
54 | const IDESC *idesc; | |
55 | char trace_p; | |
56 | char profile_p; | |
57 | /* ??? Temporary hack for skip insns. */ | |
58 | char skip_count; | |
59 | char unused; | |
60 | /* cpu specific data follows */ | |
61 | }; | |
62 | #endif | |
63 | ||
64 | #ifndef WANT_CPU | |
65 | /* A cached insn. | |
66 | ||
67 | ??? SCACHE used to contain more than just argbuf. We could delete the | |
68 | type entirely and always just use ARGBUF, but for future concerns and as | |
69 | a level of abstraction it is left in. */ | |
70 | ||
71 | struct scache { | |
72 | struct argbuf argbuf; | |
73 | }; | |
74 | #endif | |
75 | ||
76 | #endif /* SH_CPUALL_H */ |