1 /* Simulator CPU header for sh. 2 3 THIS FILE IS MACHINE GENERATED WITH CGEN. 4 5 Copyright 1996-2010 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 SH_CPUALL_H 26 #define SH_CPUALL_H 27 28 /* Include files for each cpu family. */ 29 30 #ifdef WANT_CPU_SH64 31 #include "eng.h" 32 #include "cpu.h" 33 #include "decode.h" 34 #endif 35 36 extern const MACH sh2_mach; 37 extern const MACH sh2e_mach; 38 extern const MACH sh2a_fpu_mach; 39 extern const MACH sh2a_nofpu_mach; 40 extern const MACH sh3_mach; 41 extern const MACH sh3e_mach; 42 extern const MACH sh4_nofpu_mach; 43 extern const MACH sh4_mach; 44 extern const MACH sh4a_nofpu_mach; 45 extern const MACH sh4a_mach; 46 extern const MACH sh4al_mach; 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 */ 77