* alpha-linux-tdep.c (alpha_linux_pc_in_sigtramp): New function.
authorJason Thorpe <thorpej@netbsd.org>
Thu, 25 Apr 2002 05:06:08 +0000 (05:06 +0000)
committerJason Thorpe <thorpej@netbsd.org>
Thu, 25 Apr 2002 05:06:08 +0000 (05:06 +0000)
(alpha_linux_init_abi): Set gdbarch_pc_in_sigtramp to
alpha_linux_pc_in_sigtramp.
* alpha-osf1-tdep.c (alpha_osf1_pc_in_sigtramp): New function.
(alpha_osf1_init_abi): Set gdbarch_pc_in_sigtramp to
alpha_osf1_pc_in_sigtramp.
* alpha-tdep.c (alpha_osf_in_sigtramp): Remove.
* alphafbsd-tdep.c (alphafbsd_pc_in_sigtramp): New function.
(alphafbsd_init_abi): Set gdbarch_pc_in_sigtramp to
alphafbsd_pc_in_sigtramp.
* alphanbsd-tdep.c (alphanbsd_pc_in_sigtramp): New function.
(alphanbsd_init_abi): Set gdbarch_pc_in_sigtramp to
alphanbsd_pc_in_sigtramp.
* config/alpha/tm-alpha.h (IN_SIGTRAMP): Remove.
* config/alpha/tm-alphalinux.h (IN_SIGTRAMP): Remove.

gdb/ChangeLog
gdb/alpha-linux-tdep.c
gdb/alpha-osf1-tdep.c
gdb/alpha-tdep.c
gdb/alphafbsd-tdep.c
gdb/alphanbsd-tdep.c
gdb/config/alpha/tm-alpha.h
gdb/config/alpha/tm-alphalinux.h

index f77061e..8d35409 100644 (file)
@@ -1,5 +1,23 @@
 2002-04-24  Jason Thorpe  <thorpej@wasabisystems.com>
 
+       * alpha-linux-tdep.c (alpha_linux_pc_in_sigtramp): New function.
+       (alpha_linux_init_abi): Set gdbarch_pc_in_sigtramp to
+       alpha_linux_pc_in_sigtramp.
+       * alpha-osf1-tdep.c (alpha_osf1_pc_in_sigtramp): New function.
+       (alpha_osf1_init_abi): Set gdbarch_pc_in_sigtramp to
+       alpha_osf1_pc_in_sigtramp.
+       * alpha-tdep.c (alpha_osf_in_sigtramp): Remove.
+       * alphafbsd-tdep.c (alphafbsd_pc_in_sigtramp): New function.
+       (alphafbsd_init_abi): Set gdbarch_pc_in_sigtramp to
+       alphafbsd_pc_in_sigtramp.
+       * alphanbsd-tdep.c (alphanbsd_pc_in_sigtramp): New function.
+       (alphanbsd_init_abi): Set gdbarch_pc_in_sigtramp to
+       alphanbsd_pc_in_sigtramp.
+       * config/alpha/tm-alpha.h (IN_SIGTRAMP): Remove.
+       * config/alpha/tm-alphalinux.h (IN_SIGTRAMP): Remove.
+
+2002-04-24  Jason Thorpe  <thorpej@wasabisystems.com>
+
        * config/alpha/nbsd.mh (NATDEPFILES): Remove solib-legacy.o.
 
 2002-04-24  Jason Thorpe  <thorpej@wasabisystems.com>
index f9b060d..ed7a7c6 100644 (file)
@@ -85,12 +85,20 @@ alpha_linux_sigtramp_offset (CORE_ADDR pc)
   return -1;
 }
 
+static int
+alpha_linux_pc_in_sigtramp (CORE_ADDR pc, char *func_name)
+{
+  return (alpha_linux_sigtramp_offset (pc) >= 0);
+}
+
 static void
 alpha_linux_init_abi (struct gdbarch_info info,
                       struct gdbarch *gdbarch)
 {
   struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
 
+  set_gdbarch_pc_in_sigtramp (gdbarch, alpha_linux_pc_in_sigtramp);
+
   tdep->dynamic_sigtramp_offset = alpha_linux_sigtramp_offset;
 }
 
index 97ac6fb..cba9134 100644 (file)
@@ -37,12 +37,20 @@ alpha_osf1_skip_sigtramp_frame (struct frame_info *frame, CORE_ADDR pc)
   return 0;
 }
 
+static int
+alpha_osf1_pc_in_sigtramp (CORE_ADDR pc, char *func_name)
+{
+  return (func_name != NULL && STREQ ("__sigtramp", func_name));
+}
+
 static void
 alpha_osf1_init_abi (struct gdbarch_info info,
                      struct gdbarch *gdbarch)
 {
   struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
 
+  set_gdbarch_pc_in_sigtramp (gdbarch, alpha_osf1_pc_in_sigtramp);
+
   tdep->skip_sigtramp_frame = alpha_osf1_skip_sigtramp_frame;
 }
 
index ef0b2cd..035b8d9 100644 (file)
@@ -193,12 +193,6 @@ struct linked_proc_info
   }
  *linked_proc_desc_table = NULL;
 \f
-int
-alpha_osf_in_sigtramp (CORE_ADDR pc, char *func_name)
-{
-  return (func_name != NULL && STREQ ("__sigtramp", func_name));
-}
-
 static CORE_ADDR
 alpha_frame_past_sigtramp_frame (struct frame_info *frame, CORE_ADDR pc)
 {
index 6a3f7e8..2e52252 100644 (file)
@@ -54,12 +54,21 @@ alphafbsd_use_struct_convention (int gcc_p, struct type *type)
   return 0;
 }
 
+static int
+alphafbsd_pc_in_sigtramp (CORE_ADDR pc, char *func_name)
+{
+  /* FIXME */
+  return 0;
+}
+
 static void
 alphafbsd_init_abi (struct gdbarch_info info,
                     struct gdbarch *gdbarch)
 {
   struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
 
+  set_gdbarch_pc_in_sigtramp (gdbarch, alphafbsd_pc_in_sigtramp);
+
   set_gdbarch_use_struct_convention (gdbarch, alphafbsd_use_struct_convention);
 }
 
index 3f3ae52..c29b3f9 100644 (file)
@@ -123,12 +123,20 @@ alphanbsd_sigtramp_offset (CORE_ADDR pc)
   return -1;
 }
 
+static int
+alphanbsd_pc_in_sigtramp (CORE_ADDR pc, char *func_name)
+{
+  return (alphanbsd_sigtramp_offset (pc) >= 0);
+}
+
 static void
 alphanbsd_init_abi (struct gdbarch_info info,
                     struct gdbarch *gdbarch)
 {
   struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
 
+  set_gdbarch_pc_in_sigtramp (gdbarch, alphanbsd_pc_in_sigtramp);
+
   /* NetBSD/alpha does not provide single step support via ptrace(2); we
      must use software single-stepping.  */
   set_gdbarch_software_single_step (gdbarch, alpha_software_single_step);
index 61d9561..a379332 100644 (file)
@@ -45,11 +45,6 @@ struct symbol;
 
 #define FUNCTION_START_OFFSET 0
 
-/* Are we currently handling a signal ?  */
-
-#define IN_SIGTRAMP(pc, name) alpha_osf_in_sigtramp ((pc), (name))
-extern int alpha_osf_in_sigtramp (CORE_ADDR, char *);
-
 #define BREAKPOINT {0x80, 0, 0, 0}     /* call_pal bpt */
 
 /* Special symbol found in blocks associated with routines.  We can hang
index 0235758..fae1743 100644 (file)
 
 #include "alpha/tm-alpha.h"
 
-/* Are we currently handling a signal ?  */
-
-extern LONGEST alpha_linux_sigtramp_offset (CORE_ADDR);
-#undef IN_SIGTRAMP
-#define IN_SIGTRAMP(pc, name)  (alpha_linux_sigtramp_offset (pc) >= 0)
-
 /* Get start and end address of sigtramp handler.  */
 
+extern LONGEST alpha_linux_sigtramp_offset (CORE_ADDR);
 #define SIGTRAMP_START(pc)     (pc - alpha_linux_sigtramp_offset (pc))
 #define SIGTRAMP_END(pc)       (SIGTRAMP_START(pc) + 3*4)