[all-commits] [llvm/llvm-project] a0086a: [SLP]Improve gathering of scalar elements.
cilkplus via All-commits
all-commits at lists.llvm.org
Wed Jun 9 05:24:14 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a0086add2e52a82dd83114f458c10e2e4bdd15ac
https://github.com/llvm/llvm-project/commit/a0086add2e52a82dd83114f458c10e2e4bdd15ac
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2021-06-09 (Wed, 09 Jun 2021)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/insertelement-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/insertelement.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/trunc-insertion.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/vectorize-free-extracts-inserts.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/pr34619.ll
M llvm/test/Transforms/SLPVectorizer/X86/PR39774.ll
M llvm/test/Transforms/SLPVectorizer/X86/commutativity.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_exceed_scheduling.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_lencod.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_mandeltext.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_smallpt.ll
M llvm/test/Transforms/SLPVectorizer/X86/geps-non-pow-2.ll
M llvm/test/Transforms/SLPVectorizer/X86/hoist.ll
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
M llvm/test/Transforms/SLPVectorizer/X86/jumbled-load-multiuse.ll
M llvm/test/Transforms/SLPVectorizer/X86/jumbled-load-used-in-phi.ll
M llvm/test/Transforms/SLPVectorizer/X86/matched-shuffled-entries.ll
M llvm/test/Transforms/SLPVectorizer/X86/partail.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi3.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi_landingpad.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr35497.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduction2.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_extract_broadcast.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_repeated_ops.ll
M llvm/test/Transforms/SLPVectorizer/X86/shrink_after_reorder.ll
M llvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll
M llvm/test/Transforms/SLPVectorizer/X86/value-bug-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/value-bug.ll
M llvm/test/Transforms/SLPVectorizer/slp-max-phi-size.ll
M llvm/test/Transforms/SLPVectorizer/slp-umax-rdx-matcher-crash.ll
Log Message:
-----------
[SLP]Improve gathering of scalar elements.
1. Better sorting of scalars to be gathered. Trying to insert
constants/arguments/instructions-out-of-loop at first and only then
the instructions which are inside the loop. It improves hoisting of
invariant insertelements instructions.
2. Better detection of shuffle candidates in gathering function.
3. The cost of insertelement for constants is 0.
Part of D57059.
Differential Revision: https://reviews.llvm.org/D103458
More information about the All-commits
mailing list