From: Alan Modra Date: Mon, 16 May 2011 00:53:46 +0000 (+0000) Subject: * ldlang.c (lang_leave_output_section_statement): Don't copy X-Git-Tag: binutils-2_21_1~56 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6b72bc46ab966577eb5382ce0f823a213808e021;p=thirdparty%2Fbinutils-gdb.git * ldlang.c (lang_leave_output_section_statement): Don't copy previous lma_region if given address. --- diff --git a/ld/ChangeLog b/ld/ChangeLog index 1452b799129..09788f840af 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2011-05-16 Alan Modra + + * ldlang.c (lang_leave_output_section_statement): Don't copy + previous lma_region if given address. + 2011-05-04 Alan Modra PR ld/12726 diff --git a/ld/ldlang.c b/ld/ldlang.c index 2f1842ead6f..cba509b84e5 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -6861,11 +6861,13 @@ lang_leave_output_section_statement (fill_type *fill, const char *memspec, current_section->load_base != NULL, current_section->addr_tree != NULL); - /* If this section has no load region or base, but has the same + /* If this section has no load region or base, but uses the same region as the previous section, then propagate the previous section's load region. */ - if (!current_section->lma_region && !current_section->load_base + if (current_section->lma_region == NULL + && current_section->load_base == NULL + && current_section->addr_tree == NULL && current_section->region == current_section->prev->region) current_section->lma_region = current_section->prev->lma_region;