aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2002-11-12 11:31:43 +0000
committerAlan Modra <amodra@gmail.com>2002-11-12 11:31:43 +0000
commitc4c41219636642438223c7b46a2c8e1467faba06 (patch)
treea0c3c81637b07a0dda2d9ba442441d8421bf81d5
parentcd24c22246aa385256a99c15cae19c73af9e64e3 (diff)
downloadfsf-binutils-gdb-c4c41219636642438223c7b46a2c8e1467faba06.zip
fsf-binutils-gdb-c4c41219636642438223c7b46a2c8e1467faba06.tar.gz
fsf-binutils-gdb-c4c41219636642438223c7b46a2c8e1467faba06.tar.bz2
* ldlang.c (lang_add_section): Discard debugging sections that have
been marked SEC_EXCLUDE.
-rw-r--r--ld/ChangeLog5
-rw-r--r--ld/ldlang.c9
2 files changed, 10 insertions, 4 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 2b76d2a..0e37adb 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,8 @@
+2002-11-12 Earl Chew <earl_chew@agilent.com>
+
+ * ldlang.c (lang_add_section): Discard debugging sections that have
+ been marked SEC_EXCLUDE.
+
2002-11-12 Nick Clifton <nickc@redhat.com>
* configure.in (ALL_LINGUAS): Add da.
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 1b00705..80ba0c8 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -1138,10 +1138,11 @@ lang_add_section (ptr, section, output, file)
discard = false;
- /* If we are doing a final link, discard sections marked with
- SEC_EXCLUDE. */
- if (! link_info.relocateable
- && (flags & SEC_EXCLUDE) != 0)
+ /* Discard sections marked with SEC_EXCLUDE if we are doing a final
+ link. Discard debugging sections marked with SEC_EXCLUDE on a
+ relocatable link too. */
+ if ((flags & SEC_EXCLUDE) != 0
+ && ((flags & SEC_DEBUGGING) != 0 || !link_info.relocateable))
discard = true;
/* Discard input sections which are assigned to a section named