aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAwson <kyrab@mail.ru>2016-03-18 11:45:43 +0000
committerNick Clifton <nickc@redhat.com>2016-03-18 11:45:43 +0000
commit45821bef0977a7436aa5cd5f37f5a178d446d675 (patch)
treea60d7b25d7b5ffcefd2f72822f51000cf61545d3
parent41f46ed9fea1a066de95b6a85c56393beef0b8b8 (diff)
downloadbinutils-45821bef0977a7436aa5cd5f37f5a178d446d675.zip
binutils-45821bef0977a7436aa5cd5f37f5a178d446d675.tar.gz
binutils-45821bef0977a7436aa5cd5f37f5a178d446d675.tar.bz2
Ensure that the .rdata_pseudo_runtime_reloc sections are not discarded by gabage collection.
PR 19531 * scripttempl/pe.sc (.rdata_runtime_pseudo_reloc): Always KEEP this section. * scripttempl/pep.sc (.rdata_runtime_pseudo_reloc): Likewise.
-rw-r--r--ld/ChangeLog7
-rw-r--r--ld/scripttempl/pe.sc2
-rw-r--r--ld/scripttempl/pep.sc2
3 files changed, 9 insertions, 2 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 401226b..0137ab3 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,10 @@
+2016-03-18 Awson <kyrab@mail.ru>
+
+ PR 19531
+ * scripttempl/pe.sc (.rdata_runtime_pseudo_reloc): Always KEEP
+ this section.
+ * scripttempl/pep.sc (.rdata_runtime_pseudo_reloc): Likewise.
+
2016-03-18 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
* ld-avr/gc-section-debugline.d: Relax regex check for CU.
diff --git a/ld/scripttempl/pe.sc b/ld/scripttempl/pe.sc
index f227cb6..59e4e89 100644
--- a/ld/scripttempl/pe.sc
+++ b/ld/scripttempl/pe.sc
@@ -125,7 +125,7 @@ SECTIONS
{
${R_RDATA}
${RELOCATING+__rt_psrelocs_start = .;}
- *(.rdata_runtime_pseudo_reloc)
+ KEEP(*(.rdata_runtime_pseudo_reloc))
${RELOCATING+__rt_psrelocs_end = .;}
}
${RELOCATING+__rt_psrelocs_size = __rt_psrelocs_end - __rt_psrelocs_start;}
diff --git a/ld/scripttempl/pep.sc b/ld/scripttempl/pep.sc
index b664163..c682fe7 100644
--- a/ld/scripttempl/pep.sc
+++ b/ld/scripttempl/pep.sc
@@ -133,7 +133,7 @@ SECTIONS
{
${R_RDATA}
${RELOCATING+__rt_psrelocs_start = .;}
- *(.rdata_runtime_pseudo_reloc)
+ KEEP(*(.rdata_runtime_pseudo_reloc))
${RELOCATING+__rt_psrelocs_end = .;}
}
${RELOCATING+__rt_psrelocs_size = __rt_psrelocs_end - __rt_psrelocs_start;}