[llvm-bugs] [Bug 50674] New: wrong code at -O1 and above on x86_64-linux-gnu
via llvm-bugs
llvm-bugs at lists.llvm.org
Fri Jun 11 01:24:55 PDT 2021
https://bugs.llvm.org/show_bug.cgi?id=50674
Bug ID: 50674
Summary: wrong code at -O1 and above on x86_64-linux-gnu
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: enhancement
Priority: P
Component: Scalar Optimizations
Assignee: unassignedbugs at nondot.org
Reporter: zhendong.su at inf.ethz.ch
CC: llvm-bugs at lists.llvm.org
[509] % clangtk -v
clang version 13.0.0 (https://github.com/llvm/llvm-project.git
632cbcac79065a62a306dbda7b3a6e1f315e3260)
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 -O0 small.c; ./a.out
[511] %
[511] % clangtk -O1 small.c
[512] % ./a.out
Floating point exception
[513] %
[513] % cat small.c
int a, b, f = 0;
long d = 2;
unsigned e = 1;
int main() {
long j = a;
int k = e / (- 1);
if (e) {
j = d;
d = ~((a | e) / ~k - j - ~a);
b = ~(~(1 | ~(d - a)) | (-200000000L - b));
a = ~(j - ~a);
}
if (b < 2)
goto L2;
f = 1;
L1:
L2:
a = 2 / a;
if (f < 1)
goto L1;
return 0;
}
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20210611/b3532280/attachment-0001.html>
More information about the llvm-bugs
mailing list