diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-06-21 02:39:49 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-06-21 02:39:49 +0000 |
commit | 4696e459f6134e163783ea70a3bd9f8d5b2d5d0b (patch) | |
tree | 8ba8fcd6632c9c6760ff6d8527c1b70179fb50b7 /gcc/ipa-visibility.c | |
parent | 9e6b15b71856977e7dc99217054bf8e556f05cdd (diff) | |
download | gcc-4696e459f6134e163783ea70a3bd9f8d5b2d5d0b.tar.gz |
* gcc.dg/localalias.c: New testcase.
* gcc.dg/localalias-2.c: New testcase.
* gcc.dg/globalalias.c: New testcase.
* gcc.dg/globalalias-2.c: New testcase.
* ipa-visibility.c (function_and_variable_visibility): Disable
temporarily local aliases for some targets.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211864 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ipa-visibility.c')
-rw-r--r-- | gcc/ipa-visibility.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ipa-visibility.c b/gcc/ipa-visibility.c index 4e0fd9e0b40..9e4d8c38f4b 100644 --- a/gcc/ipa-visibility.c +++ b/gcc/ipa-visibility.c @@ -566,7 +566,11 @@ function_and_variable_visibility (bool whole_program) cheaper and enable more optimization. TODO: We can also update virtual tables. */ - if (node->callers && can_replace_by_local_alias (node)) + if (node->callers + /* FIXME: currently this optimization breaks on AIX. Disable it for targets + without comdat support for now. */ + && SUPPORTS_ONE_ONLY + && can_replace_by_local_alias (node)) { struct cgraph_node *alias = cgraph (symtab_nonoverwritable_alias (node)); |