Commit | Line | Data |
---|---|---|
cbb38b47 BE |
1 | /* Simulator CPU header for sh. |
2 | ||
3 | THIS FILE IS MACHINE GENERATED WITH CGEN. | |
4 | ||
c7e628df | 5 | Copyright 1996-2005 Free Software Foundation, Inc. |
cbb38b47 | 6 | |
c7e628df | 7 | This file is part of the GNU simulators. |
cbb38b47 BE |
8 | |
9 | This program is free software; you can redistribute it and/or modify | |
10 | it under the terms of the GNU General Public License as published by | |
4744ac1b JB |
11 | the Free Software Foundation; either version 3 of the License, or |
12 | (at your option) any later version. | |
cbb38b47 BE |
13 | |
14 | This program is distributed in the hope that it will be useful, | |
15 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
17 | GNU General Public License for more details. | |
18 | ||
4744ac1b JB |
19 | You should have received a copy of the GNU General Public License |
20 | along with this program. If not, see <http://www.gnu.org/licenses/>. | |
cbb38b47 BE |
21 | |
22 | */ | |
23 | ||
24 | #ifndef SH_CPUALL_H | |
25 | #define SH_CPUALL_H | |
26 | ||
27 | /* Include files for each cpu family. */ | |
28 | ||
29 | #ifdef WANT_CPU_SH64 | |
30 | #include "eng.h" | |
31 | #include "cgen-engine.h" | |
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 */ |