Lines Matching defs:rv

72 	double rv;
75 rv = ulp(x);
77 return rv; /* Is there an example where i <= 0 ? */
80 return rv * u.d;
100 U adj, aadj1, rv, rv0;
146 dval(&rv) = 0.;
195 ULtod(((U*)&rv)->L, bits, exp, i);
308 word0(&rv) = 0x7ff00000;
309 word1(&rv) = 0;
320 word0(&rv) = 0x7ff80000 | bits[1];
321 word1(&rv) = bits[0];
325 word0(&rv) = NAN_WORD0;
326 word1(&rv) = NAN_WORD1;
350 dval(&rv) = y;
356 dval(&rv) = tens[k - 9] * dval(&rv) + z;
377 rv.d = -rv.d;
381 /* rv = */ rounded_product(dval(&rv), tens[e]);
393 rv.d = -rv.d;
398 dval(&rv) *= tens[i];
404 word0(&rv) -= P*Exp_msk1;
405 /* rv = */ rounded_product(dval(&rv), tens[e]);
406 if ((word0(&rv) & Exp_mask)
409 word0(&rv) += P*Exp_msk1;
411 /* rv = */ rounded_product(dval(&rv), tens[e]);
421 rv.d = -rv.d;
425 /* rv = */ rounded_quotient(dval(&rv), tens[-e]);
453 /* Get starting approximation = rv * 10**e1 */
457 dval(&rv) *= tens[i];
467 word0(&rv) = Big0;
468 word1(&rv) = Big1;
471 word0(&rv) = Exp_mask;
472 word1(&rv) = 0;
475 word0(&rv) = Exp_mask;
476 word1(&rv) = 0;
484 word0(&rv) = Big0;
485 word1(&rv) = Big1;
503 dval(&rv) *= bigtens[j];
505 word0(&rv) -= P*Exp_msk1;
506 dval(&rv) *= bigtens[j];
507 if ((z = word0(&rv) & Exp_mask)
513 word0(&rv) = Big0;
514 word1(&rv) = Big1;
517 word0(&rv) += P*Exp_msk1;
523 dval(&rv) /= tens[i];
532 dval(&rv) *= tinytens[j];
533 if (scale && (j = 2*P + 1 - ((word0(&rv) & Exp_mask)
535 /* scaled rv is denormal; zap j low bits */
537 word1(&rv) = 0;
539 word0(&rv) = (P+2)*Exp_msk1;
541 word0(&rv) &= 0xffffffff << (j-32);
544 word1(&rv) &= 0xffffffff << j;
549 dval(&rv) *= tinytens[j];
551 dval(&rv0) = dval(&rv);
552 dval(&rv) *= tinytens[j];
553 if (!dval(&rv)) {
554 dval(&rv) = 2.*dval(&rv0);
555 dval(&rv) *= tinytens[j];
557 if (!dval(&rv)) {
559 dval(&rv) = 0.;
563 word0(&rv) = Tiny0;
564 word1(&rv) = Tiny1;
573 /* Now the hard part -- adjusting rv to the correct value.*/
582 bb = d2b(dval(&rv), &bbe, &bbbits); /* rv = bb * 2^bbe */
606 i = j + bbbits - 1; /* logb(rv) */
625 i = j + bbbits - 1; /* logb(&rv) */
682 if (!word1(&rv)
683 && !(word0(&rv) & Frac_mask)) {
684 y = word0(&rv) & Exp_mask;
698 if (scale && (y = word0(&rv) & Exp_mask)
703 if ((word0(&rv) & Exp_mask) <=
705 word0(&rv) += P*Exp_msk1;
706 dval(&rv) += adj*ulp(&rv);
707 word0(&rv) -= P*Exp_msk1;
712 dval(&rv) += adj.d*ulp(&rv);
729 if (scale && (y = word0(&rv) & Exp_mask) <= 2*P*Exp_msk1)
733 if ((word0(&rv) & Exp_mask) <= P*Exp_msk1) {
734 word0(&rv) += P*Exp_msk1;
735 dval(&adj) *= ulp(&rv);
737 dval(&rv) += adj;
739 dval(&rv) -= adj;
740 word0(&rv) -= P*Exp_msk1;
745 dval(&adj) *= ulp(&rv);
747 if (word0(&rv) == Big0 && word1(&rv) == Big1)
749 dval(&rv) += adj.d;
752 dval(&rv) -= adj.d;
761 if (dsign || word1(&rv) || word0(&rv) & Bndry_mask
764 || (word0(&rv) & Exp_mask) <= (2*P+1)*Exp_msk1
766 || (word0(&rv) & Exp_mask) <= Exp_msk1
791 if ((word0(&rv) & Bndry_mask1) == Bndry_mask1
792 && word1(&rv) == (
794 (scale && (y = word0(&rv) & Exp_mask) <= 2*P*Exp_msk1)
799 if (word0(&rv) == Big0 && word1(&rv) == Big1)
801 word0(&rv) = (word0(&rv) & Exp_mask)
807 word1(&rv) = 0;
814 else if (!(word0(&rv) & Bndry_mask) && !word1(&rv)) {
818 L = word0(&rv) & Exp_mask;
833 L = word0(&rv) & Exp_mask;
837 /* accept rv */
839 /* rv = smallest denormal */
844 L = (word0(&rv) & Exp_mask) - Exp_msk1;
846 word0(&rv) = L | Bndry_mask1;
847 word1(&rv) = 0xffffffff;
857 if (!(word0(&rv) & Lsb1))
860 else if (!(word1(&rv) & Lsb))
863 if (!(word1(&rv) & LSB))
869 dval(&rv) += sulp(&rv, scale);
871 dval(&rv) += ulp(&rv);
876 dval(&rv) -= sulp(&rv, scale);
878 dval(&rv) -= ulp(&rv);
881 if (!dval(&rv))
894 else if (word1(&rv) || word0(&rv) & Bndry_mask) {
896 if (word1(&rv) == Tiny1 && !word0(&rv))
930 y = word0(&rv) & Exp_mask;
935 dval(&rv0) = dval(&rv);
936 word0(&rv) -= P*Exp_msk1;
937 dval(&adj) = dval(&aadj1) * ulp(&rv);
938 dval(&rv) += dval(&adj);
939 if ((word0(&rv) & Exp_mask) >=
943 word0(&rv) = Big0;
944 word1(&rv) = Big1;
948 word0(&rv) += P*Exp_msk1;
961 dval(&adj) = dval(&aadj1) * ulp(&rv);
962 dval(&rv) += dval(&adj);
965 if ((word0(&rv) & Exp_mask) <= P*Exp_msk1) {
966 dval(&rv0) = dval(&rv);
967 word0(&rv) += P*Exp_msk1;
968 dval(&adj) = dval(&aadj1) * ulp(&rv);
969 dval(&rv) += adj;
971 if ((word0(&rv) & Exp_mask) < P*Exp_msk1)
973 if ((word0(&rv) & Exp_mask) <= P*Exp_msk1)
979 word0(&rv) = Tiny0;
980 word1(&rv) = Tiny1;
984 word0(&rv) -= P*Exp_msk1;
987 dval(&adj) = dval(&aadj1) * ulp(&rv);
988 dval(&rv) += adj;
992 * correctly round rv + dval(&adj) in some half-way cases.
993 * If rv * ulp(&rv) is denormalized (i.e.,
1003 dval(&adj) = dval(&aadj1) * ulp(&rv);
1004 dval(&rv) += adj;
1008 z = word0(&rv) & Exp_mask;
1018 if (dsign || word1(&rv) || word0(&rv) & Bndry_mask) {
1052 dval(&rv) *= dval(&rv0);
1056 if (!(word0(&rv) & Exp_mask))
1058 if (word0(&rv) == 0 && word1(&rv) == 0)
1065 if (inexact && !(word0(&rv) & Exp_mask)) {
1074 return sign ? -dval(&rv) : dval(&rv);