[all-commits] [llvm/llvm-project] c8893f: [LoopVectorize] relax FMF constraint for FP induction

RotateRight via All-commits all-commits at lists.llvm.org
Thu Mar 18 05:11:46 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c8893f3b784c4b8877275801029b4ebb54408f66
      https://github.com/llvm/llvm-project/commit/c8893f3b784c4b8877275801029b4ebb54408f66
  Author: Sanjay Patel <spatel at rotateright.com>
  Date:   2021-03-18 (Thu, 18 Mar 2021)

  Changed paths:
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
    M llvm/test/Transforms/LoopVectorize/float-induction.ll

  Log Message:
  -----------
  [LoopVectorize] relax FMF constraint for FP induction

This makes the induction part of the loop vectorizer match the reduction part.
We do not need all of the fast-math-flags. For example, there are some that
clearly are not in play like arcp or afn.

If we want to make FMF constraints consistent across the IR optimizer, we
might want to add nsz too, but that's up for debate (users can't expect
associative FP math and preservation of sign-of-zero at the same time?).

The calling code was fixed to avoid miscompiles with:
1bee549737ac

Differential Revision: https://reviews.llvm.org/D98708




More information about the All-commits mailing list