Lines Matching refs:ri

200     int al, nl, max, i, x, ri;
204 * mont->ri is the size of mont->N in bits (rounded up to the word size)
206 al = ri = mont->ri / BN_BITS2;
269 * mont->ri will be a multiple of the word size and below code is kind of
270 * BN_rshift(ret,r,mont->ri) equivalent
272 if (r->top <= ri) {
276 al = r->top - ri;
278 if (bn_wexpand(ret, ri) == NULL)
280 x = 0 - (((al - ri) >> (sizeof(al) * 8 - 1)) & 1);
281 ret->top = x = (ri & ~x) | (al & x); /* min(ri,al) */
285 ap = &(r->d[ri]);
290 v = bn_sub_words(rp, ap, np, ri);
292 * this ----------------^^ works even in al<ri case thanks to zealous
296 /* if (al==ri && !v) || al>ri) nrp=rp; else nrp=ap; */
302 m1 = 0 - (size_t)(((al - ri) >> (sizeof(al) * 8 - 1)) & 1); /* al<ri */
303 m2 = 0 - (size_t)(((ri - al) >> (sizeof(al) * 8 - 1)) & 1); /* al>ri */
304 m1 |= m2; /* (al!=ri) */
305 m1 |= (0 - (size_t)v); /* (al!=ri || v) */
306 m1 &= ~m2; /* (al!=ri || v) && !al>ri */
311 * 'i<ri' is chosen to eliminate dependency on input data, even though it
312 * results in redundant copy in al<ri case.
314 for (i = 0, ri -= 4; i < ri; i += 4) {
330 for (ri += 4; i < ri; i++)
362 int al, nl, max, i, x, ri;
374 * mont->ri is the size of mont->N in bits (rounded up to the word size)
376 al = ri = mont->ri / BN_BITS2;
439 * mont->ri will be a multiple of the word size and below code is kind of
440 * BN_rshift(ret,r,mont->ri) equivalent
442 if (r->top <= ri) {
447 al = r->top - ri;
451 if (bn_wexpand(ret, ri) == NULL)
453 x = 0 - (((al - ri) >> (sizeof(al) * 8 - 1)) & 1);
454 ret->top = x = (ri & ~x) | (al & x); /* min(ri,al) */
458 ap = &(r->d[ri]);
463 v = bn_sub_words(rp, ap, np, ri);
465 * this ----------------^^ works even in al<ri case thanks to zealous
469 /* if (al==ri && !v) || al>ri) nrp=rp; else nrp=ap; */
475 m1 = 0 - (size_t)(((al - ri) >> (sizeof(al) * 8 - 1)) & 1); /* al<ri */
476 m2 = 0 - (size_t)(((ri - al) >> (sizeof(al) * 8 - 1)) & 1); /* al>ri */
477 m1 |= m2; /* (al!=ri) */
478 m1 |= (0 - (size_t)v); /* (al!=ri || v) */
479 m1 &= ~m2; /* (al!=ri || v) && !al>ri */
484 * 'i<ri' is chosen to eliminate dependency on input data, even though it
485 * results in redundant copy in al<ri case.
487 for (i = 0, ri -= 4; i < ri; i += 4) {
503 for (ri += 4; i < ri; i++)
514 ap = &(r->d[ri]);
543 BN_mask_bits(t1, mont->ri);
547 BN_mask_bits(t2, mont->ri);
553 if (!BN_rshift(ret, t2, mont->ri))
585 ctx->ri = 0;
627 mont->ri = (BN_num_bits(mod) + (BN_BITS2 - 1)) / BN_BITS2 * BN_BITS2;
712 mont->ri = BN_num_bits(&mont->N);
714 if (!BN_set_bit(R, mont->ri))
715 goto err; /* R = 2^ri */
719 if (!BN_lshift(Ri, Ri, mont->ri))
733 if (!BN_set_bit(&(mont->RR), mont->ri * 2))
755 to->ri = from->ri;