[all-commits] [llvm/llvm-project] 710e34: [VectorCombine] move load safety checks to helper ...

Karthik Senthil via All-commits all-commits at lists.llvm.org
Fri Nov 4 07:39:55 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 710e34e1360710275662ad5b0bdc394570fb26d5
      https://github.com/llvm/llvm-project/commit/710e34e1360710275662ad5b0bdc394570fb26d5
  Author: Sanjay Patel <spatel at rotateright.com>
  Date:   2022-11-04 (Fri, 04 Nov 2022)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp

  Log Message:
  -----------
  [VectorCombine] move load safety checks to helper function; NFC

These checks can be re-used with other potential transforms
such as a load of a subvector-insert.


  Commit: d9c52c31a0fee22414bb4024ee5b203fe86ef5bb
      https://github.com/llvm/llvm-project/commit/d9c52c31a0fee22414bb4024ee5b203fe86ef5bb
  Author: Karthik Senthil <karthik.senthil at intel.com>
  Date:   2022-11-04 (Fri, 04 Nov 2022)

  Changed paths:
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reduction-inloop-cond.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-cond.ll
    M llvm/unittests/Analysis/IVDescriptorsTest.cpp

  Log Message:
  -----------
  [LV][IVDescriptors] Fix recurrence identity element for FMin and FMax reductions

For a min and max reduction idioms, the identity (i.e. neutral) element
should be datatype's highest and lowest possible values respectively.
Current implementation in IVDescriptors incorrectly returns -Inf for FMin
reduction and +Inf for FMax reduction. This patch fixes this bug which
was causing incorrect reduction computation results in loops vectorized
by LV.

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


Compare: https://github.com/llvm/llvm-project/compare/5f87a892a7be...d9c52c31a0fe


More information about the All-commits mailing list