llvm/llvm-project

missed fold: (X * 0.0) * constant => X * 0.0

Open

#85,241 opened on 2024年3月14日

GitHub で見る
 (36 comments) (1 reaction) (1 assignee)C++ (10,782 forks)batch import
floating-pointgood first issuellvm:instcombinemissed-optimization

Repository metrics

Stars
 (26,378 stars)
PR merge metrics
 (平均マージ 1d 2h) (30d で 1,000 merged PRs)

説明

https://alive2.llvm.org/ce/z/bKDTJd https://godbolt.org/z/v1qYrb5Ka

define float @src(float %0) {
entry:
  %1 = fmul float %0, 0.000000e+00
  %2 = fmul float %1, 3.000000e+00
  ret float %2
}

define float @tgt(float %0) {
entry:
  %1 = fmul float %0, 0.000000e+00
  ret float %1
}

@jayfoad @regehr

コントリビューターガイド