aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraph.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2021-03-31 11:35:29 +0200
committerJan Hubicka <jh@suse.cz>2021-03-31 11:35:29 +0200
commitd7145b4bb6c8729a1e782373cb6256c06ed60465 (patch)
treeac5434e0f577133bb748f64406e070cb172afdbe /gcc/cgraph.c
parentc3c616747a615589d38aff92981eacbf932eb5c6 (diff)
downloadgcc-d7145b4bb6c8729a1e782373cb6256c06ed60465.zip
gcc-d7145b4bb6c8729a1e782373cb6256c06ed60465.tar.gz
gcc-d7145b4bb6c8729a1e782373cb6256c06ed60465.tar.bz2
Small refactoring of cgraph_node::release_body
PR lto/99447 * cgraph.c (cgraph_node::release_body): Remove all callers and references. * cgraphclones.c (cgraph_node::materialize_clone): Do not do it here. * cgraphunit.c (cgraph_node::expand): And here.
Diffstat (limited to 'gcc/cgraph.c')
-rw-r--r--gcc/cgraph.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/cgraph.c b/gcc/cgraph.c
index 8014075..b77c676 100644
--- a/gcc/cgraph.c
+++ b/gcc/cgraph.c
@@ -1860,6 +1860,9 @@ cgraph_node::release_body (bool keep_arguments)
lto_free_function_in_decl_state_for_node (this);
lto_file_data = NULL;
}
+ gcc_assert (!clones);
+ remove_callees ();
+ remove_all_references ();
}
/* Remove function from symbol table. */