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

    <tr>
        <th>Summary</th>
        <td>
            [instcombine] fold x+umax(x, 1) to umax(x+x, 1)
        </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>
    reduces use of x
https://alive2.llvm.org/ce/z/v6z3Gi
```
define i32 @src(i32 %x) {
  %max = call i32 @llvm.umax.i32(i32 %x, i32 1)
  %add = add nuw nsw i32 %max, %x
  ret i32 %add
}

define i32 @tgt(i32 %x) {
 %add = shl nuw nsw i32 %x, 1
  %max = call i32 @llvm.umax.i32(i32 %add, i32 1)
  ret i32 %max
}
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJycUt1u4ywQfZrxDWpkBv-ECy6aL_L3HBgmCStsVwYSb59-ZeK0adW9WckSZuDMOYc5OgR3HokU1Aeoj4VO8TLNKpyi781Y9JP9rWayyVBgKRCbTmyB8gjl6yXGtwDiFbAD7LR3V8Kd99dhN81nwM4QYPcO2F2bd_G_u4OgKbcvby2d3EjMCWRQlWE2gPu8wXoBlAzaw_0iW0uDXhiIIzPa-wcmE6ZBLzsn8Av6v3yFA8qnFtra3GJdx3RjY7ixDTLoDMrgDTBTfJxqazcH7XH7-cFBPMe_OnhiDxf_nT1z838zu2r7we6T-tXbN_WPQRRWCSuF1AUp3nLZNJy3oriolnrbt7pFwduS120lSq05iUYbY2u-L5zCEquyQcm5kLjfGWOssNKQaLCSpwqqkgbt_EcqChdCIiVb3vDC6558yLlDHOnG8iEgrjGc1Yp56dM5rL5diOGzS3TR58C6MUQzDb0bCeojO03esgXwkPIs99ubomRxYp-1w0e9SLNXX3N8dvGS-p2ZBsBuZdyWl7d5-kUmAnZZZwDs7j6uCv8EAAD__1Fu6uw">