aboutsummaryrefslogtreecommitdiff
path: root/bfd
AgeCommit message (Collapse)AuthorFilesLines
1999-07-08 * config.bfd (hppa*-*-linux-gnu*): New targetJeff Law2-1/+5
1999-07-07 * elf-bfd.h (_bfd_mips_elf_section_from_shdr): Constify.Mark Mitchell4-643/+654
(_bfd_mips_elf_create_dynamic_sections): New function. (_bfd_mips_elf_add_symbol_hook): Likewise. (_bfd_mips_elf_adjust_dynamic_symbol): Likewise. (_bfd_mips_elf_finish_dynamic_symbol): Likewise. (_bfd_mips_elf_finish_dynamic_sections): Likewise. (_bfd_mips_elf_gc_mark_hook): Likewise. (_bfd_mips_elf_gc_sweep_hook): Likewise. (_bfd_mips_elf_always_size_sections): Likewise. (_bfd_mips_elf_size_dynamic_sections): Likewise. (_bfd_mips_elf_check_relocs): Likewise. (_bfd_mips_elf_link_hash_table_create): Likewise. (_bfd_mips_elf_print_private_data): Likewise. (_bfd_mips_elf_link_output_symbol_hook): Likewise. (_bfd_mips_elf_final_link): Likewise. (_bfd_mips_elf_additional_program_headers): Likewise. (_bfd_mips_elf_modify_segment_map): Likewise. (_bfd_mips_elf_relocate_section): Likewise. * elf32-mips.c (mips_elf32_object_p): Move contents into _bfd_mips_elf_object_p. (mips_elf_additional_program_headers): Rename to _bfd_mips_elf_additional_program_headers. (mips_elf_modify_segment_map): Rename to _bfd_mips_elf_modify_segment_map. (elf_mips_abi_name): Change prototype. (mips_elf32_section_from_shdr): Merge into _bfd_mips_elf_section_from_shdr. (mips_elf32_section_processing): Merge into _bfd_mips_elf_section_processing. (mips_elf_final_link): Rename to _bfd_mips_elf_final_link. Invoke the right back-end ELF linker. (mips_elf_relocate_section): Rename to _bfd_mips_elf_relocate_section. Clean up. Adjust for 64-bit code. (mips_elf_link_output_symbol_hook): Rename to _bfd_mips_elf_link_output_symbol_hook. (mips_elf_create_dynamic_section): Rename to _bfd_mips_elf_create_dynamic_section. (mips_elf_check_relocs): Rename to _bfd_mips_elf_check_relocs. Adjust for 64-bit code. Use mips_elf_got_section. (mips_elf_adjust_dynamic_symbol): Rename to _bfd_mips_elf_adjust_dynamic_symbol. Use mips_elf_allocate_dynamic_relocations. (mips_elf_finish_dynamic_symbol): Rename to _bfd_mips_elf_finish_dynamic_symbol. Use mips_elf_got_section. Adjust for 64-bit code. (mips_elf_finish_dynamic_sections): Rename to _bfd_mips_elf_finish_dynamic_sections. Adjust for 64-bit code. (mips_elf_always_size_sections): Rename to _bfd_mips_elf_always_size_sections. (mips_elf_add_symbol_hook): Rename to _bfd_mips_elf_add_symbol_hook. (mips_elf_next_lo16_addend): Constify. (mips_elf_calculate_relocation): Likewise. (mips_elf_obtain_contents): Likewise. (mips_elf_perform_relocation): Likewise. (mips_elf_create_dynamic_relocation): Likewise. (mips_elf_allocate_dynamic_relocations): New function. (MIPS_ELF_REL_DYN_SECTION_NAME): New macro. (MIPS_ELF_REL_SIZE): Likewise. (MIPS_ELF_DYN_SIZE): Likewise. (MIPS_ELF_GOT_SIZE): Likewise. (MIPS_ELF_SYM_SIZE): Likewise. (MIPS_ELF_LOG_FILE_ALIGN): Likewise. (MIPS_ELF_GET_WORD): Likewise. (MIPS_ELF_PUT_WORD): Likewise. (MIPS_ELF_ADD_DYNAMIC_ENTRY): Likewise. (STUB_LW): Conditionalize for 64-bit value. (elf_mips_howto_table): Add R_MIPS_HIGHER and R_MIPS_HIGHEST entries. (_bfd_mips_elf_merge_private_bfd_data): Merge e_ident[EI_CLASS]. Check it for inconsistency. (_bfd_mips_elf_print_private_bfd_data): Print ABI=64 for 64-bit ABI. (_bfd_mips_elf_fake_sections): Remove duplicate handling of .msym. (mips_elf_global_got_index): Use MIPS_ELF_GOT_SIZE. (mips_elf_got_offset_from_index): Use misp_elf_got_section. (mips_elf_create_local_got_entry): Use MIPS_ELF_GOT_SIZE. (mips_elf_local_got_index): Likewise. (mips_elf_got_page): Likewise. (mips_elf_got_info): Likewise. (mips_elf_create_dynamic_relocation): Handle 32-bit/64-bit split. (ELF_DYNAMIC_INTERPRETER): Handle 64-bit code. (mips_elf_create_dynamic_sections): Use MIPS_ELF_LOG_FILE_ALIGN, instead of constant `2'. (mips_elf_create_got_section): Tidy. Use MIPS_ELF_GOT_SIZE. (mips_elf_create_msym_section): Use MIPS_ELF_LOG_FILE_ALIGN. (mips_elf_size_dynamic_sections): Use MIPS_ELF_REL_DYN_SECTION_NAME, MIPS_ELF_GOT_SIZE, MIPS_ELF_ADD_DYNAMIC_ENTRY. Remove #if 0'd code. Adjust all releveant entries in elf backend table. * elf64-mips.c (mips_elf64_section_from_shdr): Remove. (mips_elf64_section_processing): Likewise. Adjust elf backend entries to use _bfd_mips_elf variants now publicly available.
1999-07-07 * elflink.h (elf_link_create_dynamic_sections): Handle non-standardMark Mitchell8-42/+277
hash-entry sizes. (size_dynamic_sections): Likewise. (elf_link_output_extsym): Likewise. * elf.c: (elf_fake_sections): Likewise. * libbfd.c (bfd_get): New macro. (bfd_put): Likewise. * bfd-in2.h: Regenerated. * elf-bfd.h (elf_size_info): Add hash_entry_size, int_rels_per_ext_rel, swap_dyn_out, swap_reloc_in, swap_reloc_out, wap_reloca_in, and swap_reloca_out. * elflink.h (elf_link_read_relocs_from_section): Adjust to handle multiple internal relocations per external relocation. (link_read_relocs): Likewise. (elf_bfd_final_link): Likewise. (elf_link_input_bfd): Likewise. (elf_gc_mark): Likewise. (elf_gc_smash_unused_vtentry_relocs): Likewise. * elfcode.h (elf_swap_dyn_out): Adjust type to match elf_swap_dyn_in. (size_info): Add entries for new fields. * elf64-mips.c (mips_elf64_swap_reloc_out): Enable. (mips_elf64_be_swap_reloc_in): New function. (mips_elf64_be_swap_reloc_out): Likewise. (mips_elf64_be_swap_reloca_in): Likewise. (mips_elf64_be_swap_reloca_out): Likewise. (mips_elf64_size_info): Add entries for new fields.
1999-07-07tweak last elf_merge_symbol patchIan Lance Taylor1-4/+21
1999-07-07rebuildIan Lance Taylor1-0/+1
1999-07-07 * elflink.h (elf_bfd_final_link): Assert that section reloc_countIan Lance Taylor2-11/+60
field equals the new rel_count field. (elf_link_input_bfd): When doing a relocateable link, use the new rel_count field rather than the reloc_count field. (elf_reloc_link_order): Likewise. (elf_finish_pointer_linker_section): Likewise. Based on patch from H.J. Lu <hjl@gnu.org>: * elflink.h (elf_merge_symbol): Permit a non-weak definition in a shared library to override a weak definition in a regular object.
1999-07-06 * libhppa.h: Revert July 2, 1999 patch.Jeff Law2-0/+17
1999-07-06èJeff Law1-3/+3
* elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): T mode selectors need to generate DLTIND relocations, not DLTREL relocations.
1999-07-06ÿJeff Law1-0/+5
* elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): T mode selectors need to generate DLTIND relocations, not DLTREL relocations.
1999-07-05Add support for arm v5 architectures.Nick Clifton5-7/+32
1999-07-05Add BFD_RELOC_ARM_ADRL_IMMEDIATE.Nick Clifton3-0/+10
1999-07-02 * dwarf2.c (parse_comp_unit): Add ABBREV_LENGTH parameter.Mark Mitchell7-20/+65
(_bfd_dwarf2_find_nearest_line): Add ADDR_SIZE parameter. * elf.c (_bfd_elf_find_nearest_line): Pass it. * elf32-arm.h (elf32_arm_find_nearest_line): Likewise. * elf32-mips.c (ABI_64_P): New macro. (IRIX_COMPAT): We are IRIX6-compatible if ABI_64_P. (_bfd_mips_elf_find_nearest_line): Adjust call to _bfd_dwarf2_find_nearest_line. * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype. * libbfd.h: Regenerated.
1999-07-02 * config.bfd: Add * at the end of i[3456]86-*-unixware.Ian Lance Taylor2-1/+5
1999-07-02 * libhppa.h (HPPA_R_ARG_RELOC): Delete.Jeff Law2-15/+5
(HPPA_R_CONSTANT, HPPA_R_ADDEND): Likewise.
1999-07-01 * elf-bfd.h (bfd_elf_section_data): Add rel_count and rel_count2Mark Mitchell5-101/+248
fields. (_bfd_elf_init_reloc_shdr): New function. * elf.c (_bfd_elf_new_section_hook): Use bfd_zalloc, rather than bfd_alloc followed by memset. (_bfd_elf_init_reloc_shdr): New function, split out from ... (elf_fake_sections): Here. (assign_section_numbers): Assign section numbers for the second relocation section, if required. * elflink.h (elf_link_output_relocs): New function. (elf_link_size_reloc_section): Likewise. (elf_bfd_final_link): Use elf_link_size_reloc_section. (elf_link_input_bfd): Use elf_link_output_relocs. * elf32-mips.c (_bfd_mips_elf_fake_sections): Use _bfd_elf_init_reloc_shdr to initialize rel_hdr2.
1999-07-01XJeff Law1-0/+11
* elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle R_PCREL_CALL with 22bit format.
1999-07-01èJeff Law1-0/+5
* elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle R_PCREL_CALL with 22bit format.
1999-06-30 * elf32-mips.c (mips_elf_got_info): Move declaration beforeMark Mitchell2-1059/+1551
prototypes. Change global_gotsym to be a pointer to a hash entry, rather than a number index. (mips_elf_link_hash_entry): Move declaration before prototypes. (mips_elf_irix6_finish_dynamic_symbol): New function. (mips_elf_sign_extend): Likewise. (mips_elf_high): Likewise. (mips_elf_higher): Likewise. (mips_elf_highest): Likewise. (mips_elf_global_got_index): Likewise. (mips_elf_local_got_index): Likewise. (mips_elf_got_offset_from_index): Likeiwse. (mips_elf_record_global_got_symbol): Likewise. (mips_elf_got_page): Likewise. (mips_elf_next_lo16_addend): Likewise. (mips_elf_calculate_relocation): Likewise. (mips_elf_obtain_contents): Likewise. (mips_elf_perform_relocation): Likewise. (mips_elf_assign_gp): Likewise. (mips_elf_sort_hash_table_f): Likewise. (mips_elf_sort_hash_table): Likewise. (mips_elf_got_section): Likewise. (mips_elf_got_info): Likewise. (mips_elf_create_local_got_entry): Likewise. (mips_elf_got16_entry): Likewise. (mips_elf_create_dynamic_relocation): Likewise. (elf_mips_howto_table): Add description of R_MIPS_SCN_DISP. (mips_elf_final_gp): Use mips_elf_assign_gp. (_bfd_mips_elf_symbol_processing): Don't move SHN_COMMON symbols into SHN_SCOMMON automatically on IRIX6. (mips_elf_add_symbol_hook): Likewise. (mips_elf_relocate_section): Rewrite, using mips_elf_calculate_relocation and mips_elf_perform_relocation. (mips_elf_create_dynamic_section): Use MIPS_ELF_STUB_SECTION_NAME. Don't deal with .rld_map on IRIX6. (mips_elf_create_got_section): Adjust use of global_gotsym. Set section flags appropriately for .got. (mips_elf_check_relocs): Handle IRIX6 relocations making use of the got. Call mips_elf_record_global_got_symbol and allocate local got space appropriately. (mips_elf_size_dynamic_sections): Use bfd_byte *, not unsigned char *. Rework calculation of GOT size. Sort dynamic symbol table entries so entries that do not require GOT entries appear at the beginning. Don't use DT_MIPS_HIPAGENO on IRIX6. Remove dead code dealing with DT_INIT and DT_FINI. Remove fiddling with global_gotsym. (mips_elf_finish_dynamic_symbol): Adjust creation of global GOT entries. (mips_elf_finish_dynamic_symbol): Use mips_elf_irix6_finish_dynamic_symbol. (mips_elf_finish_dynamic_sections): Correct off-by-one error setting DT_MIPS_UNREFEXTNO. Adjust setting of DT_MIPS_GOTSYM for change to global_gotsym. Set DT_MIPS_OPTIONS on IRIX6.
1999-06-30 * elf32-mips.c (mips_elf_final_link): Don't set CPIC when doing aIan Lance Taylor2-2/+8
relocateable link. From Ralf Baechle <ralf@uni-koblenz.de>.
1999-06-30Define 'elf_backend_got_header_size' and 'elf_backend_plt_header_size'.Nick Clifton2-0/+8
1999-06-29Patch from: Jim Pick <jim@jimpick.com>Nick Clifton2-0/+6
Take note of 'no_undefined'.
1999-06-29°Jeff Law1-41/+0
* elf-hppa.c (elf_hppa_howto_table): Use bfd_elf_generic_reloc as relocation function. * elf32-hppa.c (hppa_elf_reloc): Kill unused/unwanted function.
1999-06-29èJeff Law2-218/+224
* elf-hppa.c (elf_hppa_howto_table): Use bfd_elf_generic_reloc as relocation function. * elf32-hppa.c (hppa_elf_reloc): Kill unused/unwanted function.
1999-06-27 * elf32-mips.c (MIPS_ELF_SRDATA_SECTION_NAME): New macro.Mark Mitchell2-149/+249
(MIPS_ELF_OPTIONS_SECTION_NAME): Likewise. (MIPS_ELF_STUB_SECTION_NAME): Likewise. (_bfd_mips_elf_section_from_shdr): Use them. (_bfd_mips_elf_fake_sections): Likewise. Add .srdata to the list of GP-relative sections. (_bfd_mips_elf_set_section_contents): Use them. (_bfd_mips_elf_section_processing): Share code between .sdata and .lit4/.lit8 sections. Set appropriate flags for .srdata. (mips_elf_additional_program_headers): Add handling for PT_MIPS_OPTIONS segment on IRIX6. (mips_elf_modify_segment_map): Likeiwse. (mips_elf_final_link): Set EF_MIPS_CPIC when required by the ABI. Include the options sections on IRIX6. Don't look for GP-relative sections by name; use SHF_MIPS_GPREL instead. (ELF_DYNAMIC_INTERPRETER): Adjust to use /usr/lib32/libc.so.1 for the N32 ABI. (mips_elf_create_dynamic_sections): Don't muck about with section alignments and such on IRIX6. (mips_elf_adjust_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME. (mips_elf_size_dynamic_sections): Likewise. Adjust to handle the fact that ELF_DYNAMIC_INTERPRETER is no longer a constant. Use bfd_zalloc rather than bfd_alloc and memset. (mips_elf_finish_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME. Don't assert the existence of .rld_map on IRIX6. (mips_elf_finish_dynamic_sections): Use MIPS_ELF_STUB_SECTION_NAME.
1999-06-27 * elf32-mips.c (mips_elf_adjust_dynindx): Remove.Mark Mitchell2-18/+7
(mips_elf_size_dynamic_sections): Use _bfd_elf_link_adjust_dynindx instead.
1999-06-27 * elf32-mips.c (mips_elf_swap_msym_in): New function.Mark Mitchell2-7/+160
(mips_elf_swap_msym_out): New function. (mips_elf_create_msym_section): Likewise. (MIPS_ELF_MSYM_SECTION_NAME): New macro. (_bfd_mips_elf_final_write_processing): Set sh_link for .msym. (_bfd_mips_elf_section_from_shdr): Reject an SHT_MIPS_MSYM section not named .msym. (_bfd_mips_elf_fake_sections): Use MIPS_ELF_MSYM_SECTION_NAME, not .msym directly. Set appropriate attributes for the .msym section. (mips_elf_link_hash_entry): Add min_dyn_reloc_index field. (mips_elf_link_hash_newfunc): Clear it. (mips_elf_create_dynamic_sections): Create the .msym section on IRIX6. (mips_elf_size_dynamic_sections): Allocate space for the .msym section. Add a DT_MIPS_MSYM entry. (mips_elf_finish_dynamic_symbol): Write out a .msym entry for the symbol. (mips_elf_finish_dynamic_sections): Assign a value for DT_MIPS_MSYM. Add .msym entries for the section symbols as well.
1999-06-26 * elf32-mips.c (irix_compat_t): New enumeration.Mark Mitchell2-5/+32
(ABI_N32_P): New macro. (IRIX_COMPAT): Likewise. (SGI_COMPAT): Implement in terms of IRIX_COMPAT. (mips_elf_relocate_section): Fix typo.
1999-06-26fix copyrightIan Lance Taylor1-1/+1
1999-06-261999-06-26 Mumit Khan <khan@xraylith.wisc.edu>Ian Lance Taylor2-1/+10
* peicode.h (coff_swap_scnhdr_out): Mark non readonly BFD sections as writable PE sections.
1999-06-26David Mosberger <davidm@hpl.hp.com>Richard Henderson2-54/+105
* dwarf2.c (struct arange): New type. (struct comp_unit): Replace LOW and HIGH by member ARANGE. (arange_add): New function. (decode_line_info): Keep track of address ranges that a compilation unit covers. (comp_unit_contains_address): Return true if address is contained in _any_ of the address ranges associated with a compilation unit. (_bfd_dwarf2_find_nearest_line): Call comp_unit_find_nearest_line on the first comp_unit that contains the address.
1999-06-26David Mosberger <davidm@hpl.hp.com>Richard Henderson2-4/+16
* dwarf2.c (struct dwarf2_debug): Add member dwarf_line_buffer. (decode_line_info): Add variable STASH and initialize it to point to the per-bfd dwarf2_debug info. Remove static variable dwarf_line_buffer and use stash->dwarf_line_buffer in its place.
1999-06-26 * elflink.h (elf_link_output_extsym): It's OK for a -BsymbolicIan Lance Taylor2-1/+3
shared library to have an undefined symbol.
1999-06-26 From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>:Ian Lance Taylor2-1/+5
* elf32-ppc.c (ppc_elf_relocate_section): Fix last patch.
1999-06-24ðJeff Law1-1217/+18
* elf-hppa.c (elf_hppa_final_write_processing): New function. * elf32-hppa.c: Remove everything related to symbol extension sections & records. Use the common elf_hppa_final_write_processing.
1999-06-24*** empty log message ***Jeff Law1-0/+26
1999-06-24dJeff Law1-0/+6
* elf-hppa.c (elf_hppa_final_write_processing): New function. * elf32-hppa.c: Remove everything related to symbol extension sections & records. Use the common elf_hppa_final_write_processing.
1999-06-23 * elflink.h (size_dynamic_sections): Use user-specified init/finiMark Mitchell2-10/+21
functions instead of _init/_fini if requested.
1999-06-22 * elf.c (bfd_section_from_shdr): Avoid crashing on a bogus sh_linkIan Lance Taylor2-0/+14
field.
1999-06-22 From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>:Ian Lance Taylor2-22/+33
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Set unused dynindx field to 0, not -1. (ppc_elf_finish_dynamic_sections): Check for positive section dynindx field, rather than comparing against -1. (ppc_elf_relocate_section): Only return false if undefined_symbol or reloc_overflow fail, not always upon encountering an error.
1999-06-22clarify section dynindx commentIan Lance Taylor1-1/+2
1999-06-22 * elflink.h (link_read_relocs): Explicitly cast external_relocs toMark Mitchell2-1/+6
bfd_byte * before performing pointer arithmetic.
1999-06-22 * elf-hppa.h: New file. Common stuff for elf32 and elf64 PAJeff Law4-433/+579
support. * elf32-hppa.c: Include elf-hppa.h. (ARCH_SIZE): Define. (elf_hppa_reloc_type_lookup): Delete. Found in the common code now. (elf32_hppa_info_to_howto): Similarly. (elf_hppa_howto_table): Similarly. (elf_hppa_reloc_type_lookup): Similarly. (hppa_elf_gen_reloc_type): Similarly. * elf32-hppa.h (ELF_HOWTO_TALBE, N_PARISC_RELOCS): Delete.
1999-06-22Catch overflow in 22_PCREL reloc.Nick Clifton2-0/+9
1999-06-21 * coff-arm.c (arm_emit_base_file_entry): Explicitly declare returnIan Lance Taylor2-1/+6
type.
1999-06-20 * section.c (_bfd_strip_section_from_output): Ignore sectionsRichard Henderson2-2/+9
DISCARDed by the link script.
1999-06-19 * elflink.h (elf_link_remove_section_and_adjust_dynindices):Ian Lance Taylor2-2/+8
Remove unused local variable spp.
1999-06-19 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't crash ifIan Lance Taylor1-5/+10
the entry symbol is not set.
1999-06-18 * elf64-alpha.c (elf64_alpha_relocate_section): Don't adjustRichard Henderson2-0/+11
GPDISP or LITUSE in a relocatable link.
1999-06-17 * dwarf1.c (alloc_dwarf1_unit): Allocate using bfd_zalloc.Joern Rennecke2-4/+9
* (alloc_dwarf1_func): Likewise.
1999-06-16 * libhppa.h: Fix various formatting errors.Jeff Law2-61/+48
(assemble_3); Rewrite using CATENATE. (assemble_17): Fix various bugs.