<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/62175>62175</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
wrong code at -O1 and above 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>
It appears to be a recent regression as it doesn't reproduce with 16.0.0.
Compiler Explorer: https://godbolt.org/z/M11PYj8sv
```
[662] % clangtk -v
clang version 17.0.0 (https://github.com/llvm/llvm-project.git e779d54d2137c918572f4a70bf5c9341500fab6b)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /local/suz-local/opfuzz/bin
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/10
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/11
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6.5.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.5.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/11
Candidate multilib: .;@m64
Selected multilib: .;@m64
[663] %
[663] % clangtk -O0 small.c; ./a.out
[664] %
[664] % clangtk -O1 small.c
[665] % ./a.out
Floating point exception
[666] %
[666] % cat small.c
int a, b = 30;
int main() {
unsigned c = 3;
for (a = 1; a; a--)
b = (-~c << b) * a;
b = -1 / ~-b;
return 0;
}
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0lc2O4zYMx59GvhA2ZPn74EMmqYs9FC3QXnoqJItxtKtIhiTPpHPYZy_kfEw6HRQoOgECJRbJH_9iZJJ7ryaD2JPqiVS7hC_hYF3_ekAjrZn8kggr_-y_BODzjNx5CBYEAgeHI5oADieH3itrgHtQAaRFbwhroml2Vi4jwosKB8jrjGY0A0J3hG7O69YeZ6XRwQ-nWVuHjhQbOIQwe1JsCBsIGyYrhdUhs24ibHglbPgpz3_5_Wvrn-9JpKaXz_mxeqprRqodEFbBqLmZwjdILyHrMzyjW3XnTRQGhLXvMqtwWEQ22iNhg9bP1690dvYrjiGbVABsmk5WpWR50Yxd3lYN25e8oWJfjV1R5hWley5qQVh3zv0bdxOGeM5TW_9Rl-livhn7YlKtzHJKJ7Nc_A4OuYSjlaij92y9Op1NX4wPXGuUO7UWLOqyI9eEDX55Ta-_7bxfXmPBhDLnwMEuRsLIjVSSB4Qft1tQZxgPypoLbPEuIpWIRRhHwgZVt_WdQDa0_xN4Ofs9MqcPYOafz6wfgMyq7AGnbx6AfIzSy3X6FTWOAeWn_Ofbm7LjooOKUcUGMlI8kZIe6_Jdyn9zWrtJce0mH-3dOszPFPyRa52NpHiCjLCBZ3YJdzHlB5zyn5z8xnlzq65u77iDtjwoM8FslQmApxHntWxvofUHWW97Iw9_zxYpnLAtCCDFDgoaC3KzHLkyhLWEdUCayz7AYtZRImE8x9xCAPbWxfbKV0MeC8PXJU1vbREALskIa9PvkbElxRbEmoVt1oir69kxzeOdgO-puDM5DIsz8CaYNLuPJ8S6JrIvZFd0PME-r9u8YTWlRXLohZBFXUlZdQWTeyZQUNHRom7rvJRjJRLVM8oKWuZNTmldFhk2KKqyY2PT8I7KnJQUj1zpLM6MOL4S5f2Cfc3ypko0F6j9OnYZM_gCq5GwOLMS169zRiyTJyXVygf_RgkqaOxfnDUTjFYi8LBeF24kcGGfEayB9-9Fsjjd_7fxFtt-1ORjg4qa_woAAP__qzVshg">