diff options
author | Andreas Schwab <schwab@linux-m68k.org> | 2006-03-08 15:28:17 +0000 |
---|---|---|
committer | Andreas Schwab <schwab@linux-m68k.org> | 2006-03-08 15:28:17 +0000 |
commit | f1b4b38ecb079e3762826dfc2d4fcc6a9698517d (patch) | |
tree | 195baf5aae15a1089e3d3ca0d1aa9d6a4a39e7c1 /gdb/ia64-tdep.c | |
parent | f53f0d0bde592682b363c703b68166408c6552d1 (diff) | |
download | gdb-f1b4b38ecb079e3762826dfc2d4fcc6a9698517d.zip gdb-f1b4b38ecb079e3762826dfc2d4fcc6a9698517d.tar.gz gdb-f1b4b38ecb079e3762826dfc2d4fcc6a9698517d.tar.bz2 |
* ia64-tdep.c (ia64_libunwind_frame_this_id): Adapt uses of
libunwind_frame_prev_register to use a gdb_byte buffer and
extract_unsigned_integer.
(ia64_libunwind_sigtramp_frame_prev_register): Likewise.
* libunwind-frame.c (libunwind_frame_prev_register): Change type
of last argument to `gdb_byte *'
* libunwind-frame.h: Adjust declaration.
Diffstat (limited to 'gdb/ia64-tdep.c')
-rw-r--r-- | gdb/ia64-tdep.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gdb/ia64-tdep.c b/gdb/ia64-tdep.c index 4ec5a95..f78f1fc 100644 --- a/gdb/ia64-tdep.c +++ b/gdb/ia64-tdep.c @@ -2732,7 +2732,8 @@ ia64_libunwind_frame_this_id (struct frame_info *next_frame, void **this_cache, and don't want to unwind past this frame. We return a null frame_id to indicate this. */ libunwind_frame_prev_register (next_frame, this_cache, IA64_IP_REGNUM, - &optimized, &lval, &addr, &realnum, &prev_ip); + &optimized, &lval, &addr, &realnum, buf); + prev_ip = extract_unsigned_integer (buf, 8); if (prev_ip != 0) (*this_id) = frame_id_build_special (id.stack_addr, id.code_addr, bsp); @@ -2892,6 +2893,7 @@ ia64_libunwind_sigtramp_frame_prev_register (struct frame_info *next_frame, int *realnump, gdb_byte *valuep) { + gdb_byte buf[8]; CORE_ADDR prev_ip, addr; int realnum, optimized; enum lval_type lval; @@ -2900,7 +2902,8 @@ ia64_libunwind_sigtramp_frame_prev_register (struct frame_info *next_frame, /* If the previous frame pc value is 0, then we want to use the SIGCONTEXT method of getting previous registers. */ libunwind_frame_prev_register (next_frame, this_cache, IA64_IP_REGNUM, - &optimized, &lval, &addr, &realnum, &prev_ip); + &optimized, &lval, &addr, &realnum, buf); + prev_ip = extract_unsigned_integer (buf, 8); if (prev_ip == 0) { |