<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/64345>64345</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Wrong code at -O2 and above on x86_64-linux_gnu since 497966f7f2bbc33f79725c4aba12e4089419e3b6
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
shao-hua-li
</td>
</tr>
</table>
<pre>
Clang at -O2 and above produces the wrong code.
Bisected to 497966f7f2bbc33f79725c4aba12e4089419e3b6, which was committed by @vfdff
```console
% cat a.c
int printf(const char *, ...);
short a;
char b;
long c;
int d;
int main() {
int e = 0;
for (; e <= 9; e++) {
d &= 1;
if (a)
c = d ^= 1;
b ^= --d;
}
printf("%d\n", b);
}
%
% clang -O0 a.c && ./a.out
-1
% clang -O2 a.c && ./a.out
0
% clang -v
clang version 18.0.0 (https://github.com/llvm/llvm-project.git 5821351343eba18b39ef97cf1866f57a967a5fd0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /zdata/shaoli/compilers/ccbuilder-compilers/clang-5821351343eba18b39ef97cf1866f57a967a5fd0/bin
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/9
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/11
Candidate multilib: .;@m64
Selected multilib: .;@m64
%
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0VcuO47YS_RpqU5BAkXpxoUXbvrrIahYJkOWAL0lMaNIQKbsnXx9QdqvdaWAwASYAYbOqDutxqGLxEMzktO5RfUD1KeNrnP3Sh5n7fF55bk0mvPrWHy13E_AI-RcC3Cngwl81XBavVqkDxFnDbfFuAumVLhA-Ifxy_z2YoGXUCqKHirWsacZ2JEJISseWtaSWFRe8JLrCHatKpqloEDnCbTZyhhsPIP35bGJyIb4BqvB1VOP4HAI1-L6kd8Fb_dCSGiSPwAt5VxgX4bIYF0dEugSNIGe-ACIvKWBRFIgwRA93dJj9EoHv8gYVu2i3Yncx-VYfpDM3DpEOEQaofegBkkUDoifAOxpg9CmLDtHDZjwmO9skRA7b-uAEQAEiTUKVT14AzJjc8FTGrgOQWzwFqP7f5yPiTZ3n6smA2tPbdqcMEYJIrVB9dNv2COKZsP0IIvXTDWxfTv4Fp3vYsiYNFIgMvPBrvOPy8jOefAePP8GvjzvapKtegvEOyq7ABU6MzDFeAqIviAyIDJOJ8yoK6c-IDNZe3_7yy-L_0DIWk4lQd6SkdUkrqgUvO0GZHlkrx7JrmrFuOWtaXo8K71z_xpdJR0Rf4LVrvjZVvro_nb-53Bq3vuaTWx-4edFcwdkrbRP64oN5vZt-cSFya7U6mSWZEBn-UjxyRIbUkdYgMkh_vhirl5D2UqzGKr3kH7SJhPzH8x-Ecff4g1-dAsmdMopHDf8_HsHcc-LRePfIaQ1LYsyIxKWUiAyPit8rJUOJ_wOf5c_3-bi9X7W9v1I_I7_jntl5tdGkU_QFitQpFT431T9Cfg_03ktvb1ymeqoYZTzTfdkwzLquok0294x0JeYMNxiPHeFMtKxhumtpp5iuapGZnmBCcYdJWWNMm2KksqxVx1pFJMcMowrrMze2SN1Q-GXKTAir7puKVnVmudA2bJOCEKdvsBnTS1CfsqXfOkisU0AVtibE8O4lmmh1__s-Hz4PEu_gmc-vk1shGCf1D4-MbF1s_-_6HJFhKyE1zVbi3wEAAP__IqkIHA">