https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122643
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution|--- |INVALID
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
This is not a bug.
The difference is a fma.
If I use -ffp-contract=off, then it "works" and gives 0 0.
For the value outside of the loop is constant folded and that does not use a
fma so you get 0.0.