* solib.c (solib_add_common_symbols): Add comment about performance.
authorJim Kingdon <jkingdon@engr.sgi.com>
Sun, 20 Jun 1993 05:28:07 +0000 (05:28 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Sun, 20 Jun 1993 05:28:07 +0000 (05:28 +0000)
gdb/ChangeLog
gdb/solib.c

index 3444d3a6a248d0906ee077e8deefb97fe34da3c6..a02196e50366ab315c4885163fb061a92e06f202 100644 (file)
@@ -1,3 +1,7 @@
+Sun Jun 20 00:24:41 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
+
+       * solib.c (solib_add_common_symbols): Add comment about performance.
+
 Fri Jun 18 12:37:36 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
 
        * config/mips/{{x,n}m-riscos.h,riscos.mh}: New files.
index 124acc669fa5746ffaf06add6084dac83d4f98a4..7a2eaec3e7942a21ef1900ebca5402550cbd31fd 100644 (file)
@@ -259,6 +259,20 @@ solib_map_sections (so)
 
 #ifndef SVR4_SHARED_LIBS
 
+/* This routine can be a real performance hog.  According to some gprof data
+   which mtranle@paris.IntelliCorp.COM (Minh Tran-Le) sent, almost all the
+   time spend in solib_add (up to 20 minutes with 35 shared libraries) is
+   spent here, with 5/6 in lookup_minimal_symbol and 1/6 in read_memory.
+
+   Possible solutions:
+
+   * Hash the minimal symbols.
+
+   * Just record the name of the minimal symbol and lazily patch the
+   addresses.
+
+   * Tell everyone to switch to Solaris2.  */
+
 static void
 solib_add_common_symbols (rtc_symp, objfile)
     struct rtc_symb *rtc_symp;