aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2004-06-21 10:59:54 +0000
committerNick Clifton <nickc@redhat.com>2004-06-21 10:59:54 +0000
commitbb82af9ffec7b67f3b71c029a7a41b5549e6541c (patch)
tree92b4b58ab4172a65dc66c51cef8058f703e58ca0 /gas
parente6f12cf6cb14938e25027faeaaf83b30837e9b91 (diff)
downloadbinutils-bb82af9ffec7b67f3b71c029a7a41b5549e6541c.zip
binutils-bb82af9ffec7b67f3b71c029a7a41b5549e6541c.tar.gz
binutils-bb82af9ffec7b67f3b71c029a7a41b5549e6541c.tar.bz2
* gas/symbols.c: While discarding ordinary local absolute symbols
when --strip-local-absolute is in effect, retain file symbols.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/symbols.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index c343418..523134a 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2004-06-21 Jan Beulich <jbeulich@novell.com>
+
+ * gas/symbols.c: While discarding ordinary local absolute symbols
+ when --strip-local-absolute is in effect, retain file symbols.
+
2004-06-20 Andreas Schwab <schwab@suse.de>
* config/tc-m68k.c (mri_chip): Replace current_chip, not augment.
diff --git a/gas/symbols.c b/gas/symbols.c
index 136227d..8caaf4a 100644
--- a/gas/symbols.c
+++ b/gas/symbols.c
@@ -1812,7 +1812,9 @@ S_IS_LOCAL (symbolS *s)
return 1;
if (flag_strip_local_absolute
- && (flags & BSF_GLOBAL) == 0
+ /* Keep BSF_FILE symbols in order to allow debuggers to identify
+ the source file even when the object file is stripped. */
+ && (flags & (BSF_GLOBAL | BSF_FILE)) == 0
&& bfd_get_section (s->bsym) == absolute_section)
return 1;