aboutsummaryrefslogtreecommitdiffstats
path: root/src/zpowu.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/zpowu.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/zpowu.c b/src/zpowu.c
index 35247c3..5a7676d 100644
--- a/src/zpowu.c
+++ b/src/zpowu.c
@@ -21,10 +21,11 @@ zpowu(z_t a, z_t b, unsigned long long int c)
neg = znegative(b) && (c & 1);
zabs(tb, b);
- zsetu(a, 1);
if (c & 1)
- zmul_ll(a, a, tb);
+ zset(a, tb);
+ else
+ zsetu(a, 1);
while (c >>= 1) {
zsqr_ll(tb, tb);
if (c & 1)