Because of:
authorSergio Durigan Junior <sergiodj@redhat.com>
Mon, 12 Aug 2013 03:50:58 +0000 (03:50 +0000)
committerSergio Durigan Junior <sergiodj@redhat.com>
Mon, 12 Aug 2013 03:50:58 +0000 (03:50 +0000)
<http://sourceware.org/ml/gdb-patches/2013-08/msg00289.html>

I have chosen to revert the patch applied to the AVR target-dependent code.
Therefore, this patch does just that.  It is better to keep the tree
buildable than to keep this patch in, for now.

2013-08-12  Sergio Durigan Junior  <sergiodj@redhat.com>

Revert implementation of gdbarch_gdb_signal_{to,from}_target for
AVR.
* avr-tdep.c: Remove include of "linux-tdep.h".  Remove enum with
different signals between the generic Linux kernel implementation
and AVR's.
(avr_linux_gdb_signal_from_target): Delete.
(avr_linux_gdb_signal_to_target): Delete.
(avr_gdbarch_init): Don't set gdbarch_gdb_signal_{to,from}_target.

gdb/ChangeLog
gdb/avr-tdep.c

index bea378f..5ed465f 100644 (file)
@@ -1,3 +1,14 @@
+2013-08-12  Sergio Durigan Junior  <sergiodj@redhat.com>
+
+       Revert implementation of gdbarch_gdb_signal_{to,from}_target for
+       AVR.
+       * avr-tdep.c: Remove include of "linux-tdep.h".  Remove enum with
+       different signals between the generic Linux kernel implementation
+       and AVR's.
+       (avr_linux_gdb_signal_from_target): Delete.
+       (avr_linux_gdb_signal_to_target): Delete.
+       (avr_gdbarch_init): Don't set gdbarch_gdb_signal_{to,from}_target.
+
 2013-08-09  Doug Evans  <dje@google.com>
 
        * dwarf2read.c (create_addrmap_from_index): Ignore bad address table
index 6beac3d..fc4e0f0 100644 (file)
@@ -36,7 +36,6 @@
 #include "regcache.h"
 #include "gdb_string.h"
 #include "dis-asm.h"
-#include "linux-tdep.h"
 
 /* AVR Background:
 
@@ -191,19 +190,6 @@ struct gdbarch_tdep
   struct type *pc_type;
 };
 
-/* This enum represents the signals' numbers on the AVR
-   architecture.  It just contains the signal definitions which are
-   different from the generic implementation.
-
-   It is derived from the file <arch/avr32/include/uapi/asm/signal.h>,
-   from the Linux kernel tree.  */
-
-enum
-  {
-    AVR_LINUX_SIGRTMIN = 32,
-    AVR_LINUX_SIGRTMAX = 63,
-  };
-
 /* Lookup the name of a register given it's number.  */
 
 static const char *
@@ -1355,60 +1341,6 @@ avr_dwarf_reg_to_regnum (struct gdbarch *gdbarch, int reg)
   return -1;
 }
 
-/* Implementation of `gdbarch_gdb_signal_from_target', as defined in
-   gdbarch.h.  */
-
-static enum gdb_signal
-avr_linux_gdb_signal_from_target (struct gdbarch *gdbarch, int signal)
-{
-  if (signal >= AVR_LINUX_SIGRTMIN && signal <= AVR_LINUX_SIGRTMAX)
-    {
-      int offset = signal - AVR_LINUX_SIGRTMIN;
-
-      if (offset == 0)
-       return GDB_SIGNAL_REALTIME_32;
-      else
-       return (enum gdb_signal) (offset - 1
-                                 + (int) GDB_SIGNAL_REALTIME_33);
-    }
-  else if (signal > AVR_LINUX_SIGRTMAX)
-    return GDB_SIGNAL_UNKNOWN;
-
-  return linux_gdb_signal_from_target (gdbarch, signal);
-}
-
-/* Implementation of `gdbarch_gdb_signal_to_target', as defined in
-   gdbarch.h.  */
-
-static int
-avr_linux_gdb_signal_to_target (struct gdbarch *gdbarch,
-                               enum gdb_signal signal)
-{
-  switch (signal)
-    {
-    /* GDB_SIGNAL_REALTIME_32 is not continuous in <gdb/signals.def>,
-       therefore we have to handle it here.  */
-    case GDB_SIGNAL_REALTIME_32:
-      return AVR_LINUX_SIGRTMIN;
-
-    /* GDB_SIGNAL_REALTIME_64 is not valid on AVR.  */
-    case GDB_SIGNAL_REALTIME_64:
-      return -1;
-    }
-
-  /* GDB_SIGNAL_REALTIME_33 to _63 are continuous.
-     AVR does not have _64.  */
-  if (signal >= GDB_SIGNAL_REALTIME_33
-      && signal <= GDB_SIGNAL_REALTIME_63)
-    {
-      int offset = signal - GDB_SIGNAL_REALTIME_33;
-
-      return AVR_LINUX_SIGRTMIN + 1 + offset;
-    }
-
-  return linux_gdb_signal_to_target (gdbarch, signal);
-}
-
 /* Initialize the gdbarch structure for the AVR's.  */
 
 static struct gdbarch *
@@ -1512,11 +1444,6 @@ avr_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_unwind_pc (gdbarch, avr_unwind_pc);
   set_gdbarch_unwind_sp (gdbarch, avr_unwind_sp);
 
-  set_gdbarch_gdb_signal_from_target (gdbarch,
-                                     avr_linux_gdb_signal_from_target);
-  set_gdbarch_gdb_signal_to_target (gdbarch,
-                                   avr_linux_gdb_signal_to_target);
-
   return gdbarch;
 }