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

    <tr>
        <th>Summary</th>
        <td>
            [InstCombine] ((A&B)^C)|B --> C|B
        </td>
    </tr>

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

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

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

<pre>
    https://alive2.llvm.org/ce/z/zSGSor
```
define i32 @src(i32 %0, i32 %1, i32 %2) {
%3:
  %4 = and i32 %1, %0
  %5 = xor i32 %4, %2
  %6 = or i32 %5, %1
  ret i32 %6
}
=>
define i32 @tgt(i32 %0, i32 %1, i32 %2) {
%3:
  %4 = or i32 %2, %1
  ret i32 %4
}
Transformation seems to be correct!
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJytks2SnCAQx58GL9RMQbc4zsHDju6mct68ACg6pFC2ADcfTx-knMxmKpVTqlrptv82v4ZWbvjRXGN8CwSfCLwkk9a8azha-z4fnZ_Sl16n18_tef306jxhHWFPpGK75XDQo1k0NQiUlCz4nkCdAxCMQEt3n3_wgcCZktNlrwcCN4Yc0C1fUoIdlcvwx8-54F0ksui78zdRuYvgg6jKortG7Bp-03gdb7lqxzl1u4Mdwee_NRmn-L-avKPBP9DKB7QvXi5hdH6W0biFBq3nQKOjStPeea_7xMcfbqsYGhzOeJZFNNHqhojL5yXE1s0qtUZElzaqkyXU6pLYiXhut-XUXujhkE6CtptfrN4-zM1k4nVVx97NKdimZ18Ob959zSwvJoRVh-QIwatzcW04IsKJKxh4iQyxVqysmRxlVY1iGKrCSqVt2CgJwKK_0Vwi-Ym0MA0wAFZCzZEDx-NYo0J1LivOAEvN0yXpWRr7e5gL32QktU4hJa0JMdyTMgQzLTofylZfrvHqfBPGaFW_FHnrJqP_AgRV19Q">