[all-commits] [llvm/llvm-project] 0e1a9e: [SLP]Fix PR74607: Fix dependency between buildvect...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Wed Dec 6 10:17:55 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0e1a9e3084cd8dffa5d4f2cf6eabf9e7721e1cdd
      https://github.com/llvm/llvm-project/commit/0e1a9e3084cd8dffa5d4f2cf6eabf9e7721e1cdd
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2023-12-06 (Wed, 06 Dec 2023)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/delayed-gather-emission.ll
    A llvm/test/Transforms/SLPVectorizer/X86/gathered-delayed-nodes-with-reused-user.ll

  Log Message:
  -----------
  [SLP]Fix PR74607: Fix dependency between buildvector nodes with user
nodes, having same last instruction.

If the user nodes has the same last-instruction, used as insert points
for the buildvector nodes, finding the proper dependency is crucial.
  Before, it depended on the indices of the buildvectors themselves but
  looks like it should depend on indices of the user nodes, because it
  identifies the vectorization order and, thus, properly aligns
  buildvector nodes in terms of def-use chain.




More information about the All-commits mailing list