diff options
author | Ulrich Weigand <uweigand@de.ibm.com> | 2007-06-15 22:39:52 +0000 |
---|---|---|
committer | Ulrich Weigand <uweigand@de.ibm.com> | 2007-06-15 22:39:52 +0000 |
commit | 52f729a7241c0187f9ed31542d7e9a1ec98f63b7 (patch) | |
tree | e657c6a68b7f22d5dcf8f4eea3de2a99d515d7ad /gdb/gnu-v3-abi.c | |
parent | 0b1b3e423ad28731135cdd275522bdf3d2d17570 (diff) | |
download | gdb-52f729a7241c0187f9ed31542d7e9a1ec98f63b7.zip gdb-52f729a7241c0187f9ed31542d7e9a1ec98f63b7.tar.gz gdb-52f729a7241c0187f9ed31542d7e9a1ec98f63b7.tar.bz2 |
* gdbarch.sh (skip_trampoline_code): Add FRAME argument.
* gdbarch.c, gdbarch.h: Regenerate.
* arch-utils.c (generic_skip_trampoline_code): Add FRAME argument.
* arch-utils.h (generic_skip_trampoline_code): Likewise.
* infrun.c (handle_inferior_event): Pass current frame to
gdbarch_skip_trampoline_code and skip_language_trampoline.
* language.c (unk_lang_trampoline): Add FRAME argument.
(skip_language_trampoline): Add FRAME argument. Pass it to
skip_trampoline callback.
* language.h: Add forward declaration of struct frame_info.
(struct language_defn): Add FRAME argument to skip_trampoline.
(skip_language_trampoline): Add FRAME argument.
* cp-abi.c (cplus_skip_trampoline): Add FRAME argument. Pass it
to skip_trampoline callback.
* cp-abi.h: Add forward declaration of struct frame_info.
(cplus_skip_trampoline): Add FRAME argument.
(struct cp_abi_ops): Add FRAME argument to skip_trampoline callback.
* gnu-v3-abi.c (gnuv3_skip_trampoline): Add FRAME argument. Pass it
to gdbarch_skip_trampoline_code.
* objc-lang.c (objc_skip_trampoline): Add FRAME argument. Pass it
to gdbarch_skip_trampoline_code.
* minsyms.c (find_solib_trampoline_target): Add FRAME argument.
* symtab.h (find_solib_trampoline_target): Likewise.
* obsd-tdep.c (obsd_skip_solib_resolver): Pass current frame to
find_solib_trampoline_target.
* arm-tdep.c (arm_skip_stub): Add FRAME argument. Read registers
from FRAME instead of calling read_register.
* hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Add FRAME
argument. Read registers from FRAME instead of using read_register.
* hppa-tdep.c (hppa_skip_trampoline_code): Likewise.
* hppa-tdep.h (hppa_skip_trampoline_code): Add FRAME argument.
* i386-cygwin-tdep.c (i386_cygwin_skip_trampoline_code): Add FRAME
argument.
* m32c-tdep.c (m32c_skip_trampoline_code): Add FRAME argument.
* mips-tdep.c (mips_skip_trampoline_code): Add FRAME argument. Read
registers from FRAME instead of using read_signed_register.
* ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Add FRAME
argument.
(ppc64_standard_linkage_target): Likewise. Read registers from FRAME
instead of using read_register.
(ppc64_skip_trampoline_code): Add FRAME argument. Pass it to
ppc64_standard_linkage_target.
* rs6000-tdep.c (rs6000_skip_trampoline_code): Add FRAME argument.
Pass it to find_solib_trampoline_target. Read registers from FRAME
instead of using read_register.
* xstormy16-tdep.c (xstormy16_skip_trampoline_code): Add FRAME
argument.
Diffstat (limited to 'gdb/gnu-v3-abi.c')
-rw-r--r-- | gdb/gnu-v3-abi.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/gdb/gnu-v3-abi.c b/gdb/gnu-v3-abi.c index 0f9f420..4914b46 100644 --- a/gdb/gnu-v3-abi.c +++ b/gdb/gnu-v3-abi.c @@ -679,14 +679,15 @@ gnuv3_method_ptr_to_value (struct value **this_p, struct value *method_ptr) of the routine we are thunking to and continue to there instead. */ static CORE_ADDR -gnuv3_skip_trampoline (CORE_ADDR stop_pc) +gnuv3_skip_trampoline (struct frame_info *frame, CORE_ADDR stop_pc) { CORE_ADDR real_stop_pc, method_stop_pc; struct minimal_symbol *thunk_sym, *fn_sym; struct obj_section *section; char *thunk_name, *fn_name; - real_stop_pc = gdbarch_skip_trampoline_code (current_gdbarch, stop_pc); + real_stop_pc = gdbarch_skip_trampoline_code + (current_gdbarch, frame, stop_pc); if (real_stop_pc == 0) real_stop_pc = stop_pc; @@ -710,7 +711,7 @@ gnuv3_skip_trampoline (CORE_ADDR stop_pc) method_stop_pc = SYMBOL_VALUE_ADDRESS (fn_sym); real_stop_pc = gdbarch_skip_trampoline_code - (current_gdbarch, method_stop_pc); + (current_gdbarch, frame, method_stop_pc); if (real_stop_pc == 0) real_stop_pc = method_stop_pc; |