[Bug 1899114] Re: internal compiler error: SSA corruption
Matthias Klose
1899114 at bugs.launchpad.net
Fri Oct 9 11:21:02 UTC 2020
confirmed, and fixed in focal. will be updated when we update gcc-10 in
focal again.
** Also affects: gcc-10 (Ubuntu Focal)
Importance: Undecided
Status: New
** Changed in: gcc-10 (Ubuntu Focal)
Status: New => Triaged
** Changed in: gcc-10 (Ubuntu)
Status: New => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-10 in Ubuntu.
https://bugs.launchpad.net/bugs/1899114
Title:
internal compiler error: SSA corruption
Status in gcc-10 package in Ubuntu:
Fix Released
Status in gcc-10 source package in Focal:
Triaged
Bug description:
Ubuntu version: 20.04.1 LTS
GCC version: gcc-10 (Ubuntu 10.2.0-5ubuntu1~20.04) 10.2.0
Minimal preprocessed source code to reproduce:
```c
a() {
int b;
__sigsetjmp();
for (;;) {
if (b)
b = c();
d();
}
}
```
Command to reproduce: `gcc-10 -O3 -c rofl.c` gives the following
error:
```
rofl.c:1:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
1 | a() {
| ^
rofl.c: In function ‘a’:
rofl.c:3:3: warning: implicit declaration of function ‘__sigsetjmp’ [-Wimplicit-function-declaration]
3 | __sigsetjmp();
| ^~~~~~~~~~~
rofl.c:6:11: warning: implicit declaration of function ‘c’ [-Wimplicit-function-declaration]
6 | b = c();
| ^
rofl.c:7:5: warning: implicit declaration of function ‘d’ [-Wimplicit-function-declaration]
7 | d();
| ^
Unable to coalesce ssa_names 2 and 4 which are marked as MUST COALESCE.
b_2(ab) and b_4(ab)
during RTL pass: expand
rofl.c:1:1: internal compiler error: SSA corruption
1 | a() {
| ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-10/README.Bugs> for instructions.
```
I tried reproduce with a recent snapshot. Since gcc-snapshot in focal
is actually older than gcc-10, I tried it under groovy instead. And
indeed, I was able to reproduce in groovy's gcc-snapshot ( 11.0.0
20200917 (experimental) [master revision
c12facd2288:cb0617a790f:9fcedcc39153cb3cfa08ebab20aef6cdfb9ed609])
using a slightly different repro:
```c
a;
b() {
int c, d;
__sigsetjmp();
for (; a;)
for (; d;) {
if (c)
c = e();
f();
}
}
```
This file, when compiled with gcc-snapshot, leads to the following
output:
```
rofl11.c:1:1: warning: data definition has no type or storage class
1 | a;
| ^
rofl11.c:1:1: warning: type defaults to 'int' in declaration of 'a' [-Wimplicit-int]
rofl11.c:2:1: warning: return type defaults to 'int' [-Wimplicit-int]
2 | b() {
| ^
rofl11.c: In function 'b':
rofl11.c:4:3: warning: implicit declaration of function '__sigsetjmp' [-Wimplicit-function-declaration]
4 | __sigsetjmp();
| ^~~~~~~~~~~
rofl11.c:8:13: warning: implicit declaration of function 'e' [-Wimplicit-function-declaration]
8 | c = e();
| ^
rofl11.c:9:7: warning: implicit declaration of function 'f' [-Wimplicit-function-declaration]
9 | f();
| ^
Unable to coalesce ssa_names 3 and 4 which are marked as MUST COALESCE.
c_3(ab) and c_4(ab)
during RTL pass: expand
rofl11.c:2:1: internal compiler error: SSA corruption
2 | b() {
| ^
0x185ffa7 internal_error(char const*, ...)
???:0
0xe92b7d coalesce_ssa_name(_var_map*)
???:0
0xe33007 rewrite_out_of_ssa(ssaexpand*)
???:0
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <file:///usr/share/doc/gcc-snapshot/README.Bugs> for instructions.
```
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gcc-10/+bug/1899114/+subscriptions
More information about the foundations-bugs
mailing list