diff options
author | Jan Hubicka <jh@suse.cz> | 2020-03-20 22:06:24 +0100 |
---|---|---|
committer | Jan Hubicka <jh@suse.cz> | 2020-03-20 22:06:24 +0100 |
commit | 72b3bc895f023bf451357659cfe96c966945bdf9 (patch) | |
tree | b50df34185a414a85416a84b69ca390fa091d954 /gcc/ipa-split.c | |
parent | a89349e664ff420f33612d47e486954de5848e49 (diff) | |
download | gcc-72b3bc895f023bf451357659cfe96c966945bdf9.zip gcc-72b3bc895f023bf451357659cfe96c966945bdf9.tar.gz gcc-72b3bc895f023bf451357659cfe96c966945bdf9.tar.bz2 |
Fix verifier ICE on wrong comdat local flag [PR93347]
gcc/ChangeLog:
2020-03-20 Jan Hubicka <hubicka@ucw.cz>
PR ipa/93347
* cgraph.c (symbol_table::create_edge): Update calls_comdat_local flag.
(cgraph_edge::redirect_callee): Move here; likewise.
(cgraph_node::remove_callees): Update calls_comdat_local flag.
(cgraph_node::verify_node): Verify that calls_comdat_local flag match
reality.
(cgraph_node::check_calls_comdat_local_p): New member function.
* cgraph.h (cgraph_node::check_calls_comdat_local_p): Declare.
(cgraph_edge::redirect_callee): Move offline.
* ipa-fnsummary.c (compute_fn_summary): Do not compute
calls_comdat_local flag here.
* ipa-inline-transform.c (inline_call): Fix updating of
calls_comdat_local flag.
* ipa-split.c (split_function): Use true instead of 1 to set the flag.
* symtab.c (symtab_node::add_to_same_comdat_group): Update
calls_comdat_local flag.
gcc/testsuite/ChangeLog:
2020-03-20 Jan Hubicka <hubicka@ucw.cz>
* g++.dg/torture/pr93347.C: New test.
Diffstat (limited to 'gcc/ipa-split.c')
-rw-r--r-- | gcc/ipa-split.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/ipa-split.c b/gcc/ipa-split.c index 87a0989..973e72c 100644 --- a/gcc/ipa-split.c +++ b/gcc/ipa-split.c @@ -1363,7 +1363,7 @@ split_function (basic_block return_bb, class split_point *split_point, { /* TODO: call is versionable if we make sure that all callers are inside of a comdat group. */ - cur_node->calls_comdat_local = 1; + cur_node->calls_comdat_local = true; node->add_to_same_comdat_group (cur_node); } |