[PATCH] D95690: [LoopVectorize] improve IR fast-math-flags propagation in reductions

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 1 07:24:25 PST 2021


dmgreen added a comment.

It looks like we don't expand non-fast vecreduce_fmax in ExpandReductions:

  // FIXME: We only expand 'fast' reductions here because the underlying
  //        code in createMinMaxOp() assumes that comparisons use 'fast'
  //        semantics.

And otherwise expand VECREDUCE_FMAX to (I think) FMAXNUM. Not using ExpandReductions sounds fine to me, but do we also need to fix those assumptions during lowering, if we are fixing the assumptions in the vectorizer? I guess we are still requiring NoNan so FMAXNUM should be fine? I didn't see anything normally requiring nsz for that.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D95690/new/

https://reviews.llvm.org/D95690



More information about the llvm-commits mailing list