<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/185561>185561</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Missed optimization: Fold FP comparison of casted integer back to integer comparison
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          dreamking60
      </td>
    </tr>
</table>

<pre>
    ```
define i1 @src(i32 %arg0) {
  %v0 = add nsw i32 %arg0, -1
  %v1 = sitofp i32 %v0 to float
  %v2 = fsub float 1.000000e+00, %v1
  %v3 = fcmp olt float %v2, 1.000000e+00
  ret i1 %v3
}

define i1 @tgt(i32 %arg0) {
  %res = icmp sgt i32 %arg0, 1
  ret i1 %res
}
```

alive2: https://alive2.llvm.org/ce/z/VT4-a8
godbolt: https://godbolt.org/z/3n1f1M7rK

Pattern found in: https://github.com/dtcxzyw/llvm-opt-benchmark/blob/main/bench/pbrt-v4/optimized/lowdiscrepancy.ll
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJx8U82O4ygQfpryBSWCIs7PwYf0trisWurDau9gyg7b2FiAk-1--hFOOj2TGbVlWYL6fuorjE7J9SNRA_UT1M-VnvMpxMZG0sObG_str0yw7w1s-e3lR0udG4k5wWDDU2wB904iA6x17DnggcHuCfiRla0zZyCfmbaWjenCfgH-xVbijhMLLrkcuukTduYsB9b5oPMdhwuuS7O5FphY8-UhwCe-qC5yd4K8EtphYsHnG2lRKtgHdiFFyku4wgV-hN1z-T7kzn3-NnektPi64pv6_JhcPFhFSl9ePw0b-FF7dyYEeWSnnKcE8gioANV1f-39eViH2AOqlgDVB6D695_NSu-BH_tgTfD5d_KtcCMWjhxFJ1528e-r66vOmeLIujCPlrnxDxIun2azbsMAqGxu__94vwCq0s8qTHllaGxPg45vgMr4YADVoN1YVqUCqCYT8-q8AVRhym5wH2SLQLhYl9pIkx7b97X3lW2kPciDrqgRu50UQkiJ1ak5dDspjaxlLbmgzhyMtlsypmyI3UFWrkGOWy4F51jXEtcHqbdmszdErdYoJWw4Ddr5-xQrl9JMjdjX9VZUXhvyabkciCNd2FIFxHJXYrNENXOfYMO9Szl9yWSXPTUvLiWy7JZOZxeWOargLVOvrA3DpKNLYWShY61OmcqoM_UUmdHtW_n9P9df4GqOvvnmLEoTnwcxxfAftRlQLa0nQHXLdm7wRwAAAP__lWAwmw">