X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/blobdiff_plain/b817bfc642225b8c3c0b6a7e42d1fb949b61a606..3485fc41bcb8b082815b7d5e48a080c1fcfbab38:/mpx.c diff --git a/mpx.c b/mpx.c index e122760..01264b1 100644 --- a/mpx.c +++ b/mpx.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: mpx.c,v 1.20 2004/04/08 01:36:15 mdw Exp $ + * $Id$ * * Low-level multiprecision arithmetic * @@ -462,11 +462,11 @@ void mpx_lsl(mpw *dv, mpw *dvl, const mpw *av, const mpw *avl, size_t n) while (avl > av) { mpw t = *--avl; - *--dvl = (t >> nr) | w; + *--dvl = MPW((t >> nr) | w); w = t << nb; } - *--dvl = w; + *--dvl = MPW(w); MPX_ZERO(dv, dvl); } @@ -560,11 +560,11 @@ void mpx_lslc(mpw *dv, mpw *dvl, const mpw *av, const mpw *avl, size_t n) while (avl > av) { mpw t = *--avl; - *--dvl = (t >> nr) | w; + *--dvl = MPW((t >> nr) | w); w = t << nb; } - *--dvl = (MPW_MAX >> nr) | w; + *--dvl = MPW((MPW_MAX >> nr) | w); MPX_ONE(dv, dvl); } @@ -919,7 +919,7 @@ void mpx_usubnlsl(mpw *dv, mpw *dvl, mpw a, unsigned o) a <<= o; if (dv < dvl) { - mpd x = (mpd)*dv - (mpd)a; + mpd x = (mpd)*dv - MPW(a); *dv++ = MPW(x); if (x >> MPW_BITS) b++; @@ -995,9 +995,7 @@ void mpx_umul(mpw *dv, mpw *dvl, const mpw *av, const mpw *avl, */ void mpx_umuln(mpw *dv, mpw *dvl, const mpw *av, const mpw *avl, mpw m) -{ - MPX_UMULN(dv, dvl, av, avl, m); -} + { MPX_UMULN(dv, dvl, av, avl, m); } /* --- @mpx_umlan@ --- * * @@ -1012,9 +1010,7 @@ void mpx_umuln(mpw *dv, mpw *dvl, const mpw *av, const mpw *avl, mpw m) */ void mpx_umlan(mpw *dv, mpw *dvl, const mpw *av, const mpw *avl, mpw m) -{ - MPX_UMLAN(dv, dvl, av, avl, m); -} + { MPX_UMLAN(dv, dvl, av, avl, m); } /* --- @mpx_usqr@ --- * * @@ -1120,7 +1116,7 @@ void mpx_udiv(mpw *qv, mpw *qvl, mpw *rv, mpw *rvl, unsigned b; d = dvl[-1]; - for (b = MPW_BITS / 2; b; b >>= 1) { + for (b = MPW_P2; b; b >>= 1) { if (d <= (MPW_MAX >> b)) { d <<= b; norm += b; @@ -1421,7 +1417,7 @@ static int loadstore(dstr *v) if (!ok) dumpbits("input data", v->buf, v->len); - free(m); + xfree(m); dstr_destroy(&d); return (ok); } @@ -1459,7 +1455,7 @@ static int twocl(dstr *v) dumpbits("neg", v[1].buf, v[1].len); } - free(m); + xfree(m); dstr_destroy(&d); return (ok); @@ -1498,7 +1494,7 @@ static int twocb(dstr *v) dumpbits("neg", v[1].buf, v[1].len); } - free(m); + xfree(m); dstr_destroy(&d); return (ok); @@ -1525,7 +1521,7 @@ static int lsl(dstr *v) ok = 0; } - free(a); free(c); free(d); + xfree(a); xfree(c); xfree(d); return (ok); } @@ -1550,7 +1546,7 @@ static int lslc(dstr *v) ok = 0; } - free(a); free(c); free(d); + xfree(a); xfree(c); xfree(d); return (ok); } @@ -1575,7 +1571,7 @@ static int lsr(dstr *v) ok = 0; } - free(a); free(c); free(d); + xfree(a); xfree(c); xfree(d); return (ok); } @@ -1602,7 +1598,7 @@ static int uadd(dstr *v) ok = 0; } - free(a); free(b); free(c); free(d); + xfree(a); xfree(b); xfree(c); xfree(d); return (ok); } @@ -1629,7 +1625,7 @@ static int usub(dstr *v) ok = 0; } - free(a); free(b); free(c); free(d); + xfree(a); xfree(b); xfree(c); xfree(d); return (ok); } @@ -1656,7 +1652,7 @@ static int umul(dstr *v) ok = 0; } - free(a); free(b); free(c); free(d); + xfree(a); xfree(b); xfree(c); xfree(d); return (ok); } @@ -1680,7 +1676,7 @@ static int usqr(dstr *v) ok = 0; } - free(a); free(c); free(d); + xfree(a); xfree(c); xfree(d); return (ok); } @@ -1713,7 +1709,7 @@ static int udiv(dstr *v) ok = 0; } - free(a); free(b); free(r); free(q); free(s); free(qq); + xfree(a); xfree(b); xfree(r); xfree(q); xfree(s); xfree(qq); return (ok); }