forked from Imagelibrary/binutils-gdb
* m68k-tdep.c (m68k_frame_chain, m68k_frame_saved_pc)
(altos_skip_prologue, delta68_frame_saved_pc, isi_frame_num_args) (delta68_frame_num_args, news_frame_num_args, m68k_skip_prologue) (m68k_frame_init_saved_regs, m68k_saved_pc_after_call): Use read_memory_unsigned_integer instead of read_memory_integer when dealing with addresses and instruction opcodes. * m68klinux-tdep.c (m68k_linux_sigtramp_saved_pc) (m68k_linux_frame_saved_pc): Likewise.
This commit is contained in:
@@ -94,14 +94,16 @@ m68k_linux_sigtramp_saved_pc (struct frame_info *frame)
|
||||
|
||||
/* Get sigcontext address, it is the third parameter on the stack. */
|
||||
if (frame->next)
|
||||
sigcontext_addr = read_memory_integer (FRAME_ARGS_ADDRESS (frame->next)
|
||||
+ FRAME_ARGS_SKIP
|
||||
+ sigcontext_offs,
|
||||
ptrbytes);
|
||||
sigcontext_addr
|
||||
= read_memory_unsigned_integer (FRAME_ARGS_ADDRESS (frame->next)
|
||||
+ FRAME_ARGS_SKIP
|
||||
+ sigcontext_offs,
|
||||
ptrbytes);
|
||||
else
|
||||
sigcontext_addr = read_memory_integer (read_register (SP_REGNUM)
|
||||
+ sigcontext_offs,
|
||||
ptrbytes);
|
||||
sigcontext_addr
|
||||
= read_memory_unsigned_integer (read_register (SP_REGNUM)
|
||||
+ sigcontext_offs,
|
||||
ptrbytes);
|
||||
|
||||
/* Don't cause a memory_error when accessing sigcontext in case the
|
||||
stack layout has changed or the stack is corrupt. */
|
||||
@@ -120,5 +122,5 @@ m68k_linux_frame_saved_pc (struct frame_info *frame)
|
||||
if (get_frame_type (frame) == SIGTRAMP_FRAME)
|
||||
return m68k_linux_sigtramp_saved_pc (frame);
|
||||
|
||||
return read_memory_integer (frame->frame + 4, 4);
|
||||
return read_memory_unsigned_integer (frame->frame + 4, 4);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user