[all-commits] [llvm/llvm-project] 095fae: [SLP] Fix assertion "Deleting out-of-tree value" f...
Alexey Bataev via All-commits
all-commits at lists.llvm.org
Tue May 26 06:33:25 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 095faea999a2adaff9c54a5d7b7b1ef431db92ff
https://github.com/llvm/llvm-project/commit/095faea999a2adaff9c54a5d7b7b1ef431db92ff
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/AArch64/slp-extval-struct-operand-no-scalar-reuse.ll
Log Message:
-----------
[SLP] Fix assertion "Deleting out-of-tree value" for struct-typed vectorized operands
When an external-use scalar had a struct-typed vectorized operand, OperandIsScalar
incorrectly returned true (because the struct scalar was in ValueToExtUses), causing
the scalar to be cloned into ExternalUsesAsOriginalScalar. The clone used the struct
scalar directly, but struct-typed vectorized scalars are deleted after vectorization
- their external-use handling erases the extractvalue user rather than replacing the
struct value via replaceAllUsesWith.
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/199679
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list