Lines Matching defs:v0
57 * v = 2^n v1 * v0
61 * uv = 2^2n u1 v1 + 2^n u1 v0 + 2^n v1 u0 + u0 v0
62 * = 2^2n u1 v1 + 2^n (u1 v0 + v1 u0) + u0 v0
65 * and add 2^n u0 v0 to the last term and subtract it from the middle.
69 * (2^n) (u1 v0 - u1 v1 + u0 v1 - u0 v0) +
70 * (2^n + 1) (u0 v0)
75 * (2^n) (u1 - u0) (v0 - v1) + [(u1-u0)... = mid]
76 * (2^n + 1) (u0 v0) [u0v0 = low]
78 * The terms (u1 v1), (u1 - u0) (v0 - v1), and (u0 v0) can all be done
80 * of (u1 - u0) or (v0 - v1) may be negative.)
116 #define v0 v.ul[L]
120 * u1, u0, v1, and v0 will be directly accessible through the
136 * are small. Here the product is just u0*v0.
138 prod.q = __lmulq(u0, v0);
146 low.q = __lmulq(u0, v0);
152 if (v0 >= v1)
153 vdiff = v0 - v1;
155 vdiff = v1 - v0, negmid ^= 1;
171 #undef v0
194 u_int u1, u0, v1, v0, udiff, vdiff, high, mid, low;
202 v0 = LHALF(v);
204 low = u0 * v0;
214 if (v0 >= v1)
215 vdiff = v0 - v1;
217 vdiff = v1 - v0, neg ^= 1;