From 83d95da004c8cc2387a4070b781a71a0c6433faa Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Sat, 30 Apr 2016 05:47:05 +0200 Subject: Some optimisations MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- zahl-inlines.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'zahl-inlines.h') diff --git a/zahl-inlines.h b/zahl-inlines.h index 09e09a6..b69a8d2 100644 --- a/zahl-inlines.h +++ b/zahl-inlines.h @@ -18,6 +18,20 @@ ZAHL_INLINE void zabs(z_t a, z_t b) { ZAHL_SET(a, b); a->sign = !!a->sign; } #endif +ZAHL_INLINE void +zset(z_t a, z_t b) +{ + if (ZAHL_UNLIKELY(b->sign == 0)) { + a->sign = 0; + } else { + a->sign = b->sign; + a->used = b->used; + ZAHL_ENSURE_SIZE(a, b->used); + libzahl_memcpy(a->chars, b->chars, b->used); + } +} + + ZAHL_INLINE void zswap(z_t a, z_t b) { -- cgit v1.2.3-70-g09d2