<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/132724>132724</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang] Miscompile at O2
</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 83619472 at `-O0/1` and 83619480 at `-O2/3`:
```c
int printf(const char *, ...);
int a, b;
int main() {
int c = 7;
float d = 0;
while (c) {
d++;
c /= 2;
a = 384 + 1;
}
float e = a + 2;
b = d + 1.442695f * (e * e * e);
printf("%d\n", b);
}
```
Compiler Explorer: https://godbolt.org/z/f5bf9os1P
Bisected to https://github.com/llvm/llvm-project/commit/17d9560294eee1eae5e2d3ac1ab84f514318409e, which was committed by @zahiraam
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyUU8uO6zYM_Rp6Q1xDouTXwotkUu-K20V_gJaUWIVjBZZypzNfX8ieJIPuLiDY8iEPH4cmx-gvi3M9VEeoTgXf0xTW3vBq_YUXKURbjMF-9H9PPqIJ1uFt9UuK2Kpadroh5IRQix8_BdAgoRbIi_2ytuJpJaBBQS1AHUBspxb7MSAOfkl73DNQa8ISE5qJVwQ6AL1hWZZAHajjlytncHx9X9kvQC1Qh9BkEDHDBkGdsNn9EM9z4IR2A8UDfJ_87DBn_c5GtEDHfNQDMAg0ZCq9MN5iqVYj0BHlwwDN6VtCtznx5vLkjhtod16pNdVddc7t5lLcdvl6PhvHl0JABFRZqN6W7ZrFeLjtyZ_q7mK_hevNz27FP_69zWF1K6gDTindYp4HDUDDJdgxzKkM6wVo-AQaztV47kKUf-0xjj46k5zFFP5P9Wm6j6UJV6Bhnn89Xj9ua_jHmQQ0mHC9-nyRje2qWlCnnXPSsascWcVG8tjqcyW1kq0WnctNvU_eTPjO-cfL9Jx8_EDQ4pMnvzJfsbC9sp3quHC9bDS1sm3ruph6Ost6VO0omTUJdtKMrrKi6QzLTrAsfE-CKqFISyIp6rJjPXaVEapt2ehmBC3clf1c5layLIWP8e56qaghXcw8ujlue0NkZl4ueRTVqVj7rffxfomgxexjiq8Qyad5W7adUZ3wTx_NPp28Kz-puK9z_9v6bqXFrO9e3a-e_gsAAP__GZgTZg">