Lines Matching +full:2 +full:k

45 	size_t k;  in cond_negate()  local
50 for (k = 0; k < len; k ++) { in cond_negate()
53 aw = a[k]; in cond_negate()
55 a[k] = aw & 0x7FFF; in cond_negate()
64 * if neg = 0, then 0 <= a < 2*m
73 size_t k; in finish_mod() local
80 for (k = 0; k < len; k ++) { in finish_mod()
83 aw = a[k]; in finish_mod()
84 mw = m[k]; in finish_mod()
97 for (k = 0; k < len; k ++) { in finish_mod()
100 aw = a[k]; in finish_mod()
101 mw = (m[k] ^ xm) & ym; in finish_mod()
103 a[k] = aw & 0x7FFF; in finish_mod()
110 * a <- (a*pa+b*pb)/(2^15)
111 * b <- (a*qa+b*qb)/(2^15)
118 * Factors pa, pb, qa and qb must be at most 2^15 in absolute value.
126 size_t k; in co_reduce() local
132 for (k = 0; k < len; k ++) { in co_reduce()
138 * |pa| <= 2^15 in co_reduce()
139 * |pb| <= 2^15 in co_reduce()
140 * 0 <= wa <= 2^15 - 1 in co_reduce()
141 * 0 <= wb <= 2^15 - 1 in co_reduce()
142 * |cca| <= 2^16 - 1 in co_reduce()
144 * |za| <= (2^15-1)*(2^16) + (2^16-1) = 2^31 - 1 in co_reduce()
146 * Thus, the new value of cca is such that |cca| <= 2^16 - 1. in co_reduce()
149 wa = a[k]; in co_reduce()
150 wb = b[k]; in co_reduce()
153 if (k > 0) { in co_reduce()
154 a[k - 1] = za & 0x7FFF; in co_reduce()
155 b[k - 1] = zb & 0x7FFF; in co_reduce()
173 * a <- (a*pa+b*pb)/(2^15) mod m
174 * b <- (a*qa+b*qb)/(2^15) mod m
176 * m0i is equal to -1/m[0] mod 2^15.
178 * Factors pa, pb, qa and qb must be at most 2^15 in absolute value.
187 size_t k; in co_reduce_mod() local
194 for (k = 0; k < len; k ++) { in co_reduce_mod()
202 wa = a[k]; in co_reduce_mod()
203 wb = b[k]; in co_reduce_mod()
205 + m[k] * (uint32_t)fa + (uint32_t)cca; in co_reduce_mod()
207 + m[k] * (uint32_t)fb + (uint32_t)ccb; in co_reduce_mod()
208 if (k > 0) { in co_reduce_mod()
209 a[k - 1] = za & 0x7FFF; in co_reduce_mod()
210 b[k - 1] = zb & 0x7FFF; in co_reduce_mod()
232 * -m <= a < 2*m in co_reduce_mod()
233 * -m <= b < 2*m in co_reduce_mod()
263 * - If a is even, then a <- a/2 and u <- u/2 mod m. in br_i15_moddiv()
264 * - Otherwise, if b is even, then b <- b/2 and v <- v/2 mod m. in br_i15_moddiv()
265 * - Otherwise, if a > b, then a <- (a-b)/2 and u <- (u-v)/2 mod m. in br_i15_moddiv()
266 * - Otherwise, b <- (b-a)/2 and v <- (v-u)/2 mod m. in br_i15_moddiv()
274 * if m has bit length k bits, then 2k-2 steps are sufficient. in br_i15_moddiv()
287 * a' = (a*pa + b*pb) / (2^15) in br_i15_moddiv()
288 * b' = (a*qa + b*qb) / (2^15) in br_i15_moddiv()
304 size_t len, k; in br_i15_moddiv() local
377 * such that a' and b' are both multiple of 2^15, but are in br_i15_moddiv()
388 * a <- (a-b)/2 if: a is odd, b is odd, a_hi > b_hi in br_i15_moddiv()
389 * b <- (b-a)/2 if: a is odd, b is odd, a_hi <= b_hi in br_i15_moddiv()
390 * a <- a/2 if: a is even in br_i15_moddiv()
391 * b <- b/2 if: a is odd, b is even in br_i15_moddiv()
393 * We multiply a_lo and b_lo by 2 at each in br_i15_moddiv()
394 * iteration, thus a division by 2 really is a in br_i15_moddiv()
395 * non-multiplication by 2. in br_i15_moddiv()
402 * cA = 1 if a is divided by 2, 0 otherwise in br_i15_moddiv()
407 * if a is not divided by 2, b is. in br_i15_moddiv()
447 qa -= qa * (r & 2); in br_i15_moddiv()
448 qb -= qb * (r & 2); in br_i15_moddiv()
460 for (k = 1; k < len; k ++) { in br_i15_moddiv()
461 r |= a[k] | b[k]; in br_i15_moddiv()
462 u[k] |= v[k]; in br_i15_moddiv()