This is the mail archive of the
binutils-cvs@sources.redhat.com
mailing list for the binutils project.
src/bfd ChangeLog elf-bfd.h elflink.h elfcode.h
- From: amodra at sources dot redhat dot com
- To: binutils-cvs at sources dot redhat dot com
- Date: 27 Mar 2004 10:09:13 -0000
- Subject: src/bfd ChangeLog elf-bfd.h elflink.h elfcode.h
CVSROOT: /cvs/src
Module name: src
Changes by: amodra@sourceware.org 2004-03-27 10:09:08
Modified files:
bfd : ChangeLog elf-bfd.h elflink.h elfcode.h
Log message:
* elf-bfd.h (struct elf_reloc_cookie): Add r_sym_shift field.
* elflink.h: Replace all occurrences of sizeof (Elf_External_*)
where Elf_External_* is different for 64 and 32 bit, with
corresponding elf_size_info field.
(struct elf_final_link_info): Use "bfd_byte *" instead
of "Elf_External_Sym *" for external_syms and symbuf.
(elf_link_adjust_relocs): Set up r_type_mask and r_sym_shift local
vars and use instead of ELF_R_INFO and ELF_R_TYPE macros.
(struct elf_link_sort_rela): Add "sym_mask" alias for "offset".
(elf_link_sort_cmp1): Use sym_mask field instead of ELF_R_SYM.
(elf_link_sort_cmp2): Adjust.
(elf_link_sort_relocs): Set up r_sym_mask local var instead of
using ELF_R_SYM macro. Set u.sym_mask.
(elf_bfd_final_link): Call _bfd_elf_stringtab_init instead of macro
version, elf_stringtab_init. Ditto for bfd_section_from_elf_index
vs. section_from_elf_index. Adjust Elf_External_Sym pointer
arithmetic. Pass bed to elf_link_flush_output_syms. Adjust
Elf_External_Dyn pointer arithmentic. Use bed swap_dyn_in and
swap_syn_out functions. Rearrange dyn swap in/out switch.
(elf_link_output_sym): Adjust Elf_External_Sym pointer arithmentic.
Pass bed to elf_link_flush_output_syms. Use bed swap_symbol_out.
(elf_link_flush_output_syms): Add elf_backend_data arg.
(elf_link_check_versioned_symbol): Likewise.
(elf_link_output_extsym): Pass bed to elf_link_check_versioned_symbol.
Adjust Elf_External_Sym pointer arithmetic. Use bed swap_symbol_out.
(elf_link_input_bfd): Use bfd_section_from_elf_index. Set up
r_type_mask and r_sym_shift local vars and use instead of ELF_R_SYM,
ELF_R_TYPE and ELF_R_INFO macros.
(elf_reloc_link_order): Select ELF32_R_INFO or ELF64_R_INFO invocation
based on size rather than using ELF_R_INFO.
(elf_gc_mark): Set up r_sym_shift local var and use instead of
ELF_R_SYM macro.
(struct alloc_got_off_arg): New.
(elf_gc_common_finalize_got_offsets): Use elf_size_info instead of
ARCH_SIZE. Pass get entry size down to elf_gc_allocate_got_offsets.
(elf_gc_allocate_got_offsets): Adjust.
(elf_reloc_symbol_deleted_p): Usee cookie.r_sym_shift instead of
ELF_R_SYM. Use bfd_section_from_elf_index.
(elf_bfd_discard_info): Set cookie.r_sym_shift.
* elfcode.h (elf_stringtab_init, section_from_elf_index): Delete.
(elf_slurp_symbol_table): Use bfd_section_from_elf_index.
Patches:
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/bfd/ChangeLog.diff?cvsroot=src&r1=1.2474&r2=1.2475
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/bfd/elf-bfd.h.diff?cvsroot=src&r1=1.134&r2=1.135
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/bfd/elflink.h.diff?cvsroot=src&r1=1.259&r2=1.260
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/bfd/elfcode.h.diff?cvsroot=src&r1=1.52&r2=1.53