[all-commits] [llvm/llvm-project] 67278b: [LV] Support Interleaved Store Group With Gaps

dnuzman via All-commits all-commits at lists.llvm.org
Sun Aug 8 01:26:21 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 67278b8a908e2aaa967c876c65515b5af332c835
      https://github.com/llvm/llvm-project/commit/67278b8a908e2aaa967c876c65515b5af332c835
  Author: Dorit Nuzman <dorit.nuzman at intel.com>
  Date:   2021-08-08 (Sun, 08 Aug 2021)

  Changed paths:
    M llvm/include/llvm/Analysis/VectorUtils.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-store-accesses-with-gaps.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses-masked-group.ll

  Log Message:
  -----------
  [LV] Support Interleaved Store Group With Gaps

Teach LV to use masked-store to support interleave-store-group with
gaps (instead of scatters/scalarization).

The symmetric case of using masked-load to support
interleaved-load-group with gaps was introduced a while ago, by
https://reviews.llvm.org/D53668; This patch completes the store-scenario
leftover from D53668, and solves PR50566.

Reviewed by: Ayal Zaks

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




More information about the All-commits mailing list