Home | History | Annotate | Line # | Download | only in cris
      1 /* Simulator CPU header for cris.
      2 
      3 THIS FILE IS MACHINE GENERATED WITH CGEN.
      4 
      5 Copyright (C) 1996-2024 Free Software Foundation, Inc.
      6 
      7 This file is part of the GNU simulators.
      8 
      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.
     13 
     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.
     18 
     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.
     22 
     23 */
     24 
     25 #ifndef CRIS_CPUALL_H
     26 #define CRIS_CPUALL_H
     27 
     28 /* Include files for each cpu family.  */
     29 
     30 #ifdef WANT_CPU_CRISV0F
     31 #include "engv0.h"
     32 #include "cpuv0.h"
     33 #include "decodev0.h"
     34 #endif
     35 
     36 #ifdef WANT_CPU_CRISV3F
     37 #include "engv3.h"
     38 #include "cpuv3.h"
     39 #include "decodev3.h"
     40 #endif
     41 
     42 #ifdef WANT_CPU_CRISV8F
     43 #include "engv8.h"
     44 #include "cpuv8.h"
     45 #include "decodev8.h"
     46 #endif
     47 
     48 #ifdef WANT_CPU_CRISV10F
     49 #include "engv10.h"
     50 #include "cpuv10.h"
     51 #include "decodev10.h"
     52 #endif
     53 
     54 #ifdef WANT_CPU_CRISV32F
     55 #include "engv32.h"
     56 #include "cpuv32.h"
     57 #include "decodev32.h"
     58 #endif
     59 
     60 extern const SIM_MACH crisv10_mach;
     61 extern const SIM_MACH crisv32_mach;
     62 
     63 #ifndef WANT_CPU
     64 /* The ARGBUF struct.  */
     65 struct argbuf {
     66   /* These are the baseclass definitions.  */
     67   IADDR addr;
     68   const IDESC *idesc;
     69   char trace_p;
     70   char profile_p;
     71   /* ??? Temporary hack for skip insns.  */
     72   char skip_count;
     73   char unused;
     74   /* cpu specific data follows */
     75 };
     76 #endif
     77 
     78 #ifndef WANT_CPU
     79 /* A cached insn.
     80 
     81    ??? SCACHE used to contain more than just argbuf.  We could delete the
     82    type entirely and always just use ARGBUF, but for future concerns and as
     83    a level of abstraction it is left in.  */
     84 
     85 struct scache {
     86   struct argbuf argbuf;
     87 };
     88 #endif
     89 
     90 #endif /* CRIS_CPUALL_H */
     91