* gdbarch.sh (get_longjmp_target): Add FRAME argument.
* gdbarch.c, gdbarch.h: Regenerate. * infrun.c (handle_inferior_event): Pass current frame to gdbarch_get_longjmp_target. * alpha-tdep.c (alpha_get_longjmp_target): Add FRAME argument. Read registers from FRAME instead of using read_register. Use get_frame_arch instead of current_gdbarch. * arm-tdep.c (arm_get_longjmp_target): Likewise. * i386-tdep.c (i386_get_longjmp_target): Likewise. * m68k-tdep.c (m68k_get_longjmp_target): Likewise. * mips-linux-tdep.c (mips_linux_get_longjmp_target): Likewise. (mips64_linux_get_longjmp_target): Likewise. * mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Likewise.
This commit is contained in:
parent
52f729a724
commit
60ade65d49
11 changed files with 42 additions and 24 deletions
|
@ -284,14 +284,14 @@ mipsnbsd_sigtramp_offset (struct frame_info *next_frame)
|
|||
NBSD_MIPS_JB_ELEMENT_SIZE)
|
||||
|
||||
static int
|
||||
mipsnbsd_get_longjmp_target (CORE_ADDR *pc)
|
||||
mipsnbsd_get_longjmp_target (struct frame_info *frame, CORE_ADDR *pc)
|
||||
{
|
||||
CORE_ADDR jb_addr;
|
||||
char *buf;
|
||||
|
||||
buf = alloca (NBSD_MIPS_JB_ELEMENT_SIZE);
|
||||
|
||||
jb_addr = read_register (MIPS_A0_REGNUM);
|
||||
jb_addr = get_frame_register_unsigned (frame, MIPS_A0_REGNUM);
|
||||
|
||||
if (target_read_memory (jb_addr + NBSD_MIPS_JB_OFFSET, buf,
|
||||
NBSD_MIPS_JB_ELEMENT_SIZE))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue