diff options
author | 2005-03-09 22:08:13 +0000 | |
---|---|---|
committer | 2005-03-09 22:08:13 +0000 | |
commit | 5b2d44a05d619213499bea50fb4044707eaa159d (patch) | |
tree | 996f521e6af34a9a58d265be36dca932ba65fa40 /gdb/sparc-tdep.c | |
parent | Fix my email address in 2005-03-05 entry. (diff) | |
download | binutils-gdb-5b2d44a05d619213499bea50fb4044707eaa159d.tar.gz binutils-gdb-5b2d44a05d619213499bea50fb4044707eaa159d.tar.bz2 binutils-gdb-5b2d44a05d619213499bea50fb4044707eaa159d.zip |
* sparc-tdep.c (sparc_frame_cache): Adjust cached frame base
address for 64-bit code.
(sparc_unwind_dummy_id): Likewise.
* sparc64-tdep.c (sparc64_frame_prev_register): Adjust for new
frame base address convention.
(sparc64_push_dummy_call): Likewise.
* sparc64nbsd-tdep.c: Update copyright year.
(sparc64nbsd_sigcontext_frame_cache): Adjust cached frame base
address for 64-bit code.
(sparc64nbsd_init_abi): Tweak comment.
* sparc64obsd-tdep.c: Update copyright year.
(sparc64obsd_frame_cache): Adjust cached frame base address for
64-bit code.
(sparc64obsd_init_abi): Tweak comment.
Diffstat (limited to 'gdb/sparc-tdep.c')
-rw-r--r-- | gdb/sparc-tdep.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gdb/sparc-tdep.c b/gdb/sparc-tdep.c index 0bcdd48402d..f9ded35d1d0 100644 --- a/gdb/sparc-tdep.c +++ b/gdb/sparc-tdep.c @@ -673,6 +673,9 @@ sparc_frame_cache (struct frame_info *next_frame, void **this_cache) frame_unwind_register_unsigned (next_frame, SPARC_FP_REGNUM); } + if (cache->base & 1) + cache->base += BIAS; + return cache; } @@ -859,6 +862,8 @@ sparc_unwind_dummy_id (struct gdbarch *gdbarch, struct frame_info *next_frame) CORE_ADDR sp; sp = frame_unwind_register_unsigned (next_frame, SPARC_SP_REGNUM); + if (sp & 1) + sp += BIAS; return frame_id_build (sp, frame_pc_unwind (next_frame)); } |