From 6429ad7e580714a00df46baeb57fd5b91bc38df1 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 22 Apr 1996 16:22:52 +0000 Subject: * ldlang.c (wild_doit): Discard debugging sections if we are stripping debugging information. --- ld/ChangeLog | 3 +++ ld/ldlang.c | 11 ++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'ld') diff --git a/ld/ChangeLog b/ld/ChangeLog index 06af26a..e30a0af 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,5 +1,8 @@ Mon Apr 22 12:07:32 1996 Ian Lance Taylor + * ldlang.c (wild_doit): Discard debugging sections if we are + stripping debugging information. + * emulparams/z8002.sh (ARCH): Set to z8002, not z8k. Tue Apr 16 16:38:32 1996 Ian Lance Taylor diff --git a/ld/ldlang.c b/ld/ldlang.c index c3dc4e9..3288fe1 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -726,14 +726,17 @@ wild_doit (ptr, section, output, file) lang_output_section_statement_type *output; lang_input_statement_type *file; { + flagword flags; boolean discard; + flags = bfd_get_section_flags (section->owner, section); + discard = false; /* If we are doing a final link, discard sections marked with SEC_EXCLUDE. */ if (! link_info.relocateable - && (bfd_get_section_flags (section->owner, section) & SEC_EXCLUDE) != 0) + && (flags & SEC_EXCLUDE) != 0) discard = true; /* Discard input sections which are assigned to a section named @@ -741,6 +744,12 @@ wild_doit (ptr, section, output, file) if (strcmp (output->name, DISCARD_SECTION_NAME) == 0) discard = true; + /* Discard debugging sections if we are stripping debugging + information. */ + if ((link_info.strip == strip_debugger || link_info.strip == strip_all) + && (flags & SEC_DEBUGGING) != 0) + discard = true; + if (discard) { if (section->output_section == NULL) -- cgit v1.1