xref: /netbsd-src/external/gpl3/gdb.old/dist/sim/m32r/cpuall.h (revision 8b657b0747480f8989760d71343d6dd33f8d4cf9)
1a5a4af3bSchristos /* Simulator CPU header for m32r.
2a5a4af3bSchristos 
3a5a4af3bSchristos THIS FILE IS MACHINE GENERATED WITH CGEN.
4a5a4af3bSchristos 
5*8b657b07Schristos Copyright 1996-2023 Free Software Foundation, Inc.
6a5a4af3bSchristos 
7a5a4af3bSchristos This file is part of the GNU simulators.
8a5a4af3bSchristos 
9a5a4af3bSchristos    This file is free software; you can redistribute it and/or modify
10a5a4af3bSchristos    it under the terms of the GNU General Public License as published by
11a5a4af3bSchristos    the Free Software Foundation; either version 3, or (at your option)
12a5a4af3bSchristos    any later version.
13a5a4af3bSchristos 
14a5a4af3bSchristos    It is distributed in the hope that it will be useful, but WITHOUT
15a5a4af3bSchristos    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
16a5a4af3bSchristos    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
17a5a4af3bSchristos    License for more details.
18a5a4af3bSchristos 
19a5a4af3bSchristos    You should have received a copy of the GNU General Public License along
20a5a4af3bSchristos    with this program; if not, see <http://www.gnu.org/licenses/>.
21a5a4af3bSchristos 
22a5a4af3bSchristos */
23a5a4af3bSchristos 
24a5a4af3bSchristos #ifndef M32R_CPUALL_H
25a5a4af3bSchristos #define M32R_CPUALL_H
26a5a4af3bSchristos 
27a5a4af3bSchristos /* Include files for each cpu family.  */
28a5a4af3bSchristos 
29a5a4af3bSchristos #ifdef WANT_CPU_M32RBF
30a5a4af3bSchristos #include "eng.h"
31a5a4af3bSchristos #include "cpu.h"
32a5a4af3bSchristos #include "decode.h"
33a5a4af3bSchristos #endif
34a5a4af3bSchristos 
35a5a4af3bSchristos #ifdef WANT_CPU_M32RXF
36a5a4af3bSchristos #include "engx.h"
37a5a4af3bSchristos #include "cpux.h"
38a5a4af3bSchristos #include "decodex.h"
39a5a4af3bSchristos #endif
40a5a4af3bSchristos 
41a5a4af3bSchristos #ifdef WANT_CPU_M32R2F
42a5a4af3bSchristos #include "eng2.h"
43a5a4af3bSchristos #include "cpu2.h"
44a5a4af3bSchristos #include "decode2.h"
45a5a4af3bSchristos #endif
46a5a4af3bSchristos 
47e5cb852cSchristos extern const SIM_MACH m32r_mach;
48e5cb852cSchristos extern const SIM_MACH m32rx_mach;
49e5cb852cSchristos extern const SIM_MACH m32r2_mach;
50a5a4af3bSchristos 
51a5a4af3bSchristos #ifndef WANT_CPU
52a5a4af3bSchristos /* The ARGBUF struct.  */
53a5a4af3bSchristos struct argbuf {
54a5a4af3bSchristos   /* These are the baseclass definitions.  */
55a5a4af3bSchristos   IADDR addr;
56a5a4af3bSchristos   const IDESC *idesc;
57a5a4af3bSchristos   char trace_p;
58a5a4af3bSchristos   char profile_p;
59a5a4af3bSchristos   /* ??? Temporary hack for skip insns.  */
60a5a4af3bSchristos   char skip_count;
61a5a4af3bSchristos   char unused;
62a5a4af3bSchristos   /* cpu specific data follows */
63a5a4af3bSchristos };
64a5a4af3bSchristos #endif
65a5a4af3bSchristos 
66a5a4af3bSchristos #ifndef WANT_CPU
67a5a4af3bSchristos /* A cached insn.
68a5a4af3bSchristos 
69a5a4af3bSchristos    ??? SCACHE used to contain more than just argbuf.  We could delete the
70a5a4af3bSchristos    type entirely and always just use ARGBUF, but for future concerns and as
71a5a4af3bSchristos    a level of abstraction it is left in.  */
72a5a4af3bSchristos 
73a5a4af3bSchristos struct scache {
74a5a4af3bSchristos   struct argbuf argbuf;
75a5a4af3bSchristos };
76a5a4af3bSchristos #endif
77a5a4af3bSchristos 
78a5a4af3bSchristos #endif /* M32R_CPUALL_H */
79