2002-06-09 Daniel Jacobowitz <drow@mvista.com>
authorDaniel Jacobowitz <drow@false.org>
Sun, 9 Jun 2002 19:42:11 +0000 (19:42 +0000)
committerDaniel Jacobowitz <drow@false.org>
Sun, 9 Jun 2002 19:42:11 +0000 (19:42 +0000)
        * signals/signals.c (target_signal_from_host): Fix #ifdef
        SIGRTMIN case.
        (do_target_signal_to_host): Likewise.

gdb/ChangeLog
gdb/signals/signals.c

index f4c00166fabcc4115b0150a15e597a50f9c26853..5285f49ee8f631833648d51d98b4f6d34d7fb06b 100644 (file)
@@ -1,3 +1,9 @@
+2002-06-09  Daniel Jacobowitz  <drow@mvista.com>
+
+       * signals/signals.c (target_signal_from_host): Fix #ifdef
+       SIGRTMIN case.
+       (do_target_signal_to_host): Likewise.
+
 2002-06-09  Daniel Jacobowitz  <drow@mvista.com>
 
        * mips-tdep.c (mips_find_abi_section): New function.
index 643e450fbbe02ccb0f84f41d83c1dc990ea942d4..0057e60e377c914eb1b9a447560a7e795824fb8e 100644 (file)
@@ -498,8 +498,11 @@ target_signal_from_host (int hostsig)
       if (33 <= hostsig && hostsig <= 63)
        return (enum target_signal)
          (hostsig - 33 + (int) TARGET_SIGNAL_REALTIME_33);
-      else if (hostsig == 64)
-       return TARGET_SIGNAL_REALTIME_64;
+      else if (hostsig == 32)
+       return TARGET_SIGNAL_REALTIME_32;
+      else if (64 <= hostsig && hostsig <= 127)
+       return (enum target_signal)
+         (hostsig - 64 + (int) TARGET_SIGNAL_REALTIME_64);
       else
        error ("GDB bug: target.c (target_signal_from_host): unrecognized real-time signal");
     }
@@ -784,8 +787,21 @@ do_target_signal_to_host (enum target_signal oursig,
          if (retsig >= SIGRTMIN && retsig <= SIGRTMAX)
            return retsig;
        }
-      else if (oursig == TARGET_SIGNAL_REALTIME_64)
-       return 64;
+      else if (oursig == TARGET_SIGNAL_REALTIME_32)
+       {
+         /* TARGET_SIGNAL_REALTIME_32 isn't contiguous with
+             TARGET_SIGNAL_REALTIME_33.  It is 32 by definition.  */
+         return 32;
+       }
+      else if (oursig >= TARGET_SIGNAL_REALTIME_64
+         && oursig <= TARGET_SIGNAL_REALTIME_127)
+       {
+         /* This block of signals is continuous, and
+             TARGET_SIGNAL_REALTIME_64 is 64 by definition.  */
+         int retsig =
+           (int) oursig - (int) TARGET_SIGNAL_REALTIME_64 + 64;
+         return retsig;
+       }
 #endif
       *oursig_ok = 0;
       return 0;