aboutsummaryrefslogtreecommitdiff
path: root/gas/symbols.c
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/symbols.c
parente6f12cf6cb14938e25027faeaaf83b30837e9b91 (diff)
downloadgdb-bb82af9ffec7b67f3b71c029a7a41b5549e6541c.zip
gdb-bb82af9ffec7b67f3b71c029a7a41b5549e6541c.tar.gz
gdb-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/symbols.c')
-rw-r--r--gas/symbols.c4
1 files changed, 3 insertions, 1 deletions
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;