[all-commits] [llvm/llvm-project] dee168: [SLP]Keep reuse mask in sync when reordering split...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Sat Jun 6 06:21:04 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: dee1687bdba79e729b4ddf3e2c37ff9b5766dc75
      https://github.com/llvm/llvm-project/commit/dee1687bdba79e729b4ddf3e2c37ff9b5766dc75
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/split-node-reused-and-reordered-operand.ll

  Log Message:
  -----------
  [SLP]Keep reuse mask in sync when reordering split node operand

When reorderBottomToTop uses an operand order for a split vectorize
node and the operand has both reordered and reused scalars, only the
reorder indices were cleared while the reuse mask was left stale. This
diverged the split node scalars from the operand effective order.
Fold the reorder into the reuse mask (getCommonMask), reorder it by the
used mask, then clear the reorder indices, so the operand effective
order stays consistent with the reordered split node.

Fixes #202003

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/202041



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