| Issue |
56039
|
| Summary |
wrong code at -O3 with -mllvm -enable-newgvn
|
| Labels |
new issue
|
| Assignees |
|
| Reporter |
zhendongsu
|
It appears to be a regression from 13.0.*.
```
[541] % clangtk -v
clang version 15.0.0 (https://github.com/llvm/llvm-project.git e7c72d69ac0d504f52bed643b298b50904c6b387)
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
Selected multilib: .;@m64
Found CUDA installation: /usr/local/cuda, version 11.0
[542] %
[542] % clangtk -O3 small.c; ./a.out
[543] %
[543] % clangtk -O3 -mllvm -enable-newgvn small.c
[544] % ./a.out
Floating point exception
[545] %
[545] % cat small.c
int printf(const char *, ...);
int a, b, c = 1;
unsigned d;
void e() {
int f, g = b;
if (a)
printf("0");
while ((g || !c) && d >= b)
for (; f; f++)
;
a = b ? a % b : 0;
}
int main() {
e();
return 0;
}
```
Compiler Explorer: https://godbolt.org/z/sro3M4e6a
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs