aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraph.cc
diff options
context:
space:
mode:
authorMartin Jambor <mjambor@suse.cz>2023-10-05 14:08:47 +0200
committerMartin Jambor <mjambor@suse.cz>2023-10-05 14:10:00 +0200
commit1f7295af6029b6497e9928fe279fd166b94ce2c2 (patch)
treed7b3107ad9c5b72eea648525636f5ad50d02be56 /gcc/cgraph.cc
parent0bda3f25147203d04724fa375daf3d1110da5c3f (diff)
downloadgcc-1f7295af6029b6497e9928fe279fd166b94ce2c2.zip
gcc-1f7295af6029b6497e9928fe279fd166b94ce2c2.tar.gz
gcc-1f7295af6029b6497e9928fe279fd166b94ce2c2.tar.bz2
Revert "ipa: Self-DCE of uses of removed call LHSs (PR 108007)"
This reverts commit 1be18ea110a2d69570dbc494588a7c73173883be. As reported in PR bootstrap/111688, it broke ppc64le bootstrap because of a debug-compare failure.
Diffstat (limited to 'gcc/cgraph.cc')
-rw-r--r--gcc/cgraph.cc10
1 files changed, 2 insertions, 8 deletions
diff --git a/gcc/cgraph.cc b/gcc/cgraph.cc
index b82367a..e41e5ad 100644
--- a/gcc/cgraph.cc
+++ b/gcc/cgraph.cc
@@ -1403,17 +1403,11 @@ cgraph_edge::redirect_callee (cgraph_node *n)
speculative indirect call, remove "speculative" of the indirect call and
also redirect stmt to it's final direct target.
- When called from within tree-inline, KILLED_SSAs has to contain the pointer
- to killed_new_ssa_names within the copy_body_data structure and SSAs
- discovered to be useless (if LHS is removed) will be added to it, otherwise
- it needs to be NULL.
-
It is up to caller to iteratively transform each "speculative"
direct call as appropriate. */
gimple *
-cgraph_edge::redirect_call_stmt_to_callee (cgraph_edge *e,
- hash_set <tree> *killed_ssas)
+cgraph_edge::redirect_call_stmt_to_callee (cgraph_edge *e)
{
tree decl = gimple_call_fndecl (e->call_stmt);
gcall *new_stmt;
@@ -1533,7 +1527,7 @@ cgraph_edge::redirect_call_stmt_to_callee (cgraph_edge *e,
remove_stmt_from_eh_lp (e->call_stmt);
tree old_fntype = gimple_call_fntype (e->call_stmt);
- new_stmt = padjs->modify_call (e, false, killed_ssas);
+ new_stmt = padjs->modify_call (e, false);
cgraph_node *origin = e->callee;
while (origin->clone_of)
origin = origin->clone_of;