aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2008-05-16 12:49:47 +0000
committerUlrich Weigand <uweigand@de.ibm.com>2008-05-16 12:49:47 +0000
commit74d1f0631ab3b9a845bc2becb4fd6afa6f691129 (patch)
treed1d946644fdfbbd9bb5b05bddaf0531933b28278
parent8526f32824b41fd33447305adeb9a74467f4594a (diff)
downloadgdb-74d1f0631ab3b9a845bc2becb4fd6afa6f691129.zip
gdb-74d1f0631ab3b9a845bc2becb4fd6afa6f691129.tar.gz
gdb-74d1f0631ab3b9a845bc2becb4fd6afa6f691129.tar.bz2
* ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
ppc64_sysv_abi_adjust_breakpoint_address. * ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove. * ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/ppc-linux-tdep.c9
-rw-r--r--gdb/ppc-sysv-tdep.c17
-rw-r--r--gdb/ppc-tdep.h3
4 files changed, 7 insertions, 29 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index f8f506a..ad130d7 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,12 @@
2008-05-16 Ulrich Weigand <uweigand@de.ibm.com>
+ * ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
+ ppc64_sysv_abi_adjust_breakpoint_address.
+ * ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
+ * ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
+
+2008-05-16 Ulrich Weigand <uweigand@de.ibm.com>
+
* ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
(ppc_linux_init_abi): Install find_solib_trampoline_target instead
of ppc_linux_skip_trampoline_code.
diff --git a/gdb/ppc-linux-tdep.c b/gdb/ppc-linux-tdep.c
index 91cd365..088e8b2 100644
--- a/gdb/ppc-linux-tdep.c
+++ b/gdb/ppc-linux-tdep.c
@@ -914,15 +914,6 @@ ppc_linux_init_abi (struct gdbarch_info info,
if (tdep->wordsize == 8)
{
- /* Handle the 64-bit SVR4 minimal-symbol convention of using "FN"
- for the descriptor and ".FN" for the entry-point -- a user
- specifying "break FN" will unexpectedly end up with a breakpoint
- on the descriptor and not the function. This architecture method
- transforms any breakpoints on descriptors into breakpoints on the
- corresponding entry point. */
- set_gdbarch_adjust_breakpoint_address
- (gdbarch, ppc64_sysv_abi_adjust_breakpoint_address);
-
/* Handle PPC GNU/Linux 64-bit function pointers (which are really
function descriptors). */
set_gdbarch_convert_from_func_ptr_addr
diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
index 669165f..3cb3ea3 100644
--- a/gdb/ppc-sysv-tdep.c
+++ b/gdb/ppc-sysv-tdep.c
@@ -1510,20 +1510,3 @@ ppc64_sysv_abi_return_value (struct gdbarch *gdbarch, struct type *func_type,
return RETURN_VALUE_STRUCT_CONVENTION;
}
-CORE_ADDR
-ppc64_sysv_abi_adjust_breakpoint_address (struct gdbarch *gdbarch,
- CORE_ADDR bpaddr)
-{
- /* PPC64 SYSV specifies that the minimal-symbol "FN" should point at
- a function-descriptor while the corresponding minimal-symbol
- ".FN" should point at the entry point. Consequently, a command
- like "break FN" applied to an object file with only minimal
- symbols, will insert the breakpoint into the descriptor at "FN"
- and not the function at ".FN". Avoid this confusion by adjusting
- any attempt to set a descriptor breakpoint into a corresponding
- function breakpoint. Note that GDB warns the user when this
- adjustment is applied - that's ok as otherwise the user will have
- no way of knowing why their breakpoint at "FN" resulted in the
- program stopping at ".FN". */
- return gdbarch_convert_from_func_ptr_addr (gdbarch, bpaddr, &current_target);
-}
diff --git a/gdb/ppc-tdep.h b/gdb/ppc-tdep.h
index f523b34..766ddd6 100644
--- a/gdb/ppc-tdep.h
+++ b/gdb/ppc-tdep.h
@@ -54,9 +54,6 @@ CORE_ADDR ppc64_sysv_abi_push_dummy_call (struct gdbarch *gdbarch,
struct value **args, CORE_ADDR sp,
int struct_return,
CORE_ADDR struct_addr);
-CORE_ADDR ppc64_sysv_abi_adjust_breakpoint_address (struct gdbarch *gdbarch,
- CORE_ADDR bpaddr);
-
enum return_value_convention ppc64_sysv_abi_return_value (struct gdbarch *gdbarch,
struct type *func_type,
struct type *valtype,