public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug lto/94202] New: lto1: internal compiler error: in do_estimate_edge_time, at ipa-inline-analysis.c:222
@ 2020-03-17 16:04 sbergman at redhat dot com
2020-03-17 16:10 ` [Bug lto/94202] [10 Regression] ICE " marxin at gcc dot gnu.org
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: sbergman at redhat dot com @ 2020-03-17 16:04 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94202
Bug ID: 94202
Summary: lto1: internal compiler error: in
do_estimate_edge_time, at ipa-inline-analysis.c:222
Product: gcc
Version: 10.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: lto
Assignee: unassigned at gcc dot gnu.org
Reporter: sbergman at redhat dot com
CC: marxin at gcc dot gnu.org
Target Milestone: ---
At least with current GCC 10 trunk on Linux x86-64:
> $ cat test.cc
> struct S1 {
> virtual ~S1();
> virtual void v();
> };
> struct S2: S1 {};
> struct S3: S1, S2 { void v(); };
> struct S4: S3 { void v(); };
> void S4::v() { S3::v(); }
> struct R {
> S1 * m;
> void f(S2 * x) {
> static_cast<S1 *>(x)->v();
> x->v();
> m = x;
> }
> };
> void f() {
> R r;
> r.f(new S4);
> r.f(new S3);
> }
> $ g++ -flto -fPIC -O2 -shared test.cc
> test.cc:6:8: warning: direct base ‘S1’ inaccessible in ‘S3’ due to ambiguity [-Winaccessible-base]
> 6 | struct S3: S1, S2 { void v(); };
> | ^~
> during IPA pass: inline
> lto1: internal compiler error: in do_estimate_edge_time, at ipa-inline-analysis.c:222
> 0x63483d do_estimate_edge_time(cgraph_edge*, sreal*)
> ../../src/gcc/ipa-inline-analysis.c:222
> 0xa6edc0 do_estimate_edge_size(cgraph_edge*)
> ../../src/gcc/ipa-inline-analysis.c:318
> 0x15bb63e estimate_edge_size
> ../../src/gcc/ipa-inline.h:78
> 0x15bb63e inline_small_functions
> ../../src/gcc/ipa-inline.c:2052
> 0x15bb63e ipa_inline
> ../../src/gcc/ipa-inline.c:2685
> 0x15bb63e execute
> ../../src/gcc/ipa-inline.c:3087
> Please submit a full bug report,
> with preprocessed source if appropriate.
> Please include the complete backtrace with any bug report.
> See <https://gcc.gnu.org/bugs/> for instructions.
> lto-wrapper: fatal error: /data/sbergman/gcc/trunk/inst/bin/g++ returned 1 exit status
> compilation terminated.
> /usr/bin/ld: error: lto-wrapper failed
> collect2: error: ld returned 1 exit status
What makes that
> gcc_assert (chk_size == size && chk_time == time
> && chk_nonspec_time == nonspec_time
> && chk_hints == hints);
trigger is chk_hints=32 (i.e., INLINE_HINT_declared_inline) vs. hints=33 (i.e.,
INLINE_HINT_indirect_call|INLINE_HINT_declared_inline).
I don't know whether this is related to bug 92508, but that is claimed to be
fixed since November 2019.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug lto/94202] [10 Regression] ICE in do_estimate_edge_time, at ipa-inline-analysis.c:222
2020-03-17 16:04 [Bug lto/94202] New: lto1: internal compiler error: in do_estimate_edge_time, at ipa-inline-analysis.c:222 sbergman at redhat dot com
@ 2020-03-17 16:10 ` marxin at gcc dot gnu.org
2020-03-17 16:10 ` marxin at gcc dot gnu.org
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-03-17 16:10 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94202
Martin Liška <marxin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|lto1: internal compiler |[10 Regression] ICE in
|error: in |do_estimate_edge_time, at
|do_estimate_edge_time, at |ipa-inline-analysis.c:222
|ipa-inline-analysis.c:222 |
Known to fail| |10.0
Known to work| |9.3.0
Ever confirmed|0 |1
Status|UNCONFIRMED |ASSIGNED
Target Milestone|--- |10.0
Assignee|unassigned at gcc dot gnu.org |hubicka at gcc dot gnu.org
Last reconfirmed| |2020-03-17
--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> ---
Thank you for the report. Yes, it's another issue caused by the revision
r10-4624-gb914768c1968d924.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug lto/94202] [10 Regression] ICE in do_estimate_edge_time, at ipa-inline-analysis.c:222
2020-03-17 16:04 [Bug lto/94202] New: lto1: internal compiler error: in do_estimate_edge_time, at ipa-inline-analysis.c:222 sbergman at redhat dot com
2020-03-17 16:10 ` [Bug lto/94202] [10 Regression] ICE " marxin at gcc dot gnu.org
@ 2020-03-17 16:10 ` marxin at gcc dot gnu.org
2020-03-19 23:42 ` [Bug ipa/94202] " cvs-commit at gcc dot gnu.org
2020-03-19 23:43 ` hubicka at gcc dot gnu.org
3 siblings, 0 replies; 5+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-03-17 16:10 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94202
Martin Liška <marxin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P1
Keywords| |ice-on-valid-code
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug ipa/94202] [10 Regression] ICE in do_estimate_edge_time, at ipa-inline-analysis.c:222
2020-03-17 16:04 [Bug lto/94202] New: lto1: internal compiler error: in do_estimate_edge_time, at ipa-inline-analysis.c:222 sbergman at redhat dot com
2020-03-17 16:10 ` [Bug lto/94202] [10 Regression] ICE " marxin at gcc dot gnu.org
2020-03-17 16:10 ` marxin at gcc dot gnu.org
@ 2020-03-19 23:42 ` cvs-commit at gcc dot gnu.org
2020-03-19 23:43 ` hubicka at gcc dot gnu.org
3 siblings, 0 replies; 5+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-03-19 23:42 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94202
--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jan Hubicka <hubicka@gcc.gnu.org>:
https://gcc.gnu.org/g:f7dceb4e658399edfbf8dd0e08ce0c686bfa2c9d
commit r10-7282-gf7dceb4e658399edfbf8dd0e08ce0c686bfa2c9d
Author: Jan Hubicka <jh@suse.cz>
Date: Fri Mar 20 00:42:13 2020 +0100
Fix cgraph_node::function_symbol availability compuattion [PR94202]
this fixes ICE in inliner cache sanity check which is caused by very old
bug in visibility calculation in cgraph_node::function_symbol and
cgraph_node::function_or_virtual_thunk_symbol.
In the testcase there is indirect call to a thunk. At begining we correctly
see that its body as AVAIL_AVAILABLE but later we inline into the thunk and
this turns it to AVAIL_INTERPOSABLE.
This is because function_symbol incorrectly overwrites availability
parameter
by availability of the alias used in the call within thunk, which is a
local
alias.
gcc/ChangeLog:
2020-03-19 Jan Hubicka <hubicka@ucw.cz>
PR ipa/94202
* cgraph.c (cgraph_node::function_symbol): Fix availability
computation.
(cgraph_node::function_or_virtual_thunk_symbol): Likewise.
gcc/testsuite/ChangeLog:
2020-03-19 Jan Hubicka <hubicka@ucw.cz>
PR ipa/94202
* g++.dg/torture/pr94202.C: New test.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug ipa/94202] [10 Regression] ICE in do_estimate_edge_time, at ipa-inline-analysis.c:222
2020-03-17 16:04 [Bug lto/94202] New: lto1: internal compiler error: in do_estimate_edge_time, at ipa-inline-analysis.c:222 sbergman at redhat dot com
` (2 preceding siblings ...)
2020-03-19 23:42 ` [Bug ipa/94202] " cvs-commit at gcc dot gnu.org
@ 2020-03-19 23:43 ` hubicka at gcc dot gnu.org
3 siblings, 0 replies; 5+ messages in thread
From: hubicka at gcc dot gnu.org @ 2020-03-19 23:43 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94202
Jan Hubicka <hubicka at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution|--- |FIXED
--- Comment #3 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
Fixed. Probably not important enough to backport even though the bug is present
in all active branches.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-03-19 23:43 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-17 16:04 [Bug lto/94202] New: lto1: internal compiler error: in do_estimate_edge_time, at ipa-inline-analysis.c:222 sbergman at redhat dot com
2020-03-17 16:10 ` [Bug lto/94202] [10 Regression] ICE " marxin at gcc dot gnu.org
2020-03-17 16:10 ` marxin at gcc dot gnu.org
2020-03-19 23:42 ` [Bug ipa/94202] " cvs-commit at gcc dot gnu.org
2020-03-19 23:43 ` hubicka at gcc dot gnu.org
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).