From: Mark Wooding Date: Tue, 20 Feb 2007 00:10:47 +0000 (+0000) Subject: mpbarrett: Mark newly-split d as UNDEF. X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/commitdiff_plain/4910e99cff730c78c7827ae1f85d33184975c5dd mpbarrett: Mark newly-split d as UNDEF. After being split off from m (or whatever), we write q - mb->m into d's storage; obviously we don't need whatever was there before, so it's safe to set UNDEF. We'll clear the flag shortly afterwards when d inherits its sign and burn flags. --- diff --git a/mpbarrett.c b/mpbarrett.c index 651932a..13210b3 100644 --- a/mpbarrett.c +++ b/mpbarrett.c @@ -137,7 +137,7 @@ mp *mpbarrett_reduce(mpbarrett *mb, mp *d, mp *m) mvl = m->v + k + 1; r = mp_new(k + 1, (q->f | mb->m->f) & MP_BURN); mpx_umul(r->v, r->vl, q->v + k + 1, q->vl, mb->m->v, mb->m->vl); - MP_DEST(d, k + 1, r->f); + MP_DEST(d, k + 1, r->f | MP_UNDEF); mpx_usub(d->v, d->vl, m->v, mvl, r->v, r->vl); d->f = (m->f | r->f) & (MP_BURN | MP_NEG); MP_DROP(r);