Lines Matching refs:want
42 RT(float) want = p->y;
46 if (RT(asuint) (got) == RT(asuint) (want))
48 if (signbit (got) != signbit (want))
50 //return isnan(got) && isnan(want) ? 0 : INFINITY;
52 if (!isfinite (want) || !isfinite (got))
54 if (isnan (got) != isnan (want))
56 if (isnan (want))
61 want *= 0.5f;
63 if (isinf (want))
65 want = RT(copysign) (RT(halfinf), want);
71 // TODO: incorrect when got vs want cross a powof2 boundary
72 /* error = got > want
73 ? got - want - tail ulp - 0.5 ulp
74 : got - want - tail ulp + 0.5 ulp; */
75 d = got - want;
80 if ((r == FE_DOWNWARD && got < want) || (r == FE_UPWARD && got > want)
81 || (r == FE_TOWARDZERO && fabs (got) < fabs (want)))
82 got = RT(nextafter) (got, want);
83 d = got - want;
257 struct RT(ret) want;
285 ? T(call_mpfr_fix) (f, a, r, &want, ygot, exgot)
286 : (fenv ? T(call_long_fenv) (f, a, r, &want, ygot, exgot)
287 : T(call_long_nofenv) (f, a, r, &want, ygot, exgot));
291 double err = RT(ulperr) (ygot, &want, r);
317 printf (" got %a want %a %+g ulp err %g\n", ygot, want.y,
318 want.tail, err);
320 int diff = fenv ? exgot ^ want.ex : 0;
321 if (fenv && (diff & ~want.ex_may))
329 printf (" is %a %+g ulp, got except 0x%0x", want.y, want.tail,