aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog5
-rw-r--r--ld/ldlang.c3
2 files changed, 8 insertions, 0 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index e7d2572..d8b2a7d 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,8 @@
+2005-05-17 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * ldlang.c (lang_size_sections): Call lang_reset_memory_regions
+ before redoing one_lang_size_sections_pass.
+
2006-05-11 Carlos O'Donell <carlos@codesourcery.com>
* ld.texinfo: Rename "Index" to "LD Index"
diff --git a/ld/ldlang.c b/ld/ldlang.c
index f376652..0412538 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -4542,6 +4542,7 @@ lang_size_sections (bfd_boolean *relax, bfd_boolean check_regions)
expld.dataseg.base -= maxpage;
relro_end -= maxpage;
}
+ lang_reset_memory_regions ();
one_lang_size_sections_pass (relax, check_regions);
if (expld.dataseg.relro_end > relro_end)
{
@@ -4565,6 +4566,7 @@ lang_size_sections (bfd_boolean *relax, bfd_boolean check_regions)
< old_min_base)
expld.dataseg.base += expld.dataseg.pagesize;
expld.dataseg.base -= (1 << max_alignment_power);
+ lang_reset_memory_regions ();
one_lang_size_sections_pass (relax, check_regions);
}
}
@@ -4585,6 +4587,7 @@ lang_size_sections (bfd_boolean *relax, bfd_boolean check_regions)
&& first + last <= expld.dataseg.pagesize)
{
expld.dataseg.phase = exp_dataseg_adjust;
+ lang_reset_memory_regions ();
one_lang_size_sections_pass (relax, check_regions);
}
}