[all-commits] [llvm/llvm-project] 102dfa: [DAGCombiner] Allow freeze to sink through fmul by...

Harrison Hao via All-commits all-commits at lists.llvm.org
Sun Jun 8 04:39:19 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 102dfa8a487a1c44a95a225825039d282be712a0
      https://github.com/llvm/llvm-project/commit/102dfa8a487a1c44a95a225825039d282be712a0
  Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
  Date:   2025-06-08 (Sun, 08 Jun 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AMDGPU/fold-freeze-fmul-to-fma.ll

  Log Message:
  -----------
  [DAGCombiner] Allow freeze to sink through fmul by adding it to AllowMultipleMaybePoisonOperands (#142250)

Allow freeze to sink through fmul by treating it as a
non-poison-generating op
when operands are not poison.

Adding `ISD::FMUL` to `AllowMultipleMaybePoisonOperands` lets DAG
combine
push freeze through fmul. This helps expose patterns like `fmul+fadd`
for `FMA` fusion.

When rebuilding the node, we drop flags like nnan/ninf/nsz that imply
poison,
but keep contract, reassoc, afn, and arcp.


Closes: https://github.com/llvm/llvm-project/issues/141622



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