summaryrefslogtreecommitdiff
path: root/sim/d10v
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2000-02-22 08:52:21 +0000
committerAndrew Cagney <cagney@redhat.com>2000-02-22 08:52:21 +0000
commit6f223bbf2f105d43fe01f18a0fae13f1507dad49 (patch)
tree8f3acaec4f6bddf5bd2f29da4df58380bedf162f /sim/d10v
parent9f6cc03593d084394f30e10cb705b210bce986a8 (diff)
downloadgdb-6f223bbf2f105d43fe01f18a0fae13f1507dad49.tar.gz
When SIM_HAVE_ENVIRONMENT: use sim_set_trace() to enable tracing
instead of sim_trace() to run the program; include support for ``-o'' option (operating environment); when a signal occurs, only continue execution when operating environment mode. Update d10v.
Diffstat (limited to 'sim/d10v')
-rw-r--r--sim/d10v/ChangeLog5
-rw-r--r--sim/d10v/Makefile.in2
-rw-r--r--sim/d10v/interp.c12
3 files changed, 8 insertions, 11 deletions
diff --git a/sim/d10v/ChangeLog b/sim/d10v/ChangeLog
index a4979813252..232716636a1 100644
--- a/sim/d10v/ChangeLog
+++ b/sim/d10v/ChangeLog
@@ -1,3 +1,8 @@
+Tue Feb 22 18:24:56 2000 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * Makefile.in (SIM_EXTRA_CFLAGS): Define SIM_HAVE_ENVIRONMENT.
+ * interp.c (sim_set_trace): Replace sim_trace. Enable tracing.
+
Mon Jan 3 02:06:07 2000 Andrew Cagney <cagney@b1.cygnus.com>
* interp.c (lookup_hash): Stop the update of the PC when there was
diff --git a/sim/d10v/Makefile.in b/sim/d10v/Makefile.in
index 602ffff0c99..8ed219f0138 100644
--- a/sim/d10v/Makefile.in
+++ b/sim/d10v/Makefile.in
@@ -20,7 +20,7 @@
SIM_OBJS = interp.o table.o simops.o endian.o sim-load.o
SIM_EXTRA_CLEAN = clean-extra
-SIM_EXTRA_CFLAGS = -DNEED_UI_LOOP_HOOK
+SIM_EXTRA_CFLAGS = -DNEED_UI_LOOP_HOOK -DSIM_HAVE_ENVIRONMENT
INCLUDE = d10v_sim.h $(srcroot)/include/callback.h targ-vals.h endian.c
diff --git a/sim/d10v/interp.c b/sim/d10v/interp.c
index 80898ab44ef..91ebee56ce9 100644
--- a/sim/d10v/interp.c
+++ b/sim/d10v/interp.c
@@ -1072,20 +1072,12 @@ sim_resume (sd, step, siggnal)
State.exception = SIGTRAP;
}
-int
-sim_trace (sd)
- SIM_DESC sd;
+void
+sim_set_trace (void)
{
- enum sim_stop reason;
- static int sigrc = 0;
#ifdef DEBUG
d10v_debug = DEBUG;
#endif
- /* NOTE: SIGRC starts with zero and is then, always the value
- returned by the last sim_stop_reason() call. */
- sim_resume (sd, 0, sigrc);
- sim_stop_reason (sd, &reason, &sigrc);
- return (reason != sim_stopped || sigrc != SIGINT);
}
void