diff options
author | Ian Lance Taylor <ian@airs.com> | 1998-07-06 22:08:05 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1998-07-06 22:08:05 +0000 |
commit | 06fdc311e7ffc3cb7e59321ba04b02bd2105883a (patch) | |
tree | 1870fa68d571a2b67c6d782952ba37077770f8d9 /bfd | |
parent | d2b02ab22dc077732b16ab86cc352a91dcd05a5b (diff) | |
download | gdb-06fdc311e7ffc3cb7e59321ba04b02bd2105883a.zip gdb-06fdc311e7ffc3cb7e59321ba04b02bd2105883a.tar.gz gdb-06fdc311e7ffc3cb7e59321ba04b02bd2105883a.tar.bz2 |
Rearrange ChangeLog files by years.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/.Sanitize | 5 | ||||
-rw-r--r-- | bfd/ChangeLog | 8899 | ||||
-rw-r--r-- | bfd/ChangeLog-9193 (renamed from bfd/ChangeLog.1) | 902 | ||||
-rw-r--r-- | bfd/ChangeLog-9495 (renamed from bfd/ChangeLog.2) | 3012 |
4 files changed, 3017 insertions, 9801 deletions
diff --git a/bfd/.Sanitize b/bfd/.Sanitize index d8c7c33..1536ce8 100644 --- a/bfd/.Sanitize +++ b/bfd/.Sanitize @@ -41,8 +41,9 @@ Things-to-keep: COPYING ChangeLog -ChangeLog.1 -ChangeLog.2 +ChangeLog-9193 +ChangeLog-9495 +ChangeLog-9697 Makefile.am Makefile.in PORTING diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 40b193d..5df922b 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -23,11 +23,11 @@ Fri Jul 3 13:11:35 1998 Ian Lance Taylor <ian@cygnus.com> * stabs.c (_bfd_write_stab_strings): Check whether the .stabstr section was discarded from the link. -Fri Jul 3 14:39:05 1997 J"orn Rennecke <amylaar@cygnus.co.uk> +Fri Jul 3 14:39:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk> * coff-sh.c (sh_insn_uses_freg): Ignore lowest bit of register number. -Fri Jul 3 14:35:48 1997 J"orn Rennecke <amylaar@cygnus.co.uk> +Fri Jul 3 14:35:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk> * coff-sh.c (sh_insns_conflict): Load of fpscr conflicts with floating point operations. @@ -1353,7 +1353,7 @@ Thu Jan 29 15:55:35 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwen * aclocal.m4, configure: Rebuild. start-sanitize-sky -Wed Jan 28 15:14:28 1997 Doug Evans <devans@canuck.cygnus.com> +Wed Jan 28 15:14:28 1998 Doug Evans <devans@canuck.cygnus.com> * config.bfd, configure.in: Add dvp support. * configure: Regenerate. @@ -1461,8898 +1461,7 @@ Wed Jan 14 16:03:11 1998 Richard Henderson <rth@cygnus.com> to keep {CALL,BAL}NAME symbols adjacent. (b_out_symbol_cmp): New function. -Tue Dec 30 12:45:18 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-sparc.c (elf32_sparc_check_relocs): If -Bsymbolic, don't - allocate space for a PC relative reloc against a symbol which is - defined in a regular file. - (elf32_sparc_relocate_section): If -Bsymbolic, don't copy a PC - relative reloc against a symbol which is defined in a regular - file. - -Mon Dec 29 18:02:28 1997 Ian Lance Taylor <ian@cygnus.com> - - From Jonathan Stone <jonathan@DSG.Stanford.EDU>: - * config.bfd (mips-dec-netbsd*): Add ECOFF vectors to - targ_selvecs. - (mips*el-*-netbsd*): Like mips-dec-netbsd*. - (mips*-*-netbsd*): New target. - -Mon Dec 29 17:13:28 1997 H.J. Lu (hjl@gnu.org) - - * elflink.h (elf_link_assign_sym_version): Change error message - from "undefined version name" to "undefined versioned symbol - name". - -Mon Dec 29 11:41:16 1997 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (coff_arm_relocate_section): Fix typo from previous - delta. - -Tue Dec 23 17:01:10 1997 Ian Lance Taylor <ian@cygnus.com> - - * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Declare. - * libbfd.h: Rebuild. - - * peicode.h (coff_swap_scnhdr_out): Set .reloc section to be - shared. Set stab* sections to be shared and read. Set .rsrc - section to be read and shared. - -Mon Dec 22 13:20:57 1997 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am: Rebuild dependencies. - (ALL_MACHINES_CFILES): Add dwarf2.lo. - (ALL_MACHINES_CFILES): Add dwarf2.c. - * Makefile.in: Rebuild. - - * coff-arm.c: Don't include obstack.h. - -Mon Dec 22 13:04:33 1997 Joel Sherrill <joel@oarcorp.com> - - * config.bfd (i[3456]86*-go32-rtems*): Fix to be the same as - i[3456]86-go32. - -Thu Dec 18 16:01:25 1997 Doug Evans <devans@canuck.cygnus.com> - - * configure: Regenerate to get @SHELL@ substituted. - -Wed Dec 17 09:45:09 1997 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (coff_arm_relocate_section): Only look at section - owner if there is one. - - * elf.c (assign_file_positions_for_segments): Fail if there is not - enough room for the program headers. - -Tue Dec 16 08:09:56 1997 Gavin Koch <gavin@cygnus.com> - - * elf.c (_bfd_elf_find_nearest_line): Call - _bfd_dwarf2_find_nearest_line first. - * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Same. - * dwarf2.c: New file; implement _bfd_dwarf2_find_nearest_line. - -Mon Dec 15 16:08:52 1997 Nick Clifton <nickc@cygnus.com> - -start-sanitize-m32rx - * elf32-m32r.c (m32r_elf_merge_private_bfd_data): Allow M32R - object files to be merged into a M32RX executable. - - * archures.c: Add bfd_mach_m32rx. -end-sanitize-m32rx - * archures.c: Add bfd_mach_m32r. - -Mon Dec 15 16:11:22 1997 Fred Fish <fnf@cygnus.com> - - * coffcode.h (ALIGN_SECTIONS_IN_FILE): Define if I960 not defined. - (coff_compute_section_file_positions): Use ALIGN_SECTIONS_IN_FILE - to decide when to align the file sections for paging. -start-sanitize-tic80 - * coffcode.h (ALIGN_SECTIONS_IN_FILE): Undefine for TIC80COFF. -end-sanitize-tic80 - -Mon Dec 15 15:01:15 1997 Nick Clifton <nickc@cygnus.com> - - * elf32-m32r.c (m32r_elf_object_p): New Function. - (m32r_elf_final_write_processing): New Function. - (m32r_elf_set_private_flags): New Function. - (m32r_elf_copy_private_bfd_data): New Function. - (m32r_elf_merge_private_bfd_data): New Function. - (m32r_elf_print_private_bfd_data): New Function. - (elf_backend_object_p): Point to m32r_object_p. - (elf_backend_final_write_processing): Point to - m32r_elf_final_write_processing. - (bfd_elf32_bfd_copy_private_bfd_data): Point to - m32r_elf_copy_private_bfd_data. - (bfd_elf32_bfd_merge_private_bfd_data): Point to - m32r_elf_merge_private_bfd_data. - (bfd_elf32_bfd_set_private_flags): Point to - m32r_elf_set_private_bfd_data. - (bfd_elf32_bfd_print_private_bfd_data): Point to - m32r_elf_print_private_bfd_data. - -start-sanitize-m32rx - * cpu-m32r.c: Add m32rx cpu architecture. - * bfd-in2.h (bfd_mach_m32rx): Add identifier for M32RX - architecture machines. -end-sanitize-m32rx - - * bfd-in2.h (bfd_mach_m32r): Add identifier for M32R architecture - machines. - -Fri Dec 12 11:30:28 1997 Brendan Kehoe <brendan@canuck.cygnus.com> - - * configure: Only build libbfd shared if --enable-shared's value - was `yes', or was set to `*bfd*'. - * aclocal.m4: Likewise. - * NOTE: this really needs to be fixed in libtool/libtool.m4, the - original source of this bit of code. It's not clear what the best fix - would be, though. - -Thu Dec 11 17:48:11 1997 Richard Henderson <rth@cygnus.com> - - * linker.c (generic_link_add_symbol_list): Always init udata.p so - that the generic relaxation code can function when input and output - file formats are mismatched. - -Thu Dec 11 01:02:18 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-sh.c (bfd_coff_small_swap_table): Initialize new fields. - - * elf.c (assign_file_positions_for_segments): For a loadable - section, make sure that the load address is correct relative to - the load address of the segment plus the size of the segment so - far. - - * coffcode.h (_coff_link_output_has_begun): Make static. - (_coff_final_link_postscript): Likewise. - -Wed Dec 10 23:37:11 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_input_bfd): Handle a relocateable link in - which a relocation refers to an indirect or warning symbol. - -Wed Dec 10 11:15:55 1997 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (bfd_arm_coff_final_link): Function deleted. - (coff_arm_final_link_postscript): New function. - (coff_arm_link_output_has_begun): New function. - - * libcoff.h (struct bfd_coff_backend_data): Add new fields: - _bfd_coff_link_output_has_begun and - _bfd_coff_final_link_postscript. Add new macros: - bfd_coff_link_output_has_begun() and - bfd_coff_final_link_postscript(). - - * cofflink.c (_bfd_coff_final_link): Insert calls to - bfd_coff_link_output_has_begun() and - bfd_coff_final_link_postscript(). - - * coffcode.h: Add two new fields to bfd_coff_backend_data - structure: _bfd_coff_link_output_has_begun and - _bfd_coff_final_link_postscript. Add default initialisers for - these fields. Add overridable aliases for the coff swap functions - in the backend data structure. - - * elf32-v850.c: Update with patches from the branch to fix - HI16_S/LO16 reloc pairs. - -start-sanitize-d30v -Wed Dec 10 14:06:48 1997 Michael Meissner <meissner@cygnus.com> - - * elf32-d30v.c (d30v_info_to_howto_rela): New function to support - RELA relocations. - (USE_REL): Don't define any more, switch to using RELA - relocations. - (elf_info_to_howto): Define as d30v_info_to_howto_rela. - -end-sanitize-d30v -Tue Dec 9 11:37:53 1997 Andrew Cagney <cagney@b1.cygnus.com> - - * archures.c (bfd_mach_mips*): Define. - (start-sanitize-vr5400): - (vr5400, bfd_mach_vr5000): Define. - (end-sanitize-vr5400): - (bfd_default_scan): For 3000 and 4000 replace magic constant with - macro. - - * cpu-mips.c (N): Define. - (bfd_mips_arch, arch_info_struct): Re-write using macro N, replace - numbers with bfd_mach_mips* macros. - -Fri Dec 5 11:13:46 1997 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_reloc, v850_elf_store_addend_in_insn, - v850_elf_relocate_section): Fix reloc addend handling. - (v850_elf_section_from_bfd_section, v850_elf_symbol_processing, - v850_elf_add_symbol_hook, v850_elf_link_output_symbol_hook, - v850_elf_section_from_shdr, v850_elf_fake_sections): New functions - to create and handle special common sections. - (v850_elf_final_link_relocate): Fix HI16 and HI16_S relocations - which have data stored in the instructions. - -Tue Dec 2 10:26:16 1997 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (TARGET_UNDERSCORE): Revert back to '_' - (USER_LABEL_PREFIX): Revert back to '_' - - * config.bfd (targ_cpu): Add support for Thumb target. - -Mon Dec 1 20:24:18 1997 J"orn Rennecke <amylaar@cygnus.co.uk> - - * coff-sh.c (sh_coff_howtos): Add R_SH_SWITCH8 entry. - (get_symbol_value): Handle R_SH_SWITCH8. - (sh_relax_delete_bytes): Likewise. - -Wed Nov 26 14:13:34 1997 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (TARGET_UNDERSCORE): Changed to match definition in - gcc/config/arm/semi.h - - * coffcode.h (coff_slurp_symbol_table): Add ARM and Thumb symbol - classes. - -Sun Nov 23 16:02:58 1997 Andrew Cagney <cagney@b1.cygnus.com> - - * freebsd.h (SWAP_MAGIC): Read magic number little and not big - endian. - -Wed Nov 26 09:30:37 1997 Nick Clifton <nickc@cygnus.com> - - * coffcode.h (coff_mkobject_hook): Only set private flags for non - PE ARM ports. - -Tue Nov 25 15:33:23 1997 Richard Henderson <rth@cygnus.com> - - * binary.c (binary_set_section_contents): Also ignore NEVER_LOAD - sections. - -Tue Nov 25 10:55:36 1997 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (coff_arm_bfd_merge_private_bfd_data): Do not - complain if inout and output formats differ. - -Tue Nov 25 11:26:27 1997 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am (BFD32_BACKENDS): Remove tekhex.lo. - (BFD32_BACKENDS_CFILES): Remove tekhex.c. - * Makefile.in: Rebuild. - * aclocal.m4, configure, src/Makefile.in: Rebuild with current - automake and autoconf. - - * coff-arm.c (arm_allocate_interworking_sections): Fix typo - (COFF_WITH_PR to COFF_WITH_PE). - -Mon Nov 24 15:47:49 1997 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c: Make variables and some functions static, so that - this file can be included in multiple object files. - (coff_arm_bfd_final_link): Fix minor bug. - -Sat Nov 22 15:16:00 1997 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c: Add support for PIC and APCS-FLOAT type binaries. - - * coffcode.h: Add support for PIC and APCS-FLOAT type binaries. - -Sat Nov 22 16:06:56 1997 Klaus Kaempf <kkaempf@progis.de> - - * evax-emh.c (_bfd_evax_write_emh): Use alloca instead of strdup. - -Sat Nov 22 12:29:30 1997 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c (sunos_add_one_symbol): When overriding a defined - symbol, set it to undefined, not new. - - * elf32-sh.c (sh_elf_relax_delete_bytes): Don't kill LABEL - relocs. - -Fri Nov 21 14:14:22 1997 Richard Henderson <rth@cygnus.com> - - * coff-sh.c (sh_relax_section): Force sign extention of USES r_offset. - (sh_relax_delete_bytes): Don't kill LABEL relocs. - -Mon Nov 17 15:08:38 1997 Jeffrey A Law (law@cygnus.com) - - * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Fix typo. - (mn10300_elf_relax_section): Likewise. - -Sat Nov 15 15:36:07 1997 Fred Fish <fnf@cygnus.com> - - * peicode.h (coff_swap_aouthdr_in): Cast second arg of - bfd_h_get_* calls to "bfd_byte *". - -Tue Nov 11 10:37:23 1997 Jeffrey A Law (law@cygnus.com) - - * elf-m10300.c (elf32_mn10300_link_hash_entry): Add new field - "movm_stack_size". - (mn10300_elf_relax_section): Include stack space for register saves - in the imm8 field of a "call" instruction. - (compute_function_info): Determine how much stack is allocated by - the movm instruction. Fix typo. - (elf32_mn10300_link_hash_newfunc): Initialize movm_stack_size. - -Mon Nov 10 14:32:40 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't crash if - a version dependency could not be found. - -Tue Nov 4 12:05:56 1997 Klaus K"ampf <kkaempf@progis.de> - - * configure.com: Get version info from configure.in - -Fri Oct 24 11:15:58 1997 Jakub Jelinek <jj@sunsite.mff.cuni.cz> - - * elf64-sparc.c (sparc64_elf_merge_private_bfd_data): - New function. Avoid mixing US1 and HAL R1 code. - Set resulting memory ordering to the strongest one used. - (sparc64_elf_object_p): Set bfd_mach correctly. - -Thu Oct 23 14:09:33 1997 Richard Henderson <rth@cygnus.com> - - * elf64-sparc.c (sparc64_elf_howto_table): Add UA64 & UA16. - (sparc64_elf_check_relocs): Handle them. - (sparc64_elf_relocate_section): Likewise. Before emitting a dyn reloc, - check alignment and transmute R_SPARC_x<->R_SPARC_UAx. - -Thu Oct 23 00:53:14 1997 Richard Henderson <rth@dot.cygnus.com> - - * configure.in (sparc*-*-linux*): Use trad-core and ... - * hosts/sparclinux.h: New file. - -Thu Oct 23 00:25:29 1997 Richard Henderson <rth@dot.cygnus.com> - - * config.bfd (sparc64-*-linux*): New target. - - * elf-bfd.h (struct elf_backend_data): Add plt_alignment member. - * elflink.c (_bfd_elf_create_got_section): Set .got alignment based - on arch_size. - (_bfd_elf_create_dynamic_sections): Likewise for .rel* sections. - Set .plt alignment from new plt_alignment. - * elflink.h (elf_link_create_dynamic_sections): Set version section - alignment to LOG_FILE_ALIGN. - * elfxx-target.h (elf_backend_plt_alignment): Provide default. - (elfXX_bed): Init plt_alignment. - - * elf64-sparc.c (sparc64_elf_check_relocs, - sparc64_elf_adjust_dynamic_symbol, sparc64_elf_size_dynamic_sections, - sparc64_elf_adjust_dynindx, sparc64_elf_finish_dynamic_symbol, - sparc64_elf_finish_dynamic_sections): New functions. - (sparc64_elf_howto_table): Fix a few name strings. - (ELF_DYNAMIC_INTERPRETER): New definition. - (sparc64_elf_relocate_section): Handle shared libraries. - - * elf64-sparc.c (struct plt_template, plt_*_header, plt_*_entry, - sparc64_elf_build_plt_entry, sparc64_elf_finish_dynamic_symbol): - PLT definitions sparc64-linux originally choose. These will go - away soon in favour of the official abi definitions. - -Wed Oct 22 16:08:45 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-sh.c (coff_small_object_p): New static function. - (coff_small_new_section_hook): New static function. - (bfd_coff_small_swap_table): New static const structure. - (coff_small_close_and_cleanup): Define. - (coff_small_bfd_free_cached_info): Define. - (coff_small_get_section_contents): Define. - (coff_small_get_section_contents_in_window): Define. - (shcoff_small_vec): New static structure. - (shlcoff_small_vec): New static structure. - * targets.c (bfd_target_vector): Add shcoff_small_vec and - shlcoff_small_vec. - * config.bfd (sh-*-elf*): Add shcoff_small_vec and - shlcoff_small_vec to targ_selvecs. - (sh-*-*): Likewise. - * configure.in: Add shcoff_small_vec and shlcoff_small_vec cases. - * configure: Rebuild. - -Mon Oct 20 15:01:27 1997 Klaus K"ampf <kkaempf@progis.de> - - * evax-egsd.c: Weak symbols are global. - - * evax-emh.c: Use proper casts. - - * evax-egsd.c (_bfd_evax_write_egsd): Remove unneeded uname. - - * evax-egsd.c: Section names and symbols have different - length restrictions. Add length parameter to - _bfd_evax_length_hash_symbol. - * evax-etir.c: Likewise. - * evax-misc.c (_bfd_evax_length_hash_symbol): Add length - parameter. - * evax.h (EOBJ_S_C_SECSIZ): Define. - - * evax-alpha.c: Remove duplicate test. - - * evax-emh.c: SYS$ functions are upper-case. - - * evax-egsd.c: Create separate sections for common symbols. - * evax-etir.c: Don't output common section. - * evax.h: Bump up section count. - - * configure.com: Use 64bit integers with DEC C. - - * evax-egsd.c: Make section flags dec c compatible. - -Mon Oct 20 09:38:31 1997 Jeffrey A Law (law@cygnus.com) - - * som.c (normalize): Delete function. - (som_bfd_ar_write_symbol_stuff): New parameter elength. All callers - changed. Use passed in elength to determine size of the extended - name table instead of computing it again. - -Sun Oct 19 23:36:21 1997 Jim Wilson <wilson@cygnus.com> - - * peicode.h (coff_swap_scnhdr_out): Use |= not = to set - IMAGE_SCN_MEM_READ for an unrecognized section. - -Sun Oct 19 21:04:56 1997 Jeffrey A Law (law@cygnus.com) - - * som.c (som_bfd_ar_write_symbol_stuff): Account for trailing - '/' in the extended name table. - -Fri Oct 17 00:04:13 1997 Richard Henderson <rth@cygnus.com> - - * elflink.h (elf_link_assign_sym_version): For explicitly versioned - symbols, check globals list before matching on locals. - -Thu Oct 16 08:17:06 1997 Michael Meissner <meissner@cygnus.com> - - * peicode.h (coff_swap_scnhdr_out,pe_print_idata): Fix mangled - patch. - -Wed Oct 15 13:45:10 1997 Ian Lance Taylor <ian@cygnus.com> - - * peicode.h (pe_mkobject_hook): Set DLL flag. - (pe_bfd_copy_private_bfd_data): Copy DLL flag. - - * peicode.h (coff_swap_scnhdr_out): Set IMAGE_SCN_MEM_DISCARDABLE - for .stab* sections. Replace strlen of constant strings with - number. - -Tue Oct 14 15:42:45 1997 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (elf64_alpha_merge_ind_symbols): New function to - merge got and reloc entries from ind syms to their target. - (elf64_alpha_always_size_sections): Call it. - (elf64_alpha_check_relocs): Operate on the target of indirect symbols. - (elf64_alpha_can_merge_gots): Likewise. - (elf64_alpha_merge_gots): Likewise. - - * elf64-alpha.c (elf64_alpha_relocate_section): Back out HJ's change, - as it is insufficient to handle the relocation changes as well. - -Mon Oct 13 23:10:08 1997 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (elf64_alpha_calc_dynrel_sizes): Allow for RELATIVE - relocs for symbols in shlibs that have been forced local. - (elf64_alpha_relocate_section): Output RELATIVEs in .got for same. - -Mon Oct 13 21:24:04 1997 Richard Henderson <rth@cygnus.com> - - * elf64-alpha.c (elf64_alpha_relocate_section): Use the - got_enties of the default symbol for the default versioned - symbol. Patch from hjl@gnu.ai.mit.edu, modified not to use - alloca in the loop. - -Mon Oct 13 17:37:37 1997 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_final_link_relocate): Only use the bottom - 24 bits of the PC when computing a PC relative relocation. - -Fri Oct 10 16:01:30 1997 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_reloc, v850_elf_final_link_relocate): - Correct value for maximum positive 22 bit PC relative relocation. - (v850_elf_final_link_relocate): Prevent overflow from HI16_S and - HI_16 relocations. Correct bit adjustment in TDA offsets. - -Thu Oct 9 16:43:39 1997 Doug Evans <dje@canuck.cygnus.com> - - * elf64-sparc.c (sparc_elf_{hix22,lox10}_reloc): New functions. - (sparc64_elf_howto_table): Use them for HIX22,LOX10 relocs. - -Wed Oct 8 11:38:45 1997 Richard Henderson <rth@cygnus.com> - - * elfcore.h (bfd_prstatus): Pedanticly, alignment_power should - be LOG_FILE_ALIGN. - -Wed Oct 8 11:36:00 1997 Richard Henderson <rth@cygnus.com> - - * config.bfd: Missed one alpha* change. - -Tue Oct 7 13:00:17 1997 Doug Evans <dje@canuck.cygnus.com> - - * elf32-sparc.c (_bfd_sparc_elf_howto_table): Remove BFD64 support. - * elf64-sparc.c (SPARC64_OLD_RELOCS): Undef. - (MINUS_ONE): New macro. - (sparc_elf_notsup_reloc): New function. - (sparc64_elf_howto_table): Add entries for DISP64,PLT64,HIX22,LOX10, - H44,M44,L44,REGISTER. - (sparc_reloc_map): Likewise. Map BFD_RELOC_CTOR to R_SPARC_64. - (init_insn_reloc): New function. - (sparc_elf_wdisp16_reloc): Use it. - (sparc64_elf_relocate_section): Add entries for OLO10,HIX22,LOX10. - -Tue Oct 7 11:40:37 1997 Ian Lance Taylor <ian@cygnus.com> - - * som.c (som_construct_extended_name_table): Remove static - function, and define as macro instead. - -Fri Oct 3 14:02:17 1997 Richard Henderson <rth@cygnus.com> - - * config.bfd: Change alpha-*-* to alpha*-*-*; config.guess now - recognizes alphaev5 etc. - * configure.host: Likewise. - -Fri Oct 3 11:23:47 1997 Ian Lance Taylor <ian@cygnus.com> - - Make ld -s work on AIX: - * xcofflink.c (xcoff_link_add_symbols): Don't create the .debug - section if we are stripping. - (bfd_xcoff_size_dynamic_sections): Don't set the .debug section - size if we are stripping. - (_bfd_xcoff_bfd_final_link): Don't set SEC_RELOC or rel_filepos, - and don't write out relocs, if we are stripping. - (xcoff_link_input_bfd): Don't set up reloc if we are stripping. - (xcoff_write_global_symbol): Don't write out symbol or reloc if we - are stripping. - - * configure.in: Don't include elf.lo again for ELF targets; it's - always in the library anyhow. - * configure: Rebuild. - - * bfd-in2.h: Rebuild. - - * elf32-sparc.c (sparc_elf_wdisp16_reloc): Cast to bfd_byte *, not - char *, when calling bfd_get_32 and bfd_put_32. - * sunos.c (sunos_scan_dynamic_symbol): Cast contents to char * - when calling strcpy. - -Thu Oct 2 16:15:50 1997 Doug Evans <dje@canuck.cygnus.com> - - * reloc.c (bfd_check_overflow): New function. - (bfd_perform_relocation, bfd_install_relocation): Use it. - (BFD_RELOC_SPARC_{DISP64,PLT64}): New relocs. - (BFD_RELOC_SPARC_{HIX22,LOX10,H44,M44,L44,REGISTER}): New relocs. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - -Thu Oct 2 13:17:18 1997 Ian Lance Taylor <ian@cygnus.com> - - * peicode.h (coff_swap_scnhdr_out): Set IMAGE_SCN_MEM_READ for an - unrecognized section. From Jon Thackray <jont@harlequin.co.uk>. - -Wed Oct 1 14:03:44 1997 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am ($(BFD_H)): Change stmp-bfd.h to stmp-bfd-h. - (stmp-bfd-h): Rename from stmp-bfd.h. - (BFD_H_FILES, LIBBFD_H_FILES, LIBCOFF_H_FILES): New variables. - ($(srcdir)/bfd-in2.h): Just depend upon stmp-bin2-h. - (stmp-bin2-h): New target. - ($(srcdir)/libbfd.h): Just depend upon stmp-lbfd-h. - (stmp-lbfd-h): New target. - ($(srcdir)/libcoff.h): Just depend upon stmp-lcoff-h. - (stmp-lcoff-h): New target. - (CLEANFILES): Change stmp-bfd.h to stmp-bfd-h. Add stmp-bin2.h, - stmp-lbfd-h, and stmp-lcoff-h. - * Makefile.in: Rebuild. - - * configure.in: Use a diversion to set enable_shared before the - arguments are parsed. - * configure: Rebuild. - -Tue Sep 30 14:18:32 1997 Doug Evans <dje@canuck.cygnus.com> - - * elf32-sparc.c (_bfd_sparc_elf_howto_table): R_SPARC_GLOB_JMP - renamed to R_SPARC_UNUSED_42. - (sparc_reloc_map): Delete R_SPARC_GLOB_JMP entry. - * elf64-sparc.c (_bfd_sparc_elf_howto_table): R_SPARC_GLOB_JMP - renamed to R_SPARC_UNUSED_42. - (sparc_reloc_map): Delete R_SPARC_GLOB_JMP entry. - * reloc.c (BFD_RELOC_SPARC_GLOB_JMP): Delete. - * bfd-in2.h: Regenerated. - * libbfd.h: Regenerated. - -Thu Sep 25 12:15:02 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_merge_symbol): Don't check the hash creator until - after we have set *sym_hash. - -Wed Sep 24 16:52:28 1997 Joel Sherrill <joel@oarcorp.com> - - * config.bfd (sh*-*-rtems*): New target, like sh-*-*elf*. - -Wed Sep 24 11:27:23 1997 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am (libbfd_a_SOURCES): Define. - * Makefile.in: Rebuild. - - * configure.in: Call AC_CHECK_TOOL before AM_PROG_LIBTOOL. - * aclocal.m4: Rebuild with new libtool. - * configure: Rebuild. - -Tue Sep 23 19:03:13 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (map_sections_to_segments): Even if we are not demand - paged, don't put a loadable section after a nonloadable section. - (assign_file_positions_for_segments): Increment the file offset - for a section with contents, even if it is not loadable. - -start-sanitize-v850e -Sun Sep 21 11:03:24 1997 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_final_link_relocate): Add return code - indicating that __ctbp could not be found. - -end-sanitize-v850e -Thu Sep 18 15:04:57 1997 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_check_relocs): Improve error message. - -Wed Sep 17 09:54:51 1997 Nick Clifton <nickc@cygnus.com> -start-sanitize-v850e - - * elf32-v850.c (v850_elf_final_link_relocate, v850_elf_reloc, - v850_elf_check_relocs, v850_elf_reloc_map, v850_elf_howto_table): - Add support for the CALLT relocs. - - * reloc.c (COMMENT): Add BFD_RELOC_V850_CALLT_6_7_OFFSET and - BFD_RELOC_V850_CALLT_16_16_OFFSET. -end-sanitize-v850e - - * elf32-v850.c (v850_elf_final_link_relocate): Add checks to catch - relocations against non-existant symbols. - -Tue Sep 16 14:20:27 1997 Nick Clifton <nickc@cygnus.com> - - * reloc.c: Add BFR_RELOC_V850_TDA_16_16_OFFSET. - - * elf32-v850.c (v850_elf_reloc, v850_elf_final_link_relocate, - v850_elf_howto_table, v850_elf_reloc_map): Add support for a 16 - bit reloc in the tiny data area. - -start-sanitize-d30v -Mon Sep 15 11:27:36 1997 Ken Raeburn <raeburn@cygnus.com> - - Merged changes from Martin Hunt: - - * elf32-d30v.c (bfd_elf_d30v_reloc): Change pc-relative relocs - over 2^32 bytes to be absolute. Needed because D30V PC doesn't - necessarily wrap. - - * reloc.c, elf32-d30v.c (BFD_RELOC_D30V_9_PCREL, - BFD_RELOC_D30V_9_PCREL_R): New relocs. - - * elf32-d30v.c (bfd_elf_d30v_reloc_21): New function. - Do 15 and 21 bit pc-relative relocations. - * reloc.c (BFD_RELOC_D30V_15_PCREL_R, BFD_RELOC_D30V_21_PCREL_R): - New relocations. - - * elf32-d30v.c (bfd_elf_d30v_reloc): Addend needs to be - added to the relocation, not or'd. - -end-sanitize-d30v -Wed Sep 10 15:17:25 1997 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_reloc): Remove spurious error message. - -Wed Sep 10 11:17:50 1997 Andrew Cagney <cagney@b1.cygnus.com> - - * archures.c (bfd_default_scan): Use strcasecmp. - (bfd_default_scan): Test for match with arch_name + ":" + - printable_name. - (bfd_default_scan): Test for match with printable_name - ":". - (bfd_default_scan): Delete w65, h8300, h8500, z8k, i960 special - cases. Each implements their own scan function. - (bfd_default_scan): Delete 386, 2900, 860, mips 2000, mips 4400 - special cases. Since info->mach == 0. The test mach == number - fails. - (bfd_arch_list): New function, return name of all the supported - architectures. - -Tue Sep 9 10:21:56 1997 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_print_private_bfd_data): Break after - decoding architecture. - (v850_elf_reloc): Do not complain if a R_V850_LO16 reloc has bit - 15 set. - -Sun Sep 7 12:25:22 1997 H.J. Lu (hjl@gnu.ai.mit.edu) - - * bfd/elf64-alpha.c (reloc_howto_type): Fix the howto table. - -Thu Sep 4 09:44:10 1997 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am: Rebuild dependencies. - (ALL_MACHINES_CFILES): Add cpu-v850.c. - (ALL_MACHINES_CFILES): Add elf32-v850.c. - * Makefile.in: Rebuild. - - * reloc.c: Remove extraneous commas from relocation entries. - Remove BFD_RELOC_V850_16_PCREL. - * bfd-in2.h: Rebuild. - - * xcofflink.c (xcoff_link_add_symbols): Put XTY_CM/XMC_TD symbols - in sections named .tocbss rather than .bss. - -Wed Sep 3 11:23:23 1997 Nick Clifton <nickc@cygnus.com> - - * libbfd.h, bfd-in2.h, elf32-v850.c: Removed - BFD_RELOC_V850_16_PCREL. - -Tue Sep 2 20:44:10 1997 Fred Fish <fnf@cygnus.com> - - * cofflink.c (coff_link_check_ar_symbols): Handle C_SYSTEM syms - the same as C_EXT syms. - (coff_link_add_symbols): Ditto. - (_bfd_coff_link_input_bfd): Ditto. - (_bfd_coff_write_task_globals): Add save_global_to_static. Use - it to preserve and restore state of global_to_static flag. - -Tue Sep 2 17:45:22 1997 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_object_p): Set machine number based on - bits in e_flags field rather than magic numbers. - (v850_elf_final_write_processing, v850_elf_set_private_flags, - v850_elf_copy_private_bfd_data, v850_elf_merge_private_bfd_data, - v850_elf_print_private_bfd_data): New functions. - -start-sanitize-v850e -Tue Sep 2 17:43:49 1997 Nick Clifton <nickc@cygnus.com> - - * elf.c (prep_headers): Remove V850E magic number. - * elf.c (prep_headers): Remove V850EA magic number. -end-sanitize-v850e - -Tue Sep 2 17:35:05 1997 Doug Evans <dje@canuck.cygnus.com> - - * cpu-arc.c (arc_get_mach): Properly scan defined mach entries. - -Tue Sep 2 18:29:37 1997 Jeffrey A Law (law@cygnus.com) - - * elf-m10200.c (mn10200_elf_final_link_relocate): PC relative - instructions are relative to the next instruction, not the - current instruction. - (mn10200_elf_relax_section): Similarly. - -Tue Sep 2 15:45:45 1997 Nick Clifton <nickc@cygnus.com> - - * cpu-v850.c: Use a macro to construct bfd_arch_info_type - entries. - - * reloc.c, libbfd.h, bfd-in2.h, elf32-v850.c: Replace - BFD_RELOC_V850_{SDA/TDA/ZDA}_OFFSET relocs with new bit pattern - specific versions: BFD_RELOC_V850_{area}_{bits}_OFFSET. - -Thu Aug 28 17:01:09 1997 Andrew Cagney <cagney@b1.cygnus.com> - - * cpu-v850.c: Remove "plain" from v850 printable name. - (scan): Use strcasecmp. - - * archures.c (bfd_mach_v850): Define. - - * cpu-sh.c (scan_mach): Compare with table instead of hardwired to - just sh/SH, use strcasecmp. - (arch_info_struct): Add entries for sh3 et.al. - - * archures.c (bfd_mach_sh, ...): Define. - -Wed Aug 27 17:33:07 1997 Andrew Cagney <cagney@b1.cygnus.com> - - * archures.c (bfd_archures_list): Always NULL terminate the list. - -Tue Aug 26 17:26:51 1997 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am: Rebuild dependencies. - (ALL_MACHINES_CFILES): Add cpu-arc.c. - (ALL_MACHINES_CFILES): Add elf32-arc.c. - (elf32-arc.lo): Remove explicit dependency. - * Makefile.in: Rebuild. - - * acinclude.m4 (BFD_CC_FOR_BUILD): Set EXEEXT_FOR_BUILD. - * doc/Makefile.am (MKDOC): Use EXEEXT_FOR_BUILD, not EXEEXT. - * aclocal.m4, configure, Makefile.in, doc/Makefile.in: Rebuild. - -Mon Aug 25 16:14:34 1997 Christopher Provenzano <proven@cygnus.com> - - * configure: Rebuild with latest devo autoconf for NT support - -Mon Aug 25 16:11:04 1997 Nick Clifton <nickc@cygnus.com> - - * cpu-arm.c (compatible): If B is a default type, return A. - -Mon Aug 25 15:35:46 1997 Nick Clifton <nickc@cygnus.com> - - * cpu-v850.c (scan): New function. - (arch_info_struct): New structure. - (bfd_v850_arch): Add link into arch_info_structure. - - * config.bfd (targ_cpu): All v850 variants use the bfd_arch_v850 - architecture. - - * elf32-v850.c (v850_elf_object_p): New function. - -start-sanitize-v850e - * archures.c (bfd_mach_v850e): Machine value for v850e. - - * bfd-in2.h (bfd_mach_v850e): Machine value for v850e. - - * elf32-v850.c (ELF_MACHINE_CODE): Default to v850e machine - number. - - * elf.c (prep_headers): Add support for v850e machine number. - - * archures.c (bfd_mach_v850ea): Machine value for v850ea. - - * bfd-in2.h (bfd_mach_v850ea): Machine value for v850ea. - - * elf32-v850.c (ELF_MACHINE_CODE): Default to v850ea machine - number. - - * elf.c (prep_headers): Add support for v850ea machine number. -end-sanitize-v850e - -Mon Aug 25 14:07:33 1997 Ian Lance Taylor <ian@cygnus.com> - - * syms.c (_bfd_stab_section_find_nearest_line): Clear the - cached_stab field if the offset prevents us from using the cache. - -Mon Aug 25 12:08:13 1997 Ian Lance Taylor <ian@cygnus.com> - - * aout-target.h (MY(vec)): Add SEC_CODE and SEC_DATA to section - flags. - * aout-arm.c (aout_arm_little_vec): Likewise. - (aout_arm_big_vec): Likewise. - * bout.c (b_out_vec_big_host): Likewise. - (b_out_vec_little_host): Likewise. - * mipsbsd.c (aout_mips_little_vec): Likewise. - (aout_mips_big_vec): Likewise. - -start-sanitize-tic80 -Tue Aug 19 10:09:10 1997 Fred Fish <fnf@cygnus.com> - - * coff-tic80.c (COFF_ALIGN_IN_SFLAGS): Define to 1. - * coffcode.h (styp_to_sec_flags): Ignore incoming STYP_INFO - bit in s_flags if COFF_ALIGN_IN_S_FLAGS is defined. - -end-sanitize-tic80 -Tue Aug 19 08:47:17 1997 Fred Fish <fnf@cygnus.com> - - * coff-i960.c (COFF_ALIGN_IN_SECTION_HEADER): Define to 1. - (GET_SCNHDR_ALIGN, PUT_SCNHDR_ALIGN): Define. - * coff-m88k.c (GET_SCNHDR_NRELOC, GET_SCNHDR_NLNNO): Define. - * coffcode.h (coff_set_alignment_hook): Conditionally compile in if - COFF_ALIGN_IN_SECTION_HEADER is defined. Convert alignment to power - of two for I960 only. - * coffswap.h (GET_SCNHDR_NRELOC, PUT_SCNHDR_NRELOC, GET_SCNDHR_NLNNO, - PUT_SCNHDR_NLNNO, GET_SCNHDR_FLAGS, PUT_SCNHDR_FLAGS): Provide - default definitions. - (coff_swap_scnhdr_in): Use GET_SCNHDR_FLAGS, GET_SCNHDR_NRELOC, - GET_SCNHDR_NLNNO, and GET_SCNHDR_ALIGN. - (coff_swap_scnhdr_out): Use PUT_SCNHDR_FLAGS, PUT_SCNHDR_ALIGN. -start-sanitize-tic80 - * Makefile.in (coff-tic80.o): Depends upon coffswap.h. - * coff-tic80.c (COFF_ALIGN_IN_SECTION_HEADER): Define to 1. - (GET_SCNHDR_FLAGS, PUT_SCNHDR_FLAGS): Define - *coffcode.h (coff_write_object_contents): Set alignment field in - section header for TIC80COFF files. -end-sanitize-tic80 - -Mon Aug 18 11:36:19 1997 Nick Clifton <nickc@cygnus.com> - - * elf32-v850.c (v850_elf_howto_table, v850_elf_reloc_map, - v850_elf_check_relocs, v850_elf_reloc, - v850_elf_final_link_relocate): Add support for - BFD_RELOC_V850_16_PCREL relocation. - - * reloc.c (COMMENT): Add suuport for BFD_RELOC_V850_16_PCREL - relocation. - - * libbfd.h: Add support for BFD_RELOC_V850_16_PCREL relocation. - - * bfd-in2.h: Add support for BFD_RELOC_V850_16_PCREL relocation. - -start-sanitize-v850e -Mon Aug 18 11:33:56 1997 Nick Clifton <nickc@cygnus.com> - - * cpu-v850e: New file. - - * elf.c (prep_headers): Add support for v850e target. - - * bfd-in2.h (bfd_architecture): Add support for v850e target. - - * config.bfd: Add support for v850e target. - - * archures.c: Add support for v850e target. - -Mon Aug 18 11:33:56 1997 Nick Clifton <nickc@cygnus.com> - - * cpu-v850ea: New file. - - * elf.c (prep_headers): Add support for v850ea target. - - * bfd-in2.h (bfd_architecture): Add support for v850ea target. - - * config.bfd: Add support for v850ea target. - - * archures.c: Add support for v850ea target. -end-sanitize-v850e - -Fri Aug 15 12:01:28 1997 Ian Lance Taylor <ian@cygnus.com> - - * coffgen.c (coff_find_nearest_line): Correctly handle the offset - argument as section relative, rather than an absolute address. - From Jan Hoogenraad <hoogenrd@natlab.research.philips.com>. - -Fri Aug 15 04:58:02 1997 Doug Evans <dje@canuck.cygnus.com> - - * config.bfd (arc-*-elf*): Add. - * configure.in (bfd_elf32_{little,big}arc_vec): Add. - * configure: Rebuild. - * Makefile.am (ALL_MACHINES): Add cpu-arc.lo. - (BFD32_BACKENDS): Add elf32-arc.lo. - (cpu-arc.lo,elf32-arc.lo): Add rules for. - * Makefile.in: Rebuild. - * archures.c (architecture list): Add bfd_arch_arc. - (bfd_archures_list): Add bfd_arc_arch. - (bfd_mach_arc_base): Define. - * reloc.c (BFD_RELOC_ARC_B22_PCREL,BFD_RELOC_ARC_B26): Add. - * targets.c (bfd_elf32_{little,big}arc_vec): Declare. - (bfd_target_vect): Add them. - * bfd-in2.h, libbfd.h: Rebuild. - * cpu-arc.c, elf32-arc.c: New files. - * elf.c (pre_headers): Recognize bfd_arch_arc. - -Tue Aug 12 11:45:18 1997 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h (NAME(aout,final_link)): If no symbols, make sure the - data section is correctly rounded to a page in the file. - -Mon Aug 11 12:45:43 1997 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h (NAME(aout,final_link)): Don't emit the string table if - there are no symbols. - -Sun Aug 10 14:45:56 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-stgo32.c: Rename from coff-stubgo32.c to avoid old System V - file system 14 character limit. - * Makefile.am, configure.in: Corresponding changes. - * Makefile.in, configure: Rebuild. - -Fri Aug 8 18:34:36 1997 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am: (ALL_MACHINES_CFILES): Add elf32-d10v.c. - Rebuild dependencies. - * Makefile.in: Rebuild. - -Wed Aug 6 18:56:51 1997 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am (docdir): Define. - * Makefile.in: Rebuild. - -Tue Aug 5 23:05:03 1997 Ian Lance Taylor <ian@cygnus.com> - - * configure: Rebuild with autoconf 2.12.1. - -Mon Aug 4 12:00:35 1997 Ian Lance Taylor <ian@cygnus.com> - - * aclocal.m4, configure: Rebuild with new automake patches. - -Sun Aug 3 08:15:12 1997 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) - - * rs6000-core.c (make_bfd_asection): New function to add a section - to the core file bfd. - (rs6000coff_core_p): Use make_bfd_asection to add the core file - sections. - Use BFD routines to seek, read and stat the core file. - Handle .data sections from loaded objects and anonymously mmapped - regions, these are available in AIX 4 core files. - -Fri Aug 1 12:58:32 1997 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Set enable_shared before AM_PROG_LIBTOOL. - * acinclude.m4: Move acmacros.m4 in here. Remove AM_PROG_LIBTOOL - copy; use a patches libtool instead. - * acmacros.m4: Remove. - * Makefile.in, aclocal.m4, configure: Rebuild. - -Thu Jul 31 19:55:36 1997 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.am: New file, based on old Makefile.in. - * acmacros.m4: New file, copied from old aclocal.m4. - * acinclude.m4: New file. - * configure.in: Call AM_PROG_LIBTOOL. Remove shared library - handling; now handled by libtool. Replace AC_CONFIG_HEADER with - AM_CONFIG_HEADER. Replace AC_PROG_INSTALL with AM_PROG_INSTALL. - Call AM_MAINTAINER_MODE, AM_CYGWIN32, and AM_EXEEXT. Change all - .o files to .lo. Remove stamp-h handling in AC_OUTPUT. - * acconfig.h: Mention PACKAGE and VERSION. - * stamp-h.in: New file. - * dep-in.sed: Change .o to .lo. - * Makefile.in: Now built with automake. - * aclocal.m4: Now built with aclocal. - * config.in, configure: Rebuild. - * VERSION: Remove. - -Thu Jul 31 12:09:20 1997 Geoff Keating <geoffk@ozemail.com.au> - - * elf32-ppc.c (ppc_elf_size_dynamic_sections): Don't set TEXTREL - if there is only a relocation to a read-only but not allocatable - section (like .stab). - * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. - * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise. - * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. - * elf32-mips.c (mips_elf_size_dynamic_sections): Likewise. - * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise. - - * elf32-ppc.c (ppc_elf_howto_raw): Correct various comments. - (ppc_elf_create_linker_section): These sections are not - created by the linker (that is, they are created by the user - putting data in them). In particular, they can be the source - and target of relocations. - (ppc_elf_adjust_dynamic_symbol): Check postcondition of - bfd_elf32_link_record_dynamic_symbol. Align 16-byte common - objects (for instance, 'long double') to 16-byte boundaries. - (ppc_elf_size_dynamic_sections): Make the code that generates - section symbols exactly the same as for sparc, reducing the - number of section symbols output. - (ppc_elf_check_relocs): Check postcondition of - bfd_elf32_link_record_dynamic_symbol. Make default case the - same as corresponding code for sparc, fixing bug involving - .rela.stabs. - (ppc_elf_finish_dynamic_symbol): Fix case involving GOT symbols - forced to be local because of versioning (by replicating - corresponding change in sparc). Treat R_PPC_RELATIVE RELA relocs - as usual in ELF, not as pseudo-REL relocs (as the sparc linker - does). - (ppc_elf_relocate_section): Add handy debugging code for when - assertion fails. Add some more 'symbol made local because of - versioning' cases. - - * elf32-ppc.c (ppc_elf_relocate_section): Cope with addend when - processing a GOT relocation as required by ABI. - -Wed Jul 30 21:30:35 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elflink.h (NAME(bfd_elf,record_link_assignment)): Remove any - version info if this symbol came from a dynamic object. - (elf_link_add_object_symbols): Set the version info of a symbol - only if the object actually contains version definitions and - defines this symbol. - -Mon Jul 28 18:07:43 1997 Rob Savoye <rob@chinadoll.cygnus.com> - - * aclocal.m4: Add CYGWIN and EXEEXT autoconf macros. - * configure.in: Use CYGWIN and EXEEXT autoconf macro to look for - win32 dependencies. - * configure: Regenerated with autoconf 2.12. - * doc/Makefile.in: Add $(EXEEXT) to chew executable. - -Mon Jul 28 02:50:29 1997 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) - - * rs6000-core.c (rs6000coff_core_p): If CORE_TRUNC is set, print - a warning rather than returning an error. - -Sun Jul 27 19:54:14 1997 Felix Lee <flee@cygnus.com> - - * coffswap.h (coff_swap_aux_in): add semicolon to make MSVC happy. - -Fri Jul 25 14:50:08 1997 Felix Lee <flee@cygnus.com> - - * cisco-core.c: define signals for wingdb. - -Fri Jul 25 16:27:07 1997 Ian Lance Taylor <ian@cygnus.com> - - * ecofflink.c (bfd_ecoff_debug_accumulate): Only merge files with - the same number of aux entries. - -Fri Jul 25 08:22:15 1997 Jeffrey A Law (law@cygnus.com) - - * som.c (hppa_som_gen_reloc_type): Use R_DATA_EXPR for the - difference of two symbols if the relocation size is 32 bits. - (som_write_fixups): Handle R_DATA_EXPR. - -Wed Jul 23 16:08:02 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-i386.c (coff_i386_reloc): Don't offset a common symbol by - its value if COFF_WITH_PE is defined. - -Tue Jul 22 17:19:45 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE> - - * coff-stubgo32.c: New file. - * go32stub.h: New file. - * coff-i386.c: If COFF_GO32_EXE, include coff/go32exe.h. - * coffswap.h (coff_swap_filehdr_in): Invoke - COFF_ADJUST_FILEHDR_IN_PRE and COFF_ADJUST_FILEHDR_IN_POST if they - are defined. - (coff_swap_filehdr_out): Invoke COFF_ADJUST_FILEHDR_OUT_PRE and - COFF_ADJUST_FILEHDR_OUT_POST if they are defined. - (coff_swap_aux_in): Invoke COFF_ADJUST_AUX_IN_PRE and - COFF_ADJUST_AUX_IN_POST if they are defined. - (coff_swap_aux_out): Invoke COFF_ADJUST_AUX_OUT_PRE and - COFF_ADJUST_AUX_OUT_POST if they are defined. - (coff_swap_scnhdr_in): Invoke COFF_ADJUST_SCNHDR_IN_PRE and - COFF_ADJUST_SCNHDR_IN_POST if they are defined. - (coff_swap_scnhdr_out): Invoke COFF_ADJUST_SCNHDR_OUT_PRE and - COFF_ADJUST_SCNHDR_OUT_POST if they are defined. - * targets.c (go32stubbedcoff_vec): Declare. - (bfd_target_vector): Add go32stubbedcoff_vec. - * configure.in (go32coff_vec): New target vector. - (go32stubbedcoff_vec): Likewise. - * config.bfd (i[3456]86-*-msdosdjgpp*): New target. - (i[3456]86-*-go32*): Change to be like new msdosdjgpp*. - * Makefile.in: Rebuild dependencies. - (BFD32_BACKENDS): Add coff-stubgo32.o. - (BFD32_BACKENDS_CFILES): Add coff-stubgo32.c. - (HFILES): Add go32stub.h. - -Tue Jul 22 15:09:12 1997 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Check for fdopen. - * configure, config.in: Rebuild. - * opncls.c (bfd_fdopenr): Check HAVE_FDOPEN rather than VMS or - __GO32__. Reindent a bit. - -Sun Jul 20 20:05:20 1997 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c (sunos_create_dynamic_sections): Set SEC_LINKER_CREATED - flag for newly created sections. - (sunos_add_dynamic_symbols): Don't discard newly created sections - if shared library is dynobj. - -Mon Jul 14 15:33:55 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (map_sections_to_segments): When checking whether - including a section in a segment would force us to skip a page, - align the address of the next segment to avoid wraparound - problems. - -start-sanitize-tic80 -Tue Jul 8 12:11:29 1997 Fred Fish <fnf@cygnus.com> - - * coffcode.h (coff_write_object_contents): Initialize - target id field to TIC80_TARGET_ID. - * coffswap.h (coff_swap_filehdr_out): Swap out target id field - if used. - (coff_swap_filehdr_in): Swap in target id field if used. - -end-sanitize-tic80 -Mon Jul 7 16:41:20 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-i386.c (coff_i386_is_local_label_name): New static function - if TARGET_UNDERSCORE. - (coff_bfd_is_local_label_name): Define if TARGET_UNDERSCORE. - (i386coff_vec): Add SEC_CODE and SEC_DATA to section_flags. - -Mon Jun 30 14:29:26 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-m68k.c (howto_table): Use complain_overflow_bitfield, not - complain_overflow_signed, for 32 bit PC relative relocations. - -Thu Jun 26 01:26:31 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): When a version - indirection symbol is overridden, make the original symbol point - at the real overriding symbol. - - * elf.c (bfd_elf_string_from_elf_section): Check for an invalid - string index. - - * elflink.h (elf_link_output_extsym): Use the right section for a - common symbol. - * elf32-mips.c (mips_elf_link_output_symbol_hook): If a common - symbol was in .scommon, mark it as SHN_MIPS_SCOMMON. - -Wed Jun 25 12:43:10 1997 H.J. Lu <hjl@gnu.ai.mit.edu> - - * elflink.h (elf_merge_symbols): Resolve indirect and warning - symbols before checking for new symbols. - - * elfcore.h (elf_corefile_note): Move out of HAVE_SYS_PROCFS_H. - -Tue Jun 24 11:20:43 1997 Ian Lance Taylor <ian@cygnus.com> - - * coffgen.c (coff_object_p): Read the f_opthdr bytes from the - file, not aoutsz bytes (they are different in XCOFF .o files). - - * xcofflink.c (xcoff_link_add_symbols): Permit symbols to be - redefined by objects included from archives. - -Mon Jun 23 18:03:27 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_merge_symbol): In the case of a new defined - 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. - - * elflink.h (elf_merge_symbol): New static function, broken out of - elf_link_add_object_symbols. - (elf_link_add_object_symbols): Call it. - -Sun Jun 22 19:40:57 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-i386.c (i3coff_object_p): If COFF_IMAGE_WITH_PE, hack to - handle case where COFF filehdr does not immediately follow PE - header. - * coffgen.c (coff_object_p): Remove useless seek to current - location. - -Wed Jun 18 19:03:38 1997 Ian Lance Taylor <ian@cygnus.com> - - * linker.c (link_action): Change COMMON_ROW/indr to from CREF to - REFC. - -Tue Jun 17 11:55:02 1997 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (_bfd_coff_link_input_bfd): If stripping debugging - symbols, skip N_ABS symbols with debugging storage classes. - -Mon Jun 16 18:56:27 1997 Geoff Keating <geoffk@ozemail.com.au> - - * 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. - -Mon Jun 16 14:42:14 1997 H.J. Lu <hjl@gnu.ai.mit.edu> - - * 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. - -Mon Jun 16 12:31:29 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-i386.c (elf_i386_relocate_section): When generating a - shared library, do the relocation if the input section is not - allocated in memory. - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Call - 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. - -Wed Jun 11 22:44:20 1997 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10300.c (elf32_mn10300_link_hash_entry): New structure - 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. - -Wed Jun 11 00:00:07 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_output_extsym): Call finish_dynamic_symbol - 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. - - * elf32-i386.c (elf_i386_relocate_section): Get the relocation - 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 22:58 Ulrich Drepper <drepper@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Also read verneed - information by calling `_bfd_elf_slurp_version_tables'. - (elf_link_add_object_symbols): For undefined symbols look for - version information in the verneed records. - (elf_link_add_object_symbols): Use soname of shared object - for verneed record if it is available. - -Tue Jun 10 11:13:03 1997 H.J. Lu <hjl@gnu.ai.mit.edu> - - * 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. - -Mon Jun 9 12:34:21 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elflink.h (elf_link_add_object_symbols): Ignore relocations of - sections that will be discarded. - -1997-06-06 22:58 Ulrich Drepper <drepper@cygnus.com> - - * elflink.h (elf_link_find_version_dependencies): When searching - for known version symbol skip non-matching verdef records, not - matching records. - -Thu Jun 5 15:52:45 1997 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (_bfd_coff_generic_relocate_section): Write a long, - not a bfd_vma, to the base file, to match how dlltool reads it. - -Tue Jun 3 16:57:45 1997 Nick Clifton <nickc@cygnus.com> - - * reloc.c: Add thumb relocations. - - * bfd-in2.h: Add Thumb relocations. - - * libbfd.h: Add Thumb relocations. - -Mon Jun 2 10:41:52 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * cpu-m68k.c (arch_info_struct): Fix 68060 cpu name. - -Fri May 30 12:46:27 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Set dynindx - for a section even if it is not loaded. - - * cofflink.c (coff_link_add_symbols): If PE file, don't subtract - 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. - -Wed May 28 15:48:43 1997 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c: (coff_arm_bfd_set_private_flags): Make static. - -Wed May 28 16:16:04 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-i386.c (coff_i386_reloc): Don't just exit if we see an - R_IMAGEBASE reloc. - -Wed May 28 09:48:43 1997 Nick Clifton <nickc@cygnus.com> - - * cpu-arm.c (compatible): Add test for supersets of ARM - architectures. - -Tue May 27 19:42:03 1997 Bob Manson <manson@charmed.cygnus.com> - - * cofflink.c (_bfd_coff_final_link): Initialize global_to_static - member. - -Tue May 27 14:34:08 1997 Nick Clifton <nickc@cygnus.com> - - * coff-arm.c (coff_arm_bfd_set_private_flags): Make global. It is - called directly by gas/config/tc-arm.c. - -Tue May 27 15:58:53 1997 Richard Henderson <rth@tamu.edu> - - * elf64-alpha.c (PLT_ENTRY_*): Use a new thread-safe format. - (elf64_alpha_finish_dynamic_symbol): Fill it in properly. - -Mon May 26 14:05:13 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-ppc.c (coff_ppc_relocate_section): If PE file, don't add - section VMA. - -Mon May 26 10:57:48 1997 Fred Fish <fnf@cygnus.com> - - * peicode.h (coff_bfd_print_private_bfd_data): #undef before #define. - (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. - -Fri May 23 15:14:58 1997 Fred Fish <fnf@cygnus.com> - - * libcoff-in.h (struct coff_final_link_info): Add boolean - 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. -start-sanitize-tic80 - * 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. -end-sanitize-tic80 - -start-sanitize-tic80 -Fri May 23 12:38:24 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-tic80.c (tic80_howto_table): Change overflow check for most - PP relocations to complain_overflow_dont. - -Thu May 22 20:22:14 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-tic80.c (tic80_howto_table): Add PP relocations. Change - 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. - -end-sanitize-tic80 -Wed May 21 17:15:50 1997 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE or - 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. - - * peicode.h: Add & 0xffffffff when using ImageBase in case bfd_vma - is 64 bits. - -Wed May 21 09:58:10 1997 Nick Clifton <nickc@cygnus.com> - - * cofflink.c (mark_relocs): Add new function to mark symbols which - are used by relocations. - (_bfd_coff_link_input_bfd): Add call to mark_relocs() and code to - suppress the skipping of symbols that have thus been marked. - -Tue May 20 18:45:26 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-sh.c (sh_merge_private_data): New static function. - (coff_bfd_merge_private_bfd_data): Define. - -start-sanitize-tic80 -Mon May 19 14:46:00 1997 Mark Alexander <marka@cygnus.com> - - * coff-tic80.c: Remove unnecessary #ifdefs. - * config.bfd: Set targ_underscore to yes for tic80. - -Mon May 19 14:26:36 1997 Mark Alexander <marka@cygnus.com> - - * coff-tic80.c (NAMES_HAVE_UNDERSCORE): Define (fixes problem - with unresolved external symbols in GDB). - -end-sanitize-tic80 -Fri May 16 10:23:03 1997 Jeffrey A Law (law@cygnus.com) - - * elf-m10300.c (elf32_mn10300_relax_section): Read in all - the symbols associated with each BFD. - (mn10300_elf_relax_delete_bytes): Don't adjust the same symbol - more than once. - * elf-m10200.c: Likewise. - * elf32-m32r.c: Likewise. - * elf32-sh.c: Likewise. - -Fri May 16 12:10:52 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Don't decrease the - alignment of a common symbol. If two symbols that look like - common symbols are found in two shared libraries, and the size is - different, use the larger size, and warn if --warn-common. If a - common symbol overrides a definition in a shared library, set the - size to the larger size, and warn if --warn-common. - -Thu May 15 14:31:28 1997 Nick Clifton <nickc@cygnus.com> - - * cpu-arm.c (compatible): Allow default machine to be polymorphed - into any other machine type. - - * coffcode.h (coff_set_flags): Initialise flags variable to 0. - - * coff-arm.c (coff_arm_bfd_merge_private_bfd_data): When merging - data into an unitialised destination set its machine type as well. - -Thu May 15 16:40:20 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Force ELF symbol size - to common symbol size. Consistently treat uninitialized symbols - in shared objects as common symbols. - -Fri May 9 10:15:27 1997 Nick Clifton <nickc@cygnus.com> - - * archures.c (constants): Added new constants to identify the - type of the ARM architecture: bfd_mach_arm_2, bfd_mach_arm_2a, - bfd_mach_arm_3, bfd_mach_arm_3M, bfd_mach_arm_4 and bfd_mach_arm_4T. - - * bfd-in2.h (constants): Added new constants to identify - the type of the ARM architecture: bfd_mach_arm_2, bfd_mach_arm_2a, - bfd_mach_arm_3, bfd_mach_arm_3M, bfd_mach_arm_4 and - bfd_mach_arm_4T. This file is auto-magically generated from the - archures.c file. This update is just to save work. - - * coff-arm.c (coff_arm_bfd_merge_private_bfd_data, - coff_arm_bfd_print_private_bfd_data, - coff_arm_bfd_set_private_flags, - coff_arm_bfd_copy_private_bfd_data): Added these new functions. - (global): Macro redefinitions set up to use these new functions. - - * coffcode.h (coff_mkobject_hook): Added call to - coff_arm_bfd_set_private_flags(). - (coff_set_arch_mach_hook): Added code to set machine type based on - bits stored in internal flags. - (coff_set_flags): Added code to set the new bits in the flags - field based on the machine number. - (function definition macros): Made all function definition macros - conditional so that they can be overridden by target specific - files. - - * cpu-arm.c (compatible): Added this function. (arch_info_struct): - Structure extended to include new types, one each for ARMv2, - ARMv2a, ARMv3, ARMv3M, ARMv4 and ARMv4T. - - * libcoff-in.h (struct coff_tdata): Added flags field. - -Fri May 9 17:40:02 1997 Ian Lance Taylor <ian@cygnus.com> - - * config.bfd (i[3456]86-*-gnu*): Don't include Mach support. - - * config.bfd: Change #if 0 around uses of host_aout_vec to #if - HAVE_host_aout_vec. - -Mon May 5 13:57:32 1997 Mike Meissner <meissner@cygnus.com> - - * coffgen.c (coff_find_nearest_line): If there are no syments, - just return false. - -Mon May 5 18:18:45 1997 Philip Blundell <pjb27@cam.ac.uk> - - * config.bfd: cope with '*-*-linux-gnuaout' targets. - -Thu May 1 11:31:12 1997 Ian Lance Taylor <ian@cygnus.com> - - * targmatch.sed: Add explicit \n characters to work around bug in - HP/UX 10.20 sed program. - -Wed Apr 30 12:27:03 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (copy_private_bfd_data): Cast csecs to avoid sign - extension problems. - -Tue Apr 22 12:06:08 1997 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.in (do_maintainer_clean): Don't remove bfd-in2.h. - -Mon Apr 21 11:21:31 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elf32-m68k.c: Follow the last changes in elf32-i386.c: - (struct elf_m68k_pcrel_relocs_copied, struct - elf_m68k_link_hash_entry, struct elf_m68k_link_hash_table, - elf_m68k_link_hash_traverse, elf_m68k_hash_table, - elf_m68k_link_hash_newfunc, elf_m68k_link_hash_table_create, - elf_m68k_discard_copies, bfd_elf32_bfd_link_hash_table_create): - New definitions. - (elf_m68k_check_relocs): If linking with -Bsymbolic, don't copy - PC relative relocs for a global symbol defined in a regular - object, and count the number of PC relative relocs copied for any - global symbol. - (elf_m68k_size_dynamic_sections): If linking with -Bsymbolic, - traverse with elf_m68k_discard_copies. - -Sat Apr 19 22:50:14 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-i386.c (elf_i386_check_relocs): Only count PC relative - relocs. From Jamie Lokier <jamie@rebellion.co.uk>. - - * coffcode.h (coff_compute_section_file_positions): Force the - potential last byte in the file to be written out when - COFF_IMAGE_WITH_PE. - -Thu Apr 17 13:46:56 1997 Per Fogelstrom <pefo@openbsd.org> - - * configure.host (mips*-*-openbsd*): New host. - -Thu Apr 17 11:10:54 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Only subtract the - section VMA from the symbol value if this is a fully linked file. - - * elf32-i386.c (struct elf_i386_pcrel_relocs_copied): Define. - (struct elf_i386_link_hash_entry): Define. - (struct elf_i386_link_hash_table): Define. - (elf_i386_link_hash_traverse): Define. - (elf_i386_hash_table): Define. - (elf_i386_link_hash_newfunc): New static function. - (elf_i386_link_hash_table_create): New static function. - (elf_i386_check_relocs): If linking with -Bsymbolic, don't copy - PC relative relocs for a global symbol defined in a regular - object, and count the number of PC relative relocs copied for any - global symbol. - (elf_i386_size_dynamic_sections): If linking with -Bsymbolic, - traverse with elf_i386_discard_copies. - (elf_i386_discard_copies): New static function. - (bfd_elf32_bfd_link_hash_table_create): Define. - - From Gordon W. Ross <gwr@mc.com>: - * aoutf1.h (MY_entry_is_text_address): Define if not defined. - (sunos4_aout_backend): Use MY_entry_is_text_address. - -start-sanitize-d30v -Wed Apr 16 12:43:32 1997 Martin Hunt <hunt@cygnus.com> - - * elf32-d30v.c (elf_d30v_howto_table): Changed size of - R_D30V_32_NORMAL to 2 (4 bytes). - -end-sanitize-d30v -Wed Apr 16 14:02:29 1997 Ian Lance Taylor <ian@cygnus.com> - - From Gordon W. Ross <gwr@mc.com>: - * netbsd.h (N_SHARED_LIB): Define. - (SEGMENT_SIZE): Don't define. - * m68knetbsd.c (SEGMENT_SIZE): Don't define (revert change of - April 11). - * sparcnetbsd.c (TARGET_PAGE_SIZE): Define as 0x2000. - (SEGMENT_SIZE): Don't define. - - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Set .rela.bss size - to sizeof Rela structure, not sizeof Rel structure. From Gary - Thomas <g.thomas@opengroup.org>. - -Tue Apr 15 11:50:37 1997 Ian Lance Taylor <ian@cygnus.com> - - * aout-target.h (MY(callback)): If entry_is_text_address, adjust - whenever entry is larger than text address, but only by whole - pages. From Gordon W. Ross <gwr@mc.com>. - - * Makefile.in (install): Depend upon installdirs. Use - mkinstalldirs to build $(oldincludedir). - (installdirs): New target. - - * elflink.h (elf_link_add_object_symbols): Don't call check_relocs - if this is a debugging section which we are stripping. - -Mon Apr 14 12:39:30 1997 Richard Henderson <rth@tamu.edu> - - * elf64-alpha.c (elf64_alpha_object_p): Allocate the - alpha-specific target data struct. - -Mon Apr 14 11:45:46 1997 Ian Lance Taylor <ian@cygnus.com> - - From Thomas Graichen <graichen@rzpd.de>: - * Makefile.in: Always use $(SHELL) when running move-if-change. - * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub. - * configure: Rebuild. - -Fri Apr 11 15:43:24 1997 Ian Lance Taylor <ian@cygnus.com> - - * elfcode.h (elf_slurp_symbol_table): Only subtract the section - VMA if this is an executable file or a shared object. - - * targets.c (netbsd_core_vec): Declare. From Gordon W. Ross - <gwr@mc.com>. - - * libaout.h (struct aout_backend_data): Add entry_is_text_address - field. - * aout-target.h (SEGMENT_SIZE): Define to TARGET_PAGE_SIZE at the - start of the file. Remove uses later on which switch using - ifdef. - (MY(callback)): Handle entry_is_text_address. - (MY_entry_is_text_address): Define if not defined. - (MY(backend_data)): Initialize new field. - * aoutf1.h (sunos4_aout_backend): Likewise. - * i386aout.c (MY(backend_data)): Likewise. - * i386mach3.c (MY(backend_data)): Likewise. - * mipsbsd.c (MY(backend_data)): Likewise. - * sparclynx.c (sparclynx_aout_backend): Likewise. - * netbsd.h (SEGMENT_SIZE): Define if not defined. - (MY_entry_is_text_address): Define. - * m68knetbsd.c (SEGMENT_SIZE): Define as 0x20000. - - * xcofflink.c (bfd_xcoff_import_symbol): Handle importing a symbol - whose name starts with `.'. - -Fri Apr 11 11:57:15 1997 Niklas Hallqvist <niklas@appli.se> - - * config.bfd: (i[3456]86-*-openbsd*, m68*-*-openbsd*, - mips*el*-*-openbsd*, mips*-*-openbsd*, ns32k-*-openbsd*, - powerpc-*-*bsd*, sparc-*-openbsd*): New targets. - * configure.in (i[3456]86-*-openbsd*, mips*-*-openbsd*, - m68*-*-openbsd*, ns32k-*-openbsd*, powerpc-*-*bsd*, - sparc-*-openbsd*): New targets. - * configure: Rebuild. - -Tue Apr 8 18:09:29 1997 Jamie Lokier <jamie@rebellion.co.uk> - - * stabs.c (struct stab_section_info): New field - `cumulative_skips'. - (_bfd_link_section_stabs): Fill the above array. - (_bfd_stab_section_offset): Use `cumulative_skips' to - speed up offset calculation. - -Tue Apr 8 00:01:31 1997 Jeffrey A Law (law@cygnus.com) - - * elf-mn10300.c (mn10300_elf_relax_section): Don't forget the - addend for non pc-relative relocations. - - * elf-m10300.c (bfd_elf32_mn10300_reloc): Remove prototype - for non-existent function. - - * elf-m10300.c (mn10300_elf_relax_section): New function. - (mn10300_elf_relax_delete_bytes): Likewise. - (mn10300_elf_symbol_address_p): Likewise. - (mn10300_elf_get_relocated_section_contents): Likewise. - (bfd_elf32_bfd_relax_section): Define. - (bfd_elf32_bfd_get_relocated_section_contents): Likewise. - -Mon Apr 7 16:47:09 1997 Ian Lance Taylor <ian@cygnus.com> - - * configure.host: Set SHLIB_LIBS. - * configure.in: Substitute SHLIB_LIBS. - * configure: Rebuild. - * Makefile.in (SHLIB_LIBS): New variable. - ($(SHLIB)): Use $(SHLIB_LIBS). - -Mon Apr 7 10:53:52 1997 Michael Snyder <msnyder@cleaver.cygnus.com> - - * bfd-in.h bfd-in2.h: add bfd_section_lma macro to correspond - with bfd_section_vma. - -Fri Apr 4 11:37:15 1997 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Update file names for bfd_elf32_mn10[23]00_vec. - Correct CPU file names for mn10[23]00. - * configure: Rebuild. - - * bfd.c (bfd_record_phdr): Cast count to size_t before - subtraction. - - * coff-ppc.c (dump_toc): Add cast to avoid warning from SunOS cc. - * coff-rs6000.c (xcoff_read_ar_hdr): Likewise. - (xcoff_write_archive_contents): LIkewise. - * elf32-mips.c (_bfd_mips_elf_set_section_contents): Likewise. - (mips_elf_create_procedure_table): Likewise. - * peicode.h (pe_print_idata): Likewise. - (pe_print_edata, pe_print_pdata, pe_print_reloc): Likewise. - * xcofflink.c (xcoff_get_section_contents): Likewise. - (_bfd_xcoff_canonicalize_dynamic_symtab): Likewise. - (xcoff_link_add_symbols): Likewise. - (xcoff_link_add_symbols): Likewise. - - * ppcboot.c (ppcboot_set_arch_mach): Make static. - (ppcboot_bfd_print_private_bfd_data): Likewise. - - * elf32-mips.c (elf_mips_ctor64_howto): Set complain_on_overflow - to complain_overflow_signed. - -Thu Apr 3 11:51:54 1997 Ian Lance Taylor <ian@cygnus.com> - - * VERSION: Set to 2.8.1. - - * Branched binutils 2.8. - - * elf32-ppc.c (ppc_elf_check_relocs): Don't check SEC_ALLOC when - deciding whether to copy a reloc into a shared object. - (ppc_elf_relocate_section): Likewise. Relocate R_PPC_RELATIVE - relocs in unallocated sections. - * elf32-sparc.c (elf32_sparc_relocate_section): Relocate - R_SPARC_RELATIVE relocs in unallocated sections. - -Wed Apr 2 16:19:41 1997 Mike Meissner <meissner@cygnus.com> - - * elf32-ppc.c (ppc_elf_check_relocs): Undo March 26 change and - always create got section so that the _GLOBAL_OFFSET_TABLE_ label - is always created. - -Wed Apr 2 10:49:07 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Let a common symbol - override an uninitialized symbol from a shared library with a - smaller size. - - * elf-m10200.c: Rename from elf32-mn10200.c. - * elf-m10300.c: Rename from elf32-mn10300.c. - * cpu-m10200.c: Rename from cpu-mn10200.c - * cpu-m10300.c: Rename from cpu-mn10300.c - * Makefile.in: Update accordingly. - - * elf32-mips.c (elf_mips_ctor64_howto): New static variable. - (elf_mips_isa): Move to earlier in file. - (mips_reloc_map): Remove BFD_RELOC_CTOR entry. - (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_CTOR - specially. - - * elf32-mips.c (mips16_jump_reloc): Print a warning rather than - calling abort. - -Tue Apr 1 16:18:05 1997 Klaus Kaempf <kkaempf@progis.de> - - * configure.com: New file. - * config.h-vms: Remove file. - * makefile.vms: Update for new configure scheme. - -Mon Mar 31 23:28:39 1997 H.J. Lu <hjl@gnu.ai.mit.edu> - - * libcoff-in.h (ppc_allocate_toc_section): Declare. - (ppc_process_before_allocation): Declare. - * libcoff.h: Rebuild. - - * coffcode.h (coff_mkobject_hook): Declare if not a macro. - -Mon Mar 31 16:29:50 1997 Joel Sherrill <joel@oarcorp.com> - - * config.bfd (hppa*-*-rtems*): New target, like hppa-*-*elf*. - -Mon Mar 31 16:11:35 1997 Ian Lance Taylor <ian@cygnus.com> - - * coff-a29k.c (coff_a29k_relocate_section): Don't use symndx as a - symbol index for a R_IHCONST reloc. - -Mon Mar 31 15:40:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be> - - * targmatch.sed: Do not use \(\) recursively. - -Fri Mar 28 14:44:08 1997 H.J. Lu <hjl@gnu.ai.mit.edu> - - * m68klinux.c (MACHTYPE_OK): Define. - * i386linux.c (MACHTYPE_OK): Define. - -Fri Mar 28 11:56:15 1997 Ian Lance Taylor <ian@cygnus.com> - - From David S. Miller <davem@caip.rutgers.edu> and H.J. Lu - <hjl@gnu.ai.mit.edu>: - * sparclinux.c: New file. - * bfd-in.h (bfd_sparclinux_size_dynamic_sections): Declare. - * bfd-in2.h: Rebuild. - * config.bfd (sparc-*-linuxaout*, sparc-*-linux*): New targets. - * configure.in (sparclinux_vec): Add to list of vectors. - * configure: Rebuild. - * targets.c (sparclinux_vec): Declare. - (bfd_target_vector): Add sparclinux_vec. - * Makefile.in: Rebuild dependencies. - (BFD32_BACKENDS): Add sparclinux.o. - (BFD32_BACKENDS_CFILES): Add sparclinux.c. - - * coff-mips.c (mips_ecoff_backend_data): Initialize new - bfd_coff_backend_data field. - * coff-alpha.c (alpha_ecoff_backend_data): Likewise. - - * config.bfd: Add bfd_elf64_{big,little}mips_vec to targ_selvecs - for mips*el*-*-linux* and mips*-*-linux*. From H.J. Lu - <hjl@lucon.org> and Ralf Baechle <ralf@gnu.ai.mit.edu>. - - * bfd.c: Include "libiberty.h". - (strerror): Don't declare. - (bfd_errmsg): Call xstrerror rather than strerror. - -Thu Mar 27 12:55:42 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Generate a COPY - reloc even if the symbol is in the .bss section. - * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise. - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise. - * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise. - - * coffcode.h (bfd_coff_backend_data): Add new field - _bfd_coff_default_section_alignment_power. - (bfd_coff_default_section_alignment_power): Define. - (bfd_coff_std_swap_table): Initialize new field. - * libcoff.h: Rebuild. - * cofflink.c (coff_link_add_symbols): Limit alignment of a common - symbol to the default section alignment. - - * COPYING: Update FSF address. - -start-sanitize-d30v -Thu Mar 27 00:45:57 1997 Martin M. Hunt <hunt@pizza.cygnus.com> - - * elf32-d30v.c (elf_d30v_howto_table): Fix a typo in the - 21-bit absolute that made it act as a relative. - -end-sanitize-d30v -Wed Mar 26 14:50:20 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.c (_bfd_elf_create_linker_section): Don't set - bss_section and rel_section from existing sections. - - * elf32-ppc.c (ppc_elf_check_relocs): Only create the got section - if it is needed. - -Tue Mar 25 22:26:56 1997 Stu Grossman (grossman@critters.cygnus.com) - - * aoutx.h (some_aout_object_p): Change executable test to fix - problems with embedded a.out systems. - -Tue Mar 25 14:35:37 1997 Ian Lance Taylor <ian@cygnus.com> - - * stabs.c (_bfd_stab_section_offset): New function. - * libbfd-in.h (_bfd_stab_section_offset): Declare. - * libbfd.h: Rebuild. - * elf32-i386.c (elf_i386_relocate_section): Adjust the offset of a - stab reloc. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-mips.c (mips_elf_relocate_section): Likewise. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. - - * stabs.c (_bfd_link_section_stabs): Copy over the first header - symbol. Check for memory allocation failure of *psinfo. - (_bfd_write_section_stabs): Add psinfo parameter. Change all - callers. Set the value of the header symbol. - * libbfd-in.h (_bfd_write_section_stabs): Update declaration. - * libbfd.h: Rebuild. - -start-sanitize-tic80 -Mon Mar 24 20:07:29 1997 Fred Fish <fnf@cygnus.com> - - * coff-tic80.c (tic80_howto_table): Add R_ABS entry. - (rtype2howto): Handle R_ABS reloc type. Also abort on unhandled - reloc types, rather than silently failing to generate an output file. - -end-sanitize-tic80 -Mon Mar 24 13:41:00 1997 Ian Lance Taylor <ian@cygnus.com> - - * targmatch.sed: Use the hold space to put the #ifdef around the - the string constant. - * targets.c (UNSUPPORTED_TARGET): Don't define. - (find_target): Don't check for UNSUPPORTED_TARGET. - (bfd_set_default_target): Don't try to optimize by checking for - default. - - * Makefile.in: Rebuild dependencies. - (ALL_MACHINES_CFILES): Add cpu-m32r.c. - (BFD32_BACKENDS_CFILES): Add elf32-m32r.c. - (elf32-m32r.o): Remove explicit target. - - * config.bfd: Don't set targ_underscore for i[3456]86-*-gnu* or - i[3456]86-*-linux*. - - * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Don't - count section symbols for sections that were created by the - linker, or are not allocatable or not loadable. - (elf32_sparc_finish_dynamic_sections): Output output section - symbols for section for which we made space for them. - -Fri Mar 21 13:08:26 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-sparc.c (elf32_sparc_size_dynamic_sections): If there is - no .rela.plt section, don't output a DT_PLTGOT dynamic entry. - -Fri Mar 21 12:36:46 1997 Doug Evans <dje@canuck.cygnus.com> - - * elf32-m32r.c (m32r_elf_howto_table): Use special function for LO16. - (m32r_hi16_list): New static local. - (m32r_elf_hi16_reloc): Don't perform reloc, just queue it up. - (m32r_elf_do_hi16_reloc): Delete. - (m32r_elf_relocate_hi16): New function. - (m32r_elf_lo16_reloc): New function. - (m32r_elf_relocate_section): For HI16 relocs, scan for corresponding - LO16 reloc. - - Mon Mar 10 16:03:31 1997 Doug Evans <dje@seba.cygnus.com> - - * elf32-m32r.c (m32r_elf_create_linker_section): Delete. - (m32r_elf_add_symbol_hook): Rewrite _SDA_BASE_ support. - (m32r_elf_final_sda_base): New function. - (m32r_elf_relocate_section): Rewrite sdata support. - (m32r_elf_finish_dynamic_sections): Delete. - -Thu Mar 20 12:39:02 1997 Ian Lance Taylor <ian@cygnus.com> - - Based on patches from Philippe De Muyter <phdm@info.ucl.ac.be>. - * coff-svm68k.c: New file. Just defines some macros and includes - coff-m68k.c. - * coff-m68k.c: Add functions to handle common addends, moved in - from cf-m68klynx.c. Control them using COFF_COMMON_ADDEND macro. - Control whether relocs are visible using STATIC_RELOCS. - * cf-m68klynx.c: Simplify greatly: just define macros to control - coff-m68k.c. - * coff-aux.c: Likewise. Just leave add_one_symbol routine. - * targets. (m68ksysvcoff_vec): Declare. - (bfd_target_vector): Add m68ksysvcoff_vec. - * config.bfd (m68*-motorola-sysv*): New target. - * configure.in (m68ksysvcoff_vec): New vector. - * configure: Rebuild. - * Makefile.in: Rebuild dependencies. - (BFD32_BACKENDS): Add coff-svm68k.o. - (BFD32_BACKENDS_CFILES): Add coff-svm68k.c. - - * binary.c (binary_set_section_contents): Don't get misled if the - first section is not loadable. From Matthew L. Martin - <mlm@xedia.com>. - - * elflink.h (elf_bfd_final_link): Set the value of a section - symbol to the section address unless doing a relocateable link. - -Tue Mar 18 23:03:17 1997 Richard Henderson <rth@tamu.edu> - - * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't create - .plt entry if we've taken the function's address. - (elf64_alpha_merge_gots): Merge collected flags info as well. - -Tue Mar 18 22:40:09 1997 H.J. Lu <hjl@lucon.org> - - * Many files: Add function prototypes. - * cpu-m68k.c (bfd_default_scan_num_mach): Don't declare. - * ecofflink.c: Include "libcoff.h" and "libecoff.h". - * elf32-ppc.c (ppc_elf_fake_sections): Make static. - * opncls.c (bfd_openstreamr): Change stream parameter to PTR. - * peicode.h: Change several void * parameters to PTR. - * srec.c (srec_get_symbol_info): Make static. - * syms.c (bfd_symbol_is_absolute): Remove. - * Makefile.in: Rebuild dependencies. - -Tue Mar 18 12:58:08 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-m32r.c (m32r_elf_is_local_label_name): Remove. - (bfd_elf32_bfd_is_local_label): Don't define. - - * xcofflink.c (_bfd_xcoff_bfd_final_link): Call bfd_malloc rather - than malloc. - -Mon Mar 17 11:32:53 1997 Ian Lance Taylor <ian@cygnus.com> - - * bfd-in.h: Don't include obstack.h. - (struct bfd_hash_table): Change memory field to PTR. - * bfd.c (struct _bfd): Change memory field to PTR. - * bfd-in2.h: Rebuild. - * libbfd-in.h (bfd_release): Declare as function, don't define as - macro. - * libbfd.h: Rebuild. - * opncls.c: Include "objalloc.h" rather than "obstack.h". Use - objalloc routines rather than obstack routines. - (obstack_chunk_alloc, obstack_chunk_free): Don't define. - (getpagesize): Don't define. - (_bfd_new_bfd): Don't set _bfd_chunksize. - (bfd_openr): Free new bfd and objalloc on failure. - (bfd_fdopenr, bfd_openstreamr, bfd_openw): Likewise. - (bfd_alloc_size): Remove. - (bfd_release): New function. - * hash.c: Include "objalloc.h" rather than "obstack.h". Use - objalloc routines rather than obstack routines. - (obstack_chunk_alloc, obstack_chunk_free): Don't define. - * ecofflink.c: Include "objalloc.h" rather than "obstack.h". Use - objalloc routines rather than obstack routines. - (obstack_chunk_alloc, obstack_chunk_free): Don't define. - (struct accumulate): Change memory to struct objalloc *. - * liboasys.h (oasys_data_type): Remove oasys_obstack field. - * dep-in.sed: Don't remove obstack.h from dependency list. - * Makefile.in: Rebuild dependencies. - (BFD_H_DEPS): Remove obstack.h. - (install): Don't install obstack.h. - * Many files: Don't include "obstack.h". - * VERSION: Bump. - - * opncls.c (bfd_alloc_grow, bfd_alloc_finish): Remove. - * libbfd-in.h (bfd_alloc_grow, bfd_alloc_finish): Don't declare. - * libbfd.h: Rebuild. - * ieee.c (ieee_archive_p): Rewrite to not use bfd_alloc_grow. - * sunos.c (sunos_add_dynamic_symbols): Likewise. - * srec.c (srec_scan): Rewrite to not use obstack_1grow. - - * opncls.c (bfd_alloc): Rename from bfd_alloc_by_size_t. Remove - old version of bfd_alloc. - * libbfd-in.h (bfd_alloc_by_size_t): Don't declare. - * libbfd.h: Rebuild. - * Several files: Call bfd_alloc rather than bfd_alloc_by_size_t. - -Sat Mar 15 15:24:18 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (mips_elf_is_local_label_name): Accept the generic - ELF local label syntax as well. - -Sat Mar 15 10:16:42 1997 Fred Fish <fnf@cygnus.com> - - * config.bfd (powerpc-*-beos*): New target. - * configure.in (powerpc-*-beos*): Add case that explicitly - does not set COREFILE for now. A future BeOS version is - expected to support core files. - * configure: Regenerate with autoconf. - -Fri Mar 14 16:43:22 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (mips_elf_check_relocs): Give an error if CALL16 is - seen with a local symbol, rather than crashing. - - * elfcode.h (elf_slurp_symbol_table): Don't try to read the - version symbols if there aren't any. - -start-sanitize-tic80 -Thu Mar 13 16:38:30 1997 Fred Fish <fnf@cygnus.com> - - * coff-tic80.c (coff_rtype_to_howto): Define - (coff_tic80_rtype_to_howto): Clone generic coff version and - add code to handle the funky TI "internal relocations". - -end-sanitize-tic80 -Thu Mar 13 14:08:53 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Don't warn about type - or size changes because of a weak symbol. - - * cisco-core.c (SIGEMT): Define if not defined. - -Wed Mar 12 21:36:05 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Use extsymoff when - setting ever. Sanity check the version number. Sort out copying - flags and other information when adding an indirect symbol. - (NAME(bfd_elf,size_dynamic_sections)): Preserve any dynamic - symbols added by the backend. Clear the entire contents of the - versym section. - (elf_export_symbol): Ignore indirect symbols. - (elf_link_output_extsym): Accept a section without an owner in an - assert. - * elfcode.h (elf_slurp_symbol_table): Add a sanity check on the - version count. Correct the allocation of x_versymp. - - * elf32-mips.c (mips_elf_add_symbol_hook): Don't set the owner of - the magic sections used for SHN_MIPS_TEXT and SHN_MIPS_DATA. - Don't return bfd_und_section_ptr when info->shared. - (mips_elf_final_link): Set the alignment of .rtproc to 4, not 12. - (mips_elf_create_dynamic_sections): Correct type: ^= for &=. - (mips_elf_check_relocs): Resolve an indirect symbol in - sym_hashes. - (mips_elf_finish_dynamic_symbol): Don't change SHN_ABS into - SHN_MIPS_TEXT or SHN_MIPS_DATA. - - * elf.c (bfd_elf_print_symbol): Tweak version output slightly. - -Tue Mar 11 01:38:36 1997 Ian Lance Taylor <ian@cygnus.com> - - From Eric Youngdale <eric@andante.jic.com>: - * elf-bfd.h (ELF_LINK_FORCED_LOCAL): Define. - * elf.c (bfd_elf_print_symbol): Correct errors in last change. - * elflink.h (elf_link_add_object_symbols): Handle cases in which a - versioned symbol appears in both a regular and a shared object. - (elf_link_assign_sym_version): Set ELF_LINK_FORCED_LOCAL when - appropriate. Improve error message. - (struct elf_outext_info): Rename from elf_finfo_failed. Change - all uses. Add localsyms field. - (elf_bfd_final_link): When generating a shared library, call - elf_link_output_extsym to output all local symbols. - (elf_link_output_extsym): Handle symbols which were forced to - become local. - -Sun Mar 9 23:08:49 1997 Ian Lance Taylor <ian@cygnus.com> - - From Eric Youngdale <eric@andante.jic.com>: - * elf-bfd.h (elf_symbol_type): Add version field. - * elfcode.h (elf_slurp_symbol_table): Set version field. - * elflink.h (elf_link_add_object_symbols): When creating an - indirect symbol for a default version symbol, set DEF_DYNAMIC if - appropriate. Set up an indirection from the nondefault version of - the symbol as well. - (NAME(bfd_elf,size_dynamic_sections)): Call - elf_link_assign_sym_version before checking whether there are any - versions. Always record the version name as a dynamic symbol. - Initialize counters. - (elf_link_assign_sym_version): After finding a version, see if a - symbol should be forced to local scope. Create a new version - definition if appropriate. - (elf_link_output_extsym): Correct indirect symbol handling. - * elf.c (bfd_elf_print_symbol): Print version information. - (bfd_section_from_shdr): Turn version sections into BFD sections. - (elf_fake_sections): Only copy cverdefs and cverrefs into sh_info - if sh_info is not already set. - (_bfd_elf_copy_private_section_data): Copy sh_info for version - sections. - * elflink.c (_bfd_elf_link_record_dynamic_symbol): Tell - _bfd_stringtab_add to copy the name into permanent memory if - appropriate. - -Fri Mar 7 11:55:31 1997 H.J. Lu <hjl@gnu.ai.mit.edu> - - * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Fully parenthesize. - -Fri Mar 7 10:37:30 1997 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (bfd_coff_backend_data): Change - _bfd_coff_compute_section_file_positions to return a boolean - value. Change all callers. - (coff_compute_section_file_positions): Change return type to - boolean. If the size of the last section changed, then output a - zero byte at the end of the file. - * libcoff.h: Rebuild. - - * xcofflink.c (_bfd_xcoff_bfd_final_link): Always allocate space - for at least 6 output symbols. - (xcoff_write_global_symbol): When emitting TOC entry relocs, also - emit a TC csect to represent the space they take up. For an XO - symbol, just emit a reference, not a csect. - - * Makefile.in ($(SHLINK)): Just use ln -s, not ln -sf, since - Solaris doesn't like the combined options, and the -f is - unnecessary. - (stamp-tshlink, install): Likewise. - - * elf32-mips.c (mips_elf_relocate_section): Correct R_MIPS16_26 - handling when little endian. - -Thu Mar 6 13:51:51 1997 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10300.c (mn10300_elf_final_link_relocate): New function. - (mn10300_elf_relocate_section): Likewise. - (elf_backend_relocate_section): Define. - - * elf32-mn10300.c (reloc_type): Remove PCREL{8,16,32}_{1,2}BYTE - relocs. Replace them with generic PCREL_{8,16,32} relocs. - (elf32_mn10300_howto_table): Likewise. - (elf32_mn10300_reloc_map): Likewise. - (bfd_elf32_mn10300_reloc): Delete unused function. - -Thu Mar 6 12:19:59 1997 Fred Fish <fnf@cygnus.com> - -start-sanitize-tic80 - * coff-tic80.c (rtype2howto): If passed a relocation type we don't - understand, just set the howto field to NULL, and the caller will - print an appropriate error message. -end-sanitize-tic80 - * coffcode.h (coff_slurp_reloc_table): Pull duplicate declarations and - code fragment out of both legs of #ifdef RELOC_PROCESSING ... #endif - block. Use NULL for initializations of "ptr" rather than bare 0. - * coff-h8300.c: Fix typo in comment. - * coff-h8500.c: Ditto. - * coff-w65.c: Ditto - * coff-z8k.c: Ditto. - -Wed Mar 5 13:59:09 1997 Doug Evans <dje@seba.cygnus.com> - - * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc): Fix overflow calc. - (m32r_elf_relax_section, m32r_elf_relax_delete_bytes, - m32r_elf_get_relocated_section_contents): First pass at relax support. - -Mon Mar 3 13:27:09 1997 Ulrich Drepper <drepper@rtl.cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Use correct sh_size - entry for reading verdef records. - Use correct braces for computing increments of extverdaux and - exteverdef record pointers. - -start-sanitize-tic80 -Sun Mar 2 22:47:54 1997 Fred Fish <fnf@cygnus.com> - - * coff-tic80.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Set this to 2 - instead of 4. - -end-sanitize-tic80 -Sun Mar 2 16:25:35 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_find_version_dependencies): Check that - DEF_REGULAR is not set as well as checking that DEF_DYNAMIC is - set. - -start-sanitize-tic80 -Fri Feb 28 16:52:40 1997 Fred Fish <fnf@cygnus.com> - - * coffcode.h (coff_set_flags): Add case for TIC80_ARCH_MAGIC. - -end-sanitize-tic80 -Fri Feb 28 15:06:45 1997 Ian Lance Taylor <ian@cygnus.com> - - * targets.c (bfd_default_vector): Make non-const. - (find_target): New static function, broken out of - bfd_find_target. - (bfd_set_default_target): New function. - (bfd_find_target): Call find_target. When defaulting, use - bfd_default_vector[0] if it is not NULL. - * libbfd-in.h (bfd_default_vector): Adjust declaration. - * bfd-in2.h, libbfd.h: Rebuild. - - * syms.c (bfd_is_local_label): Return false if the symbol has no - name. - * coff-i960.c (coff_i960_is_local_label_name): New function. - (coff_bfd_is_local_label_name): Define. - * coff-m68k.c (m68k_coff_is_local_label_name): New function. - (coff_bfd_is_local_label_name): Define. - * coff-rs6000.c (xcoff_is_local_label_name): New function. - (coff_bfd_is_local_label_name): Define. - * elf.c (_bfd_elf_is_local_label_name): Treat symbols beginning - with .. or _.L_ as local. - * elf32-i386.c (elf_i386_is_local_label_name): New function. - (bfd_elf32_bfd_is_local_label_name): Define. - * evax-alpha.c (evax_bfd_is_local_label_name): Treat symbols - beginning with $ as local. - -Thu Feb 27 18:36:23 1997 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h (aout_link_write_symbols): Use bfd_is_local_label_name - rather than comparing against info->lprefix. - * cofflink.c (_bfd_coff_link_input_bfd): Likewise. - * elflink.h (elf_link_input_bfd): Likewise. - * linker.c (_bfd_generic_link_output_symbols): Likewise. - * xcofflink.c (xcoff_link_input_bfd): Likewise. - - * elfxx-target.h (bfd_elfNN_bfd_is_local_label_name): Define as - _bfd_elf_is_local_label_name if not already defined. - * elf.c (_bfd_elf_is_local_label_name): New function. - * elf-bfd.h (_bfd_elf_is_local_label_name): Declare. - - * coff-m88k.c (coff_bfd_is_local_label_name): Define. - (m88k_is_local_label_name): New static function. - - * coffcode.h (coff_bfd_is_local_label_name): Define as - _bfd_coff_is_local_label_name if not already defined. - * coffgen.c (_bfd_coff_is_local_label_name): New function. - * libcoff-in.h (_bfd_coff_is_local_label_name): Declare. - * libcoff.h: Rebuild. - - * targets.c (BFD_JUMP_TABLE_SYMBOLS): Change _bfd_is_local_label - to _bfd_is_local_label_name. - (bfd_target): Likewise. - * syms.c (bfd_is_local_label): Define as function, not macro. - (bfd_is_local_name): Define. - * libbfd.c (bfd_generic_is_local_label_name): Rename from - bfd_generic_is_local_label, and take a string rather than a - symbol. - * libbfd-in.h (_bfd_nosymbols_bfd_is_local_label): Don't define. - (_bfd_nosymbols_bfd_is_local_label_name): Define. - (bfd_generic_is_local_label): Don't declare. - (bfd_generic_is_local_label_name): Declare. - * bfd-in2.h, libbfd.h: Rebuild. - * All backends: Change local_label to local_label_name. - - * elf32-mips.c (struct mips_got_info): Add assigned_gotno field. - (mips_elf_relocate_got_local): Change return type to boolean. - Don't assume that the first zero entry is unassigned; instead, use - assigned_gotno. - (mips_elf_relocate_section): Check return value of - mips_elf_relocate_got_local. - (mips_elf_create_got_section): Initialize assigned_gotno field. - -start-sanitize-d30v -Wed Feb 26 15:19:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com> - - * elf32-d30v.c (bfd_elf_d30v_reloc): Add code to do 32-bit - relocations. - -end-sanitize-d30v -Wed Feb 26 13:33:03 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_input_bfd): Don't skip symbols from sections - that have no contents merely because linker_mark is not set. - -Tue Feb 25 18:51:35 1997 Stan Shebs <shebs@andros.cygnus.com> - - * config.bfd (mips*-*-lnews*): New target. - * coff-mips.c (mips_relocate_section): Make assert compare - content byteorder instead of header byteorder. - (ecoff_biglittle_vec): New BFD, big-endian headers, little-endian - data. - * targets.c (bfd_target_vector): Add ecoff_biglittle_vec. - * configure.in (ecoff_biglittle_vec): Add case. - * configure: Update. - -Tue Feb 25 00:32:49 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (elf_fake_sections): Use SHT_NOTE for any section whose - name begins with ".note". - (map_sections_to_segments): Add a PT_NOTE segment for any loadable - section whose name begins with ".note". - (get_program_header_size): Corresponding change. - - * elf32-mips.c (mips_elf_relocate_section): Check for misaligned - jal and for jal overflow. - -Mon Feb 24 17:53:14 1997 Ian Lance Taylor <ian@cygnus.com> - - From Eric Youngdale <eric@andante.jic.com>: - * elflink.h (elf_link_add_archive_symbols): If a default symbol is - not found, try looking it up again without the version name. - (elf_link_add_object_symbols): Always link against the dynamic - symbol table of a dynamic object. When linking against a dynamic - object, include version strings in symbol names, and set up - version information. Add indirect symbols for default versions. - (elf_link_create_dynamic_sections): Add special version sections. - (struct elf_assign_sym_version_info): Define. - (struct elf_find_verdep_info): Define. - (NAME(bfd_elf,size_dynamic_sections)): Add verdefs parameter. Set - up version sections. - (elf_adjust_dynamic_symbol): Ignore indirect symbols. - (elf_link_find_version_dependencies): New static function. - (elf_link_assign_sym_version): New static function. - (elf_link_renumber_dynsyms): New static function. - (struct elf_final_link_info): Add symver_sec field. - (elf_bfd_final_link): Initialize finfo.symver_sec. Don't count - local symbols of a dynamic object. Handle DT_VER* constants. - (elf_link_output_extsym): Simplify BFD_ASSERT checking for a - dynamic object. Skip indirect symbols from ELF objects. Remove - the version name before choosing a hash bucket. Write out the - version information if appropriate. - (elf_link_input_bfd): Check for DYNAMIC, not ET_DYN. - * bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration. - (bfd_elf64_size_dynamic_sections): Likewise. - * bfd-in2.h: Rebuild. - * elf-bfd.h (struct elf_link_hash_entry): Add verinfo field. - Change elf_link_hash_flags to unsigned short. - (ELF_LINK_HIDDEN): Define. - (struct elf_obj_tdata): Add fields dynversym_hdr, dynverref_hdr, - dynverdef_hdr, dynversym_section, dynverdef_section, - dynverref_section, cverdefs, cverrefs, verdef, verref. - (elf_dynversym, elf_dynverdef, elf_dynverref): Define. - (_bfd_elf_swap_verdef_in, _bfd_elf_swap_verdef_out): Declare. - (_bfd_elf_swap_verdaux_in, _bfd_elf_swap_verdaux_out): Declare. - (_bfd_elf_swap_verneed_in, _bfd_elf_swap_verneed_out): Declare. - (_bfd_elf_swap_vernaux_in, _bfd_elf_swap_vernaux_out): Declare. - (_bfd_elf_swap_versym_in, _bfd_elf_swap_versym_out): Declare. - (_bfd_elf_slurp_version_tables): Declare. - * elf.c (_bfd_elf_swap_verdef_in): New function. - (_bfd_elf_swap_verdef_out): Likewise. - (_bfd_elf_swap_verdaux_in, _bfd_elf_swap_verdaux_out): Likewise. - (_bfd_elf_swap_verneed_in, _bfd_elf_swap_verneed_out): Likewise. - (_bfd_elf_swap_vernaux_in, _bfd_elf_swap_vernaux_out): Likewise. - (_bfd_elf_swap_versym_in, _bfd_elf_swap_versym_out): Likewise. - (_bfd_elf_print_private_bfd_data): Add DT_VER* constants. Print - version information if there is any. - (_bfd_elf_link_hash_newfunc): Initialize verinfo field. - (bfd_section_from_shdr): Handle SHT_GNU_ver* section types. - (elf_fake_sections): Handle .gnu.version* section names. - (assign_section_numbers): Handle SHT_GNU_ver* section types. - (_bfd_elf_slurp_version_tables): New function. - * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't include - version name in string entered in dynamic hash table. - * elfcode.h: Include fnmatch.h. - * elf32-i386.c (elf_i386_relocate_section): Handle a dynamic - symbol which was forced to become local. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise. - -Fri Feb 21 16:15:18 1997 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10200.c (mn10200_elf_final_link_relocate): Simplify - somewhat. - (mn10200_elf_relax_section): Correctly compute a symbol's value - when the symbol is local, but not in the same section as we are - relaxing. Implement abs24 -> abs16, imm24 -> imm16 and d24 -> d16 - relaxing. - -Fri Feb 21 13:55:14 1997 Doug Evans <dje@seba.cygnus.com> - - * elf32-m32r.c: Rewrite to use ELF backend linker. - Store lower 16 bits of addend in R_M32R_HI16_[SU]LO insns. - Add small data area support (R_M32R_SDA16). - * reloc.c: Document BFD_RELOC_M32R_SDA16. - * bfd-in2.h,libbfd.h: Regenerated. - -Thu Feb 20 23:50:31 1997 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10200.c (mn10200_elf_relax_section): New function. - (mn10200_elf_relax_delete_bytes): Likewise. - (mn10200_elf_symbol_address_p): Likewise. - (mn10200_elf_get_relocated_section_contents): Likewise. - (bfd_elf32_bfd_relax_section): Define. - (bfd_elf32_bfd_get_relocated_section_contents): Likewise. - - * elf32-mn10200.c (mn10200_elf_final_link_relocate): New function. - (mn10200_elf_relocate_section): Likewise. - (elf_backend_relocate_section): Define. - -start-sanitize-d30v -Tue Feb 18 17:22:59 1997 Martin M. Hunt <hunt@pizza.cygnus.com> - - * Makefile.in, archures.c, config.bfd, configure.in, elf.c, - reloc.c, targets.c: New target, elf-*-D30V. - - * bfd-in2.h, configure, libbfd.h: Rebuilt. - - * cpu-d30v.c, elf32-d30v.c: New files. - -end-sanitize-d30v -Tue Feb 18 15:31:48 1997 Fred Fish <fnf@cygnus.com> - - * reloc.c (struct reloc_howto_struct): Fix typo in comment. - * bfd-in2.h: Regenerated. -start-sanitize-tic80 - * coff-tic80.c (RTYPE2HOWTO): Replace abort with real function. - (rtype2howto): Add function. - (tic80_howto_table): Add. -end-sanitize-tic80 - -Tue Feb 18 11:41:00 1997 Dawn Perchik <dawn@cygnus.com> - - * sysdep.h: Don't define errno in MSVC if error.h is included. - -Tue Feb 18 10:04:13 1997 Jeffrey A Law (law@cygnus.com) - - * elf32-v850.c (v850_elf_relocate_section): Make sure r_symndx - is initialized before it is used. - -Mon Feb 17 11:28:40 1997 Ian Lance Taylor <ian@cygnus.com> - - * hp300hpux.c (convert_sym_type): Don't convert a secondary common - symbol into a weak undefined symbol; leave it as a common symbol. - -Fri Feb 14 19:08:03 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Don't issue a warning - about a symbol defined in a dynamic object if it has already been - defined in a regular object. - -Thu Feb 13 20:53:22 1997 Klaus Kaempf (kkaempf@progis.de) - - * makefile.vms: Add gcc flags to allow compiling with current gcc - snapshot - (targmatch.h): New dependency. - - * reloc.c (BFD_RELOC_ALPHA_CODEADDR): New relocation for - openVMS/Alpha. - * evax.h (ALPHA_R_CODEADDR): New relocation. - * evax-alpha.c (ALPHA_R_CODEADDR): 64 bit procedure relocation for - openVMS/Alpha. - * evax-etir.c (ALPHA_R_CODEADDR): Output object code for this - relocation. - * bfd-in2.h, libbfd.h: Rebuild. - - Restrict symbol length to 64 bytes, case preserving: - * evax-emh.c (_bfd_evax_write_emh): Remove case hacking. - * evax-misc.c (_bfd_evax_case_hack_symbol): Remove. - (_bfd_evax_length_hash_symbol): Added. - * evax-etir.c (_bfd_evax_write_etir): Call - _bfd_evax_length_hash_symbol before output of symbol. - * evax-egsd.c (_bfd_evax_write_egsd): Likewise. - * evax.h (flag_hash_long_names, flag_show_after_trunc): Remove. - - * evax-emh.c: Output filename to object file without path. - - * evax-egsd.c: New sections for local and global commons. - - * evax-alpha.c, evax-emh.c, evax-egsd.c, evax-etir.c, - evax-misc.c, evax.h: Remove 8 bit characters from copyright - notices. Replace AXP with Alpha. - -Wed Feb 12 18:10:30 1997 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c (sunos_create_dynamic_sections): We need the dynamic - sections if we are creating a shared library. - -Tue Feb 11 15:45:43 1997 Doug Evans <dje@canuck.cygnus.com> - - * configure.host (i386-windows): Don't set host64=true. - -Tue Feb 11 15:27:32 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (reloc_type): Add R_MIPS16_GPREL. - (elf_mips16_gprel_howto): New static variable. - (mips16_gprel_reloc): New static function. - (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS16_GPREL. - (mips_info_to_howto_rel): Handle R_MIPS16_GPREL. - (mips_elf_relocate_section): Handle R_MIPS16_GPREL. - * reloc.c (BFD_RELOC_MIPS16_GPREL): Define. - * bfd-in2.h, libbfd.h: Rebuild. - -Mon Feb 10 23:25:00 1997 Doug Evans <dje@seba.cygnus.com> - - * elf32-m32r.c (elf_m32r_howto_table): Change partial_inplace to true - for R_M32R_{16,32,24,HI16_ULO,HI16_SLO,LO16}. - -start-sanitize-r5900 - Fri Feb 7 16:20:17 1997 Gavin Koch <gavin@cygnus.com> - - * config.bfd: add r5900 - -end-sanitize-r5900 -Fri Feb 7 12:39:11 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_input_bfd): If we've discarded a section, - the output section will be the absolute section; don't print an - assertion message for that case when doing a relocateable link. - -Thu Feb 6 16:55:43 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (FN_STUB, CALL_STUB, CALL_FP_STUB): Define. - (struct mips_elf_link_hash_entry): Add new fields fn_stub, - need_fn_sub, call_stub, and call_fp_stub. - (struct mips_elf_link_hash_table): Add field mips16_stubs_seen. - (mips_elf_link_hash_newfunc): Initialize new fields. - (mips_elf_link_hash_table_create): Likewise. - (mips_elf_relocate_section): Redirect relocations to use mips16 - stubs when appropriate. - (mips_elf_check_relocs): Attach stub sections to the appropriate - symbol. Set need_fn_stub when appropriate. - (mips_elf_always_size_sections): New static function. - (mips_elf_check_mips16_stubs): New static function. - (elf_backend_always_size_sections): Define. - * elf-bfd.h (struct elf_obj_tdata): Add local_stubs field. - - * elflink.h (elf_link_input_bfd): Discard local symbols that are - attached to sections which are not being included in the link. - -Wed Feb 5 13:20:17 1997 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (_bfd_coff_generic_relocate_section): Ignore the - symbol value when computing the addend for a pc_relative - pcrel_offset reloc. - -Mon Feb 3 11:54:06 1997 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (_bfd_coff_generic_relocate_section): If doing a - relocateable link, just skip pc_relative pcrel_offset relocs. - * coff-arm.c (coff_arm_rtype_to_howto): Return a different howto - structure for an ARM26 reloc which can be resolved. - (coff_arm_adjust_symndx): Only convert ARM26 to ARM26D if the - reloc can be resolved. - - * coff-h8300.c (h8300_reloc16_extra_cases): Correct off by one - error in overflow check for R_RELBYTE. - -Fri Jan 31 14:07:27 1997 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c (ieee_slurp_section_data): Pick up the start address. - From Mark Rasin <mark.rasin@telrad.co.il>. - - * aoutx.h (aout_link_write_symbols): Don't apply discard_l to - debugging symbols. - -Wed Jan 29 00:00:49 1997 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10200.c (reloc_type): Add 16bit pc-relative reloc. - (elf_mn10200_howto_table): Likewise. - (mn10200_reloc_map): Likewise. - -Mon Jan 27 12:07:35 1997 Doug Evans <dje@seba.cygnus.com> - - * reloc.c: Add relocs BFD_RELOC_M32R_{HI16_[US]LO,LO16}. - * bfd-in2.h, libbfd.h: Regenerated. - * elf32-m32r.c: Add support for them. - -Mon Jan 27 12:25:02 1997 Ian Lance Taylor <ian@cygnus.com> - - * aout-arm.c (MY_swap_std_reloc_in): Remove unused r_length. - * elf32-ppc.c (ppc_elf_check_relocs): Remove unused plt. - * elf32-v850.c (v850_elf_final_link_relocate): Remove used - r_format and r_pcrel. Always return a value. - * riscix.c (MY_final_link_callback): Define to dummy value. - - * elf32-i386.c (elf_i386_size_dynamic_sections): When checking for - relocations against the text segment, look up the output name of - the reloc section. - * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. - * elf32-mips.c (mips_elf_size_dynamic_sections): Likewise. - * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. - * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. - * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise. - -start-sanitize-tic80 -Wed Jan 22 15:40:28 1997 Fred Fish <fnf@cygnus.com> - - * coff-tic80.c (tic80coff_vec): Use correct data put/get - routines for little endian data. - * coffcode.h (coff_write_object_contents): Set magic to - TIC80_ARCH_MAGIC for TIc80. - -Tue Jan 21 12:32:43 1997 Fred Fish <fnf@cygnus.com> - - * coff-tic80.c (tic80coff_vec): Change to little endian data - as the default. - -end-sanitize-tic80 -Thu Jan 16 17:45:57 1997 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Change type of - auxiliary_filters parameter to be const char * const *. Accept a - NULL terminated array. - * bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration. - (bfd_elf32_size_dynamic_sections): Update declaration. - * bfd-in2.h: Rebuild. - -Wed Jan 15 11:21:32 1997 Ian Lance Taylor <ian@cygnus.com> - - * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Treat a - NOTYPE symbol in a text section as a FUNC symbol. - - * coffcode.h (coff_compute_section_file_positions): Force - relocbase to be aligned to COFF_DEFAULT_SECTION_ALIGNMENT_POWER. - -Tue Jan 14 08:46:33 1997 Doug Evans <dje@canuck.cygnus.com> - - * libaout.h (machine_type): Reserve several values for sparclet. - -start-sanitize-tic80 -Mon Jan 13 22:39:08 1997 Michael Meissner <meissner@tiktok.cygnus.com> - - * config.bfd (tic80-*-*): Don't require 'coff'. - -end-sanitize-tic80 -Mon Jan 13 19:36:25 1997 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-v850.c (v850_elf_howto_table): Set the special_function - table to v850_elf_reloc for all non-standard relocations. - (v850_elf_check_relocs): Add check for h being non-null. - (v850_elf_reloc): Add R_V850_ZDA_OFFSET support. Use switch - statement instead of multiple ifs. - (v850_elf_relocate_section): Fix up error message, don't just call - abort. - -Mon Jan 6 13:28:35 1997 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10200.c (elf_mn10200_howto): Don't ever set partial-inplace. - Use bfd_elf_generic_reloc as special function for all relocs. - (bfd_elf32_mn10200_reloc): Remove unnecessary function. - - * elf32-mn10200.c (elf_mn10200_howto): Set pcrel_offset for - 24bit pc-relative reloc. - -start-sanitize-tic80 -Fri Jan 3 16:33:00 1997 Fred Fish <fnf@cygnus.com> - - * Makefile.in (coff-tic80.o): Add coffcode.h to dependency list. - * coff-tic80.c (tic80coff_vec): Data byte order is big endian and - header byte order is little endian. Use correct bfd_get and - bfd_put routines for little endian headers. - * coffcode.h (coff_set_arch_mach_hook): Set arch to - bfd_arch_tic80 for TIC80_ARCH_MAGIC number. - -end-sanitize-tic80 -Fri Jan 3 16:54:08 1997 Jeffrey A Law (law@cygnus.com) - - * reloc.c: Add BFD_RELOC_24. - * elf32-mn10200.c (enum reloc_type): Add 24bit and pcrel relocs. - (elf_mn10200_howto, mn10200_reloc_map): Corresponding changes. - * bfd-in2.h, libbfd.h: Rebuilt. - -Fri Jan 3 16:58:31 1997 Richard Henderson <rth@tamu.edu> - - elf64-alpha multiple .got rewrite: - - * elf-bfd.h (struct elf_backend_data): Add always_size_sections entry. - (bfd_elf*_mkobject): Don't define here ... - * elfxx-target.h: ... but rather here. Default always_size_sections - hook to NULL. - * elf.c (elf_mkobject): Rename to bfd_elf_mkobject, since that was - what the #defines in elf-bfd.h transmuted it to anyway. - - * section.c: Add SEC_LINKER_CREATED flag. - * bfd-in2.h: Rebuild. - * elf32-i386.c (elf_i386_check_relocs): Add SEC_LINKER_CREATED to - relocation section flags. - (elf_i386_size_dynamic_sections): Use SEC_LINKER_CREATED instead of - SEC_IN_MEMORY to recognize generated bits. - * elf32-m68k.c (elf_m68k_check_relocs, elf_m68k_size_dynamic_sections): - Likewise. - * elf32-mips.c (mips_elf_final_link, mips_elf_create_dynamic_sections, - mips_elf_create_compact_rel_section, mips_elf_create_got_section, - mips_elf_check_relocs, mips_elf_size_dynamic_sections): Likewise. - * elf32-ppc.c (ppc_elf_create_linker_section, - ppc_elf_size_dynamic_sections): Likewise. - * elf32-sparc.c (elf32_sparc_check_relocs, - elf32_sparc_size_dynamic_sections): Likewise. - * elflink.c (_bfd_elf_create_got_section): Add SEC_LINKER_CREATED to - section flags. - (_bfd_elf_create_dynamic_sections): Likewise. - (_bfd_elf_make_linker_section_rela): Likewise. - * elflink.h (elf_link_create_dynamic_sections): Likewise. - (bfd_elf,size_dynamic_sections): Call the always_size_sections hook. - (elf_bfd_final_link): Use SEC_LINKER_CREATED instead of SEC_IN_MEMORY - to identify generated bits. - (elf_link_input_bfd): Likewise. - - * elf64-alpha.c: Rewrite everything touching relocations. - -Fri Jan 3 11:42:53 1997 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-v850.c (all functions and static variables): Go through - and regularize names to be of the form v850_elf_<xxx>. - (toplevel): Include <elf/v850.h>. - (enum reloc_type): Move to include/elf/v850.h. - (v850_elf_check_relocs): For common variables, if the variable is - referenced by a R_V850_{SDA,ZDA,TDA} relocation, put the variable - into the appropriate section. - (elf_backend_check_relocs): Define. - -Tue Dec 31 15:15:28 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-v850.c (elf_v850_howto_table): Fix some spacing. - -Tue Dec 31 14:44:50 1996 Ian Lance Taylor <ian@cygnus.com> - - * config.bfd (mips*el-*-linux*): New target. - (mips*-*-linux*): New target. - - * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Clean up. - Return a useful value. - - * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE. - - * configure.in: Check ac_cv_func_mmap_fixed_mapped, not - ac_cv_func_mmap. - * configure: Rebuild. - * configure.host: Use ac_cv_func_mmap_fixed_mapped instead of - ac_cv_func_mmap in bfd/configure.host. - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Add - filter_shlib and auxiliary_filter_shlib parameters. - * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_AUXILIARY and - DT_FILTER. - * bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration. - (bfd_elf64_size_dynamic_sections): Likewise. - * bfd-in2.h: Rebuild. - -Mon Dec 30 18:48:52 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_build_ldsyms): When exporting all defined - symbols, don't export a symbol which is defined by an object in an - archive which contains shared objects. - -start-sanitize-tic80 -Mon Dec 30 16:12:58 1996 Fred Fish <fnf@cygnus.com> - - * archures.c (enum bfd_architecture): Add bfd_arch_tic80 - for TI TMS320c80 (MVP). - (bfd_archures_list): Add bfd_tic80_arch. - * bfd-in2.h: Regenerate by running "make headers". - -Sun Dec 29 16:18:52 1996 Fred Fish <fnf@cygnus.com> - - * cpu-tic80.c (bfd_tic80_arch): Add struct. - * configure.in (case $vec): Correct typo, "tb" not "tp". - Also add cofflink.o for tic80coff_vec. - * configure: Regenerate with autoconf. - -end-sanitize-tic80 -Mon Dec 30 11:54:56 1996 Ian Lance Taylor <ian@cygnus.com> - - * libbfd.c: Patch up the mmap code so that it is only built if BFD - is configured with --with-mmap. - -start-sanitize-tic80 -Sun Dec 29 10:48:57 1996 Fred Fish <fnf@cygnus.com> - - * Makefile.in (BFD32_BACKENDS): Add coff-tic80.o - (ALL_MACHINES): Add cpu-tic80.o - (cpu-tic80.o, coff-tic80.o): Add dependencies. - * coff-tic80.c: Add skeleton, cloned from another coff config. - * coffcode.h (coff_write_object_contents): Set magic to TIC80MAGIC - for TIc80. - -end-sanitize-tic80 -Fri Dec 27 20:56:41 1996 Fred Fish <fnf@cygnus.com> - - * TODO: Correct a misspelling. -start-sanitize-tic80 - * coff-tic80.c: New file for TI TMS320C80 (MVP). - * cpu-tic80.c: New file for TI TMS320C80 (MVP). - * configure.in (case $vec): Add tic80coff_vec entry. - * configure: Regenerate with autoconf. - * archures.c (bfd_tic80_arch): Declare. - * bfd-in2.h (enum bfd_architecture): Add bfd_arch_tic80. - * config.bfd (case ${targ}): Add tic80*-*-coff* target. - * targets.c (tic80coff_vec): Add decl as extern bfd_target. - (bfd_target_vector): Add tic80coff_vec entry. -end-sanitize-tic80 - -Fri Dec 27 11:48:12 1996 H.J. Lu <hjl@lucon.org> - - * elflink.h (elf_buckets): Add some more values for larger - binaries. - -Thu Dec 26 18:36:54 1996 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.in (install): Move subdir_do out of conditional. From - Fred Fish <fnf@cygnus.com>. - -Wed Dec 18 10:04:30 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10200.c (enum reloc_type): Enable basic 8, 16, and - 32 bit relocs. - (elf_mn10200_howto_table): Likewise. - (mn10200_reloc_map): Likewise. - -Tue Dec 17 11:09:36 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (mips_elf_add_symbol_hook): Add 1 to the value of a - mips16 symbol during the link. - (mips_elf_finish_dynamic_symbol): Subtract 1 from the value of a - mips16 symbol. - (mips_elf_link_output_symbol_hook): New static function. - (elf_backend_link_output_symbol_hook): Define. - - * elf.c (bfd_elf_print_symbol): Print the st_other field if it is - not zero. - -Mon Dec 16 14:38:39 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (bfd_section_from_shdr): Don't check for reloc sections - against SEC_DEBUGGING sections here (revert patch of December 5). - * elfcode.h (elf_object_p): Check for them here, instead. - -Sun Dec 15 14:46:06 1996 Ian Lance Taylor <ian@cygnus.com> - - * elfcode.h (elf_slurp_reloc_table): Add dynamic parameter. - * elf.c (_bfd_elf_canonicalize_reloc): Pass new argument to - slurp_reloc_table. - (_bfd_elf_get_dynamic_reloc_upper_bound): New function. - (_bfd_elf_canonicalize_dynamic_reloc): New function. - * elf-bfd.h (struct elf_size_info): Update declaration of - slurp_reloc_table. - (_bfd_elf_get_dynamic_reloc_upper_bound): Declare. - (_bfd_elf_canonicalize_dynamic_reloc): Declare. - * elfxx-target.h: Use new dynamic reloc routines by default. - * elf64-mips.c (mips_elf64_slurp_reloc_table): Add dynamic - parameter. - -Fri Dec 13 13:18:49 1996 Dan Wilder <dan@gasboy.com> - - * coffcode.h (coff_set_flags): Use MC68KBCSMAGIC for bfd_arch_m68k - if NAMES_HAVE_UNDERSCORE is defined. - -Fri Dec 13 11:13:23 1996 Doug Evans <dje@canuck.cygnus.com> - - * libaout.h (enum machine_type): Change M_SPARCLET from 142 to 131. - -Thu Dec 12 15:07:20 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_check_relocs): Move R_PPC_PLTREL24 into the - supported relocs. - -Thu Dec 12 14:55:41 1996 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Only add a weak - symbol if the real definition is in the dynamic symbol table. - After finding the real definition, then, if it is dynamic, add the - weak symbol to the dynamic symbol table. - - * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Make static. - - * ppcboot.c (ppcboot_set_arch_mach): Don't define; it's a - function. - (ppcboot_bfd_print_private_bfd_data): Don't take the address of an - array. - -Tue Dec 10 23:23:52 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10300.c (reloc_type): Remove big endian mn10300 reloc - variants. - (elf32_mn10300_howto_table, mn10300_reloc_map): Likewise. - (bfd_elf32_mn10300_reloc): Write data in little endian format. - * reloc.c: Remove mn10300 big endian relocs. - * bfd-in2.h, libbfd.h: Rebuilt. - - * elf32-mn10200.c: Update from elf32-mn10300.c. - -Fri Dec 6 15:18:05 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10300.c (elf_symbol_leading_char): Define. - - * elf32-mn10300.c: Add some comments. - -Fri Dec 6 17:16:43 1996 Ian Lance Taylor <ian@cygnus.com> - - * ihex.c (ihex_scan): Always initialize buf before jumping to - error_return. - (ihex_read_section): Likewise. - -Thu Dec 5 22:29:18 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10300.c (elf_mn10300_howto_table): Don't set partial- - inplace for most relocs. - -Thu Dec 5 13:24:46 1996 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Calling check_relocs - even if SEC_ALLOC is not set. - * elf32-i386.c (elf_i386_check_relocs): Don't check SEC_ALLOC - when deciding whether to copy a reloc into a shared object. - (elf_i386_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_check_relocs): Likewise. - (elf32_sparc_relocate_section): Likewise. - * elf32-i386.c (elf_i386_check_relocs): Don't set SEC_ALLOC in a - reloc section if it is not set in the source section. - * elf32-sparc.c (elf32_sparc_check_relocs): Likewise. - * elf.c (bfd_section_from_shdr): Mark a reloc section associated - with a SEC_DEBUGGING section as SEC_DEBUGGING. - -Wed Dec 4 14:18:13 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): #if 0 code that - expects a .got.plt until we actually create it. - -Mon Dec 2 12:13:51 1996 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (_bfd_coff_generic_relocate_section): Print an error - message for bfd_reloc_outofrange, rather than aborting. From - Philippe De Muyter <phdm@info.ucl.ac.be>. - - * cofflink.c (_bfd_coff_final_link): If there aren't any relocs in - a relocateable link, don't try to process them. From Heinz Wrobel - <wrobel@lpr.e-technik.tu-muenchen.de>. - -Mon Dec 2 00:39:24 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10300.c (mn10300_info_howto): Renamed from - mn10300_info_howto_rel. Tweak reloc argument to be an - Elf32_Internal_Rela. - (USE_RELA): Define instead of USE_REL. - (elf_info_to_howto, elf_info_howto_rel): Corresponding changes. - -Sun Dec 1 00:18:59 1996 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) - - * configure.in, configure: Handle mips*-sgi-irix6*. - * irix-core.c (irix_core_core_file_p): Accept CORE_MAGICN32 - core files. - -Wed Nov 27 12:10:25 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf32-i386.c (elf_i386_relocate_section): Warn about a - relocation against a symbol defined in a section with no output - section. - -Tue Nov 26 11:07:31 1996 Ian Lance Taylor <ian@cygnus.com> - - * aclocal.m4 (BFD_CC_FOR_BUILD): Don't require AC_C_CROSS. - * configure, config.in: Rebuild with autoconf 2.12. - - * elf-bfd.h (struct elf_link_hash_entry): Add other field. - * elf.c (_bfd_elf_link_hash_newfunc): Initialize other field. - (swap_out_syms): Set st_other from existing st_other field. - * elflink.h (elf_link_add_object_symbols): Store st_other in hash - table other field. - (elf_link_output_extsym): Set the other field from the global hash - table entry. - * elf32-mips.c (enum reloc_type): Add R_MIPS16_26. - (elf_mips16_jump_howto): New static variable. - (mips16_jump_reloc): New static function. - (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS16_JMP. - (mips_info_to_howto_rel): Handle R_MIPS16_26. - (mips_elf_relocate_section): Handle R_MIPS16_26. Handle R_MIPS_26 - to a mips16 symbol. - * reloc.c (BFD_RELOC_MIPS16_JMP): Add to list of relocs. - * bfd-in2.h, libbfd.h: Rebuild. - * cpu-mips.c (arch_info_struct): Add mips:16 entry. - -Mon Nov 25 11:23:32 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.host: Use long long for mips-sgi-irix6*. - - * coffswap.h (coff_swap_scnhdr_out): Make line number overflow - only a warning. From Philippe De Muyter <phdemuyt@ulb.ac.be>. - -Mon Nov 25 08:52:29 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10300.c (bfd_elf32_mn10300_reloc): New function. - (enum reloc_type): Add more reloc types. - (elf32_mn10300_howto_table): Update for new reloc types. - (elf32_mn10300_reloc_map): Update for new reloc types. - * reloc.c: Add some new relocs for the mn10300 series. - * bfd-in2.h, libbfd.h: Rebuilt. - -Sat Nov 23 13:26:18 1996 Jeffrey A Law (law@cygnus.com) - - * som.c (setup_sections): Don't lose for a space which has - no data, but some symbols. - -Fri Nov 22 11:32:13 1996 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c (struct sunos_link_hash_table): Add got_needed field. - (sunos_link_hash_table_create): Initialize got_needed. - (sunos_create_dynamic_sections): Only set .got section size if it - is not already set. Set got_needed. - (bfd_sunos_size_dynamic_sections): Check got_needed. Only set - sdynptr, and only handle dynamic sections, if dynamic sections are - needed. - (sunos_scan_std_relocs): Pass false to create_dynamic_sections. - Initialize .got section. - (sunos_scan_ext_relocs): Likewise. - (sunos_write_dynamic_symbol): Set up PLT entry even if this is not - a dynamic symbol. - (sunos_finish_dynamic_link): Check got_needed. Only set up - dynamic linking information if needed. - -Thu Nov 21 10:31:31 1996 Rob Savoye (rob@cygnus.com) - - * config.bfd: Added VersaDOS format to the Ericsson configuration. - -Wed Nov 20 16:31:31 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-mn10300.c: Rough cut at relocs for the mn10300. - -Wed Nov 13 08:12:38 1996 Jeffrey A Law (law@cygnus.com) - - * Makefile.in (elf32-d10v.o): Don't depend on elf/d10v.h - anymore. - -Tue Nov 12 13:30:00 1996 Dawn Perchik <dawn@cygnus.com> - - * filemode.c: Include sysdep.h. - * ihex.c: Add casts to eliminate compiler warnings. - * sunos.c: Add casts to eliminate compiler warnings. - -Mon Nov 11 10:37:02 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Create .got.plt - section. - (ppc_elf_check_relocs): Add support for R_PPC_LOCAL24PC. Make - appropriate relocations in the .so file if shared. - (ppc_elf_relocate_section): Ditto. - -Tue Oct 29 15:03:02 1996 Doug Evans <dje@canuck.cygnus.com> - - * elf32-m32r.c (elf_m32r_howto_table, R_M32R_24): Use - complain_overflow_unsigned. - -Tue Oct 29 12:53:46 1996 Martin M. Hunt <hunt@pizza.cygnus.com> - - * elf32-d10v.c (elf_d10v_howto_table): Don't complain on - overflows for R_D10V_16 and R_D10V_18. - -Tue Oct 29 13:23:53 1996 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c (ieee_write_section_part): Use LMA rather than VMA. - (do_with_relocs): Likewise. - (do_as_repeat): Likewise. - (copy_expression): Likewise. - -Fri Oct 25 16:56:40 1996 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c (ieee_write_external_part): Correctly record whether - there is an external part. - -Thu Oct 24 14:32:52 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-v850.c (elf32_v850_bfd_final_link_relocate): Correctly - handle tda offsets for sld.w and sst.w instructions. - Fix alignment check in sld.w and sst.w tda reloc handling. - -Thu Oct 24 09:08:47 1996 Stu Grossman (grossman@critters.cygnus.com) - - * aclocal.m4, configure: Set USE_BINARY_FOPEN for *-*-windows. - -Wed Oct 23 00:53:16 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-v850.c: Add comments about assumptions about - char, short & long sizes. - (elf32_v850_bfd_final_link_relocate): Fix sign extension - problems for several relocs. - - * elf32-v850.c (elf32_v850_howto_table): Fix typo in - R_V850_SDA_OFFSET entry. - -Wed Oct 23 00:20:34 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (bfd_xcoff_import_symbol): Don't allocate ldsym. - Store import file index in ldindx. - (xcoff_build_ldsyms): Assume that ldsym was not previously - allocated. For an imported symbol, copy ldindx into l_ifile. - -Tue Oct 22 19:20:38 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-v850.c (elf_v850_howto_table): Fix ordering of - R_V850_ZDA_OFFSET and R_V850_TDA_OFFSET. Fix various - fields in R_V850_TDA_OFFSET. - (elf32_v850_bfd_final_link_relocate): Tweak pc-relative - relocs to work more like other relocs. Handle R_V850_TDA_OFFSET - relocations. - - * elf32-v850.c: Include bfdlink.h. - (bfd_elf32_v850_reloc): Return an error if we get a reloc - we can't handle. - (elf32_v850_bfd_final_link_relocate): New function. - (v850_elf_relocation_section): Likewise. - (elf_backend_relocate_section): Define. - -Tue Oct 22 17:22:43 1996 Ian Lance Taylor <ian@cygnus.com> - - * binary.c (binary_set_section_contents): Ignore sections which - don't have SEC_LOAD and SEC_ALLOC set. - -Mon Oct 21 12:13:05 1996 Jeffrey A Law (law@cygnus.com) - - * linker.c (_bfd_generic_final_link): Avoid losing static - symbols in the .bss section. - -Mon Oct 21 10:54:58 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (elf_mips_howto_table): Describe R_MIPS_64. - (mips32_64bit_reloc): New static function. - (mips_reloc_map): Add entry for BFD_RELOC_64. - (mips_elf_relocate_section): Handle R_MIPS_64. - - * linker.c (default_indirect_link_order): Print an error message - when attempting to do a relocateable link with different object - file formats, rather than calling abort. - -Thu Oct 17 10:43:29 1996 Doug Evans <dje@canuck.cygnus.com> - - * reloc.c (m32r relocs): Rename them. - * bfd-in2.h, libbfd.h: Regenerated. - * elf32-m32r.c: Update. - (m32r_elf_10_pcrel_reloc): New function. - (elf_m32r_howto_table, R_M32R_10_PCREL entry): Use it. - (elf_m32r_howto_table, R_M32R_24 entry): Fix {src,dst}_masks. - -Wed Oct 16 11:24:35 1996 Jeffrey A Law (law@cygnus.com) - - * linker.c (_bfd_generic_final_link): Set "linker_mark" for - all sections that will be included in the output file. - (_bfd_generic_link_output_symbols): Discard symbols in sections - which are being discarded. - * elf32-v850.c (enum reloc_type): Add R_V850_SDA_OFFSET, - R_V850_TDA_OFFSET and R_V850_ZDA_OFFSET. - (elf_v850_howto_table): Corresponding changes. - (elf_v850_reloc_map): Corresponding changes. - * reloc.c: Add additional V850 relocations. - * bfd-in2.h, libbfd.h: Rebuilt. - - * elf32-v850.c (bfd_elf32_v850_reloc): Mask out bits we - no longer want in pc-relative relocs. - -Tue Oct 15 22:17:37 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-v850.c (bfd_elf32_v850_reloc): Don't silently - accept a reloc against an undefined sybmol! - -Tue Oct 15 16:17:28 1996 Stu Grossman (grossman@critters.cygnus.com) - - * elf32-v850.c: Define elf_symbol_leading_char to be '_'. - -Tue Oct 15 12:40:41 1996 Ian Lance Taylor <ian@cygnus.com> - - * VERSION: Bump for new relocation. - - * hosts/i386bsd.h: If NBPG is not defined, define it as - PAGE_SIZE, for recent versions of FreeBSD. - -Mon Oct 14 12:37:26 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.host: Use `long long' as the 64 bit type on a Solaris - host, since both gcc and the SunPRO compilers support it. - -Mon Oct 14 11:17:24 1996 Richard Henderson <rth@tamu.edu> - - * reloc.c: Create a new BFD_RELOC_ALPHA_ELF_LITERAL. It was a - mistake to have reused the ECOFF LITERAL for ELF since they have - different semantics. - * elf64-alpha.c (elf_reloc_map): Map from ELF_LITERAL. - * bfd-in2.h, libbfd.h: Rebuild. - - * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Trap .got - section overflow. - - * elf64-alpha.c (elf64_alpha_relocate_section): Do not emit a - dynamic relocation for an undefweak symbol when we are building - a static executable. - -Thu Oct 10 11:15:06 1996 Stan Shebs <shebs@andros.cygnus.com> - - * mpw-make.sed (config.bfd, targmatch.sed): Edit references to - point explicitly to srcdir. - (targmatch.h): Edit references to point explicitly to objdir. - -Thu Oct 10 14:14:23 1996 Ian Lance Taylor <ian@cygnus.com> - - * config.bfd: When setting targ_cpu, don't get confused by - linux-gnu. - -Tue Oct 8 08:51:19 1996 Stu Grossman (grossman@critters.cygnus.com) - - * configure.host: Add support for windows host (a build done - under the Microsoft build environment). - -Tue Oct 8 11:40:16 1996 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): If a symbol is a weak - definition in a dynamic object, add it to the dynamic symbol table - if any dynamic object mentions it. Reverts part of last patch. - - * sunos.c (struct sunos_link_hash_table): Add got_base field. - (sunos_link_hash_table_create): Initialize got_base. - (bfd_sunos_size_dynamic_sections): If the .got section is more - than 0x1000 bytes, set __GLOBAL_OFFSET_TABLE_ and got_base to - 0x1000. - (sunos_check_dynamic_reloc): Subtract got_base from a base - relative relocation. - - * elf32-mips.c (elf_mips_isa): New static function. - (_bfd_mips_elf_merge_private_bfd_data): Don't warn about linking - -mips1 and -mips2 code together, or -mips3 and -mips4 code. - -Mon Oct 7 11:44:17 1996 Ian Lance Taylor <ian@cygnus.com> - - * archive.c (do_slurp_coff_armap): Only treat archive as little - endian for i960 COFF. - -Fri Oct 4 13:49:01 1996 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_compute_section_file_positions): Adjust sofar - by the change in size of the section when EXEC_P is not set. - - * coff-m68k.c (coff_rtype_to_howto): Define if not defined. - (m68kcoff_rtype_to_howto): New static function. - * cf-m68klynx.c (coff_m68k_lynx_rtype_to_howto): Add the section - VMA to the addend for a PC relative reloc. - - * dep-in.sed: Rework backslash loop a bit to avoid bug in sed on - HP/UX 10.20. - * Makefile.in: Rebuild dependencies. - - * dep-in.sed: Remove ../bfd/sysdep.h, since it will appear when - som.h is included. - -Fri Oct 4 11:41:39 1996 Jeffrey A Law (law@cygnus.com) - - * Makefile.in: Remove explicit dependencies for mn10200 and - mn10300 files. - (ALL_MACHINE_CFILES): Add cpu-mn10200.c and cpu-mn10300.c. - (BFD32_BACKENDS_CFILES): Add elf32-mn10200.c and elf32-mn10300.c - (dependencies): Rebuilt. - -Thu Oct 3 16:57:51 1996 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (coff_link_add_symbols): Set obj_coff_keep_syms - during this function. - - * elflink.c (_bfd_elf_create_linker_section): Only use an existing - section if the flags are compatible. - - * configure.in: Add havevecs, and put it in tdefaults. - * mpw-config.in: Likewise. - * configure: Rebuild. - * targmatch.sed: New file; a sed script to build targmatch.h from - config.bfd. - * config.bfd: Add #if, #endif, and comments for targmatch.h. - * targets.c: Include "fnmatch.h". - (struct targmatch): Define. - (bfd_target_match): Define by including targmatch.h. - (bfd_find_target): If the target is not found by name, search for - it as a configuration triplet. - * Makefile.in: Rebuild dependencies. - (BFD32_BACKENDS): Add aout-arm.o, aout-sparcle.o, hp300bsd.o, - i386dynix.o, m68k4knetbsd.o, and riscix.o. - (BFD32_BACKENDS_CFILES): Add aout-arm.c, aout-sparcle.c, - hp300bsd.c, i386dynix.c, m68k4knetbsd.c, and riscix.c. - (HFILES): Add targmatch.h. Also, alphabetize and reindent. - (CFILES): Remove i386dynix.c and hp300bsd.c. - (targmatch.h): New target. - (do_clean): Remove targmatch.h. - - * configure.in: Add BFD_NEED_DECLARATION(getenv). - * acconfig.h: Add NEED_DECLARATION_GETENV. - * configure, config.in: Rebuild. - * sysdep.h: If NEED_DECLARATION_GETENV, declare getenv. - * aout-adobe.c (aout_adobe_object_p): Don't declare getenv. - -Thu Oct 3 09:29:09 1996 Jeffrey A Law (law@cygnus.com) - - * cpu-mn10x00.c, elf32-mn10x00: Removed. - * cpu-mn10200.c, cpu-mn10300.c: New files. - * elf32-mn10200.c, elf32-mn10300.c: New files. - * Makefile.in: Break mn10x00 support into two separate - configurations, mn10200 and mn10300. - * archures.c, config.bfd, configure.in, elf.c, targets.c: Likewise. - * bfd-in2.h, configure: Rebuilt. - -Thu Oct 3 15:38:19 1996 Jason Molenda (crash@godzilla.cygnus.co.jp) - - * Makefile.in (do_clean): Move config.log to do_distclean. - -Wed Oct 2 21:40:55 1996 Jeffrey A Law (law@cygnus.com) - - * cpu-mn10x00.c, elf32-mn10x00.c: New files. - * Makefile.in (ALL_MACHINES): Add cpu-mn10x00.o. - (BFD32_BACKENDS): Similarly for elf32-mn10x00.o. - (elf32-mn10x00.o): Add dependencies. - * archures.c (enum bfd_architecture): Add bfd_arch_mn10x00. - (bfd_mn10x00_arch): Declare. - (bfd_archures_list): Add bfd_mn10x00_arch. - * config.bfd: Add mn10x00-*-*. - * configure.in: Add bfd_elf32_mn10x00_vec. - * elf.c (prep_headers): Handle bfd_arch_mn10x00. - * targets.c (bfd_elf32_mn10x00_vec): Declare. - (bfd_target_vector): Add bfd_elf32_mn10x00_vec. - * bfd-in2.h, configure: Rebuilt. - -Wed Oct 2 15:46:45 1996 Klaus Kaempf <kkaempf@progis.de> - - openVMS/Alpha: Provide filename and case_hack flags via - symbol table from gas. - Add case_hack code for symbol output from vax/vms. - * evax-alpha.c (evax_initialize): Remove filename handling, - filename is provided via symbol table. - (evax_get_symtab): Use local symbol count when setting up table. - * evax-egsd.c (_bfd_evax_slurp_egsd): Print correct name when - debugging. - (_bfd_evax_write_egsd): Skip file name symbol. - * evax-emh.c (get_vms_time_string): Local function now. - (_bfd_evax_write_emh): Extract source filename and case_hack flags - from symbol table. - * evax_write_etir (_bfd_evax_write_etir): Pass all symbol names - through _bfd_evax_case_hack_symbol. - * evax-misc.c (hash_string, _bfd_evax_case_hack_symbol): New - functions. - (_bfd_evax_basename): Removed. - (_bfd_get_vms_time_string): Moved to evax-emh.c. - * evax.h (evax_private_data_struct): Remove filename. - (flag_hash_long_names, flag_show_after_trunc, - flag_no_hash_mixed_case, vms_name_mapping): New flags for - vms_case_hack. - -Wed Oct 2 12:02:02 1996 Ian Lance Taylor <ian@cygnus.com> - - * freebsd.h (N_GET_MAGIC_NET): Don't use ntohl. - (N_GETMID_NET, N_GETFLAG_NET): Likewise. - (NO_SWAP_MAGIC): Don't define. - (SWAP_MAGIC): Define. - - * cofflink.c (_bfd_coff_link_input_bfd): Don't crash if there is - no hash table entry for a global symbol. - -Tue Oct 1 16:14:22 1996 Joel Sherrill <joel@oarcorp.com> - - * config.bfd (mips*-*-rtems*): New target, like mips*-*-elf*. - -Tue Oct 1 12:31:39 1996 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (coff_link_add_symbols): Don't override a meaningful - symbol type with T_NULL. Warn if symbol type changes. Based on - patch from Philippe De Muyter <phdm@info.ucl.ac.be>. - - * elflink.h (elf_link_add_object_symbols): Only put a symbol from - a dynamic object in the dynamic symbol table if it is referenced - or defined by a regular object. - -Fri Sep 27 18:41:07 1996 Stu Grossman (grossman@critters.cygnus.com) - - * elf32-v850.c (bfd_elf32_v850_is_local_label): New function to - remove dwarf local labels. Shrinks binaries by a factor of 3! - -Mon Sep 23 13:33:00 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf32-ppc.c (ppc_elf_add_symbol_hook): Create the .sbss section - by hand, rather than by calling bfd_make_section. - -Mon Sep 23 09:23:41 1996 Doug Evans <dje@seba.cygnus.com> - - * reloc.c: Rename m32r relocs. - * bfd-in2.h, libbfd.h: Rebuilt. - * elf32-m32r.c: Update. - -Fri Sep 20 11:43:43 1996 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h (aout_link_input_section_ext): When doing a relocateable - link, adjust the symbol index of a base relative reloc. Don't - change the addend of a PC relative reloc if pcrel_offset is set. - * sunos.c (bfd_sunos_size_dynamic_sections): Don't do anything for - a relocateable link. - - * reloc.c (bfd_perform_relocation): Apply the relocation even if - it is zero, in case src_mask matters. - (bfd_install_relocation): Likewise. - -Thu Sep 19 11:03:06 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_add_symbols): Always initialize - keep_syms. - (_bfd_xcoff_bfd_final_link): Don't set target_index - to an uninitialized value. - -Tue Sep 17 14:18:31 1996 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_slurp_line_table): Warn about illegal symbol - indices, rather than crashing. - (coff_slurp_reloc_table): Likewise. Check whether the howto field - is NULL. - * coff-sh.c (sh_relocate_section): Check for an illegal symbol - index. - -Mon Sep 16 12:39:36 1996 Ian Lance Taylor <ian@cygnus.com> - - * coff-arm.c (aoutarm_std_reloc_howto): Change dst_mask for ARM26D - reloc to 0. - (coff_arm_adjust_symndx): New static function. - (coff_adjust_symndx): Define. - - * srec.c (srec_scan): Accept multiple symbols on a single line. - From Pascal Martin <pmartin@alsys.com>. - - * README: New file. - -Fri Sep 13 14:32:42 1996 Doug Evans <dje@canuck.cygnus.com> - - * aoutf1.h (MY_bfd_merge_private_bfd_data): Define. - (sunos_merge_private_bfd_data): New function. - -Fri Sep 13 15:50:57 1996 Ian Lance Taylor <ian@cygnus.com> - - * bfd.c (bfd_copy_private_bfd_data): Switch on output BFD rather - than input BFD. - (bfd_merge_private_bfd_data): Likewise. - * section.c (bfd_copy_private_section_data): Likewise. - * syms.c (bfd_copy_private_symbol_data): Likewise. - * bfd-in2.h: Rebuild. - * aout-target.h (MY_bfd_copy_private_section_data): Check that - both BFD's are the right flavour. - * ecoff.c (_bfd_ecoff_bfd_copy_private_bfd_data): Likewise. - * elf.c (_bfd_elf_copy_private_symbol_data): Likewise. - * elf32-mips.c (_bfd_mips_elf_copy_private_bfd_data): Likewise. - (_bfd_mips_elf_merge_private_bfd_data): Likewise. - * elf32-ppc.c (ppc_elf_copy_private_bfd_data): Likewise. - (ppc_elf_merge_private_bfd_data): Likewise. - * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Likewise. - * peicode.h (pe_bfd_copy_private_section_data): Likewise. - - * elf32-hppa.c (elf_hppa_howto_table): Fill in some fields for - R_PARISC_DIR32, so that _bfd_stab_section_find_nearest_line passes - its sanity check. - -Thu Sep 12 11:45:57 1996 Doug Evans <dje@seba.cygnus.com> - - * reloc.c: Add m32r relocs. - * bfd-in2.h, libbfd.h: Rebuilt. - * cpu-m32r.c,elf32-m32r.c: New files. - -Thu Sep 12 11:10:05 1996 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c (ieee_vec): Set symbol_leading_char field to '_'. - -Wed Sep 11 11:57:56 1996 Ian Lance Taylor <ian@cygnus.com> - - * tekhex.c (first_phase): Change type parameter from char to int. - (out): Likewise. - (pass_over): Change func to expect int, not char. - - * elf.c (assign_file_positions_for_segments): Test SEC_ALLOC - rather than SEC_LOAD when aligning the file offset for the first - section in a segment. - -Tue Sep 10 16:18:30 1996 Fred Fish <fnf@cygnus.com> - - * syms.c (coff_section_type): Make arg const. - * irix-core.c (irix_core_core_file_p): Remove extraneous extra arg - to make_bfd_asection(). - * elf-bfd.h (bfd_section_from_phdr): Add prototype. - * elfcode.h (bfd_section_from_phdr): Remove prototype. - (_bfd_elf_stringtab_init): Remove prototype. - - * netbsd-core.c (swap_abort): Add prototype. - * aix386-core.c (swap_abort): Ditto & make static - * hpux-core.c (swap_abort): Ditto & make static. - * irix-core.c (swap_abort): Ditto & make static. - * ptrace-core.c (swap_abort): Ditto & make static. - * trad-core.c (swap_abort): Ditto & make static. - * coffswap.h (coff_swap_reloc_in): Ditto. - (coff_swap_reloc_out): Ditto. - (coff_swap_filehdr_in): Ditto. - (coff_swap_filehdr_out): Ditto. - (coff_swap_sym_in): Ditto. - (coff_swap_sym_out): Ditto. - (coff_swap_aux_in): Ditto. - (coff_swap_aux_out): Ditto. - (coff_swap_lineno_in): Ditto. - (coff_swap_lineno_out): Ditto. - (coff_swap_aouthdr_in): Ditto. - (coff_swap_aouthdr_out): Ditto. - (coff_swap_scnhdr_in): Ditto. - (coff_swap_scnhdr_out): Ditto. - * ihex.c (ihex_sizeof_headers): Ditto. - * tekhex.c (getsym): Ditto. - (find_chunk): Ditto & make static. - (insert_byte): Ditto. - (first_phase): Ditto. - (pass_over): Ditto. - (tekhex_get_symtab): Ditto & make static. - (tekhex_get_symtab_upper_bound): Ditto & make static. - (tekhex_mkobject): Ditto. - (tekhex_object_p): Ditto. - (move_section_contents): Ditto. - (tekhex_get_section_contents): Ditto. - (tekhex_set_arch_mach): Ditto & make static. - (tekhex_set_section_contents): Ditto. - (writevalue): Ditto. - (writesym): Ditto. - (out): Ditto. - (tekhex_write_object_contents): Ditto. - (tekhex_sizeof_headers): Ditto. - (tekhex_make_empty_symbol): Ditto. - (tekhex_get_symbol_info): Ditto. - (tekhex_print_symbol): Ditto. - * irix-core.c (make_bfd_asection): Ditto. - (irix_core_core_file_p): Ditto. - (irix_core_core_file_failing_command): Ditto. - (irix_core_core_file_failing_signal): Ditto. - (irix_core_core_file_matches_executable_p): Ditto. - (irix_core_make_empty_symbol): Ditto. - * coff-mips.c (mips_bfd_reloc_type_lookup): Ditto. - * srec.c (srec_new_symbol): Ditto. - (srec_get_section_contents): Ditto. - (srec_set_arch_mach): Ditto. - (srec_set_section_contents): Ditto. - (internal_srec_write_object_contents): Ditto. - (srec_write_object_contents): Ditto. - (symbolsrec_write_object_contents): Ditto. - (srec_sizeof_headers): Ditto. - (srec_make_empty_symbol): Ditto. - (srec_get_symtab_upper_bound): Ditto. - (srec_get_symtab): Ditto. - (srec_print_symbol): Ditto and make static. - * elf.c (elf_read): Ditto - (assign_section_numbers): Ditto. - (elf_fake_sections): Ditto. - (sym_is_global): Ditto. - (elf_map_symbols): Ditto. - (get_program_header_size): Ditto. - * coffgen.c (make_a_section_from_file): Ditto. - (coff_real_object_p): Ditto. - (fixup_symbol_value): Ditto. - (build_debug_section): Ditto. - (copy_name): Ditto. - * syms.c (coff_section_type): Ditto. - -Mon Sep 9 22:36:01 1996 Jeffrey A Law (law@cygnus.com) - - * bfd-in2.h: Rebuilt after m32r changes. - -Mon Sep 9 12:31:22 1996 Doug Evans <dje@canuck.cygnus.com> - - * config.bfd,configure.in,configure: Add m32r support. - * Makefile.in,archures.c,elf.c,targets.c: Likewise. - * config.bfd: Keep target list alphabetically sorted. - -Mon Sep 9 11:48:41 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-v850.c (bfd_elf32_v850_reloc, case R_V850_HI16): Don't forget - to add in the constant part found in the instruction itself. - (case R_V850_HI16_S): Likewise. - -Fri Sep 6 17:04:39 1996 Martin M. Hunt <hunt@pizza.cygnus.com> - - * elf32-d10v.c (elf_d10v_howto_table): Modify the size of R_D10V_16 - and R_D10V_18 to be 1 (word). - -Thu Sep 5 15:23:08 1996 Ian Lance Taylor <ian@cygnus.com> - - * stabs.c (_bfd_link_section_stabs): If the output_section field - of either section is bfd_abs_section, then the linker is - discarding the section and we should not optimize it. - -Tue Sep 3 12:16:20 1996 Doug Evans <dje@canuck.cygnus.com> - - * Makefile.in (aout-sparcle.o): New target. - * aoutf1.h (TARGET_IS_BIG_ENDIAN_P): Don't define if little endian. - * config.bfd (sparclet-*-aout*): Add case. - * configure.in (sparcle_aout_vec): Add case. - * configure: Regenerated. - * targets.c (sparcle_aout_vec): Declare. - (bfd_target_vector): Add sparcle_aout_vec. - * aout-sparcle.c: New file. - -Tue Sep 3 00:57:02 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-v850.c (bfd_elf32_v850_reloc): Fix handling of - low order sign bit propogation for R_V850_HI16_S. - - * elf32-v850.c (bfd_elf32_v850_reloc): New function for - handling V850 specific relocs. - (elf_v850_howto_table): Use the new function for some - relocations. Twiddle masks & shifts for some relocs. - Set partial_inplace where needed. - -Mon Sep 2 12:12:34 1996 Ian Lance Taylor <ian@cygnus.com> - - * cpu-mips.c: Add an explicit mips:3000 entry, and change the - default architecture to a machine number of 0. - * elf32-mips.c (_bfd_mips_elf_object_p): Set the machine number - for E_MIPS_ARCH_1. - (_bfd_mips_elf_merge_private_bfd_data): If the machine number of - the output BFD is the default, set it from the first input BFD. - -Sun Sep 1 18:38:01 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-v850.c (elf_v850_howto_table): All the 16bit relocs - insert at bitpos zero. The HI16 relocs are shifted right - by 16 bits. Fix src_mask for all relocs. - (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Define. The V850 is - little endian! - (TARGET_BIG_SYM, TARGET_BIG_NAME): Remove. The V850 is little - endian! - -Sun Sep 1 15:41:08 1996 Ian Lance Taylor <ian@cygnus.com> - - * rs6000-core.c (rs6000coff_core_file_matches_executable_p): - Rewrite to use BFD file read routines and to avoid using a fixed - length for the file name. - -Sat Aug 31 10:22:25 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-v850.c (enum reloc_type): Add R_V850_{32,16,8}. - (elf_v850_howto_table): Add support for R_V850_{32,16,8}. - (v850_reloc_map): Add translation from BFD_RELOC_{32,16,8} - to R_V850_{32,16,8}. - -Fri Aug 30 18:06:04 1996 J.T. Conklin <jtc@hippo.cygnus.com> - - * elf32-v850.c (reloc_type): Add R_V850_HI16_S. - (elf_v850_howto_table): Add info for HI16_S reloc. - (v850_reloc_map): Add HI_16_S reloc. - * reloc.c: Define BFD_RELOC_V850_* relocs. - -Fri Aug 30 11:49:19 1996 Ian Lance Taylor <ian@cygnus.com> - - Add SH ELF support. - * elf32-sh.c: New file. - * elf.c (prep_headers): Handle bfd_arch_sh. - * elfcode.h (write_relocs): Handle absolute symbol. - * elf-bfd.h (_bfd_elf32_link_read_relocs): Declare. - (_bfd_elf64_link_read_relocs): Declare. - * elflink.h (NAME(_bfd_elf,link_read_relocs)): Rename from - elf_link_read_relocs. Make globally visible. Change all - callers. - (elf_link_input_bfd): Get external symbols from cache in - symtab_hdr->contents. Get contents from cache in - elf_section_data. - * elfxx-target.h (bfD_elfNN_bfd_relax_section): Only define if not - already defined. - * reloc.c: Define BFD_RELOC_SH_* relocs. - * libbfd-in.h (_bfd_sh_align_load_span): Declare. - * coff-sh.c (sh_insns_conflict): Fix a return value. - (_bfd_sh_align_load_span): New globally visible function, broken - out of sh_align_load. - (sh_align_load): Call _bfd_sh_align_load_span. - (sh_swap_insns): Change relocs parameter to PTR. - * bfd-in2.h, libbfd.h: Rebuild. - * targets.c (bfd_elf32_sh_vec): Declare. - (bfd_elf32_shl_vec): Declare. - * config.bfd (sh-*-elf*): New target. - * configure.in (bfd_elf32_sh_vec): New target vector. - (bfd_elf32_shl_vec): New target vector. - * configure: Rebuild. - * Makefile.in: Rebuild dependencies. - (BFD32_BACKENDS): Add elf32-sh.o. - (BFD32_BACKENDS_CFILES): Add elf32-sh.c. - - * elf.c (map_sections_to_segments): Check that LMA does not skip a - page before checking D_PAGED. - - * ihex.c (ihex_scan): Removed unnecessary extbase variable. - (ihex_write_object_contents): Remove extbase; always use segbase - instead. - -Thu Aug 29 16:52:17 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * configure.in (i[345]86-*-*): Recognize i686 for pentium pro. - * configure.host (i[345]86-*-*): Ditto. - * config.bfd (i[345]86-*-*): Ditto. - * configure: Regenerate. - - * config.bfd (i[3456]86-*-dgux*): Recognize as a synonym for x86 - elf. - -Tue Aug 27 09:18:18 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-hppa.c (hppa_elf_gen_reloc_type): Add new argument. - * elf32-hppa.h (hppa_elf_gen_reloc_type): Update prototype. - * som.c (hppa_som_gen_reloc_type): Add new argument. If - we encounter an R_DATA_ONE_SYMBOL reloc against a symbol that - will have an ST_CODE type, change the symbol's type to ST_DATA. - * som.c (hppa_som_gen_reloc_type): Update prototype. - -Tue Aug 27 00:12:22 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (mips_elf_check_relocs): Set dynobj if needed for - R_MIPS_32 and R_MIPS_REL32. Set sgot and g as soon as possible. - (mips_elf_size_dynamic_sections): Don't require .got to exist. - (mips_elf_finish_dynamic_sections): Likewise. - -Thu Aug 22 10:54:38 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.host (HLDENV): New variable to set. Set it for - *-*-sysv4*, since those linkers may not support -R but they always - support LD_RUN_PATH. - - * libieee.h (NSECTIONS): Don't define. - (ieee_data_struct): Change section_table to asection **. Add - section_table_size. - * ieee.c (get_section_entry): If the table isn't big enough, make - it bigger. - (ieee_slurp_sections): Remove assertion about number of sections. - (ieee_object_p): Adjust initialization of ieee to match changes to - the structure. - - * xcofflink.c (xcoff_mark): Don't copy relocs for undefined - symbols merely because we are generating a shared library. - (xcoff_build_ldsyms): Don't set up global linkage code for an - undefined symbol merely because we are generating a shared - library. - -Tue Aug 20 15:06:05 1996 J.T. Conklin <jtc@hippo.cygnus.com> - - * Makefile.in (ALL_MACHINES): Add cpu-v850.o. - (BFD32_BACKENDS) Add elf32-v850.o. - * archures.c: Add bfd_v850_arch. - * bfd-in2.h: Add bfd_v850_arch. - * config.bfd (v850-*-*): New target. - * configure: (bfd_elf32_v850_vec) New vector. - * configure.in: (bfd_elf32_v850_vec) New vector. - * cpu-v850.c: New file. - * elf.c (prep_headers): Added case bfd_arch_v850. - * elf32-v850.c: New file. - * targets.c (bfd_elf32_v850_vec): New vector. - -Fri Aug 16 16:25:35 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_add_dynamic_symbols): Create and define - a function code symbol for an XMC_XO symbol. - -Thu Aug 15 12:33:29 1996 Stan Shebs <shebs@andros.cygnus.com> - - * mpw-config.in: Update editing of autoconf vars to reflect - Jul 18 configure.in change. - * mpw-make.sed: Update editing of include pathnames to be - more general, add @DASH_C_FLAG@ to explicit compile rule edit. - -Thu Aug 15 10:35:13 1996 Richard Henderson <rth@tamu.edu> - - * elf64-alpha.c (elf64_alpha_output_extsym): The section from - which to offset to get the .plt entry address is ".plt". - -Thu Aug 15 16:40:30 1996 James G. Smith <jsmith@cygnus.co.uk> - - * reloc.c: (BFD_RELOC_ARM_THUMB_ADD, BFD_RELOC_ARM_THUMB_IMM, - BFD_RELOC_ARM_THUMB_SHIFT, BFD_RELOC_ARM_THUMB_OFFSET): - Added, for internal use by the ARM gas. - * libbfd.h: Rebuilt - * bfd-in2.h: Rebuilt - -Wed Aug 14 17:02:09 1996 Richard Henderson <rth@tamu.edu> - - * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Correct typo - in section dynidx start. - -Tue Aug 13 14:35:38 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (_bfd_elf_make_section_from_shdr): Treat sections whose - name begins with .gnu.linkonce as SEC_LINK_ONCE. This is an - optimization for g++. - -Tue Aug 13 17:04:40 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_merge_private_bfd_data): If one module has - the -mrelocatable-lib bit set and the other doesn't, clear the - -mrelocatable-lib bit in the header. - -Sat Aug 10 22:59:17 1996 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Do not resolve a common - symbol against a STT_FUNC symbol in a shared library. - -Fri Aug 9 12:44:57 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_add_dynamic_symbols): If a descriptor - symbol is found, automatically define the corresponding function - code. - - * cofflink.c (coff_link_add_symbols): Only set (*sym_hash)->numaux - if sym.n_numaux is not zero. - (_bfd_coff_link_input_bfd): Permit the symbol and the hash table - entry to disagree about the number of aux entries if the symbol - has zero. - - * elf32-mips.c (mips_elf_check_relocs): Create the .rel.dyn - section if it might be needed, not just if info->shared. - (mips_elf_adjust_dynamic_symbol): Make room for a null element at - the start of .rel.dyn if we are going to use it. - (mips_elf_finish_dynamic_sections): Only clear the first element - of .rel.dyn if the size is greater than zero. - -Thu Aug 8 16:24:55 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_input_bfd): If we already called the - undefined_symbol callback for a symbol, then don't issue any more - warnings about loader relocs. - (_bfd_ppc_xcoff_relocate_section): Don't do any further processing - after calling the undefined_symbol callback. - - * xcofflink.c (XCOFF_MULTIPLY_DEFINED): Define. - (xcoff_link_add_symbols): Permit multiple definitions of a symbol - as the AIX linker seems to do. - -Thu Aug 8 12:21:56 1996 Klaus Kaempf <kkaempf@progis.de> - - * evax-alpha.c (evax_alpha_vec): Corrected flags, cleanup. - (evax_initialize): Remove evax_reloc_table. - (evax_close_and_cleanup): Ditto. - (reloc_nil): Ditto. - (alpha_howto_table): Remove ALPHA_R_SWREL32 and ALPHA_R_SWREL64 - entries. - (evax_bfd_reloc_type_lookup): Ditto. - * evax-egsd.c (_bfd_evax_slurp_egsd): Add a few casts; set - cooked_size == raw_size. - * evax-emh.c (_bfd_evax_register_filename): Remove. - * evax-etir.c (etir_stc): Allow ETIR_S_C_STC_xx commands. - * evax-misc.c (add_new_contents): Malloc section at full size. - (_bfd_save_evax_section): Memcpy section contents directly. - * evax.h (ALPHA_R_SWREL32, ALPHA_R_SWREL64): Remove. - (evax_reloc_table): Remove. - - * hosts/alphavms.h (O_ACCMODE): Define if needed. - - * makefile.vms: Add better support for DEC C compilation - Add evax.h dependencies - - * reloc.c (bfd_get_reloc_size): Add case for 16 byte reloc. - (BFD_RELOC_SWREL32,BFD_RELOC_SWREL64): Remove. - (BFD_RELOC_ALPHA_BASEREG): Remove. - * bfd-in2.h, libbfd.h: Rebuild. - -Thu Aug 8 08:17:32 1996 Stu Grossman (grossman@critters.cygnus.com) - - * archive.c (bsd_write_armap): Ifdef around calls to getuid and - getgid if _WIN32 is defined. - * opncls.c (bfd_fdopenr): Remove unnecessary WINGDB ifdef. - -Wed Aug 7 23:19:00 1996 Stu Grossman (grossman@critters.cygnus.com) - - * aoutx.h bfd-in.h bfd-in2.h opncls.c riscix.c som.c targets.c: - Change NO_FLAGS to BFD_NO_FLAGS to avoid conflict with an HPUX - include file. - * libbfd.c: Create dummy getpagesize() macro if HAVE_GETPAGESIZE - isn't defined. - -Wed Aug 7 14:11:44 1996 Philippe De Muyter <phdm@info.ucl.ac.be> - - * configure.in: Call BFD_NEEDED_DECLARATION on strstr and - realloc. - * acconfig.h (NEED_DECLARATION_STRSTR): New macro. - (NEED_DECLARATION_REALLOC): New macro. - * configure, config.in: Rebuild. - * sysdep.h (strstr): Declare if NEED_DECLARATION_STRSTR. - (realloc): Declare if NEED_DECLARATION_REALLOC. - - * aclocal.m4 (BFD_NEED_DECLARATION): Include <string.h> or - <strings.h> if they exist. - - * ieee.c (ieee_set_section_contents): Cast bfd_alloc return. - -Wed Aug 7 12:12:03 1996 Ian Lance Taylor <ian@cygnus.com> - - * cpu-i386.c (i8086_arch): Architecture info for the i8086. - - Based on patches from Eric Valette <valette@crf.canon.fr>: - * elf32-i386.c (enum reloc_type): Add FIRST_INVALID_RELOC, - LAST_INVALID_RELOC, R_386_16, R_386_PC16, R_386_8, R_386_PC8. - (elf_howto_table): Add entries for new relocs. - (elf_i386_reloc_type_lookup): Handle new relocs. - (elf_i386_info_to_howto): Just call abort. - (elf_i386_info_to_howto_rel): Check that the reloc type is valid. - (elf_i386_relocate_section): Likewise. - -Tue Aug 6 12:54:56 1996 Martin M. Hunt <hunt@pizza.cygnus.com> - - * elf32-d10v.c (elf_d10v_howto_table): Added R_D10V_32. - -Mon Aug 5 13:42:41 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (_bfd_elf_make_section_from_shdr): For a loadable section, - only get the LMA from the phdr if they are in the same part of the - file. - - * elf.c (map_sections_to_segments): Rewrite tests for starting a - new segment to make them more comprehensible. If the relationship - between the LMA and the VMA changed, start a new segment. Don't - check dynsec when deciding whether to start a new segment for a - writeable section; -N will now handle this. - -Thu Aug 1 22:43:08 1996 Jeffrey A Law (law@cygnus.com) - - * libhppa.h: Remove "esel" changes. Not the right approach. - * som.c: Corresponding changes. - (som_bfd_derive_misc_symbol_info): Use ST_DATA for symbols - which don't have a SOM symbol type associated with them. - Reverses a 1994 change. - -Wed Jul 31 15:50:55 1996 Ian Lance Taylor <ian@cygnus.com> - - Make ld -N more reasonable for ELF: - * elf.c (map_sections_to_segments): If D_PAGED is not set, set - phdr_in_section to false, and always use a single load segment. - (elf_sort_sections): Sort sections by LMA after VMA. - (assign_file_positions_for_segments): If D_PAGED is not set, don't - align to maxpagesize. - (assign_file_positions_except_relocs): Likewise. - * elfcode.h (elf_object_p): If a section is loaded but not page - aligned, clear D_PAGED. - -Wed Jul 31 15:00:12 1996 James G. Smith <jsmith@cygnus.co.uk> - - * reloc.c: (BFD_RELOC_ARM_OFFSETIMM8, BFD_RELOC_ARM_HWLITERAL): - Added, for internal use by the ARM gas. - * libbfd.h: Rebuilt - * bfd-in2.h: Rebuilt - -Tue Jul 30 14:14:57 1996 Jeffrey A Law (law@cygnus.com) - - * libhppa.h (R_HPPA_ESEL): New field selector. - (e_esel): Similarly. - * som.c (hppa_som_gen_reloc_type): If we encounter an e_esel, - then generate R_COMP2 (PUSH_SYM), R_DATA_EXPR fixup stream. - (som_write_fixups): Handle R_DATA_EXPR just like R_CODE_EXPR. - -Tue Jul 30 13:31:27 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Do the regular - archive search before looking for stripped dynamic objects. - -Fri Jul 26 17:51:39 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_build_ldsyms): Make exporting an undefined - symbol a warning rather than an error. - -Wed Jul 24 12:02:53 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (assign_file_positions_for_segments): Track the virtual - memory position separately from the file position, and use it to - compute the alignment adjustment. - -Tue Jul 23 10:43:31 1996 Martin M. Hunt <hunt@pizza.cygnus.com> - - * elf32-d10v.c (elf_d10v_howto_table): Changed all relocs to "long" - and fixed mask on R_D10V_10_PCREL_L. - -Mon Jul 22 15:30:30 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf64-mips.c: Include "aout/ar.h". - (mips_elf64_slurp_armap): New static function. - (mips_elf64_write_armap): New static function. - (bfd_elf64_archive_*): Define. - * elfxx-target.h (bfd_elfNN_archive_p): Define if not defined. - Use instead of bfd_generic_archive_p. - (bfd_elfNN_write_archive_contents): Define if not defined. Use - instead of _bfd_write_archive_contents. - (bfd_elfNN_mkdarchive): Define if not defined. Use instead of - _bfd_generic_mkarchive. - (TARGET_BIG_SYM): If bfd_elfNN_archive_functions is defined, use - bfd_elfNN_archive in BFD_JUMP_TABLE_ARCHIVE rather than - _bfd_archive_coff. - (TARGET_LITTLE_SYM): Likewise. - * archive.c (bfd_slurp_armap): Check for and reject an archive map - name of /SYM64/. - * Makefile.in: Rebuild dependencies. - - * elf32-mips.c (_bfd_mips_elf_final_write_processing): Handle - SHT_MIPS_LIBLIST, SHT_MIPS_CONTENT, SHT_MIPS_SYMBOL_LIB, and - SHT_MIPS_EVENTS sections. - (_bfd_mips_elf_section_from_shdr): Handle SHT_MIPS_IFACE, - SHT_MIPS_CONTENT, SHT_MIPS_SYMBOL_LIB, and SHT_MIPS_EVENTS - sections. - (_bfd_mips_elf_fake_sections): Likewise. - - * libecoff.h (ecoff_data_type): Add rdata_in_text field. - * ecoff.c (ecoff_compute_section_file_positions): Copy - rdata_in_text from backend info to tdata. Clear it if any data - section comes before .rdata. - (_bfd_ecoff_write_object_contents): Use rdata_in_text field in - tdata rather than backend info. - -Fri Jul 19 18:15:51 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Fix test for whether a compiler has a 64 bit - type. From Jim Wilson <wilson@cygnus.com>. - -Thu Jul 18 15:39:10 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.host (mips-sgi-irix6*): New host. - - * configure.in: Set and substitute VERSION, BFD_HOST_64BIT_LONG - (replacing HOST_64BITLONG), BFD_HOST_64_BIT_DEFINED, - BFD_HOST_64_BIT, and BFD_HOST_U_64_BIT. Add bfd-in2.h:bfd-in2.h - to AC_OUTPUT call. - * configure: Rebuild. - * bfd-in.h (BFD_ARCH_SIZE): Define as @wordsize@, not @WORDSIZE@. - (BFD_HOST_64_BIT): Define conditionally. - (BFD_HOST_U_64_BIT): Define when BFD_HOST_64_BIT is defined. - (bfd_vma): Typedef as BFD_HOST_U_64_BIT. - (symvalue, bfd_size_type): Likewise. - * bfd-in2.h: Rebuild. - * Makefile.in (do_clean): Remove bfd-tmp.h. - (do_distclean): Remove bfd-in3.h. - (stmp-bfd.h): Just do copy-if-change bfd-in3.h bfd.h. - (bfd-in3.h): New target. - - * config.bfd (sparc-*-sysv4*): Don't build sunos_big_vec. From - Andrew Gierth <ANDREWG@microlise.co.uk>. - - * configure.host: Set INSTALL_SHLIB. - * configure.in: Call AC_SUBST (INSTALL_SHLIB). - * configure: Rebuild. - * Makefile.in (install): Use @INSTALL_SHLIB@. - - * config.bfd (mips*-*-irix6*): New target. - * configure.host: Handle Irix 6 shared library like Irix 5. - - * xcofflink.c (xcoff_link_add_symbols): Don't check an XMC_TD - symbol for a magic name. - (xcoff_link_input_bfd): Don't change the reloc symbol for an - XMC_TD symbol. - (_bfd_ppc_xcoff_relocate_section): Don't get the TOC offset for an - XMC_TD symbol. - -Thu Jul 18 11:36:31 1996 Stan Shebs <shebs@andros.cygnus.com> - - * mpw-config.in: Add ELF support to mips config, create the - elf32-target.h file in the object dir. - * mpw-make.sed: Edit elfXX-target.h refs at beginnings of lines. - -Wed Jul 17 18:02:32 1996 Kim Knuttila <krk@cygnus.com> - - * coff-ppc.c: Redid debug scheme - numerous fprintf's gone. - Also removed most abort calls, in favor of using bfd reporting. - -Wed Jul 17 14:51:52 1996 Martin M. Hunt <hunt@pizza.cygnus.com> - - * Makefile.in (ALL_MACHINES): Add cpu-d10v.o. - (BFD32_BACKENDS) Add elf32-d10v.o. - * archures.c: Add bfd_d10v_arch. - * bfd-in2.h: Add bfd_d10v_arch. - * config.bfd (d10v-*-*): New target. - * configure: (bfd_elf32_d10v_vec) New vector. - * configure.in: (bfd_elf32_d10v_vec) New vector. - * cpu-d10v.c: New file. - * elf.c (prep_headers): Added case bfd_arch_d10v. - * elf32-d10v.c: New file. - * libbfd.h: Rebuild. - * reloc.c (BFD_RELOC_D10V_10_PCREL_R, BFD_RELOC_D10V_10_PCREL_L, - BFD_RELOC_D10V_18, BFD_RELOC_D10V_18_PCREL): Define. - * targets.c (bfd_elf32_d10v_vec): New vector. - -Wed Jul 17 10:58:55 1996 Kim Knuttila <krk@cygnus.com> - - * coff-ppc.c (coff_ppc_relocate_section): Removed bogus fprintf - -Tue Jul 16 23:49:02 1996 Stu Grossman (grossman@critters.cygnus.com) - - * archures.c bfd-in2.h: Add bfd_mach_i386_i386 and - bfd_mach_i386_i8086 machine types. - -Wed Jul 10 12:42:56 1996 Ian Lance Taylor <ian@cygnus.com> - - * ecoff.c (_bfd_ecoff_new_section_hook): Set SEC_CODE for _INIT - and _FINI sections. - -Wed Jul 10 11:18:21 1996 Richard Henderson <rth@tamu.edu> - - * coffcode.h (coff_set_section_contents): A/UX does not require - special handling of the _LIB section. - -Tue Jul 9 15:52:20 1996 Jeffrey A Law (law@cygnus.com) - - * coff-h8300.c (h8300_reloc16_extra_cases): Use the correct - value for R_RELBYTE. - - * reloc16.c (bfd_coff_reloc16_relax_section): Only "shrinks" - array if one was allocated. - -Tue Jul 9 12:21:54 1996 Ian Lance Taylor <ian@cygnus.com> - - From Kazumoto Kojima <kkojima@kk.info.kanagawa-u.ac.jp>: - * elf32-mips.c (struct mips_elf_link_hash_table): Add new fields - use_rld_obj_head and rld_value. - (mips_elf_link_hash_table_create): Initialize new fields. - (mips_elf_add_symbol_hook): Mark __rld_obj_head symbol as - dynamic. - (mips_elf_create_dynamic_sections): Create .rld_map section. If - __rld_obj_head symbol not seen, create an __rld_map symbol. - (mips_elf_size_dynamic_sections): Make space in .rld_map section. - Create a DT_MIPS_RLD_MAP entry rather than a DT_DEBUG entry. - (mips_elf_finish_dynamic_symbol): Save value of __rld_map or - __rld_obj_head symbol. - (mips_elf_finish_dynamic_sections): Handle DT_MIPS_RLD_MAP. - -Mon Jul 8 16:18:03 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (mips_reloc_map): Remove BFD_RELOC_32_PCREL entry. - - * elf32-ppc.c (ppc_elf_howto_raw): For R_PPC_ADDR16_HA, use - ppc_elf_addr16_ha_reloc. - (ppc_elf_addr16_ha_reloc): New static function. - - * coff-mips.c (struct mips_hi): Define. - (mips_refhi_list): New static variable. - (mips_refhi_addr, mips_refhi_addend): Remove. - (mips_refhi_reloc): Maintain a list of unmatched REFHI relocs. - (mips_reflo_reloc): Process mips_refhi_list. - (mips_relhi_list): New static variable. - (mips_relhi_addr, mips_relhi_addend): Remove. - (mips_relhi_reloc): Maintain a list of unmatched RELHI relocs. - (mips_rello_reloc): Process mips_relhi_list. - (mips_relocate_section): Permit an arbitrary number of REFHI or - RELHI relocs before the associated REFLO or RELLO reloc. - -Fri Jul 5 19:27:49 1996 Ian Lance Taylor <ian@cygnus.com> - - * aout-target.h (MY(callback)): Set reloc_count fields. - -Thu Jul 4 12:00:37 1996 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c (sunos_add_dynamic_symbols): Don't create dynamic - sections unless this is a SunOS link. - - * VERSION: Set to 2.7.1. - - * Released binutils 2.7. - -Wed Jul 3 14:59:47 1996 Ian Lance Taylor <ian@cygnus.com> - - * i386aout.c: Include "aout/aout64.h". - (i386aout_write_object_contents): New static function. - (MY_write_object_contents): Define. - - * netbsd.h (MY(write_object_contents)): Make sure that - adjust_sizes_and_vmas is called before fiddling with the magic - number. - -Tue Jul 2 23:30:39 1996 Ian Lance Taylor <ian@cygnus.com> - - * stabs.c (_bfd_link_section_stabs): Fix casts of psinfo. - -Sun Jun 30 13:34:33 1996 Ian Lance Taylor <ian@cygnus.com> - - * libbfd-in.h (itos, stoi): Don't define. - * libbfd.h: Rebuild. - * i386lynx.c (KEEPIT): Define as udata.i. - (NAME(lynx,swap_std_reloc_out)): Don't use stoi. - (NAME(lynx,swap_ext_reloc_out)): Likewise. - * riscix.c (riscix_swap_std_reloc_out): Use udata.i rather than - flags. Don't use stoi. - - * elf32-mips.c (ELF_MAGPAGESIZE): Change definition to 0x1000. - - * elf.c (map_sections_to_segments): Don't start a new segment for - a writable section if it's on the same page as the previous - segment. Reset the writable variable for a readonly section. - -Sat Jun 29 16:18:51 1996 Kim Knuttila <krk@cygnus.com> - - * peicode.h (coff_swap_aouthdr_in): Missing initializations of - first_thunk_address, thunk_size, and import_table_size. - * peicode.h: Improved some diagnostics regarding edata sections. - - * coff-ppc.c (coff_ppc_relocate_section): Earlier error check - on IMGLUE relocs. - (coff_ppc_relocate_section): Improved diagnostic for large TOCDEFN's. - (TARGET_LITTLE_SYM): Added missing D_PAGED. - -Fri Jun 28 13:48:45 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_check_ar_symbols): An undefined symbol - with XCOFF_DEF_DYNAMIC set is really defined. - (xcoff_link_check_dynamic_ar_symbols): Likewise. - (xcoff_link_add_symbols): Only create special sections if using an - XCOFF hash table. - - * reloc.c (bfd_perform_relocation): Handle xcoff-powermac like - aixcoff-rs6000. - (bfd_install_relocation): Likewise. - -Fri Jun 28 11:17:00 1996 Richard Henderson <rth@tamu.edu> - - * elf64-alpha.c (struct alpha_elf_link_hash_entry): Add flags - field. - (ALPHA_ELF_LINK_HASH_LU_ADDR): Define. - (ALPHA_ELF_LINK_HASH_LU_MEM): Define. - (ALPHA_ELF_LINK_HASH_LU_FUNC): Define. - (elf64_alpha_link_hash_newfunc): Initialize flags field. - (elf64_alpha_check_relocs): Record types of LITUSE entries that - are found for LITERAL relocs. - (elf64_alpha_adjust_dynamic_symbol): If a symbol has its address - taken, we cannot generate a .plt entry for the symbol. - -Thu Jun 27 11:24:29 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Add AC_ISC_POSIX, and check for setitimer and - sysconf functions (for gprof). - * configure, config.in: Rebuild. - -Wed Jun 26 16:29:02 1996 Ian Lance Taylor <ian@cygnus.com> - - * ecoff.c (_bfd_ecoff_archive_p): Check the first object file in - an archive if it has a map. If the object file has the wrong - xvec, reject it. - - * coff-alpha.c (alpha_adjust_reloc_in): Set the addend for a - BRADDR, SREL16, SREL32, or SREL64 reloc against an external - symbol. - (alpha_relocate_section): Likewise. - - * coffswap.h (coff_swap_reloc_out): Use RELSZ, not sizeof. - (coff_swap_filehdr_out): Use FILHSZ, not sizeof. - (coff_swap_sym_out): Use SYMESZ, not sizeof. - (coff_swap_aux_out): Use AUXESZ, not sizeof. - (coff_swap_lineno_out): Use LINESZ, not sizeof. - (coff_swap_aouthdr_out): Use AOUTSZ, not sizeof. - (coff_swap_scnhdr_out): Use SCNHSZ, not sizeof. - * peicode.h: Corresponding changes. - -Tue Jun 25 15:28:34 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elflink.h (elf_create_pointer_linker_section): Comment out code - dealing with making GOT pointers negative of the GOT symbol for - now. - -Tue Jun 25 11:41:24 1996 Richard Henderson <rth@tamu.edu> - - * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't - increment the .rela.plt size until after we're done creating the - .plt entry. - (elf64_alpha_finish_dynamic_symbol): Change .plt entry to load the - .rela.plt offset directly rather than calculating it. - -Mon Jun 24 17:15:10 1996 Jason Molenda (crash@godzilla.cygnus.co.jp) - - * Makefile.in, (bindir, libdir, datadir, mandir, infodir, includedir): - Use autoconf-set values. - * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir, - includedir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set - values. - (docdir): Deleted. - * configure.in (AC_PREREQ): autoconf v2.5 or higher. - * configure: Rebuilt. - -Mon Jun 24 22:50:35 1996 Jeffrey A Law (law@cygnus.com) - - * som.c (som_write_fixups): Fix typo in R_END_TRY for exception - handling code > 1k away. - -Mon Jun 24 18:41:06 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elflink.h (elf_create_pointer_linker_section): If DEBUG is - defined, output whenever the symbol is updated. - -Mon Jun 24 17:58:12 1996 Jouke Numan <jnuman@bazis.nl> - - * elf.c (elf_fake_sections): Don't set sh_addr of a non SEC_ALLOC - section to 0 if user_set_vma is set. - * elflink.h (elf_bfd_final_link): Likewise. - -Sun Jun 23 20:42:51 1996 Doug Evans <dje@canuck.cygnus.com> - - Partially undo patch of Jun 20. - * coffcode.h (coff_set_alignment_hook): Use COFF_IMAGE_WITH_PE. - (coff_compute_section_file_positions): Likewise. - (coff_write_object_contents): Likewise. Re-add deleted code, but - use #ifdef COFF_WITH_PE, not COFF_OBJ_WITH_PE. - * peicode.h (pe_bfd_copy_private_bfd_data): Re-add #ifdef. - -Fri Jun 21 17:38:15 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil> - - * config.bfd: Add support for *-*-rtems* configurations. - -Fri Jun 21 15:19:59 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (prep_headers): Add bfd_arch_alpha case. - -Fri Jun 21 12:35:27 1996 Richard Henderson <rth@tamu.edu> - - * elf64-alpha.c: New file. - * config.bfd (alpha-*-linuxecoff*): New target. - (alpha-*-linux*, alpha-*-elf*): New targets. - * configure.in (bfd_elf64_alpha_vec): New vector. - * configure: Rebuild. - * targets.c (bfd_elf64_alpha_vec): Declare. - (bfd_target_vector): Add bfd_elf64_alpha_vec if BFD64. - * reloc.c (BFD_RELOC_ALPHA_GPDISP): Define. - * bfd-in2.h, libbfd.h: Rebuild. - * Makefile.in: Rebuild dependencies. - (BFD64_BACKENDS): Add elf64-alpha.o. - (BFD64_BACKENDS_CFILES): Add elf64-alpha.c. - -Thu Jun 20 18:14:25 1996 Ian Lance Taylor <ian@cygnus.com> - - * ecoff.c (ecoff_armap_hash): If hlog is 0, just return 0, rather - than relying on a right shift of 32. - -Thu Jun 20 11:00:57 1996 Doug Evans <dje@canuck.cygnus.com> - - * coffcode.h (coff_set_alignment_hook): Change COFF_IMAGE_WITH_PE - ifdef to COFF_WITH_PE. - (coff_compute_section_file_positions): Likewise. - (coff_write_object_contents): Likewise. Delete COFF_OBJ_WITH_PE. - * pe-{arm,i386,ppc}.c (COFF_OBJ_WITH_PE): Delete. - * peicode.h (pe_bfd_copy_private_bfd_data): Delete ifdef - COFF_IMAGE_WITH_PE, always include. - - * peicode.h (coff_swap_scnhdr_out): ".drectve" doesn't have trailing 0. - -Wed Jun 19 11:37:52 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (map_sections_to_segments): Fix up the test for -Ttext to - approximate the correct answer if SIZEOF_HEADERS was not used. - - * binary.c (binary_set_section_contents): Set section file - position based on LMA rather than VMA. - -Wed Jun 19 11:19:25 1996 Manfred Hollstein KS/EIC5 60/3/142 #40283 <manfred@lts.sel.alcatel.de> - - * linker.c (_bfd_generic_link_output_symbols): Don't output any - symbols if info->strip == strip_all. - -Tue Jun 18 15:17:36 1996 Jeffrey A. Law <law@rtl.cygnus.com> - - * coff-h8300.c: Remove #if 0 code. - (compatable): Don't allow mixing/matching of different architectures. - - * archures.c (bfd_mach_h8300s): Add. - * bfd-in2.h: Rebuilt. - * coff-h8300.c (funcvec_hash_newfunc): Handle H8/S too. - (BADMAG): Likewise. - (h8300_reloc16_estimate): Likewise. - (h8300_reloc16_extra_cases): Likewise. - (h8300_bfd_link_add_symbols): Likewise. - * coffcode.h (coff_set_arch_mach_hook): Likewise. - (coff_set_flags): Likewise. - * cpu-h8300.c (h8300_scan): Likewise. - Add H8/S to bfd_h8300_arch list. - -Tue Jun 18 14:42:58 1996 Klaus Kaempf <kkaempf@progis.de> - - Added support for Alpha OpenVMS: - * evax.h, evax-alpha.c, evax-egsd.c, evax-emh.c: New files. - * evax-etir.c, evax-misc.c, hosts/alphavms.h: New files. - * config.h-vms, makefile.vms: New files. - * config.bfd (alpha-*-*vms*): New target. - * configure.in (evax_alpha_vec): New target vector. - * configure: Rebuild. - * reloc.c (BFD_RELOC_SWREL32, BFD_RELOC_SWREL64): Define. - (BFD_RELOC_ALPHA_LINKAGE, BFD_RELOC_ALPHA_BASEREG): Define. - * targets.c (bfd_target_evax_flavour): Define. - (evax_alpha_vec): Declare. - (bfd_target_vector): Add ecoffalpha_little_vec and evax_alpha_vec - if BFD64 is defined. - * bfd-in2.h, libbfd.h: Rebuild. - * Makefile.in: Rebuild dependencies. - (BFD64_BACKENDS): Add evax-alpha.o, evax-egsd.o, evax-etir.o, - evax-emh.o, and evax-misc.o. - (BFD64_BACKENDS_CFILES): Add evax-alpha.c, evax-egsd.c, - evax-etir.c, evax-emh.c, and evax-misc.c. - (HFILES): Add evax.h. - -Tue Jun 18 13:54:18 1996 Ian Lance Taylor <ian@cygnus.com> - - * coff-h8300.c (h8300_reloc16_extra_cases): Make name a const - pointer. - (h8300_bfd_link_add_symbols): Likewise. - -Mon Jun 17 10:06:50 1996 Jeffrey A. Law <law@rtl.cygnus.com> - - * som.h (R_HPPA_BEGIN_TRY, R_HPPA_END_TRY): Define. - * som.c (som_write_fixups): Handle R_BEGIN_TRY and R_END_TRY. - -Mon Jun 17 12:49:11 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (mips_elf_relocate_section): Don't create a reloc - for R_MIPS_REL32 and R_MIPS_32 relocs if no dynamic sections were - created. - (mips_elf_check_relocs): Only create .rel.dyn for R_MIPS_REL32 and - R_MIPS_32 relocs if creating a shared library. - -Thu Jun 13 20:14:51 1996 Doug Evans <dje@canuck.cygnus.com> - - * peicode.h (add_data_entry): Use pei_section_data rather than - _cooked_size. Corresponds to May 13 change in coffcode.h. - -Thu Jun 13 10:23:40 1996 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (_bfd_coff_final_link): Handle long section names. - * coffcode.h (coff_write_object_contents): If there are long - section names, always set the f_symptr field, even if there are no - symbols. - * peicode.h (coff_swap_filehdr_in): Don't clear the f_symptr field - if there are no symbols. - - * coffgen.c (make_a_section_from_file): Check return value of - _bfd_coff_read_string_table. - (coff_real_object_p): Check return value of - make_a_section_from_file. - (_bfd_coff_read_string_table): Check that there are some symbols - before trying to read the string table size. - -Wed Jun 12 11:16:37 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_add_symbols): When considering whether - to replace a symbol in a dynamic object with a symbol from another - dynamic object, do the replacement if the existing symbol is - global linkage code. - - * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Check explicitly - for _ptrgl, and treat it as global linkage code. - - * aoutx.h (NAME(aout,find_nearest_line)): Notice if we find a - filename or N_SO symbol past the offset, and use it to indicate - that there is no line number or function when appropriate. - -Tue Jun 11 15:24:48 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR for a - common symbol defined by the linker. Don't export function code - even if export_defineds is set. - -Mon Jun 10 11:57:27 1996 Jeffrey A Law (law@cygnus.com) - - * coff-h8300.c (howto_table): Add new entries for R_BCC_INV - and R_JMP_DEL. - (rtype2howto): Handle R_BCC_INV and R_JMP_DEL. - (h8300_symbol_address_p): New function. - (h8300_reloc16_estimate): Eliminate jumps made unnecessary by - relaxing. - -Sun Jun 9 16:30:20 1996 Jeffrey A Law (law@cygnus.com) - - * coff-h8300.c (h8300_reloc16_estimate): Fix many minor spacing - problems. - (h8300_reloc16_estimate, cases R_JMP1, R_JMP2): Adjust "dot" - correctly for the two variants. Allow relaxing if the target - is 128 bytes away since after relaxation it'll be 126 bytes away. - (h8300_reloc16_estimate, case R_PCRWORD): Correctly adjust - "dot" and "value". Allow relaxing if the target is 128 bytes - away since after relaxation it'll be 126 bytes away. - * reloc16.c (bfd_coff_reloc16_relax_section): Keep relaxing - the given section until nothing changes. - -Thu Jun 6 15:24:45 1996 Richard Henderson <rth@tamu.edu> - - * ecoff.c (_bfd_ecoff_new_section_hook): Remove the _PDATA - alignment hack--we can get the lnnoptr info another way without - suddenly increasing the alignment requirements. Set the flags for - the _PDATA section. - (ecoff_compute_section_file_positions): Do so. - -Thu Jun 6 11:24:37 1996 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c (ieee_write_object_contents): Put a timestamp in the file - to keep the HP emulator database happy. - - * config.bfd: Recognize powerpc-*-linux* and powerpcle-*-linux*. - From Kevin Buettner <kev@primenet.com>. - -Wed Jun 5 15:16:04 1996 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h (translate_to_native_sym_flags): Don't try to print the - name of a NULL section. - -Tue Jun 4 18:53:58 1996 Ian Lance Taylor <ian@cygnus.com> - - * linker.c (_bfd_generic_link_add_one_symbol): If notice_all is - set, always call the notice callback. - - * VERSION: Increment for bfdlink.h change. - -Mon Jun 3 11:01:53 1996 Ian Lance Taylor <ian@cygnus.com> - - * coff-sh.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Set to 4. - (sh_relax_delete_bytes): Correct handling of differently sized - trailing alignment reloc. - - * bfd-in.h: Use #error if BFD_HOST_64_BIT can not be defined. - * bfd-in2.h: Rebuild. - * configure.in: Warn if there is no known 64 bit type. - * configure: Rebuild. - - * Makefile.in: Rebuild dependencies. - (BFD32_BACKENDS): Add ppcboot.o. - (BFD32_BACKENDS_CFILES): Add ppcboot.c. - - * elf32-mips.c (mips_elf_size_dynamic_sections): Initialize c. - From Per Fogelstrom <per.fogelstrom@mailbox200.swipnet.se>. - -Sat Jun 1 21:49:58 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf64-mips.c (bfd_mips_elf64_swap_reginfo_in) - (bfd_mips_elf64_swap_reginfo_out): Move from here... - * elf32-mips.c (bfd_mips_elf64_swap_reginfo_in) - (bfd_mips_elf64_swap_reginfo_out): ...to here. - -Fri May 31 13:51:28 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf64-mips.c: Improve reloc special_functions and handling of - SHT_MIPS_OPTIONS section. - * elf32-mips.c (_bfd_mips_elf_hi16_reloc): Rename from - mips_elf_hi16_reloc and make globally visible. - (_bfd_mips_elf_lo16_reloc): Rename from mips_elf_lo16_reloc and - make globally visible. - (_bfd_mips_elf_got16_reloc): Rename from mips_elf_got16_reloc and - make globally visible. - (_bfd_mips_elf_gprel16_reloc): Rename from mips_elf_gprel16_reloc - and make globally visible. - (gprel16_with_gp): Check howto->src_mask before using value in - insn. - (_bfd_mips_elf_gprel32_reloc): Rename from mips_elf_gprel32_reloc - and make globally visible. - (gprel32_with_gp): Check howto->src_mask before fetching value. - (bfd_mips_elf_swap_options_in): New function. - (bfd_mips_elf_swap_options_out): New function. - (_bfd_mips_elf_set_private_flags): Rename from - mips_elf_set_private_flags and make globally visible. - (_bfd_mips_elf_copy_private_bfd_data): Rename from - mips_elf_copy_private_bfd_data and make globally visible. - (_bfd_mips_elf_merge_private_bfd_data): Rename from - mips_elf_merge_private_bfd_data and make globally visible. - (_bfd_mips_elf_section_from_shdr): Accept .MIPS.options as a name - for a SHT_MIPS_OPTIONS section. - (mips_elf32_section_from_shdr): Handle SHT_MIPS_OPTIONS section. - (_bfd_mips_elf_fake_sections): Consider .MIPS.options to be the - name of a SHT_MIPS_OPTIONS section. - (_bfd_mips_elf_set_section_contents): New function. - (mips_elf32_section_processing): Set the GP value in a - SHT_MIPS_OPTIONS section. - (_bfd_mips_elf_find_nearest_line): Rename from - mips_elf_find_nearest_line and make globally visible. - (bfd_elf32_set_section_contents): Define. - * elf-bfd.h (_bfd_mips_elf_hi16_reloc): Declare. - (_bfd_mips_elf_lo16_reloc): Declare. - (_bfd_mips_elf_gprel16_reloc): Declare. - (_bfd_mips_elf_got16_reloc): Declare. - (_bfd_mips_elf_gprel32_reloc): Declare. - (_bfd_mips_elf_set_private_flags): Declare. - (_bfd_mips_elf_copy_private_bfd_data): Declare. - (_bfd_mips_elf_merge_private_bfd_data): Declare. - (_bfd_mips_elf_find_nearest_line): Declare. - (_bfd_mips_elf_set_section_contents): Declare. - - * elf32-hppa.c (elf32_hppa_info_to_howto): Rename from - elf_info_to_howto. - (elf_info_to_howto): Define. - * elf32-sparc.c (elf32_sparc_info_to_howto): Rename from - elf_info_to_howto. - (elf_info_to_howto): Define. - * elf64-sparc.c (sparc64_elf_info_to_howto): Rename from - elf_info_to_howto. - (elf_info_to_howto): Define. - - * coff-w65.c (h8300_reloc16_estimate): Rename R_MOVB[12] to - R_MOV16B[12], to match change in coff/internal.h. - -Thu May 30 12:38:49 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf64-mips.c: Extensive additions to provide better support for - writing files and for gas. - * elf32-mips.c (_bfd_mips_elf_object_p): New function, broken out - of mips_elf_object_p. - (mips_elf32_object_p): Rename from mips_elf_object_p; call - _bfd_mips_elf_object_p. - (_bfd_mips_elf_final_write_processing): Rename from - mips_elf_final_write_processing and make globally visible. - (_bfd_mips_elf_fake_sections): Rename from - mips_elf_fake_sections and make globally visible. - (_bfd_mips_elf_section_from_bfd_section): Rename from - mips_elf_section_from_bfd_section and make globally visible. - (_bfd_mips_elf_section_processing): New function, broken out of - mips_elf_section_processing. - (mips_elf32_section_processing): Rename from - mips_elf_section_processing; call - _bfd_mips_elf_section_processing. - (_bfd_mips_elf_symbol_processing): Rename from - mips_elf_symbol_processing and make globally visible. - (_bfd_mips_elf_read_ecoff_info): Rename from - mips_elf_read_ecoff_info and make globally visible. - (mips_elf32_ecoff_debug_swap): Rename from - mips_elf_ecoff_debug_swap. - * elf.c (_bfd_elf_symbol_from_bfd_symbol): Use asymbol rather than - struct symbol_cache_entry. - (_bfd_elf_validate_reloc): New function, moved in from - elfcode.h:validate_reloc. - * elfcode.h (validate_reloc): Remove; moved into elf.c and renamed - to _bfd_elf_validate_reloc. Change all callers. - * elf-bfd.h (bfd_section_from_shdr): Declare. - (_bfd_elf_symbol_from_bfd_symbol): Declare. - (_bfd_elf_validate_reloc): Declare. - (_bfd_mips_elf_object_p): Declare. - (_bfd_mips_elf_fake_sections): Declare. - (_bfd_mips_elf_section_from_bfd_section): Declare. - (_bfd_mips_elf_section_processing): Declare. - (_bfd_mips_elf_symbol_processing): Declare. - (_bfd_mips_elf_read_ecoff_info): Declare. - (_bfd_mips_elf_final_write_processing): Declare. - * elfxx-target.h (bfd_elfNN_get_reloc_upper_bound): Don't define - if already defined. - - * elf32-mips.c (mips_elf_object_p): Handle E_MIPS_ARCH_4. - (mips_elf_final_write_processing): Likewise. - -Wed May 29 16:15:29 1996 Ian Lance Taylor <ian@cygnus.com> - - 64-bit MIPS ELF ABI objdump support: - * elf64-mips.c: New file. - * Makefile.in: Rebuild dependencies. - (BFD64_BACKENDS): Add elf64-mips.o. - (BFD64_BACKENDS_CFILES): Add elf64-mips.c. - * config.bfd (mips*el-*-elf*) Add bfd_elf64_bigmips_vec and - bfd_elf64_littlemips_vec to targ_selvecs. - (mips*-*-elf*): Likewise. - * confingure.in: Add bfd_elf64_bigmips_vec and - bfd_elf64_littlemips_vec to vector switch. - * configure: Rebuild. - * elf32-mips.c (_bfd_mips_elf_section_from_shdr): New function, - broken out of mips_elf_section_from_shdr. - (mips_elf32_section_from_shdr): Rename from - mips_elf_section_from_shdr. Call new function. - (elf_backend_section_from_shdr): Update name of renamed function. - * elf-bfd.h (struct elf_size_info): Change second parameter of - write_out_phdrs to be const. Likewise for second parameter of - swap_symbol_out. - (struct bfd_elf_section_data): Add rel_hdr2 field. - (bfd_elf32_swap_symbol_in): Change second parameter to be const. - (bfd_elf32_swap_symbol_out): Likewise. - (bfd_elf32_swap_reloc_in): Likewise. - (bfd_elf32_swap_reloc_out): Likewise. - (bfd_elf32_swap_reloca_in): Likewise. - (bfd_elf32_swap_reloca_out): Likewise. - (bfd_elf32_swap_phdr_in): Likewise. - (bfd_elf32_swap_phdr_out): Likewise. - (bfd_elf32_swap_dyn_in): Likewise. - (bfd_elf32_swap_dyn_out): Likewise. - (bfd_elf32_slurp_symbol_table): Declare. - (bfd_elf32_write_shdrs_and_ehdr): Declare. - (bfd_elf32_write_out_phdrs): Declare. - (bfd_elf64_swap_symbol_in): Change second parameter to be const. - (bfd_elf64_swap_symbol_out): Likewise. - (bfd_elf64_swap_reloc_in): Likewise. - (bfd_elf64_swap_reloc_out): Likewise. - (bfd_elf64_swap_reloca_in): Likewise. - (bfd_elf64_swap_reloca_out): Likewise. - (bfd_elf64_swap_phdr_in): Likewise. - (bfd_elf64_swap_phdr_out): Likewise. - (bfd_elf64_swap_dyn_in): Likewise. - (bfd_elf64_swap_dyn_out): Likewise. - (bfd_elf64_slurp_symbol_table): Declare. - (bfd_elf64_write_shdrs_and_ehdr): Declare. - (bfd_elf64_write_out_phdrs): Declare. - (_bfd_mips_elf_section_from_shdr): Declare. - * elf.c (bfd_section_from_shdr): Remove assertion requiring - SHT_REL/SHT_RELA to match use_rela_p. If there is already a reloc - section for the section, add the new one to rel_hdr2. Increment - reloc_count rather than setting it. - * elfcode.h (elf_slurp_symbol_table): Define name as macro. - Remove static declaration. - (elf_write_shdrs_and_ehdr): Define name as macro. - (elf_write_out_phdrs): Likewise. - (elf_swap_ehdr_in, elf_swap_ehdr_out): Declare. - (elf_swap_shdr_in, elf_swap_shdr_out): Declare. - (elf_swap_symbol_in): Change second parameter to be const. - (elf_swap_symbol_out): Likewise. - (elf_swap_ehdr_in, elf_swap_ehdr_out): Likewise. - (elf_swap_shdr_in, elf_swap_shdr_out): Likewise. - (elf_swap_phdr_in, elf_swap_phdr_out): Likewise. - (elf_swap_reloc_in, elf_swap_reloc_out): Likewise. - (elf_swap_reloca_in, elf_swap_reloca_out): Likewise. - (elf_write_out_phdrs): Rename from write_out_phdrs. Change second - parameter to be const. Make non-static. - (elf_write_shdrs_and_ehdr): Rename from write_shdrs_and_ehdr. - Make non-static. - (elf_slurp_symbol_table): Make non-static. - (NAME(_bfd_elf,size_info)): Update names of renamed functions. - * elfxx-target.h (elf_info_to_howto): Define if not defined. - (elf_backend_size_info): Likewise. - (elfNN_bed): Use elf_backend_size_info. - * targets.c (bfd_elf64_bigmips_vec): Declare. - (bfd_elf64_littlemips_vec): Declare. - (bfd_target_vector): Add bfd_elf64_bigmips_vec and - bfd_elf64_littlemips_vec if BFD64 is defined. - - * libbfd.c (bfd_get_file_window): Add cast to fprintf argument. - -Tue May 28 11:42:08 1996 Ian Lance Taylor <ian@cygnus.com> - - * coff-sh.c (sh_relax_delete_bytes): Insert nop instructions, not - zeroes, in alignment holes. - - * configure: Rebuild with autoconf 2.10. - - * aoutx.h (NAME(aout,find_nearest_line)): Make room for the - potential leading underscore in the allocated buffer. - -Fri May 24 14:28:38 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_add_symbol_hook): Do not put small common - symbols into .sbss if this is a relocatable link. - -Thu May 23 12:26:24 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Warn about - undefined symbols when creating a shared library. - -Fri May 17 13:54:15 1996 Ian Lance Taylor <ian@cygnus.com> - - * coff-sh.c: Add a bunch of new code and static const arrays to - support aligning loads and stores on four byte memory boundaries. - Also: - (sh_coff_howtos): Add entries for R_SH_CODE, R_SH_DATA and - R_SH_LABEL. - (sh_relax_section): Look for R_SH_CODE relocs. If we find one, - call sh_align_loads. - (sh_relax_delete_bytes): Don't mark R_SH_CODE or R_SH_DATA relocs - as unused. - -Thu May 16 16:34:13 1996 Ian Lance Taylor <ian@cygnus.com> - - * cache.c (bfd_open_file): Unlink the file before opening it for - write. From Marty Leisner <leisner@sdsp.mc.xerox.com>. - - * opncls.c (bfd_fdopenr): Set opened_once. - -Tue May 14 12:35:32 1996 Ian Lance Taylor <ian@cygnus.com> - - * som.c (som_slurp_reloc_table): Clear external_relocs cache after - freeing it. - - * libbfd.c: Remove #ifdef FILE_OFFSET_IS_CHAR_INDEX, and compile - the code unconditionally. - -Mon May 13 19:51:37 1996 Ian Lance Taylor <ian@cygnus.com> - - * libcoff-in.h (struct pei_section_tdata): Define structure. - (pei_section_data): Define macro. - * libcoff.h: Rebuild. - * coffcode.h (coff_set_alignment_hook): If COFF_IMAGE_WITH_PE, - store s_paddr field in pei_section_data. - (coff_compute_section_file_positions): Use pei_section_data rather - than _cooked_size, and don't overwrite an existing value. - (coff_write_object_contents): If COFF_OBJ_WITH_PE, set s_paddr to - 0. If COFF_IMAGE_WITH_PE, set s_paddr to pei_section_data. - * peicode.h (coff_bfd_copy_private_section_data): Define if - COFF_IMAGE_WITH_PE. - (pe_bfd_copy_private_section_data): New static function if - COFF_IMAGE_WITH_PE. - -Wed May 8 16:10:38 1996 Ian Lance Taylor <ian@cygnus.com> - - * srec.c (srec_set_arch_mach): Write as a function rather than a - macro definition. - - * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): If an archive has - no map, just check each member in turn to see whether it is - required. - -Wed May 8 09:17:34 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * ppcboot.c (ppcboot_object_p): Check for type 0x41 in partition - table. Call BFD_ASSERT to validate header size, instead of - calling fatal. - (ppcboot_bfd_print_private_bfd_data): Put quotes around partition - name. - -Tue May 7 16:10:19 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * ppcboot.c: New target for looking at PPCbug boot records. - - * config{ure.in,.bfd}: Add support for ppcboot target. - * targets.c: Ditto. - * configure: Regenerate. - -Tue May 7 11:15:19 1996 Jeffrey A Law (law@cygnus.com) - - * coff-h8300.c (howto_table): Update names to match recent - changes to include/coff/internal.h. Fix minor errors in the - existing relocs. Add R_MOVL1 and R_MOVL2. - (rtype2howto): Similarly. - (h8300_reloc16_estimate): Rewrite to simplify, fix bugs in the - existing relaxing code and peform more relaxing. - (h8300_reloc16_extra_cases): Likewise. - -Mon May 6 18:24:09 1996 Jeffrey A Law (law@cygnus.com) - - * reloc16.c (bfd_coff_reloc16_get_value): Handle common - symbols correctly. - -Sat May 4 05:08:45 1996 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) - - * elfcode.h (elf_object_p): Reject generic ELF target if - e_machine matches an alternate machine code in a specific backend. - - * netbsd-core.c (netbsd_core_vec): Remove initializer for - obsolete align_power_min field. - -Fri May 3 13:07:35 1996 Jeffrey A Law (law@cygnus.com) - - * coff-h8300.c (reloc_howto_type): Add howto entry for - R_PCRWORD_B. - (rtype2howto): Handle R_PCRWORD_B. - (h8300_reloc16_extra_cases): Handle R_PCRWORD_B. - (h8300_reloc_16_estimate): Likewise. Try to turn a 16bit - pc-relative branch (R_PCRWORD) into an 8bit pc-relative - branch (R_PCWORD_B). - -Fri May 3 10:47:41 1996 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h (translate_from_native_sym_flags): Set the section for - BSF_CONSTRUCTOR symbols. - - * cofflink.c (_bfd_coff_link_input_bfd): Correct setting of - last_bf_index. - -Wed May 1 18:39:32 1996 Doug Evans <dje@canuck.cygnus.com> - - * coffcode.h (coff_write_object_contents): In comdat section lookup, - stop looking when section is found. - -Wed May 1 14:17:57 1996 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (STRING_SIZE_SIZE): Define. - (styp_to_sec_flags): Handle long symbol names when looking for the - section symbol. - (bfd_coff_backend_data): Add _bfd_coff_long_section_names field. - (bfd_coff_long_section_names): Define. - (coff_write_object_contents): Handle long section names. - (bfd_coff_std_swap_table): Initialize new field. - * libcoff.h: Rebuild. - * coffgen.c (make_a_section_from_file): Handle long section - names. - (coff_write_symbols): Handle long section names. - * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field. - * coff-mips.c (mips_ecoff_backend_data): Likewise. - * pe-arm.c (COFF_LONG_SECTION_NAMES): Define. - * pei-arm.c (COFF_LONG_SECTION_NAMES): Define. - * pe-i386.c (COFF_LONG_SECTION_NAMES): Define. - * pei-i386.c (COFF_LONG_SECTION_NAMES): Define. - * pe-ppc.c (COFF_LONG_SECTION_NAMES): Define. - * pei-ppc.c (COFF_LONG_SECTION_NAMES): Define. - - * bout.c (b_out_callback): Set lma of sections. - (b_out_bfd_get_relocated_section_contents): Rename in_abfd - parameter to output_bfd. Used input_bfd instead of output_bfd in - several places. - -Tue Apr 30 17:56:39 1996 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h (translate_from_native_sym_flags): Don't create - SEC_CONSTRUCTOR sections. - * ecoff.c (ecoff_set_symbol_info): Likewise. - - * elf32-mips.c (mips_elf_copy_private_bfd_data): Copy elf_gp. - From Don Bowman <bowman@waterloo.hp.com>. - -Tue Apr 30 17:06:32 1996 Doug Evans <dje@canuck.cygnus.com> - - * coff-arm.c (armcoff_little_vec): If COFF_WITH_PE is defined, add - SEC_LINK_ONCE and SEC_LINK_DUPLICATES to section_flags. - -Mon Apr 29 13:15:17 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (struct mips_elf_link_hash_entry): Add - mips_32_relocs field. - (mips_elf_link_hash_newfunc): Initialize mips_32_relocs field. - (mips_elf_relocate_section): Copy R_MIPS_REL32 and R_MIPS_32 - relocs against a global symbol which is not defined in a regular - file. - (mips_elf_check_relocs): For a R_MIPS_REL32 or R_MIPS_32 reloc - against a global symbol, increment mips_32_relocs. - (mips_elf_adjust_dynamic_symbol): If mips_32_relocs is set, and - the symbol is not defined in a regular file, make room in the - .rel.dyn section. - -Fri Apr 26 18:00:37 1996 Ian Lance Taylor <ian@cygnus.com> - - * ecoff.c (ecoff_compute_section_file_positions): Track the real - file position and the virtual file position separately. Set - filepos information bsaed on the real file position. - (_bfd_ecoff_set_section_contents): Handle .lib sections like the - Jan 23 change to coffcode.h. - - * som.c (som_slurp_symbol_table): Set the symbol count to the - number of BFD symbols created. - -Fri Apr 26 12:34:29 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_check_relocs): Forward relocations to the - output file if linking shared objects. Loop to check all relocs, - rather than returning false on first error. - -Thu Apr 25 13:25:12 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_create_linker_section): Add PLT case. - (ppc_elf_additional_program_headers): If .interp section, bump # - of program headers by 1. - (ppc_elf_adjust_dynamic_symbol): Flesh out support. - (ppc_elf_size_dynamic_sections): Add support for .plt section. - (ppc_elf_check_relocs): Print out filename in debug code. Enable - PLT support. - (ppc_elf_finish_dynamic_symbol): Add support for PLT's, beef up - debug output. - (ppc_elf_relocate_section): If the output section isn't defined, - don't abort, just give an error message. - - * elflink.c (_bfd_elf_create_dynamic_sections): If the section - being created is .sdata or .sdata2, don't make the symbol dynamic. - -Wed Apr 24 14:04:07 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through the - members of an archive for dynamic objects with no symbols, and - pass them directly to check_archive_element. - (xcoff_link_check_ar_symbols): Pass dynamic objects to - xcoff_link_check_dynamic_ar_symbols. - (xcoff_link_check_dynamic_ar_symbols): New static function. - - * coff-rs6000.c (rs6000coff_vec): Change BFD_JUMP_TABLE_DYNAMIC - from _bfd_nodynamic to _bfd_xcoff. - * libcoff-in.h (_bfd_xcoff_get_dynamic_symtab_upper_bound): - Declare. - (_bfd_xcoff_canonicalize_dynamic_symtab): Declare. - (_bfd_xcoff_get_dynamic_reloc_upper_bound): Declare. - (_bfd_xcoff_canonicalize_dynamic_reloc): Declare. - * libcoff.h: Rebuild. - * xcofflink.c (xcoff_swap_ldrel_in): New static function. - (xcoff_get_section_contents): New static function. - (_bfd_xcoff_get_dynamic_symtab_upper_bound): New function. - (_bfd_xcoff_canonicalize_dynamic_symtab): New function. - (_bfd_xcoff_get_dynamic_reloc_upper_bound): New function. - (xcoff_dynamic_reloc): New static variable. - (_bfd_xcoff_canonicalize_dynamic_reloc): New function. - (xcoff_link_add_dynamic_symbols): Use xcoff_get_section_contents. - -Tue Apr 23 12:48:42 1996 Ian Lance Taylor <ian@cygnus.com> - - * coff-sparc.c (bfd_coff_generic_reloc): Return bfd_reloc_ok even - if reloc_entry->addend is not 0. - (CALC_ADDEND): Just set the addend to reloc.r_offset. - -Mon Apr 22 18:29:01 1996 Doug Evans <dje@canuck.cygnus.com> - - * elf32-sparc.c (_bfd_sparc_elf_howto_table): Fix spelling of - R_SPARC_GLOB_JMP. - * elf64-sparc.c (sparc64_elf_howto_table): Likewise. - Add entries for R_SPARC_[56]. - (sparc_reloc_map): Add entries for R_SPARC_[56]. - -Mon Apr 22 15:07:24 1996 Ian Lance Taylor <ian@cygnus.com> - - Optimize linking of stabs in sections as used in ELF and COFF. - * stabs.c: New file. - * libbfd-in.h (_bfd_link_section_stabs): Declare. - (_bfd_write_section_stabs): Declare. - (_bfd_write_stab_strings): Declare. - * libbfd.h: Rebuild. - * libcoff-in.h (struct coff_section_tdata): Add stab_info field. - (struct coff_link_hash_table): Add stab_info field. - * libcoff.h: Rebuild. - * cofflink.c (_bfd_coff_link_hash_table_init): Initialize - stab_info field. - (coff_link_add_symbols): Call _bfd_link_section_stabs if - appropriate. - (_bfd_coff_final_link): Write out stab strings hash table. - (_bfd_coff_link_input_bfd): Handle optimized stabs sections. - * coff-ppc.c (ppc_bfd_coff_final_link): Write out stab strings - hash table. - * elf-bfd.h (struct elf_link_hash_table): Add stab_info field. - (struct bfd_elf_section_data): Add stab_info field. - * elf.c (_bfd_elf_link_hash_table_init): Initialize stab_info - field. - * elflink.h (elf_link_add_object_symbols): If appropriate, call - _bfd_link_section_stabs. - (elf_bfd_final_link): Write out stab strings hash table. - (elf_link_input_bfd): Handle optimized stabs sections. - * reloc.c (_bfd_final_link_relocate): Check address against - _raw_size rather than _cooked_size. - * Makefile.in: Rebuild dependencies. - (BFD_LIBS): Add stabs.o - (BFD_LIBS_CFILES): Add stabs.c. - - * VERSION: Increment for bfdlink.h change. - - * coffgen.c (coff_renumber_symbols): Correct handling of - BSF_NOT_AT_END common symbols. - -Fri Apr 19 19:21:56 1996 Ian Lance Taylor <ian@cygnus.com> - - * coff-ppc.c (record_toc): Add cast to avoid warning. - (ppc_allocate_toc_section): Likewise. - (coff_ppc_relocate_section): Remove ANSI C string concatenation. - (ppc_coff_reloc_type_lookup): Remove unreached code. - * coffcode.h (coff_write_object_contents): Don't take the address - of an array. - * peicode.h (pe_print_idata): Add casts to avoid warning. - (pe_print_edata): Likewise. - (pe_print_reloc): Remove ANSI C string concatenation. - -Thu Apr 18 18:51:18 1996 Ian Lance Taylor <ian@cygnus.com> - - * libcoff-in.h (struct coff_final_link_info): Add last_bf_index - and last_bf fields. - * libcoff.h: Rebuild. - * coffswap.h (coff_swap_aux_in): Swap endndx field for C_FCN - symbols. - (coff_swap_aux_out): Likewise. - * peicode.h (coff_swap_aux_in): Likewise. - (coff_swap_aux_out): Likewise. - * coffgen.c (coff_pointerize_aux): Check endndx field for C_FCN - symbols. - * cofflink.c (_bfd_coff_final_link): Initialize last_bf_index - field. - (_bfd_coff_link_input_bfd): Check endndx field for C_FCN symbols. - Fix up .bf endndx link fields. - * coff-ppc.c (ppc_bfd_coff_final_link): Initialize last_bf_index - field. - * xcofflink.c (xcoff_link_input_bfd): Check endndx field for C_FCN - symbols. - -Wed Apr 17 12:08:24 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * pe{,i}-ppc.c (PPC_PE): Define instead of PPC, so that compiling - on Solaris PowerPC systems doesn't get confused. - - * ccffcode.h (coff_write_object_contents): Use #ifdef PPC_PE, not - #ifdef PPC. - - * elfcore.h (bfd_prstatus, bfd_fpregset): Add thread argument. - (elf_corefile_note): If HAVE_SYS_PROCFS_H is not defined, don't - update did_reg and did_reg2. - -Wed Apr 17 13:07:37 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_input_bfd): Check for TOC overflow. - - * linker.c (_bfd_generic_link_add_one_symbol): When calling the - callback routines, pass h->root.string rather than name, in case - copy is true and name is transient. - -Tue Apr 16 16:36:38 1996 Stu Grossman (grossman@lisa.cygnus.com) - - * elfcore.h: Add support for core files with multiple threads. - (Primarily for Solaris.) - -Tue Apr 16 13:44:08 1996 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h (NAME(aout,squirt_out_relocs)): Don't do anything if - section->orelocation is NULL. - - * coffgen.c (bfd_coff_get_syment): New function. - (bfd_coff_get_auxent): New function. - * bfd-in.h (bfd_coff_get_syment): Declare. - (bfd_coff_get_auxent): Declare. - * bfd-in2.h: Rebuild. - -Mon Apr 15 19:06:59 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (struct mips_hi16): Define. - (mips_hi16_addr, mips_hi16_addend): Remove. - (mips_hi16_list): New static variable. - (mips_elf_hi16_reloc): Maintain a list of unmatched HI16 relocs. - (mips_elf_lo16_reloc): Process mips_hi16_list. - (mips_elf_relocate_section): Permit an arbitrary number of HI16 - relocs before the associated LO16 reloc. - -Wed Apr 10 00:23:53 1996 Ian Lance Taylor <ian@cygnus.com> - - * versados.c (versados_scan): Check bfd_alloc return value. - (versados_object_p): Check all bfd_read return values. Require - that lang field be less than 10, to avoid confusion with Intel Hex - files. - - * libaout.h (WRITE_HEADERS): Write out the relocs even if there - aren't any symbols. - * aoutx.h (NAME(aout,swap_std_reloc_out)): Set r_index to N_ABS, - not 0, for an absolute symbol. - (NAME(aout,swap_ext_reloc_out)): Likewise. - - * ihex.c (ihex_scan): Accept a length of 4 for record type 5. - (ihex_write_object_contents): For a large start address, output - the full 32 bit address in record type 5. - - * ieee.c (ieee_write_byte): Change second parameter from bfd_byte - to int to avoid promotion problems in prototype. - -Tue Apr 9 11:44:21 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.host: Use ${srcdir} when looking for picfrag. - - * configure.host: Switch on ${libdir}, not $(libdir). From - alan@spri.levels.unisa.edu.au (Alan Modra). - - * aoutx.h (aout_link_add_symbols): Always call add_dynamic_symbols - entry point, not just for DYNAMIC objects. - * sunos.c (sunos_add_dynamic_symbols): Always call - sunos_create_dynamic_sections. If called with a non DYNAMIC - object, don't do anything else. - (sunos_add_one_symbol): Don't call sunos_create_dynamic_sections. - -Mon Apr 8 12:09:36 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Permit --enable-shared to specify a list of - directories. - * configure: Rebuild. - - * configure.host: Set HLDFLAGS and SHLIB_CFLAGS for *-dec-osf* - host when configuring with --enable-shard. - -Fri Apr 5 12:24:13 1996 Ian Lance Taylor <ian@cygnus.com> - - * config.bfd: Add i[345]86-*-freebsdelf* target; from John Polstra - <jdp@polstra.com>. - - * linker.c (link_action): For WARN_ROW/warn, use MWARN, not CYCLE, - to avoid crashing in bfd_hash_replace. - - * sysdep.h: Use #ifdef, not #if. - -Thu Apr 4 23:32:23 1996 Ian Lance Taylor <ian@cygnus.com> - - * config.in: Rebuild. - -Thu Apr 4 18:49:09 1996 Fred Fish <fnf@cygnus.com> - - * configure.in (mips-sony-bsd*): Fix typo in AC_DEFINE. - (AC_CHECK_HEADERS): Check for sys/time.h - (AC_HEADER_TIME): Add macro. - * configure: Rebuild. - * sysdep.h: Use TIME_WITH_SYS_TIME and HAVE_SYS_TIME_H - to control what combination of <time> and <sys/time.h> - get included. - -Tue Apr 2 13:11:53 1996 Doug Evans <dje@canuck.cygnus.com> - - * aoutf1.h (sunos_32_set_arch_mach): Handle M_SPARCLET. - (aout_32_sunos4_write_object_contents): Likewise. - * aoutx.h (NAME(aout,machine_type)): Handle - bfd_mach_sparc_{sparclet,sparclite}. - * archures.c (bfd_mach_sparc_{sparclet,sparclite}): Define. - (bfd_mach_sparc_v9_p): Update. - * cpu-sparc.c (arch_info_struct): Add entries for sparclet,sparclite. - * libaout.h (enum machine_type): Add M_SPARCLET. - * sunos.c (MACHTYPE_OK): Define. - * bfd-in2.h: Regenerated. - -Tue Apr 2 00:33:18 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf-bfd.h (struct elf_link_hash_table): Add hgot field. - * elf.c (_bfd_elf_link_hash_table_init): Initialize hgot field. - * elflink.c (_bfd_elf_create_got_section): Store the - _GLOBAL_OFFSET_TABLE_ hash table entry in the hgot field. - * elf32-sparc.c (elf32_sparc_check_relocs): If the size of the - global offset table goes over 0x1000, set the value of - _GLOBAL_OFFSET_TABLE_ to 0x1000 into the section. - (elf32_sparc_relocate_section): Subtract the offset of - _GLOBAL_OFFSET_TABLE_ when handling GOT relocations. - - * elfcode.h: Don't include <string.h>. - -Mon Apr 1 10:39:24 1996 Jeffrey A Law (law@cygnus.com) - - * linker.c (_bfd_generic_link_hash_newfunc): Renamed from - generic_link_hash_newfunc. All references changed. - * genlink.h (_bfd_generic_link_hash_newfunc): Declaration - moved here from libbfd-in.h. - * libbfd-in.h: Corresponding changes. - * libbfd.h: Regenerated. - -Mon Apr 1 12:35:36 1996 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h (aout_link_input_section_std): When reporting an - overflow error, use the name of the symbol in the hash table if - available. - (aout_link_input_section_ext): Likewise. - - * elflink.h (elf_adjust_dynamic_symbol): If a common symbol got - defined in a regular file, set ELF_LINK_HASH_DEF_REGULAR. - -Sun Mar 31 01:58:41 1996 steve chamberlain <sac@slash.cygnus.com> - - * peicode.h (coff_swap_aouthdr_out): Delete test for .junk. - * coffcode.h (coff_compute_section_file_positions): Likewise. - (coff_write_object_contents): Likewise. - -Fri Mar 29 12:44:36 1996 Ian Lance Taylor <ian@cygnus.com> - - * section.c (SEC_LINK_ONCE): Define. - (SEC_LINK_DUPLICATES): Define. - (SEC_LINK_DUPLICATES_DISCARD): Define. - (SEC_LINK_DUPLICATES_ONE_ONLY): Define. - (SEC_LINK_DUPLICATES_SAME_SIZE): Define. - (SEC_LINK_DUPLICATES_SAME_CONTENTS): Define. - * bfd-in2.h: Rebuild. - * coffcode.h (sec_to_styp_flags): If COFF_WITH_PE, turn - SEC_LINK_ONCE into IMAGE_SCN_LNK_COMDAT. - (styp_to_sec_flags): If COFF_WITH_PE, turn IMAGE_SCN_LNK_REMOVE - into SEC_EXCLUDE. If IMAGE_SCN_LNK_COMDAT is set, set - SEC_LINK_ONCE, and look through the symbol table for the setting - for SEC_LINK_DUPLICATES. - (coff_write_object_contents): If COFF_WITH_PE, if SEC_LINK_ONCE is - set for a section, find the section symbol in the symbol table, - and set the aux entry based on SEC_LINK_DUPLICATES. - * coffgen.c (coff_print_symbol): Add a space before "checksum". - * coff-arm.c (armcoff_big_vec): If COFF_WITH_PE is defined, add - SEC_LINK_ONCE and SEC_LINK_DUPLICATES to section_flags. - * coff-i386.c (i386coff_vec): Likewise. - * coff-ppc.c (TARGET_LITTLE_SYM, TARGET_BIG_SYM): Likewise. - - * VERSION: Bump to 2.6.1. - * Makefile.in (stamp-h): Depend upon VERSION. - -Thu Mar 28 23:48:49 1996 Jeffrey A Law (law@cygnus.com) - - * libbfd-in.h (generic_link_hash_newfunc): Add declaration. - * libbfd.h: Rebuilt. - * linker.c (generic_link_hash_newfunc): No longer static. - * coffcode.h (coff_bfd_link_hash_create): Allow specific targets - to override. - * coff-h8300.c: Add two derived hash tables and their associated - funtions and #defines for use by the h8300 linker. - (h8300_reloc16_extra_cases, case R_MEM_INDIRECT): Create entries in - the function vector as needed. Place the address of the function - vector entry in the location specified by the R_MEM_INDIRECT reloc. - Rewrite the vectors section contents as necessary. - (h8300_bfd_link_add_symbols): New function for the h8300 linker. - (coff_bfd_link_add_symbols): Define to use h8300 specific version. - (coff_bfd_link_hash_table_create): Likewise. - -Thu Mar 28 17:44:08 1996 Ian Lance Taylor <ian@cygnus.com> - - * libhppa.h: If gcc 2.7 or higher, declare all the functions with - __attribute__ ((__unused__)) so that -Wall doesn't warn about - them. - (hppa_rebuild_insn): Pass pointer to correct type to - low_sign_unext and dis_assemble_21. - -Thu Mar 28 11:00:36 1996 Doug Evans <dje@canuck.cygnus.com> - - * config.bfd (sparc64-{sysv4*,solaris2*}): Delete. - Stick with sparc-*-{sysv4*,solaris2*}. - -Wed Mar 27 10:43:34 1996 Ian Lance Taylor <ian@cygnus.com> - - * peicode.h (coff_swap_aux_in): Swap in extra PE x_scn fields. - (coff_swap_aux_out): Swap out extra PE x_scn fields. - * coffswap.h (coff_swap_aux_in): Zero out extra PE x_scn fields. - * coffgen.c (coff_print_symbol): If any of the extra PE x_scn - fields is non-zero, print them. - - * coff-ppc.c (ppc_record_toc_entry): Put inside COFF_IMAGE_WITH_PE - ifdef. Remove unused variables. - (ppc_record_data_in_toc_entry): Ifdef out. Removed unused - variables. - (ppc_mark_symbol_as_glue): Put inside COFF_IMAGE_WITH_PE ifdef. - (get_symbol_value): Ifdef out. - (pe_ppc_reloc): Ifdef out. Remove unused variables. - (coff_ppc_relocate_section): Remove unused variables. Make - fprintf strings and argument types correspond. Put before_addr in - DEBUG_RELOC ifdef. - (dump_toc): Make fprintf strings and argument types correspond. - (ppc_process_before_allocation): Remove unused variables. Always - return a value. - (ppc_reflo_reloc): Ifdef out. - (ppc_addr32nb_reloc): Ifdef out. - (ppc_coff_rtype2howto): Make fprintf strings and argument types - correspond. - (coff_ppc_rtype_to_howto): Likewise. - (ppc_coff_swap_sym_in_hook): Remove unused variables. - - * peicode.h (pe_print_idata): Move otherwise unused variables into - the #ifdef where they are used. Always return a value. - (pe_print_edata): Make fprintf strings and argument types - correspond. Always return a value. - (pe_print_pdata): Removed unused variable addr_value. Always - return a value. - (pe_print_reloc): Remove unused variable onaline. Make fprintf - strings and argument types correspond. Always return a value. - - * elf32-ppc.c (ppc_elf_fake_sections): Return true. - (ppc_elf_finish_dynamic_symbol): Move definition of unused - variable rela inside #if 0 section where it is used. - - * ns32k.h: New file. - * cpu-ns32k.h: Include ns32k.h. Rename externally visible - functions to start with _bfd_. - * aout-ns32k.c: Include ns32k.h. Change references to renamed - functions in cpu-ns32k.h. - * Makefile.in: Rebuild dependencies. - (HFILES): Add ns32k.h. - - * section.c (struct sec): Add linker_mark field. Change - user_set_vma and reloc_done to be single bit fields. - (STD_SECTION): Update accordingly. - * bfd-in2.h: Rebuild. - * aoutx.h (NAME(aout,final_link)): Mark sections included in the - link. - (aout_link_input_bfd): Don't link unmarked sections. - * cofflink.c (_bfd_coff_final_link): Mark sections included in the - link. - (_bfd_coff_link_input_bfd): Don't link unmarked sections. - * coff-ppc.c (ppc_bfd_coff_final_link): Mark sections included in - the link. - * elflink.h (elf_bfd_final_link): Mark sections included in the - link. - (elf_link_input_bfd): Don't link unmarked sections. - * xcofflink.c (_bfd_xcoff_bfd_final_link): Mark sections included - in the link. - (xcoff_link_input_bfd): Don't link unmarked sections. - - * coffswap.h (coff_swap_scnhdr_out): Include section name in - overflow error messages. - -Tue Mar 26 15:46:18 1996 Ian Lance Taylor <ian@cygnus.com> - - * bfd.c (_bfd_default_error_handler): If _bfd_error_program_name - is not set, print "BFD: " before the error message. - - * configure.in: Use AC_CHECK_TOOL to find ar and ranlib. From - Miles Bader <miles@gnu.ai.mit.edu>. - * configure: Rebuild. - -Fri Mar 22 12:17:00 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_input_bfd): Fix scan for C_BINCL/C_EINCL - symbols. - - * config.bfd: Add ieee_vec to targ_selvecs for i960 targets and - m68k-aout, m68k-coff, and m68k-elf targets. - -Fri Mar 22 11:33:44 1996 Martin Anantharaman <martin@goofy.imech.uni-duisburg.de> - - * ieee.c: Changed #ifdef KEEPMINUSPCININST to #if KEEPMINUSPCININST. - (ieee_generic_stat_arch_elt): Restructured to prevent - ieee_object_p from being called repeatedly. - -Thu Mar 21 11:00:47 1996 steve chamberlain <sac@slash.cygnus.com> - - * coffcode.h (coff_write_object_contents): Allocate - buffers large enough for any FILEHDR or AOUTHDR. - -Thu Mar 21 16:28:17 1996 David Mosberger-Tang <davidm@azstarnet.com> - - * ecofflink.c (lookup_line): New static function, renamed and - slighly changed from old _bfd_ecoff_locate_line. - (_bfd_ecoff_locate_line): Cache line number information. Use - lookup_line for actual lookup. - -Thu Mar 21 14:59:11 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * peicode.h (pe_print_pdata): Warn if the .pdata section is not a - multiple of 20 bytes. - -Thu Mar 21 13:54:40 1996 Ian Lance Taylor <ian@cygnus.com> - - * ecoff.c (_bfd_ecoff_find_nearest_line): Use bfd_zalloc to - allocate ecoff_find_line, and don't initialize by hand. - * elf32-mips.c (mips_elf_find_nearest_line): Use bfd_zalloc for - mips_elf_find_line, and don't call memset. - - * coffcode.h (coff_compute_section_file_positions): If not - producing a final executable, don't consider sofar when aligning - the section to the correct size. - -Wed Mar 20 16:53:12 1996 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_add_missing_symbols): Ifdef out. - (coff_write_object_contents): Don't call coff_add_missing_symbols. - * coffgen.c (coff_section_symbol): Ifdef out. - -Mon Mar 18 12:54:41 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf32-mips.c (mips_elf_gprel32_reloc): Initialize gp if - output_bfd is not NULL. - -Thu Mar 14 17:12:06 1996 Doug Evans <dje@charmed.cygnus.com> - - * coffgen.c (coff_get_normalized_symtab): Call bfd_zalloc instead - of bfd_alloc (fixes fix_line not being initialized). - Delete zeroing of fix_{value,tag,end,scnlen} fields. - -Thu Mar 14 16:06:06 1996 Jeffrey A Law (law@cygnus.com) - - * coffcode.h: Allow specific backends to override the - bfd_link_add_symbols routine. - - * coff-h8300.c: Include genlink.h. - (howto_table): Add R_MEM_INDIRECT. - (rtype2howto): Support R_MEM_INDIRECT. - (h8300_reloc16_extra_cases): Handle R_MEM_INDIRECT like R_RELBYTE - for now. - -Tue Mar 12 12:41:17 1996 David Mosberger-Tang <davidm@koala.azstarnet.com> - - * coff-alpha.c (alpha_relocate_section): Use - info->callbacks_warning, rather than _bfd_error_handler, for - "multiple gp" warning. - -Tue Mar 12 12:10:55 1996 Ian Lance Taylor <ian@cygnus.com> - - * linker.c (bfd_wrapped_link_hash_lookup): New function. - (_bfd_generic_link_add_one_symbol): Remove BFD_ASSERT on hash - table string. Use bfd_wrapped_link_hash_lookup. - (_bfd_generic_link_write_global_symbol): Remove BFD_ASSERT on hash - table string. - * aoutx.h (aout_link_write_symbols): Use the name from the hash - table, if any, when writing out symbols. - (aout_link_input_section_std): Use the name from the hash table, - if any, when reporting undefined symbols. - (aout_link_input_section_ext): Likewise. - (aout_link_reloc_link_order): Use bfd_wrapped_link_hash_lookup. - * bout.c (get_value): Likewise. - * cofflink.c (_bfd_coff_reloc_link_order): Likewise. - * ecoff.c (ecoff_reloc_link_order): Likewise. - * elflink.h (elf_link_add_object_symbols): Likewise. - (elf_reloc_link_order): Likewise. - * linker.c (_bfd_generic_link_output_symbols): Likewise. - (_bfd_generic_reloc_link_order): Likewise. - (default_indirect_link_order): Likewise. - * reloc16.c (bfd_coff_reloc16_get_value): Likewise. - * sunos.c (sunos_add_one_symbol): Likewise. - * xcofflink.c (xcoff_link_add_symbols): Likewise. - (bfd_xcoff_link_count_reloc): Likewise. - (xcoff_reloc_link_order): Likewise. - - * ecoffswap.h (ecoff_swap_fdr_in): If ECOFF_64, turn 0xffffffff - into -1 for intern->rss. - - * configure: Rebuild with autoconf 2.8. - -Mon Mar 11 12:28:31 1996 Ian Lance Taylor <ian@cygnus.com> - - * stab-syms.c (__define_stab_duplicate): Define. - (bfd_get_stab_name): Rename from aout_stab_name. Rewrite to use a - switch. - * bfd-in.h (bfd_get_stab_name): Declare. - * bfd-in2.h: Rebuild. - * Makefile.in: Rebuild dependencies. - (BFD_LIBS): Add stab-syms.o. - (BFD_LIBS_CFILES): Add stab-syms.c. - (BFD32_BACKENDS): Remove stab-syms.o. - (BFD32_BACKENDS_CFILES): Remove stab-syms.c. - * configure.in: Don't list stab-syms.o in bfd_backends. - * configure: Rebuild. - * libaout.h (aout_stab_name): Don't declare. - * aoutx.h (NAME(aout,get_symbol_info)): Call bfd_get_stab_name, - not aout_stab_name. - -Fri Mar 8 11:26:20 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (assign_file_positions_for_segments): Adjust file offset - for section alignment even if SEC_LOAD is not set. - -Tue Mar 5 12:02:23 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Don't set SHLIB or SHLINK to an empty string, - since they appear as targets in Makefile.in. - * configure: Rebuild. - - * sunos.c (sunos_scan_ext_relocs): If not making a shared library, - don't fiddle with a symbol which is not defined anywhere. - -Mon Mar 4 12:49:16 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_mark): Treat undefined imported symbols as - though they are defined in a shared library. - (xcoff_build_ldsyms): Likewise. - - * coffgen.c (coff_find_nearest_line): Don't look at the line - numbers for the section if section->lineno is NULL. - - * elf.c (_bfd_elf_symbol_from_bfd_symbol): Print a useful error - message rather than calling BFD_ASSERT. - * elfcode.h (write_relocs): Check return value of - _bfd_elf_symbol_from_bfd_symbol. - -Fri Mar 1 09:42:59 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_add_symbol_hook): Don't set SEC_LOAD flag - for .sbss section. - -Wed Feb 28 11:25:47 1996 Jeffrey A Law (law@cygnus.com) - - * libhppa.h (hppa_reloc_field_selector_type): Add R_HPPA_NLSEL - and R_HPPA_NLRSEL. - (e_nsel, e_nlsel, e_nlrsel): Undefine. Add to - hppa_reloc_field_selector_type_alt. - (hppa_field_adjust): Handle e_nlsel, e_nlrsel. Fix e_nsel handling. - * som.c (hppa_som_gen_reloc_type): Handle N', NL' NLR' field - selectors. - (som_write_fixups): Finish handling of R_N0SEL and R_N1SEL. - -Wed Feb 28 11:00:24 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (assign_file_positions_for_segments): Adjust the segment - memory size for the alignment of a SEC_ALLOC section, not just a - SEC_LOAD section. - -Tue Feb 27 14:17:31 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * m68klinux.c: New file. - * hosts/m68klinux.h: New file. - * config.bfd (m68*-*-linuxaout*, m68*-*-linux*): New targets. - * configure.in (m68*-*-linux*): New native host. - (m68klinux_vec): New vector. - * configure: Rebuild. - * targets.c (m68klinux_vec): Declare. - * i386linux.c (bfd_i386linux_size_dynamic_sections): Renamed from - bfd_linux_size_dynmic_sections to avoid clash with m68klinux.c. - * bfd-in.h (bfd_i386linux_size_dynamic_sections): Rename - declaration from bfd_linux_size_dynamic_sections. - (bfd_m68klinux_size_dynamic_sections): Declare. - * bfd-in2.h: Rebuild. - * Makefile.in: Rebuild dependencies. - (BFD32_BACKENDS): Add m68klinux.o. - (BFD32_BACKENDS_CFILES): Add m68klinux.c. - -Tue Feb 27 11:31:34 1996 Jeffrey A Law (law@cygnus.com) - - * libhppa.h (pa_arch): Add pa20. - (hppa_reloc_field_selector_type): Add R_HPPA_NSEL. - (e_nsel): Undefine. Add to hppa_reloc_field_selector_type_alt. - (hppa_field_adjust): Handle e_nsel. - * som.c: Provide default definitions for many new relocs found only - in hpux10 include files. - (som_fixup_formats): Add several new relocs from hpux10. - (som_hppa_howto_table): Add hpux10 relocs. - (som_write_fixups): Handle R_N0SEL and R_N1SEL hpux10 relocs. - -Mon Feb 26 12:52:48 1996 Stan Shebs <shebs@andros.cygnus.com> - - * mpw-make.sed: Edit out recent shared library support, and - rules to rebuild .h files using doc/chew. - -Mon Feb 26 14:48:39 1996 David Mosberger-Tang <davidm@AZStarNet.com> - - * ecoff.c (ecoff_compute_section_file_positions): Adjust the file - size even of sections with no contents. - -Mon Feb 26 14:01:13 1996 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (_bfd_coff_link_input_bfd): When merging, skip names - starting with '$' the way we skip names starting with '.'. When - updating x_endndx, don't be fooled by an index which has been - merged. - - * cofflink.c (_bfd_coff_link_input_bfd): Don't try to optimize a - struct/union/enum type with no elements. - -Sat Feb 24 11:38:58 1996 Ian Lance Taylor <ian@cygnus.com> - - * bfd.c (bfd_errmsg): Handle a NULL return from strerror. - - * archive.c (bfd_generic_archive_p): If the first file in the - archive can not be recognized as an object, don't assume that this - is the wrong format. - - * elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the - format is not bfd_object. - (bfd_elf_get_dt_soname): Likewise. - -Wed Feb 21 13:58:04 1996 Ian Lance Taylor <ian@cygnus.com> - - * coff-sh.c (sh_relax_delete_bytes): Correct range of R_SH_USES - reloc. - -Tue Feb 20 16:22:44 1996 J.T. Conklin <jtc@rtl.cygnus.com> - - * bfd.c (tdata): Add netbsd_core_data. - * bfd-in2.h: Regenerated. - -Tue Feb 20 16:50:02 1996 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c (SUNOS_CONSTRUCTOR): Define. - (sunos_add_one_symbol): Don't let a symbol from a dynamic object - override a constructor symbol. Set SUNOS_CONSTRUCTOR when - appropriate. - - * bout.c (b_out_squirt_out_relocs): Use udata.i rather than flags - to get the symbol index, matching 14 Jul 95 change. - -Tue Feb 20 08:26:27 1996 Fred Fish <fnf@phydeaux.cygnus.com> - - * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): - Remove duplicate definition of gp. - -Mon Feb 19 12:37:41 1996 Ian Lance Taylor <ian@cygnus.com> - - * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Don't - assume that we can set the GP value and then get the same value, - since it won't be true if the output file is neither ELF nor - ECOFF. - * coff-mips.c (mips_adjust_reloc_in): Don't bother to use - _bfd_get_gp_value here. - (mips_gprel_reloc): Don't assume we can set and get the GP value. - * elf32-mips.c (mips_elf_hi16_reloc): Get gp value from - mips_elf_final_gp. - (mips_elf_lo16_reloc): Likewise. - (mips_elf_final_gp): Add pgp parameter. Set it to the GP value. - Don't require that the BFD be ELF. - (mips_elf_gprel16_reloc): Get gp value from mips_elf_final_gp. - (mips_elf_gprel32_reloc): Likewise. - (mips_elf_relocate_section): Don't assume we can set and get the - GP value. - (mips_elf_finish_dynamic_symbol): Don't bother to use - _bfd_get_gp_value here. - - * elf32-mips.c (mips_elf_create_procedure_table): Initialize sv. - Don't change epdr between malloc and free. Be careful not to free - NULL pointers. Zero out the first RPDR. - - * configure.host: On Linux, only pass -rpath option if $(libdir) - is neither /lib nor /usr/lib. From Alan Modra - <alan@mullet.Levels.UniSA.Edu.Au>. - - * elf-bfd.h (struct elf_obj_tdata): Rename dt_needed_name to - dt_name. - (elf_dt_name): Rename from elf_dt_needed_name. - * elf.c (bfd_elf_set_dt_needed_name): Use elf_dt_name, not - elf_dt_needed_name. - (bfd_elf_get_dt_soname): New function. - * elflink.h (elf_link_add_object_symbols): Use elf_dt_name, not - elf_dt_needed_name. Save the SONAME back in elf_dt_name. - * bfd-in.h (bfd_elf_get_dt_soname): Declare. - * bfd-in2.h: Rebuild. - -Mon Feb 19 02:50:23 1996 Doug Evans <dje@charmed.cygnus.com> - - * elf32-sparc.c (elf32_sparc_reloc_type_lookup): Renamed from - _bfd_sparc_elf_reloc_type_lookup. - (bfd_elf32_bfd_reloc_type_lookup): Update. - * elf64-sparc.c (SPARC64_OLD_RELOCS): Define. - (sparc64_elf_howto_table): Define. - (sparc_reloc_map): Define. - (sparc64_elf_reloc_type_lookup): New function. - (sparc_elf_wdisp16_reloc): New function. - (elf_info_to_howto): Use sparc64_elf_howto_table. - (sparc64_elf_relocate_section): Likewise. - (bfd_elf64_bfd_reloc_type_lookup): Update. - -Sun Feb 18 15:02:25 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.host: Check for 'do not mix' from native linker before - trying to use -rpath. - -Fri Feb 16 12:46:18 1996 Ian Lance Taylor <ian@cygnus.com> - - * bfd.c (_bfd_get_gp_value): New function. - (_bfd_set_gp_value): New function. - * libbfd-in.h (_bfd_get_gp_value): Declare. - (_bfd_set_gp_value): Declare. - * libbfd.h: Rebuild. - * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use - _bfd_get_gp_value and _bfd_set_gp_value rather than referring - directly to the fields in the tdata information. - (alpha_relocate_section): Likewise. - * coff-mips.c (mips_adjust_reloc_in): Likewise. - (mips_gprel_reloc): Likewise. - (mips_relocate_section): Likewise. - * elf32-mips.c (mips_elf_hi16_reloc): Likewise. - (mips_elf_lo16_reloc): Likewise. - (mips_elf_final_gp): Likewise. - (mips_elf_gprel16_reloc): Likewise. - (mips_elf_gprel32_reloc): Likewise. - (mips_elf_relocate_section): Likewise. - (mips_elf_finish_dynamic_symbol): Likewise. - - * bout.c (b_out_set_arch_mach): Recognize bfd_mach_i960_jx. - -Thu Feb 15 11:29:13 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Call AC_PROG_CC before configure.host. - * configure: Rebuild. - * configure.host: Don't set information which autoconf should - figure out, namely CC, CFLAGS, LDFLAGS, AR, and RANLIB. - - * configure.host: Remove go32 and win32 host information, since it - should no longer be needed. - - * elf.c (map_sections_to_segments): If we have a .dynamic section, - then start a new segment rather than put a writable section in a - readonly segment. - - * configure.host: Set RPATH_ENVVAR. - - * Makefile.in: Rebuild dependencies. - - * elflink.c (_bfd_elf_create_linker_section): Remove unused - zero_section variable. - -Thu Feb 15 10:39:17 1996 H.J. Lu <hjl@zoom.com> - - * Makefile.in ($(srcdir)/bfd-in2.h): Rename target from bfd-in2.h. - ($(srcdir)/libbfd.h): Rename from libbfd.h. - ($(srcdir)/libcoff.h): Rename from libcoff.h. - -Wed Feb 14 16:29:07 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de> - - * ieee.c (ieee_write_expression): Only use an R variable for a - local symbol. Don't output a zero offset. Handle a zero address. - (SRC_MASK, PCREL_OFFSET): Define based on KEEPMINUSPCININST. - (rel32_howto, rel16_howto, rel8_howto): Use SRC_MASK and - PCREL_OFFSET. - (parse_expression): Don't try to handle multiple occurrences of a - P variable. Handle I variables differently from X variables. Fix - the order of minus expressions. - (ieee_slurp_external_symbols): Generate an I variable for an NN - record. Fix handling of ATI and ATX records. - (ieee_slurp_sections): Only set minimal section attributes. - Adjust them later, based on the section contents. - (ieee_object_p): Read in the file until just after the ME record. - Call ieee_slurp_section_data to set the section flags. - (do_one): Add iterations parameter. Only repeat the first load - item. Set the section and file reloc flags. - (ieee_slurp_section_data): Set section flags. Pass iterations to - do_one. - (ieee_canonicalize_reloc): Handle I variables. - (do_with_relocs): Only emit relocation size when necessary. - Increase MAXRUN to 127. Change ov to be assigned, and take - src_mask and pcrel_offset into account. - (ieee_write_data_part): Skip sections that are not loaded. - (ieee_write_external_part): Don't output optional last entry of WX - records. - (ieee_write_me_part): Make setting of me_record neater. - (ieee_generic_stat_arch_elt): Get the size of an archive element. - - * syms.c (stt): Add entries for zerovars, vars, and code. - - * elfcode.h (validate_reloc): New static function. - (write_relocs): Call validate_reloc for non ELF relocs. - - * elfxx-target.h (elf_symbol_leading_char): Define if not defined. - (TARGET_BIG_SYM): Use elf_symbol_leading_char. - (TARGET_LITTLE_SYM): Likewise. - - * config.bfd (m68*-*-psos*): New target. - -Tue Feb 13 15:56:22 1996 Bryan Ford <baford@snake.cs.utah.edu> - - * i386msdos.c: Remove some #if 0 code. - (msdos_write_object_contents): Don't include empty sections in the - size computation, regardless of their address. - -Tue Feb 13 15:36:37 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_relocate_section): Don't segfault if dynboj - is NULL, ie, the -r switch is used. - -Tue Feb 13 14:35:15 1996 Ian Lance Taylor <ian@cygnus.com> - - * reloc.c (BFD_RELOC_MIPS_GOT_HI16): Define. - (BFD_RELOC_MIPS_GOT_LO16): Define. - (BFD_RELOC_MIPS_CALL_HI16, BFD_RELOC_MIPS_CALL_LO16): Define. - * bfd-in2.h, libbfd.h: Rebuild. - * elf32-mips.c (mips_reloc_map): Map new relocs. - - * configure.host: Set HDLFLAGS for *-*-hpux with --enable-shared. - - * Makefile.in ($(SHLINK)): Check ts against $(SHLIB), not - $(SHLINK). - - * ieee.c (get_symbol): Set the section to bfd_abs_section. - (do_with_relocs): If EXEC_P is set and there are no relocs, use a - simple number for the section address, rather than an expression. - Limit the number of bytes between relocs to MAXRUN. - (ieee_write_me_part): Set me_record to the file offset after the - start address. - (ieee_write_processor): New static function. - (ieee_write_object_contents): Use ieee_write_processor. - -Fri Feb 9 10:53:00 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.host: Use ${CC-gcc} when testing for -rpath on SunOS. - - * coff-aux.c: Change include of aux.h to aux-coff.h. - -Thu Feb 8 14:01:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elf32-m68k.c (elf_m68k_relocate_section): For a R_68K_RELATIVE - relocation put the addend both in the reloc entry and the data. - (elf_m68k_finish_dynamic_symbol): Likewise. Mask out marker in - GOT offset value. - - * elf32-m68k.c (elf_m68k_relocate_section): If -Bsymbolic, resolve - a R_68K_PCxx reloc against a defined global symbol directly. - (elf_m68k_check_relocs): Don't count such a reloc. - - * elf32-m68k.c (elf_m68k_check_relocs): Don't record a symbol with - a PLTxx reloc as dynamic. Disallow PLTxxO reloc against a local - symbol for now, otherwise always record the symbol as dynamic. - (elf_m68k_adjust_dynamic_symbol): If a symbol with a PLTxx reloc - is not referenced by a dynamic object, and we are not making a - shared object, then don't make a PLT entry. If we do make a PLT - entry, make sure the symbol has been recorded as dynamic. - -Wed Feb 7 13:56:06 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.host: When making a shared library, set HLDFLAGS to - pass an appropriate -rpath option. Use the make variable SONAME - as the shared library soname, rather than computing it here. On - SunOS, build stamp-tshlink in place of $(SHLINK). - * Makefile.in (SONAME): New variable. - ($(SHLINK)): Make a link to the transformed name, as well. - (stamp-tshlink): New target. - (install): Skip stamp-tshlink during install. - -Wed Feb 7 13:37:39 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_add_symbol_hook): Do not assume that the - linker sections have been set up yet. - - * elf.c (make_mapping): Add an additional argument to suppress - making the first section include the program headers. - (map_sections_to_segments): If the user used -Ttext such that the - program headers are on a different page, do not set the flags - saying that this section includes the program headers. - -Tue Feb 6 14:04:49 1996 J.T. Conklin <jtc@rtl.cygnus.com> - - * configure.in (*-*-netbsd*): Set COREFILE to netbsd-core.c. - don't define TRAD_HEADER. - * configure: Rebuild. - - * netbsd-core.c: New file, support for NetBSD core files. - * hosts/*nbsd.h: Removed. - -Tue Feb 6 11:47:49 1996 Doug Evans <dje@charmed.cygnus.com> - - * reloc.c (BFD_RELOC_SPARC_[567]): New reloc types. - (BFD_RELOC_SPARC_LO7 reloc type): Deleted. - * libbfd.h, bfd-in2.h: Regenerated. - * elf32-sparc.c (_bfd_sparc_elf_reloc_type_lookup): Renamed from - bfd_elf32_bfd_reloc_type_lookup. - (reloc_type{,_names}): Deleted. - (_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table. - Add sparc64 relocs. - (sparc_reloc_map): Add sparc64 relocs. - (sparc_elf_notsupported_reloc): New static function. - (sparc_elf_wdisp16_reloc): New static function. - (elf32_sparc_check_relocs): Handle R_SPARC_WDISP{16,19}. - (elf32_sparc_relocate_section): Likewise. - (bfd_elf32_bfd_reloc_type_lookup): Define. - * elf64-sparc.c (sparc64_elf_wdisp16_reloc): Deleted. - (reloc_type{,_names}): Deleted. - (elf_sparc_howto_table): Deleted. - (sparc_reloc_map): Deleted. - (_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table. - (bfd_elf64_bfd_reloc_type_lookup): Change from function to #define. - -Tue Feb 6 12:12:22 1996 Ian Lance Taylor <ian@cygnus.com> - - * configure.host: Make SHLIB_CFLAGS include $(PICFLAG) on a - *-*-hpux* host. - - * Makefile.in (program_transform_name): New variable. - (install): Transform library name before installing it. - -Mon Feb 5 10:38:27 1996 Ian Lance Taylor <ian@cygnus.com> - - * archures.c (bfd_mach_i960_hx): Define. - * bfd-in2.h: Rebuild. - * cpu-i960.c (scan_960_mach): Accept machine "hx". - (MATRIX): Expand entries for HX. - (arch_info_struct): Add i960:hx entry. - * bout.c (b_out_set_arch_mach): Handle bfd_mach_i960_hx. - * coffcode.h (coff_set_arch_mach_hook): Handle F_I960HX. - (coff_set_flags): Handle bfd_mach_i960_hx. - - Support for building as a shared library, based on patches from - Alan Modra <alan@spri.levels.unisa.edu.au>: - * configure.in: Add AC_ARG_ENABLE for shared and commonbfdlib. - New substitutions: ALLLIBS, PICFLAG, SHLIB, SHLIB_CC, - SHLIB_CFLAGS, COMMON_SHLIB, PICLIST, SHLINK. - * configure: Rebuild. - * configure.host: If --enable-shared, adjust shared library stuff - based on the host. If the host is SunOS, and the linker supports - -rpath, set HLDFLAGS to use it. - * Makefile.in (ALLLIBS): New variable. - (PICFLAG, SHLIB, SHLIB_CC, SHLIB_CFLAGS): New variables. - (COMMON_SHLIB, SHLINK): New variables. - (.c.o): If PICFLAG is set, compile twice, once PIC, once normal. - (STAGESTUFF): Remove variable. - (all): Depend upon $(ALLLIBS) and @PICLIST@ rather than - $(TARGETLIB). - (stamp-ofiles): New target, like old ofiles target, but build - using a temporary file and move-if-change, and touch stamp-ofiles - when done. - (ofiles): Just depend upon stamp-ofiles. - (stamp-piclist, piclist): New targets. - ($(SHLIB), $(SHLINK)): New targets. - (targets.o, archures.o): Build twice if PICFLAG is set. - (do_mostlyclean): Remove pic/*.o. - (do_clean): Remove stamp-ofiles, $(SHLIB), $(SHLINK), piclist, and - stamp-piclist. - (do_distclean): Remove pic and stamp-picdir. - (install): Install shared libraries. - ($(OFILES)): Depend upon stamp-picdir. - (stamp-picdir): New target. - - * libcoff-in.h: Add comment reminding people that libcoff.h is a - generated file. - * libcoff.h: Rebuild. - - * elflink.h (elf_adjust_dynamic_symbol): Don't try to get the - flavour of a section with no owner. - - * elf32-mips.c (mips_elf_create_dynamic_sections): Clear - ELF_LINK_NON_ELF flag. - (mips_elf_create_got_section): Likewise. - - * elf.c: Revert last change, since it breaks dynamic linking. - * elf-bfd.h (struct elf_backend_data): Remove want_hdr_in_seg - field. - * elf32-mips.c (elf_backend_want_hdr_in_seg): Don't define. - * elfxx-target.h (elf_backend_want_hdr_in_seg): Don't define. - (elfNN_bed): Don't initialize want_hdr_in_seg field. - -Sun Feb 4 20:45:13 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf.c (assign_file_positions_for_segments): If the backend does - not want the elf header or the program headers in the address - space, do not include them in the calculations. - - * elf32-ppc.c (ppc_elf_additional_program_headers): New hook - function to determine if we need additional program headers. - (ppc_elf_modify_segment_map): Define as a NOP function for now. - (ppc_elf_create_linker_section): .sdata2 is a read-only section. - -Sat Feb 3 23:00:03 1996 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h: Move today's libcoff.h change into coffcode.h. - -Sat Feb 3 15:43:44 1996 Fred Fish <fnf@cygnus.com> - - * libcoff.h (bfd_coff_link_add_one_symbol): Combine macro args - back into one line. Some compilers (sunos 4.1.3 for example) - won't accept args split across more than one line. - -Fri Feb 2 11:42:15 1996 Steve Chamberlain <sac@slash.cygnus.com> - - * aclocal.m4 (BFD_BINARY_FOPEN): Understand cygwin32. - * configure: Regenerate. - -Fri Feb 2 12:12:16 1996 Jeffrey A Law (law@cygnus.com) - - * elf32-hppa.c (elf32_hppa_backend_symbol_table_processing): Don't - try to do arithmetic on a void *, cast it to a unsigned char * first. - -Thu Feb 1 16:04:06 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf-bfd.h (ELF_LINK_NON_ELF): Define. - * elf.c (_bfd_elf_link_hash_newfunc): Set elf_link_hash_flags to - ELF_LINK_NON_ELF. - * elflink.h (elf_link_add_object_symbols): Reset ELF_LINK_NON_ELF - flag for a newly defined symbol. - (NAME(bfd_elf,record_link_assignment)): Likewise. - (elf_adjust_dynamic_symbol): If ELF_LINK_NON_ELF is set, try to - set the DEF or REF_REGULAR flags correctly. - - * Makefile.in (bfd-in2.h): Make bfd.h, not protos, in docdir. - (libbfd.h, libcoff.h): Corresponding change. - - * elf32-i386.c (elf_i386_check_relocs): Don't record a symbol with - a PLT32 reloc as dynamic. - (elf_i386_adjust_dynamic_symbol): If a symbol with a PLT32 reloc - is not referenced by a dynamic object, and we are not making a - shared object, then don't make a PLT entry. If we do make a PLT - entry, make sure the symbol has been recorded as dynamic. - -Wed Jan 31 17:23:32 1996 Steve Chamberlain <sac@slash.cygnus.com> - - * coff-i386.c (coff_i386_reloc_type_lookup): Add BFD_RELOC_32_PCREL. - * config.bfd (i[345]86-*-win32): Becomes i[345]86-*-cygwin32. - (powerpcle-*-cygwin32): New. - * peicode.h (add_data_entry): Get address from vma. - -Wed Jan 31 16:23:57 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elflink.c (_bfd_elf_create_linker_section): If the symbol - attached to the section has already been created as an undefined - symbol, treat it as if it hasn't been created yet. - -Wed Jan 31 16:16:53 1996 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_bfd_final_link): Don't output initial dummy - symbol or section symbols if stripping all symbols and this is not - a relocateable link. Don't output the symbol string table if - there are no symbols. - (elf_link_flush_output_syms): Don't do anything if there are no - symbols to flush. - -Wed Jan 31 12:55:49 1996 Richard Henderson <rth@tamu.edu> - - * coff-aux.c: New file. - * hosts/m68kaux.h: New file. - * config.bfd (m68*-apple-aux*): New target. - * configure.in (m68*-apple-aux*): New native host. - (m68kaux_coff_vec): New vector. - * configure: Rebuild. - * targets.c (m68kaux_coff_vec): Declare. - * coffcode.h (bfd_coff_backend_data): Add field - _bfd_coff_link_add_one_symbol. - (bfd_coff_link_add_one_symbol): Define. - (compare_arelent_ptr): New static function if TARG_AUX. - (coff_write_relocs): If TARG_AUX, sort the relocs. - (coff_write_object_contents): Set A/UX aouthdr magic number. - (coff_link_add_one_symbol): Define if not defined. - (bfd_coff_std_swap_table): Initialize new field. - * libcoff.h: Rebuild. - * cofflink.c (coff_link_add_symbols): Call - bfd_coff_link_add_one_symbol rather than - _bfd_generic_link_add_one_symbol. - * coff-m68k.c (COFF_PAGE_SIZE): Don't define if already defined. - * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field. - * coff-mips.c (mips_ecoff_backend_data): Likewise. - * Makefile.in: Rebuild dependencies. - (BFD32_BACKENDS): Add coff-aux.o. - (BFD32_BACKENDS_CFILES): Add coff-aux.c. - -Wed Jan 31 11:37:46 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * elf32-m68k.c (elf_m68k_relocate_section): Fix R_68K_GOT* - relocation; ignore addend with R_68K_{GOT,PLT}*O relocation. - -Tue Jan 30 12:09:04 1996 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.in (do_maintainer_clean): Remove $(srcdir)/bfd-in2.h, - $(srcdir)/libbfd.h and $(srcdir)/libcoff.h. - (maintainer-clean): Warn about deleting special files. - (bfd-in2.h, libbfd.h, libcoff.h): New targets. - - * elf32-hppa.c (elf32_hppa_relocate_section): Handle indirect and - warning symbols correctly. - * elf32-i386.c (elf_i386_relocate_section): Likewise. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-mips.c (mips_elf_relocate_section): Likewise. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - - * syms.c (_bfd_stab_section_find_nearest_line): Add casts to avoid - warnings. - -Mon Jan 29 14:27:24 1996 Kim Knuttila <krk@cygnus.com> - - * libcoff-in.h: aligned newly exported names with bfd naming - conventions. Removed an erroneous define of POWERPC_LE_PE. - * libcoff.h: Rebuild. - * cofflink.c, coff-ppc.c: the above function name changes - -Mon Jan 29 13:06:28 1996 Ian Lance Taylor <ian@cygnus.com> - - From Basim Kadhim <kadhim@spock.cs.colorado.edu>: - * ecoff.c (struct extsym_info): Define. - (_bfd_ecoff_bfd_final_link): Pass a pointer to struct extsym_info - to ecoff_link_write_external. - (ecoff_link_write_external): Accept a struct extsym_info pointer. - Strip symbols when appropriate. - - Based on patches from Ronald F. Guilmette <rfg@monkeys.com>: - * syms.c (BSF_OBJECT): Define. - (bfd_print_symbol_vandf): Print 'O' for BSF_OBJECT. - * bfd-in2.h: Rebuild. - * elfcode.h (elf_slurp_symbol_table): Set BSF_OBJECT for an - STT_OBJECT symbol. - * elf.c (swap_out_syms): Only set type to STT_OBJECT if BSF_OBJECT - is set. - - * elf32-i386.c (elf_i386_relocate_section): If -Bsymbolic, when - copying relocs into a shared object, treat a defined global symbol - as a local symbol. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-mips.c (mips_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - - * elflink.h (elf_link_add_object_symbols): Only set weakdef to a - real defined symbol, not to a weak defined symbol. - -Mon Jan 29 11:34:36 1996 Kim Knuttila <krk@cygnus.com> - - * cofflink.c: removed the POWERPC_LE_PE hack, promoted some types - and made a few static functions externs. - - * coff-ppc.c (ppc_bfd_coff_final_link): new function, replaces the - POWERPC_LE_PE hack in cofflink. - - * libcoff-in.h: promoted the following from cofflink.c to allow - _bfd_coff_final_link to be overridden - STRING_SIZE_SIZE, - coff_debug_merge_element, struct coff_debug_merge_type, - coff_debug_merge_hash_entry, coff_debug_merge_hash_table, - coff_debug_merge_hash_table_init, coff_debug_merge_hash_table_free, - coff_debug_merge_hash_lookup, coff_link_section_info, - coff_final_link_info, coff_debug_merge_hash_newfunc, - coff_write_global_sym, coff_link_input_bfd, coff_reloc_link_order. - - * libcoff.h: re-gen'd - -Fri Jan 26 18:33:35 1996 Ian Lance Taylor <ian@cygnus.com> - - * syms.c: Include "bfdlink.h". - (struct stab_find_info): Define. - (_bfd_stab_section_find_nearest_line): New function. - * libbfd-in.h (_bfd_stab_section_find_nearest_line): Declare. - * libbfd.h: Rebuild. - * elf-bfd.h (struct elf_obj_tdata): Add line_info field. - * elf.c (_bfd_elf_find_nearest_line): Try calling - _bfd_stab_section_find_nearest_line before searching the ELF - symbol table. Find the closest STT_FUNC symbol, not the last one. - * libcoff-in.h (coff_data_type): Add line_info field. - * libcoff.h: Rebuild. - * coffgen.c (coff_find_nearest_line): Try calling - _bfd_stab_section_find_nearest_line before searching the COFF - symbol table. - * Makefile.in: Rebuild dependencies. - -Fri Jan 26 16:11:19 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (R_PPC_EMB_SDA21 relocations): Make relocation size - 4 bytes, so we get the correct value when updating the register - field in little endian mode. - -Thu Jan 25 12:14:16 1996 Ian Lance Taylor <ian@cygnus.com> - - * libcoff-in.h (struct xcoff_tdata): Remove toc_section and - entry_section fields. Add sntoc and snentry fields. - * libcoff.h: Rebuild. - * coffcode.h (coff_mkobject_hook): Initialize sntoc and snentry, - not toc_section and entry_section (the COFF file does not have any - sections at this point). - (coff_write_object_contents): Set o_snentry and o_sntoc from - snentry and sntoc rather than entry_section and toc_section. - * coff-rs6000.c (xcoff_copy_private_bfd_data): Copy sntoc and - snentry, not toc_section and entry_section. - * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't set - entry_section from hentry. - (xcoff_link_input_bfd): If a defined symbol has XCOFF_ENTRY set, - set snenty. - (xcoff_link_input_bfd): Set sntoc, not toc_section. - (xcoff_write_global_symbol): Get toc_section from sntoc, rather - than using toc_section directly. - - * archures.c: Add missing `.' in enum bfd_architecture. - * bfd-in2.h: Rebuild. - - * config.bfd (i[345]86-*-sco*elf*): Use bfd_elf32_i386_vec. From - Robert Lipe <robertl@arnet.com>. - -Thu Jan 25 12:08:51 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_size_dynamic_sections): Add .rela.sdata{,2} - to sections we allocate. Use bfd_zalloc to allocate initialial - sections, not bfd_alloc. - (ppc_elf_check_relocs): Remove BFD_ASSERTs for !shared from - SDA{,2}I16 relocations. - (ppc_elf_add_symbol_hook): Use the value of -G nn to determine - whether to put something in .sbss or not. - (ppc_elf_relocate_section): Add support for more relocations. Add - in sec->output_offset where appropriate. Make error messages - include the symbol name. - - * elflink.c (_bfd_elf_create_linker_section): Lookup symbol before - trying to add it to the symbol table, so _GLOBAL_OFFSET_TABLE_ - doesn't get redefined messages if -shared. - - * elflink.h (elf_create_pointer_linker_section) Only bump RELA - section if the rel_section field has been set up. - -Wed Jan 24 20:40:26 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_relocate_section): Fix typo in eabi - relocations. - -Wed Jan 24 10:38:34 1996 Doug Evans <dje@charmed.cygnus.com> - - * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Delete checking - of flags, only flags used are controlled by mach number. Bump up - output file mach number to highest of input file mach numbers. - (elf32_sparc_object_p): Watch for EF_SPARC_SUN_US1. - (elf32_sparc_final_write_processing): Set EF_SPARC_SUN_US1 if v8plusa. - - * config.bfd (sparc64-*-{sysv4*,solaris2*}): Comment out - bfd_elf64_sparc_vec support. - -Tue Jan 23 14:33:05 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_copy_private_bfd_data): Don't complain if - the embedded bit is set on some objects and not on others. Just - or it together. - (ppc_elf_relocate_section): Implement R_PPC_EMB_{SDA21,RELSDA} - relocations. - -Tue Jan 23 14:22:45 1996 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_new_section_hook): Don't try to align the - .stabstr section. - - * coffcode.h (coff_set_section_contents): Fix the handling of the - .lib section to work even if the entire section contents are - written at once. From Gvran Uddeborg <gvran@uddeborg.pp.se> and - Robert Lipe <robertl@arnet.com>. - -Mon Jan 22 18:45:51 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elflink.h (elf_finish_pointer_linker_section): Don't allocate - memory here for contents. - - * elf32-ppc.c (ppc_elf_relocate_section): Bump up _SDA_BASE_ and - _SDA2_BASE_ by 32768. - (ppc_elf_size_dynamic_sections): #if out PLT code which we haven't - started using. Allocate contents for .sdata and .sdata2 sections - also. - (ppc_elf_check_relocs): Use bfd_get_section_name in debug message, - rather than _name. - (ppc_elf_finish_dynamic_symbol): Remove code that attempted to - size _SDA{,2}_BASE_. - (ppc_elf_relocate_section): Change how sdata{,2} relocations are - done. - -Mon Jan 22 08:52:04 1996 Doug Evans <dje@charmed.cygnus.com> - - * elflink.h (elf_finish_pointer_linker_section): Fix typo. - - * archures.c (bfd_mach_sparc_v9): Renamed from bfd_mach_sparc64. - (bfd_mach_sparc_{v8plus,v8plusa}): Define. - (bfd_mach_sparc_v9a): Define. - (bfd_mach_sparc_v9_p): Define. - * bfd-in2.h: Regenerated. - * aoutx.h (aout,machine_type): bfd_mach_sparc64 renamed to - bfd_mach_sparc_v9. - * elf64-sparc.c (sparc64_elf_object_p): Likewise. - * config.bfd (sparc64-*-sysv4*,sparc64-*-solaris2*): Set targ_defvec - to bfd_elf32_sparc_vec. - * cpu-sparc.c (arch_info_struct): Renamed from sparc_arch_info. - Add v8plus{,a} support. - Add v9a support. - (sparc_compatible): New function. - * elf32-sparc.h: #include "elf/sparc.h". - (elf32_sparc_merge_private_bfd_data, elf32_sparc_object_p, - elf32_sparc_final_write_processing): New functions. - (bfd_elf32_bfd_merge_private_bfd_data, elf_backend_object_p, - elf_backend_final_write_processing): Define. - -Mon Jan 22 11:21:51 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf-bfd.h (struct elf_link_hash_entry): Add - linker_section_pointer field. - (enum elf_linker_section_enum): Enumeration for new way of - creating linker dynamic sections and symbols. - (elf_linker_section{,_pointers}): New structures for creating - dynamic sections and symbols. - (elf_obj_tdata): Add linker_section_pointers and linker_section - fields. - (elf_local_ptr_offsets,elf_linker_section): New accessor macros. - (_bfd_elf_create_linker_section): New declarations. - (_bfd_elf_find_pointer_linker_section): Ditto. - (bfd_elf{32,64}_{create,finish}_pointer_linker_section): Ditto. - (_bfd_elf_make_linker_section_rela): Ditto. - - * elf.c (_bfd_elf_link_hash_newfunc): Initialize new fields. - - * elf32-ppc.c (ppc_elf_create_dynamic_sections): Delete. - (ppc_elf_create_linker_section): New function to create the - sections .got, .sdata, and .sdata2. - (ppc_elf_size_dynamic_sections): Zap .rela.{sdata,sdata2} if - needed. - (ppc_elf_check_relocs): Support more of the eabi relocations. - (ppc_elf_relocate_section): Ditto. - (ppc_elf_finish_dynamic_symbols): Adjust _SDA{,2}_BASE_ by 32768 - if the .sdata{,2} + .sbss{,2} section size is > 32k. - - * elflink.h (elf_create_pointer_linker_section): New function to - create initialized pointers in dynamic linker sections. - (elf_finish_pointer_linker_section): Actually intialize the - pointers created above. - - * elfcode.h (bfd_elf{32,64}_create_pointer_linker_section): New - macros to provide both 32 and 64 bit versions of - elf_create_pointer_linker_section. - (bfd_elf{32,64}_finish_pointer_linker_section): New macros to - provide both 32 and 64 bit versions of - elf_finish_pointer_linker_section. - - * elflink.c (_bfd_elf_create_linker_section): New function to - create a linker section. - (_bfd_elf_find_pointer_linker_section): Find a unique pointer to a - given address in the linker pointer offsets created for a given - symbol. - (_bfd_elf_make_linker_section_rela): Make a RELA section - corresponding to the generated linker section. - -Sat Jan 20 08:36:10 1996 Doug Evans <dje@canuck.cygnus.com> - - * elf32-sparc.c (ELF_MACHINE_ALT1): Define. - -Thu Jan 18 18:25:34 1996 Kim Knuttila <krk@cygnus.com> - - * coff-ppc.c (coff_ppc_relocate_section): changed TOCDEFN relocs. - (coff_ppc_relocate_section): Handle special values for gcc built dlls. - (dump_toc): fix diagnosing code to identify out-of-toc-bounds entries. - Also begin the toc at 4 as an eye catcher ('31313131' marks the first - toc entry in an objdump) for now. - (ppc_do_last, ppc_get_last): New function - needed to save processing - the toc owner to the end. - (ppc_coff_swap_sym_in_hook): Removed an incorrect hack for doing the - toc owner last. - - * cofflink.c (_bfd_coff_final_link): Added a new hack to keep the - toc owner from being done till last. Must define POWERPC_LE_PC - to enable it. - - * coffcode.h (coff_set_alignment_hook): alignment setting for .stab - - * peicode.h (coff_swap_scnhdr_out): set section flags for stab/str - to INFO. - (coff_swap_aouthdr_out): Removed a non-working hack for computing the - SizeOfImage for PowerPC. Ignore the size of the .junk section. - -Thu Jan 18 17:42:12 1996 Ian Lance Taylor <ian@cygnus.com> - - * elfcore.h: Include <signal.h> before <sys/procfs.h>. - -Wed Jan 17 12:40:14 1996 Ian Lance Taylor <ian@cygnus.com> - - * cpu-powerpc.c (arch_info_struct): Change last entry to not point - back to first. - (bfd_powerpc_arch): Point at first entry in arch_info_struct. - -Tue Jan 16 15:10:49 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (assign_file_positions_for_segments): Don't increment file - offset for a segment which contains no loadable sections. - -Mon Jan 15 17:46:27 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * reloc.c: Add new PowerPC relocations. - * {bfd-in2,libbfd}.h: Regenerate. - - * elf32-ppc.c (ppc_elf_howto_raw): Add more PPC relocations. - (ppc_elf_reloc_type_lookup): Lookup new relocations. - -Mon Jan 15 14:29:44 1996 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h (howto_table_ext): Fix RELOC_BASE10 and RELOC_BASE22 - entries. - - * sunos.c (sunos_scan_ext_relocs): Don't fail assert if - info->shared. - - * coffgen.c (coff_find_nearest_line): Don't try to cache - information in sections that are not owned by a BFD. From Richard - Henderson <richard@atheist.tamu.edu>. - - * elf32-mips.c: Numerous changes to dynamic linking code, mostly - from Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>. - * elflink.h (elf_link_output_extsym): Remove special check for - _rld_new_interface. - - * ecoffswap.h: Add prototypes for static functions. - -Sun Jan 14 21:36:08 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_{unsupported,std}_reloc): Remove functions. - (ppc_elf_howto_raw): Remove ppc_elf_{unsupported,std}_reloc - references. - (ppc_elf_relocate_section): No longer allow .sdata/.sbss sections - to satisfy a TOC16 relocation. Rewrite unsupported relocation - support. Begin support for R_PPC_SDA{2,}REL. - -Sat Jan 13 09:36:52 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_create_dynamic_sections): New function to - create the .got and .got.neg sections. - (ppc_elf_size_dynamic_sections): Call it. - (ppc_elf_check_relocs): Call it. - (ppc_elf_size_dynamic_sections): Support .got.neg, just like .got. - (ppc_elf_check_relocs): Add error messages for relocations we - don't yet support. Do not include R_PPC_SDAREL16 like a GOT - relocation. - -Fri Jan 12 15:27:59 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_fake_sections): Define, and handle the new - section flags for V.4 and eabi. - -Fri Jan 12 13:59:16 1996 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (assign_file_positions_for_segments): If a segment - contains no sections, don't mark it as readable. - - * elf-bfd.h (_bfd_elf_section_from_bfd_section): Declare. - * elfcode.h (_bfd_elf_section_from_bfd_section): Don't declare. - - * elf.c (_bfd_elf_print_private_bfd_data): Dump contents of - dynamic section, if there is one. - * elf-bfd.h (struct elf_size_info): Add swap_dyn_in field. - (bfd_elf32_swap_dyn_in): Change type of second parameter to PTR. - (bfd_elf64_swap_dyn_in): Likewise. - * elfcode.h (elf_swap_dyn_in): Change type of second parameter to - PTR. - (NAME(_bfd_elf,size_info)): Initialize swap_dyn_in field. - - * elf32-i386.c (elf_i386_size_dynamic_sections): Don't create a - DT_TEXTREL entry because of .rel.plt. From Martin Pirker - <pirker@eiunix.tuwien.ac.at>. - -Thu Jan 11 17:06:14 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * section.c (SEC_{EXCLUDE,SORT_ENTRIES}): New section flags for - PowerPC V.4 and eabi. - * bfd-in2.h: Regenerate. - * libfd.h: Regenerate. - - * elfxx-target.h (TARGET_{BIG,LITTLE}_SYM): Add new flags. - - * elf32-ppc.c (ppc_elf_section_from_shdr): Support SHT_ORDERED - section type and SHF_EXCLUDE section flag, turning them into the - appropriate bfd section flag. - -Thu Jan 11 11:23:30 1996 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_add_symbols): Create the special - sections if we see a DYNAMIC object, in case that is the only - XCOFF input object we see. - - * elf32-mips.c: Extensive changes for a start at dynamic linking - support, from Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>. - - * elf-bfd.h (struct elf_backend_data): Add type_change_ok field. - (struct elf_backend_data): Remove - elf_backend_create_program_headers field. Add - elf_backend_additional_program_headers and - elf_backend_modify_segment_map fields. - * elfxx-target.h (elf_backend_type_change_ok): Define if not - defined. - (elf_backend_additional_program_headers): Likewise. - (elf_backend_modify_segment_map): Likewise. - (elf_backend_create_program_headers): Don't define. - (elfNN_bed): Change to account for field changes. - * elf.c (assign_file_positions_for_segments): Call new - modify_segment_map backend function. Don't call old - create_program_headers backend function. - (get_program_header_size): Call additional_program_headers rather - than create_program_headers. - * elflink.h (elf_link_add_object_symbols): Initialize - type_change_ok from new backend field. - (elf_link_output_extsym): Don't warn if _rld_new_interface is - defined. - (elf_reloc_link_order): Treat a reloc against a defined symbol as - a reloc against the appropriate section. - - * elf-bfd.h (struct bfd_elf_section_data): Add tdata field. - (struct elf_obj_tdata): Rename ppc_flags_init field to flags_init. - (elf_flags_init): Rename from elf_ppc_flags_init. - * elf32-ppc.c (ppc_elf_set_private_flags): Use elf_flags_init, not - elf_ppc_flags_init. - (ppc_elf_copy_private_bfd_data): Likewise. - (ppc_elf_merge_private_bfd_data): Likewise. - - * elf32-m68k.c (howto_table): Change src_mask to 0 for all - relocation entries. - -Tue Jan 9 15:22:53 1996 David Mosberger-Tang <davidm@azstarnet.com> - - * coff-alpha.c (alpha_relocate_section): During final link, allow - output .lita section to be bigger than 64k by adjusting gp value - on a per-input section basis. - * libecoff.h (struct ecoff_tdata): Add issued_multiple_gp_warning - field. - (struct ecoff_section_tdata): Add gp field. - -Tue Jan 9 12:00:36 1996 Ian Lance Taylor <ian@cygnus.com> - - Handle Alpha ECOFF changes in OSF/1 3.2. - * libecoff.h (struct ecoff_backend_data): Add get_elt_at_filepos - field. - * coff-alpha.c: Include "aout/ar.h". - (alpha_ecoff_get_relocated_section_contents): Don't require an - ALPHA_R_IGNORE reloc after an ALPHA_R_GPDISP reloc, since OSF/1 - 3.2 doesn't generate one. - (alpha_relocate_section): Likewise. - (alpha_ecoff_slurp_armap): Define. - (alpha_ecoff_slurp_extended_name_table): Define. - (alpha_ecoff_construct_extended_name_table): Define. - (alpha_ecoff_truncate_arname): Define. - (alpha_ecoff_write_armap): Define. - (alpha_ecoff_generic_stat_arch_elt): Define. - (alpha_ecoff_update_armap_timestamp): Define. - (ARFZMAG): Define. - (alpha_ecoff_read_ar_hdr): New static function. - (alpha_ecoff_get_elt_at_filepos): New static function. - (alpha_ecoff_openr_next_archived_file): New static function. - (alpha_ecoff_get_elt_at_index): New static function. - (alpha_ecoff_backend_data): Initialize get_elt_at_filepos field. - (ecoffalpha_little_vec): Change BFD_JUMP_TABLE_ARCHIVE from - _bfd_ecoff to alpha_ecoff. - * ecoff.c (ecoff_link_add_archive_symbols): Use get_elt_at_filepos - field from backend structure, rather than always calling - _bfd_get_elt_at_filepos. - * coff-mips.c (mips_ecoff_backend_data): Initialize - get_elt_at_filepos field. - * archive.c (_bfd_generic_read_ar_hdr_mag): New function, copied - from _bfd_generic_read_ar_hdr with minor changes. - (_bfd_generic_read_ar_hdr): Use _bfd_generic_read_ar_hdr_mag. - * libbfd-in.h (_bfd_generic_read_ar_hdr_mag): Declare. - * libbfd.h: Rebuild. - - * bfd-in.h (BFD_IN_MEMORY): Define. - * libbfd-in.h (struct bfd_in_memory): Define. - * libbfd.c (bfd_read): Handle BFD_IN_MEMORY flag. - (bfd_get_file_window): Don't try to map a BFD_IN_MEMORY file. - (bfd_write, bfd_stat): Abort if BFD_IN_MEMORY is set. - (bfd_tell, bfd_flush, bfd_seek): Handle BFD_IN_MEMORY flag. - * bfd.c (struct _bfd): Change iostream field from char * to PTR. - (bfd_get_size): Handle BFD_IN_MEMORY flag. - * cache.c (bfd_cache_close): Ignore BFD_IN_MEMORY files. - (bfd_open_file): Cast to PTR, not char *, when setting iostream. - (bfd_cache_lookup_worker): Abort if BFD_IN_MEMORY is set. - * opncls.c (bfd_fdopenr): Cast to PTR, not char *, when setting - iostream. - (bfd_openstreamr): Likewise. - * aoutx.h (NAME(aout,some_aout_object_p)): Only fstat iostream if - BFD_IN_MEMORY is not set. - * riscix.c (riscix_some_aout_object_p): Likewise. - * bfd-in2.h, libbfd.h: Rebuild. - - * targets.c (bfd_target): Add _bfd_get_elt_at_index field. - (BFD_JUMP_TABLE_ARCHIVE): Add _get_elt_at_index. - (bfd_get_elt_at_index): Define. - * archive.c (_bfd_generic_get_elt_at_index): Rename from - bfd_get_elt_at_index. Change index parameter from int to - symindex. - * libbfd-in.h (_bfd_generic_get_elt_at_index): Declare. - (_bfd_noarchive_get_elt_at_index): Define. - (_bfd_archive_bsd_get_elt_at_index): Define. - (_bfd_archive_coff_get_elt_at_index): Define. - * bfd-in2.h, libbfd.h: Rebuild. - * aout-target.h (MY_get_elt_at_index): Define if not defined. - * coff-rs6000.c (xcoff_get_elt_at_index): Define. - * ieee.c (ieee_get_elt_at_index): Define. - * libecoff.h (_bfd_ecoff_get_elt_at_index): Define. - * oasys.c (oasys_get_elt_at_index): Define. - * som.c (som_get_elt_at_index): Define. - - * ecoff.c (_bfd_ecoff_find_nearest_line): Don't restrict line - numbers to the .text section. - -Mon Jan 8 17:00:57 1996 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c (ieee_write_debug_part): Change return type to boolean. - If there is a SEC_DEBUGGING section, get the contents of the debug - information part from it. - (ieee_set_section_contents): Store the contents of a SEC_DEBUGGING - section in memory. - (ieee_write_object_contents): Check ieee_write_debug_part return. - -Thu Jan 4 17:12:37 1996 Fred Fish <fnf@cygnus.com> - - * config.bfd (i[345]86-*-freebsd*): Add target. - * configure.in (i386freebsd_vec): Add vec. - * configure: Regenerate. - * Makefile.in (BFD32_BACKENDS): Add i386freebsd.o. - (BFD32_BACKENDS_CFILES): Add i386freebsd.c. - Rebuild dependencies.. - * freebsd.h: New file. - * i386freebsd.c: New file. - * targets.c (i386freebsd_vec): Declare. - (bfd_target_vector): Add i386freebsd_vec. - * i386linux.c (SEGMENT_SIZE): Define as TARGET_PAGE_SIZE - * i386netbsd.c (SEGMENT_SIZE): Define as TARGET_PAGE_SIZE - -Thu Jan 4 16:27:46 1996 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c (ieee_slurp_debug): New static function. - (ieee_object_p): Call it. - (ieee_slurp_section_data): Skip debugging sections. - (ieee_get_reloc_upper_bound): Likewise. - (ieee_get_section_contents): Likewise. - (ieee_canonicalize_reloc): Likewise. - (ieee_write_section_part): Likewise. - (ieee_write_debug_part): Likewise. - (ieee_write_data_part): Likewise. - (init_for_output): Likewise. - -Wed Jan 3 19:42:47 1996 Michael Meissner <meissner@wogglebug.tiac.net> - - * elf32-ppc.c (ppc_elf_relocate_section): Make @GOT relocations - work. - (ppc_elf_howto_raw): Just use bfd_elf_generic_reloc for all howto - relocs, since ppc_elf_relocate_section handles the linker case. - (ppc_elf_{addr16_ha,got16,toc16,brtaken}_reloc): Delete, no longer - used. - (ppc_elf_{addr16_ha,got16,toc16,brtaken}_inner): Merge these into - ppc_elf_relocate_section since that is now the only caller. - (ppc_elf_relocate_section): Ditto. - -Wed Jan 3 15:11:30 1996 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_write_object_contents): If we don't know the - section of the entry point for an XCOFF executable, always set the - entry address to -1. - -Tue Jan 2 14:17:15 1996 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf.c (bfd_section_from_shdr): Add support for note sections. - -Tue Jan 2 13:10:25 1996 Ian Lance Taylor <ian@cygnus.com> - - * bfd-in.h (struct _symbol_info): Add stab_type field. - * bfd-in2.h: Rebuild. - * aoutx.h (NAME(aout,get_symbol_info)): Set stab_type. - - * elf32-ppc.c: Remove trailing newline from calls to - _bfd_error_handler. - (ppc_elf_merge_private_bfd_data): Only warn about endianness - difference if target endianness is known. - -Thu Dec 21 12:43:49 1995 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_howto_raw): Add a phony reloc to handle the - old style TOC16 references without using R_PPC_GOT. - (ppc_reloc_type): Ditto. - (ppc_elf_reloc_type_lookup): Add support for TOC16. - (ppc_elf_toc16_inner): Renamed from ppc_elf_got16_inner. - (ppc_elf_toc16_reloc): Renamed from ppc_elf_toc16_reloc. - (ppc_elf_got16_{inner,reloc}): Stubs for real GOT support. - (ppc_elf_check_relocs): New function for GOT/PLT support that is - work in progress. - (ppc_elf_adjust_dynamic_symbol): Ditto. - (ppc_elf_adjust_dynindx): Ditto. - (ppc_elf_size_dynamic_sections): Ditto. - (ppc_elf_finish_dynamic_symbol): Ditto. - (ppc_elf_finish_dynamic_sections): Ditto. - (ELF_DYNAMIC_INTERPRETER): Define. - -Wed Dec 20 19:14:18 1995 Ken Raeburn <raeburn@cygnus.com> - - * elf.c (copy_private_bfd_data): When attaching sections to - segments ignore sections that won't be allocated. Patch from - Andreas Schwab. - -Tue Dec 19 20:01:43 1995 Ken Raeburn <raeburn@cygnus.com> - - * config.bfd: Match on m68k-cbm-* only if OS doesn't match - anything else. - -Tue Dec 19 16:38:59 1995 Ian Lance Taylor <ian@cygnus.com> - - * coff-i960.c (CALC_ADDEND): Define. - (coff_i960_relocate_section): Add the input section VMA to the - addend for PC relative relocs. - -Sun Dec 17 20:11:55 1995 Kim Knuttila <krk@cygnus.com> - - * peicode.h (pe_print_pdata): Must test the entire entry for zero - to correctly terminate. - -Fri Dec 15 12:05:57 1995 Ian Lance Taylor <ian@cygnus.com> - - * targets.c (enum bfd_endian): Define. - (bfd_target): Rename byteorder_big_p to byteorder, and change it - from boolean to enum bfd_endian. Change header_byteorder_big_p - correspondingly. - * bfd-in.h (bfd_big_endian, bfd_little_endian): New macros. - (bfd_header_big_endian, bfd_header_little_endian): New macros. - * bfd-in2.h: Rebuild. - * All targets: Change initialization of byteorder and - header_byteorder to use enum bfd_endian values rather than - booleans. - * All files: Change all references to byteorder_big_p and - header_byteorder_big_p to use new bfd_*_endian macros. - - * coffgen.c (make_a_section_from_file): Set lma to s_paddr, not - s_vaddr. - * coffcode.h (coff_write_object_contents): Set s_paddr to lma, not - vma. - * ecoff.c (_bfd_ecoff_write_object_contents): Likewise. - -Fri Dec 15 07:32:09 1995 steve chamberlain <sac@slash.cygnus.com> - - * pe[i]-i386.c (TARGET_UNDERSCORE): Define to '_'. - -Thu Dec 14 13:45:37 1995 Ian Lance Taylor <ian@cygnus.com> - - * ieee.c: Lots of minor cleanups. Make many functions return - errors rather than calling abort. Also: - (ieee_write_twobyte): Remove; change callers to call existing - ieee_write_2bytes function. - (ieee_write_expression): Don't output the section twice when - outputting a local symbol. Don't emit an extraneous zero if there - is only one term. - (ieee_slurp_sections): Set the lma as well as the vma. - (ieee_archive_p): Use bfd_alloc_grow rather than an obstack. - - * ihex.c (ihex_set_arch_mach): Don't accept any architecture, just - a recognized one or bfd_arch_unknown. - (ihex_get_symtab_upper_bound): Define as bfd_0l, to permit objcopy - to succeed. - (ihex_get_symtab): Likewise. - -Wed Dec 13 15:44:06 1995 Ian Lance Taylor <ian@cygnus.com> - - * aoutx.h: Include <ctype.h>. - (struct aout_link_includes_table): Define. - (struct aout_link_includes_totals): Define. - (struct aout_link_includes_entry): Define. - (aout_link_includes_lookup): Define macro. - (struct aout_final_link_info): Add includes field. - (aout_link_includes_newfunc): New static function. - (NAME(aout,final_link)): Initialize includes hash table. - (aout_link_write_symbols): Eliminate duplicate N_BINCL entries. - -Wed Dec 13 10:52:14 1995 Stan Shebs <shebs@andros.cygnus.com> - - * mpw-config.in: Match on mips-*-* instead of mips-idt-ecoff. - -Wed Dec 13 11:07:45 1995 Kim Knuttila <krk@cygnus.com> - - * coff-ppc.c (coff_ppc_relocate_section): removed debugging code. - -Tue Dec 12 17:42:06 1995 Kim Knuttila <krk@cygnus.com> - - * peicode.h (pe_print_reloc): New function to dump the .reloc section. - (pe_print_private_bfd_data): call pe_print_reloc. - * coffcode.h (coff_set_alignment_hook): .reloc section alignment. - * coff-ppc.c (in_reloc_p): Added missing non-eligible relocs. Spiffed - up some debugging as well. - -Tue Dec 12 11:34:23 1995 Ian Lance Taylor <ian@cygnus.com> - - * config.bfd: Handle sparc-*-elf*. From Ronald F. Guilmette - <rfg@monkeys.com>. - -Fri Dec 8 17:47:07 1995 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Set section_count to 0 - when setting sections to NULL. - -Wed Dec 6 17:05:37 1995 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (struct xcoff_loader_info): Add export_defineds - field. - (bfd_xcoff_size_dynamic_sections): Add export_defineds parameter. - (xcoff_build_ldsyms): If export_defineds is set, set XCOFF_EXPORT - for all symbols. - * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration. - * bfd-in2.h: Rebuild. - -Mon Dec 4 16:40:47 1995 Kim Knuttila <krk@cygnus.com> - - * coffcode.h (coff_set_alignment_hook): Removed some debugging printf's - -Mon Dec 4 11:25:39 1995 Ian Lance Taylor <ian@cygnus.com> - - * ihex.c (ihex_scan): Handle record types 4 and 5. - (ihex_object_p): Permit types 4 and 5. - (ihex_set_section_contents): Remove check for out of range - addresses. - (ihex_write_object_contents): Generate types 4 and 5. - - * elflink.h (elf_link_output_extsym): Just ignore warning and - indirect references to symbols which don't really exist. - -Sun Dec 3 19:00:27 1995 Kim Knuttila <krk@cygnus.com> - - * peicode.h (pe_print_idata): Minor format fixes - (pe_print_edata): New function. Under private printing, this formats - the edata section of a PE file. - (pe_print_private_bfd_data): Added call to pe_print_edata. - -Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk) - - * aout-arm.c (MY_swap_std_reloc_out): Use KEEPIT to get the symbol - index, don't call stoi. - -Fri Dec 1 14:46:51 1995 Ian Lance Taylor <ian@cygnus.com> - - * srec.c (srec_scan): Set lma as well as vma. - - * ihex.c: New file; support for Intel Hex format. - * targets.c (enum bfd_flavour): Add bfd_target_ihex_flavour. - (ihex_vec): Declare. - (bfd_target_vector): Always include ihex_vec. - * bfd.c (struct _bfd): Add ihex_data field to tdata union. - * Makefile.in: Rebuild dependencies. - (BFD_LIBS): Add ihex.o - (BFD_LIBS_CFILES): Add ihex.c. - * bfd-in2.h: Rebuild. - - * elf.c (assign_file_positions_for_segments): Sort the sections in - each segment. - (get_program_header_size): Return the right size if segment_map is - not NULL. - (copy_private_bfd_data): Don't bother to sort the sections. - - * bfd.c (bfd_record_phdr): New function. - * bfd-in.h (bfd_record_phdr): Declare. - * bfd_in2.h: Rebuild. - - * elf32-sparc.c (elf32_sparc_relocate_section): Remove bogus - BFD_ASSERT. - - * libbfd.c (bfd_malloc, bfd_realloc): New functions. - (bfd_zmalloc): Return PTR, not char *. Take size_t, not - bfd_size_type. - * libbfd-in.h (bfd_malloc, bfd_realloc): Declare. - (bfd_zmalloc): Change declaration. - * libbfd.h: Rebuild. - * Many files: Use bfd_malloc and bfd_realloc rather than malloc - and realloc. Don't set bfd_error_no_memory if they fail. - -Thu Nov 30 19:32:26 1995 Kim Knuttila <krk@cygnus.com> - - * coff-ppc.c: Added macros to tidy up toc cell treatment. Numerous - uses as well. Added a new howto to deal with TOCREL16 relocs that - are TOCDEFN as well. - (coff_ppc_relocate_section): Expanded treatment of ADDR32NB relocs - to handle RVA relocs from dlltool. - (ppc_coff_rtype2howto): TOCDEFN reloc addition. - (coff_ppc_rtype_to_howto): TOCDEFN reloc addition. - (ppc_coff_reloc_type_lookup): TOCDEFN reloc addition. - - * coffcode.h (coff_set_alignment_hook): check idata$X sections - to get the right section alignment. - -Thu Nov 30 16:48:18 1995 Ian Lance Taylor <ian@cygnus.com> - - * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on - p_paddr if p_paddr is zero. - (make_mapping): Set includes_filehdr and includes_phdrs for first - PT_LOAD segment. - (map_sections_to_segments): Set includes_phdrs for PT_PHDR - segment. - (assign_file_positions_for_segments): Handle includes_filehdr and - includes_phdrs. Remove special handling of PT_PHDR and first - PT_LOAD segments. - (copy_private_bfd_data): Set includes_filehdr and includes_phdr - when appropriate. Remove special handling of PT_PHDR segment. - Use a more complex condition for when a section is included in a - segment to handle Solaris linker oddities. - -Thu Nov 30 11:17:33 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de> - - * coff-m88k.c (howto_table): Reformatted for easier reading; - special_function now points to new function m88k_special_reloc. - (howto_hvrt16): Function previously used for handling HVRT16 relocs - removed. - (rtype2howto): Do not add reloc's r_offset to the addend, this will - be done correctly by m88k_special_reloc. - (reloc_processing): New function to be used by RELOC_PROCESSING. - (RELOC_PROCESSING): Define to call reloc_processing. - -Wed Nov 29 12:42:36 1995 Ian Lance Taylor <ian@cygnus.com> - - * peicode.h (pe_print_idata): Call malloc rather than xmalloc. - (pe_print_pdata): Likewise. - - * opncls.c (bfd_alloc_by_size_t): Set bfd_error_no_memory if - obstack_alloc fails. - (bfd_alloc_finish): Set bfd_error_no_memory if obstack_finish - fails. - * libbfd.c (bfd_zmalloc): Set bfd_error_no_memory if malloc fails. - * Many files: don't set bfd_error_no_memory if one of the above - routines fails. - - * elf.c (assign_file_positions_for_segments): Don't adjust p_paddr - if p_paddr_valid is set. - (copy_private_bfd_data): New static function. - (_bfd_elf_copy_private_section_data): Call copy_private_bfd_data. - - * elf.c (assign_file_positions_for_segments): Fix case where extra - program headers were allocated. - - * elf.c (_bfd_elf_print_private_bfd_data): New function. - * elf-bfd.h (_bfd_elf_print_private_bfd_data): Declare. - * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define to - _bfd_elf_print_private_bfd_data. - - * coff-alpha.c (alpha_ecoff_swap_reloc_in): Don't abort if - r_symndx is RELOC_SECTION_NONE for an ALPHA_R_IGNORE reloc. - Change a RELOC_SECTION_LITA symndx to RELOC_SECTION_ABS. - (alpha_ecoff_swap_reloc_out): Change RELOC_SECTION_ABS to - RELOC_SECTION_LITA for ALPHA_R_IGNORE. - (alpha_adjust_reloc_out): For ALPHA_R_IGNORE, don't change - RELOC_SECTION_ABS to RELOC_SECTION_NONE. - -Tue Nov 28 16:59:50 1995 Ian Lance Taylor <ian@cygnus.com> - - * elf-bfd.h (struct elf_obj_tdata): Add segment_map field. - * elf.c (make_mapping): New static function. - (map_sections_to_segments): New static function. - (elf_sort_sections): New static function. - (assign_file_positions_for_segments): New static function. - (map_program_segments): Remove. - (get_program_header_size): Remove sorted_hdrs, count, and - maxpagesize parameters. Simplify. - (assign_file_positions_except_relocs): When generating an - executable, use assign_file_positions_for_segments. - (elf_sort_hdrs): Remove. - (_bfd_elf_sizeof_headers): Remove eliminated parameters from call - to get_program_header_size. - -Mon Nov 27 12:27:46 1995 Ian Lance Taylor <ian@cygnus.com> - - * hp300hpux.c (MY(callback)): Set lma as well as vma. - - * configure, config.in: Regenerate with autoconf 2.7. - - * elf32-i386.c (elf_backend_plt_readonly): Set correctly, to 1. - * elf32-sparc.c (elf_backend_plt_readonly): Set correctly, to 0. - -Wed Nov 22 12:02:09 1995 Ian Lance Taylor <ian@cygnus.com> - - * ecoff.c (_bfd_ecoff_new_section_hook): Handle .rconst section. - (ecoff_sec_to_styp_flags): Likewise. - (_bfd_ecoff_styp_to_sec_flags): Handle STYP_RCONST. - (ecoff_set_symbol_info): Handle scRConst. - (ecoff_slurp_reloc_table): Handle RELOC_SECTION_RCONST. - (ecoff_compute_section_file_positions): Handle .rconst section. - (_bfd_ecoff_write_object_contents): Likewise. - (ecoff_link_check_archive_element): Handle scRConst. - (ecoff_link_add_externals): Likewise. - (ecoff_link_write_external): Handle .rconst section. - (ecoff_reloc_link_order): Likewise. - * ecofflink.c (bfd_ecoff_debug_accumulate): Handle scRConst. - * coff-alpha.c (alpha_convert_external_reloc): Handle .rconst - section. - (alpha_relocate_section): Handle RELOC_SECTION_RCONST. - - * sunos.c (sunos_scan_dynamic_symbol): Only set written if the - DEF_DYNAMIC flag is set. - -Tue Nov 21 13:25:29 1995 Ken Raeburn <raeburn@cygnus.com> - - * host-aout.c: If TRAD_HEADER is defined, include it. - -Tue Nov 21 13:03:57 1995 Ian Lance Taylor <ian@cygnus.com> - - * aclocal.m4 (AC_PROG_CC): Remove local definition. - (BFD_BINARY_FOPEN): Require AC_CANONICAL_SYSTEM. - (BFD_NEED_DECLARATION): New function. - * configure.in: Use BFD_NEED_DECLARATION. - * acconfig.h: Put NEED_DECLARATION_* in @TOP@ section. - * configure, config.in: Rebuild with autoconf 2.6. - - * xcofflink.c (bfd_xcoff_size_dynamic_sections): Clear - special_sections before returning when called with a non XCOFF - BFD. - - * coffgen.c (coff_renumber_symbols): Sort common symbols with - global symbols. - - * coffcode.h (coff_compute_section_file_positions): Only pad the - previous section to force file alignment when creating an - executable. - -Mon Nov 20 14:54:09 1995 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_compute_section_file_positions): If - RS6000COFF_C, set up the .debug section. - - * xcofflink.c (xcoff_link_input_bfd): Adjust the TOC anchor value - if it is not large enough to accomodate the entire TOC area with - signed 16 bit offsets. - (xcoff_write_global_symbol): Handle negative TOC offsets in global - linkage code. - (_bfd_ppc_xcoff_relocate_section): Adjust relocations against a - TOC anchor to use the TOC value used in the output file. - -Sat Nov 18 18:01:41 1995 Ian Lance Taylor <ian@cygnus.com> - - * coffgen.c (_bfd_coff_get_external_symbols): Cast malloc return. - (_bfd_coff_read_string_table): Likewise. - -Sat Nov 18 19:43:04 1995 Richard Earnshaw (rearnsha@armltd.co.uk) - - * pe-arm.c: Fix typos. - * coff-arm.c: Likewise. - -Fri Nov 17 16:22:04 1995 Kim Knuttila <krk@cygnus.com> - - * coff-ppc.c (list_ele): Added "cat"egory member. - (record_toc): New category parameter (priv or pub). - (ppc_record_toc_entry): Check to see if toc bounds exceeded. - (ppc_process_before_allocation): Removed embrionic data-in-toc from - the mainline. It addes extra toc cells in error. - (ppc_coff_swap_sym_in_hook): Added some documentation. - (dump_toc): Can now diagnose "virtual toc" chicanery. - -Fri Nov 17 10:41:25 1995 Philippe De Muyter <phdm@info.ucl.ac.be> - - * elf-bfd.h (struct elf_link_hash_table): Change type of - dynsymcount and bucketcount fields from size_t to bfd_size_type. - -Fri Nov 17 10:02:58 1995 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_pointerize_aux_hook): I960 version: don't - pointerize C_LEAFSTAT or C_LEAFEXT entries. - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Only create - DT_INIT and DT_FINI entries if the _init or _fini symbol is - defined or mentioned in a regular file. - -Thu Nov 16 15:16:42 1995 Kim Knuttila <krk@cygnus.com> - - * coff-ppc.c (ppc_record_data_in_toc_entry): new function - (coff_ppc_relocate_section): Handle TOCDEFN attribute - (coff_ppc_relocate_section): Correct REL24 handling - (ppc_process_before_allocation): Correct TOCDEFN handling - - * peicode.h (dir_names): Added name descriptions - -Thu Nov 16 03:38:03 1995 Ken Raeburn <raeburn@cygnus.com> - - * VERSION: Updated to cygnus-2.6. - -Wed Nov 15 19:30:07 1995 Ken Raeburn <raeburn@cygnus.com> - - * targets.c (m68k4knetbsd_vec): Declare. - -Wed Nov 15 18:05:52 1995 Ian Lance Taylor <ian@cygnus.com> - - * targets.c (bfd_target): Change type of second argument to - _bfd_print_private_bfd_data from void * to PTR. - * libbfd-in.h (_bfd_generic_bfd_print_private_bfd_data): Cast - using PTR rather than void *. - * bfd-in2, libbfd.h: Rebuild. - * peicode.h (pe_print_private_bfd_data): Change vfile from void * - to PTR. - * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define as - _bfd_generic_bfd_print_private_bfd_data rather than casting - bfd_true. - -Wed Nov 15 04:09:14 1995 Ken Raeburn <raeburn@cygnus.com> - - * Makefile.in (.dep1): Fix stupid typo in last change. Remove any - "DO NOT DELETE" lines or blank lines that mkdep writes on some - systems. - (BFD_LIBS_CFILES, ALL_MACHINES_CFILES, BFD32_BACKENDS_CFILES, - BFD64_BACKENDS_CFILES): New variables. - (CFILES): Use them. - -Tue Nov 14 11:52:23 1995 Ian Lance Taylor <ian@cygnus.com> - - * peicode.h (coff_swap_aouthdr_out): For PPC PE, start isize at 0, - not at the file position of the first section. - * coffcode.h (coff_compute_section_file_positions): Avoid using - unportable #elif. - (coff_write_object_contents): When generating a PPC PE executable - with no symbols, round up the file size to a COFF_PAGE_SIZE - boundary. - * cofflink.c (_bfd_coff_final_link): If there are no symbols, - don't write out a string table. - - * elf.c (bfd_section_from_shdr): When using a different section - header, pass the new one to _bfd_elf_make_section_from_shdr. - (elf_fake_sections): Don't set sh_info and sh_entsize fields. - (elf_map_symbols): Add section VMA to symbol value when comparing - against 0. - (_bfd_elf_compute_section_file_positions): Only build symbol table - if there are some symbols. Set file offset of symtab and strtab - sections. - (assign_file_positions_except_relocs): Remove dosyms parameter. - Change all callers. Never set file offset of symtab and strtab - sections. - (_bfd_elf_copy_private_section_data): New function. - (MAP_ONESYMTAB, MAP_DYNSYMTAB, MAP_STRTAB, MAP_SHSTRTAB): Define. - (_bfd_elf_copy_private_symbol_data): New function. - (swap_out_syms): Check for special mapping of st_shndx created by - copy_private_symbol_data. - * elfxx-target.h: Use new copy routines. - * elf-bfd.h (_bfd_elf_copy_private_symbol_data): Declare. - (_bfd_elf_copy_private_section_data): Declare. - - * config.bfd (sh-*-*): Set targ_defvec to shcoff_vec. - - * coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE, handle - C_NT_WEAK. - - * coff-sh.c (shlcoff_vec): Use _bfd_generic_archive_p, not - _bfd_dummy_target, matching the recent change to archive - recognition. - -Mon Nov 13 13:24:38 1995 Ian Lance Taylor <ian@cygnus.com> - - * libbfd.c (bfd_get_file_window): Use casts to avoid doing - arithmetic on PTR types. - - * aout-target.h (MY(callback)): Set the lma of the sections. - - * ecoff.c (ecoff_reloc_link_order): Turn a reloc against a defined - symbol into a reloc against the section. - -Mon Nov 13 07:31:35 1995 Kim Knuttila <krk@cygnus.com> - - * coff-ppc.c (ppc_coff_link_hash_entry): added support for inline - glue for the relocs: IMGLUE and IFGLUE. - (record_toc): new function - tracks toc contents - (ppc_mark_symbol_as_glue): new function - supports the IMGLUE reloc - (coff_ppc_relocate_section): Added support and fixes for IMGLUE/IFGLUE - (ppc_coff_rtype2howto): removed invalid IMGLUE hack - (coff_ppc_rtype_to_howto): removed invalid IMGLUE hack - (ppc_record_toc_entry): Removed a debug define (duh) - - * peicode.h (coff_swap_scnhdr_out): Fixed invalid strcmp for ".reldata" - (pe_print_idata): New function - formats the idata section data - (pe_print_pdata): New function - formats the pdata section data - (pe_print_private_bfd_data): calls to above - -Sun Nov 12 12:23:24 1995 Stan Shebs <shebs@andros.cygnus.com> - - * Makefile.in (bfd_libs_here, etc): Provide empty definitions. - * coff-rs6000.c (rs6000coff_vec): Add conditional defines - TARGET_SYM and TARGET_NAME for vector and BFD name. - * coff-pmac.c (pmac_xcoff_vec): Remove. - (TARGET_SYM, TARGET_NAME): Define. - * coffcode.h (coff_set_arch_mach_hook) [POWERMAC]: Set the - machine to 0, not all PowerMacs are 601s. - -Fri Nov 10 12:10:14 1995 Ian Lance Taylor <ian@cygnus.com> - - * elfcode.h (elf_object_p): Read in any program headers. - * elf.c (_bfd_elf_make_section_from_shdr): Adjust section lma - based on the program headers, if any. - (elf_fake_sections): Set sh_addr from the vma, not the lma. - (map_program_segments): Set p_paddr of program headers based on - the lma. - -Thu Nov 9 13:01:31 1995 Ian Lance Taylor <ian@cygnus.com> - - * archive.c (bfd_generic_archive_p): Preserve tdata in case of - failure. - - * aoutx.h (NAME(aout,final_link)): Report a reasonable error when - trying to do a relocateable link with a non-a.out object file. - - * archive.c (bfd_generic_archive_p): Check the first object file - in an archive even if target_defaulted is set. If the object file - has the wrong xvec, reject it. - - * aoutx.h (NAME(aout,set_section_contents)): If a section can not - be represented, report the name via _bfd_error_handler. - (translate_to_native_sym_flags): Likewise. - * elf32-mips.c (mips_elf_final_link): Likewise. - * oasys.c (oasys_write_sections): Likewise. - - * coffcode.h (coff_set_alignment_hook): Write RS6000COFF_C version - which checks for STYP_OVRFLO sections. - (coff_compute_section_file_positions): If RS6000COFF_C, handle - reloc and lineno count overflows. - (coff_write_object_contents): Call coff_count_linenumbers before - coff_compute_section_file_positions. If RS6000COFF_C, handle - reloc and lineno count overflows. - * xcofflink.c (_bfd_xcoff_bfd_final_link): Count line numbers and - relocs before dealing with .pad sections. Count overflow section - headers when handling .pad sections. - - * coffcode.h (coff_write_object_contents): Set a.out vstamp to 1 - if RS6000COFF_C. - - * xcofflink.c (XCOFF_DESCRIPTOR): Define. - (struct xcoff_link_hash_table): Add descriptor_section and - special_sections fields. - (_bfd_xcoff_bfd_link_hash_table_create): Initialize new fields. - (xcoff_link_add_symbols): Set linkage section alignment. Create - descriptor section. Check for magic symbol names (_text, etc.), - and record them in special_sections if found. Set - XCOFF_DESCRIPTOR flag for a function descriptor, and set its - descriptor field to point back to the function code symbol. - (xcoff_sweep): Always mark the special descriptor_section. - (bfd_xcoff_export_symbol): Check whether the symbol might be a - function descriptor, and mark it if it is. - (bfd_xcoff_size_dynamic_sections): Add new special_sections - parameter, and fill it in. Allocate space for the descriptor - section. - (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR flag when defining - global linkage code. If an undefined function descriptor is - exported, arrange to define it. Warn about any other undefined - exported symbol. - (_bfd_xcoff_bfd_final_link): Write out the descriptor section. - (xcoff_write_global_symbol): Create a function descriptor when - necessary. - * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration. - * bfd-in2.h: Rebuild. - -Thu Nov 9 08:40:23 1995 Kim Knuttila <krk@cygnus.com> - - * coff-ppc.c (ppc_coff_link_hash_entry): new types for hashing - (ppc_coff_link_hash_table): new types for hashing - (ppc_coff_link_hash_newfunc): hash entry constructor - (ppc_coff_link_hash_table_init): hash table initializer - (ppc_coff_link_hash_table_create): hash table constructor - (ppc_record_toc_entry): changed references to hash table - (coff_ppc_relocate_section): changed references to hash table - - * libcoff-in.h (coff_link_hash_entry): removed toc_offset - * libcoff.h: Rebuild - - * cofflink.c (_bfd_coff_link_hash_newfunc): removed toc_offset init - (coff_link_add_symbols): removed toc_offset init - -Thu Nov 9 04:00:38 1995 Ken Raeburn <raeburn@cygnus.com> - - * Makefile.in (.dep1): Make sure the file mkdep is to write exists - first. - - * configure.in: Added new option --with[out]-mmap. Set USE_MMAP - if it is given and mmep is available. - * acconfig.h: Undef USE_MMAP. - * configure, config.in: Regenerated. - * aoutx.h: If USE_MMAP is not defined, do all symbol and string - table handling the old way. - (aout_get_external_symbols): Don't complain if last byte of string - table is nonzero. - * libbfd.c [HAVE_MADVISE]: Include sys/types.h and sys/mman.h. - (bfd_free_window) [! USE_MMAP]: Don't define. - (bfd_get_file_window, - _bfd_generic_get_section_contents_in_window) [! USE_MMAP]: Abort. - -Wed Nov 8 20:03:44 1995 Eric Freudenthal <freudenthal@nyu.edu> - - * coff-a29k.c (SIGN_EXTEND_HWORD): Use ~0xffff rather than - 0xffff0000. - -Wed Nov 8 11:31:11 1995 Ian Lance Taylor <ian@cygnus.com> - - * coff-a29k.c (a29k_reloc): Change handling of R_IREL reloc to be - compatible with AMD generated COFF files. Try to support both AMD - and GNU formats simultaneously. - (coff_a29k_relocate_section): Likewise. - - * libbfd.c (bfd_get_file_window): Change writable parameter from - int to boolean; update all callers. Pass MAP_SHARED if not - writable--it's required on Solaris. Cast fprintf argument to - avoid warning. - * bfd-in.h (bfd_get_file_window): Update declaration. - * bfd-in2.h: Rebuild. - * aoutx.h: Update calls to bfd_get_file_window. - - * xcofflink.c (XCOFF_DEF_DYNAMIC): Rename from XCOFF_REF_DYNAMIC. - Change all uses. - (xcoff_swap_ldhdr_in): New static function. - (xcoff_swap_ldsym_in): New static function. - (xcoff_find_reloc): Handle the case of a single reloc correctly. - (xcoff_link_add_symbols): If we just created a descriptor, pass it - to _bfd_generic_link_add_one_symbol, to save a hash lookup. - Handle XTY_ER/XMC_XO symbols correctly. - (xcoff_link_add_dynamic_symbols): Rewrite to read .loader symbols - rather than normal symbol table. - (bfd_xcoff_import_symbol): It's not an error if the symbol is - already defined with the same absolute value. - (xcoff_mark): When considering called symbols, check whether the - descriptor is from a dynamic object, rather than the symbol - itself. - (xcoff_build_ldsyms): Likewise. - - * libbfd.c (bfd_get_file_window): Change return type to boolean. - Cast realloc and malloc return values. If malloc or realloc fail, - set bfd_error_no_memory. - * bfd-in.h (bfd_get_file_window): Change type to boolean. - * bfd-in2.h: Rebuild. - -Tue Nov 7 11:53:48 1995 Kim Knuttila <krk@cygnus.com> - - * coff-ppc.c (ppc_record_toc_entry): new function. - (in_reloc_p): changed return value. - (coff_ppc_relocate_section): much rework. - (ppc_allocate_toc_section): new function. - (ppc_process_before_allocation): new function. - (ppc_coff_swap_sym_in_hook): new function. - - * cofflink.c (_bfd_coff_link_hash_newfunc): initialize toc_offset. - (coff_link_add_symbols): initialize toc_offset. - - * peicode.h (coff_swap_sym_in): Added coff_swap_sym_in_hook - (coff_swap_aouthdr_out): Added more sections to the data - dictionary for the pe file header. Also changed linker version - number on the ppc side. - (dir_names): small improvements to the dictionary printing. - (pe_mkobject_hook): save the file level flags. - - * libcoff-in.h (coff_link_hash_entry): added toc_offset field - (pe_tdata): added real_flags field - (coff_tdata): added local_toc_sym_map and access macro - - * libcoff.h (coff_link_hash_entry): added toc_offset field - (pe_tdata): added real_flags field - (coff_tdata): added local_toc_sym_map and access macro - - * coffcode.h (coff_set_alignment_hook): added hook for PE. - (coff_mkobject): init for local_toc_sym_map - (coff_write_object_contents): set the internal_a.magic to - IMAGE_NT_OPTIONAL_HDR_MAGIC which appears to be what other - ppc compilers use. - -Tue Nov 7 13:48:58 1995 Ian Lance Taylor <ian@cygnus.com> - - * ecofflink.c (_bfd_ecoff_locate_line): Keep looking through stabs - entries until both the line number address and the function name - address are too large. - - * configure.in: Call AC_CHECK_PROG to find and cache AR. - * configure: Rebuilt. - - * aclocal.m4 (BFD_CC_FOR_BUILD): Don't define CC_FOR_BUILD if it - is defined in the environment. - -Tue Nov 7 10:57:24 1995 Jeffrey A Law (law@cygnus.com) - - * som.c (som_get_section_contents_in_window): Define to use - generic version. - -Mon Nov 6 17:13:15 1995 Harry Dolan <dolan@ssd.intel.com> - - * coff-i860.c: New file, based on coff-i386.c. - * cpu-i860.c: New file, based on cpu-i386.c. - * hosts/i860mach3.h: New file, based on hosts/i386mach3.h. - * config.bfd (i860-*-mach3*, i860-*-osf1*, i860-*-coff*): New - targets, using i860coff_vec. - * configure.in (i860-*-mach3*, i860-*-osf1*): New hosts, using - trad-core.o and hosts/i860mach3.h. - (i860coff_vec): Use coff-i860.o and cofflink.o. - * configure: Rebuild. - * Makefile.in: Rebuild dependencies. - (ALL_MACHINES): Add cpu-i860.o. - (BFD32_BACKENDS): Add coff-i860.o. - (CFILES): Add cpu-i860.c and coff-i860.c. - * targets.c (i860coff_vec): Declare. - (bfd_target_vector): Add &i860coff_vec. - * archures.c (bfd_i860_arch): Declare. - (bfd_archures_list): Add &bfd_i860_arch. - * coffcode.h (coff_set_arch_mach_hook): Handle I860 magic number. - (coff_set_flags): Handle bfd_arch_i860. - (coff_write_object_contents): Handle I860 a.out magic number. - -Mon Nov 6 14:34:07 1995 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_add_symbols): Set the alignment power of - the created .tc section to 2. - (xcoff_mark): Don't keep a .loader reloc for a call to an - undefined symbol when creating a shared library. - (xcoff_build_ldsyms): When creating a shared library, generate - global linkage code for a call to an undefined symbol. - -Sun Nov 5 21:44:13 1995 Ken Raeburn <raeburn@cygnus.com> - - * Makefile.in (CFILES): Rebuild list from BFD_LIBS, ALL_MACHINES, - BFD32_BACKENDS, BFD64_BACKENDS. - (.dep1): Put mkdep output in a separate file. - Rebuilt dependencies. - - * ecoff.c (_bfd_ecoff_slurp_armap): Cast _bfd_read_ar_hdr return - value. - - Permit use of mmap when available: - - * configure.in: Check for mmap, madvise, mprotect. - * config.in, configure: Regenerated. - - * libbfd.c (struct _bfd_window_internal): Define type. - (bfd_init_window, bfd_free_window, bfd_get_file_window): New - functions. - (ok_to_map): New static variable for debugging. - (_bfd_generic_get_section_contents_in_window): New function. - * bfd-in.h (bfd_window_internal): Declare type. - (bfd_window): Define type. - (bfd_init_window, bfd_free_window, bfd_get_file_window): Declare. - * libbfd-in.h (_bfd_generic_get_section_contents_in_window): - Declare. - - * libaout.h (struct aoutdata): Add two window fields. - (obj_aout_sym_window, obj_aout_string_window): New macros. - * aoutx.h (some_aout_object_p): Initialize windows. - (aout_get_external_symbols): Get symbol data and strings in - windows instead of explicitly allocated buffers. - (slurp_symbol_table): Free window instead of memory. - (bfd_free_cached_info): Release windows instead of freeing storage - directly. - (aout_link_free_symbols): Ditto. - - * targets.c (bfd_target): Add new field for - get_section_contents_in_window. - (BFD_JUMP_TABLE_GENERIC): Updated. - * aout-adobe.c, aout-target.h, binary.c, bout.c, coff-alpha.c, - coff-mips.c, elfxx-target.h, i386msdos.c, i386os9k.c, ieee.c, - libcoff-in.h, oasys.c, srec.c, tekhex.c, versados.c: Added new - macros for get_section_contents_in_window field. - -Sat Nov 4 12:23:26 1995 Fred Fish <fnf@cygnus.com> - - * core.c: Renamed to corefile.c - * makefile.dos (OBJS): Change core.o to corefile.o - * Makefile.in (CFILES, BFD_LIBS): Use corefile.c instead of core.c - -Fri Nov 3 15:54:59 1995 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_add_symbols): Rename local variable sub - to o. Clobber and restore the list of new csects around the call - to _bfd_generic_link_add_one_symbol, in case it wants to report a - linker error and the linker wants to read the symbol table. Reset - the line number count of a real section even if it has no relocs. - (_bfd_xcoff_bfd_final_link): If shared, set the DYNAMIC flag. - - * coffgen.c (_bfd_coff_read_string_table): Warn if the string size - is too small. - -Thu Nov 2 23:16:39 1995 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Don't warn about - an undefined symbol in a shared link. - - * linker.c (_bfd_generic_link_add_one_symbol): Correct type of - oldtype from bfd_link_order_type to bfd_link_hash_type. From - phdm@info.ucl.ac.be (Philippe De Muyter). - -Wed Nov 1 14:26:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de> - - * coff-m88k.c (rtype2howto): New static function. - (RTYPE2HOWTO): Use it rather than a macro definition. - - * coffcode.h (coff_write_object_contents): set internal_a.magic - to PAGEMAGICPEXECPAGED #if defined (M68) && !defined (LYNXOS). - - * configure.in: m68*-motorola-sysv* does not use ptrace-core.o; - define TRAD_HEADER to new file hosts/delta68.h. - m88*-motorola-sysv*, however, does use ptrace-core.o. - * hosts/delta68.h: New file. - - * ptrace-core.c (ptrace_unix_core_file_p): change bfd_zmalloc to - bfd_zalloc; provide proper parm abfd to calls to bfd_zalloc. - -Wed Nov 1 13:51:54 1995 Ken Raeburn <raeburn@cygnus.com> - - * i386linux.c (MY(vec)): Declare before use. - -Wed Nov 1 11:45:07 1995 Ian Lance Taylor <ian@cygnus.com> - - * reloc16.c (bfd_coff_reloc16_get_relocated_section_contents): - Pass input_bfd, not in_bfd, to bfd_coff_reloc16_extra_cases. - - * elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the - BFD is not of the right type. - (bfd_elf_get_needed_list): Likewise. - * i386linux.c (bfd_linux_size_dynamic_sections): Likewise. - * sunos.c (bfd_sunos_get_needed_list): Likewise. - * xcofflink.c (XCOFF_XVECP): Define. - (bfd_xcoff_link_record_set): Don't do anything if the BFD is not - of the right type. - (bfd_xcoff_import_symbol): Likewise. - (bfd_xcoff_export_symbol): Likewise. - (bfd_xcoff_link_count_reloc): Likewise. - (bfd_xcoff_record_link_assignment): Likewise. - (bfd_xcoff_size_dynamic_sections): Likewise. - - * sunos.c (sunos_scan_ext_relocs): Only check the reloc symbol - table index against the number of symbols for a base relative - reloc. - - * coff-rs6000.c (_bfd_xcoff_sizeof_headers): Change from macro to - static function. - * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Set - full_aouthdr flag here... - (_bfd_xcoff_bfd_final_link): ...not here. - -Tue Oct 31 12:52:02 1995 Fred Fish <fnf@cygnus.com> - - * libelf.h: Rename to elf-bfd.h to avoid conflict with - systems that have a system <libelf.h>. - * Makefile.in: Globally replace libelf.h with elf-bfd.h. - * bfd.c, elf.c, elf32-arc.c, elf32-gen.c, elf32-hppa.c, - elf32-hppa.h, elf32-i386.c, elf32-i860.c, elf32-m68k.c, - elf32-m88k.c, elf32-mips.c, elf32-ppc.c, elf32-sparc.c, - elf64-gen.c, elf64-sparc.c, elfcode.h, elflink.c, - elfxx-target.h: Include elf-bfd.h rather than libelf.h. - * elfxx-target.h: Change libelf.h reference to elf-bfd.h. - -Tue Oct 31 15:30:07 1995 David Mosberger-Tang <davidm@azstarnet.com> - - * ecoff.c (ecoff_set_symbol_info): Add new parameter weak. If - set, set BSF_WEAK in symbol. Change all callers. - (ecoff_get_extr): Set weakext based on BSF_WEAK. - (ecoff_link_add_externals): If weakext is set, pass BSF_WEAK to - _bfd_generic_link_add_one_symbol. - (ecoff_indirect_link_order): Check that the section tdata relocs - are not NULL before using them. - - * configure.in (alpha*-*-linux*): Set COREFILE to trad-core.o and - define TRAD_HEADER as hosts/alphalinux.h. - * configure: Rebuild. - * hosts/alphalinux.h: New file. - * trad-core.c (trad_unix_core_file_p): Cast u.u_ar0 to bfd_vma, - not int. - -Tue Oct 31 12:34:11 1995 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_slurp_symbol_table): Accept C_BCOMM and - C_ECOMM storage classes. - - * xcofflink.c (xcoff_mark_symbol): New static function, broken out - of xcoff_mark. - (xcoff_mark): Call xcoff_mark_symbol. - (bfd_xcoff_export_symbol): Call xcoff_mark_symbol. - (bfd_xcoff_link_count_reloc): Call xcoff_mark_symbol rather than - doing it by hand. - (xcoff_build_ldsyms): Build a .loader symbol for an export symbol. - -Mon Oct 30 14:53:48 1995 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (struct xcoff_final_link_info): Add new line_filepos - field. - (xcoff_find_reloc): New static function. - (xcoff_link_add_symbols): Use it. - (_bfd_xcoff_bfd_final_link): Set finfo.line_filepos. - (xcoff_link_input_bfd): Handle C_BINCL and C_EINCL. Don't - relocate the value of C_DECL. - - * elf.c (elf_fake_sections): Remove bogus BFD_ASSERT. - -Sat Oct 28 01:25:34 1995 steve chamberlain <sac@slash.cygnus.com> - - * cofflink.c (_bfd_coff_generic_relocate_section): Make - callback decide what goes in .relocs. - * pe[i]-i386.c (TARGET_UNDERSCORE): Define. - * peicode.h (pe_mkobject_hook): Only copy aouthdr if - there is one. - -Sat Oct 28 01:51:02 1995 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c (xcoff_link_add_symbols): Handle csects in the - absolute section. - -Fri Oct 27 18:14:39 1995 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c: More improvements, mostly to fix handling of - constructors and a few other special cases. - * coff-rs6000.c (rs6000coff_vec): Set symbol_leading_char back to - zero, reverting yesterday's change. - * bfd-in.h (bfd_xcoff_link_record_set): Declare. - (bfd_xcoff_link_count_reloc): Declare. - (bfd_xcoff_record_link_assignment): Declare. - * bfd-in2.h: Rebuild. - -Fri Oct 27 14:42:15 1995 Niklas Hallqvist <niklas@appli.se> - - * PORTING, aout-arm.c, aout-encap.c, aout-target.h, - aoutx.h, gen-aout.c, host-aout.c, hp300bsd.c, i386aout.c - i386bsd.c, i386dynix.c, i386linux.c, i386lynx.c, i386mach3.c, - i386netbsd.c, m68klynx.c, m88kmach3.c, mipsbsd.c, newsos3.c, - ns32knetbsd.c, pc532-mach.c, riscix.c, sparclynx.c, sparcnetbsd.c: - Change PAGE_SIZE to TARGET_PAGE_SIZE. - - * m68knetbsd.c: Ditto as well as add support for the m68k4k object - format. - - * netbsd.h: Double ditto (incl. m68k4k support). NetBSD's text - segments includes the a.out header. See to that the magic number - *always* is big-endian. - - * config.bfd: Add m68*-hp*-netbsd* case. Cross-pollinate m68k and - m68k4k NetBSD configurations. - - * configure.in, configure: Separate i386 & mips NetBSD - configurations from other BSD ones. Don't assume DEC is the only - thing NetBSD/mips run on. Add {m68k,ns32k,sparc}-*-netbsd* - configurations. Add support for m68k4k NetBSD object format. - - * libaout.h: Added M_68K4K_NETBSD magic. - - * m68k4knetbsd.c: New file. - - * hosts/{m68k,sparc}nbsd.h: Don't define HOST_BIG_ENDIAN_P. - - * hosts/nbsd.h: Define HOST_BIG_ENDIAN_P according to - <machine/endian.h>. - - * hosts/mipsnbsd.h: New file. - -Thu Oct 26 14:16:47 1995 Ian Lance Taylor <ian@cygnus.com> - - * xcofflink.c: Numerous changes to get closer to a working XCOFF - linker. - * libcoff-in.h (struct xcoff_tdata): Add full_aouthdr, - toc_section, and entry_section fields. - (struct xcoff_section_tdata): Remove ldrel_count field. - * libcoff.h: Rebuild. - * coffcode.h (coff_mkobject_hook): Initialize new xcoff_data - fields. - (coff_compute_section_file_positions): If RS6000COFF_C, generate - full a.out header if full_aouthdr is set in xcoff_data. - (coff_write_object_contents): Likewise. Set o_snentry and o_sntoc - based on sections stored in xcoff_data. - * coff-rs6000.c (xcoff_copy_private_bfd_data): Copy new xcoff_data - fields. - (xcoff_reloc_type_lookup): Handle BFD_RELOC_CTOR. - (rs6000coff_vec): Set symbol_leading_char to '.'. - * coffgen.c (coff_get_symbol_info): If fix_value is set, fix the - value stored in ret rather than returning a pointer value. - -Wed Oct 25 23:10:39 1995 Michael Meissner <meissner@tiktok.cygnus.com> - - * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Remove MAC - format for now. - -Wed Oct 25 16:19:27 1995 Jeffrey A Law (law@cygnus.com) - - * som.c (som_slurp_string_table): Allocate the strings with malloc - since they're free'd by free_cached_info. - (som_slurp_symbol_table): Similarly for the symbol table. - -Wed Oct 25 14:59:22 1995 Per Bothner <bothner@kalessin.cygnus.com> - - * Makefile.in (diststuff): Don't make headers. - -Wed Oct 25 11:32:54 1995 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.in: Rebuild dependencies. - - * sunos.c (bfd_sunos_record_link_assignment): Don't do anything if - output_bfd is not SunOS. - (bfd_sunos_size_dynamic_sections): Likewise. Don't scan relocs of - non-SunOS input files. - - * xcofflink.c: Extensive changes to support linking shared objects - and generating a .loader section. - * libcoff-in.h (struct xcoff_tdata): Add import_file_id field. - (struct xcoff_section_tdata): Add lineno_count, first_symndx, - last_symndx, and ldrel_count fields. - * libcoff.h: Rebuild. - * coff-rs6000.c (xcoff_howto_table): Correct reloc names. - * coffcode.h (styp_to_sec_flags): Don't set any flags if STYP_PAD - is set. - * bfd-in.h (bfd_xcoff_import_symbol): Declare. - (bfd_xcoff_export_symbol): Declare. - (bfd_xcoff_size_dynamic_sections): Declare. - * bfd-in2.h: Rebuild. - -Tue Oct 24 17:44:20 1995 Stan Shebs <shebs@andros.cygnus.com> - - * configure.in: Add xcofflink.o to pmac_xcoff_vec. - * configure: Rebuild. - * mpw-config.in: Add xcofflink.c.o to powerpc-apple-macos. - * coff-pmac.c: Include coff-rs6000.c instead of duplicating its - contents. - (pmac_xcoff_vec): Update to use new xcoff support. - * coff-rs6000.c (xcoff_generic_stat_arch_elt): Make static. - (xcoff_write_armap): Declare buf as unsigned char. - * xcofflink.c (xcoff_link_add_symbols): Declare a local as PTR. - - * mpw-make.sed: Generalize subdir_do edit. - -Tue Oct 24 10:25:01 1995 Jeffrey A Law (law@cygnus.com) - - * hppabsd-core.c (make_bfd_asection): Initialize asect->filepos - correctly. Don't initialize asect->vma. - -Fri Oct 20 13:23:48 1995 Ken Raeburn <raeburn@cygnus.com> - - * opncls.c (_bfd_new_bfd): If _bfd_chunksize wasn't preset, use - something a little less than the page size. - -Thu Oct 19 13:06:09 1995 Ian Lance Taylor <ian@cygnus.com> - - * coff-i960.c (coff_i960_adjust_symndx): Clear *adjustedp. - -Wed Oct 18 16:20:08 1995 steve chamberlain <sac@slash.cygnus.com> - - * coff-i386.c (coff_i386_reloc_type_lookup): New. - * coffcode.h (coff_write_object_contents): If .bss is before - .data us that as data_start. - * cofflink.c (_bfd_coff_generic_relocate_section): Get reloc - calc correct. - * peicode.h (add_data_entry): Use _cooked_size of data directory. - (coff_swap_outhdr_out): Hardwire in version number. - -Wed Oct 18 16:50:54 1995 Ken Raeburn <raeburn@cygnus.com> - - * sunos.c (sunos_add_dynamic_symbols): Rename local variables - major and minor to *_vno, since the former are also macros in - SunOS header files. Cast result of bfd_alloc to appropriate - type. - - * coffgen.c (coff_find_nearest_line): Cast used_by_bfd value - before assigning to sec_data. - -Wed Oct 18 13:25:17 1995 Ian Lance Taylor <ian@cygnus.com> - - * ecoff.c (_bfd_ecoff_find_nearest_line): The offset argument is - now relative to the section, not absolute. - * ecofflink.c (_bfd_ecoff_locate_line): Use the right symbol to - get the file name when there is a N_SO directory name. When - handling stabs, remember that section->vma was added to the - offset. - -Tue Oct 17 18:24:54 1995 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c (struct sunos_link_hash_table): Add needed field. - (sunos_link_hash_table_create): Call bfd_release, not free. - (sunos_link_hash_table_create): Initialize needed field. - (sunos_add_dynamic_symbols): Record needed objects. - (bfd_sunos_get_needed_list): New function. - * bfd-in.h (bfd_sunos_get_needed_list): Declare. - * bfd-in2.h: Rebuild. - -Mon Oct 16 14:43:59 1995 steve chamberlain <sac@slash.cygnus.com> - - * libcoff-in.h (pe_data_type.in_reloc_p): New. - -Mon Oct 16 10:52:50 1995 Ian Lance Taylor <ian@cygnus.com> - - * bfd-in.h (struct bfd_link_needed_list): Rename from - bfd_elf_link_needed_list. - * bfd-in2.h: Rebuild. - * elf.c, elflink.h, libelf.h: Corresponding changes. - - Add start at AIX linker support; no shared libraries yet. - * xcofflink.c: New file. - * configure.in (rs600coff_vec): Use xcofflink.o. - * configure: Rebuild. - * libcoff-in.h (struct xcoff_tdata): Add csects and debug_indices - fields. - (struct xcoff_section_tdata): Define. - (xcoff_section_data): Define macro. - (_bfd_xcoff_bfd_link_hash_table_create): Declare. - (_bfd_xcoff_bfd_link_add_symbols): Declare. - (_bfd_xcoff_bfd_final_link): Declare. - (_bfd_ppc_xcoff_relocate_section): Declare. - * libcoff.h: Rebuild. - * coff-rs6000.c: Clean up a bit. - (xcoff_mkobject): Default modtype to 1L, not RE. Initialize - cputype, csects, and debug_indices. - (xcoff_copy_private_bfd_data): Copy cputype. - (xcoff_howto_table): Rename from rs6000coff_howto_table. - (xcoff_rtype2howto): Rename from rs6000coff_rtype2howto. - (xcoff_reloc_type_lookup): Rename from - rs6000coff_reloc_type_lookup. - (coff_relocate_section): Define. - (_bfd_xcoff_sizeof_headers): Define. - (_bfd_xcoff_bfd_get_relocated_section_contents): Define. - (_bfd_xcoff_bfd_relax_section): Define. - (_bfd_xcoff_bfd_link_split_section): Define. - (rs6000coff_vec): For BFD_JUMP_TABLE_LINK, use _bfd_xcoff, not - coff. - * coffcode.h (coff_compute_section_file_positions): If AIX, - increment sofar by SMALL_AOUTSZ if not executable. - (coff_write_object_contents): If AIX, always output an a.out - header; if not executable, header size of SMALL_AOUTSZ. - * hash.c (struct bfd_strtab_hash): Add xcoff field. - (_bfd_stringtab_init): Initialize xcoff field. - (_bfd_xcoff_stringtab_init): New function. - (_bfd_stringtab_add): In XCOFF mode, leave two bytes for length. - (_bfd_stringtab_emit): In XCOFF mode, write out length. - * libbfd-in.h (_bfd_xcoff_stringtab_init): Declare. - * libbfd.h: Rebuild. - * Makefile.in: Rebuild dependencies. - (BFD32_BACKENDS): Add xcofflink.o. - (CFILES): Add xcofflink.c. - - * elf32-mips.c (mips_elf_symbol_processing): Set SEC_ALLOC, not - SEC_NO_FLAGS, for .acommon section. From Peter Schauer - <Peter.Schauer@Regent.E-Technik.TU-Muenchen.DE>. - -Sat Oct 14 21:36:02 1995 Michael Meissner <meissner@tiktok.cygnus.com> - - * coff-ppc.c (in_reloc_p): Add, clone from coff-i386.c. - -Fri Oct 13 17:48:43 1995 Ken Raeburn <raeburn@cygnus.com> - - * acconfig.h (HAVE_SYS_PROCFS_H): Undef, with comment. - * config.in: Regenerated. - - * opncls.c (getpagesize) [!HAVE_GETPAGESIZE]: Define as 2048. - (_bfd_chunksize): New variable. - (_bfd_new_bfd): Set it to getpagesize() if negative, and use it - for obstack chunk size. - * configure.in: Check for getpagesize. - * configure: Regenerated. - - Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * trad-core.c (rawptr): Make it a local variable of - ptrace_unix_core_file_p. - -Fri Oct 13 11:22:01 1995 steve chamberlain <sac@slash.cygnus.com> - - * coff-arm.c (in_reloc_p): New. - * coff-i386.c (in_reloc_p): New. - * coffcode.h: Allways include peicode.h if COFF_WITH_PE. - (coff_write_object_contents): Only set has_reloc_section - if PE_IMAGE. - * cofflink.c (_bfd_coff_generic_relocate_section): Call - in_reloc_p to decide if reloc should be emitted. - * libcoff.h (pe_data_type.in_reloc_p): New. - * peicode.h (pe_mkobject): Initialize in_reloc_p. - -Wed Oct 11 00:49:29 1995 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (_bfd_coff_internal_syment_name): Move to coffgen.c. - (_bfd_coff_read_internal_relocs): Likewise. - * coffgen.c (_bfd_coff_internal_syment_name): Copy from coffgen.c. - (_bfd_coff_read_internal_relocs): Likewise. - - * elflink.h (elf_link_add_object_symbols): Correct conditions - under which type and size change warnings are issued. - -Tue Oct 10 18:32:46 1995 Ian Lance Taylor <ian@cygnus.com> - - * coffgen.c (coff_count_linenumbers): Don't count line numbers for - a symbol which is not in a real section. - (coff_write_native_symbol): Corresponding change. - - * cofflink.c (_bfd_coff_link_hash_newfunc): Rename from - coff_link_hash_newfunc and make non-static. - (_bfd_coff_link_hash_table_init): New function, broken out of - _bfd_coff_link_hash_table_create. - (_bfd_coff_link_hash_table_create): Use it. - (process_embedded_commands): Make static. - * libcoff-in.h ((_bfd_coff_link_hash_newfunc): Declare. - (_bfd_coff_link_hash_table_init): Declare. - * libcoff.h: Rebuild. - - * coffcode.h (coff_mkobject_hook): If RS6000COFF_C, set cputype - field in XCOFF tdata. - (coff_set_arch_mach_hook): Check ifdef RS6000COFF_C, not ifdef - U802ROMAGIC, for clarity. Try to set arch and machine correctly - based on cputype stored in a.out header, or in n_type of initial - .file symbol. - (coff_write_object_contents): Set cputype correctly in a.out - header. - (coff_slurp_symbol_table): Add casts to file_ptr to avoid - warnings. - * coffswap.h (coff_swap_aouthdr_in): Swap in cputype field. - (coff_swap_aouthdr_out): Swap out cputype field. Don't clear - old resv1 field. - * libcoff-in.h (struct xcoff_tdata): Add cputype field. - * libcoff.h: Rebuild. - - * cpu-rs6000.c (rs6000_compatible): New static function. - (bfd_rs6000_arch): Use it. - * cpu-powerpc.c (powerpc_compatible): New static function. - (arch_info_struct): Define various flavours of PowerPC. - (bfd_powerpc_arch): Use powerpc_compatible. Point at - arch_info_struct. - -Tue Oct 10 10:50:46 1995 Fred Fish <fnf@cygnus.com> - - * Makefile.in (FLAGS_TO_PASS): Remove BISON. - -Tue Oct 10 01:28:29 1995 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Don't warn about - changing the size or type if the old definition was weak. - -Mon Oct 9 11:24:08 1995 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (combined_entry_type): Add fix_line field. - (coff_slurp_line_table): Warn if we try to set the lineno field of - a symbol twice. - (coff_slurp_symbol_table): If RS6000COFF_C, handle C_BINCL and - C_EINCL by setting fix_line. Fix C_BSTAT symbol value. - * coffgen.c (coff_mangle_symbols): Handle fix_line. - (coff_write_symbol): Only use N_DEBUG if the symbol is in the - absolute section. - (coff_print_symbol): Print fix_value symbols in a useful fashion. - * libcoff.h: Rebuild. - - * libcoff-in.h (struct xcoff_tdata): Define. - (xcoff_data): Define. - * bfd.c (struct _bfd): Add xcoff_obj_data field to tdata union. - * bfd-in2.h, libcoff.h: Rebuild. - * coff-rs6000.c (xcoff_mkobject): New static function. - (coff_mkobject): Define. - (xcoff_copy_private_bfd_data): New static function. - (coff_bfd_copy_private_bfd_data): Define. - (rs6000coff_howto_table): Change R_TOC complain_on_overflow from - signed to bitfield. - (rs6000coff_vec): Add DYNAMIC to object_flags. - * coffcode.h (sec_to_styp_flags): If RS6000COFF_C, handle .pad and - .loader sections specially. - (coff_new_section_hook): If RS6000COFF_C, get the .text and .data - section alignment from the XCOFF tdata information. - (coff_mkobject_hook): If RS6000COFF_C, set DYNAMIC based on - F_SHROBJ, and copy the extra a.out header information into the - XCOFF tdata structure. - (coff_write_object_contents): If RS6000COFF_C, set F_SHROBJ, - F_DYNLOAD and the extra a.out header information. - (coff_slurp_symbol_table): Set BSF_NOT_AT_END for a C_EXT or - C_HIDEXT symbol with attached csect information. - * coffswap.h (coff_swap_aouthdr_in): If RS6000COFF_C, swap - in the o_maxdata field. - (coff_swap_aouthdr_out): If RS6000COFF_C, swap extra XCOFF fields. - * coffgen.c (coff_renumber_symbols): Don't move any symbol to the - end if BSF_NOT_AT_END is set. - - * targets.c (bfd_target): Rename _bfd_read_ar_hdr field to - _bfd_read_ar_hdr_fn. - * libbfd-in.h (_bfd_read_ar_hdr): Update accordingly. - * bfd-in2.h, libbfd.h: Rebuild. - * archive.c (_bfd_get_elt_at_filepos): Cast _bfd_read_ar_hdr - return value. - (do_slurp_bsd_armap, do_slurp_coff_armap): Likewise. - (bfd_slurp_bsd_armap_f2): Likewise. - (_bfd_slurp_extended_name_table): Likewise. - -Fri Oct 6 16:18:35 1995 Ken Raeburn <raeburn@cygnus.com> - - Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * archive.c (bfd_get_next_mapent): Return BFD_NO_MORE_SYMBOLS - when the symbol table is empty. - - * elf32-m68k.c (elf_m68k_size_dynamic_sections): Don't reserve - space for section symbols, since we don't output them either. - (elf_m68k_adjust_dynindx): Removed. - - * ptrace-core.c (rawptr): Make it a local variable of - ptrace_unix_core_file_p. - -Fri Oct 6 12:24:47 1995 Michael Meissner <meissner@tiktok.cygnus.com> - - * coff-rs6000.c (xcoff_write_archive_contents): Return false, not - NULL. - - * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Add NT, and - Mac object file formats. - -Fri Oct 6 12:04:02 1995 Ian Lance Taylor <ian@cygnus.com> - - * coffgen.c (coff_fix_symbol_name): Don't try to set up file - auxent if there isn't one. - (coff_write_symbols): If there is no file auxent, use SYMNMLEN - rather than FILNMLEN as the maximum name length. - - * coffcode.h (bfd_coff_backend_data): Add new field - _bfd_coff_print_aux. - (bfd_coff_print_aux): New static function. - (coff_pointerize_aux_hook (RS6000COFF_C version)): Pointerize the - scnlen field of an XTY_LD csect aux entry. - (coff_print_aux): New static function. - (coff_slurp_symbol_table): Don't pointerize scnlen field; now done - in coff_pointerize_aux_hook. - (bfd_coff_std_swap_table): Initialize new field. - * coffgen.c (coff_print_symbol): Call bfd_coff_print_aux. - * libcoff.h: Rebuild. - * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field. - * coff-mips.c (mips_ecoff_backend_data): Likewise. - - * coffcode.h (coff_write_object_contents): On AIX, clear F_RELFLG - if there are symbols, for native AIX ld compatibility. - - * coffcode.h (bfd_coff_backend_data): Add new field - _bfd_coff_pointerize_aux_hook. - (coff_pointerize_aux_hook): Define as a function if RS6000COFF_C - or I960, and as 0 otherwise. - (bfd_coff_std_swap_table): Initialize new field. - * libcoff.h: Rebuild. - * coffgen.c (coff_pointerize_aux): Change parameters to take - symbol pointer instead of type and class, and to take aux index. - Call _bfd_coff_pointerize_aux_hook if it is defined. - (coff_get_normalized_symtab): Always call coff_pointerize_aux. - * coff-alpha.c (alpha_ecoff_backend_data): Initialize all fields. - * coff-mips.c (mips_ecoff_backend_data): Likewise. - - * coff-rs6000.c: Add full support for AIX archives. Rewrite old - read-only/host-only support. - - * coffcode.h (coff_slurp_symbol_table): Set C_HIDEXT symbols to be - BSF_LOCAL. - (OTHER_GLOBAL_CLASS): Do not define to be C_HIDEXT if - RS6000COFF_C. - - * targets.c (bfd_target): Add _bfd_read_ar_hdr field. Modify - BFD_JUMP_TABLE_ARCHIVE accordingly. - * libbfd-in.h (_bfd_snarf_ar_hdr): Don't declare. - (_bfd_compute_and_write_armap): Declare. - (_bfd_generic_read_ar_hdr): Declare. - (_bfd_read_ar_hdr): Define. - (_bfd_noarchive_read_ar_hdr): Define. - (_bfd_archive_bsd_read_ar_hdr): Define. - (_bfd_archive_coff_read_ar_hdr): Define. - * archive.c: Change all callers of _bfd_snarf_ar_hdr to call - _bfd_read_ar_hdr instead. - (_bfd_generic_read_ar_hdr): Rename from _bfd_snarf_ar_hdr. - (_bfd_compute_and_write_armap): Rename from - compute_and_write_armap. Make non-static. Change all callers. - * ecoff.c (_bfd_ecoff_slurp_armap): Call _bfd_read_ar_hdr rather - than _bfd_snarf_ar_hdr. - * aout-target.h (MY_read_ar_hdr): Define if not defined. - * ieee.c (ieee_read_ar_hdr): Define. - * libecoff.h (_bfd_ecoff_read_ar_hdr): Define. - * oasys.c (oasys_read_ar_hdr): Define. - * som.c (som_read_ar_hdr): Define. - * bfd-in2.h, libbfd.h: Rebuild. - -Thu Oct 5 14:04:07 1995 steve chamberlain <sac@slash.cygnus.com> - - * peicode.c (coff_swap_filehdr_in): If symptr is - zero, there aren't any symbols, even if nsyms is set. - -Thu Oct 5 11:45:02 1995 Ian Lance Taylor <ian@cygnus.com> - - * libecoff.h (struct ecoff_backend_data): Add adjust_headers - field. - * ecoff.c (ecoff_sec_to_styp_flags): Check for various Alpha - sections, and set styp correctly for them: .got, .hash, .dynamic, - .liblist, .rel.dyn, .conflic, .dynstr, .dynsym, .comment. - (_bfd_ecoff_styp_to_sec_flags): Check for various Alpha section - types. - (ecoff_sort_hdrs): New static function. - (ecoff_compute_section_file_positions): Return boolean, not void. - Sort the sections by VMA before looking through them. Put the - first non SEC_ALLOC section on a new page. Put every SEC_ALLOC - section on an appropriate boundary within the page. - (ecoff_compute_reloc_file_positions): Check return value of - ecoff_compute_section_file_positions. - (_bfd_ecoff_set_section_contents): Likewise. - (_bfd_ecoff_write_object_contents): Check for various Alpha - section types when incrementing text_size and data_size. Call - adjust_headers backend function if it exists. - * coff-alpha.c (alpha_adjust_headers): New static function. - (alpha_ecoff_backend_data): Initialize adjust_headers field. - * coff-mips.c (mips_ecoff_backend_data): Likewise. - - * hosts/i386bsd.h: Restore file incorrectly deleted on Sep 6. - -Wed Oct 4 18:15:02 1995 Jeff Law (law@hurl.cygnus.com) - - * rs6000-core.c (CORE_VERSION_1): Use CORE_VERSION_1 instead - of ALTERNATE_AIX_CORE_FORMAT. - * configure.in (aix4): No longer need CORE_FLAGS. - * configure: Updated. - -Wed Oct 4 15:36:36 1995 Ken Raeburn <raeburn@cygnus.com> - - NS32k changes from Ian Dall: - * aoutx.h (MY_final_link_relocate, MY_relocate_contents): New - macros. - (aout_link_input_section_std, aout_link_input_section_ext, - aout_link_reloc_link_order): Call them instead of _bfd_* - versions. - * aout-target.h (MY_exec_header_not_counted): New macro, defaults - to zero. - (backend_data): Use it instead of hardcoded zero. - - * aout-ns32k.c (CTOR_TABLE_RELOC_HOWTO): New macro. - (MY_swap_std_reloc_out): Use udata.i for KEEPIT, don't call stoi. - - * ns32knetbsd.c: Include bfd.h. - (MY_text_includes_header, MY_bfd_reloc_type_lookup): New macros. - (MY_bfd_reloc_type_lookup): Declare function too. - * pc532-mach.c (set_sizes): Don't declare. - (MY_text_includes_header, MY_exec_header_not_counted): Define. - (backend_data, MY_backend_data): Don't define. - - * config.bfd: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and - ns32k-*-lites* like ns32k-*-netbsd*. - - * hosts/nbsd.h: Swap order of sys/vmparam.h and sys/param.h, to - compile on lites. - -Wed Oct 4 14:15:52 1995 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_write_object_contents): Restore setting - f_timdat to 0, deleted on August 22. - -Tue Oct 3 16:28:32 1995 steve chamberlain <sac@slash.cygnus.com> - - * coffcode.h (coff_bfd_copy_private_symbol_data, - coff_bfd_copy_private_section_data, - coff_bfd_copy_private_bfd_data): ifdef to allow overrides. - * peicode.h (coff_bfd_copy_private_bfd_data): New - (pe_bfd_copy_private_bfd_data): New. - (coff_swap_scnhdr_in): Swap bss size into the right place. - (pe_print_private_bfd_data): Add some newlines. - -Tue Oct 3 11:53:04 1995 Jeff Law (law@hurl.cygnus.com) - - * som.c (setup_sections): Don't die if a space has no subspaces. - -Mon Oct 2 14:08:55 1995 Ian Lance Taylor <ian@cygnus.com> - - * elflink.h (elf_link_add_object_symbols): Don't let a weak - dynamic symbol override a common symbol. Don't change the size or - type if they have been set and the new symbol is not a definition. - Warn if the size or type changes. - -Sun Oct 1 01:34:41 1995 Jeff Law (law@hurl.cygnus.com) - - * som.c (som_begin_writing): Don't write the symbol table or - symbol strings. - (som_finish_writing): Write them here. Place them after the - subspace data, but before the relocs. - -Fri Sep 29 11:01:55 1995 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c (sunos_add_one_symbol): Just pass false, not - info->shared_library, to sunos_create_dynamic_sections. - (sunos_scan_ext_relocs): Don't warn about a reloc in the .text - section. - (sunos_check_dynamic_reloc): Remove .text section assertion. - -Thu Sep 28 18:48:47 1995 Stan Shebs <shebs@andros.cygnus.com> - - * config.bfd: Add powerpc-*-macos*, powerpc-*-mpw*. - * configure, configure.in: Add pmac_xcoff_vec case. - * Makefile.in (BFD32_BACKENDS): Add coff-pmac.o. - * coff-pmac.c: New file, PowerMac XCOFF support. - * coffcode.h (coff_set_arch_mach_hook): Add PowerMac case. - * targets.c (pmac_xcoff_vec): Declare. - - * mpw-config.in: Various changes to be compatible with the - autoconf-based configury. - * mpw-make.sed: New file, sed commands to translate Unix - makefile into MPW syntax. - * mpw-make.in: Remove. - * hosts/mpw.h: Remove. - * bfd-in.h, bfd-in2.h: If MPW, include the file that defines - true and false as enums, then define TRUE_FALSE_ALREADY_DEFINED. - -Thu Sep 28 17:06:23 1995 steve chamberlain <sac@slash.cygnus.com> - - * binary.c (binary_get_symtab): Return an empty string on error. - * opncls.c (bfd_fdpenr): Change WIN32 restriction to WINGDB. - -Thu Sep 28 15:30:44 1995 Kim Knuttila <krk@nellie> - - * coff-ppc.c: Reformatted according to gnu conventions - Removed irrelevant "if 0" code - -Thu Sep 28 11:19:53 1995 Ian Lance Taylor <ian@cygnus.com> - - * hp300hpux.c (convert_sym_type): Treat secondary symbols as weak - symbols rather than as indirect symbols. - (MY(slurp_symbol_table)): Don't do anything special about - secondary symbols. - - * coffcode.h (coff_new_section_hook): Make sure that the alignment - of .ctors and .dtors sections is no larger than 2. - - * sunos.c (sunos_add_one_symbol): Don't change - bfd_link_hash_common to bfd_link_hash_new, since it may be on the - undef list. - (bfd_sunos_record_link_assignment): Don't put __DYNAMIC in the - dynamic symbols when creating a shared library. - (sunos_scan_ext_relocs): Handle relocs correctly when creating a - shared library. - (sunos_scan_dynamic_symbol): Don't mark the __DYNAMIC symbol as - written even if it is not defined in a regular object. - (sunos_write_dynamic_symbol): Use plt_offset for the address of - the jump table reloc. Add an assertion. Use RELOC_JMP_SLOT - rather than the constant 22. - (sunos_check_dynamic_reloc): Handle creating a shared library. - (sunos_finish_dynamic_link): Set the first entry in the GOT to - zero when creating a shared library. - * aoutx.h (NAME(aout,final_link)): If there is a symbol __DYNAMIC, - write it out at the start of the symbol table. - - * Makefile.in (BFD32_BACKENDS): Add coff-arm.o. - -Thu Sep 28 00:58:05 1995 Doug Evans <dje@deneb.cygnus.com> - - * config.bfd: Add arm-*-coff. - * configure.in, configure: Add armcoff_{little,big}_vec. - * targets.c (armcoff_{little,big}_vec): Declare. - (bfd_target_vector): Add armcoff_{little,big}_vec. - * coff-arm.c (armcoff_{little,big}_vec): Always define. - -Wed Sep 27 10:37:14 1995 Ian Lance Taylor <ian@cygnus.com> - - * targets.c (bfd_find_target): Remove debugging code. - -Wed Sep 27 07:23:39 1995 Kim Knuttila <krk@nellie> - - * coff-ppc.c, pe-ppc.c, pei-ppc.c: Initial bfd for coff/PE - support on powerpc. - * Makefile.in: added *-ppc files - * coffcode.h: ppc MAGIC, and use peicode.h rather than coffswap.h to - allow pe based .o's to be shared with other tools on ppc/NT - * config.bfd: added powerpc[le]-[pe|winnt] config support - * configure, configure.in: added bfd_powerpc[le]_pe[i]_vec - * peicode.h: Added more section flags for PE on ppc - Added coff_swap_filehdr_out to allow peicode.h to be - used for non-image PE files on ppc. - Check for image, or not, before copying pe_opthdr - * targets.c: Added new bfd's - * targets.c: Removed two inactive bfds that shouldn't have made it this - far. - -Tue Sep 26 14:06:41 1995 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_reloc_type): Rename from reloc_type, and use - explicit values to initialize all relocs. Change all users. - (ppc_elf_brtaken_inner): New function to handle branch predicition - relocs. - (ppc_elf_brtaken_reloc): Ditto. - (ppc_elf_howto_raw): Use new functions. Make sure all unsupported - relocs use ppc_elf_unsupported_reloc. - (ppc_elf_merge_private_bfd_data): Keep track of whether an error - needs to be reported. - (ppc_elf_relocate_section): Support branch prediction relocs. - -Tue Sep 26 12:48:05 1995 Ian Lance Taylor <ian@cygnus.com> - - * bfd.c (bfd_assert): Remove \n from string passed to - _bfd_error_handler. - - * coff-i386.c: (TWO_DATA_SECS): Don't define. - * coffcode.h (bfd_coff_backend_data): Remove _bfd_make_section_hook. - (bfd_coff_make_section_hook): Don't define. - (coff_make_section_hook): Remove. - (sec_to_styp_flags): Remove TWO_DATA_SECS case. - (styp_to_sec_flags): Likewise. - (coff_write_object_contents): Likewise. - (bfd_coff_std_swap_table): Don't initialize make_section_hook - field. - * libcoff.h: Rebuild. - * coffgen.c (make_a_section_from_file): Just call - bfd_make_section_anyway, not bfd_make_section or - bfd_coff_make_section_hook. - * ecoff.c (_bfd_ecoff_make_section_hook): Remove. - * libecoff.h (_bfd_ecoff_make_section_hook): Don't declare. - * coff-alpha.c (alpha_ecoff_backend_data): Don't initialize - make_section_hook field. - * coff-mips.c (mips_ecoff_backend_data): Likewise. - - * aoutx.h (translate_from_native_sym_flags): Don't try to stuff - pointers into value field for warning and indirect symbols; just - leave the value field alone. - * linker.c (generic_link_add_symbol_list): Use next symbol for - warning and indirect symbols, rather than looking in symbol value. - * ecoff.c (ecoff_set_symbol_info): Remove indirect_ptr_ptr - parameter. Change all callers. Remove support for indirect - symbols; it didn't work anyhow. - (_bfd_ecoff_slurp_symbol_table): Remove indirect_ptr variable. - * syms.c: Change comments about BSF_WARNING and BSF_INDIRECT. - * bfd-in2.h: Rebuild. - -Mon Sep 25 16:04:09 1995 Michael Meissner <meissner@tiktok.cygnus.com> - - * elf32-ppc.c (ppc_elf_howto_raw): For all 14-bit branch relocs, - go back to telling the tools this reloc operates on 32 bits. - -Mon Sep 25 11:48:02 1995 Ian Lance Taylor <ian@cygnus.com> - - * aout-adobe.c (aout_adobe_callback): Use _bfd_error_handler - rather than a direct fprintf. - * archive.c (_bfd_write_archive_contents): Likewise. - * coffcode.h (coff_slurp_symbol_table): Likewise. - * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Likewise. - (ppc_elf_unsupported_reloc): Likewise. - (ppc_elf_relocate_section): Likewise. - * i386linux.c (linux_tally_symbols): Likewise. - (linux_finish_dynamic_link): Likewise. - * osf-core.c (osf_core_core_file_p): Likewise. - * rs6000-core.c (rs6000coff_get_section_contents): Likewise. - * som.c (som_sizeof_headers): Likewise. - * srec.c (srec_bad_byte): Likewise. - * bfd.c (bfd_assert): Likewise. Also change file to be const. - * libbfd-in.h (bfd_assert): Declare first parameter const. - * libbfd.h: Rebuild. - * coff-a29k.c (a29k_reloc): Don't bother to fprintf; returning - bfd_reloc_overflow is enough. - * coff-h8300.c (rtype2howto): Don't bother to fprintf; just abort. - * coff-h8500.c (rtype2howto): Likewise. - * coff-z8k.c (rtype2howto): Likewise. - * coffcode.h (dummy_reloc16_extra_cases): Likewise. - * elf.c (_bfd_elf_get_lineno): Likewise. - (_bfd_elf_no_info_to_howto): Likewise. - (_bfd_elf_no_info_to_howto_rel): Likewise. - * hp300hpux.c (convert_sym_type): Likewise. - (MY(swap_std_reloc_in)): Likewise. - * elf.c (bfd_section_from_shdr): Remove #if 0 sections. - - * libaout.h (struct aoutdata): Add line_buf field. - * aoutx.h (NAME(aout,find_nearest_line)): Remove statics buffer - and filename_buffer. Instead, use a malloc buffer stored in the - new line_buf field. Remove length restrictions. - - * coffgen.c (string_size): Remove static variable. - (debug_string_size, debug_string_section): Likewise. - (coff_fix_symbol_name): Add string_size_p, debug_string_section_p, - and debug_string_size_p parameters. Use them instead of the - global variables. Change all callers. - (coff_write_symbol): Likewise. - (coff_write_alien_symbol, coff_write_native_symbol): Likewise. - (coff_write_symbols): Add local variables to replace removed - global variables. - - * libcoff-in.h (struct coff_section_tdata): Add offset, i, - function, and line_base fields. - * libcoff.h: Rebuild. - * coffgen.c (coff_find_nearest_line): Use section tdata to cache - information, rather than using static variables. - - * sunos.c (sunos_read_dynamic_info): Adjust offsets in an NMAGIC - file. From Peter DeWolf <pld@amt.tay1.dec.com>. - - * init.c (initialized): Remove static variable. - (bfd_init): Don't bother setting initialized. - (bfd_check_init): Remove. - * opncls.c (_bfd_new_bfd): Don't call bfd_check_init. - * libbfd.h: Rebuild. - -Sat Sep 23 01:22:23 1995 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) - - * rs6000-core.c (rs6000coff_core_p): Don't check the core file - size for full core dumps. Copy core file header to private data. - (rs6000coff_core_file_failing_command, - rs6000coff_core_file_failing_signal): New functions to extract - the file name and terminating signal from the core file. - * coff-rs6000.c: Use them. - -Fri Sep 22 17:44:47 1995 Ian Lance Taylor <ian@cygnus.com> - - Change arch info to be const, initialized at compile time. - * archures.c: Reindent many functions. Change CONST to const. - (bfd_arch_info_type): Make arch_name const. Remove disassemble; - nothing set it anyhow. Make next const. - (bfd_arch_info_list): Remove. - (bfd_archures_list): Rename from archures_init_table. Change from - a table of function pointers to a table of bfd_arch_info_type - structure addresses. - (bfd_scan_arch): Rewrite accordingly. Return a const pointer. - (bfd_lookup_arch): Likewise. - (bfd_set_arch_info): Rewrite accordingly. Change argument to be a - const pointer. - (bfd_default_arch_struct): Make const. - (bfd_arch_init, bfd_arch_linkin): Remove. - (bfd_get_arch_info): Return a const pointer. - * init.c (bfd_init): Don't call bfd_arch_init. - * bfd.c (struct _bfd): Make arch_info const. - * bfd-in2.h: Rebuild. - * libbfd.h: Rebuild. - * configure.in: Put & before everything in $selarchs. - * configure: Rebuild. - * cpu-*.c: Change bfd_*_arch from a function which calls - bfd_arch_linkin to a const structure. - * ieee.c (ieee_object_p): Make arch const. - -Fri Sep 22 16:23:18 1995 Michael Meissner <meissner@tiktok.cygnus.com> - - * reloc.c (bfd_reloc_code_type): Add relocations to support all of - PowerPC V.4. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - - * elf32-ppc.c (reloc_type): Update names to match current draft. - (ppc_elf_howto_raw): Mark 14 bit relocs as short sized and PC - relative. Update names to current V.4 draft. - (ppc_elf_reloc_type_lookup): Add support for more relocations. - (ppc_elf_relocate_section): Rename relocations to match draft. - -Thu Sep 21 21:53:18 1995 Michael Meissner <meissner@cygnus.com> - - * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Allow modules - compiled with -mrelocatable-lib to be linked with either normal - modules or -mrelocatable modules. - -Wed Sep 20 12:03:26 1995 Ian Lance Taylor <ian@cygnus.com> - - * coffcode.h (coff_write_object_contents): Clear the vstamp field - in the a.out header. - - * aoutx.h (NAME(aout,swap_ext_reloc_out)): Don't set r_extern for - a reloc against a local symbol, even if it's not a section. - -Tue Sep 19 17:02:26 1995 Ian Lance Taylor <ian@cygnus.com> - - * targets.c (bfd_target): Remove unused align_power_min field. - * bfd-in2.h: Rebuild. - * All backends: Remove initialization of align_power_min. - -Tue Sep 19 14:02:21 1995 steve chamberlain <sac@slash.cygnus.com> - - * peicode.h (coff_swap_scnhdr_out): Get sizes for BSS right. - -Mon Sep 18 14:35:01 1995 Arne H. Juul <arnej@pvv.unit.no> - - * config.bfd (mips-dec-netbsd*): New target. - * configure.host (mips-dec-netbsd*): New host. - * configure.in (mips-dec-netbsd*): New native. - * configure: Rebuild. - -Fri Sep 15 10:24:36 1995 Ian Lance Taylor <ian@cygnus.com> - - Make the COFF backend linker merge common types: - * cofflink.c (struct coff_debug_merge_element): Define. - (struct coff_debug_merge_type): Define. - (struct coff_debug_merge_hash_entry): Define. - (struct coff_debug_merge_hash_table): Define. - (coff_debug_merge_hash_table_init): Define. - (coff_debug_merge_hash_table_free): Define. - (coff_debug_merge_hash_lookup): Define. - (struct coff_final_link_info): Add debug_merge field. - (coff_debug_merge_hash_newfunc): New static function. - (_bfd_coff_final_link): Allocate and free debug_merge table. - (coff_link_input_bfd): Merge identical enum, struct and union - types. - -Thu Sep 14 14:53:58 1995 Ian Lance Taylor <ian@cygnus.com> - - Convert i960 COFF to use COFF backend linker. - * coff-i960.c (coff_i960_relocate): Use a coff_section_data - structure to store the symbol being used. - (coff_i960_start_final_link): New static function. - (coff_i960_relocate_section): New static function. - (coff_i960_adjust_symndx): New static function. - (coff_start_final_link): Define. - (coff_relocate_section): Define. - (coff_adjust_symndx): Define. - * coffcode.h (bfd_coff_backend_data): Add new callback function - _bfd_coff_start_final_link. - (bfd_coff_start_final_link): Define. - (coff_start_final_link): Define if not defined. - (bfd_coff_std_swap_table): Add coff_start_final_link. - * cofflink.c (_bfd_coff_internal_syment_name): Make globally - visible. - (_bfd_coff_final_link): Call bfd_coff_start_final_link if the - function callback is not NULL. - * libcoff-in.h (struct coff_section_tdata): Add tdata field. - (_bfd_coff_internal_syment_name): Declare. - * libcoff.h: Rebuild. - * configure.in (icoff_big_vec): Add cofflink.o. - (icoff_little_vec): Likewise. - * configure: Rebuild. - -Wed Sep 13 17:38:23 1995 Fred Fish <fnf@rtl.cygnus.com> - - * Makefile.in (clean-info): Remove extraneous tab from line - following action. - -Wed Sep 13 13:27:53 1995 Ian Lance Taylor <ian@cygnus.com> - - * cofflink.c (coff_link_input_bfd): Fail if a section with no - contents has relocs. - -Thu Sep 12 12:45:34 1995 steve chamberlain <sac@slash.cygnus.com> - - * coffcode.h (coff_compute_section_file_positions): Keep the - raw size safe. - (coff_write_object_contents): Remember if it's a relocatable - file. - * libcoff-in.h (pe_data_type): New member 'has_reloc_section' - * peicode.h (coff_swap_filehdr_out): Clear not-reloc flag - if relocatable file. Swap out saved raw size. - -Tue Sep 12 12:14:33 1995 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.in (do_maintainer_clean): Rename from do_realclean. - (maintainer-clean): Rename from realclean, passing - maintainer-clean down to subdirectories, but leave realclean as a - synonym. - - * linker.c (_bfd_generic_link_add_one_symbol): Pass symbol name to - warning callback. - - * dep-in.sed: Remove config.h from generated dependencies. - - * sunos.c (sunos_slurp_dynamic_symtab): New static function, - broken out of sunos_canonicalize_dynamic_symtab. - (sunos_canonicalize_dynamic_symtab): Call new function - sunos_slurp_dynamic_symtab. - (sunos_add_dynamic_symbols): Add three new parameters. Return the - dynamic symbol table to the caller. - * aoutx.h (aout_link_add_symbols): Permit add_dynamic_symbols - callback to override the symbols being read. - * libaout.h (struct aout_backend_data): Add three new parameters - to add_dynamic_symbols callback. - - Extensive minor changes to avoid various gcc warnings. Also: - * Makefile.in (BFD32_BACKENDS): Remove coff-arm.o. - * archures.c (bfd_arch_info_type): Change mach field from long to - unsigned long. - (bfd_lookup_arch): Change machine parameter from long to unsigned - long. - -Mon Sep 11 10:55:47 1995 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c (sunos_scan_std_relocs): Fix BFD_ASSERT: it's OK to find - a symbol with a non-zero plt_offset. - -Fri Sep 8 11:47:24 1995 Ian Lance Taylor <ian@cygnus.com> - - * elfcode.h (align_file_position): Remove; not used. - - * configure.in: Only check for <sys/procfs.h> on a native system, - and make sure it defines prstatus_t. - * configure: Rebuild. - -Thu Sep 7 12:48:01 1995 Ian Lance Taylor <ian@cygnus.com> - - * sunos.c (sunos_write_dynamic_symbol): Correct m68k abort test. - - * config.in: Rename from config.h.in. - * configure.in: Call AC_CONFIG_HEADER with config.h:config.in. - Check for config.h:config.in when creating stamp-h. - * configure: Rebuild. - * Makefile.in (stamp-h): Depend upon config.in rather than - config.h.in. Set CONFIG_HEADERS to config.h:config.in when - calling config.status. - - * Makefile.in (do_distclean): Remove config.h and stamp-h. - (Makefile): Just rebuild Makefile. - (config.h, stamp-h): New targets. - * configure.in: Create stamp-h when rebuilding config.h. - * configure: Rebuild. - -Wed Sep 6 15:00:33 1995 Ian Lance Taylor <ian@cygnus.com> - - * configure.in: Call AC_CONFIG_HEADER. Substitute - HOST_64BIT_LONG. Check that various header files exist. Check - that fcntl exists. Call BFD_BINARY_FOPEN. Check whether malloc - and/or free need to be declared. Don't make a link to sysdep.h. - Define TRAD_HEADER for various hosts. - * configure: Rebuild. - * configure.host: Don't set my_host. Add definitions taken from - host header files for various entries. Remove entries which now - do nothing. - * acconfig.h: New file. - * config.h.in: New file, built by autoheader. - * sysdep.h: New file. - * Makefile.in (do_distclean): Don't remove sysdep.h. - (RECONFIG): Remove. - (LOCAL_H_DEPS): New variable. - ($(BFD_LIBS)): Use $(LOCAL_H_DEPS) rather than libbfd.h and - $(RECONFIG). - ($(BFD_MACHINES), $(BFD_BACKENDS)): Likewise. - ($(OPTIONAL_BACKENDS)): Likewise. - (stmp-bfd.h): Just substitute for BFD_HOST_64BIT_LONG, rather than - looking through sysdep.h. - * bfd-in.h (BFD_HOST_64BIT_LONG): Define; set by Makefile. - (BFD_HOST_64_BIT): Define based on BFD_HOST_64BIT_LONG. - (fprintf_vma, sprintf_vma): Likewise. - (int64_type, uint64_type): Don't define. - * bfd-in2.h: Rebuild. - * archures.c, bfd.c, srec.c: Include <ctype.h>. - * elfcore.h: Check HAVE_SYS_PROCFS_H rather than HAVE_PROCFS. - * lynx-core.c: Include stuff from old hosts/lynx.h. - * opncls.c (bfd_fdopenr): Check HAVE_FNCTL and defined (F_GETFL), - rather than NO_FCNTL. - * targets.c (bfd_target_list): Check HOST_HPPAHPUX and ! __STDC__ - rather than NATIVE_HPPAHPUX_COMPILER. - * trad-core.c: Don't include <errno.h>. Include TRAD_HEADER if it - is defined. - * hosts/*.h: Remove all header files which merely include, - declare, and define things. Leave header files which define - information needed by trad-core.c. - - * aclocal.m4 (BFD_BINARY_FOPEN): Define. - (BFD_CC_FOR_BUILD): Define. - * configure.in: Use BFD_CC_FOR_BUILD. - * configure: Rebuild. - -Tue Sep 5 19:35:28 1995 Ian Lance Taylor <ian@cygnus.com> - - * aclocal.m4: Don't try to grep ../Makefile if it doesn't exist. - * configure: Rebuild. - - * coff-sparc.c (CALC_ADDEND): Don't set the addend to the value of - a global symbol. - -Tue Sep 5 12:48:26 1995 Jason Molenda (crash@phydeaux.cygnus.com) - - * config.bfd: i386pe_ve -> i386pe_vec. - -Mon Sep 4 14:02:43 1995 Ian Lance Taylor <ian@cygnus.com> - - * configure.host: Incorporate host Makefile fragments by setting - shell variables. - * configure.in: Call AC_PROG_CC. Substitute CFLAGS, HDEFINES and - AR. Call AC_PROG_INSTALL. Substitute CC_FOR_BUILD, choosing a - value based on whether the code is being compiled by a cross - compiler. Don't substitute host_makefile_frag or frags. - * aclocal.m4: New file to define local AC_PROG_CC. - * configure: Rebuild. - * Makefile.in (INSTALL): Set to @INSTALL@. - (INSTALL_PROGRAM): Set to @INSTALL_PROGRAM@. - (INSTALL_DATA): Set to @INSTALL_DATA@. - (AR): Set to @AR@. - (CC): Define as @CC@. - (CFLAGS): Set to @CFLAGS@. - (CC_FOR_BUILD): Set to @CC_FOR_BUILD@. - (@host_makefile_frag@): Remove. - (ALL_CFLAGS): Change $(HDEFINES) to @HDEFINES@. Move $(CFLAGS) - after other options. - (config.status): Remove dependency upon @frags@. - * config/*.mh, config/README: Remove. - - * config.bfd: Rewrite to incorporate the contents of the Makefile - fragments by setting shell variables, rather than merely returning - the name of a Makefile fragment. - * configure.in: Use shell variables set by config.bfd rather than - looking at the target Makefile fragment files. Don't substitute - target_makefile_frag. Do substitute TDEFINES. - * configure: Rebuild. - * Makefile.in (@target_makefile_frag@): Remove. - (ALL_CFLAGS): Change $(TDEFINES) to @TDEFINES@. - * config/*.mt: Remove. - -Mon Sep 4 03:13:28 1995 Ken Raeburn <raeburn@cygnus.com> - - * configure.in: Put changequote lines around "i[345]86" patterns - section of core file support. - -Sun Sep 3 11:31:58 1995 Jeff Law (law@snake.cs.utah.edu) - - * som.c (som_bfd_print_private_bfd_data): Define to use the - generic version. - -Fri Sep 1 17:08:40 1995 steve chamberlain <sac@slash.cygnus.com> - - * peicode.h (coff_swap_aouthdr_in): Add ImageBase to - entry, text_start and data_start. - -Fri Sep 1 18:06:28 1995 Ian Lance Taylor <ian@cygnus.com> - - * Makefile.in (OFILES): Remove $(TDEPFILES). - * config/apollo.mt (TDEPFILES): Remove. - * config/README: Update. - - * configure.in: For a native configuration, set COREFILE and - COREFLAG based on the canonical host name. - * configure: Rebuild. - * Makefile.in: Rebuild dependencies. - (ALL_CFLAGS): Add @COREFLAG@. - (OFILES): Replace $(HDEPFILES) with @COREFILE@. - * coff-rs6000.c: Check AIX_CORE rather than HOST_AIX for core file - support routines. Check LYNX_CORE rather than HOST_LYNX. - * lynx-core.c: Check LYNX_CORE rather than HOST_LYNX. - * i386lynx.c: Likewise. - * m68klynx.c: Likewise. - * sparclynx.c: Likewise. - * rs6000-core.c: Check AIX_CORE rather than HOST_AIX. - * *-core.c: Comment changes. - * config/decstation.mh (HDEPFILES): Remove. - (HDEFINES): Remove -DTRAD_CORE. - * config/irix3.mh (RANLIB): Remove. - * config/irix4.mh (HDEPFILES, RANLIB): Remove. - (HDEFINES): Remove -DIRIX_CORE. - * config/riscos.mh (RANLIB, HDEPFILES): Remove. - (HDEFINES): Remove -DTRAD_CORE. - * config/ncr3000.mh (AR_FLAGS, RANLIB): Remove. - * config/ultra3.mh (RANLIB): Remove. - * config/aix4.mh, config/alphaosf.mh, config/amix.mh: Remove. - * config/apollo.mh, config/delta68.mh, config/delta88.mh: Remove. - * config/dpx2.mh, config/esix.mh, config/harris.mh: Remove. - * config/hp300.mh, config/hp300bsd.mh, config/hppabsd.mh: Remove. - * config/hppahpux.mh, config/hppaosf.mh: Remove. - * config/i386aix.mh, config/i386bsd.mh: Remove. - * config/i386linux.mh, config/i386mach3.mh: Remove. - * config/i386sco.mh, config/i386v.mh, config/i386v4.mh: Remove. - * config/irix5.mh, config/m88kmach3.mh, config/mipsbsd.mh: Remove. - * config/mipsmach3.mh, config/news-mips.mh: Remove. - * config/news.mh, config/pc532mach.mh, config/riscix.mh: Remove. - * config/rs600.mh, config/rs6000lynx.mh: Remove. - * config/solaris2.mh, config/stratus.mh: Remove. - * config/symmetry.mh, config/sysv4.mh, config/tahoe.mh: Remove. - * config/vaxbsd.mh, config/vaxult.mh, config/vaxult2.mh: Remove. - -Fri Sep 1 15:18:50 1995 Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp> - - * elflink.h (elf_bfd_final_link): Don't change a DT_INIT or - DT_FINI entry if the appropriate symbol is not in the hash table. - - * libelf.h (struct elf_backend_data): Add create_program_headers - and want_hdr_in_seg fields. - * elfxx-target.h (elf_backend_want_hdr_in_seg): Define if not - defined. - (elf_backend_create_program_headers): Likewise. - (elfNN_bed): Initialize create_program_headers and - want_hdr_in_seg. - * elf.c (get_program_header_size): Call create_program_headers - backend routine. - (map_program_segments): Check want_hdr_in_seg backend field. Call - create_program_headers backend routine. - - * elf.c (assign_file_positions_except_relocs): Align non allocated - sections when creating an executable. - - * elfcode.h (elf_swap_phdr_in): Make non static. - (elf_swap_phdr_out): Make non static. - * libelf.h (bfd_elf32_swap_phdr_in): Declare. - (bfd_elf32_swap_phdr_out): Declare. - (bfd_elf64_swap_phdr_in): Declare. - (bfd_elf64_swap_phdr_out): Declare. - - * ecofflink.c (ecoff_collect_shuffle): New static function. - (_bfd_ecoff_get_accumulated_pdr): New function. - (_bfd_ecoff_get_accumulated_sym): New function. - (_bfd_ecoff_get_accumulated_ss): New function. - * libbfd-in.h (_bfd_ecoff_get_accumulated_pdr): Declare. - (_bfd_ecoff_get_accumulated_sym): Declare. - (_bfd_ecoff_get_accumulated_ss): Declare. - * libbfd.h: Rebuild. - -Fri Sep 1 13:20:25 1995 Ian Lance Taylor <ian@cygnus.com> - - * libecoff.h (_bfd_ecoff_bfd_print_private_bfd_data): Fix typo. - - * elflink.h (elf_link_add_object_symbols): Handle indirect and - warning symbols. If any section is named .gnu.warning.XXX, treat - the contents as a warning to be issued if the symbol XXX is - referenced. - (elf_link_output_extsym): For an indirect or warning symbol, just - output the symbol it points to. - - * linker.c (_bfd_link_hash_newfunc): Don't bother to set bfd_error - if bfd_hash_allocate fails, since it will already be set. - (generic_link_hash_newfunc): Likewise. - (archive_hash_newfunc): Likewise. - (hash_entry_bfd): New static function. - (_bfd_generic_link_add_one_symbol): Pass new arguments to warning - callback. Allocate a new warning using the hash table newfunc. - Use bfd_hash_replace to update the entry in the hash table, rather - than assuming we can copy the fields with structure assignment. - - * hash.c (bfd_hash_replace): New function. - * bfd-in.h (bfd_hash_replace): Declare. - * bfd-in2.h: Rebuild. - -Fri Sep 1 08:12:50 1995 James G. Smith <jsmith@beauty.cygnus.com> - - * config.bfd: Add mips*vr4300-*-elf* target. - * config/mipsbvr4300.mt: Added. - -See file ChangeLog.2 - +For older changes see ChangeLog-9697 Local Variables: mode: change-log diff --git a/bfd/ChangeLog.1 b/bfd/ChangeLog-9193 index f36ed3c..15af931 100644 --- a/bfd/ChangeLog.1 +++ b/bfd/ChangeLog-9193 @@ -1,3 +1,903 @@ +Fri Dec 31 16:23:43 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + Minor cleanups suggested by CodeCenter. + * aoutx.h, coffgen.c, ecoff.c, ecofflink.c, elf.c, libbfd.c, + linker.c, reloc.c, section.c, srec.c: Added /*ARGSUSED*/ as + appropriate. + * aoutx.h (struct external_exec): Removed unnecessary declaration. + (NAME(aout,some_aout_object_p)): Set some tdata pointers to NULL. + (adjust_z_magic): Removed useless variable data_vma. + (stringtab_init): Initialize hash_zero. + (add_to_stringtab): Removed unused fourth argument. + (NAME(aout,swap_std_reloc_out)): Removed useless variable + r_addend. + (aout_link_input_section): Added some casts. + * archive.c (get_extended_arelt_filename, do_slurp_coff_armap, + bfd_ar_hdr_from_filesystem, bsd_write_armap, coff_write_armap): + Minor code rewriting to make it more C like. + (do_slurp_bsd_armap): Added some casts. + * ecoff.c (ecoff_write_object_contents): Removed useless variable + scn_base. + (ecoff_write_armap): Added some casts. Use "" rather than "\0". + * ecofflink.c (bfd_ecoff_write_debug): Added a cast. + * libaout.h (struct internal_exec): Removed unnecessary + declaration. + * linker.c (_bfd_generic_indirect_link_order): Added a cast. + * opncls.c (new_bfd): Removed a cast. + * reloc.c (bfd_generic_get_relocated_section_contents): Added + some casts. + * srec.c (internal_srec_write_object_contents): Removed useless + variable bytes_written. + +Fri Dec 31 11:46:13 1993 David J. Mackenzie (djm@thepub.cygnus.com) + + * i386mach3.c (N_TXTADDR): Don't define after all. + (TEXT_START_ADDR): Don't include exec header size in value. + +Thu Dec 30 15:47:54 1993 David J. Mackenzie (djm@thepub.cygnus.com) + + * i386mach3.c (N_TXTADDR): Define. + +Thu Dec 30 13:37:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + Extensive changes to move the bulk of the linker into BFD so that + more efficient backend code can be written for specific object + files. Only existing efficient backend is a.out. + * seclet.c, seclet.h: Removed. + * hash.c, linker.c, genlink.h: New files. + * bfd-in.h: Removed bfd_error_vector. Declared hash table + structures and functions. + (JUMP_TABLE): Removed bfd_seclet_link, added + bfd_link_hash_table_create, bfd_link_add_symbols and + bfd_final_link. + * All backends: Changed accordingly. + * bfd-in2.h: Rebuilt. + * bfd.c (struct _bfd): Added link_next and archive_pass fields. + Removed ld_symbols field. + (bfd_nonrepresentable_section, bfd_undefined_symbol, + bfd_reloc_value_truncated, bfd_reloc_is_dangerous, + bfd_error_vector): Removed. + (bfd_default_error_trap, bfd_error_trap, + bfd_error_nonrepresentabltrap): Removed. + (bfd_get_relocated_section_contents): Pass link_info. Pass + link_order instead of seclet. Pass symbols. + (bfd_relax_section): Pass link_info. + (bfd_seclet_link): Removed. + (bfd_link_hash_table_create, bfd_link_add_symbols, + bfd_final_link): New macros. + * libbfd-in.h: If __GNUC__ is defined and alloca is not, define + alloca as __builtin_alloca. Declare internal linking functions. + * libbfd.h: Rebuilt. + * libbfd.c (bfd_seek): Comment out fseek assertion. It's worked + for months. + * reloc.c (reloc_howto_type): Added error_message argument to + special_function field. Changed all callers and all definitions. + (bfd_get_reloc_size): Make argument a const pointer. + (bfd_perform_relocation): Add error_message argument to hold + string set if return value if bfd_reloc_dangerous. Changed all + callers. + (_bfd_final_link_relocate, _bfd_relocate_contents): New functions. + * section.c (asection): Renamed seclets_head and seclets_tail to + link_order_head and link_order_tail. + * targets.c (bfd_target): Replaced seclet argument with link_info + and link_order and symbols arguments in + bfd_get_relocated_section_contents. Added symbols argument to + bfd_relax_section. Removed bfd_seclet_link. Added + bfd_link_hash_table_create, bfd_link_add_symbols and + bfd_final_link. + * libaout.h (struct aoutdata): Added external_syms, + external_sym_count, external_strings, sym_hashes fields. + (obj_aout_external_syms, obj_aout_external_sym_count, + obj_aout_external_strings, obj_aout_sym_hashes): New accessor + macros. + (WRITE_HEADERS): Only output symbols if outsymbols is not NULL. + * aoutx.h: Wrote new back end linker routines. + (translate_to_native_sym_flags): Return boolean value. Don't use + bfd_error_vector. + (NAME(aout,write_syms)): Return boolean value. Check return value + of translate_to_native_sym_flags and bfd_write. + * aout-target.h (final_link_callback): New function. + (MY_bfd_final_link): New function. + * aout-adobe.c (aout_adobe_write_object_contents): Check return + value of aout_32_write_syms. + * hp300hpux.c (MY(write_object_contents)): Likewise. + * i386lynx.c (WRITE_HEADERS): Likewise. + * libaout.h (WRITE_HEADERS): Likewise. + * bout.c: Changed functions to use link_info->callbacks rather + than bfd_error_vector, and link_orders rather than seclets. + * coff-alpha.c: Likewise. + * coff-h8300.c: Likewise. + * coff-h8500.c: Likewise. + * coff-sh.c: Likewise. + * coff-z8k.c: Likewise. + * elf32-hppa.c: Likewise. + * reloc16.c: Likewise. + * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Look + up _gp in the hash table rather than in outsymbols. + * coff-a29k.c (a29k_reloc): Pass errors back in new error_message + argument rather than printing them. + * coffcode.h (bfd_coff_reloc16_extra_cases): Take link_info and + link_order arguments rather than seclet. Changed all uses and + definitions. + (bfd_coff_reloc16_estimate): Pass link_info arguments. Changed + all uses and definitions. + * libcoff.h: Rebuilt. + * ecoff.c (ecoff_get_extr): If symbol is defined by linker, but + not by ECOFF, make it scAbs. + (ecoff_bfd_final_link): Renamed from ecoff_bfd_seclet_link and + rewritten. + * elf32-mips.c (mips_elf_final_link): Renamed from + mips_elf_seclet_link and rewritten. + * elf32-hppa.c (elf32_hppa_stub_description): Added link_info + field. + (new_stub, add_stub_by_name, hppa_elf_build_arg_reloc_stub, + hppa_elf_build_long_branch_stub, hppa_look_for_stubs_in_section): + Added link_info arguments. Changed all callers. + * elfcode.h (elf_slurp_symbol_table): Don't quit if outsymbols is + not NULL. + * oasys.c (oasys_write_sections): Return boolean value rather than + using bfd_error_vector. + (oasys_write_object_contents): Check return value of + oasys_write_sections. + * hosts/std-host.h: Don't declare qsort or strtol. + * Makefile.in: Rebuild dependencies. + (BFD_LIBS): Removed seclet.o. Added hash.o and linker.o. + (CFILES): Removed seclet.c. Added hash.c and linker.c. + (HFILES): Removed seclet.h. Added genlink.h. + +Thu Dec 30 07:41:36 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) + + * section.c (bfd_get_section_contents): Return zero filled buffer + if section has no contents. + +Tue Dec 28 12:43:54 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * elf.c (bfd_elf_generic_reloc): If this is not an inplace reloc, + then skip bfd_perform_relocation even if the addend is non-zero. + +Tue Dec 21 09:22:19 1993 Ken Raeburn (raeburn@rtl.cygnus.com) + + * coffcode.h (coff_write_relocs) [SWAP_OUT_RELOC_OFFSET]: Copy + addend to r_offset field. + + * Makefile.in (CFILES): Added coff-sparc.c. Rebuild dependencies. + + * coff-sparc.c (SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET, + CALC_ADDEND): Define. + + * aix386-core.c (aix386_core_file_p): Use cd_regs[0] for computing + the offsetof because AIX /bin/cc does not like to take the address + of an array. (From Minh Tran-Le.) + +Thu Dec 16 13:06:32 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * Thu Dec 16 15:41:06 1993 Peter Hoogenboom (hoogen@cs.utah.edu) + + * elf32-hppa.c (hppa_elf_build_arg_reloc_stub): Make sure to copy + the return pointer into %r2 if no jump-in-call-delay-slot + optimization was done. + + * hosts/hp300bsd.h: Correctly identify 4.3BSD vs 4.4BSD. + +Wed Dec 15 08:04:16 1993 David J. Mackenzie (djm@thepub.cygnus.com) + + * hosts/std-host.h: (time): Don't declare; conflicts on Mach3. + + * hosts/i386mach3.h (HOST_PAGE_SIZE): Set to 1 to avoid padding. + (HOST_SEGMENT_SIZE): Set to 0 for same reason. + + * i386mach3.c (PAGE_SIZE, SEGMENT_SIZE): Same changes as above. + (TEXT_START_ADDR): Correct. + (MY_backend_data): Define. + + * aoutx.h (adjust_o_magic, adjust_z_magic, adjust_n_magic): + New functions; code moved from aout_<size>_adjust_sizes_and_vmas. + +Tue Dec 14 21:48:33 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * som.c (som_begin_writing): Fix thinkos in auxiliary header + support. + (bfd_som_attach_aux_hdr): Likewise. + +Mon Dec 13 23:34:48 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * elf32-hppa.c (hppa_elf_gen_reloc_type): Handle 'T' field + selectors for PIC code. + + * som.c (hppa_som_gen_reloc_type): Handle 'T' field selectors. + (som_write_fixups): Handle R_DLT_REL, R_FSEL, R_RSEL, R_LSEL + relocations needed by PIC. + +Tue Dec 7 15:47:51 1993 Stu Grossman (grossman at cygnus.com) + + * nlmcode.h: Fixes to avoid compiler warnings... + +Tue Dec 7 15:10:54 1993 Ian Lance Taylor (ian@cygnus.com) + + * libnlm.h (nlm_backend_data): Removed macro definition. + (nlm_alpha_backend_data): Adjusted accordingly. + +Sun Dec 5 19:32:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * som.c (som_begin_writing): Flesh out code for handling simple + auxiliary headers. + (bfd_som_attach_aux_hdr): New function. + + * som.h (struct somdata): Add fields for attaching version and + copyright headers. Add accessor macros. + + * som.c (R_DLT_REL, R_AUX_UNWIND, R_SEC_STMT): Add protected + definitions for old versions of HPUX which fail to define them. + (som_hppa_howto_talbe): Add R_DLT_REL, R_AUX_UNWIND, and R_SEC_STMT + now that they're safe. Delete bogus R_STATEMENT relocations. + + * som.c (som_hppa_howto_table): Add missing R_END_TRY. Delete + extra R_DATA_OVERRIDE. + (hppa_som_gen_reloc_type): Generate a relocation for the rounding + mode selector if needed. + (som_write_fixups): Handle requests for a change in the default + rounding mode. Rounding modes do not consume input bytes, but + are just markers much like R_ENTRY and R_EXIT. + +Sat Dec 4 19:40:32 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + Fri Dec 3 09:55:17 1993 Pete Hoogenboom (hoogen@cs.utah.edu) + + * elf32-hppa.c: (hppa_elf_reloc): Do not do code reordering when + the branch instruction as originally been nullified. + hppa_elf_reloc): Avoid useless call to bfd_put_32 () in the + case of no code reordering due to an LDO instruction in the + delay slot of the branch. Make sure to relocate the correct + instruction. Do not perform instruction reordering for millicode + calls. + (hppa_elf_build_arg_reloc_stub): Change the relocation type + to R_HPPA_STUB_CALL_17 when special processing might be needed. + (hppa_elf_build_long_branch_stub): Prevent code reordering on + a call from a linker stub to another linker stub and for millicode + calls. Do not trash the return register for calls from one linker + stub to a second linker stub. + + * elf32-hppa.c: (elf_hppa_howto_table): PLABEL and DLT + relocations are not pc-relative. + + * hppa_stubs.h: (BLE_N_XXX_0_31): New instruction used in + linker stub code. + (COPY_2_31): Likewise. + +Fri Dec 3 18:40:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * config/solaris2.mh (HDEFINES): Remove -Dconst= + * hosts/solaris.h: If not __GNUC__, define const as empty. + +Thu Dec 2 15:43:32 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * ecoff.c: Added various casts for 32/64 bit cross targeting. + (ecoff_mkobject_hook): Set SEC_SHARED_LIBRARY for the .reginfo + section so that the linker ignores it. + * ecofflink.c: Added various casts for 32/64 bit cross targeting. + (ecoff_add_bytes): Changed need argument to size_t. + (bfd_ecoff_debug_link_other): Check return value of + ecoff_add_string. + + * libbfd-in.h (new_bfd): Use void rather than an empty parameter + list. + * libbfd.h: Rebuilt. + + * libnlm.h (struct nlm_obj_tdata): New field backend_data. + (nlm_backend_data, nlm_alpha_backend_data): New accessor macros. + (struct nlm_backend_data): New field no_uninitialized_data. + (nlm_no_uninitialized_data): New accessor macro. + * nlmcode.h (nlm_compute_section_file_positions): Handle + no_uninitialized_data. + (nlm_external_reloc_compare): Sort relocs by address for a + particular symbol, to make the sort more stable. + (nlm_write_object_contents): Cast the arguments to qsort. Get the + value of a debugging symbol the same way we get the value of a + normal symbol. + * nlm32-alpha.c: Various changes. Write out GP and .lita relocs. + Set no_uninitialized_data to true. + * nlm32-i386.c (nlm32_i386_backend), nlm32-sparc.c + (nlm32_sparc_backend): Set no_uninitialized_data field false. + * nlmswap.h (nlm_swap_fixed_header_out): Zero out destination + before filling it in. + +Wed Dec 1 21:47:58 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * som.c (som_section_type, som_decode_symcalss): New functions. + (som_get_symbol_info): Use them. + (som_slurp_symbol_table): Set the section of common and undefined + symbols correctly. + +Wed Dec 1 14:15:10 1993 Ken Raeburn (raeburn@cygnus.com) + + * elfcode.h (write_relocs): Initialize local var LAST_SYM_IDX, to + make gcc happy. + + * mipsbsd.c: Changes from Ralph Campbell: + (mips_howto_table_ext): MIPS_RELOC_LO16 should use + complain_overflow_dont. + (aout_mips_*_vec): Make name use "a.out" instead of "aout", to + make gdb happy. + + * bfd.c (bfd_errmsgs): Reword invalid-target message. + + * config.bfd: For sparc*-*-coff, use sparc-coff. + * configure.in: Handle sparccoff_vec. + * targets.c (sparccoff_vec): Declare. + + * reloc.c (bfd_get_reloc_size): New function. + (struct reloc_howto_type): Update documentation of size field. + +Wed Dec 1 14:39:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * nlm32-alpha.c: New file; preliminary Alpha NetWare support. + * config.bfd (alpha-*-netware*): New target; use alpha-nlm. + * config/alpha-nlm.mt: New file. + * configure.in (nlm32_alpha_vec): New vector; use nlm32-alpha.o, + nlm32.o, and nlm.o. + * Makefile.in (BFD32_BACKENDS): Added nlm32-alpha.o. + (CFILES): Added nlm32-alpha.c. + Rebuilt dependencies. + * targets.c (nlm32_alpha_vec): Declare. + + * libnlm.h (struct nlm_backend_data): New fields + optional_prefix_size, nlm_backend_object_p, nlm_write_prefix, + nlm_set_public_section, nlm_get_public_offset. Removed unused + nlm_write_reloc field. Changed nlm_write_import to remove + unnecessary symbol argument. Renamed nlm_write_externals to + nlm_write_external, and changed cound argument from bfd_vma to + bfd_size_type. + (nlm_optional_prefix_size, nlm_backend_object_p_func, + nlm_write_prefix_func, nlm_set_public_section_func, + nlm_get_public_offset_func): New accessor macros. + (nlm_write_reloc_func): Removed. + (nlm_write_external_func): Adjusted for field renaming. + * nlm32-i386.c (nlm_i386_write_import): Renamed from + nlm_i386_write_reloc. Removed old nlm_i386_write_import which + just called old nlm_i386_write_reloc. + (nlm_i386_write_external): Renamed from nlm_i386_write_externals. + Declared. Changed second argument from bfd_vma to bfd_size_type. + (nlm32_i386_backend): Adjusted for changes to fields and names. + * nlm32-sparc.c (nlm_sparc_mangle_relocs): Removed unused, + ifdeffed out code. + (nlm_sparc_write_import): Removed second argument. + (nlm_sparc_write_external): Renamed from + nlm_sparc_write_externals. Changed second argument from bfd_vma + to bfd_size_type. + (nlm32_sparc_backend): Adjusted for changes to fields and names. + * nlmcode.h: Removed some unused code. + (nlm_object_p): Don't destroy tdata pointer. Call + backend_object_p function if it exists. + (nlm_slurp_symbol_table): Removed unused variable rcount. Call + set_public_section_func if it exists instead of checking + NLM_HIBIT. + (nlm_compute_section_file_positions): Account for + optional_prefix_size. + (nlm_write_object_contents): Account for optional_prefix_size. + Removed useless variable write_reloc_func. Changed declaration + and call of write_import_func. Call write_prefix_func if it + exists. Removed unused variables len and temp. Call + get_public_offset_func if it exists rather than setting NLM_HIBIT. + * nlmswap.h: Declare functions. + + * bfd-in.h (uint64_typeLOW, uint64_typeHIGH): Fully parenthesize + for clarity. + (fprintf_vma, sprintf_vma): Use %lx, not %x. + * bfd-in2.h: Rebuilt. + * hosts/alphaosf.h (uint64_typeLOW, uint64_typeHIGH): Cast results + to unsigned long. + + * config.bfd: Don't set target64 here, as the setting is ignored. + * configure.in (ecoffalpha_little_vec): Set target64. + + * config/alphaosf.mt (TDEFINES): Removed; setting host parameters + in TDEFINES is wrong. + + * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): + Remove unused variable output_section. + +Tue Nov 30 16:45:23 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * irix-core.c: New file for Irix 4 and Irix 5 core support. + Functions taken out of coff-mips.c. Handle vmap type VMAPFILE. + * coff-mips.c: Irix 4 core file support moved to irix-core.c. + * targets.c: If IRIX_CORE defined, include irix_core_vec in + target_vector. + * config/irix4.mh (HDEFINES): Add -DIRIX_CORE. + (HDEPFILES): Define to be irix-core.o. + * config/irix5.mh (HDEFINES): Define to be -DIRIX_CORE. + (HDEPFILES): Define to be irix-core.o. + * Makefile.in (OPTIONAL_BACKENDS): Added irix-core.o. Removed + sco-core.o, which no longer exists. + (CFILES): Added all *-core.c files. + Rebuilt dependencies. + +Wed Nov 24 02:02:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * elfcode.h (map_program_segments): Restore check of file_size != + mem_size, but only if SHT_PROGBITS. + + * ecofflink.c: New file to hold ECOFF debug information linking + routines. + * ecoff.c (ecoff_clear_output_flags, ecoff_rel, ecoff_dump_seclet, + ecoff_add_string, ecoff_get_debug): Removed. Functionality now in + ecofflink.c. + (ecoff_get_extr, ecoff_set_index): New functions. + (ecoff_slurp_symbolic_info): Don't save raw_size. + (ecoff_bfd_seclet_link): Rewrote to use ecofflink.c functions. + (ecoff_compute_section_file_positions): Don't set EXEC_P just + because there is a start address. + (ecoff_write_object_contents): Handle external symbols here. Use + ecofflink.c functions to write out debugging information. + * elf32-mips.c (mips_elf_read_ecoff_info, mips_elf_get_extr, + mips_elf_set_index): New functions. + (mips_elf_seclet_link): Discard empty sections, the .options + section and .gptab sections. Handle linking .mdebug section. + * libecoff.h (ecoff_data_type): Removed raw_size and ifdbase. + * libelf.h (elf_symbol_type): Added mips_extr to tc_data union. + * bfd-in.h: Added prototypes for routines in ecofflink.c (some are + called by gas, so they are public). + * bfd-in2.h: Rebuilt. + * Makefile.in (BFD_LIBS): Added ecofflink.o. + (CFILES): Added ecofflink.c. + (ecofflink.o): New target. Rebuilt dependencies. + +Mon Nov 22 22:26:42 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * som.c (hppa_object_p): Also recognize SHARED_MAGIC_CNX as + a valid magic number if it's been defined. + +Mon Nov 22 14:17:36 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * ecoff.c (ecoff_mkobject): Don't create .scommon section; linker + no longer requires it. + (ecoff_bfd_seclet_link, ecoff_sizeof_headers, + ecoff_write_object_contents): Don't treat .scommon section + specially. + +Mon Nov 22 10:54:27 1993 Fred Fish (fnf@cygnus.com) + + Merged changes from kev@spuds.geg.mot.com (Kevin A. Buettner): + * bfd/config/delta88.mh (HDEFINES): Define this to be -DPTRACE_CORE. + * bfd/config/delta88.mh (HDEPFILES): Defined to be ptrace-core.o. + * bfd/ptrace-core.c: New file for dealing with core files with + start with the ptrace_user structure found on BCS compliant systems. + * bfd/targets.c (ptrace_core_vec): New vector. + +Mon Nov 22 02:33:12 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * Minimal support for reading SOM fixup streams. Allows + objdump -r to do something reasonable. + * som.c (som_get_reloc_upper_bound): Implement. + (som_canonicalize_reloc): Implement. + (som_set_reloc_info, som_slurp_reloc_table): New functions. + +Sun Nov 21 13:46:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com) + + * hosts/lynx.h (FPRINTF_ALREADY_DECLARED): Define. + * hosts/sparclynx.h: Include lynx.h instead of duplicating it. + +Fri Nov 19 14:34:04 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * coff-a29k.c (a29k_reloc): For R_IREL, don't left shift + signed_value before sign extending it. Don't subtract out + reloc_entry->address. This makes it compatible with what gas is + generating. + + * elfcode.h (elf_fake_sections): Accept .sbss as the name for a + SHT_NOBITS sections. + (map_program_segments): Don't leave the loop after the first + SHT_NOBITS section. + (assign_file_positions_except_relocs): Only force sh_offset and + sh_addr to match modulo maxpagesize for a section which is not + SHT_NOBITS. Changed the method used to force page alignment after + a SHT_NOBITS section to only do it for the last such consecutive + section, and to really force page alignment. + +Fri Nov 19 04:02:01 1993 Ken Raeburn (raeburn@cambridge.cygnus.com) + + * coffcode.h (coff_slurp_symbol_table): Print more verbose message + in the case of an unknown (or unhandled) storage class. + + * config/i386-lynx.mt (TDEFINES): FPRINTF_ALREADY_DECLARED should + not be defined here, since it is a host attribute, not a target + one. + * config/m68k-lynx.mt, config/sparc-lynx.mt: Ditto. + + * coffcode.h (coff_bfd_reloc_type_lookup): Don't define if already + defined. + + * coff-sparc.c: Define some relocations, based on ELF relocations. + (enum reloc_type, bfd_coff_generic_reloc, coff_sparc_howto_table, + struct coff_reloc_map, sparc_reloc_map, + coff_sparc_reloc_type_lookup): Borrowed from elf32-sparc.c and + elf.c, renamed. + (coff_bfd_reloc_type_lookup): Define to be coff_sparc_reloc_.... + (rtype2howto): Index into coff_sparc_howto_table using + dst->r_type. + +Thu Nov 18 11:45:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * config.bfd (mips*-*-irix5*): New target; use mipsbelf. + * configure.host (mips-sgi-irix5*) New host; use irix5 (no + hosts/irix5.h created; just use std-host.h). + * config/irix5.mh: New file; like irix4.mh, but don't use -G or + -lmalloc. + * Makefile.in: Rebuilt dependencies. + + * ecoffswap.h: Changed type of internal pointers for swap out + functions to const *. + + * elf32-mips.c (mips_elf_got16_reloc): New function. Handle GOT16 + correctly for assembler, but linker support not implemented. + (elf_mips_howto_table): Use mips_elf_got16_reloc for GOT16. + (mips_elf_sym_is_global): New function; at least on Irix 5, all + non section symbols are considered global. + (elf_backend_sym_is_global): Define. + (mips_elf_final_write_processing): New function. Set the MIPS + architecture level correctly. + (elf_backend_final_write_processing): Define. + (mips_elf_section_from_shdr): Handle SHT_MIPS_OPTIONS. + (mips_elf_fake_sections): Set entsize of .mdebug or .reginfo + section to 1. Handle .options section. + (mips_elf_acom_section, mips_elf_acom_symbol, + mips_elf_acom_symbol_ptr): New static variables, used to build a + generic .acommon section to hold SHN_MIPS_ACOMMON symbols. + (mips_elf_symbol_processing): Handle SHN_MIPS_ACOMMON symbols by + putting them all in a global .acommon section. + + * elfcode.h (bfd_section_from_shdr): Don't dump core if target + section has no ELF section data. + (elf_make_sections): Set addralign of reloc section to 4. + (elf_fake_sections): Likewise. + (map_program_segments): Don't consider section 0. + (assign_file_positions_except_relocs): Don't consider section 0. + In the main loop, skip the symtab and strtab sections, since their + positions are set elsewhere. + (swap_out_syms): Set addralign of symtab section to 4. Set + addralign of strtab sections to 1. + (assign_file_positions_for_relocs): Don't consider section 0. + (write_object_contents): Don't write out section 0. + + * libelf.h (struct elf_backend_data): Added fields + elf_backend_sym_is_global and elf_backend_final_write_processing. + * elf32-target.h (elf32_bed): Added corresponding initializers. + * elf64-target.h (elf64_bed): Likewise. + * elfcode.h (sym_is_global): Take abfd argument. Call + elf_backend_sym_is_global if it is not NULL. + (elf_map_symbols): Pass abfd to sym_is_global. + (write_object_contents): Call elf_backend_final_write_processing + if it is defined. + +Wed Nov 17 18:43:28 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * libecoff.h: Include coff/ecoff.h. + (struct ecoff_backend_data): Move external debugging information + fields into a single field pointing to an ecoff_debug_swap + structure. + (ecoff_data_type): Move debugging information fields into a single + field pointing to an ecoff_debug_info structure. + * coff-alpha.c, coff-mips.c, ecoff.c: Corresponding changes. + +Wed Nov 17 17:38:58 1993 Sean Eric Fagan (sef@cygnus.com) + + * nlmswap.h: New file to swap fixed header. Included by NLM + backends. + * libnlm.h (struct reloc_and_sec): Define. + (struct nlm_backend_data): Add fields fixed_header_size, + nlm_read_import, nlm_write_import, nlm_swap_fhdr_in, + nlm_swap_fhdr_out. + (nlm_fixed_header_size, nlm_read_import_func, + nlm_write_import_func, nlm_swap_fixed_header_in_func, + nlm_swap_fixed_header_out_func, nlm_write_external_func): New + accessor macros. + * nlmcode.h: Use new functions. + * nlm32-i386.c: Provide new functions. + * nlm32-sparc.c: New file; SPARC NLM backend. + +Wed Nov 17 13:56:10 1993 Stan Shebs (shebs@rtl.cygnus.com) + + * i386lynx.c (swap_std_reloc_in, swap_ext_reloc_in): Ignore + garbage bits appearing in the upper end of symbolnums. + + * config/sparc-lynx.mt (TDEFINES): Add -DFPRINTF_ALREADY_DECLARED. + +Tue Nov 16 17:03:41 1993 Stu Grossman (grossman at cygnus.com) + + * lynx-core.c (lynx_core_file_p): Change bfd_zalloc to bfd_alloc. + * m68klynx.c: Define core file macros. + * hosts/i386lynx.h, hosts/m68klynx.h, hosts/lynx.h: Move all + non-architecture specific stuff into lynx.h. + +Tue Nov 16 15:45:54 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + + * i386linux.c: Define new macro ZMAGIC_DISK_BLOCK_SIZE to 1024, and + change PAGE_SIZE to 4096. + +Mon Nov 15 11:48:08 1993 Ken Raeburn (raeburn@rtl.cygnus.com) + + * Makefile.in (diststuff): New target. + + * VERSION: Updated. + +Sun Nov 14 23:33:01 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * som.c (som_object_setup): Do not create dummy ".text", ".data", + and ".bss" sections. + (setup_sections): Do not set SEC_HAS_CONTENTS if a section's size + is zero. Recognize BSS type sections and turn off SEC_LOAD and + SEC_DATA (so binutils/size works). Set the correct value for + a section's _raw_size. + (som_slurp_symbol_table): Program entry points, and millicode are + also functions. Mark them as such. Also mark L$* symbols as + debugging symbols. + + * bfd-in2.h: Rebuilt. + +Sat Nov 13 15:27:15 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * som.c (som_bfd_reloc_type_lookup): Add missing prototype. Returns + a pointer to constant data. Delete bogus #define which made the + function useless. + + * som.c (som_prep_for_fixups): New function. + (som_write_fixups): New function. + (som_write_space_strings): New function. + (som_write_symbol_strings): New function. + (som_begin_writing): New function. + +Fri Nov 12 15:29:36 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * som.c (som_write_object_contents): Do not abort. Flesh out. + (som_set_section_contents): Do not abort. Flesh out. + + * som.c (som_write_headers): New function. + (som_prep_headers): New function. + (som_build_and_write_symbol_table): New function. + + * som.c (som_sizeof_headers): Add missing prototype. + (som_set_arch_mach): Do not abort. + + * som.c (som_count_spaces): New function. + (som_count_subspaces): New function. + (compare_syms): New function. + (som_compute_checksum): New function. + + * som.c (hppa_som_gen_reloc_type): New function. + (som_bfd_reloc_type_lookup): New function. + + * som.c (try_prev_fixup): New function. + (som_reloc_skip): New function. + (som_reloc_addend): New function. + (som_reloc_call): New function. + + * som.c (som_initialize_reloc_queue): New function. + (som_reloc_queue_insert): Likewise. + (som_reloc_queue_fix): Likewise. + (som_reloc_queue_find): Likewise. + + * som.c (som_hppa_howto_table): SOM howto relocation table. + (hppa_som_reloc): New function. + + * som.c (struct reloc_queue): New structure to keep track of + the last four multibyte relocations emitted. + (enum pa_symbol_type): Type to fully describe the symbol types + associated with .import/.export assembler directives. + + * som.c: Include libhppa.h + + * som.c (bfd_som_set_section_attributes): New function. + (bfd_som_set_subsection_attributes): Likewise. + (bfd_som_set_symboL_type): Likewise. + (bfd_som_attach_unwind_info): Likewise. + * som.h: Declare new exported functions. + + * som.h (struct som_symbol): Add new fields to hold additional + information needed to build/write symbol tables and fixup streams. + (struct som_section_data_struct): Add new fields to hold additional + information needed to build/write space and subspace headers. + (som_symbol_data): New accessor macro for SOM symbol information. + (R_HPPA_*): Basic relocation types to be used by the assembler. + +Fri Nov 12 11:00:28 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + + * trad-core.c (trad_unix_core_file_p): If new hook + TRAD_CORE_ALLOW_ANY_EXTRA_SIZE defined, then skip the check for the + corefile being too big. + * hosts/i386sco.h: Define it. + +Thu Nov 11 15:16:28 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * bfd.c (struct _bfd): Add hppabsd_core_data. + * targets.c (target_vector): Add hppabsd_core_vec. + * hpux-core.c (hpux_core_core_file_p): Fail if an unknown core + section is encountered during core section scanning. + * hppabsd-core.c: New file. + * config/hppabsd.mh: Enable HPPA BSD core files. + + * elf32-hppa.c (hppa_elf_reloc): Remove DEFUN crud. Remove code + which is either commented out or ifdef'd out. Add, update and + clean comments. Fix various indention and spacing problems. Handle + problems related to using "ble" to jump to a stub rather than "bl" + (%r31 is trashed by "ble", but not by "bl"). + (NEW_INSTRUCTION): Put inside curly braces. + (CURRENT_STUB_OFFSET): Fix indention problems. + (hppa_elf_build_arg_reloc_stub): Fix indention and spacing problems. + Add, update and clean comments. Handle "ble" %r31 lossage problems. + (hppa_elf_build_long_branch_stub): Likewise. + (hppa_look_for_stubs_in_section): Likewise. + (hppa_elf_stub_check): Remove obsolete function. + + * hppa_stubs.h: Add new instructions to deal with %r31 lossage + problems. Delete unused instructions. + +Tue Nov 9 11:40:27 1993 Stan Shebs (shebs@rtl.cygnus.com) + + * m68klynx.c (TARGET_IS_BIG_ENDIAN_P): Define. + +Tue Nov 9 11:26:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * elfcode.h (elf_object_p): Rather than looking through an array + of architectures, get the ELF EM_xxx code from the backend + information. Let the generic ELF target match any EM_xxx code not + matched by another ELF target. Call elf_backend_object_p to let + the backend do more checks and set global information. + * libelf.h (struct elf_backend_data): Added elf_machine_code and + elf_backend_object_p fields. + (struct bfd_elf_arch_map): Removed. + (bfd_elf_arch_map, bfd_elf_arch_map_size): Don't declare. + * elf32-target.h, elf64-target.h: Initialize elf_machine_code + field with ELF_MACHINE_CODE. Initialize elf_backend_object_p + field with elf_backend_object_p (if it is defined). + * elf32-gen.c, elf32-hppa.c, elf32-i386.c, elf32-i860.c, + elf32-m68k.c, elf32-m88k.c, elf32-mips.c, elf32-sparc.c, + elf64-gen.c (ELF_MACHINE_CODE): Defined. + * elf32-mips.c: Include ecoffswap.h to get ECOFF swapping + routines. + (mips_elf_object_p): Set the right machine number. + (mips_elf_ecoff_debug_swap): Defined. + (elf_backend_object_p): Defined to be mips_elf_object_p. + (elf_backend_ecoff_debug_swap): Defined to be + mips_elf_ecoff_debug_swap. + * elf.c (bfd_elf_arch_map, bfd_elf_arch_map_size): Removed. + + * libbfd-in.h (target_vector, default_vector): Declare. + * libbfd.h: Rebuilt. + * format.c (target_vector, default_vector): Don't declare. + + * elf32-mips.c (elf_mips_howto_table): Don't complain on overflow + for R_MIPS_26. Correct overflow detection requires matching the + upper four bits of the destination against the PC. From Ted Lemon + <mellon@pepper.ncd.com>. + + * bout.c (b_out_reloc_type_lookup): Return type should point to + const data. + * coff-i960.c (coff_i960_reloc_type_lookup): Likewise. + * elf32-hppa.c (elf_hppa_reloc_type_lookup): Likewise. + * mipsbsd.c (MY(reloc_howto_type_lookup)): Likewise. + * coff-i386.c (coff_i386_reloc): Made howto const. + * oasys.c (oasys_write_data): Made how const. + + * libelf.h: Added some comments. + (struct elf_backend_data): Added elf_backend_ecoff_debug_swap + field. Removed unused write_relocs field. + * elf32-target.h: Adjusted elf_backend_data initialization + accordingly. + * elf64-target.h: Corrected elf_backend_data initialization to + fill in all fields and to set elf_64_p to 1. + +Mon Nov 8 18:13:14 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * elfcode.h (bfd_section_from_shdr): Remove duplicate assignment + to filepos in SHT_STRTAB case. + (assign_file_position_for_section): Set BFD section filepos as + well as ELF section sh_offset. + + * reloc.c: Use const instead of CONST. + (bfd_perform_relocation): Make variable howto a const pointer. + * bfd-in2.h, libbfd.h: Rebuilt. + +Mon Nov 8 12:19:15 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + + * Makefile.in (realclean): Don't remove generated headers. Reverts + change of 2 Jul 1993. + +Mon Nov 8 06:08:31 1993 D. V. Henkel-Wallace (gumby@cirdan.cygnus.com) + + * configure.bfd: make unixware equivalent to sysv4. + + * config/i386-nlm.mt: bring in elf config; make it the default. + +Sun Nov 7 20:21:38 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * libbfd.c (bfd_put_8): Add parens around reference to "val" + argument. + +Fri Nov 5 21:45:09 1993 David J. Mackenzie (djm@thepub.cygnus.com) + + * hosts/i386mach3.h (HOST_SEGMENT_SIZE), + i386mach3.c (SEGMENT_SIZE, TEXT_START_ADDR): Correct values (?). + +Fri Nov 5 15:17:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * coffcode.h (coff_write_object_contents): Zero out internal_a. + +Fri Nov 5 10:41:07 1993 David J. Mackenzie (djm@thepub.cygnus.com) + + * aoutx.h, archive.c, archures.c, bfd.c, cache.c, coffcode.h, + core.c, ctor.c, format.c, init.c, libbfd.c, opncls.c, reloc.c, + section.c, syms.c, targets.c: + Doc cleanup (spelling, punctuation, grammar, formatting). + * bfd-in2.h, libbfd.h: Rebuild. + +Thu Nov 4 14:46:14 1993 John Gilmore (gnu@rtl.cygnus.com) + + * bfd-in.h (bfd_get_cacheable, bfd_set_cacheable): New accessors. + * bfd.c, opncls.c: Improve comments on file descriptor cacheing. + +Thu Nov 4 08:54:30 1993 Jeffrey A. Law (law@snake.cs.utah.edu) + + * From Pete Hoogenboom (hoogen@cs.utah.edu) + * elf32-hppa.c (hppa_elf_get_section_contents): Fix logic error + in last change. Always rebuild symbol extension section the first + time though if output sections exist (fixes ld -r problems). + +Thu Nov 04 08:08:46 1993 Jeffrey Wheat (cassidy@cygnus.com) + + * Makefile.in: Add .PHONY for check and installcheck rules. + +Tue Nov 2 14:42:27 1993 Bill Cox (bill@tarkas.cygnus.com) + + * libbfd-in.h (artdata): Use long, not time_t for portability, at + least to HPUX. File below is a derived file. + +Tue Nov 2 14:42:27 1993 Bill Cox (bill@tarkas.cygnus.com) + + * libbfd.h (artdata): Use long, not time_t for portability, at + least to HPUX. + +Tue Nov 2 09:32:25 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + + * config.bfd: Use bigmips for mips*-*-bsd*. + +Mon Nov 1 14:30:09 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * elfcode.h (elf_slurp_reloca_table, elf_slurp_reloc_table): + Handle symbol number of zero. + + * reloc.c (enum bfd_reloc_code_real): Added + BFD_RELOC_MIPS_LITERAL, BFD_RELOC_MIPS_GOT16, + BFD_RELOC_MIPS_CALL16, BFD_RELOC_MIPS_GPREL32. + * bfd-in2.h: Rebuilt. + * coff-mips.c (mips_bfd_reloc_type_lookup): Handle + BFD_RELOC_MIPS_LITERAL. + * elf32-mips.c (mips_reloc_map): Handle new relocs. + (mips_elf_hi16_reloc, mips_elf_lo16_reloc): Rearrange _gp_disp + checks slightly. + + * aout-target.h (MY_bfd_debug_info_start, MY_bfd_debug_info_end, + MY_bfd_debug_info_accumulat [sic]): Remove unused definitions. + (MY_bfd_get_relocated_section_contents, MY_bfd_relax_section, + MY_bfd_seclet_link): Define. + (MY_bfd_reloc_type_lookup): Rename from + MY_reloc_howto_type_lookup. + (MY_bfd_make_debug_symbol): Rename from MY_make_debug_symbol. + (MY(vec)): Use JUMP_TABLE rather than listing functions. + * hp300hpux.c (MY_get_symtab, MY_get_symtab_upper_bound, + MY_canonicalize_reloc, MY_write_object_contents): Don't define in + terms of MY, because that causes a recusive invocation of CAT when + expanded within JUMP_TABLE, and ANSI compilers don't expand + recursive macros. + * mipsbsd.c (MY_bfd_reloc_type_lookup): Rename from + MY_reloc_howto_type_lookup, and don't define in terms of MY. + (MY_canonicalize_reloc): Don't define in terms of MY. + (aout_mips_little_vec, aout_mips_big_vec): Use JUMP_TABLE rather + than listing functions. + +Mon Nov 1 09:12:25 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + + * config.bfd: Use m68k-elf for m68*-*-sysv4*. + Sun Oct 31 09:35:49 1993 Jim Kingdon (kingdon@lioth.cygnus.com) * targets.c: Move enum target_flavour outside of struct and change @@ -6944,7 +7844,7 @@ Wed Jan 16 01:55:53 1991 John Gilmore (gnu at rtl) (foop): Eliminate debugging code. Local Variables: -mode: indented-text +mode: change-log left-margin: 8 fill-column: 74 version-control: never diff --git a/bfd/ChangeLog.2 b/bfd/ChangeLog-9495 index 93de4d5..9868583 100644 --- a/bfd/ChangeLog.2 +++ b/bfd/ChangeLog-9495 @@ -1,3 +1,2110 @@ +Thu Dec 21 12:43:49 1995 Michael Meissner <meissner@tiktok.cygnus.com> + + * elf32-ppc.c (ppc_elf_howto_raw): Add a phony reloc to handle the + old style TOC16 references without using R_PPC_GOT. + (ppc_reloc_type): Ditto. + (ppc_elf_reloc_type_lookup): Add support for TOC16. + (ppc_elf_toc16_inner): Renamed from ppc_elf_got16_inner. + (ppc_elf_toc16_reloc): Renamed from ppc_elf_toc16_reloc. + (ppc_elf_got16_{inner,reloc}): Stubs for real GOT support. + (ppc_elf_check_relocs): New function for GOT/PLT support that is + work in progress. + (ppc_elf_adjust_dynamic_symbol): Ditto. + (ppc_elf_adjust_dynindx): Ditto. + (ppc_elf_size_dynamic_sections): Ditto. + (ppc_elf_finish_dynamic_symbol): Ditto. + (ppc_elf_finish_dynamic_sections): Ditto. + (ELF_DYNAMIC_INTERPRETER): Define. + +Wed Dec 20 19:14:18 1995 Ken Raeburn <raeburn@cygnus.com> + + * elf.c (copy_private_bfd_data): When attaching sections to + segments ignore sections that won't be allocated. Patch from + Andreas Schwab. + +Tue Dec 19 20:01:43 1995 Ken Raeburn <raeburn@cygnus.com> + + * config.bfd: Match on m68k-cbm-* only if OS doesn't match + anything else. + +Tue Dec 19 16:38:59 1995 Ian Lance Taylor <ian@cygnus.com> + + * coff-i960.c (CALC_ADDEND): Define. + (coff_i960_relocate_section): Add the input section VMA to the + addend for PC relative relocs. + +Sun Dec 17 20:11:55 1995 Kim Knuttila <krk@cygnus.com> + + * peicode.h (pe_print_pdata): Must test the entire entry for zero + to correctly terminate. + +Fri Dec 15 12:05:57 1995 Ian Lance Taylor <ian@cygnus.com> + + * targets.c (enum bfd_endian): Define. + (bfd_target): Rename byteorder_big_p to byteorder, and change it + from boolean to enum bfd_endian. Change header_byteorder_big_p + correspondingly. + * bfd-in.h (bfd_big_endian, bfd_little_endian): New macros. + (bfd_header_big_endian, bfd_header_little_endian): New macros. + * bfd-in2.h: Rebuild. + * All targets: Change initialization of byteorder and + header_byteorder to use enum bfd_endian values rather than + booleans. + * All files: Change all references to byteorder_big_p and + header_byteorder_big_p to use new bfd_*_endian macros. + + * coffgen.c (make_a_section_from_file): Set lma to s_paddr, not + s_vaddr. + * coffcode.h (coff_write_object_contents): Set s_paddr to lma, not + vma. + * ecoff.c (_bfd_ecoff_write_object_contents): Likewise. + +Fri Dec 15 07:32:09 1995 steve chamberlain <sac@slash.cygnus.com> + + * pe[i]-i386.c (TARGET_UNDERSCORE): Define to '_'. + +Thu Dec 14 13:45:37 1995 Ian Lance Taylor <ian@cygnus.com> + + * ieee.c: Lots of minor cleanups. Make many functions return + errors rather than calling abort. Also: + (ieee_write_twobyte): Remove; change callers to call existing + ieee_write_2bytes function. + (ieee_write_expression): Don't output the section twice when + outputting a local symbol. Don't emit an extraneous zero if there + is only one term. + (ieee_slurp_sections): Set the lma as well as the vma. + (ieee_archive_p): Use bfd_alloc_grow rather than an obstack. + + * ihex.c (ihex_set_arch_mach): Don't accept any architecture, just + a recognized one or bfd_arch_unknown. + (ihex_get_symtab_upper_bound): Define as bfd_0l, to permit objcopy + to succeed. + (ihex_get_symtab): Likewise. + +Wed Dec 13 15:44:06 1995 Ian Lance Taylor <ian@cygnus.com> + + * aoutx.h: Include <ctype.h>. + (struct aout_link_includes_table): Define. + (struct aout_link_includes_totals): Define. + (struct aout_link_includes_entry): Define. + (aout_link_includes_lookup): Define macro. + (struct aout_final_link_info): Add includes field. + (aout_link_includes_newfunc): New static function. + (NAME(aout,final_link)): Initialize includes hash table. + (aout_link_write_symbols): Eliminate duplicate N_BINCL entries. + +Wed Dec 13 10:52:14 1995 Stan Shebs <shebs@andros.cygnus.com> + + * mpw-config.in: Match on mips-*-* instead of mips-idt-ecoff. + +Wed Dec 13 11:07:45 1995 Kim Knuttila <krk@cygnus.com> + + * coff-ppc.c (coff_ppc_relocate_section): removed debugging code. + +Tue Dec 12 17:42:06 1995 Kim Knuttila <krk@cygnus.com> + + * peicode.h (pe_print_reloc): New function to dump the .reloc section. + (pe_print_private_bfd_data): call pe_print_reloc. + * coffcode.h (coff_set_alignment_hook): .reloc section alignment. + * coff-ppc.c (in_reloc_p): Added missing non-eligible relocs. Spiffed + up some debugging as well. + +Tue Dec 12 11:34:23 1995 Ian Lance Taylor <ian@cygnus.com> + + * config.bfd: Handle sparc-*-elf*. From Ronald F. Guilmette + <rfg@monkeys.com>. + +Fri Dec 8 17:47:07 1995 Ian Lance Taylor <ian@cygnus.com> + + * elflink.h (elf_link_add_object_symbols): Set section_count to 0 + when setting sections to NULL. + +Wed Dec 6 17:05:37 1995 Ian Lance Taylor <ian@cygnus.com> + + * xcofflink.c (struct xcoff_loader_info): Add export_defineds + field. + (bfd_xcoff_size_dynamic_sections): Add export_defineds parameter. + (xcoff_build_ldsyms): If export_defineds is set, set XCOFF_EXPORT + for all symbols. + * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration. + * bfd-in2.h: Rebuild. + +Mon Dec 4 16:40:47 1995 Kim Knuttila <krk@cygnus.com> + + * coffcode.h (coff_set_alignment_hook): Removed some debugging printf's + +Mon Dec 4 11:25:39 1995 Ian Lance Taylor <ian@cygnus.com> + + * ihex.c (ihex_scan): Handle record types 4 and 5. + (ihex_object_p): Permit types 4 and 5. + (ihex_set_section_contents): Remove check for out of range + addresses. + (ihex_write_object_contents): Generate types 4 and 5. + + * elflink.h (elf_link_output_extsym): Just ignore warning and + indirect references to symbols which don't really exist. + +Sun Dec 3 19:00:27 1995 Kim Knuttila <krk@cygnus.com> + + * peicode.h (pe_print_idata): Minor format fixes + (pe_print_edata): New function. Under private printing, this formats + the edata section of a PE file. + (pe_print_private_bfd_data): Added call to pe_print_edata. + +Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk) + + * aout-arm.c (MY_swap_std_reloc_out): Use KEEPIT to get the symbol + index, don't call stoi. + +Fri Dec 1 14:46:51 1995 Ian Lance Taylor <ian@cygnus.com> + + * srec.c (srec_scan): Set lma as well as vma. + + * ihex.c: New file; support for Intel Hex format. + * targets.c (enum bfd_flavour): Add bfd_target_ihex_flavour. + (ihex_vec): Declare. + (bfd_target_vector): Always include ihex_vec. + * bfd.c (struct _bfd): Add ihex_data field to tdata union. + * Makefile.in: Rebuild dependencies. + (BFD_LIBS): Add ihex.o + (BFD_LIBS_CFILES): Add ihex.c. + * bfd-in2.h: Rebuild. + + * elf.c (assign_file_positions_for_segments): Sort the sections in + each segment. + (get_program_header_size): Return the right size if segment_map is + not NULL. + (copy_private_bfd_data): Don't bother to sort the sections. + + * bfd.c (bfd_record_phdr): New function. + * bfd-in.h (bfd_record_phdr): Declare. + * bfd_in2.h: Rebuild. + + * elf32-sparc.c (elf32_sparc_relocate_section): Remove bogus + BFD_ASSERT. + + * libbfd.c (bfd_malloc, bfd_realloc): New functions. + (bfd_zmalloc): Return PTR, not char *. Take size_t, not + bfd_size_type. + * libbfd-in.h (bfd_malloc, bfd_realloc): Declare. + (bfd_zmalloc): Change declaration. + * libbfd.h: Rebuild. + * Many files: Use bfd_malloc and bfd_realloc rather than malloc + and realloc. Don't set bfd_error_no_memory if they fail. + +Thu Nov 30 19:32:26 1995 Kim Knuttila <krk@cygnus.com> + + * coff-ppc.c: Added macros to tidy up toc cell treatment. Numerous + uses as well. Added a new howto to deal with TOCREL16 relocs that + are TOCDEFN as well. + (coff_ppc_relocate_section): Expanded treatment of ADDR32NB relocs + to handle RVA relocs from dlltool. + (ppc_coff_rtype2howto): TOCDEFN reloc addition. + (coff_ppc_rtype_to_howto): TOCDEFN reloc addition. + (ppc_coff_reloc_type_lookup): TOCDEFN reloc addition. + + * coffcode.h (coff_set_alignment_hook): check idata$X sections + to get the right section alignment. + +Thu Nov 30 16:48:18 1995 Ian Lance Taylor <ian@cygnus.com> + + * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on + p_paddr if p_paddr is zero. + (make_mapping): Set includes_filehdr and includes_phdrs for first + PT_LOAD segment. + (map_sections_to_segments): Set includes_phdrs for PT_PHDR + segment. + (assign_file_positions_for_segments): Handle includes_filehdr and + includes_phdrs. Remove special handling of PT_PHDR and first + PT_LOAD segments. + (copy_private_bfd_data): Set includes_filehdr and includes_phdr + when appropriate. Remove special handling of PT_PHDR segment. + Use a more complex condition for when a section is included in a + segment to handle Solaris linker oddities. + +Thu Nov 30 11:17:33 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de> + + * coff-m88k.c (howto_table): Reformatted for easier reading; + special_function now points to new function m88k_special_reloc. + (howto_hvrt16): Function previously used for handling HVRT16 relocs + removed. + (rtype2howto): Do not add reloc's r_offset to the addend, this will + be done correctly by m88k_special_reloc. + (reloc_processing): New function to be used by RELOC_PROCESSING. + (RELOC_PROCESSING): Define to call reloc_processing. + +Wed Nov 29 12:42:36 1995 Ian Lance Taylor <ian@cygnus.com> + + * peicode.h (pe_print_idata): Call malloc rather than xmalloc. + (pe_print_pdata): Likewise. + + * opncls.c (bfd_alloc_by_size_t): Set bfd_error_no_memory if + obstack_alloc fails. + (bfd_alloc_finish): Set bfd_error_no_memory if obstack_finish + fails. + * libbfd.c (bfd_zmalloc): Set bfd_error_no_memory if malloc fails. + * Many files: don't set bfd_error_no_memory if one of the above + routines fails. + + * elf.c (assign_file_positions_for_segments): Don't adjust p_paddr + if p_paddr_valid is set. + (copy_private_bfd_data): New static function. + (_bfd_elf_copy_private_section_data): Call copy_private_bfd_data. + + * elf.c (assign_file_positions_for_segments): Fix case where extra + program headers were allocated. + + * elf.c (_bfd_elf_print_private_bfd_data): New function. + * elf-bfd.h (_bfd_elf_print_private_bfd_data): Declare. + * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define to + _bfd_elf_print_private_bfd_data. + + * coff-alpha.c (alpha_ecoff_swap_reloc_in): Don't abort if + r_symndx is RELOC_SECTION_NONE for an ALPHA_R_IGNORE reloc. + Change a RELOC_SECTION_LITA symndx to RELOC_SECTION_ABS. + (alpha_ecoff_swap_reloc_out): Change RELOC_SECTION_ABS to + RELOC_SECTION_LITA for ALPHA_R_IGNORE. + (alpha_adjust_reloc_out): For ALPHA_R_IGNORE, don't change + RELOC_SECTION_ABS to RELOC_SECTION_NONE. + +Tue Nov 28 16:59:50 1995 Ian Lance Taylor <ian@cygnus.com> + + * elf-bfd.h (struct elf_obj_tdata): Add segment_map field. + * elf.c (make_mapping): New static function. + (map_sections_to_segments): New static function. + (elf_sort_sections): New static function. + (assign_file_positions_for_segments): New static function. + (map_program_segments): Remove. + (get_program_header_size): Remove sorted_hdrs, count, and + maxpagesize parameters. Simplify. + (assign_file_positions_except_relocs): When generating an + executable, use assign_file_positions_for_segments. + (elf_sort_hdrs): Remove. + (_bfd_elf_sizeof_headers): Remove eliminated parameters from call + to get_program_header_size. + +Mon Nov 27 12:27:46 1995 Ian Lance Taylor <ian@cygnus.com> + + * hp300hpux.c (MY(callback)): Set lma as well as vma. + + * configure, config.in: Regenerate with autoconf 2.7. + + * elf32-i386.c (elf_backend_plt_readonly): Set correctly, to 1. + * elf32-sparc.c (elf_backend_plt_readonly): Set correctly, to 0. + +Wed Nov 22 12:02:09 1995 Ian Lance Taylor <ian@cygnus.com> + + * ecoff.c (_bfd_ecoff_new_section_hook): Handle .rconst section. + (ecoff_sec_to_styp_flags): Likewise. + (_bfd_ecoff_styp_to_sec_flags): Handle STYP_RCONST. + (ecoff_set_symbol_info): Handle scRConst. + (ecoff_slurp_reloc_table): Handle RELOC_SECTION_RCONST. + (ecoff_compute_section_file_positions): Handle .rconst section. + (_bfd_ecoff_write_object_contents): Likewise. + (ecoff_link_check_archive_element): Handle scRConst. + (ecoff_link_add_externals): Likewise. + (ecoff_link_write_external): Handle .rconst section. + (ecoff_reloc_link_order): Likewise. + * ecofflink.c (bfd_ecoff_debug_accumulate): Handle scRConst. + * coff-alpha.c (alpha_convert_external_reloc): Handle .rconst + section. + (alpha_relocate_section): Handle RELOC_SECTION_RCONST. + + * sunos.c (sunos_scan_dynamic_symbol): Only set written if the + DEF_DYNAMIC flag is set. + +Tue Nov 21 13:25:29 1995 Ken Raeburn <raeburn@cygnus.com> + + * host-aout.c: If TRAD_HEADER is defined, include it. + +Tue Nov 21 13:03:57 1995 Ian Lance Taylor <ian@cygnus.com> + + * aclocal.m4 (AC_PROG_CC): Remove local definition. + (BFD_BINARY_FOPEN): Require AC_CANONICAL_SYSTEM. + (BFD_NEED_DECLARATION): New function. + * configure.in: Use BFD_NEED_DECLARATION. + * acconfig.h: Put NEED_DECLARATION_* in @TOP@ section. + * configure, config.in: Rebuild with autoconf 2.6. + + * xcofflink.c (bfd_xcoff_size_dynamic_sections): Clear + special_sections before returning when called with a non XCOFF + BFD. + + * coffgen.c (coff_renumber_symbols): Sort common symbols with + global symbols. + + * coffcode.h (coff_compute_section_file_positions): Only pad the + previous section to force file alignment when creating an + executable. + +Mon Nov 20 14:54:09 1995 Ian Lance Taylor <ian@cygnus.com> + + * coffcode.h (coff_compute_section_file_positions): If + RS6000COFF_C, set up the .debug section. + + * xcofflink.c (xcoff_link_input_bfd): Adjust the TOC anchor value + if it is not large enough to accomodate the entire TOC area with + signed 16 bit offsets. + (xcoff_write_global_symbol): Handle negative TOC offsets in global + linkage code. + (_bfd_ppc_xcoff_relocate_section): Adjust relocations against a + TOC anchor to use the TOC value used in the output file. + +Sat Nov 18 18:01:41 1995 Ian Lance Taylor <ian@cygnus.com> + + * coffgen.c (_bfd_coff_get_external_symbols): Cast malloc return. + (_bfd_coff_read_string_table): Likewise. + +Sat Nov 18 19:43:04 1995 Richard Earnshaw (rearnsha@armltd.co.uk) + + * pe-arm.c: Fix typos. + * coff-arm.c: Likewise. + +Fri Nov 17 16:22:04 1995 Kim Knuttila <krk@cygnus.com> + + * coff-ppc.c (list_ele): Added "cat"egory member. + (record_toc): New category parameter (priv or pub). + (ppc_record_toc_entry): Check to see if toc bounds exceeded. + (ppc_process_before_allocation): Removed embrionic data-in-toc from + the mainline. It addes extra toc cells in error. + (ppc_coff_swap_sym_in_hook): Added some documentation. + (dump_toc): Can now diagnose "virtual toc" chicanery. + +Fri Nov 17 10:41:25 1995 Philippe De Muyter <phdm@info.ucl.ac.be> + + * elf-bfd.h (struct elf_link_hash_table): Change type of + dynsymcount and bucketcount fields from size_t to bfd_size_type. + +Fri Nov 17 10:02:58 1995 Ian Lance Taylor <ian@cygnus.com> + + * coffcode.h (coff_pointerize_aux_hook): I960 version: don't + pointerize C_LEAFSTAT or C_LEAFEXT entries. + + * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Only create + DT_INIT and DT_FINI entries if the _init or _fini symbol is + defined or mentioned in a regular file. + +Thu Nov 16 15:16:42 1995 Kim Knuttila <krk@cygnus.com> + + * coff-ppc.c (ppc_record_data_in_toc_entry): new function + (coff_ppc_relocate_section): Handle TOCDEFN attribute + (coff_ppc_relocate_section): Correct REL24 handling + (ppc_process_before_allocation): Correct TOCDEFN handling + + * peicode.h (dir_names): Added name descriptions + +Thu Nov 16 03:38:03 1995 Ken Raeburn <raeburn@cygnus.com> + + * VERSION: Updated to cygnus-2.6. + +Wed Nov 15 19:30:07 1995 Ken Raeburn <raeburn@cygnus.com> + + * targets.c (m68k4knetbsd_vec): Declare. + +Wed Nov 15 18:05:52 1995 Ian Lance Taylor <ian@cygnus.com> + + * targets.c (bfd_target): Change type of second argument to + _bfd_print_private_bfd_data from void * to PTR. + * libbfd-in.h (_bfd_generic_bfd_print_private_bfd_data): Cast + using PTR rather than void *. + * bfd-in2, libbfd.h: Rebuild. + * peicode.h (pe_print_private_bfd_data): Change vfile from void * + to PTR. + * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define as + _bfd_generic_bfd_print_private_bfd_data rather than casting + bfd_true. + +Wed Nov 15 04:09:14 1995 Ken Raeburn <raeburn@cygnus.com> + + * Makefile.in (.dep1): Fix stupid typo in last change. Remove any + "DO NOT DELETE" lines or blank lines that mkdep writes on some + systems. + (BFD_LIBS_CFILES, ALL_MACHINES_CFILES, BFD32_BACKENDS_CFILES, + BFD64_BACKENDS_CFILES): New variables. + (CFILES): Use them. + +Tue Nov 14 11:52:23 1995 Ian Lance Taylor <ian@cygnus.com> + + * peicode.h (coff_swap_aouthdr_out): For PPC PE, start isize at 0, + not at the file position of the first section. + * coffcode.h (coff_compute_section_file_positions): Avoid using + unportable #elif. + (coff_write_object_contents): When generating a PPC PE executable + with no symbols, round up the file size to a COFF_PAGE_SIZE + boundary. + * cofflink.c (_bfd_coff_final_link): If there are no symbols, + don't write out a string table. + + * elf.c (bfd_section_from_shdr): When using a different section + header, pass the new one to _bfd_elf_make_section_from_shdr. + (elf_fake_sections): Don't set sh_info and sh_entsize fields. + (elf_map_symbols): Add section VMA to symbol value when comparing + against 0. + (_bfd_elf_compute_section_file_positions): Only build symbol table + if there are some symbols. Set file offset of symtab and strtab + sections. + (assign_file_positions_except_relocs): Remove dosyms parameter. + Change all callers. Never set file offset of symtab and strtab + sections. + (_bfd_elf_copy_private_section_data): New function. + (MAP_ONESYMTAB, MAP_DYNSYMTAB, MAP_STRTAB, MAP_SHSTRTAB): Define. + (_bfd_elf_copy_private_symbol_data): New function. + (swap_out_syms): Check for special mapping of st_shndx created by + copy_private_symbol_data. + * elfxx-target.h: Use new copy routines. + * elf-bfd.h (_bfd_elf_copy_private_symbol_data): Declare. + (_bfd_elf_copy_private_section_data): Declare. + + * config.bfd (sh-*-*): Set targ_defvec to shcoff_vec. + + * coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE, handle + C_NT_WEAK. + + * coff-sh.c (shlcoff_vec): Use _bfd_generic_archive_p, not + _bfd_dummy_target, matching the recent change to archive + recognition. + +Mon Nov 13 13:24:38 1995 Ian Lance Taylor <ian@cygnus.com> + + * libbfd.c (bfd_get_file_window): Use casts to avoid doing + arithmetic on PTR types. + + * aout-target.h (MY(callback)): Set the lma of the sections. + + * ecoff.c (ecoff_reloc_link_order): Turn a reloc against a defined + symbol into a reloc against the section. + +Mon Nov 13 07:31:35 1995 Kim Knuttila <krk@cygnus.com> + + * coff-ppc.c (ppc_coff_link_hash_entry): added support for inline + glue for the relocs: IMGLUE and IFGLUE. + (record_toc): new function - tracks toc contents + (ppc_mark_symbol_as_glue): new function - supports the IMGLUE reloc + (coff_ppc_relocate_section): Added support and fixes for IMGLUE/IFGLUE + (ppc_coff_rtype2howto): removed invalid IMGLUE hack + (coff_ppc_rtype_to_howto): removed invalid IMGLUE hack + (ppc_record_toc_entry): Removed a debug define (duh) + + * peicode.h (coff_swap_scnhdr_out): Fixed invalid strcmp for ".reldata" + (pe_print_idata): New function - formats the idata section data + (pe_print_pdata): New function - formats the pdata section data + (pe_print_private_bfd_data): calls to above + +Sun Nov 12 12:23:24 1995 Stan Shebs <shebs@andros.cygnus.com> + + * Makefile.in (bfd_libs_here, etc): Provide empty definitions. + * coff-rs6000.c (rs6000coff_vec): Add conditional defines + TARGET_SYM and TARGET_NAME for vector and BFD name. + * coff-pmac.c (pmac_xcoff_vec): Remove. + (TARGET_SYM, TARGET_NAME): Define. + * coffcode.h (coff_set_arch_mach_hook) [POWERMAC]: Set the + machine to 0, not all PowerMacs are 601s. + +Fri Nov 10 12:10:14 1995 Ian Lance Taylor <ian@cygnus.com> + + * elfcode.h (elf_object_p): Read in any program headers. + * elf.c (_bfd_elf_make_section_from_shdr): Adjust section lma + based on the program headers, if any. + (elf_fake_sections): Set sh_addr from the vma, not the lma. + (map_program_segments): Set p_paddr of program headers based on + the lma. + +Thu Nov 9 13:01:31 1995 Ian Lance Taylor <ian@cygnus.com> + + * archive.c (bfd_generic_archive_p): Preserve tdata in case of + failure. + + * aoutx.h (NAME(aout,final_link)): Report a reasonable error when + trying to do a relocateable link with a non-a.out object file. + + * archive.c (bfd_generic_archive_p): Check the first object file + in an archive even if target_defaulted is set. If the object file + has the wrong xvec, reject it. + + * aoutx.h (NAME(aout,set_section_contents)): If a section can not + be represented, report the name via _bfd_error_handler. + (translate_to_native_sym_flags): Likewise. + * elf32-mips.c (mips_elf_final_link): Likewise. + * oasys.c (oasys_write_sections): Likewise. + + * coffcode.h (coff_set_alignment_hook): Write RS6000COFF_C version + which checks for STYP_OVRFLO sections. + (coff_compute_section_file_positions): If RS6000COFF_C, handle + reloc and lineno count overflows. + (coff_write_object_contents): Call coff_count_linenumbers before + coff_compute_section_file_positions. If RS6000COFF_C, handle + reloc and lineno count overflows. + * xcofflink.c (_bfd_xcoff_bfd_final_link): Count line numbers and + relocs before dealing with .pad sections. Count overflow section + headers when handling .pad sections. + + * coffcode.h (coff_write_object_contents): Set a.out vstamp to 1 + if RS6000COFF_C. + + * xcofflink.c (XCOFF_DESCRIPTOR): Define. + (struct xcoff_link_hash_table): Add descriptor_section and + special_sections fields. + (_bfd_xcoff_bfd_link_hash_table_create): Initialize new fields. + (xcoff_link_add_symbols): Set linkage section alignment. Create + descriptor section. Check for magic symbol names (_text, etc.), + and record them in special_sections if found. Set + XCOFF_DESCRIPTOR flag for a function descriptor, and set its + descriptor field to point back to the function code symbol. + (xcoff_sweep): Always mark the special descriptor_section. + (bfd_xcoff_export_symbol): Check whether the symbol might be a + function descriptor, and mark it if it is. + (bfd_xcoff_size_dynamic_sections): Add new special_sections + parameter, and fill it in. Allocate space for the descriptor + section. + (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR flag when defining + global linkage code. If an undefined function descriptor is + exported, arrange to define it. Warn about any other undefined + exported symbol. + (_bfd_xcoff_bfd_final_link): Write out the descriptor section. + (xcoff_write_global_symbol): Create a function descriptor when + necessary. + * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration. + * bfd-in2.h: Rebuild. + +Thu Nov 9 08:40:23 1995 Kim Knuttila <krk@cygnus.com> + + * coff-ppc.c (ppc_coff_link_hash_entry): new types for hashing + (ppc_coff_link_hash_table): new types for hashing + (ppc_coff_link_hash_newfunc): hash entry constructor + (ppc_coff_link_hash_table_init): hash table initializer + (ppc_coff_link_hash_table_create): hash table constructor + (ppc_record_toc_entry): changed references to hash table + (coff_ppc_relocate_section): changed references to hash table + + * libcoff-in.h (coff_link_hash_entry): removed toc_offset + * libcoff.h: Rebuild + + * cofflink.c (_bfd_coff_link_hash_newfunc): removed toc_offset init + (coff_link_add_symbols): removed toc_offset init + +Thu Nov 9 04:00:38 1995 Ken Raeburn <raeburn@cygnus.com> + + * Makefile.in (.dep1): Make sure the file mkdep is to write exists + first. + + * configure.in: Added new option --with[out]-mmap. Set USE_MMAP + if it is given and mmep is available. + * acconfig.h: Undef USE_MMAP. + * configure, config.in: Regenerated. + * aoutx.h: If USE_MMAP is not defined, do all symbol and string + table handling the old way. + (aout_get_external_symbols): Don't complain if last byte of string + table is nonzero. + * libbfd.c [HAVE_MADVISE]: Include sys/types.h and sys/mman.h. + (bfd_free_window) [! USE_MMAP]: Don't define. + (bfd_get_file_window, + _bfd_generic_get_section_contents_in_window) [! USE_MMAP]: Abort. + +Wed Nov 8 20:03:44 1995 Eric Freudenthal <freudenthal@nyu.edu> + + * coff-a29k.c (SIGN_EXTEND_HWORD): Use ~0xffff rather than + 0xffff0000. + +Wed Nov 8 11:31:11 1995 Ian Lance Taylor <ian@cygnus.com> + + * coff-a29k.c (a29k_reloc): Change handling of R_IREL reloc to be + compatible with AMD generated COFF files. Try to support both AMD + and GNU formats simultaneously. + (coff_a29k_relocate_section): Likewise. + + * libbfd.c (bfd_get_file_window): Change writable parameter from + int to boolean; update all callers. Pass MAP_SHARED if not + writable--it's required on Solaris. Cast fprintf argument to + avoid warning. + * bfd-in.h (bfd_get_file_window): Update declaration. + * bfd-in2.h: Rebuild. + * aoutx.h: Update calls to bfd_get_file_window. + + * xcofflink.c (XCOFF_DEF_DYNAMIC): Rename from XCOFF_REF_DYNAMIC. + Change all uses. + (xcoff_swap_ldhdr_in): New static function. + (xcoff_swap_ldsym_in): New static function. + (xcoff_find_reloc): Handle the case of a single reloc correctly. + (xcoff_link_add_symbols): If we just created a descriptor, pass it + to _bfd_generic_link_add_one_symbol, to save a hash lookup. + Handle XTY_ER/XMC_XO symbols correctly. + (xcoff_link_add_dynamic_symbols): Rewrite to read .loader symbols + rather than normal symbol table. + (bfd_xcoff_import_symbol): It's not an error if the symbol is + already defined with the same absolute value. + (xcoff_mark): When considering called symbols, check whether the + descriptor is from a dynamic object, rather than the symbol + itself. + (xcoff_build_ldsyms): Likewise. + + * libbfd.c (bfd_get_file_window): Change return type to boolean. + Cast realloc and malloc return values. If malloc or realloc fail, + set bfd_error_no_memory. + * bfd-in.h (bfd_get_file_window): Change type to boolean. + * bfd-in2.h: Rebuild. + +Tue Nov 7 11:53:48 1995 Kim Knuttila <krk@cygnus.com> + + * coff-ppc.c (ppc_record_toc_entry): new function. + (in_reloc_p): changed return value. + (coff_ppc_relocate_section): much rework. + (ppc_allocate_toc_section): new function. + (ppc_process_before_allocation): new function. + (ppc_coff_swap_sym_in_hook): new function. + + * cofflink.c (_bfd_coff_link_hash_newfunc): initialize toc_offset. + (coff_link_add_symbols): initialize toc_offset. + + * peicode.h (coff_swap_sym_in): Added coff_swap_sym_in_hook + (coff_swap_aouthdr_out): Added more sections to the data + dictionary for the pe file header. Also changed linker version + number on the ppc side. + (dir_names): small improvements to the dictionary printing. + (pe_mkobject_hook): save the file level flags. + + * libcoff-in.h (coff_link_hash_entry): added toc_offset field + (pe_tdata): added real_flags field + (coff_tdata): added local_toc_sym_map and access macro + + * libcoff.h (coff_link_hash_entry): added toc_offset field + (pe_tdata): added real_flags field + (coff_tdata): added local_toc_sym_map and access macro + + * coffcode.h (coff_set_alignment_hook): added hook for PE. + (coff_mkobject): init for local_toc_sym_map + (coff_write_object_contents): set the internal_a.magic to + IMAGE_NT_OPTIONAL_HDR_MAGIC which appears to be what other + ppc compilers use. + +Tue Nov 7 13:48:58 1995 Ian Lance Taylor <ian@cygnus.com> + + * ecofflink.c (_bfd_ecoff_locate_line): Keep looking through stabs + entries until both the line number address and the function name + address are too large. + + * configure.in: Call AC_CHECK_PROG to find and cache AR. + * configure: Rebuilt. + + * aclocal.m4 (BFD_CC_FOR_BUILD): Don't define CC_FOR_BUILD if it + is defined in the environment. + +Tue Nov 7 10:57:24 1995 Jeffrey A Law (law@cygnus.com) + + * som.c (som_get_section_contents_in_window): Define to use + generic version. + +Mon Nov 6 17:13:15 1995 Harry Dolan <dolan@ssd.intel.com> + + * coff-i860.c: New file, based on coff-i386.c. + * cpu-i860.c: New file, based on cpu-i386.c. + * hosts/i860mach3.h: New file, based on hosts/i386mach3.h. + * config.bfd (i860-*-mach3*, i860-*-osf1*, i860-*-coff*): New + targets, using i860coff_vec. + * configure.in (i860-*-mach3*, i860-*-osf1*): New hosts, using + trad-core.o and hosts/i860mach3.h. + (i860coff_vec): Use coff-i860.o and cofflink.o. + * configure: Rebuild. + * Makefile.in: Rebuild dependencies. + (ALL_MACHINES): Add cpu-i860.o. + (BFD32_BACKENDS): Add coff-i860.o. + (CFILES): Add cpu-i860.c and coff-i860.c. + * targets.c (i860coff_vec): Declare. + (bfd_target_vector): Add &i860coff_vec. + * archures.c (bfd_i860_arch): Declare. + (bfd_archures_list): Add &bfd_i860_arch. + * coffcode.h (coff_set_arch_mach_hook): Handle I860 magic number. + (coff_set_flags): Handle bfd_arch_i860. + (coff_write_object_contents): Handle I860 a.out magic number. + +Mon Nov 6 14:34:07 1995 Ian Lance Taylor <ian@cygnus.com> + + * xcofflink.c (xcoff_link_add_symbols): Set the alignment power of + the created .tc section to 2. + (xcoff_mark): Don't keep a .loader reloc for a call to an + undefined symbol when creating a shared library. + (xcoff_build_ldsyms): When creating a shared library, generate + global linkage code for a call to an undefined symbol. + +Sun Nov 5 21:44:13 1995 Ken Raeburn <raeburn@cygnus.com> + + * Makefile.in (CFILES): Rebuild list from BFD_LIBS, ALL_MACHINES, + BFD32_BACKENDS, BFD64_BACKENDS. + (.dep1): Put mkdep output in a separate file. + Rebuilt dependencies. + + * ecoff.c (_bfd_ecoff_slurp_armap): Cast _bfd_read_ar_hdr return + value. + + Permit use of mmap when available: + + * configure.in: Check for mmap, madvise, mprotect. + * config.in, configure: Regenerated. + + * libbfd.c (struct _bfd_window_internal): Define type. + (bfd_init_window, bfd_free_window, bfd_get_file_window): New + functions. + (ok_to_map): New static variable for debugging. + (_bfd_generic_get_section_contents_in_window): New function. + * bfd-in.h (bfd_window_internal): Declare type. + (bfd_window): Define type. + (bfd_init_window, bfd_free_window, bfd_get_file_window): Declare. + * libbfd-in.h (_bfd_generic_get_section_contents_in_window): + Declare. + + * libaout.h (struct aoutdata): Add two window fields. + (obj_aout_sym_window, obj_aout_string_window): New macros. + * aoutx.h (some_aout_object_p): Initialize windows. + (aout_get_external_symbols): Get symbol data and strings in + windows instead of explicitly allocated buffers. + (slurp_symbol_table): Free window instead of memory. + (bfd_free_cached_info): Release windows instead of freeing storage + directly. + (aout_link_free_symbols): Ditto. + + * targets.c (bfd_target): Add new field for + get_section_contents_in_window. + (BFD_JUMP_TABLE_GENERIC): Updated. + * aout-adobe.c, aout-target.h, binary.c, bout.c, coff-alpha.c, + coff-mips.c, elfxx-target.h, i386msdos.c, i386os9k.c, ieee.c, + libcoff-in.h, oasys.c, srec.c, tekhex.c, versados.c: Added new + macros for get_section_contents_in_window field. + +Sat Nov 4 12:23:26 1995 Fred Fish <fnf@cygnus.com> + + * core.c: Renamed to corefile.c + * makefile.dos (OBJS): Change core.o to corefile.o + * Makefile.in (CFILES, BFD_LIBS): Use corefile.c instead of core.c + +Fri Nov 3 15:54:59 1995 Ian Lance Taylor <ian@cygnus.com> + + * xcofflink.c (xcoff_link_add_symbols): Rename local variable sub + to o. Clobber and restore the list of new csects around the call + to _bfd_generic_link_add_one_symbol, in case it wants to report a + linker error and the linker wants to read the symbol table. Reset + the line number count of a real section even if it has no relocs. + (_bfd_xcoff_bfd_final_link): If shared, set the DYNAMIC flag. + + * coffgen.c (_bfd_coff_read_string_table): Warn if the string size + is too small. + +Thu Nov 2 23:16:39 1995 Ian Lance Taylor <ian@cygnus.com> + + * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Don't warn about + an undefined symbol in a shared link. + + * linker.c (_bfd_generic_link_add_one_symbol): Correct type of + oldtype from bfd_link_order_type to bfd_link_hash_type. From + phdm@info.ucl.ac.be (Philippe De Muyter). + +Wed Nov 1 14:26:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de> + + * coff-m88k.c (rtype2howto): New static function. + (RTYPE2HOWTO): Use it rather than a macro definition. + + * coffcode.h (coff_write_object_contents): set internal_a.magic + to PAGEMAGICPEXECPAGED #if defined (M68) && !defined (LYNXOS). + + * configure.in: m68*-motorola-sysv* does not use ptrace-core.o; + define TRAD_HEADER to new file hosts/delta68.h. + m88*-motorola-sysv*, however, does use ptrace-core.o. + * hosts/delta68.h: New file. + + * ptrace-core.c (ptrace_unix_core_file_p): change bfd_zmalloc to + bfd_zalloc; provide proper parm abfd to calls to bfd_zalloc. + +Wed Nov 1 13:51:54 1995 Ken Raeburn <raeburn@cygnus.com> + + * i386linux.c (MY(vec)): Declare before use. + +Wed Nov 1 11:45:07 1995 Ian Lance Taylor <ian@cygnus.com> + + * reloc16.c (bfd_coff_reloc16_get_relocated_section_contents): + Pass input_bfd, not in_bfd, to bfd_coff_reloc16_extra_cases. + + * elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the + BFD is not of the right type. + (bfd_elf_get_needed_list): Likewise. + * i386linux.c (bfd_linux_size_dynamic_sections): Likewise. + * sunos.c (bfd_sunos_get_needed_list): Likewise. + * xcofflink.c (XCOFF_XVECP): Define. + (bfd_xcoff_link_record_set): Don't do anything if the BFD is not + of the right type. + (bfd_xcoff_import_symbol): Likewise. + (bfd_xcoff_export_symbol): Likewise. + (bfd_xcoff_link_count_reloc): Likewise. + (bfd_xcoff_record_link_assignment): Likewise. + (bfd_xcoff_size_dynamic_sections): Likewise. + + * sunos.c (sunos_scan_ext_relocs): Only check the reloc symbol + table index against the number of symbols for a base relative + reloc. + + * coff-rs6000.c (_bfd_xcoff_sizeof_headers): Change from macro to + static function. + * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Set + full_aouthdr flag here... + (_bfd_xcoff_bfd_final_link): ...not here. + +Tue Oct 31 12:52:02 1995 Fred Fish <fnf@cygnus.com> + + * libelf.h: Rename to elf-bfd.h to avoid conflict with + systems that have a system <libelf.h>. + * Makefile.in: Globally replace libelf.h with elf-bfd.h. + * bfd.c, elf.c, elf32-arc.c, elf32-gen.c, elf32-hppa.c, + elf32-hppa.h, elf32-i386.c, elf32-i860.c, elf32-m68k.c, + elf32-m88k.c, elf32-mips.c, elf32-ppc.c, elf32-sparc.c, + elf64-gen.c, elf64-sparc.c, elfcode.h, elflink.c, + elfxx-target.h: Include elf-bfd.h rather than libelf.h. + * elfxx-target.h: Change libelf.h reference to elf-bfd.h. + +Tue Oct 31 15:30:07 1995 David Mosberger-Tang <davidm@azstarnet.com> + + * ecoff.c (ecoff_set_symbol_info): Add new parameter weak. If + set, set BSF_WEAK in symbol. Change all callers. + (ecoff_get_extr): Set weakext based on BSF_WEAK. + (ecoff_link_add_externals): If weakext is set, pass BSF_WEAK to + _bfd_generic_link_add_one_symbol. + (ecoff_indirect_link_order): Check that the section tdata relocs + are not NULL before using them. + + * configure.in (alpha*-*-linux*): Set COREFILE to trad-core.o and + define TRAD_HEADER as hosts/alphalinux.h. + * configure: Rebuild. + * hosts/alphalinux.h: New file. + * trad-core.c (trad_unix_core_file_p): Cast u.u_ar0 to bfd_vma, + not int. + +Tue Oct 31 12:34:11 1995 Ian Lance Taylor <ian@cygnus.com> + + * coffcode.h (coff_slurp_symbol_table): Accept C_BCOMM and + C_ECOMM storage classes. + + * xcofflink.c (xcoff_mark_symbol): New static function, broken out + of xcoff_mark. + (xcoff_mark): Call xcoff_mark_symbol. + (bfd_xcoff_export_symbol): Call xcoff_mark_symbol. + (bfd_xcoff_link_count_reloc): Call xcoff_mark_symbol rather than + doing it by hand. + (xcoff_build_ldsyms): Build a .loader symbol for an export symbol. + +Mon Oct 30 14:53:48 1995 Ian Lance Taylor <ian@cygnus.com> + + * xcofflink.c (struct xcoff_final_link_info): Add new line_filepos + field. + (xcoff_find_reloc): New static function. + (xcoff_link_add_symbols): Use it. + (_bfd_xcoff_bfd_final_link): Set finfo.line_filepos. + (xcoff_link_input_bfd): Handle C_BINCL and C_EINCL. Don't + relocate the value of C_DECL. + + * elf.c (elf_fake_sections): Remove bogus BFD_ASSERT. + +Sat Oct 28 01:25:34 1995 steve chamberlain <sac@slash.cygnus.com> + + * cofflink.c (_bfd_coff_generic_relocate_section): Make + callback decide what goes in .relocs. + * pe[i]-i386.c (TARGET_UNDERSCORE): Define. + * peicode.h (pe_mkobject_hook): Only copy aouthdr if + there is one. + +Sat Oct 28 01:51:02 1995 Ian Lance Taylor <ian@cygnus.com> + + * xcofflink.c (xcoff_link_add_symbols): Handle csects in the + absolute section. + +Fri Oct 27 18:14:39 1995 Ian Lance Taylor <ian@cygnus.com> + + * xcofflink.c: More improvements, mostly to fix handling of + constructors and a few other special cases. + * coff-rs6000.c (rs6000coff_vec): Set symbol_leading_char back to + zero, reverting yesterday's change. + * bfd-in.h (bfd_xcoff_link_record_set): Declare. + (bfd_xcoff_link_count_reloc): Declare. + (bfd_xcoff_record_link_assignment): Declare. + * bfd-in2.h: Rebuild. + +Fri Oct 27 14:42:15 1995 Niklas Hallqvist <niklas@appli.se> + + * PORTING, aout-arm.c, aout-encap.c, aout-target.h, + aoutx.h, gen-aout.c, host-aout.c, hp300bsd.c, i386aout.c + i386bsd.c, i386dynix.c, i386linux.c, i386lynx.c, i386mach3.c, + i386netbsd.c, m68klynx.c, m88kmach3.c, mipsbsd.c, newsos3.c, + ns32knetbsd.c, pc532-mach.c, riscix.c, sparclynx.c, sparcnetbsd.c: + Change PAGE_SIZE to TARGET_PAGE_SIZE. + + * m68knetbsd.c: Ditto as well as add support for the m68k4k object + format. + + * netbsd.h: Double ditto (incl. m68k4k support). NetBSD's text + segments includes the a.out header. See to that the magic number + *always* is big-endian. + + * config.bfd: Add m68*-hp*-netbsd* case. Cross-pollinate m68k and + m68k4k NetBSD configurations. + + * configure.in, configure: Separate i386 & mips NetBSD + configurations from other BSD ones. Don't assume DEC is the only + thing NetBSD/mips run on. Add {m68k,ns32k,sparc}-*-netbsd* + configurations. Add support for m68k4k NetBSD object format. + + * libaout.h: Added M_68K4K_NETBSD magic. + + * m68k4knetbsd.c: New file. + + * hosts/{m68k,sparc}nbsd.h: Don't define HOST_BIG_ENDIAN_P. + + * hosts/nbsd.h: Define HOST_BIG_ENDIAN_P according to + <machine/endian.h>. + + * hosts/mipsnbsd.h: New file. + +Thu Oct 26 14:16:47 1995 Ian Lance Taylor <ian@cygnus.com> + + * xcofflink.c: Numerous changes to get closer to a working XCOFF + linker. + * libcoff-in.h (struct xcoff_tdata): Add full_aouthdr, + toc_section, and entry_section fields. + (struct xcoff_section_tdata): Remove ldrel_count field. + * libcoff.h: Rebuild. + * coffcode.h (coff_mkobject_hook): Initialize new xcoff_data + fields. + (coff_compute_section_file_positions): If RS6000COFF_C, generate + full a.out header if full_aouthdr is set in xcoff_data. + (coff_write_object_contents): Likewise. Set o_snentry and o_sntoc + based on sections stored in xcoff_data. + * coff-rs6000.c (xcoff_copy_private_bfd_data): Copy new xcoff_data + fields. + (xcoff_reloc_type_lookup): Handle BFD_RELOC_CTOR. + (rs6000coff_vec): Set symbol_leading_char to '.'. + * coffgen.c (coff_get_symbol_info): If fix_value is set, fix the + value stored in ret rather than returning a pointer value. + +Wed Oct 25 23:10:39 1995 Michael Meissner <meissner@tiktok.cygnus.com> + + * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Remove MAC + format for now. + +Wed Oct 25 16:19:27 1995 Jeffrey A Law (law@cygnus.com) + + * som.c (som_slurp_string_table): Allocate the strings with malloc + since they're free'd by free_cached_info. + (som_slurp_symbol_table): Similarly for the symbol table. + +Wed Oct 25 14:59:22 1995 Per Bothner <bothner@kalessin.cygnus.com> + + * Makefile.in (diststuff): Don't make headers. + +Wed Oct 25 11:32:54 1995 Ian Lance Taylor <ian@cygnus.com> + + * Makefile.in: Rebuild dependencies. + + * sunos.c (bfd_sunos_record_link_assignment): Don't do anything if + output_bfd is not SunOS. + (bfd_sunos_size_dynamic_sections): Likewise. Don't scan relocs of + non-SunOS input files. + + * xcofflink.c: Extensive changes to support linking shared objects + and generating a .loader section. + * libcoff-in.h (struct xcoff_tdata): Add import_file_id field. + (struct xcoff_section_tdata): Add lineno_count, first_symndx, + last_symndx, and ldrel_count fields. + * libcoff.h: Rebuild. + * coff-rs6000.c (xcoff_howto_table): Correct reloc names. + * coffcode.h (styp_to_sec_flags): Don't set any flags if STYP_PAD + is set. + * bfd-in.h (bfd_xcoff_import_symbol): Declare. + (bfd_xcoff_export_symbol): Declare. + (bfd_xcoff_size_dynamic_sections): Declare. + * bfd-in2.h: Rebuild. + +Tue Oct 24 17:44:20 1995 Stan Shebs <shebs@andros.cygnus.com> + + * configure.in: Add xcofflink.o to pmac_xcoff_vec. + * configure: Rebuild. + * mpw-config.in: Add xcofflink.c.o to powerpc-apple-macos. + * coff-pmac.c: Include coff-rs6000.c instead of duplicating its + contents. + (pmac_xcoff_vec): Update to use new xcoff support. + * coff-rs6000.c (xcoff_generic_stat_arch_elt): Make static. + (xcoff_write_armap): Declare buf as unsigned char. + * xcofflink.c (xcoff_link_add_symbols): Declare a local as PTR. + + * mpw-make.sed: Generalize subdir_do edit. + +Tue Oct 24 10:25:01 1995 Jeffrey A Law (law@cygnus.com) + + * hppabsd-core.c (make_bfd_asection): Initialize asect->filepos + correctly. Don't initialize asect->vma. + +Fri Oct 20 13:23:48 1995 Ken Raeburn <raeburn@cygnus.com> + + * opncls.c (_bfd_new_bfd): If _bfd_chunksize wasn't preset, use + something a little less than the page size. + +Thu Oct 19 13:06:09 1995 Ian Lance Taylor <ian@cygnus.com> + + * coff-i960.c (coff_i960_adjust_symndx): Clear *adjustedp. + +Wed Oct 18 16:20:08 1995 steve chamberlain <sac@slash.cygnus.com> + + * coff-i386.c (coff_i386_reloc_type_lookup): New. + * coffcode.h (coff_write_object_contents): If .bss is before + .data us that as data_start. + * cofflink.c (_bfd_coff_generic_relocate_section): Get reloc + calc correct. + * peicode.h (add_data_entry): Use _cooked_size of data directory. + (coff_swap_outhdr_out): Hardwire in version number. + +Wed Oct 18 16:50:54 1995 Ken Raeburn <raeburn@cygnus.com> + + * sunos.c (sunos_add_dynamic_symbols): Rename local variables + major and minor to *_vno, since the former are also macros in + SunOS header files. Cast result of bfd_alloc to appropriate + type. + + * coffgen.c (coff_find_nearest_line): Cast used_by_bfd value + before assigning to sec_data. + +Wed Oct 18 13:25:17 1995 Ian Lance Taylor <ian@cygnus.com> + + * ecoff.c (_bfd_ecoff_find_nearest_line): The offset argument is + now relative to the section, not absolute. + * ecofflink.c (_bfd_ecoff_locate_line): Use the right symbol to + get the file name when there is a N_SO directory name. When + handling stabs, remember that section->vma was added to the + offset. + +Tue Oct 17 18:24:54 1995 Ian Lance Taylor <ian@cygnus.com> + + * sunos.c (struct sunos_link_hash_table): Add needed field. + (sunos_link_hash_table_create): Call bfd_release, not free. + (sunos_link_hash_table_create): Initialize needed field. + (sunos_add_dynamic_symbols): Record needed objects. + (bfd_sunos_get_needed_list): New function. + * bfd-in.h (bfd_sunos_get_needed_list): Declare. + * bfd-in2.h: Rebuild. + +Mon Oct 16 14:43:59 1995 steve chamberlain <sac@slash.cygnus.com> + + * libcoff-in.h (pe_data_type.in_reloc_p): New. + +Mon Oct 16 10:52:50 1995 Ian Lance Taylor <ian@cygnus.com> + + * bfd-in.h (struct bfd_link_needed_list): Rename from + bfd_elf_link_needed_list. + * bfd-in2.h: Rebuild. + * elf.c, elflink.h, libelf.h: Corresponding changes. + + Add start at AIX linker support; no shared libraries yet. + * xcofflink.c: New file. + * configure.in (rs600coff_vec): Use xcofflink.o. + * configure: Rebuild. + * libcoff-in.h (struct xcoff_tdata): Add csects and debug_indices + fields. + (struct xcoff_section_tdata): Define. + (xcoff_section_data): Define macro. + (_bfd_xcoff_bfd_link_hash_table_create): Declare. + (_bfd_xcoff_bfd_link_add_symbols): Declare. + (_bfd_xcoff_bfd_final_link): Declare. + (_bfd_ppc_xcoff_relocate_section): Declare. + * libcoff.h: Rebuild. + * coff-rs6000.c: Clean up a bit. + (xcoff_mkobject): Default modtype to 1L, not RE. Initialize + cputype, csects, and debug_indices. + (xcoff_copy_private_bfd_data): Copy cputype. + (xcoff_howto_table): Rename from rs6000coff_howto_table. + (xcoff_rtype2howto): Rename from rs6000coff_rtype2howto. + (xcoff_reloc_type_lookup): Rename from + rs6000coff_reloc_type_lookup. + (coff_relocate_section): Define. + (_bfd_xcoff_sizeof_headers): Define. + (_bfd_xcoff_bfd_get_relocated_section_contents): Define. + (_bfd_xcoff_bfd_relax_section): Define. + (_bfd_xcoff_bfd_link_split_section): Define. + (rs6000coff_vec): For BFD_JUMP_TABLE_LINK, use _bfd_xcoff, not + coff. + * coffcode.h (coff_compute_section_file_positions): If AIX, + increment sofar by SMALL_AOUTSZ if not executable. + (coff_write_object_contents): If AIX, always output an a.out + header; if not executable, header size of SMALL_AOUTSZ. + * hash.c (struct bfd_strtab_hash): Add xcoff field. + (_bfd_stringtab_init): Initialize xcoff field. + (_bfd_xcoff_stringtab_init): New function. + (_bfd_stringtab_add): In XCOFF mode, leave two bytes for length. + (_bfd_stringtab_emit): In XCOFF mode, write out length. + * libbfd-in.h (_bfd_xcoff_stringtab_init): Declare. + * libbfd.h: Rebuild. + * Makefile.in: Rebuild dependencies. + (BFD32_BACKENDS): Add xcofflink.o. + (CFILES): Add xcofflink.c. + + * elf32-mips.c (mips_elf_symbol_processing): Set SEC_ALLOC, not + SEC_NO_FLAGS, for .acommon section. From Peter Schauer + <Peter.Schauer@Regent.E-Technik.TU-Muenchen.DE>. + +Sat Oct 14 21:36:02 1995 Michael Meissner <meissner@tiktok.cygnus.com> + + * coff-ppc.c (in_reloc_p): Add, clone from coff-i386.c. + +Fri Oct 13 17:48:43 1995 Ken Raeburn <raeburn@cygnus.com> + + * acconfig.h (HAVE_SYS_PROCFS_H): Undef, with comment. + * config.in: Regenerated. + + * opncls.c (getpagesize) [!HAVE_GETPAGESIZE]: Define as 2048. + (_bfd_chunksize): New variable. + (_bfd_new_bfd): Set it to getpagesize() if negative, and use it + for obstack chunk size. + * configure.in: Check for getpagesize. + * configure: Regenerated. + + Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> + + * trad-core.c (rawptr): Make it a local variable of + ptrace_unix_core_file_p. + +Fri Oct 13 11:22:01 1995 steve chamberlain <sac@slash.cygnus.com> + + * coff-arm.c (in_reloc_p): New. + * coff-i386.c (in_reloc_p): New. + * coffcode.h: Allways include peicode.h if COFF_WITH_PE. + (coff_write_object_contents): Only set has_reloc_section + if PE_IMAGE. + * cofflink.c (_bfd_coff_generic_relocate_section): Call + in_reloc_p to decide if reloc should be emitted. + * libcoff.h (pe_data_type.in_reloc_p): New. + * peicode.h (pe_mkobject): Initialize in_reloc_p. + +Wed Oct 11 00:49:29 1995 Ian Lance Taylor <ian@cygnus.com> + + * cofflink.c (_bfd_coff_internal_syment_name): Move to coffgen.c. + (_bfd_coff_read_internal_relocs): Likewise. + * coffgen.c (_bfd_coff_internal_syment_name): Copy from coffgen.c. + (_bfd_coff_read_internal_relocs): Likewise. + + * elflink.h (elf_link_add_object_symbols): Correct conditions + under which type and size change warnings are issued. + +Tue Oct 10 18:32:46 1995 Ian Lance Taylor <ian@cygnus.com> + + * coffgen.c (coff_count_linenumbers): Don't count line numbers for + a symbol which is not in a real section. + (coff_write_native_symbol): Corresponding change. + + * cofflink.c (_bfd_coff_link_hash_newfunc): Rename from + coff_link_hash_newfunc and make non-static. + (_bfd_coff_link_hash_table_init): New function, broken out of + _bfd_coff_link_hash_table_create. + (_bfd_coff_link_hash_table_create): Use it. + (process_embedded_commands): Make static. + * libcoff-in.h ((_bfd_coff_link_hash_newfunc): Declare. + (_bfd_coff_link_hash_table_init): Declare. + * libcoff.h: Rebuild. + + * coffcode.h (coff_mkobject_hook): If RS6000COFF_C, set cputype + field in XCOFF tdata. + (coff_set_arch_mach_hook): Check ifdef RS6000COFF_C, not ifdef + U802ROMAGIC, for clarity. Try to set arch and machine correctly + based on cputype stored in a.out header, or in n_type of initial + .file symbol. + (coff_write_object_contents): Set cputype correctly in a.out + header. + (coff_slurp_symbol_table): Add casts to file_ptr to avoid + warnings. + * coffswap.h (coff_swap_aouthdr_in): Swap in cputype field. + (coff_swap_aouthdr_out): Swap out cputype field. Don't clear + old resv1 field. + * libcoff-in.h (struct xcoff_tdata): Add cputype field. + * libcoff.h: Rebuild. + + * cpu-rs6000.c (rs6000_compatible): New static function. + (bfd_rs6000_arch): Use it. + * cpu-powerpc.c (powerpc_compatible): New static function. + (arch_info_struct): Define various flavours of PowerPC. + (bfd_powerpc_arch): Use powerpc_compatible. Point at + arch_info_struct. + +Tue Oct 10 10:50:46 1995 Fred Fish <fnf@cygnus.com> + + * Makefile.in (FLAGS_TO_PASS): Remove BISON. + +Tue Oct 10 01:28:29 1995 Ian Lance Taylor <ian@cygnus.com> + + * elflink.h (elf_link_add_object_symbols): Don't warn about + changing the size or type if the old definition was weak. + +Mon Oct 9 11:24:08 1995 Ian Lance Taylor <ian@cygnus.com> + + * coffcode.h (combined_entry_type): Add fix_line field. + (coff_slurp_line_table): Warn if we try to set the lineno field of + a symbol twice. + (coff_slurp_symbol_table): If RS6000COFF_C, handle C_BINCL and + C_EINCL by setting fix_line. Fix C_BSTAT symbol value. + * coffgen.c (coff_mangle_symbols): Handle fix_line. + (coff_write_symbol): Only use N_DEBUG if the symbol is in the + absolute section. + (coff_print_symbol): Print fix_value symbols in a useful fashion. + * libcoff.h: Rebuild. + + * libcoff-in.h (struct xcoff_tdata): Define. + (xcoff_data): Define. + * bfd.c (struct _bfd): Add xcoff_obj_data field to tdata union. + * bfd-in2.h, libcoff.h: Rebuild. + * coff-rs6000.c (xcoff_mkobject): New static function. + (coff_mkobject): Define. + (xcoff_copy_private_bfd_data): New static function. + (coff_bfd_copy_private_bfd_data): Define. + (rs6000coff_howto_table): Change R_TOC complain_on_overflow from + signed to bitfield. + (rs6000coff_vec): Add DYNAMIC to object_flags. + * coffcode.h (sec_to_styp_flags): If RS6000COFF_C, handle .pad and + .loader sections specially. + (coff_new_section_hook): If RS6000COFF_C, get the .text and .data + section alignment from the XCOFF tdata information. + (coff_mkobject_hook): If RS6000COFF_C, set DYNAMIC based on + F_SHROBJ, and copy the extra a.out header information into the + XCOFF tdata structure. + (coff_write_object_contents): If RS6000COFF_C, set F_SHROBJ, + F_DYNLOAD and the extra a.out header information. + (coff_slurp_symbol_table): Set BSF_NOT_AT_END for a C_EXT or + C_HIDEXT symbol with attached csect information. + * coffswap.h (coff_swap_aouthdr_in): If RS6000COFF_C, swap + in the o_maxdata field. + (coff_swap_aouthdr_out): If RS6000COFF_C, swap extra XCOFF fields. + * coffgen.c (coff_renumber_symbols): Don't move any symbol to the + end if BSF_NOT_AT_END is set. + + * targets.c (bfd_target): Rename _bfd_read_ar_hdr field to + _bfd_read_ar_hdr_fn. + * libbfd-in.h (_bfd_read_ar_hdr): Update accordingly. + * bfd-in2.h, libbfd.h: Rebuild. + * archive.c (_bfd_get_elt_at_filepos): Cast _bfd_read_ar_hdr + return value. + (do_slurp_bsd_armap, do_slurp_coff_armap): Likewise. + (bfd_slurp_bsd_armap_f2): Likewise. + (_bfd_slurp_extended_name_table): Likewise. + +Fri Oct 6 16:18:35 1995 Ken Raeburn <raeburn@cygnus.com> + + Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> + + * archive.c (bfd_get_next_mapent): Return BFD_NO_MORE_SYMBOLS + when the symbol table is empty. + + * elf32-m68k.c (elf_m68k_size_dynamic_sections): Don't reserve + space for section symbols, since we don't output them either. + (elf_m68k_adjust_dynindx): Removed. + + * ptrace-core.c (rawptr): Make it a local variable of + ptrace_unix_core_file_p. + +Fri Oct 6 12:24:47 1995 Michael Meissner <meissner@tiktok.cygnus.com> + + * coff-rs6000.c (xcoff_write_archive_contents): Return false, not + NULL. + + * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Add NT, and + Mac object file formats. + +Fri Oct 6 12:04:02 1995 Ian Lance Taylor <ian@cygnus.com> + + * coffgen.c (coff_fix_symbol_name): Don't try to set up file + auxent if there isn't one. + (coff_write_symbols): If there is no file auxent, use SYMNMLEN + rather than FILNMLEN as the maximum name length. + + * coffcode.h (bfd_coff_backend_data): Add new field + _bfd_coff_print_aux. + (bfd_coff_print_aux): New static function. + (coff_pointerize_aux_hook (RS6000COFF_C version)): Pointerize the + scnlen field of an XTY_LD csect aux entry. + (coff_print_aux): New static function. + (coff_slurp_symbol_table): Don't pointerize scnlen field; now done + in coff_pointerize_aux_hook. + (bfd_coff_std_swap_table): Initialize new field. + * coffgen.c (coff_print_symbol): Call bfd_coff_print_aux. + * libcoff.h: Rebuild. + * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field. + * coff-mips.c (mips_ecoff_backend_data): Likewise. + + * coffcode.h (coff_write_object_contents): On AIX, clear F_RELFLG + if there are symbols, for native AIX ld compatibility. + + * coffcode.h (bfd_coff_backend_data): Add new field + _bfd_coff_pointerize_aux_hook. + (coff_pointerize_aux_hook): Define as a function if RS6000COFF_C + or I960, and as 0 otherwise. + (bfd_coff_std_swap_table): Initialize new field. + * libcoff.h: Rebuild. + * coffgen.c (coff_pointerize_aux): Change parameters to take + symbol pointer instead of type and class, and to take aux index. + Call _bfd_coff_pointerize_aux_hook if it is defined. + (coff_get_normalized_symtab): Always call coff_pointerize_aux. + * coff-alpha.c (alpha_ecoff_backend_data): Initialize all fields. + * coff-mips.c (mips_ecoff_backend_data): Likewise. + + * coff-rs6000.c: Add full support for AIX archives. Rewrite old + read-only/host-only support. + + * coffcode.h (coff_slurp_symbol_table): Set C_HIDEXT symbols to be + BSF_LOCAL. + (OTHER_GLOBAL_CLASS): Do not define to be C_HIDEXT if + RS6000COFF_C. + + * targets.c (bfd_target): Add _bfd_read_ar_hdr field. Modify + BFD_JUMP_TABLE_ARCHIVE accordingly. + * libbfd-in.h (_bfd_snarf_ar_hdr): Don't declare. + (_bfd_compute_and_write_armap): Declare. + (_bfd_generic_read_ar_hdr): Declare. + (_bfd_read_ar_hdr): Define. + (_bfd_noarchive_read_ar_hdr): Define. + (_bfd_archive_bsd_read_ar_hdr): Define. + (_bfd_archive_coff_read_ar_hdr): Define. + * archive.c: Change all callers of _bfd_snarf_ar_hdr to call + _bfd_read_ar_hdr instead. + (_bfd_generic_read_ar_hdr): Rename from _bfd_snarf_ar_hdr. + (_bfd_compute_and_write_armap): Rename from + compute_and_write_armap. Make non-static. Change all callers. + * ecoff.c (_bfd_ecoff_slurp_armap): Call _bfd_read_ar_hdr rather + than _bfd_snarf_ar_hdr. + * aout-target.h (MY_read_ar_hdr): Define if not defined. + * ieee.c (ieee_read_ar_hdr): Define. + * libecoff.h (_bfd_ecoff_read_ar_hdr): Define. + * oasys.c (oasys_read_ar_hdr): Define. + * som.c (som_read_ar_hdr): Define. + * bfd-in2.h, libbfd.h: Rebuild. + +Thu Oct 5 14:04:07 1995 steve chamberlain <sac@slash.cygnus.com> + + * peicode.c (coff_swap_filehdr_in): If symptr is + zero, there aren't any symbols, even if nsyms is set. + +Thu Oct 5 11:45:02 1995 Ian Lance Taylor <ian@cygnus.com> + + * libecoff.h (struct ecoff_backend_data): Add adjust_headers + field. + * ecoff.c (ecoff_sec_to_styp_flags): Check for various Alpha + sections, and set styp correctly for them: .got, .hash, .dynamic, + .liblist, .rel.dyn, .conflic, .dynstr, .dynsym, .comment. + (_bfd_ecoff_styp_to_sec_flags): Check for various Alpha section + types. + (ecoff_sort_hdrs): New static function. + (ecoff_compute_section_file_positions): Return boolean, not void. + Sort the sections by VMA before looking through them. Put the + first non SEC_ALLOC section on a new page. Put every SEC_ALLOC + section on an appropriate boundary within the page. + (ecoff_compute_reloc_file_positions): Check return value of + ecoff_compute_section_file_positions. + (_bfd_ecoff_set_section_contents): Likewise. + (_bfd_ecoff_write_object_contents): Check for various Alpha + section types when incrementing text_size and data_size. Call + adjust_headers backend function if it exists. + * coff-alpha.c (alpha_adjust_headers): New static function. + (alpha_ecoff_backend_data): Initialize adjust_headers field. + * coff-mips.c (mips_ecoff_backend_data): Likewise. + + * hosts/i386bsd.h: Restore file incorrectly deleted on Sep 6. + +Wed Oct 4 18:15:02 1995 Jeff Law (law@hurl.cygnus.com) + + * rs6000-core.c (CORE_VERSION_1): Use CORE_VERSION_1 instead + of ALTERNATE_AIX_CORE_FORMAT. + * configure.in (aix4): No longer need CORE_FLAGS. + * configure: Updated. + +Wed Oct 4 15:36:36 1995 Ken Raeburn <raeburn@cygnus.com> + + NS32k changes from Ian Dall: + * aoutx.h (MY_final_link_relocate, MY_relocate_contents): New + macros. + (aout_link_input_section_std, aout_link_input_section_ext, + aout_link_reloc_link_order): Call them instead of _bfd_* + versions. + * aout-target.h (MY_exec_header_not_counted): New macro, defaults + to zero. + (backend_data): Use it instead of hardcoded zero. + + * aout-ns32k.c (CTOR_TABLE_RELOC_HOWTO): New macro. + (MY_swap_std_reloc_out): Use udata.i for KEEPIT, don't call stoi. + + * ns32knetbsd.c: Include bfd.h. + (MY_text_includes_header, MY_bfd_reloc_type_lookup): New macros. + (MY_bfd_reloc_type_lookup): Declare function too. + * pc532-mach.c (set_sizes): Don't declare. + (MY_text_includes_header, MY_exec_header_not_counted): Define. + (backend_data, MY_backend_data): Don't define. + + * config.bfd: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and + ns32k-*-lites* like ns32k-*-netbsd*. + + * hosts/nbsd.h: Swap order of sys/vmparam.h and sys/param.h, to + compile on lites. + +Wed Oct 4 14:15:52 1995 Ian Lance Taylor <ian@cygnus.com> + + * coffcode.h (coff_write_object_contents): Restore setting + f_timdat to 0, deleted on August 22. + +Tue Oct 3 16:28:32 1995 steve chamberlain <sac@slash.cygnus.com> + + * coffcode.h (coff_bfd_copy_private_symbol_data, + coff_bfd_copy_private_section_data, + coff_bfd_copy_private_bfd_data): ifdef to allow overrides. + * peicode.h (coff_bfd_copy_private_bfd_data): New + (pe_bfd_copy_private_bfd_data): New. + (coff_swap_scnhdr_in): Swap bss size into the right place. + (pe_print_private_bfd_data): Add some newlines. + +Tue Oct 3 11:53:04 1995 Jeff Law (law@hurl.cygnus.com) + + * som.c (setup_sections): Don't die if a space has no subspaces. + +Mon Oct 2 14:08:55 1995 Ian Lance Taylor <ian@cygnus.com> + + * elflink.h (elf_link_add_object_symbols): Don't let a weak + dynamic symbol override a common symbol. Don't change the size or + type if they have been set and the new symbol is not a definition. + Warn if the size or type changes. + +Sun Oct 1 01:34:41 1995 Jeff Law (law@hurl.cygnus.com) + + * som.c (som_begin_writing): Don't write the symbol table or + symbol strings. + (som_finish_writing): Write them here. Place them after the + subspace data, but before the relocs. + +Fri Sep 29 11:01:55 1995 Ian Lance Taylor <ian@cygnus.com> + + * sunos.c (sunos_add_one_symbol): Just pass false, not + info->shared_library, to sunos_create_dynamic_sections. + (sunos_scan_ext_relocs): Don't warn about a reloc in the .text + section. + (sunos_check_dynamic_reloc): Remove .text section assertion. + +Thu Sep 28 18:48:47 1995 Stan Shebs <shebs@andros.cygnus.com> + + * config.bfd: Add powerpc-*-macos*, powerpc-*-mpw*. + * configure, configure.in: Add pmac_xcoff_vec case. + * Makefile.in (BFD32_BACKENDS): Add coff-pmac.o. + * coff-pmac.c: New file, PowerMac XCOFF support. + * coffcode.h (coff_set_arch_mach_hook): Add PowerMac case. + * targets.c (pmac_xcoff_vec): Declare. + + * mpw-config.in: Various changes to be compatible with the + autoconf-based configury. + * mpw-make.sed: New file, sed commands to translate Unix + makefile into MPW syntax. + * mpw-make.in: Remove. + * hosts/mpw.h: Remove. + * bfd-in.h, bfd-in2.h: If MPW, include the file that defines + true and false as enums, then define TRUE_FALSE_ALREADY_DEFINED. + +Thu Sep 28 17:06:23 1995 steve chamberlain <sac@slash.cygnus.com> + + * binary.c (binary_get_symtab): Return an empty string on error. + * opncls.c (bfd_fdpenr): Change WIN32 restriction to WINGDB. + +Thu Sep 28 15:30:44 1995 Kim Knuttila <krk@nellie> + + * coff-ppc.c: Reformatted according to gnu conventions + Removed irrelevant "if 0" code + +Thu Sep 28 11:19:53 1995 Ian Lance Taylor <ian@cygnus.com> + + * hp300hpux.c (convert_sym_type): Treat secondary symbols as weak + symbols rather than as indirect symbols. + (MY(slurp_symbol_table)): Don't do anything special about + secondary symbols. + + * coffcode.h (coff_new_section_hook): Make sure that the alignment + of .ctors and .dtors sections is no larger than 2. + + * sunos.c (sunos_add_one_symbol): Don't change + bfd_link_hash_common to bfd_link_hash_new, since it may be on the + undef list. + (bfd_sunos_record_link_assignment): Don't put __DYNAMIC in the + dynamic symbols when creating a shared library. + (sunos_scan_ext_relocs): Handle relocs correctly when creating a + shared library. + (sunos_scan_dynamic_symbol): Don't mark the __DYNAMIC symbol as + written even if it is not defined in a regular object. + (sunos_write_dynamic_symbol): Use plt_offset for the address of + the jump table reloc. Add an assertion. Use RELOC_JMP_SLOT + rather than the constant 22. + (sunos_check_dynamic_reloc): Handle creating a shared library. + (sunos_finish_dynamic_link): Set the first entry in the GOT to + zero when creating a shared library. + * aoutx.h (NAME(aout,final_link)): If there is a symbol __DYNAMIC, + write it out at the start of the symbol table. + + * Makefile.in (BFD32_BACKENDS): Add coff-arm.o. + +Thu Sep 28 00:58:05 1995 Doug Evans <dje@deneb.cygnus.com> + + * config.bfd: Add arm-*-coff. + * configure.in, configure: Add armcoff_{little,big}_vec. + * targets.c (armcoff_{little,big}_vec): Declare. + (bfd_target_vector): Add armcoff_{little,big}_vec. + * coff-arm.c (armcoff_{little,big}_vec): Always define. + +Wed Sep 27 10:37:14 1995 Ian Lance Taylor <ian@cygnus.com> + + * targets.c (bfd_find_target): Remove debugging code. + +Wed Sep 27 07:23:39 1995 Kim Knuttila <krk@nellie> + + * coff-ppc.c, pe-ppc.c, pei-ppc.c: Initial bfd for coff/PE + support on powerpc. + * Makefile.in: added *-ppc files + * coffcode.h: ppc MAGIC, and use peicode.h rather than coffswap.h to + allow pe based .o's to be shared with other tools on ppc/NT + * config.bfd: added powerpc[le]-[pe|winnt] config support + * configure, configure.in: added bfd_powerpc[le]_pe[i]_vec + * peicode.h: Added more section flags for PE on ppc + Added coff_swap_filehdr_out to allow peicode.h to be + used for non-image PE files on ppc. + Check for image, or not, before copying pe_opthdr + * targets.c: Added new bfd's + * targets.c: Removed two inactive bfds that shouldn't have made it this + far. + +Tue Sep 26 14:06:41 1995 Michael Meissner <meissner@tiktok.cygnus.com> + + * elf32-ppc.c (ppc_reloc_type): Rename from reloc_type, and use + explicit values to initialize all relocs. Change all users. + (ppc_elf_brtaken_inner): New function to handle branch predicition + relocs. + (ppc_elf_brtaken_reloc): Ditto. + (ppc_elf_howto_raw): Use new functions. Make sure all unsupported + relocs use ppc_elf_unsupported_reloc. + (ppc_elf_merge_private_bfd_data): Keep track of whether an error + needs to be reported. + (ppc_elf_relocate_section): Support branch prediction relocs. + +Tue Sep 26 12:48:05 1995 Ian Lance Taylor <ian@cygnus.com> + + * bfd.c (bfd_assert): Remove \n from string passed to + _bfd_error_handler. + + * coff-i386.c: (TWO_DATA_SECS): Don't define. + * coffcode.h (bfd_coff_backend_data): Remove _bfd_make_section_hook. + (bfd_coff_make_section_hook): Don't define. + (coff_make_section_hook): Remove. + (sec_to_styp_flags): Remove TWO_DATA_SECS case. + (styp_to_sec_flags): Likewise. + (coff_write_object_contents): Likewise. + (bfd_coff_std_swap_table): Don't initialize make_section_hook + field. + * libcoff.h: Rebuild. + * coffgen.c (make_a_section_from_file): Just call + bfd_make_section_anyway, not bfd_make_section or + bfd_coff_make_section_hook. + * ecoff.c (_bfd_ecoff_make_section_hook): Remove. + * libecoff.h (_bfd_ecoff_make_section_hook): Don't declare. + * coff-alpha.c (alpha_ecoff_backend_data): Don't initialize + make_section_hook field. + * coff-mips.c (mips_ecoff_backend_data): Likewise. + + * aoutx.h (translate_from_native_sym_flags): Don't try to stuff + pointers into value field for warning and indirect symbols; just + leave the value field alone. + * linker.c (generic_link_add_symbol_list): Use next symbol for + warning and indirect symbols, rather than looking in symbol value. + * ecoff.c (ecoff_set_symbol_info): Remove indirect_ptr_ptr + parameter. Change all callers. Remove support for indirect + symbols; it didn't work anyhow. + (_bfd_ecoff_slurp_symbol_table): Remove indirect_ptr variable. + * syms.c: Change comments about BSF_WARNING and BSF_INDIRECT. + * bfd-in2.h: Rebuild. + +Mon Sep 25 16:04:09 1995 Michael Meissner <meissner@tiktok.cygnus.com> + + * elf32-ppc.c (ppc_elf_howto_raw): For all 14-bit branch relocs, + go back to telling the tools this reloc operates on 32 bits. + +Mon Sep 25 11:48:02 1995 Ian Lance Taylor <ian@cygnus.com> + + * aout-adobe.c (aout_adobe_callback): Use _bfd_error_handler + rather than a direct fprintf. + * archive.c (_bfd_write_archive_contents): Likewise. + * coffcode.h (coff_slurp_symbol_table): Likewise. + * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Likewise. + (ppc_elf_unsupported_reloc): Likewise. + (ppc_elf_relocate_section): Likewise. + * i386linux.c (linux_tally_symbols): Likewise. + (linux_finish_dynamic_link): Likewise. + * osf-core.c (osf_core_core_file_p): Likewise. + * rs6000-core.c (rs6000coff_get_section_contents): Likewise. + * som.c (som_sizeof_headers): Likewise. + * srec.c (srec_bad_byte): Likewise. + * bfd.c (bfd_assert): Likewise. Also change file to be const. + * libbfd-in.h (bfd_assert): Declare first parameter const. + * libbfd.h: Rebuild. + * coff-a29k.c (a29k_reloc): Don't bother to fprintf; returning + bfd_reloc_overflow is enough. + * coff-h8300.c (rtype2howto): Don't bother to fprintf; just abort. + * coff-h8500.c (rtype2howto): Likewise. + * coff-z8k.c (rtype2howto): Likewise. + * coffcode.h (dummy_reloc16_extra_cases): Likewise. + * elf.c (_bfd_elf_get_lineno): Likewise. + (_bfd_elf_no_info_to_howto): Likewise. + (_bfd_elf_no_info_to_howto_rel): Likewise. + * hp300hpux.c (convert_sym_type): Likewise. + (MY(swap_std_reloc_in)): Likewise. + * elf.c (bfd_section_from_shdr): Remove #if 0 sections. + + * libaout.h (struct aoutdata): Add line_buf field. + * aoutx.h (NAME(aout,find_nearest_line)): Remove statics buffer + and filename_buffer. Instead, use a malloc buffer stored in the + new line_buf field. Remove length restrictions. + + * coffgen.c (string_size): Remove static variable. + (debug_string_size, debug_string_section): Likewise. + (coff_fix_symbol_name): Add string_size_p, debug_string_section_p, + and debug_string_size_p parameters. Use them instead of the + global variables. Change all callers. + (coff_write_symbol): Likewise. + (coff_write_alien_symbol, coff_write_native_symbol): Likewise. + (coff_write_symbols): Add local variables to replace removed + global variables. + + * libcoff-in.h (struct coff_section_tdata): Add offset, i, + function, and line_base fields. + * libcoff.h: Rebuild. + * coffgen.c (coff_find_nearest_line): Use section tdata to cache + information, rather than using static variables. + + * sunos.c (sunos_read_dynamic_info): Adjust offsets in an NMAGIC + file. From Peter DeWolf <pld@amt.tay1.dec.com>. + + * init.c (initialized): Remove static variable. + (bfd_init): Don't bother setting initialized. + (bfd_check_init): Remove. + * opncls.c (_bfd_new_bfd): Don't call bfd_check_init. + * libbfd.h: Rebuild. + +Sat Sep 23 01:22:23 1995 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) + + * rs6000-core.c (rs6000coff_core_p): Don't check the core file + size for full core dumps. Copy core file header to private data. + (rs6000coff_core_file_failing_command, + rs6000coff_core_file_failing_signal): New functions to extract + the file name and terminating signal from the core file. + * coff-rs6000.c: Use them. + +Fri Sep 22 17:44:47 1995 Ian Lance Taylor <ian@cygnus.com> + + Change arch info to be const, initialized at compile time. + * archures.c: Reindent many functions. Change CONST to const. + (bfd_arch_info_type): Make arch_name const. Remove disassemble; + nothing set it anyhow. Make next const. + (bfd_arch_info_list): Remove. + (bfd_archures_list): Rename from archures_init_table. Change from + a table of function pointers to a table of bfd_arch_info_type + structure addresses. + (bfd_scan_arch): Rewrite accordingly. Return a const pointer. + (bfd_lookup_arch): Likewise. + (bfd_set_arch_info): Rewrite accordingly. Change argument to be a + const pointer. + (bfd_default_arch_struct): Make const. + (bfd_arch_init, bfd_arch_linkin): Remove. + (bfd_get_arch_info): Return a const pointer. + * init.c (bfd_init): Don't call bfd_arch_init. + * bfd.c (struct _bfd): Make arch_info const. + * bfd-in2.h: Rebuild. + * libbfd.h: Rebuild. + * configure.in: Put & before everything in $selarchs. + * configure: Rebuild. + * cpu-*.c: Change bfd_*_arch from a function which calls + bfd_arch_linkin to a const structure. + * ieee.c (ieee_object_p): Make arch const. + +Fri Sep 22 16:23:18 1995 Michael Meissner <meissner@tiktok.cygnus.com> + + * reloc.c (bfd_reloc_code_type): Add relocations to support all of + PowerPC V.4. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + + * elf32-ppc.c (reloc_type): Update names to match current draft. + (ppc_elf_howto_raw): Mark 14 bit relocs as short sized and PC + relative. Update names to current V.4 draft. + (ppc_elf_reloc_type_lookup): Add support for more relocations. + (ppc_elf_relocate_section): Rename relocations to match draft. + +Thu Sep 21 21:53:18 1995 Michael Meissner <meissner@cygnus.com> + + * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Allow modules + compiled with -mrelocatable-lib to be linked with either normal + modules or -mrelocatable modules. + +Wed Sep 20 12:03:26 1995 Ian Lance Taylor <ian@cygnus.com> + + * coffcode.h (coff_write_object_contents): Clear the vstamp field + in the a.out header. + + * aoutx.h (NAME(aout,swap_ext_reloc_out)): Don't set r_extern for + a reloc against a local symbol, even if it's not a section. + +Tue Sep 19 17:02:26 1995 Ian Lance Taylor <ian@cygnus.com> + + * targets.c (bfd_target): Remove unused align_power_min field. + * bfd-in2.h: Rebuild. + * All backends: Remove initialization of align_power_min. + +Tue Sep 19 14:02:21 1995 steve chamberlain <sac@slash.cygnus.com> + + * peicode.h (coff_swap_scnhdr_out): Get sizes for BSS right. + +Mon Sep 18 14:35:01 1995 Arne H. Juul <arnej@pvv.unit.no> + + * config.bfd (mips-dec-netbsd*): New target. + * configure.host (mips-dec-netbsd*): New host. + * configure.in (mips-dec-netbsd*): New native. + * configure: Rebuild. + +Fri Sep 15 10:24:36 1995 Ian Lance Taylor <ian@cygnus.com> + + Make the COFF backend linker merge common types: + * cofflink.c (struct coff_debug_merge_element): Define. + (struct coff_debug_merge_type): Define. + (struct coff_debug_merge_hash_entry): Define. + (struct coff_debug_merge_hash_table): Define. + (coff_debug_merge_hash_table_init): Define. + (coff_debug_merge_hash_table_free): Define. + (coff_debug_merge_hash_lookup): Define. + (struct coff_final_link_info): Add debug_merge field. + (coff_debug_merge_hash_newfunc): New static function. + (_bfd_coff_final_link): Allocate and free debug_merge table. + (coff_link_input_bfd): Merge identical enum, struct and union + types. + +Thu Sep 14 14:53:58 1995 Ian Lance Taylor <ian@cygnus.com> + + Convert i960 COFF to use COFF backend linker. + * coff-i960.c (coff_i960_relocate): Use a coff_section_data + structure to store the symbol being used. + (coff_i960_start_final_link): New static function. + (coff_i960_relocate_section): New static function. + (coff_i960_adjust_symndx): New static function. + (coff_start_final_link): Define. + (coff_relocate_section): Define. + (coff_adjust_symndx): Define. + * coffcode.h (bfd_coff_backend_data): Add new callback function + _bfd_coff_start_final_link. + (bfd_coff_start_final_link): Define. + (coff_start_final_link): Define if not defined. + (bfd_coff_std_swap_table): Add coff_start_final_link. + * cofflink.c (_bfd_coff_internal_syment_name): Make globally + visible. + (_bfd_coff_final_link): Call bfd_coff_start_final_link if the + function callback is not NULL. + * libcoff-in.h (struct coff_section_tdata): Add tdata field. + (_bfd_coff_internal_syment_name): Declare. + * libcoff.h: Rebuild. + * configure.in (icoff_big_vec): Add cofflink.o. + (icoff_little_vec): Likewise. + * configure: Rebuild. + +Wed Sep 13 17:38:23 1995 Fred Fish <fnf@rtl.cygnus.com> + + * Makefile.in (clean-info): Remove extraneous tab from line + following action. + +Wed Sep 13 13:27:53 1995 Ian Lance Taylor <ian@cygnus.com> + + * cofflink.c (coff_link_input_bfd): Fail if a section with no + contents has relocs. + +Thu Sep 12 12:45:34 1995 steve chamberlain <sac@slash.cygnus.com> + + * coffcode.h (coff_compute_section_file_positions): Keep the + raw size safe. + (coff_write_object_contents): Remember if it's a relocatable + file. + * libcoff-in.h (pe_data_type): New member 'has_reloc_section' + * peicode.h (coff_swap_filehdr_out): Clear not-reloc flag + if relocatable file. Swap out saved raw size. + +Tue Sep 12 12:14:33 1995 Ian Lance Taylor <ian@cygnus.com> + + * Makefile.in (do_maintainer_clean): Rename from do_realclean. + (maintainer-clean): Rename from realclean, passing + maintainer-clean down to subdirectories, but leave realclean as a + synonym. + + * linker.c (_bfd_generic_link_add_one_symbol): Pass symbol name to + warning callback. + + * dep-in.sed: Remove config.h from generated dependencies. + + * sunos.c (sunos_slurp_dynamic_symtab): New static function, + broken out of sunos_canonicalize_dynamic_symtab. + (sunos_canonicalize_dynamic_symtab): Call new function + sunos_slurp_dynamic_symtab. + (sunos_add_dynamic_symbols): Add three new parameters. Return the + dynamic symbol table to the caller. + * aoutx.h (aout_link_add_symbols): Permit add_dynamic_symbols + callback to override the symbols being read. + * libaout.h (struct aout_backend_data): Add three new parameters + to add_dynamic_symbols callback. + + Extensive minor changes to avoid various gcc warnings. Also: + * Makefile.in (BFD32_BACKENDS): Remove coff-arm.o. + * archures.c (bfd_arch_info_type): Change mach field from long to + unsigned long. + (bfd_lookup_arch): Change machine parameter from long to unsigned + long. + +Mon Sep 11 10:55:47 1995 Ian Lance Taylor <ian@cygnus.com> + + * sunos.c (sunos_scan_std_relocs): Fix BFD_ASSERT: it's OK to find + a symbol with a non-zero plt_offset. + +Fri Sep 8 11:47:24 1995 Ian Lance Taylor <ian@cygnus.com> + + * elfcode.h (align_file_position): Remove; not used. + + * configure.in: Only check for <sys/procfs.h> on a native system, + and make sure it defines prstatus_t. + * configure: Rebuild. + +Thu Sep 7 12:48:01 1995 Ian Lance Taylor <ian@cygnus.com> + + * sunos.c (sunos_write_dynamic_symbol): Correct m68k abort test. + + * config.in: Rename from config.h.in. + * configure.in: Call AC_CONFIG_HEADER with config.h:config.in. + Check for config.h:config.in when creating stamp-h. + * configure: Rebuild. + * Makefile.in (stamp-h): Depend upon config.in rather than + config.h.in. Set CONFIG_HEADERS to config.h:config.in when + calling config.status. + + * Makefile.in (do_distclean): Remove config.h and stamp-h. + (Makefile): Just rebuild Makefile. + (config.h, stamp-h): New targets. + * configure.in: Create stamp-h when rebuilding config.h. + * configure: Rebuild. + +Wed Sep 6 15:00:33 1995 Ian Lance Taylor <ian@cygnus.com> + + * configure.in: Call AC_CONFIG_HEADER. Substitute + HOST_64BIT_LONG. Check that various header files exist. Check + that fcntl exists. Call BFD_BINARY_FOPEN. Check whether malloc + and/or free need to be declared. Don't make a link to sysdep.h. + Define TRAD_HEADER for various hosts. + * configure: Rebuild. + * configure.host: Don't set my_host. Add definitions taken from + host header files for various entries. Remove entries which now + do nothing. + * acconfig.h: New file. + * config.h.in: New file, built by autoheader. + * sysdep.h: New file. + * Makefile.in (do_distclean): Don't remove sysdep.h. + (RECONFIG): Remove. + (LOCAL_H_DEPS): New variable. + ($(BFD_LIBS)): Use $(LOCAL_H_DEPS) rather than libbfd.h and + $(RECONFIG). + ($(BFD_MACHINES), $(BFD_BACKENDS)): Likewise. + ($(OPTIONAL_BACKENDS)): Likewise. + (stmp-bfd.h): Just substitute for BFD_HOST_64BIT_LONG, rather than + looking through sysdep.h. + * bfd-in.h (BFD_HOST_64BIT_LONG): Define; set by Makefile. + (BFD_HOST_64_BIT): Define based on BFD_HOST_64BIT_LONG. + (fprintf_vma, sprintf_vma): Likewise. + (int64_type, uint64_type): Don't define. + * bfd-in2.h: Rebuild. + * archures.c, bfd.c, srec.c: Include <ctype.h>. + * elfcore.h: Check HAVE_SYS_PROCFS_H rather than HAVE_PROCFS. + * lynx-core.c: Include stuff from old hosts/lynx.h. + * opncls.c (bfd_fdopenr): Check HAVE_FNCTL and defined (F_GETFL), + rather than NO_FCNTL. + * targets.c (bfd_target_list): Check HOST_HPPAHPUX and ! __STDC__ + rather than NATIVE_HPPAHPUX_COMPILER. + * trad-core.c: Don't include <errno.h>. Include TRAD_HEADER if it + is defined. + * hosts/*.h: Remove all header files which merely include, + declare, and define things. Leave header files which define + information needed by trad-core.c. + + * aclocal.m4 (BFD_BINARY_FOPEN): Define. + (BFD_CC_FOR_BUILD): Define. + * configure.in: Use BFD_CC_FOR_BUILD. + * configure: Rebuild. + +Tue Sep 5 19:35:28 1995 Ian Lance Taylor <ian@cygnus.com> + + * aclocal.m4: Don't try to grep ../Makefile if it doesn't exist. + * configure: Rebuild. + + * coff-sparc.c (CALC_ADDEND): Don't set the addend to the value of + a global symbol. + +Tue Sep 5 12:48:26 1995 Jason Molenda (crash@phydeaux.cygnus.com) + + * config.bfd: i386pe_ve -> i386pe_vec. + +Mon Sep 4 14:02:43 1995 Ian Lance Taylor <ian@cygnus.com> + + * configure.host: Incorporate host Makefile fragments by setting + shell variables. + * configure.in: Call AC_PROG_CC. Substitute CFLAGS, HDEFINES and + AR. Call AC_PROG_INSTALL. Substitute CC_FOR_BUILD, choosing a + value based on whether the code is being compiled by a cross + compiler. Don't substitute host_makefile_frag or frags. + * aclocal.m4: New file to define local AC_PROG_CC. + * configure: Rebuild. + * Makefile.in (INSTALL): Set to @INSTALL@. + (INSTALL_PROGRAM): Set to @INSTALL_PROGRAM@. + (INSTALL_DATA): Set to @INSTALL_DATA@. + (AR): Set to @AR@. + (CC): Define as @CC@. + (CFLAGS): Set to @CFLAGS@. + (CC_FOR_BUILD): Set to @CC_FOR_BUILD@. + (@host_makefile_frag@): Remove. + (ALL_CFLAGS): Change $(HDEFINES) to @HDEFINES@. Move $(CFLAGS) + after other options. + (config.status): Remove dependency upon @frags@. + * config/*.mh, config/README: Remove. + + * config.bfd: Rewrite to incorporate the contents of the Makefile + fragments by setting shell variables, rather than merely returning + the name of a Makefile fragment. + * configure.in: Use shell variables set by config.bfd rather than + looking at the target Makefile fragment files. Don't substitute + target_makefile_frag. Do substitute TDEFINES. + * configure: Rebuild. + * Makefile.in (@target_makefile_frag@): Remove. + (ALL_CFLAGS): Change $(TDEFINES) to @TDEFINES@. + * config/*.mt: Remove. + +Mon Sep 4 03:13:28 1995 Ken Raeburn <raeburn@cygnus.com> + + * configure.in: Put changequote lines around "i[345]86" patterns + section of core file support. + +Sun Sep 3 11:31:58 1995 Jeff Law (law@snake.cs.utah.edu) + + * som.c (som_bfd_print_private_bfd_data): Define to use the + generic version. + +Fri Sep 1 17:08:40 1995 steve chamberlain <sac@slash.cygnus.com> + + * peicode.h (coff_swap_aouthdr_in): Add ImageBase to + entry, text_start and data_start. + +Fri Sep 1 18:06:28 1995 Ian Lance Taylor <ian@cygnus.com> + + * Makefile.in (OFILES): Remove $(TDEPFILES). + * config/apollo.mt (TDEPFILES): Remove. + * config/README: Update. + + * configure.in: For a native configuration, set COREFILE and + COREFLAG based on the canonical host name. + * configure: Rebuild. + * Makefile.in: Rebuild dependencies. + (ALL_CFLAGS): Add @COREFLAG@. + (OFILES): Replace $(HDEPFILES) with @COREFILE@. + * coff-rs6000.c: Check AIX_CORE rather than HOST_AIX for core file + support routines. Check LYNX_CORE rather than HOST_LYNX. + * lynx-core.c: Check LYNX_CORE rather than HOST_LYNX. + * i386lynx.c: Likewise. + * m68klynx.c: Likewise. + * sparclynx.c: Likewise. + * rs6000-core.c: Check AIX_CORE rather than HOST_AIX. + * *-core.c: Comment changes. + * config/decstation.mh (HDEPFILES): Remove. + (HDEFINES): Remove -DTRAD_CORE. + * config/irix3.mh (RANLIB): Remove. + * config/irix4.mh (HDEPFILES, RANLIB): Remove. + (HDEFINES): Remove -DIRIX_CORE. + * config/riscos.mh (RANLIB, HDEPFILES): Remove. + (HDEFINES): Remove -DTRAD_CORE. + * config/ncr3000.mh (AR_FLAGS, RANLIB): Remove. + * config/ultra3.mh (RANLIB): Remove. + * config/aix4.mh, config/alphaosf.mh, config/amix.mh: Remove. + * config/apollo.mh, config/delta68.mh, config/delta88.mh: Remove. + * config/dpx2.mh, config/esix.mh, config/harris.mh: Remove. + * config/hp300.mh, config/hp300bsd.mh, config/hppabsd.mh: Remove. + * config/hppahpux.mh, config/hppaosf.mh: Remove. + * config/i386aix.mh, config/i386bsd.mh: Remove. + * config/i386linux.mh, config/i386mach3.mh: Remove. + * config/i386sco.mh, config/i386v.mh, config/i386v4.mh: Remove. + * config/irix5.mh, config/m88kmach3.mh, config/mipsbsd.mh: Remove. + * config/mipsmach3.mh, config/news-mips.mh: Remove. + * config/news.mh, config/pc532mach.mh, config/riscix.mh: Remove. + * config/rs600.mh, config/rs6000lynx.mh: Remove. + * config/solaris2.mh, config/stratus.mh: Remove. + * config/symmetry.mh, config/sysv4.mh, config/tahoe.mh: Remove. + * config/vaxbsd.mh, config/vaxult.mh, config/vaxult2.mh: Remove. + +Fri Sep 1 15:18:50 1995 Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp> + + * elflink.h (elf_bfd_final_link): Don't change a DT_INIT or + DT_FINI entry if the appropriate symbol is not in the hash table. + + * libelf.h (struct elf_backend_data): Add create_program_headers + and want_hdr_in_seg fields. + * elfxx-target.h (elf_backend_want_hdr_in_seg): Define if not + defined. + (elf_backend_create_program_headers): Likewise. + (elfNN_bed): Initialize create_program_headers and + want_hdr_in_seg. + * elf.c (get_program_header_size): Call create_program_headers + backend routine. + (map_program_segments): Check want_hdr_in_seg backend field. Call + create_program_headers backend routine. + + * elf.c (assign_file_positions_except_relocs): Align non allocated + sections when creating an executable. + + * elfcode.h (elf_swap_phdr_in): Make non static. + (elf_swap_phdr_out): Make non static. + * libelf.h (bfd_elf32_swap_phdr_in): Declare. + (bfd_elf32_swap_phdr_out): Declare. + (bfd_elf64_swap_phdr_in): Declare. + (bfd_elf64_swap_phdr_out): Declare. + + * ecofflink.c (ecoff_collect_shuffle): New static function. + (_bfd_ecoff_get_accumulated_pdr): New function. + (_bfd_ecoff_get_accumulated_sym): New function. + (_bfd_ecoff_get_accumulated_ss): New function. + * libbfd-in.h (_bfd_ecoff_get_accumulated_pdr): Declare. + (_bfd_ecoff_get_accumulated_sym): Declare. + (_bfd_ecoff_get_accumulated_ss): Declare. + * libbfd.h: Rebuild. + +Fri Sep 1 13:20:25 1995 Ian Lance Taylor <ian@cygnus.com> + + * libecoff.h (_bfd_ecoff_bfd_print_private_bfd_data): Fix typo. + + * elflink.h (elf_link_add_object_symbols): Handle indirect and + warning symbols. If any section is named .gnu.warning.XXX, treat + the contents as a warning to be issued if the symbol XXX is + referenced. + (elf_link_output_extsym): For an indirect or warning symbol, just + output the symbol it points to. + + * linker.c (_bfd_link_hash_newfunc): Don't bother to set bfd_error + if bfd_hash_allocate fails, since it will already be set. + (generic_link_hash_newfunc): Likewise. + (archive_hash_newfunc): Likewise. + (hash_entry_bfd): New static function. + (_bfd_generic_link_add_one_symbol): Pass new arguments to warning + callback. Allocate a new warning using the hash table newfunc. + Use bfd_hash_replace to update the entry in the hash table, rather + than assuming we can copy the fields with structure assignment. + + * hash.c (bfd_hash_replace): New function. + * bfd-in.h (bfd_hash_replace): Declare. + * bfd-in2.h: Rebuild. + +Fri Sep 1 08:12:50 1995 James G. Smith <jsmith@beauty.cygnus.com> + + * config.bfd: Add mips*vr4300-*-elf* target. + * config/mipsbvr4300.mt: Added. + Thu Aug 31 16:00:53 1995 steve chamberlain <sac@slash.cygnus.com> * Makefile.in: Update dependencies. @@ -7926,911 +10033,10 @@ Sat Jan 1 10:18:54 1994 David J. Mackenzie (djm@thepub.cygnus.com) * hosts/i386mach3.h (HOST_SEGMENT_SIZE): Fix value. * i386mach3.c (SEGMENT_SIZE): Fix value. -Fri Dec 31 16:23:43 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - Minor cleanups suggested by CodeCenter. - * aoutx.h, coffgen.c, ecoff.c, ecofflink.c, elf.c, libbfd.c, - linker.c, reloc.c, section.c, srec.c: Added /*ARGSUSED*/ as - appropriate. - * aoutx.h (struct external_exec): Removed unnecessary declaration. - (NAME(aout,some_aout_object_p)): Set some tdata pointers to NULL. - (adjust_z_magic): Removed useless variable data_vma. - (stringtab_init): Initialize hash_zero. - (add_to_stringtab): Removed unused fourth argument. - (NAME(aout,swap_std_reloc_out)): Removed useless variable - r_addend. - (aout_link_input_section): Added some casts. - * archive.c (get_extended_arelt_filename, do_slurp_coff_armap, - bfd_ar_hdr_from_filesystem, bsd_write_armap, coff_write_armap): - Minor code rewriting to make it more C like. - (do_slurp_bsd_armap): Added some casts. - * ecoff.c (ecoff_write_object_contents): Removed useless variable - scn_base. - (ecoff_write_armap): Added some casts. Use "" rather than "\0". - * ecofflink.c (bfd_ecoff_write_debug): Added a cast. - * libaout.h (struct internal_exec): Removed unnecessary - declaration. - * linker.c (_bfd_generic_indirect_link_order): Added a cast. - * opncls.c (new_bfd): Removed a cast. - * reloc.c (bfd_generic_get_relocated_section_contents): Added - some casts. - * srec.c (internal_srec_write_object_contents): Removed useless - variable bytes_written. - -Fri Dec 31 11:46:13 1993 David J. Mackenzie (djm@thepub.cygnus.com) - - * i386mach3.c (N_TXTADDR): Don't define after all. - (TEXT_START_ADDR): Don't include exec header size in value. - -Thu Dec 30 15:47:54 1993 David J. Mackenzie (djm@thepub.cygnus.com) - - * i386mach3.c (N_TXTADDR): Define. - -Thu Dec 30 13:37:24 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - Extensive changes to move the bulk of the linker into BFD so that - more efficient backend code can be written for specific object - files. Only existing efficient backend is a.out. - * seclet.c, seclet.h: Removed. - * hash.c, linker.c, genlink.h: New files. - * bfd-in.h: Removed bfd_error_vector. Declared hash table - structures and functions. - (JUMP_TABLE): Removed bfd_seclet_link, added - bfd_link_hash_table_create, bfd_link_add_symbols and - bfd_final_link. - * All backends: Changed accordingly. - * bfd-in2.h: Rebuilt. - * bfd.c (struct _bfd): Added link_next and archive_pass fields. - Removed ld_symbols field. - (bfd_nonrepresentable_section, bfd_undefined_symbol, - bfd_reloc_value_truncated, bfd_reloc_is_dangerous, - bfd_error_vector): Removed. - (bfd_default_error_trap, bfd_error_trap, - bfd_error_nonrepresentabltrap): Removed. - (bfd_get_relocated_section_contents): Pass link_info. Pass - link_order instead of seclet. Pass symbols. - (bfd_relax_section): Pass link_info. - (bfd_seclet_link): Removed. - (bfd_link_hash_table_create, bfd_link_add_symbols, - bfd_final_link): New macros. - * libbfd-in.h: If __GNUC__ is defined and alloca is not, define - alloca as __builtin_alloca. Declare internal linking functions. - * libbfd.h: Rebuilt. - * libbfd.c (bfd_seek): Comment out fseek assertion. It's worked - for months. - * reloc.c (reloc_howto_type): Added error_message argument to - special_function field. Changed all callers and all definitions. - (bfd_get_reloc_size): Make argument a const pointer. - (bfd_perform_relocation): Add error_message argument to hold - string set if return value if bfd_reloc_dangerous. Changed all - callers. - (_bfd_final_link_relocate, _bfd_relocate_contents): New functions. - * section.c (asection): Renamed seclets_head and seclets_tail to - link_order_head and link_order_tail. - * targets.c (bfd_target): Replaced seclet argument with link_info - and link_order and symbols arguments in - bfd_get_relocated_section_contents. Added symbols argument to - bfd_relax_section. Removed bfd_seclet_link. Added - bfd_link_hash_table_create, bfd_link_add_symbols and - bfd_final_link. - * libaout.h (struct aoutdata): Added external_syms, - external_sym_count, external_strings, sym_hashes fields. - (obj_aout_external_syms, obj_aout_external_sym_count, - obj_aout_external_strings, obj_aout_sym_hashes): New accessor - macros. - (WRITE_HEADERS): Only output symbols if outsymbols is not NULL. - * aoutx.h: Wrote new back end linker routines. - (translate_to_native_sym_flags): Return boolean value. Don't use - bfd_error_vector. - (NAME(aout,write_syms)): Return boolean value. Check return value - of translate_to_native_sym_flags and bfd_write. - * aout-target.h (final_link_callback): New function. - (MY_bfd_final_link): New function. - * aout-adobe.c (aout_adobe_write_object_contents): Check return - value of aout_32_write_syms. - * hp300hpux.c (MY(write_object_contents)): Likewise. - * i386lynx.c (WRITE_HEADERS): Likewise. - * libaout.h (WRITE_HEADERS): Likewise. - * bout.c: Changed functions to use link_info->callbacks rather - than bfd_error_vector, and link_orders rather than seclets. - * coff-alpha.c: Likewise. - * coff-h8300.c: Likewise. - * coff-h8500.c: Likewise. - * coff-sh.c: Likewise. - * coff-z8k.c: Likewise. - * elf32-hppa.c: Likewise. - * reloc16.c: Likewise. - * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Look - up _gp in the hash table rather than in outsymbols. - * coff-a29k.c (a29k_reloc): Pass errors back in new error_message - argument rather than printing them. - * coffcode.h (bfd_coff_reloc16_extra_cases): Take link_info and - link_order arguments rather than seclet. Changed all uses and - definitions. - (bfd_coff_reloc16_estimate): Pass link_info arguments. Changed - all uses and definitions. - * libcoff.h: Rebuilt. - * ecoff.c (ecoff_get_extr): If symbol is defined by linker, but - not by ECOFF, make it scAbs. - (ecoff_bfd_final_link): Renamed from ecoff_bfd_seclet_link and - rewritten. - * elf32-mips.c (mips_elf_final_link): Renamed from - mips_elf_seclet_link and rewritten. - * elf32-hppa.c (elf32_hppa_stub_description): Added link_info - field. - (new_stub, add_stub_by_name, hppa_elf_build_arg_reloc_stub, - hppa_elf_build_long_branch_stub, hppa_look_for_stubs_in_section): - Added link_info arguments. Changed all callers. - * elfcode.h (elf_slurp_symbol_table): Don't quit if outsymbols is - not NULL. - * oasys.c (oasys_write_sections): Return boolean value rather than - using bfd_error_vector. - (oasys_write_object_contents): Check return value of - oasys_write_sections. - * hosts/std-host.h: Don't declare qsort or strtol. - * Makefile.in: Rebuild dependencies. - (BFD_LIBS): Removed seclet.o. Added hash.o and linker.o. - (CFILES): Removed seclet.c. Added hash.c and linker.c. - (HFILES): Removed seclet.h. Added genlink.h. - -Thu Dec 30 07:41:36 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) - - * section.c (bfd_get_section_contents): Return zero filled buffer - if section has no contents. - -Tue Dec 28 12:43:54 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * elf.c (bfd_elf_generic_reloc): If this is not an inplace reloc, - then skip bfd_perform_relocation even if the addend is non-zero. - -Tue Dec 21 09:22:19 1993 Ken Raeburn (raeburn@rtl.cygnus.com) - - * coffcode.h (coff_write_relocs) [SWAP_OUT_RELOC_OFFSET]: Copy - addend to r_offset field. - - * Makefile.in (CFILES): Added coff-sparc.c. Rebuild dependencies. - - * coff-sparc.c (SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET, - CALC_ADDEND): Define. - - * aix386-core.c (aix386_core_file_p): Use cd_regs[0] for computing - the offsetof because AIX /bin/cc does not like to take the address - of an array. (From Minh Tran-Le.) - -Thu Dec 16 13:06:32 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * Thu Dec 16 15:41:06 1993 Peter Hoogenboom (hoogen@cs.utah.edu) - - * elf32-hppa.c (hppa_elf_build_arg_reloc_stub): Make sure to copy - the return pointer into %r2 if no jump-in-call-delay-slot - optimization was done. - - * hosts/hp300bsd.h: Correctly identify 4.3BSD vs 4.4BSD. - -Wed Dec 15 08:04:16 1993 David J. Mackenzie (djm@thepub.cygnus.com) - - * hosts/std-host.h: (time): Don't declare; conflicts on Mach3. - - * hosts/i386mach3.h (HOST_PAGE_SIZE): Set to 1 to avoid padding. - (HOST_SEGMENT_SIZE): Set to 0 for same reason. - - * i386mach3.c (PAGE_SIZE, SEGMENT_SIZE): Same changes as above. - (TEXT_START_ADDR): Correct. - (MY_backend_data): Define. - - * aoutx.h (adjust_o_magic, adjust_z_magic, adjust_n_magic): - New functions; code moved from aout_<size>_adjust_sizes_and_vmas. - -Tue Dec 14 21:48:33 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * som.c (som_begin_writing): Fix thinkos in auxiliary header - support. - (bfd_som_attach_aux_hdr): Likewise. - -Mon Dec 13 23:34:48 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * elf32-hppa.c (hppa_elf_gen_reloc_type): Handle 'T' field - selectors for PIC code. - - * som.c (hppa_som_gen_reloc_type): Handle 'T' field selectors. - (som_write_fixups): Handle R_DLT_REL, R_FSEL, R_RSEL, R_LSEL - relocations needed by PIC. - -Tue Dec 7 15:47:51 1993 Stu Grossman (grossman at cygnus.com) - - * nlmcode.h: Fixes to avoid compiler warnings... - -Tue Dec 7 15:10:54 1993 Ian Lance Taylor (ian@cygnus.com) - - * libnlm.h (nlm_backend_data): Removed macro definition. - (nlm_alpha_backend_data): Adjusted accordingly. - -Sun Dec 5 19:32:08 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * som.c (som_begin_writing): Flesh out code for handling simple - auxiliary headers. - (bfd_som_attach_aux_hdr): New function. - - * som.h (struct somdata): Add fields for attaching version and - copyright headers. Add accessor macros. - - * som.c (R_DLT_REL, R_AUX_UNWIND, R_SEC_STMT): Add protected - definitions for old versions of HPUX which fail to define them. - (som_hppa_howto_talbe): Add R_DLT_REL, R_AUX_UNWIND, and R_SEC_STMT - now that they're safe. Delete bogus R_STATEMENT relocations. - - * som.c (som_hppa_howto_table): Add missing R_END_TRY. Delete - extra R_DATA_OVERRIDE. - (hppa_som_gen_reloc_type): Generate a relocation for the rounding - mode selector if needed. - (som_write_fixups): Handle requests for a change in the default - rounding mode. Rounding modes do not consume input bytes, but - are just markers much like R_ENTRY and R_EXIT. - -Sat Dec 4 19:40:32 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - Fri Dec 3 09:55:17 1993 Pete Hoogenboom (hoogen@cs.utah.edu) - - * elf32-hppa.c: (hppa_elf_reloc): Do not do code reordering when - the branch instruction as originally been nullified. - hppa_elf_reloc): Avoid useless call to bfd_put_32 () in the - case of no code reordering due to an LDO instruction in the - delay slot of the branch. Make sure to relocate the correct - instruction. Do not perform instruction reordering for millicode - calls. - (hppa_elf_build_arg_reloc_stub): Change the relocation type - to R_HPPA_STUB_CALL_17 when special processing might be needed. - (hppa_elf_build_long_branch_stub): Prevent code reordering on - a call from a linker stub to another linker stub and for millicode - calls. Do not trash the return register for calls from one linker - stub to a second linker stub. - - * elf32-hppa.c: (elf_hppa_howto_table): PLABEL and DLT - relocations are not pc-relative. - - * hppa_stubs.h: (BLE_N_XXX_0_31): New instruction used in - linker stub code. - (COPY_2_31): Likewise. - -Fri Dec 3 18:40:58 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * config/solaris2.mh (HDEFINES): Remove -Dconst= - * hosts/solaris.h: If not __GNUC__, define const as empty. - -Thu Dec 2 15:43:32 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * ecoff.c: Added various casts for 32/64 bit cross targeting. - (ecoff_mkobject_hook): Set SEC_SHARED_LIBRARY for the .reginfo - section so that the linker ignores it. - * ecofflink.c: Added various casts for 32/64 bit cross targeting. - (ecoff_add_bytes): Changed need argument to size_t. - (bfd_ecoff_debug_link_other): Check return value of - ecoff_add_string. - - * libbfd-in.h (new_bfd): Use void rather than an empty parameter - list. - * libbfd.h: Rebuilt. - - * libnlm.h (struct nlm_obj_tdata): New field backend_data. - (nlm_backend_data, nlm_alpha_backend_data): New accessor macros. - (struct nlm_backend_data): New field no_uninitialized_data. - (nlm_no_uninitialized_data): New accessor macro. - * nlmcode.h (nlm_compute_section_file_positions): Handle - no_uninitialized_data. - (nlm_external_reloc_compare): Sort relocs by address for a - particular symbol, to make the sort more stable. - (nlm_write_object_contents): Cast the arguments to qsort. Get the - value of a debugging symbol the same way we get the value of a - normal symbol. - * nlm32-alpha.c: Various changes. Write out GP and .lita relocs. - Set no_uninitialized_data to true. - * nlm32-i386.c (nlm32_i386_backend), nlm32-sparc.c - (nlm32_sparc_backend): Set no_uninitialized_data field false. - * nlmswap.h (nlm_swap_fixed_header_out): Zero out destination - before filling it in. - -Wed Dec 1 21:47:58 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * som.c (som_section_type, som_decode_symcalss): New functions. - (som_get_symbol_info): Use them. - (som_slurp_symbol_table): Set the section of common and undefined - symbols correctly. - -Wed Dec 1 14:15:10 1993 Ken Raeburn (raeburn@cygnus.com) - - * elfcode.h (write_relocs): Initialize local var LAST_SYM_IDX, to - make gcc happy. - - * mipsbsd.c: Changes from Ralph Campbell: - (mips_howto_table_ext): MIPS_RELOC_LO16 should use - complain_overflow_dont. - (aout_mips_*_vec): Make name use "a.out" instead of "aout", to - make gdb happy. - - * bfd.c (bfd_errmsgs): Reword invalid-target message. - - * config.bfd: For sparc*-*-coff, use sparc-coff. - * configure.in: Handle sparccoff_vec. - * targets.c (sparccoff_vec): Declare. - - * reloc.c (bfd_get_reloc_size): New function. - (struct reloc_howto_type): Update documentation of size field. - -Wed Dec 1 14:39:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * nlm32-alpha.c: New file; preliminary Alpha NetWare support. - * config.bfd (alpha-*-netware*): New target; use alpha-nlm. - * config/alpha-nlm.mt: New file. - * configure.in (nlm32_alpha_vec): New vector; use nlm32-alpha.o, - nlm32.o, and nlm.o. - * Makefile.in (BFD32_BACKENDS): Added nlm32-alpha.o. - (CFILES): Added nlm32-alpha.c. - Rebuilt dependencies. - * targets.c (nlm32_alpha_vec): Declare. - - * libnlm.h (struct nlm_backend_data): New fields - optional_prefix_size, nlm_backend_object_p, nlm_write_prefix, - nlm_set_public_section, nlm_get_public_offset. Removed unused - nlm_write_reloc field. Changed nlm_write_import to remove - unnecessary symbol argument. Renamed nlm_write_externals to - nlm_write_external, and changed cound argument from bfd_vma to - bfd_size_type. - (nlm_optional_prefix_size, nlm_backend_object_p_func, - nlm_write_prefix_func, nlm_set_public_section_func, - nlm_get_public_offset_func): New accessor macros. - (nlm_write_reloc_func): Removed. - (nlm_write_external_func): Adjusted for field renaming. - * nlm32-i386.c (nlm_i386_write_import): Renamed from - nlm_i386_write_reloc. Removed old nlm_i386_write_import which - just called old nlm_i386_write_reloc. - (nlm_i386_write_external): Renamed from nlm_i386_write_externals. - Declared. Changed second argument from bfd_vma to bfd_size_type. - (nlm32_i386_backend): Adjusted for changes to fields and names. - * nlm32-sparc.c (nlm_sparc_mangle_relocs): Removed unused, - ifdeffed out code. - (nlm_sparc_write_import): Removed second argument. - (nlm_sparc_write_external): Renamed from - nlm_sparc_write_externals. Changed second argument from bfd_vma - to bfd_size_type. - (nlm32_sparc_backend): Adjusted for changes to fields and names. - * nlmcode.h: Removed some unused code. - (nlm_object_p): Don't destroy tdata pointer. Call - backend_object_p function if it exists. - (nlm_slurp_symbol_table): Removed unused variable rcount. Call - set_public_section_func if it exists instead of checking - NLM_HIBIT. - (nlm_compute_section_file_positions): Account for - optional_prefix_size. - (nlm_write_object_contents): Account for optional_prefix_size. - Removed useless variable write_reloc_func. Changed declaration - and call of write_import_func. Call write_prefix_func if it - exists. Removed unused variables len and temp. Call - get_public_offset_func if it exists rather than setting NLM_HIBIT. - * nlmswap.h: Declare functions. - - * bfd-in.h (uint64_typeLOW, uint64_typeHIGH): Fully parenthesize - for clarity. - (fprintf_vma, sprintf_vma): Use %lx, not %x. - * bfd-in2.h: Rebuilt. - * hosts/alphaosf.h (uint64_typeLOW, uint64_typeHIGH): Cast results - to unsigned long. - - * config.bfd: Don't set target64 here, as the setting is ignored. - * configure.in (ecoffalpha_little_vec): Set target64. - - * config/alphaosf.mt (TDEFINES): Removed; setting host parameters - in TDEFINES is wrong. - - * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): - Remove unused variable output_section. - -Tue Nov 30 16:45:23 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * irix-core.c: New file for Irix 4 and Irix 5 core support. - Functions taken out of coff-mips.c. Handle vmap type VMAPFILE. - * coff-mips.c: Irix 4 core file support moved to irix-core.c. - * targets.c: If IRIX_CORE defined, include irix_core_vec in - target_vector. - * config/irix4.mh (HDEFINES): Add -DIRIX_CORE. - (HDEPFILES): Define to be irix-core.o. - * config/irix5.mh (HDEFINES): Define to be -DIRIX_CORE. - (HDEPFILES): Define to be irix-core.o. - * Makefile.in (OPTIONAL_BACKENDS): Added irix-core.o. Removed - sco-core.o, which no longer exists. - (CFILES): Added all *-core.c files. - Rebuilt dependencies. - -Wed Nov 24 02:02:41 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * elfcode.h (map_program_segments): Restore check of file_size != - mem_size, but only if SHT_PROGBITS. - - * ecofflink.c: New file to hold ECOFF debug information linking - routines. - * ecoff.c (ecoff_clear_output_flags, ecoff_rel, ecoff_dump_seclet, - ecoff_add_string, ecoff_get_debug): Removed. Functionality now in - ecofflink.c. - (ecoff_get_extr, ecoff_set_index): New functions. - (ecoff_slurp_symbolic_info): Don't save raw_size. - (ecoff_bfd_seclet_link): Rewrote to use ecofflink.c functions. - (ecoff_compute_section_file_positions): Don't set EXEC_P just - because there is a start address. - (ecoff_write_object_contents): Handle external symbols here. Use - ecofflink.c functions to write out debugging information. - * elf32-mips.c (mips_elf_read_ecoff_info, mips_elf_get_extr, - mips_elf_set_index): New functions. - (mips_elf_seclet_link): Discard empty sections, the .options - section and .gptab sections. Handle linking .mdebug section. - * libecoff.h (ecoff_data_type): Removed raw_size and ifdbase. - * libelf.h (elf_symbol_type): Added mips_extr to tc_data union. - * bfd-in.h: Added prototypes for routines in ecofflink.c (some are - called by gas, so they are public). - * bfd-in2.h: Rebuilt. - * Makefile.in (BFD_LIBS): Added ecofflink.o. - (CFILES): Added ecofflink.c. - (ecofflink.o): New target. Rebuilt dependencies. - -Mon Nov 22 22:26:42 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * som.c (hppa_object_p): Also recognize SHARED_MAGIC_CNX as - a valid magic number if it's been defined. - -Mon Nov 22 14:17:36 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * ecoff.c (ecoff_mkobject): Don't create .scommon section; linker - no longer requires it. - (ecoff_bfd_seclet_link, ecoff_sizeof_headers, - ecoff_write_object_contents): Don't treat .scommon section - specially. - -Mon Nov 22 10:54:27 1993 Fred Fish (fnf@cygnus.com) - - Merged changes from kev@spuds.geg.mot.com (Kevin A. Buettner): - * bfd/config/delta88.mh (HDEFINES): Define this to be -DPTRACE_CORE. - * bfd/config/delta88.mh (HDEPFILES): Defined to be ptrace-core.o. - * bfd/ptrace-core.c: New file for dealing with core files with - start with the ptrace_user structure found on BCS compliant systems. - * bfd/targets.c (ptrace_core_vec): New vector. - -Mon Nov 22 02:33:12 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * Minimal support for reading SOM fixup streams. Allows - objdump -r to do something reasonable. - * som.c (som_get_reloc_upper_bound): Implement. - (som_canonicalize_reloc): Implement. - (som_set_reloc_info, som_slurp_reloc_table): New functions. - -Sun Nov 21 13:46:55 1993 Ken Raeburn (raeburn@cambridge.cygnus.com) - - * hosts/lynx.h (FPRINTF_ALREADY_DECLARED): Define. - * hosts/sparclynx.h: Include lynx.h instead of duplicating it. - -Fri Nov 19 14:34:04 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * coff-a29k.c (a29k_reloc): For R_IREL, don't left shift - signed_value before sign extending it. Don't subtract out - reloc_entry->address. This makes it compatible with what gas is - generating. - - * elfcode.h (elf_fake_sections): Accept .sbss as the name for a - SHT_NOBITS sections. - (map_program_segments): Don't leave the loop after the first - SHT_NOBITS section. - (assign_file_positions_except_relocs): Only force sh_offset and - sh_addr to match modulo maxpagesize for a section which is not - SHT_NOBITS. Changed the method used to force page alignment after - a SHT_NOBITS section to only do it for the last such consecutive - section, and to really force page alignment. - -Fri Nov 19 04:02:01 1993 Ken Raeburn (raeburn@cambridge.cygnus.com) - - * coffcode.h (coff_slurp_symbol_table): Print more verbose message - in the case of an unknown (or unhandled) storage class. - - * config/i386-lynx.mt (TDEFINES): FPRINTF_ALREADY_DECLARED should - not be defined here, since it is a host attribute, not a target - one. - * config/m68k-lynx.mt, config/sparc-lynx.mt: Ditto. - - * coffcode.h (coff_bfd_reloc_type_lookup): Don't define if already - defined. - - * coff-sparc.c: Define some relocations, based on ELF relocations. - (enum reloc_type, bfd_coff_generic_reloc, coff_sparc_howto_table, - struct coff_reloc_map, sparc_reloc_map, - coff_sparc_reloc_type_lookup): Borrowed from elf32-sparc.c and - elf.c, renamed. - (coff_bfd_reloc_type_lookup): Define to be coff_sparc_reloc_.... - (rtype2howto): Index into coff_sparc_howto_table using - dst->r_type. - -Thu Nov 18 11:45:39 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * config.bfd (mips*-*-irix5*): New target; use mipsbelf. - * configure.host (mips-sgi-irix5*) New host; use irix5 (no - hosts/irix5.h created; just use std-host.h). - * config/irix5.mh: New file; like irix4.mh, but don't use -G or - -lmalloc. - * Makefile.in: Rebuilt dependencies. - - * ecoffswap.h: Changed type of internal pointers for swap out - functions to const *. - - * elf32-mips.c (mips_elf_got16_reloc): New function. Handle GOT16 - correctly for assembler, but linker support not implemented. - (elf_mips_howto_table): Use mips_elf_got16_reloc for GOT16. - (mips_elf_sym_is_global): New function; at least on Irix 5, all - non section symbols are considered global. - (elf_backend_sym_is_global): Define. - (mips_elf_final_write_processing): New function. Set the MIPS - architecture level correctly. - (elf_backend_final_write_processing): Define. - (mips_elf_section_from_shdr): Handle SHT_MIPS_OPTIONS. - (mips_elf_fake_sections): Set entsize of .mdebug or .reginfo - section to 1. Handle .options section. - (mips_elf_acom_section, mips_elf_acom_symbol, - mips_elf_acom_symbol_ptr): New static variables, used to build a - generic .acommon section to hold SHN_MIPS_ACOMMON symbols. - (mips_elf_symbol_processing): Handle SHN_MIPS_ACOMMON symbols by - putting them all in a global .acommon section. - - * elfcode.h (bfd_section_from_shdr): Don't dump core if target - section has no ELF section data. - (elf_make_sections): Set addralign of reloc section to 4. - (elf_fake_sections): Likewise. - (map_program_segments): Don't consider section 0. - (assign_file_positions_except_relocs): Don't consider section 0. - In the main loop, skip the symtab and strtab sections, since their - positions are set elsewhere. - (swap_out_syms): Set addralign of symtab section to 4. Set - addralign of strtab sections to 1. - (assign_file_positions_for_relocs): Don't consider section 0. - (write_object_contents): Don't write out section 0. - - * libelf.h (struct elf_backend_data): Added fields - elf_backend_sym_is_global and elf_backend_final_write_processing. - * elf32-target.h (elf32_bed): Added corresponding initializers. - * elf64-target.h (elf64_bed): Likewise. - * elfcode.h (sym_is_global): Take abfd argument. Call - elf_backend_sym_is_global if it is not NULL. - (elf_map_symbols): Pass abfd to sym_is_global. - (write_object_contents): Call elf_backend_final_write_processing - if it is defined. - -Wed Nov 17 18:43:28 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * libecoff.h: Include coff/ecoff.h. - (struct ecoff_backend_data): Move external debugging information - fields into a single field pointing to an ecoff_debug_swap - structure. - (ecoff_data_type): Move debugging information fields into a single - field pointing to an ecoff_debug_info structure. - * coff-alpha.c, coff-mips.c, ecoff.c: Corresponding changes. - -Wed Nov 17 17:38:58 1993 Sean Eric Fagan (sef@cygnus.com) - - * nlmswap.h: New file to swap fixed header. Included by NLM - backends. - * libnlm.h (struct reloc_and_sec): Define. - (struct nlm_backend_data): Add fields fixed_header_size, - nlm_read_import, nlm_write_import, nlm_swap_fhdr_in, - nlm_swap_fhdr_out. - (nlm_fixed_header_size, nlm_read_import_func, - nlm_write_import_func, nlm_swap_fixed_header_in_func, - nlm_swap_fixed_header_out_func, nlm_write_external_func): New - accessor macros. - * nlmcode.h: Use new functions. - * nlm32-i386.c: Provide new functions. - * nlm32-sparc.c: New file; SPARC NLM backend. - -Wed Nov 17 13:56:10 1993 Stan Shebs (shebs@rtl.cygnus.com) - - * i386lynx.c (swap_std_reloc_in, swap_ext_reloc_in): Ignore - garbage bits appearing in the upper end of symbolnums. - - * config/sparc-lynx.mt (TDEFINES): Add -DFPRINTF_ALREADY_DECLARED. - -Tue Nov 16 17:03:41 1993 Stu Grossman (grossman at cygnus.com) - - * lynx-core.c (lynx_core_file_p): Change bfd_zalloc to bfd_alloc. - * m68klynx.c: Define core file macros. - * hosts/i386lynx.h, hosts/m68klynx.h, hosts/lynx.h: Move all - non-architecture specific stuff into lynx.h. - -Tue Nov 16 15:45:54 1993 Jim Kingdon (kingdon@lioth.cygnus.com) - - * i386linux.c: Define new macro ZMAGIC_DISK_BLOCK_SIZE to 1024, and - change PAGE_SIZE to 4096. - -Mon Nov 15 11:48:08 1993 Ken Raeburn (raeburn@rtl.cygnus.com) - - * Makefile.in (diststuff): New target. - - * VERSION: Updated. - -Sun Nov 14 23:33:01 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * som.c (som_object_setup): Do not create dummy ".text", ".data", - and ".bss" sections. - (setup_sections): Do not set SEC_HAS_CONTENTS if a section's size - is zero. Recognize BSS type sections and turn off SEC_LOAD and - SEC_DATA (so binutils/size works). Set the correct value for - a section's _raw_size. - (som_slurp_symbol_table): Program entry points, and millicode are - also functions. Mark them as such. Also mark L$* symbols as - debugging symbols. - - * bfd-in2.h: Rebuilt. - -Sat Nov 13 15:27:15 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * som.c (som_bfd_reloc_type_lookup): Add missing prototype. Returns - a pointer to constant data. Delete bogus #define which made the - function useless. - - * som.c (som_prep_for_fixups): New function. - (som_write_fixups): New function. - (som_write_space_strings): New function. - (som_write_symbol_strings): New function. - (som_begin_writing): New function. - -Fri Nov 12 15:29:36 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * som.c (som_write_object_contents): Do not abort. Flesh out. - (som_set_section_contents): Do not abort. Flesh out. - - * som.c (som_write_headers): New function. - (som_prep_headers): New function. - (som_build_and_write_symbol_table): New function. - - * som.c (som_sizeof_headers): Add missing prototype. - (som_set_arch_mach): Do not abort. - - * som.c (som_count_spaces): New function. - (som_count_subspaces): New function. - (compare_syms): New function. - (som_compute_checksum): New function. - - * som.c (hppa_som_gen_reloc_type): New function. - (som_bfd_reloc_type_lookup): New function. - - * som.c (try_prev_fixup): New function. - (som_reloc_skip): New function. - (som_reloc_addend): New function. - (som_reloc_call): New function. - - * som.c (som_initialize_reloc_queue): New function. - (som_reloc_queue_insert): Likewise. - (som_reloc_queue_fix): Likewise. - (som_reloc_queue_find): Likewise. - - * som.c (som_hppa_howto_table): SOM howto relocation table. - (hppa_som_reloc): New function. - - * som.c (struct reloc_queue): New structure to keep track of - the last four multibyte relocations emitted. - (enum pa_symbol_type): Type to fully describe the symbol types - associated with .import/.export assembler directives. - - * som.c: Include libhppa.h - - * som.c (bfd_som_set_section_attributes): New function. - (bfd_som_set_subsection_attributes): Likewise. - (bfd_som_set_symboL_type): Likewise. - (bfd_som_attach_unwind_info): Likewise. - * som.h: Declare new exported functions. - - * som.h (struct som_symbol): Add new fields to hold additional - information needed to build/write symbol tables and fixup streams. - (struct som_section_data_struct): Add new fields to hold additional - information needed to build/write space and subspace headers. - (som_symbol_data): New accessor macro for SOM symbol information. - (R_HPPA_*): Basic relocation types to be used by the assembler. - -Fri Nov 12 11:00:28 1993 Jim Kingdon (kingdon@lioth.cygnus.com) - - * trad-core.c (trad_unix_core_file_p): If new hook - TRAD_CORE_ALLOW_ANY_EXTRA_SIZE defined, then skip the check for the - corefile being too big. - * hosts/i386sco.h: Define it. - -Thu Nov 11 15:16:28 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * bfd.c (struct _bfd): Add hppabsd_core_data. - * targets.c (target_vector): Add hppabsd_core_vec. - * hpux-core.c (hpux_core_core_file_p): Fail if an unknown core - section is encountered during core section scanning. - * hppabsd-core.c: New file. - * config/hppabsd.mh: Enable HPPA BSD core files. - - * elf32-hppa.c (hppa_elf_reloc): Remove DEFUN crud. Remove code - which is either commented out or ifdef'd out. Add, update and - clean comments. Fix various indention and spacing problems. Handle - problems related to using "ble" to jump to a stub rather than "bl" - (%r31 is trashed by "ble", but not by "bl"). - (NEW_INSTRUCTION): Put inside curly braces. - (CURRENT_STUB_OFFSET): Fix indention problems. - (hppa_elf_build_arg_reloc_stub): Fix indention and spacing problems. - Add, update and clean comments. Handle "ble" %r31 lossage problems. - (hppa_elf_build_long_branch_stub): Likewise. - (hppa_look_for_stubs_in_section): Likewise. - (hppa_elf_stub_check): Remove obsolete function. - - * hppa_stubs.h: Add new instructions to deal with %r31 lossage - problems. Delete unused instructions. - -Tue Nov 9 11:40:27 1993 Stan Shebs (shebs@rtl.cygnus.com) - - * m68klynx.c (TARGET_IS_BIG_ENDIAN_P): Define. - -Tue Nov 9 11:26:05 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * elfcode.h (elf_object_p): Rather than looking through an array - of architectures, get the ELF EM_xxx code from the backend - information. Let the generic ELF target match any EM_xxx code not - matched by another ELF target. Call elf_backend_object_p to let - the backend do more checks and set global information. - * libelf.h (struct elf_backend_data): Added elf_machine_code and - elf_backend_object_p fields. - (struct bfd_elf_arch_map): Removed. - (bfd_elf_arch_map, bfd_elf_arch_map_size): Don't declare. - * elf32-target.h, elf64-target.h: Initialize elf_machine_code - field with ELF_MACHINE_CODE. Initialize elf_backend_object_p - field with elf_backend_object_p (if it is defined). - * elf32-gen.c, elf32-hppa.c, elf32-i386.c, elf32-i860.c, - elf32-m68k.c, elf32-m88k.c, elf32-mips.c, elf32-sparc.c, - elf64-gen.c (ELF_MACHINE_CODE): Defined. - * elf32-mips.c: Include ecoffswap.h to get ECOFF swapping - routines. - (mips_elf_object_p): Set the right machine number. - (mips_elf_ecoff_debug_swap): Defined. - (elf_backend_object_p): Defined to be mips_elf_object_p. - (elf_backend_ecoff_debug_swap): Defined to be - mips_elf_ecoff_debug_swap. - * elf.c (bfd_elf_arch_map, bfd_elf_arch_map_size): Removed. - - * libbfd-in.h (target_vector, default_vector): Declare. - * libbfd.h: Rebuilt. - * format.c (target_vector, default_vector): Don't declare. - - * elf32-mips.c (elf_mips_howto_table): Don't complain on overflow - for R_MIPS_26. Correct overflow detection requires matching the - upper four bits of the destination against the PC. From Ted Lemon - <mellon@pepper.ncd.com>. - - * bout.c (b_out_reloc_type_lookup): Return type should point to - const data. - * coff-i960.c (coff_i960_reloc_type_lookup): Likewise. - * elf32-hppa.c (elf_hppa_reloc_type_lookup): Likewise. - * mipsbsd.c (MY(reloc_howto_type_lookup)): Likewise. - * coff-i386.c (coff_i386_reloc): Made howto const. - * oasys.c (oasys_write_data): Made how const. - - * libelf.h: Added some comments. - (struct elf_backend_data): Added elf_backend_ecoff_debug_swap - field. Removed unused write_relocs field. - * elf32-target.h: Adjusted elf_backend_data initialization - accordingly. - * elf64-target.h: Corrected elf_backend_data initialization to - fill in all fields and to set elf_64_p to 1. - -Mon Nov 8 18:13:14 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * elfcode.h (bfd_section_from_shdr): Remove duplicate assignment - to filepos in SHT_STRTAB case. - (assign_file_position_for_section): Set BFD section filepos as - well as ELF section sh_offset. - - * reloc.c: Use const instead of CONST. - (bfd_perform_relocation): Make variable howto a const pointer. - * bfd-in2.h, libbfd.h: Rebuilt. - -Mon Nov 8 12:19:15 1993 Jim Kingdon (kingdon@lioth.cygnus.com) - - * Makefile.in (realclean): Don't remove generated headers. Reverts - change of 2 Jul 1993. - -Mon Nov 8 06:08:31 1993 D. V. Henkel-Wallace (gumby@cirdan.cygnus.com) - - * configure.bfd: make unixware equivalent to sysv4. - - * config/i386-nlm.mt: bring in elf config; make it the default. - -Sun Nov 7 20:21:38 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * libbfd.c (bfd_put_8): Add parens around reference to "val" - argument. - -Fri Nov 5 21:45:09 1993 David J. Mackenzie (djm@thepub.cygnus.com) - - * hosts/i386mach3.h (HOST_SEGMENT_SIZE), - i386mach3.c (SEGMENT_SIZE, TEXT_START_ADDR): Correct values (?). - -Fri Nov 5 15:17:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * coffcode.h (coff_write_object_contents): Zero out internal_a. - -Fri Nov 5 10:41:07 1993 David J. Mackenzie (djm@thepub.cygnus.com) - - * aoutx.h, archive.c, archures.c, bfd.c, cache.c, coffcode.h, - core.c, ctor.c, format.c, init.c, libbfd.c, opncls.c, reloc.c, - section.c, syms.c, targets.c: - Doc cleanup (spelling, punctuation, grammar, formatting). - * bfd-in2.h, libbfd.h: Rebuild. - -Thu Nov 4 14:46:14 1993 John Gilmore (gnu@rtl.cygnus.com) - - * bfd-in.h (bfd_get_cacheable, bfd_set_cacheable): New accessors. - * bfd.c, opncls.c: Improve comments on file descriptor cacheing. - -Thu Nov 4 08:54:30 1993 Jeffrey A. Law (law@snake.cs.utah.edu) - - * From Pete Hoogenboom (hoogen@cs.utah.edu) - * elf32-hppa.c (hppa_elf_get_section_contents): Fix logic error - in last change. Always rebuild symbol extension section the first - time though if output sections exist (fixes ld -r problems). - -Thu Nov 04 08:08:46 1993 Jeffrey Wheat (cassidy@cygnus.com) - - * Makefile.in: Add .PHONY for check and installcheck rules. - -Tue Nov 2 14:42:27 1993 Bill Cox (bill@tarkas.cygnus.com) - - * libbfd-in.h (artdata): Use long, not time_t for portability, at - least to HPUX. File below is a derived file. - -Tue Nov 2 14:42:27 1993 Bill Cox (bill@tarkas.cygnus.com) - - * libbfd.h (artdata): Use long, not time_t for portability, at - least to HPUX. - -Tue Nov 2 09:32:25 1993 Jim Kingdon (kingdon@lioth.cygnus.com) - - * config.bfd: Use bigmips for mips*-*-bsd*. - -Mon Nov 1 14:30:09 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * elfcode.h (elf_slurp_reloca_table, elf_slurp_reloc_table): - Handle symbol number of zero. - - * reloc.c (enum bfd_reloc_code_real): Added - BFD_RELOC_MIPS_LITERAL, BFD_RELOC_MIPS_GOT16, - BFD_RELOC_MIPS_CALL16, BFD_RELOC_MIPS_GPREL32. - * bfd-in2.h: Rebuilt. - * coff-mips.c (mips_bfd_reloc_type_lookup): Handle - BFD_RELOC_MIPS_LITERAL. - * elf32-mips.c (mips_reloc_map): Handle new relocs. - (mips_elf_hi16_reloc, mips_elf_lo16_reloc): Rearrange _gp_disp - checks slightly. - - * aout-target.h (MY_bfd_debug_info_start, MY_bfd_debug_info_end, - MY_bfd_debug_info_accumulat [sic]): Remove unused definitions. - (MY_bfd_get_relocated_section_contents, MY_bfd_relax_section, - MY_bfd_seclet_link): Define. - (MY_bfd_reloc_type_lookup): Rename from - MY_reloc_howto_type_lookup. - (MY_bfd_make_debug_symbol): Rename from MY_make_debug_symbol. - (MY(vec)): Use JUMP_TABLE rather than listing functions. - * hp300hpux.c (MY_get_symtab, MY_get_symtab_upper_bound, - MY_canonicalize_reloc, MY_write_object_contents): Don't define in - terms of MY, because that causes a recusive invocation of CAT when - expanded within JUMP_TABLE, and ANSI compilers don't expand - recursive macros. - * mipsbsd.c (MY_bfd_reloc_type_lookup): Rename from - MY_reloc_howto_type_lookup, and don't define in terms of MY. - (MY_canonicalize_reloc): Don't define in terms of MY. - (aout_mips_little_vec, aout_mips_big_vec): Use JUMP_TABLE rather - than listing functions. - -Mon Nov 1 09:12:25 1993 Jim Kingdon (kingdon@lioth.cygnus.com) - - * config.bfd: Use m68k-elf for m68*-*-sysv4*. - -See file ChangeLog.1 - +For older changes see ChangeLog-9193 Local Variables: -mode: indented-text +mode: change-log left-margin: 8 fill-column: 74 version-control: never |