aboutsummaryrefslogtreecommitdiff
path: root/gas/write.c
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2005-11-17 13:32:27 +0000
committerAlexandre Oliva <aoliva@redhat.com>2005-11-17 13:32:27 +0000
commit461b725f29e97e9270f3136b19df3513e8798b15 (patch)
treed38c96f5420e04f190fc5d996fa949908df85fec /gas/write.c
parentb57d375bdea3e29a7636cc9f786b55733f0bb9f2 (diff)
downloadgdb-461b725f29e97e9270f3136b19df3513e8798b15.zip
gdb-461b725f29e97e9270f3136b19df3513e8798b15.tar.gz
gdb-461b725f29e97e9270f3136b19df3513e8798b15.tar.bz2
* config/tc-ppc.c (ppc_frob_file_before_adjust): Do not reference
dotname. * write.c (write_object_file): Do not remove used weakrefd.
Diffstat (limited to 'gas/write.c')
-rw-r--r--gas/write.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gas/write.c b/gas/write.c
index f86930b..5c336d8 100644
--- a/gas/write.c
+++ b/gas/write.c
@@ -1513,7 +1513,8 @@ write_object_file (void)
opposites. Sometimes the former checks flags and the
latter examines the name... */
|| (!S_IS_EXTERNAL (symp)
- && (punt || S_IS_LOCAL (symp) || S_IS_WEAKREFD (symp))
+ && (punt || S_IS_LOCAL (symp) ||
+ (S_IS_WEAKREFD (symp) && ! symbol_used_p (symp)))
&& ! symbol_used_in_reloc_p (symp)))
{
symbol_remove (symp, &symbol_rootP, &symbol_lastP);