From: mdw Date: Sun, 9 Jul 2000 21:31:43 +0000 (+0000) Subject: Use `mpmul'. X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/commitdiff_plain/3edff10234bec471cf1fe4f6e2209f56acb713fe Use `mpmul'. --- diff --git a/primorial.c b/primorial.c index 49cc054..6022c9a 100644 --- a/primorial.c +++ b/primorial.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: primorial.c,v 1.1 1999/12/22 15:51:02 mdw Exp $ + * $Id: primorial.c,v 1.2 2000/07/09 21:31:43 mdw Exp $ * * Computes the product of the small primes * @@ -30,6 +30,9 @@ /*----- Revision history --------------------------------------------------* * * $Log: primorial.c,v $ + * Revision 1.2 2000/07/09 21:31:43 mdw + * Use `mpmul'. + * * Revision 1.1 1999/12/22 15:51:02 mdw * Calculate product of small primes for DSA prime search. * @@ -38,6 +41,7 @@ /*----- Header files ------------------------------------------------------*/ #include "mp.h" +#include "mpmul.h" #include "primetab.h" /*----- Global variables --------------------------------------------------*/ @@ -58,21 +62,20 @@ mp *primorial = 0; void primorial_setup(void) { - mp *p; - mp q; - mpw qw; + mp *p = MP_NEW; + mpmul mm = MPMUL_INIT; int i; if (primorial) return; - mp_build(&q, &qw, &qw + 1); - p = MP_ONE; + for (i = 0; i < NPRIME; i++) { - qw = primetab[i]; - p = mp_mul(p, p, &q); + p = mp_fromuint(p, primetab[i]); + mpmul_add(&mm, p); } + mp_drop(p); + primorial = mpmul_done(&mm); mp_minimize(p); - primorial = p; } /*----- That's all, folks -------------------------------------------------*/