aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gold/ChangeLog5
-rw-r--r--gold/layout.cc3
2 files changed, 7 insertions, 1 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog
index da35cbc..7f7c012 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,8 @@
+2012-10-16 Sriraman Tallam <tmsriram@google.com>
+
+ * layout.cc (Layout::include_section): Keep sections marked
+ SHF_EXCLUDE when doing relocatable links.
+
2012-10-16 Alan Modra <amodra@gmail.com>
* powerpc.cc (Target_powerpc::define_save_restore_funcs): New func.
diff --git a/gold/layout.cc b/gold/layout.cc
index 86e39eb..022f5a9 100644
--- a/gold/layout.cc
+++ b/gold/layout.cc
@@ -582,7 +582,8 @@ bool
Layout::include_section(Sized_relobj_file<size, big_endian>*, const char* name,
const elfcpp::Shdr<size, big_endian>& shdr)
{
- if (shdr.get_sh_flags() & elfcpp::SHF_EXCLUDE)
+ if (!parameters->options().relocatable()
+ && (shdr.get_sh_flags() & elfcpp::SHF_EXCLUDE))
return false;
switch (shdr.get_sh_type())