20 if (dsta != numa && dsta != numb) {
21 for (off = 0; off < n; off +=
PART_SIZE) {
23 acyo =
lmmp_add_nc_(dsta + off, numa + off, numb + off, this_n, acyo);
24 scyo =
lmmp_sub_nc_(dstb + off, numa + off, numb + off, this_n, scyo);
26 }
else if (dstb != numa && dstb != numb) {
27 for (off = 0; off < n; off +=
PART_SIZE) {
29 scyo =
lmmp_sub_nc_(dstb + off, numa + off, numb + off, this_n, scyo);
30 acyo =
lmmp_add_nc_(dsta + off, numa + off, numb + off, this_n, acyo);
34 for (off = 0; off < n; off +=
PART_SIZE) {
37 scyo =
lmmp_sub_nc_(dstb + off, numa + off, numb + off, this_n, scyo);
41 return 2 * acyo + scyo;
46 for (i = 0, acyo = 0, scyo = 0; i < n; i++) {
61 return 2 * acyo + scyo;
mp_limb_t lmmp_add_n_sub_n_(mp_ptr dsta, mp_ptr dstb, mp_srcptr numa, mp_srcptr numb, mp_size_t n)
同时执行n位加法和减法 ([dsta,n],[dstb,n]) = ([numa,n]+[numb,n],[numa,n]-[numb,n])
mp_limb_t lmmp_add_nc_(mp_ptr dst, mp_srcptr numa, mp_srcptr numb, mp_size_t n, mp_limb_t c)
带进位的n位加法 [dst,n] = [numa,n] + [numb,n] + c
mp_limb_t lmmp_sub_nc_(mp_ptr dst, mp_srcptr numa, mp_srcptr numb, mp_size_t n, mp_limb_t c)
带借位的n位减法 [dst,n] = [numa,n] - [numb,n] - c