public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug ipa/64059] New: [5 Regression] ICE: Segmentation fault in ipa-polymorphic-call.c:1593
@ 2014-11-24 17:30 trippels at gcc dot gnu.org
2014-11-24 19:04 ` [Bug ipa/64059] " trippels at gcc dot gnu.org
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: trippels at gcc dot gnu.org @ 2014-11-24 17:30 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64059
Bug ID: 64059
Summary: [5 Regression] ICE: Segmentation fault in
ipa-polymorphic-call.c:1593
Product: gcc
Version: 5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: ipa
Assignee: unassigned at gcc dot gnu.org
Reporter: trippels at gcc dot gnu.org
Reduced from PR63671 comment 14:
markus@x4 ~ % cat tramp3d-v4.ii
class A;
class B
{
public:
A *operator->();
};
class C
{
public:
virtual void m_fn1 ();
};
class A
{
public:
C *m_fn2 ();
};
class D
{
public:
void
m_fn3 ()
{
list_m->m_fn2 ()->m_fn1 ();
}
B list_m;
};
class F
{
public:
D m_fn4 ();
};
class G
{
public:
F m_fn5 (int, int);
};
class H
{
public:
void
m_fn6 ()
{
fieldEngine_m.m_fn5 (0, 0).m_fn4 ().m_fn3 ();
}
G fieldEngine_m;
};
void
fn1 (H a)
{
a.m_fn6 ();
}
markus@x4 ~ % g++ -r -nostdlib -O2 -flto -fno-devirtualize tramp3d-v4.ii
tramp3d-v4.ii: In member function ‘D::m_fn3()’:
tramp3d-v4.ii:53:1: internal compiler error: Segmentation fault
}
^
0xc7542f crash_signal
../../gcc/gcc/toplev.c:359
0xac92b8 tree_check
../../gcc/gcc/tree.h:2763
0xac92b8 ipa_polymorphic_call_context::get_dynamic_type(tree_node*, tree_node*,
tree_node*, gimple_statement_base*)
../../gcc/gcc/ipa-polymorphic-call.c:1593
0xae4c04 ipa_analyze_call_uses
../../gcc/gcc/ipa-prop.c:2173
0xae4c04 ipa_analyze_stmt_uses
../../gcc/gcc/ipa-prop.c:2192
0xae4c04 ipa_analyze_params_uses_in_bb
../../gcc/gcc/ipa-prop.c:2232
0xae4c04 analysis_dom_walker::before_dom_children(basic_block_def*)
../../gcc/gcc/ipa-prop.c:2316
0x12202d7 dom_walker::walk(basic_block_def*)
../../gcc/gcc/domwalk.c:188
0xaeb839 ipa_analyze_node(cgraph_node*)
../../gcc/gcc/ipa-prop.c:2373
0x125c77f ipcp_generate_summary
../../gcc/gcc/ipa-cp.c:4254
0xbba939 execute_ipa_summary_passes(ipa_opt_pass_d*)
../../gcc/gcc/passes.c:2137
0x8d39fe ipa_passes
../../gcc/gcc/cgraphunit.c:2074
0x8d39fe symbol_table::compile()
../../gcc/gcc/cgraphunit.c:2187
0x8d5177 symbol_table::finalize_compilation_unit()
../../gcc/gcc/cgraphunit.c:2340
0x6ac91b cp_write_global_declarations()
../../gcc/gcc/cp/decl2.c:4688
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions
>From gcc-bugs-return-468409-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Mon Nov 24 17:43:16 2014
Return-Path: <gcc-bugs-return-468409-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 14552 invoked by alias); 24 Nov 2014 17:43:15 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 14498 invoked by uid 48); 24 Nov 2014 17:43:07 -0000
From: "hjl.tools at gmail dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug tree-optimization/64058] [5 Regression] Performance degradation after r216304
Date: Mon, 24 Nov 2014 17:43:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: tree-optimization
X-Bugzilla-Version: 5.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: hjl.tools at gmail dot com
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 5.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_status cf_reconfirmed_on cc target_milestone short_desc everconfirmed
Message-ID: <bug-64058-4-DZMgjJCMiw@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-64058-4@http.gcc.gnu.org/bugzilla/>
References: <bug-64058-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-11/txt/msg02881.txt.bz2
Content-length: 676
https://gcc.gnu.org/bugzilla/show_bug.cgi?idd058
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2014-11-24
CC| |rguenth at gcc dot gnu.org
Target Milestone|--- |5.0
Summary|Performance degradation |[5 Regression] Performance
|after r216304 |degradation after r216304
Ever confirmed|0 |1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug ipa/64059] [5 Regression] ICE: Segmentation fault in ipa-polymorphic-call.c:1593
2014-11-24 17:30 [Bug ipa/64059] New: [5 Regression] ICE: Segmentation fault in ipa-polymorphic-call.c:1593 trippels at gcc dot gnu.org
@ 2014-11-24 19:04 ` trippels at gcc dot gnu.org
2014-11-25 2:40 ` hubicka at gcc dot gnu.org
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: trippels at gcc dot gnu.org @ 2014-11-24 19:04 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64059
--- Comment #1 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
Breakpoint 1, ipa_polymorphic_call_context::get_dynamic_type
(this=0x7fffffffdb90, instance=0x7ffff7271678, otr_object=0x7ffff7271678,
otr_type=0x7ffff73dd1f8,
call=0x7ffff73e4ab0) at ../../gcc/gcc/ipa-polymorphic-call.c:1593
1593 = get_deref_alias_set (TREE_TYPE (BINFO_VTABLE (TYPE_BINFO
(otr_type))));
(gdb) l
1588 /* We look for vtbl pointer read. */
1589 ao.size = POINTER_SIZE;
1590 ao.max_size = ao.size;
1591 if (otr_type)
1592 ao.ref_alias_set
1593 = get_deref_alias_set (TREE_TYPE (BINFO_VTABLE (TYPE_BINFO
(otr_type))));
1594
1595 if (dump_file)
1596 {
1597 fprintf (dump_file, "Determining dynamic type for call: ");
(gdb) p otr_type->type_non_common.binfo
$1 = (tree) 0x0
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug ipa/64059] [5 Regression] ICE: Segmentation fault in ipa-polymorphic-call.c:1593
2014-11-24 17:30 [Bug ipa/64059] New: [5 Regression] ICE: Segmentation fault in ipa-polymorphic-call.c:1593 trippels at gcc dot gnu.org
2014-11-24 19:04 ` [Bug ipa/64059] " trippels at gcc dot gnu.org
@ 2014-11-25 2:40 ` hubicka at gcc dot gnu.org
2014-11-25 7:52 ` trippels at gcc dot gnu.org
2014-11-25 9:20 ` rguenth at gcc dot gnu.org
3 siblings, 0 replies; 5+ messages in thread
From: hubicka at gcc dot gnu.org @ 2014-11-25 2:40 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64059
Jan Hubicka <hubicka at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |hubicka at gcc dot gnu.org
--- Comment #2 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
The patch I sent to original PR log works on the testcase:
Index: ../../gcc/ipa-prop.c
===================================================================
--- ../../gcc/ipa-prop.c (revision 217980)
+++ ../../gcc/ipa-prop.c (working copy)
@@ -2155,7 +2155,7 @@ ipa_analyze_call_uses (struct func_body_
if (cs && !cs->indirect_unknown_callee)
return;
- if (cs->indirect_info->polymorphic)
+ if (cs->indirect_info->polymorphic && flag_devirtualize)
{
tree instance;
tree target = gimple_call_fn (call);
The thing is that get_dynamic_type should be never called when devirt is
disabled.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug ipa/64059] [5 Regression] ICE: Segmentation fault in ipa-polymorphic-call.c:1593
2014-11-24 17:30 [Bug ipa/64059] New: [5 Regression] ICE: Segmentation fault in ipa-polymorphic-call.c:1593 trippels at gcc dot gnu.org
2014-11-24 19:04 ` [Bug ipa/64059] " trippels at gcc dot gnu.org
2014-11-25 2:40 ` hubicka at gcc dot gnu.org
@ 2014-11-25 7:52 ` trippels at gcc dot gnu.org
2014-11-25 9:20 ` rguenth at gcc dot gnu.org
3 siblings, 0 replies; 5+ messages in thread
From: trippels at gcc dot gnu.org @ 2014-11-25 7:52 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64059
Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution|--- |FIXED
--- Comment #3 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
Fixed.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug ipa/64059] [5 Regression] ICE: Segmentation fault in ipa-polymorphic-call.c:1593
2014-11-24 17:30 [Bug ipa/64059] New: [5 Regression] ICE: Segmentation fault in ipa-polymorphic-call.c:1593 trippels at gcc dot gnu.org
` (2 preceding siblings ...)
2014-11-25 7:52 ` trippels at gcc dot gnu.org
@ 2014-11-25 9:20 ` rguenth at gcc dot gnu.org
3 siblings, 0 replies; 5+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-11-25 9:20 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64059
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |5.0
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2014-11-25 9:20 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-11-24 17:30 [Bug ipa/64059] New: [5 Regression] ICE: Segmentation fault in ipa-polymorphic-call.c:1593 trippels at gcc dot gnu.org
2014-11-24 19:04 ` [Bug ipa/64059] " trippels at gcc dot gnu.org
2014-11-25 2:40 ` hubicka at gcc dot gnu.org
2014-11-25 7:52 ` trippels at gcc dot gnu.org
2014-11-25 9:20 ` rguenth 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).