Alan Modra 4fbb74a605 include/elf/
PR 5900
	* common.h (SHN_BAD): Delete.
	(SHN_LORESERVE .. SHN_HIRESERVE): Move to..
	* external.h: ..here.
	* internal.h (SHN_LORESERVE, SHN_HIRESERVE): Define.
	(SHN_LOPROC, SHN_HIPROC, SHN_LOOS, SHN_HIOS): Define.
	(SHN_ABS, SHN_COMMON, SHN_XINDEX, SHN_BAD): Define.
bfd/
	PR 5900
	* elf-bfd.h: Include elf/internal.h after elf/external.h.
	* elfcode.h (elf_swap_symbol_in): Map reserved shndx range.
	(elf_swap_symbol_out): Adjust SHN_XINDEX test.
	(elf_swap_ehdr_out): Mask SHN_LORESERVE and SHN_XINDEX to values
	seen in external structs.
	(valid_section_index_p): Delete.
	(elf_object_p): Don't increment section numbers over reserved range.
	Simplify test for valid sh_link, sh_info and e_shstrndx fields.
	(elf_write_shdrs_and_ehdr): Mask SHN_LORESERVE and SHN_XINDEX to values
	seen in external structs.  Don't increment section numbers over
	reserved range.
	* elf.c (bfd_elf_sym_name): Remove redundant tests on st_shndx.
	(bfd_section_from_shdr): Likewise.
	(group_signature): Range check before accessing elf_elfsections.
	(_bfd_elf_setup_sections): Likewise.
	(bfd_section_from_shdr): Likewise.
	(bfd_section_from_shdr): Don't increment section number over
	reserved sections.
	(assign_file_positions_for_non_load_sections): Likewise.
	(assign_file_positions_except_relocs): Likewise.
	(_bfd_elf_write_object_contents): Likewise.
	(assign_section_numbers): Likewise.  Adjust for changed SHN_*.
	(prep_headers): Delete unused variable.
	* elflink.c (bfd_elf_link_record_local_dynamic_symbol): Adjust
	for changed SHN_* values.
	(check_dynsym, elf_link_input_bfd): Likewise.
	(bfd_elf_final_link): Likewise.  Don't skip over reserved section
	range.
	(elf_fixup_link_order): Check that sh_link field is valid.
	* elf-hppa.h (elf_hppa_add_symbol_hook): Make "index" unsigned.
	* elf32-arm.c (elf32_arm_gc_mark_extra_sections): Range check before
	accesssing elf_elfsections.
	* elf32-avr.c (elf32_avr_size_stubs): Likewise.
	* elf32-hppa.c (elf32_hppa_size_stubs): Likewise.
	* elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Likewise.
	* elf64-hppa.c (elf64_hppa_check_relocs): Adjust for changed
	SHN_* defines.  Test for SHN_BAD return from
	_bfd_elf_section_from_bfd_section
binutils/
	PR 5900
	* readelf.c (SECTION_HEADER_INDEX, SECTION_HEADER_NUM): Delete.
	Remove use throughout file.
	(SECTION_HEADER): Likewise.
	(dump_relocations): Don't adjust st_shndx for reserved range.
	(process_file_header): Mask SHN_XINDEX to values seen in external
	elf structs.  Simplify valid section index tests.
	(get_32bit_elf_symbols, get_64bit_elf_symbols): Mask SHN_XINDEX.
	Map reserved st_shndx to internal form.
	(process_section_groups): Test that group symbol st_shndx is in
	range, not just non-zero.  Delete reserved range check.
	(get_symbol_index_type): Mask "type" to 16 bits when printing PRC,
	OS or RSV.
gdb/
	PR 5900
	* elfread.c (elf_symtab_read): Make shndx an unsigned int.
	* mipsread.c: Include elf/internal.h.
	(read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
	to internal range.
ld/testsuite/
	PR 5900
	* ld-elf/sec64k.exp: Update.
2008-03-12 08:37:09 +00:00
..
2006-07-12 15:45:33 +00:00
2007-02-14 14:15:52 +00:00
2007-09-18 00:25:07 +00:00
2006-06-01 05:40:24 +00:00
2007-01-16 14:56:32 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2006-09-07 17:16:34 +00:00
2007-01-16 14:56:32 +00:00
2007-01-16 14:56:32 +00:00
ld/
2007-01-19 15:13:29 +00:00
ld/
2007-01-19 15:13:29 +00:00
ld/
2007-01-19 15:13:29 +00:00
ld/
2007-01-19 15:13:29 +00:00
ld/
2007-01-19 15:13:29 +00:00
ld/
2007-01-19 15:13:29 +00:00
ld/
2007-01-19 15:13:29 +00:00
2006-10-19 02:40:14 +00:00
2006-10-19 02:40:14 +00:00
2006-10-19 02:40:14 +00:00
2006-10-19 02:40:14 +00:00
2006-10-19 02:40:14 +00:00
2007-07-06 14:09:45 +00:00
2008-01-28 15:15:32 +00:00
2008-01-28 15:15:32 +00:00
2008-01-28 15:15:32 +00:00
2008-01-28 15:15:32 +00:00
2008-01-28 15:15:32 +00:00
2006-11-21 11:25:17 +00:00
2008-01-09 09:36:11 +00:00
2008-01-09 09:36:11 +00:00
2006-12-04 08:57:09 +00:00
2006-12-04 08:57:09 +00:00
2005-10-24 07:48:47 +00:00
2005-04-13 16:44:08 +00:00
2006-07-12 15:45:33 +00:00
2006-07-12 15:45:33 +00:00
2006-07-12 15:45:33 +00:00
2005-02-21 08:39:53 +00:00
2007-08-28 13:21:58 +00:00
ld/
2007-04-02 16:32:04 +00:00
ld/
2007-04-02 16:32:04 +00:00
ld/
2007-04-02 16:32:04 +00:00
2007-03-08 17:54:29 +00:00
2007-03-01 16:39:42 +00:00
2007-03-07 10:25:11 +00:00
2007-03-07 10:25:11 +00:00
2006-07-12 15:45:33 +00:00
2006-07-12 15:45:33 +00:00
2007-07-06 14:09:45 +00:00
2005-10-20 17:06:41 +00:00
2006-12-07 13:32:02 +00:00
2006-12-07 13:32:02 +00:00
2006-12-07 13:32:02 +00:00
2006-12-07 13:32:02 +00:00
2007-05-18 19:04:51 +00:00
2007-10-09 13:32:50 +00:00
2006-07-12 15:45:33 +00:00
2007-03-07 08:54:35 +00:00
2007-03-07 08:54:35 +00:00
2007-03-07 08:54:35 +00:00
2007-03-07 08:54:35 +00:00
2006-08-29 01:24:17 +00:00
2006-07-12 15:45:33 +00:00
2006-06-01 05:40:24 +00:00
2006-06-01 05:40:24 +00:00
2006-06-01 05:40:24 +00:00
ld/
2007-01-19 15:06:27 +00:00
ld/
2007-01-19 15:06:27 +00:00
ld/
2007-01-19 15:06:27 +00:00
ld/
2007-01-19 15:06:27 +00:00
2003-09-10 23:35:40 +00:00
2007-05-10 14:46:48 +00:00
2007-01-16 14:56:32 +00:00
ld/
2006-08-01 17:50:52 +00:00
ld/
2006-08-01 17:50:52 +00:00
ld/
2006-08-01 17:50:52 +00:00
2008-01-07 16:45:35 +00:00
2008-01-07 16:45:35 +00:00
2008-01-07 16:45:35 +00:00
2006-07-12 15:45:33 +00:00
2007-03-22 15:50:38 +00:00
2007-03-22 15:50:38 +00:00
2007-12-24 16:58:23 +00:00
2007-12-24 16:58:23 +00:00
2007-12-24 16:58:23 +00:00
2006-10-17 13:41:49 +00:00
2006-10-17 13:41:49 +00:00
ld/
2007-03-24 06:49:03 +00:00
2007-09-18 00:25:07 +00:00
2007-09-18 00:25:07 +00:00
2008-03-12 08:37:09 +00:00
2008-02-22 23:10:45 +00:00
2007-12-19 10:22:02 +00:00
2007-12-19 10:22:02 +00:00
2007-07-06 14:09:45 +00:00
2006-06-01 05:40:24 +00:00
2006-06-01 05:40:24 +00:00
2005-03-22 14:20:38 +00:00
2006-06-01 05:40:24 +00:00
2006-06-01 05:40:24 +00:00
2007-08-28 13:21:58 +00:00
2007-11-20 16:58:47 +00:00
2005-10-20 17:06:41 +00:00
2007-02-14 14:15:52 +00:00
2007-07-23 09:56:19 +00:00
ld/
2007-07-29 12:33:38 +00:00
2006-12-29 17:56:32 +00:00
2006-12-29 17:56:32 +00:00
2006-12-29 17:56:32 +00:00
2006-12-29 17:56:32 +00:00
2007-07-06 14:09:45 +00:00