[Bug libgomp/59534] [4.9 Regression] FAIL: libgomp.fortran/retval1.f90 execution test due to denormals

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Dec 16 23:18:00 GMT 2013


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59534

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu.org

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
This is broken by r204194.
I'm afraid it is generally unsafe to do it if the inner comparison (the second
one) is floating point comparison (regardless of -ffast-math or not), because
one can have:
if (some_condition)
  {
    if (float_val != 6.5)
      ...
  }
else
  {
    if (float_val2 != 7.2)
      ...
  }
and float_val could be uninitialized/random if !some_condition, similarly
float_val2 uninitialized/random if some_condition.  In that case even with
-ffast-math it could fail, the uninitialized value could be say sNaN (or
denormal as in this case).



More information about the Gcc-bugs mailing list