From eceda120cd420689231483412fdebc32158d79c7 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Sun, 27 Sep 2009 16:08:34 +0000 Subject: [PATCH] * ldlang.c (lang_size_sections_1): Always force output vma to zero for relocatable sections. (lang_size_sections_1): Revert previous COFF-only accommodation for relocatable sections. --- ld/ChangeLog | 7 +++++++ ld/ldlang.c | 9 +++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/ld/ChangeLog b/ld/ChangeLog index f5c7438..b641071 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,10 @@ +2009-09-27 Christopher Faylor + + * ldlang.c (lang_size_sections_1): Always force output vma to zero for + relocatable sections. + (lang_size_sections_1): Revert previous COFF-only accommodation for + relocatable sections. + 2009-09-25 Martin Thuresson Update soruces to make arm targets compile cleanly with diff --git a/ld/ldlang.c b/ld/ldlang.c index e9f032e..9e956b3 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -4665,6 +4665,8 @@ lang_size_sections_1 lang_memory_region_type *r; os = &s->output_section_statement; + if (link_info.relocatable) + os->addr_tree = exp_intop (0); if (os->addr_tree != NULL) { os->processed_vma = FALSE; @@ -4789,12 +4791,7 @@ lang_size_sections_1 os->name, (unsigned long) (newdot - savedot)); } - /* PR 6945: Do not update the vma's of output sections - when performing a relocatable link on COFF objects. */ - if (! link_info.relocatable - || (bfd_get_flavour (link_info.output_bfd) - != bfd_target_coff_flavour)) - bfd_set_section_vma (0, os->bfd_section, newdot); + bfd_set_section_vma (0, os->bfd_section, newdot); os->bfd_section->output_offset = 0; } -- 2.7.4