diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2018-10-07 04:23:23 +0200 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2018-10-07 04:23:23 +0200 |
commit | 20f48d898738c2e5deaa1105292ffd1641b243d5 (patch) | |
tree | 3bdf54926d114a265aa6f52cf1a01c7703328ed3 /src/crypto | |
parent | crypto: disable broken implementations in selftests (diff) | |
download | wireguard-monolithic-historical-20f48d898738c2e5deaa1105292ffd1641b243d5.tar.xz wireguard-monolithic-historical-20f48d898738c2e5deaa1105292ffd1641b243d5.zip |
crypto: use BIT(i) & bitmap instead of (bitmap >> i) & 1
Pros: clearer if you're not familiar with the shift idiom, uses kernel
macro.
Cons: doesn't work any more if the lvalue ever ceases to be a bool.
Neutral: generates the same machine code.
Suggested-by: Sultan Alsawaf <sultanxda@gmail.com>
Diffstat (limited to 'src/crypto')
-rw-r--r-- | src/crypto/zinc/selftest/run.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/crypto/zinc/selftest/run.h b/src/crypto/zinc/selftest/run.h index 99079a0..74f607a 100644 --- a/src/crypto/zinc/selftest/run.h +++ b/src/crypto/zinc/selftest/run.h @@ -27,7 +27,7 @@ static inline bool selftest_run(const char *name, bool (*selftest)(void), do { for (i = 0; i < nobs_len; ++i) - *nobs[i] = (subset >> i) & 1; + *nobs[i] = BIT(i) & subset; if (selftest()) largest_subset = max(subset, largest_subset); else @@ -37,7 +37,7 @@ static inline bool selftest_run(const char *name, bool (*selftest)(void), } while (subset); for (i = 0; i < nobs_len; ++i) - *nobs[i] = (largest_subset >> i) & 1; + *nobs[i] = BIT(i) & largest_subset; if (largest_subset == set) pr_info("%s self-tests: pass\n", name); |