ipa-visibility TLC 2/n
Jan Hubicka
hubicka@ucw.cz
Wed Jun 11 08:17:00 GMT 2014
Deavid,
this is patch to disable the vtable rewriting on AIX. I did not make much progress
on figuring out why it fails today - just observed that if I produce .o file for the
test and link it against libstdc++ built by older GCC it works. Also objects compiled
w/o optimization works, so I am bit puzzled here.
Honza
Index: ChangeLog
===================================================================
--- ChangeLog (revision 211436)
+++ ChangeLog (working copy)
@@ -1,3 +1,9 @@
+2014-06-11 Jan Hubicka <hubicka@ucw.cz>
+
+ * ipa-visibility.c (function_and_variable_visibility): Disable
+ virtual table rewriting temporarily on targets not supporting
+ ONE_ONLY.
+
2014-06-11 Richard Biener <rguenther@suse.de>
PR middle-end/61437
Index: ipa-visibility.c
===================================================================
--- ipa-visibility.c (revision 211436)
+++ ipa-visibility.c (working copy)
@@ -666,9 +666,12 @@ function_and_variable_visibility (bool w
}
update_visibility_by_resolution_info (vnode);
- /* Update virutal tables to point to local aliases where possible. */
+ /* Update virtual tables to point to local aliases where possible. */
if (DECL_VIRTUAL_P (vnode->decl)
- && !DECL_EXTERNAL (vnode->decl))
+ && !DECL_EXTERNAL (vnode->decl)
+ /* FIXME: currently this optimization breaks on AIX. Disable it for targets
+ without comdat support for now. */
+ && SUPPORTS_ONE_ONLY)
{
int i;
struct ipa_ref *ref;
More information about the Gcc-patches
mailing list