* mips-tdep.c (mips_stub_frame_sniffer): Handle .MIPS.stubs
section like .plt.
This commit is contained in:
parent
0560d0f70c
commit
979b38e00b
2 changed files with 17 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2005-05-08 Daniel Jacobowitz <dan@codesourcery.com>
|
||||||
|
|
||||||
|
* mips-tdep.c (mips_stub_frame_sniffer): Handle .MIPS.stubs
|
||||||
|
section like .plt.
|
||||||
|
|
||||||
2005-05-08 Mark Kettenis <kettenis@gnu.org>
|
2005-05-08 Mark Kettenis <kettenis@gnu.org>
|
||||||
|
|
||||||
* i386-linux-tdep.c (linux_sigtramp_code, linux_rt_sigtramp_code):
|
* i386-linux-tdep.c (linux_sigtramp_code, linux_rt_sigtramp_code):
|
||||||
|
|
|
@ -2091,10 +2091,20 @@ static const struct frame_unwind mips_stub_frame_unwind =
|
||||||
static const struct frame_unwind *
|
static const struct frame_unwind *
|
||||||
mips_stub_frame_sniffer (struct frame_info *next_frame)
|
mips_stub_frame_sniffer (struct frame_info *next_frame)
|
||||||
{
|
{
|
||||||
|
struct obj_section *s;
|
||||||
CORE_ADDR pc = frame_pc_unwind (next_frame);
|
CORE_ADDR pc = frame_pc_unwind (next_frame);
|
||||||
|
|
||||||
if (in_plt_section (pc, NULL))
|
if (in_plt_section (pc, NULL))
|
||||||
return &mips_stub_frame_unwind;
|
return &mips_stub_frame_unwind;
|
||||||
else
|
|
||||||
|
/* Binutils for MIPS puts lazy resolution stubs into .MIPS.stubs. */
|
||||||
|
s = find_pc_section (pc);
|
||||||
|
|
||||||
|
if (s != NULL
|
||||||
|
&& strcmp (bfd_get_section_name (s->objfile->obfd, s->the_bfd_section),
|
||||||
|
".MIPS.stubs") == 0)
|
||||||
|
return &mips_stub_frame_unwind;
|
||||||
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue