diff options
author | Richard Biener <rguenther@suse.de> | 2013-05-21 11:56:57 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2013-05-21 11:56:57 +0000 |
commit | c52da5f7d36d279d829adf384271c53e1ce87601 (patch) | |
tree | c20a2257804e79332688bf1c33067db4d6ada09d /gcc/cgraph.c | |
parent | bf5f6aa9be32bec652082a6b1e834b7340af8739 (diff) | |
download | gcc-c52da5f7d36d279d829adf384271c53e1ce87601.zip gcc-c52da5f7d36d279d829adf384271c53e1ce87601.tar.gz gcc-c52da5f7d36d279d829adf384271c53e1ce87601.tar.bz2 |
re PR tree-optimization/57330 (ICE: verify_gimple failed -O3 [tree-cfg.c:4792])
2013-05-21 Richard Biener <rguenther@suse.de>
PR tree-optimization/57330
* cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Properly
preserve the call stmts fntype.
* gcc.dg/torture/pr57330.c: New testcase.
From-SVN: r199139
Diffstat (limited to 'gcc/cgraph.c')
-rw-r--r-- | gcc/cgraph.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/cgraph.c b/gcc/cgraph.c index 899f65c..2a2973b 100644 --- a/gcc/cgraph.c +++ b/gcc/cgraph.c @@ -1068,6 +1068,7 @@ cgraph_redirect_edge_call_stmt_to_callee (struct cgraph_edge *e) = gimple_call_copy_skip_args (e->call_stmt, e->callee->clone.combined_args_to_skip); gimple_call_set_fndecl (new_stmt, e->callee->symbol.decl); + gimple_call_set_fntype (new_stmt, gimple_call_fntype (e->call_stmt)); if (gimple_vdef (new_stmt) && TREE_CODE (gimple_vdef (new_stmt)) == SSA_NAME) |