diff options
Diffstat (limited to 'ld/ldlang.c')
-rw-r--r-- | ld/ldlang.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/ld/ldlang.c b/ld/ldlang.c index ba7f493..7851615 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -5407,7 +5407,8 @@ lang_size_sections (bfd_boolean *relax, bfd_boolean check_regions) { if (expld.dataseg.base - (1 << max_alignment_power) < old_base) expld.dataseg.base += expld.dataseg.pagesize; - expld.dataseg.base -= (1 << max_alignment_power); + /* Properly align base to max_alignment_power. */ + expld.dataseg.base &= ~((1 << max_alignment_power) - 1); lang_reset_memory_regions (); one_lang_size_sections_pass (relax, check_regions); } |