<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/121696>121696</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/aa5778bEf
```
define i8 @add-shl-sdiv-scalar0(i8 %x) {
  %sd = sdiv i8 %x, -4
  %sl = shl i8 %sd, 2
  %rz = add i8 %sl, %x
  ret i8 %rz
}

define i8 @add-shl-sdiv-scalar1(i8 %x) {
  %sd = sdiv i8 %x, -4
  %sl = shl i8 %sd, 2
  %rz = add i8 %x, %sl
  ret i8 %rz
}
```
Output:
```
define i8 @add-shl-sdiv-scalar0(i8 %x) {
  %rz = srem i8 %x, 4
  ret i8 %rz
}

define i8 @add-shl-sdiv-scalar1(i8 %x) {
  %sd = sdiv i8 %x, -4
 %sl = shl i8 %sd, 2
  %rz = add i8 %x, %sl
  ret i8 %rz
}
```

</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJzEk8GOmzAQhp9muFhEZgAbDhyySZF66jMY7ARXBkces83m6Suz7HbVQ3upthICwf8z_mZGvyKy18WYDuonQNRxvD9efgAi1OdMrXHyods_ZoPXL90U442gPAL2gP3V68G7ePDhCtg_AHulaimb4csF-BEE3y9-1OZiF8Nsw6DiSuucJpeTts85jcqpwAGbJGJ9B2wZyCfgR5beSTMozyx52bvjxPLq3eBeDZPbddLJgG96eGy60vpNd0nfCiVLMHEXwiNRy3O6_x25-ETk-05M7g_IH8b9bY23NaY9_as17EgUzPyRqfofI_yMCWa6K3VbtiozXSFLwRshZJtNncSmFCiMGaumNEagalUpsR15ISRemsx2yLHmBa-LqpB1c9CiaotRCzmi5OJioOJmVtYdnHueU3YyS7SarsBCtCJzajCO9kQmC5RHu1Ac_TzYxaRw4gkQZ0tkdO5v0c72oaL1yx7c0KXf8mG9ElTcWYr066xoo9vy_nWheNpr1md28vO8RqPZTcVowsIsscVHNqlFO6OzNbjf02_jtA6H0c-A_Qb6-shvwX83YwTst8YIsN97e-7wZwAAAP__-PM_ug">