diff options
author | Andrew Cagney <cagney@redhat.com> | 2004-03-23 14:48:00 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2004-03-23 14:48:00 +0000 |
commit | f561f0263002fbd950e66676a666ee5f46483841 (patch) | |
tree | e5ba26e96b5a7c88e27b0d34e3679338a3201bd7 /gdb/gdbarch.h | |
parent | d2259dd367eabe17588fcc008cdce792be2ec971 (diff) | |
download | gdb-f561f0263002fbd950e66676a666ee5f46483841.zip gdb-f561f0263002fbd950e66676a666ee5f46483841.tar.gz gdb-f561f0263002fbd950e66676a666ee5f46483841.tar.bz2 |
2004-03-23 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh (PC_IN_SIGTRAMP): Change to a function with
predicate, deprecate.
* gdbarch.h, gdbarch.c: Re-generate.
* alpha-linux-tdep.c (alpha_linux_init_abi): Update.
* alpha-osf1-tdep.c (alpha_osf1_init_abi): Update.
* alpha-tdep.c (alpha_sigtramp_frame_sniffer): Update.
* alphafbsd-tdep.c (alphafbsd_init_abi): Update.
* alphanbsd-tdep.c (alphanbsd_init_abi): Update.
* amd64-linux-tdep.c (amd64_linux_init_abi): Update.
* amd64-tdep.c (amd64_sigtramp_frame_sniffer): Update.
* amd64nbsd-tdep.c (amd64nbsd_init_abi): Update.
* amd64obsd-tdep.c (amd64obsd_init_abi): Update.
* arm-tdep.c (arm_sigtramp_unwind_sniffer): Update.
* blockframe.c (find_pc_partial_function): Update.
* breakpoint.c (bpstat_what): Update.
* frame.c (frame_type_from_pc, legacy_get_prev_frame): Update.
* frv-linux-tdep.c (frv_linux_init_abi): Update.
* frv-tdep.c (frv_sigtramp_frame_sniffer): Update.
* hppa-hpux-tdep.c (hppa_hpux_init_abi): Update.
* i386-interix-tdep.c (i386_interix_init_abi): Update.
* i386-linux-tdep.c (i386_linux_init_abi): Update.
* i386-nto-tdep.c (i386nto_init_abi): Update.
* i386-sol2-tdep.c (i386_sol2_init_abi): Update.
* i386-tdep.c (i386_sigtramp_frame_sniffer)
(i386_svr4_init_abi, i386_go32_init_abi, i386_gdbarch_init): Update.
* i386bsd-tdep.c (i386bsd_init_abi): Update.
* i386nbsd-tdep.c (i386nbsd_init_abi): Update.
* i386obsd-tdep.c (i386obsd_init_abi): Update.
* ia64-tdep.c (ia64_sigtramp_frame_sniffer): Update.
* infrun.c (pc_in_sigtramp): Update.
* m68k-tdep.c (m68k_sigtramp_frame_sniffer): Update.
* m68klinux-tdep.c (m68k_linux_init_abi): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* mipsnbsd-tdep.c (mipsnbsd_init_abi): Update.
* ppc-linux-tdep.c: Update comment.
* ppcnbsd-tdep.c (ppcnbsd_init_abi): Update.
* shnbsd-tdep.c (shnbsd_init_abi): Update.
* sparc-linux-tdep.c (sparc32_linux_init_abi): Update.
* sparc-sol2-tdep.c (sparc32_sol2_init_abi): Update.
* sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Update.
* sparc64fbsd-tdep.c (sparc64fbsd_init_abi): Update.
* sparc64nbsd-tdep.c (sparc64nbsd_init_abi): Update.
* sparc64obsd-tdep.c (sparc64obsd_init_abi): Update.
* sparcnbsd-tdep.c (sparc32nbsd_init_abi): Update.
* sparcobsd-tdep.c (sparc32obsd_init_abi): Update.
Index: doc/ChangeLog
2004-03-23 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Deprecate
references to PC_IN_SIGTRAMP.
Diffstat (limited to 'gdb/gdbarch.h')
-rw-r--r-- | gdb/gdbarch.h | 48 |
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) |