diff options
author | kib <kib@FreeBSD.org> | 2015-01-30 15:32:35 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2015-01-30 15:32:35 +0000 |
commit | d12cc98346865e712bccebe1657a6a2ddbe4cadf (patch) | |
tree | 1daf7023c0fed206e7291af521d4895a72ecbb9f | |
parent | 638ef9136c1968d564e336b34f048d5cb4b6adb3 (diff) | |
download | FreeBSD-src-d12cc98346865e712bccebe1657a6a2ddbe4cadf.zip FreeBSD-src-d12cc98346865e712bccebe1657a6a2ddbe4cadf.tar.gz |
Use powerof2(). Remove single-use variable.
Submitted by: Conrad Meyer
Differential Revision: https://reviews.freebsd.org/D1724
MFC after: 1 week
-rw-r--r-- | libexec/rtld-elf/rtld.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/libexec/rtld-elf/rtld.c b/libexec/rtld-elf/rtld.c index 7b19f5a..ebb70a5 100644 --- a/libexec/rtld-elf/rtld.c +++ b/libexec/rtld-elf/rtld.c @@ -876,7 +876,6 @@ digest_dynamic1(Obj_Entry *obj, int early, const Elf_Dyn **dyn_rpath, 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 early, const Elf_Dyn **dyn_rpath, 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; |