[Bug target/96373] SVE miscompilation on vectorized division loop, leading to FP exception

matz at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Aug 4 14:38:00 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96373

--- Comment #3 from Michael Matz <matz at gcc dot gnu.org> ---
(In reply to Richard Biener from comment #2)
> which means for non-memory gimple_could_trap_p (stmt) - sth you can
> easily check I guess.

Just note that _all_ floating point operations, not just divisions, can trap
(without fast-math).  You never know if the user enabled stops for any of the
FP exceptions (overflow, underflow, inexact, invalid op, div-by-zero).  So, on
SVE that means all FP operations need to use the loop mask.

(Of course enabling stops for something like inexact/xflow is silly, so punting
on that might be fine)


More information about the Gcc-bugs mailing list