Lines Matching defs:op1
183 mp_add(BNS *rop, BNS *op1, BNS *op2, BNI len1, BNI len2)
190 MP_SWAP(op1, op2, len1, len2);
193 value = (BNI)op1[0] + op2[0];
197 /* add op1 and op2 */
199 value = (BNI)op1[size] + op2[size] + carry;
203 if (rop != op1) {
205 value = (BNI)op1[size] + carry;
211 /* if rop == op1, than just adjust carry */
213 value = (BNI)op1[size] + carry;
226 mp_sub(BNS *rop, BNS *op1, BNS *op2, BNI len1, BNI len2)
233 if (op1 == op2) {
240 svalue = (long)op1[0] - op2[0];
244 /* subtracts op2 from op1 */
246 svalue = (long)(op1[size]) - op2[size] - carry;
250 if (rop != op1) {
252 svalue = op1[size] - carry;
258 /* if rop == op1, than just adjust carry */
260 svalue = (long)op1[size] - carry;
356 * rop cannot be either op1 or op2
359 mp_base_mul(BNS *rop, BNS *op1, BNS *op2, BNI len1, BNI len2)
367 if (op1[0]) {
368 value = (BNI)(op1[0]) * op2[0];
372 value = (BNI)(op1[0]) * op2[j] + carry;
381 if (op1[i]) {
383 value = (BNI)(op1[i]) * op2[0] + rop[i];
388 value = (BNI)(op1[i]) * op2[j] + rop[i + j] + carry;
417 mp_karatsuba_mul(BNS *rop, BNS *op1, BNS *op2, BNI len1, BNI len2)
450 tlen = mp_add(t, op1, op1 + x, la0, la1);
465 tlen = mp_mul(t, op1, op2, la0, lb0);
470 ulen = mp_mul(u, op1 + x, op2 + x, la1, lb1);
581 mp_toom_mul(BNS *rop, BNS *op1, BNS *op2, BNI len1, BNI len2)
593 l1 = len1 - (x << 1); /* length of remaining piece of op1 */
611 Ul[1] = mp_lshift(U[1], op1 + x, x, 1);
614 Ul[0] = mp_lshift(U[0], op1, x, 2);
618 Ul[0] = mp_add(U[0], U[0], op1 + x + x, Ul[0], l1);
623 Ul[2] = mp_lshift(U[2], op1 + x + x, l1, 2);
627 Ul[2] = mp_add(U[2], U[2], op1, Ul[2], x);
631 Ul[1] = mp_add(U[1], op1, op1 + x, x, x);
632 Ul[1] = mp_add(U[1], U[1], op1 + x + x, Ul[1], l1);
669 al = mp_mul(a, op1, op2, x, x);
673 el = mp_mul(e, op1 + x + x, op2 + x + x, l1, l2);
766 mp_mul(BNS *rop, BNS *op1, BNS *op2, BNI len1, BNI len2)
769 MP_SWAP(op1, op2, len1, len2);
772 return (mp_base_mul(rop, op1, op2, len1, len2));
774 return (mp_karatsuba_mul(rop, op1, op2, len1, len2));
776 return (mp_toom_mul(rop, op1, op2, len1, len2));
784 mp_mul(rop, op1, op2, len2, len2);
787 op1 += len2;
798 psize = mp_mul(ptr, op1, op2, len2, len2);
801 op1 += len2;
810 psize = mp_mul(ptr, op2, op1, len2, len1);