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

    <tr>
        <th>Summary</th>
        <td>
            Missed optimization: conditional store of zext(i1) not folded to constant zero when i1 is known false
        </td>
    </tr>

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

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

    <tr>
      <th>Reporter</th>
      <td>
          GINN-Imp
      </td>
    </tr>
</table>

<pre>
    The following reduced IR is derived from https://github.com/c3lang/c3c/blob/125436d23ef9b7f69837a00ffec168c52839a1dc/src/compiler/bigint.c#L777

Godbolt: https://godbolt.org/z/jTWv4o5n8
Missed optimization: `store i8 %4, ptr %2, align 1` --> `store i8 0, ptr %2, align 1`
alive2 proof: https://alive2.llvm.org/ce/z/ZQ5aad

```llvm
define void @src(ptr writeonly captures(none) initializes((0, 1)) %0, i1 %1, ptr writeonly captures(none) %2) local_unnamed_addr #0 {
  %4 = zext i1 %1 to i8
  store i8 %4, ptr %0, align 1
  br i1 %1, label %6, label %5

5: ; preds = %3
  store i8 %4, ptr %2, align 1
 br label %6

6:                                                ; preds = %5, %3
  ret void
}
```

opt-trunk -O3 generates:
```llvm
define void @src(ptr writeonly captures(none) initializes((0, 1)) %0, i1 %1, ptr writeonly captures(none) %2) local_unnamed_addr #0 {
  %4 = zext i1 %1 to i8
  store i8 %4, ptr %0, align 1
  br i1 %1, label %6, label %5

5: ; preds = %3
  store i8 %4, ptr %2, align 1
  br label %6

6: ; preds = %5, %3
  ret void
}
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJzsVc2O2zYQfprRZeAFRYqSfNDB262DBdoULQIU6CWgxJHNhCYFkrIbP31BepNuEuwC7aWX2oI0oyHn--ZHHBWjOTiiAeQ9yIdKrenow_Dm8e3bzeNpqUavPw3vjoSzt9ZfjDtgIL1OpPHxNzQRNQVzJo1z8Cc8prREEDvge-D7g0nHdbyb_An4fhJWuUMRJuD70foR-L7mshGt5oLm7djN7bYXnWJsnmmq236SvBdbVeu8I4Z8n_xpMZZCdmEOxqW7Cbj4qes6YDtguzdej94mELtvydwMdz5kElfg-w_vfj83Xroe2O5nEyNp9EsyJ3NVyXiXXUDLYvKB0PQIXDbAf8AlhSzzLCtrDg5raBluNiB-_GoDe3k1sJ2y5kwcl-D9_D3bm_XO2vPpifFET7T_-FUqpW_RZlflyguB7TTNxhGevdEIDSsp6zOFSzCJvLOfcFJLWgNF4L3zjoBv0TiTjLLmWt4C7wvzGvg2W4HLops6i_XnoF71eIt4i9ZPyr5fnVMn0u-V1jkZgiF098B2WHKKIB7wSn-mzwiYPJq-2F9KPnuezrxwDM_5WTWSzVr7lSZvSZOlsuIel0A6FnjgUrwKyL8BHMNzkOK2zW7_4e87FjLjfGETKJVaZoDu4Xm9b5B-SZsUVvcRN78IPJCjoBKVLvq_N_6z3nixOf51tSs9CL0VW1XRUHdNK-tatl11HGTTy7lrqdNKqka0XLdtLahmkvckp6YyA2dcMsna8u_u5rmdZt2MNetpFpKgYXRSxn45aioT40pDLfpWtFWJI5bhwLmjCxYrcJ5nRRjyps24HiI0zJqY4t9ukkmWhhfO1ck7bbKi7FNa_VzqDLw3ubnQ-ZRHjiadSz55F5NyCa8UPF6O5HJJTcSPzl8czspGqtZgh1cGUPkMbo_NEvwHmhLwfYkn5kl0C_g88L8CAAD__zMECls">