<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/121700>121700</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/eJzEk8-OmzAQxp9muFhEZvhnHzhkkyL11Gcw2AmuDI48ZpvN01dm2e2qh_ZSbSUEgu9j_JsZfYrIXhdjOqifAFHH8f54-QGIUJ8ztcbJh27_mA1ev3RTjDeC8gjYA_ZXrwfv4sGHK2D_AOyVqttWDF8uwI_Q8P3iR20udjHMCgYVV1rnNLmctH3OaVROBQ4okoj1HVAyaJ-AH1l6J82gPLPkZe-OE8urd4N7NUxu10knA77p4bHpSus33SV9K5QswcRdCI9E3Z7T_e_IxSci33dicn9A_jDub2u8rTHt6V-tYUeiYOaPTNX_GOFnTDDTXallKVVmuqItGy6rRrTZ1JlyrLBsTV1KOTTSNFKKSlWjwIsoG15ntkOONS94XTRlge1BiuKiJa-FGJtRVBIqbmZl3cG55zllJ7NEq-kKLFrOM6cG42hPZLJAebQLxdHPg11MCieeAHG2REbn_hbtbB8qWr_swQ1d-i0f1itBxZ2lSL_Oija6Le9fF4qnvWZ9Zic_z2s0mt1UjCYszBJbfGSTWrQzOluD-z39Nk7rcBj9DNhvoK-P_Bb8dzNGwH5rjAD7vbfnDn8GAAD__3LtPyk">