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

    <tr>
        <th>Summary</th>
        <td>
            [NewGVN] wrong code at O3 with -mllvm -enable-newgvn
        </td>
    </tr>

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

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

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

<pre>
    It appears to be a recent regression as it doesn't reproduce with 16.0.0. 

Compiler Explorer: https://godbolt.org/z/xqjvYxfoE

```
[542] % clangtk -v
clang version 17.0.0 (https://github.com/llvm/llvm-project.git 09d6ee765780837d5156ac81f968465bdcec73ba)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /local/suz-local/opfuzz/bin
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/11
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/12
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/12
Candidate multilib: .;@m64
Selected multilib: .;@m64
[543] % 
[543] % clangtk -O3 -mllvm -enable-newgvn small.c
[544] % ./a.out
Aborted
[545] % clangtk -O3 small.c; ./a.out
[546] % 
[546] % cat small.c
int a, e, *f;
char b;
volatile int c, d;
int main() {
  int g = 1;
 L:
  if (!b)
    while (d && a)
      g++;
  if (c) {
    if (g) {
 int *i;
      *i = e;
    }
    *f = 0;
    goto L;
  }
 if (!g)
    __builtin_abort();
  return 0;
}
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0VU2P4zYM_TXKhYhhS7HiHHLIx3qxQLF7aFGgp4E-GEe7ipRKcpLOry9kT7zJYFCgQDswPBH5-PhEU5SI0XQOcU3qLan3M9Gnow_r1yM67V0X-5n0-q_1lwTifEYRIiQPEkFAQIUuQcAuYIzGOxARTALtMTpCl9l1Dl73CuFq0hEqXpRFWQAp96TcjO-dP52NxQCfbmfrAwbCNnBM6RwJ2xDaEtp2XktvU-FDR2j7Smh7-_P75Y_bwX96ZCK8fHvGZb2tF5TUeyC0BmWF69IPmF9G77CGC4ZBd7XMwoDQ5l1mk469LJQ_Edpae7n_m5-D_44qFZ1JUK40R1zyetmUDVvquqq5UE11WPFmwWupFaolk4LQ1Zj7NxE6THmft4a_8MW8dz-cv7q5Na6_zTvXv-GOAYWGk9doM_rso7mNri8uJmEt6r0ZCpZ1eSUsoW3sX-f33_586F9zwaRxY2Dre6dBCaeNFgnh824HZiQTyXj3RtbHkCmNzEVQKpd8lPpTIm2r6n_gpCPnr2hRJdT_CdluknbqbTI5im2gIGxLFuWJL96l_CfQ0FXs3lUf2aZO-8ZgfsrdAnN0QlqcO7x2FwfxJKwt1EPw4h5cENqKwvdpdG6kDwn1A7L-KM2dkG3fEwwx_AO5k02J9CzIuASC0B1gfhG6OeQSjIfmKALIaXnx-ZNYhByiMlpPvmw6CeMIbQhdAVm-2WEAd0DYHqoJDb_kI3cHHGCIquR0YgAArsecitBGA6GcUA7iyQ_QEbrND9s-U6l3Cu727tmehRG6MQ_x-S-bBrn45CDL_cOCbg4DpnzCdD75vLXJ9DNo2mT3tImXF9kbm4x7EfnTj9V7IAiY-uAe0kyM0_Sb6TXTK7YSM1xXvOENr0vOZse1lkrREtWhFrwUUi6rSnDJV1jSuj5oOTNrWlJW8qqmFVsuWLHiQjCqWNOwQ6VqThYlnoSxRe7qPI5nJsYe15wxxmdWSLRxuEYodXiFwUlonsGzsB7mpuy7SBalNTHFnyzJJDvcP1_x-vn3r7k1r8G7DpTXCCLBNzZeIB-ep1kf7PrfzW1C20FcJLQdxP8dAAD__7dHAbI">