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

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(In reply to Wilco from comment #3)
> But why does it always add a redundant test with FLT_MAX in the loop?

Which loop do you mean?  If the vectorized one, OpenMP has rules on what needs
to be done, at the start of the input phase the privatized variable needs to be
initialized using the reduction initializer (for max reduction that is the
neutral element for max, -inf when honoring infinities, otherwise most negative
finite value), then perform the body of the input phase, and then at the start
of the scan phase set the privatized variable to the current prefix sum of the
reduction.  I'm not using -inf for -ffast-math, because -ffinite-math-only
assumes the operands aren't infinities nor nans.

Reply via email to