Lines Matching full:got
38 gets rounded to got, i.e. error before rounding, for a correctly
40 static double RT (ulperr) (RT (float) got, const struct RT (ret) * p, int r, in RT()
47 if (RT(asuint) (got) == RT(asuint) (want)) in RT()
49 if (isnan (got) && isnan (want)) in RT()
54 return RT (issignaling) (got) == RT (issignaling) (want) ? 0 : INFINITY; in RT()
56 if (signbit (got) != signbit (want)) in RT()
59 exactly one of want and got is non-zero. */ in RT()
60 if (ignore_zero_sign && want == got) in RT()
62 if (!ignore_zero_sign || (want != 0 && got != 0)) in RT()
65 if (!isfinite (want) || !isfinite (got)) in RT()
67 if (isnan (got) != isnan (want)) in RT()
71 if (isinf (got)) in RT()
73 got = RT(copysign) (RT(halfinf), got); in RT()
79 got *= 0.5f; in RT()
84 // TODO: incorrect when got vs want cross a powof2 boundary in RT()
85 /* error = got > want in RT()
86 ? got - want - tail ulp - 0.5 ulp in RT()
87 : got - want - tail ulp + 0.5 ulp. */ in RT()
88 d = got - want; in RT()
93 if ((r == FE_DOWNWARD && got < want) || (r == FE_UPWARD && got > want) in RT()
94 || (r == FE_TOWARDZERO && fabs (got) < fabs (want))) in RT()
95 got = RT(nextafter) (got, want); in RT()
96 d = got - want; in RT()
203 /* returns 1 if the got result is ok. */
304 printf (" got %a then %a for same input\n", ygot, ygot2); in T()
341 printf (" got %a want %a %+g ulp err %g\n", ygot, want.y, in T()
353 printf (" is %a %+g ulp, got except 0x%0x", want.y, want.tail, in T()