aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraphunit.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2010-06-02 17:39:43 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2010-06-02 15:39:43 +0000
commit437ffe7b16428fc85566cc80207b2591ecbbf1e9 (patch)
tree111ab9b5c50fddbf3f2bb8c2a8a8ccd30603cdc5 /gcc/cgraphunit.c
parent98166192bb58f603cdf9757e5621dffb84a1080a (diff)
downloadgcc-437ffe7b16428fc85566cc80207b2591ecbbf1e9.zip
gcc-437ffe7b16428fc85566cc80207b2591ecbbf1e9.tar.gz
gcc-437ffe7b16428fc85566cc80207b2591ecbbf1e9.tar.bz2
re PR middle-end/44295 (Failed to build 483.xalancbmk in SPEC CPU 2006)
PR middle-end/44295 * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Do not create new cgraph node to check callee. * testsuite/g++.dg/torture/pr44295.C: Neww testcase. From-SVN: r160159
Diffstat (limited to 'gcc/cgraphunit.c')
-rw-r--r--gcc/cgraphunit.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index 47686a4..54752ed 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -2346,13 +2346,19 @@ cgraph_redirect_edge_call_stmt_to_callee (struct cgraph_edge *e)
tree decl = gimple_call_fndecl (e->call_stmt);
gimple new_stmt;
gimple_stmt_iterator gsi;
+#ifdef ENABLE_CHECKING
+ struct cgraph_node *node;
+#endif
if (!decl || decl == e->callee->decl
/* Don't update call from same body alias to the real function. */
|| cgraph_get_node (decl) == cgraph_get_node (e->callee->decl))
return e->call_stmt;
- gcc_assert (!cgraph_node (decl)->clone.combined_args_to_skip);
+#ifdef ENABLE_CHECKING
+ node = cgraph_get_node (decl);
+ gcc_assert (!node || !node->clone.combined_args_to_skip);
+#endif
if (cgraph_dump_file)
{