1/* Simulator CPU header for lm32. 2 3THIS FILE IS MACHINE GENERATED WITH CGEN. 4 5Copyright 1996-2023 Free Software Foundation, Inc. 6 7This 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 LM32_CPUALL_H 25#define LM32_CPUALL_H 26 27/* Include files for each cpu family. */ 28 29#ifdef WANT_CPU_LM32BF 30#include "eng.h" 31#include "cpu.h" 32#include "decode.h" 33#endif 34 35extern const SIM_MACH lm32_mach; 36 37#ifndef WANT_CPU 38/* The ARGBUF struct. */ 39struct argbuf { 40 /* These are the baseclass definitions. */ 41 IADDR addr; 42 const IDESC *idesc; 43 char trace_p; 44 char profile_p; 45 /* ??? Temporary hack for skip insns. */ 46 char skip_count; 47 char unused; 48 /* cpu specific data follows */ 49}; 50#endif 51 52#ifndef WANT_CPU 53/* A cached insn. 54 55 ??? SCACHE used to contain more than just argbuf. We could delete the 56 type entirely and always just use ARGBUF, but for future concerns and as 57 a level of abstraction it is left in. */ 58 59struct scache { 60 struct argbuf argbuf; 61}; 62#endif 63 64#endif /* LM32_CPUALL_H */ 65