diff options
author | Martin Liska <mliska@suse.cz> | 2017-04-11 18:37:31 +0200 |
---|---|---|
committer | Martin Liska <marxin@gcc.gnu.org> | 2017-04-11 16:37:31 +0000 |
commit | 58928b3589e98d5db034d9700b12d15015c36346 (patch) | |
tree | c3d082ea4ffd3cc4e7be063a8bcdb834ac0158de /gcc | |
parent | 3812f460464251b944255065422bd2755efad659 (diff) | |
download | gcc-58928b3589e98d5db034d9700b12d15015c36346.zip gcc-58928b3589e98d5db034d9700b12d15015c36346.tar.gz gcc-58928b3589e98d5db034d9700b12d15015c36346.tar.bz2 |
Do not create a constprop clone for calls_comdat_local nodes (PR ipa/80212).
2017-04-11 Martin Liska <mliska@suse.cz>
PR ipa/80212
* ipa-cp.c (determine_versionability): Handle calls_comdat_local
flags.
From-SVN: r246847
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ipa-cp.c | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fa7471e..1536626 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2017-04-11 Martin Liska <mliska@suse.cz> + + PR ipa/80212 + * ipa-cp.c (determine_versionability): Handle calls_comdat_local + flags. + 2017-04-11 Martin Sebor <msebor@redhat.com> PR middle-end/80364 diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c index 0b40814..fa3d5fd 100644 --- a/gcc/ipa-cp.c +++ b/gcc/ipa-cp.c @@ -614,6 +614,12 @@ determine_versionability (struct cgraph_node *node, decloned constructors, inlining is always better anyway. */ else if (node->comdat_local_p ()) reason = "comdat-local function"; + else if (node->calls_comdat_local) + { + /* TODO: call is versionable if we make sure that all + callers are inside of a comdat group. */ + reason = "calls comdat-local function"; + } if (reason && dump_file && !node->alias && !node->thunk.thunk_p) fprintf (dump_file, "Function %s/%i is not versionable, reason: %s.\n", |