<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/54112>54112</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
wrong code at -Os 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 regression from 12.*, and affect the trunk and 13.*.
```
[509] % clangtk -v
clang version 15.0.0 (https://github.com/llvm/llvm-project.git 53602e4c704f7461426d3981dcdca92e892eca99)
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/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/7.5.0
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Candidate multilib: x32;@mx32
Selected multilib: .;@m64
[510] %
[510] % clangtk -O1 -w small.c; ./a.out
[511] %
[511] % clangtk -Os -w small.c
[512] % ./a.out
Floating point exception
[513] %
[513] % cat small.c
int printf (const char *, ...);
volatile int e;
int a, b, c, d, f, g, h, i, j, k, l, m, n, o, *p;
int main() {
int r = 1;
short s = 1;
o = 1;
if (o) {
while (b && r) {
printf("%d\n", l);
if (h)
continue;
while (c++)
;
for (a = 0; a < 6;)
for (r = 0; r < 9; r++)
for (; a; a++)
;
s = 2;
}
for (j++; j < 1;) {
r || e;
d = r;
if (r < m) {
k = i = r;
break;
}
if (r)
r;
L:;
short u = r;
int v = 9 ^ r;
if (v)
g = f = r;
if (r && r <= u)
printf("%d", 9);
}
} else {
int *w = &r;
p = w;
}
n = e / (s ^ b);
if (b)
goto L;
return 0;
}
```
Compiler Explorer: https://godbolt.org/z/f5E4q1KaM
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy1VsuSqzYQ_Rq86TLF27Bgcccep27lprJI9ikB4jEGRISwnfn6dAuMbeyZqlTu2HJbSEenH5KaTkT2T_xdAes6zmQPSkDCgYHkheR9X4kWcikasB3TcL4ZzhZYmwHLc54qUCUHJYf2oAdtlyCmYe0M69skA2tq46P_4luR4e_AcHxIa9YW6gDr4zirn-HIpdZq-6ZlWggMS6W63nBR-R5bUalySMxUNPhQ18fL37qT4g2NMhEAvhtYDvfSjeXlGy-wPSfI3Ci0szRLWeTwEH_YiQwnGnX_yWTBFSqBcxj8FXhrdKoVp3ZdV-1wXhftMOFKyVkGjch4TehO9NV5nPre9orVNc92laQpskukrMb_fnhfX_qiy4f3d-wkVTsu3IsBo5diCKuMKQ6_bLdQjWRMYSgmsqGXRFklFIQ0RVkFYXBjoLMP_yfh5PstZfAFlCZu7c-n3XwB5ddYOm3TH7zG88qzn2XidjauGWpV0UIkMg33xfCsJvA-Q7nOBMPOJ7DzjDtfgLMXnymli29bl4v_bGxOBr_bsD5B32AwzBRpkMvZM1MM6maZ_YTKfqTqb6muSOeCXFDjfcX4Yw7qRNUq4OeUd3o_rkvdJ4rnsZSpe23E0kmUOeWxVOAeQ1oyCVMqNU2TMhDGSsOPgva_5qC1z8P0xAiekEhJZCRyEgWJkkRF4o3EgURNoiHRkhAkUG13R9swTEJOiEaAsZnGQatHG90d2DMaoC-FRP8exsXDSKXdFQtWgFNJzuFUgiLABvIBA1PAtFUORjUz_G2ru9qn6EYPfUZd5ZzIYfpgsHErB76AzyZgGF90W6xb4HNBmxUy7aNFx5G6WwgIt1w7geUVLDU40t0PFM7LNPkoPkI-mDfuhnM3amx214eJ-22iRPY3bZI92r-MPYI3W2ywjFumFcmnwR-dbJ7QARz0uurpaoAEX6aHxeid-bOKh2Dck_2g8mARGn1ch-d24wE_6hk02X_9wK_jg9JCr8k_j8V0sikohBseWB4O-Hi4o-XhvokEdoHXPb8PMLmBV_qk7UGl9yZ1evh0M3ZD2OpJugl7MrvXYUjuLRg9Su7sLwQWiD9uQJKrQbb6tE8p8aJkWfuNrxXRdHgDJbyeu1pIriulRYEnskTUyhQSc9ueKqXcf_X-tn9lv62y2M0iN2IrVamaxycpMFunWIwBpl7K97o4TcSRA5aQy9clrAZZx_-tnKQyq-8H3mPH92zbWZWxl1t5FCW2xTkPeMpD_HKXJVhy-pvE56uaJbhbMb4dcG9bfgJNQfvs71ZV7FgOtdB2Ldu1TS9Jee4lgb1xvY2X2vji5JiYa5PsoDCsZKxNSoaix8m66lV_nWRYpRct51od8rNB4dGP30veZhieflhp7bG2_l_WhTnI">