sim: move many common settings from CPPFLAGS to config.h
[deliverable/binutils-gdb.git] / sim / mn10300 / sim-main.h
index fb8cb3326cce4c7ff90626f1ba0559b18b8f2ed9..7171c033e496a1d41ca0f625ffa06d8ac3025a4e 100644 (file)
@@ -1,30 +1,28 @@
 /*  This file is part of the program psim.
 
     Copyright (C) 1994-1997, Andrew Cagney <cagney@highland.com.au>
 /*  This file is part of the program psim.
 
     Copyright (C) 1994-1997, Andrew Cagney <cagney@highland.com.au>
-    Copyright (C) 1997, Free Software Foundation
+    Copyright (C) 1997-2016 Free Software Foundation, Inc.
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
+    the Free Software Foundation; either version 3 of the License, or
     (at your option) any later version.
 
     This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     GNU General Public License for more details.
     (at your option) any later version.
 
     This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     GNU General Public License for more details.
+
     You should have received a copy of the GNU General Public License
     You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
  
     */
 
 
  
     */
 
 
-#ifndef _SIM_MAIN_H_
-#define _SIM_MAIN_H_
+#ifndef SIM_MAIN_H
+#define SIM_MAIN_H
 
 
-#define WITH_CORE
-#define WITH_WATCHPOINTS 1
+#define SIM_ENGINE_HALT_HOOK(SD,LAST_CPU,CIA) 0 /* disable this hook */
 
 #include "sim-basics.h"
 #include "sim-signal.h"
 
 #include "sim-basics.h"
 #include "sim-signal.h"
 /* These are generated files.  */
 #include "itable.h"
 #include "idecode.h"
 /* These are generated files.  */
 #include "itable.h"
 #include "idecode.h"
-#include "idecode.h"
 
 
-typedef instruction_address sim_cia;
-static const sim_cia null_cia = {0}; /* Dummy */
-#define NULL_CIA null_cia
-/* FIXME: Perhaps igen should generate access macros for
-   `instruction_address' that we could use.  */
-/*#define CIA_ADDR(cia) ((cia).ip) this is from tic80, doesn't work for mn10300*/
+#define SIM_CORE_SIGNAL(SD,CPU,CIA,MAP,NR_BYTES,ADDR,TRANSFER,ERROR)  \
+mn10300_core_signal ((SD), (CPU), (CIA), (MAP), (NR_BYTES), (ADDR), (TRANSFER), (ERROR))
 
 
-#define WITH_WATCHPOINTS 1
 
 #include "sim-base.h"
 
 
 #include "sim-base.h"
 
@@ -63,9 +55,9 @@ static const sim_cia null_cia = {0}; /* Dummy */
 (sim_core_read_aligned_1(STATE_CPU(sd, 0), EA, exec_map, (EA) + (N)))
 
 
 (sim_core_read_aligned_1(STATE_CPU(sd, 0), EA, exec_map, (EA) + (N)))
 
 
-#define CIA_GET(CPU) ((CPU)->cia)
-#define CIA_SET(CPU,VAL) ((CPU)->cia = (VAL))
-
+/* FIXME: For moment, save/restore PC value found in struct State.
+   Struct State will one day go away, being placed in the sim_cpu
+   state. */
 
 struct _sim_cpu {
   sim_event *pending_nmi;
 
 struct _sim_cpu {
   sim_event *pending_nmi;
@@ -77,8 +69,7 @@ struct _sim_cpu {
 struct sim_state {
 
   /* the processors proper */
 struct sim_state {
 
   /* the processors proper */
-  sim_cpu cpu;
-#define STATE_CPU(sd, n) (&(sd)->cpu)
+  sim_cpu *cpu[MAX_NR_PROCESSORS];
 
   /* The base class.  */
   sim_state_base base;
 
   /* The base class.  */
   sim_state_base base;
@@ -92,5 +83,6 @@ extern SIM_DESC simulator;
 /* (re) initialize the simulator */
 
 extern void engine_init(SIM_DESC sd);
 /* (re) initialize the simulator */
 
 extern void engine_init(SIM_DESC sd);
+extern SIM_CORE_SIGNAL_FN mn10300_core_signal;
 
 #endif
 
 #endif
This page took 0.024637 seconds and 4 git commands to generate.