summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2009-09-29 02:24:56 +0000
committerAlan Modra <amodra@bigpond.net.au>2009-09-29 02:24:56 +0000
commit40f7bedeabbea9141ff01d95f3c657ce3dcba8f0 (patch)
tree332e54cf18e6471ec5064d6aae9b1ef4993d808a
parent13fc0445547864359f1b7e31512afa379c9939b1 (diff)
downloadbinutils-redhat-40f7bedeabbea9141ff01d95f3c657ce3dcba8f0.tar.gz
* ldlang.c (lang_size_sections_1): Allow scripts to specify a
non-zero vma even when relocatable.
-rw-r--r--ld/ChangeLog11
-rw-r--r--ld/ldlang.c2
2 files changed, 9 insertions, 4 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index fe5b6265a7..6658a7d70c 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,8 @@
+2009-09-29 Alan Modra <amodra@bigpond.net.au>
+
+ * ldlang.c (lang_size_sections_1): Allow scripts to specify a
+ non-zero vma even when relocatable.
+
2009-09-28 Alan Modra <amodra@bigpond.net.au>
* scripttempl/elf32cr16.sc: Emit empty script for ld -r and ld -Ur.
@@ -85,7 +90,7 @@
2009-09-13 Alan Modra <amodra@bigpond.net.au>
- PR ld/6766
+ PR ld/6766
* lexsup.c (parse_args <-e>): Revert 2009-03-18 change.
* ldemul.c (after_parse_default): Add entry symbol as undef.
* emultempl/alphaelf.em (alpha_after_parse): Call after_parse_default.
@@ -385,7 +390,7 @@
2009-08-04 Alan Modra <amodra@bigpond.net.au>
- PR 10474
+ PR 10474
* emultempl/ppc32elf.em (ppc_before_allocation): Test rawsize,
not size, after lang_reset_memory_regions.
@@ -706,7 +711,7 @@
2009-04-25 Alan Modra <amodra@bigpond.net.au>
- PR 10061
+ PR 10061
* genscripts.sh: Don't pass $EMULATION_NAME as $CUSTOMIZER_SCRIPT
param.
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 9e956b384f..83713707b1 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -4665,7 +4665,7 @@ lang_size_sections_1
lang_memory_region_type *r;
os = &s->output_section_statement;
- if (link_info.relocatable)
+ if (os->addr_tree == NULL && link_info.relocatable)
os->addr_tree = exp_intop (0);
if (os->addr_tree != NULL)
{