[all-commits] [llvm/llvm-project] c6669c: [SLP] Guard FMulAdd conversion to require single-u...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Wed Apr 1 14:15:16 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c6669c4993ee591e2414e3190cc8f0d623c1357a
      https://github.com/llvm/llvm-project/commit/c6669c4993ee591e2414e3190cc8f0d623c1357a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-04-01 (Wed, 01 Apr 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/fma-conversion-multi-use-guard.ll

  Log Message:
  -----------
  [SLP] Guard FMulAdd conversion to require single-use/non-reordered FMul operands

The FMulAdd (CombinedVectorize) transformation in transformNodes() marks
an FMul child entry with zero cost, assuming it is fully absorbed into
the fmuladd intrinsic. However, when any FMul scalar has multiple uses
(e.g., also stored separately), the FMul must survive as a separate
node.

Reviewers: hiraditya, RKSimon, bababuck

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



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