xref: /netbsd-src/external/gpl3/gdb/dist/sim/lm32/cpuall.h (revision 71f621822dbfd5073a314948bec169b7bb05f7be)
14e98e3e1Schristos /* Simulator CPU header for lm32.
24e98e3e1Schristos 
34e98e3e1Schristos THIS FILE IS MACHINE GENERATED WITH CGEN.
44e98e3e1Schristos 
5*71f62182Schristos Copyright (C) 1996-2024 Free Software Foundation, Inc.
64e98e3e1Schristos 
74e98e3e1Schristos This file is part of the GNU simulators.
84e98e3e1Schristos 
94e98e3e1Schristos    This file is free software; you can redistribute it and/or modify
104e98e3e1Schristos    it under the terms of the GNU General Public License as published by
114e98e3e1Schristos    the Free Software Foundation; either version 3, or (at your option)
124e98e3e1Schristos    any later version.
134e98e3e1Schristos 
144e98e3e1Schristos    It is distributed in the hope that it will be useful, but WITHOUT
154e98e3e1Schristos    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
164e98e3e1Schristos    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
174e98e3e1Schristos    License for more details.
184e98e3e1Schristos 
194e98e3e1Schristos    You should have received a copy of the GNU General Public License along
20*71f62182Schristos    with this program; if not, write to the Free Software Foundation, Inc.,
21*71f62182Schristos    51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
224e98e3e1Schristos 
234e98e3e1Schristos */
244e98e3e1Schristos 
254e98e3e1Schristos #ifndef LM32_CPUALL_H
264e98e3e1Schristos #define LM32_CPUALL_H
274e98e3e1Schristos 
284e98e3e1Schristos /* Include files for each cpu family.  */
294e98e3e1Schristos 
304e98e3e1Schristos #ifdef WANT_CPU_LM32BF
314e98e3e1Schristos #include "eng.h"
324e98e3e1Schristos #include "cpu.h"
334e98e3e1Schristos #include "decode.h"
344e98e3e1Schristos #endif
354e98e3e1Schristos 
36ba340e45Schristos extern const SIM_MACH lm32_mach;
374e98e3e1Schristos 
384e98e3e1Schristos #ifndef WANT_CPU
394e98e3e1Schristos /* The ARGBUF struct.  */
404e98e3e1Schristos struct argbuf {
414e98e3e1Schristos   /* These are the baseclass definitions.  */
424e98e3e1Schristos   IADDR addr;
434e98e3e1Schristos   const IDESC *idesc;
444e98e3e1Schristos   char trace_p;
454e98e3e1Schristos   char profile_p;
464e98e3e1Schristos   /* ??? Temporary hack for skip insns.  */
474e98e3e1Schristos   char skip_count;
484e98e3e1Schristos   char unused;
494e98e3e1Schristos   /* cpu specific data follows */
504e98e3e1Schristos };
514e98e3e1Schristos #endif
524e98e3e1Schristos 
534e98e3e1Schristos #ifndef WANT_CPU
544e98e3e1Schristos /* A cached insn.
554e98e3e1Schristos 
564e98e3e1Schristos    ??? SCACHE used to contain more than just argbuf.  We could delete the
574e98e3e1Schristos    type entirely and always just use ARGBUF, but for future concerns and as
584e98e3e1Schristos    a level of abstraction it is left in.  */
594e98e3e1Schristos 
604e98e3e1Schristos struct scache {
614e98e3e1Schristos   struct argbuf argbuf;
624e98e3e1Schristos };
634e98e3e1Schristos #endif
644e98e3e1Schristos 
654e98e3e1Schristos #endif /* LM32_CPUALL_H */
66