<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/121772>121772</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[InstCombine] Commuted pattern is not handled
</td>
</tr>
<tr>
<th>Labels</th>
<td>
llvm:instcombine,
missed-optimization
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
dtcxzyw
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
dtcxzyw
</td>
</tr>
</table>
<pre>
https://godbolt.org/z/a3xvd9bds
```
define i32 @foo1(i32 %h) {
%sd = sdiv i32 %h, 2
%t = icmp slt i32 %sd, 1
%r = select i1 %t, i32 %sd, i32 1
ret i32 %r
}
define i32 @foo2(i32 %h) {
%sd = sdiv i32 %h, 2
%t = icmp sge i32 %sd, 1
%r = select i1 %t, i32 1, i32 %sd
ret i32 %r
}
```
```
define i32 @foo1(i32 %h) {
%sd = sdiv i32 %h, 2
%r = call i32 @llvm.smin.i32(i32 %sd, i32 1)
ret i32 %r
}
define i32 @foo2(i32 %h) {
%sd = sdiv i32 %h, 2
%t = icmp sgt i32 %h, 1
%r = select i1 %t, i32 1, i32 %sd
ret i32 %r
}
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJzElNFunDoQhp9muLGCzBgwXHCx2RXSeQxjG_CRwSs8bJM8fQXLNknV3lSNKiHQwDfDP781o2J0w2xtA8UzIBrSL2-v3wARikuiVhrD0hwvky6Y12YkukYQJ8AWsB2C6YKnNCwDYPsG2CrxcjN1ZyLwE5T8uPjJ2N7NljmBDHLeh5ABVnuExQhYM5DPwE9si6NhIC4sGndj78iZ4QOg_bvT05VFTw8mmg3KHtByL2K91cRctudtwCd6C-4Zi_1RaNm0y8t2_4Vw_EvCB_sHwrPPHfxe-Afrv-wY7kK18v5R0PvblMbJzakTH3z66DXW_8hu-sR8jduJaYSpRa0S22RSlJks6rpMxobrvuqlVrIq8irPuSxVxbXsFde6z_sycQ1yLHjGy6zgpShSw63AUla1LmUhbAk5t5NyPt09DsuQuBhX22SYSYmJV5318RjjDQFxcnMkHabOzXabaDwD4uRitOYpXMlN7k2RC_Mx7UuzpT116xC3k3SR4vu_yJHfl8R_c6TzUbO4sHOYppWsYVdFZJeZucjmQGxUs_HWJOvif14Zjsa1S3WYANtd6P3xdF3C_1YTYLs3FgHbo7dbg98DAAD__8zsRHg">