This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Speculative call support in the callgraph
- From: Andi Kleen <andi at firstfloor dot org>
- To: Jan Hubicka <hubicka at ucw dot cz>
- Cc: gcc-patches at gcc dot gnu dot org, marxin dot liska at gmail dot com, mjambor at suse dot cz, davidxl at google dot com
- Date: Fri, 09 Aug 2013 15:12:48 -0700
- Subject: Re: Speculative call support in the callgraph
- References: <20130809121840 dot GA28721 at kam dot mff dot cuni dot cz>
Jan Hubicka <hubicka@ucw.cz> writes:
> Hi,
> this patch adds support for speculative calls into callgraph. The idea is that
> any IPA optimization that believes it knows likely target of an indirect call
> (currently I use it for cross-module indirect call profiling, but I expect
> Martin J. can easily add support for ipa-cp and I hope to add speculative
> devirtualization in foreseeable future since it should make difference for
> Firefox). Speculative call replaces indirect call
Patch appears to break boot strap on x86_64-linux
(or maybe your other one)
0x827ab7 crash_signal
../../gcc/gcc/toplev.c:335
0x827ab7 crash_signal
../../gcc/gcc/toplev.c:335
0x827ab7 crash_signal
../../gcc/gcc/toplev.c:335
0x827ab7 crash_signal
../../gcc/gcc/toplev.c:335
0x827ab7 crash_signal
../../gcc/gcc/toplev.c:335
0x827ab7 crash_signal
../../gcc/gcc/toplev.c:335
0x827ab7 crash_signal
../../gcc/gcc/toplev.c:335
0x5d0c6c cgraph_speculative_call_info(cgraph_edge*, cgraph_edge*&,
cgraph_edge*&, ipa_ref*&)
../../gcc/gcc/cgraph.c:1098
0x5d1270 cgraph_set_call_stmt(cgraph_edge*, gimple_statement_d*, bool)
../../gcc/gcc/cgraph.c:774
0x5d0c6c cgraph_speculative_call_info(cgraph_edge*, cgraph_edge*&,
cgraph_edge*&, ipa_ref*&)
../../gcc/gcc/cgraph.c:1098
0x5d1270 cgraph_set_call_stmt(cgraph_edge*, gimple_statement_d*, bool)
../../gcc/gcc/cgraph.c:774
0x5d0c6c cgraph_speculative_call_info(cgraph_edge*, cgraph_edge*&,
cgraph_edge*&, ipa_ref*&)
../../gcc/gcc/cgraph.c:1098
...
-Andi
--
ak@linux.intel.com -- Speaking for myself only