Index: gdb/mips-linux-tdep.c =================================================================== RCS file: /cvs/src/src/gdb/mips-linux-tdep.c,v retrieving revision 1.81 diff -u -p -r1.81 mips-linux-tdep.c --- gdb/mips-linux-tdep.c 1 Jan 2010 07:31:37 -0000 1.81 +++ gdb/mips-linux-tdep.c 19 Feb 2010 21:58:32 -0000 @@ -797,7 +797,7 @@ static const struct tramp_frame mips_lin struct sigframe { u32 sf_ass[4]; [argument save space for o32] - u32 sf_code[2]; [signal trampoline] + u32 sf_code[2]; [signal trampoline or fill] struct sigcontext sf_sc; sigset_t sf_mask; }; @@ -827,7 +827,7 @@ static const struct tramp_frame mips_lin struct rt_sigframe { u32 rs_ass[4]; [argument save space for o32] - u32 rs_code[2] [signal trampoline] + u32 rs_code[2] [signal trampoline or fill] struct siginfo rs_info; struct ucontext rs_uc; }; @@ -871,7 +871,7 @@ mips_linux_o32_sigframe_init (const stru { struct gdbarch *gdbarch = get_frame_arch (this_frame); int ireg, reg_position; - CORE_ADDR sigcontext_base = func - SIGFRAME_CODE_OFFSET; + CORE_ADDR sigcontext_base = get_frame_sp (this_frame); const struct mips_regnum *regs = mips_regnum (gdbarch); CORE_ADDR regs_base; @@ -1038,7 +1038,7 @@ mips_linux_n32n64_sigframe_init (const s { struct gdbarch *gdbarch = get_frame_arch (this_frame); int ireg, reg_position; - CORE_ADDR sigcontext_base = func - SIGFRAME_CODE_OFFSET; + CORE_ADDR sigcontext_base = get_frame_sp (this_frame); const struct mips_regnum *regs = mips_regnum (gdbarch); if (self == &mips_linux_n32_rt_sigframe)