diff options
author | Andrew Cagney <cagney@redhat.com> | 2003-10-22 23:54:11 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2003-10-22 23:54:11 +0000 |
commit | e2d0e7eb0476ade97ed7c00e7a3838609d52d084 (patch) | |
tree | 455a8bf9468a11414a1542bc9b5d76a2f1583200 /gdb/gdbarch.h | |
parent | f1c07ab0ca71fdadc64f2838f87f39784aee5b63 (diff) | |
download | gdb-e2d0e7eb0476ade97ed7c00e7a3838609d52d084.zip gdb-e2d0e7eb0476ade97ed7c00e7a3838609d52d084.tar.gz gdb-e2d0e7eb0476ade97ed7c00e7a3838609d52d084.tar.bz2 |
2003-10-22 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh (convert_from_func_ptr_addr): Convert to a pure
multi-arch method, add "targ" parameter.
(struct target_ops): Declare.
* gdbarch.h, gdbarch.c: Re-generate.
* Makefile.in (c-valprint.o): Update dependencies.
* arch-utils.h: Update copyright.
(convert_from_func_ptr_addr_identity): Declare.
* arch-utils.c (convert_from_func_ptr_addr_identity): New function.
* ia64-tdep.c (ia64_convert_from_func_ptr_addr): Update.
* rs6000-tdep.c (rs6000_convert_from_func_ptr_addr): Upate.
* ppc-linux-tdep.c (ppc64_linux_convert_from_func_ptr_addr): Update.
* infcall.c (find_function_addr, call_function_by_hand): Update.
* c-valprint.c: Include "target.h".
(print_function_pointer_address): Update.
Diffstat (limited to 'gdb/gdbarch.h')
-rw-r--r-- | gdb/gdbarch.h | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/gdb/gdbarch.h b/gdb/gdbarch.h index 03dcc37..36e0e7a 100644 --- a/gdb/gdbarch.h +++ b/gdb/gdbarch.h @@ -45,6 +45,7 @@ struct regcache; struct reggroup; struct regset; struct disassemble_info; +struct target_ops; extern struct gdbarch *current_gdbarch; @@ -2039,15 +2040,9 @@ extern void set_gdbarch_long_double_format (struct gdbarch *gdbarch, const struc #define TARGET_LONG_DOUBLE_FORMAT (gdbarch_long_double_format (current_gdbarch)) #endif -typedef CORE_ADDR (gdbarch_convert_from_func_ptr_addr_ftype) (CORE_ADDR addr); -extern CORE_ADDR gdbarch_convert_from_func_ptr_addr (struct gdbarch *gdbarch, CORE_ADDR addr); +typedef CORE_ADDR (gdbarch_convert_from_func_ptr_addr_ftype) (struct gdbarch *gdbarch, CORE_ADDR addr, struct target_ops *targ); +extern CORE_ADDR gdbarch_convert_from_func_ptr_addr (struct gdbarch *gdbarch, CORE_ADDR addr, struct target_ops *targ); extern void set_gdbarch_convert_from_func_ptr_addr (struct gdbarch *gdbarch, gdbarch_convert_from_func_ptr_addr_ftype *convert_from_func_ptr_addr); -#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (CONVERT_FROM_FUNC_PTR_ADDR) -#error "Non multi-arch definition of CONVERT_FROM_FUNC_PTR_ADDR" -#endif -#if !defined (CONVERT_FROM_FUNC_PTR_ADDR) -#define CONVERT_FROM_FUNC_PTR_ADDR(addr) (gdbarch_convert_from_func_ptr_addr (current_gdbarch, addr)) -#endif /* On some machines there are bits in addresses which are not really part of the address, but are used by the kernel, the hardware, etc. |