aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2006-10-19 02:10:41 +0000
committerAlan Modra <amodra@gmail.com>2006-10-19 02:10:41 +0000
commit2f4754876fee13c0bed40782e439e1a589f5caae (patch)
tree2936eaa9342587896fd32583e3da6c70d8d5acbf /ld
parent0532541186c1b120fc0b4c4993c097fc3d136823 (diff)
downloadfsf-binutils-gdb-2f4754876fee13c0bed40782e439e1a589f5caae.zip
fsf-binutils-gdb-2f4754876fee13c0bed40782e439e1a589f5caae.tar.gz
fsf-binutils-gdb-2f4754876fee13c0bed40782e439e1a589f5caae.tar.bz2
bfd/
* elf32-arm.c (bfd_elf32_arm_allocate_interworking_sect): Check, don't set, glue section size. (record_arm_to_thumb_glue): Set glue section size here. (record_thumb_to_arm_glue): Likewise. (bfd_elf32_arm_add_glue_sections_to_bfd): Formatting. (bfd_elf32_arm_process_before_allocation): Ignore exluded sections. ld/ * emultempl/armelf.em (arm_elf_before_allocation): Run gld${EMULATION_NAME}_before_allocation later. * ldlang.c (lang_size_sections_1): Revert 2006-09-15 change.
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog9
-rw-r--r--ld/ldlang.c18
2 files changed, 14 insertions, 13 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 33bbe3d..99b3340 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,6 +1,13 @@
+2006-10-19 Alan Modra <amodra@bigpond.net.au>
+
+ * emultempl/armelf.em (arm_elf_before_allocation): Run
+ gld${EMULATION_NAME}_before_allocation later.
+ * ldlang.c (lang_size_sections_1): Revert 2006-09-15 change.
+
2006-10-18 Roy Marples <uberlord@gentoo.org>
- * emulparams/elf64_sparc_fbsd.sh (OUTPUT_FORMAT): Define as elf64-sparc-freebsd.
+ * emulparams/elf64_sparc_fbsd.sh (OUTPUT_FORMAT): Define as
+ elf64-sparc-freebsd.
2006-10-18 Joseph Myers <joseph@codesourcery.com>
diff --git a/ld/ldlang.c b/ld/ldlang.c
index d9b8ac9..2c9426e 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -4368,18 +4368,12 @@ lang_size_sections_1
os->processed_vma = TRUE;
if (bfd_is_abs_section (os->bfd_section) || os->ignored)
- {
- if (os->bfd_section->size > 0)
- {
- /* PR ld/3107: Do not abort when a buggy linker script
- causes a non-empty section to be discarded. */
- if (bfd_is_abs_section (os->bfd_section))
- einfo (_("%P%X: internal error: attempting to take the size of the non-section *ABS*\n"));
- else
- einfo (_("%P: warning: discarding non-empty, well known section %A\n"),
- os->bfd_section);
- }
- }
+ /* Except for some special linker created sections,
+ no output section should change from zero size
+ after strip_excluded_output_sections. A non-zero
+ size on an ignored section indicates that some
+ input section was not sized early enough. */
+ ASSERT (os->bfd_section->size == 0);
else
{
dot = os->bfd_section->vma;