Home | History | Annotate | Download | only in mtest

Lines Matching full:mp_digit

68   can be contained in an mp_digit.  Thus, an mp_word is used.  These
133 void s_mp_setz(mp_digit *dp, mp_size count); /* zero digits */
134 void s_mp_copy(mp_digit *sp, mp_digit *dp, mp_size count); /* copy */
146 #define s_mp_setz(dp, count) memset(dp, 0, (count) * sizeof(mp_digit))
153 #define s_mp_copy(sp, dp, count) memcpy(dp, sp, (count) * sizeof(mp_digit))
169 void s_mp_div_2d(mp_int *mp, mp_digit d); /* divide by 2^d in place */
170 void s_mp_mod_2d(mp_int *mp, mp_digit d); /* modulo 2^d in place */
171 mp_err s_mp_mul_2d(mp_int *mp, mp_digit d); /* multiply by 2^d in place*/
174 mp_digit s_mp_norm(mp_int *a, mp_int *b); /* normalize for division */
175 mp_err s_mp_add_d(mp_int *mp, mp_digit d); /* unsigned digit addition */
176 mp_err s_mp_sub_d(mp_int *mp, mp_digit d); /* unsigned digit subtract */
177 mp_err s_mp_mul_d(mp_int *mp, mp_digit d); /* unsigned digit multiply */
178 mp_err s_mp_div_d(mp_int *mp, mp_digit d, mp_digit *r);
186 void s_mp_kmul(mp_digit *a, mp_digit *b, mp_digit *out, mp_size len);
195 mp_err s_mp_2expt(mp_int *a, mp_digit k); /* a = 2^k */
197 int s_mp_cmp_d(mp_int *a, mp_digit d); /* magnitude digit compare */
199 int s_mp_ispow2d(mp_digit d); /* is d a power of 2? */
284 if((DIGITS(mp) = s_mp_alloc(prec, sizeof(mp_digit))) == NULL)
314 if((DIGITS(mp) = s_mp_alloc(USED(from), sizeof(mp_digit))) == NULL)
346 mp_digit *tmp;
360 if((tmp = s_mp_alloc(USED(from), sizeof(mp_digit))) == NULL)
478 void mp_set(mp_int *mp, mp_digit d)
510 (mp_digit)((v >> (ix * CHAR_BIT)) & UCHAR_MAX));
537 mp_err mp_add_d(mp_int *a, mp_digit d, mp_int *b)
571 mp_err mp_sub_d(mp_int *a, mp_digit d, mp_int *b)
613 mp_err mp_mul_d(mp_int *a, mp_digit d, mp_int *b)
662 mp_err mp_div_d(mp_int *a, mp_digit d, mp_int *q, mp_digit *r)
665 mp_digit rem;
675 mp_digit mask;
758 mp_err mp_expt_d(mp_int *a, mp_digit d, mp_int *c)
1089 mp_err mp_mul_2d(mp_int *a, mp_digit d, mp_int *c)
1227 mp_err mp_div_2d(mp_int *a, mp_digit d, mp_int *q, mp_int *r)
1266 mp_digit d;
1335 mp_err mp_2expt(mp_int *a, mp_digit k)
1413 mp_err mp_mod_d(mp_int *a, mp_digit d, mp_digit *c)
1416 mp_digit rem;
1638 mp_digit d, *db = DIGITS(b);
1721 mp_err mp_exptmod_d(mp_int *a, mp_digit d, mp_int *m, mp_int *c)
1797 int mp_cmp_d(mp_int *a, mp_digit d)
2346 mp_digit topdig;
2355 count = (USED(mp) - 1) * sizeof(mp_digit);
2373 mp_digit *dp, *end, d;
2393 for(ix = 0; ix < sizeof(mp_digit); ++ix) {
2430 mp_digit d;
2558 mp_digit rem, rdx = (mp_digit)radix;
2657 mp_digit *tmp;
2662 if((tmp = s_mp_alloc(min, sizeof(mp_digit))) == NULL)
2707 void s_mp_setz(mp_digit *dp, mp_size count)
2715 memset(dp, 0, count * sizeof(mp_digit));
2727 void s_mp_copy(mp_digit *sp, mp_digit *dp, mp_size count)
2735 memcpy(dp, sp, count * sizeof(mp_digit));
2776 mp_digit *zp = DIGITS(mp) + du - 1;
2819 mp_digit *dp;
2856 mp_digit *dp;
2902 mp_digit kin = 0, kout, *dp = DIGITS(mp);
2938 void s_mp_mod_2d(mp_int *mp, mp_digit d)
2942 mp_digit dmask, *dp = DIGITS(mp);
2968 mp_err s_mp_mul_2d(mp_int *mp, mp_digit d)
2971 mp_digit save, next, mask, *dp;
3021 void s_mp_div_2d(mp_int *mp, mp_digit d)
3024 mp_digit save, next, mask, *dp = DIGITS(mp);
3060 mp_digit s_mp_norm(mp_int *a, mp_int *b)
3062 mp_digit t, d = 0;
3088 mp_err s_mp_add_d(mp_int *mp, mp_digit d) /* unsigned digit addition */
3092 mp_digit *dp = DIGITS(mp);
3123 mp_err s_mp_sub_d(mp_int *mp, mp_digit d) /* unsigned digit subtract */
3127 mp_digit *dp = DIGITS(mp);
3158 mp_err s_mp_mul_d(mp_int *a, mp_digit d)
3163 mp_digit *dp = DIGITS(a);
3212 mp_err s_mp_div_d(mp_int *mp, mp_digit d, mp_digit *r)
3217 mp_digit *dp = DIGITS(mp), *qp;
3268 mp_digit *pa, *pb;
3325 mp_digit *pa, *pb;
3382 s_mp_mod_2d(x, (mp_digit)(DIGIT_BIT * (um + 1)));
3387 s_mp_mod_2d(&q, (mp_digit)(DIGIT_BIT * (um + 1)));
3429 mp_digit *pa, *pb, *pt, *pbt;
3474 void s_mp_kmul(mp_digit *a, mp_digit *b, mp_digit *out, mp_size len)
3478 mp_digit *pa, *pt;
3517 mp_digit *pa1, *pa2, *pt, *pbt;
3582 This is why k must be an mp_word, instead of an mp_digit */
3631 mp_digit d;
3640 s_mp_div_2d(a, (mp_digit)ix);
3641 s_mp_mod_2d(b, (mp_digit)ix);
3749 mp_err s_mp_2expt(mp_int *a, mp_digit k)
3789 mp_digit *ap = DIGITS(a) + ix, *bp = DIGITS(b) + ix;
3810 int s_mp_cmp_d(mp_int *a, mp_digit d)
3813 mp_digit *ap = DIGITS(a);
3837 mp_digit d, *dp;
3870 int s_mp_ispow2d(mp_digit d)