svn commit: r277936 - head/libexec/rtld-elf

Konstantin Belousov kib at FreeBSD.org
Fri Jan 30 15:32:36 UTC 2015


Author: kib
Date: Fri Jan 30 15:32:35 2015
New Revision: 277936
URL: https://svnweb.freebsd.org/changeset/base/277936

Log:
  Use powerof2().  Remove single-use variable.
  
  Submitted by:	Conrad Meyer
  Differential Revision:	https://reviews.freebsd.org/D1724
  MFC after:	1 week

Modified:
  head/libexec/rtld-elf/rtld.c

Modified: head/libexec/rtld-elf/rtld.c
==============================================================================
--- head/libexec/rtld-elf/rtld.c	Fri Jan 30 15:02:16 2015	(r277935)
+++ head/libexec/rtld-elf/rtld.c	Fri Jan 30 15:32:35 2015	(r277936)
@@ -876,7 +876,6 @@ digest_dynamic1(Obj_Entry *obj, int earl
     const Elf32_Word *hashval;
     Elf32_Word bkt, nmaskwords;
     int bloom_size32;
-    bool nmw_power2;
     int plttype = DT_REL;
 
     *dyn_rpath = NULL;
@@ -986,16 +985,15 @@ digest_dynamic1(Obj_Entry *obj, int earl
 		obj->symndx_gnu = hashtab[1];
 		nmaskwords = hashtab[2];
 		bloom_size32 = (__ELF_WORD_SIZE / 32) * nmaskwords;
-		/* Number of bitmask words is required to be power of 2 */
-		nmw_power2 = ((nmaskwords & (nmaskwords - 1)) == 0);
 		obj->maskwords_bm_gnu = nmaskwords - 1;
 		obj->shift2_gnu = hashtab[3];
 		obj->bloom_gnu = (Elf_Addr *) (hashtab + 4);
 		obj->buckets_gnu = hashtab + 4 + bloom_size32;
 		obj->chain_zero_gnu = obj->buckets_gnu + obj->nbuckets_gnu -
 		  obj->symndx_gnu;
-		obj->valid_hash_gnu = nmw_power2 && obj->nbuckets_gnu > 0 &&
-		  obj->buckets_gnu != NULL;
+		/* Number of bitmask words is required to be power of 2 */
+		obj->valid_hash_gnu = powerof2(nmaskwords) &&
+		    obj->nbuckets_gnu > 0 && obj->buckets_gnu != NULL;
 	    }
 	    break;
 


More information about the svn-src-all mailing list