From a37a13074c443c7104016187daad1e8171f0adc8 Mon Sep 17 00:00:00 2001 From: aiju Date: Tue, 20 Dec 2016 18:33:58 +0100 Subject: mpxor: sign should be 1/-1, not 0/-1 --- sys/src/libmp/port/mplogic.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/src/libmp/port/mplogic.c b/sys/src/libmp/port/mplogic.c index a3258e45b..378bfc7ee 100644 --- a/sys/src/libmp/port/mplogic.c +++ b/sys/src/libmp/port/mplogic.c @@ -104,7 +104,7 @@ mpxor(mpint *b1, mpint *b2, mpint *sum) b2 = t; } fl = (b1->sign & 10) ^ (b2->sign & 12); - sum->sign = (int)(fl << 28) >> 31; + sum->sign = (int)(fl << 28) >> 31 | 1; mpbits(sum, b1->top*Dbits); dp1 = b1->p; dp2 = b2->p; -- cgit v1.2.3