Lines Matching refs:a0
1063 uint64_t q0, q1, a0, a1, b0, b1; in frac128_div() local
1067 a0 = a->frac_hi, a1 = a->frac_lo; in frac128_div()
1070 ret = lt128(a0, a1, b0, b1); in frac128_div()
1072 a1 = shr_double(a0, a1, 1); in frac128_div()
1073 a0 = a0 >> 1; in frac128_div()
1077 q0 = estimateDiv128To64(a0, a1, b0); in frac128_div()
1085 sub192(a0, a1, 0, t0, t1, t2, &r0, &r1, &r2); in frac128_div()
1186 uint64_t a0 = a->frac_hi, a1 = a->frac_hm; in frac256_normalize() local
1190 if (likely(a0)) { in frac256_normalize()
1191 shl = clz64(a0); in frac256_normalize()
1199 a0 = a1, a1 = a2, a2 = a3, a3 = 0; in frac256_normalize()
1202 a0 = a2, a1 = a3, a2 = 0, a3 = 0; in frac256_normalize()
1205 a0 = a3, a1 = 0, a2 = 0, a3 = 0; in frac256_normalize()
1208 a0 = 0, a1 = 0, a2 = 0, a3 = 0; in frac256_normalize()
1211 shl = clz64(a0); in frac256_normalize()
1218 a0 = shl_double(a0, a1, shl); in frac256_normalize()
1224 a->frac_hi = a0; in frac256_normalize()
1235 uint64_t a0, a1, b0, t0, t1, q, quot; in frac64_modrem() local
1239 a0 = a->frac; in frac64_modrem()
1249 a0 >>= 1; in frac64_modrem()
1254 quot = q = b0 <= a0; in frac64_modrem()
1256 a0 -= b0; in frac64_modrem()
1261 q = estimateDiv128To64(a0, a1, b0); in frac64_modrem()
1264 sub128(a0, a1, t0, t1, &a0, &a1); in frac64_modrem()
1265 shortShift128Left(a0, a1, 62, &a0, &a1); in frac64_modrem()
1272 q = estimateDiv128To64(a0, a1, b0); in frac64_modrem()
1275 sub128(a0, a1, t0, t1, &a0, &a1); in frac64_modrem()
1277 while (le128(t0, t1, a0, a1)) { in frac64_modrem()
1279 sub128(a0, a1, t0, t1, &a0, &a1); in frac64_modrem()
1290 sub128(t0, t1, a0, a1, &t0, &t1); in frac64_modrem()
1291 if (lt128(t0, t1, a0, a1) || in frac64_modrem()
1292 (eq128(t0, t1, a0, a1) && (q & 1))) { in frac64_modrem()
1293 a0 = t0; in frac64_modrem()
1299 if (likely(a0)) { in frac64_modrem()
1300 shift = clz64(a0); in frac64_modrem()
1301 shortShift128Left(a0, a1, shift, &a0, &a1); in frac64_modrem()
1304 a0 = a1 << shift; in frac64_modrem()
1313 a->frac = a0 | (a1 != 0); in frac64_modrem()
1319 uint64_t a0, a1, a2, b0, b1, t0, t1, t2, q, quot; in frac128_modrem() local
1323 a0 = a->frac_hi; in frac128_modrem()
1334 shift128Right(a0, a1, 1, &a0, &a1); in frac128_modrem()
1341 quot = q = le128(b0, b1, a0, a1); in frac128_modrem()
1343 sub128(a0, a1, b0, b1, &a0, &a1); in frac128_modrem()
1348 q = estimateDiv128To64(a0, a1, b0); in frac128_modrem()
1351 sub192(a0, a1, a2, t0, t1, t2, &a0, &a1, &a2); in frac128_modrem()
1352 shortShift192Left(a0, a1, a2, 61, &a0, &a1, &a2); in frac128_modrem()
1359 q = estimateDiv128To64(a0, a1, b0); in frac128_modrem()
1362 sub192(a0, a1, a2, t0, t1, t2, &a0, &a1, &a2); in frac128_modrem()
1364 while (le192(t0, t1, t2, a0, a1, a2)) { in frac128_modrem()
1366 sub192(a0, a1, a2, t0, t1, t2, &a0, &a1, &a2); in frac128_modrem()
1378 sub192(t0, t1, t2, a0, a1, a2, &t0, &t1, &t2); in frac128_modrem()
1379 if (lt192(t0, t1, t2, a0, a1, a2) || in frac128_modrem()
1380 (eq192(t0, t1, t2, a0, a1, a2) && (q & 1))) { in frac128_modrem()
1381 a0 = t0; in frac128_modrem()
1388 if (likely(a0)) { in frac128_modrem()
1389 shift = clz64(a0); in frac128_modrem()
1390 shortShift192Left(a0, a1, a2, shift, &a0, &a1, &a2); in frac128_modrem()
1393 shortShift128Left(a1, a2, shift, &a0, &a1); in frac128_modrem()
1398 a0 = a2 << shift; in frac128_modrem()
1407 a->frac_hi = a0; in frac128_modrem()
1420 uint64_t a0 = a->frac_hi, a1 = a->frac_lo; in frac128_shl() local
1423 a0 = a1, a1 = 0; in frac128_shl()
1428 a0 = shl_double(a0, a1, c); in frac128_shl()
1432 a->frac_hi = a0; in frac128_shl()
1445 uint64_t a0 = a->frac_hi, a1 = a->frac_lo; in frac128_shr() local
1448 a1 = a0, a0 = 0; in frac128_shr()
1453 a1 = shr_double(a0, a1, c); in frac128_shr()
1454 a0 = a0 >> c; in frac128_shr()
1457 a->frac_hi = a0; in frac128_shr()
1465 uint64_t a0 = a->frac; in frac64_shrjam() local
1469 a0 = (a0 >> c) | (shr_double(a0, 0, c) != 0); in frac64_shrjam()
1471 a0 = a0 != 0; in frac64_shrjam()
1473 a->frac = a0; in frac64_shrjam()
1479 uint64_t a0 = a->frac_hi, a1 = a->frac_lo; in frac128_shrjam() local
1488 a1 = a0; in frac128_shrjam()
1489 a0 = 0; in frac128_shrjam()
1495 sticky = a0 | a1; in frac128_shrjam()
1496 a0 = a1 = 0; in frac128_shrjam()
1501 a1 = shr_double(a0, a1, c); in frac128_shrjam()
1502 a0 = a0 >> c; in frac128_shrjam()
1506 a->frac_hi = a0; in frac128_shrjam()
1511 uint64_t a0 = a->frac_hi, a1 = a->frac_hm; in frac256_shrjam() local
1522 a3 = a1, a2 = a0, a1 = 0, a0 = 0; in frac256_shrjam()
1526 a3 = a2, a2 = a1, a1 = a0, a0 = 0; in frac256_shrjam()
1533 sticky = a0 | a1 | a2 | a3; in frac256_shrjam()
1534 a0 = a1 = a2 = a3 = 0; in frac256_shrjam()
1541 a1 = shr_double(a0, a1, c); in frac256_shrjam()
1542 a0 = a0 >> c; in frac256_shrjam()
1548 a->frac_hi = a0; in frac256_shrjam()