[all-commits] [llvm/llvm-project] e2efa2: [SLP] Gather wide PHI bundles to avoid compile-tim...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Wed Jun 3 04:06:11 PDT 2026


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/phi-vectorization-budget.ll

  Log Message:
  -----------
  [SLP] Gather wide PHI bundles to avoid compile-time blow-up

Vectorizing a PHI bundle recurses into one operand bundle per incoming
value, so the analysis cost grows with bundle_size * num_incoming_values.
With revectorization, very wide PHIs from jump threading make
opt -O3 hang for minutes/hours. Such PHIs are not profitable to vectorize,
so gather the bundle once that product exceeds a budget (new hidden option
-slp-phi-vectorization-budget, default 1024).

Fixes #201181

Reviewers: hiraditya, bababuck, RKSimon

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



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