diff options
author | Alan Modra <amodra@gmail.com> | 2010-07-20 14:08:32 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2010-07-20 14:08:32 +0000 |
commit | f4638467331c33e2f9dd00c12c175a9eb47351c8 (patch) | |
tree | 98a865621bcd4a31314c5de6d5e7780feff3d365 /binutils | |
parent | ad34eb2f7c3120f83d22cf2d5371673fc95040b4 (diff) | |
download | gdb-f4638467331c33e2f9dd00c12c175a9eb47351c8.zip gdb-f4638467331c33e2f9dd00c12c175a9eb47351c8.tar.gz gdb-f4638467331c33e2f9dd00c12c175a9eb47351c8.tar.bz2 |
include/elf/
* internal.h (ELF_TBSS_SPECIAL): New macro, extracted from..
(ELF_SECTION_SIZE): ..here.
(ELF_SECTION_IN_SEGMENT_1): Add "strict" arg.
(ELF_SECTION_IN_SEGMENT_STRICT): New macro.
bfd/
* elf.c (assign_file_positions_for_load_sections): Check that
zero size sections are allocated in segments too.
(assign_file_positions_for_non_load_sections): Warn if zero
size alloc sections are found here.
(copy_elf_program_header): Don't drop zero size sections from
segment map.
(copy_private_bfd_data): Check for changes in zero size sections.
binutils/
* readelf.c (process_program_headers): Don't ignore all zero size
sections.
ld/testsuite/
* ld-powerpc/tlsexe.r: Update.
* ld-powerpc/tlsexetoc.r: Update.
* ld-powerpc/tlsso.r: Update.
* ld-powerpc/tlstocso.r: Update.
Diffstat (limited to 'binutils')
-rw-r--r-- | binutils/ChangeLog | 5 | ||||
-rw-r--r-- | binutils/readelf.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 18c06c5..8e3ecb6 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2010-07-20 Alan Modra <amodra@gmail.com> + + * readelf.c (process_program_headers): Don't ignore all zero size + sections. + 2010-07-19 Andreas Schwab <schwab@redhat.com> * readelf.c (process_section_headers): Update key to flags. diff --git a/binutils/readelf.c b/binutils/readelf.c index 883c482..447932c 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -3889,8 +3889,8 @@ process_program_headers (FILE * file) for (j = 1; j < elf_header.e_shnum; j++, section++) { - if (ELF_SECTION_SIZE (section, segment) != 0 - && ELF_SECTION_IN_SEGMENT (section, segment)) + if (!ELF_TBSS_SPECIAL (section, segment) + && ELF_SECTION_IN_SEGMENT_STRICT (section, segment)) printf ("%s ", SECTION_NAME (section)); } |