aboutsummaryrefslogtreecommitdiffstats
path: root/src/znot.c
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2016-05-04 17:04:27 +0200
committerMattias Andrée <maandree@kth.se>2016-05-04 17:04:27 +0200
commitb8f7e263d28edb721f18f64d3553947710ff9fce (patch)
tree811b1dca6759c1ee02ebe107cf961d546b0c61fe /src/znot.c
parentOptimise zand, zor, and zxor (diff)
downloadlibzahl-b8f7e263d28edb721f18f64d3553947710ff9fce.tar.gz
libzahl-b8f7e263d28edb721f18f64d3553947710ff9fce.tar.bz2
libzahl-b8f7e263d28edb721f18f64d3553947710ff9fce.tar.xz
Optimise znot
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'src/znot.c')
-rw-r--r--src/znot.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/znot.c b/src/znot.c
index bebc55b..e076cda 100644
--- a/src/znot.c
+++ b/src/znot.c
@@ -5,7 +5,7 @@
void
znot(z_t a, z_t b)
{
- size_t bits, i;
+ size_t bits;
if (unlikely(zzero(b))) {
SET_SIGNUM(a, 0);
@@ -16,8 +16,7 @@ znot(z_t a, z_t b)
a->used = b->used;
SET_SIGNUM(a, -zsignum(b));
- for (i = 0; i < a->used; i++)
- a->chars[i] = ~(b->chars[i]);
+ ZMEM_1OP(a->chars, b->chars, a->used, ~);
bits = BITS_IN_LAST_CHAR(bits);
if (bits)
a->chars[a->used - 1] &= ((zahl_char_t)1 << bits) - 1;