* glibc-tdep.c (glibc_skip_solib_resolver): Look for '_dl_fixup',
authorJim Blandy <jimb@codesourcery.com>
Thu, 4 Jan 2007 15:24:12 +0000 (15:24 +0000)
committerJim Blandy <jimb@codesourcery.com>
Thu, 4 Jan 2007 15:24:12 +0000 (15:24 +0000)
then plain 'fixup'.

gdb/ChangeLog
gdb/glibc-tdep.c

index b5dd5fc4ac7eb4962af921a807480f75394b90f8..1cbf335408f042950ec317b52b5dd1cf19ee9fa1 100644 (file)
@@ -1,3 +1,8 @@
+2007-01-04  Jim Blandy  <jimb@codesourcery.com>
+
+       * glibc-tdep.c (glibc_skip_solib_resolver): Look for '_dl_fixup',
+       then plain 'fixup'.
+
 2007-01-04  Joel Brobecker  <brobecker@adacore.com>
 
        * hpread.c (hpread_start_psymtab): Remove unnecessary extern.
index a37be98b99f69835998d2ee27e5b0fa3fe0437bf..5c3a97a5adbc61f70d983589fef4ecc09243723c 100644 (file)
@@ -90,8 +90,13 @@ glibc_skip_solib_resolver (struct gdbarch *gdbarch, CORE_ADDR pc)
 
   if (resolver)
     {
+      /* The dynamic linker began using this name in early 2005.  */
       struct minimal_symbol *fixup
-       = lookup_minimal_symbol ("fixup", NULL, objfile);
+       = lookup_minimal_symbol ("_dl_fixup", NULL, objfile);
+      
+      /* This is the name used in older versions.  */
+      if (! fixup)
+        fixup = lookup_minimal_symbol ("fixup", NULL, objfile);
 
       if (fixup && SYMBOL_VALUE_ADDRESS (fixup) == pc)
        return frame_pc_unwind (get_current_frame ());