diff options
author | Kevin Buettner <kevinb@redhat.com> | 2014-02-17 18:15:56 -0700 |
---|---|---|
committer | Kevin Buettner <kevinb@redhat.com> | 2014-02-17 18:15:56 -0700 |
commit | fa0dd93ecaf11da5593b8132c95fb013c67b5b72 (patch) | |
tree | 3279fef954449c429648c0037a53ec38e47f76bc /sim/rx/gdb-if.c | |
parent | ef3e8cf7d1d7849c2fb466bdc62b56336739cb90 (diff) | |
download | fsf-binutils-gdb-fa0dd93ecaf11da5593b8132c95fb013c67b5b72.zip fsf-binutils-gdb-fa0dd93ecaf11da5593b8132c95fb013c67b5b72.tar.gz fsf-binutils-gdb-fa0dd93ecaf11da5593b8132c95fb013c67b5b72.tar.bz2 |
Revise signal mapping function in GDB interface for RX sim.
sim/rx/gdb-if.c had a function named `rx_signal_to_host'. This
function mapped signal numbers used by the BSP to host signal
numbers which, at one time a while back, were used by GDB
as target signal numbers. This change updates the signal
numbers returned to be those names prefixed with "GDB_SIGNAL_"
as defined in include/gdb/signals.h.
It also changes the name of the function somewhat to better
match what the function currently does. I noticed that this
function is not static - and there's no reason for it not
to be - so I made it static too.
* gdb-if.c (rx_signal_to_host): Rename to
`rx_signal_to_gdb_signal'. Make static. Update all callers
to use new name. Use signal names from include/gdb/signals.h.
Diffstat (limited to 'sim/rx/gdb-if.c')
-rw-r--r-- | sim/rx/gdb-if.c | 41 |
1 files changed, 12 insertions, 29 deletions
diff --git a/sim/rx/gdb-if.c b/sim/rx/gdb-if.c index 57d179c..4c4434c 100644 --- a/sim/rx/gdb-if.c +++ b/sim/rx/gdb-if.c @@ -650,52 +650,35 @@ int siggnal; /* Given a signal number used by the RX bsp (that is, newlib), - return a host signal number. (Oddly, the gdb/sim interface uses - host signal numbers...) */ -int -rx_signal_to_host (int rx) + return a target signal number used by GDB. */ +static int +rx_signal_to_gdb_signal (int rx) { switch (rx) { case 4: -#ifdef SIGILL - return SIGILL; -#else - return SIGSEGV; -#endif + return GDB_SIGNAL_ILL; case 5: - return SIGTRAP; + return GDB_SIGNAL_TRAP; case 10: -#ifdef SIGBUS - return SIGBUS; -#else - return SIGSEGV; -#endif + return GDB_SIGNAL_BUS; case 11: - return SIGSEGV; + return GDB_SIGNAL_SEGV; case 24: -#ifdef SIGXCPU - return SIGXCPU; -#else - break; -#endif + return GDB_SIGNAL_XCPU; case 2: - return SIGINT; + return GDB_SIGNAL_INT; case 8: -#ifdef SIGFPE - return SIGFPE; -#else - break; -#endif + return GDB_SIGNAL_FPE; case 6: - return SIGABRT; + return GDB_SIGNAL_ABRT; } return 0; @@ -720,7 +703,7 @@ handle_step (int rc) else if (RX_STOPPED (rc)) { reason = sim_stopped; - siggnal = rx_signal_to_host (RX_STOP_SIG (rc)); + siggnal = rx_signal_to_gdb_signal (RX_STOP_SIG (rc)); } else { |