160484SobrienTue Dec 30 12:45:18 1997  Ian Lance Taylor  <ian@cygnus.com>
260484Sobrien
360484Sobrien	* elf32-sparc.c (elf32_sparc_check_relocs): If -Bsymbolic, don't
460484Sobrien	allocate space for a PC relative reloc against a symbol which is
560484Sobrien	defined in a regular file.
660484Sobrien	(elf32_sparc_relocate_section): If -Bsymbolic, don't copy a PC
760484Sobrien	relative reloc against a symbol which is defined in a regular
860484Sobrien	file.
960484Sobrien
1060484SobrienMon Dec 29 18:02:28 1997  Ian Lance Taylor  <ian@cygnus.com>
1160484Sobrien
1260484Sobrien	From Jonathan Stone <jonathan@DSG.Stanford.EDU>:
1360484Sobrien	* config.bfd (mips-dec-netbsd*): Add ECOFF vectors to
1460484Sobrien	targ_selvecs.
1560484Sobrien	(mips*el-*-netbsd*): Like mips-dec-netbsd*.
1660484Sobrien	(mips*-*-netbsd*): New target.
1760484Sobrien
1860484SobrienMon Dec 29 17:13:28 1997  H.J. Lu  (hjl@gnu.org)
1960484Sobrien
2060484Sobrien	* elflink.h (elf_link_assign_sym_version): Change error message
2160484Sobrien	from "undefined version name" to "undefined versioned symbol
2260484Sobrien	name".
2360484Sobrien
2460484SobrienMon Dec 29 11:41:16 1997  Nick Clifton  <nickc@cygnus.com>
2560484Sobrien
2660484Sobrien	* coff-arm.c (coff_arm_relocate_section): Fix typo from previous
2760484Sobrien	delta.
2860484Sobrien
2960484SobrienTue Dec 23 17:01:10 1997  Ian Lance Taylor  <ian@cygnus.com>
3060484Sobrien
3160484Sobrien	* libbfd-in.h (_bfd_dwarf2_find_nearest_line): Declare.
3260484Sobrien	* libbfd.h: Rebuild.
3360484Sobrien
3460484Sobrien	* peicode.h (coff_swap_scnhdr_out): Set .reloc section to be
3560484Sobrien	shared.  Set stab* sections to be shared and read.  Set .rsrc
3660484Sobrien	section to be read and shared.
3760484Sobrien
3860484SobrienMon Dec 22 13:20:57 1997  Ian Lance Taylor  <ian@cygnus.com>
3960484Sobrien
4060484Sobrien	* Makefile.am: Rebuild dependencies.
4160484Sobrien 	(ALL_MACHINES_CFILES): Add dwarf2.lo.
4260484Sobrien	(ALL_MACHINES_CFILES): Add dwarf2.c.
4360484Sobrien	* Makefile.in: Rebuild.
4460484Sobrien
4560484Sobrien	* coff-arm.c: Don't include obstack.h.
4660484Sobrien
4760484SobrienMon Dec 22 13:04:33 1997  Joel Sherrill  <joel@oarcorp.com>
4860484Sobrien
4960484Sobrien        * config.bfd (i[3456]86*-go32-rtems*): Fix to be the same as
5060484Sobrien	i[3456]86-go32.
5160484Sobrien
5260484SobrienThu Dec 18 16:01:25 1997  Doug Evans  <devans@canuck.cygnus.com>
5360484Sobrien
5460484Sobrien	* configure: Regenerate to get @SHELL@ substituted.
5560484Sobrien
5660484SobrienWed Dec 17 09:45:09 1997  Nick Clifton  <nickc@cygnus.com>
5760484Sobrien
5860484Sobrien	* coff-arm.c (coff_arm_relocate_section): Only look at section
5960484Sobrien	owner if there is one.
6060484Sobrien
6160484Sobrien	* elf.c (assign_file_positions_for_segments): Fail if there is not
6260484Sobrien	enough room for the program headers.
6360484Sobrien
6460484SobrienTue Dec 16 08:09:56 1997  Gavin Koch  <gavin@cygnus.com>
6560484Sobrien
6660484Sobrien	* elf.c (_bfd_elf_find_nearest_line): Call
6760484Sobrien	_bfd_dwarf2_find_nearest_line first.
6860484Sobrien	* elf32-mips.c (_bfd_mips_elf_find_nearest_line): Same.
6960484Sobrien	* dwarf2.c: New file; implement _bfd_dwarf2_find_nearest_line.
7060484Sobrien
7160484SobrienMon Dec 15 16:08:52 1997  Nick Clifton  <nickc@cygnus.com>
7260484Sobrien
7360484Sobrien	* archures.c: Add bfd_mach_m32r.
7460484Sobrien
7560484SobrienMon Dec 15 16:11:22 1997  Fred Fish  <fnf@cygnus.com>
7660484Sobrien
7760484Sobrien	* coffcode.h (ALIGN_SECTIONS_IN_FILE): Define if I960 not defined.
7860484Sobrien	(coff_compute_section_file_positions): Use ALIGN_SECTIONS_IN_FILE
7960484Sobrien	to decide when to align the file sections for paging.
8060484Sobrien	* coffcode.h (ALIGN_SECTIONS_IN_FILE): Undefine for TIC80COFF.
8160484Sobrien
8260484SobrienMon Dec 15 15:01:15 1997  Nick Clifton  <nickc@cygnus.com>
8360484Sobrien
8460484Sobrien	* elf32-m32r.c (m32r_elf_object_p): New Function.
8560484Sobrien	(m32r_elf_final_write_processing):  New Function.
8660484Sobrien	(m32r_elf_set_private_flags):  New Function.
8760484Sobrien	(m32r_elf_copy_private_bfd_data):  New Function.
8860484Sobrien	(m32r_elf_merge_private_bfd_data):  New Function.
8960484Sobrien	(m32r_elf_print_private_bfd_data):  New Function.
9060484Sobrien	(elf_backend_object_p): Point to m32r_object_p.
9160484Sobrien	(elf_backend_final_write_processing): Point to
9260484Sobrien	m32r_elf_final_write_processing.
9360484Sobrien	(bfd_elf32_bfd_copy_private_bfd_data): Point to
9460484Sobrien	m32r_elf_copy_private_bfd_data.
9560484Sobrien	(bfd_elf32_bfd_merge_private_bfd_data): Point to
9660484Sobrien	m32r_elf_merge_private_bfd_data.
9760484Sobrien	(bfd_elf32_bfd_set_private_flags): Point to
9860484Sobrien	m32r_elf_set_private_bfd_data.
9960484Sobrien	(bfd_elf32_bfd_print_private_bfd_data): Point to
10060484Sobrien	m32r_elf_print_private_bfd_data.
10160484Sobrien
10260484Sobrien
10360484Sobrien	* bfd-in2.h (bfd_mach_m32r): Add identifier for M32R architecture
10460484Sobrien	machines.
10560484Sobrien
10660484SobrienFri Dec 12 11:30:28 1997  Brendan Kehoe  <brendan@canuck.cygnus.com>
10760484Sobrien
10860484Sobrien	* configure: Only build libbfd shared if --enable-shared's value
10960484Sobrien	was `yes', or was set to `*bfd*'.
11060484Sobrien	* aclocal.m4: Likewise.
11160484Sobrien	* NOTE: this really needs to be fixed in libtool/libtool.m4, the
11260484Sobrien	original source of this bit of code.  It's not clear what the best fix
11360484Sobrien	would be, though.
11460484Sobrien
11560484SobrienThu Dec 11 17:48:11 1997  Richard Henderson  <rth@cygnus.com>
11660484Sobrien
11760484Sobrien	* linker.c (generic_link_add_symbol_list): Always init udata.p so
11860484Sobrien	that the generic relaxation code can function when input and output
11960484Sobrien	file formats are mismatched.
12060484Sobrien
12160484SobrienThu Dec 11 01:02:18 1997  Ian Lance Taylor  <ian@cygnus.com>
12260484Sobrien
12360484Sobrien	* coff-sh.c (bfd_coff_small_swap_table): Initialize new fields.
12460484Sobrien
12560484Sobrien	* elf.c (assign_file_positions_for_segments): For a loadable
12660484Sobrien	section, make sure that the load address is correct relative to
12760484Sobrien	the load address of the segment plus the size of the segment so
12860484Sobrien	far.
12960484Sobrien
13060484Sobrien	* coffcode.h (_coff_link_output_has_begun): Make static.
13160484Sobrien	(_coff_final_link_postscript): Likewise.
13260484Sobrien
13360484SobrienWed Dec 10 23:37:11 1997  Ian Lance Taylor  <ian@cygnus.com>
13460484Sobrien
13560484Sobrien	* elflink.h (elf_link_input_bfd): Handle a relocateable link in
13660484Sobrien	which a relocation refers to an indirect or warning symbol.
13760484Sobrien
13860484SobrienWed Dec 10 11:15:55 1997  Nick Clifton  <nickc@cygnus.com>
13960484Sobrien
14060484Sobrien	* coff-arm.c (bfd_arm_coff_final_link): Function deleted.
14160484Sobrien	(coff_arm_final_link_postscript): New function.
14260484Sobrien	(coff_arm_link_output_has_begun): New function.
14360484Sobrien
14460484Sobrien	* libcoff.h (struct bfd_coff_backend_data): Add new fields:
14560484Sobrien	_bfd_coff_link_output_has_begun and
14660484Sobrien	_bfd_coff_final_link_postscript.  Add new macros:
14760484Sobrien	bfd_coff_link_output_has_begun() and
14860484Sobrien	bfd_coff_final_link_postscript().
14960484Sobrien
15060484Sobrien	* cofflink.c (_bfd_coff_final_link): Insert calls to
15160484Sobrien	bfd_coff_link_output_has_begun() and
15260484Sobrien	bfd_coff_final_link_postscript().
15360484Sobrien
15460484Sobrien	* coffcode.h: Add two new fields to bfd_coff_backend_data
15560484Sobrien	structure: _bfd_coff_link_output_has_begun and
15660484Sobrien	_bfd_coff_final_link_postscript.  Add default initialisers for
15760484Sobrien	these fields.  Add overridable aliases for the coff swap functions
15860484Sobrien	in the backend data structure.
15960484Sobrien
16060484Sobrien	* elf32-v850.c: Update with patches from the branch to fix
16160484Sobrien	HI16_S/LO16 reloc pairs.
16260484Sobrien
16360484SobrienWed Dec 10 14:06:48 1997  Michael Meissner  <meissner@cygnus.com>
16460484Sobrien
16560484Sobrien	* elf32-d30v.c (d30v_info_to_howto_rela): New function to support
16660484Sobrien	RELA relocations.
16760484Sobrien	(USE_REL): Don't define any more, switch to using RELA
16860484Sobrien	relocations.
16960484Sobrien	(elf_info_to_howto): Define as d30v_info_to_howto_rela.
17060484Sobrien
17160484SobrienTue Dec  9 11:37:53 1997  Andrew Cagney  <cagney@b1.cygnus.com>
17260484Sobrien
17360484Sobrien	* archures.c (bfd_mach_mips*): Define.
17460484Sobrien	(bfd_default_scan): For 3000 and 4000 replace magic constant with
17560484Sobrien 	macro.
17660484Sobrien
17760484Sobrien	* cpu-mips.c (N): Define.
17860484Sobrien	(bfd_mips_arch, arch_info_struct): Re-write using macro N, replace
17960484Sobrien 	numbers with bfd_mach_mips* macros.
18060484Sobrien
18160484SobrienFri Dec  5 11:13:46 1997  Nick Clifton  <nickc@cygnus.com>
18260484Sobrien
18360484Sobrien	* elf32-v850.c (v850_elf_reloc, v850_elf_store_addend_in_insn,
18460484Sobrien	v850_elf_relocate_section): Fix reloc addend handling.
18560484Sobrien	(v850_elf_section_from_bfd_section, v850_elf_symbol_processing,
18660484Sobrien	v850_elf_add_symbol_hook, v850_elf_link_output_symbol_hook,
18760484Sobrien	v850_elf_section_from_shdr, v850_elf_fake_sections): New functions
18860484Sobrien	to create and handle special common sections.
18960484Sobrien	(v850_elf_final_link_relocate): Fix HI16 and HI16_S relocations
19060484Sobrien	which have data stored in the instructions.
19160484Sobrien
19260484SobrienTue Dec  2 10:26:16 1997  Nick Clifton  <nickc@cygnus.com>
19360484Sobrien
19460484Sobrien	* coff-arm.c (TARGET_UNDERSCORE): Revert back to '_'
19560484Sobrien	(USER_LABEL_PREFIX): Revert back to '_'
19660484Sobrien
19760484Sobrien	* config.bfd (targ_cpu): Add support for Thumb target.
19860484Sobrien
19960484SobrienMon Dec  1 20:24:18 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
20060484Sobrien
20160484Sobrien	* coff-sh.c (sh_coff_howtos): Add R_SH_SWITCH8 entry.
20260484Sobrien	(get_symbol_value): Handle R_SH_SWITCH8.
20360484Sobrien	(sh_relax_delete_bytes): Likewise.
20460484Sobrien
20560484SobrienWed Nov 26 14:13:34 1997  Nick Clifton  <nickc@cygnus.com>
20660484Sobrien
20760484Sobrien	* coff-arm.c (TARGET_UNDERSCORE): Changed to match definition in
20860484Sobrien	gcc/config/arm/semi.h
20960484Sobrien
21060484Sobrien	* coffcode.h (coff_slurp_symbol_table): Add ARM and Thumb symbol
21160484Sobrien	classes.
21260484Sobrien
21360484SobrienSun Nov 23 16:02:58 1997  Andrew Cagney  <cagney@b1.cygnus.com>
21460484Sobrien
21560484Sobrien	* freebsd.h (SWAP_MAGIC): Read magic number little and not big
21660484Sobrien 	endian.
21760484Sobrien
21860484SobrienWed Nov 26 09:30:37 1997  Nick Clifton  <nickc@cygnus.com>
21960484Sobrien
22060484Sobrien	* coffcode.h (coff_mkobject_hook): Only set private flags for non
22160484Sobrien	PE ARM ports.
22260484Sobrien
22360484SobrienTue Nov 25 15:33:23 1997  Richard Henderson  <rth@cygnus.com>
22460484Sobrien
22560484Sobrien	* binary.c (binary_set_section_contents): Also ignore NEVER_LOAD
22660484Sobrien	sections.
22760484Sobrien
22860484SobrienTue Nov 25 10:55:36 1997  Nick Clifton  <nickc@cygnus.com>
22960484Sobrien
23060484Sobrien	* coff-arm.c (coff_arm_bfd_merge_private_bfd_data): Do not
23160484Sobrien	complain if inout and output formats differ.
23260484Sobrien
23360484SobrienTue Nov 25 11:26:27 1997  Ian Lance Taylor  <ian@cygnus.com>
23460484Sobrien
23560484Sobrien	* Makefile.am (BFD32_BACKENDS): Remove tekhex.lo.
23660484Sobrien	(BFD32_BACKENDS_CFILES): Remove tekhex.c.
23760484Sobrien	* Makefile.in: Rebuild.
23889857Sobrien	* aclocal.m4, configure, Makefile.in: Rebuild with current
23960484Sobrien	automake and autoconf.
24060484Sobrien
24160484Sobrien	* coff-arm.c (arm_allocate_interworking_sections): Fix typo
24260484Sobrien	(COFF_WITH_PR to COFF_WITH_PE).
24360484Sobrien
24460484SobrienMon Nov 24 15:47:49 1997  Nick Clifton  <nickc@cygnus.com>
24560484Sobrien
24660484Sobrien	* coff-arm.c: Make variables and some functions static, so that
24760484Sobrien	this file can be included in multiple object files.
24860484Sobrien	(coff_arm_bfd_final_link): Fix minor bug.
24960484Sobrien
25060484SobrienSat Nov 22 15:16:00 1997  Nick Clifton  <nickc@cygnus.com>
25160484Sobrien
25260484Sobrien	* coff-arm.c: Add support for PIC and APCS-FLOAT type binaries.
25360484Sobrien
25460484Sobrien	* coffcode.h: Add support for PIC and APCS-FLOAT type binaries.
25560484Sobrien
25660484SobrienSat Nov 22 16:06:56 1997  Klaus Kaempf  <kkaempf@progis.de>
25760484Sobrien
25860484Sobrien	* evax-emh.c (_bfd_evax_write_emh): Use alloca instead of strdup.
25960484Sobrien
26060484SobrienSat Nov 22 12:29:30 1997  Ian Lance Taylor  <ian@cygnus.com>
26160484Sobrien
26260484Sobrien	* sunos.c (sunos_add_one_symbol): When overriding a defined
26360484Sobrien	symbol, set it to undefined, not new.
26460484Sobrien
26560484Sobrien	* elf32-sh.c (sh_elf_relax_delete_bytes): Don't kill LABEL
26660484Sobrien	relocs.
26760484Sobrien
26860484SobrienFri Nov 21 14:14:22 1997  Richard Henderson  <rth@cygnus.com>
26960484Sobrien
27060484Sobrien	* coff-sh.c (sh_relax_section): Force sign extention of USES r_offset.
27160484Sobrien	(sh_relax_delete_bytes): Don't kill LABEL relocs.
27260484Sobrien
27360484SobrienMon Nov 17 15:08:38 1997  Jeffrey A Law  (law@cygnus.com)
27460484Sobrien
27560484Sobrien	* elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Fix typo.
27660484Sobrien	(mn10300_elf_relax_section): Likewise.
27760484Sobrien
27860484SobrienSat Nov 15 15:36:07 1997  Fred Fish  <fnf@cygnus.com>
27960484Sobrien
28060484Sobrien	* peicode.h (coff_swap_aouthdr_in): Cast second arg of
28160484Sobrien	bfd_h_get_* calls to "bfd_byte *".
28260484Sobrien
28360484SobrienTue Nov 11 10:37:23 1997  Jeffrey A Law  (law@cygnus.com)
28460484Sobrien
28560484Sobrien	* elf-m10300.c (elf32_mn10300_link_hash_entry): Add new field
28660484Sobrien	"movm_stack_size".
28760484Sobrien	(mn10300_elf_relax_section): Include stack space for register saves
28860484Sobrien	in the imm8 field of a "call" instruction.
28960484Sobrien	(compute_function_info): Determine how much stack is allocated by
29060484Sobrien	the movm instruction.  Fix typo.
29160484Sobrien	(elf32_mn10300_link_hash_newfunc): Initialize movm_stack_size.
29260484Sobrien
29360484SobrienMon Nov 10 14:32:40 1997  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
29460484Sobrien
29560484Sobrien	* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't crash if
29660484Sobrien	a version dependency could not be found.
29760484Sobrien
29860484SobrienTue Nov  4 12:05:56 1997  Klaus K"ampf  <kkaempf@progis.de>
29960484Sobrien
30060484Sobrien	* configure.com: Get version info from configure.in
30160484Sobrien
30260484SobrienFri Oct 24 11:15:58 1997  Jakub Jelinek  <jj@sunsite.mff.cuni.cz>
30360484Sobrien
30460484Sobrien	* elf64-sparc.c (sparc64_elf_merge_private_bfd_data):
30560484Sobrien	New function. Avoid mixing US1 and HAL R1 code.
30660484Sobrien	Set resulting memory ordering to the strongest one used.
30760484Sobrien	(sparc64_elf_object_p): Set bfd_mach correctly.
30860484Sobrien
30960484SobrienThu Oct 23 14:09:33 1997  Richard Henderson  <rth@cygnus.com>
31060484Sobrien
31160484Sobrien	* elf64-sparc.c (sparc64_elf_howto_table): Add UA64 & UA16.
31260484Sobrien	(sparc64_elf_check_relocs): Handle them.
31360484Sobrien	(sparc64_elf_relocate_section): Likewise.  Before emitting a dyn reloc,
31460484Sobrien	check alignment and transmute R_SPARC_x<->R_SPARC_UAx.
31560484Sobrien
31660484SobrienThu Oct 23 00:53:14 1997  Richard Henderson  <rth@dot.cygnus.com>
31760484Sobrien
31860484Sobrien	* configure.in (sparc*-*-linux*): Use trad-core and ...
31960484Sobrien	* hosts/sparclinux.h: New file.
32060484Sobrien
32160484SobrienThu Oct 23 00:25:29 1997  Richard Henderson  <rth@dot.cygnus.com>
32260484Sobrien
32360484Sobrien	* config.bfd (sparc64-*-linux*): New target.
32460484Sobrien
32560484Sobrien	* elf-bfd.h (struct elf_backend_data): Add plt_alignment member.
32660484Sobrien	* elflink.c (_bfd_elf_create_got_section): Set .got alignment based
32760484Sobrien	on arch_size.
32860484Sobrien	(_bfd_elf_create_dynamic_sections): Likewise for .rel* sections.
32960484Sobrien	Set .plt alignment from new plt_alignment.
33060484Sobrien	* elflink.h (elf_link_create_dynamic_sections): Set version section
33160484Sobrien	alignment to LOG_FILE_ALIGN.
33260484Sobrien	* elfxx-target.h (elf_backend_plt_alignment): Provide default.
33360484Sobrien	(elfXX_bed): Init plt_alignment.
33460484Sobrien
33560484Sobrien	* elf64-sparc.c (sparc64_elf_check_relocs,
33660484Sobrien	sparc64_elf_adjust_dynamic_symbol, sparc64_elf_size_dynamic_sections,
33760484Sobrien	sparc64_elf_adjust_dynindx, sparc64_elf_finish_dynamic_symbol,
33860484Sobrien	sparc64_elf_finish_dynamic_sections): New functions.
33960484Sobrien	(sparc64_elf_howto_table): Fix a few name strings.
34060484Sobrien	(ELF_DYNAMIC_INTERPRETER): New definition.
34160484Sobrien	(sparc64_elf_relocate_section): Handle shared libraries.
34260484Sobrien
34360484Sobrien	* elf64-sparc.c (struct plt_template, plt_*_header, plt_*_entry,
34460484Sobrien	sparc64_elf_build_plt_entry, sparc64_elf_finish_dynamic_symbol):
34560484Sobrien	PLT definitions sparc64-linux originally choose.  These will go
34660484Sobrien	away soon in favour of the official abi definitions.
34760484Sobrien
34860484SobrienWed Oct 22 16:08:45 1997  Ian Lance Taylor  <ian@cygnus.com>
34960484Sobrien
35060484Sobrien	* coff-sh.c (coff_small_object_p): New static function.
35160484Sobrien	(coff_small_new_section_hook): New static function.
35260484Sobrien	(bfd_coff_small_swap_table): New static const structure.
35360484Sobrien	(coff_small_close_and_cleanup): Define.
35460484Sobrien	(coff_small_bfd_free_cached_info): Define.
35560484Sobrien	(coff_small_get_section_contents): Define.
35660484Sobrien	(coff_small_get_section_contents_in_window): Define.
35760484Sobrien	(shcoff_small_vec): New static structure.
35860484Sobrien	(shlcoff_small_vec): New static structure.
35960484Sobrien	* targets.c (bfd_target_vector): Add shcoff_small_vec and
36060484Sobrien	shlcoff_small_vec.
36160484Sobrien	* config.bfd (sh-*-elf*): Add shcoff_small_vec and
36260484Sobrien	shlcoff_small_vec to targ_selvecs.
36360484Sobrien	(sh-*-*): Likewise.
36460484Sobrien	* configure.in: Add shcoff_small_vec and shlcoff_small_vec cases.
36560484Sobrien	* configure: Rebuild.
36660484Sobrien
36760484SobrienMon Oct 20 15:01:27 1997  Klaus K"ampf  <kkaempf@progis.de>
36860484Sobrien
36960484Sobrien	* evax-egsd.c: Weak symbols are global.
37060484Sobrien
37160484Sobrien	* evax-emh.c: Use proper casts.
37260484Sobrien
37360484Sobrien	* evax-egsd.c (_bfd_evax_write_egsd): Remove unneeded uname.
37460484Sobrien
37560484Sobrien	* evax-egsd.c: Section names and symbols have different
37660484Sobrien	length restrictions. Add length parameter to
37760484Sobrien	_bfd_evax_length_hash_symbol.
37860484Sobrien	* evax-etir.c: Likewise.
37960484Sobrien	* evax-misc.c (_bfd_evax_length_hash_symbol): Add length
38060484Sobrien	parameter.
38160484Sobrien	* evax.h (EOBJ_S_C_SECSIZ): Define.
38260484Sobrien
38360484Sobrien	* evax-alpha.c: Remove duplicate test.
38460484Sobrien
38560484Sobrien	* evax-emh.c: SYS$ functions are upper-case.
38660484Sobrien
38760484Sobrien	* evax-egsd.c: Create separate sections for common symbols.
38860484Sobrien	* evax-etir.c: Don't output common section.
38960484Sobrien	* evax.h: Bump up section count.
39060484Sobrien
39160484Sobrien	* configure.com: Use 64bit integers with DEC C.
39260484Sobrien
39360484Sobrien	* evax-egsd.c: Make section flags dec c compatible.
39460484Sobrien
39560484SobrienMon Oct 20 09:38:31 1997  Jeffrey A Law  (law@cygnus.com)
39660484Sobrien
39760484Sobrien	* som.c (normalize): Delete function.
39860484Sobrien	(som_bfd_ar_write_symbol_stuff): New parameter elength.  All callers
39960484Sobrien	changed.  Use passed in elength to determine size of the extended
40060484Sobrien	name table instead of computing it again.
40160484Sobrien
40260484SobrienSun Oct 19 23:36:21 1997  Jim Wilson  <wilson@cygnus.com>
40360484Sobrien
40460484Sobrien	* peicode.h (coff_swap_scnhdr_out): Use |= not = to set
40560484Sobrien	IMAGE_SCN_MEM_READ for an unrecognized section.
40660484Sobrien
40760484SobrienSun Oct 19 21:04:56 1997  Jeffrey A Law  (law@cygnus.com)
40860484Sobrien
40960484Sobrien	* som.c (som_bfd_ar_write_symbol_stuff): Account for trailing
41060484Sobrien	'/' in the extended name table.
41160484Sobrien
41260484SobrienFri Oct 17 00:04:13 1997  Richard Henderson  <rth@cygnus.com>
41360484Sobrien
41460484Sobrien	* elflink.h (elf_link_assign_sym_version): For explicitly versioned
41560484Sobrien	symbols, check globals list before matching on locals.
41660484Sobrien
41760484SobrienThu Oct 16 08:17:06 1997  Michael Meissner  <meissner@cygnus.com>
41860484Sobrien
41960484Sobrien	* peicode.h (coff_swap_scnhdr_out,pe_print_idata): Fix mangled
42060484Sobrien	patch.
42160484Sobrien
42260484SobrienWed Oct 15 13:45:10 1997  Ian Lance Taylor  <ian@cygnus.com>
42360484Sobrien
42460484Sobrien	* peicode.h (pe_mkobject_hook): Set DLL flag.
42560484Sobrien	(pe_bfd_copy_private_bfd_data): Copy DLL flag.
42660484Sobrien
42760484Sobrien	* peicode.h (coff_swap_scnhdr_out): Set IMAGE_SCN_MEM_DISCARDABLE
42860484Sobrien	for .stab* sections.  Replace strlen of constant strings with
42960484Sobrien	number.
43060484Sobrien
43160484SobrienTue Oct 14 15:42:45 1997  Richard Henderson  <rth@cygnus.com>
43260484Sobrien
43360484Sobrien	* elf64-alpha.c (elf64_alpha_merge_ind_symbols): New function to
43460484Sobrien	merge got and reloc entries from ind syms to their target.
43560484Sobrien	(elf64_alpha_always_size_sections): Call it.
43660484Sobrien	(elf64_alpha_check_relocs): Operate on the target of indirect symbols.
43760484Sobrien	(elf64_alpha_can_merge_gots): Likewise.
43860484Sobrien	(elf64_alpha_merge_gots): Likewise.
43960484Sobrien
44060484Sobrien	* elf64-alpha.c (elf64_alpha_relocate_section): Back out HJ's change,
44160484Sobrien	as it is insufficient to handle the relocation changes as well.
44260484Sobrien
44360484SobrienMon Oct 13 23:10:08 1997  Richard Henderson  <rth@cygnus.com>
44460484Sobrien
44560484Sobrien	* elf64-alpha.c (elf64_alpha_calc_dynrel_sizes): Allow for RELATIVE
44660484Sobrien	relocs for symbols in shlibs that have been forced local.
44760484Sobrien	(elf64_alpha_relocate_section): Output RELATIVEs in .got for same.
44860484Sobrien
44960484SobrienMon Oct 13 21:24:04 1997  Richard Henderson  <rth@cygnus.com>
45060484Sobrien
45160484Sobrien	* elf64-alpha.c (elf64_alpha_relocate_section): Use the
45260484Sobrien	got_enties of the default symbol for the default versioned
45360484Sobrien	symbol.  Patch from hjl@gnu.ai.mit.edu, modified not to use
45460484Sobrien	alloca in the loop.
45560484Sobrien
45660484SobrienMon Oct 13 17:37:37 1997  Nick Clifton  <nickc@cygnus.com>
45760484Sobrien
45860484Sobrien	* elf32-v850.c (v850_elf_final_link_relocate): Only use the bottom
45960484Sobrien	24 bits of the PC when computing a PC relative relocation.
46060484Sobrien
46160484SobrienFri Oct 10 16:01:30 1997  Nick Clifton  <nickc@cygnus.com>
46260484Sobrien
46360484Sobrien	* elf32-v850.c (v850_elf_reloc, v850_elf_final_link_relocate):
46460484Sobrien	Correct value for maximum positive 22 bit PC relative relocation.
46560484Sobrien	(v850_elf_final_link_relocate):  Prevent overflow from HI16_S and
46660484Sobrien	HI_16 relocations.  Correct bit adjustment in TDA offsets.
46760484Sobrien
46860484SobrienThu Oct  9 16:43:39 1997  Doug Evans  <dje@canuck.cygnus.com>
46960484Sobrien
47060484Sobrien	* elf64-sparc.c (sparc_elf_{hix22,lox10}_reloc): New functions.
47160484Sobrien	(sparc64_elf_howto_table): Use them for HIX22,LOX10 relocs.
47260484Sobrien
47360484SobrienWed Oct  8 11:38:45 1997  Richard Henderson  <rth@cygnus.com>
47460484Sobrien
47560484Sobrien	* elfcore.h (bfd_prstatus): Pedanticly, alignment_power should
47660484Sobrien	be LOG_FILE_ALIGN.
47760484Sobrien
47860484SobrienWed Oct  8 11:36:00 1997  Richard Henderson  <rth@cygnus.com>
47960484Sobrien
48060484Sobrien	* config.bfd: Missed one alpha* change.
48160484Sobrien
48260484SobrienTue Oct  7 13:00:17 1997  Doug Evans  <dje@canuck.cygnus.com>
48360484Sobrien
48460484Sobrien	* elf32-sparc.c (_bfd_sparc_elf_howto_table): Remove BFD64 support.
48560484Sobrien	* elf64-sparc.c (SPARC64_OLD_RELOCS): Undef.
48660484Sobrien	(MINUS_ONE): New macro.
48760484Sobrien	(sparc_elf_notsup_reloc): New function.
48860484Sobrien	(sparc64_elf_howto_table): Add entries for DISP64,PLT64,HIX22,LOX10,
48960484Sobrien	H44,M44,L44,REGISTER.
49060484Sobrien	(sparc_reloc_map): Likewise.  Map BFD_RELOC_CTOR to R_SPARC_64.
49160484Sobrien	(init_insn_reloc): New function.
49260484Sobrien	(sparc_elf_wdisp16_reloc): Use it.
49360484Sobrien	(sparc64_elf_relocate_section): Add entries for OLO10,HIX22,LOX10.
49460484Sobrien
49560484SobrienTue Oct  7 11:40:37 1997  Ian Lance Taylor  <ian@cygnus.com>
49660484Sobrien
49760484Sobrien	* som.c (som_construct_extended_name_table): Remove static
49860484Sobrien	function, and define as macro instead.
49960484Sobrien
50060484SobrienFri Oct  3 14:02:17 1997  Richard Henderson  <rth@cygnus.com>
50160484Sobrien
50260484Sobrien	* config.bfd: Change alpha-*-* to alpha*-*-*; config.guess now
50360484Sobrien	recognizes alphaev5 etc.
50460484Sobrien	* configure.host: Likewise.
50560484Sobrien
50660484SobrienFri Oct  3 11:23:47 1997  Ian Lance Taylor  <ian@cygnus.com>
50760484Sobrien
50860484Sobrien	Make ld -s work on AIX:
50960484Sobrien	* xcofflink.c (xcoff_link_add_symbols): Don't create the .debug
51060484Sobrien	section if we are stripping.
51160484Sobrien	(bfd_xcoff_size_dynamic_sections): Don't set the .debug section
51260484Sobrien	size if we are stripping.
51360484Sobrien	(_bfd_xcoff_bfd_final_link): Don't set SEC_RELOC or rel_filepos,
51460484Sobrien	and don't write out relocs, if we are stripping.
51560484Sobrien	(xcoff_link_input_bfd): Don't set up reloc if we are stripping.
51660484Sobrien	(xcoff_write_global_symbol): Don't write out symbol or reloc if we
51760484Sobrien	are stripping.
51860484Sobrien
51960484Sobrien	* configure.in: Don't include elf.lo again for ELF targets; it's
52060484Sobrien	always in the library anyhow.
52160484Sobrien	* configure: Rebuild.
52260484Sobrien
52360484Sobrien	* bfd-in2.h: Rebuild.
52460484Sobrien
52560484Sobrien	* elf32-sparc.c (sparc_elf_wdisp16_reloc): Cast to bfd_byte *, not
52660484Sobrien	char *, when calling bfd_get_32 and bfd_put_32.
52760484Sobrien	* sunos.c (sunos_scan_dynamic_symbol): Cast contents to char *
52860484Sobrien	when calling strcpy.
52960484Sobrien
53060484SobrienThu Oct  2 16:15:50 1997  Doug Evans  <dje@canuck.cygnus.com>
53160484Sobrien
53260484Sobrien	* reloc.c (bfd_check_overflow): New function.
53360484Sobrien	(bfd_perform_relocation, bfd_install_relocation): Use it.
53460484Sobrien	(BFD_RELOC_SPARC_{DISP64,PLT64}): New relocs.
53560484Sobrien	(BFD_RELOC_SPARC_{HIX22,LOX10,H44,M44,L44,REGISTER}): New relocs.
53660484Sobrien	* bfd-in2.h: Regenerate.
53760484Sobrien	* libbfd.h: Regenerate.
53860484Sobrien
53960484SobrienThu Oct  2 13:17:18 1997  Ian Lance Taylor  <ian@cygnus.com>
54060484Sobrien
54160484Sobrien	* peicode.h (coff_swap_scnhdr_out): Set IMAGE_SCN_MEM_READ for an
54260484Sobrien	unrecognized section.  From Jon Thackray <jont@harlequin.co.uk>.
54360484Sobrien
54460484SobrienWed Oct  1 14:03:44 1997  Ian Lance Taylor  <ian@cygnus.com>
54560484Sobrien
54660484Sobrien	* Makefile.am ($(BFD_H)): Change stmp-bfd.h to stmp-bfd-h.
54760484Sobrien 	(stmp-bfd-h): Rename from stmp-bfd.h.
54860484Sobrien 	(BFD_H_FILES, LIBBFD_H_FILES, LIBCOFF_H_FILES): New variables.
54960484Sobrien	($(srcdir)/bfd-in2.h): Just depend upon stmp-bin2-h.
55060484Sobrien	(stmp-bin2-h): New target.
55160484Sobrien	($(srcdir)/libbfd.h): Just depend upon stmp-lbfd-h.
55260484Sobrien	(stmp-lbfd-h): New target.
55360484Sobrien	($(srcdir)/libcoff.h): Just depend upon stmp-lcoff-h.
55460484Sobrien	(stmp-lcoff-h): New target.
55560484Sobrien	(CLEANFILES): Change stmp-bfd.h to stmp-bfd-h.  Add stmp-bin2.h,
55660484Sobrien	stmp-lbfd-h, and stmp-lcoff-h.
55760484Sobrien	* Makefile.in: Rebuild.
55860484Sobrien
55960484Sobrien	* configure.in: Use a diversion to set enable_shared before the
56060484Sobrien	arguments are parsed.
56160484Sobrien	* configure: Rebuild.
56260484Sobrien
56360484SobrienTue Sep 30 14:18:32 1997  Doug Evans  <dje@canuck.cygnus.com>
56460484Sobrien
56560484Sobrien	* elf32-sparc.c (_bfd_sparc_elf_howto_table): R_SPARC_GLOB_JMP
56660484Sobrien	renamed to R_SPARC_UNUSED_42.
56760484Sobrien	(sparc_reloc_map): Delete R_SPARC_GLOB_JMP entry.
56860484Sobrien	* elf64-sparc.c (_bfd_sparc_elf_howto_table): R_SPARC_GLOB_JMP
56960484Sobrien	renamed to R_SPARC_UNUSED_42.
57060484Sobrien	(sparc_reloc_map): Delete R_SPARC_GLOB_JMP entry.
57160484Sobrien	* reloc.c (BFD_RELOC_SPARC_GLOB_JMP): Delete.
57260484Sobrien	* bfd-in2.h: Regenerated.
57360484Sobrien	* libbfd.h: Regenerated.
57460484Sobrien
57560484SobrienThu Sep 25 12:15:02 1997  Ian Lance Taylor  <ian@cygnus.com>
57660484Sobrien
57760484Sobrien	* elflink.h (elf_merge_symbol): Don't check the hash creator until
57860484Sobrien	after we have set *sym_hash.
57960484Sobrien
58060484SobrienWed Sep 24 16:52:28 1997  Joel Sherrill  <joel@oarcorp.com>
58160484Sobrien
58260484Sobrien        * config.bfd (sh*-*-rtems*): New target, like sh-*-*elf*.
58360484Sobrien
58460484SobrienWed Sep 24 11:27:23 1997  Ian Lance Taylor  <ian@cygnus.com>
58560484Sobrien
58660484Sobrien	* Makefile.am (libbfd_a_SOURCES): Define.
58760484Sobrien	* Makefile.in: Rebuild.
58860484Sobrien
58960484Sobrien	* configure.in: Call AC_CHECK_TOOL before AM_PROG_LIBTOOL.
59060484Sobrien	* aclocal.m4: Rebuild with new libtool.
59160484Sobrien	* configure: Rebuild.
59260484Sobrien
59360484SobrienTue Sep 23 19:03:13 1997  Ian Lance Taylor  <ian@cygnus.com>
59460484Sobrien
59560484Sobrien	* elf.c (map_sections_to_segments): Even if we are not demand
59660484Sobrien	paged, don't put a loadable section after a nonloadable section.
59760484Sobrien	(assign_file_positions_for_segments): Increment the file offset
59860484Sobrien	for a section with contents, even if it is not loadable.
59960484Sobrien
60060484SobrienSun Sep 21 11:03:24 1997  Nick Clifton  <nickc@cygnus.com>
60160484Sobrien
60260484Sobrien	* elf32-v850.c (v850_elf_final_link_relocate): Add return code
60360484Sobrien	indicating that __ctbp could not be found.
60460484Sobrien
60560484SobrienThu Sep 18 15:04:57 1997  Nick Clifton  <nickc@cygnus.com>
60660484Sobrien
60760484Sobrien	* elf32-v850.c (v850_elf_check_relocs): Improve error message.
60860484Sobrien
60960484SobrienWed Sep 17 09:54:51 1997  Nick Clifton  <nickc@cygnus.com>
61060484Sobrien
61160484Sobrien	* elf32-v850.c (v850_elf_final_link_relocate, v850_elf_reloc,
61260484Sobrien	v850_elf_check_relocs, v850_elf_reloc_map, v850_elf_howto_table):
61360484Sobrien	Add support for the CALLT relocs.
61460484Sobrien
61560484Sobrien	* reloc.c (COMMENT): Add BFD_RELOC_V850_CALLT_6_7_OFFSET and
61660484Sobrien	BFD_RELOC_V850_CALLT_16_16_OFFSET.
61760484Sobrien
61860484Sobrien	* elf32-v850.c (v850_elf_final_link_relocate): Add checks to catch
61960484Sobrien	relocations against non-existant symbols.
62060484Sobrien
62160484SobrienTue Sep 16 14:20:27 1997  Nick Clifton  <nickc@cygnus.com>
62260484Sobrien
62360484Sobrien	* reloc.c: Add BFR_RELOC_V850_TDA_16_16_OFFSET.
62460484Sobrien
62560484Sobrien	* elf32-v850.c (v850_elf_reloc, v850_elf_final_link_relocate,
62660484Sobrien	v850_elf_howto_table, v850_elf_reloc_map): Add support for a 16
62760484Sobrien	bit reloc in the tiny data area.
62860484Sobrien
62960484SobrienMon Sep 15 11:27:36 1997  Ken Raeburn  <raeburn@cygnus.com>
63060484Sobrien
63160484Sobrien	Merged changes from Martin Hunt:
63260484Sobrien
63360484Sobrien	* elf32-d30v.c (bfd_elf_d30v_reloc): Change pc-relative relocs
63460484Sobrien	over 2^32 bytes to be absolute.  Needed because D30V PC doesn't
63560484Sobrien	necessarily wrap.
63660484Sobrien
63760484Sobrien	* reloc.c, elf32-d30v.c (BFD_RELOC_D30V_9_PCREL,
63860484Sobrien	BFD_RELOC_D30V_9_PCREL_R): New relocs.
63960484Sobrien
64060484Sobrien	* elf32-d30v.c (bfd_elf_d30v_reloc_21): New function.
64160484Sobrien	Do 15 and 21 bit pc-relative relocations.
64260484Sobrien	* reloc.c (BFD_RELOC_D30V_15_PCREL_R, BFD_RELOC_D30V_21_PCREL_R):
64360484Sobrien	New relocations.
64460484Sobrien
64560484Sobrien	* elf32-d30v.c (bfd_elf_d30v_reloc): Addend needs to be
64660484Sobrien	added to the relocation, not or'd.
64760484Sobrien
64860484SobrienWed Sep 10 15:17:25 1997  Nick Clifton  <nickc@cygnus.com>
64960484Sobrien
65060484Sobrien	* elf32-v850.c (v850_elf_reloc): Remove spurious error message.
65160484Sobrien
65260484SobrienWed Sep 10 11:17:50 1997  Andrew Cagney  <cagney@b1.cygnus.com>
65360484Sobrien
65460484Sobrien	* archures.c (bfd_default_scan): Use strcasecmp.
65560484Sobrien	(bfd_default_scan): Test for match with arch_name + ":" +
65660484Sobrien 	printable_name.
65760484Sobrien	(bfd_default_scan): Test for match with printable_name - ":".
65860484Sobrien	(bfd_default_scan): Delete w65, h8300, h8500, z8k, i960 special
65960484Sobrien 	cases.  Each implements their own scan function.
66060484Sobrien	(bfd_default_scan): Delete 386, 2900, 860, mips 2000, mips 4400
66160484Sobrien 	special cases.  Since info->mach == 0.  The test mach == number
66260484Sobrien 	fails.
66360484Sobrien	(bfd_arch_list): New function, return name of all the supported
66460484Sobrien 	architectures.
66560484Sobrien
66660484SobrienTue Sep  9 10:21:56 1997  Nick Clifton  <nickc@cygnus.com>
66760484Sobrien
66860484Sobrien	* elf32-v850.c (v850_elf_print_private_bfd_data): Break after
66960484Sobrien	decoding architecture.
67060484Sobrien	(v850_elf_reloc): Do not complain if a R_V850_LO16 reloc has bit
67160484Sobrien	15 set.
67260484Sobrien
67360484SobrienSun Sep  7 12:25:22 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
67460484Sobrien
67589857Sobrien	* elf64-alpha.c (reloc_howto_type): Fix the howto table.
67660484Sobrien
67760484SobrienThu Sep  4 09:44:10 1997  Ian Lance Taylor  <ian@cygnus.com>
67860484Sobrien
67960484Sobrien	* Makefile.am: Rebuild dependencies.
68060484Sobrien 	(ALL_MACHINES_CFILES): Add cpu-v850.c.
68160484Sobrien	(ALL_MACHINES_CFILES): Add elf32-v850.c.
68260484Sobrien	* Makefile.in: Rebuild.
68360484Sobrien
68460484Sobrien	* reloc.c: Remove extraneous commas from relocation entries.
68560484Sobrien	Remove BFD_RELOC_V850_16_PCREL.
68660484Sobrien	* bfd-in2.h: Rebuild.
68760484Sobrien
68860484Sobrien	* xcofflink.c (xcoff_link_add_symbols): Put XTY_CM/XMC_TD symbols
68960484Sobrien	in sections named .tocbss rather than .bss.
69060484Sobrien
69160484SobrienWed Sep  3 11:23:23 1997  Nick Clifton  <nickc@cygnus.com>
69260484Sobrien
69360484Sobrien	* libbfd.h, bfd-in2.h, elf32-v850.c: Removed
69460484Sobrien	BFD_RELOC_V850_16_PCREL.
69560484Sobrien
69660484SobrienTue Sep  2 20:44:10 1997  Fred Fish  <fnf@cygnus.com>
69760484Sobrien
69860484Sobrien	* cofflink.c (coff_link_check_ar_symbols): Handle C_SYSTEM syms
69960484Sobrien	the same as C_EXT syms.
70060484Sobrien	(coff_link_add_symbols): Ditto.
70160484Sobrien	(_bfd_coff_link_input_bfd): Ditto.
70260484Sobrien	(_bfd_coff_write_task_globals): Add save_global_to_static.  Use
70360484Sobrien	it to preserve and restore state of global_to_static flag.
70460484Sobrien
70560484SobrienTue Sep  2 17:45:22 1997  Nick Clifton  <nickc@cygnus.com>
70660484Sobrien
70760484Sobrien	* elf32-v850.c (v850_elf_object_p): Set machine number based on
70860484Sobrien	bits in e_flags field rather than magic numbers.
70960484Sobrien	(v850_elf_final_write_processing, v850_elf_set_private_flags,
71060484Sobrien	v850_elf_copy_private_bfd_data, v850_elf_merge_private_bfd_data,
71160484Sobrien	v850_elf_print_private_bfd_data): New functions.
71260484Sobrien
71360484SobrienTue Sep  2 17:43:49 1997  Nick Clifton  <nickc@cygnus.com>
71460484Sobrien
71560484Sobrien	* elf.c (prep_headers): Remove V850E magic number.
71660484Sobrien	* elf.c (prep_headers): Remove V850EA magic number.
71760484Sobrien
71860484SobrienTue Sep  2 17:35:05 1997  Doug Evans  <dje@canuck.cygnus.com>
71960484Sobrien
72060484Sobrien	* cpu-arc.c (arc_get_mach): Properly scan defined mach entries.
72160484Sobrien
72260484SobrienTue Sep  2 18:29:37 1997  Jeffrey A Law  (law@cygnus.com)
72360484Sobrien
72460484Sobrien	* elf-m10200.c (mn10200_elf_final_link_relocate): PC relative
72560484Sobrien	instructions are relative to the next instruction, not the
72660484Sobrien	current instruction.
72760484Sobrien	(mn10200_elf_relax_section): Similarly.
72860484Sobrien
72960484SobrienTue Sep  2 15:45:45 1997  Nick Clifton  <nickc@cygnus.com>
73060484Sobrien
73160484Sobrien	* cpu-v850.c: Use a macro to construct bfd_arch_info_type
73260484Sobrien	entries.
73360484Sobrien
73460484Sobrien	* reloc.c, libbfd.h, bfd-in2.h, elf32-v850.c: Replace
73560484Sobrien	BFD_RELOC_V850_{SDA/TDA/ZDA}_OFFSET relocs with new bit pattern
73660484Sobrien	specific versions: BFD_RELOC_V850_{area}_{bits}_OFFSET.
73760484Sobrien
73860484SobrienThu Aug 28 17:01:09 1997  Andrew Cagney  <cagney@b1.cygnus.com>
73960484Sobrien
74060484Sobrien	* cpu-v850.c: Remove "plain" from v850 printable name.
74160484Sobrien	(scan): Use strcasecmp.
74260484Sobrien
74360484Sobrien	* archures.c (bfd_mach_v850): Define.
74460484Sobrien
74560484Sobrien	* cpu-sh.c (scan_mach): Compare with table instead of hardwired to
74660484Sobrien 	just sh/SH, use strcasecmp.
74760484Sobrien	(arch_info_struct): Add entries for sh3 et.al.
74860484Sobrien
74960484Sobrien	* archures.c (bfd_mach_sh, ...): Define.
75060484Sobrien
75160484SobrienWed Aug 27 17:33:07 1997  Andrew Cagney  <cagney@b1.cygnus.com>
75260484Sobrien
75360484Sobrien	* archures.c (bfd_archures_list): Always NULL terminate the list.
75460484Sobrien
75560484SobrienTue Aug 26 17:26:51 1997  Ian Lance Taylor  <ian@cygnus.com>
75660484Sobrien
75760484Sobrien	* Makefile.am: Rebuild dependencies.
75860484Sobrien	(ALL_MACHINES_CFILES): Add cpu-arc.c.
75960484Sobrien	(ALL_MACHINES_CFILES): Add elf32-arc.c.
76060484Sobrien	(elf32-arc.lo): Remove explicit dependency.
76160484Sobrien	* Makefile.in: Rebuild.
76260484Sobrien
76360484Sobrien	* acinclude.m4 (BFD_CC_FOR_BUILD): Set EXEEXT_FOR_BUILD.
76460484Sobrien	* doc/Makefile.am (MKDOC): Use EXEEXT_FOR_BUILD, not EXEEXT.
76589857Sobrien	* aclocal.m4: Rebuild.
76689857Sobrien	* configure: Rebuild.
76789857Sobrien	* Makefile.in: Rebuild.
76889857Sobrien	* doc/Makefile.in: Rebuild.
76960484Sobrien
77060484SobrienMon Aug 25 16:14:34 1997  Christopher Provenzano  <proven@cygnus.com>
77160484Sobrien
77260484Sobrien	* configure: Rebuild with latest devo autoconf for NT support
77360484Sobrien
77460484SobrienMon Aug 25 16:11:04 1997  Nick Clifton  <nickc@cygnus.com>
77560484Sobrien
77660484Sobrien	* cpu-arm.c (compatible): If B is a default type, return A.
77760484Sobrien
77860484SobrienMon Aug 25 15:35:46 1997  Nick Clifton  <nickc@cygnus.com>
77960484Sobrien
78060484Sobrien	* cpu-v850.c (scan): New function.
78160484Sobrien	(arch_info_struct): New structure.
78260484Sobrien	(bfd_v850_arch): Add link into arch_info_structure.
78360484Sobrien
78460484Sobrien	* config.bfd (targ_cpu): All v850 variants use the bfd_arch_v850
78560484Sobrien	architecture.
78660484Sobrien
78760484Sobrien	* elf32-v850.c (v850_elf_object_p): New function.
78860484Sobrien
78960484Sobrien	* archures.c (bfd_mach_v850e): Machine value for v850e.
79060484Sobrien
79160484Sobrien	* bfd-in2.h (bfd_mach_v850e): Machine value for v850e.
79260484Sobrien
79360484Sobrien	* elf32-v850.c (ELF_MACHINE_CODE): Default to v850e machine
79460484Sobrien	number.
79560484Sobrien
79660484Sobrien	* elf.c (prep_headers): Add support for v850e machine number.
79760484Sobrien
79860484Sobrien	* archures.c (bfd_mach_v850ea): Machine value for v850ea.
79960484Sobrien
80060484Sobrien	* bfd-in2.h (bfd_mach_v850ea): Machine value for v850ea.
80160484Sobrien
80260484Sobrien	* elf32-v850.c (ELF_MACHINE_CODE): Default to v850ea machine
80360484Sobrien	number.
80460484Sobrien
80560484Sobrien	* elf.c (prep_headers): Add support for v850ea machine number.
80660484Sobrien
80760484SobrienMon Aug 25 14:07:33 1997  Ian Lance Taylor  <ian@cygnus.com>
80860484Sobrien
80960484Sobrien	* syms.c (_bfd_stab_section_find_nearest_line): Clear the
81060484Sobrien 	cached_stab field if the offset prevents us from using the cache.
81160484Sobrien
81260484SobrienMon Aug 25 12:08:13 1997  Ian Lance Taylor  <ian@cygnus.com>
81360484Sobrien
81460484Sobrien	* aout-target.h (MY(vec)): Add SEC_CODE and SEC_DATA to section
81560484Sobrien	flags.
81660484Sobrien	* aout-arm.c (aout_arm_little_vec): Likewise.
81760484Sobrien	(aout_arm_big_vec): Likewise.
81860484Sobrien	* bout.c (b_out_vec_big_host): Likewise.
81960484Sobrien	(b_out_vec_little_host): Likewise.
82060484Sobrien	* mipsbsd.c (aout_mips_little_vec): Likewise.
82160484Sobrien	(aout_mips_big_vec): Likewise.
82260484Sobrien
82360484SobrienTue Aug 19 10:09:10 1997  Fred Fish  <fnf@cygnus.com>
82460484Sobrien
82560484Sobrien	* coff-tic80.c (COFF_ALIGN_IN_SFLAGS): Define to 1.
82660484Sobrien	* coffcode.h (styp_to_sec_flags): Ignore incoming STYP_INFO
82760484Sobrien	bit in s_flags if COFF_ALIGN_IN_S_FLAGS is defined.
82860484Sobrien
82960484SobrienTue Aug 19 08:47:17 1997  Fred Fish  <fnf@cygnus.com>
83060484Sobrien
83160484Sobrien	* coff-i960.c (COFF_ALIGN_IN_SECTION_HEADER): Define to 1.
83260484Sobrien	(GET_SCNHDR_ALIGN, PUT_SCNHDR_ALIGN): Define.
83360484Sobrien	* coff-m88k.c (GET_SCNHDR_NRELOC, GET_SCNHDR_NLNNO): Define.
83460484Sobrien	* coffcode.h (coff_set_alignment_hook): Conditionally compile in if
83560484Sobrien	COFF_ALIGN_IN_SECTION_HEADER is defined.  Convert alignment to power
83660484Sobrien	of two for I960 only.
83760484Sobrien	* coffswap.h (GET_SCNHDR_NRELOC, PUT_SCNHDR_NRELOC, GET_SCNDHR_NLNNO,
83860484Sobrien	PUT_SCNHDR_NLNNO, GET_SCNHDR_FLAGS, PUT_SCNHDR_FLAGS): Provide
83960484Sobrien	default definitions.
84060484Sobrien	(coff_swap_scnhdr_in): Use GET_SCNHDR_FLAGS, GET_SCNHDR_NRELOC,
84160484Sobrien	GET_SCNHDR_NLNNO, and GET_SCNHDR_ALIGN.
84260484Sobrien	(coff_swap_scnhdr_out): Use PUT_SCNHDR_FLAGS, PUT_SCNHDR_ALIGN.
84360484Sobrien	* Makefile.in (coff-tic80.o): Depends upon coffswap.h.
84460484Sobrien	* coff-tic80.c (COFF_ALIGN_IN_SECTION_HEADER): Define to 1.
84560484Sobrien	(GET_SCNHDR_FLAGS, PUT_SCNHDR_FLAGS): Define
84660484Sobrien	* coffcode.h (coff_write_object_contents): Set alignment field in
84760484Sobrien 	section header for TIC80COFF files.
84860484Sobrien
84960484SobrienMon Aug 18 11:36:19 1997  Nick Clifton  <nickc@cygnus.com>
85060484Sobrien
85160484Sobrien	* elf32-v850.c (v850_elf_howto_table, v850_elf_reloc_map,
85260484Sobrien	v850_elf_check_relocs, v850_elf_reloc,
85360484Sobrien	v850_elf_final_link_relocate):  Add support for
85460484Sobrien	BFD_RELOC_V850_16_PCREL relocation.
85560484Sobrien
85660484Sobrien	* reloc.c (COMMENT): Add suuport for BFD_RELOC_V850_16_PCREL
85760484Sobrien	relocation.
85860484Sobrien
85960484Sobrien	* libbfd.h: Add support for BFD_RELOC_V850_16_PCREL relocation.
86060484Sobrien
86160484Sobrien	* bfd-in2.h: Add support for BFD_RELOC_V850_16_PCREL relocation.
86260484Sobrien
86360484SobrienMon Aug 18 11:33:56 1997  Nick Clifton  <nickc@cygnus.com>
86460484Sobrien
86560484Sobrien	* cpu-v850e: New file.
86660484Sobrien
86760484Sobrien	* elf.c (prep_headers): Add support for v850e target.
86860484Sobrien
86960484Sobrien	* bfd-in2.h (bfd_architecture): Add support for v850e target.
87060484Sobrien
87160484Sobrien	* config.bfd: Add support for v850e target.
87260484Sobrien
87360484Sobrien	* archures.c: Add support for v850e target.
87460484Sobrien
87560484SobrienMon Aug 18 11:33:56 1997  Nick Clifton  <nickc@cygnus.com>
87660484Sobrien
87760484Sobrien	* cpu-v850ea: New file.
87860484Sobrien
87960484Sobrien	* elf.c (prep_headers): Add support for v850ea target.
88060484Sobrien
88160484Sobrien	* bfd-in2.h (bfd_architecture): Add support for v850ea target.
88260484Sobrien
88360484Sobrien	* config.bfd: Add support for v850ea target.
88460484Sobrien
88560484Sobrien	* archures.c: Add support for v850ea target.
88660484Sobrien
88760484SobrienFri Aug 15 12:01:28 1997  Ian Lance Taylor  <ian@cygnus.com>
88860484Sobrien
88960484Sobrien	* coffgen.c (coff_find_nearest_line): Correctly handle the offset
89060484Sobrien	argument as section relative, rather than an absolute address.
89160484Sobrien	From Jan Hoogenraad <hoogenrd@natlab.research.philips.com>.
89260484Sobrien
89360484SobrienFri Aug 15 04:58:02 1997  Doug Evans  <dje@canuck.cygnus.com>
89460484Sobrien
89560484Sobrien	* config.bfd (arc-*-elf*): Add.
89660484Sobrien	* configure.in (bfd_elf32_{little,big}arc_vec): Add.
89760484Sobrien	* configure: Rebuild.
89860484Sobrien	* Makefile.am (ALL_MACHINES): Add cpu-arc.lo.
89960484Sobrien	(BFD32_BACKENDS): Add elf32-arc.lo.
90060484Sobrien	(cpu-arc.lo,elf32-arc.lo): Add rules for.
90160484Sobrien	* Makefile.in: Rebuild.
90260484Sobrien	* archures.c (architecture list): Add bfd_arch_arc.
90360484Sobrien	(bfd_archures_list): Add bfd_arc_arch.
90460484Sobrien	(bfd_mach_arc_base): Define.
90560484Sobrien	* reloc.c (BFD_RELOC_ARC_B22_PCREL,BFD_RELOC_ARC_B26): Add.
90660484Sobrien	* targets.c (bfd_elf32_{little,big}arc_vec): Declare.
90760484Sobrien	(bfd_target_vect): Add them.
90860484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
90960484Sobrien	* cpu-arc.c, elf32-arc.c: New files.
91060484Sobrien	* elf.c (pre_headers): Recognize bfd_arch_arc.
91160484Sobrien
91260484SobrienTue Aug 12 11:45:18 1997  Ian Lance Taylor  <ian@cygnus.com>
91360484Sobrien
91460484Sobrien	* aoutx.h (NAME(aout,final_link)): If no symbols, make sure the
91560484Sobrien	data section is correctly rounded to a page in the file.
91660484Sobrien
91760484SobrienMon Aug 11 12:45:43 1997  Ian Lance Taylor  <ian@cygnus.com>
91860484Sobrien
91960484Sobrien	* aoutx.h (NAME(aout,final_link)): Don't emit the string table if
92060484Sobrien	there are no symbols.
92160484Sobrien
92260484SobrienSun Aug 10 14:45:56 1997  Ian Lance Taylor  <ian@cygnus.com>
92360484Sobrien
92460484Sobrien	* coff-stgo32.c: Rename from coff-stubgo32.c to avoid old System V
92560484Sobrien	file system 14 character limit.
92689857Sobrien	* Makefile.am: Corresponding changes.
92789857Sobrien	* configure.in: Corresponding changes.
92889857Sobrien	* Makefile.in: Rebuild.
92989857Sobrien	* configure: Rebuild.
93060484Sobrien
93160484SobrienFri Aug  8 18:34:36 1997  Ian Lance Taylor  <ian@cygnus.com>
93260484Sobrien
93360484Sobrien	* Makefile.am: (ALL_MACHINES_CFILES): Add elf32-d10v.c.
93460484Sobrien	Rebuild dependencies.
93560484Sobrien	* Makefile.in: Rebuild.
93660484Sobrien
93760484SobrienWed Aug  6 18:56:51 1997  Ian Lance Taylor  <ian@cygnus.com>
93860484Sobrien
93960484Sobrien	* Makefile.am (docdir): Define.
94060484Sobrien	* Makefile.in: Rebuild.
94160484Sobrien
94260484SobrienTue Aug  5 23:05:03 1997  Ian Lance Taylor  <ian@cygnus.com>
94360484Sobrien
94460484Sobrien	* configure: Rebuild with autoconf 2.12.1.
94560484Sobrien
94660484SobrienMon Aug  4 12:00:35 1997  Ian Lance Taylor  <ian@cygnus.com>
94760484Sobrien
94860484Sobrien	* aclocal.m4, configure: Rebuild with new automake patches.
94960484Sobrien
95060484SobrienSun Aug  3 08:15:12 1997  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
95160484Sobrien
95260484Sobrien	* rs6000-core.c (make_bfd_asection):  New function to add a section
95360484Sobrien	to the core file bfd.
95460484Sobrien	(rs6000coff_core_p):  Use make_bfd_asection to add the core file
95560484Sobrien	sections.
95660484Sobrien	Use BFD routines to seek, read and stat the core file.
95760484Sobrien	Handle .data sections from loaded objects and anonymously mmapped
95860484Sobrien	regions, these are available in AIX 4 core files.
95960484Sobrien
96060484SobrienFri Aug  1 12:58:32 1997  Ian Lance Taylor  <ian@cygnus.com>
96160484Sobrien
96260484Sobrien	* configure.in: Set enable_shared before AM_PROG_LIBTOOL.
96360484Sobrien	* acinclude.m4: Move acmacros.m4 in here.  Remove AM_PROG_LIBTOOL
96460484Sobrien	copy; use a patches libtool instead.
96560484Sobrien	* acmacros.m4: Remove.
96689857Sobrien	* Makefile.in: Rebuild.
96789857Sobrien	* aclocal.m4: Rebuild.
96889857Sobrien	* configure: Rebuild.
96960484Sobrien
97060484SobrienThu Jul 31 19:55:36 1997  Ian Lance Taylor  <ian@cygnus.com>
97160484Sobrien
97260484Sobrien	* Makefile.am: New file, based on old Makefile.in.
97360484Sobrien	* acmacros.m4: New file, copied from old aclocal.m4.
97460484Sobrien	* acinclude.m4: New file.
97560484Sobrien	* configure.in: Call AM_PROG_LIBTOOL.  Remove shared library
97660484Sobrien	handling; now handled by libtool.  Replace AC_CONFIG_HEADER with
97760484Sobrien	AM_CONFIG_HEADER.  Replace AC_PROG_INSTALL with AM_PROG_INSTALL.
97860484Sobrien	Call AM_MAINTAINER_MODE, AM_CYGWIN32, and AM_EXEEXT.  Change all
97960484Sobrien	.o files to .lo.  Remove stamp-h handling in AC_OUTPUT.
98060484Sobrien	* acconfig.h: Mention PACKAGE and VERSION.
98160484Sobrien	* stamp-h.in: New file.
98260484Sobrien	* dep-in.sed: Change .o to .lo.
98360484Sobrien	* Makefile.in: Now built with automake.
98460484Sobrien	* aclocal.m4: Now built with aclocal.
98560484Sobrien	* config.in, configure: Rebuild.
98660484Sobrien	* VERSION: Remove.
98760484Sobrien
98860484SobrienThu Jul 31 12:09:20 1997  Geoff Keating  <geoffk@ozemail.com.au>
98960484Sobrien
99060484Sobrien	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Don't set TEXTREL
99160484Sobrien 	if there is only a relocation to a read-only but not allocatable
99260484Sobrien 	section (like .stab).
99360484Sobrien	* elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
99460484Sobrien	* elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
99560484Sobrien	* elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
99660484Sobrien	* elf32-mips.c (mips_elf_size_dynamic_sections): Likewise.
99760484Sobrien	* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
99860484Sobrien
99960484Sobrien	* elf32-ppc.c (ppc_elf_howto_raw): Correct various comments.
100060484Sobrien	(ppc_elf_create_linker_section): These sections are not
100160484Sobrien	created by the linker (that is, they are created by the user
100260484Sobrien	putting data in them). In particular, they can be the source
100360484Sobrien	and target of relocations.
100460484Sobrien	(ppc_elf_adjust_dynamic_symbol): Check postcondition of
100560484Sobrien 	bfd_elf32_link_record_dynamic_symbol.  Align 16-byte common
100660484Sobrien 	objects (for instance, 'long double') to 16-byte boundaries.
100760484Sobrien	(ppc_elf_size_dynamic_sections): Make the code that generates
100860484Sobrien	section symbols exactly the same as for sparc, reducing the
100960484Sobrien	number of section symbols output.
101060484Sobrien	(ppc_elf_check_relocs): Check postcondition of
101160484Sobrien	bfd_elf32_link_record_dynamic_symbol.  Make default case the
101260484Sobrien	same as corresponding code for sparc, fixing bug involving
101360484Sobrien	.rela.stabs.
101460484Sobrien	(ppc_elf_finish_dynamic_symbol): Fix case involving GOT symbols
101560484Sobrien 	forced to be local because of versioning (by replicating
101660484Sobrien 	corresponding change in sparc).  Treat R_PPC_RELATIVE RELA relocs
101760484Sobrien 	as usual in ELF, not as pseudo-REL relocs (as the sparc linker
101860484Sobrien 	does).
101960484Sobrien	(ppc_elf_relocate_section): Add handy debugging code for when
102060484Sobrien 	assertion fails.  Add some more 'symbol made local because of
102160484Sobrien 	versioning' cases.
102260484Sobrien
102360484Sobrien	* elf32-ppc.c (ppc_elf_relocate_section): Cope with addend when
102460484Sobrien	processing a GOT relocation as required by ABI.
102560484Sobrien
102660484SobrienWed Jul 30 21:30:35 1997  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
102760484Sobrien
102860484Sobrien	* elflink.h (NAME(bfd_elf,record_link_assignment)): Remove any
102960484Sobrien	version info if this symbol came from a dynamic object.
103060484Sobrien	(elf_link_add_object_symbols): Set the version info of a symbol
103160484Sobrien	only if the object actually contains version definitions and
103260484Sobrien	defines this symbol.
103360484Sobrien
103460484SobrienMon Jul 28 18:07:43 1997  Rob Savoye  <rob@chinadoll.cygnus.com>
103560484Sobrien
103660484Sobrien	* aclocal.m4: Add CYGWIN and EXEEXT autoconf macros.
103760484Sobrien        * configure.in: Use CYGWIN and EXEEXT autoconf macro to look for
103860484Sobrien        win32 dependencies.
103960484Sobrien        * configure: Regenerated with autoconf 2.12.
104060484Sobrien        * doc/Makefile.in: Add $(EXEEXT) to chew executable.
104160484Sobrien
104260484SobrienMon Jul 28 02:50:29 1997  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
104360484Sobrien
104460484Sobrien	* rs6000-core.c (rs6000coff_core_p):  If CORE_TRUNC is set, print
104560484Sobrien	a warning rather than returning an error.
104660484Sobrien
104760484SobrienSun Jul 27 19:54:14 1997  Felix Lee  <flee@cygnus.com>
104860484Sobrien
104960484Sobrien	* coffswap.h (coff_swap_aux_in): add semicolon to make MSVC happy.
105060484Sobrien
105160484SobrienFri Jul 25 14:50:08 1997  Felix Lee  <flee@cygnus.com>
105260484Sobrien
105360484Sobrien	* cisco-core.c: define signals for wingdb.
105460484Sobrien
105560484SobrienFri Jul 25 16:27:07 1997  Ian Lance Taylor  <ian@cygnus.com>
105660484Sobrien
105760484Sobrien	* ecofflink.c (bfd_ecoff_debug_accumulate): Only merge files with
105860484Sobrien	the same number of aux entries.
105960484Sobrien
106060484SobrienFri Jul 25 08:22:15 1997  Jeffrey A Law  (law@cygnus.com)
106160484Sobrien
106260484Sobrien	* som.c (hppa_som_gen_reloc_type): Use R_DATA_EXPR for the
106360484Sobrien	difference of two symbols if the relocation size is 32 bits.
106460484Sobrien	(som_write_fixups): Handle R_DATA_EXPR.
106560484Sobrien
106660484SobrienWed Jul 23 16:08:02 1997  Ian Lance Taylor  <ian@cygnus.com>
106760484Sobrien
106860484Sobrien	* coff-i386.c (coff_i386_reloc): Don't offset a common symbol by
106960484Sobrien	its value if COFF_WITH_PE is defined.
107060484Sobrien
107160484SobrienTue Jul 22 17:19:45 1997  Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>
107260484Sobrien
107360484Sobrien	* coff-stubgo32.c: New file.
107460484Sobrien	* go32stub.h: New file.
107560484Sobrien	* coff-i386.c: If COFF_GO32_EXE, include coff/go32exe.h.
107660484Sobrien	* coffswap.h (coff_swap_filehdr_in): Invoke
107760484Sobrien	COFF_ADJUST_FILEHDR_IN_PRE and COFF_ADJUST_FILEHDR_IN_POST if they
107860484Sobrien	are defined.
107960484Sobrien	(coff_swap_filehdr_out): Invoke COFF_ADJUST_FILEHDR_OUT_PRE and
108060484Sobrien	COFF_ADJUST_FILEHDR_OUT_POST if they are defined.
108160484Sobrien	(coff_swap_aux_in): Invoke COFF_ADJUST_AUX_IN_PRE and
108260484Sobrien	COFF_ADJUST_AUX_IN_POST if they are defined.
108360484Sobrien	(coff_swap_aux_out): Invoke COFF_ADJUST_AUX_OUT_PRE and
108460484Sobrien	COFF_ADJUST_AUX_OUT_POST if they are defined.
108560484Sobrien	(coff_swap_scnhdr_in): Invoke COFF_ADJUST_SCNHDR_IN_PRE and
108660484Sobrien	COFF_ADJUST_SCNHDR_IN_POST if they are defined.
108760484Sobrien	(coff_swap_scnhdr_out): Invoke COFF_ADJUST_SCNHDR_OUT_PRE and
108860484Sobrien	COFF_ADJUST_SCNHDR_OUT_POST if they are defined.
108960484Sobrien	* targets.c (go32stubbedcoff_vec): Declare.
109060484Sobrien	(bfd_target_vector): Add go32stubbedcoff_vec.
109160484Sobrien	* configure.in (go32coff_vec): New target vector.
109260484Sobrien	(go32stubbedcoff_vec): Likewise.
109360484Sobrien	* config.bfd (i[3456]86-*-msdosdjgpp*): New target.
109460484Sobrien	(i[3456]86-*-go32*): Change to be like new msdosdjgpp*.
109560484Sobrien	* Makefile.in: Rebuild dependencies.
109660484Sobrien 	(BFD32_BACKENDS): Add coff-stubgo32.o.
109760484Sobrien	(BFD32_BACKENDS_CFILES): Add coff-stubgo32.c.
109860484Sobrien	(HFILES): Add go32stub.h.
109960484Sobrien
110060484SobrienTue Jul 22 15:09:12 1997  Ian Lance Taylor  <ian@cygnus.com>
110160484Sobrien
110260484Sobrien	* configure.in: Check for fdopen.
110360484Sobrien	* configure, config.in: Rebuild.
110460484Sobrien	* opncls.c (bfd_fdopenr): Check HAVE_FDOPEN rather than VMS or
110560484Sobrien	__GO32__.  Reindent a bit.
110660484Sobrien
110760484SobrienSun Jul 20 20:05:20 1997  Ian Lance Taylor  <ian@cygnus.com>
110860484Sobrien
110960484Sobrien	* sunos.c (sunos_create_dynamic_sections): Set SEC_LINKER_CREATED
111060484Sobrien	flag for newly created sections.
111160484Sobrien	(sunos_add_dynamic_symbols): Don't discard newly created sections
111260484Sobrien	if shared library is dynobj.
111360484Sobrien
111460484SobrienMon Jul 14 15:33:55 1997  Ian Lance Taylor  <ian@cygnus.com>
111560484Sobrien
111660484Sobrien	* elf.c (map_sections_to_segments): When checking whether
111760484Sobrien	including a section in a segment would force us to skip a page,
111860484Sobrien	align the address of the next segment to avoid wraparound
111960484Sobrien	problems.
112060484Sobrien
112160484SobrienTue Jul  8 12:11:29 1997  Fred Fish  <fnf@cygnus.com>
112260484Sobrien
112360484Sobrien	* coffcode.h (coff_write_object_contents): Initialize
112460484Sobrien 	target id field to TIC80_TARGET_ID.
112560484Sobrien	* coffswap.h (coff_swap_filehdr_out): Swap out target id field
112660484Sobrien 	if used.
112760484Sobrien	(coff_swap_filehdr_in): Swap in target id field if used.
112860484Sobrien
112960484SobrienMon Jul  7 16:41:20 1997  Ian Lance Taylor  <ian@cygnus.com>
113060484Sobrien
113160484Sobrien	* coff-i386.c (coff_i386_is_local_label_name): New static function
113260484Sobrien	if TARGET_UNDERSCORE.
113360484Sobrien	(coff_bfd_is_local_label_name): Define if TARGET_UNDERSCORE.
113460484Sobrien	(i386coff_vec): Add SEC_CODE and SEC_DATA to section_flags.
113560484Sobrien
113660484SobrienMon Jun 30 14:29:26 1997  Ian Lance Taylor  <ian@cygnus.com>
113760484Sobrien
113860484Sobrien	* elf32-m68k.c (howto_table): Use complain_overflow_bitfield, not
113960484Sobrien	complain_overflow_signed, for 32 bit PC relative relocations.
114060484Sobrien
114160484SobrienThu Jun 26 01:26:31 1997  Ian Lance Taylor  <ian@cygnus.com>
114260484Sobrien
114360484Sobrien	* elflink.h (elf_link_add_object_symbols): When a version
114460484Sobrien	indirection symbol is overridden, make the original symbol point
114560484Sobrien	at the real overriding symbol.
114660484Sobrien
114760484Sobrien	* elf.c (bfd_elf_string_from_elf_section): Check for an invalid
114860484Sobrien	string index.
114960484Sobrien
115060484Sobrien	* elflink.h (elf_link_output_extsym): Use the right section for a
115160484Sobrien	common symbol.
115260484Sobrien	* elf32-mips.c (mips_elf_link_output_symbol_hook): If a common
115360484Sobrien	symbol was in .scommon, mark it as SHN_MIPS_SCOMMON.
115460484Sobrien
115560484SobrienWed Jun 25 12:43:10 1997  H.J. Lu  <hjl@gnu.ai.mit.edu>
115660484Sobrien
115760484Sobrien	* elflink.h (elf_merge_symbols): Resolve indirect and warning
115860484Sobrien	symbols before checking for new symbols.
115960484Sobrien
116060484Sobrien	* elfcore.h (elf_corefile_note): Move out of HAVE_SYS_PROCFS_H.
116160484Sobrien
116260484SobrienTue Jun 24 11:20:43 1997  Ian Lance Taylor  <ian@cygnus.com>
116360484Sobrien
116460484Sobrien	* coffgen.c (coff_object_p): Read the f_opthdr bytes from the
116560484Sobrien	file, not aoutsz bytes (they are different in XCOFF .o files).
116660484Sobrien
116760484Sobrien	* xcofflink.c (xcoff_link_add_symbols): Permit symbols to be
116860484Sobrien	redefined by objects included from archives.
116960484Sobrien
117060484SobrienMon Jun 23 18:03:27 1997  Ian Lance Taylor  <ian@cygnus.com>
117160484Sobrien
117260484Sobrien	* elflink.h (elf_merge_symbol): In the case of a new defined
117360484Sobrien	symbol overriding an old defined symbol, return the hash table
117460484Sobrien	entry which we modify, even if it is the target of an
117560484Sobrien	indirection.
117660484Sobrien	(elf_link_add_object_symbols): If the real name of the symbol gets
117760484Sobrien	overridden, convert the versioned symbol into an indirect symbol
117860484Sobrien	to the real symbol.
117960484Sobrien
118060484Sobrien	* elflink.h (elf_merge_symbol): New static function, broken out of
118160484Sobrien	elf_link_add_object_symbols.
118260484Sobrien	(elf_link_add_object_symbols): Call it.
118360484Sobrien
118460484SobrienSun Jun 22 19:40:57 1997  Ian Lance Taylor  <ian@cygnus.com>
118560484Sobrien
118660484Sobrien	* coff-i386.c (i3coff_object_p): If COFF_IMAGE_WITH_PE, hack to
118760484Sobrien	handle case where COFF filehdr does not immediately follow PE
118860484Sobrien	header.
118960484Sobrien	* coffgen.c (coff_object_p): Remove useless seek to current
119060484Sobrien	location.
119160484Sobrien
119260484SobrienWed Jun 18 19:03:38 1997  Ian Lance Taylor  <ian@cygnus.com>
119360484Sobrien
119460484Sobrien	* linker.c (link_action): Change COMMON_ROW/indr to from CREF to
119560484Sobrien	REFC.
119660484Sobrien
119760484SobrienTue Jun 17 11:55:02 1997  Ian Lance Taylor  <ian@cygnus.com>
119860484Sobrien
119960484Sobrien	* cofflink.c (_bfd_coff_link_input_bfd): If stripping debugging
120060484Sobrien	symbols, skip N_ABS symbols with debugging storage classes.
120160484Sobrien
120260484SobrienMon Jun 16 18:56:27 1997  Geoff Keating  <geoffk@ozemail.com.au>
120360484Sobrien
120460484Sobrien	* elf32-ppc.c (ppc_elf_relocate_section): Don't emit R_PPC_REL*
120560484Sobrien	relocs in shared libraries which refer to local symbols.  Cope
120660484Sobrien	with addend when processing a GOT relocation.
120760484Sobrien
120860484Sobrien	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Only create symbols
120960484Sobrien	for sections that the linker didn't create.
121060484Sobrien	(ppc_elf_finish_dynamic_sections): Only try to write out a section
121160484Sobrien	symbol if it was created in ppc_elf_size_dynamic_sections.
121260484Sobrien	(ppc_elf_relocate_section): Complain if we have to generate a reloc
121360484Sobrien	relative to a section for which we didn't output a symbol.
121460484Sobrien
121560484Sobrien	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Clean up.  PLT
121660484Sobrien	relocs are 'rela' relocs, like everything else.  .rela.plt is not
121760484Sobrien	a read-only section, so we don't have to special-case it.
121860484Sobrien
121960484Sobrien	* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Entries in the
122060484Sobrien	.rela.bss section are (of course) 'rela' relocs not 'rel' relocs.
122160484Sobrien
122260484Sobrien	* elf32-ppc.c (ppc_elf_check_relocs): Initialise srelgot.
122360484Sobrien	(ppc_elf_relocate_section): @got offsets are 4 from start of the
122460484Sobrien	actual .got section.
122560484Sobrien	* elflink.c (_bfd_elf_create_got_section): The three reserved
122660484Sobrien	words start from the symbol '_GLOBAL_OFFSET_TABLE_'.
122760484Sobrien
122860484Sobrien	* elf32-ppc.c (ppc_elf_size_dynamic_sections): '.rela' is 5
122960484Sobrien	characters, not 4.
123060484Sobrien
123160484Sobrien	* elf32-ppc.c (ppc_elf_check_relocs): Use
123260484Sobrien	_bfd_elf_create_got_section to create the GOT rather than
123360484Sobrien	ppc_elf_create_linker_section. Create the '.rela.got' section
123460484Sobrien	ourselves.
123560484Sobrien	(ppc_elf_finish_dynamic_symbol): Set up GOT relocations when a
123660484Sobrien	symbol has a GOT entry.
123760484Sobrien	(ppc_elf_relocate_section): Record when a symbol is used through
123860484Sobrien	the GOT, and allocate space in the GOT for each such symbol.
123960484Sobrien	(ppc_elf_adjust_dynamic_symbol): Delete unused .got.plt stuff.
124060484Sobrien	(ppc_elf_create_linker_section): Delete unused LINKER_SECTION_GOT
124160484Sobrien	stuff.
124260484Sobrien
124360484Sobrien	* elf32-ppc.c (ppc_elf_howto_raw): GOT16_HA relocs should be
124460484Sobrien	treated in a similar way to ADDR16_HA relocs.
124560484Sobrien	(ppc_elf_relocate_section): PLTREL24 relocs do not get copied into
124660484Sobrien	shared objects; the linker must deal with them.
124760484Sobrien	(ppc_elf_create_linker_section): Stop setting
124860484Sobrien	_GLOBAL_OFFSET_TABLE_ to the wrong value; delete unused
124960484Sobrien	LINKER_SECTION_PLT stuff.
125060484Sobrien	(ppc_elf_check_relocs): Delete unused LINKER_SECTION_PLT stuff.
125160484Sobrien	(ppc_elf_finish_dynamic_sections): Use BFD calls to get GOT
125260484Sobrien	section, not ELF-specific calls.
125360484Sobrien	(elf_backend_plt_not_loaded): Set to 1.
125460484Sobrien	(elf_backend_got_symbol_offset): Set to 4.
125560484Sobrien	* elf-bfd.h (elf_backend_data): Add 'plt_not_loaded' member
125660484Sobrien	for when ld.so fills in the PLT; and 'got_symbol_offset' member.
125760484Sobrien	* elflink.c (_bfd_elf_create_dynamic_sections): Apply
125860484Sobrien	plt_not_loaded member.
125960484Sobrien	(_bfd_elf_create_got_section): Apply got_symbol_offset.
126060484Sobrien	* elfxx-target.h (elf_backend_plt_not_loaded): Set default to
126160484Sobrien	'loaded'.
126260484Sobrien	(elf_backend_G_O_T_offset): Set default to 0.
126360484Sobrien	(elfNN_bed): Set added fields.
126460484Sobrien
126560484Sobrien	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Was setting
126660484Sobrien	DT_RELENT in shared objects; should be DT_RELAENT.
126760484Sobrien
126860484Sobrien	* elf32-ppc.c (ppc_elf_relocate_section): Propagate
126960484Sobrien	R_PPC_ADDR16_HA relocs to shared objects. Cope with case where
127060484Sobrien	such a reloc (in a non-shared object) refers to a symbol that's
127160484Sobrien	not defined.
127260484Sobrien
127360484SobrienMon Jun 16 14:42:14 1997  H.J. Lu  <hjl@gnu.ai.mit.edu>
127460484Sobrien
127560484Sobrien	* elfcode.h (put_signed_word): Define.
127660484Sobrien	(get_signed_word): Define.
127760484Sobrien	(elf_swap_reloca_in): Use get_signed_word for the r_addend field.
127860484Sobrien	(elf_swap_reloca_out): Use put_signed_word for the r_addend
127960484Sobrien	field.
128060484Sobrien	* elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Use
128160484Sobrien	bfd_get_signed_32 to set the r_addend field.
128260484Sobrien	* elf64-mips.c (mips_elf64_swap_reloca_in): Use
128360484Sobrien	bfd_h_get_signed_64 to set the r_addend field.
128460484Sobrien
128560484SobrienMon Jun 16 12:31:29 1997  Ian Lance Taylor  <ian@cygnus.com>
128660484Sobrien
128760484Sobrien	* elf32-i386.c (elf_i386_relocate_section): When generating a
128860484Sobrien	shared library, do the relocation if the input section is not
128960484Sobrien	allocated in memory.
129060484Sobrien
129160484Sobrien	* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Call
129260484Sobrien	elf_link_assign_sym_version before elf_adjust_dynamic_symbol.
129360484Sobrien	(elf_fix_symbol_flags): New static function, broken out of
129460484Sobrien	elf_adjust_dynamic_symbol.
129560484Sobrien	(elf_adjust_dynamic_symbol): Call elf_fix_symbol_flags.
129660484Sobrien	(elf_link_assign_sym_version): Likewise.  Permit a symbol to be
129760484Sobrien	forced local even if NEEDS_PLT is set.  When forcing a symbol to
129860484Sobrien	be local, clear NEEDS_PLT.
129960484Sobrien	(elf_link_output_extsym): Remove unused local bed.
130060484Sobrien
130160484SobrienWed Jun 11 22:44:20 1997  Jeffrey A Law  (law@cygnus.com)
130260484Sobrien
130360484Sobrien	* elf32-mn10300.c (elf32_mn10300_link_hash_entry): New structure
130460484Sobrien	for derived elf linker hash table entries.  References to
130560484Sobrien	elf_link_hash_entry changed appropriately.
130660484Sobrien	(elf32_mn10300_link_hash_table): New structure for derived elf
130760484Sobrien	linker hash table.
130860484Sobrien	(elf32_mn10300_hash_table): Define.
130960484Sobrien	(elf32_mn10300_link_hash_traverse): Likewise.
131060484Sobrien	(elf32_mn10300_link_hash_newfunc): New function.
131160484Sobrien	(elf32_mn10300_link_hash_table_create): Likewise.
131260484Sobrien	(elf32_mn10300_finish_hash_table_entry): Likewise.
131360484Sobrien	(mn10300_elf_relax_section): Handle "call" -> "calls", removal
131460484Sobrien	of prologue code, and call:32->call:16 relaxing.
131560484Sobrien	(compute_function_info: New function.
131660484Sobrien	(bfd_elf32_bfd_ilink_hash_table_create): Define.
131760484Sobrien
131860484SobrienWed Jun 11 00:00:07 1997  Ian Lance Taylor  <ian@cygnus.com>
131960484Sobrien
132060484Sobrien	* elflink.h (elf_link_output_extsym): Call finish_dynamic_symbol
132160484Sobrien	for a symbol which is being forced to be local.
132260484Sobrien	* elf32-i386.c (elf_i386_relocate_section): Write out the
132360484Sobrien	relocation value for a GOT reloc for a symbol which is turning
132460484Sobrien	into a local symbol.
132560484Sobrien	(elf_i386_finish_dynamic_symbol): If a symbol is turning into a
132660484Sobrien	local symbol, write out a RELATIVE reloc rather than a GLOB_DAT
132760484Sobrien	reloc.
132860484Sobrien	* elf32-m68k.c, elf32-sparc.c: Corresponding changes.
132960484Sobrien
133060484Sobrien	* elf32-i386.c (elf_i386_relocate_section): Get the relocation
133160484Sobrien	value if the symbol is turning into a local symbol.
133260484Sobrien	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
133360484Sobrien	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
133460484Sobrien
133560484Sobrien1997-06-10 22:58  Ulrich Drepper  <drepper@cygnus.com>
133660484Sobrien
133760484Sobrien	* elflink.h (elf_link_add_object_symbols): Also read verneed
133860484Sobrien	information by calling `_bfd_elf_slurp_version_tables'.
133960484Sobrien	(elf_link_add_object_symbols): For undefined symbols look for
134060484Sobrien	version information in the verneed records.
134160484Sobrien	(elf_link_add_object_symbols): Use soname of shared object
134260484Sobrien	for verneed record if it is available.
134360484Sobrien
134460484SobrienTue Jun 10 11:13:03 1997  H.J. Lu  <hjl@gnu.ai.mit.edu>
134560484Sobrien
134660484Sobrien	* cpu-arm.c: Add prototypes for compatible and scan.
134760484Sobrien	* cofflink.c: Add prototype for mark_relocs.
134860484Sobrien
134960484Sobrien	* archive.c (bfd_special_undocumented_glue): Change filename to
135060484Sobrien	const pointer.  Add prototype.
135160484Sobrien
135260484SobrienMon Jun  9 12:34:21 1997  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
135360484Sobrien
135460484Sobrien	* elflink.h (elf_link_add_object_symbols): Ignore relocations of
135560484Sobrien	sections that will be discarded.
135660484Sobrien
135760484Sobrien1997-06-06 22:58  Ulrich Drepper  <drepper@cygnus.com>
135860484Sobrien
135960484Sobrien	* elflink.h (elf_link_find_version_dependencies): When searching
136060484Sobrien	for known version symbol skip non-matching verdef records, not
136160484Sobrien	matching records.
136260484Sobrien
136360484SobrienThu Jun  5 15:52:45 1997  Ian Lance Taylor  <ian@cygnus.com>
136460484Sobrien
136560484Sobrien	* cofflink.c (_bfd_coff_generic_relocate_section): Write a long,
136660484Sobrien	not a bfd_vma, to the base file, to match how dlltool reads it.
136760484Sobrien
136860484SobrienTue Jun  3 16:57:45 1997  Nick Clifton  <nickc@cygnus.com>
136960484Sobrien
137060484Sobrien	* reloc.c: Add thumb relocations.
137160484Sobrien
137260484Sobrien	* bfd-in2.h: Add Thumb relocations.
137360484Sobrien
137460484Sobrien	* libbfd.h: Add Thumb relocations.
137560484Sobrien
137660484SobrienMon Jun  2 10:41:52 1997  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
137760484Sobrien
137860484Sobrien	* cpu-m68k.c (arch_info_struct): Fix 68060 cpu name.
137960484Sobrien
138060484SobrienFri May 30 12:46:27 1997  Ian Lance Taylor  <ian@cygnus.com>
138160484Sobrien
138260484Sobrien	* elf32-sparc.c (elf32_sparc_size_dynamic_sections): Set dynindx
138360484Sobrien	for a section even if it is not loaded.
138460484Sobrien
138560484Sobrien	* cofflink.c (coff_link_add_symbols): If PE file, don't subtract
138660484Sobrien	section VMA.
138760484Sobrien	(_bfd_coff_link_input_bfd): Separate section VMA handling for
138860484Sobrien	input and output files.
138960484Sobrien	(_bfd_coff_generic_relocate_section): Check whether input file,
139060484Sobrien	not output file, is a PE file.
139160484Sobrien
139260484SobrienWed May 28 15:48:43 1997  Nick Clifton  <nickc@cygnus.com>
139360484Sobrien
139460484Sobrien	* coff-arm.c: (coff_arm_bfd_set_private_flags): Make static.
139560484Sobrien
139660484SobrienWed May 28 16:16:04 1997  Ian Lance Taylor  <ian@cygnus.com>
139760484Sobrien
139860484Sobrien	* coff-i386.c (coff_i386_reloc): Don't just exit if we see an
139960484Sobrien	R_IMAGEBASE reloc.
140060484Sobrien
140160484SobrienWed May 28 09:48:43 1997  Nick Clifton  <nickc@cygnus.com>
140260484Sobrien
140360484Sobrien	* cpu-arm.c (compatible): Add test for supersets of ARM
140460484Sobrien	architectures.
140560484Sobrien
140660484SobrienTue May 27 19:42:03 1997  Bob Manson  <manson@charmed.cygnus.com>
140760484Sobrien
140860484Sobrien	* cofflink.c (_bfd_coff_final_link): Initialize global_to_static
140960484Sobrien	member.
141060484Sobrien
141160484SobrienTue May 27 14:34:08 1997  Nick Clifton  <nickc@cygnus.com>
141260484Sobrien
141360484Sobrien	* coff-arm.c (coff_arm_bfd_set_private_flags): Make global.  It is
141460484Sobrien	called directly by gas/config/tc-arm.c.
141560484Sobrien
141660484SobrienTue May 27 15:58:53 1997  Richard Henderson  <rth@tamu.edu>
141760484Sobrien
141860484Sobrien	* elf64-alpha.c (PLT_ENTRY_*): Use a new thread-safe format.
141960484Sobrien	(elf64_alpha_finish_dynamic_symbol): Fill it in properly.
142060484Sobrien
142160484SobrienMon May 26 14:05:13 1997  Ian Lance Taylor  <ian@cygnus.com>
142260484Sobrien
142360484Sobrien	* coff-ppc.c (coff_ppc_relocate_section): If PE file, don't add
142460484Sobrien	section VMA.
142560484Sobrien
142660484SobrienMon May 26 10:57:48 1997  Fred Fish  <fnf@cygnus.com>
142760484Sobrien
142860484Sobrien	* peicode.h (coff_bfd_print_private_bfd_data): #undef before #define.
142960484Sobrien	(coff_bfd_copy_private_bfd_data): Ditto.
143060484Sobrien	* coff-arm.c (coff_arm_bfd_merge_private_bfd_data): Make static.
143160484Sobrien	(coff_arm_bfd_print_private_bfd_data): Ditto.
143260484Sobrien	(coff_arm_bfd_set_private_flags): Ditto.
143360484Sobrien	(coff_arm_bfd_copy_private_bfd_data): Ditto.
143460484Sobrien
143560484SobrienFri May 23 15:14:58 1997  Fred Fish  <fnf@cygnus.com>
143660484Sobrien
143760484Sobrien	* libcoff-in.h (struct coff_final_link_info): Add boolean
143860484Sobrien	global_to_static member for support of task linking.
143960484Sobrien	(_bfd_coff_write_task_globals): Add prototype.
144060484Sobrien	* libcoff.h: Regenerate.
144160484Sobrien	* coffcode.h (coff_write_object_contents): Use #ifdef to
144260484Sobrien	check RS6000COFF_C, to be consistent with all other uses
144360484Sobrien	in this file.
144460484Sobrien	* cofflink.c (_bfd_coff_final_link): If doing task linking,
144560484Sobrien	call _bfd_coff_write_task_globals.
144660484Sobrien	(_bfd_coff_link_input_bfd): If doing task linking, convert
144760484Sobrien	global functions to static.
144860484Sobrien	(_bfd_coff_write_global_sym): If doing task linking, convert
144960484Sobrien	global variables to static.
145060484Sobrien	(_bfd_coff_write_task_globals): New function.
145160484Sobrien	* coff-tic80.c (TIC80COFF): Define this instead of just TIC80.
145260484Sobrien	(C_AUTOARG): #undef since it clashes with C_UEXT.
145360484Sobrien	(C_LASTENT): #undef since it clashes with C_STATLAB.
145460484Sobrien	* coffcode.h (coff_write_object_contents): Use TIC80COFF
145560484Sobrien	rather than TIC80.
145660484Sobrien	(coff_slurp_symbol_table): Use C_SYSTEM.  Hide C_AUTOARG use
145760484Sobrien	when TIC80COFF defined (clashes with C_UEXT).  Explicitly
145860484Sobrien	recognize C_UEXT, C_STATLAB, and C_EXTLAB as unsupported.
145960484Sobrien
146060484SobrienFri May 23 12:38:24 1997  Ian Lance Taylor  <ian@cygnus.com>
146160484Sobrien
146260484Sobrien	* coff-tic80.c (tic80_howto_table): Change overflow check for most
146360484Sobrien	PP relocations to complain_overflow_dont.
146460484Sobrien
146560484SobrienThu May 22 20:22:14 1997  Ian Lance Taylor  <ian@cygnus.com>
146660484Sobrien
146760484Sobrien	* coff-tic80.c (tic80_howto_table): Add PP relocations.  Change
146860484Sobrien	name of R_RELLONG to "RELLONG".  Set rightshift and complain for
146960484Sobrien	M_PPCR.
147060484Sobrien	(ppbase_reloc, glob15_reloc): New static functions.
147160484Sobrien	(glob16_reloc, local16_reloc): New static functions.
147260484Sobrien	(rtype2howto): Handle all relocation types.
147360484Sobrien	(coff_tic80_relocate_section): New static function.
147460484Sobrien	(coff_relocate_section): Define to coff_tic80_relocate_section.
147560484Sobrien	* Makefile.in (coff-tic80.o): Depends upon include/coff/tic80.h.
147660484Sobrien
147760484SobrienWed May 21 17:15:50 1997  Ian Lance Taylor  <ian@cygnus.com>
147860484Sobrien
147960484Sobrien	* coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE or
148060484Sobrien	COFF_IMAGE_WITH_PE, don't subtract the section VMA from the symbol
148160484Sobrien	value.
148260484Sobrien	* coffgen.c (fixup_symbol_value): Add abfd parameter.  Change all
148360484Sobrien	callers.  If PE file, don't add section VMA.
148460484Sobrien	(coff_write_alien_symbol): If PE file, don't add section VMA.
148560484Sobrien	* cofflink.c (_bfd_coff_link_input_bfd): Likewise.
148660484Sobrien	(_bfd_coff_write_global_sym): Likewise.
148760484Sobrien	(_bfd_coff_generic_relocate_section): Likewise.
148860484Sobrien
148960484Sobrien	* peicode.h: Add & 0xffffffff when using ImageBase in case bfd_vma
149060484Sobrien	is 64 bits.
149160484Sobrien
149260484SobrienWed May 21 09:58:10 1997  Nick Clifton  <nickc@cygnus.com>
149360484Sobrien
149460484Sobrien	* cofflink.c (mark_relocs): Add new function to mark symbols which
149560484Sobrien	are used by relocations.
149660484Sobrien	(_bfd_coff_link_input_bfd): Add call to mark_relocs() and code to
149760484Sobrien	suppress the skipping of symbols that have thus been marked.
149860484Sobrien
149960484SobrienTue May 20 18:45:26 1997  Ian Lance Taylor  <ian@cygnus.com>
150060484Sobrien
150160484Sobrien	* coff-sh.c (sh_merge_private_data): New static function.
150260484Sobrien	(coff_bfd_merge_private_bfd_data): Define.
150360484Sobrien
150460484SobrienMon May 19 14:46:00 1997  Mark Alexander  <marka@cygnus.com>
150560484Sobrien
150660484Sobrien	* coff-tic80.c: Remove unnecessary #ifdefs.
150760484Sobrien	* config.bfd: Set targ_underscore to yes for tic80.
150860484Sobrien
150960484SobrienMon May 19 14:26:36 1997  Mark Alexander  <marka@cygnus.com>
151060484Sobrien
151160484Sobrien	* coff-tic80.c (NAMES_HAVE_UNDERSCORE): Define (fixes problem
151260484Sobrien	with unresolved external symbols in GDB).
151360484Sobrien
151460484SobrienFri May 16 10:23:03 1997  Jeffrey A Law  (law@cygnus.com)
151560484Sobrien
151660484Sobrien	* elf-m10300.c (elf32_mn10300_relax_section): Read in all
151760484Sobrien	the symbols associated with each BFD.
151860484Sobrien	(mn10300_elf_relax_delete_bytes): Don't adjust the same symbol
151960484Sobrien	more than once.
152060484Sobrien	* elf-m10200.c: Likewise.
152160484Sobrien	* elf32-m32r.c: Likewise.
152260484Sobrien	* elf32-sh.c: Likewise.
152360484Sobrien
152460484SobrienFri May 16 12:10:52 1997  Ian Lance Taylor  <ian@cygnus.com>
152560484Sobrien
152660484Sobrien	* elflink.h (elf_link_add_object_symbols): Don't decrease the
152760484Sobrien	alignment of a common symbol.  If two symbols that look like
152860484Sobrien	common symbols are found in two shared libraries, and the size is
152960484Sobrien	different, use the larger size, and warn if --warn-common.  If a
153060484Sobrien	common symbol overrides a definition in a shared library, set the
153160484Sobrien	size to the larger size, and warn if --warn-common.
153260484Sobrien
153360484SobrienThu May 15 14:31:28 1997  Nick Clifton  <nickc@cygnus.com>
153460484Sobrien
153560484Sobrien	* cpu-arm.c (compatible):  Allow default machine to be polymorphed
153660484Sobrien	into any other machine type.
153760484Sobrien
153860484Sobrien	* coffcode.h (coff_set_flags):  Initialise flags variable to 0.
153960484Sobrien
154060484Sobrien	* coff-arm.c (coff_arm_bfd_merge_private_bfd_data):  When merging
154160484Sobrien	data into an unitialised destination set its machine type as well.
154260484Sobrien
154360484SobrienThu May 15 16:40:20 1997  Ian Lance Taylor  <ian@cygnus.com>
154460484Sobrien
154560484Sobrien	* elflink.h (elf_link_add_object_symbols): Force ELF symbol size
154660484Sobrien	to common symbol size.  Consistently treat uninitialized symbols
154760484Sobrien	in shared objects as common symbols.
154860484Sobrien
154960484SobrienFri May  9 10:15:27 1997  Nick Clifton  <nickc@cygnus.com>
155060484Sobrien
155160484Sobrien	* archures.c (constants):  Added new constants to identify the
155260484Sobrien	type of the ARM architecture: bfd_mach_arm_2, bfd_mach_arm_2a,
155360484Sobrien	bfd_mach_arm_3,	bfd_mach_arm_3M, bfd_mach_arm_4 and bfd_mach_arm_4T.
155460484Sobrien
155560484Sobrien	* bfd-in2.h (constants):   Added new constants to identify
155660484Sobrien	the type of the ARM architecture: bfd_mach_arm_2, bfd_mach_arm_2a,
155760484Sobrien	bfd_mach_arm_3, bfd_mach_arm_3M, bfd_mach_arm_4 and
155860484Sobrien	bfd_mach_arm_4T.  This file is auto-magically generated from the
155960484Sobrien	archures.c file.  This update is just to save work.
156060484Sobrien
156160484Sobrien	* coff-arm.c (coff_arm_bfd_merge_private_bfd_data,
156260484Sobrien	coff_arm_bfd_print_private_bfd_data,
156360484Sobrien	coff_arm_bfd_set_private_flags,
156460484Sobrien	coff_arm_bfd_copy_private_bfd_data): Added these new functions.
156560484Sobrien	(global): Macro redefinitions set up to use these new functions.
156660484Sobrien
156760484Sobrien	* coffcode.h (coff_mkobject_hook): Added call to
156860484Sobrien	coff_arm_bfd_set_private_flags().
156960484Sobrien	(coff_set_arch_mach_hook): Added code to set machine type based on
157060484Sobrien	bits stored in internal flags.
157160484Sobrien  	(coff_set_flags): Added code to set the new bits in the flags
157260484Sobrien	field based on the machine number.
157360484Sobrien	(function definition macros): Made all function definition macros
157460484Sobrien	conditional so that they can be overridden by target specific
157560484Sobrien	files.
157660484Sobrien
157760484Sobrien	* cpu-arm.c (compatible): Added this function.  (arch_info_struct):
157860484Sobrien	Structure extended to include new types, one each for ARMv2,
157960484Sobrien	ARMv2a, ARMv3, ARMv3M, ARMv4 and ARMv4T.
158060484Sobrien
158160484Sobrien	* libcoff-in.h (struct coff_tdata):  Added flags field.
158260484Sobrien
158360484SobrienFri May  9 17:40:02 1997  Ian Lance Taylor  <ian@cygnus.com>
158460484Sobrien
158560484Sobrien	* config.bfd (i[3456]86-*-gnu*): Don't include Mach support.
158660484Sobrien
158760484Sobrien	* config.bfd: Change #if 0 around uses of host_aout_vec to #if
158860484Sobrien	HAVE_host_aout_vec.
158960484Sobrien
159060484SobrienMon May  5 13:57:32 1997  Mike Meissner  <meissner@cygnus.com>
159160484Sobrien
159260484Sobrien	* coffgen.c (coff_find_nearest_line): If there are no syments,
159360484Sobrien	just return false.
159460484Sobrien
159560484SobrienMon May  5 18:18:45 1997  Philip Blundell  <pjb27@cam.ac.uk>
159660484Sobrien
159760484Sobrien	* config.bfd: cope with '*-*-linux-gnuaout' targets.
159860484Sobrien
159960484SobrienThu May  1 11:31:12 1997  Ian Lance Taylor  <ian@cygnus.com>
160060484Sobrien
160160484Sobrien	* targmatch.sed: Add explicit \n characters to work around bug in
160260484Sobrien	HP/UX 10.20 sed program.
160360484Sobrien
160460484SobrienWed Apr 30 12:27:03 1997  Ian Lance Taylor  <ian@cygnus.com>
160560484Sobrien
160660484Sobrien	* elf.c (copy_private_bfd_data): Cast csecs to avoid sign
160760484Sobrien	extension problems.
160860484Sobrien
160960484SobrienTue Apr 22 12:06:08 1997  Ian Lance Taylor  <ian@cygnus.com>
161060484Sobrien
161160484Sobrien	* Makefile.in (do_maintainer_clean): Don't remove bfd-in2.h.
161260484Sobrien
161360484SobrienMon Apr 21 11:21:31 1997  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
161460484Sobrien
161560484Sobrien	* elf32-m68k.c: Follow the last changes in elf32-i386.c:
161660484Sobrien	(struct elf_m68k_pcrel_relocs_copied, struct
161760484Sobrien	elf_m68k_link_hash_entry, struct elf_m68k_link_hash_table,
161860484Sobrien	elf_m68k_link_hash_traverse, elf_m68k_hash_table,
161960484Sobrien	elf_m68k_link_hash_newfunc, elf_m68k_link_hash_table_create,
162060484Sobrien	elf_m68k_discard_copies, bfd_elf32_bfd_link_hash_table_create):
162160484Sobrien	New definitions.
162260484Sobrien	(elf_m68k_check_relocs): If linking with -Bsymbolic, don't copy
162360484Sobrien	PC relative relocs for a global symbol defined in a regular
162460484Sobrien	object, and count the number of PC relative relocs copied for any
162560484Sobrien	global symbol.
162660484Sobrien	(elf_m68k_size_dynamic_sections): If linking with -Bsymbolic,
162760484Sobrien	traverse with elf_m68k_discard_copies.
162860484Sobrien
162960484SobrienSat Apr 19 22:50:14 1997  Ian Lance Taylor  <ian@cygnus.com>
163060484Sobrien
163160484Sobrien	* elf32-i386.c (elf_i386_check_relocs): Only count PC relative
163260484Sobrien	relocs.  From Jamie Lokier <jamie@rebellion.co.uk>.
163360484Sobrien
163460484Sobrien	* coffcode.h (coff_compute_section_file_positions): Force the
163560484Sobrien	potential last byte in the file to be written out when
163660484Sobrien	COFF_IMAGE_WITH_PE.
163760484Sobrien
163860484SobrienThu Apr 17 13:46:56 1997  Per Fogelstrom  <pefo@openbsd.org>
163960484Sobrien
164060484Sobrien	* configure.host (mips*-*-openbsd*): New host.
164160484Sobrien
164260484SobrienThu Apr 17 11:10:54 1997  Ian Lance Taylor  <ian@cygnus.com>
164360484Sobrien
164460484Sobrien	* elflink.h (elf_link_add_object_symbols): Only subtract the
164560484Sobrien	section VMA from the symbol value if this is a fully linked file.
164660484Sobrien
164760484Sobrien	* elf32-i386.c (struct elf_i386_pcrel_relocs_copied): Define.
164860484Sobrien	(struct elf_i386_link_hash_entry): Define.
164960484Sobrien	(struct elf_i386_link_hash_table): Define.
165060484Sobrien	(elf_i386_link_hash_traverse): Define.
165160484Sobrien	(elf_i386_hash_table): Define.
165260484Sobrien	(elf_i386_link_hash_newfunc): New static function.
165360484Sobrien	(elf_i386_link_hash_table_create): New static function.
165460484Sobrien	(elf_i386_check_relocs): If linking with -Bsymbolic, don't copy
165560484Sobrien	PC relative relocs for a global symbol defined in a regular
165660484Sobrien	object, and count the number of PC relative relocs copied for any
165760484Sobrien	global symbol.
165860484Sobrien	(elf_i386_size_dynamic_sections): If linking with -Bsymbolic,
165960484Sobrien	traverse with elf_i386_discard_copies.
166060484Sobrien	(elf_i386_discard_copies): New static function.
166160484Sobrien	(bfd_elf32_bfd_link_hash_table_create): Define.
166260484Sobrien
166360484Sobrien	From Gordon W. Ross <gwr@mc.com>:
166460484Sobrien	* aoutf1.h (MY_entry_is_text_address): Define if not defined.
166560484Sobrien	(sunos4_aout_backend): Use MY_entry_is_text_address.
166660484Sobrien
166760484SobrienWed Apr 16 12:43:32 1997  Martin Hunt  <hunt@cygnus.com>
166860484Sobrien
166960484Sobrien	* elf32-d30v.c (elf_d30v_howto_table): Changed size of
167060484Sobrien	R_D30V_32_NORMAL to 2 (4 bytes).
167160484Sobrien
167260484SobrienWed Apr 16 14:02:29 1997  Ian Lance Taylor  <ian@cygnus.com>
167360484Sobrien
167460484Sobrien	From Gordon W. Ross <gwr@mc.com>:
167560484Sobrien	* netbsd.h (N_SHARED_LIB): Define.
167660484Sobrien	(SEGMENT_SIZE): Don't define.
167760484Sobrien	* m68knetbsd.c (SEGMENT_SIZE): Don't define (revert change of
167860484Sobrien	April 11).
167960484Sobrien	* sparcnetbsd.c (TARGET_PAGE_SIZE): Define as 0x2000.
168060484Sobrien	(SEGMENT_SIZE): Don't define.
168160484Sobrien
168260484Sobrien	* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Set .rela.bss size
168360484Sobrien	to sizeof Rela structure, not sizeof Rel structure.  From Gary
168460484Sobrien	Thomas <g.thomas@opengroup.org>.
168560484Sobrien
168660484SobrienTue Apr 15 11:50:37 1997  Ian Lance Taylor  <ian@cygnus.com>
168760484Sobrien
168860484Sobrien	* aout-target.h (MY(callback)): If entry_is_text_address, adjust
168960484Sobrien	whenever entry is larger than text address, but only by whole
169060484Sobrien	pages.  From Gordon W. Ross <gwr@mc.com>.
169160484Sobrien
169260484Sobrien	* Makefile.in (install): Depend upon installdirs.  Use
169360484Sobrien	mkinstalldirs to build $(oldincludedir).
169460484Sobrien	(installdirs): New target.
169560484Sobrien
169660484Sobrien	* elflink.h (elf_link_add_object_symbols): Don't call check_relocs
169760484Sobrien	if this is a debugging section which we are stripping.
169860484Sobrien
169960484SobrienMon Apr 14 12:39:30 1997  Richard Henderson  <rth@tamu.edu>
170060484Sobrien
170160484Sobrien	* elf64-alpha.c (elf64_alpha_object_p): Allocate the
170260484Sobrien	alpha-specific target data struct.
170360484Sobrien
170460484SobrienMon Apr 14 11:45:46 1997  Ian Lance Taylor  <ian@cygnus.com>
170560484Sobrien
170660484Sobrien	From Thomas Graichen <graichen@rzpd.de>:
170760484Sobrien	* Makefile.in: Always use $(SHELL) when running move-if-change.
170860484Sobrien	* configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
170960484Sobrien	* configure: Rebuild.
171060484Sobrien
171160484SobrienFri Apr 11 15:43:24 1997  Ian Lance Taylor  <ian@cygnus.com>
171260484Sobrien
171360484Sobrien	* elfcode.h (elf_slurp_symbol_table): Only subtract the section
171460484Sobrien	VMA if this is an executable file or a shared object.
171560484Sobrien
171660484Sobrien	* targets.c (netbsd_core_vec): Declare.  From Gordon W. Ross
171760484Sobrien	<gwr@mc.com>.
171860484Sobrien
171960484Sobrien	* libaout.h (struct aout_backend_data): Add entry_is_text_address
172060484Sobrien	field.
172160484Sobrien	* aout-target.h (SEGMENT_SIZE): Define to TARGET_PAGE_SIZE at the
172260484Sobrien	start of the file.  Remove uses later on which switch using
172360484Sobrien	ifdef.
172460484Sobrien	(MY(callback)): Handle entry_is_text_address.
172560484Sobrien	(MY_entry_is_text_address): Define if not defined.
172660484Sobrien	(MY(backend_data)): Initialize new field.
172760484Sobrien	* aoutf1.h (sunos4_aout_backend): Likewise.
172860484Sobrien	* i386aout.c (MY(backend_data)): Likewise.
172960484Sobrien	* i386mach3.c (MY(backend_data)): Likewise.
173060484Sobrien	* mipsbsd.c (MY(backend_data)): Likewise.
173160484Sobrien	* sparclynx.c (sparclynx_aout_backend): Likewise.
173260484Sobrien	* netbsd.h (SEGMENT_SIZE): Define if not defined.
173360484Sobrien	(MY_entry_is_text_address): Define.
173460484Sobrien	* m68knetbsd.c (SEGMENT_SIZE): Define as 0x20000.
173560484Sobrien
173660484Sobrien	* xcofflink.c (bfd_xcoff_import_symbol): Handle importing a symbol
173760484Sobrien	whose name starts with `.'.
173860484Sobrien
173960484SobrienFri Apr 11 11:57:15 1997  Niklas Hallqvist  <niklas@appli.se>
174060484Sobrien
174160484Sobrien	* config.bfd: (i[3456]86-*-openbsd*, m68*-*-openbsd*,
174260484Sobrien	mips*el*-*-openbsd*, mips*-*-openbsd*, ns32k-*-openbsd*,
174360484Sobrien	powerpc-*-*bsd*, sparc-*-openbsd*): New targets.
174460484Sobrien	* configure.in (i[3456]86-*-openbsd*, mips*-*-openbsd*,
174560484Sobrien	m68*-*-openbsd*, ns32k-*-openbsd*, powerpc-*-*bsd*,
174660484Sobrien	sparc-*-openbsd*): New targets.
174760484Sobrien	* configure: Rebuild.
174860484Sobrien
174960484SobrienTue Apr  8 18:09:29 1997  Jamie Lokier  <jamie@rebellion.co.uk>
175060484Sobrien
175160484Sobrien	* stabs.c (struct stab_section_info): New field
175260484Sobrien	`cumulative_skips'.
175360484Sobrien	(_bfd_link_section_stabs): Fill the above array.
175460484Sobrien	(_bfd_stab_section_offset): Use `cumulative_skips' to
175560484Sobrien	speed up offset calculation.
175660484Sobrien
175760484SobrienTue Apr  8 00:01:31 1997  Jeffrey A Law  (law@cygnus.com)
175860484Sobrien
175960484Sobrien        * elf-mn10300.c (mn10300_elf_relax_section): Don't forget the
176060484Sobrien        addend for non pc-relative relocations.
176160484Sobrien
176260484Sobrien	* elf-m10300.c (bfd_elf32_mn10300_reloc): Remove prototype
176360484Sobrien	for non-existent function.
176460484Sobrien
176560484Sobrien	* elf-m10300.c (mn10300_elf_relax_section): New function.
176660484Sobrien	(mn10300_elf_relax_delete_bytes): Likewise.
176760484Sobrien	(mn10300_elf_symbol_address_p): Likewise.
176860484Sobrien	(mn10300_elf_get_relocated_section_contents): Likewise.
176960484Sobrien	(bfd_elf32_bfd_relax_section): Define.
177060484Sobrien	(bfd_elf32_bfd_get_relocated_section_contents): Likewise.
177160484Sobrien
177260484SobrienMon Apr  7 16:47:09 1997  Ian Lance Taylor  <ian@cygnus.com>
177360484Sobrien
177460484Sobrien	* configure.host: Set SHLIB_LIBS.
177560484Sobrien	* configure.in: Substitute SHLIB_LIBS.
177660484Sobrien	* configure: Rebuild.
177760484Sobrien	* Makefile.in (SHLIB_LIBS): New variable.
177860484Sobrien	($(SHLIB)): Use $(SHLIB_LIBS).
177960484Sobrien
178060484SobrienMon Apr  7 10:53:52 1997  Michael Snyder  <msnyder@cleaver.cygnus.com>
178160484Sobrien
178260484Sobrien	* bfd-in.h bfd-in2.h: add bfd_section_lma macro to correspond
178360484Sobrien	with bfd_section_vma.
178460484Sobrien
178560484SobrienFri Apr  4 11:37:15 1997  Ian Lance Taylor  <ian@cygnus.com>
178660484Sobrien
178760484Sobrien	* configure.in: Update file names for bfd_elf32_mn10[23]00_vec.
178860484Sobrien	Correct CPU file names for mn10[23]00.
178960484Sobrien	* configure: Rebuild.
179060484Sobrien
179160484Sobrien	* bfd.c (bfd_record_phdr): Cast count to size_t before
179260484Sobrien	subtraction.
179360484Sobrien
179460484Sobrien	* coff-ppc.c (dump_toc): Add cast to avoid warning from SunOS cc.
179560484Sobrien	* coff-rs6000.c (xcoff_read_ar_hdr): Likewise.
179660484Sobrien	(xcoff_write_archive_contents): LIkewise.
179760484Sobrien	* elf32-mips.c (_bfd_mips_elf_set_section_contents): Likewise.
179860484Sobrien	(mips_elf_create_procedure_table): Likewise.
179960484Sobrien	* peicode.h (pe_print_idata): Likewise.
180060484Sobrien	(pe_print_edata, pe_print_pdata, pe_print_reloc): Likewise.
180160484Sobrien	* xcofflink.c (xcoff_get_section_contents): Likewise.
180260484Sobrien	(_bfd_xcoff_canonicalize_dynamic_symtab): Likewise.
180360484Sobrien	(xcoff_link_add_symbols): Likewise.
180460484Sobrien	(xcoff_link_add_symbols): Likewise.
180560484Sobrien
180660484Sobrien	* ppcboot.c (ppcboot_set_arch_mach): Make static.
180760484Sobrien	(ppcboot_bfd_print_private_bfd_data): Likewise.
180860484Sobrien
180960484Sobrien	* elf32-mips.c (elf_mips_ctor64_howto): Set complain_on_overflow
181060484Sobrien	to complain_overflow_signed.
181160484Sobrien
181260484SobrienThu Apr  3 11:51:54 1997  Ian Lance Taylor  <ian@cygnus.com>
181360484Sobrien
181460484Sobrien	* VERSION: Set to 2.8.1.
181560484Sobrien
181660484Sobrien	* Branched binutils 2.8.
181760484Sobrien
181860484Sobrien	* elf32-ppc.c (ppc_elf_check_relocs):  Don't check SEC_ALLOC when
181960484Sobrien	deciding whether to copy a reloc into a shared object.
182060484Sobrien	(ppc_elf_relocate_section): Likewise.  Relocate R_PPC_RELATIVE
182160484Sobrien	relocs in unallocated sections.
182260484Sobrien	* elf32-sparc.c (elf32_sparc_relocate_section): Relocate
182360484Sobrien	R_SPARC_RELATIVE relocs in unallocated sections.
182460484Sobrien
182560484SobrienWed Apr  2 16:19:41 1997  Mike Meissner  <meissner@cygnus.com>
182660484Sobrien
182760484Sobrien	* elf32-ppc.c (ppc_elf_check_relocs): Undo March 26 change and
182860484Sobrien	always create got section so that the _GLOBAL_OFFSET_TABLE_ label
182960484Sobrien	is always created.
183060484Sobrien
183160484SobrienWed Apr  2 10:49:07 1997  Ian Lance Taylor  <ian@cygnus.com>
183260484Sobrien
183360484Sobrien	* elflink.h (elf_link_add_object_symbols): Let a common symbol
183460484Sobrien	override an uninitialized symbol from a shared library with a
183560484Sobrien	smaller size.
183660484Sobrien
183760484Sobrien	* elf-m10200.c: Rename from elf32-mn10200.c.
183860484Sobrien	* elf-m10300.c: Rename from elf32-mn10300.c.
183960484Sobrien	* cpu-m10200.c: Rename from cpu-mn10200.c
184060484Sobrien	* cpu-m10300.c: Rename from cpu-mn10300.c
184160484Sobrien	* Makefile.in: Update accordingly.
184260484Sobrien
184360484Sobrien	* elf32-mips.c (elf_mips_ctor64_howto): New static variable.
184460484Sobrien	(elf_mips_isa): Move to earlier in file.
184560484Sobrien	(mips_reloc_map): Remove BFD_RELOC_CTOR entry.
184660484Sobrien	(bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_CTOR
184760484Sobrien	specially.
184860484Sobrien
184960484Sobrien	* elf32-mips.c (mips16_jump_reloc): Print a warning rather than
185060484Sobrien	calling abort.
185160484Sobrien
185260484SobrienTue Apr  1 16:18:05 1997  Klaus Kaempf  <kkaempf@progis.de>
185360484Sobrien
185460484Sobrien	* configure.com: New file.
185560484Sobrien	* config.h-vms: Remove file.
185660484Sobrien	* makefile.vms: Update for new configure scheme.
185760484Sobrien
185860484SobrienMon Mar 31 23:28:39 1997  H.J. Lu  <hjl@gnu.ai.mit.edu>
185960484Sobrien
186060484Sobrien	* libcoff-in.h (ppc_allocate_toc_section): Declare.
186160484Sobrien	(ppc_process_before_allocation): Declare.
186260484Sobrien	* libcoff.h: Rebuild.
186360484Sobrien
186460484Sobrien	* coffcode.h (coff_mkobject_hook): Declare if not a macro.
186560484Sobrien
186660484SobrienMon Mar 31 16:29:50 1997  Joel Sherrill  <joel@oarcorp.com>
186760484Sobrien
186860484Sobrien        * config.bfd (hppa*-*-rtems*): New target, like hppa-*-*elf*.
186960484Sobrien
187060484SobrienMon Mar 31 16:11:35 1997  Ian Lance Taylor  <ian@cygnus.com>
187160484Sobrien
187260484Sobrien	* coff-a29k.c (coff_a29k_relocate_section): Don't use symndx as a
187360484Sobrien	symbol index for a R_IHCONST reloc.
187460484Sobrien
187560484SobrienMon Mar 31 15:40:59 1997  Philippe De Muyter  <phdm@info.ucl.ac.be>
187660484Sobrien
187760484Sobrien	* targmatch.sed: Do not use \(\) recursively.
187860484Sobrien
187960484SobrienFri Mar 28 14:44:08 1997  H.J. Lu  <hjl@gnu.ai.mit.edu>
188060484Sobrien
188160484Sobrien	* m68klinux.c (MACHTYPE_OK): Define.
188260484Sobrien	* i386linux.c (MACHTYPE_OK): Define.
188360484Sobrien
188460484SobrienFri Mar 28 11:56:15 1997  Ian Lance Taylor  <ian@cygnus.com>
188560484Sobrien
188660484Sobrien	From David S. Miller <davem@caip.rutgers.edu> and H.J. Lu
188760484Sobrien	<hjl@gnu.ai.mit.edu>:
188860484Sobrien	* sparclinux.c: New file.
188960484Sobrien	* bfd-in.h (bfd_sparclinux_size_dynamic_sections): Declare.
189060484Sobrien	* bfd-in2.h: Rebuild.
189160484Sobrien	* config.bfd (sparc-*-linuxaout*, sparc-*-linux*): New targets.
189260484Sobrien	* configure.in (sparclinux_vec): Add to list of vectors.
189360484Sobrien	* configure: Rebuild.
189460484Sobrien	* targets.c (sparclinux_vec): Declare.
189560484Sobrien	(bfd_target_vector): Add sparclinux_vec.
189660484Sobrien	* Makefile.in: Rebuild dependencies.
189760484Sobrien	(BFD32_BACKENDS): Add sparclinux.o.
189860484Sobrien	(BFD32_BACKENDS_CFILES): Add sparclinux.c.
189960484Sobrien
190060484Sobrien	* coff-mips.c (mips_ecoff_backend_data): Initialize new
190160484Sobrien	bfd_coff_backend_data field.
190260484Sobrien	* coff-alpha.c (alpha_ecoff_backend_data): Likewise.
190360484Sobrien
190460484Sobrien	* config.bfd: Add bfd_elf64_{big,little}mips_vec to targ_selvecs
190560484Sobrien	for mips*el*-*-linux* and mips*-*-linux*.  From H.J. Lu
190660484Sobrien	<hjl@lucon.org> and Ralf Baechle <ralf@gnu.ai.mit.edu>.
190760484Sobrien
190860484Sobrien	* bfd.c: Include "libiberty.h".
190960484Sobrien	(strerror): Don't declare.
191060484Sobrien	(bfd_errmsg): Call xstrerror rather than strerror.
191160484Sobrien
191260484SobrienThu Mar 27 12:55:42 1997  Ian Lance Taylor  <ian@cygnus.com>
191360484Sobrien
191460484Sobrien	* elf32-i386.c (elf_i386_adjust_dynamic_symbol): Generate a COPY
191560484Sobrien	reloc even if the symbol is in the .bss section.
191660484Sobrien	* elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
191760484Sobrien	* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
191860484Sobrien	* elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise.
191960484Sobrien
192060484Sobrien	* coffcode.h (bfd_coff_backend_data): Add new field
192160484Sobrien	_bfd_coff_default_section_alignment_power.
192260484Sobrien	(bfd_coff_default_section_alignment_power): Define.
192360484Sobrien	(bfd_coff_std_swap_table): Initialize new field.
192460484Sobrien	* libcoff.h: Rebuild.
192560484Sobrien	* cofflink.c (coff_link_add_symbols): Limit alignment of a common
192660484Sobrien	symbol to the default section alignment.
192760484Sobrien
192860484Sobrien	* COPYING: Update FSF address.
192960484Sobrien
193060484SobrienThu Mar 27 00:45:57 1997  Martin M. Hunt  <hunt@pizza.cygnus.com>
193160484Sobrien
193260484Sobrien	* elf32-d30v.c (elf_d30v_howto_table): Fix a typo in the
193360484Sobrien	21-bit absolute that made it act as a relative.
193460484Sobrien
193560484SobrienWed Mar 26 14:50:20 1997  Ian Lance Taylor  <ian@cygnus.com>
193660484Sobrien
193760484Sobrien	* elflink.c (_bfd_elf_create_linker_section): Don't set
193860484Sobrien	bss_section and rel_section from existing sections.
193960484Sobrien
194060484Sobrien	* elf32-ppc.c (ppc_elf_check_relocs): Only create the got section
194160484Sobrien	if it is needed.
194260484Sobrien
194360484SobrienTue Mar 25 22:26:56 1997  Stu Grossman  (grossman@critters.cygnus.com)
194460484Sobrien
194560484Sobrien	* aoutx.h (some_aout_object_p):  Change executable test to fix
194660484Sobrien	problems with embedded a.out systems.
194760484Sobrien
194860484SobrienTue Mar 25 14:35:37 1997  Ian Lance Taylor  <ian@cygnus.com>
194960484Sobrien
195060484Sobrien	* stabs.c (_bfd_stab_section_offset): New function.
195160484Sobrien	* libbfd-in.h (_bfd_stab_section_offset): Declare.
195260484Sobrien	* libbfd.h: Rebuild.
195360484Sobrien	* elf32-i386.c (elf_i386_relocate_section): Adjust the offset of a
195460484Sobrien	stab reloc.
195560484Sobrien	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
195660484Sobrien	* elf32-mips.c (mips_elf_relocate_section): Likewise.
195760484Sobrien	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
195860484Sobrien	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
195960484Sobrien	* elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
196060484Sobrien
196160484Sobrien	* stabs.c (_bfd_link_section_stabs): Copy over the first header
196260484Sobrien	symbol.  Check for memory allocation failure of *psinfo.
196360484Sobrien	(_bfd_write_section_stabs): Add psinfo parameter.  Change all
196460484Sobrien	callers.  Set the value of the header symbol.
196560484Sobrien	* libbfd-in.h (_bfd_write_section_stabs): Update declaration.
196660484Sobrien	* libbfd.h: Rebuild.
196760484Sobrien
196860484SobrienMon Mar 24 20:07:29 1997  Fred Fish  <fnf@cygnus.com>
196960484Sobrien
197060484Sobrien	* coff-tic80.c (tic80_howto_table): Add R_ABS entry.
197160484Sobrien	(rtype2howto): Handle R_ABS reloc type.  Also abort on unhandled
197260484Sobrien	reloc types, rather than silently failing to generate an output file.
197360484Sobrien
197460484SobrienMon Mar 24 13:41:00 1997  Ian Lance Taylor  <ian@cygnus.com>
197560484Sobrien
197660484Sobrien	* targmatch.sed: Use the hold space to put the #ifdef around the
197760484Sobrien	the string constant.
197860484Sobrien	* targets.c (UNSUPPORTED_TARGET): Don't define.
197960484Sobrien	(find_target): Don't check for UNSUPPORTED_TARGET.
198060484Sobrien	(bfd_set_default_target): Don't try to optimize by checking for
198160484Sobrien	default.
198260484Sobrien
198360484Sobrien	* Makefile.in: Rebuild dependencies.
198460484Sobrien 	(ALL_MACHINES_CFILES): Add cpu-m32r.c.
198560484Sobrien	(BFD32_BACKENDS_CFILES): Add elf32-m32r.c.
198660484Sobrien	(elf32-m32r.o): Remove explicit target.
198760484Sobrien
198860484Sobrien	* config.bfd: Don't set targ_underscore for i[3456]86-*-gnu* or
198960484Sobrien	i[3456]86-*-linux*.
199060484Sobrien
199160484Sobrien	* elf32-sparc.c (elf32_sparc_size_dynamic_sections): Don't
199260484Sobrien	count section symbols for sections that were created by the
199360484Sobrien	linker, or are not allocatable or not loadable.
199460484Sobrien	(elf32_sparc_finish_dynamic_sections): Output output section
199560484Sobrien	symbols for section for which we made space for them.
199660484Sobrien
199760484SobrienFri Mar 21 13:08:26 1997  Ian Lance Taylor  <ian@cygnus.com>
199860484Sobrien
199960484Sobrien	* elf32-sparc.c (elf32_sparc_size_dynamic_sections): If there is
200060484Sobrien	no .rela.plt section, don't output a DT_PLTGOT dynamic entry.
200160484Sobrien
200260484SobrienFri Mar 21 12:36:46 1997  Doug Evans  <dje@canuck.cygnus.com>
200360484Sobrien
200460484Sobrien	* elf32-m32r.c (m32r_elf_howto_table): Use special function for LO16.
200560484Sobrien	(m32r_hi16_list): New static local.
200660484Sobrien	(m32r_elf_hi16_reloc): Don't perform reloc, just queue it up.
200760484Sobrien	(m32r_elf_do_hi16_reloc): Delete.
200860484Sobrien	(m32r_elf_relocate_hi16): New function.
200960484Sobrien	(m32r_elf_lo16_reloc): New function.
201060484Sobrien	(m32r_elf_relocate_section): For HI16 relocs, scan for corresponding
201160484Sobrien	LO16 reloc.
201260484Sobrien
201360484Sobrien	Mon Mar 10 16:03:31 1997  Doug Evans  <dje@seba.cygnus.com>
201460484Sobrien
201560484Sobrien	* elf32-m32r.c (m32r_elf_create_linker_section): Delete.
201660484Sobrien	(m32r_elf_add_symbol_hook): Rewrite _SDA_BASE_ support.
201760484Sobrien	(m32r_elf_final_sda_base): New function.
201860484Sobrien	(m32r_elf_relocate_section): Rewrite sdata support.
201960484Sobrien	(m32r_elf_finish_dynamic_sections): Delete.
202060484Sobrien
202160484SobrienThu Mar 20 12:39:02 1997  Ian Lance Taylor  <ian@cygnus.com>
202260484Sobrien
202360484Sobrien	Based on patches from Philippe De Muyter <phdm@info.ucl.ac.be>.
202460484Sobrien	* coff-svm68k.c: New file.  Just defines some macros and includes
202560484Sobrien	coff-m68k.c.
202660484Sobrien	* coff-m68k.c: Add functions to handle common addends, moved in
202760484Sobrien	from cf-m68klynx.c.  Control them using COFF_COMMON_ADDEND macro.
202860484Sobrien	Control whether relocs are visible using STATIC_RELOCS.
202960484Sobrien	* cf-m68klynx.c: Simplify greatly: just define macros to control
203060484Sobrien	coff-m68k.c.
203160484Sobrien	* coff-aux.c: Likewise.  Just leave add_one_symbol routine.
203289857Sobrien	* targets.c (m68ksysvcoff_vec): Declare.
203360484Sobrien	(bfd_target_vector): Add m68ksysvcoff_vec.
203460484Sobrien	* config.bfd (m68*-motorola-sysv*): New target.
203560484Sobrien	* configure.in (m68ksysvcoff_vec): New vector.
203660484Sobrien	* configure: Rebuild.
203760484Sobrien	* Makefile.in: Rebuild dependencies.
203860484Sobrien 	(BFD32_BACKENDS): Add coff-svm68k.o.
203960484Sobrien	(BFD32_BACKENDS_CFILES): Add coff-svm68k.c.
204060484Sobrien
204160484Sobrien	* binary.c (binary_set_section_contents): Don't get misled if the
204260484Sobrien 	first section is not loadable.  From Matthew L. Martin
204360484Sobrien 	<mlm@xedia.com>.
204460484Sobrien
204560484Sobrien	* elflink.h (elf_bfd_final_link): Set the value of a section
204660484Sobrien	symbol to the section address unless doing a relocateable link.
204760484Sobrien
204860484SobrienTue Mar 18 23:03:17 1997  Richard Henderson  <rth@tamu.edu>
204960484Sobrien
205060484Sobrien	* elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't create
205160484Sobrien	.plt entry if we've taken the function's address.
205260484Sobrien	(elf64_alpha_merge_gots): Merge collected flags info as well.
205360484Sobrien
205460484SobrienTue Mar 18 22:40:09 1997  H.J. Lu  <hjl@lucon.org>
205560484Sobrien
205660484Sobrien	* Many files: Add function prototypes.
205760484Sobrien	* cpu-m68k.c (bfd_default_scan_num_mach): Don't declare.
205860484Sobrien	* ecofflink.c: Include "libcoff.h" and "libecoff.h".
205960484Sobrien	* elf32-ppc.c (ppc_elf_fake_sections): Make static.
206060484Sobrien	* opncls.c (bfd_openstreamr): Change stream parameter to PTR.
206160484Sobrien	* peicode.h: Change several void * parameters to PTR.
206260484Sobrien	* srec.c (srec_get_symbol_info): Make static.
206360484Sobrien	* syms.c (bfd_symbol_is_absolute): Remove.
206460484Sobrien	* Makefile.in: Rebuild dependencies.
206560484Sobrien
206660484SobrienTue Mar 18 12:58:08 1997  Ian Lance Taylor  <ian@cygnus.com>
206760484Sobrien
206860484Sobrien	* elf32-m32r.c (m32r_elf_is_local_label_name): Remove.
206960484Sobrien	(bfd_elf32_bfd_is_local_label): Don't define.
207060484Sobrien
207160484Sobrien	* xcofflink.c (_bfd_xcoff_bfd_final_link): Call bfd_malloc rather
207260484Sobrien	than malloc.
207360484Sobrien
207460484SobrienMon Mar 17 11:32:53 1997  Ian Lance Taylor  <ian@cygnus.com>
207560484Sobrien
207660484Sobrien	* bfd-in.h: Don't include obstack.h.
207760484Sobrien	(struct bfd_hash_table): Change memory field to PTR.
207860484Sobrien	* bfd.c (struct _bfd): Change memory field to PTR.
207960484Sobrien	* bfd-in2.h: Rebuild.
208060484Sobrien	* libbfd-in.h (bfd_release): Declare as function, don't define as
208160484Sobrien	macro.
208260484Sobrien	* libbfd.h: Rebuild.
208360484Sobrien	* opncls.c: Include "objalloc.h" rather than "obstack.h".  Use
208460484Sobrien	objalloc routines rather than obstack routines.
208560484Sobrien	(obstack_chunk_alloc, obstack_chunk_free): Don't define.
208660484Sobrien	(getpagesize): Don't define.
208760484Sobrien	(_bfd_new_bfd): Don't set _bfd_chunksize.
208860484Sobrien	(bfd_openr): Free new bfd and objalloc on failure.
208960484Sobrien	(bfd_fdopenr, bfd_openstreamr, bfd_openw): Likewise.
209060484Sobrien	(bfd_alloc_size): Remove.
209160484Sobrien	(bfd_release): New function.
209260484Sobrien	* hash.c: Include "objalloc.h" rather than "obstack.h".  Use
209360484Sobrien	objalloc routines rather than obstack routines.
209460484Sobrien	(obstack_chunk_alloc, obstack_chunk_free): Don't define.
209560484Sobrien	* ecofflink.c: Include "objalloc.h" rather than "obstack.h".  Use
209660484Sobrien	objalloc routines rather than obstack routines.
209760484Sobrien	(obstack_chunk_alloc, obstack_chunk_free): Don't define.
209860484Sobrien	(struct accumulate): Change memory to struct objalloc *.
209960484Sobrien	* liboasys.h (oasys_data_type): Remove oasys_obstack field.
210060484Sobrien	* dep-in.sed: Don't remove obstack.h from dependency list.
210160484Sobrien	* Makefile.in: Rebuild dependencies.
210260484Sobrien	(BFD_H_DEPS): Remove obstack.h.
210360484Sobrien	(install): Don't install obstack.h.
210460484Sobrien	* Many files: Don't include "obstack.h".
210560484Sobrien	* VERSION: Bump.
210660484Sobrien
210760484Sobrien	* opncls.c (bfd_alloc_grow, bfd_alloc_finish): Remove.
210860484Sobrien	* libbfd-in.h (bfd_alloc_grow, bfd_alloc_finish): Don't declare.
210960484Sobrien	* libbfd.h: Rebuild.
211060484Sobrien	* ieee.c (ieee_archive_p): Rewrite to not use bfd_alloc_grow.
211160484Sobrien	* sunos.c (sunos_add_dynamic_symbols): Likewise.
211260484Sobrien	* srec.c (srec_scan): Rewrite to not use obstack_1grow.
211360484Sobrien
211460484Sobrien	* opncls.c (bfd_alloc): Rename from bfd_alloc_by_size_t.  Remove
211560484Sobrien	old version of bfd_alloc.
211660484Sobrien	* libbfd-in.h (bfd_alloc_by_size_t): Don't declare.
211760484Sobrien	* libbfd.h: Rebuild.
211860484Sobrien	* Several files: Call bfd_alloc rather than bfd_alloc_by_size_t.
211960484Sobrien
212060484SobrienSat Mar 15 15:24:18 1997  Ian Lance Taylor  <ian@cygnus.com>
212160484Sobrien
212260484Sobrien	* elf32-mips.c (mips_elf_is_local_label_name): Accept the generic
212360484Sobrien	ELF local label syntax as well.
212460484Sobrien
212560484SobrienSat Mar 15 10:16:42 1997  Fred Fish  <fnf@cygnus.com>
212660484Sobrien
212760484Sobrien	* config.bfd (powerpc-*-beos*): New target.
212860484Sobrien	* configure.in (powerpc-*-beos*): Add case that explicitly
212960484Sobrien	does not set COREFILE for now.  A future BeOS version is
213060484Sobrien	expected to support core files.
213160484Sobrien	* configure: Regenerate with autoconf.
213260484Sobrien
213360484SobrienFri Mar 14 16:43:22 1997  Ian Lance Taylor  <ian@cygnus.com>
213460484Sobrien
213560484Sobrien	* elf32-mips.c (mips_elf_check_relocs): Give an error if CALL16 is
213660484Sobrien 	seen with a local symbol, rather than crashing.
213760484Sobrien
213860484Sobrien	* elfcode.h (elf_slurp_symbol_table): Don't try to read the
213960484Sobrien	version symbols if there aren't any.
214060484Sobrien
214160484SobrienThu Mar 13 16:38:30 1997  Fred Fish  <fnf@cygnus.com>
214260484Sobrien
214360484Sobrien	* coff-tic80.c (coff_rtype_to_howto): Define
214460484Sobrien	(coff_tic80_rtype_to_howto): Clone generic coff version and
214560484Sobrien	add code to handle the funky TI "internal relocations".
214660484Sobrien
214760484SobrienThu Mar 13 14:08:53 1997  Ian Lance Taylor  <ian@cygnus.com>
214860484Sobrien
214960484Sobrien	* elflink.h (elf_link_add_object_symbols): Don't warn about type
215060484Sobrien	or size changes because of a weak symbol.
215160484Sobrien
215260484Sobrien	* cisco-core.c (SIGEMT): Define if not defined.
215360484Sobrien
215460484SobrienWed Mar 12 21:36:05 1997  Ian Lance Taylor  <ian@cygnus.com>
215560484Sobrien
215660484Sobrien	* elflink.h (elf_link_add_object_symbols): Use extsymoff when
215760484Sobrien	setting ever.  Sanity check the version number.  Sort out copying
215860484Sobrien	flags and other information when adding an indirect symbol.
215960484Sobrien	(NAME(bfd_elf,size_dynamic_sections)): Preserve any dynamic
216060484Sobrien	symbols added by the backend.  Clear the entire contents of the
216160484Sobrien	versym section.
216260484Sobrien	(elf_export_symbol): Ignore indirect symbols.
216360484Sobrien	(elf_link_output_extsym): Accept a section without an owner in an
216460484Sobrien	assert.
216560484Sobrien	* elfcode.h (elf_slurp_symbol_table): Add a sanity check on the
216660484Sobrien	version count.  Correct the allocation of x_versymp.
216760484Sobrien
216860484Sobrien	* elf32-mips.c (mips_elf_add_symbol_hook): Don't set the owner of
216960484Sobrien	the magic sections used for SHN_MIPS_TEXT and SHN_MIPS_DATA.
217060484Sobrien	Don't return bfd_und_section_ptr when info->shared.
217160484Sobrien	(mips_elf_final_link): Set the alignment of .rtproc to 4, not 12.
217260484Sobrien	(mips_elf_create_dynamic_sections): Correct type: ^= for &=.
217360484Sobrien	(mips_elf_check_relocs): Resolve an indirect symbol in
217460484Sobrien	sym_hashes.
217560484Sobrien	(mips_elf_finish_dynamic_symbol): Don't change SHN_ABS into
217660484Sobrien	SHN_MIPS_TEXT or SHN_MIPS_DATA.
217760484Sobrien
217860484Sobrien	* elf.c (bfd_elf_print_symbol): Tweak version output slightly.
217960484Sobrien
218060484SobrienTue Mar 11 01:38:36 1997  Ian Lance Taylor  <ian@cygnus.com>
218160484Sobrien
218260484Sobrien	From Eric Youngdale <eric@andante.jic.com>:
218360484Sobrien	* elf-bfd.h (ELF_LINK_FORCED_LOCAL): Define.
218460484Sobrien	* elf.c (bfd_elf_print_symbol): Correct errors in last change.
218560484Sobrien	* elflink.h (elf_link_add_object_symbols): Handle cases in which a
218660484Sobrien	versioned symbol appears in both a regular and a shared object.
218760484Sobrien	(elf_link_assign_sym_version): Set ELF_LINK_FORCED_LOCAL when
218860484Sobrien	appropriate.  Improve error message.
218960484Sobrien	(struct elf_outext_info): Rename from elf_finfo_failed.  Change
219060484Sobrien	all uses.  Add localsyms field.
219160484Sobrien	(elf_bfd_final_link): When generating a shared library, call
219260484Sobrien	elf_link_output_extsym to output all local symbols.
219360484Sobrien	(elf_link_output_extsym): Handle symbols which were forced to
219460484Sobrien	become local.
219560484Sobrien
219660484SobrienSun Mar  9 23:08:49 1997  Ian Lance Taylor  <ian@cygnus.com>
219760484Sobrien
219860484Sobrien	From Eric Youngdale <eric@andante.jic.com>:
219960484Sobrien	* elf-bfd.h (elf_symbol_type): Add version field.
220060484Sobrien	* elfcode.h (elf_slurp_symbol_table): Set version field.
220160484Sobrien	* elflink.h (elf_link_add_object_symbols): When creating an
220260484Sobrien 	indirect symbol for a default version symbol, set DEF_DYNAMIC if
220360484Sobrien 	appropriate.  Set up an indirection from the nondefault version of
220460484Sobrien	the symbol as well.
220560484Sobrien	(NAME(bfd_elf,size_dynamic_sections)): Call
220660484Sobrien	elf_link_assign_sym_version before checking whether there are any
220760484Sobrien	versions.  Always record the version name as a dynamic symbol.
220860484Sobrien	Initialize counters.
220960484Sobrien	(elf_link_assign_sym_version): After finding a version, see if a
221060484Sobrien	symbol should be forced to local scope.  Create a new version
221160484Sobrien	definition if appropriate.
221260484Sobrien	(elf_link_output_extsym): Correct indirect symbol handling.
221360484Sobrien	* elf.c (bfd_elf_print_symbol): Print version information.
221460484Sobrien	(bfd_section_from_shdr): Turn version sections into BFD sections.
221560484Sobrien	(elf_fake_sections): Only copy cverdefs and cverrefs into sh_info
221660484Sobrien	if sh_info is not already set.
221760484Sobrien	(_bfd_elf_copy_private_section_data): Copy sh_info for version
221860484Sobrien	sections.
221960484Sobrien	* elflink.c (_bfd_elf_link_record_dynamic_symbol): Tell
222060484Sobrien	_bfd_stringtab_add to copy the name into permanent memory if
222160484Sobrien	appropriate.
222260484Sobrien
222360484SobrienFri Mar  7 11:55:31 1997  H.J. Lu  <hjl@gnu.ai.mit.edu>
222460484Sobrien
222560484Sobrien	* elf64-alpha.c (alpha_elf_dynamic_symbol_p): Fully parenthesize.
222660484Sobrien
222760484SobrienFri Mar  7 10:37:30 1997  Ian Lance Taylor  <ian@cygnus.com>
222860484Sobrien
222960484Sobrien	* coffcode.h (bfd_coff_backend_data): Change
223060484Sobrien	_bfd_coff_compute_section_file_positions to return a boolean
223160484Sobrien	value.  Change all callers.
223260484Sobrien	(coff_compute_section_file_positions): Change return type to
223360484Sobrien	boolean.  If the size of the last section changed, then output a
223460484Sobrien	zero byte at the end of the file.
223560484Sobrien	* libcoff.h: Rebuild.
223660484Sobrien
223760484Sobrien	* xcofflink.c (_bfd_xcoff_bfd_final_link): Always allocate space
223860484Sobrien	for at least 6 output symbols.
223960484Sobrien	(xcoff_write_global_symbol): When emitting TOC entry relocs, also
224060484Sobrien	emit a TC csect to represent the space they take up.  For an XO
224160484Sobrien	symbol, just emit a reference, not a csect.
224260484Sobrien
224360484Sobrien	* Makefile.in ($(SHLINK)): Just use ln -s, not ln -sf, since
224460484Sobrien	Solaris doesn't like the combined options, and the -f is
224560484Sobrien	unnecessary.
224660484Sobrien	(stamp-tshlink, install): Likewise.
224760484Sobrien
224860484Sobrien	* elf32-mips.c (mips_elf_relocate_section): Correct R_MIPS16_26
224960484Sobrien	handling when little endian.
225060484Sobrien
225160484SobrienThu Mar  6 13:51:51 1997  Jeffrey A Law  (law@cygnus.com)
225260484Sobrien
225360484Sobrien	* elf32-mn10300.c (mn10300_elf_final_link_relocate): New function.
225460484Sobrien	(mn10300_elf_relocate_section): Likewise.
225560484Sobrien	(elf_backend_relocate_section): Define.
225660484Sobrien
225760484Sobrien	* elf32-mn10300.c (reloc_type): Remove PCREL{8,16,32}_{1,2}BYTE
225860484Sobrien	relocs.  Replace them with generic PCREL_{8,16,32} relocs.
225960484Sobrien	(elf32_mn10300_howto_table): Likewise.
226060484Sobrien	(elf32_mn10300_reloc_map): Likewise.
226160484Sobrien	(bfd_elf32_mn10300_reloc): Delete unused function.
226260484Sobrien
226360484SobrienThu Mar  6 12:19:59 1997  Fred Fish  <fnf@cygnus.com>
226460484Sobrien
226560484Sobrien	* coff-tic80.c (rtype2howto): If passed a relocation type we don't
226660484Sobrien	understand, just set the howto field to NULL, and the caller will
226760484Sobrien	print an appropriate error message.
226860484Sobrien	* coffcode.h (coff_slurp_reloc_table): Pull duplicate declarations and
226960484Sobrien	code fragment out of both legs of #ifdef RELOC_PROCESSING ... #endif
227060484Sobrien	block.  Use NULL for initializations of "ptr" rather than bare 0.
227160484Sobrien	* coff-h8300.c: Fix typo in comment.
227260484Sobrien	* coff-h8500.c: Ditto.
227360484Sobrien	* coff-w65.c: Ditto
227460484Sobrien	* coff-z8k.c: Ditto.
227560484Sobrien
227660484SobrienWed Mar  5 13:59:09 1997  Doug Evans  <dje@seba.cygnus.com>
227760484Sobrien
227860484Sobrien	* elf32-m32r.c (m32r_elf_do_10_pcrel_reloc): Fix overflow calc.
227960484Sobrien	(m32r_elf_relax_section, m32r_elf_relax_delete_bytes,
228060484Sobrien	m32r_elf_get_relocated_section_contents): First pass at relax support.
228160484Sobrien
228260484SobrienMon Mar  3 13:27:09 1997  Ulrich Drepper  <drepper@rtl.cygnus.com>
228360484Sobrien
228460484Sobrien	* elflink.h (elf_link_add_object_symbols): Use correct sh_size
228560484Sobrien	entry for reading verdef records.
228660484Sobrien	Use correct braces for computing increments of extverdaux and
228760484Sobrien	exteverdef record pointers.
228860484Sobrien
228960484SobrienSun Mar  2 22:47:54 1997  Fred Fish  <fnf@cygnus.com>
229060484Sobrien
229160484Sobrien	* coff-tic80.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Set this to 2
229260484Sobrien	instead of 4.
229360484Sobrien
229460484SobrienSun Mar  2 16:25:35 1997  Ian Lance Taylor  <ian@cygnus.com>
229560484Sobrien
229660484Sobrien	* elflink.h (elf_link_find_version_dependencies): Check that
229760484Sobrien	DEF_REGULAR is not set as well as checking that DEF_DYNAMIC is
229860484Sobrien	set.
229960484Sobrien
230060484SobrienFri Feb 28 16:52:40 1997  Fred Fish  <fnf@cygnus.com>
230160484Sobrien
230260484Sobrien	* coffcode.h (coff_set_flags): Add case for TIC80_ARCH_MAGIC.
230360484Sobrien
230460484SobrienFri Feb 28 15:06:45 1997  Ian Lance Taylor  <ian@cygnus.com>
230560484Sobrien
230660484Sobrien	* targets.c (bfd_default_vector): Make non-const.
230760484Sobrien	(find_target): New static function, broken out of
230860484Sobrien	bfd_find_target.
230960484Sobrien	(bfd_set_default_target): New function.
231060484Sobrien	(bfd_find_target): Call find_target.  When defaulting, use
231160484Sobrien	bfd_default_vector[0] if it is not NULL.
231260484Sobrien	* libbfd-in.h (bfd_default_vector): Adjust declaration.
231360484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
231460484Sobrien
231560484Sobrien	* syms.c (bfd_is_local_label): Return false if the symbol has no
231660484Sobrien	name.
231760484Sobrien	* coff-i960.c (coff_i960_is_local_label_name): New function.
231860484Sobrien	(coff_bfd_is_local_label_name): Define.
231960484Sobrien	* coff-m68k.c (m68k_coff_is_local_label_name): New function.
232060484Sobrien	(coff_bfd_is_local_label_name): Define.
232160484Sobrien	* coff-rs6000.c (xcoff_is_local_label_name): New function.
232260484Sobrien	(coff_bfd_is_local_label_name): Define.
232360484Sobrien	* elf.c (_bfd_elf_is_local_label_name): Treat symbols beginning
232460484Sobrien	with .. or _.L_ as local.
232560484Sobrien	* elf32-i386.c (elf_i386_is_local_label_name): New function.
232660484Sobrien	(bfd_elf32_bfd_is_local_label_name): Define.
232760484Sobrien	* evax-alpha.c (evax_bfd_is_local_label_name): Treat symbols
232860484Sobrien	beginning with $ as local.
232960484Sobrien
233060484SobrienThu Feb 27 18:36:23 1997  Ian Lance Taylor  <ian@cygnus.com>
233160484Sobrien
233260484Sobrien	* aoutx.h (aout_link_write_symbols): Use bfd_is_local_label_name
233360484Sobrien	rather than comparing against info->lprefix.
233460484Sobrien	* cofflink.c (_bfd_coff_link_input_bfd): Likewise.
233560484Sobrien	* elflink.h (elf_link_input_bfd): Likewise.
233660484Sobrien	* linker.c (_bfd_generic_link_output_symbols): Likewise.
233760484Sobrien	* xcofflink.c (xcoff_link_input_bfd): Likewise.
233860484Sobrien
233960484Sobrien	* elfxx-target.h (bfd_elfNN_bfd_is_local_label_name): Define as
234060484Sobrien	_bfd_elf_is_local_label_name if not already defined.
234160484Sobrien	* elf.c (_bfd_elf_is_local_label_name): New function.
234260484Sobrien	* elf-bfd.h (_bfd_elf_is_local_label_name): Declare.
234360484Sobrien
234460484Sobrien	* coff-m88k.c (coff_bfd_is_local_label_name): Define.
234560484Sobrien	(m88k_is_local_label_name): New static function.
234660484Sobrien
234760484Sobrien	* coffcode.h (coff_bfd_is_local_label_name): Define as
234860484Sobrien	_bfd_coff_is_local_label_name if not already defined.
234960484Sobrien	* coffgen.c (_bfd_coff_is_local_label_name): New function.
235060484Sobrien	* libcoff-in.h (_bfd_coff_is_local_label_name): Declare.
235160484Sobrien	* libcoff.h: Rebuild.
235260484Sobrien
235360484Sobrien	* targets.c (BFD_JUMP_TABLE_SYMBOLS): Change _bfd_is_local_label
235460484Sobrien	to _bfd_is_local_label_name.
235560484Sobrien	(bfd_target): Likewise.
235660484Sobrien	* syms.c (bfd_is_local_label): Define as function, not macro.
235760484Sobrien	(bfd_is_local_name): Define.
235860484Sobrien	* libbfd.c (bfd_generic_is_local_label_name): Rename from
235960484Sobrien	bfd_generic_is_local_label, and take a string rather than a
236060484Sobrien	symbol.
236160484Sobrien	* libbfd-in.h (_bfd_nosymbols_bfd_is_local_label): Don't define.
236260484Sobrien	(_bfd_nosymbols_bfd_is_local_label_name): Define.
236360484Sobrien 	(bfd_generic_is_local_label): Don't declare.
236460484Sobrien	(bfd_generic_is_local_label_name): Declare.
236560484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
236660484Sobrien	* All backends: Change local_label to local_label_name.
236760484Sobrien
236860484Sobrien	* elf32-mips.c (struct mips_got_info): Add assigned_gotno field.
236960484Sobrien	(mips_elf_relocate_got_local): Change return type to boolean.
237060484Sobrien	Don't assume that the first zero entry is unassigned; instead, use
237160484Sobrien	assigned_gotno.
237260484Sobrien	(mips_elf_relocate_section): Check return value of
237360484Sobrien	mips_elf_relocate_got_local.
237460484Sobrien	(mips_elf_create_got_section): Initialize assigned_gotno field.
237560484Sobrien
237660484SobrienWed Feb 26 15:19:51 1997  Martin M. Hunt  <hunt@pizza.cygnus.com>
237760484Sobrien
237860484Sobrien	* elf32-d30v.c (bfd_elf_d30v_reloc): Add code to do 32-bit
237960484Sobrien	relocations.
238060484Sobrien
238160484SobrienWed Feb 26 13:33:03 1997  Ian Lance Taylor  <ian@cygnus.com>
238260484Sobrien
238360484Sobrien	* elflink.h (elf_link_input_bfd): Don't skip symbols from sections
238460484Sobrien	that have no contents merely because linker_mark is not set.
238560484Sobrien
238660484SobrienTue Feb 25 18:51:35 1997  Stan Shebs  <shebs@andros.cygnus.com>
238760484Sobrien
238860484Sobrien	* config.bfd (mips*-*-lnews*): New target.
238960484Sobrien	* coff-mips.c (mips_relocate_section): Make assert compare
239060484Sobrien	content byteorder instead of header byteorder.
239160484Sobrien	(ecoff_biglittle_vec): New BFD, big-endian headers, little-endian
239260484Sobrien	data.
239360484Sobrien	* targets.c (bfd_target_vector): Add ecoff_biglittle_vec.
239460484Sobrien	* configure.in (ecoff_biglittle_vec): Add case.
239560484Sobrien	* configure: Update.
239660484Sobrien
239760484SobrienTue Feb 25 00:32:49 1997  Ian Lance Taylor  <ian@cygnus.com>
239860484Sobrien
239960484Sobrien	* elf.c (elf_fake_sections): Use SHT_NOTE for any section whose
240060484Sobrien	name begins with ".note".
240160484Sobrien	(map_sections_to_segments): Add a PT_NOTE segment for any loadable
240260484Sobrien	section whose name begins with ".note".
240360484Sobrien	(get_program_header_size): Corresponding change.
240460484Sobrien
240560484Sobrien	* elf32-mips.c (mips_elf_relocate_section): Check for misaligned
240660484Sobrien	jal and for jal overflow.
240760484Sobrien
240860484SobrienMon Feb 24 17:53:14 1997  Ian Lance Taylor  <ian@cygnus.com>
240960484Sobrien
241060484Sobrien	From Eric Youngdale <eric@andante.jic.com>:
241160484Sobrien	* elflink.h (elf_link_add_archive_symbols): If a default symbol is
241260484Sobrien	not found, try looking it up again without the version name.
241360484Sobrien	(elf_link_add_object_symbols): Always link against the dynamic
241460484Sobrien	symbol table of a dynamic object.  When linking against a dynamic
241560484Sobrien	object, include version strings in symbol names, and set up
241660484Sobrien	version information.  Add indirect symbols for default versions.
241760484Sobrien	(elf_link_create_dynamic_sections): Add special version sections.
241860484Sobrien	(struct elf_assign_sym_version_info): Define.
241960484Sobrien	(struct elf_find_verdep_info): Define.
242060484Sobrien	(NAME(bfd_elf,size_dynamic_sections)): Add verdefs parameter.  Set
242160484Sobrien	up version sections.
242260484Sobrien	(elf_adjust_dynamic_symbol): Ignore indirect symbols.
242360484Sobrien	(elf_link_find_version_dependencies): New static function.
242460484Sobrien	(elf_link_assign_sym_version): New static function.
242560484Sobrien	(elf_link_renumber_dynsyms): New static function.
242660484Sobrien	(struct elf_final_link_info): Add symver_sec field.
242760484Sobrien	(elf_bfd_final_link): Initialize finfo.symver_sec.  Don't count
242860484Sobrien	local symbols of a dynamic object.  Handle DT_VER* constants.
242960484Sobrien	(elf_link_output_extsym): Simplify BFD_ASSERT checking for a
243060484Sobrien	dynamic object.  Skip indirect symbols from ELF objects.  Remove
243160484Sobrien	the version name before choosing a hash bucket.  Write out the
243260484Sobrien	version information if appropriate.
243360484Sobrien	(elf_link_input_bfd): Check for DYNAMIC, not ET_DYN.
243460484Sobrien	* bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
243560484Sobrien	(bfd_elf64_size_dynamic_sections): Likewise.
243660484Sobrien	* bfd-in2.h: Rebuild.
243760484Sobrien	* elf-bfd.h (struct elf_link_hash_entry): Add verinfo field.
243860484Sobrien	Change elf_link_hash_flags to unsigned short.
243960484Sobrien	(ELF_LINK_HIDDEN): Define.
244060484Sobrien	(struct elf_obj_tdata): Add fields dynversym_hdr, dynverref_hdr,
244160484Sobrien	dynverdef_hdr, dynversym_section, dynverdef_section,
244260484Sobrien	dynverref_section, cverdefs, cverrefs, verdef, verref.
244360484Sobrien	(elf_dynversym, elf_dynverdef, elf_dynverref): Define.
244460484Sobrien	(_bfd_elf_swap_verdef_in, _bfd_elf_swap_verdef_out): Declare.
244560484Sobrien	(_bfd_elf_swap_verdaux_in, _bfd_elf_swap_verdaux_out): Declare.
244660484Sobrien	(_bfd_elf_swap_verneed_in, _bfd_elf_swap_verneed_out): Declare.
244760484Sobrien	(_bfd_elf_swap_vernaux_in, _bfd_elf_swap_vernaux_out): Declare.
244860484Sobrien	(_bfd_elf_swap_versym_in, _bfd_elf_swap_versym_out): Declare.
244960484Sobrien	(_bfd_elf_slurp_version_tables): Declare.
245060484Sobrien	* elf.c (_bfd_elf_swap_verdef_in): New function.
245160484Sobrien	(_bfd_elf_swap_verdef_out): Likewise.
245260484Sobrien	(_bfd_elf_swap_verdaux_in, _bfd_elf_swap_verdaux_out): Likewise.
245360484Sobrien	(_bfd_elf_swap_verneed_in, _bfd_elf_swap_verneed_out): Likewise.
245460484Sobrien	(_bfd_elf_swap_vernaux_in, _bfd_elf_swap_vernaux_out): Likewise.
245560484Sobrien	(_bfd_elf_swap_versym_in, _bfd_elf_swap_versym_out): Likewise.
245660484Sobrien	(_bfd_elf_print_private_bfd_data): Add DT_VER* constants.  Print
245760484Sobrien	version information if there is any.
245860484Sobrien	(_bfd_elf_link_hash_newfunc): Initialize verinfo field.
245960484Sobrien	(bfd_section_from_shdr): Handle SHT_GNU_ver* section types.
246060484Sobrien	(elf_fake_sections): Handle .gnu.version* section names.
246160484Sobrien	(assign_section_numbers): Handle SHT_GNU_ver* section types.
246260484Sobrien	(_bfd_elf_slurp_version_tables): New function.
246360484Sobrien	* elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't include
246460484Sobrien	version name in string entered in dynamic hash table.
246560484Sobrien	* elfcode.h: Include fnmatch.h.
246660484Sobrien	* elf32-i386.c (elf_i386_relocate_section): Handle a dynamic
246760484Sobrien	symbol which was forced to become local.
246860484Sobrien	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
246960484Sobrien	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
247060484Sobrien	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
247160484Sobrien	* elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise.
247260484Sobrien
247360484SobrienFri Feb 21 16:15:18 1997  Jeffrey A Law  (law@cygnus.com)
247460484Sobrien
247560484Sobrien	* elf32-mn10200.c (mn10200_elf_final_link_relocate): Simplify
247660484Sobrien	somewhat.
247760484Sobrien	(mn10200_elf_relax_section): Correctly compute a symbol's value
247860484Sobrien	when the symbol is local, but not in the same section as we are
247960484Sobrien	relaxing.  Implement abs24 -> abs16, imm24 -> imm16 and d24 -> d16
248060484Sobrien	relaxing.
248160484Sobrien
248260484SobrienFri Feb 21 13:55:14 1997  Doug Evans  <dje@seba.cygnus.com>
248360484Sobrien
248460484Sobrien	* elf32-m32r.c: Rewrite to use ELF backend linker.
248560484Sobrien	Store lower 16 bits of addend in R_M32R_HI16_[SU]LO insns.
248660484Sobrien	Add small data area support (R_M32R_SDA16).
248760484Sobrien	* reloc.c: Document BFD_RELOC_M32R_SDA16.
248889857Sobrien	* bfd-in2.h, libbfd.h: Regenerated.
248960484Sobrien
249060484SobrienThu Feb 20 23:50:31 1997  Jeffrey A Law  (law@cygnus.com)
249160484Sobrien
249260484Sobrien	* elf32-mn10200.c (mn10200_elf_relax_section): New function.
249360484Sobrien	(mn10200_elf_relax_delete_bytes): Likewise.
249460484Sobrien	(mn10200_elf_symbol_address_p): Likewise.
249560484Sobrien	(mn10200_elf_get_relocated_section_contents): Likewise.
249660484Sobrien	(bfd_elf32_bfd_relax_section): Define.
249760484Sobrien	(bfd_elf32_bfd_get_relocated_section_contents): Likewise.
249860484Sobrien
249960484Sobrien	* elf32-mn10200.c (mn10200_elf_final_link_relocate): New function.
250060484Sobrien	(mn10200_elf_relocate_section): Likewise.
250160484Sobrien	(elf_backend_relocate_section): Define.
250260484Sobrien
250360484SobrienTue Feb 18 17:22:59 1997  Martin M. Hunt  <hunt@pizza.cygnus.com>
250460484Sobrien
250589857Sobrien	* Makefile.in: New target, elf-*-D30V.
250689857Sobrien	* archures.c: New target, elf-*-D30V.
250789857Sobrien	* config.bfd: New target, elf-*-D30V.
250889857Sobrien	* configure.in: New target, elf-*-D30V.
250989857Sobrien	* elf.c: New target, elf-*-D30V.
251089857Sobrien	* reloc.c: New target, elf-*-D30V.
251189857Sobrien	* targets.c: New target, elf-*-D30V.
251289857Sobrien	* bfd-in2.h: Rebuilt.
251389857Sobrien	* configure: Rebuilt.
251489857Sobrien	* libbfd.h: Rebuilt.
251589857Sobrien	* cpu-d30v.c: New files.
251689857Sobrien	* elf32-d30v.c: New files.
251760484Sobrien
251860484SobrienTue Feb 18 15:31:48 1997  Fred Fish  <fnf@cygnus.com>
251960484Sobrien
252060484Sobrien	* reloc.c (struct reloc_howto_struct): Fix typo in comment.
252160484Sobrien	* bfd-in2.h: Regenerated.
252260484Sobrien	* coff-tic80.c (RTYPE2HOWTO): Replace abort with real function.
252360484Sobrien	(rtype2howto): Add function.
252460484Sobrien	(tic80_howto_table): Add.
252560484Sobrien
252660484SobrienTue Feb 18 11:41:00 1997  Dawn Perchik  <dawn@cygnus.com>
252760484Sobrien
252860484Sobrien	* sysdep.h: Don't define errno in MSVC if error.h is included.
252960484Sobrien
253060484SobrienTue Feb 18 10:04:13 1997  Jeffrey A Law  (law@cygnus.com)
253160484Sobrien
253260484Sobrien	* elf32-v850.c (v850_elf_relocate_section): Make sure r_symndx
253360484Sobrien	is initialized before it is used.
253460484Sobrien
253560484SobrienMon Feb 17 11:28:40 1997  Ian Lance Taylor  <ian@cygnus.com>
253660484Sobrien
253760484Sobrien	* hp300hpux.c (convert_sym_type): Don't convert a secondary common
253860484Sobrien	symbol into a weak undefined symbol; leave it as a common symbol.
253960484Sobrien
254060484SobrienFri Feb 14 19:08:03 1997  Ian Lance Taylor  <ian@cygnus.com>
254160484Sobrien
254260484Sobrien	* elflink.h (elf_link_add_object_symbols): Don't issue a warning
254360484Sobrien	about a symbol defined in a dynamic object if it has already been
254460484Sobrien	defined in a regular object.
254560484Sobrien
254660484SobrienThu Feb 13 20:53:22 1997  Klaus Kaempf  (kkaempf@progis.de)
254760484Sobrien
254860484Sobrien	* makefile.vms: Add gcc flags to allow compiling with current gcc
254960484Sobrien	snapshot
255060484Sobrien	(targmatch.h): New dependency.
255160484Sobrien
255260484Sobrien	* reloc.c (BFD_RELOC_ALPHA_CODEADDR): New relocation for
255360484Sobrien	openVMS/Alpha.
255460484Sobrien	* evax.h (ALPHA_R_CODEADDR): New relocation.
255560484Sobrien	* evax-alpha.c (ALPHA_R_CODEADDR): 64 bit procedure relocation for
255660484Sobrien	openVMS/Alpha.
255760484Sobrien	* evax-etir.c (ALPHA_R_CODEADDR): Output object code for this
255860484Sobrien	relocation.
255960484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
256060484Sobrien
256160484Sobrien	Restrict symbol length to 64 bytes, case preserving:
256260484Sobrien	* evax-emh.c (_bfd_evax_write_emh): Remove case hacking.
256360484Sobrien	* evax-misc.c (_bfd_evax_case_hack_symbol): Remove.
256460484Sobrien	(_bfd_evax_length_hash_symbol): Added.
256560484Sobrien	* evax-etir.c (_bfd_evax_write_etir): Call
256660484Sobrien	_bfd_evax_length_hash_symbol before output of symbol.
256760484Sobrien	* evax-egsd.c (_bfd_evax_write_egsd): Likewise.
256860484Sobrien	* evax.h (flag_hash_long_names, flag_show_after_trunc): Remove.
256960484Sobrien
257060484Sobrien	* evax-emh.c: Output filename to object file without path.
257160484Sobrien
257260484Sobrien	* evax-egsd.c: New sections for local and global commons.
257360484Sobrien
257460484Sobrien	* evax-alpha.c, evax-emh.c, evax-egsd.c, evax-etir.c,
257560484Sobrien	evax-misc.c, evax.h: Remove 8 bit characters from copyright
257660484Sobrien	notices.  Replace AXP with Alpha.
257760484Sobrien
257860484SobrienWed Feb 12 18:10:30 1997  Ian Lance Taylor  <ian@cygnus.com>
257960484Sobrien
258060484Sobrien	* sunos.c (sunos_create_dynamic_sections): We need the dynamic
258160484Sobrien	sections if we are creating a shared library.
258260484Sobrien
258360484SobrienTue Feb 11 15:45:43 1997  Doug Evans  <dje@canuck.cygnus.com>
258460484Sobrien
258560484Sobrien	* configure.host (i386-windows): Don't set host64=true.
258660484Sobrien
258760484SobrienTue Feb 11 15:27:32 1997  Ian Lance Taylor  <ian@cygnus.com>
258860484Sobrien
258960484Sobrien	* elf32-mips.c (reloc_type): Add R_MIPS16_GPREL.
259060484Sobrien	(elf_mips16_gprel_howto): New static variable.
259160484Sobrien	(mips16_gprel_reloc): New static function.
259260484Sobrien	(bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS16_GPREL.
259360484Sobrien	(mips_info_to_howto_rel): Handle R_MIPS16_GPREL.
259460484Sobrien	(mips_elf_relocate_section): Handle R_MIPS16_GPREL.
259560484Sobrien	* reloc.c (BFD_RELOC_MIPS16_GPREL): Define.
259660484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
259760484Sobrien
259860484SobrienMon Feb 10 23:25:00 1997  Doug Evans  <dje@seba.cygnus.com>
259960484Sobrien
260060484Sobrien	* elf32-m32r.c (elf_m32r_howto_table): Change partial_inplace to true
260160484Sobrien	for R_M32R_{16,32,24,HI16_ULO,HI16_SLO,LO16}.
260260484Sobrien
260360484SobrienFri Feb  7 12:39:11 1997  Ian Lance Taylor  <ian@cygnus.com>
260460484Sobrien
260560484Sobrien	* elflink.h (elf_link_input_bfd): If we've discarded a section,
260660484Sobrien	the output section will be the absolute section; don't print an
260760484Sobrien	assertion message for that case when doing a relocateable link.
260860484Sobrien
260960484SobrienThu Feb  6 16:55:43 1997  Ian Lance Taylor  <ian@cygnus.com>
261060484Sobrien
261160484Sobrien	* elf32-mips.c (FN_STUB, CALL_STUB, CALL_FP_STUB): Define.
261260484Sobrien	(struct mips_elf_link_hash_entry): Add new fields fn_stub,
261360484Sobrien	need_fn_sub, call_stub, and call_fp_stub.
261460484Sobrien	(struct mips_elf_link_hash_table): Add field mips16_stubs_seen.
261560484Sobrien	(mips_elf_link_hash_newfunc): Initialize new fields.
261660484Sobrien	(mips_elf_link_hash_table_create): Likewise.
261760484Sobrien	(mips_elf_relocate_section): Redirect relocations to use mips16
261860484Sobrien	stubs when appropriate.
261960484Sobrien	(mips_elf_check_relocs): Attach stub sections to the appropriate
262060484Sobrien	symbol.  Set need_fn_stub when appropriate.
262160484Sobrien	(mips_elf_always_size_sections): New static function.
262260484Sobrien	(mips_elf_check_mips16_stubs): New static function.
262360484Sobrien	(elf_backend_always_size_sections): Define.
262460484Sobrien	* elf-bfd.h (struct elf_obj_tdata): Add local_stubs field.
262560484Sobrien
262660484Sobrien	* elflink.h (elf_link_input_bfd): Discard local symbols that are
262760484Sobrien	attached to sections which are not being included in the link.
262860484Sobrien
262960484SobrienWed Feb  5 13:20:17 1997  Ian Lance Taylor  <ian@cygnus.com>
263060484Sobrien
263160484Sobrien	* cofflink.c (_bfd_coff_generic_relocate_section): Ignore the
263260484Sobrien	symbol value when computing the addend for a pc_relative
263360484Sobrien	pcrel_offset reloc.
263460484Sobrien
263560484SobrienMon Feb  3 11:54:06 1997  Ian Lance Taylor  <ian@cygnus.com>
263660484Sobrien
263760484Sobrien	* cofflink.c (_bfd_coff_generic_relocate_section): If doing a
263860484Sobrien	relocateable link, just skip pc_relative pcrel_offset relocs.
263960484Sobrien	* coff-arm.c (coff_arm_rtype_to_howto): Return a different howto
264060484Sobrien	structure for an ARM26 reloc which can be resolved.
264160484Sobrien	(coff_arm_adjust_symndx): Only convert ARM26 to ARM26D if the
264260484Sobrien	reloc can be resolved.
264360484Sobrien
264460484Sobrien	* coff-h8300.c (h8300_reloc16_extra_cases): Correct off by one
264560484Sobrien	error in overflow check for R_RELBYTE.
264660484Sobrien
264760484SobrienFri Jan 31 14:07:27 1997  Ian Lance Taylor  <ian@cygnus.com>
264860484Sobrien
264960484Sobrien	* ieee.c (ieee_slurp_section_data): Pick up the start address.
265060484Sobrien	From Mark Rasin <mark.rasin@telrad.co.il>.
265160484Sobrien
265260484Sobrien	* aoutx.h (aout_link_write_symbols): Don't apply discard_l to
265360484Sobrien	debugging symbols.
265460484Sobrien
265560484SobrienWed Jan 29 00:00:49 1997  Jeffrey A Law  (law@cygnus.com)
265660484Sobrien
265760484Sobrien	* elf32-mn10200.c (reloc_type): Add 16bit pc-relative reloc.
265860484Sobrien	(elf_mn10200_howto_table): Likewise.
265960484Sobrien	(mn10200_reloc_map): Likewise.
266060484Sobrien
266160484SobrienMon Jan 27 12:07:35 1997  Doug Evans  <dje@seba.cygnus.com>
266260484Sobrien
266360484Sobrien	* reloc.c: Add relocs BFD_RELOC_M32R_{HI16_[US]LO,LO16}.
266460484Sobrien	* bfd-in2.h, libbfd.h: Regenerated.
266560484Sobrien	* elf32-m32r.c: Add support for them.
266660484Sobrien
266760484SobrienMon Jan 27 12:25:02 1997  Ian Lance Taylor  <ian@cygnus.com>
266860484Sobrien
266960484Sobrien	* aout-arm.c (MY_swap_std_reloc_in): Remove unused r_length.
267060484Sobrien	* elf32-ppc.c (ppc_elf_check_relocs): Remove unused plt.
267160484Sobrien	* elf32-v850.c (v850_elf_final_link_relocate): Remove used
267260484Sobrien	r_format and r_pcrel.  Always return a value.
267360484Sobrien	* riscix.c (MY_final_link_callback): Define to dummy value.
267460484Sobrien
267560484Sobrien	* elf32-i386.c (elf_i386_size_dynamic_sections): When checking for
267660484Sobrien	relocations against the text segment, look up the output name of
267760484Sobrien	the reloc section.
267860484Sobrien	* elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
267960484Sobrien	* elf32-mips.c (mips_elf_size_dynamic_sections): Likewise.
268060484Sobrien	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
268160484Sobrien	* elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
268260484Sobrien	* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
268360484Sobrien
268460484SobrienWed Jan 22 15:40:28 1997  Fred Fish  <fnf@cygnus.com>
268560484Sobrien
268660484Sobrien	* coff-tic80.c (tic80coff_vec): Use correct data put/get
268760484Sobrien	routines for little endian data.
268860484Sobrien	* coffcode.h (coff_write_object_contents): Set magic to
268960484Sobrien 	TIC80_ARCH_MAGIC for TIc80.
269060484Sobrien
269160484SobrienTue Jan 21 12:32:43 1997  Fred Fish  <fnf@cygnus.com>
269260484Sobrien
269360484Sobrien	* coff-tic80.c (tic80coff_vec): Change to little endian data
269460484Sobrien	as the default.
269560484Sobrien
269660484SobrienThu Jan 16 17:45:57 1997  Ian Lance Taylor  <ian@cygnus.com>
269760484Sobrien
269860484Sobrien	* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Change type of
269960484Sobrien	auxiliary_filters parameter to be const char * const *.  Accept a
270060484Sobrien	NULL terminated array.
270160484Sobrien	* bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
270260484Sobrien	(bfd_elf32_size_dynamic_sections): Update declaration.
270360484Sobrien	* bfd-in2.h: Rebuild.
270460484Sobrien
270560484SobrienWed Jan 15 11:21:32 1997  Ian Lance Taylor  <ian@cygnus.com>
270660484Sobrien
270760484Sobrien	* elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Treat a
270860484Sobrien	NOTYPE symbol in a text section as a FUNC symbol.
270960484Sobrien
271060484Sobrien	* coffcode.h (coff_compute_section_file_positions): Force
271160484Sobrien	relocbase to be aligned to COFF_DEFAULT_SECTION_ALIGNMENT_POWER.
271260484Sobrien
271360484SobrienTue Jan 14 08:46:33 1997  Doug Evans  <dje@canuck.cygnus.com>
271460484Sobrien
271560484Sobrien	* libaout.h (machine_type): Reserve several values for sparclet.
271660484Sobrien
271760484SobrienMon Jan 13 22:39:08 1997  Michael Meissner  <meissner@tiktok.cygnus.com>
271860484Sobrien
271960484Sobrien	* config.bfd (tic80-*-*): Don't require 'coff'.
272060484Sobrien
272160484SobrienMon Jan 13 19:36:25 1997  Michael Meissner  <meissner@tiktok.cygnus.com>
272260484Sobrien
272360484Sobrien	* elf32-v850.c (v850_elf_howto_table): Set the special_function
272460484Sobrien	table to v850_elf_reloc for all non-standard relocations.
272560484Sobrien	(v850_elf_check_relocs): Add check for h being non-null.
272660484Sobrien	(v850_elf_reloc): Add  R_V850_ZDA_OFFSET support.  Use switch
272760484Sobrien	statement instead of multiple ifs.
272860484Sobrien	(v850_elf_relocate_section): Fix up error message, don't just call
272960484Sobrien	abort.
273060484Sobrien
273160484SobrienMon Jan  6 13:28:35 1997  Jeffrey A Law  (law@cygnus.com)
273260484Sobrien
273360484Sobrien	* elf32-mn10200.c (elf_mn10200_howto): Don't ever set partial-inplace.
273460484Sobrien	Use bfd_elf_generic_reloc as special function for all relocs.
273560484Sobrien	(bfd_elf32_mn10200_reloc): Remove unnecessary function.
273660484Sobrien
273760484Sobrien	* elf32-mn10200.c (elf_mn10200_howto): Set pcrel_offset for
273860484Sobrien	24bit pc-relative reloc.
273960484Sobrien
274060484SobrienFri Jan  3 16:33:00 1997  Fred Fish  <fnf@cygnus.com>
274160484Sobrien
274260484Sobrien	* Makefile.in (coff-tic80.o): Add coffcode.h to dependency list.
274360484Sobrien	* coff-tic80.c (tic80coff_vec): Data byte order is big endian and
274460484Sobrien	header byte order is little endian.  Use correct bfd_get and
274560484Sobrien	bfd_put routines for little endian headers.
274660484Sobrien	* coffcode.h (coff_set_arch_mach_hook): Set arch to
274760484Sobrien	bfd_arch_tic80 for TIC80_ARCH_MAGIC number.
274860484Sobrien
274960484SobrienFri Jan  3 16:54:08 1997  Jeffrey A Law  (law@cygnus.com)
275060484Sobrien
275160484Sobrien	* reloc.c: Add BFD_RELOC_24.
275260484Sobrien	* elf32-mn10200.c (enum reloc_type): Add 24bit and pcrel relocs.
275360484Sobrien	(elf_mn10200_howto, mn10200_reloc_map): Corresponding changes.
275460484Sobrien	* bfd-in2.h, libbfd.h: Rebuilt.
275560484Sobrien
275660484SobrienFri Jan  3 16:58:31 1997  Richard Henderson  <rth@tamu.edu>
275760484Sobrien
275860484Sobrien	elf64-alpha multiple .got rewrite:
275960484Sobrien
276060484Sobrien	* elf-bfd.h (struct elf_backend_data): Add always_size_sections entry.
276160484Sobrien	(bfd_elf*_mkobject): Don't define here ...
276260484Sobrien	* elfxx-target.h: ... but rather here.  Default always_size_sections
276360484Sobrien	hook to NULL.
276460484Sobrien	* elf.c (elf_mkobject): Rename to bfd_elf_mkobject, since that was
276560484Sobrien	what the #defines in elf-bfd.h transmuted it to anyway.
276660484Sobrien
276760484Sobrien	* section.c: Add SEC_LINKER_CREATED flag.
276860484Sobrien	* bfd-in2.h: Rebuild.
276960484Sobrien	* elf32-i386.c (elf_i386_check_relocs): Add SEC_LINKER_CREATED to
277060484Sobrien	relocation section flags.
277160484Sobrien	(elf_i386_size_dynamic_sections): Use SEC_LINKER_CREATED instead of
277260484Sobrien	SEC_IN_MEMORY to recognize generated bits.
277360484Sobrien	* elf32-m68k.c (elf_m68k_check_relocs, elf_m68k_size_dynamic_sections):
277460484Sobrien	Likewise.
277560484Sobrien	* elf32-mips.c (mips_elf_final_link, mips_elf_create_dynamic_sections,
277660484Sobrien	mips_elf_create_compact_rel_section, mips_elf_create_got_section,
277760484Sobrien	mips_elf_check_relocs, mips_elf_size_dynamic_sections): Likewise.
277860484Sobrien	* elf32-ppc.c (ppc_elf_create_linker_section,
277960484Sobrien	ppc_elf_size_dynamic_sections): Likewise.
278060484Sobrien	* elf32-sparc.c (elf32_sparc_check_relocs,
278160484Sobrien	elf32_sparc_size_dynamic_sections): Likewise.
278260484Sobrien	* elflink.c (_bfd_elf_create_got_section): Add SEC_LINKER_CREATED to
278360484Sobrien	section flags.
278460484Sobrien	(_bfd_elf_create_dynamic_sections): Likewise.
278560484Sobrien	(_bfd_elf_make_linker_section_rela): Likewise.
278660484Sobrien	* elflink.h (elf_link_create_dynamic_sections): Likewise.
278760484Sobrien	(bfd_elf,size_dynamic_sections): Call the always_size_sections hook.
278860484Sobrien	(elf_bfd_final_link): Use SEC_LINKER_CREATED instead of SEC_IN_MEMORY
278960484Sobrien	to identify generated bits.
279060484Sobrien	(elf_link_input_bfd): Likewise.
279160484Sobrien
279260484Sobrien	* elf64-alpha.c: Rewrite everything touching relocations.
279360484Sobrien
279460484SobrienFri Jan  3 11:42:53 1997  Michael Meissner  <meissner@tiktok.cygnus.com>
279560484Sobrien
279660484Sobrien	* elf32-v850.c (all functions and static variables): Go through
279760484Sobrien	and regularize names to be of the form v850_elf_<xxx>.
279860484Sobrien	(toplevel): Include <elf/v850.h>.
279960484Sobrien	(enum reloc_type): Move to include/elf/v850.h.
280060484Sobrien	(v850_elf_check_relocs): For common variables, if the variable is
280160484Sobrien	referenced by a R_V850_{SDA,ZDA,TDA} relocation, put the variable
280260484Sobrien	into the appropriate section.
280360484Sobrien	(elf_backend_check_relocs): Define.
280460484Sobrien
280560484SobrienTue Dec 31 15:15:28 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
280660484Sobrien
280760484Sobrien	* elf32-v850.c (elf_v850_howto_table): Fix some spacing.
280860484Sobrien
280960484SobrienTue Dec 31 14:44:50 1996  Ian Lance Taylor  <ian@cygnus.com>
281060484Sobrien
281160484Sobrien	* config.bfd (mips*el-*-linux*): New target.
281260484Sobrien	(mips*-*-linux*): New target.
281360484Sobrien
281460484Sobrien	* elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Clean up.
281560484Sobrien	Return a useful value.
281660484Sobrien
281760484Sobrien	* Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
281860484Sobrien
281960484Sobrien	* configure.in: Check ac_cv_func_mmap_fixed_mapped, not
282060484Sobrien	ac_cv_func_mmap.
282160484Sobrien	* configure: Rebuild.
282260484Sobrien	* configure.host: Use ac_cv_func_mmap_fixed_mapped instead of
282360484Sobrien	ac_cv_func_mmap in bfd/configure.host.
282460484Sobrien
282560484Sobrien	* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Add
282660484Sobrien	filter_shlib and auxiliary_filter_shlib parameters.
282760484Sobrien	* elf.c (_bfd_elf_print_private_bfd_data): Handle DT_AUXILIARY and
282860484Sobrien	DT_FILTER.
282960484Sobrien	* bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
283060484Sobrien	(bfd_elf64_size_dynamic_sections): Likewise.
283160484Sobrien	* bfd-in2.h: Rebuild.
283260484Sobrien
283360484SobrienMon Dec 30 18:48:52 1996  Ian Lance Taylor  <ian@cygnus.com>
283460484Sobrien
283560484Sobrien	* xcofflink.c (xcoff_build_ldsyms): When exporting all defined
283660484Sobrien	symbols, don't export a symbol which is defined by an object in an
283760484Sobrien	archive which contains shared objects.
283860484Sobrien
283960484SobrienMon Dec 30 16:12:58 1996  Fred Fish  <fnf@cygnus.com>
284060484Sobrien
284160484Sobrien	* archures.c (enum bfd_architecture): Add bfd_arch_tic80
284260484Sobrien	for TI TMS320c80 (MVP).
284360484Sobrien	(bfd_archures_list): Add bfd_tic80_arch.
284460484Sobrien	* bfd-in2.h: Regenerate by running "make headers".
284560484Sobrien
284660484SobrienSun Dec 29 16:18:52 1996  Fred Fish  <fnf@cygnus.com>
284760484Sobrien
284860484Sobrien	* cpu-tic80.c (bfd_tic80_arch): Add struct.
284960484Sobrien	* configure.in (case $vec): Correct typo, "tb" not "tp".
285060484Sobrien	Also add cofflink.o for tic80coff_vec.
285160484Sobrien	* configure: Regenerate with autoconf.
285260484Sobrien
285360484SobrienMon Dec 30 11:54:56 1996  Ian Lance Taylor  <ian@cygnus.com>
285460484Sobrien
285560484Sobrien	* libbfd.c: Patch up the mmap code so that it is only built if BFD
285660484Sobrien	is configured with --with-mmap.
285760484Sobrien
285860484SobrienSun Dec 29 10:48:57 1996  Fred Fish  <fnf@cygnus.com>
285960484Sobrien
286060484Sobrien	* Makefile.in (BFD32_BACKENDS): Add coff-tic80.o
286160484Sobrien	(ALL_MACHINES): Add cpu-tic80.o
286260484Sobrien	(cpu-tic80.o, coff-tic80.o): Add dependencies.
286360484Sobrien	* coff-tic80.c: Add skeleton, cloned from another coff config.
286460484Sobrien	* coffcode.h (coff_write_object_contents): Set magic to TIC80MAGIC
286560484Sobrien 	for TIc80.
286660484Sobrien
286760484SobrienFri Dec 27 20:56:41 1996  Fred Fish  <fnf@cygnus.com>
286860484Sobrien
286960484Sobrien	* TODO: Correct a misspelling.
287060484Sobrien	* coff-tic80.c: New file for TI TMS320C80 (MVP).
287160484Sobrien	* cpu-tic80.c: New file for TI TMS320C80 (MVP).
287260484Sobrien	* configure.in (case $vec): Add tic80coff_vec entry.
287360484Sobrien	* configure: Regenerate with autoconf.
287460484Sobrien	* archures.c (bfd_tic80_arch): Declare.
287560484Sobrien	* bfd-in2.h (enum bfd_architecture): Add bfd_arch_tic80.
287660484Sobrien	* config.bfd (case ${targ}): Add tic80*-*-coff* target.
287760484Sobrien	* targets.c (tic80coff_vec): Add decl as extern bfd_target.
287860484Sobrien	(bfd_target_vector): Add tic80coff_vec entry.
287960484Sobrien
288060484SobrienFri Dec 27 11:48:12 1996  H.J. Lu  <hjl@lucon.org>
288160484Sobrien
288260484Sobrien	* elflink.h (elf_buckets): Add some more values for larger
288360484Sobrien	binaries.
288460484Sobrien
288560484SobrienThu Dec 26 18:36:54 1996  Ian Lance Taylor  <ian@cygnus.com>
288660484Sobrien
288760484Sobrien	* Makefile.in (install): Move subdir_do out of conditional. From
288860484Sobrien	Fred Fish <fnf@cygnus.com>.
288960484Sobrien
289060484SobrienWed Dec 18 10:04:30 1996  Jeffrey A Law  (law@cygnus.com)
289160484Sobrien
289260484Sobrien	* elf32-mn10200.c (enum reloc_type): Enable basic 8, 16, and
289360484Sobrien	32 bit relocs.
289460484Sobrien	(elf_mn10200_howto_table): Likewise.
289560484Sobrien	(mn10200_reloc_map): Likewise.
289660484Sobrien
289760484SobrienTue Dec 17 11:09:36 1996  Ian Lance Taylor  <ian@cygnus.com>
289860484Sobrien
289960484Sobrien	* elf32-mips.c (mips_elf_add_symbol_hook): Add 1 to the value of a
290060484Sobrien	mips16 symbol during the link.
290160484Sobrien	(mips_elf_finish_dynamic_symbol): Subtract 1 from the value of a
290260484Sobrien	mips16 symbol.
290360484Sobrien	(mips_elf_link_output_symbol_hook): New static function.
290460484Sobrien	(elf_backend_link_output_symbol_hook): Define.
290560484Sobrien
290660484Sobrien	* elf.c (bfd_elf_print_symbol): Print the st_other field if it is
290760484Sobrien	not zero.
290860484Sobrien
290960484SobrienMon Dec 16 14:38:39 1996  Ian Lance Taylor  <ian@cygnus.com>
291060484Sobrien
291160484Sobrien	* elf.c (bfd_section_from_shdr): Don't check for reloc sections
291260484Sobrien	against SEC_DEBUGGING sections here (revert patch of December 5).
291360484Sobrien	* elfcode.h (elf_object_p): Check for them here, instead.
291460484Sobrien
291560484SobrienSun Dec 15 14:46:06 1996  Ian Lance Taylor  <ian@cygnus.com>
291660484Sobrien
291760484Sobrien	* elfcode.h (elf_slurp_reloc_table): Add dynamic parameter.
291860484Sobrien	* elf.c (_bfd_elf_canonicalize_reloc): Pass new argument to
291960484Sobrien	slurp_reloc_table.
292060484Sobrien	(_bfd_elf_get_dynamic_reloc_upper_bound): New function.
292160484Sobrien	(_bfd_elf_canonicalize_dynamic_reloc): New function.
292260484Sobrien	* elf-bfd.h (struct elf_size_info): Update declaration of
292360484Sobrien	slurp_reloc_table.
292460484Sobrien	(_bfd_elf_get_dynamic_reloc_upper_bound): Declare.
292560484Sobrien	(_bfd_elf_canonicalize_dynamic_reloc): Declare.
292660484Sobrien	* elfxx-target.h: Use new dynamic reloc routines by default.
292760484Sobrien	* elf64-mips.c (mips_elf64_slurp_reloc_table): Add dynamic
292860484Sobrien	parameter.
292960484Sobrien
293060484SobrienFri Dec 13 13:18:49 1996  Dan Wilder  <dan@gasboy.com>
293160484Sobrien
293260484Sobrien	* coffcode.h (coff_set_flags): Use MC68KBCSMAGIC for bfd_arch_m68k
293360484Sobrien	if NAMES_HAVE_UNDERSCORE is defined.
293460484Sobrien
293560484SobrienFri Dec 13 11:13:23 1996  Doug Evans  <dje@canuck.cygnus.com>
293660484Sobrien
293760484Sobrien	* libaout.h (enum machine_type): Change M_SPARCLET from 142 to 131.
293860484Sobrien
293960484SobrienThu Dec 12 15:07:20 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
294060484Sobrien
294160484Sobrien	* elf32-ppc.c (ppc_elf_check_relocs): Move R_PPC_PLTREL24 into the
294260484Sobrien	supported relocs.
294360484Sobrien
294460484SobrienThu Dec 12 14:55:41 1996  Ian Lance Taylor  <ian@cygnus.com>
294560484Sobrien
294660484Sobrien	* elflink.h (elf_link_add_object_symbols): Only add a weak
294760484Sobrien	symbol if the real definition is in the dynamic symbol table.
294860484Sobrien	After finding the real definition, then, if it is dynamic, add the
294960484Sobrien	weak symbol to the dynamic symbol table.
295060484Sobrien
295160484Sobrien	* coff-aux.c (coff_m68k_aux_link_add_one_symbol): Make static.
295260484Sobrien
295360484Sobrien	* ppcboot.c (ppcboot_set_arch_mach): Don't define; it's a
295460484Sobrien	function.
295560484Sobrien	(ppcboot_bfd_print_private_bfd_data): Don't take the address of an
295660484Sobrien	array.
295760484Sobrien
295860484SobrienTue Dec 10 23:23:52 1996  Jeffrey A Law  (law@cygnus.com)
295960484Sobrien
296060484Sobrien	* elf32-mn10300.c (reloc_type): Remove big endian mn10300 reloc
296160484Sobrien	variants.
296260484Sobrien	(elf32_mn10300_howto_table, mn10300_reloc_map): Likewise.
296360484Sobrien	(bfd_elf32_mn10300_reloc): Write data in little endian format.
296460484Sobrien	* reloc.c: Remove mn10300 big endian relocs.
296560484Sobrien	* bfd-in2.h, libbfd.h: Rebuilt.
296660484Sobrien
296760484Sobrien	* elf32-mn10200.c: Update from elf32-mn10300.c.
296860484Sobrien
296960484SobrienFri Dec  6 15:18:05 1996  Jeffrey A Law  (law@cygnus.com)
297060484Sobrien
297160484Sobrien	* elf32-mn10300.c (elf_symbol_leading_char): Define.
297260484Sobrien
297360484Sobrien	* elf32-mn10300.c: Add some comments.
297460484Sobrien
297560484SobrienFri Dec  6 17:16:43 1996  Ian Lance Taylor  <ian@cygnus.com>
297660484Sobrien
297760484Sobrien	* ihex.c (ihex_scan): Always initialize buf before jumping to
297860484Sobrien	error_return.
297960484Sobrien	(ihex_read_section): Likewise.
298060484Sobrien
298160484SobrienThu Dec  5 22:29:18 1996  Jeffrey A Law  (law@cygnus.com)
298260484Sobrien
298360484Sobrien	* elf32-mn10300.c (elf_mn10300_howto_table): Don't set partial-
298460484Sobrien	inplace for most relocs.
298560484Sobrien
298660484SobrienThu Dec  5 13:24:46 1996  Ian Lance Taylor  <ian@cygnus.com>
298760484Sobrien
298860484Sobrien	* elflink.h (elf_link_add_object_symbols): Calling check_relocs
298960484Sobrien	even if SEC_ALLOC is not set.
299060484Sobrien	* elf32-i386.c (elf_i386_check_relocs): Don't check SEC_ALLOC
299160484Sobrien	when deciding whether to copy a reloc into a shared object.
299260484Sobrien	(elf_i386_relocate_section): Likewise.
299360484Sobrien	* elf32-sparc.c (elf32_sparc_check_relocs): Likewise.
299460484Sobrien	(elf32_sparc_relocate_section): Likewise.
299560484Sobrien	* elf32-i386.c (elf_i386_check_relocs): Don't set SEC_ALLOC in a
299660484Sobrien	reloc section if it is not set in the source section.
299760484Sobrien	* elf32-sparc.c (elf32_sparc_check_relocs): Likewise.
299860484Sobrien	* elf.c (bfd_section_from_shdr): Mark a reloc section associated
299960484Sobrien	with a SEC_DEBUGGING section as SEC_DEBUGGING.
300060484Sobrien
300160484SobrienWed Dec  4 14:18:13 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
300260484Sobrien
300360484Sobrien	* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): #if 0 code that
300460484Sobrien	expects a .got.plt until we actually create it.
300560484Sobrien
300660484SobrienMon Dec  2 12:13:51 1996  Ian Lance Taylor  <ian@cygnus.com>
300760484Sobrien
300860484Sobrien	* cofflink.c (_bfd_coff_generic_relocate_section): Print an error
300960484Sobrien	message for bfd_reloc_outofrange, rather than aborting.  From
301060484Sobrien	Philippe De Muyter <phdm@info.ucl.ac.be>.
301160484Sobrien
301260484Sobrien	* cofflink.c (_bfd_coff_final_link): If there aren't any relocs in
301360484Sobrien	a relocateable link, don't try to process them.  From Heinz Wrobel
301460484Sobrien	<wrobel@lpr.e-technik.tu-muenchen.de>.
301560484Sobrien
301660484SobrienMon Dec  2 00:39:24 1996  Jeffrey A Law  (law@cygnus.com)
301760484Sobrien
301860484Sobrien	* elf32-mn10300.c (mn10300_info_howto): Renamed from
301960484Sobrien	mn10300_info_howto_rel.  Tweak reloc argument to be an
302060484Sobrien	Elf32_Internal_Rela.
302160484Sobrien	(USE_RELA): Define instead of USE_REL.
302260484Sobrien	(elf_info_to_howto, elf_info_howto_rel): Corresponding changes.
302360484Sobrien
302460484SobrienSun Dec  1 00:18:59 1996  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
302560484Sobrien
302660484Sobrien	* configure.in, configure:  Handle mips*-sgi-irix6*.
302760484Sobrien	* irix-core.c (irix_core_core_file_p):  Accept CORE_MAGICN32
302860484Sobrien	core files.
302960484Sobrien
303060484SobrienWed Nov 27 12:10:25 1996  Ian Lance Taylor  <ian@cygnus.com>
303160484Sobrien
303260484Sobrien	* elf32-i386.c (elf_i386_relocate_section): Warn about a
303360484Sobrien	relocation against a symbol defined in a section with no output
303460484Sobrien	section.
303560484Sobrien
303660484SobrienTue Nov 26 11:07:31 1996  Ian Lance Taylor  <ian@cygnus.com>
303760484Sobrien
303860484Sobrien	* aclocal.m4 (BFD_CC_FOR_BUILD): Don't require AC_C_CROSS.
303960484Sobrien	* configure, config.in: Rebuild with autoconf 2.12.
304060484Sobrien
304160484Sobrien	* elf-bfd.h (struct elf_link_hash_entry): Add other field.
304260484Sobrien	* elf.c (_bfd_elf_link_hash_newfunc): Initialize other field.
304360484Sobrien	(swap_out_syms): Set st_other from existing st_other field.
304460484Sobrien	* elflink.h (elf_link_add_object_symbols): Store st_other in hash
304560484Sobrien	table other field.
304660484Sobrien	(elf_link_output_extsym): Set the other field from the global hash
304760484Sobrien	table entry.
304860484Sobrien	* elf32-mips.c (enum reloc_type): Add R_MIPS16_26.
304960484Sobrien	(elf_mips16_jump_howto): New static variable.
305060484Sobrien	(mips16_jump_reloc): New static function.
305160484Sobrien	(bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS16_JMP.
305260484Sobrien	(mips_info_to_howto_rel): Handle R_MIPS16_26.
305360484Sobrien	(mips_elf_relocate_section): Handle R_MIPS16_26.  Handle R_MIPS_26
305460484Sobrien	to a mips16 symbol.
305560484Sobrien	* reloc.c (BFD_RELOC_MIPS16_JMP): Add to list of relocs.
305660484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
305760484Sobrien	* cpu-mips.c (arch_info_struct): Add mips:16 entry.
305860484Sobrien
305960484SobrienMon Nov 25 11:23:32 1996  Ian Lance Taylor  <ian@cygnus.com>
306060484Sobrien
306160484Sobrien	* configure.host: Use long long for mips-sgi-irix6*.
306260484Sobrien
306360484Sobrien	* coffswap.h (coff_swap_scnhdr_out): Make line number overflow
306460484Sobrien	only a warning.  From Philippe De Muyter <phdemuyt@ulb.ac.be>.
306560484Sobrien
306660484SobrienMon Nov 25 08:52:29 1996  Jeffrey A Law  (law@cygnus.com)
306760484Sobrien
306860484Sobrien	* elf32-mn10300.c (bfd_elf32_mn10300_reloc): New function.
306960484Sobrien	(enum reloc_type): Add more reloc types.
307060484Sobrien	(elf32_mn10300_howto_table): Update for new reloc types.
307160484Sobrien	(elf32_mn10300_reloc_map): Update for new reloc types.
307260484Sobrien	* reloc.c: Add some new relocs for the mn10300 series.
307360484Sobrien	* bfd-in2.h, libbfd.h: Rebuilt.
307460484Sobrien
307560484SobrienSat Nov 23 13:26:18 1996  Jeffrey A Law  (law@cygnus.com)
307660484Sobrien
307760484Sobrien	* som.c (setup_sections): Don't lose for a space which has
307860484Sobrien	no data, but some symbols.
307960484Sobrien
308060484SobrienFri Nov 22 11:32:13 1996  Ian Lance Taylor  <ian@cygnus.com>
308160484Sobrien
308260484Sobrien	* sunos.c (struct sunos_link_hash_table): Add got_needed field.
308360484Sobrien	(sunos_link_hash_table_create): Initialize got_needed.
308460484Sobrien	(sunos_create_dynamic_sections): Only set .got section size if it
308560484Sobrien	is not already set.  Set got_needed.
308660484Sobrien	(bfd_sunos_size_dynamic_sections): Check got_needed.  Only set
308760484Sobrien	sdynptr, and only handle dynamic sections, if dynamic sections are
308860484Sobrien	needed.
308960484Sobrien	(sunos_scan_std_relocs): Pass false to create_dynamic_sections.
309060484Sobrien	Initialize .got section.
309160484Sobrien	(sunos_scan_ext_relocs): Likewise.
309260484Sobrien	(sunos_write_dynamic_symbol): Set up PLT entry even if this is not
309360484Sobrien	a dynamic symbol.
309460484Sobrien	(sunos_finish_dynamic_link): Check got_needed.  Only set up
309560484Sobrien	dynamic linking information if needed.
309660484Sobrien
309760484SobrienThu Nov 21 10:31:31 1996  Rob Savoye  (rob@cygnus.com)
309860484Sobrien
309960484Sobrien	* config.bfd: Added VersaDOS format to the Ericsson configuration.
310060484Sobrien
310160484SobrienWed Nov 20 16:31:31 1996  Jeffrey A Law  (law@cygnus.com)
310260484Sobrien
310360484Sobrien	* elf32-mn10300.c: Rough cut at relocs for the mn10300.
310460484Sobrien
310560484SobrienWed Nov 13 08:12:38 1996  Jeffrey A Law  (law@cygnus.com)
310660484Sobrien
310760484Sobrien	* Makefile.in (elf32-d10v.o): Don't depend on elf/d10v.h
310860484Sobrien	anymore.
310960484Sobrien
311060484SobrienTue Nov 12 13:30:00 1996  Dawn Perchik  <dawn@cygnus.com>
311160484Sobrien
311260484Sobrien	* filemode.c: Include sysdep.h.
311360484Sobrien	* ihex.c: Add casts to eliminate compiler warnings.
311460484Sobrien	* sunos.c: Add casts to eliminate compiler warnings.
311560484Sobrien
311660484SobrienMon Nov 11 10:37:02 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
311760484Sobrien
311860484Sobrien	* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Create .got.plt
311960484Sobrien	section.
312060484Sobrien	(ppc_elf_check_relocs): Add support for R_PPC_LOCAL24PC.  Make
312160484Sobrien	appropriate relocations in the .so file if shared.
312260484Sobrien	(ppc_elf_relocate_section): Ditto.
312360484Sobrien
312460484SobrienTue Oct 29 15:03:02 1996  Doug Evans  <dje@canuck.cygnus.com>
312560484Sobrien
312660484Sobrien	* elf32-m32r.c (elf_m32r_howto_table, R_M32R_24): Use
312760484Sobrien	complain_overflow_unsigned.
312860484Sobrien
312960484SobrienTue Oct 29 12:53:46 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>
313060484Sobrien
313160484Sobrien	* elf32-d10v.c (elf_d10v_howto_table): Don't complain on
313260484Sobrien	overflows for R_D10V_16 and R_D10V_18.
313360484Sobrien
313460484SobrienTue Oct 29 13:23:53 1996  Ian Lance Taylor  <ian@cygnus.com>
313560484Sobrien
313660484Sobrien	* ieee.c (ieee_write_section_part): Use LMA rather than VMA.
313760484Sobrien	(do_with_relocs): Likewise.
313860484Sobrien	(do_as_repeat): Likewise.
313960484Sobrien	(copy_expression): Likewise.
314060484Sobrien
314160484SobrienFri Oct 25 16:56:40 1996  Ian Lance Taylor  <ian@cygnus.com>
314260484Sobrien
314360484Sobrien	* ieee.c (ieee_write_external_part): Correctly record whether
314460484Sobrien	there is an external part.
314560484Sobrien
314660484SobrienThu Oct 24 14:32:52 1996  Jeffrey A Law  (law@cygnus.com)
314760484Sobrien
314860484Sobrien	* elf32-v850.c (elf32_v850_bfd_final_link_relocate): Correctly
314960484Sobrien	handle tda offsets for sld.w and sst.w instructions.
315060484Sobrien	Fix alignment check in sld.w and sst.w tda reloc handling.
315160484Sobrien
315260484SobrienThu Oct 24 09:08:47 1996  Stu Grossman  (grossman@critters.cygnus.com)
315360484Sobrien
315460484Sobrien	* aclocal.m4, configure:  Set USE_BINARY_FOPEN for *-*-windows.
315560484Sobrien
315660484SobrienWed Oct 23 00:53:16 1996  Jeffrey A Law  (law@cygnus.com)
315760484Sobrien
315860484Sobrien	* elf32-v850.c: Add comments about assumptions about
315960484Sobrien	char, short & long sizes.
316060484Sobrien	(elf32_v850_bfd_final_link_relocate): Fix sign extension
316160484Sobrien	problems for several relocs.
316260484Sobrien
316360484Sobrien	* elf32-v850.c (elf32_v850_howto_table): Fix typo in
316460484Sobrien	R_V850_SDA_OFFSET entry.
316560484Sobrien
316660484SobrienWed Oct 23 00:20:34 1996  Ian Lance Taylor  <ian@cygnus.com>
316760484Sobrien
316860484Sobrien	* xcofflink.c (bfd_xcoff_import_symbol): Don't allocate ldsym.
316960484Sobrien	Store import file index in ldindx.
317060484Sobrien	(xcoff_build_ldsyms): Assume that ldsym was not previously
317160484Sobrien	allocated.  For an imported symbol, copy ldindx into l_ifile.
317260484Sobrien
317360484SobrienTue Oct 22 19:20:38 1996  Jeffrey A Law  (law@cygnus.com)
317460484Sobrien
317560484Sobrien	* elf32-v850.c (elf_v850_howto_table): Fix ordering of
317660484Sobrien	R_V850_ZDA_OFFSET and R_V850_TDA_OFFSET.  Fix various
317760484Sobrien	fields in R_V850_TDA_OFFSET.
317860484Sobrien	(elf32_v850_bfd_final_link_relocate): Tweak pc-relative
317960484Sobrien	relocs to work more like other relocs.  Handle R_V850_TDA_OFFSET
318060484Sobrien	relocations.
318160484Sobrien
318260484Sobrien	* elf32-v850.c: Include bfdlink.h.
318360484Sobrien	(bfd_elf32_v850_reloc): Return an error if we get a reloc
318460484Sobrien	we can't handle.
318560484Sobrien	(elf32_v850_bfd_final_link_relocate): New function.
318660484Sobrien	(v850_elf_relocation_section): Likewise.
318760484Sobrien	(elf_backend_relocate_section): Define.
318860484Sobrien
318960484SobrienTue Oct 22 17:22:43 1996  Ian Lance Taylor  <ian@cygnus.com>
319060484Sobrien
319160484Sobrien	* binary.c (binary_set_section_contents): Ignore sections which
319260484Sobrien	don't have SEC_LOAD and SEC_ALLOC set.
319360484Sobrien
319460484SobrienMon Oct 21 12:13:05 1996  Jeffrey A Law  (law@cygnus.com)
319560484Sobrien
319660484Sobrien	* linker.c (_bfd_generic_final_link): Avoid losing static
319760484Sobrien	symbols in the .bss section.
319860484Sobrien
319960484SobrienMon Oct 21 10:54:58 1996  Ian Lance Taylor  <ian@cygnus.com>
320060484Sobrien
320160484Sobrien	* elf32-mips.c (elf_mips_howto_table): Describe R_MIPS_64.
320260484Sobrien	(mips32_64bit_reloc): New static function.
320360484Sobrien	(mips_reloc_map): Add entry for BFD_RELOC_64.
320460484Sobrien	(mips_elf_relocate_section): Handle R_MIPS_64.
320560484Sobrien
320660484Sobrien	* linker.c (default_indirect_link_order): Print an error message
320760484Sobrien	when attempting to do a relocateable link with different object
320860484Sobrien	file formats, rather than calling abort.
320960484Sobrien
321060484SobrienThu Oct 17 10:43:29 1996  Doug Evans  <dje@canuck.cygnus.com>
321160484Sobrien
321260484Sobrien	* reloc.c (m32r relocs): Rename them.
321360484Sobrien	* bfd-in2.h, libbfd.h: Regenerated.
321460484Sobrien	* elf32-m32r.c: Update.
321560484Sobrien	(m32r_elf_10_pcrel_reloc): New function.
321660484Sobrien	(elf_m32r_howto_table, R_M32R_10_PCREL entry): Use it.
321760484Sobrien	(elf_m32r_howto_table, R_M32R_24 entry): Fix {src,dst}_masks.
321860484Sobrien
321960484SobrienWed Oct 16 11:24:35 1996  Jeffrey A Law  (law@cygnus.com)
322060484Sobrien
322160484Sobrien	* linker.c (_bfd_generic_final_link): Set "linker_mark" for
322260484Sobrien	all sections that will be included in the output file.
322360484Sobrien	(_bfd_generic_link_output_symbols): Discard symbols in sections
322460484Sobrien	which are being discarded.
322560484Sobrien	* elf32-v850.c (enum reloc_type): Add R_V850_SDA_OFFSET,
322660484Sobrien	R_V850_TDA_OFFSET and R_V850_ZDA_OFFSET.
322760484Sobrien	(elf_v850_howto_table): Corresponding changes.
322860484Sobrien	(elf_v850_reloc_map): Corresponding changes.
322960484Sobrien	* reloc.c: Add additional V850 relocations.
323060484Sobrien	* bfd-in2.h, libbfd.h: Rebuilt.
323160484Sobrien
323260484Sobrien	* elf32-v850.c (bfd_elf32_v850_reloc): Mask out bits we
323360484Sobrien	no longer want in pc-relative relocs.
323460484Sobrien
323560484SobrienTue Oct 15 22:17:37 1996  Jeffrey A Law  (law@cygnus.com)
323660484Sobrien
323760484Sobrien	* elf32-v850.c (bfd_elf32_v850_reloc): Don't silently
323860484Sobrien	accept a reloc against an undefined sybmol!
323960484Sobrien
324060484SobrienTue Oct 15 16:17:28 1996  Stu Grossman  (grossman@critters.cygnus.com)
324160484Sobrien
324260484Sobrien	* elf32-v850.c:  Define elf_symbol_leading_char to be '_'.
324360484Sobrien
324460484SobrienTue Oct 15 12:40:41 1996  Ian Lance Taylor  <ian@cygnus.com>
324560484Sobrien
324660484Sobrien	* VERSION: Bump for new relocation.
324760484Sobrien
324860484Sobrien	* hosts/i386bsd.h: If NBPG is not defined, define it as
324960484Sobrien	PAGE_SIZE, for recent versions of FreeBSD.
325060484Sobrien
325160484SobrienMon Oct 14 12:37:26 1996  Ian Lance Taylor  <ian@cygnus.com>
325260484Sobrien
325360484Sobrien	* configure.host: Use `long long' as the 64 bit type on a Solaris
325460484Sobrien	host, since both gcc and the SunPRO compilers support it.
325560484Sobrien
325660484SobrienMon Oct 14 11:17:24 1996  Richard Henderson  <rth@tamu.edu>
325760484Sobrien
325860484Sobrien	* reloc.c: Create a new BFD_RELOC_ALPHA_ELF_LITERAL.  It was a
325960484Sobrien	mistake to have reused the ECOFF LITERAL for ELF since they have
326060484Sobrien	different semantics.
326160484Sobrien	* elf64-alpha.c (elf_reloc_map): Map from ELF_LITERAL.
326260484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
326360484Sobrien
326460484Sobrien	* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Trap .got
326560484Sobrien	section overflow.
326660484Sobrien
326760484Sobrien	* elf64-alpha.c (elf64_alpha_relocate_section): Do not emit a
326860484Sobrien	dynamic relocation for an undefweak symbol when we are building
326960484Sobrien	a static executable.
327060484Sobrien
327160484SobrienThu Oct 10 11:15:06 1996  Stan Shebs  <shebs@andros.cygnus.com>
327260484Sobrien
327360484Sobrien	* mpw-make.sed (config.bfd, targmatch.sed): Edit references to
327460484Sobrien	point explicitly to srcdir.
327560484Sobrien	(targmatch.h): Edit references to point explicitly to objdir.
327660484Sobrien
327760484SobrienThu Oct 10 14:14:23 1996  Ian Lance Taylor  <ian@cygnus.com>
327860484Sobrien
327960484Sobrien	* config.bfd: When setting targ_cpu, don't get confused by
328060484Sobrien	linux-gnu.
328160484Sobrien
328260484SobrienTue Oct  8 08:51:19 1996  Stu Grossman  (grossman@critters.cygnus.com)
328360484Sobrien
328460484Sobrien	* configure.host:  Add support for windows host (a build done
328560484Sobrien	under the Microsoft build environment).
328660484Sobrien
328760484SobrienTue Oct  8 11:40:16 1996  Ian Lance Taylor  <ian@cygnus.com>
328860484Sobrien
328960484Sobrien	* elflink.h (elf_link_add_object_symbols): If a symbol is a weak
329060484Sobrien	definition in a dynamic object, add it to the dynamic symbol table
329160484Sobrien	if any dynamic object mentions it.  Reverts part of last patch.
329260484Sobrien
329360484Sobrien	* sunos.c (struct sunos_link_hash_table): Add got_base field.
329460484Sobrien	(sunos_link_hash_table_create): Initialize got_base.
329560484Sobrien	(bfd_sunos_size_dynamic_sections): If the .got section is more
329660484Sobrien	than 0x1000 bytes, set __GLOBAL_OFFSET_TABLE_ and got_base to
329760484Sobrien	0x1000.
329860484Sobrien	(sunos_check_dynamic_reloc): Subtract got_base from a base
329960484Sobrien	relative relocation.
330060484Sobrien
330160484Sobrien	* elf32-mips.c (elf_mips_isa): New static function.
330260484Sobrien	(_bfd_mips_elf_merge_private_bfd_data): Don't warn about linking
330360484Sobrien	-mips1 and -mips2 code together, or -mips3 and -mips4 code.
330460484Sobrien
330560484SobrienMon Oct  7 11:44:17 1996  Ian Lance Taylor  <ian@cygnus.com>
330660484Sobrien
330760484Sobrien	* archive.c (do_slurp_coff_armap): Only treat archive as little
330860484Sobrien	endian for i960 COFF.
330960484Sobrien
331060484SobrienFri Oct  4 13:49:01 1996  Ian Lance Taylor  <ian@cygnus.com>
331160484Sobrien
331260484Sobrien	* coffcode.h (coff_compute_section_file_positions): Adjust sofar
331360484Sobrien 	by the change in size of the section when EXEC_P is not set.
331460484Sobrien
331560484Sobrien	* coff-m68k.c (coff_rtype_to_howto): Define if not defined.
331660484Sobrien	(m68kcoff_rtype_to_howto): New static function.
331760484Sobrien	* cf-m68klynx.c (coff_m68k_lynx_rtype_to_howto): Add the section
331860484Sobrien	VMA to the addend for a PC relative reloc.
331960484Sobrien
332060484Sobrien	* dep-in.sed: Rework backslash loop a bit to avoid bug in sed on
332160484Sobrien	HP/UX 10.20.
332260484Sobrien	* Makefile.in: Rebuild dependencies.
332360484Sobrien
332460484Sobrien	* dep-in.sed: Remove ../bfd/sysdep.h, since it will appear when
332560484Sobrien	som.h is included.
332660484Sobrien
332760484SobrienFri Oct  4 11:41:39 1996  Jeffrey A Law  (law@cygnus.com)
332860484Sobrien
332960484Sobrien	* Makefile.in: Remove explicit dependencies for mn10200 and
333060484Sobrien	mn10300 files.
333160484Sobrien	(ALL_MACHINE_CFILES): Add cpu-mn10200.c and cpu-mn10300.c.
333260484Sobrien	(BFD32_BACKENDS_CFILES): Add elf32-mn10200.c and elf32-mn10300.c
333360484Sobrien	(dependencies): Rebuilt.
333460484Sobrien
333560484SobrienThu Oct  3 16:57:51 1996  Ian Lance Taylor  <ian@cygnus.com>
333660484Sobrien
333760484Sobrien	* cofflink.c (coff_link_add_symbols): Set obj_coff_keep_syms
333860484Sobrien	during this function.
333960484Sobrien
334060484Sobrien	* elflink.c (_bfd_elf_create_linker_section): Only use an existing
334160484Sobrien	section if the flags are compatible.
334260484Sobrien
334360484Sobrien	* configure.in: Add havevecs, and put it in tdefaults.
334460484Sobrien	* mpw-config.in: Likewise.
334560484Sobrien	* configure: Rebuild.
334660484Sobrien	* targmatch.sed: New file; a sed script to build targmatch.h from
334760484Sobrien	config.bfd.
334860484Sobrien	* config.bfd: Add #if, #endif, and comments for targmatch.h.
334960484Sobrien	* targets.c: Include "fnmatch.h".
335060484Sobrien	(struct targmatch): Define.
335160484Sobrien	(bfd_target_match): Define by including targmatch.h.
335260484Sobrien	(bfd_find_target): If the target is not found by name, search for
335360484Sobrien	it as a configuration triplet.
335460484Sobrien	* Makefile.in: Rebuild dependencies.
335560484Sobrien 	(BFD32_BACKENDS): Add aout-arm.o, aout-sparcle.o, hp300bsd.o,
335660484Sobrien	i386dynix.o, m68k4knetbsd.o, and riscix.o.
335760484Sobrien	(BFD32_BACKENDS_CFILES): Add aout-arm.c, aout-sparcle.c,
335860484Sobrien	hp300bsd.c, i386dynix.c, m68k4knetbsd.c, and riscix.c.
335960484Sobrien	(HFILES): Add targmatch.h.  Also, alphabetize and reindent.
336060484Sobrien	(CFILES): Remove i386dynix.c and hp300bsd.c.
336160484Sobrien	(targmatch.h): New target.
336260484Sobrien	(do_clean): Remove targmatch.h.
336360484Sobrien
336460484Sobrien	* configure.in: Add BFD_NEED_DECLARATION(getenv).
336560484Sobrien	* acconfig.h: Add NEED_DECLARATION_GETENV.
336660484Sobrien	* configure, config.in: Rebuild.
336760484Sobrien	* sysdep.h: If NEED_DECLARATION_GETENV, declare getenv.
336860484Sobrien	* aout-adobe.c (aout_adobe_object_p): Don't declare getenv.
336960484Sobrien
337060484SobrienThu Oct  3 09:29:09 1996  Jeffrey A Law  (law@cygnus.com)
337160484Sobrien
337260484Sobrien	* cpu-mn10x00.c, elf32-mn10x00: Removed.
337360484Sobrien	* cpu-mn10200.c, cpu-mn10300.c: New files.
337460484Sobrien	* elf32-mn10200.c, elf32-mn10300.c: New files.
337560484Sobrien	* Makefile.in: Break mn10x00 support into two separate
337660484Sobrien	configurations, mn10200 and mn10300.
337760484Sobrien	* archures.c, config.bfd, configure.in, elf.c, targets.c: Likewise.
337860484Sobrien	* bfd-in2.h, configure: Rebuilt.
337960484Sobrien
338060484SobrienThu Oct  3 15:38:19 1996  Jason Molenda  (crash@godzilla.cygnus.co.jp)
338160484Sobrien
338260484Sobrien	* Makefile.in (do_clean): Move config.log to do_distclean.
338360484Sobrien
338460484SobrienWed Oct  2 21:40:55 1996  Jeffrey A Law  (law@cygnus.com)
338560484Sobrien
338660484Sobrien	* cpu-mn10x00.c, elf32-mn10x00.c: New files.
338760484Sobrien	* Makefile.in (ALL_MACHINES): Add cpu-mn10x00.o.
338860484Sobrien	(BFD32_BACKENDS): Similarly for elf32-mn10x00.o.
338960484Sobrien	(elf32-mn10x00.o): Add dependencies.
339060484Sobrien	* archures.c (enum bfd_architecture): Add bfd_arch_mn10x00.
339160484Sobrien	(bfd_mn10x00_arch): Declare.
339260484Sobrien	(bfd_archures_list): Add bfd_mn10x00_arch.
339360484Sobrien	* config.bfd: Add mn10x00-*-*.
339460484Sobrien	* configure.in: Add bfd_elf32_mn10x00_vec.
339560484Sobrien	* elf.c (prep_headers): Handle bfd_arch_mn10x00.
339660484Sobrien	* targets.c (bfd_elf32_mn10x00_vec): Declare.
339760484Sobrien	(bfd_target_vector): Add bfd_elf32_mn10x00_vec.
339860484Sobrien	* bfd-in2.h, configure: Rebuilt.
339960484Sobrien
340060484SobrienWed Oct  2 15:46:45 1996  Klaus Kaempf  <kkaempf@progis.de>
340160484Sobrien
340260484Sobrien	openVMS/Alpha: Provide filename and case_hack flags via
340360484Sobrien	symbol table from gas.
340460484Sobrien	Add case_hack code for symbol output from vax/vms.
340560484Sobrien	* evax-alpha.c (evax_initialize): Remove filename handling,
340660484Sobrien	filename is provided via symbol table.
340760484Sobrien	(evax_get_symtab): Use local symbol count when setting up table.
340860484Sobrien	* evax-egsd.c (_bfd_evax_slurp_egsd): Print correct name when
340960484Sobrien	debugging.
341060484Sobrien	(_bfd_evax_write_egsd): Skip file name symbol.
341160484Sobrien	* evax-emh.c (get_vms_time_string): Local function now.
341260484Sobrien	(_bfd_evax_write_emh): Extract source filename and case_hack flags
341360484Sobrien	from symbol table.
341489857Sobrien	(_bfd_evax_write_etir): Pass all symbol names through
341589857Sobrien	_bfd_evax_case_hack_symbol.
341660484Sobrien	* evax-misc.c (hash_string, _bfd_evax_case_hack_symbol): New
341760484Sobrien	functions.
341860484Sobrien	(_bfd_evax_basename): Removed.
341960484Sobrien	(_bfd_get_vms_time_string): Moved to evax-emh.c.
342060484Sobrien	* evax.h (evax_private_data_struct): Remove filename.
342160484Sobrien	(flag_hash_long_names, flag_show_after_trunc,
342260484Sobrien	flag_no_hash_mixed_case, vms_name_mapping): New flags for
342360484Sobrien	vms_case_hack.
342460484Sobrien
342560484SobrienWed Oct  2 12:02:02 1996  Ian Lance Taylor  <ian@cygnus.com>
342660484Sobrien
342760484Sobrien	* freebsd.h (N_GET_MAGIC_NET): Don't use ntohl.
342860484Sobrien	(N_GETMID_NET, N_GETFLAG_NET): Likewise.
342960484Sobrien	(NO_SWAP_MAGIC): Don't define.
343060484Sobrien	(SWAP_MAGIC): Define.
343160484Sobrien
343260484Sobrien	* cofflink.c (_bfd_coff_link_input_bfd): Don't crash if there is
343360484Sobrien	no hash table entry for a global symbol.
343460484Sobrien
343560484SobrienTue Oct  1 16:14:22 1996  Joel Sherrill  <joel@oarcorp.com>
343660484Sobrien
343760484Sobrien	* config.bfd (mips*-*-rtems*): New target, like mips*-*-elf*.
343860484Sobrien
343960484SobrienTue Oct  1 12:31:39 1996  Ian Lance Taylor  <ian@cygnus.com>
344060484Sobrien
344160484Sobrien	* cofflink.c (coff_link_add_symbols): Don't override a meaningful
344260484Sobrien	symbol type with T_NULL.  Warn if symbol type changes.  Based on
344360484Sobrien	patch from Philippe De Muyter <phdm@info.ucl.ac.be>.
344460484Sobrien
344560484Sobrien	* elflink.h (elf_link_add_object_symbols): Only put a symbol from
344660484Sobrien	a dynamic object in the dynamic symbol table if it is referenced
344760484Sobrien	or defined by a regular object.
344860484Sobrien
344960484SobrienFri Sep 27 18:41:07 1996  Stu Grossman  (grossman@critters.cygnus.com)
345060484Sobrien
345160484Sobrien	* elf32-v850.c (bfd_elf32_v850_is_local_label):  New function to
345260484Sobrien	remove dwarf local labels.  Shrinks binaries by a factor of 3!
345360484Sobrien
345460484SobrienMon Sep 23 13:33:00 1996  Ian Lance Taylor  <ian@cygnus.com>
345560484Sobrien
345660484Sobrien	* elf32-ppc.c (ppc_elf_add_symbol_hook): Create the .sbss section
345760484Sobrien	by hand, rather than by calling bfd_make_section.
345860484Sobrien
345960484SobrienMon Sep 23 09:23:41 1996  Doug Evans  <dje@seba.cygnus.com>
346060484Sobrien
346160484Sobrien	* reloc.c: Rename m32r relocs.
346260484Sobrien	* bfd-in2.h, libbfd.h: Rebuilt.
346360484Sobrien	* elf32-m32r.c: Update.
346460484Sobrien
346560484SobrienFri Sep 20 11:43:43 1996  Ian Lance Taylor  <ian@cygnus.com>
346660484Sobrien
346760484Sobrien	* aoutx.h (aout_link_input_section_ext): When doing a relocateable
346860484Sobrien	link, adjust the symbol index of a base relative reloc.  Don't
346960484Sobrien	change the addend of a PC relative reloc if pcrel_offset is set.
347060484Sobrien	* sunos.c (bfd_sunos_size_dynamic_sections): Don't do anything for
347160484Sobrien	a relocateable link.
347260484Sobrien
347360484Sobrien	* reloc.c (bfd_perform_relocation): Apply the relocation even if
347460484Sobrien	it is zero, in case src_mask matters.
347560484Sobrien	(bfd_install_relocation): Likewise.
347660484Sobrien
347760484SobrienThu Sep 19 11:03:06 1996  Ian Lance Taylor  <ian@cygnus.com>
347860484Sobrien
347960484Sobrien	* xcofflink.c (xcoff_link_add_symbols): Always initialize
348060484Sobrien	keep_syms.
348160484Sobrien 	(_bfd_xcoff_bfd_final_link): Don't set target_index
348260484Sobrien	to an uninitialized value.
348360484Sobrien
348460484SobrienTue Sep 17 14:18:31 1996  Ian Lance Taylor  <ian@cygnus.com>
348560484Sobrien
348660484Sobrien	* coffcode.h (coff_slurp_line_table): Warn about illegal symbol
348760484Sobrien	indices, rather than crashing.
348860484Sobrien	(coff_slurp_reloc_table): Likewise.  Check whether the howto field
348960484Sobrien	is NULL.
349060484Sobrien	* coff-sh.c (sh_relocate_section): Check for an illegal symbol
349160484Sobrien	index.
349260484Sobrien
349360484SobrienMon Sep 16 12:39:36 1996  Ian Lance Taylor  <ian@cygnus.com>
349460484Sobrien
349560484Sobrien	* coff-arm.c (aoutarm_std_reloc_howto): Change dst_mask for ARM26D
349660484Sobrien 	reloc to 0.
349760484Sobrien	(coff_arm_adjust_symndx): New static function.
349860484Sobrien	(coff_adjust_symndx): Define.
349960484Sobrien
350060484Sobrien	* srec.c (srec_scan): Accept multiple symbols on a single line.
350160484Sobrien	From Pascal Martin <pmartin@alsys.com>.
350260484Sobrien
350360484Sobrien	* README: New file.
350460484Sobrien
350560484SobrienFri Sep 13 14:32:42 1996  Doug Evans  <dje@canuck.cygnus.com>
350660484Sobrien
350760484Sobrien	* aoutf1.h (MY_bfd_merge_private_bfd_data): Define.
350860484Sobrien	(sunos_merge_private_bfd_data): New function.
350960484Sobrien
351060484SobrienFri Sep 13 15:50:57 1996  Ian Lance Taylor  <ian@cygnus.com>
351160484Sobrien
351260484Sobrien	* bfd.c (bfd_copy_private_bfd_data): Switch on output BFD rather
351360484Sobrien	than input BFD.
351460484Sobrien	(bfd_merge_private_bfd_data): Likewise.
351560484Sobrien	* section.c (bfd_copy_private_section_data): Likewise.
351660484Sobrien	* syms.c (bfd_copy_private_symbol_data): Likewise.
351760484Sobrien	* bfd-in2.h: Rebuild.
351860484Sobrien	* aout-target.h (MY_bfd_copy_private_section_data): Check that
351960484Sobrien	both BFD's are the right flavour.
352060484Sobrien	* ecoff.c (_bfd_ecoff_bfd_copy_private_bfd_data): Likewise.
352160484Sobrien	* elf.c (_bfd_elf_copy_private_symbol_data): Likewise.
352260484Sobrien	* elf32-mips.c (_bfd_mips_elf_copy_private_bfd_data): Likewise.
352360484Sobrien	(_bfd_mips_elf_merge_private_bfd_data): Likewise.
352460484Sobrien	* elf32-ppc.c (ppc_elf_copy_private_bfd_data): Likewise.
352560484Sobrien	(ppc_elf_merge_private_bfd_data): Likewise.
352660484Sobrien	* elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Likewise.
352760484Sobrien	* peicode.h (pe_bfd_copy_private_section_data): Likewise.
352860484Sobrien
352960484Sobrien	* elf32-hppa.c (elf_hppa_howto_table): Fill in some fields for
353060484Sobrien	R_PARISC_DIR32, so that _bfd_stab_section_find_nearest_line passes
353160484Sobrien	its sanity check.
353260484Sobrien
353360484SobrienThu Sep 12 11:45:57 1996  Doug Evans  <dje@seba.cygnus.com>
353460484Sobrien
353560484Sobrien	* reloc.c: Add m32r relocs.
353660484Sobrien	* bfd-in2.h, libbfd.h: Rebuilt.
353789857Sobrien	* cpu-m32r.c, elf32-m32r.c: New files.
353860484Sobrien
353960484SobrienThu Sep 12 11:10:05 1996  Ian Lance Taylor  <ian@cygnus.com>
354060484Sobrien
354160484Sobrien	* ieee.c (ieee_vec): Set symbol_leading_char field to '_'.
354260484Sobrien
354360484SobrienWed Sep 11 11:57:56 1996  Ian Lance Taylor  <ian@cygnus.com>
354460484Sobrien
354560484Sobrien	* tekhex.c (first_phase): Change type parameter from char to int.
354660484Sobrien	(out): Likewise.
354760484Sobrien	(pass_over): Change func to expect int, not char.
354860484Sobrien
354960484Sobrien	* elf.c (assign_file_positions_for_segments): Test SEC_ALLOC
355060484Sobrien	rather than SEC_LOAD when aligning the file offset for the first
355160484Sobrien	section in a segment.
355260484Sobrien
355360484SobrienTue Sep 10 16:18:30 1996  Fred Fish  <fnf@cygnus.com>
355460484Sobrien
355560484Sobrien	* syms.c (coff_section_type): Make arg const.
355660484Sobrien	* irix-core.c (irix_core_core_file_p): Remove extraneous extra arg
355760484Sobrien	to make_bfd_asection().
355860484Sobrien	* elf-bfd.h (bfd_section_from_phdr): Add prototype.
355960484Sobrien	* elfcode.h (bfd_section_from_phdr): Remove prototype.
356060484Sobrien	(_bfd_elf_stringtab_init): Remove prototype.
356160484Sobrien
356260484Sobrien	* netbsd-core.c (swap_abort): Add prototype.
356360484Sobrien	* aix386-core.c (swap_abort): Ditto & make static
356460484Sobrien	* hpux-core.c (swap_abort): Ditto & make static.
356560484Sobrien	* irix-core.c (swap_abort): Ditto & make static.
356660484Sobrien	* ptrace-core.c (swap_abort): Ditto & make static.
356760484Sobrien	* trad-core.c (swap_abort): Ditto & make static.
356860484Sobrien	* coffswap.h (coff_swap_reloc_in): Ditto.
356960484Sobrien	(coff_swap_reloc_out): Ditto.
357060484Sobrien	(coff_swap_filehdr_in): Ditto.
357160484Sobrien	(coff_swap_filehdr_out): Ditto.
357260484Sobrien	(coff_swap_sym_in): Ditto.
357360484Sobrien	(coff_swap_sym_out): Ditto.
357460484Sobrien	(coff_swap_aux_in): Ditto.
357560484Sobrien	(coff_swap_aux_out): Ditto.
357660484Sobrien	(coff_swap_lineno_in): Ditto.
357760484Sobrien	(coff_swap_lineno_out): Ditto.
357860484Sobrien	(coff_swap_aouthdr_in): Ditto.
357960484Sobrien	(coff_swap_aouthdr_out): Ditto.
358060484Sobrien	(coff_swap_scnhdr_in): Ditto.
358160484Sobrien	(coff_swap_scnhdr_out): Ditto.
358260484Sobrien	* ihex.c (ihex_sizeof_headers): Ditto.
358360484Sobrien	* tekhex.c (getsym): Ditto.
358460484Sobrien	(find_chunk): Ditto & make static.
358560484Sobrien	(insert_byte): Ditto.
358660484Sobrien	(first_phase): Ditto.
358760484Sobrien	(pass_over): Ditto.
358860484Sobrien	(tekhex_get_symtab): Ditto & make static.
358960484Sobrien	(tekhex_get_symtab_upper_bound): Ditto & make static.
359060484Sobrien	(tekhex_mkobject): Ditto.
359160484Sobrien	(tekhex_object_p): Ditto.
359260484Sobrien	(move_section_contents): Ditto.
359360484Sobrien	(tekhex_get_section_contents): Ditto.
359460484Sobrien	(tekhex_set_arch_mach): Ditto & make static.
359560484Sobrien	(tekhex_set_section_contents): Ditto.
359660484Sobrien	(writevalue): Ditto.
359760484Sobrien	(writesym): Ditto.
359860484Sobrien	(out): Ditto.
359960484Sobrien	(tekhex_write_object_contents): Ditto.
360060484Sobrien	(tekhex_sizeof_headers): Ditto.
360160484Sobrien	(tekhex_make_empty_symbol): Ditto.
360260484Sobrien	(tekhex_get_symbol_info): Ditto.
360360484Sobrien	(tekhex_print_symbol): Ditto.
360460484Sobrien	* irix-core.c (make_bfd_asection): Ditto.
360560484Sobrien	(irix_core_core_file_p): Ditto.
360660484Sobrien	(irix_core_core_file_failing_command): Ditto.
360760484Sobrien	(irix_core_core_file_failing_signal): Ditto.
360860484Sobrien	(irix_core_core_file_matches_executable_p): Ditto.
360960484Sobrien	(irix_core_make_empty_symbol): Ditto.
361060484Sobrien	* coff-mips.c (mips_bfd_reloc_type_lookup): Ditto.
361160484Sobrien	* srec.c (srec_new_symbol): Ditto.
361260484Sobrien	(srec_get_section_contents): Ditto.
361360484Sobrien	(srec_set_arch_mach): Ditto.
361460484Sobrien	(srec_set_section_contents): Ditto.
361560484Sobrien	(internal_srec_write_object_contents): Ditto.
361660484Sobrien	(srec_write_object_contents): Ditto.
361760484Sobrien	(symbolsrec_write_object_contents): Ditto.
361860484Sobrien	(srec_sizeof_headers): Ditto.
361960484Sobrien	(srec_make_empty_symbol): Ditto.
362060484Sobrien	(srec_get_symtab_upper_bound): Ditto.
362160484Sobrien	(srec_get_symtab): Ditto.
362260484Sobrien	(srec_print_symbol): Ditto and make static.
362360484Sobrien	* elf.c (elf_read): Ditto
362460484Sobrien	(assign_section_numbers): Ditto.
362560484Sobrien	(elf_fake_sections): Ditto.
362660484Sobrien	(sym_is_global): Ditto.
362760484Sobrien	(elf_map_symbols): Ditto.
362860484Sobrien	(get_program_header_size): Ditto.
362960484Sobrien	* coffgen.c (make_a_section_from_file): Ditto.
363060484Sobrien	(coff_real_object_p): Ditto.
363160484Sobrien	(fixup_symbol_value): Ditto.
363260484Sobrien	(build_debug_section): Ditto.
363360484Sobrien	(copy_name): Ditto.
363460484Sobrien	* syms.c (coff_section_type): Ditto.
363560484Sobrien
363660484SobrienMon Sep  9 22:36:01 1996  Jeffrey A Law  (law@cygnus.com)
363760484Sobrien
363860484Sobrien	* bfd-in2.h: Rebuilt after m32r changes.
363960484Sobrien
364060484SobrienMon Sep  9 12:31:22 1996  Doug Evans  <dje@canuck.cygnus.com>
364160484Sobrien
364289857Sobrien	* config.bfd: Add m32r support.
364389857Sobrien	* configure.in: Likewise.
364489857Sobrien	* configure: Likewise.
364589857Sobrien	* Makefile.in: Likewise.
364689857Sobrien	* archures.c: Likewise.
364789857Sobrien	* elf.c: Likewise.
364889857Sobrien	* targets.c: Likewise.
364960484Sobrien	* config.bfd: Keep target list alphabetically sorted.
365060484Sobrien
365160484SobrienMon Sep  9 11:48:41 1996  Jeffrey A Law  (law@cygnus.com)
365260484Sobrien
365360484Sobrien	* elf32-v850.c (bfd_elf32_v850_reloc, case R_V850_HI16): Don't forget
365460484Sobrien	to add in the constant part found in the instruction itself.
365560484Sobrien	(case R_V850_HI16_S): Likewise.
365660484Sobrien
365760484SobrienFri Sep  6 17:04:39 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>
365860484Sobrien
365960484Sobrien	* elf32-d10v.c (elf_d10v_howto_table): Modify the size of R_D10V_16
366060484Sobrien	and R_D10V_18 to be 1 (word).
366160484Sobrien
366260484SobrienThu Sep  5 15:23:08 1996  Ian Lance Taylor  <ian@cygnus.com>
366360484Sobrien
366460484Sobrien	* stabs.c (_bfd_link_section_stabs): If the output_section field
366560484Sobrien	of either section is bfd_abs_section, then the linker is
366660484Sobrien	discarding the section and we should not optimize it.
366760484Sobrien
366860484SobrienTue Sep  3 12:16:20 1996  Doug Evans  <dje@canuck.cygnus.com>
366960484Sobrien
367060484Sobrien	* Makefile.in (aout-sparcle.o): New target.
367160484Sobrien	* aoutf1.h (TARGET_IS_BIG_ENDIAN_P): Don't define if little endian.
367260484Sobrien	* config.bfd (sparclet-*-aout*): Add case.
367360484Sobrien	* configure.in (sparcle_aout_vec): Add case.
367460484Sobrien	* configure: Regenerated.
367560484Sobrien	* targets.c (sparcle_aout_vec): Declare.
367660484Sobrien	(bfd_target_vector): Add sparcle_aout_vec.
367760484Sobrien	* aout-sparcle.c: New file.
367860484Sobrien
367960484SobrienTue Sep  3 00:57:02 1996  Jeffrey A Law  (law@cygnus.com)
368060484Sobrien
368160484Sobrien	* elf32-v850.c (bfd_elf32_v850_reloc): Fix handling of
368260484Sobrien	low order sign bit propogation for R_V850_HI16_S.
368360484Sobrien
368460484Sobrien	* elf32-v850.c (bfd_elf32_v850_reloc): New function for
368560484Sobrien	handling V850 specific relocs.
368660484Sobrien	(elf_v850_howto_table): Use the new function for some
368760484Sobrien	relocations.  Twiddle masks & shifts for some relocs.
368860484Sobrien	Set partial_inplace where needed.
368960484Sobrien
369060484SobrienMon Sep  2 12:12:34 1996  Ian Lance Taylor  <ian@cygnus.com>
369160484Sobrien
369260484Sobrien	* cpu-mips.c: Add an explicit mips:3000 entry, and change the
369360484Sobrien	default architecture to a machine number of 0.
369460484Sobrien	* elf32-mips.c (_bfd_mips_elf_object_p): Set the machine number
369560484Sobrien	for E_MIPS_ARCH_1.
369660484Sobrien	(_bfd_mips_elf_merge_private_bfd_data): If the machine number of
369760484Sobrien	the output BFD is the default, set it from the first input BFD.
369860484Sobrien
369960484SobrienSun Sep  1 18:38:01 1996  Jeffrey A Law  (law@cygnus.com)
370060484Sobrien
370160484Sobrien	* elf32-v850.c (elf_v850_howto_table): All the 16bit relocs
370260484Sobrien	insert at bitpos zero.  The HI16 relocs are shifted right
370360484Sobrien	by 16 bits.  Fix src_mask for all relocs.
370460484Sobrien	(TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Define.  The V850 is
370560484Sobrien	little endian!
370660484Sobrien	(TARGET_BIG_SYM, TARGET_BIG_NAME): Remove.  The V850 is little
370760484Sobrien	endian!
370860484Sobrien
370960484SobrienSun Sep  1 15:41:08 1996  Ian Lance Taylor  <ian@cygnus.com>
371060484Sobrien
371160484Sobrien	* rs6000-core.c (rs6000coff_core_file_matches_executable_p):
371260484Sobrien	Rewrite to use BFD file read routines and to avoid using a fixed
371360484Sobrien	length for the file name.
371460484Sobrien
371560484SobrienSat Aug 31 10:22:25 1996  Jeffrey A Law  (law@cygnus.com)
371660484Sobrien
371760484Sobrien	* elf32-v850.c (enum reloc_type): Add R_V850_{32,16,8}.
371860484Sobrien	(elf_v850_howto_table): Add support for R_V850_{32,16,8}.
371960484Sobrien	(v850_reloc_map): Add translation from BFD_RELOC_{32,16,8}
372060484Sobrien	to R_V850_{32,16,8}.
372160484Sobrien
372260484SobrienFri Aug 30 18:06:04 1996  J.T. Conklin  <jtc@hippo.cygnus.com>
372360484Sobrien
372460484Sobrien	* elf32-v850.c (reloc_type): Add R_V850_HI16_S.
372560484Sobrien	(elf_v850_howto_table): Add info for HI16_S reloc.
372660484Sobrien	(v850_reloc_map): Add HI_16_S reloc.
372760484Sobrien	* reloc.c: Define BFD_RELOC_V850_* relocs.
372860484Sobrien
372960484SobrienFri Aug 30 11:49:19 1996  Ian Lance Taylor  <ian@cygnus.com>
373060484Sobrien
373160484Sobrien	Add SH ELF support.
373260484Sobrien	* elf32-sh.c: New file.
373360484Sobrien	* elf.c (prep_headers): Handle bfd_arch_sh.
373460484Sobrien	* elfcode.h (write_relocs): Handle absolute symbol.
373560484Sobrien	* elf-bfd.h (_bfd_elf32_link_read_relocs): Declare.
373660484Sobrien	(_bfd_elf64_link_read_relocs): Declare.
373760484Sobrien	* elflink.h (NAME(_bfd_elf,link_read_relocs)): Rename from
373860484Sobrien	elf_link_read_relocs.  Make globally visible.  Change all
373960484Sobrien	callers.
374060484Sobrien	(elf_link_input_bfd): Get external symbols from cache in
374160484Sobrien	symtab_hdr->contents.  Get contents from cache in
374260484Sobrien	elf_section_data.
374360484Sobrien	* elfxx-target.h (bfD_elfNN_bfd_relax_section): Only define if not
374460484Sobrien	already defined.
374560484Sobrien	* reloc.c: Define BFD_RELOC_SH_* relocs.
374660484Sobrien	* libbfd-in.h (_bfd_sh_align_load_span): Declare.
374760484Sobrien	* coff-sh.c (sh_insns_conflict): Fix a return value.
374860484Sobrien	(_bfd_sh_align_load_span): New globally visible function, broken
374960484Sobrien	out of sh_align_load.
375060484Sobrien	(sh_align_load): Call _bfd_sh_align_load_span.
375160484Sobrien	(sh_swap_insns): Change relocs parameter to PTR.
375260484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
375360484Sobrien	* targets.c (bfd_elf32_sh_vec): Declare.
375460484Sobrien	(bfd_elf32_shl_vec): Declare.
375560484Sobrien	* config.bfd (sh-*-elf*): New target.
375660484Sobrien	* configure.in (bfd_elf32_sh_vec): New target vector.
375760484Sobrien	(bfd_elf32_shl_vec): New target vector.
375860484Sobrien	* configure: Rebuild.
375960484Sobrien	* Makefile.in: Rebuild dependencies.
376060484Sobrien 	(BFD32_BACKENDS): Add elf32-sh.o.
376160484Sobrien	(BFD32_BACKENDS_CFILES): Add elf32-sh.c.
376260484Sobrien
376360484Sobrien	* elf.c (map_sections_to_segments): Check that LMA does not skip a
376460484Sobrien	page before checking D_PAGED.
376560484Sobrien
376660484Sobrien	* ihex.c (ihex_scan): Removed unnecessary extbase variable.
376760484Sobrien	(ihex_write_object_contents): Remove extbase; always use segbase
376860484Sobrien	instead.
376960484Sobrien
377060484SobrienThu Aug 29 16:52:17 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
377160484Sobrien
377260484Sobrien	* configure.in (i[345]86-*-*): Recognize i686 for pentium pro.
377360484Sobrien	* configure.host (i[345]86-*-*): Ditto.
377460484Sobrien	* config.bfd (i[345]86-*-*): Ditto.
377560484Sobrien	* configure: Regenerate.
377660484Sobrien
377760484Sobrien	* config.bfd (i[3456]86-*-dgux*): Recognize as a synonym for x86
377860484Sobrien	elf.
377960484Sobrien
378060484SobrienTue Aug 27 09:18:18 1996  Jeffrey A Law  (law@cygnus.com)
378160484Sobrien
378260484Sobrien	* elf32-hppa.c (hppa_elf_gen_reloc_type): Add new argument.
378360484Sobrien	* elf32-hppa.h (hppa_elf_gen_reloc_type): Update prototype.
378460484Sobrien	* som.c (hppa_som_gen_reloc_type): Add new argument.  If
378560484Sobrien	we encounter an R_DATA_ONE_SYMBOL reloc against a symbol that
378660484Sobrien	will have an ST_CODE type, change the symbol's type to ST_DATA.
378760484Sobrien	* som.c (hppa_som_gen_reloc_type): Update prototype.
378860484Sobrien
378960484SobrienTue Aug 27 00:12:22 1996  Ian Lance Taylor  <ian@cygnus.com>
379060484Sobrien
379160484Sobrien	* elf32-mips.c (mips_elf_check_relocs): Set dynobj if needed for
379260484Sobrien	R_MIPS_32 and R_MIPS_REL32.  Set sgot and g as soon as possible.
379360484Sobrien	(mips_elf_size_dynamic_sections): Don't require .got to exist.
379460484Sobrien	(mips_elf_finish_dynamic_sections): Likewise.
379560484Sobrien
379660484SobrienThu Aug 22 10:54:38 1996  Ian Lance Taylor  <ian@cygnus.com>
379760484Sobrien
379860484Sobrien	* configure.host (HLDENV): New variable to set.  Set it for
379960484Sobrien	*-*-sysv4*, since those linkers may not support -R but they always
380060484Sobrien	support LD_RUN_PATH.
380160484Sobrien
380260484Sobrien	* libieee.h (NSECTIONS): Don't define.
380360484Sobrien	(ieee_data_struct): Change section_table to asection **.  Add
380460484Sobrien	section_table_size.
380560484Sobrien	* ieee.c (get_section_entry): If the table isn't big enough, make
380660484Sobrien	it bigger.
380760484Sobrien	(ieee_slurp_sections): Remove assertion about number of sections.
380860484Sobrien	(ieee_object_p): Adjust initialization of ieee to match changes to
380960484Sobrien	the structure.
381060484Sobrien
381160484Sobrien	* xcofflink.c (xcoff_mark): Don't copy relocs for undefined
381260484Sobrien	symbols merely because we are generating a shared library.
381360484Sobrien	(xcoff_build_ldsyms): Don't set up global linkage code for an
381460484Sobrien	undefined symbol merely because we are generating a shared
381560484Sobrien	library.
381660484Sobrien
381760484SobrienTue Aug 20 15:06:05 1996  J.T. Conklin  <jtc@hippo.cygnus.com>
381860484Sobrien
381960484Sobrien	* Makefile.in (ALL_MACHINES): Add cpu-v850.o.
382060484Sobrien	(BFD32_BACKENDS) Add elf32-v850.o.
382160484Sobrien	* archures.c: Add bfd_v850_arch.
382260484Sobrien	* bfd-in2.h: Add bfd_v850_arch.
382360484Sobrien	* config.bfd (v850-*-*): New target.
382460484Sobrien	* configure: (bfd_elf32_v850_vec) New vector.
382560484Sobrien	* configure.in: (bfd_elf32_v850_vec) New vector.
382660484Sobrien	* cpu-v850.c: New file.
382760484Sobrien	* elf.c (prep_headers): Added case bfd_arch_v850.
382860484Sobrien	* elf32-v850.c: New file.
382960484Sobrien	* targets.c (bfd_elf32_v850_vec): New vector.
383060484Sobrien
383160484SobrienFri Aug 16 16:25:35 1996  Ian Lance Taylor  <ian@cygnus.com>
383260484Sobrien
383360484Sobrien	* xcofflink.c (xcoff_link_add_dynamic_symbols): Create and define
383460484Sobrien 	a function code symbol for an XMC_XO symbol.
383560484Sobrien
383660484SobrienThu Aug 15 12:33:29 1996  Stan Shebs  <shebs@andros.cygnus.com>
383760484Sobrien
383860484Sobrien	* mpw-config.in: Update editing of autoconf vars to reflect
383960484Sobrien	Jul 18 configure.in change.
384060484Sobrien	* mpw-make.sed: Update editing of include pathnames to be
384160484Sobrien	more general, add @DASH_C_FLAG@ to explicit compile rule edit.
384260484Sobrien
384360484SobrienThu Aug 15 10:35:13 1996  Richard Henderson  <rth@tamu.edu>
384460484Sobrien
384560484Sobrien	* elf64-alpha.c (elf64_alpha_output_extsym): The section from
384660484Sobrien	which to offset to get the .plt entry address is ".plt".
384760484Sobrien
384860484SobrienThu Aug 15 16:40:30 1996  James G. Smith  <jsmith@cygnus.co.uk>
384960484Sobrien
385060484Sobrien	* reloc.c: (BFD_RELOC_ARM_THUMB_ADD, BFD_RELOC_ARM_THUMB_IMM,
385160484Sobrien	BFD_RELOC_ARM_THUMB_SHIFT, BFD_RELOC_ARM_THUMB_OFFSET):
385260484Sobrien 	Added, for internal use by the ARM gas.
385360484Sobrien	* libbfd.h: Rebuilt
385460484Sobrien	* bfd-in2.h: Rebuilt
385560484Sobrien
385660484SobrienWed Aug 14 17:02:09 1996  Richard Henderson  <rth@tamu.edu>
385760484Sobrien
385860484Sobrien	* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Correct typo
385960484Sobrien	in section dynidx start.
386060484Sobrien
386160484SobrienTue Aug 13 14:35:38 1996  Ian Lance Taylor  <ian@cygnus.com>
386260484Sobrien
386360484Sobrien	* elf.c (_bfd_elf_make_section_from_shdr): Treat sections whose
386460484Sobrien	name begins with .gnu.linkonce as SEC_LINK_ONCE.  This is an
386560484Sobrien	optimization for g++.
386660484Sobrien
386760484SobrienTue Aug 13 17:04:40 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
386860484Sobrien
386960484Sobrien	* elf32-ppc.c (ppc_elf_merge_private_bfd_data): If one module has
387060484Sobrien	the -mrelocatable-lib bit set and the other doesn't, clear the
387160484Sobrien	-mrelocatable-lib bit in the header.
387260484Sobrien
387360484SobrienSat Aug 10 22:59:17 1996  Ian Lance Taylor  <ian@cygnus.com>
387460484Sobrien
387560484Sobrien	* elflink.h (elf_link_add_object_symbols): Do not resolve a common
387660484Sobrien	symbol against a STT_FUNC symbol in a shared library.
387760484Sobrien
387860484SobrienFri Aug  9 12:44:57 1996  Ian Lance Taylor  <ian@cygnus.com>
387960484Sobrien
388060484Sobrien	* xcofflink.c (xcoff_link_add_dynamic_symbols): If a descriptor
388160484Sobrien 	symbol is found, automatically define the corresponding function
388260484Sobrien 	code.
388360484Sobrien
388460484Sobrien	* cofflink.c (coff_link_add_symbols): Only set (*sym_hash)->numaux
388560484Sobrien	if sym.n_numaux is not zero.
388660484Sobrien	(_bfd_coff_link_input_bfd): Permit the symbol and the hash table
388760484Sobrien	entry to disagree about the number of aux entries if the symbol
388860484Sobrien	has zero.
388960484Sobrien
389060484Sobrien	* elf32-mips.c (mips_elf_check_relocs): Create the .rel.dyn
389160484Sobrien	section if it might be needed, not just if info->shared.
389260484Sobrien	(mips_elf_adjust_dynamic_symbol): Make room for a null element at
389360484Sobrien	the start of .rel.dyn if we are going to use it.
389460484Sobrien	(mips_elf_finish_dynamic_sections): Only clear the first element
389560484Sobrien	of .rel.dyn if the size is greater than zero.
389660484Sobrien
389760484SobrienThu Aug  8 16:24:55 1996  Ian Lance Taylor  <ian@cygnus.com>
389860484Sobrien
389960484Sobrien	* xcofflink.c (xcoff_link_input_bfd): If we already called the
390060484Sobrien	undefined_symbol callback for a symbol, then don't issue any more
390160484Sobrien	warnings about loader relocs.
390260484Sobrien	(_bfd_ppc_xcoff_relocate_section): Don't do any further processing
390360484Sobrien	after calling the undefined_symbol callback.
390460484Sobrien
390560484Sobrien	* xcofflink.c (XCOFF_MULTIPLY_DEFINED): Define.
390660484Sobrien	(xcoff_link_add_symbols): Permit multiple definitions of a symbol
390760484Sobrien	as the AIX linker seems to do.
390860484Sobrien
390960484SobrienThu Aug  8 12:21:56 1996  Klaus Kaempf  <kkaempf@progis.de>
391060484Sobrien
391160484Sobrien	* evax-alpha.c (evax_alpha_vec): Corrected flags, cleanup.
391260484Sobrien	(evax_initialize): Remove evax_reloc_table.
391360484Sobrien	(evax_close_and_cleanup): Ditto.
391460484Sobrien	(reloc_nil): Ditto.
391560484Sobrien	(alpha_howto_table): Remove ALPHA_R_SWREL32 and ALPHA_R_SWREL64
391660484Sobrien	entries.
391760484Sobrien	(evax_bfd_reloc_type_lookup): Ditto.
391860484Sobrien	* evax-egsd.c (_bfd_evax_slurp_egsd): Add a few casts; set
391960484Sobrien	cooked_size == raw_size.
392060484Sobrien	* evax-emh.c (_bfd_evax_register_filename): Remove.
392160484Sobrien	* evax-etir.c (etir_stc): Allow ETIR_S_C_STC_xx commands.
392260484Sobrien	* evax-misc.c (add_new_contents): Malloc section at full size.
392360484Sobrien	(_bfd_save_evax_section): Memcpy section contents directly.
392460484Sobrien	* evax.h (ALPHA_R_SWREL32, ALPHA_R_SWREL64): Remove.
392560484Sobrien	(evax_reloc_table): Remove.
392660484Sobrien
392760484Sobrien	* hosts/alphavms.h (O_ACCMODE): Define if needed.
392860484Sobrien
392960484Sobrien	* makefile.vms: Add better support for DEC C compilation
393060484Sobrien	Add evax.h dependencies
393160484Sobrien
393260484Sobrien	* reloc.c (bfd_get_reloc_size): Add case for 16 byte reloc.
393360484Sobrien	(BFD_RELOC_SWREL32,BFD_RELOC_SWREL64): Remove.
393460484Sobrien	(BFD_RELOC_ALPHA_BASEREG): Remove.
393560484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
393660484Sobrien
393760484SobrienThu Aug  8 08:17:32 1996  Stu Grossman  (grossman@critters.cygnus.com)
393860484Sobrien
393960484Sobrien	* archive.c (bsd_write_armap):  Ifdef around calls to getuid and
394060484Sobrien	getgid if _WIN32 is defined.
394160484Sobrien	* opncls.c (bfd_fdopenr):  Remove unnecessary WINGDB ifdef.
394260484Sobrien
394360484SobrienWed Aug  7 23:19:00 1996  Stu Grossman  (grossman@critters.cygnus.com)
394460484Sobrien
394560484Sobrien	* aoutx.h bfd-in.h bfd-in2.h opncls.c riscix.c som.c targets.c:
394660484Sobrien	Change NO_FLAGS to BFD_NO_FLAGS to avoid conflict with an HPUX
394760484Sobrien	include file.
394860484Sobrien	* libbfd.c:  Create dummy getpagesize() macro if HAVE_GETPAGESIZE
394960484Sobrien	isn't defined.
395060484Sobrien
395160484SobrienWed Aug  7 14:11:44 1996  Philippe De Muyter  <phdm@info.ucl.ac.be>
395260484Sobrien
395360484Sobrien	* configure.in: Call BFD_NEEDED_DECLARATION on strstr and
395460484Sobrien	realloc.
395560484Sobrien	* acconfig.h (NEED_DECLARATION_STRSTR): New macro.
395660484Sobrien	(NEED_DECLARATION_REALLOC): New macro.
395760484Sobrien	* configure, config.in: Rebuild.
395860484Sobrien	* sysdep.h (strstr): Declare if NEED_DECLARATION_STRSTR.
395960484Sobrien	(realloc): Declare if NEED_DECLARATION_REALLOC.
396060484Sobrien
396160484Sobrien	* aclocal.m4 (BFD_NEED_DECLARATION): Include <string.h> or
396260484Sobrien	<strings.h> if they exist.
396360484Sobrien
396460484Sobrien	* ieee.c (ieee_set_section_contents): Cast bfd_alloc return.
396560484Sobrien
396660484SobrienWed Aug  7 12:12:03 1996  Ian Lance Taylor  <ian@cygnus.com>
396760484Sobrien
396860484Sobrien	* cpu-i386.c (i8086_arch): Architecture info for the i8086.
396960484Sobrien
397060484Sobrien	Based on patches from Eric Valette <valette@crf.canon.fr>:
397160484Sobrien	* elf32-i386.c (enum reloc_type): Add FIRST_INVALID_RELOC,
397260484Sobrien	LAST_INVALID_RELOC, R_386_16, R_386_PC16, R_386_8, R_386_PC8.
397360484Sobrien	(elf_howto_table): Add entries for new relocs.
397460484Sobrien	(elf_i386_reloc_type_lookup): Handle new relocs.
397560484Sobrien	(elf_i386_info_to_howto): Just call abort.
397660484Sobrien	(elf_i386_info_to_howto_rel): Check that the reloc type is valid.
397760484Sobrien	(elf_i386_relocate_section): Likewise.
397860484Sobrien
397960484SobrienTue Aug  6 12:54:56 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>
398060484Sobrien
398160484Sobrien	* elf32-d10v.c (elf_d10v_howto_table): Added R_D10V_32.
398260484Sobrien
398360484SobrienMon Aug  5 13:42:41 1996  Ian Lance Taylor  <ian@cygnus.com>
398460484Sobrien
398560484Sobrien	* elf.c (_bfd_elf_make_section_from_shdr): For a loadable section,
398660484Sobrien	only get the LMA from the phdr if they are in the same part of the
398760484Sobrien	file.
398860484Sobrien
398960484Sobrien	* elf.c (map_sections_to_segments): Rewrite tests for starting a
399060484Sobrien	new segment to make them more comprehensible.  If the relationship
399160484Sobrien	between the LMA and the VMA changed, start a new segment.  Don't
399260484Sobrien	check dynsec when deciding whether to start a new segment for a
399360484Sobrien	writeable section; -N will now handle this.
399460484Sobrien
399560484SobrienThu Aug  1 22:43:08 1996  Jeffrey A Law  (law@cygnus.com)
399660484Sobrien
399760484Sobrien	* libhppa.h: Remove "esel" changes.  Not the right approach.
399860484Sobrien	* som.c: Corresponding changes.
399960484Sobrien	(som_bfd_derive_misc_symbol_info): Use ST_DATA for symbols
400060484Sobrien	which don't have a SOM symbol type associated with them.
400160484Sobrien	Reverses a 1994 change.
400260484Sobrien
400360484SobrienWed Jul 31 15:50:55 1996  Ian Lance Taylor  <ian@cygnus.com>
400460484Sobrien
400560484Sobrien	Make ld -N more reasonable for ELF:
400660484Sobrien	* elf.c (map_sections_to_segments): If D_PAGED is not set, set
400760484Sobrien	phdr_in_section to false, and always use a single load segment.
400860484Sobrien	(elf_sort_sections): Sort sections by LMA after VMA.
400960484Sobrien	(assign_file_positions_for_segments): If D_PAGED is not set, don't
401060484Sobrien	align to maxpagesize.
401160484Sobrien	(assign_file_positions_except_relocs): Likewise.
401260484Sobrien	* elfcode.h (elf_object_p): If a section is loaded but not page
401360484Sobrien	aligned, clear D_PAGED.
401460484Sobrien
401560484SobrienWed Jul 31 15:00:12 1996  James G. Smith  <jsmith@cygnus.co.uk>
401660484Sobrien
401760484Sobrien	* reloc.c: (BFD_RELOC_ARM_OFFSETIMM8, BFD_RELOC_ARM_HWLITERAL):
401860484Sobrien 	Added, for internal use by the ARM gas.
401960484Sobrien	* libbfd.h: Rebuilt
402060484Sobrien	* bfd-in2.h: Rebuilt
402160484Sobrien
402260484SobrienTue Jul 30 14:14:57 1996  Jeffrey A Law  (law@cygnus.com)
402360484Sobrien
402460484Sobrien	* libhppa.h (R_HPPA_ESEL): New field selector.
402560484Sobrien	(e_esel): Similarly.
402660484Sobrien	* som.c (hppa_som_gen_reloc_type): If we encounter an e_esel,
402760484Sobrien	then generate R_COMP2 (PUSH_SYM), R_DATA_EXPR fixup stream.
402860484Sobrien	(som_write_fixups): Handle R_DATA_EXPR just like R_CODE_EXPR.
402960484Sobrien
403060484SobrienTue Jul 30 13:31:27 1996  Ian Lance Taylor  <ian@cygnus.com>
403160484Sobrien
403260484Sobrien	* xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Do the regular
403360484Sobrien	archive search before looking for stripped dynamic objects.
403460484Sobrien
403560484SobrienFri Jul 26 17:51:39 1996  Ian Lance Taylor  <ian@cygnus.com>
403660484Sobrien
403760484Sobrien	* xcofflink.c (xcoff_build_ldsyms): Make exporting an undefined
403860484Sobrien	symbol a warning rather than an error.
403960484Sobrien
404060484SobrienWed Jul 24 12:02:53 1996  Ian Lance Taylor  <ian@cygnus.com>
404160484Sobrien
404260484Sobrien	* elf.c (assign_file_positions_for_segments): Track the virtual
404360484Sobrien	memory position separately from the file position, and use it to
404460484Sobrien	compute the alignment adjustment.
404560484Sobrien
404660484SobrienTue Jul 23 10:43:31 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>
404760484Sobrien
404860484Sobrien	* elf32-d10v.c (elf_d10v_howto_table): Changed all relocs to "long"
404960484Sobrien 	and fixed mask on R_D10V_10_PCREL_L.
405060484Sobrien
405160484SobrienMon Jul 22 15:30:30 1996  Ian Lance Taylor  <ian@cygnus.com>
405260484Sobrien
405360484Sobrien	* elf64-mips.c: Include "aout/ar.h".
405460484Sobrien	(mips_elf64_slurp_armap): New static function.
405560484Sobrien	(mips_elf64_write_armap): New static function.
405660484Sobrien	(bfd_elf64_archive_*): Define.
405760484Sobrien	* elfxx-target.h (bfd_elfNN_archive_p): Define if not defined.
405860484Sobrien	Use instead of bfd_generic_archive_p.
405960484Sobrien	(bfd_elfNN_write_archive_contents): Define if not defined.  Use
406060484Sobrien	instead of _bfd_write_archive_contents.
406160484Sobrien	(bfd_elfNN_mkdarchive): Define if not defined.  Use instead of
406260484Sobrien	_bfd_generic_mkarchive.
406360484Sobrien	(TARGET_BIG_SYM): If bfd_elfNN_archive_functions is defined, use
406460484Sobrien	bfd_elfNN_archive in BFD_JUMP_TABLE_ARCHIVE rather than
406560484Sobrien	_bfd_archive_coff.
406660484Sobrien	(TARGET_LITTLE_SYM): Likewise.
406760484Sobrien	* archive.c (bfd_slurp_armap): Check for and reject an archive map
406860484Sobrien	name of /SYM64/.
406960484Sobrien	* Makefile.in: Rebuild dependencies.
407060484Sobrien
407160484Sobrien	* elf32-mips.c (_bfd_mips_elf_final_write_processing): Handle
407260484Sobrien	SHT_MIPS_LIBLIST, SHT_MIPS_CONTENT, SHT_MIPS_SYMBOL_LIB, and
407360484Sobrien	SHT_MIPS_EVENTS sections.
407460484Sobrien	(_bfd_mips_elf_section_from_shdr): Handle SHT_MIPS_IFACE,
407560484Sobrien	SHT_MIPS_CONTENT, SHT_MIPS_SYMBOL_LIB, and SHT_MIPS_EVENTS
407660484Sobrien	sections.
407760484Sobrien	(_bfd_mips_elf_fake_sections): Likewise.
407860484Sobrien
407960484Sobrien	* libecoff.h (ecoff_data_type): Add rdata_in_text field.
408060484Sobrien	* ecoff.c (ecoff_compute_section_file_positions): Copy
408160484Sobrien	rdata_in_text from backend info to tdata.  Clear it if any data
408260484Sobrien	section comes before .rdata.
408360484Sobrien	(_bfd_ecoff_write_object_contents): Use rdata_in_text field in
408460484Sobrien	tdata rather than backend info.
408560484Sobrien
408660484SobrienFri Jul 19 18:15:51 1996  Ian Lance Taylor  <ian@cygnus.com>
408760484Sobrien
408860484Sobrien	* configure.in: Fix test for whether a compiler has a 64 bit
408960484Sobrien	type.  From Jim Wilson <wilson@cygnus.com>.
409060484Sobrien
409160484SobrienThu Jul 18 15:39:10 1996  Ian Lance Taylor  <ian@cygnus.com>
409260484Sobrien
409360484Sobrien	* configure.host (mips-sgi-irix6*): New host.
409460484Sobrien
409560484Sobrien	* configure.in: Set and substitute VERSION, BFD_HOST_64BIT_LONG
409660484Sobrien	(replacing HOST_64BITLONG), BFD_HOST_64_BIT_DEFINED,
409760484Sobrien	BFD_HOST_64_BIT, and BFD_HOST_U_64_BIT.  Add bfd-in2.h:bfd-in2.h
409860484Sobrien	to AC_OUTPUT call.
409960484Sobrien	* configure: Rebuild.
410060484Sobrien	* bfd-in.h (BFD_ARCH_SIZE): Define as @wordsize@, not @WORDSIZE@.
410160484Sobrien	(BFD_HOST_64_BIT): Define conditionally.
410260484Sobrien	(BFD_HOST_U_64_BIT): Define when BFD_HOST_64_BIT is defined.
410360484Sobrien	(bfd_vma): Typedef as BFD_HOST_U_64_BIT.
410460484Sobrien	(symvalue, bfd_size_type): Likewise.
410560484Sobrien	* bfd-in2.h: Rebuild.
410660484Sobrien	* Makefile.in (do_clean): Remove bfd-tmp.h.
410760484Sobrien	(do_distclean): Remove bfd-in3.h.
410860484Sobrien	(stmp-bfd.h): Just do copy-if-change bfd-in3.h bfd.h.
410960484Sobrien	(bfd-in3.h): New target.
411060484Sobrien
411160484Sobrien	* config.bfd (sparc-*-sysv4*): Don't build sunos_big_vec.  From
411260484Sobrien	Andrew Gierth <ANDREWG@microlise.co.uk>.
411360484Sobrien
411460484Sobrien	* configure.host: Set INSTALL_SHLIB.
411560484Sobrien	* configure.in: Call AC_SUBST (INSTALL_SHLIB).
411660484Sobrien	* configure: Rebuild.
411760484Sobrien	* Makefile.in (install): Use @INSTALL_SHLIB@.
411860484Sobrien
411960484Sobrien	* config.bfd (mips*-*-irix6*): New target.
412060484Sobrien	* configure.host: Handle Irix 6 shared library like Irix 5.
412160484Sobrien
412260484Sobrien	* xcofflink.c (xcoff_link_add_symbols): Don't check an XMC_TD
412360484Sobrien	symbol for a magic name.
412460484Sobrien	(xcoff_link_input_bfd): Don't change the reloc symbol for an
412560484Sobrien	XMC_TD symbol.
412660484Sobrien	(_bfd_ppc_xcoff_relocate_section): Don't get the TOC offset for an
412760484Sobrien	XMC_TD symbol.
412860484Sobrien
412960484SobrienThu Jul 18 11:36:31 1996  Stan Shebs  <shebs@andros.cygnus.com>
413060484Sobrien
413160484Sobrien	* mpw-config.in: Add ELF support to mips config, create the
413260484Sobrien	elf32-target.h file in the object dir.
413360484Sobrien	* mpw-make.sed: Edit elfXX-target.h refs at beginnings of lines.
413460484Sobrien
413560484SobrienWed Jul 17 18:02:32 1996  Kim Knuttila  <krk@cygnus.com>
413660484Sobrien
413760484Sobrien	* coff-ppc.c: Redid debug scheme - numerous fprintf's gone.
413860484Sobrien	Also removed most abort calls, in favor of using bfd reporting.
413960484Sobrien
414060484SobrienWed Jul 17 14:51:52 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>
414160484Sobrien
414260484Sobrien	* Makefile.in (ALL_MACHINES): Add cpu-d10v.o.
414360484Sobrien	(BFD32_BACKENDS) Add elf32-d10v.o.
414460484Sobrien	* archures.c: Add bfd_d10v_arch.
414560484Sobrien	* bfd-in2.h: Add bfd_d10v_arch.
414660484Sobrien	* config.bfd (d10v-*-*): New target.
414760484Sobrien	* configure: (bfd_elf32_d10v_vec) New vector.
414860484Sobrien	* configure.in: (bfd_elf32_d10v_vec) New vector.
414960484Sobrien	* cpu-d10v.c: New file.
415060484Sobrien	* elf.c (prep_headers): Added case bfd_arch_d10v.
415160484Sobrien	* elf32-d10v.c: New file.
415260484Sobrien	* libbfd.h: Rebuild.
415360484Sobrien	* reloc.c (BFD_RELOC_D10V_10_PCREL_R, BFD_RELOC_D10V_10_PCREL_L,
415460484Sobrien 	BFD_RELOC_D10V_18, BFD_RELOC_D10V_18_PCREL): Define.
415560484Sobrien	* targets.c (bfd_elf32_d10v_vec): New vector.
415660484Sobrien
415760484SobrienWed Jul 17 10:58:55 1996  Kim Knuttila  <krk@cygnus.com>
415860484Sobrien
415960484Sobrien	* coff-ppc.c (coff_ppc_relocate_section): Removed bogus fprintf
416060484Sobrien
416160484SobrienTue Jul 16 23:49:02 1996  Stu Grossman  (grossman@critters.cygnus.com)
416260484Sobrien
416360484Sobrien	* archures.c bfd-in2.h:  Add bfd_mach_i386_i386 and
416460484Sobrien	bfd_mach_i386_i8086 machine types.
416560484Sobrien
416660484SobrienWed Jul 10 12:42:56 1996  Ian Lance Taylor  <ian@cygnus.com>
416760484Sobrien
416860484Sobrien	* ecoff.c (_bfd_ecoff_new_section_hook): Set SEC_CODE for _INIT
416960484Sobrien	and _FINI sections.
417060484Sobrien
417160484SobrienWed Jul 10 11:18:21 1996  Richard Henderson  <rth@tamu.edu>
417260484Sobrien
417360484Sobrien	* coffcode.h (coff_set_section_contents): A/UX does not require
417460484Sobrien	special handling of the _LIB section.
417560484Sobrien
417660484SobrienTue Jul  9 15:52:20 1996  Jeffrey A Law  (law@cygnus.com)
417760484Sobrien
417860484Sobrien	* coff-h8300.c (h8300_reloc16_extra_cases): Use the correct
417960484Sobrien	value for R_RELBYTE.
418060484Sobrien
418160484Sobrien	* reloc16.c (bfd_coff_reloc16_relax_section): Only "shrinks"
418260484Sobrien	array if one was allocated.
418360484Sobrien
418460484SobrienTue Jul  9 12:21:54 1996  Ian Lance Taylor  <ian@cygnus.com>
418560484Sobrien
418660484Sobrien	From Kazumoto Kojima <kkojima@kk.info.kanagawa-u.ac.jp>:
418760484Sobrien	* elf32-mips.c (struct mips_elf_link_hash_table): Add new fields
418860484Sobrien	use_rld_obj_head and rld_value.
418960484Sobrien	(mips_elf_link_hash_table_create): Initialize new fields.
419060484Sobrien	(mips_elf_add_symbol_hook): Mark __rld_obj_head symbol as
419160484Sobrien	dynamic.
419260484Sobrien	(mips_elf_create_dynamic_sections): Create .rld_map section.  If
419360484Sobrien	__rld_obj_head symbol not seen, create an __rld_map symbol.
419460484Sobrien	(mips_elf_size_dynamic_sections): Make space in .rld_map section.
419560484Sobrien	Create a DT_MIPS_RLD_MAP entry rather than a DT_DEBUG entry.
419660484Sobrien	(mips_elf_finish_dynamic_symbol): Save value of __rld_map or
419760484Sobrien	__rld_obj_head symbol.
419860484Sobrien	(mips_elf_finish_dynamic_sections): Handle DT_MIPS_RLD_MAP.
419960484Sobrien
420060484SobrienMon Jul  8 16:18:03 1996  Ian Lance Taylor  <ian@cygnus.com>
420160484Sobrien
420260484Sobrien	* elf32-mips.c (mips_reloc_map): Remove BFD_RELOC_32_PCREL entry.
420360484Sobrien
420460484Sobrien	* elf32-ppc.c (ppc_elf_howto_raw): For R_PPC_ADDR16_HA, use
420560484Sobrien	ppc_elf_addr16_ha_reloc.
420660484Sobrien	(ppc_elf_addr16_ha_reloc): New static function.
420760484Sobrien
420860484Sobrien	* coff-mips.c (struct mips_hi): Define.
420960484Sobrien	(mips_refhi_list): New static variable.
421060484Sobrien 	(mips_refhi_addr, mips_refhi_addend): Remove.
421160484Sobrien	(mips_refhi_reloc): Maintain a list of unmatched REFHI relocs.
421260484Sobrien	(mips_reflo_reloc): Process mips_refhi_list.
421360484Sobrien	(mips_relhi_list): New static variable.
421460484Sobrien	(mips_relhi_addr, mips_relhi_addend): Remove.
421560484Sobrien	(mips_relhi_reloc): Maintain a list of unmatched RELHI relocs.
421660484Sobrien	(mips_rello_reloc): Process mips_relhi_list.
421760484Sobrien	(mips_relocate_section): Permit an arbitrary number of REFHI or
421860484Sobrien	RELHI relocs before the associated REFLO or RELLO reloc.
421960484Sobrien
422060484SobrienFri Jul  5 19:27:49 1996  Ian Lance Taylor  <ian@cygnus.com>
422160484Sobrien
422260484Sobrien	* aout-target.h (MY(callback)): Set reloc_count fields.
422360484Sobrien
422460484SobrienThu Jul  4 12:00:37 1996  Ian Lance Taylor  <ian@cygnus.com>
422560484Sobrien
422660484Sobrien	* sunos.c (sunos_add_dynamic_symbols): Don't create dynamic
422760484Sobrien	sections unless this is a SunOS link.
422860484Sobrien
422960484Sobrien	* VERSION: Set to 2.7.1.
423060484Sobrien
423160484Sobrien	* Released binutils 2.7.
423260484Sobrien
423360484SobrienWed Jul  3 14:59:47 1996  Ian Lance Taylor  <ian@cygnus.com>
423460484Sobrien
423560484Sobrien	* i386aout.c: Include "aout/aout64.h".
423660484Sobrien 	(i386aout_write_object_contents): New static function.
423760484Sobrien	(MY_write_object_contents): Define.
423860484Sobrien
423960484Sobrien	* netbsd.h (MY(write_object_contents)): Make sure that
424060484Sobrien	adjust_sizes_and_vmas is called before fiddling with the magic
424160484Sobrien	number.
424260484Sobrien
424360484SobrienTue Jul  2 23:30:39 1996  Ian Lance Taylor  <ian@cygnus.com>
424460484Sobrien
424560484Sobrien	* stabs.c (_bfd_link_section_stabs): Fix casts of psinfo.
424660484Sobrien
424760484SobrienSun Jun 30 13:34:33 1996  Ian Lance Taylor  <ian@cygnus.com>
424860484Sobrien
424960484Sobrien	* libbfd-in.h (itos, stoi): Don't define.
425060484Sobrien	* libbfd.h: Rebuild.
425160484Sobrien	* i386lynx.c (KEEPIT): Define as udata.i.
425260484Sobrien	(NAME(lynx,swap_std_reloc_out)): Don't use stoi.
425360484Sobrien	(NAME(lynx,swap_ext_reloc_out)): Likewise.
425460484Sobrien	* riscix.c (riscix_swap_std_reloc_out): Use udata.i rather than
425560484Sobrien	flags.  Don't use stoi.
425660484Sobrien
425760484Sobrien	* elf32-mips.c (ELF_MAGPAGESIZE): Change definition to 0x1000.
425860484Sobrien
425960484Sobrien	* elf.c (map_sections_to_segments): Don't start a new segment for
426060484Sobrien 	a writable section if it's on the same page as the previous
426160484Sobrien 	segment.  Reset the writable variable for a readonly section.
426260484Sobrien
426360484SobrienSat Jun 29 16:18:51 1996  Kim Knuttila  <krk@cygnus.com>
426460484Sobrien
426560484Sobrien	* peicode.h (coff_swap_aouthdr_in): Missing initializations of
426660484Sobrien	first_thunk_address, thunk_size, and import_table_size.
426760484Sobrien	* peicode.h: Improved some diagnostics regarding edata sections.
426860484Sobrien
426960484Sobrien	* coff-ppc.c (coff_ppc_relocate_section): Earlier error check
427060484Sobrien	on IMGLUE relocs.
427160484Sobrien	(coff_ppc_relocate_section): Improved diagnostic for large TOCDEFN's.
427260484Sobrien	(TARGET_LITTLE_SYM): Added missing D_PAGED.
427360484Sobrien
427460484SobrienFri Jun 28 13:48:45 1996  Ian Lance Taylor  <ian@cygnus.com>
427560484Sobrien
427660484Sobrien	* xcofflink.c (xcoff_link_check_ar_symbols): An undefined symbol
427760484Sobrien	with XCOFF_DEF_DYNAMIC set is really defined.
427860484Sobrien	(xcoff_link_check_dynamic_ar_symbols): Likewise.
427960484Sobrien	(xcoff_link_add_symbols): Only create special sections if using an
428060484Sobrien	XCOFF hash table.
428160484Sobrien
428260484Sobrien	* reloc.c (bfd_perform_relocation): Handle xcoff-powermac like
428360484Sobrien	aixcoff-rs6000.
428460484Sobrien	(bfd_install_relocation): Likewise.
428560484Sobrien
428660484SobrienFri Jun 28 11:17:00 1996  Richard Henderson  <rth@tamu.edu>
428760484Sobrien
428860484Sobrien	* elf64-alpha.c (struct alpha_elf_link_hash_entry): Add flags
428960484Sobrien	field.
429060484Sobrien	(ALPHA_ELF_LINK_HASH_LU_ADDR): Define.
429160484Sobrien	(ALPHA_ELF_LINK_HASH_LU_MEM): Define.
429260484Sobrien	(ALPHA_ELF_LINK_HASH_LU_FUNC): Define.
429360484Sobrien	(elf64_alpha_link_hash_newfunc): Initialize flags field.
429460484Sobrien	(elf64_alpha_check_relocs): Record types of LITUSE entries that
429560484Sobrien	are found for LITERAL relocs.
429660484Sobrien	(elf64_alpha_adjust_dynamic_symbol): If a symbol has its address
429760484Sobrien	taken, we cannot generate a .plt entry for the symbol.
429860484Sobrien
429960484SobrienThu Jun 27 11:24:29 1996  Ian Lance Taylor  <ian@cygnus.com>
430060484Sobrien
430160484Sobrien	* configure.in: Add AC_ISC_POSIX, and check for setitimer and
430260484Sobrien	sysconf functions (for gprof).
430360484Sobrien	* configure, config.in: Rebuild.
430460484Sobrien
430560484SobrienWed Jun 26 16:29:02 1996  Ian Lance Taylor  <ian@cygnus.com>
430660484Sobrien
430760484Sobrien	* ecoff.c (_bfd_ecoff_archive_p): Check the first object file in
430860484Sobrien	an archive if it has a map.  If the object file has the wrong
430960484Sobrien	xvec, reject it.
431060484Sobrien
431160484Sobrien	* coff-alpha.c (alpha_adjust_reloc_in): Set the addend for a
431260484Sobrien	BRADDR, SREL16, SREL32, or SREL64 reloc against an external
431360484Sobrien	symbol.
431460484Sobrien	(alpha_relocate_section): Likewise.
431560484Sobrien
431660484Sobrien	* coffswap.h (coff_swap_reloc_out): Use RELSZ, not sizeof.
431760484Sobrien	(coff_swap_filehdr_out): Use FILHSZ, not sizeof.
431860484Sobrien	(coff_swap_sym_out): Use SYMESZ, not sizeof.
431960484Sobrien	(coff_swap_aux_out): Use AUXESZ, not sizeof.
432060484Sobrien	(coff_swap_lineno_out): Use LINESZ, not sizeof.
432160484Sobrien	(coff_swap_aouthdr_out): Use AOUTSZ, not sizeof.
432260484Sobrien	(coff_swap_scnhdr_out): Use SCNHSZ, not sizeof.
432360484Sobrien	* peicode.h: Corresponding changes.
432460484Sobrien
432560484SobrienTue Jun 25 15:28:34 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
432660484Sobrien
432760484Sobrien	* elflink.h (elf_create_pointer_linker_section): Comment out code
432860484Sobrien	dealing with making GOT pointers negative of the GOT symbol for
432960484Sobrien	now.
433060484Sobrien
433160484SobrienTue Jun 25 11:41:24 1996  Richard Henderson  <rth@tamu.edu>
433260484Sobrien
433360484Sobrien	* elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't
433460484Sobrien	increment the .rela.plt size until after we're done creating the
433560484Sobrien	.plt entry.
433660484Sobrien	(elf64_alpha_finish_dynamic_symbol): Change .plt entry to load the
433760484Sobrien	.rela.plt offset directly rather than calculating it.
433860484Sobrien
433960484SobrienMon Jun 24 17:15:10 1996  Jason Molenda  (crash@godzilla.cygnus.co.jp)
434060484Sobrien
434189857Sobrien        * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir):
434260484Sobrien	Use autoconf-set values.
434360484Sobrien        * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
434460484Sobrien	includedir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set
434560484Sobrien	values.
434660484Sobrien        (docdir): Deleted.
434760484Sobrien        * configure.in (AC_PREREQ): autoconf v2.5 or higher.
434860484Sobrien        * configure: Rebuilt.
434960484Sobrien
435060484SobrienMon Jun 24 22:50:35 1996  Jeffrey A Law  (law@cygnus.com)
435160484Sobrien
435260484Sobrien	* som.c (som_write_fixups): Fix typo in R_END_TRY for exception
435360484Sobrien	handling code > 1k away.
435460484Sobrien
435560484SobrienMon Jun 24 18:41:06 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
435660484Sobrien
435760484Sobrien	* elflink.h (elf_create_pointer_linker_section): If DEBUG is
435860484Sobrien	defined, output whenever the symbol is updated.
435960484Sobrien
436060484SobrienMon Jun 24 17:58:12 1996  Jouke Numan  <jnuman@bazis.nl>
436160484Sobrien
436260484Sobrien	* elf.c (elf_fake_sections): Don't set sh_addr of a non SEC_ALLOC
436360484Sobrien	section to 0 if user_set_vma is set.
436460484Sobrien	* elflink.h (elf_bfd_final_link): Likewise.
436560484Sobrien
436660484SobrienSun Jun 23 20:42:51 1996  Doug Evans  <dje@canuck.cygnus.com>
436760484Sobrien
436860484Sobrien	Partially undo patch of Jun 20.
436960484Sobrien	* coffcode.h (coff_set_alignment_hook): Use COFF_IMAGE_WITH_PE.
437060484Sobrien	(coff_compute_section_file_positions): Likewise.
437160484Sobrien	(coff_write_object_contents): Likewise.  Re-add deleted code, but
437260484Sobrien	use #ifdef COFF_WITH_PE, not COFF_OBJ_WITH_PE.
437360484Sobrien	* peicode.h (pe_bfd_copy_private_bfd_data): Re-add #ifdef.
437460484Sobrien
437560484SobrienFri Jun 21 17:38:15 1996  Joel Sherrill  <joel@merlin.gcs.redstone.army.mil>
437660484Sobrien
437760484Sobrien	* config.bfd: Add support for *-*-rtems* configurations.
437860484Sobrien
437960484SobrienFri Jun 21 15:19:59 1996  Ian Lance Taylor  <ian@cygnus.com>
438060484Sobrien
438160484Sobrien	* elf.c (prep_headers): Add bfd_arch_alpha case.
438260484Sobrien
438360484SobrienFri Jun 21 12:35:27 1996  Richard Henderson  <rth@tamu.edu>
438460484Sobrien
438560484Sobrien	* elf64-alpha.c: New file.
438660484Sobrien	* config.bfd (alpha-*-linuxecoff*): New target.
438760484Sobrien	(alpha-*-linux*, alpha-*-elf*): New targets.
438860484Sobrien	* configure.in (bfd_elf64_alpha_vec): New vector.
438960484Sobrien	* configure: Rebuild.
439060484Sobrien	* targets.c (bfd_elf64_alpha_vec): Declare.
439160484Sobrien	(bfd_target_vector): Add bfd_elf64_alpha_vec if BFD64.
439260484Sobrien	* reloc.c (BFD_RELOC_ALPHA_GPDISP): Define.
439360484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
439460484Sobrien	* Makefile.in: Rebuild dependencies.
439560484Sobrien 	(BFD64_BACKENDS): Add elf64-alpha.o.
439660484Sobrien	(BFD64_BACKENDS_CFILES): Add elf64-alpha.c.
439760484Sobrien
439860484SobrienThu Jun 20 18:14:25 1996  Ian Lance Taylor  <ian@cygnus.com>
439960484Sobrien
440060484Sobrien	* ecoff.c (ecoff_armap_hash): If hlog is 0, just return 0, rather
440160484Sobrien	than relying on a right shift of 32.
440260484Sobrien
440360484SobrienThu Jun 20 11:00:57 1996  Doug Evans  <dje@canuck.cygnus.com>
440460484Sobrien
440560484Sobrien	* coffcode.h (coff_set_alignment_hook): Change COFF_IMAGE_WITH_PE
440660484Sobrien	ifdef to COFF_WITH_PE.
440760484Sobrien	(coff_compute_section_file_positions): Likewise.
440860484Sobrien	(coff_write_object_contents): Likewise.  Delete COFF_OBJ_WITH_PE.
440960484Sobrien	* pe-{arm,i386,ppc}.c (COFF_OBJ_WITH_PE): Delete.
441060484Sobrien	* peicode.h (pe_bfd_copy_private_bfd_data): Delete ifdef
441160484Sobrien	COFF_IMAGE_WITH_PE, always include.
441260484Sobrien
441360484Sobrien	* peicode.h (coff_swap_scnhdr_out): ".drectve" doesn't have trailing 0.
441460484Sobrien
441560484SobrienWed Jun 19 11:37:52 1996  Ian Lance Taylor  <ian@cygnus.com>
441660484Sobrien
441760484Sobrien	* elf.c (map_sections_to_segments): Fix up the test for -Ttext to
441860484Sobrien	approximate the correct answer if SIZEOF_HEADERS was not used.
441960484Sobrien
442060484Sobrien	* binary.c (binary_set_section_contents): Set section file
442160484Sobrien	position based on LMA rather than VMA.
442260484Sobrien
442360484SobrienWed Jun 19 11:19:25 1996  Manfred Hollstein KS/EIC5 60/3/142 #40283  <manfred@lts.sel.alcatel.de>
442460484Sobrien
442560484Sobrien	* linker.c (_bfd_generic_link_output_symbols): Don't output any
442660484Sobrien	symbols if info->strip == strip_all.
442760484Sobrien
442860484SobrienTue Jun 18 15:17:36 1996  Jeffrey A. Law  <law@rtl.cygnus.com>
442960484Sobrien
443060484Sobrien	* coff-h8300.c: Remove #if 0 code.
443160484Sobrien	(compatable): Don't allow mixing/matching of different architectures.
443260484Sobrien
443360484Sobrien	* archures.c (bfd_mach_h8300s): Add.
443460484Sobrien	* bfd-in2.h: Rebuilt.
443560484Sobrien	* coff-h8300.c (funcvec_hash_newfunc): Handle H8/S too.
443660484Sobrien	(BADMAG): Likewise.
443760484Sobrien	(h8300_reloc16_estimate): Likewise.
443860484Sobrien	(h8300_reloc16_extra_cases): Likewise.
443960484Sobrien	(h8300_bfd_link_add_symbols): Likewise.
444060484Sobrien	* coffcode.h (coff_set_arch_mach_hook): Likewise.
444160484Sobrien	(coff_set_flags): Likewise.
444260484Sobrien	* cpu-h8300.c (h8300_scan): Likewise.
444360484Sobrien	Add H8/S to bfd_h8300_arch list.
444460484Sobrien
444560484SobrienTue Jun 18 14:42:58 1996  Klaus Kaempf  <kkaempf@progis.de>
444660484Sobrien
444760484Sobrien	Added support for Alpha OpenVMS:
444860484Sobrien	* evax.h, evax-alpha.c, evax-egsd.c, evax-emh.c: New files.
444960484Sobrien	* evax-etir.c, evax-misc.c, hosts/alphavms.h: New files.
445060484Sobrien	* config.h-vms, makefile.vms: New files.
445160484Sobrien	* config.bfd (alpha-*-*vms*): New target.
445260484Sobrien	* configure.in (evax_alpha_vec): New target vector.
445360484Sobrien	* configure: Rebuild.
445460484Sobrien	* reloc.c (BFD_RELOC_SWREL32, BFD_RELOC_SWREL64): Define.
445560484Sobrien	(BFD_RELOC_ALPHA_LINKAGE, BFD_RELOC_ALPHA_BASEREG): Define.
445660484Sobrien	* targets.c (bfd_target_evax_flavour): Define.
445760484Sobrien	(evax_alpha_vec): Declare.
445860484Sobrien	(bfd_target_vector): Add ecoffalpha_little_vec and evax_alpha_vec
445960484Sobrien	if BFD64 is defined.
446060484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
446160484Sobrien	* Makefile.in: Rebuild dependencies.
446260484Sobrien	(BFD64_BACKENDS): Add evax-alpha.o, evax-egsd.o, evax-etir.o,
446360484Sobrien	evax-emh.o, and evax-misc.o.
446460484Sobrien	(BFD64_BACKENDS_CFILES): Add evax-alpha.c, evax-egsd.c,
446560484Sobrien	evax-etir.c, evax-emh.c, and evax-misc.c.
446660484Sobrien	(HFILES): Add evax.h.
446760484Sobrien
446860484SobrienTue Jun 18 13:54:18 1996  Ian Lance Taylor  <ian@cygnus.com>
446960484Sobrien
447060484Sobrien	* coff-h8300.c (h8300_reloc16_extra_cases): Make name a const
447160484Sobrien	pointer.
447260484Sobrien	(h8300_bfd_link_add_symbols): Likewise.
447360484Sobrien
447460484SobrienMon Jun 17 10:06:50 1996  Jeffrey A. Law  <law@rtl.cygnus.com>
447560484Sobrien
447660484Sobrien	* som.h (R_HPPA_BEGIN_TRY, R_HPPA_END_TRY): Define.
447760484Sobrien	* som.c (som_write_fixups): Handle R_BEGIN_TRY and R_END_TRY.
447860484Sobrien
447960484SobrienMon Jun 17 12:49:11 1996  Ian Lance Taylor  <ian@cygnus.com>
448060484Sobrien
448160484Sobrien	* elf32-mips.c (mips_elf_relocate_section): Don't create a reloc
448260484Sobrien	for R_MIPS_REL32 and R_MIPS_32 relocs if no dynamic sections were
448360484Sobrien	created.
448460484Sobrien	(mips_elf_check_relocs): Only create .rel.dyn for R_MIPS_REL32 and
448560484Sobrien	R_MIPS_32 relocs if creating a shared library.
448660484Sobrien
448760484SobrienThu Jun 13 20:14:51 1996  Doug Evans  <dje@canuck.cygnus.com>
448860484Sobrien
448960484Sobrien	* peicode.h (add_data_entry): Use pei_section_data rather than
449060484Sobrien	_cooked_size.  Corresponds to May 13 change in coffcode.h.
449160484Sobrien
449260484SobrienThu Jun 13 10:23:40 1996  Ian Lance Taylor  <ian@cygnus.com>
449360484Sobrien
449460484Sobrien	* cofflink.c (_bfd_coff_final_link): Handle long section names.
449560484Sobrien	* coffcode.h (coff_write_object_contents): If there are long
449660484Sobrien	section names, always set the f_symptr field, even if there are no
449760484Sobrien	symbols.
449860484Sobrien	* peicode.h (coff_swap_filehdr_in): Don't clear the f_symptr field
449960484Sobrien	if there are no symbols.
450060484Sobrien
450160484Sobrien	* coffgen.c (make_a_section_from_file): Check return value of
450260484Sobrien	_bfd_coff_read_string_table.
450360484Sobrien	(coff_real_object_p): Check return value of
450460484Sobrien	make_a_section_from_file.
450560484Sobrien	(_bfd_coff_read_string_table): Check that there are some symbols
450660484Sobrien	before trying to read the string table size.
450760484Sobrien
450860484SobrienWed Jun 12 11:16:37 1996  Ian Lance Taylor  <ian@cygnus.com>
450960484Sobrien
451060484Sobrien	* xcofflink.c (xcoff_link_add_symbols): When considering whether
451160484Sobrien	to replace a symbol in a dynamic object with a symbol from another
451260484Sobrien	dynamic object, do the replacement if the existing symbol is
451360484Sobrien	global linkage code.
451460484Sobrien
451560484Sobrien	* xcofflink.c (_bfd_ppc_xcoff_relocate_section): Check explicitly
451660484Sobrien	for _ptrgl, and treat it as global linkage code.
451760484Sobrien
451860484Sobrien	* aoutx.h (NAME(aout,find_nearest_line)): Notice if we find a
451960484Sobrien	filename or N_SO symbol past the offset, and use it to indicate
452060484Sobrien	that there is no line number or function when appropriate.
452160484Sobrien
452260484SobrienTue Jun 11 15:24:48 1996  Ian Lance Taylor  <ian@cygnus.com>
452360484Sobrien
452460484Sobrien	* xcofflink.c (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR for a
452560484Sobrien	common symbol defined by the linker.  Don't export function code
452660484Sobrien	even if export_defineds is set.
452760484Sobrien
452860484SobrienMon Jun 10 11:57:27 1996  Jeffrey A Law  (law@cygnus.com)
452960484Sobrien
453060484Sobrien	* coff-h8300.c (howto_table): Add new entries for R_BCC_INV
453160484Sobrien	and R_JMP_DEL.
453260484Sobrien	(rtype2howto): Handle R_BCC_INV and R_JMP_DEL.
453360484Sobrien	(h8300_symbol_address_p): New function.
453460484Sobrien	(h8300_reloc16_estimate): Eliminate jumps made unnecessary by
453560484Sobrien	relaxing.
453660484Sobrien
453760484SobrienSun Jun  9 16:30:20 1996  Jeffrey A Law  (law@cygnus.com)
453860484Sobrien
453960484Sobrien	* coff-h8300.c (h8300_reloc16_estimate): Fix many minor spacing
454060484Sobrien	problems.
454160484Sobrien	(h8300_reloc16_estimate, cases R_JMP1, R_JMP2): Adjust "dot"
454260484Sobrien	correctly for the two variants.  Allow relaxing if the target
454360484Sobrien	is 128 bytes away since after relaxation it'll be 126 bytes away.
454460484Sobrien	(h8300_reloc16_estimate, case R_PCRWORD): Correctly adjust
454560484Sobrien	"dot" and "value".  Allow relaxing if the target is 128 bytes
454660484Sobrien	away since after relaxation it'll be 126 bytes away.
454760484Sobrien	* reloc16.c (bfd_coff_reloc16_relax_section): Keep relaxing
454860484Sobrien	the given section until nothing changes.
454960484Sobrien
455060484SobrienThu Jun  6 15:24:45 1996  Richard Henderson  <rth@tamu.edu>
455160484Sobrien
455260484Sobrien	* ecoff.c (_bfd_ecoff_new_section_hook): Remove the _PDATA
455360484Sobrien 	alignment hack--we can get the lnnoptr info another way without
455460484Sobrien 	suddenly increasing the alignment requirements.  Set the flags for
455560484Sobrien	the _PDATA section.
455660484Sobrien	(ecoff_compute_section_file_positions): Do so.
455760484Sobrien
455860484SobrienThu Jun  6 11:24:37 1996  Ian Lance Taylor  <ian@cygnus.com>
455960484Sobrien
456060484Sobrien	* ieee.c (ieee_write_object_contents): Put a timestamp in the file
456160484Sobrien	to keep the HP emulator database happy.
456260484Sobrien
456360484Sobrien	* config.bfd: Recognize powerpc-*-linux* and powerpcle-*-linux*.
456460484Sobrien	From Kevin Buettner <kev@primenet.com>.
456560484Sobrien
456660484SobrienWed Jun  5 15:16:04 1996  Ian Lance Taylor  <ian@cygnus.com>
456760484Sobrien
456860484Sobrien	* aoutx.h (translate_to_native_sym_flags): Don't try to print the
456960484Sobrien	name of a NULL section.
457060484Sobrien
457160484SobrienTue Jun  4 18:53:58 1996  Ian Lance Taylor  <ian@cygnus.com>
457260484Sobrien
457360484Sobrien	* linker.c (_bfd_generic_link_add_one_symbol): If notice_all is
457460484Sobrien	set, always call the notice callback.
457560484Sobrien
457660484Sobrien	* VERSION: Increment for bfdlink.h change.
457760484Sobrien
457860484SobrienMon Jun  3 11:01:53 1996  Ian Lance Taylor  <ian@cygnus.com>
457960484Sobrien
458060484Sobrien	* coff-sh.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Set to 4.
458160484Sobrien	(sh_relax_delete_bytes): Correct handling of differently sized
458260484Sobrien	trailing alignment reloc.
458360484Sobrien
458460484Sobrien	* bfd-in.h: Use #error if BFD_HOST_64_BIT can not be defined.
458560484Sobrien	* bfd-in2.h: Rebuild.
458660484Sobrien	* configure.in: Warn if there is no known 64 bit type.
458760484Sobrien	* configure: Rebuild.
458860484Sobrien
458960484Sobrien	* Makefile.in: Rebuild dependencies.
459060484Sobrien 	(BFD32_BACKENDS): Add ppcboot.o.
459160484Sobrien	(BFD32_BACKENDS_CFILES): Add ppcboot.c.
459260484Sobrien
459360484Sobrien	* elf32-mips.c (mips_elf_size_dynamic_sections): Initialize c.
459460484Sobrien	From Per Fogelstrom <per.fogelstrom@mailbox200.swipnet.se>.
459560484Sobrien
459660484SobrienSat Jun  1 21:49:58 1996  Ian Lance Taylor  <ian@cygnus.com>
459760484Sobrien
459860484Sobrien	* elf64-mips.c (bfd_mips_elf64_swap_reginfo_in)
459960484Sobrien	(bfd_mips_elf64_swap_reginfo_out): Move from here...
460060484Sobrien	* elf32-mips.c (bfd_mips_elf64_swap_reginfo_in)
460160484Sobrien	(bfd_mips_elf64_swap_reginfo_out): ...to here.
460260484Sobrien
460360484SobrienFri May 31 13:51:28 1996  Ian Lance Taylor  <ian@cygnus.com>
460460484Sobrien
460560484Sobrien	* elf64-mips.c: Improve reloc special_functions and handling of
460660484Sobrien	SHT_MIPS_OPTIONS section.
460760484Sobrien	* elf32-mips.c (_bfd_mips_elf_hi16_reloc): Rename from
460860484Sobrien	mips_elf_hi16_reloc and make globally visible.
460960484Sobrien	(_bfd_mips_elf_lo16_reloc): Rename from mips_elf_lo16_reloc and
461060484Sobrien	make globally visible.
461160484Sobrien	(_bfd_mips_elf_got16_reloc): Rename from mips_elf_got16_reloc and
461260484Sobrien	make globally visible.
461360484Sobrien	(_bfd_mips_elf_gprel16_reloc): Rename from mips_elf_gprel16_reloc
461460484Sobrien	and make globally visible.
461560484Sobrien	(gprel16_with_gp): Check howto->src_mask before using value in
461660484Sobrien	insn.
461760484Sobrien	(_bfd_mips_elf_gprel32_reloc): Rename from mips_elf_gprel32_reloc
461860484Sobrien	and make globally visible.
461960484Sobrien	(gprel32_with_gp): Check howto->src_mask before fetching value.
462060484Sobrien	(bfd_mips_elf_swap_options_in): New function.
462160484Sobrien	(bfd_mips_elf_swap_options_out): New function.
462260484Sobrien	(_bfd_mips_elf_set_private_flags): Rename from
462360484Sobrien	mips_elf_set_private_flags and make globally visible.
462460484Sobrien	(_bfd_mips_elf_copy_private_bfd_data): Rename from
462560484Sobrien	mips_elf_copy_private_bfd_data and make globally visible.
462660484Sobrien	(_bfd_mips_elf_merge_private_bfd_data): Rename from
462760484Sobrien	mips_elf_merge_private_bfd_data and make globally visible.
462860484Sobrien	(_bfd_mips_elf_section_from_shdr): Accept .MIPS.options as a name
462960484Sobrien	for a SHT_MIPS_OPTIONS section.
463060484Sobrien	(mips_elf32_section_from_shdr): Handle SHT_MIPS_OPTIONS section.
463160484Sobrien	(_bfd_mips_elf_fake_sections): Consider .MIPS.options to be the
463260484Sobrien	name of a SHT_MIPS_OPTIONS section.
463360484Sobrien	(_bfd_mips_elf_set_section_contents): New function.
463460484Sobrien	(mips_elf32_section_processing): Set the GP value in a
463560484Sobrien	SHT_MIPS_OPTIONS section.
463660484Sobrien	(_bfd_mips_elf_find_nearest_line): Rename from
463760484Sobrien	mips_elf_find_nearest_line and make globally visible.
463860484Sobrien	(bfd_elf32_set_section_contents): Define.
463960484Sobrien	* elf-bfd.h (_bfd_mips_elf_hi16_reloc): Declare.
464060484Sobrien	(_bfd_mips_elf_lo16_reloc): Declare.
464160484Sobrien	(_bfd_mips_elf_gprel16_reloc): Declare.
464260484Sobrien	(_bfd_mips_elf_got16_reloc): Declare.
464360484Sobrien	(_bfd_mips_elf_gprel32_reloc): Declare.
464460484Sobrien	(_bfd_mips_elf_set_private_flags): Declare.
464560484Sobrien	(_bfd_mips_elf_copy_private_bfd_data): Declare.
464660484Sobrien	(_bfd_mips_elf_merge_private_bfd_data): Declare.
464760484Sobrien	(_bfd_mips_elf_find_nearest_line): Declare.
464860484Sobrien	(_bfd_mips_elf_set_section_contents): Declare.
464960484Sobrien
465060484Sobrien	* elf32-hppa.c (elf32_hppa_info_to_howto): Rename from
465160484Sobrien	elf_info_to_howto.
465260484Sobrien	(elf_info_to_howto): Define.
465360484Sobrien	* elf32-sparc.c (elf32_sparc_info_to_howto): Rename from
465460484Sobrien	elf_info_to_howto.
465560484Sobrien	(elf_info_to_howto): Define.
465660484Sobrien	* elf64-sparc.c (sparc64_elf_info_to_howto): Rename from
465760484Sobrien	elf_info_to_howto.
465860484Sobrien	(elf_info_to_howto): Define.
465960484Sobrien
466060484Sobrien	* coff-w65.c (h8300_reloc16_estimate): Rename R_MOVB[12] to
466160484Sobrien	R_MOV16B[12], to match change in coff/internal.h.
466260484Sobrien
466360484SobrienThu May 30 12:38:49 1996  Ian Lance Taylor  <ian@cygnus.com>
466460484Sobrien
466560484Sobrien	* elf64-mips.c: Extensive additions to provide better support for
466660484Sobrien	writing files and for gas.
466760484Sobrien	* elf32-mips.c (_bfd_mips_elf_object_p): New function, broken out
466860484Sobrien	of mips_elf_object_p.
466960484Sobrien	(mips_elf32_object_p): Rename from mips_elf_object_p; call
467060484Sobrien	_bfd_mips_elf_object_p.
467160484Sobrien	(_bfd_mips_elf_final_write_processing): Rename from
467260484Sobrien	mips_elf_final_write_processing and make globally visible.
467360484Sobrien	(_bfd_mips_elf_fake_sections): Rename from
467460484Sobrien	mips_elf_fake_sections and make globally visible.
467560484Sobrien	(_bfd_mips_elf_section_from_bfd_section): Rename from
467660484Sobrien	mips_elf_section_from_bfd_section and make globally visible.
467760484Sobrien	(_bfd_mips_elf_section_processing): New function, broken out of
467860484Sobrien	mips_elf_section_processing.
467960484Sobrien	(mips_elf32_section_processing): Rename from
468060484Sobrien	mips_elf_section_processing; call
468160484Sobrien	_bfd_mips_elf_section_processing.
468260484Sobrien	(_bfd_mips_elf_symbol_processing): Rename from
468360484Sobrien	mips_elf_symbol_processing and make globally visible.
468460484Sobrien	(_bfd_mips_elf_read_ecoff_info): Rename from
468560484Sobrien	mips_elf_read_ecoff_info and make globally visible.
468660484Sobrien	(mips_elf32_ecoff_debug_swap): Rename from
468760484Sobrien	mips_elf_ecoff_debug_swap.
468860484Sobrien	* elf.c (_bfd_elf_symbol_from_bfd_symbol): Use asymbol rather than
468960484Sobrien	struct symbol_cache_entry.
469060484Sobrien	(_bfd_elf_validate_reloc): New function, moved in from
469160484Sobrien	elfcode.h:validate_reloc.
469260484Sobrien	* elfcode.h (validate_reloc): Remove; moved into elf.c and renamed
469360484Sobrien	to _bfd_elf_validate_reloc.  Change all callers.
469460484Sobrien	* elf-bfd.h (bfd_section_from_shdr): Declare.
469560484Sobrien	(_bfd_elf_symbol_from_bfd_symbol): Declare.
469660484Sobrien	(_bfd_elf_validate_reloc): Declare.
469760484Sobrien	(_bfd_mips_elf_object_p): Declare.
469860484Sobrien	(_bfd_mips_elf_fake_sections): Declare.
469960484Sobrien	(_bfd_mips_elf_section_from_bfd_section): Declare.
470060484Sobrien	(_bfd_mips_elf_section_processing): Declare.
470160484Sobrien	(_bfd_mips_elf_symbol_processing): Declare.
470260484Sobrien	(_bfd_mips_elf_read_ecoff_info): Declare.
470360484Sobrien	(_bfd_mips_elf_final_write_processing): Declare.
470460484Sobrien	* elfxx-target.h (bfd_elfNN_get_reloc_upper_bound): Don't define
470560484Sobrien	if already defined.
470660484Sobrien
470760484Sobrien	* elf32-mips.c (mips_elf_object_p): Handle E_MIPS_ARCH_4.
470860484Sobrien	(mips_elf_final_write_processing): Likewise.
470960484Sobrien
471060484SobrienWed May 29 16:15:29 1996  Ian Lance Taylor  <ian@cygnus.com>
471160484Sobrien
471260484Sobrien	64-bit MIPS ELF ABI objdump support:
471360484Sobrien	* elf64-mips.c: New file.
471460484Sobrien	* Makefile.in: Rebuild dependencies.
471560484Sobrien 	(BFD64_BACKENDS): Add elf64-mips.o.
471660484Sobrien	(BFD64_BACKENDS_CFILES): Add elf64-mips.c.
471760484Sobrien	* config.bfd (mips*el-*-elf*) Add bfd_elf64_bigmips_vec and
471860484Sobrien	bfd_elf64_littlemips_vec to targ_selvecs.
471960484Sobrien	(mips*-*-elf*): Likewise.
472089857Sobrien	* configure.in: Add bfd_elf64_bigmips_vec and
472160484Sobrien	bfd_elf64_littlemips_vec to vector switch.
472260484Sobrien	* configure: Rebuild.
472360484Sobrien	* elf32-mips.c (_bfd_mips_elf_section_from_shdr): New function,
472460484Sobrien	broken out of mips_elf_section_from_shdr.
472560484Sobrien	(mips_elf32_section_from_shdr): Rename from
472660484Sobrien	mips_elf_section_from_shdr.  Call new function.
472760484Sobrien	(elf_backend_section_from_shdr): Update name of renamed function.
472860484Sobrien	* elf-bfd.h (struct elf_size_info): Change second parameter of
472960484Sobrien	write_out_phdrs to be const.  Likewise for second parameter of
473060484Sobrien	swap_symbol_out.
473160484Sobrien	(struct bfd_elf_section_data): Add rel_hdr2 field.
473260484Sobrien	(bfd_elf32_swap_symbol_in): Change second parameter to be const.
473360484Sobrien	(bfd_elf32_swap_symbol_out): Likewise.
473460484Sobrien	(bfd_elf32_swap_reloc_in): Likewise.
473560484Sobrien	(bfd_elf32_swap_reloc_out): Likewise.
473660484Sobrien	(bfd_elf32_swap_reloca_in): Likewise.
473760484Sobrien	(bfd_elf32_swap_reloca_out): Likewise.
473860484Sobrien	(bfd_elf32_swap_phdr_in): Likewise.
473960484Sobrien	(bfd_elf32_swap_phdr_out): Likewise.
474060484Sobrien	(bfd_elf32_swap_dyn_in): Likewise.
474160484Sobrien	(bfd_elf32_swap_dyn_out): Likewise.
474260484Sobrien	(bfd_elf32_slurp_symbol_table): Declare.
474360484Sobrien	(bfd_elf32_write_shdrs_and_ehdr): Declare.
474460484Sobrien	(bfd_elf32_write_out_phdrs): Declare.
474560484Sobrien	(bfd_elf64_swap_symbol_in): Change second parameter to be const.
474660484Sobrien	(bfd_elf64_swap_symbol_out): Likewise.
474760484Sobrien	(bfd_elf64_swap_reloc_in): Likewise.
474860484Sobrien	(bfd_elf64_swap_reloc_out): Likewise.
474960484Sobrien	(bfd_elf64_swap_reloca_in): Likewise.
475060484Sobrien	(bfd_elf64_swap_reloca_out): Likewise.
475160484Sobrien	(bfd_elf64_swap_phdr_in): Likewise.
475260484Sobrien	(bfd_elf64_swap_phdr_out): Likewise.
475360484Sobrien	(bfd_elf64_swap_dyn_in): Likewise.
475460484Sobrien	(bfd_elf64_swap_dyn_out): Likewise.
475560484Sobrien	(bfd_elf64_slurp_symbol_table): Declare.
475660484Sobrien	(bfd_elf64_write_shdrs_and_ehdr): Declare.
475760484Sobrien	(bfd_elf64_write_out_phdrs): Declare.
475860484Sobrien	(_bfd_mips_elf_section_from_shdr): Declare.
475960484Sobrien	* elf.c (bfd_section_from_shdr): Remove assertion requiring
476060484Sobrien	SHT_REL/SHT_RELA to match use_rela_p.  If there is already a reloc
476160484Sobrien	section for the section, add the new one to rel_hdr2.  Increment
476260484Sobrien	reloc_count rather than setting it.
476360484Sobrien	* elfcode.h (elf_slurp_symbol_table): Define name as macro.
476460484Sobrien	Remove static declaration.
476560484Sobrien	(elf_write_shdrs_and_ehdr): Define name as macro.
476660484Sobrien	(elf_write_out_phdrs): Likewise.
476760484Sobrien	(elf_swap_ehdr_in, elf_swap_ehdr_out): Declare.
476860484Sobrien	(elf_swap_shdr_in, elf_swap_shdr_out): Declare.
476960484Sobrien	(elf_swap_symbol_in): Change second parameter to be const.
477060484Sobrien	(elf_swap_symbol_out): Likewise.
477160484Sobrien	(elf_swap_ehdr_in, elf_swap_ehdr_out): Likewise.
477260484Sobrien	(elf_swap_shdr_in, elf_swap_shdr_out): Likewise.
477360484Sobrien	(elf_swap_phdr_in, elf_swap_phdr_out): Likewise.
477460484Sobrien	(elf_swap_reloc_in, elf_swap_reloc_out): Likewise.
477560484Sobrien	(elf_swap_reloca_in, elf_swap_reloca_out): Likewise.
477660484Sobrien	(elf_write_out_phdrs): Rename from write_out_phdrs.  Change second
477760484Sobrien	parameter to be const.  Make non-static.
477860484Sobrien	(elf_write_shdrs_and_ehdr): Rename from write_shdrs_and_ehdr.
477960484Sobrien	Make non-static.
478060484Sobrien	(elf_slurp_symbol_table): Make non-static.
478160484Sobrien	(NAME(_bfd_elf,size_info)): Update names of renamed functions.
478260484Sobrien	* elfxx-target.h (elf_info_to_howto): Define if not defined.
478360484Sobrien	(elf_backend_size_info): Likewise.
478460484Sobrien	(elfNN_bed): Use elf_backend_size_info.
478560484Sobrien	* targets.c (bfd_elf64_bigmips_vec): Declare.
478660484Sobrien	(bfd_elf64_littlemips_vec): Declare.
478760484Sobrien	(bfd_target_vector): Add bfd_elf64_bigmips_vec and
478860484Sobrien	bfd_elf64_littlemips_vec if BFD64 is defined.
478960484Sobrien
479060484Sobrien	* libbfd.c (bfd_get_file_window): Add cast to fprintf argument.
479160484Sobrien
479260484SobrienTue May 28 11:42:08 1996  Ian Lance Taylor  <ian@cygnus.com>
479360484Sobrien
479460484Sobrien	* coff-sh.c (sh_relax_delete_bytes): Insert nop instructions, not
479560484Sobrien	zeroes, in alignment holes.
479660484Sobrien
479760484Sobrien	* configure: Rebuild with autoconf 2.10.
479860484Sobrien
479960484Sobrien	* aoutx.h (NAME(aout,find_nearest_line)): Make room for the
480060484Sobrien	potential leading underscore in the allocated buffer.
480160484Sobrien
480260484SobrienFri May 24 14:28:38 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
480360484Sobrien
480460484Sobrien	* elf32-ppc.c (ppc_elf_add_symbol_hook): Do not put small common
480560484Sobrien	symbols into .sbss if this is a relocatable link.
480660484Sobrien
480760484SobrienThu May 23 12:26:24 1996  Ian Lance Taylor  <ian@cygnus.com>
480860484Sobrien
480960484Sobrien	* xcofflink.c (_bfd_ppc_xcoff_relocate_section): Warn about
481060484Sobrien	undefined symbols when creating a shared library.
481160484Sobrien
481260484SobrienFri May 17 13:54:15 1996  Ian Lance Taylor  <ian@cygnus.com>
481360484Sobrien
481460484Sobrien	* coff-sh.c: Add a bunch of new code and static const arrays to
481560484Sobrien	support aligning loads and stores on four byte memory boundaries.
481660484Sobrien	Also:
481760484Sobrien	(sh_coff_howtos): Add entries for R_SH_CODE, R_SH_DATA and
481860484Sobrien	R_SH_LABEL.
481960484Sobrien	(sh_relax_section): Look for R_SH_CODE relocs.  If we find one,
482060484Sobrien	call sh_align_loads.
482160484Sobrien	(sh_relax_delete_bytes): Don't mark R_SH_CODE or R_SH_DATA relocs
482260484Sobrien	as unused.
482360484Sobrien
482460484SobrienThu May 16 16:34:13 1996  Ian Lance Taylor  <ian@cygnus.com>
482560484Sobrien
482660484Sobrien	* cache.c (bfd_open_file): Unlink the file before opening it for
482760484Sobrien	write.  From Marty Leisner <leisner@sdsp.mc.xerox.com>.
482860484Sobrien
482960484Sobrien	* opncls.c (bfd_fdopenr): Set opened_once.
483060484Sobrien
483160484SobrienTue May 14 12:35:32 1996  Ian Lance Taylor  <ian@cygnus.com>
483260484Sobrien
483360484Sobrien	* som.c (som_slurp_reloc_table): Clear external_relocs cache after
483460484Sobrien	freeing it.
483560484Sobrien
483660484Sobrien	* libbfd.c: Remove #ifdef FILE_OFFSET_IS_CHAR_INDEX, and compile
483760484Sobrien	the code unconditionally.
483860484Sobrien
483960484SobrienMon May 13 19:51:37 1996  Ian Lance Taylor  <ian@cygnus.com>
484060484Sobrien
484160484Sobrien	* libcoff-in.h (struct pei_section_tdata): Define structure.
484260484Sobrien	(pei_section_data): Define macro.
484360484Sobrien	* libcoff.h: Rebuild.
484460484Sobrien	* coffcode.h (coff_set_alignment_hook): If COFF_IMAGE_WITH_PE,
484560484Sobrien	store s_paddr field in pei_section_data.
484660484Sobrien	(coff_compute_section_file_positions): Use pei_section_data rather
484760484Sobrien	than _cooked_size, and don't overwrite an existing value.
484860484Sobrien	(coff_write_object_contents): If COFF_OBJ_WITH_PE, set s_paddr to
484960484Sobrien	0.  If COFF_IMAGE_WITH_PE, set s_paddr to pei_section_data.
485060484Sobrien	* peicode.h (coff_bfd_copy_private_section_data): Define if
485160484Sobrien	COFF_IMAGE_WITH_PE.
485260484Sobrien 	(pe_bfd_copy_private_section_data): New static function if
485360484Sobrien	COFF_IMAGE_WITH_PE.
485460484Sobrien
485560484SobrienWed May  8 16:10:38 1996  Ian Lance Taylor  <ian@cygnus.com>
485660484Sobrien
485760484Sobrien	* srec.c (srec_set_arch_mach): Write as a function rather than a
485860484Sobrien	macro definition.
485960484Sobrien
486060484Sobrien	* xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): If an archive has
486160484Sobrien	no map, just check each member in turn to see whether it is
486260484Sobrien	required.
486360484Sobrien
486460484SobrienWed May  8 09:17:34 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
486560484Sobrien
486660484Sobrien	* ppcboot.c (ppcboot_object_p): Check for type 0x41 in partition
486760484Sobrien	table.  Call BFD_ASSERT to validate header size, instead of
486860484Sobrien	calling fatal.
486960484Sobrien	(ppcboot_bfd_print_private_bfd_data): Put quotes around partition
487060484Sobrien	name.
487160484Sobrien
487260484SobrienTue May  7 16:10:19 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
487360484Sobrien
487460484Sobrien	* ppcboot.c: New target for looking at PPCbug boot records.
487560484Sobrien
487660484Sobrien	* config{ure.in,.bfd}: Add support for ppcboot target.
487760484Sobrien	* targets.c: Ditto.
487860484Sobrien	* configure: Regenerate.
487960484Sobrien
488060484SobrienTue May  7 11:15:19 1996  Jeffrey A Law  (law@cygnus.com)
488160484Sobrien
488260484Sobrien	* coff-h8300.c (howto_table): Update names to match recent
488360484Sobrien	changes to include/coff/internal.h.  Fix minor errors in the
488460484Sobrien	existing relocs.  Add R_MOVL1 and R_MOVL2.
488560484Sobrien	(rtype2howto): Similarly.
488660484Sobrien	(h8300_reloc16_estimate): Rewrite to simplify, fix bugs in the
488760484Sobrien	existing relaxing code  and peform more relaxing.
488860484Sobrien	(h8300_reloc16_extra_cases): Likewise.
488960484Sobrien
489060484SobrienMon May  6 18:24:09 1996  Jeffrey A Law  (law@cygnus.com)
489160484Sobrien
489260484Sobrien	* reloc16.c (bfd_coff_reloc16_get_value): Handle common
489360484Sobrien	symbols correctly.
489460484Sobrien
489560484SobrienSat May  4 05:08:45 1996  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
489660484Sobrien
489760484Sobrien	* elfcode.h (elf_object_p):  Reject generic ELF target if
489860484Sobrien	e_machine matches an alternate machine code in a specific backend.
489960484Sobrien
490060484Sobrien	* netbsd-core.c (netbsd_core_vec):  Remove initializer for
490160484Sobrien	obsolete align_power_min field.
490260484Sobrien
490360484SobrienFri May  3 13:07:35 1996  Jeffrey A Law  (law@cygnus.com)
490460484Sobrien
490560484Sobrien	* coff-h8300.c (reloc_howto_type): Add howto entry for
490660484Sobrien	R_PCRWORD_B.
490760484Sobrien	(rtype2howto): Handle R_PCRWORD_B.
490860484Sobrien	(h8300_reloc16_extra_cases): Handle R_PCRWORD_B.
490960484Sobrien	(h8300_reloc_16_estimate): Likewise.  Try to turn a 16bit
491060484Sobrien	pc-relative branch (R_PCRWORD) into an 8bit pc-relative
491160484Sobrien	branch (R_PCWORD_B).
491260484Sobrien
491360484SobrienFri May  3 10:47:41 1996  Ian Lance Taylor  <ian@cygnus.com>
491460484Sobrien
491560484Sobrien	* aoutx.h (translate_from_native_sym_flags): Set the section for
491660484Sobrien	BSF_CONSTRUCTOR symbols.
491760484Sobrien
491860484Sobrien	* cofflink.c (_bfd_coff_link_input_bfd): Correct setting of
491960484Sobrien	last_bf_index.
492060484Sobrien
492160484SobrienWed May  1 18:39:32 1996  Doug Evans  <dje@canuck.cygnus.com>
492260484Sobrien
492360484Sobrien	* coffcode.h (coff_write_object_contents): In comdat section lookup,
492460484Sobrien	stop looking when section is found.
492560484Sobrien
492660484SobrienWed May  1 14:17:57 1996  Ian Lance Taylor  <ian@cygnus.com>
492760484Sobrien
492860484Sobrien	* coffcode.h (STRING_SIZE_SIZE): Define.
492960484Sobrien	(styp_to_sec_flags): Handle long symbol names when looking for the
493060484Sobrien	section symbol.
493160484Sobrien	(bfd_coff_backend_data): Add _bfd_coff_long_section_names field.
493260484Sobrien	(bfd_coff_long_section_names): Define.
493360484Sobrien	(coff_write_object_contents): Handle long section names.
493460484Sobrien	(bfd_coff_std_swap_table): Initialize new field.
493560484Sobrien	* libcoff.h: Rebuild.
493660484Sobrien	* coffgen.c (make_a_section_from_file): Handle long section
493760484Sobrien	names.
493860484Sobrien	(coff_write_symbols): Handle long section names.
493960484Sobrien	* coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
494060484Sobrien	* coff-mips.c (mips_ecoff_backend_data): Likewise.
494160484Sobrien	* pe-arm.c (COFF_LONG_SECTION_NAMES): Define.
494260484Sobrien	* pei-arm.c (COFF_LONG_SECTION_NAMES): Define.
494360484Sobrien	* pe-i386.c (COFF_LONG_SECTION_NAMES): Define.
494460484Sobrien	* pei-i386.c (COFF_LONG_SECTION_NAMES): Define.
494560484Sobrien	* pe-ppc.c (COFF_LONG_SECTION_NAMES): Define.
494660484Sobrien	* pei-ppc.c (COFF_LONG_SECTION_NAMES): Define.
494760484Sobrien
494860484Sobrien	* bout.c (b_out_callback): Set lma of sections.
494960484Sobrien	(b_out_bfd_get_relocated_section_contents): Rename in_abfd
495060484Sobrien	parameter to output_bfd.  Used input_bfd instead of output_bfd in
495160484Sobrien	several places.
495260484Sobrien
495360484SobrienTue Apr 30 17:56:39 1996  Ian Lance Taylor  <ian@cygnus.com>
495460484Sobrien
495560484Sobrien	* aoutx.h (translate_from_native_sym_flags): Don't create
495660484Sobrien	SEC_CONSTRUCTOR sections.
495760484Sobrien	* ecoff.c (ecoff_set_symbol_info): Likewise.
495860484Sobrien
495960484Sobrien	* elf32-mips.c (mips_elf_copy_private_bfd_data): Copy elf_gp.
496060484Sobrien	From Don Bowman <bowman@waterloo.hp.com>.
496160484Sobrien
496260484SobrienTue Apr 30 17:06:32 1996  Doug Evans  <dje@canuck.cygnus.com>
496360484Sobrien
496460484Sobrien	* coff-arm.c (armcoff_little_vec): If COFF_WITH_PE is defined, add
496560484Sobrien	SEC_LINK_ONCE and SEC_LINK_DUPLICATES to section_flags.
496660484Sobrien
496760484SobrienMon Apr 29 13:15:17 1996  Ian Lance Taylor  <ian@cygnus.com>
496860484Sobrien
496960484Sobrien	* elf32-mips.c (struct mips_elf_link_hash_entry): Add
497060484Sobrien	mips_32_relocs field.
497160484Sobrien	(mips_elf_link_hash_newfunc): Initialize mips_32_relocs field.
497260484Sobrien	(mips_elf_relocate_section): Copy R_MIPS_REL32 and R_MIPS_32
497360484Sobrien	relocs against a global symbol which is not defined in a regular
497460484Sobrien	file.
497560484Sobrien	(mips_elf_check_relocs): For a R_MIPS_REL32 or R_MIPS_32 reloc
497660484Sobrien	against a global symbol, increment mips_32_relocs.
497760484Sobrien	(mips_elf_adjust_dynamic_symbol): If mips_32_relocs is set, and
497860484Sobrien	the symbol is not defined in a regular file, make room in the
497960484Sobrien	.rel.dyn section.
498060484Sobrien
498160484SobrienFri Apr 26 18:00:37 1996  Ian Lance Taylor  <ian@cygnus.com>
498260484Sobrien
498360484Sobrien	* ecoff.c (ecoff_compute_section_file_positions): Track the real
498460484Sobrien	file position and the virtual file position separately.  Set
498560484Sobrien	filepos information bsaed on the real file position.
498660484Sobrien	(_bfd_ecoff_set_section_contents): Handle .lib sections like the
498760484Sobrien	Jan 23 change to coffcode.h.
498860484Sobrien
498960484Sobrien	* som.c (som_slurp_symbol_table): Set the symbol count to the
499060484Sobrien	number of BFD symbols created.
499160484Sobrien
499260484SobrienFri Apr 26 12:34:29 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
499360484Sobrien
499460484Sobrien	* elf32-ppc.c (ppc_elf_check_relocs): Forward relocations to the
499560484Sobrien	output file if linking shared objects.  Loop to check all relocs,
499660484Sobrien	rather than returning false on first error.
499760484Sobrien
499860484SobrienThu Apr 25 13:25:12 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
499960484Sobrien
500060484Sobrien	* elf32-ppc.c (ppc_elf_create_linker_section): Add PLT case.
500160484Sobrien	(ppc_elf_additional_program_headers): If .interp section, bump #
500260484Sobrien	of program headers by 1.
500360484Sobrien	(ppc_elf_adjust_dynamic_symbol): Flesh out support.
500460484Sobrien	(ppc_elf_size_dynamic_sections): Add support for .plt section.
500560484Sobrien	(ppc_elf_check_relocs): Print out filename in debug code.  Enable
500660484Sobrien	PLT support.
500760484Sobrien	(ppc_elf_finish_dynamic_symbol): Add support for PLT's, beef up
500860484Sobrien	debug output.
500960484Sobrien	(ppc_elf_relocate_section): If the output section isn't defined,
501060484Sobrien	don't abort, just give an error message.
501160484Sobrien
501260484Sobrien	* elflink.c (_bfd_elf_create_dynamic_sections): If the section
501360484Sobrien	being created is .sdata or .sdata2, don't make the symbol dynamic.
501460484Sobrien
501560484SobrienWed Apr 24 14:04:07 1996  Ian Lance Taylor  <ian@cygnus.com>
501660484Sobrien
501760484Sobrien	* xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through the
501860484Sobrien	members of an archive for dynamic objects with no symbols, and
501960484Sobrien	pass them directly to check_archive_element.
502060484Sobrien	(xcoff_link_check_ar_symbols): Pass dynamic objects to
502160484Sobrien	xcoff_link_check_dynamic_ar_symbols.
502260484Sobrien	(xcoff_link_check_dynamic_ar_symbols): New static function.
502360484Sobrien
502460484Sobrien	* coff-rs6000.c (rs6000coff_vec): Change BFD_JUMP_TABLE_DYNAMIC
502560484Sobrien	from _bfd_nodynamic to _bfd_xcoff.
502660484Sobrien	* libcoff-in.h (_bfd_xcoff_get_dynamic_symtab_upper_bound):
502760484Sobrien	Declare.
502860484Sobrien	(_bfd_xcoff_canonicalize_dynamic_symtab): Declare.
502960484Sobrien	(_bfd_xcoff_get_dynamic_reloc_upper_bound): Declare.
503060484Sobrien	(_bfd_xcoff_canonicalize_dynamic_reloc): Declare.
503160484Sobrien	* libcoff.h: Rebuild.
503260484Sobrien	* xcofflink.c (xcoff_swap_ldrel_in): New static function.
503360484Sobrien	(xcoff_get_section_contents): New static function.
503460484Sobrien	(_bfd_xcoff_get_dynamic_symtab_upper_bound): New function.
503560484Sobrien	(_bfd_xcoff_canonicalize_dynamic_symtab): New function.
503660484Sobrien	(_bfd_xcoff_get_dynamic_reloc_upper_bound): New function.
503760484Sobrien	(xcoff_dynamic_reloc): New static variable.
503860484Sobrien	(_bfd_xcoff_canonicalize_dynamic_reloc): New function.
503960484Sobrien	(xcoff_link_add_dynamic_symbols): Use xcoff_get_section_contents.
504060484Sobrien
504160484SobrienTue Apr 23 12:48:42 1996  Ian Lance Taylor  <ian@cygnus.com>
504260484Sobrien
504360484Sobrien	* coff-sparc.c (bfd_coff_generic_reloc): Return bfd_reloc_ok even
504460484Sobrien	if reloc_entry->addend is not 0.
504560484Sobrien	(CALC_ADDEND): Just set the addend to reloc.r_offset.
504660484Sobrien
504760484SobrienMon Apr 22 18:29:01 1996  Doug Evans  <dje@canuck.cygnus.com>
504860484Sobrien
504960484Sobrien	* elf32-sparc.c (_bfd_sparc_elf_howto_table): Fix spelling of
505060484Sobrien	R_SPARC_GLOB_JMP.
505160484Sobrien	* elf64-sparc.c (sparc64_elf_howto_table): Likewise.
505260484Sobrien	Add entries for R_SPARC_[56].
505360484Sobrien	(sparc_reloc_map): Add entries for R_SPARC_[56].
505460484Sobrien
505560484SobrienMon Apr 22 15:07:24 1996  Ian Lance Taylor  <ian@cygnus.com>
505660484Sobrien
505760484Sobrien	Optimize linking of stabs in sections as used in ELF and COFF.
505860484Sobrien	* stabs.c: New file.
505960484Sobrien	* libbfd-in.h (_bfd_link_section_stabs): Declare.
506060484Sobrien	(_bfd_write_section_stabs): Declare.
506160484Sobrien	(_bfd_write_stab_strings): Declare.
506260484Sobrien	* libbfd.h: Rebuild.
506360484Sobrien	* libcoff-in.h (struct coff_section_tdata): Add stab_info field.
506460484Sobrien	(struct coff_link_hash_table): Add stab_info field.
506560484Sobrien	* libcoff.h: Rebuild.
506660484Sobrien	* cofflink.c (_bfd_coff_link_hash_table_init): Initialize
506760484Sobrien	stab_info field.
506860484Sobrien	(coff_link_add_symbols): Call _bfd_link_section_stabs if
506960484Sobrien	appropriate.
507060484Sobrien	(_bfd_coff_final_link): Write out stab strings hash table.
507160484Sobrien	(_bfd_coff_link_input_bfd): Handle optimized stabs sections.
507260484Sobrien	* coff-ppc.c (ppc_bfd_coff_final_link): Write out stab strings
507360484Sobrien	hash table.
507460484Sobrien	* elf-bfd.h (struct elf_link_hash_table): Add stab_info field.
507560484Sobrien	(struct bfd_elf_section_data): Add stab_info field.
507660484Sobrien	* elf.c (_bfd_elf_link_hash_table_init): Initialize stab_info
507760484Sobrien	field.
507860484Sobrien	* elflink.h (elf_link_add_object_symbols): If appropriate, call
507960484Sobrien	_bfd_link_section_stabs.
508060484Sobrien	(elf_bfd_final_link): Write out stab strings hash table.
508160484Sobrien	(elf_link_input_bfd): Handle optimized stabs sections.
508260484Sobrien	* reloc.c (_bfd_final_link_relocate): Check address against
508360484Sobrien	_raw_size rather than _cooked_size.
508460484Sobrien	* Makefile.in: Rebuild dependencies.
508560484Sobrien	(BFD_LIBS): Add stabs.o
508660484Sobrien	(BFD_LIBS_CFILES): Add stabs.c.
508760484Sobrien
508860484Sobrien	* VERSION: Increment for bfdlink.h change.
508960484Sobrien
509060484Sobrien	* coffgen.c (coff_renumber_symbols): Correct handling of
509160484Sobrien	BSF_NOT_AT_END common symbols.
509260484Sobrien
509360484SobrienFri Apr 19 19:21:56 1996  Ian Lance Taylor  <ian@cygnus.com>
509460484Sobrien
509560484Sobrien	* coff-ppc.c (record_toc): Add cast to avoid warning.
509660484Sobrien	(ppc_allocate_toc_section): Likewise.
509760484Sobrien	(coff_ppc_relocate_section): Remove ANSI C string concatenation.
509860484Sobrien	(ppc_coff_reloc_type_lookup): Remove unreached code.
509960484Sobrien	* coffcode.h (coff_write_object_contents): Don't take the address
510060484Sobrien	of an array.
510160484Sobrien	* peicode.h (pe_print_idata): Add casts to avoid warning.
510260484Sobrien	(pe_print_edata): Likewise.
510360484Sobrien	(pe_print_reloc): Remove ANSI C string concatenation.
510460484Sobrien
510560484SobrienThu Apr 18 18:51:18 1996  Ian Lance Taylor  <ian@cygnus.com>
510660484Sobrien
510760484Sobrien	* libcoff-in.h (struct coff_final_link_info): Add last_bf_index
510860484Sobrien	and last_bf fields.
510960484Sobrien	* libcoff.h: Rebuild.
511060484Sobrien	* coffswap.h (coff_swap_aux_in): Swap endndx field for C_FCN
511160484Sobrien	symbols.
511260484Sobrien	(coff_swap_aux_out): Likewise.
511360484Sobrien	* peicode.h (coff_swap_aux_in): Likewise.
511460484Sobrien	(coff_swap_aux_out): Likewise.
511560484Sobrien	* coffgen.c (coff_pointerize_aux): Check endndx field for C_FCN
511660484Sobrien	symbols.
511760484Sobrien	* cofflink.c (_bfd_coff_final_link): Initialize last_bf_index
511860484Sobrien	field.
511960484Sobrien	(_bfd_coff_link_input_bfd): Check endndx field for C_FCN symbols.
512060484Sobrien	Fix up .bf endndx link fields.
512160484Sobrien	* coff-ppc.c (ppc_bfd_coff_final_link): Initialize last_bf_index
512260484Sobrien	field.
512360484Sobrien	* xcofflink.c (xcoff_link_input_bfd): Check endndx field for C_FCN
512460484Sobrien	symbols.
512560484Sobrien
512660484SobrienWed Apr 17 12:08:24 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
512760484Sobrien
512860484Sobrien	* pe{,i}-ppc.c (PPC_PE): Define instead of PPC, so that compiling
512960484Sobrien	on Solaris PowerPC systems doesn't get confused.
513060484Sobrien
513189857Sobrien	* coffcode.h (coff_write_object_contents): Use #ifdef PPC_PE, not
513260484Sobrien	#ifdef PPC.
513360484Sobrien
513460484Sobrien	* elfcore.h (bfd_prstatus, bfd_fpregset): Add thread argument.
513560484Sobrien	(elf_corefile_note): If HAVE_SYS_PROCFS_H is not defined, don't
513660484Sobrien	update did_reg and did_reg2.
513760484Sobrien
513860484SobrienWed Apr 17 13:07:37 1996  Ian Lance Taylor  <ian@cygnus.com>
513960484Sobrien
514060484Sobrien	* xcofflink.c (xcoff_link_input_bfd): Check for TOC overflow.
514160484Sobrien
514260484Sobrien	* linker.c (_bfd_generic_link_add_one_symbol): When calling the
514360484Sobrien	callback routines, pass h->root.string rather than name, in case
514460484Sobrien	copy is true and name is transient.
514560484Sobrien
514660484SobrienTue Apr 16 16:36:38 1996  Stu Grossman  (grossman@lisa.cygnus.com)
514760484Sobrien
514860484Sobrien	* elfcore.h:  Add support for core files with multiple threads.
514960484Sobrien	(Primarily for Solaris.)
515060484Sobrien
515160484SobrienTue Apr 16 13:44:08 1996  Ian Lance Taylor  <ian@cygnus.com>
515260484Sobrien
515360484Sobrien	* aoutx.h (NAME(aout,squirt_out_relocs)): Don't do anything if
515460484Sobrien	section->orelocation is NULL.
515560484Sobrien
515660484Sobrien	* coffgen.c (bfd_coff_get_syment): New function.
515760484Sobrien	(bfd_coff_get_auxent): New function.
515860484Sobrien	* bfd-in.h (bfd_coff_get_syment): Declare.
515960484Sobrien	(bfd_coff_get_auxent): Declare.
516060484Sobrien	* bfd-in2.h: Rebuild.
516160484Sobrien
516260484SobrienMon Apr 15 19:06:59 1996  Ian Lance Taylor  <ian@cygnus.com>
516360484Sobrien
516460484Sobrien	* elf32-mips.c (struct mips_hi16): Define.
516560484Sobrien	(mips_hi16_addr, mips_hi16_addend): Remove.
516660484Sobrien	(mips_hi16_list): New static variable.
516760484Sobrien	(mips_elf_hi16_reloc): Maintain a list of unmatched HI16 relocs.
516860484Sobrien	(mips_elf_lo16_reloc): Process mips_hi16_list.
516960484Sobrien	(mips_elf_relocate_section): Permit an arbitrary number of HI16
517060484Sobrien	relocs before the associated LO16 reloc.
517160484Sobrien
517260484SobrienWed Apr 10 00:23:53 1996  Ian Lance Taylor  <ian@cygnus.com>
517360484Sobrien
517460484Sobrien	* versados.c (versados_scan): Check bfd_alloc return value.
517560484Sobrien	(versados_object_p): Check all bfd_read return values.  Require
517660484Sobrien	that lang field be less than 10, to avoid confusion with Intel Hex
517760484Sobrien	files.
517860484Sobrien
517960484Sobrien	* libaout.h (WRITE_HEADERS): Write out the relocs even if there
518060484Sobrien	aren't any symbols.
518160484Sobrien	* aoutx.h (NAME(aout,swap_std_reloc_out)): Set r_index to N_ABS,
518260484Sobrien	not 0, for an absolute symbol.
518360484Sobrien	(NAME(aout,swap_ext_reloc_out)): Likewise.
518460484Sobrien
518560484Sobrien	* ihex.c (ihex_scan): Accept a length of 4 for record type 5.
518660484Sobrien	(ihex_write_object_contents): For a large start address, output
518760484Sobrien	the full 32 bit address in record type 5.
518860484Sobrien
518960484Sobrien	* ieee.c (ieee_write_byte): Change second parameter from bfd_byte
519060484Sobrien	to int to avoid promotion problems in prototype.
519160484Sobrien
519260484SobrienTue Apr  9 11:44:21 1996  Ian Lance Taylor  <ian@cygnus.com>
519360484Sobrien
519460484Sobrien	* configure.host: Use ${srcdir} when looking for picfrag.
519560484Sobrien
519660484Sobrien	* configure.host: Switch on ${libdir}, not $(libdir).  From
519760484Sobrien	alan@spri.levels.unisa.edu.au (Alan Modra).
519860484Sobrien
519960484Sobrien	* aoutx.h (aout_link_add_symbols): Always call add_dynamic_symbols
520060484Sobrien	entry point, not just for DYNAMIC objects.
520160484Sobrien	* sunos.c (sunos_add_dynamic_symbols): Always call
520260484Sobrien	sunos_create_dynamic_sections.  If called with a non DYNAMIC
520360484Sobrien	object, don't do anything else.
520460484Sobrien	(sunos_add_one_symbol): Don't call sunos_create_dynamic_sections.
520560484Sobrien
520660484SobrienMon Apr  8 12:09:36 1996  Ian Lance Taylor  <ian@cygnus.com>
520760484Sobrien
520860484Sobrien	* configure.in: Permit --enable-shared to specify a list of
520960484Sobrien	directories.
521060484Sobrien	* configure: Rebuild.
521160484Sobrien
521260484Sobrien	* configure.host: Set HLDFLAGS and SHLIB_CFLAGS for *-dec-osf*
521360484Sobrien	host when configuring with --enable-shard.
521460484Sobrien
521560484SobrienFri Apr  5 12:24:13 1996  Ian Lance Taylor  <ian@cygnus.com>
521660484Sobrien
521760484Sobrien	* config.bfd: Add i[345]86-*-freebsdelf* target; from John Polstra
521860484Sobrien	<jdp@polstra.com>.
521960484Sobrien
522060484Sobrien	* linker.c (link_action): For WARN_ROW/warn, use MWARN, not CYCLE,
522160484Sobrien	to avoid crashing in bfd_hash_replace.
522260484Sobrien
522360484Sobrien	* sysdep.h: Use #ifdef, not #if.
522460484Sobrien
522560484SobrienThu Apr  4 23:32:23 1996  Ian Lance Taylor  <ian@cygnus.com>
522660484Sobrien
522760484Sobrien	* config.in: Rebuild.
522860484Sobrien
522960484SobrienThu Apr  4 18:49:09 1996  Fred Fish  <fnf@cygnus.com>
523060484Sobrien
523160484Sobrien	* configure.in (mips-sony-bsd*): Fix typo in AC_DEFINE.
523260484Sobrien	(AC_CHECK_HEADERS): Check for sys/time.h
523360484Sobrien	(AC_HEADER_TIME): Add macro.
523460484Sobrien	* configure: Rebuild.
523560484Sobrien	* sysdep.h: Use TIME_WITH_SYS_TIME and HAVE_SYS_TIME_H
523660484Sobrien	to control what combination of <time> and <sys/time.h>
523760484Sobrien	get included.
523860484Sobrien
523960484SobrienTue Apr  2 13:11:53 1996  Doug Evans  <dje@canuck.cygnus.com>
524060484Sobrien
524160484Sobrien	* aoutf1.h (sunos_32_set_arch_mach): Handle M_SPARCLET.
524260484Sobrien	(aout_32_sunos4_write_object_contents): Likewise.
524360484Sobrien	* aoutx.h (NAME(aout,machine_type)): Handle
524460484Sobrien	bfd_mach_sparc_{sparclet,sparclite}.
524560484Sobrien	* archures.c (bfd_mach_sparc_{sparclet,sparclite}): Define.
524660484Sobrien	(bfd_mach_sparc_v9_p): Update.
524760484Sobrien	* cpu-sparc.c (arch_info_struct): Add entries for sparclet,sparclite.
524860484Sobrien	* libaout.h (enum machine_type): Add M_SPARCLET.
524960484Sobrien	* sunos.c (MACHTYPE_OK): Define.
525060484Sobrien	* bfd-in2.h: Regenerated.
525160484Sobrien
525260484SobrienTue Apr  2 00:33:18 1996  Ian Lance Taylor  <ian@cygnus.com>
525360484Sobrien
525460484Sobrien	* elf-bfd.h (struct elf_link_hash_table): Add hgot field.
525560484Sobrien	* elf.c (_bfd_elf_link_hash_table_init): Initialize hgot field.
525660484Sobrien	* elflink.c (_bfd_elf_create_got_section): Store the
525760484Sobrien	_GLOBAL_OFFSET_TABLE_ hash table entry in the hgot field.
525860484Sobrien	* elf32-sparc.c (elf32_sparc_check_relocs): If the size of the
525960484Sobrien	global offset table goes over 0x1000, set the value of
526060484Sobrien	_GLOBAL_OFFSET_TABLE_ to 0x1000 into the section.
526160484Sobrien	(elf32_sparc_relocate_section): Subtract the offset of
526260484Sobrien	_GLOBAL_OFFSET_TABLE_ when handling GOT relocations.
526360484Sobrien
526460484Sobrien	* elfcode.h: Don't include <string.h>.
526560484Sobrien
526660484SobrienMon Apr  1 10:39:24 1996  Jeffrey A Law  (law@cygnus.com)
526760484Sobrien
526860484Sobrien	* linker.c (_bfd_generic_link_hash_newfunc): Renamed from
526960484Sobrien	generic_link_hash_newfunc.  All references changed.
527060484Sobrien	* genlink.h (_bfd_generic_link_hash_newfunc): Declaration
527160484Sobrien	moved here from libbfd-in.h.
527260484Sobrien	* libbfd-in.h: Corresponding changes.
527360484Sobrien	* libbfd.h: Regenerated.
527460484Sobrien
527560484SobrienMon Apr  1 12:35:36 1996  Ian Lance Taylor  <ian@cygnus.com>
527660484Sobrien
527760484Sobrien	* aoutx.h (aout_link_input_section_std): When reporting an
527860484Sobrien	overflow error, use the name of the symbol in the hash table if
527960484Sobrien	available.
528060484Sobrien	(aout_link_input_section_ext): Likewise.
528160484Sobrien
528260484Sobrien	* elflink.h (elf_adjust_dynamic_symbol): If a common symbol got
528360484Sobrien	defined in a regular file, set ELF_LINK_HASH_DEF_REGULAR.
528460484Sobrien
528560484SobrienSun Mar 31 01:58:41 1996  steve chamberlain  <sac@slash.cygnus.com>
528660484Sobrien
528760484Sobrien	* peicode.h (coff_swap_aouthdr_out): Delete test for .junk.
528860484Sobrien	* coffcode.h (coff_compute_section_file_positions): Likewise.
528960484Sobrien	(coff_write_object_contents): Likewise.
529060484Sobrien
529160484SobrienFri Mar 29 12:44:36 1996  Ian Lance Taylor  <ian@cygnus.com>
529260484Sobrien
529360484Sobrien	* section.c (SEC_LINK_ONCE): Define.
529460484Sobrien	(SEC_LINK_DUPLICATES): Define.
529560484Sobrien	(SEC_LINK_DUPLICATES_DISCARD): Define.
529660484Sobrien	(SEC_LINK_DUPLICATES_ONE_ONLY): Define.
529760484Sobrien	(SEC_LINK_DUPLICATES_SAME_SIZE): Define.
529860484Sobrien	(SEC_LINK_DUPLICATES_SAME_CONTENTS): Define.
529960484Sobrien	* bfd-in2.h: Rebuild.
530060484Sobrien	* coffcode.h (sec_to_styp_flags): If COFF_WITH_PE, turn
530160484Sobrien	SEC_LINK_ONCE into IMAGE_SCN_LNK_COMDAT.
530260484Sobrien	(styp_to_sec_flags): If COFF_WITH_PE, turn IMAGE_SCN_LNK_REMOVE
530360484Sobrien	into SEC_EXCLUDE.  If IMAGE_SCN_LNK_COMDAT is set, set
530460484Sobrien	SEC_LINK_ONCE, and look through the symbol table for the setting
530560484Sobrien	for SEC_LINK_DUPLICATES.
530660484Sobrien	(coff_write_object_contents): If COFF_WITH_PE, if SEC_LINK_ONCE is
530760484Sobrien	set for a section, find the section symbol in the symbol table,
530860484Sobrien	and set the aux entry based on SEC_LINK_DUPLICATES.
530960484Sobrien	* coffgen.c (coff_print_symbol): Add a space before "checksum".
531060484Sobrien	* coff-arm.c (armcoff_big_vec): If COFF_WITH_PE is defined, add
531160484Sobrien	SEC_LINK_ONCE and SEC_LINK_DUPLICATES to section_flags.
531260484Sobrien	* coff-i386.c (i386coff_vec): Likewise.
531360484Sobrien	* coff-ppc.c (TARGET_LITTLE_SYM, TARGET_BIG_SYM): Likewise.
531460484Sobrien
531560484Sobrien	* VERSION: Bump to 2.6.1.
531660484Sobrien	* Makefile.in (stamp-h): Depend upon VERSION.
531760484Sobrien
531860484SobrienThu Mar 28 23:48:49 1996  Jeffrey A Law  (law@cygnus.com)
531960484Sobrien
532060484Sobrien	* libbfd-in.h (generic_link_hash_newfunc): Add declaration.
532160484Sobrien	* libbfd.h: Rebuilt.
532260484Sobrien	* linker.c (generic_link_hash_newfunc): No longer static.
532360484Sobrien	* coffcode.h (coff_bfd_link_hash_create): Allow specific targets
532460484Sobrien	to override.
532560484Sobrien	* coff-h8300.c: Add two derived hash tables and their associated
532660484Sobrien	funtions and #defines for use by the h8300 linker.
532760484Sobrien	(h8300_reloc16_extra_cases, case R_MEM_INDIRECT): Create entries in
532860484Sobrien	the function vector as needed.  Place the address of the function
532960484Sobrien	vector entry in the location specified by the R_MEM_INDIRECT reloc.
533060484Sobrien	Rewrite the vectors section contents as necessary.
533160484Sobrien	(h8300_bfd_link_add_symbols): New function for the h8300 linker.
533260484Sobrien	(coff_bfd_link_add_symbols): Define to use h8300 specific version.
533360484Sobrien	(coff_bfd_link_hash_table_create): Likewise.
533460484Sobrien
533560484SobrienThu Mar 28 17:44:08 1996  Ian Lance Taylor  <ian@cygnus.com>
533660484Sobrien
533760484Sobrien	* libhppa.h: If gcc 2.7 or higher, declare all the functions with
533860484Sobrien	__attribute__ ((__unused__)) so that -Wall doesn't warn about
533960484Sobrien	them.
534060484Sobrien	(hppa_rebuild_insn): Pass pointer to correct type to
534160484Sobrien	low_sign_unext and dis_assemble_21.
534260484Sobrien
534360484SobrienThu Mar 28 11:00:36 1996  Doug Evans  <dje@canuck.cygnus.com>
534460484Sobrien
534560484Sobrien	* config.bfd (sparc64-{sysv4*,solaris2*}): Delete.
534660484Sobrien	Stick with sparc-*-{sysv4*,solaris2*}.
534760484Sobrien
534860484SobrienWed Mar 27 10:43:34 1996  Ian Lance Taylor  <ian@cygnus.com>
534960484Sobrien
535060484Sobrien	* peicode.h (coff_swap_aux_in): Swap in extra PE x_scn fields.
535160484Sobrien	(coff_swap_aux_out): Swap out extra PE x_scn fields.
535260484Sobrien	* coffswap.h (coff_swap_aux_in): Zero out extra PE x_scn fields.
535360484Sobrien	* coffgen.c (coff_print_symbol): If any of the extra PE x_scn
535460484Sobrien	fields is non-zero, print them.
535560484Sobrien
535660484Sobrien	* coff-ppc.c (ppc_record_toc_entry): Put inside COFF_IMAGE_WITH_PE
535760484Sobrien	ifdef.  Remove unused variables.
535860484Sobrien	(ppc_record_data_in_toc_entry): Ifdef out.  Removed unused
535960484Sobrien	variables.
536060484Sobrien	(ppc_mark_symbol_as_glue): Put inside COFF_IMAGE_WITH_PE ifdef.
536160484Sobrien	(get_symbol_value): Ifdef out.
536260484Sobrien	(pe_ppc_reloc): Ifdef out.  Remove unused variables.
536360484Sobrien	(coff_ppc_relocate_section): Remove unused variables.  Make
536460484Sobrien	fprintf strings and argument types correspond.  Put before_addr in
536560484Sobrien	DEBUG_RELOC ifdef.
536660484Sobrien	(dump_toc): Make fprintf strings and argument types correspond.
536760484Sobrien	(ppc_process_before_allocation): Remove unused variables.  Always
536860484Sobrien	return a value.
536960484Sobrien	(ppc_reflo_reloc): Ifdef out.
537060484Sobrien	(ppc_addr32nb_reloc): Ifdef out.
537160484Sobrien	(ppc_coff_rtype2howto): Make fprintf strings and argument types
537260484Sobrien	correspond.
537360484Sobrien	(coff_ppc_rtype_to_howto): Likewise.
537460484Sobrien	(ppc_coff_swap_sym_in_hook): Remove unused variables.
537560484Sobrien
537660484Sobrien	* peicode.h (pe_print_idata): Move otherwise unused variables into
537760484Sobrien	the #ifdef where they are used.  Always return a value.
537860484Sobrien	(pe_print_edata): Make fprintf strings and argument types
537960484Sobrien	correspond.  Always return a value.
538060484Sobrien	(pe_print_pdata): Removed unused variable addr_value.  Always
538160484Sobrien	return a value.
538260484Sobrien	(pe_print_reloc): Remove unused variable onaline.  Make fprintf
538360484Sobrien	strings and argument types correspond.  Always return a value.
538460484Sobrien
538560484Sobrien	* elf32-ppc.c (ppc_elf_fake_sections): Return true.
538660484Sobrien	(ppc_elf_finish_dynamic_symbol): Move definition of unused
538760484Sobrien	variable rela inside #if 0 section where it is used.
538860484Sobrien
538960484Sobrien	* ns32k.h: New file.
539060484Sobrien	* cpu-ns32k.h: Include ns32k.h.  Rename externally visible
539160484Sobrien	functions to start with _bfd_.
539260484Sobrien	* aout-ns32k.c: Include ns32k.h.  Change references to renamed
539360484Sobrien	functions in cpu-ns32k.h.
539460484Sobrien	* Makefile.in: Rebuild dependencies.
539560484Sobrien	(HFILES): Add ns32k.h.
539660484Sobrien
539760484Sobrien	* section.c (struct sec): Add linker_mark field.  Change
539860484Sobrien	user_set_vma and reloc_done to be single bit fields.
539960484Sobrien	(STD_SECTION): Update accordingly.
540060484Sobrien	* bfd-in2.h: Rebuild.
540160484Sobrien	* aoutx.h (NAME(aout,final_link)): Mark sections included in the
540260484Sobrien	link.
540360484Sobrien	(aout_link_input_bfd): Don't link unmarked sections.
540460484Sobrien	* cofflink.c (_bfd_coff_final_link): Mark sections included in the
540560484Sobrien	link.
540660484Sobrien	(_bfd_coff_link_input_bfd): Don't link unmarked sections.
540760484Sobrien	* coff-ppc.c (ppc_bfd_coff_final_link): Mark sections included in
540860484Sobrien	the link.
540960484Sobrien	* elflink.h (elf_bfd_final_link): Mark sections included in the
541060484Sobrien	link.
541160484Sobrien	(elf_link_input_bfd): Don't link unmarked sections.
541260484Sobrien	* xcofflink.c (_bfd_xcoff_bfd_final_link): Mark sections included
541360484Sobrien	in the link.
541460484Sobrien	(xcoff_link_input_bfd): Don't link unmarked sections.
541560484Sobrien
541660484Sobrien	* coffswap.h (coff_swap_scnhdr_out): Include section name in
541760484Sobrien	overflow error messages.
541860484Sobrien
541960484SobrienTue Mar 26 15:46:18 1996  Ian Lance Taylor  <ian@cygnus.com>
542060484Sobrien
542160484Sobrien	* bfd.c (_bfd_default_error_handler): If _bfd_error_program_name
542260484Sobrien	is not set, print "BFD: " before the error message.
542360484Sobrien
542460484Sobrien	* configure.in: Use AC_CHECK_TOOL to find ar and ranlib.  From
542560484Sobrien	Miles Bader <miles@gnu.ai.mit.edu>.
542660484Sobrien	* configure: Rebuild.
542760484Sobrien
542860484SobrienFri Mar 22 12:17:00 1996  Ian Lance Taylor  <ian@cygnus.com>
542960484Sobrien
543060484Sobrien	* xcofflink.c (xcoff_link_input_bfd): Fix scan for C_BINCL/C_EINCL
543160484Sobrien	symbols.
543260484Sobrien
543360484Sobrien	* config.bfd: Add ieee_vec to targ_selvecs for i960 targets and
543460484Sobrien	m68k-aout, m68k-coff, and m68k-elf targets.
543560484Sobrien
543660484SobrienFri Mar 22 11:33:44 1996  Martin Anantharaman  <martin@goofy.imech.uni-duisburg.de>
543760484Sobrien
543860484Sobrien	* ieee.c: Changed #ifdef KEEPMINUSPCININST to #if KEEPMINUSPCININST.
543960484Sobrien	(ieee_generic_stat_arch_elt): Restructured to prevent
544060484Sobrien	ieee_object_p from being called repeatedly.
544160484Sobrien
544260484SobrienThu Mar 21 11:00:47 1996  steve chamberlain  <sac@slash.cygnus.com>
544360484Sobrien
544460484Sobrien	* coffcode.h (coff_write_object_contents):  Allocate
544560484Sobrien	buffers large enough for any FILEHDR or AOUTHDR.
544660484Sobrien
544760484SobrienThu Mar 21 16:28:17 1996  David Mosberger-Tang  <davidm@azstarnet.com>
544860484Sobrien
544960484Sobrien	* ecofflink.c (lookup_line): New static function, renamed and
545060484Sobrien	slighly changed from old _bfd_ecoff_locate_line.
545160484Sobrien	(_bfd_ecoff_locate_line): Cache line number information.  Use
545260484Sobrien	lookup_line for actual lookup.
545360484Sobrien
545460484SobrienThu Mar 21 14:59:11 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
545560484Sobrien
545660484Sobrien	* peicode.h (pe_print_pdata): Warn if the .pdata section is not a
545760484Sobrien	multiple of 20 bytes.
545860484Sobrien
545960484SobrienThu Mar 21 13:54:40 1996  Ian Lance Taylor  <ian@cygnus.com>
546060484Sobrien
546160484Sobrien	* ecoff.c (_bfd_ecoff_find_nearest_line): Use bfd_zalloc to
546260484Sobrien	allocate ecoff_find_line, and don't initialize by hand.
546360484Sobrien	* elf32-mips.c (mips_elf_find_nearest_line): Use bfd_zalloc for
546460484Sobrien	mips_elf_find_line, and don't call memset.
546560484Sobrien
546660484Sobrien	* coffcode.h (coff_compute_section_file_positions): If not
546760484Sobrien	producing a final executable, don't consider sofar when aligning
546860484Sobrien	the section to the correct size.
546960484Sobrien
547060484SobrienWed Mar 20 16:53:12 1996  Ian Lance Taylor  <ian@cygnus.com>
547160484Sobrien
547260484Sobrien	* coffcode.h (coff_add_missing_symbols): Ifdef out.
547360484Sobrien	(coff_write_object_contents): Don't call coff_add_missing_symbols.
547460484Sobrien	* coffgen.c (coff_section_symbol): Ifdef out.
547560484Sobrien
547660484SobrienMon Mar 18 12:54:41 1996  Ian Lance Taylor  <ian@cygnus.com>
547760484Sobrien
547860484Sobrien	* elf32-mips.c (mips_elf_gprel32_reloc): Initialize gp if
547960484Sobrien	output_bfd is not NULL.
548060484Sobrien
548160484SobrienThu Mar 14 17:12:06 1996  Doug Evans  <dje@charmed.cygnus.com>
548260484Sobrien
548360484Sobrien	* coffgen.c (coff_get_normalized_symtab): Call bfd_zalloc instead
548460484Sobrien	of bfd_alloc (fixes fix_line not being initialized).
548560484Sobrien	Delete zeroing of fix_{value,tag,end,scnlen} fields.
548660484Sobrien
548760484SobrienThu Mar 14 16:06:06 1996  Jeffrey A Law  (law@cygnus.com)
548860484Sobrien
548960484Sobrien	* coffcode.h: Allow specific backends to override the
549060484Sobrien	bfd_link_add_symbols routine.
549160484Sobrien
549260484Sobrien	* coff-h8300.c: Include genlink.h.
549360484Sobrien	(howto_table): Add R_MEM_INDIRECT.
549460484Sobrien	(rtype2howto): Support R_MEM_INDIRECT.
549560484Sobrien	(h8300_reloc16_extra_cases): Handle R_MEM_INDIRECT like R_RELBYTE
549660484Sobrien	for now.
549760484Sobrien
549860484SobrienTue Mar 12 12:41:17 1996  David Mosberger-Tang  <davidm@koala.azstarnet.com>
549960484Sobrien
550060484Sobrien	* coff-alpha.c (alpha_relocate_section): Use
550160484Sobrien	info->callbacks_warning, rather than _bfd_error_handler, for
550260484Sobrien	"multiple gp" warning.
550360484Sobrien
550460484SobrienTue Mar 12 12:10:55 1996  Ian Lance Taylor  <ian@cygnus.com>
550560484Sobrien
550660484Sobrien	* linker.c (bfd_wrapped_link_hash_lookup): New function.
550760484Sobrien	(_bfd_generic_link_add_one_symbol): Remove BFD_ASSERT on hash
550860484Sobrien	table string.  Use bfd_wrapped_link_hash_lookup.
550960484Sobrien	(_bfd_generic_link_write_global_symbol): Remove BFD_ASSERT on hash
551060484Sobrien	table string.
551160484Sobrien	* aoutx.h (aout_link_write_symbols): Use the name from the hash
551260484Sobrien	table, if any, when writing out symbols.
551360484Sobrien	(aout_link_input_section_std): Use the name from the hash table,
551460484Sobrien	if any, when reporting undefined symbols.
551560484Sobrien	(aout_link_input_section_ext): Likewise.
551660484Sobrien	(aout_link_reloc_link_order): Use bfd_wrapped_link_hash_lookup.
551760484Sobrien	* bout.c (get_value): Likewise.
551860484Sobrien	* cofflink.c (_bfd_coff_reloc_link_order): Likewise.
551960484Sobrien	* ecoff.c (ecoff_reloc_link_order): Likewise.
552060484Sobrien	* elflink.h (elf_link_add_object_symbols): Likewise.
552160484Sobrien	(elf_reloc_link_order): Likewise.
552260484Sobrien	* linker.c (_bfd_generic_link_output_symbols): Likewise.
552360484Sobrien	(_bfd_generic_reloc_link_order): Likewise.
552460484Sobrien	(default_indirect_link_order): Likewise.
552560484Sobrien	* reloc16.c (bfd_coff_reloc16_get_value): Likewise.
552660484Sobrien	* sunos.c (sunos_add_one_symbol): Likewise.
552760484Sobrien	* xcofflink.c (xcoff_link_add_symbols): Likewise.
552860484Sobrien	(bfd_xcoff_link_count_reloc): Likewise.
552960484Sobrien	(xcoff_reloc_link_order): Likewise.
553060484Sobrien
553160484Sobrien	* ecoffswap.h (ecoff_swap_fdr_in): If ECOFF_64, turn 0xffffffff
553260484Sobrien	into -1 for intern->rss.
553360484Sobrien
553460484Sobrien	* configure: Rebuild with autoconf 2.8.
553560484Sobrien
553660484SobrienMon Mar 11 12:28:31 1996  Ian Lance Taylor  <ian@cygnus.com>
553760484Sobrien
553860484Sobrien	* stab-syms.c (__define_stab_duplicate): Define.
553960484Sobrien	(bfd_get_stab_name): Rename from aout_stab_name.  Rewrite to use a
554060484Sobrien	switch.
554160484Sobrien	* bfd-in.h (bfd_get_stab_name): Declare.
554260484Sobrien	* bfd-in2.h: Rebuild.
554360484Sobrien	* Makefile.in: Rebuild dependencies.
554460484Sobrien	(BFD_LIBS): Add stab-syms.o.
554560484Sobrien	(BFD_LIBS_CFILES): Add stab-syms.c.
554660484Sobrien	(BFD32_BACKENDS): Remove stab-syms.o.
554760484Sobrien	(BFD32_BACKENDS_CFILES): Remove stab-syms.c.
554860484Sobrien	* configure.in: Don't list stab-syms.o in bfd_backends.
554960484Sobrien	* configure: Rebuild.
555060484Sobrien	* libaout.h (aout_stab_name): Don't declare.
555160484Sobrien	* aoutx.h (NAME(aout,get_symbol_info)): Call bfd_get_stab_name,
555260484Sobrien	not aout_stab_name.
555360484Sobrien
555460484SobrienFri Mar  8 11:26:20 1996  Ian Lance Taylor  <ian@cygnus.com>
555560484Sobrien
555660484Sobrien	* elf.c (assign_file_positions_for_segments): Adjust file offset
555760484Sobrien	for section alignment even if SEC_LOAD is not set.
555860484Sobrien
555960484SobrienTue Mar  5 12:02:23 1996  Ian Lance Taylor  <ian@cygnus.com>
556060484Sobrien
556160484Sobrien	* configure.in: Don't set SHLIB or SHLINK to an empty string,
556260484Sobrien	since they appear as targets in Makefile.in.
556360484Sobrien	* configure: Rebuild.
556460484Sobrien
556560484Sobrien	* sunos.c (sunos_scan_ext_relocs): If not making a shared library,
556660484Sobrien	don't fiddle with a symbol which is not defined anywhere.
556760484Sobrien
556860484SobrienMon Mar  4 12:49:16 1996  Ian Lance Taylor  <ian@cygnus.com>
556960484Sobrien
557060484Sobrien	* xcofflink.c (xcoff_mark): Treat undefined imported symbols as
557160484Sobrien	though they are defined in a shared library.
557260484Sobrien	(xcoff_build_ldsyms): Likewise.
557360484Sobrien
557460484Sobrien	* coffgen.c (coff_find_nearest_line): Don't look at the line
557560484Sobrien	numbers for the section if section->lineno is NULL.
557660484Sobrien
557760484Sobrien	* elf.c (_bfd_elf_symbol_from_bfd_symbol): Print a useful error
557860484Sobrien	message rather than calling BFD_ASSERT.
557960484Sobrien	* elfcode.h (write_relocs): Check return value of
558060484Sobrien	_bfd_elf_symbol_from_bfd_symbol.
558160484Sobrien
558260484SobrienFri Mar  1 09:42:59 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
558360484Sobrien
558460484Sobrien	* elf32-ppc.c (ppc_elf_add_symbol_hook): Don't set SEC_LOAD flag
558560484Sobrien	for .sbss section.
558660484Sobrien
558760484SobrienWed Feb 28 11:25:47 1996  Jeffrey A Law  (law@cygnus.com)
558860484Sobrien
558960484Sobrien	* libhppa.h (hppa_reloc_field_selector_type): Add R_HPPA_NLSEL
559060484Sobrien	and R_HPPA_NLRSEL.
559160484Sobrien	(e_nsel, e_nlsel, e_nlrsel): Undefine.  Add to
559260484Sobrien	hppa_reloc_field_selector_type_alt.
559360484Sobrien	(hppa_field_adjust): Handle e_nlsel, e_nlrsel.  Fix e_nsel handling.
559460484Sobrien	* som.c (hppa_som_gen_reloc_type): Handle N', NL' NLR' field
559560484Sobrien	selectors.
559660484Sobrien	(som_write_fixups): Finish handling of R_N0SEL and R_N1SEL.
559760484Sobrien
559860484SobrienWed Feb 28 11:00:24 1996  Ian Lance Taylor  <ian@cygnus.com>
559960484Sobrien
560060484Sobrien	* elf.c (assign_file_positions_for_segments): Adjust the segment
560160484Sobrien	memory size for the alignment of a SEC_ALLOC section, not just a
560260484Sobrien	SEC_LOAD section.
560360484Sobrien
560460484SobrienTue Feb 27 14:17:31 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
560560484Sobrien
560660484Sobrien	* m68klinux.c: New file.
560760484Sobrien	* hosts/m68klinux.h: New file.
560860484Sobrien	* config.bfd (m68*-*-linuxaout*, m68*-*-linux*): New targets.
560960484Sobrien	* configure.in (m68*-*-linux*): New native host.
561060484Sobrien	(m68klinux_vec): New vector.
561160484Sobrien	* configure: Rebuild.
561260484Sobrien	* targets.c (m68klinux_vec): Declare.
561360484Sobrien	* i386linux.c (bfd_i386linux_size_dynamic_sections): Renamed from
561460484Sobrien	bfd_linux_size_dynmic_sections to avoid clash with m68klinux.c.
561560484Sobrien	* bfd-in.h (bfd_i386linux_size_dynamic_sections): Rename
561660484Sobrien	declaration from bfd_linux_size_dynamic_sections.
561760484Sobrien	(bfd_m68klinux_size_dynamic_sections): Declare.
561860484Sobrien	* bfd-in2.h: Rebuild.
561960484Sobrien	* Makefile.in: Rebuild dependencies.
562060484Sobrien	(BFD32_BACKENDS): Add m68klinux.o.
562160484Sobrien	(BFD32_BACKENDS_CFILES): Add m68klinux.c.
562260484Sobrien
562360484SobrienTue Feb 27 11:31:34 1996  Jeffrey A Law  (law@cygnus.com)
562460484Sobrien
562560484Sobrien	* libhppa.h (pa_arch): Add pa20.
562660484Sobrien	(hppa_reloc_field_selector_type): Add R_HPPA_NSEL.
562760484Sobrien	(e_nsel): Undefine.  Add to hppa_reloc_field_selector_type_alt.
562860484Sobrien	(hppa_field_adjust): Handle e_nsel.
562960484Sobrien	* som.c: Provide default definitions for many new relocs found only
563060484Sobrien	in hpux10 include files.
563160484Sobrien	(som_fixup_formats): Add several new relocs from hpux10.
563260484Sobrien	(som_hppa_howto_table): Add hpux10 relocs.
563360484Sobrien	(som_write_fixups): Handle R_N0SEL and R_N1SEL hpux10 relocs.
563460484Sobrien
563560484SobrienMon Feb 26 12:52:48 1996  Stan Shebs  <shebs@andros.cygnus.com>
563660484Sobrien
563760484Sobrien	* mpw-make.sed: Edit out recent shared library support, and
563860484Sobrien	rules to rebuild .h files using doc/chew.
563960484Sobrien
564060484SobrienMon Feb 26 14:48:39 1996  David Mosberger-Tang  <davidm@AZStarNet.com>
564160484Sobrien
564260484Sobrien	* ecoff.c (ecoff_compute_section_file_positions): Adjust the file
564360484Sobrien	size even of sections with no contents.
564460484Sobrien
564560484SobrienMon Feb 26 14:01:13 1996  Ian Lance Taylor  <ian@cygnus.com>
564660484Sobrien
564760484Sobrien	* cofflink.c (_bfd_coff_link_input_bfd): When merging, skip names
564860484Sobrien	starting with '$' the way we skip names starting with '.'.  When
564960484Sobrien	updating x_endndx, don't be fooled by an index which has been
565060484Sobrien	merged.
565160484Sobrien
565260484Sobrien	* cofflink.c (_bfd_coff_link_input_bfd): Don't try to optimize a
565360484Sobrien	struct/union/enum type with no elements.
565460484Sobrien
565560484SobrienSat Feb 24 11:38:58 1996  Ian Lance Taylor  <ian@cygnus.com>
565660484Sobrien
565760484Sobrien	* bfd.c (bfd_errmsg): Handle a NULL return from strerror.
565860484Sobrien
565960484Sobrien	* archive.c (bfd_generic_archive_p): If the first file in the
566060484Sobrien	archive can not be recognized as an object, don't assume that this
566160484Sobrien	is the wrong format.
566260484Sobrien
566360484Sobrien	* elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the
566460484Sobrien	format is not bfd_object.
566560484Sobrien	(bfd_elf_get_dt_soname): Likewise.
566660484Sobrien
566760484SobrienWed Feb 21 13:58:04 1996  Ian Lance Taylor  <ian@cygnus.com>
566860484Sobrien
566960484Sobrien	* coff-sh.c (sh_relax_delete_bytes): Correct range of R_SH_USES
567060484Sobrien	reloc.
567160484Sobrien
567260484SobrienTue Feb 20 16:22:44 1996  J.T. Conklin  <jtc@rtl.cygnus.com>
567360484Sobrien
567460484Sobrien	* bfd.c (tdata): Add netbsd_core_data.
567560484Sobrien	* bfd-in2.h: Regenerated.
567660484Sobrien
567760484SobrienTue Feb 20 16:50:02 1996  Ian Lance Taylor  <ian@cygnus.com>
567860484Sobrien
567960484Sobrien	* sunos.c (SUNOS_CONSTRUCTOR): Define.
568060484Sobrien	(sunos_add_one_symbol): Don't let a symbol from a dynamic object
568160484Sobrien	override a constructor symbol.  Set SUNOS_CONSTRUCTOR when
568260484Sobrien	appropriate.
568360484Sobrien
568460484Sobrien	* bout.c (b_out_squirt_out_relocs): Use udata.i rather than flags
568560484Sobrien	to get the symbol index, matching 14 Jul 95 change.
568660484Sobrien
568760484SobrienTue Feb 20 08:26:27 1996  Fred Fish  <fnf@phydeaux.cygnus.com>
568860484Sobrien
568960484Sobrien	* coff-alpha.c (alpha_ecoff_get_relocated_section_contents):
569060484Sobrien	Remove duplicate definition of gp.
569160484Sobrien
569260484SobrienMon Feb 19 12:37:41 1996  Ian Lance Taylor  <ian@cygnus.com>
569360484Sobrien
569460484Sobrien	* coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Don't
569560484Sobrien	assume that we can set the GP value and then get the same value,
569660484Sobrien	since it won't be true if the output file is neither ELF nor
569760484Sobrien	ECOFF.
569860484Sobrien	* coff-mips.c (mips_adjust_reloc_in): Don't bother to use
569960484Sobrien	_bfd_get_gp_value here.
570060484Sobrien	(mips_gprel_reloc): Don't assume we can set and get the GP value.
570160484Sobrien	* elf32-mips.c (mips_elf_hi16_reloc): Get gp value from
570260484Sobrien	mips_elf_final_gp.
570360484Sobrien	(mips_elf_lo16_reloc): Likewise.
570460484Sobrien	(mips_elf_final_gp): Add pgp parameter.  Set it to the GP value.
570560484Sobrien	Don't require that the BFD be ELF.
570660484Sobrien	(mips_elf_gprel16_reloc): Get gp value from mips_elf_final_gp.
570760484Sobrien	(mips_elf_gprel32_reloc): Likewise.
570860484Sobrien	(mips_elf_relocate_section): Don't assume we can set and get the
570960484Sobrien	GP value.
571060484Sobrien	(mips_elf_finish_dynamic_symbol): Don't bother to use
571160484Sobrien	_bfd_get_gp_value here.
571260484Sobrien
571360484Sobrien	* elf32-mips.c (mips_elf_create_procedure_table): Initialize sv.
571460484Sobrien	Don't change epdr between malloc and free.  Be careful not to free
571560484Sobrien	NULL pointers.  Zero out the first RPDR.
571660484Sobrien
571760484Sobrien	* configure.host: On Linux, only pass -rpath option if $(libdir)
571860484Sobrien	is neither /lib nor /usr/lib.  From Alan Modra
571960484Sobrien	<alan@mullet.Levels.UniSA.Edu.Au>.
572060484Sobrien
572160484Sobrien	* elf-bfd.h (struct elf_obj_tdata): Rename dt_needed_name to
572260484Sobrien	dt_name.
572360484Sobrien	(elf_dt_name): Rename from elf_dt_needed_name.
572460484Sobrien	* elf.c (bfd_elf_set_dt_needed_name): Use elf_dt_name, not
572560484Sobrien	elf_dt_needed_name.
572660484Sobrien	(bfd_elf_get_dt_soname): New function.
572760484Sobrien	* elflink.h (elf_link_add_object_symbols): Use elf_dt_name, not
572860484Sobrien	elf_dt_needed_name.  Save the SONAME back in elf_dt_name.
572960484Sobrien	* bfd-in.h (bfd_elf_get_dt_soname): Declare.
573060484Sobrien	* bfd-in2.h: Rebuild.
573160484Sobrien
573260484SobrienMon Feb 19 02:50:23 1996  Doug Evans  <dje@charmed.cygnus.com>
573360484Sobrien
573460484Sobrien	* elf32-sparc.c (elf32_sparc_reloc_type_lookup): Renamed from
573560484Sobrien	_bfd_sparc_elf_reloc_type_lookup.
573660484Sobrien	(bfd_elf32_bfd_reloc_type_lookup): Update.
573760484Sobrien	* elf64-sparc.c (SPARC64_OLD_RELOCS): Define.
573860484Sobrien	(sparc64_elf_howto_table): Define.
573960484Sobrien	(sparc_reloc_map): Define.
574060484Sobrien	(sparc64_elf_reloc_type_lookup): New function.
574160484Sobrien	(sparc_elf_wdisp16_reloc): New function.
574260484Sobrien	(elf_info_to_howto): Use sparc64_elf_howto_table.
574360484Sobrien	(sparc64_elf_relocate_section): Likewise.
574460484Sobrien	(bfd_elf64_bfd_reloc_type_lookup): Update.
574560484Sobrien
574660484SobrienSun Feb 18 15:02:25 1996  Ian Lance Taylor  <ian@cygnus.com>
574760484Sobrien
574860484Sobrien	* configure.host: Check for 'do not mix' from native linker before
574960484Sobrien	trying to use -rpath.
575060484Sobrien
575160484SobrienFri Feb 16 12:46:18 1996  Ian Lance Taylor  <ian@cygnus.com>
575260484Sobrien
575360484Sobrien	* bfd.c (_bfd_get_gp_value): New function.
575460484Sobrien	(_bfd_set_gp_value): New function.
575560484Sobrien	* libbfd-in.h (_bfd_get_gp_value): Declare.
575660484Sobrien	(_bfd_set_gp_value): Declare.
575760484Sobrien	* libbfd.h: Rebuild.
575860484Sobrien	* coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
575960484Sobrien	_bfd_get_gp_value and _bfd_set_gp_value rather than referring
576060484Sobrien	directly to the fields in the tdata information.
576160484Sobrien	(alpha_relocate_section): Likewise.
576260484Sobrien	* coff-mips.c (mips_adjust_reloc_in): Likewise.
576360484Sobrien	(mips_gprel_reloc): Likewise.
576460484Sobrien	(mips_relocate_section): Likewise.
576560484Sobrien	* elf32-mips.c (mips_elf_hi16_reloc): Likewise.
576660484Sobrien	(mips_elf_lo16_reloc): Likewise.
576760484Sobrien	(mips_elf_final_gp): Likewise.
576860484Sobrien	(mips_elf_gprel16_reloc): Likewise.
576960484Sobrien	(mips_elf_gprel32_reloc): Likewise.
577060484Sobrien	(mips_elf_relocate_section): Likewise.
577160484Sobrien	(mips_elf_finish_dynamic_symbol): Likewise.
577260484Sobrien
577360484Sobrien	* bout.c (b_out_set_arch_mach): Recognize bfd_mach_i960_jx.
577460484Sobrien
577560484SobrienThu Feb 15 11:29:13 1996  Ian Lance Taylor  <ian@cygnus.com>
577660484Sobrien
577760484Sobrien	* configure.in: Call AC_PROG_CC before configure.host.
577860484Sobrien	* configure: Rebuild.
577960484Sobrien	* configure.host: Don't set information which autoconf should
578060484Sobrien	figure out, namely CC, CFLAGS, LDFLAGS, AR, and RANLIB.
578160484Sobrien
578260484Sobrien	* configure.host: Remove go32 and win32 host information, since it
578360484Sobrien	should no longer be needed.
578460484Sobrien
578560484Sobrien	* elf.c (map_sections_to_segments): If we have a .dynamic section,
578660484Sobrien	then start a new segment rather than put a writable section in a
578760484Sobrien	readonly segment.
578860484Sobrien
578960484Sobrien	* configure.host: Set RPATH_ENVVAR.
579060484Sobrien
579160484Sobrien	* Makefile.in: Rebuild dependencies.
579260484Sobrien
579360484Sobrien	* elflink.c (_bfd_elf_create_linker_section): Remove unused
579460484Sobrien	zero_section variable.
579560484Sobrien
579660484SobrienThu Feb 15 10:39:17 1996  H.J. Lu  <hjl@zoom.com>
579760484Sobrien
579860484Sobrien	* Makefile.in ($(srcdir)/bfd-in2.h): Rename target from bfd-in2.h.
579960484Sobrien	($(srcdir)/libbfd.h): Rename from libbfd.h.
580060484Sobrien	($(srcdir)/libcoff.h): Rename from libcoff.h.
580160484Sobrien
580260484SobrienWed Feb 14 16:29:07 1996  Martin Anantharaman  <martin@mail.imech.uni-duisburg.de>
580360484Sobrien
580460484Sobrien	* ieee.c (ieee_write_expression): Only use an R variable for a
580560484Sobrien	local symbol.  Don't output a zero offset.  Handle a zero address.
580660484Sobrien	(SRC_MASK, PCREL_OFFSET): Define based on KEEPMINUSPCININST.
580760484Sobrien	(rel32_howto, rel16_howto, rel8_howto): Use SRC_MASK and
580860484Sobrien	PCREL_OFFSET.
580960484Sobrien	(parse_expression): Don't try to handle multiple occurrences of a
581060484Sobrien	P variable.  Handle I variables differently from X variables.  Fix
581160484Sobrien	the order of minus expressions.
581260484Sobrien	(ieee_slurp_external_symbols): Generate an I variable for an NN
581360484Sobrien	record.  Fix handling of ATI and ATX records.
581460484Sobrien	(ieee_slurp_sections): Only set minimal section attributes.
581560484Sobrien	Adjust them later, based on the section contents.
581660484Sobrien	(ieee_object_p): Read in the file until just after the ME record.
581760484Sobrien	Call ieee_slurp_section_data to set the section flags.
581860484Sobrien	(do_one): Add iterations parameter.  Only repeat the first load
581960484Sobrien	item.  Set the section and file reloc flags.
582060484Sobrien	(ieee_slurp_section_data): Set section flags.  Pass iterations to
582160484Sobrien	do_one.
582260484Sobrien	(ieee_canonicalize_reloc): Handle I variables.
582360484Sobrien	(do_with_relocs): Only emit relocation size when necessary.
582460484Sobrien	Increase MAXRUN to 127.  Change ov to be assigned, and take
582560484Sobrien	src_mask and pcrel_offset into account.
582660484Sobrien	(ieee_write_data_part): Skip sections that are not loaded.
582760484Sobrien	(ieee_write_external_part): Don't output optional last entry of WX
582860484Sobrien	records.
582960484Sobrien	(ieee_write_me_part): Make setting of me_record neater.
583060484Sobrien	(ieee_generic_stat_arch_elt): Get the size of an archive element.
583160484Sobrien
583260484Sobrien	* syms.c (stt): Add entries for zerovars, vars, and code.
583360484Sobrien
583460484Sobrien	* elfcode.h (validate_reloc): New static function.
583560484Sobrien	(write_relocs): Call validate_reloc for non ELF relocs.
583660484Sobrien
583760484Sobrien	* elfxx-target.h (elf_symbol_leading_char): Define if not defined.
583860484Sobrien	(TARGET_BIG_SYM): Use elf_symbol_leading_char.
583960484Sobrien	(TARGET_LITTLE_SYM): Likewise.
584060484Sobrien
584160484Sobrien	* config.bfd (m68*-*-psos*): New target.
584260484Sobrien
584360484SobrienTue Feb 13 15:56:22 1996  Bryan Ford  <baford@snake.cs.utah.edu>
584460484Sobrien
584560484Sobrien	* i386msdos.c: Remove some #if 0 code.
584660484Sobrien	(msdos_write_object_contents): Don't include empty sections in the
584760484Sobrien	size computation, regardless of their address.
584860484Sobrien
584960484SobrienTue Feb 13 15:36:37 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
585060484Sobrien
585160484Sobrien	* elf32-ppc.c (ppc_elf_relocate_section): Don't segfault if dynboj
585260484Sobrien	is NULL, ie, the -r switch is used.
585360484Sobrien
585460484SobrienTue Feb 13 14:35:15 1996  Ian Lance Taylor  <ian@cygnus.com>
585560484Sobrien
585660484Sobrien	* reloc.c (BFD_RELOC_MIPS_GOT_HI16): Define.
585760484Sobrien	(BFD_RELOC_MIPS_GOT_LO16): Define.
585860484Sobrien	(BFD_RELOC_MIPS_CALL_HI16, BFD_RELOC_MIPS_CALL_LO16): Define.
585960484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
586060484Sobrien	* elf32-mips.c (mips_reloc_map): Map new relocs.
586160484Sobrien
586260484Sobrien	* configure.host: Set HDLFLAGS for *-*-hpux with --enable-shared.
586360484Sobrien
586460484Sobrien	* Makefile.in ($(SHLINK)): Check ts against $(SHLIB), not
586560484Sobrien	$(SHLINK).
586660484Sobrien
586760484Sobrien	* ieee.c (get_symbol): Set the section to bfd_abs_section.
586860484Sobrien	(do_with_relocs): If EXEC_P is set and there are no relocs, use a
586960484Sobrien	simple number for the section address, rather than an expression.
587060484Sobrien	Limit the number of bytes between relocs to MAXRUN.
587160484Sobrien	(ieee_write_me_part): Set me_record to the file offset after the
587260484Sobrien	start address.
587360484Sobrien	(ieee_write_processor): New static function.
587460484Sobrien	(ieee_write_object_contents): Use ieee_write_processor.
587560484Sobrien
587660484SobrienFri Feb  9 10:53:00 1996  Ian Lance Taylor  <ian@cygnus.com>
587760484Sobrien
587860484Sobrien	* configure.host: Use ${CC-gcc} when testing for -rpath on SunOS.
587960484Sobrien
588060484Sobrien	* coff-aux.c: Change include of aux.h to aux-coff.h.
588160484Sobrien
588260484SobrienThu Feb  8 14:01:03 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
588360484Sobrien
588460484Sobrien	* elf32-m68k.c (elf_m68k_relocate_section): For a R_68K_RELATIVE
588560484Sobrien	relocation put the addend both in the reloc entry and the data.
588660484Sobrien	(elf_m68k_finish_dynamic_symbol): Likewise.  Mask out marker in
588760484Sobrien	GOT offset value.
588860484Sobrien
588960484Sobrien	* elf32-m68k.c (elf_m68k_relocate_section): If -Bsymbolic, resolve
589060484Sobrien	a R_68K_PCxx reloc against a defined global symbol directly.
589160484Sobrien	(elf_m68k_check_relocs): Don't count such a reloc.
589260484Sobrien
589360484Sobrien	* elf32-m68k.c (elf_m68k_check_relocs): Don't record a symbol with
589460484Sobrien	a PLTxx reloc as dynamic.  Disallow PLTxxO reloc against a local
589560484Sobrien	symbol for now, otherwise always record the symbol as dynamic.
589660484Sobrien	(elf_m68k_adjust_dynamic_symbol): If a symbol with a PLTxx reloc
589760484Sobrien	is not referenced by a dynamic object, and we are not making a
589860484Sobrien	shared object, then don't make a PLT entry.  If we do make a PLT
589960484Sobrien	entry, make sure the symbol has been recorded as dynamic.
590060484Sobrien
590160484SobrienWed Feb  7 13:56:06 1996  Ian Lance Taylor  <ian@cygnus.com>
590260484Sobrien
590360484Sobrien	* configure.host: When making a shared library, set HLDFLAGS to
590460484Sobrien	pass an appropriate -rpath option.  Use the make variable SONAME
590560484Sobrien	as the shared library soname, rather than computing it here.  On
590660484Sobrien	SunOS, build stamp-tshlink in place of $(SHLINK).
590760484Sobrien	* Makefile.in (SONAME): New variable.
590860484Sobrien	($(SHLINK)): Make a link to the transformed name, as well.
590960484Sobrien	(stamp-tshlink): New target.
591060484Sobrien	(install): Skip stamp-tshlink during install.
591160484Sobrien
591260484SobrienWed Feb  7 13:37:39 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
591360484Sobrien
591460484Sobrien	* elf32-ppc.c (ppc_elf_add_symbol_hook): Do not assume that the
591560484Sobrien	linker sections have been set up yet.
591660484Sobrien
591760484Sobrien	* elf.c (make_mapping): Add an additional argument to suppress
591860484Sobrien	making the first section include the program headers.
591960484Sobrien	(map_sections_to_segments): If the user used -Ttext such that the
592060484Sobrien	program headers are on a different page, do not set the flags
592160484Sobrien	saying that this section includes the program headers.
592260484Sobrien
592360484SobrienTue Feb  6 14:04:49 1996  J.T. Conklin  <jtc@rtl.cygnus.com>
592460484Sobrien
592560484Sobrien	* configure.in (*-*-netbsd*): Set COREFILE to netbsd-core.c.
592660484Sobrien	don't define TRAD_HEADER.
592760484Sobrien	* configure: Rebuild.
592860484Sobrien
592960484Sobrien	* netbsd-core.c: New file, support for NetBSD core files.
593060484Sobrien	* hosts/*nbsd.h: Removed.
593160484Sobrien
593260484SobrienTue Feb  6 11:47:49 1996  Doug Evans  <dje@charmed.cygnus.com>
593360484Sobrien
593460484Sobrien	* reloc.c (BFD_RELOC_SPARC_[567]): New reloc types.
593560484Sobrien	(BFD_RELOC_SPARC_LO7 reloc type): Deleted.
593660484Sobrien	* libbfd.h, bfd-in2.h: Regenerated.
593760484Sobrien	* elf32-sparc.c (_bfd_sparc_elf_reloc_type_lookup): Renamed from
593860484Sobrien	bfd_elf32_bfd_reloc_type_lookup.
593960484Sobrien	(reloc_type{,_names}): Deleted.
594060484Sobrien	(_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table.
594160484Sobrien	Add sparc64 relocs.
594260484Sobrien	(sparc_reloc_map): Add sparc64 relocs.
594360484Sobrien	(sparc_elf_notsupported_reloc): New static function.
594460484Sobrien	(sparc_elf_wdisp16_reloc): New static function.
594560484Sobrien	(elf32_sparc_check_relocs): Handle R_SPARC_WDISP{16,19}.
594660484Sobrien	(elf32_sparc_relocate_section): Likewise.
594760484Sobrien	(bfd_elf32_bfd_reloc_type_lookup): Define.
594860484Sobrien	* elf64-sparc.c (sparc64_elf_wdisp16_reloc): Deleted.
594960484Sobrien	(reloc_type{,_names}): Deleted.
595060484Sobrien	(elf_sparc_howto_table): Deleted.
595160484Sobrien	(sparc_reloc_map): Deleted.
595260484Sobrien	(_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table.
595360484Sobrien	(bfd_elf64_bfd_reloc_type_lookup): Change from function to #define.
595460484Sobrien
595560484SobrienTue Feb  6 12:12:22 1996  Ian Lance Taylor  <ian@cygnus.com>
595660484Sobrien
595760484Sobrien	* configure.host: Make SHLIB_CFLAGS include $(PICFLAG) on a
595860484Sobrien	*-*-hpux* host.
595960484Sobrien
596060484Sobrien	* Makefile.in (program_transform_name): New variable.
596160484Sobrien	(install): Transform library name before installing it.
596260484Sobrien
596360484SobrienMon Feb  5 10:38:27 1996  Ian Lance Taylor  <ian@cygnus.com>
596460484Sobrien
596560484Sobrien	* archures.c (bfd_mach_i960_hx): Define.
596660484Sobrien	* bfd-in2.h: Rebuild.
596760484Sobrien	* cpu-i960.c (scan_960_mach): Accept machine "hx".
596860484Sobrien	(MATRIX): Expand entries for HX.
596960484Sobrien	(arch_info_struct): Add i960:hx entry.
597060484Sobrien	* bout.c (b_out_set_arch_mach): Handle bfd_mach_i960_hx.
597160484Sobrien	* coffcode.h (coff_set_arch_mach_hook): Handle F_I960HX.
597260484Sobrien	(coff_set_flags): Handle bfd_mach_i960_hx.
597360484Sobrien
597460484Sobrien	Support for building as a shared library, based on patches from
597560484Sobrien	Alan Modra <alan@spri.levels.unisa.edu.au>:
597660484Sobrien	* configure.in: Add AC_ARG_ENABLE for shared and commonbfdlib.
597760484Sobrien	New substitutions: ALLLIBS, PICFLAG, SHLIB, SHLIB_CC,
597860484Sobrien	SHLIB_CFLAGS, COMMON_SHLIB, PICLIST, SHLINK.
597960484Sobrien	* configure: Rebuild.
598060484Sobrien	* configure.host: If --enable-shared, adjust shared library stuff
598160484Sobrien	based on the host.  If the host is SunOS, and the linker supports
598260484Sobrien	-rpath, set HLDFLAGS to use it.
598360484Sobrien	* Makefile.in (ALLLIBS): New variable.
598460484Sobrien	(PICFLAG, SHLIB, SHLIB_CC, SHLIB_CFLAGS): New variables.
598560484Sobrien	(COMMON_SHLIB, SHLINK): New variables.
598660484Sobrien	(.c.o): If PICFLAG is set, compile twice, once PIC, once normal.
598760484Sobrien	(STAGESTUFF): Remove variable.
598860484Sobrien	(all): Depend upon $(ALLLIBS) and @PICLIST@ rather than
598960484Sobrien	$(TARGETLIB).
599060484Sobrien	(stamp-ofiles): New target, like old ofiles target, but build
599160484Sobrien	using a temporary file and move-if-change, and touch stamp-ofiles
599260484Sobrien	when done.
599360484Sobrien	(ofiles): Just depend upon stamp-ofiles.
599460484Sobrien	(stamp-piclist, piclist): New targets.
599560484Sobrien	($(SHLIB), $(SHLINK)): New targets.
599660484Sobrien	(targets.o, archures.o): Build twice if PICFLAG is set.
599760484Sobrien	(do_mostlyclean): Remove pic/*.o.
599860484Sobrien	(do_clean): Remove stamp-ofiles, $(SHLIB), $(SHLINK), piclist, and
599960484Sobrien	stamp-piclist.
600060484Sobrien	(do_distclean): Remove pic and stamp-picdir.
600160484Sobrien	(install): Install shared libraries.
600260484Sobrien	($(OFILES)): Depend upon stamp-picdir.
600360484Sobrien	(stamp-picdir): New target.
600460484Sobrien
600560484Sobrien	* libcoff-in.h: Add comment reminding people that libcoff.h is a
600660484Sobrien	generated file.
600760484Sobrien	* libcoff.h: Rebuild.
600860484Sobrien
600960484Sobrien	* elflink.h (elf_adjust_dynamic_symbol): Don't try to get the
601060484Sobrien	flavour of a section with no owner.
601160484Sobrien
601260484Sobrien	* elf32-mips.c (mips_elf_create_dynamic_sections): Clear
601360484Sobrien	ELF_LINK_NON_ELF flag.
601460484Sobrien	(mips_elf_create_got_section): Likewise.
601560484Sobrien
601660484Sobrien	* elf.c: Revert last change, since it breaks dynamic linking.
601760484Sobrien	* elf-bfd.h (struct elf_backend_data): Remove want_hdr_in_seg
601860484Sobrien	field.
601960484Sobrien	* elf32-mips.c (elf_backend_want_hdr_in_seg): Don't define.
602060484Sobrien	* elfxx-target.h (elf_backend_want_hdr_in_seg): Don't define.
602160484Sobrien	(elfNN_bed): Don't initialize want_hdr_in_seg field.
602260484Sobrien
602360484SobrienSun Feb  4 20:45:13 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
602460484Sobrien
602560484Sobrien	* elf.c (assign_file_positions_for_segments): If the backend does
602660484Sobrien	not want the elf header or the program headers in the address
602760484Sobrien	space, do not include them in the calculations.
602860484Sobrien
602960484Sobrien	* elf32-ppc.c (ppc_elf_additional_program_headers): New hook
603060484Sobrien	function to determine if we need additional program headers.
603160484Sobrien	(ppc_elf_modify_segment_map): Define as a NOP function for now.
603260484Sobrien	(ppc_elf_create_linker_section): .sdata2 is a read-only section.
603360484Sobrien
603460484SobrienSat Feb  3 23:00:03 1996  Ian Lance Taylor  <ian@cygnus.com>
603560484Sobrien
603660484Sobrien	* coffcode.h: Move today's libcoff.h change into coffcode.h.
603760484Sobrien
603860484SobrienSat Feb  3 15:43:44 1996  Fred Fish  <fnf@cygnus.com>
603960484Sobrien
604060484Sobrien	* libcoff.h (bfd_coff_link_add_one_symbol): Combine macro args
604160484Sobrien	back into one line.  Some compilers (sunos 4.1.3 for example)
604260484Sobrien	won't accept args split across more than one line.
604360484Sobrien
604460484SobrienFri Feb  2 11:42:15 1996  Steve Chamberlain  <sac@slash.cygnus.com>
604560484Sobrien
604660484Sobrien	* aclocal.m4 (BFD_BINARY_FOPEN): Understand cygwin32.
604760484Sobrien	* configure: Regenerate.
604860484Sobrien
604960484SobrienFri Feb  2 12:12:16 1996  Jeffrey A Law  (law@cygnus.com)
605060484Sobrien
605160484Sobrien	* elf32-hppa.c (elf32_hppa_backend_symbol_table_processing): Don't
605260484Sobrien	try to do arithmetic on a void *, cast it to a unsigned char * first.
605360484Sobrien
605460484SobrienThu Feb  1 16:04:06 1996  Ian Lance Taylor  <ian@cygnus.com>
605560484Sobrien
605660484Sobrien	* elf-bfd.h (ELF_LINK_NON_ELF): Define.
605760484Sobrien	* elf.c (_bfd_elf_link_hash_newfunc): Set elf_link_hash_flags to
605860484Sobrien	ELF_LINK_NON_ELF.
605960484Sobrien	* elflink.h (elf_link_add_object_symbols): Reset ELF_LINK_NON_ELF
606060484Sobrien	flag for a newly defined symbol.
606160484Sobrien	(NAME(bfd_elf,record_link_assignment)): Likewise.
606260484Sobrien	(elf_adjust_dynamic_symbol): If ELF_LINK_NON_ELF is set, try to
606360484Sobrien	set the DEF or REF_REGULAR flags correctly.
606460484Sobrien
606560484Sobrien	* Makefile.in (bfd-in2.h): Make bfd.h, not protos, in docdir.
606660484Sobrien	(libbfd.h, libcoff.h): Corresponding change.
606760484Sobrien
606860484Sobrien	* elf32-i386.c (elf_i386_check_relocs): Don't record a symbol with
606960484Sobrien	a PLT32 reloc as dynamic.
607060484Sobrien	(elf_i386_adjust_dynamic_symbol): If a symbol with a PLT32 reloc
607160484Sobrien	is not referenced by a dynamic object, and we are not making a
607260484Sobrien	shared object, then don't make a PLT entry.  If we do make a PLT
607360484Sobrien	entry, make sure the symbol has been recorded as dynamic.
607460484Sobrien
607560484SobrienWed Jan 31 17:23:32 1996  Steve Chamberlain  <sac@slash.cygnus.com>
607660484Sobrien
607760484Sobrien	* coff-i386.c (coff_i386_reloc_type_lookup): Add BFD_RELOC_32_PCREL.
607860484Sobrien	* config.bfd (i[345]86-*-win32): Becomes i[345]86-*-cygwin32.
607960484Sobrien	(powerpcle-*-cygwin32): New.
608060484Sobrien	* peicode.h (add_data_entry): Get address from vma.
608160484Sobrien
608260484SobrienWed Jan 31 16:23:57 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
608360484Sobrien
608460484Sobrien	* elflink.c (_bfd_elf_create_linker_section): If the symbol
608560484Sobrien	attached to the section has already been created as an undefined
608660484Sobrien	symbol, treat it as if it hasn't been created yet.
608760484Sobrien
608860484SobrienWed Jan 31 16:16:53 1996  Ian Lance Taylor  <ian@cygnus.com>
608960484Sobrien
609060484Sobrien	* elflink.h (elf_bfd_final_link): Don't output initial dummy
609160484Sobrien	symbol or section symbols if stripping all symbols and this is not
609260484Sobrien	a relocateable link.  Don't output the symbol string table if
609360484Sobrien	there are no symbols.
609460484Sobrien	(elf_link_flush_output_syms): Don't do anything if there are no
609560484Sobrien	symbols to flush.
609660484Sobrien
609760484SobrienWed Jan 31 12:55:49 1996  Richard Henderson  <rth@tamu.edu>
609860484Sobrien
609960484Sobrien	* coff-aux.c: New file.
610060484Sobrien	* hosts/m68kaux.h: New file.
610160484Sobrien	* config.bfd (m68*-apple-aux*): New target.
610260484Sobrien	* configure.in (m68*-apple-aux*): New native host.
610360484Sobrien	(m68kaux_coff_vec): New vector.
610460484Sobrien	* configure: Rebuild.
610560484Sobrien	* targets.c (m68kaux_coff_vec): Declare.
610660484Sobrien	* coffcode.h (bfd_coff_backend_data): Add field
610760484Sobrien	_bfd_coff_link_add_one_symbol.
610860484Sobrien	(bfd_coff_link_add_one_symbol): Define.
610960484Sobrien	(compare_arelent_ptr): New static function if TARG_AUX.
611060484Sobrien	(coff_write_relocs): If TARG_AUX, sort the relocs.
611160484Sobrien	(coff_write_object_contents): Set A/UX aouthdr magic number.
611260484Sobrien	(coff_link_add_one_symbol): Define if not defined.
611360484Sobrien	(bfd_coff_std_swap_table): Initialize new field.
611460484Sobrien	* libcoff.h: Rebuild.
611560484Sobrien	* cofflink.c (coff_link_add_symbols): Call
611660484Sobrien	bfd_coff_link_add_one_symbol rather than
611760484Sobrien	_bfd_generic_link_add_one_symbol.
611860484Sobrien	* coff-m68k.c (COFF_PAGE_SIZE): Don't define if already defined.
611960484Sobrien	* coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
612060484Sobrien	* coff-mips.c (mips_ecoff_backend_data): Likewise.
612160484Sobrien	* Makefile.in: Rebuild dependencies.
612260484Sobrien	(BFD32_BACKENDS): Add coff-aux.o.
612360484Sobrien	(BFD32_BACKENDS_CFILES): Add coff-aux.c.
612460484Sobrien
612560484SobrienWed Jan 31 11:37:46 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
612660484Sobrien
612760484Sobrien	* elf32-m68k.c (elf_m68k_relocate_section): Fix R_68K_GOT*
612860484Sobrien	relocation; ignore addend with R_68K_{GOT,PLT}*O relocation.
612960484Sobrien
613060484SobrienTue Jan 30 12:09:04 1996  Ian Lance Taylor  <ian@cygnus.com>
613160484Sobrien
613260484Sobrien	* Makefile.in (do_maintainer_clean): Remove $(srcdir)/bfd-in2.h,
613360484Sobrien	$(srcdir)/libbfd.h and $(srcdir)/libcoff.h.
613460484Sobrien	(maintainer-clean): Warn about deleting special files.
613560484Sobrien	(bfd-in2.h, libbfd.h, libcoff.h): New targets.
613660484Sobrien
613760484Sobrien	* elf32-hppa.c (elf32_hppa_relocate_section): Handle indirect and
613860484Sobrien	warning symbols correctly.
613960484Sobrien	* elf32-i386.c (elf_i386_relocate_section): Likewise.
614060484Sobrien	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
614160484Sobrien	* elf32-mips.c (mips_elf_relocate_section): Likewise.
614260484Sobrien	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
614360484Sobrien	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
614460484Sobrien	* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
614560484Sobrien
614660484Sobrien	* syms.c (_bfd_stab_section_find_nearest_line): Add casts to avoid
614760484Sobrien	warnings.
614860484Sobrien
614960484SobrienMon Jan 29 14:27:24 1996  Kim Knuttila  <krk@cygnus.com>
615060484Sobrien
615160484Sobrien	* libcoff-in.h: aligned newly exported names with bfd naming
615260484Sobrien	conventions. Removed an erroneous define of POWERPC_LE_PE.
615360484Sobrien 	* libcoff.h: Rebuild.
615460484Sobrien	* cofflink.c, coff-ppc.c: the above function name changes
615560484Sobrien
615660484SobrienMon Jan 29 13:06:28 1996  Ian Lance Taylor  <ian@cygnus.com>
615760484Sobrien
615860484Sobrien	From Basim Kadhim <kadhim@spock.cs.colorado.edu>:
615960484Sobrien	* ecoff.c (struct extsym_info): Define.
616060484Sobrien	(_bfd_ecoff_bfd_final_link): Pass a pointer to struct extsym_info
616160484Sobrien	to ecoff_link_write_external.
616260484Sobrien	(ecoff_link_write_external): Accept a struct extsym_info pointer.
616360484Sobrien	Strip symbols when appropriate.
616460484Sobrien
616560484Sobrien	Based on patches from Ronald F. Guilmette <rfg@monkeys.com>:
616660484Sobrien	* syms.c (BSF_OBJECT): Define.
616760484Sobrien	(bfd_print_symbol_vandf): Print 'O' for BSF_OBJECT.
616860484Sobrien	* bfd-in2.h: Rebuild.
616960484Sobrien	* elfcode.h (elf_slurp_symbol_table): Set BSF_OBJECT for an
617060484Sobrien	STT_OBJECT symbol.
617160484Sobrien	* elf.c (swap_out_syms): Only set type to STT_OBJECT if BSF_OBJECT
617260484Sobrien	is set.
617360484Sobrien
617460484Sobrien	* elf32-i386.c (elf_i386_relocate_section): If -Bsymbolic, when
617560484Sobrien	copying relocs into a shared object, treat a defined global symbol
617660484Sobrien	as a local symbol.
617760484Sobrien	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
617860484Sobrien	* elf32-mips.c (mips_elf_relocate_section): Likewise.
617960484Sobrien	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
618060484Sobrien
618160484Sobrien	* elflink.h (elf_link_add_object_symbols): Only set weakdef to a
618260484Sobrien	real defined symbol, not to a weak defined symbol.
618360484Sobrien
618460484SobrienMon Jan 29 11:34:36 1996  Kim Knuttila  <krk@cygnus.com>
618560484Sobrien
618660484Sobrien	* cofflink.c: removed the POWERPC_LE_PE hack, promoted some types
618760484Sobrien	and made a few static functions externs.
618860484Sobrien
618960484Sobrien	* coff-ppc.c (ppc_bfd_coff_final_link): new function, replaces the
619060484Sobrien	POWERPC_LE_PE hack in cofflink.
619160484Sobrien
619260484Sobrien	* libcoff-in.h: promoted the following from cofflink.c to allow
619360484Sobrien	_bfd_coff_final_link to be overridden -  STRING_SIZE_SIZE,
619460484Sobrien	coff_debug_merge_element, struct coff_debug_merge_type,
619560484Sobrien	coff_debug_merge_hash_entry, coff_debug_merge_hash_table,
619660484Sobrien	coff_debug_merge_hash_table_init,  coff_debug_merge_hash_table_free,
619760484Sobrien	coff_debug_merge_hash_lookup, coff_link_section_info,
619860484Sobrien	coff_final_link_info, coff_debug_merge_hash_newfunc,
619960484Sobrien	coff_write_global_sym, coff_link_input_bfd, coff_reloc_link_order.
620060484Sobrien
620160484Sobrien	* libcoff.h: re-gen'd
620260484Sobrien
620360484SobrienFri Jan 26 18:33:35 1996  Ian Lance Taylor  <ian@cygnus.com>
620460484Sobrien
620560484Sobrien	* syms.c: Include "bfdlink.h".
620660484Sobrien	(struct stab_find_info): Define.
620760484Sobrien	(_bfd_stab_section_find_nearest_line): New function.
620860484Sobrien	* libbfd-in.h (_bfd_stab_section_find_nearest_line): Declare.
620960484Sobrien	* libbfd.h: Rebuild.
621060484Sobrien	* elf-bfd.h (struct elf_obj_tdata): Add line_info field.
621160484Sobrien	* elf.c (_bfd_elf_find_nearest_line): Try calling
621260484Sobrien	_bfd_stab_section_find_nearest_line before searching the ELF
621360484Sobrien	symbol table.  Find the closest STT_FUNC symbol, not the last one.
621460484Sobrien	* libcoff-in.h (coff_data_type): Add line_info field.
621560484Sobrien 	* libcoff.h: Rebuild.
621660484Sobrien	* coffgen.c (coff_find_nearest_line): Try calling
621760484Sobrien	_bfd_stab_section_find_nearest_line before searching the COFF
621860484Sobrien	symbol table.
621960484Sobrien	* Makefile.in: Rebuild dependencies.
622060484Sobrien
622160484SobrienFri Jan 26 16:11:19 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
622260484Sobrien
622360484Sobrien	* elf32-ppc.c (R_PPC_EMB_SDA21 relocations): Make relocation size
622460484Sobrien	4 bytes, so we get the correct value when updating the register
622560484Sobrien	field in little endian mode.
622660484Sobrien
622760484SobrienThu Jan 25 12:14:16 1996  Ian Lance Taylor  <ian@cygnus.com>
622860484Sobrien
622960484Sobrien	* libcoff-in.h (struct xcoff_tdata): Remove toc_section and
623060484Sobrien	entry_section fields.  Add sntoc and snentry fields.
623160484Sobrien	* libcoff.h: Rebuild.
623260484Sobrien	* coffcode.h (coff_mkobject_hook): Initialize sntoc and snentry,
623360484Sobrien	not toc_section and entry_section (the COFF file does not have any
623460484Sobrien	sections at this point).
623560484Sobrien	(coff_write_object_contents): Set o_snentry and o_sntoc from
623660484Sobrien	snentry and sntoc rather than entry_section and toc_section.
623760484Sobrien	* coff-rs6000.c (xcoff_copy_private_bfd_data): Copy sntoc and
623860484Sobrien	snentry, not toc_section and entry_section.
623960484Sobrien	* xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't set
624060484Sobrien	entry_section from hentry.
624160484Sobrien	(xcoff_link_input_bfd): If a defined symbol has XCOFF_ENTRY set,
624260484Sobrien	set snenty.
624360484Sobrien	(xcoff_link_input_bfd): Set sntoc, not toc_section.
624460484Sobrien	(xcoff_write_global_symbol): Get toc_section from sntoc, rather
624560484Sobrien	than using toc_section directly.
624660484Sobrien
624760484Sobrien	* archures.c: Add missing `.' in enum bfd_architecture.
624860484Sobrien	* bfd-in2.h: Rebuild.
624960484Sobrien
625060484Sobrien	* config.bfd (i[345]86-*-sco*elf*): Use bfd_elf32_i386_vec.  From
625160484Sobrien	Robert Lipe <robertl@arnet.com>.
625260484Sobrien
625360484SobrienThu Jan 25 12:08:51 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
625460484Sobrien
625560484Sobrien	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Add .rela.sdata{,2}
625660484Sobrien	to sections we allocate.  Use bfd_zalloc to allocate initialial
625760484Sobrien	sections, not bfd_alloc.
625860484Sobrien	(ppc_elf_check_relocs): Remove BFD_ASSERTs for !shared from
625960484Sobrien	SDA{,2}I16 relocations.
626060484Sobrien	(ppc_elf_add_symbol_hook): Use the value of -G nn to determine
626160484Sobrien	whether to put something in .sbss or not.
626260484Sobrien	(ppc_elf_relocate_section): Add support for more relocations.  Add
626360484Sobrien	in sec->output_offset where appropriate.  Make error messages
626460484Sobrien	include the symbol name.
626560484Sobrien
626660484Sobrien	* elflink.c (_bfd_elf_create_linker_section): Lookup symbol before
626760484Sobrien	trying to add it to the symbol table, so _GLOBAL_OFFSET_TABLE_
626860484Sobrien	doesn't get redefined messages if -shared.
626960484Sobrien
627060484Sobrien	* elflink.h (elf_create_pointer_linker_section) Only bump RELA
627160484Sobrien	section if the rel_section field has been set up.
627260484Sobrien
627360484SobrienWed Jan 24 20:40:26 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
627460484Sobrien
627560484Sobrien	* elf32-ppc.c (ppc_elf_relocate_section): Fix typo in eabi
627660484Sobrien	relocations.
627760484Sobrien
627860484SobrienWed Jan 24 10:38:34 1996  Doug Evans  <dje@charmed.cygnus.com>
627960484Sobrien
628060484Sobrien	* elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Delete checking
628160484Sobrien	of flags, only flags used are controlled by mach number.  Bump up
628260484Sobrien	output file mach number to highest of input file mach numbers.
628360484Sobrien	(elf32_sparc_object_p): Watch for EF_SPARC_SUN_US1.
628460484Sobrien	(elf32_sparc_final_write_processing): Set EF_SPARC_SUN_US1 if v8plusa.
628560484Sobrien
628660484Sobrien	* config.bfd (sparc64-*-{sysv4*,solaris2*}): Comment out
628760484Sobrien	bfd_elf64_sparc_vec support.
628860484Sobrien
628960484SobrienTue Jan 23 14:33:05 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
629060484Sobrien
629160484Sobrien	* elf32-ppc.c (ppc_elf_copy_private_bfd_data): Don't complain if
629260484Sobrien	the embedded bit is set on some objects and not on others.  Just
629360484Sobrien	or it together.
629460484Sobrien	(ppc_elf_relocate_section): Implement R_PPC_EMB_{SDA21,RELSDA}
629560484Sobrien	relocations.
629660484Sobrien
629760484SobrienTue Jan 23 14:22:45 1996  Ian Lance Taylor  <ian@cygnus.com>
629860484Sobrien
629960484Sobrien	* coffcode.h (coff_new_section_hook): Don't try to align the
630060484Sobrien	.stabstr section.
630160484Sobrien
630260484Sobrien	* coffcode.h (coff_set_section_contents): Fix the handling of the
630360484Sobrien	.lib section to work even if the entire section contents are
630460484Sobrien	written at once.  From Gvran Uddeborg <gvran@uddeborg.pp.se> and
630560484Sobrien	Robert Lipe <robertl@arnet.com>.
630660484Sobrien
630760484SobrienMon Jan 22 18:45:51 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
630860484Sobrien
630960484Sobrien	* elflink.h (elf_finish_pointer_linker_section): Don't allocate
631060484Sobrien	memory here for contents.
631160484Sobrien
631260484Sobrien	* elf32-ppc.c (ppc_elf_relocate_section): Bump up _SDA_BASE_ and
631360484Sobrien	_SDA2_BASE_ by 32768.
631460484Sobrien	(ppc_elf_size_dynamic_sections): #if out PLT code which we haven't
631560484Sobrien	started using.  Allocate contents for .sdata and .sdata2 sections
631660484Sobrien	also.
631760484Sobrien	(ppc_elf_check_relocs): Use bfd_get_section_name in debug message,
631860484Sobrien	rather than _name.
631960484Sobrien	(ppc_elf_finish_dynamic_symbol): Remove code that attempted to
632060484Sobrien	size _SDA{,2}_BASE_.
632160484Sobrien	(ppc_elf_relocate_section): Change how sdata{,2} relocations are
632260484Sobrien	done.
632360484Sobrien
632460484SobrienMon Jan 22 08:52:04 1996  Doug Evans  <dje@charmed.cygnus.com>
632560484Sobrien
632660484Sobrien	* elflink.h (elf_finish_pointer_linker_section): Fix typo.
632760484Sobrien
632860484Sobrien	* archures.c (bfd_mach_sparc_v9): Renamed from bfd_mach_sparc64.
632960484Sobrien	(bfd_mach_sparc_{v8plus,v8plusa}): Define.
633060484Sobrien	(bfd_mach_sparc_v9a): Define.
633160484Sobrien	(bfd_mach_sparc_v9_p): Define.
633260484Sobrien	* bfd-in2.h: Regenerated.
633360484Sobrien	* aoutx.h (aout,machine_type): bfd_mach_sparc64 renamed to
633460484Sobrien	bfd_mach_sparc_v9.
633560484Sobrien	* elf64-sparc.c (sparc64_elf_object_p): Likewise.
633660484Sobrien	* config.bfd (sparc64-*-sysv4*,sparc64-*-solaris2*): Set targ_defvec
633760484Sobrien	to bfd_elf32_sparc_vec.
633860484Sobrien	* cpu-sparc.c (arch_info_struct): Renamed from sparc_arch_info.
633960484Sobrien	Add v8plus{,a} support.
634060484Sobrien	Add v9a support.
634160484Sobrien	(sparc_compatible): New function.
634260484Sobrien	* elf32-sparc.h: #include "elf/sparc.h".
634360484Sobrien	(elf32_sparc_merge_private_bfd_data, elf32_sparc_object_p,
634460484Sobrien	elf32_sparc_final_write_processing): New functions.
634560484Sobrien	(bfd_elf32_bfd_merge_private_bfd_data, elf_backend_object_p,
634660484Sobrien	elf_backend_final_write_processing): Define.
634760484Sobrien
634860484SobrienMon Jan 22 11:21:51 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
634960484Sobrien
635060484Sobrien	* elf-bfd.h (struct elf_link_hash_entry): Add
635160484Sobrien	linker_section_pointer field.
635260484Sobrien	(enum elf_linker_section_enum): Enumeration for new way of
635360484Sobrien	creating linker dynamic sections and symbols.
635460484Sobrien	(elf_linker_section{,_pointers}): New structures for creating
635560484Sobrien	dynamic sections and symbols.
635660484Sobrien	(elf_obj_tdata): Add linker_section_pointers and linker_section
635760484Sobrien	fields.
635860484Sobrien	(elf_local_ptr_offsets,elf_linker_section): New accessor macros.
635960484Sobrien	(_bfd_elf_create_linker_section): New declarations.
636060484Sobrien	(_bfd_elf_find_pointer_linker_section): Ditto.
636160484Sobrien	(bfd_elf{32,64}_{create,finish}_pointer_linker_section): Ditto.
636260484Sobrien	(_bfd_elf_make_linker_section_rela): Ditto.
636360484Sobrien
636460484Sobrien	* elf.c (_bfd_elf_link_hash_newfunc): Initialize new fields.
636560484Sobrien
636660484Sobrien	* elf32-ppc.c (ppc_elf_create_dynamic_sections): Delete.
636760484Sobrien	(ppc_elf_create_linker_section): New function to create the
636860484Sobrien	sections .got, .sdata, and .sdata2.
636960484Sobrien	(ppc_elf_size_dynamic_sections): Zap .rela.{sdata,sdata2} if
637060484Sobrien	needed.
637160484Sobrien	(ppc_elf_check_relocs): Support more of the eabi relocations.
637260484Sobrien	(ppc_elf_relocate_section): Ditto.
637360484Sobrien	(ppc_elf_finish_dynamic_symbols): Adjust _SDA{,2}_BASE_ by 32768
637460484Sobrien	if the .sdata{,2} + .sbss{,2} section size is > 32k.
637560484Sobrien
637660484Sobrien	* elflink.h (elf_create_pointer_linker_section): New function to
637760484Sobrien	create initialized pointers in dynamic linker sections.
637860484Sobrien	(elf_finish_pointer_linker_section): Actually intialize the
637960484Sobrien	pointers created above.
638060484Sobrien
638160484Sobrien	* elfcode.h (bfd_elf{32,64}_create_pointer_linker_section): New
638260484Sobrien	macros to provide both 32 and 64 bit versions of
638360484Sobrien	elf_create_pointer_linker_section.
638460484Sobrien	(bfd_elf{32,64}_finish_pointer_linker_section): New macros to
638560484Sobrien	provide both 32 and 64 bit versions of
638660484Sobrien	elf_finish_pointer_linker_section.
638760484Sobrien
638860484Sobrien	* elflink.c (_bfd_elf_create_linker_section): New function to
638960484Sobrien	create a linker section.
639060484Sobrien	(_bfd_elf_find_pointer_linker_section): Find a unique pointer to a
639160484Sobrien	given address in the linker pointer offsets created for a given
639260484Sobrien	symbol.
639360484Sobrien	(_bfd_elf_make_linker_section_rela): Make a RELA section
639460484Sobrien	corresponding to the generated linker section.
639560484Sobrien
639660484SobrienSat Jan 20 08:36:10 1996  Doug Evans  <dje@canuck.cygnus.com>
639760484Sobrien
639860484Sobrien	* elf32-sparc.c (ELF_MACHINE_ALT1): Define.
639960484Sobrien
640060484SobrienThu Jan 18 18:25:34 1996  Kim Knuttila  <krk@cygnus.com>
640160484Sobrien
640260484Sobrien	* coff-ppc.c (coff_ppc_relocate_section): changed TOCDEFN relocs.
640360484Sobrien	(coff_ppc_relocate_section): Handle special values for gcc built dlls.
640460484Sobrien	(dump_toc): fix diagnosing code to identify out-of-toc-bounds entries.
640560484Sobrien	Also begin the toc at 4 as an eye catcher ('31313131' marks the first
640660484Sobrien	toc entry in an objdump) for now.
640760484Sobrien	(ppc_do_last, ppc_get_last): New function - needed to save processing
640860484Sobrien	the toc owner to the end.
640960484Sobrien	(ppc_coff_swap_sym_in_hook): Removed an incorrect hack for doing the
641060484Sobrien	toc owner last.
641160484Sobrien
641260484Sobrien	* cofflink.c (_bfd_coff_final_link): Added a new hack to keep the
641360484Sobrien	toc owner from being done till last. Must define POWERPC_LE_PC
641460484Sobrien	to enable it.
641560484Sobrien
641660484Sobrien	* coffcode.h (coff_set_alignment_hook): alignment setting for .stab
641760484Sobrien
641860484Sobrien	* peicode.h (coff_swap_scnhdr_out): set section flags for stab/str
641960484Sobrien	to INFO.
642060484Sobrien	(coff_swap_aouthdr_out): Removed a non-working hack for computing the
642160484Sobrien	SizeOfImage for PowerPC. Ignore the size of the .junk section.
642260484Sobrien
642360484SobrienThu Jan 18 17:42:12 1996  Ian Lance Taylor  <ian@cygnus.com>
642460484Sobrien
642560484Sobrien	* elfcore.h: Include <signal.h> before <sys/procfs.h>.
642660484Sobrien
642760484SobrienWed Jan 17 12:40:14 1996  Ian Lance Taylor  <ian@cygnus.com>
642860484Sobrien
642960484Sobrien	* cpu-powerpc.c (arch_info_struct): Change last entry to not point
643060484Sobrien	back to first.
643160484Sobrien	(bfd_powerpc_arch): Point at first entry in arch_info_struct.
643260484Sobrien
643360484SobrienTue Jan 16 15:10:49 1996  Ian Lance Taylor  <ian@cygnus.com>
643460484Sobrien
643560484Sobrien	* elf.c (assign_file_positions_for_segments): Don't increment file
643660484Sobrien	offset for a segment which contains no loadable sections.
643760484Sobrien
643860484SobrienMon Jan 15 17:46:27 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
643960484Sobrien
644060484Sobrien	* reloc.c: Add new PowerPC relocations.
644160484Sobrien	* {bfd-in2,libbfd}.h: Regenerate.
644260484Sobrien
644360484Sobrien	* elf32-ppc.c (ppc_elf_howto_raw): Add more PPC relocations.
644460484Sobrien	(ppc_elf_reloc_type_lookup): Lookup new relocations.
644560484Sobrien
644660484SobrienMon Jan 15 14:29:44 1996  Ian Lance Taylor  <ian@cygnus.com>
644760484Sobrien
644860484Sobrien	* aoutx.h (howto_table_ext): Fix RELOC_BASE10 and RELOC_BASE22
644960484Sobrien	entries.
645060484Sobrien
645160484Sobrien	* sunos.c (sunos_scan_ext_relocs): Don't fail assert if
645260484Sobrien        info->shared.
645360484Sobrien
645460484Sobrien	* coffgen.c (coff_find_nearest_line): Don't try to cache
645560484Sobrien	information in sections that are not owned by a BFD.  From Richard
645660484Sobrien	Henderson <richard@atheist.tamu.edu>.
645760484Sobrien
645860484Sobrien	* elf32-mips.c: Numerous changes to dynamic linking code, mostly
645960484Sobrien	from Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>.
646060484Sobrien	* elflink.h (elf_link_output_extsym): Remove special check for
646160484Sobrien	_rld_new_interface.
646260484Sobrien
646360484Sobrien	* ecoffswap.h: Add prototypes for static functions.
646460484Sobrien
646560484SobrienSun Jan 14 21:36:08 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
646660484Sobrien
646760484Sobrien	* elf32-ppc.c (ppc_elf_{unsupported,std}_reloc): Remove functions.
646860484Sobrien	(ppc_elf_howto_raw): Remove ppc_elf_{unsupported,std}_reloc
646960484Sobrien	references.
647060484Sobrien	(ppc_elf_relocate_section):  No longer allow .sdata/.sbss sections
647160484Sobrien	to satisfy a TOC16 relocation. 	Rewrite unsupported relocation
647260484Sobrien	support.  Begin support for R_PPC_SDA{2,}REL.
647360484Sobrien
647460484SobrienSat Jan 13 09:36:52 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
647560484Sobrien
647660484Sobrien	* elf32-ppc.c (ppc_elf_create_dynamic_sections): New function to
647760484Sobrien	create the .got and .got.neg sections.
647860484Sobrien	(ppc_elf_size_dynamic_sections): Call it.
647960484Sobrien	(ppc_elf_check_relocs): Call it.
648060484Sobrien	(ppc_elf_size_dynamic_sections): Support .got.neg, just like .got.
648160484Sobrien	(ppc_elf_check_relocs): Add error messages for relocations we
648260484Sobrien	don't yet support.  Do not include R_PPC_SDAREL16 like a GOT
648360484Sobrien	relocation.
648460484Sobrien
648560484SobrienFri Jan 12 15:27:59 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
648660484Sobrien
648760484Sobrien	* elf32-ppc.c (ppc_elf_fake_sections): Define, and handle the new
648860484Sobrien	section flags for V.4 and eabi.
648960484Sobrien
649060484SobrienFri Jan 12 13:59:16 1996  Ian Lance Taylor  <ian@cygnus.com>
649160484Sobrien
649260484Sobrien	* elf.c (assign_file_positions_for_segments): If a segment
649360484Sobrien	contains no sections, don't mark it as readable.
649460484Sobrien
649560484Sobrien	* elf-bfd.h (_bfd_elf_section_from_bfd_section): Declare.
649660484Sobrien	* elfcode.h (_bfd_elf_section_from_bfd_section): Don't declare.
649760484Sobrien
649860484Sobrien	* elf.c (_bfd_elf_print_private_bfd_data): Dump contents of
649960484Sobrien	dynamic section, if there is one.
650060484Sobrien	* elf-bfd.h (struct elf_size_info): Add swap_dyn_in field.
650160484Sobrien	(bfd_elf32_swap_dyn_in): Change type of second parameter to PTR.
650260484Sobrien	(bfd_elf64_swap_dyn_in): Likewise.
650360484Sobrien	* elfcode.h (elf_swap_dyn_in): Change type of second parameter to
650460484Sobrien	PTR.
650560484Sobrien	(NAME(_bfd_elf,size_info)): Initialize swap_dyn_in field.
650660484Sobrien
650760484Sobrien	* elf32-i386.c (elf_i386_size_dynamic_sections): Don't create a
650860484Sobrien	DT_TEXTREL entry because of .rel.plt.  From Martin Pirker
650960484Sobrien	<pirker@eiunix.tuwien.ac.at>.
651060484Sobrien
651160484SobrienThu Jan 11 17:06:14 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
651260484Sobrien
651360484Sobrien	* section.c (SEC_{EXCLUDE,SORT_ENTRIES}): New section flags for
651460484Sobrien	PowerPC V.4 and eabi.
651560484Sobrien 	* bfd-in2.h: Regenerate.
651660484Sobrien	* libfd.h: Regenerate.
651760484Sobrien
651860484Sobrien	* elfxx-target.h (TARGET_{BIG,LITTLE}_SYM): Add new flags.
651960484Sobrien
652060484Sobrien	* elf32-ppc.c (ppc_elf_section_from_shdr): Support SHT_ORDERED
652160484Sobrien	section type and SHF_EXCLUDE section flag, turning them into the
652260484Sobrien	appropriate bfd section flag.
652360484Sobrien
652460484SobrienThu Jan 11 11:23:30 1996  Ian Lance Taylor  <ian@cygnus.com>
652560484Sobrien
652660484Sobrien	* xcofflink.c (xcoff_link_add_symbols): Create the special
652760484Sobrien	sections if we see a DYNAMIC object, in case that is the only
652860484Sobrien	XCOFF input object we see.
652960484Sobrien
653060484Sobrien	* elf32-mips.c: Extensive changes for a start at dynamic linking
653160484Sobrien	support, from Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>.
653260484Sobrien
653360484Sobrien	* elf-bfd.h (struct elf_backend_data): Add type_change_ok field.
653460484Sobrien	(struct elf_backend_data): Remove
653560484Sobrien	elf_backend_create_program_headers field.  Add
653660484Sobrien	elf_backend_additional_program_headers and
653760484Sobrien	elf_backend_modify_segment_map fields.
653860484Sobrien	* elfxx-target.h (elf_backend_type_change_ok): Define if not
653960484Sobrien	defined.
654060484Sobrien	(elf_backend_additional_program_headers): Likewise.
654160484Sobrien	(elf_backend_modify_segment_map): Likewise.
654260484Sobrien	(elf_backend_create_program_headers): Don't define.
654360484Sobrien	(elfNN_bed): Change to account for field changes.
654460484Sobrien	* elf.c (assign_file_positions_for_segments): Call new
654560484Sobrien	modify_segment_map backend function.  Don't call old
654660484Sobrien	create_program_headers backend function.
654760484Sobrien	(get_program_header_size): Call additional_program_headers rather
654860484Sobrien	than create_program_headers.
654960484Sobrien	* elflink.h (elf_link_add_object_symbols): Initialize
655060484Sobrien	type_change_ok from new backend field.
655160484Sobrien	(elf_link_output_extsym): Don't warn if _rld_new_interface is
655260484Sobrien	defined.
655360484Sobrien	(elf_reloc_link_order): Treat a reloc against a defined symbol as
655460484Sobrien	a reloc against the appropriate section.
655560484Sobrien
655660484Sobrien	* elf-bfd.h (struct bfd_elf_section_data): Add tdata field.
655760484Sobrien	(struct elf_obj_tdata): Rename ppc_flags_init field to flags_init.
655860484Sobrien	(elf_flags_init): Rename from elf_ppc_flags_init.
655960484Sobrien	* elf32-ppc.c (ppc_elf_set_private_flags): Use elf_flags_init, not
656060484Sobrien	elf_ppc_flags_init.
656160484Sobrien	(ppc_elf_copy_private_bfd_data): Likewise.
656260484Sobrien	(ppc_elf_merge_private_bfd_data): Likewise.
656360484Sobrien
656460484Sobrien	* elf32-m68k.c (howto_table): Change src_mask to 0 for all
656560484Sobrien	relocation entries.
656660484Sobrien
656760484SobrienTue Jan  9 15:22:53 1996  David Mosberger-Tang  <davidm@azstarnet.com>
656860484Sobrien
656960484Sobrien	* coff-alpha.c (alpha_relocate_section): During final link, allow
657060484Sobrien 	output .lita section to be bigger than 64k by adjusting gp value
657160484Sobrien 	on a per-input section basis.
657260484Sobrien	* libecoff.h (struct ecoff_tdata): Add issued_multiple_gp_warning
657360484Sobrien	field.
657460484Sobrien	(struct ecoff_section_tdata): Add gp field.
657560484Sobrien
657660484SobrienTue Jan  9 12:00:36 1996  Ian Lance Taylor  <ian@cygnus.com>
657760484Sobrien
657860484Sobrien	Handle Alpha ECOFF changes in OSF/1 3.2.
657960484Sobrien	* libecoff.h (struct ecoff_backend_data): Add get_elt_at_filepos
658060484Sobrien	field.
658160484Sobrien	* coff-alpha.c: Include "aout/ar.h".
658260484Sobrien	(alpha_ecoff_get_relocated_section_contents): Don't require an
658360484Sobrien	ALPHA_R_IGNORE reloc after an ALPHA_R_GPDISP reloc, since OSF/1
658460484Sobrien	3.2 doesn't generate one.
658560484Sobrien	(alpha_relocate_section): Likewise.
658660484Sobrien	(alpha_ecoff_slurp_armap): Define.
658760484Sobrien	(alpha_ecoff_slurp_extended_name_table): Define.
658860484Sobrien	(alpha_ecoff_construct_extended_name_table): Define.
658960484Sobrien	(alpha_ecoff_truncate_arname): Define.
659060484Sobrien	(alpha_ecoff_write_armap): Define.
659160484Sobrien	(alpha_ecoff_generic_stat_arch_elt): Define.
659260484Sobrien	(alpha_ecoff_update_armap_timestamp): Define.
659360484Sobrien	(ARFZMAG): Define.
659460484Sobrien	(alpha_ecoff_read_ar_hdr): New static function.
659560484Sobrien	(alpha_ecoff_get_elt_at_filepos): New static function.
659660484Sobrien	(alpha_ecoff_openr_next_archived_file): New static function.
659760484Sobrien	(alpha_ecoff_get_elt_at_index): New static function.
659860484Sobrien	(alpha_ecoff_backend_data): Initialize get_elt_at_filepos field.
659960484Sobrien	(ecoffalpha_little_vec): Change BFD_JUMP_TABLE_ARCHIVE from
660060484Sobrien	_bfd_ecoff to alpha_ecoff.
660160484Sobrien	* ecoff.c (ecoff_link_add_archive_symbols): Use get_elt_at_filepos
660260484Sobrien	field from backend structure, rather than always calling
660360484Sobrien	_bfd_get_elt_at_filepos.
660460484Sobrien	* coff-mips.c (mips_ecoff_backend_data): Initialize
660560484Sobrien	get_elt_at_filepos field.
660660484Sobrien	* archive.c (_bfd_generic_read_ar_hdr_mag): New function, copied
660760484Sobrien	from _bfd_generic_read_ar_hdr with minor changes.
660860484Sobrien	(_bfd_generic_read_ar_hdr): Use _bfd_generic_read_ar_hdr_mag.
660960484Sobrien	* libbfd-in.h (_bfd_generic_read_ar_hdr_mag): Declare.
661060484Sobrien	* libbfd.h: Rebuild.
661160484Sobrien
661260484Sobrien	* bfd-in.h (BFD_IN_MEMORY): Define.
661360484Sobrien	* libbfd-in.h (struct bfd_in_memory): Define.
661460484Sobrien	* libbfd.c (bfd_read): Handle BFD_IN_MEMORY flag.
661560484Sobrien	(bfd_get_file_window): Don't try to map a BFD_IN_MEMORY file.
661660484Sobrien	(bfd_write, bfd_stat): Abort if BFD_IN_MEMORY is set.
661760484Sobrien	(bfd_tell, bfd_flush, bfd_seek): Handle BFD_IN_MEMORY flag.
661860484Sobrien	* bfd.c (struct _bfd): Change iostream field from char * to PTR.
661960484Sobrien	(bfd_get_size): Handle BFD_IN_MEMORY flag.
662060484Sobrien	* cache.c (bfd_cache_close): Ignore BFD_IN_MEMORY files.
662160484Sobrien	(bfd_open_file): Cast to PTR, not char *, when setting iostream.
662260484Sobrien	(bfd_cache_lookup_worker): Abort if BFD_IN_MEMORY is set.
662360484Sobrien	* opncls.c (bfd_fdopenr): Cast to PTR, not char *, when setting
662460484Sobrien	iostream.
662560484Sobrien	(bfd_openstreamr): Likewise.
662660484Sobrien	* aoutx.h (NAME(aout,some_aout_object_p)): Only fstat iostream if
662760484Sobrien	BFD_IN_MEMORY is not set.
662860484Sobrien	* riscix.c (riscix_some_aout_object_p): Likewise.
662960484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
663060484Sobrien
663160484Sobrien	* targets.c (bfd_target): Add _bfd_get_elt_at_index field.
663260484Sobrien	(BFD_JUMP_TABLE_ARCHIVE): Add _get_elt_at_index.
663360484Sobrien	(bfd_get_elt_at_index): Define.
663460484Sobrien	* archive.c (_bfd_generic_get_elt_at_index): Rename from
663560484Sobrien	bfd_get_elt_at_index.  Change index parameter from int to
663660484Sobrien	symindex.
663760484Sobrien	* libbfd-in.h (_bfd_generic_get_elt_at_index): Declare.
663860484Sobrien	(_bfd_noarchive_get_elt_at_index): Define.
663960484Sobrien	(_bfd_archive_bsd_get_elt_at_index): Define.
664060484Sobrien	(_bfd_archive_coff_get_elt_at_index): Define.
664160484Sobrien	* bfd-in2.h, libbfd.h: Rebuild.
664260484Sobrien	* aout-target.h (MY_get_elt_at_index): Define if not defined.
664360484Sobrien	* coff-rs6000.c (xcoff_get_elt_at_index): Define.
664460484Sobrien	* ieee.c (ieee_get_elt_at_index): Define.
664560484Sobrien	* libecoff.h (_bfd_ecoff_get_elt_at_index): Define.
664660484Sobrien	* oasys.c (oasys_get_elt_at_index): Define.
664760484Sobrien	* som.c (som_get_elt_at_index): Define.
664860484Sobrien
664960484Sobrien	* ecoff.c (_bfd_ecoff_find_nearest_line): Don't restrict line
665060484Sobrien	numbers to the .text section.
665160484Sobrien
665260484SobrienMon Jan  8 17:00:57 1996  Ian Lance Taylor  <ian@cygnus.com>
665360484Sobrien
665460484Sobrien	* ieee.c (ieee_write_debug_part): Change return type to boolean.
665560484Sobrien	If there is a SEC_DEBUGGING section, get the contents of the debug
665660484Sobrien	information part from it.
665760484Sobrien	(ieee_set_section_contents): Store the contents of a SEC_DEBUGGING
665860484Sobrien	section in memory.
665960484Sobrien	(ieee_write_object_contents): Check ieee_write_debug_part return.
666060484Sobrien
666160484SobrienThu Jan  4 17:12:37 1996  Fred Fish  <fnf@cygnus.com>
666260484Sobrien
666360484Sobrien	* config.bfd (i[345]86-*-freebsd*): Add target.
666460484Sobrien	* configure.in (i386freebsd_vec): Add vec.
666560484Sobrien	* configure: Regenerate.
666660484Sobrien	* Makefile.in (BFD32_BACKENDS): Add i386freebsd.o.
666760484Sobrien	(BFD32_BACKENDS_CFILES): Add i386freebsd.c.
666860484Sobrien	Rebuild dependencies..
666960484Sobrien	* freebsd.h: New file.
667060484Sobrien	* i386freebsd.c: New file.
667160484Sobrien	* targets.c (i386freebsd_vec): Declare.
667260484Sobrien	(bfd_target_vector): Add i386freebsd_vec.
667360484Sobrien	* i386linux.c (SEGMENT_SIZE): Define as TARGET_PAGE_SIZE
667460484Sobrien	* i386netbsd.c (SEGMENT_SIZE):  Define as TARGET_PAGE_SIZE
667560484Sobrien
667660484SobrienThu Jan  4 16:27:46 1996  Ian Lance Taylor  <ian@cygnus.com>
667760484Sobrien
667860484Sobrien	* ieee.c (ieee_slurp_debug): New static function.
667960484Sobrien	(ieee_object_p): Call it.
668060484Sobrien	(ieee_slurp_section_data): Skip debugging sections.
668160484Sobrien	(ieee_get_reloc_upper_bound): Likewise.
668260484Sobrien	(ieee_get_section_contents): Likewise.
668360484Sobrien	(ieee_canonicalize_reloc): Likewise.
668460484Sobrien	(ieee_write_section_part): Likewise.
668560484Sobrien	(ieee_write_debug_part): Likewise.
668660484Sobrien	(ieee_write_data_part): Likewise.
668760484Sobrien	(init_for_output): Likewise.
668860484Sobrien
668960484SobrienWed Jan  3 19:42:47 1996  Michael Meissner  <meissner@wogglebug.tiac.net>
669060484Sobrien
669160484Sobrien	* elf32-ppc.c (ppc_elf_relocate_section): Make @GOT relocations
669260484Sobrien	work.
669360484Sobrien	(ppc_elf_howto_raw): Just use bfd_elf_generic_reloc for all howto
669460484Sobrien	relocs, since ppc_elf_relocate_section handles the linker case.
669560484Sobrien	(ppc_elf_{addr16_ha,got16,toc16,brtaken}_reloc): Delete, no longer
669660484Sobrien	used.
669760484Sobrien	(ppc_elf_{addr16_ha,got16,toc16,brtaken}_inner): Merge these into
669860484Sobrien	ppc_elf_relocate_section since that is now the only caller.
669960484Sobrien	(ppc_elf_relocate_section): Ditto.
670060484Sobrien
670160484SobrienWed Jan  3 15:11:30 1996  Ian Lance Taylor  <ian@cygnus.com>
670260484Sobrien
670360484Sobrien	* coffcode.h (coff_write_object_contents): If we don't know the
670460484Sobrien	section of the entry point for an XCOFF executable, always set the
670560484Sobrien	entry address to -1.
670660484Sobrien
670760484SobrienTue Jan  2 14:17:15 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
670860484Sobrien
670960484Sobrien	* elf.c (bfd_section_from_shdr): Add support for note sections.
671060484Sobrien
671160484SobrienTue Jan  2 13:10:25 1996  Ian Lance Taylor  <ian@cygnus.com>
671260484Sobrien
671360484Sobrien	* bfd-in.h (struct _symbol_info): Add stab_type field.
671460484Sobrien	* bfd-in2.h: Rebuild.
671560484Sobrien	* aoutx.h (NAME(aout,get_symbol_info)): Set stab_type.
671660484Sobrien
671760484Sobrien	* elf32-ppc.c: Remove trailing newline from calls to
671860484Sobrien        _bfd_error_handler.
671960484Sobrien	(ppc_elf_merge_private_bfd_data): Only warn about endianness
672060484Sobrien	difference if target endianness is known.
672160484Sobrien
672260484SobrienFor older changes see ChangeLog-9495
672360484Sobrien
672460484SobrienLocal Variables:
672560484Sobrienmode: change-log
672660484Sobrienleft-margin: 8
672760484Sobrienfill-column: 74
672860484Sobrienversion-control: never
672960484SobrienEnd:
6730