Lines Matching refs:cc
39 mp_limb_t carry, bb, cc;
472 cc = cp[cn];
474 cc = 0;
478 cmp_low = (bb < cc) ? -2+k : (bb > cc) ? 1 : 0;
481 1a: bb > cc + half
482 1b: bb = cc + half
483 1c: 0 < bb - cc < half
484 1d: bb = cc
485 1e: -half < bb - cc < 0
486 1f: bb - cc = -half
487 1g: bb - cc < -half
490 2a: bb > cc
491 2b: bb = cc
492 2c: bb < cc
495 3a: bb > cc
496 3b: bb = cc
497 3c: bb < cc
506 /* add one ulp if bb > cc + half
507 truncate if cc - half < bb < cc + half
508 sub one ulp if bb < cc - half
511 if (cmp_low < 0) /* bb < cc: -1 ulp < low(b) - low(c) < 0,
514 if (cc >= half)
515 cc -= half;
516 else /* since bb < cc < half, bb+half < 2*half */
518 /* now we have bb < cc + half:
519 we have to subtract one ulp if bb < cc,
520 and truncate if bb > cc */
522 else if (cmp_low >= 0) /* bb >= cc, cases 1a to 1d */
524 if (cc < half)
525 cc += half;
526 else /* since bb >= cc >= half, bb - half >= 0 */
528 /* now we have bb > cc - half: we have to add one ulp if bb > cc,
529 and truncate if bb < cc */
536 MPFR_LOG_MSG (("k=%d bb=%Mu cc=%Mu cmp_low=%d\n", k, bb, cc, cmp_low));
551 /* If cmp_low < 0 and bb > cc, then -0.5 ulp < low(b)-low(c) < 0,
557 limbs bb and cc were equal (thus cmp_low was 0 for k=0),
558 or we had bb - cc = -0.5 ulp or 0.5 ulp.
565 if (bb > cc || sh > 0 || cmp_low == -1)
567 bb > cc corresponds to cases 1e and 1f1
573 else if (bb < cc) /* here sh = 0 and low(b)-low(c) < -0.5 ulp,
576 /* the only case where we can't conclude is sh=0 and bb=cc,
595 if (bb > cc)
597 /* if sh=0, then bb>cc means that low(b)-low(c) > 0.5 ulp,
611 else if (bb < cc) /* 0 < low(b) - low(c) < 0.5 ulp, cases 1c,
617 /* the only case where we can't conclude is bb=cc, i.e.,
623 according to the values of bb and cc for k=1:
624 1b. sh=0 and cmp_low = 1 and bb-cc = half [around 0.5 ulp]
625 1b1. bb > cc: add one ulp, inex = 1
626 1b2: bb = cc: cannot conclude
627 1b3: bb < cc: truncate, inex = -1
628 1d. sh=0 and cmp_low = 0 and bb-cc = 0 [around 0]
629 1d1: bb > cc: truncate, inex = -1
630 1d2: bb = cc: cannot conclude
631 1d3: bb < cc: truncate, inex = +1
632 1f. sh=0 and cmp_low = -1 and bb-cc = -half [around -0.5 ulp]
633 1f1: bb > cc: truncate, inex = +1
634 1f2: bb = cc: cannot conclude
635 1f3: bb < cc: sub one ulp, inex = -1
636 2b. sh > 0 and cmp_low = 2 and bb=cc [around 0.5 ulp]
637 2b1. bb > cc: add one ulp, inex = 1
638 2b2: bb = cc: cannot conclude
639 2b3: bb < cc: truncate, inex = -1
641 3b1. bb > cc: truncate, inex = -1
642 3b2: bb = cc: cannot conclude
643 3b3: bb < cc: truncate, inex = +1