Lines Matching defs:dest
182 static bool add_1(uint64_t dest[], uint64_t x[], unsigned len, uint64_t y) {
184 dest[i] = y + x[i];
185 if (dest[i] < y)
234 /// places the result in dest.
237 static bool add(uint64_t *dest, const uint64_t *x, const uint64_t *y,
241 uint64_t limit = std::min(x[i],y[i]); // must come first in case dest == x
242 dest[i] = x[i] + y[i] + carry;
243 carry = dest[i] < limit || (carry && dest[i] == limit);
264 static bool sub(uint64_t *dest, const uint64_t *x, const uint64_t *y,
270 dest[i] = x_tmp - y[i];
288 /// into dest.
291 static uint64_t mul_1(uint64_t dest[], uint64_t x[], unsigned len, uint64_t y) {
306 dest[i] = carry + lx * ly;
308 hasCarry = (dest[i] < carry) ? 1 : 0;
309 carry = hx * ly + (dest[i] >> 32) + (hasCarry ? (1ULL << 32) : 0);
315 dest[i] = (carry << 32) | (dest[i] & 0xffffffffULL);
323 /// the integer array dest. Note that dest's size must be >= xlen + ylen.
325 static void mul(uint64_t dest[], uint64_t x[], unsigned xlen, uint64_t y[],
327 dest[xlen] = mul_1(dest, x, xlen, y[0]);
346 dest[i+j] += resul;
348 (carry >> 32) + (dest[i+j] < resul ? 1 : 0) +
351 dest[i+xlen] = carry;
381 uint64_t *dest = getMemory(destWords);
384 mul(dest, pVal, lhsWords, RHS.pVal, rhsWords);
389 memcpy(pVal, dest, wordsToCopy * APINT_WORD_SIZE);
392 // delete dest array and return
393 delete[] dest;