diff options
author | Jie Zhang <jie.zhang@analog.com> | 2009-09-04 03:35:32 +0000 |
---|---|---|
committer | Jie Zhang <jie.zhang@analog.com> | 2009-09-04 03:35:32 +0000 |
commit | e7dbbe8befd4c0ab8e6ceae2f6edcf0c40fd4632 (patch) | |
tree | 1049413c480741378e4dd7582af5b4908e782625 | |
parent | 7ec437cfa5723f06569bc9475db90d9977c3549f (diff) | |
download | gdb-e7dbbe8befd4c0ab8e6ceae2f6edcf0c40fd4632.tar.gz |
* elf32-bfin.c (elf32_bfinfdpic_create_dynamic_sections): Always
create .rela.bss.
(elf32_bfinfdpic_size_dynamic_sections): Set SEC_EXCLUDE flag
for empty .rela.bss and .rel.plt sections.
-rw-r--r-- | bfd/ChangeLog | 7 | ||||
-rw-r--r-- | bfd/elf32-bfin.c | 12 |
2 files changed, 17 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 39987cdcd2a..954edf30b89 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,10 @@ +2009-09-04 Jie Zhang <jie.zhang@analog.com> + + * elf32-bfin.c (elf32_bfinfdpic_create_dynamic_sections): Always + create .rela.bss. + (elf32_bfinfdpic_size_dynamic_sections): Set SEC_EXCLUDE flag + for empty .rela.bss and .rel.plt sections. + 2009-09-03 Adam Nemet <anemet@caviumnetworks.com> * elfxx-mips.c (mips_elf_calculate_relocation): Don't relocate diff --git a/bfd/elf32-bfin.c b/bfd/elf32-bfin.c index 7a415defd66..f8e4c19e72b 100644 --- a/bfd/elf32-bfin.c +++ b/bfd/elf32-bfin.c @@ -3559,8 +3559,7 @@ elf32_bfinfdpic_create_dynamic_sections (bfd *abfd, struct bfd_link_info *info) if (! info->shared) { s = bfd_make_section_with_flags (abfd, - (bed->default_use_rela_p - ? ".rela.bss" : ".rel.bss"), + ".rela.bss", flags | SEC_READONLY); if (s == NULL || ! bfd_set_section_alignment (abfd, s, bed->s->log_file_align)) @@ -4299,6 +4298,15 @@ elf32_bfinfdpic_size_dynamic_sections (bfd *output_bfd, return FALSE; } + + s = bfd_get_section_by_name (dynobj, ".rela.bss"); + if (s && s->size == 0) + s->flags |= SEC_EXCLUDE; + + s = bfd_get_section_by_name (dynobj, ".rel.plt"); + if (s && s->size == 0) + s->flags |= SEC_EXCLUDE; + return TRUE; } |