public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/110370] New: wrong code on x86_64-linux-gnu
@ 2023-06-22 18:39 zhendong.su at inf dot ethz.ch
0 siblings, 0 replies; only message in thread
From: zhendong.su at inf dot ethz.ch @ 2023-06-22 18:39 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110370
Bug ID: 110370
Summary: wrong code on x86_64-linux-gnu
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: zhendong.su at inf dot ethz.ch
Target Milestone: ---
Similar to PR 110369, this test also uses a number of non-default flags. It is
a regression from 10.*, and affects 11.* and later.
Compiler Explorer: https://godbolt.org/z/d1T6vh7sf
[782] % gcctk -v
Using built-in specs.
COLLECT_GCC=gcctk
COLLECT_LTO_WRAPPER=/local/home/suz/suz-local/software/local/gcc-trunk/bin/../libexec/gcc/x86_64-pc-linux-gnu/14.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../gcc-trunk/configure --disable-bootstrap
--enable-checking=yes --prefix=/local/suz-local/software/local/gcc-trunk
--enable-sanitizers --enable-languages=c,c++ --disable-werror
--disable-multilib
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 14.0.0 20230622 (experimental) [master r14-924-gd709841ae0f] (GCC)
[783] %
[783] % gcctk -O2 -fno-tree-copy-prop -fira-loop-pressure -ftracer
-fno-tree-vrp -fno-tree-forwprop -fno-tree-ccp -fno-code-hoisting -fno-gcse
-fno-tree-dominator-opts -fno-tree-fre -fno-tree-pre -fsel-sched-pipelining
-fno-tree-ter -fschedule-insns -fselective-scheduling2 small.c
[784] % ./a.out
Floating point exception
[785] %
[785] % gcctk -O2 small.c; ./a.out
[786] %
[786] % cat small.c
int printf(const char *, ...);
int a;
long b;
short c = 1;
unsigned long d = 5;
int main() {
short f = 1;
int g, i = 0;
unsigned h = 3, j = 1;
for (; i < 4; i++) {
int k, m = c * (f % d);
long l = f & d;
if (d || !j || g) {
k = g = l % h | b;
b = (j < b) & (f > k);
if (!m)
printf("%d", g);
if (!c)
printf("%d", a);
}
g = k;
b = l;
a = m;
}
return 0;
}
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-06-22 18:39 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-06-22 18:39 [Bug tree-optimization/110370] New: wrong code on x86_64-linux-gnu zhendong.su at inf dot ethz.ch
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).