From e9287a41dffc9e76dd80be4be75b0c3a58f57231 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Wed, 27 Nov 2013 15:18:23 +0000 Subject: re PR middle-end/58723 (ICE in lto_output_edge, at lto-cgraph.c:300 for OpenMP's simd reduction) 2013-11-27 Richard Biener PR middle-end/58723 * cgraphbuild.c (build_cgraph_edges): Do not build edges for internal calls. (rebuild_cgraph_edges): Likewise. * ipa-inline-analysis.c (estimate_function_body_sizes): Skip internal calls. * tree-inline.c (estimate_num_insns): Estimate size of internal calls as 0. (gimple_expand_calls_inline): Do not try inline-expanding internal calls. * lto-streamer-in.c (input_cfg): Stream loop safelen, force_vect and simduid. (input_struct_function_base): Stream has_force_vect_loops and has_simduid_loops. (input_function): Adjust. * lto-streamer-out.c (output_cfg): Stream loop safelen, force_vect and simduid. (output_struct_function_base): Stream has_force_vect_loops and has_simduid_loops. From-SVN: r205447 --- gcc/cgraphbuild.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gcc/cgraphbuild.c') diff --git a/gcc/cgraphbuild.c b/gcc/cgraphbuild.c index b6cafff..9a63982 100644 --- a/gcc/cgraphbuild.c +++ b/gcc/cgraphbuild.c @@ -335,6 +335,8 @@ build_cgraph_edges (void) if (decl) cgraph_create_edge (node, cgraph_get_create_node (decl), stmt, bb->count, freq); + else if (gimple_call_internal_p (stmt)) + ; else cgraph_create_indirect_edge (node, stmt, gimple_call_flags (stmt), @@ -464,6 +466,8 @@ rebuild_cgraph_edges (void) if (decl) cgraph_create_edge (node, cgraph_get_create_node (decl), stmt, bb->count, freq); + else if (gimple_call_internal_p (stmt)) + ; else cgraph_create_indirect_edge (node, stmt, gimple_call_flags (stmt), -- cgit v1.1