<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/140481>140481</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
wrong code at -O{s,2,3} on x86_64-linux-gnu
</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>
Compiler Explorer: https://godbolt.org/z/KGW6a53xf
It appears to be a regression from 16.0.0, and affects 17.0.1 and later.
```
[590] % clangtk -v
clang version 21.0.0git (https://github.com/llvm/llvm-project.git fb86b3d96b73f4e628288b180ef4e038da8b7bc1)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /local/home/suz/suz-local/software/local/clang-trunk/bin
Build config: +assertions
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
Found CUDA installation: /usr/local/cuda, version 12.1
[591] %
[591] % clangtk -O1 small.c; ./a.out
[592] %
[592] % clangtk -O3 small.c
[593] % ./a.out
Aborted
[594] %
[594] % cat small.c
int a = 1, b, c;
int main() {
b = -5001001 * a + 5001000;
while (b >= 5001001)
b = a + 5001000;
c = -5001000 * b - 5001001;
if (5001000 * c >= b)
__builtin_abort();
return 0;
}
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJysVE1v4zYQ_TXjy8ACSX1YPugg26tF0cMe2qLHgCIpmQ1NGiSVpPn1BSXLMbJtgaILGDQ8fPPem_FweAh6tEo1UB6gPG34FM_ON-9nZaWzY5g2vZN_Nkd3uWqjPH55uxrnlYe8xXOM1wB5C6wD1o1O9s7EzPkRWPcOrPv56-8VL_O3AUgLpP0pIr9eFfcBo8NeIUevRq9C0M7i4N0FaZWRjAA7IrcS-TAoEQPSXUYyOocMj8pnuBBCRW4f0kJ5KPcEyhMCK1EYbsf4jNsXIO38A1-Un3UYTRKjjgis_lSBjuepz4S7AOuMeVm_tlfv_lAiZilr6Ouqz-W-6nf5UKiK1ayue1oTNRSK5LXkdb_rBQW2B9L-yv2oYmrWW109VcV2ss_Wvdqt0XZ62452SqCzV1zixUllEvTqgn5LDbMhcmOUPOm538mOE9wA687uooB1YXpfzu16EdwQX7lXD9i5_m30k30G1vXaAmkPkzYShbODHhfqAw9B-aidDUDazk1WouBWasmjwq_HI-rFDk-Ym50p-CSk-9Q9IYB1tzI_ymMdpT-akAFpf1FGiajk_2c63k1dJhN1SslbzCA_QEEuVfEo9o-Ipb7jb6f2X8ysf8gkeZrxdSQpy-g6wnQd4e8C95n-RjFcuDGZgPyAGbCOZ26KawL7zMC-Z8jvDDdMvmIe6dre-ajkiik-E98DgscHQm0jcoT8hDRV2acjWb1dXbi2wGpge4RdCiL2M3pbEkIJoQisTQTsgEuELMn4etZGpWeb8F9Syi1jeWuIK9PfJaN4FCGzSI_bO8WC0kPif8SIVav_UHl66idtorZPPLVoqWbV8SpO3uJNF3anx021kU0u9_meb1RDd8WuIkXJqs25YQNjBVecyopSqQiVpej3XKiCkarMyUY3jLCSlLRmNMUyRoUQAxFM5oJwoqAg6sK1ydLKSlt4o0OYVEMLUtR0Y3ivTJjXPGNWveJ8CyxNx8Y3857rpzFAQYwOMXzQRB2Nal69syMKJxXyiNtvsDsEYEcG7JjD7oTO4ucHtpm8af7bigXWzb5CepyL8ZeG_RUAAP__69nxMA">