[all-commits] [llvm/llvm-project] 9e8ecc: [DAGCombine] Transform `shl X, cttz(Y)` to `mul (Y...

Yingwei Zheng via All-commits all-commits at lists.llvm.org
Wed May 29 03:27:17 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9e8ecce88ef65a2953db8071746720dd78bd1632
      https://github.com/llvm/llvm-project/commit/9e8ecce88ef65a2953db8071746720dd78bd1632
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-05-29 (Wed, 29 May 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/RISCV/shl-cttz.ll

  Log Message:
  -----------
  [DAGCombine] Transform `shl X, cttz(Y)` to `mul (Y & -Y), X` if cttz is unsupported (#85066)

This patch fold `shl X, cttz(Y)` to `mul (Y & -Y), X` if cttz is
unsupported by the target.
Alive2: https://alive2.llvm.org/ce/z/AtLN5Y
Fixes https://github.com/llvm/llvm-project/issues/84763.



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