This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gdb 6.x 'next' does not work on mips-linux/mipsel-linux


On Mon, May 09, 2005 at 12:16:35PM +0900, Atsushi Nemoto wrote:
> >>>>> On Wed, 27 Apr 2005 10:17:14 -0400, Daniel Jacobowitz <drow@false.org> said:
> drow> 2005-04-27  Daniel Jacobowitz  <dan@codesourcery.com>
> 
> drow> 	* mips-tdep.c (mips_stub_frame_sniffer): Handle .MIPS.stubs
> drow> 	section like .plt.
> 
> This fix still not be checked in.  Is there any problem with this
> patch?

None; I forgot about it!  Sorry.

I have checked in the attached.

-- 
Daniel Jacobowitz
CodeSourcery, LLC

2005-05-08  Daniel Jacobowitz  <dan@codesourcery.com>

	* mips-tdep.c (mips_stub_frame_sniffer): Handle .MIPS.stubs
	section like .plt.

Index: mips-tdep.c
===================================================================
RCS file: /big/fsf/rsync/src-cvs/src/gdb/mips-tdep.c,v
retrieving revision 1.379
diff -u -p -r1.379 mips-tdep.c
--- mips-tdep.c	17 Mar 2005 18:07:46 -0000	1.379
+++ mips-tdep.c	27 Apr 2005 14:12:21 -0000
@@ -2091,11 +2091,21 @@ static const struct frame_unwind mips_st
 static const struct frame_unwind *
 mips_stub_frame_sniffer (struct frame_info *next_frame)
 {
+  struct obj_section *s;
   CORE_ADDR pc = frame_pc_unwind (next_frame);
+
   if (in_plt_section (pc, NULL))
     return &mips_stub_frame_unwind;
-  else
-    return NULL;
+
+  /* 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;
 }
 
 static CORE_ADDR


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]