diff options
author | Mike Frysinger <vapier@gentoo.org> | 2014-02-17 18:24:10 -0500 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2014-02-17 18:32:45 -0500 |
commit | ef3e8cf7d1d7849c2fb466bdc62b56336739cb90 (patch) | |
tree | 8ca232b2ef7a43e5ede0f81f6e8f5f9475ff7dbd /sim/h8300 | |
parent | c395f86f51b18695c1b151ed92e41d7b596b0d12 (diff) | |
download | gdb-ef3e8cf7d1d7849c2fb466bdc62b56336739cb90.zip gdb-ef3e8cf7d1d7849c2fb466bdc62b56336739cb90.tar.gz gdb-ef3e8cf7d1d7849c2fb466bdc62b56336739cb90.tar.bz2 |
sim: delete duplicate SIGINT handling
Many of the simulators change the SIGINT handler.
E.g., moxie/interp.c:
sigsave = signal (SIGINT, interrupt);
However, this is unnecessary.
remote-sim.h already provides an API for asynchronously stopping
a sim; and both gdb and the drivers (run.c and nrun.c at least,
I didn't check the others) install a SIGINT handler which
calls this method.
URL: https://sourceware.org/bugzilla/show_bug.cgi?id=16450
Reported-by: Tom Tromey <tromey@redhat.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'sim/h8300')
-rw-r--r-- | sim/h8300/ChangeLog | 7 | ||||
-rw-r--r-- | sim/h8300/compile.c | 14 |
2 files changed, 7 insertions, 14 deletions
diff --git a/sim/h8300/ChangeLog b/sim/h8300/ChangeLog index 4760745..38280e8 100644 --- a/sim/h8300/ChangeLog +++ b/sim/h8300/ChangeLog @@ -1,3 +1,10 @@ +2014-02-17 Mike Frysinger <vapier@gentoo.org> + + PR gdb/16450 + * compile.c (control_c_sim_desc): Delete. + (control_c): Likewise. + (sim_resume): Delete signal(SIGINT) handling. + 2013-09-23 Alan Modra <amodra@gmail.com> * configure: Regenerate. diff --git a/sim/h8300/compile.c b/sim/h8300/compile.c index 13d5cae..2c7316c 100644 --- a/sim/h8300/compile.c +++ b/sim/h8300/compile.c @@ -1859,15 +1859,6 @@ init_pointers (SIM_DESC sd) } } -/* Grotty global variable for use by control_c signal handler. */ -static SIM_DESC control_c_sim_desc; - -static void -control_c (int sig) -{ - sim_engine_set_run_state (control_c_sim_desc, sim_stopped, SIGINT); -} - int sim_stop (SIM_DESC sd) { @@ -1901,7 +1892,6 @@ sim_resume (SIM_DESC sd, int step, int siggnal) int cycles = 0; int insts = 0; int tick_start = get_now (); - void (*prev) (); int poll_count = 0; int res; int tmp; @@ -1917,9 +1907,6 @@ sim_resume (SIM_DESC sd, int step, int siggnal) init_pointers (sd); - control_c_sim_desc = sd; - prev = signal (SIGINT, control_c); - if (step) { sim_engine_set_run_state (sd, sim_stopped, SIGTRAP); @@ -4604,7 +4591,6 @@ sim_resume (SIM_DESC sd, int step, int siggnal) h8_set_exr (sd, (trace<<7) | intMask); h8_set_mask (sd, oldmask); - signal (SIGINT, prev); } int |