Lines Matching full:prod
190 /* r = prod mod m */
194 * Length of prod data buffer: modLen * 2
198 static BNU_CHUNK_T* gs_mont_red(BNU_CHUNK_T* pr, BNU_CHUNK_T* prod, gsModEngine* pME) in gs_mont_red() argument
208 for(i=0; i<mLen; i++, prod++) { in gs_mont_red()
212 /* u = prod[0]*k0 mod B */ in gs_mont_red()
213 BNU_CHUNK_T u = prod[0] * k0; in gs_mont_red()
215 /* (ex_mu, t) = prod[0] + m[0]*u (note t ==0) */ in gs_mont_red()
217 ADD_AB(ex_mu, t, prod[0], muL); in gs_mont_red()
223 ADD_AB(ex_mu, t, prod[j], ex_mu); /* carry in ex_mu,t */ in gs_mont_red()
224 ADD_AB(c, prod[j], t, muL); /* carry in c */ in gs_mont_red()
227 ADD_ABC(carry, prod[mLen], prod[mLen], ex_mu, carry); in gs_mont_red()
231 carry -= cpSub_BNU(pr, prod, pm, mLen); in gs_mont_red()
232 cpMaskMove_gs(pr, prod, mLen, cpIsNonZero(carry)); in gs_mont_red()
238 static BNU_CHUNK_T* gs_mont_red(BNU_CHUNK_T* pr, BNU_CHUNK_T* prod, gsModEngine* pME) in gs_mont_red() argument
244 cpMontRedAdc_BNU(pr, prod, pm, mLen, k0); in gs_mont_red()
250 static BNU_CHUNK_T* gs_mont_redX(BNU_CHUNK_T* pr, BNU_CHUNK_T* prod, gsModEngine* pME) in gs_mont_redX() argument
256 cpMontRedAdx_BNU(pr, prod, pm, mLen, k0); in gs_mont_redX()