Fix copying of clone_info while reshaping clone tree.
authorJan Hubicka <jh@suse.cz>
Tue, 3 Nov 2020 23:19:59 +0000 (00:19 +0100)
committerJan Hubicka <jh@suse.cz>
Tue, 3 Nov 2020 23:19:59 +0000 (00:19 +0100)
commitab4664eb73f9401a5ca65d21cdf87d69fe0026dc
tree60524595ea5de0b47cc7ad19ad96119358147ba2
parente7144372e06bf446d1bfb529806a803467ba697a
Fix copying of clone_info while reshaping clone tree.

2020-11-04  Jan Hubicka  <hubicka@ucw.cz>

PR ipa/97695
* cgraph.c (cgraph_edge::redirect_call_stmt_to_callee): Fix ICE with
in dumping code.
(cgraph_node::remove): Save clone info before releasing it and pass it
to unregister.
* cgraph.h (symtab_node::unregister): Add clone_info parameter.
(cgraph_clone::unregister): Likewise.
* cgraphclones.c (cgraph_node::find_replacement): Copy clone info
* symtab-clones.cc (clone_infos_t::duplicate): Remove.
(clone_info::get_create): Simplify.
* symtab.c (symtab_node::unregister): Pass around clone info.
* varpool.c (varpool_node::remove): Update.
gcc/cgraph.c
gcc/cgraph.h
gcc/cgraphclones.c
gcc/symtab-clones.cc
gcc/symtab.c
gcc/varpool.c