summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-10-24 00:03:37 +0000
committerUlrich Drepper <drepper@redhat.com>2000-10-24 00:03:37 +0000
commitc41c89d35db92458777bec25cf2037e3e91a96bb (patch)
treeef6ba1af5902fc9a44d006bc10e2ce63a72fe942
parent298ea0ffa5ee721cc1d0714f38fb12f86593cb3c (diff)
downloadglibc-c41c89d35db92458777bec25cf2037e3e91a96bb.tar.gz
glibc-c41c89d35db92458777bec25cf2037e3e91a96bb.tar.xz
glibc-c41c89d35db92458777bec25cf2037e3e91a96bb.zip
Update.
2000-10-23  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-close.c (_dl_close): Add a few more __builtin_expect.
-rw-r--r--ChangeLog4
-rw-r--r--elf/dl-close.c8
2 files changed, 8 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 2646132fee..dc3b95728c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2000-10-23  Ulrich Drepper  <drepper@redhat.com>
+
+	* elf/dl-close.c (_dl_close): Add a few more __builtin_expect.
+
 2000-10-23  Jim Meyering  <meyering@ascend.com>
 
 	Allow this code to be used outside of glibc.
diff --git a/elf/dl-close.c b/elf/dl-close.c
index cb6b6fc381..4c861a1d06 100644
--- a/elf/dl-close.c
+++ b/elf/dl-close.c
@@ -55,7 +55,7 @@ _dl_close (void *_map)
     /* Nope.  Do nothing.  */
     return;
 
-  if (map->l_opencount == 0)
+  if (__builtin_expect (map->l_opencount, 1) == 0)
     _dl_signal_error (0, map->l_name, N_("shared object not open"));
 
   /* Acquire the lock.  */
@@ -150,7 +150,7 @@ _dl_close (void *_map)
 
 	  /* That was the last reference, and this was a dlopen-loaded
 	     object.  We can unmap it.  */
-	  if (imap->l_global)
+	  if (__builtin_expect (imap->l_global, 0))
 	    {
 	      /* This object is in the global scope list.  Remove it.  */
 	      int cnt = _dl_main_searchlist->r_nlist;
@@ -228,7 +228,7 @@ _dl_close (void *_map)
 
   /* Now we can perhaps also remove the modules for which we had
      dependencies because of symbol lookup.  */
-  if (rellist != NULL)
+  if (__builtin_expect (rellist != NULL, 0))
     {
       while (nrellist-- > 0)
 	_dl_close (rellist[nrellist]);
@@ -238,7 +238,7 @@ _dl_close (void *_map)
 
   free (list);
 
-  if (_dl_global_scope_alloc != 0
+  if (__builtin_expect (_dl_global_scope_alloc, 0) != 0
       && _dl_main_searchlist->r_nlist == _dl_initial_searchlist.r_nlist)
     {
       /* All object dynamically loaded by the program are unloaded.  Free