From: Vladimir Mezentsev Date: Mon, 21 May 2018 20:30:00 +0000 (+0000) Subject: re PR target/84923 (gcc.dg/attr-weakref-1.c failed on aarch64) X-Git-Tag: basepoints/gcc-10~6673 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a3c7081913149383df639270f4972d3d5876b7b3;p=thirdparty%2Fgcc.git re PR target/84923 (gcc.dg/attr-weakref-1.c failed on aarch64) PR gcc/84923 * varasm.c (weak_finish): Clean up weak_decls. From-SVN: r260485 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b247c1fd28db..655512627439 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2018-05-21 Vladimir Mezentsev + + PR gcc/84923 + * varasm.c (weak_finish): Clean up weak_decls. + 2018-05-21 Kyrylo Tkachov * config/aarch64/aarch64.md ("unspec"): Define UNSPEC_SABAL, diff --git a/gcc/varasm.c b/gcc/varasm.c index 85296b4a2ec4..8cf6e1e27582 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -5652,7 +5652,8 @@ weak_finish (void) tree alias_decl = TREE_PURPOSE (t); tree target = ultimate_transparent_alias_target (&TREE_VALUE (t)); - if (! TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (alias_decl))) + if (! TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (alias_decl)) + || TREE_SYMBOL_REFERENCED (target)) /* Remove alias_decl from the weak list, but leave entries for the target alone. */ target = NULL_TREE;