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

    <tr>
        <th>Summary</th>
        <td>
            [clang] Miscompilation at -O2/3
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang
      </td>
    </tr>

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

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

<pre>
    This code prints 80 at `-O2/3` and 0 at `-O0/1`:

```c
int printf(const char *, ...);
int a, b;
void c(char d) { a = d; }
int main() {
  int e = 82, f = 20;
  for (; 85 + 20 + e - 187 + f; f = 65535 + 20 + e - 65637)
    if (b)
      e++;
  c(e >> 24);
  printf("%X\n", a);
}
```

Compiler Explorer: https://godbolt.org/z/6WP1aT6ba

Bisected to https://github.com/llvm/llvm-project/commit/04cd06906288dcb148de37d7c3e6c009c3e3b726, which was committed by @preames 
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyUU8uO4zgM_Br6QnQgU5asHHzIo31b7B4a2L3q5VgLxwospXt6vn4gO9MBZk4DCBDDsEqsoqlTCpfZ-w7EEcS50vc8xqWzenHhoueaMVWZ6D67tzEktNF5vC1hzgkVQ50RJHv5m4B6DpKhnh0-0wyor0Ey4Adg65FsOxbYIcx5oxqAlI1zymhHvSDQAeiEu90OaA_8-CjVJWm23-8xOLQFVgAOaI_QHlEj8DM64EeE9vzAXXWYgdSjBtgBsaT9WquosA5rTGwjRxxi6UIVHiUQ6IjE1svjC9aqXeOh_L0hpRD8tzopJG-LgsKIGIZCaZ4JRA90LOfxatFTunoF_orUfInHp0tABCT-A3Ga1_BUXHmUbYq_HN4MP8XrLUx-wddvtykufgF-wDHnWyozoR6ov0Rn4pR3cbkA9d-BevnvP7V-k0ZvHMeQvM3eYY6_QkMe72Zn4xWon6b3n9fLbYn_e5uBehuv11AC1ljH5J5JUspZUzfKed661nIvLWN7yz03Lcki6mMMdsQPXb63Ai-Pm0-Eht0Wr68-YeU67vZ8ryvf1W1DTJIQrBo7I5uWC9Mqqms1eNt6IuYH3ba1aJ03VeiIkWC8FrWqhWA75b2xzhhmROMGy6Fh_qrDtCtKiitVSOnuu5rXjRTVpI2f0rotRHbS86VMQpyrpVulm_slQcOmkHJ6UuSQp3XFNoQ4418h2XU4Ooc4l5V5rFF1X6buj31ee0xl37Y23zv6EQAA___czRN_">