aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbarch.h
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2004-06-18 21:36:16 +0000
committerAndrew Cagney <cagney@redhat.com>2004-06-18 21:36:16 +0000
commit782263ab3ac9ffeed8ac469a906f898668212b6c (patch)
treedbe450bc10d307f145e811314c4b9ca18bd7230b /gdb/gdbarch.h
parentb2d38a17cf625ae652ea4104a73be007176d98b0 (diff)
downloadfsf-binutils-gdb-782263ab3ac9ffeed8ac469a906f898668212b6c.zip
fsf-binutils-gdb-782263ab3ac9ffeed8ac469a906f898668212b6c.tar.gz
fsf-binutils-gdb-782263ab3ac9ffeed8ac469a906f898668212b6c.tar.bz2
2004-06-18 Andrew Cagney <cagney@gnu.org>
* gdbarch.sh (DEPRECATED_FUNCTION_START_OFFSET): Deprecated. * gdbarch.h, gdbarch.c: Re-generate. * ada-lang.c (ada_finish_decode_line_1): Update. * infrun.c (handle_inferior_event): Update. * infcall.c (find_function_addr): Update. * linespec.c (minsym_found): Update. * symtab.c (find_function_start_sal, skip_prologue_using_sal): Update. * blockframe.c (legacy_frameless_look_for_prologue): Update. * cli/cli-cmds.c (disassemble_command): Update. * vax-tdep.c (vax_gdbarch_init): Update. Index: doc/ChangeLog 2004-06-18 Andrew Cagney <cagney@gnu.org> * gdbint.texinfo (Target Architecture Definition): Deprecate FUNCTION_START_OFFSET.
Diffstat (limited to 'gdb/gdbarch.h')
-rw-r--r--gdb/gdbarch.h22
1 files changed, 15 insertions, 7 deletions
diff --git a/gdb/gdbarch.h b/gdb/gdbarch.h
index b0f9f14..01c5e1e 100644
--- a/gdb/gdbarch.h
+++ b/gdb/gdbarch.h
@@ -1312,13 +1312,21 @@ extern void set_gdbarch_decr_pc_after_break (struct gdbarch *gdbarch, CORE_ADDR
#define DECR_PC_AFTER_BREAK (gdbarch_decr_pc_after_break (current_gdbarch))
#endif
-extern CORE_ADDR gdbarch_function_start_offset (struct gdbarch *gdbarch);
-extern void set_gdbarch_function_start_offset (struct gdbarch *gdbarch, CORE_ADDR function_start_offset);
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (FUNCTION_START_OFFSET)
-#error "Non multi-arch definition of FUNCTION_START_OFFSET"
-#endif
-#if !defined (FUNCTION_START_OFFSET)
-#define FUNCTION_START_OFFSET (gdbarch_function_start_offset (current_gdbarch))
+/* A function can be addressed by either it's "pointer" (possibly a
+ descriptor address) or "entry point" (first executable instruction).
+ The method "convert_from_func_ptr_addr" converting the former to the
+ latter. DEPRECATED_FUNCTION_START_OFFSET is being used to implement
+ a simplified subset of that functionality - the function's address
+ corresponds to the "function pointer" and the function's start
+ corresponds to the "function entry point" - and hence is redundant. */
+
+extern CORE_ADDR gdbarch_deprecated_function_start_offset (struct gdbarch *gdbarch);
+extern void set_gdbarch_deprecated_function_start_offset (struct gdbarch *gdbarch, CORE_ADDR deprecated_function_start_offset);
+#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (DEPRECATED_FUNCTION_START_OFFSET)
+#error "Non multi-arch definition of DEPRECATED_FUNCTION_START_OFFSET"
+#endif
+#if !defined (DEPRECATED_FUNCTION_START_OFFSET)
+#define DEPRECATED_FUNCTION_START_OFFSET (gdbarch_deprecated_function_start_offset (current_gdbarch))
#endif
typedef void (gdbarch_remote_translate_xfer_address_ftype) (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR gdb_addr, int gdb_len, CORE_ADDR *rem_addr, int *rem_len);