aboutsummaryrefslogtreecommitdiff
path: root/bfd
AgeCommit message (Collapse)AuthorFilesLines
1997-06-26 * elflink.h (elf_link_add_object_symbols): When a versionIan Lance Taylor2-0/+8
indirection symbol is overridden, make the original symbol point at the real overriding symbol.
1997-06-26 * elf.c (bfd_elf_string_from_elf_section): Check for an invalidIan Lance Taylor2-6/+19
string index.
1997-06-26 * elflink.h (elf_link_output_extsym): Use the right section for aIan Lance Taylor3-5/+20
common symbol. * elf32-mips.c (mips_elf_link_output_symbol_hook): If a common symbol was in .scommon, mark it as SHN_MIPS_SCOMMON. PR 12697.
1997-06-25Wed Jun 25 12:43:10 1997 H.J. Lu <hjl@gnu.ai.mit.edu>Ian Lance Taylor2-6/+9
* elflink.h (elf_merge_symbols): Resolve indirect and warning symbols before checking for new symbols.
1997-06-25Wed Jun 25 12:43:10 1997 H.J. Lu <hjl@gnu.ai.mit.edu>Ian Lance Taylor1-0/+4
* elfcore.h (elf_corefile_note): Move out of HAVE_SYS_PROCFS_H.
1997-06-24 * coffgen.c (coff_object_p): Read the f_opthdr bytes from theIan Lance Taylor1-0/+8
file, not aoutsz bytes (they are different in XCOFF .o files).
1997-06-24comment fixIan Lance Taylor1-1/+2
1997-06-24 * elflink.h (elf_merge_symbol): In the case of a new definedIan Lance Taylor2-56/+123
symbol overriding an old defined symbol, return the hash table entry which we modify, even if it is the target of an indirection. (elf_link_add_object_symbols): If the real name of the symbol gets overridden, convert the versioned symbol into an indirect symbol to the real symbol.
1997-06-23 * elflink.h (elf_merge_symbol): New static function, broken out ofIan Lance Taylor2-287/+385
elf_link_add_object_symbols. (elf_link_add_object_symbols): Call it.
1997-06-22 * coff-i386.c (i3coff_object_p): If COFF_IMAGE_WITH_PE, hack toIan Lance Taylor3-24/+114
handle case where COFF filehdr does not immediately follow PE header. * coffgen.c (coff_object_p): Remove useless seek to current location.
1997-06-18 * linker.c (link_action): Change COMMON_ROW/indr to from CREF toIan Lance Taylor1-0/+5
REFC.
1997-06-18revert last patchIan Lance Taylor2-15/+2
1997-06-18 * elflink.h (elf_link_add_object_symbols): Don't let a commonIan Lance Taylor2-2/+15
symbol in a regular object override a common symbol in a shared object if the latter was found via an indirect symbol.
1997-06-17 * cofflink.c (_bfd_coff_link_input_bfd): If stripping debuggingIan Lance Taylor1-0/+5
symbols, skip N_ABS symbols with debugging storage classes. PR 12630. Also a couple of warning and formatting fixes.
1997-06-16whitespace tweaksIan Lance Taylor1-18/+18
1997-06-16Mon Jun 16 18:56:27 1997 Geoff Keating <geoffk@ozemail.com.au>Ian Lance Taylor2-152/+440
* elf32-ppc.c (ppc_elf_relocate_section): Don't emit R_PPC_REL* relocs in shared libraries which refer to local symbols. Cope with addend when processing a GOT relocation. * elf32-ppc.c (ppc_elf_size_dynamic_sections): Only create symbols for sections that the linker didn't create. (ppc_elf_finish_dynamic_sections): Only try to write out a section symbol if it was created in ppc_elf_size_dynamic_sections. (ppc_elf_relocate_section): Complain if we have to generate a reloc relative to a section for which we didn't output a symbol. * elf32-ppc.c (ppc_elf_size_dynamic_sections): Clean up. PLT relocs are 'rela' relocs, like everything else. .rela.plt is not a read-only section, so we don't have to special-case it. * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Entries in the .rela.bss section are (of course) 'rela' relocs not 'rel' relocs. * elf32-ppc.c (ppc_elf_check_relocs): Initialise srelgot. (ppc_elf_relocate_section): @got offsets are 4 from start of the actual .got section. * elflink.c (_bfd_elf_create_got_section): The three reserved words start from the symbol '_GLOBAL_OFFSET_TABLE_'. * elf32-ppc.c (ppc_elf_size_dynamic_sections): '.rela' is 5 characters, not 4. * elf32-ppc.c (ppc_elf_check_relocs): Use _bfd_elf_create_got_section to create the GOT rather than ppc_elf_create_linker_section. Create the '.rela.got' section ourselves. (ppc_elf_finish_dynamic_symbol): Set up GOT relocations when a symbol has a GOT entry. (ppc_elf_relocate_section): Record when a symbol is used through the GOT, and allocate space in the GOT for each such symbol. (ppc_elf_adjust_dynamic_symbol): Delete unused .got.plt stuff. (ppc_elf_create_linker_section): Delete unused LINKER_SECTION_GOT stuff. * elf32-ppc.c (ppc_elf_howto_raw): GOT16_HA relocs should be treated in a similar way to ADDR16_HA relocs. (ppc_elf_relocate_section): PLTREL24 relocs do not get copied into shared objects; the linker must deal with them. (ppc_elf_create_linker_section): Stop setting _GLOBAL_OFFSET_TABLE_ to the wrong value; delete unused LINKER_SECTION_PLT stuff. (ppc_elf_check_relocs): Delete unused LINKER_SECTION_PLT stuff. (ppc_elf_finish_dynamic_sections): Use BFD calls to get GOT section, not ELF-specific calls. (elf_backend_plt_not_loaded): Set to 1. (elf_backend_got_symbol_offset): Set to 4. * elf-bfd.h (elf_backend_data): Add 'plt_not_loaded' member for when ld.so fills in the PLT; and 'got_symbol_offset' member. * elflink.c (_bfd_elf_create_dynamic_sections): Apply plt_not_loaded member. (_bfd_elf_create_got_section): Apply got_symbol_offset. * elfxx-target.h (elf_backend_plt_not_loaded): Set default to 'loaded'. (elf_backend_G_O_T_offset): Set default to 0. (elfNN_bed): Set added fields. * elf32-ppc.c (ppc_elf_size_dynamic_sections): Was setting DT_RELENT in shared objects; should be DT_RELAENT. * elf32-ppc.c (ppc_elf_relocate_section): Propagate R_PPC_ADDR16_HA relocs to shared objects. Cope with case where such a reloc (in a non-shared object) refers to a symbol that's not defined.
1997-06-16creditIan Lance Taylor1-0/+1
1997-06-16 * Makefile.in (CC, CFLAGS): Substitute from configure script.Ian Lance Taylor2-62/+151
1997-06-16 * elf32-i386.c (elf_i386_relocate_section): When generating aIan Lance Taylor2-3/+14
shared library, do the relocation if the input section is not allocated in memory.
1997-06-16Mon Jun 16 14:42:14 1997 H.J. Lu <hjl@gnu.ai.mit.edu>Ian Lance Taylor2-2/+15
* elfcode.h (put_signed_word): Define. (get_signed_word): Define. (elf_swap_reloca_in): Use get_signed_word for the r_addend field. (elf_swap_reloca_out): Use put_signed_word for the r_addend field. * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Use bfd_get_signed_32 to set the r_addend field. * elf64-mips.c (mips_elf64_swap_reloca_in): Use bfd_h_get_signed_64 to set the r_addend field.
1997-06-16 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): CallIan Lance Taylor2-52/+93
elf_link_assign_sym_version before elf_adjust_dynamic_symbol. (elf_fix_symbol_flags): New static function, broken out of elf_adjust_dynamic_symbol. (elf_adjust_dynamic_symbol): Call elf_fix_symbol_flags. (elf_link_assign_sym_version): Likewise. Permit a symbol to be forced local even if NEEDS_PLT is set. When forcing a symbol to be local, clear NEEDS_PLT. (elf_link_output_extsym): Remove unused local bed.
1997-06-12 * elf32-mn10300.c (elf32_mn10300_link_hash_entry): New structureJeff Law1-0/+17
for derived elf linker hash table entries. References to elf_link_hash_entry changed appropriately. (elf32_mn10300_link_hash_table): New structure for derived elf linker hash table. (elf32_mn10300_hash_table): Define. (elf32_mn10300_link_hash_traverse): Likewise. (elf32_mn10300_link_hash_newfunc): New function. (elf32_mn10300_link_hash_table_create): Likewise. (elf32_mn10300_finish_hash_table_entry): Likewise. (mn10300_elf_relax_section): Handle "call" -> "calls", removal of prologue code, and call:32->call:16 relaxing. (compute_function_info: New function. (bfd_elf32_bfd_ilink_hash_table_create): Define.
1997-06-12Back out last change, there are too many more to fix them all.Fred Fish2-6/+1
1997-06-12 * coffgen.c (_bfd_coff_is_local_label_name): Return proper booleanFred Fish2-22/+133
(enum) type.
1997-06-11 * elflink.h (elf_link_output_extsym): Call finish_dynamic_symbolIan Lance Taylor5-49/+66
for a symbol which is being forced to be local. * elf32-i386.c (elf_i386_relocate_section): Write out the relocation value for a GOT reloc for a symbol which is turning into a local symbol. (elf_i386_finish_dynamic_symbol): If a symbol is turning into a local symbol, write out a RELATIVE reloc rather than a GLOB_DAT reloc. * elf32-m68k.c, elf32-sparc.c: Corresponding changes.
1997-06-11 * elf32-i386.c (elf_i386_relocate_section): Get the relocationIan Lance Taylor4-49/+300
value if the symbol is turning into a local symbol. * elf32-m68k.c (elf_m68k_relocate_section): Likewise. * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1997-06-10(elf_link_add_object_symbols): Also read verneedUlrich Drepper2-63/+67
information by calling `_bfd_elf_slurp_version_tables'. (elf_link_add_object_symbols): For undefined symbols look for version informaiton in the verneed records. (elf_link_add_object_symbols): Use soname of shared object for verneed record if it is available.
1997-06-10Tue Jun 10 11:13:03 1997 H.J. Lu <hjl@gnu.ai.mit.edu>Ian Lance Taylor2-15/+34
* cpu-arm.c: Add prototypes for compatible and scan. * cofflink.c: Add prototype for mark_relocs. * archive.c (bfd_special_undocumented_glue): Change filename to const pointer. Add prototype.
1997-06-09Mon Jun 9 12:34:21 1997 Andreas Schwab ↵Ian Lance Taylor2-1/+7
<schwab@issan.informatik.uni-dortmund.de> * elflink.h (elf_link_add_object_symbols): Ignore relocations of sections that will be discarded.
1997-06-06(elf_link_find_version_dependencies): When searchingUlrich Drepper2-69/+80
for known version symbol skip non-matching verdef records, not matching records.
1997-06-04Added the Thumb relocations from the armT-970328-branch.Nick Clifton1-0/+2
1997-06-04Merged in changes made in armT-970328-branchNick Clifton3-7/+36
1997-05-31 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Set dynindxIan Lance Taylor1-0/+3
for a section even if it is not loaded. Otherwise compiling this static char bar; char *foo() { return &bar; } without -fpic and then doing ld -shared OBJECT dumps core.
1997-05-30 * cofflink.c (coff_link_add_symbols): If PE file, don't subtractIan Lance Taylor1-0/+13
section VMA. (_bfd_coff_link_input_bfd): Separate section VMA handling for input and output files. (_bfd_coff_generic_relocate_section): Check whether input file, not output file, is a PE file.
1997-05-28 * coff-i386.c (coff_i386_reloc): Don't just exit if we see anIan Lance Taylor1-0/+5
R_IMAGEBASE reloc.
1997-05-28Added support for ARM architecture supersets in the compatibility function.Nick Clifton1-0/+5
1997-05-28 * cofflink.c (_bfd_coff_final_link): Initialize global_to_staticBob Manson1-0/+5
member. Fixes linker bug on hpux-x-i960-vxworks.
1997-05-27Made coff-arm_bfd_set_private_flags global as it is called directly fromNick Clifton2-1/+6
gas/config/tc-arm.c .
1997-05-27Tue May 27 15:58:53 1997 Richard Henderson <rth@tamu.edu>Ian Lance Taylor1-0/+5
* elf64-alpha.c (PLT_ENTRY_*): Use a new thread-safe format. (elf64_alpha_finish_dynamic_symbol): Fill it in properly.
1997-05-26 * coff-ppc.c (coff_ppc_relocate_section): If PE file, don't addIan Lance Taylor1-0/+5
section VMA.
1997-05-26 * peicode.h (coff_bfd_print_private_bfd_data): #undef before #define.Fred Fish2-8/+22
(coff_bfd_copy_private_bfd_data): Ditto. * coff-arm.c (coff_arm_bfd_merge_private_bfd_data): Make static. (coff_arm_bfd_print_private_bfd_data): Ditto. (coff_arm_bfd_set_private_flags): Ditto. (coff_arm_bfd_copy_private_bfd_data): Ditto.
1997-05-24 * libcoff-in.h (struct coff_final_link_info): Add booleanFred Fish2-0/+84
global_to_static member for support of task linking. (_bfd_coff_write_task_globals): Add prototype. * libcoff.h: Regenerate. * coffcode.h (coff_write_object_contents): Use #ifdef to check RS6000COFF_C, to be consistent with all other uses in this file. * cofflink.c (_bfd_coff_final_link): If doing task linking, call _bfd_coff_write_task_globals. (_bfd_coff_link_input_bfd): If doing task linking, convert global functions to static. (_bfd_coff_write_global_sym): If doing task linking, convert global variables to static. (_bfd_coff_write_task_globals): New function. * coff-tic80.c (TIC80COFF): Define this instead of just TIC80. (C_AUTOARG): #undef since it clashes with C_UEXT. (C_LASTENT): #undef since it clashes with C_STATLAB. * coffcode.h (coff_write_object_contents): Use TIC80COFF rather than TIC80. (coff_slurp_symbol_table): Use C_SYSTEM. Hide C_AUTOARG use when TIC80COFF defined (clashes with C_UEXT). Explicitly recognize C_UEXT, C_STATLAB, and C_EXTLAB as unsupported. PR 12236
1997-05-23 * coff-tic80.c (tic80_howto_table): Change overflow check for mostIan Lance Taylor2-18/+23
PP relocations to complain_overflow_dont.
1997-05-23 * coff-tic80.c (tic80_howto_table): Add PP relocations. ChangeIan Lance Taylor2-11/+601
name of R_RELLONG to "RELLONG". Set rightshift and complain for M_PPCR. (ppbase_reloc, glob15_reloc): New static functions. (glob16_reloc, local16_reloc): New static functions. (rtype2howto): Handle all relocation types. (coff_tic80_relocate_section): New static function. (coff_relocate_section): Define to coff_tic80_relocate_section. * Makefile.in (coff-tic80.o): Depends upon include/coff/tic80.h.
1997-05-22Tweak ChangeLog entry.David Edelsohn1-1/+1
1997-05-21 * coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE orIan Lance Taylor3-8/+42
COFF_IMAGE_WITH_PE, don't subtract the section VMA from the symbol value. * coffgen.c (fixup_symbol_value): Add abfd parameter. Change all callers. If PE file, don't add section VMA. (coff_write_alien_symbol): If PE file, don't add section VMA. * cofflink.c (_bfd_coff_link_input_bfd): Likewise. (_bfd_coff_write_global_sym): Likewise. (_bfd_coff_generic_relocate_section): Likewise.
1997-05-21 * peicode.h: Add & 0xffffffff when using ImageBase in case bfd_vmaIan Lance Taylor2-40/+108
is 64 bits.
1997-05-21Added code to cope with 'ld -X -r' stripiung symbols that will later beNick Clifton2-19/+123
used in relocations.
1997-05-20 * coff-sh.c (sh_merge_private_data): New static function.Ian Lance Taylor1-0/+10
(coff_bfd_merge_private_bfd_data): Define. PR 12351.
1997-05-19 * coff-tic80.c: Remove unnecessary #ifdefs.Mark Alexander1-15/+1
* config.bfd: Set targ_underscore to yes for tic80.