/* Main header for the CRIS simulator, based on the m32r header.
- Copyright (C) 2004-2012 Free Software Foundation, Inc.
+ Copyright (C) 2004-2020 Free Software Foundation, Inc.
Contributed by Axis Communications.
This file is part of the GNU simulators.
#ifndef SIM_MAIN_H
#define SIM_MAIN_H
-#define USING_SIM_BASE_H
-
-struct _sim_cpu;
-typedef struct _sim_cpu SIM_CPU;
+/* This is a global setting. Different cpu families can't mix-n-match -scache
+ and -pbb. However some cpu families may use -simple while others use
+ one of -scache/-pbb. */
+#define WITH_SCACHE_PBB 1
#include "symcat.h"
#include "sim-basics.h"
#include "cris-desc.h"
#include "cris-opc.h"
#include "arch.h"
-
-/* These must be defined before sim-base.h. */
-typedef USI sim_cia;
-
-#define CIA_GET(cpu) CPU_PC_GET (cpu)
-#define CIA_SET(cpu,val) CPU_PC_SET ((cpu), (val))
-
-#define SIM_ENGINE_HALT_HOOK(sd, cpu, cia) \
-do { \
- if (cpu) /* Null if ctrl-c. */ \
- sim_pc_set ((cpu), (cia)); \
-} while (0)
-#define SIM_ENGINE_RESTART_HOOK(sd, cpu, cia) \
-do { \
- sim_pc_set ((cpu), (cia)); \
-} while (0)
-
#include "sim-base.h"
#include "cgen-sim.h"
#include "cris-sim.h"
/* The sim_state struct. */
struct sim_state {
- sim_cpu *cpu;
-#define STATE_CPU(sd, n) (/*&*/ (sd)->cpu)
+ sim_cpu *cpu[MAX_NR_PROCESSORS];
CGEN_STATE cgen_state;
/* Default memory size. */
#define CRIS_DEFAULT_MEM_SIZE 0x800000 /* 8M */
-extern device cris_devices;
-
#endif /* SIM_MAIN_H */