blob: 9c5614b44c8a51b9345c4002e25000a07bd3d870 [file] [log] [blame]
/* PR tree-optimization/109008 */
/* { dg-do run } */
/* { dg-options "-O2 -ffinite-math-only -fexcess-precision=standard" } */
__attribute__((noipa)) double
foo (double eps)
{
double d = __DBL_MAX__ + eps;
if (d == __DBL_MAX__)
if (eps > 16.0)
return eps;
return 0.0;
}
int
main ()
{
#if __DBL_MANT_DIG__ == 53 && __DBL_MAX_EXP__ == 1024 && __DBL_MIN_EXP__ == -1021 \
&& __FLT_EVAL_METHOD__ == 0
if (foo (0x0.8p+970) == 0.0)
__builtin_abort ();
if (foo (32.0) == 0.0)
__builtin_abort ();
#endif
return 0;
}