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