bfd/
authorH.J. Lu <hjl.tools@gmail.com>
Tue, 17 May 2005 16:43:02 +0000 (16:43 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Tue, 17 May 2005 16:43:02 +0000 (16:43 +0000)
commit75ff45898cb591177506dc60164e167fc8c79c59
tree4a25a8df9a4b7422ad862803d16b906f50e7508c
parent8e0ed13fa56c0f18e69a559dcace1fc9431874a2
bfd/

2005-05-17  H.J. Lu  <hongjiu.lu@intel.com>

PR 797
* elf32-i386.c (elf_i386_size_dynamic_sections): Also remove
empty sdynbss section.
* elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Likewise.

ld/

2005-05-17  H.J. Lu  <hongjiu.lu@intel.com>

PR 797
* ldexp.c (exp_fold_tree_1): Renamed from exp_fold_tree and
take take a bfd_boolean, mark_used. Ignore assert failure if
mark_used is TRUE.
(exp_fold_tree) Call exp_fold_tree_1 with mark_used == FALSE.
(exp_fold_tree_no_dot): Updated to take a bfd_boolean,
mark_used and pass down.
(fold_unary): Likewise.
(fold_binary): Likewise.
(fold_trinary): Likewise.
(exp_binop): Add FALSE to call to exp_fold_tree_no_dot.
(exp_trinop): Likewise.
(exp_unop): Likewise.
(exp_nameop): Likewise.
(exp_get_vma): Likewise.
(exp_get_fill): Likewise.
(exp_get_abs_int): Likewise.
(fold_name): Likewise. Set SEC_KEEP in output section flags.
(exp_mark_used_section): New.

* ldexp.h (exp_mark_used_section): New.

* ldlang.c (lang_output_section_statement_lookup_1): Set the
ignored field to FALSE.
(lang_mark_used_section_1): New.
(lang_mark_used_section): Call lang_mark_used_section_1.
(strip_excluded_output_sections): Call lang_mark_used_section
and check for unused sections.
(lang_size_sections_1): Skip an output section if it should
be ignored.
(lang_do_assignments_1): Likewise.
(lang_process): Don't call lang_mark_used_section here.

* ldlang.h (lang_output_section_statement_type): Change
all_input_readonly to bitfield. Add ignored.

ld/testsuite/

2005-05-17  H.J. Lu  <hongjiu.lu@intel.com>

PR 797
* empty-aligned.d: New file.
* empty-aligned.exp: Likewise.
* empty-aligned.s: Likewise.
* empty-aligned.t: Likewise.
13 files changed:
bfd/ChangeLog
bfd/elf32-i386.c
bfd/elf64-x86-64.c
ld/ChangeLog
ld/ldexp.c
ld/ldexp.h
ld/ldlang.c
ld/ldlang.h
ld/testsuite/ChangeLog
ld/testsuite/ld-scripts/empty-aligned.d [new file with mode: 0644]
ld/testsuite/ld-scripts/empty-aligned.exp [new file with mode: 0644]
ld/testsuite/ld-scripts/empty-aligned.s [new file with mode: 0644]
ld/testsuite/ld-scripts/empty-aligned.t [new file with mode: 0644]