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.
This commit is contained in:
Alan Modra
2010-07-20 14:08:32 +00:00
parent ad34eb2f7c
commit f463846733
11 changed files with 81 additions and 39 deletions

View File

@ -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.

View File

@ -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));
}