aboutsummaryrefslogtreecommitdiff
path: root/bfd
AgeCommit message (Collapse)AuthorFilesLines
2001-11-10 * binary.c: Include safe-ctype.h after bfd.h and sysdep.h.Jeff Law2-1/+5
2001-11-10 * elf32-arm.h (elf32_arm_final_link_relocate): Don't copy STN_UNDEFAlan Modra21-387/+707
relocs into shared libs. * elf32-cris.c (cris_elf_relocate_section): Likewise. * elf32-i370.c (i370_elf_relocate_section): Likewise. * elf32-m68k.c (elf_m68k_relocate_section): Likewise. * elf32-mips.c (mips_elf_calculate_relocation): Likewise. * elf32-ppc.c (ppc_elf_relocate_section): Likewise. * elf32-sh.c (sh_elf_relocate_section): Likewise. * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. * elf64-s390.c (elf_s390_relocate_section): Likewise. * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise. * elf.c (bfd_section_from_r_symndx): New function. * elf-bfd.h (LOCAL_SYM_CACHE_SIZE): Define. (struct sym_sec_cache): New. (bfd_section_from_r_symndx): Declare. (struct bfd_elf_section_data): Change local_dynrel type to PTR. * elflink.h (elf_link_input_bfd): Don't test for removed linkonce relocs when relocatable. Don't zero entire reloc, just zero the addend and sym. * elf32-i386.c (struct elf_i386_link_hash_table): Add sym_sec. (elf_i386_link_hash_table_create): Init it. (elf_i386_check_relocs): Track dynamic relocs needed for local syms on a per-section basis as we do for globals. (elf_i386_gc_sweep_hook): Update for local_dynrel change. Remove dead code. (allocate_dynrelocs): Warning fix. (elf_i386_size_dynamic_sections): Don't allocate relocs when section has been discarded. (elf_i386_relocate_section): Don't copy STN_UNDEF relocs into shared libs. * elf32-hppa.c: Likewise. * elf32-s390.c: Likewise. * elf64-ppc.c: Likewise. * elf64-s390.c: Likewise.
2001-11-09daily updateAlan Modra1-1/+1
2001-11-08daily updateAlan Modra1-1/+1
2001-11-08* elf32-s390: Major rework that introduces all recent changes toMartin Schwidefsky3-1742/+2314
the s390 backends. Get a closer match to elf32-i386. (elf_s390_relocate_section): Make use of dynamic section short-cuts. Localise vars, and delay setting. Better error reporting, replace BFD_ASSERT with abort. Check ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined in the regular object file and tread the weak definition as the normal one. Don't discard relocs for undefweak or undefined symbols and check !DEF_REGULAR as well as DEF_DYNAMIC in test for avoided copy relocs. Reinstate fudge for unresolved relocs in debugging sections. (elf32_s390_adjust_dynamic_symbol): Handle nocopyreloc. Don't do copy reloc processing for weakdefs. Remove redundant casts and aborts. Delay setting of vars until needed. Move creation of dynamic symbols and allocation of .plt and .rela.plt to allocate_dynrelocs. Replace BFD_ASSERT with abort. Discard .plt entries for everything with plt.refcount <= 0. (elf_s390_check_relocs): Don't allocate space for dynamic relocs, .got or .relgot here but do it in allocate_dynrelocs. Reference count possible .plt and .got entries. Don't test input section SEC_READONLY here to try to avoid copy relocs, and keep dyn_relocs regardless of ELF_LINK_NON_GOT_REF. Don't set DF_TEXTREL here. Delay setting of variables until needed. Remove separate switch stmt for creating .got section. Initialise local_got_refcounts to 0. Cache pointer to "sreloc" section in elf_section_data. Tweak condition under which .got created. Report files with bad relocation section names. (elf_s390_finish_dynamic_symbol): Don't copy relocs for symbols that have been forced local. Use same test to decide if we can use a relative reloc for got as elf_s390_relocate_section. Expand SHN_UNDEF comment. Move expressions out of function calls. Replace BFD_ASSERT with abort. (elf_s390_finish_dynamic_sections): Migrate common code out of switch statement. Replace BFD_ASSERT with abort. (elf_s390_size_dynamic_sections): Call readonly_dynrelocs. Rename "i" to "ibfd". Allocate space for local dyn relocs. Use DF_TEXTREL flag instead of looking up section names for DT_TEXTREL. Replace BFD_ASSERT with abort. Zero out the dynamic allocated content space. Add a comment to remind us that one day this ought to be fixed. (struct elf_s390_link_hash_entry): Rename "root" to "elf". (struct elf_s390_link_hash_table): Likewise. (elf_s390_link_hash_newfunc): Rename to link_hash_newfunc and get rid of unnecessary casts. (struct elf_s390_dyn_relocs): Add "sec", and "pc_count" fields. Remove "section" field. (elf_s390_gc_sweep_hook): Sweep dyn_relocs and local_dynrel. Reference count possible .plt entries. Don't deallocate .got and .relgot space here. (struct elf_s390_pcrel_relocs_copied): Rename to elf_s390_dyn_relocs. Update comment. (struct elf_s390_link_hash_entry): Rename pcrel_relocs_copied to dyn_relocs. (elf_s390_discard_copies): Delete. (elf_s390_link_hash_traverse): Delete. (bfd_elf32_bfd_final_link): Delete. (ie. use regular final link rather than gc variety). (struct elf_s390_link_hash_table): Add sgot, sgotplt, srelgot, splt, srelplt, sdynbss, srelbss fields. (elf_s390_link_hash_table_create): Init them. (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. (allocate_dynrelocs): New function. (create_got_section): New function. (elf_backend_can_refcount): Define. (elf_backend_copy_indirect_symbol): Define. (elf_s390_copy_indirect_symbol): New function. (elf_s390_create_dynamic_sections): New function. (readonly_dynrelocs): New function. * elf64-s390x: Likewise.
2001-11-07daily updateAlan Modra1-1/+1
2001-11-07 * Makefile.am (BFD32_BACKENDS): Add elf-strtab.lo.Jakub Jelinek11-73/+788
(BFD32_BACKENDS_CFILES): Add elf-strtab.c. (elf-strtab.lo): Add rule. * Makefile.in: Rebuilt. * configure.in (elf): Add elf-strtab.lo. * configure: Rebuilt. * elf-bfd.h (elf_strtab_hash): Forward declare. (struct elf_link_hash_table): Change dynstr type to struct elf_strtab_hash *. (struct elf_obj_tdata): Change strtab_ptr type to struct elf_strtab_hash *. (_bfd_elf_strtab_init, _bfd_elf_strtab_free, _bfd_elf_strtab_add, _bfd_elf_strtab_addref, _bfd_elf_strtab_delref, _bfd_elf_strtab_clear_all_refs, _bfd_elf_strtab_size, _bfd_elf_strtab_offset, _bfd_elf_strtab_emit, _bfd_elf_strtab_finalize): New prototypes. * elf-strtab.c: New file. * elflink.h (elf_link_add_object_symbols): Use _bfd_elf_strtab_add and _bfd_elf_strtab_size instead of _bfd_stringtab calls. Call _bfd_elf_strtab_delref if DT_NEEDED entry is not needed or when forcing dynamic symbol to local. (elf_link_create_dynamic_sections): Call _bfd_elf_strtab_init instead of elf_stringtab_init. (elf_link_record_local_dynamic_symbol): Likewise, change dynstr type. Use _bfd_elf_strtab functions instead of _bfd_stringtab calls. (size_dynamic_sections): Use _bfd_elf_strtab functions instead of _bfd_stringtab calls. For DT_RUNPATH and Verdaux vda_name fields, call _bfd_elf_strtab_addref. Call elf_finalize_dynstr. (elf_adjust_dynstr_offsets, elf_finalize_dynstr): New functions. (elf_fix_symbol_flags): Call _bfd_elf_strtab_delref when forcing dynamic symbol to local. (elf_link_assign_sym_version): Likewise. (elf_bfd_final_link): Call _bfd_elf_strtab_emit instead of _bfd_stringtab_emit. * elflink.c (_bfd_elf_link_record_dynamic_symbol): Change dynstr type. Call _bfd_elf_strtab functions instead of _bfd_stringtab functions. * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise. * elf.c (_bfd_elf_init_reloc_shdr): Likewise. (elf_fake_sections): Likewise. (assign_section_numbers): Call _bfd_elf_strtab_clear_all_refs on shstrtab hash table, call _bfd_elf_strtab_addref on each section name in the output. Call _bfd_elf_strtab_finalize and use _bfd_elf_strtab_offset to finalize sh_name section header fields. (_bfd_elf_compute_section_file_positions): Use _bfd_elf_strtab_size instead of _bfd_stringtab_size. (prep_headers): Change shstrtab type. Use _bfd_elf_strtab calls instead of _bfd_stringtab calls.
2001-11-07 * elflink.h (elf_link_input_bfd <removed linkonce relocs>): FixAlan Modra2-19/+27
bad symtab segfault. Formatting and warning fixes. Improve error message for internationalisation.
2001-11-06daily updateAlan Modra1-1/+1
2001-11-062001-11-06 H.J. Lu (hjl@gnu.org)H.J. Lu2-20/+92
* elflink.h (elf_link_input_bfd): Complain relocs against discarded sections.
2001-11-05daily updateAlan Modra1-1/+1
2001-11-04daily updateAlan Modra1-1/+1
2001-11-03daily updateAlan Modra1-1/+1
2001-11-03 * elfxx-target.h (elfNN_bed): Correct want_got_sym, want_dynbss order.Alan Modra2-2/+6
2001-11-02daily updateAlan Modra1-1/+1
2001-11-022001-11-02 H.J. Lu <hjl@gnu.org>H.J. Lu2-2/+10
* elf32-mips.c (mips_elf_calculate_relocation): Don't create dynamic relocation for symbols defined in regular objects when creating executables.
2001-11-02Add translationsNick Clifton4-2/+2080
2001-11-02Add commentNick Clifton2-1/+13
2001-11-02Initialize subspace_sections.Nick Clifton2-1/+6
2001-11-022001-11-02 H.J. Lu (hjl@gnu.org)H.J. Lu2-1/+6
* coffgen.c (coff_object_p): Return 0 if the header is too big.
2001-11-02 * elfcore.h (elf_core_file_p): Preserve and clear abfd sectionHans-Peter Nilsson2-0/+26
information. Save bfd arch and mach values. Restore on error.
2001-11-02 * elf32-hppa.c (hppa_handle_PIC_calls): Rename to mark_PIC_calls.Alan Modra2-24/+63
(allocate_PIC_calls): New function. (allocate_dynrelocs): Don't allocate pic_call plt entries here. (elf32_hppa_size_dynamic_sections): Call allocate_PIC_calls. (elf32_hppa_finish_dynamic_symbol): Remove dead code.
2001-11-02Fix cutnpasto in last entryHans-Peter Nilsson1-1/+1
2001-11-02 * elf32-cris.c (cris_elf_grok_prstatus): New function.Hans-Peter Nilsson2-0/+81
(cris_elf_grok_prstatus): New function. (elf_backend_grok_prstatus): Define. (elf_backend_grok_psinfo): Define.
2001-11-01daily updateAlan Modra1-1/+1
2001-11-01 * elf64-ppc.c (ppc64_elf_relocate_section): Correct branchAlan Modra2-15/+19
prediction bits.
2001-11-01[ bfd/ChangeLog ]Chris Demetriou2-0/+7
2001-10-31 Chris Demetriou <cgd@demetriou.com> * elf32-mips.c (_bfd_mips_elf_hi16_reloc): Handle PC-relative relocations properly. [ gas/ChangeLog ] 2001-10-31 Chris Demetriou <cgd@broadcom.com> * config/tc-mips.c (HAVE_32BIT_ADDRESSES): If compiling embedded PIC code, assume pointers the same size as GPRs. (macro): In M_LA_AB handling for embedded PIC code, support "la $treg,foo-bar($breg)". In load/store handling (label ld_st) support "<op> $treg,<sym>-<local_sym>($breg)" which is used by the compiler for switch statements. In load/store double multi-instruction macro handling (label ldd_std) add a comment that no special handling is currently done for embedded PIC. (mips_ip): In 'o' (16-bit offset) case, only accept 16 bit offsets. [ gas/testsuite/ChangeLog ] 2001-10-31 Chris Demetriou <cgd@broadcom.com> * gas/mips/empic.s: Undo damage inflicted on 2000-12-02. * gas/mips/empic.d: Likewise. * gas/mips/elempic.d: Likewise (it was copied into other files). * gas/mips/telempic.d: Likewise. * gas/mips/tempic.d: Likewise. * gas/mips/empic2.s: New test to check new 'la' and 'lw' (and related ops) syntax, test loads with large offsets. * gas/mips/emcic2.d: Likewise. * gas/mips/mips.exp: Run the new test on ELF platforms.
2001-10-31daily updateAlan Modra1-1/+1
2001-10-312001-10-31 H.J. Lu <hjl@gnu.org>H.J. Lu2-1/+7
* elflink.h (elf_link_output_extsym): Don't clear the visibility field for relocateable.
2001-10-31 Revert previous delta, instead do this.Alan Modra2-4/+19
* elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Don't count .plt relocs in DT_RELASZ.
2001-10-31 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Set DT_RELASZAlan Modra2-4/+7
whenever DT_PLTRELSZ.
2001-10-31Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu targetsNick Clifton2-23/+35
2001-10-31Fix typo: bfd_mmo_mmix_vec => bfd_mmo_vec.Nick Clifton2-1/+5
2001-10-31Remove #if 0 around bfd_mmo_mmix_vecHans-Peter Nilsson1-2/+0
2001-10-31Split file by ^L:s as in original submitted patchHans-Peter Nilsson1-6/+6
2001-10-30daily updateAlan Modra1-1/+1
2001-10-30Add MMIX supportNick Clifton23-756/+6100
2001-10-30If the LMA for a segment is known, use it for matching sections to segments.Nick Clifton2-10/+17
Use the LMA when adjusting for inter-section alignment padding.
2001-10-30Set the LMA based on the p_paddr of the segment that contains it.Nick Clifton2-10/+29
2001-10-29daily updateAlan Modra1-1/+1
2001-10-29 * README: Fix a typo.Kazu Hirata2-1/+5
2001-10-29 * bfdsumm.texi: Fix a typo.Kazu Hirata2-1/+5
2001-10-29daily update, a bit late..Alan Modra1-1/+1
2001-10-27daily updateAlan Modra1-1/+1
2001-10-27Change footer to refer to FSF. Change subtitle to refer to original ↵Nick Clifton2-6/+11
creation date.
2001-10-27daily updateAlan Modra1-1/+1
2001-10-26daily updateAlan Modra1-1/+1
2001-10-25 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): CopyRichard Henderson2-1/+9
timestamp to time_t for ctime.
2001-10-25daily updateAlan Modra1-1/+1
2001-10-24 * elf32-cris.c (cris_reloc_type_lookup): Change loop to useHans-Peter Nilsson2-4/+9
unsigned, increasing index.