Lines Matching defs:mmm
87 mp_err s_mp_redc(mp_int *T, mp_mont_modulus *mmm)
92 i = MP_USED(T) + MP_USED(&mmm->N) + 2;
94 for (i = 0; i < MP_USED(&mmm->N); ++i ) {
95 mp_digit m_i = MP_DIGIT(T, i) * mmm->n0prime;
97 MP_CHECKOK( s_mp_mul_d_add_offset(&mmm->N, m_i, T, i) );
102 s_mp_div_2d(T, mmm->b);
104 if ((res = s_mp_cmp(T, &mmm->N)) >= 0) {
106 MP_CHECKOK( s_mp_sub(T, &mmm->N) );
108 if ((res = mp_cmp(T, &mmm->N)) >= 0) {
121 mp_mont_modulus *mmm)
138 ib = MP_USED(a) + MP_MAX(MP_USED(b), MP_USED(&mmm->N)) + 2;
146 m_i = MP_DIGIT(c, 0) * mmm->n0prime;
147 s_mp_mul_d_add_offset(&mmm->N, m_i, c, 0);
157 m_i = MP_DIGIT(c, ib) * mmm->n0prime;
158 s_mp_mul_d_add_offset(&mmm->N, m_i, c, ib);
160 if (usedb < MP_USED(&mmm->N)) {
161 for (usedb = MP_USED(&mmm->N); ib < usedb; ++ib ) {
162 m_i = MP_DIGIT(c, ib) * mmm->n0prime;
163 s_mp_mul_d_add_offset(&mmm->N, m_i, c, ib);
167 s_mp_div_2d(c, mmm->b);
168 if (s_mp_cmp(c, &mmm->N) >= 0) {
169 MP_CHECKOK( s_mp_sub(c, &mmm->N) );