Revise signal mapping function in GDB interface for RX sim.
authorKevin Buettner <kevinb@redhat.com>
Tue, 18 Feb 2014 01:15:56 +0000 (18:15 -0700)
committerKevin Buettner <kevinb@redhat.com>
Tue, 18 Feb 2014 01:15:56 +0000 (18:15 -0700)
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.

sim/rx/ChangeLog
sim/rx/gdb-if.c

index 8c5f84f7e93aa036a42d5ad8cfc8b782b2664c97..dc2e3e50e10f60e2e9ee9d1efc562451317bacb9 100644 (file)
@@ -1,3 +1,9 @@
+2014-02-17  Kevin Buettner  <kevinb@redhat.com>
+
+       * 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.
+
 2013-09-23  Alan Modra  <amodra@gmail.com>
 
        * configure: Regenerate.
index 57d179c4a2fbfb8682710e4e516463aa541fa3f1..4c4434ce39434fb16911fed9c6d7b361bf29c068 100644 (file)
@@ -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
     {