PATCH: Don't use section name to set ELF section data
Nick Clifton
nickc@redhat.com
Fri Jul 25 12:29:00 GMT 2003
Hi H.J.
> Here is the new patch. It caused no regressions on all targets
> affected. It fixed an ELF/ppc64 bug.
Excellent.
> bfd/
>
> 2003-07-24 H.J. Lu <hongjiu.lu@intel.com>
>
> * elf-bfd.h (bfd_elf_special_section): New.
> (elf_backend_data): Add special_sections, a pointer to
> bfd_elf_special_section.
> (elf_section_type). New.
> (elf_section_flags): New.
> (_bfd_elf_get_sec_type_attr): New.
>
> * elf.c (_bfd_elf_make_section_from_shdr): Always use the
> real section type/flags.
> (special_sections): New.
> (get_special_section): New.
> (_bfd_elf_get_sec_type_attr): New.
> (_bfd_elf_new_section_hook): Check special_section to set
> elf_section_type and elf_section_flags.
> (elf_fake_sections): Don't use section name to set ELF section
> data.
>
> * elf32-m32r.c (m32r_elf_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elf32-m68hc11.c (elf32_m68hc11_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elf32-mcore.c (mcore_elf_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elf32-ppc.c (ppc_elf_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elf32-sh64.c (sh64_elf_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elf32-v850.c (v850_elf_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elf32-xtensa.c (elf_xtensa_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elf64-alpha.c (elf64_alpha_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elf64-hppa.c (elf64_hppa_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elf64-ppc.c (ppc64_elf_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elf64-sh64.c (sh64_elf64_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elfxx-ia64.c (elfNN_ia64_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elfxx-mips.c (_bfd_mips_elf_special_sections): New.
>
> * elfxx-mips.h (_bfd_mips_elf_special_sections): New.
> (elf_backend_special_sections): Defined.
>
> * elfxx-target.h (elf_backend_special_sections): New. Default
> to NULL.
> (elfNN_bed): Initialize special_sections.
>
> * section.c (bfd_abs_section): Remove const.
> (bfd_und_section): Likewise.
> (bfd_com_section): Likewise.
> (bfd_ind_section): Likewise.
>
> gas/
>
> 2003-07-24 H.J. Lu <hongjiu.lu@intel.com>
>
> * config/obj-elf.c (special_sections): Removed.
> (obj_elf_change_section): Call _bfd_elf_get_sec_type_attr. Set
> elf_section_type and elf_section_flags.
> (elf_frob_file): Set SHT_GROUP.
>
> * config/obj-elf.h (obj_sec_set_private_data): New.
>
> * config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): Removed.
> * config/tc-ia64.h: Likewise.
> * config/tc-m32r.h: Likewise.
> * config/tc-m68hc11.h: Likewise.
> * config/tc-mcore.h: Likewise.
> * config/tc-mips.h: Likewise.
> * config/tc-ppc.h: Likewise.
> * config/tc-sh64.h: Likewise.
> * config/tc-v850.h: Likewise.
> * config/tc-xtensa.h: Likewise.
>
> * config/tc-v850.h (SHF_V850_GPREL): Removed.
> (SHF_V850_EPREL): Likewise.
> (SHF_V850_R0REL): Likewise.
>
> * subsegs.c (subseg_get): Call obj_sec_set_private_data if it
> is defined.
>
> include/elf/
>
> 2003-07-24 H.J. Lu <hongjiu.lu@intel.com>
>
> * v850.h (SHF_V850_GPREL): New.
> (SHF_V850_EPREL): Likewise.
> (SHF_V850_R0REL): Likewise.
Approved - please apply.
Cheers
Nick
More information about the Binutils
mailing list