[all-commits] [llvm/llvm-project] 609d42: [SLP] Do not vectorize copyable operands of expand...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Thu Jun 11 07:15:27 PDT 2026


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/expanded-binop-copyable-operand-deps.ll

  Log Message:
  -----------
  [SLP] Do not vectorize copyable operands of expanded binops

An operand modeled as a copyable element on one operand edge of an
expanded binop (shl X, 1 represented as add X, X) leaves the duplicated
operand edge as a plain gathered operand with no copyable. The scheduler
then decrements that operand's ScheduleData for a use calculateDependencies
never counted for it, so its unscheduled-deps counter goes negative and
trips the assertion. Reject such bundles instead.

Fixes #203193

Reviewers: 

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



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