aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbarch.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/gdbarch.h')
-rw-r--r--gdb/gdbarch.h48
1 files changed, 33 insertions, 15 deletions
diff --git a/gdb/gdbarch.h b/gdb/gdbarch.h
index 2280cfa..c829586 100644
--- a/gdb/gdbarch.h
+++ b/gdb/gdbarch.h
@@ -2122,22 +2122,40 @@ extern void set_gdbarch_in_solib_return_trampoline (struct gdbarch *gdbarch, gdb
no name, assume we are not in sigtramp).
FIXME: cagney/2002-04-21: The function find_pc_partial_function
- calls find_pc_sect_partial_function() which calls PC_IN_SIGTRAMP.
- This means PC_IN_SIGTRAMP function can't be implemented by doing its
- own local NAME lookup.
+ calls find_pc_sect_partial_function() which calls
+ DEPRECATED_PC_IN_SIGTRAMP. This means DEPRECATED_PC_IN_SIGTRAMP
+ function can't be implemented by doing its own local NAME lookup.
- FIXME: cagney/2002-04-21: PC_IN_SIGTRAMP is something of a mess.
- Some code also depends on SIGTRAMP_START and SIGTRAMP_END but other
- does not. */
-
-typedef int (gdbarch_pc_in_sigtramp_ftype) (CORE_ADDR pc, char *name);
-extern int gdbarch_pc_in_sigtramp (struct gdbarch *gdbarch, CORE_ADDR pc, char *name);
-extern void set_gdbarch_pc_in_sigtramp (struct gdbarch *gdbarch, gdbarch_pc_in_sigtramp_ftype *pc_in_sigtramp);
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (PC_IN_SIGTRAMP)
-#error "Non multi-arch definition of PC_IN_SIGTRAMP"
-#endif
-#if !defined (PC_IN_SIGTRAMP)
-#define PC_IN_SIGTRAMP(pc, name) (gdbarch_pc_in_sigtramp (current_gdbarch, pc, name))
+ FIXME: cagney/2002-04-21: DEPRECATED_PC_IN_SIGTRAMP is something of
+ a mess. Some code also depends on SIGTRAMP_START and SIGTRAMP_END
+ but other does not.
+
+ NOTE: cagney/2004-03-16: DEPRECATED_PC_IN_SIGTRAMP has been made
+ obsolete by signal trampoline frame unwind sniffers. */
+
+#if defined (DEPRECATED_PC_IN_SIGTRAMP)
+/* Legacy for systems yet to multi-arch DEPRECATED_PC_IN_SIGTRAMP */
+#if !defined (DEPRECATED_PC_IN_SIGTRAMP_P)
+#define DEPRECATED_PC_IN_SIGTRAMP_P() (1)
+#endif
+#endif
+
+extern int gdbarch_deprecated_pc_in_sigtramp_p (struct gdbarch *gdbarch);
+#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (DEPRECATED_PC_IN_SIGTRAMP_P)
+#error "Non multi-arch definition of DEPRECATED_PC_IN_SIGTRAMP"
+#endif
+#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) || !defined (DEPRECATED_PC_IN_SIGTRAMP_P)
+#define DEPRECATED_PC_IN_SIGTRAMP_P() (gdbarch_deprecated_pc_in_sigtramp_p (current_gdbarch))
+#endif
+
+typedef int (gdbarch_deprecated_pc_in_sigtramp_ftype) (CORE_ADDR pc, char *name);
+extern int gdbarch_deprecated_pc_in_sigtramp (struct gdbarch *gdbarch, CORE_ADDR pc, char *name);
+extern void set_gdbarch_deprecated_pc_in_sigtramp (struct gdbarch *gdbarch, gdbarch_deprecated_pc_in_sigtramp_ftype *deprecated_pc_in_sigtramp);
+#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (DEPRECATED_PC_IN_SIGTRAMP)
+#error "Non multi-arch definition of DEPRECATED_PC_IN_SIGTRAMP"
+#endif
+#if !defined (DEPRECATED_PC_IN_SIGTRAMP)
+#define DEPRECATED_PC_IN_SIGTRAMP(pc, name) (gdbarch_deprecated_pc_in_sigtramp (current_gdbarch, pc, name))
#endif
#if defined (SIGTRAMP_START)