[all-commits] [llvm/llvm-project] 5226ae: [SLP]Fix PR79229: Check that extractelement is use...
Alexey Bataev via All-commits
all-commits at lists.llvm.org
Fri Feb 16 05:52:08 PST 2024
Branch: refs/heads/release/18.x
Home: https://github.com/llvm/llvm-project
Commit: 5226ae4617023e3b8957e9db0b9c2c83ea7e77a2
https://github.com/llvm/llvm-project/commit/5226ae4617023e3b8957e9db0b9c2c83ea7e77a2
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/extractelement-single-use-many-nodes.ll
Log Message:
-----------
[SLP]Fix PR79229: Check that extractelement is used only in a single node
before erasing.
Before trying to erase the extractelement instruction, not enough to
check for single use, need to check that it is not used in several nodes
because of the preliminary nodes reordering.
(cherry picked from commit 48bbd7658710ef1699bf2a6532ff5830230aacc5)
Commit: b7a4ff80a4ccaecf1d497db51bfdc9499c3cbb48
https://github.com/llvm/llvm-project/commit/b7a4ff80a4ccaecf1d497db51bfdc9499c3cbb48
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/extractelement-multi-register-use.ll
Log Message:
-----------
[SLP]Fix PR79229: Do not erase extractelement, if it used in
multiregister node.
If the node can be span between several registers and same
extractelement instruction is used in several parts, it may be required
to keep such extractelement instruction to avoid compiler crash.
(cherry picked from commit 6fe21bc1dac883efa0dfa807f327048ae9969b81)
Compare: https://github.com/llvm/llvm-project/compare/1a69056c899a...b7a4ff80a4cc
More information about the All-commits
mailing list