ChangeLog-9495 revision 60484
160484SobrienThu Dec 21 12:43:49 1995 Michael Meissner <meissner@tiktok.cygnus.com> 260484Sobrien 360484Sobrien * elf32-ppc.c (ppc_elf_howto_raw): Add a phony reloc to handle the 460484Sobrien old style TOC16 references without using R_PPC_GOT. 560484Sobrien (ppc_reloc_type): Ditto. 660484Sobrien (ppc_elf_reloc_type_lookup): Add support for TOC16. 760484Sobrien (ppc_elf_toc16_inner): Renamed from ppc_elf_got16_inner. 860484Sobrien (ppc_elf_toc16_reloc): Renamed from ppc_elf_toc16_reloc. 960484Sobrien (ppc_elf_got16_{inner,reloc}): Stubs for real GOT support. 1060484Sobrien (ppc_elf_check_relocs): New function for GOT/PLT support that is 1160484Sobrien work in progress. 1260484Sobrien (ppc_elf_adjust_dynamic_symbol): Ditto. 1360484Sobrien (ppc_elf_adjust_dynindx): Ditto. 1460484Sobrien (ppc_elf_size_dynamic_sections): Ditto. 1560484Sobrien (ppc_elf_finish_dynamic_symbol): Ditto. 1660484Sobrien (ppc_elf_finish_dynamic_sections): Ditto. 1760484Sobrien (ELF_DYNAMIC_INTERPRETER): Define. 1860484Sobrien 1960484SobrienWed Dec 20 19:14:18 1995 Ken Raeburn <raeburn@cygnus.com> 2060484Sobrien 2160484Sobrien * elf.c (copy_private_bfd_data): When attaching sections to 2260484Sobrien segments ignore sections that won't be allocated. Patch from 2360484Sobrien Andreas Schwab. 2460484Sobrien 2560484SobrienTue Dec 19 20:01:43 1995 Ken Raeburn <raeburn@cygnus.com> 2660484Sobrien 2760484Sobrien * config.bfd: Match on m68k-cbm-* only if OS doesn't match 2860484Sobrien anything else. 2960484Sobrien 3060484SobrienTue Dec 19 16:38:59 1995 Ian Lance Taylor <ian@cygnus.com> 3160484Sobrien 3260484Sobrien * coff-i960.c (CALC_ADDEND): Define. 3360484Sobrien (coff_i960_relocate_section): Add the input section VMA to the 3460484Sobrien addend for PC relative relocs. 3560484Sobrien 3660484SobrienSun Dec 17 20:11:55 1995 Kim Knuttila <krk@cygnus.com> 3760484Sobrien 3860484Sobrien * peicode.h (pe_print_pdata): Must test the entire entry for zero 3960484Sobrien to correctly terminate. 4060484Sobrien 4160484SobrienFri Dec 15 12:05:57 1995 Ian Lance Taylor <ian@cygnus.com> 4260484Sobrien 4360484Sobrien * targets.c (enum bfd_endian): Define. 4460484Sobrien (bfd_target): Rename byteorder_big_p to byteorder, and change it 4560484Sobrien from boolean to enum bfd_endian. Change header_byteorder_big_p 4660484Sobrien correspondingly. 4760484Sobrien * bfd-in.h (bfd_big_endian, bfd_little_endian): New macros. 4860484Sobrien (bfd_header_big_endian, bfd_header_little_endian): New macros. 4960484Sobrien * bfd-in2.h: Rebuild. 5060484Sobrien * All targets: Change initialization of byteorder and 5160484Sobrien header_byteorder to use enum bfd_endian values rather than 5260484Sobrien booleans. 5360484Sobrien * All files: Change all references to byteorder_big_p and 5460484Sobrien header_byteorder_big_p to use new bfd_*_endian macros. 5560484Sobrien 5660484Sobrien * coffgen.c (make_a_section_from_file): Set lma to s_paddr, not 5760484Sobrien s_vaddr. 5860484Sobrien * coffcode.h (coff_write_object_contents): Set s_paddr to lma, not 5960484Sobrien vma. 6060484Sobrien * ecoff.c (_bfd_ecoff_write_object_contents): Likewise. 6160484Sobrien 6260484SobrienFri Dec 15 07:32:09 1995 steve chamberlain <sac@slash.cygnus.com> 6360484Sobrien 6460484Sobrien * pe[i]-i386.c (TARGET_UNDERSCORE): Define to '_'. 6560484Sobrien 6660484SobrienThu Dec 14 13:45:37 1995 Ian Lance Taylor <ian@cygnus.com> 6760484Sobrien 6860484Sobrien * ieee.c: Lots of minor cleanups. Make many functions return 6960484Sobrien errors rather than calling abort. Also: 7060484Sobrien (ieee_write_twobyte): Remove; change callers to call existing 7160484Sobrien ieee_write_2bytes function. 7260484Sobrien (ieee_write_expression): Don't output the section twice when 7360484Sobrien outputting a local symbol. Don't emit an extraneous zero if there 7460484Sobrien is only one term. 7560484Sobrien (ieee_slurp_sections): Set the lma as well as the vma. 7660484Sobrien (ieee_archive_p): Use bfd_alloc_grow rather than an obstack. 7760484Sobrien 7860484Sobrien * ihex.c (ihex_set_arch_mach): Don't accept any architecture, just 7960484Sobrien a recognized one or bfd_arch_unknown. 8060484Sobrien (ihex_get_symtab_upper_bound): Define as bfd_0l, to permit objcopy 8160484Sobrien to succeed. 8260484Sobrien (ihex_get_symtab): Likewise. 8360484Sobrien 8460484SobrienWed Dec 13 15:44:06 1995 Ian Lance Taylor <ian@cygnus.com> 8560484Sobrien 8660484Sobrien * aoutx.h: Include <ctype.h>. 8760484Sobrien (struct aout_link_includes_table): Define. 8860484Sobrien (struct aout_link_includes_totals): Define. 8960484Sobrien (struct aout_link_includes_entry): Define. 9060484Sobrien (aout_link_includes_lookup): Define macro. 9160484Sobrien (struct aout_final_link_info): Add includes field. 9260484Sobrien (aout_link_includes_newfunc): New static function. 9360484Sobrien (NAME(aout,final_link)): Initialize includes hash table. 9460484Sobrien (aout_link_write_symbols): Eliminate duplicate N_BINCL entries. 9560484Sobrien 9660484SobrienWed Dec 13 10:52:14 1995 Stan Shebs <shebs@andros.cygnus.com> 9760484Sobrien 9860484Sobrien * mpw-config.in: Match on mips-*-* instead of mips-idt-ecoff. 9960484Sobrien 10060484SobrienWed Dec 13 11:07:45 1995 Kim Knuttila <krk@cygnus.com> 10160484Sobrien 10260484Sobrien * coff-ppc.c (coff_ppc_relocate_section): removed debugging code. 10360484Sobrien 10460484SobrienTue Dec 12 17:42:06 1995 Kim Knuttila <krk@cygnus.com> 10560484Sobrien 10660484Sobrien * peicode.h (pe_print_reloc): New function to dump the .reloc section. 10760484Sobrien (pe_print_private_bfd_data): call pe_print_reloc. 10860484Sobrien * coffcode.h (coff_set_alignment_hook): .reloc section alignment. 10960484Sobrien * coff-ppc.c (in_reloc_p): Added missing non-eligible relocs. Spiffed 11060484Sobrien up some debugging as well. 11160484Sobrien 11260484SobrienTue Dec 12 11:34:23 1995 Ian Lance Taylor <ian@cygnus.com> 11360484Sobrien 11460484Sobrien * config.bfd: Handle sparc-*-elf*. From Ronald F. Guilmette 11560484Sobrien <rfg@monkeys.com>. 11660484Sobrien 11760484SobrienFri Dec 8 17:47:07 1995 Ian Lance Taylor <ian@cygnus.com> 11860484Sobrien 11960484Sobrien * elflink.h (elf_link_add_object_symbols): Set section_count to 0 12060484Sobrien when setting sections to NULL. 12160484Sobrien 12260484SobrienWed Dec 6 17:05:37 1995 Ian Lance Taylor <ian@cygnus.com> 12360484Sobrien 12460484Sobrien * xcofflink.c (struct xcoff_loader_info): Add export_defineds 12560484Sobrien field. 12660484Sobrien (bfd_xcoff_size_dynamic_sections): Add export_defineds parameter. 12760484Sobrien (xcoff_build_ldsyms): If export_defineds is set, set XCOFF_EXPORT 12860484Sobrien for all symbols. 12960484Sobrien * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration. 13060484Sobrien * bfd-in2.h: Rebuild. 13160484Sobrien 13260484SobrienMon Dec 4 16:40:47 1995 Kim Knuttila <krk@cygnus.com> 13360484Sobrien 13460484Sobrien * coffcode.h (coff_set_alignment_hook): Removed some debugging printf's 13560484Sobrien 13660484SobrienMon Dec 4 11:25:39 1995 Ian Lance Taylor <ian@cygnus.com> 13760484Sobrien 13860484Sobrien * ihex.c (ihex_scan): Handle record types 4 and 5. 13960484Sobrien (ihex_object_p): Permit types 4 and 5. 14060484Sobrien (ihex_set_section_contents): Remove check for out of range 14160484Sobrien addresses. 14260484Sobrien (ihex_write_object_contents): Generate types 4 and 5. 14360484Sobrien 14460484Sobrien * elflink.h (elf_link_output_extsym): Just ignore warning and 14560484Sobrien indirect references to symbols which don't really exist. 14660484Sobrien 14760484SobrienSun Dec 3 19:00:27 1995 Kim Knuttila <krk@cygnus.com> 14860484Sobrien 14960484Sobrien * peicode.h (pe_print_idata): Minor format fixes 15060484Sobrien (pe_print_edata): New function. Under private printing, this formats 15160484Sobrien the edata section of a PE file. 15260484Sobrien (pe_print_private_bfd_data): Added call to pe_print_edata. 15360484Sobrien 15460484SobrienSun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk) 15560484Sobrien 15660484Sobrien * aout-arm.c (MY_swap_std_reloc_out): Use KEEPIT to get the symbol 15760484Sobrien index, don't call stoi. 15860484Sobrien 15960484SobrienFri Dec 1 14:46:51 1995 Ian Lance Taylor <ian@cygnus.com> 16060484Sobrien 16160484Sobrien * srec.c (srec_scan): Set lma as well as vma. 16260484Sobrien 16360484Sobrien * ihex.c: New file; support for Intel Hex format. 16460484Sobrien * targets.c (enum bfd_flavour): Add bfd_target_ihex_flavour. 16560484Sobrien (ihex_vec): Declare. 16660484Sobrien (bfd_target_vector): Always include ihex_vec. 16760484Sobrien * bfd.c (struct _bfd): Add ihex_data field to tdata union. 16860484Sobrien * Makefile.in: Rebuild dependencies. 16960484Sobrien (BFD_LIBS): Add ihex.o 17060484Sobrien (BFD_LIBS_CFILES): Add ihex.c. 17160484Sobrien * bfd-in2.h: Rebuild. 17260484Sobrien 17360484Sobrien * elf.c (assign_file_positions_for_segments): Sort the sections in 17460484Sobrien each segment. 17560484Sobrien (get_program_header_size): Return the right size if segment_map is 17660484Sobrien not NULL. 17760484Sobrien (copy_private_bfd_data): Don't bother to sort the sections. 17860484Sobrien 17960484Sobrien * bfd.c (bfd_record_phdr): New function. 18060484Sobrien * bfd-in.h (bfd_record_phdr): Declare. 18160484Sobrien * bfd_in2.h: Rebuild. 18260484Sobrien 18360484Sobrien * elf32-sparc.c (elf32_sparc_relocate_section): Remove bogus 18460484Sobrien BFD_ASSERT. 18560484Sobrien 18660484Sobrien * libbfd.c (bfd_malloc, bfd_realloc): New functions. 18760484Sobrien (bfd_zmalloc): Return PTR, not char *. Take size_t, not 18860484Sobrien bfd_size_type. 18960484Sobrien * libbfd-in.h (bfd_malloc, bfd_realloc): Declare. 19060484Sobrien (bfd_zmalloc): Change declaration. 19160484Sobrien * libbfd.h: Rebuild. 19260484Sobrien * Many files: Use bfd_malloc and bfd_realloc rather than malloc 19360484Sobrien and realloc. Don't set bfd_error_no_memory if they fail. 19460484Sobrien 19560484SobrienThu Nov 30 19:32:26 1995 Kim Knuttila <krk@cygnus.com> 19660484Sobrien 19760484Sobrien * coff-ppc.c: Added macros to tidy up toc cell treatment. Numerous 19860484Sobrien uses as well. Added a new howto to deal with TOCREL16 relocs that 19960484Sobrien are TOCDEFN as well. 20060484Sobrien (coff_ppc_relocate_section): Expanded treatment of ADDR32NB relocs 20160484Sobrien to handle RVA relocs from dlltool. 20260484Sobrien (ppc_coff_rtype2howto): TOCDEFN reloc addition. 20360484Sobrien (coff_ppc_rtype_to_howto): TOCDEFN reloc addition. 20460484Sobrien (ppc_coff_reloc_type_lookup): TOCDEFN reloc addition. 20560484Sobrien 20660484Sobrien * coffcode.h (coff_set_alignment_hook): check idata$X sections 20760484Sobrien to get the right section alignment. 20860484Sobrien 20960484SobrienThu Nov 30 16:48:18 1995 Ian Lance Taylor <ian@cygnus.com> 21060484Sobrien 21160484Sobrien * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on 21260484Sobrien p_paddr if p_paddr is zero. 21360484Sobrien (make_mapping): Set includes_filehdr and includes_phdrs for first 21460484Sobrien PT_LOAD segment. 21560484Sobrien (map_sections_to_segments): Set includes_phdrs for PT_PHDR 21660484Sobrien segment. 21760484Sobrien (assign_file_positions_for_segments): Handle includes_filehdr and 21860484Sobrien includes_phdrs. Remove special handling of PT_PHDR and first 21960484Sobrien PT_LOAD segments. 22060484Sobrien (copy_private_bfd_data): Set includes_filehdr and includes_phdr 22160484Sobrien when appropriate. Remove special handling of PT_PHDR segment. 22260484Sobrien Use a more complex condition for when a section is included in a 22360484Sobrien segment to handle Solaris linker oddities. 22460484Sobrien 22560484SobrienThu Nov 30 11:17:33 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de> 22660484Sobrien 22760484Sobrien * coff-m88k.c (howto_table): Reformatted for easier reading; 22860484Sobrien special_function now points to new function m88k_special_reloc. 22960484Sobrien (howto_hvrt16): Function previously used for handling HVRT16 relocs 23060484Sobrien removed. 23160484Sobrien (rtype2howto): Do not add reloc's r_offset to the addend, this will 23260484Sobrien be done correctly by m88k_special_reloc. 23360484Sobrien (reloc_processing): New function to be used by RELOC_PROCESSING. 23460484Sobrien (RELOC_PROCESSING): Define to call reloc_processing. 23560484Sobrien 23660484SobrienWed Nov 29 12:42:36 1995 Ian Lance Taylor <ian@cygnus.com> 23760484Sobrien 23860484Sobrien * peicode.h (pe_print_idata): Call malloc rather than xmalloc. 23960484Sobrien (pe_print_pdata): Likewise. 24060484Sobrien 24160484Sobrien * opncls.c (bfd_alloc_by_size_t): Set bfd_error_no_memory if 24260484Sobrien obstack_alloc fails. 24360484Sobrien (bfd_alloc_finish): Set bfd_error_no_memory if obstack_finish 24460484Sobrien fails. 24560484Sobrien * libbfd.c (bfd_zmalloc): Set bfd_error_no_memory if malloc fails. 24660484Sobrien * Many files: don't set bfd_error_no_memory if one of the above 24760484Sobrien routines fails. 24860484Sobrien 24960484Sobrien * elf.c (assign_file_positions_for_segments): Don't adjust p_paddr 25060484Sobrien if p_paddr_valid is set. 25160484Sobrien (copy_private_bfd_data): New static function. 25260484Sobrien (_bfd_elf_copy_private_section_data): Call copy_private_bfd_data. 25360484Sobrien 25460484Sobrien * elf.c (assign_file_positions_for_segments): Fix case where extra 25560484Sobrien program headers were allocated. 25660484Sobrien 25760484Sobrien * elf.c (_bfd_elf_print_private_bfd_data): New function. 25860484Sobrien * elf-bfd.h (_bfd_elf_print_private_bfd_data): Declare. 25960484Sobrien * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define to 26060484Sobrien _bfd_elf_print_private_bfd_data. 26160484Sobrien 26260484Sobrien * coff-alpha.c (alpha_ecoff_swap_reloc_in): Don't abort if 26360484Sobrien r_symndx is RELOC_SECTION_NONE for an ALPHA_R_IGNORE reloc. 26460484Sobrien Change a RELOC_SECTION_LITA symndx to RELOC_SECTION_ABS. 26560484Sobrien (alpha_ecoff_swap_reloc_out): Change RELOC_SECTION_ABS to 26660484Sobrien RELOC_SECTION_LITA for ALPHA_R_IGNORE. 26760484Sobrien (alpha_adjust_reloc_out): For ALPHA_R_IGNORE, don't change 26860484Sobrien RELOC_SECTION_ABS to RELOC_SECTION_NONE. 26960484Sobrien 27060484SobrienTue Nov 28 16:59:50 1995 Ian Lance Taylor <ian@cygnus.com> 27160484Sobrien 27260484Sobrien * elf-bfd.h (struct elf_obj_tdata): Add segment_map field. 27360484Sobrien * elf.c (make_mapping): New static function. 27460484Sobrien (map_sections_to_segments): New static function. 27560484Sobrien (elf_sort_sections): New static function. 27660484Sobrien (assign_file_positions_for_segments): New static function. 27760484Sobrien (map_program_segments): Remove. 27860484Sobrien (get_program_header_size): Remove sorted_hdrs, count, and 27960484Sobrien maxpagesize parameters. Simplify. 28060484Sobrien (assign_file_positions_except_relocs): When generating an 28160484Sobrien executable, use assign_file_positions_for_segments. 28260484Sobrien (elf_sort_hdrs): Remove. 28360484Sobrien (_bfd_elf_sizeof_headers): Remove eliminated parameters from call 28460484Sobrien to get_program_header_size. 28560484Sobrien 28660484SobrienMon Nov 27 12:27:46 1995 Ian Lance Taylor <ian@cygnus.com> 28760484Sobrien 28860484Sobrien * hp300hpux.c (MY(callback)): Set lma as well as vma. 28960484Sobrien 29060484Sobrien * configure, config.in: Regenerate with autoconf 2.7. 29160484Sobrien 29260484Sobrien * elf32-i386.c (elf_backend_plt_readonly): Set correctly, to 1. 29360484Sobrien * elf32-sparc.c (elf_backend_plt_readonly): Set correctly, to 0. 29460484Sobrien 29560484SobrienWed Nov 22 12:02:09 1995 Ian Lance Taylor <ian@cygnus.com> 29660484Sobrien 29760484Sobrien * ecoff.c (_bfd_ecoff_new_section_hook): Handle .rconst section. 29860484Sobrien (ecoff_sec_to_styp_flags): Likewise. 29960484Sobrien (_bfd_ecoff_styp_to_sec_flags): Handle STYP_RCONST. 30060484Sobrien (ecoff_set_symbol_info): Handle scRConst. 30160484Sobrien (ecoff_slurp_reloc_table): Handle RELOC_SECTION_RCONST. 30260484Sobrien (ecoff_compute_section_file_positions): Handle .rconst section. 30360484Sobrien (_bfd_ecoff_write_object_contents): Likewise. 30460484Sobrien (ecoff_link_check_archive_element): Handle scRConst. 30560484Sobrien (ecoff_link_add_externals): Likewise. 30660484Sobrien (ecoff_link_write_external): Handle .rconst section. 30760484Sobrien (ecoff_reloc_link_order): Likewise. 30860484Sobrien * ecofflink.c (bfd_ecoff_debug_accumulate): Handle scRConst. 30960484Sobrien * coff-alpha.c (alpha_convert_external_reloc): Handle .rconst 31060484Sobrien section. 31160484Sobrien (alpha_relocate_section): Handle RELOC_SECTION_RCONST. 31260484Sobrien 31360484Sobrien * sunos.c (sunos_scan_dynamic_symbol): Only set written if the 31460484Sobrien DEF_DYNAMIC flag is set. 31560484Sobrien 31660484SobrienTue Nov 21 13:25:29 1995 Ken Raeburn <raeburn@cygnus.com> 31760484Sobrien 31860484Sobrien * host-aout.c: If TRAD_HEADER is defined, include it. 31960484Sobrien 32060484SobrienTue Nov 21 13:03:57 1995 Ian Lance Taylor <ian@cygnus.com> 32160484Sobrien 32260484Sobrien * aclocal.m4 (AC_PROG_CC): Remove local definition. 32360484Sobrien (BFD_BINARY_FOPEN): Require AC_CANONICAL_SYSTEM. 32460484Sobrien (BFD_NEED_DECLARATION): New function. 32560484Sobrien * configure.in: Use BFD_NEED_DECLARATION. 32660484Sobrien * acconfig.h: Put NEED_DECLARATION_* in @TOP@ section. 32760484Sobrien * configure, config.in: Rebuild with autoconf 2.6. 32860484Sobrien 32960484Sobrien * xcofflink.c (bfd_xcoff_size_dynamic_sections): Clear 33060484Sobrien special_sections before returning when called with a non XCOFF 33160484Sobrien BFD. 33260484Sobrien 33360484Sobrien * coffgen.c (coff_renumber_symbols): Sort common symbols with 33460484Sobrien global symbols. 33560484Sobrien 33660484Sobrien * coffcode.h (coff_compute_section_file_positions): Only pad the 33760484Sobrien previous section to force file alignment when creating an 33860484Sobrien executable. 33960484Sobrien 34060484SobrienMon Nov 20 14:54:09 1995 Ian Lance Taylor <ian@cygnus.com> 34160484Sobrien 34260484Sobrien * coffcode.h (coff_compute_section_file_positions): If 34360484Sobrien RS6000COFF_C, set up the .debug section. 34460484Sobrien 34560484Sobrien * xcofflink.c (xcoff_link_input_bfd): Adjust the TOC anchor value 34660484Sobrien if it is not large enough to accomodate the entire TOC area with 34760484Sobrien signed 16 bit offsets. 34860484Sobrien (xcoff_write_global_symbol): Handle negative TOC offsets in global 34960484Sobrien linkage code. 35060484Sobrien (_bfd_ppc_xcoff_relocate_section): Adjust relocations against a 35160484Sobrien TOC anchor to use the TOC value used in the output file. 35260484Sobrien 35360484SobrienSat Nov 18 18:01:41 1995 Ian Lance Taylor <ian@cygnus.com> 35460484Sobrien 35560484Sobrien * coffgen.c (_bfd_coff_get_external_symbols): Cast malloc return. 35660484Sobrien (_bfd_coff_read_string_table): Likewise. 35760484Sobrien 35860484SobrienSat Nov 18 19:43:04 1995 Richard Earnshaw (rearnsha@armltd.co.uk) 35960484Sobrien 36060484Sobrien * pe-arm.c: Fix typos. 36160484Sobrien * coff-arm.c: Likewise. 36260484Sobrien 36360484SobrienFri Nov 17 16:22:04 1995 Kim Knuttila <krk@cygnus.com> 36460484Sobrien 36560484Sobrien * coff-ppc.c (list_ele): Added "cat"egory member. 36660484Sobrien (record_toc): New category parameter (priv or pub). 36760484Sobrien (ppc_record_toc_entry): Check to see if toc bounds exceeded. 36860484Sobrien (ppc_process_before_allocation): Removed embrionic data-in-toc from 36960484Sobrien the mainline. It addes extra toc cells in error. 37060484Sobrien (ppc_coff_swap_sym_in_hook): Added some documentation. 37160484Sobrien (dump_toc): Can now diagnose "virtual toc" chicanery. 37260484Sobrien 37360484SobrienFri Nov 17 10:41:25 1995 Philippe De Muyter <phdm@info.ucl.ac.be> 37460484Sobrien 37560484Sobrien * elf-bfd.h (struct elf_link_hash_table): Change type of 37660484Sobrien dynsymcount and bucketcount fields from size_t to bfd_size_type. 37760484Sobrien 37860484SobrienFri Nov 17 10:02:58 1995 Ian Lance Taylor <ian@cygnus.com> 37960484Sobrien 38060484Sobrien * coffcode.h (coff_pointerize_aux_hook): I960 version: don't 38160484Sobrien pointerize C_LEAFSTAT or C_LEAFEXT entries. 38260484Sobrien 38360484Sobrien * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Only create 38460484Sobrien DT_INIT and DT_FINI entries if the _init or _fini symbol is 38560484Sobrien defined or mentioned in a regular file. 38660484Sobrien 38760484SobrienThu Nov 16 15:16:42 1995 Kim Knuttila <krk@cygnus.com> 38860484Sobrien 38960484Sobrien * coff-ppc.c (ppc_record_data_in_toc_entry): new function 39060484Sobrien (coff_ppc_relocate_section): Handle TOCDEFN attribute 39160484Sobrien (coff_ppc_relocate_section): Correct REL24 handling 39260484Sobrien (ppc_process_before_allocation): Correct TOCDEFN handling 39360484Sobrien 39460484Sobrien * peicode.h (dir_names): Added name descriptions 39560484Sobrien 39660484SobrienThu Nov 16 03:38:03 1995 Ken Raeburn <raeburn@cygnus.com> 39760484Sobrien 39860484Sobrien * VERSION: Updated to cygnus-2.6. 39960484Sobrien 40060484SobrienWed Nov 15 19:30:07 1995 Ken Raeburn <raeburn@cygnus.com> 40160484Sobrien 40260484Sobrien * targets.c (m68k4knetbsd_vec): Declare. 40360484Sobrien 40460484SobrienWed Nov 15 18:05:52 1995 Ian Lance Taylor <ian@cygnus.com> 40560484Sobrien 40660484Sobrien * targets.c (bfd_target): Change type of second argument to 40760484Sobrien _bfd_print_private_bfd_data from void * to PTR. 40860484Sobrien * libbfd-in.h (_bfd_generic_bfd_print_private_bfd_data): Cast 40960484Sobrien using PTR rather than void *. 41060484Sobrien * bfd-in2, libbfd.h: Rebuild. 41160484Sobrien * peicode.h (pe_print_private_bfd_data): Change vfile from void * 41260484Sobrien to PTR. 41360484Sobrien * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define as 41460484Sobrien _bfd_generic_bfd_print_private_bfd_data rather than casting 41560484Sobrien bfd_true. 41660484Sobrien 41760484SobrienWed Nov 15 04:09:14 1995 Ken Raeburn <raeburn@cygnus.com> 41860484Sobrien 41960484Sobrien * Makefile.in (.dep1): Fix stupid typo in last change. Remove any 42060484Sobrien "DO NOT DELETE" lines or blank lines that mkdep writes on some 42160484Sobrien systems. 42260484Sobrien (BFD_LIBS_CFILES, ALL_MACHINES_CFILES, BFD32_BACKENDS_CFILES, 42360484Sobrien BFD64_BACKENDS_CFILES): New variables. 42460484Sobrien (CFILES): Use them. 42560484Sobrien 42660484SobrienTue Nov 14 11:52:23 1995 Ian Lance Taylor <ian@cygnus.com> 42760484Sobrien 42860484Sobrien * peicode.h (coff_swap_aouthdr_out): For PPC PE, start isize at 0, 42960484Sobrien not at the file position of the first section. 43060484Sobrien * coffcode.h (coff_compute_section_file_positions): Avoid using 43160484Sobrien unportable #elif. 43260484Sobrien (coff_write_object_contents): When generating a PPC PE executable 43360484Sobrien with no symbols, round up the file size to a COFF_PAGE_SIZE 43460484Sobrien boundary. 43560484Sobrien * cofflink.c (_bfd_coff_final_link): If there are no symbols, 43660484Sobrien don't write out a string table. 43760484Sobrien 43860484Sobrien * elf.c (bfd_section_from_shdr): When using a different section 43960484Sobrien header, pass the new one to _bfd_elf_make_section_from_shdr. 44060484Sobrien (elf_fake_sections): Don't set sh_info and sh_entsize fields. 44160484Sobrien (elf_map_symbols): Add section VMA to symbol value when comparing 44260484Sobrien against 0. 44360484Sobrien (_bfd_elf_compute_section_file_positions): Only build symbol table 44460484Sobrien if there are some symbols. Set file offset of symtab and strtab 44560484Sobrien sections. 44660484Sobrien (assign_file_positions_except_relocs): Remove dosyms parameter. 44760484Sobrien Change all callers. Never set file offset of symtab and strtab 44860484Sobrien sections. 44960484Sobrien (_bfd_elf_copy_private_section_data): New function. 45060484Sobrien (MAP_ONESYMTAB, MAP_DYNSYMTAB, MAP_STRTAB, MAP_SHSTRTAB): Define. 45160484Sobrien (_bfd_elf_copy_private_symbol_data): New function. 45260484Sobrien (swap_out_syms): Check for special mapping of st_shndx created by 45360484Sobrien copy_private_symbol_data. 45460484Sobrien * elfxx-target.h: Use new copy routines. 45560484Sobrien * elf-bfd.h (_bfd_elf_copy_private_symbol_data): Declare. 45660484Sobrien (_bfd_elf_copy_private_section_data): Declare. 45760484Sobrien 45860484Sobrien * config.bfd (sh-*-*): Set targ_defvec to shcoff_vec. 45960484Sobrien 46060484Sobrien * coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE, handle 46160484Sobrien C_NT_WEAK. 46260484Sobrien 46360484Sobrien * coff-sh.c (shlcoff_vec): Use _bfd_generic_archive_p, not 46460484Sobrien _bfd_dummy_target, matching the recent change to archive 46560484Sobrien recognition. 46660484Sobrien 46760484SobrienMon Nov 13 13:24:38 1995 Ian Lance Taylor <ian@cygnus.com> 46860484Sobrien 46960484Sobrien * libbfd.c (bfd_get_file_window): Use casts to avoid doing 47060484Sobrien arithmetic on PTR types. 47160484Sobrien 47260484Sobrien * aout-target.h (MY(callback)): Set the lma of the sections. 47360484Sobrien 47460484Sobrien * ecoff.c (ecoff_reloc_link_order): Turn a reloc against a defined 47560484Sobrien symbol into a reloc against the section. 47660484Sobrien 47760484SobrienMon Nov 13 07:31:35 1995 Kim Knuttila <krk@cygnus.com> 47860484Sobrien 47960484Sobrien * coff-ppc.c (ppc_coff_link_hash_entry): added support for inline 48060484Sobrien glue for the relocs: IMGLUE and IFGLUE. 48160484Sobrien (record_toc): new function - tracks toc contents 48260484Sobrien (ppc_mark_symbol_as_glue): new function - supports the IMGLUE reloc 48360484Sobrien (coff_ppc_relocate_section): Added support and fixes for IMGLUE/IFGLUE 48460484Sobrien (ppc_coff_rtype2howto): removed invalid IMGLUE hack 48560484Sobrien (coff_ppc_rtype_to_howto): removed invalid IMGLUE hack 48660484Sobrien (ppc_record_toc_entry): Removed a debug define (duh) 48760484Sobrien 48860484Sobrien * peicode.h (coff_swap_scnhdr_out): Fixed invalid strcmp for ".reldata" 48960484Sobrien (pe_print_idata): New function - formats the idata section data 49060484Sobrien (pe_print_pdata): New function - formats the pdata section data 49160484Sobrien (pe_print_private_bfd_data): calls to above 49260484Sobrien 49360484SobrienSun Nov 12 12:23:24 1995 Stan Shebs <shebs@andros.cygnus.com> 49460484Sobrien 49560484Sobrien * Makefile.in (bfd_libs_here, etc): Provide empty definitions. 49660484Sobrien * coff-rs6000.c (rs6000coff_vec): Add conditional defines 49760484Sobrien TARGET_SYM and TARGET_NAME for vector and BFD name. 49860484Sobrien * coff-pmac.c (pmac_xcoff_vec): Remove. 49960484Sobrien (TARGET_SYM, TARGET_NAME): Define. 50060484Sobrien * coffcode.h (coff_set_arch_mach_hook) [POWERMAC]: Set the 50160484Sobrien machine to 0, not all PowerMacs are 601s. 50260484Sobrien 50360484SobrienFri Nov 10 12:10:14 1995 Ian Lance Taylor <ian@cygnus.com> 50460484Sobrien 50560484Sobrien * elfcode.h (elf_object_p): Read in any program headers. 50660484Sobrien * elf.c (_bfd_elf_make_section_from_shdr): Adjust section lma 50760484Sobrien based on the program headers, if any. 50860484Sobrien (elf_fake_sections): Set sh_addr from the vma, not the lma. 50960484Sobrien (map_program_segments): Set p_paddr of program headers based on 51060484Sobrien the lma. 51160484Sobrien 51260484SobrienThu Nov 9 13:01:31 1995 Ian Lance Taylor <ian@cygnus.com> 51360484Sobrien 51460484Sobrien * archive.c (bfd_generic_archive_p): Preserve tdata in case of 51560484Sobrien failure. 51660484Sobrien 51760484Sobrien * aoutx.h (NAME(aout,final_link)): Report a reasonable error when 51860484Sobrien trying to do a relocateable link with a non-a.out object file. 51960484Sobrien 52060484Sobrien * archive.c (bfd_generic_archive_p): Check the first object file 52160484Sobrien in an archive even if target_defaulted is set. If the object file 52260484Sobrien has the wrong xvec, reject it. 52360484Sobrien 52460484Sobrien * aoutx.h (NAME(aout,set_section_contents)): If a section can not 52560484Sobrien be represented, report the name via _bfd_error_handler. 52660484Sobrien (translate_to_native_sym_flags): Likewise. 52760484Sobrien * elf32-mips.c (mips_elf_final_link): Likewise. 52860484Sobrien * oasys.c (oasys_write_sections): Likewise. 52960484Sobrien 53060484Sobrien * coffcode.h (coff_set_alignment_hook): Write RS6000COFF_C version 53160484Sobrien which checks for STYP_OVRFLO sections. 53260484Sobrien (coff_compute_section_file_positions): If RS6000COFF_C, handle 53360484Sobrien reloc and lineno count overflows. 53460484Sobrien (coff_write_object_contents): Call coff_count_linenumbers before 53560484Sobrien coff_compute_section_file_positions. If RS6000COFF_C, handle 53660484Sobrien reloc and lineno count overflows. 53760484Sobrien * xcofflink.c (_bfd_xcoff_bfd_final_link): Count line numbers and 53860484Sobrien relocs before dealing with .pad sections. Count overflow section 53960484Sobrien headers when handling .pad sections. 54060484Sobrien 54160484Sobrien * coffcode.h (coff_write_object_contents): Set a.out vstamp to 1 54260484Sobrien if RS6000COFF_C. 54360484Sobrien 54460484Sobrien * xcofflink.c (XCOFF_DESCRIPTOR): Define. 54560484Sobrien (struct xcoff_link_hash_table): Add descriptor_section and 54660484Sobrien special_sections fields. 54760484Sobrien (_bfd_xcoff_bfd_link_hash_table_create): Initialize new fields. 54860484Sobrien (xcoff_link_add_symbols): Set linkage section alignment. Create 54960484Sobrien descriptor section. Check for magic symbol names (_text, etc.), 55060484Sobrien and record them in special_sections if found. Set 55160484Sobrien XCOFF_DESCRIPTOR flag for a function descriptor, and set its 55260484Sobrien descriptor field to point back to the function code symbol. 55360484Sobrien (xcoff_sweep): Always mark the special descriptor_section. 55460484Sobrien (bfd_xcoff_export_symbol): Check whether the symbol might be a 55560484Sobrien function descriptor, and mark it if it is. 55660484Sobrien (bfd_xcoff_size_dynamic_sections): Add new special_sections 55760484Sobrien parameter, and fill it in. Allocate space for the descriptor 55860484Sobrien section. 55960484Sobrien (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR flag when defining 56060484Sobrien global linkage code. If an undefined function descriptor is 56160484Sobrien exported, arrange to define it. Warn about any other undefined 56260484Sobrien exported symbol. 56360484Sobrien (_bfd_xcoff_bfd_final_link): Write out the descriptor section. 56460484Sobrien (xcoff_write_global_symbol): Create a function descriptor when 56560484Sobrien necessary. 56660484Sobrien * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration. 56760484Sobrien * bfd-in2.h: Rebuild. 56860484Sobrien 56960484SobrienThu Nov 9 08:40:23 1995 Kim Knuttila <krk@cygnus.com> 57060484Sobrien 57160484Sobrien * coff-ppc.c (ppc_coff_link_hash_entry): new types for hashing 57260484Sobrien (ppc_coff_link_hash_table): new types for hashing 57360484Sobrien (ppc_coff_link_hash_newfunc): hash entry constructor 57460484Sobrien (ppc_coff_link_hash_table_init): hash table initializer 57560484Sobrien (ppc_coff_link_hash_table_create): hash table constructor 57660484Sobrien (ppc_record_toc_entry): changed references to hash table 57760484Sobrien (coff_ppc_relocate_section): changed references to hash table 57860484Sobrien 57960484Sobrien * libcoff-in.h (coff_link_hash_entry): removed toc_offset 58060484Sobrien * libcoff.h: Rebuild 58160484Sobrien 58260484Sobrien * cofflink.c (_bfd_coff_link_hash_newfunc): removed toc_offset init 58360484Sobrien (coff_link_add_symbols): removed toc_offset init 58460484Sobrien 58560484SobrienThu Nov 9 04:00:38 1995 Ken Raeburn <raeburn@cygnus.com> 58660484Sobrien 58760484Sobrien * Makefile.in (.dep1): Make sure the file mkdep is to write exists 58860484Sobrien first. 58960484Sobrien 59060484Sobrien * configure.in: Added new option --with[out]-mmap. Set USE_MMAP 59160484Sobrien if it is given and mmep is available. 59260484Sobrien * acconfig.h: Undef USE_MMAP. 59360484Sobrien * configure, config.in: Regenerated. 59460484Sobrien * aoutx.h: If USE_MMAP is not defined, do all symbol and string 59560484Sobrien table handling the old way. 59660484Sobrien (aout_get_external_symbols): Don't complain if last byte of string 59760484Sobrien table is nonzero. 59860484Sobrien * libbfd.c [HAVE_MADVISE]: Include sys/types.h and sys/mman.h. 59960484Sobrien (bfd_free_window) [! USE_MMAP]: Don't define. 60060484Sobrien (bfd_get_file_window, 60160484Sobrien _bfd_generic_get_section_contents_in_window) [! USE_MMAP]: Abort. 60260484Sobrien 60360484SobrienWed Nov 8 20:03:44 1995 Eric Freudenthal <freudenthal@nyu.edu> 60460484Sobrien 60560484Sobrien * coff-a29k.c (SIGN_EXTEND_HWORD): Use ~0xffff rather than 60660484Sobrien 0xffff0000. 60760484Sobrien 60860484SobrienWed Nov 8 11:31:11 1995 Ian Lance Taylor <ian@cygnus.com> 60960484Sobrien 61060484Sobrien * coff-a29k.c (a29k_reloc): Change handling of R_IREL reloc to be 61160484Sobrien compatible with AMD generated COFF files. Try to support both AMD 61260484Sobrien and GNU formats simultaneously. 61360484Sobrien (coff_a29k_relocate_section): Likewise. 61460484Sobrien 61560484Sobrien * libbfd.c (bfd_get_file_window): Change writable parameter from 61660484Sobrien int to boolean; update all callers. Pass MAP_SHARED if not 61760484Sobrien writable--it's required on Solaris. Cast fprintf argument to 61860484Sobrien avoid warning. 61960484Sobrien * bfd-in.h (bfd_get_file_window): Update declaration. 62060484Sobrien * bfd-in2.h: Rebuild. 62160484Sobrien * aoutx.h: Update calls to bfd_get_file_window. 62260484Sobrien 62360484Sobrien * xcofflink.c (XCOFF_DEF_DYNAMIC): Rename from XCOFF_REF_DYNAMIC. 62460484Sobrien Change all uses. 62560484Sobrien (xcoff_swap_ldhdr_in): New static function. 62660484Sobrien (xcoff_swap_ldsym_in): New static function. 62760484Sobrien (xcoff_find_reloc): Handle the case of a single reloc correctly. 62860484Sobrien (xcoff_link_add_symbols): If we just created a descriptor, pass it 62960484Sobrien to _bfd_generic_link_add_one_symbol, to save a hash lookup. 63060484Sobrien Handle XTY_ER/XMC_XO symbols correctly. 63160484Sobrien (xcoff_link_add_dynamic_symbols): Rewrite to read .loader symbols 63260484Sobrien rather than normal symbol table. 63360484Sobrien (bfd_xcoff_import_symbol): It's not an error if the symbol is 63460484Sobrien already defined with the same absolute value. 63560484Sobrien (xcoff_mark): When considering called symbols, check whether the 63660484Sobrien descriptor is from a dynamic object, rather than the symbol 63760484Sobrien itself. 63860484Sobrien (xcoff_build_ldsyms): Likewise. 63960484Sobrien 64060484Sobrien * libbfd.c (bfd_get_file_window): Change return type to boolean. 64160484Sobrien Cast realloc and malloc return values. If malloc or realloc fail, 64260484Sobrien set bfd_error_no_memory. 64360484Sobrien * bfd-in.h (bfd_get_file_window): Change type to boolean. 64460484Sobrien * bfd-in2.h: Rebuild. 64560484Sobrien 64660484SobrienTue Nov 7 11:53:48 1995 Kim Knuttila <krk@cygnus.com> 64760484Sobrien 64860484Sobrien * coff-ppc.c (ppc_record_toc_entry): new function. 64960484Sobrien (in_reloc_p): changed return value. 65060484Sobrien (coff_ppc_relocate_section): much rework. 65160484Sobrien (ppc_allocate_toc_section): new function. 65260484Sobrien (ppc_process_before_allocation): new function. 65360484Sobrien (ppc_coff_swap_sym_in_hook): new function. 65460484Sobrien 65560484Sobrien * cofflink.c (_bfd_coff_link_hash_newfunc): initialize toc_offset. 65660484Sobrien (coff_link_add_symbols): initialize toc_offset. 65760484Sobrien 65860484Sobrien * peicode.h (coff_swap_sym_in): Added coff_swap_sym_in_hook 65960484Sobrien (coff_swap_aouthdr_out): Added more sections to the data 66060484Sobrien dictionary for the pe file header. Also changed linker version 66160484Sobrien number on the ppc side. 66260484Sobrien (dir_names): small improvements to the dictionary printing. 66360484Sobrien (pe_mkobject_hook): save the file level flags. 66460484Sobrien 66560484Sobrien * libcoff-in.h (coff_link_hash_entry): added toc_offset field 66660484Sobrien (pe_tdata): added real_flags field 66760484Sobrien (coff_tdata): added local_toc_sym_map and access macro 66860484Sobrien 66960484Sobrien * libcoff.h (coff_link_hash_entry): added toc_offset field 67060484Sobrien (pe_tdata): added real_flags field 67160484Sobrien (coff_tdata): added local_toc_sym_map and access macro 67260484Sobrien 67360484Sobrien * coffcode.h (coff_set_alignment_hook): added hook for PE. 67460484Sobrien (coff_mkobject): init for local_toc_sym_map 67560484Sobrien (coff_write_object_contents): set the internal_a.magic to 67660484Sobrien IMAGE_NT_OPTIONAL_HDR_MAGIC which appears to be what other 67760484Sobrien ppc compilers use. 67860484Sobrien 67960484SobrienTue Nov 7 13:48:58 1995 Ian Lance Taylor <ian@cygnus.com> 68060484Sobrien 68160484Sobrien * ecofflink.c (_bfd_ecoff_locate_line): Keep looking through stabs 68260484Sobrien entries until both the line number address and the function name 68360484Sobrien address are too large. 68460484Sobrien 68560484Sobrien * configure.in: Call AC_CHECK_PROG to find and cache AR. 68660484Sobrien * configure: Rebuilt. 68760484Sobrien 68860484Sobrien * aclocal.m4 (BFD_CC_FOR_BUILD): Don't define CC_FOR_BUILD if it 68960484Sobrien is defined in the environment. 69060484Sobrien 69160484SobrienTue Nov 7 10:57:24 1995 Jeffrey A Law (law@cygnus.com) 69260484Sobrien 69360484Sobrien * som.c (som_get_section_contents_in_window): Define to use 69460484Sobrien generic version. 69560484Sobrien 69660484SobrienMon Nov 6 17:13:15 1995 Harry Dolan <dolan@ssd.intel.com> 69760484Sobrien 69860484Sobrien * coff-i860.c: New file, based on coff-i386.c. 69960484Sobrien * cpu-i860.c: New file, based on cpu-i386.c. 70060484Sobrien * hosts/i860mach3.h: New file, based on hosts/i386mach3.h. 70160484Sobrien * config.bfd (i860-*-mach3*, i860-*-osf1*, i860-*-coff*): New 70260484Sobrien targets, using i860coff_vec. 70360484Sobrien * configure.in (i860-*-mach3*, i860-*-osf1*): New hosts, using 70460484Sobrien trad-core.o and hosts/i860mach3.h. 70560484Sobrien (i860coff_vec): Use coff-i860.o and cofflink.o. 70660484Sobrien * configure: Rebuild. 70760484Sobrien * Makefile.in: Rebuild dependencies. 70860484Sobrien (ALL_MACHINES): Add cpu-i860.o. 70960484Sobrien (BFD32_BACKENDS): Add coff-i860.o. 71060484Sobrien (CFILES): Add cpu-i860.c and coff-i860.c. 71160484Sobrien * targets.c (i860coff_vec): Declare. 71260484Sobrien (bfd_target_vector): Add &i860coff_vec. 71360484Sobrien * archures.c (bfd_i860_arch): Declare. 71460484Sobrien (bfd_archures_list): Add &bfd_i860_arch. 71560484Sobrien * coffcode.h (coff_set_arch_mach_hook): Handle I860 magic number. 71660484Sobrien (coff_set_flags): Handle bfd_arch_i860. 71760484Sobrien (coff_write_object_contents): Handle I860 a.out magic number. 71860484Sobrien 71960484SobrienMon Nov 6 14:34:07 1995 Ian Lance Taylor <ian@cygnus.com> 72060484Sobrien 72160484Sobrien * xcofflink.c (xcoff_link_add_symbols): Set the alignment power of 72260484Sobrien the created .tc section to 2. 72360484Sobrien (xcoff_mark): Don't keep a .loader reloc for a call to an 72460484Sobrien undefined symbol when creating a shared library. 72560484Sobrien (xcoff_build_ldsyms): When creating a shared library, generate 72660484Sobrien global linkage code for a call to an undefined symbol. 72760484Sobrien 72860484SobrienSun Nov 5 21:44:13 1995 Ken Raeburn <raeburn@cygnus.com> 72960484Sobrien 73060484Sobrien * Makefile.in (CFILES): Rebuild list from BFD_LIBS, ALL_MACHINES, 73160484Sobrien BFD32_BACKENDS, BFD64_BACKENDS. 73260484Sobrien (.dep1): Put mkdep output in a separate file. 73360484Sobrien Rebuilt dependencies. 73460484Sobrien 73560484Sobrien * ecoff.c (_bfd_ecoff_slurp_armap): Cast _bfd_read_ar_hdr return 73660484Sobrien value. 73760484Sobrien 73860484Sobrien Permit use of mmap when available: 73960484Sobrien 74060484Sobrien * configure.in: Check for mmap, madvise, mprotect. 74160484Sobrien * config.in, configure: Regenerated. 74260484Sobrien 74360484Sobrien * libbfd.c (struct _bfd_window_internal): Define type. 74460484Sobrien (bfd_init_window, bfd_free_window, bfd_get_file_window): New 74560484Sobrien functions. 74660484Sobrien (ok_to_map): New static variable for debugging. 74760484Sobrien (_bfd_generic_get_section_contents_in_window): New function. 74860484Sobrien * bfd-in.h (bfd_window_internal): Declare type. 74960484Sobrien (bfd_window): Define type. 75060484Sobrien (bfd_init_window, bfd_free_window, bfd_get_file_window): Declare. 75160484Sobrien * libbfd-in.h (_bfd_generic_get_section_contents_in_window): 75260484Sobrien Declare. 75360484Sobrien 75460484Sobrien * libaout.h (struct aoutdata): Add two window fields. 75560484Sobrien (obj_aout_sym_window, obj_aout_string_window): New macros. 75660484Sobrien * aoutx.h (some_aout_object_p): Initialize windows. 75760484Sobrien (aout_get_external_symbols): Get symbol data and strings in 75860484Sobrien windows instead of explicitly allocated buffers. 75960484Sobrien (slurp_symbol_table): Free window instead of memory. 76060484Sobrien (bfd_free_cached_info): Release windows instead of freeing storage 76160484Sobrien directly. 76260484Sobrien (aout_link_free_symbols): Ditto. 76360484Sobrien 76460484Sobrien * targets.c (bfd_target): Add new field for 76560484Sobrien get_section_contents_in_window. 76660484Sobrien (BFD_JUMP_TABLE_GENERIC): Updated. 76760484Sobrien * aout-adobe.c, aout-target.h, binary.c, bout.c, coff-alpha.c, 76860484Sobrien coff-mips.c, elfxx-target.h, i386msdos.c, i386os9k.c, ieee.c, 76960484Sobrien libcoff-in.h, oasys.c, srec.c, tekhex.c, versados.c: Added new 77060484Sobrien macros for get_section_contents_in_window field. 77160484Sobrien 77260484SobrienSat Nov 4 12:23:26 1995 Fred Fish <fnf@cygnus.com> 77360484Sobrien 77460484Sobrien * core.c: Renamed to corefile.c 77560484Sobrien * makefile.dos (OBJS): Change core.o to corefile.o 77660484Sobrien * Makefile.in (CFILES, BFD_LIBS): Use corefile.c instead of core.c 77760484Sobrien 77860484SobrienFri Nov 3 15:54:59 1995 Ian Lance Taylor <ian@cygnus.com> 77960484Sobrien 78060484Sobrien * xcofflink.c (xcoff_link_add_symbols): Rename local variable sub 78160484Sobrien to o. Clobber and restore the list of new csects around the call 78260484Sobrien to _bfd_generic_link_add_one_symbol, in case it wants to report a 78360484Sobrien linker error and the linker wants to read the symbol table. Reset 78460484Sobrien the line number count of a real section even if it has no relocs. 78560484Sobrien (_bfd_xcoff_bfd_final_link): If shared, set the DYNAMIC flag. 78660484Sobrien 78760484Sobrien * coffgen.c (_bfd_coff_read_string_table): Warn if the string size 78860484Sobrien is too small. 78960484Sobrien 79060484SobrienThu Nov 2 23:16:39 1995 Ian Lance Taylor <ian@cygnus.com> 79160484Sobrien 79260484Sobrien * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Don't warn about 79360484Sobrien an undefined symbol in a shared link. 79460484Sobrien 79560484Sobrien * linker.c (_bfd_generic_link_add_one_symbol): Correct type of 79660484Sobrien oldtype from bfd_link_order_type to bfd_link_hash_type. From 79760484Sobrien phdm@info.ucl.ac.be (Philippe De Muyter). 79860484Sobrien 79960484SobrienWed Nov 1 14:26:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de> 80060484Sobrien 80160484Sobrien * coff-m88k.c (rtype2howto): New static function. 80260484Sobrien (RTYPE2HOWTO): Use it rather than a macro definition. 80360484Sobrien 80460484Sobrien * coffcode.h (coff_write_object_contents): set internal_a.magic 80560484Sobrien to PAGEMAGICPEXECPAGED #if defined (M68) && !defined (LYNXOS). 80660484Sobrien 80760484Sobrien * configure.in: m68*-motorola-sysv* does not use ptrace-core.o; 80860484Sobrien define TRAD_HEADER to new file hosts/delta68.h. 80960484Sobrien m88*-motorola-sysv*, however, does use ptrace-core.o. 81060484Sobrien * hosts/delta68.h: New file. 81160484Sobrien 81260484Sobrien * ptrace-core.c (ptrace_unix_core_file_p): change bfd_zmalloc to 81360484Sobrien bfd_zalloc; provide proper parm abfd to calls to bfd_zalloc. 81460484Sobrien 81560484SobrienWed Nov 1 13:51:54 1995 Ken Raeburn <raeburn@cygnus.com> 81660484Sobrien 81760484Sobrien * i386linux.c (MY(vec)): Declare before use. 81860484Sobrien 81960484SobrienWed Nov 1 11:45:07 1995 Ian Lance Taylor <ian@cygnus.com> 82060484Sobrien 82160484Sobrien * reloc16.c (bfd_coff_reloc16_get_relocated_section_contents): 82260484Sobrien Pass input_bfd, not in_bfd, to bfd_coff_reloc16_extra_cases. 82360484Sobrien 82460484Sobrien * elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the 82560484Sobrien BFD is not of the right type. 82660484Sobrien (bfd_elf_get_needed_list): Likewise. 82760484Sobrien * i386linux.c (bfd_linux_size_dynamic_sections): Likewise. 82860484Sobrien * sunos.c (bfd_sunos_get_needed_list): Likewise. 82960484Sobrien * xcofflink.c (XCOFF_XVECP): Define. 83060484Sobrien (bfd_xcoff_link_record_set): Don't do anything if the BFD is not 83160484Sobrien of the right type. 83260484Sobrien (bfd_xcoff_import_symbol): Likewise. 83360484Sobrien (bfd_xcoff_export_symbol): Likewise. 83460484Sobrien (bfd_xcoff_link_count_reloc): Likewise. 83560484Sobrien (bfd_xcoff_record_link_assignment): Likewise. 83660484Sobrien (bfd_xcoff_size_dynamic_sections): Likewise. 83760484Sobrien 83860484Sobrien * sunos.c (sunos_scan_ext_relocs): Only check the reloc symbol 83960484Sobrien table index against the number of symbols for a base relative 84060484Sobrien reloc. 84160484Sobrien 84260484Sobrien * coff-rs6000.c (_bfd_xcoff_sizeof_headers): Change from macro to 84360484Sobrien static function. 84460484Sobrien * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Set 84560484Sobrien full_aouthdr flag here... 84660484Sobrien (_bfd_xcoff_bfd_final_link): ...not here. 84760484Sobrien 84860484SobrienTue Oct 31 12:52:02 1995 Fred Fish <fnf@cygnus.com> 84960484Sobrien 85060484Sobrien * libelf.h: Rename to elf-bfd.h to avoid conflict with 85160484Sobrien systems that have a system <libelf.h>. 85260484Sobrien * Makefile.in: Globally replace libelf.h with elf-bfd.h. 85360484Sobrien * bfd.c, elf.c, elf32-arc.c, elf32-gen.c, elf32-hppa.c, 85460484Sobrien elf32-hppa.h, elf32-i386.c, elf32-i860.c, elf32-m68k.c, 85560484Sobrien elf32-m88k.c, elf32-mips.c, elf32-ppc.c, elf32-sparc.c, 85660484Sobrien elf64-gen.c, elf64-sparc.c, elfcode.h, elflink.c, 85760484Sobrien elfxx-target.h: Include elf-bfd.h rather than libelf.h. 85860484Sobrien * elfxx-target.h: Change libelf.h reference to elf-bfd.h. 85960484Sobrien 86060484SobrienTue Oct 31 15:30:07 1995 David Mosberger-Tang <davidm@azstarnet.com> 86160484Sobrien 86260484Sobrien * ecoff.c (ecoff_set_symbol_info): Add new parameter weak. If 86360484Sobrien set, set BSF_WEAK in symbol. Change all callers. 86460484Sobrien (ecoff_get_extr): Set weakext based on BSF_WEAK. 86560484Sobrien (ecoff_link_add_externals): If weakext is set, pass BSF_WEAK to 86660484Sobrien _bfd_generic_link_add_one_symbol. 86760484Sobrien (ecoff_indirect_link_order): Check that the section tdata relocs 86860484Sobrien are not NULL before using them. 86960484Sobrien 87060484Sobrien * configure.in (alpha*-*-linux*): Set COREFILE to trad-core.o and 87160484Sobrien define TRAD_HEADER as hosts/alphalinux.h. 87260484Sobrien * configure: Rebuild. 87360484Sobrien * hosts/alphalinux.h: New file. 87460484Sobrien * trad-core.c (trad_unix_core_file_p): Cast u.u_ar0 to bfd_vma, 87560484Sobrien not int. 87660484Sobrien 87760484SobrienTue Oct 31 12:34:11 1995 Ian Lance Taylor <ian@cygnus.com> 87860484Sobrien 87960484Sobrien * coffcode.h (coff_slurp_symbol_table): Accept C_BCOMM and 88060484Sobrien C_ECOMM storage classes. 88160484Sobrien 88260484Sobrien * xcofflink.c (xcoff_mark_symbol): New static function, broken out 88360484Sobrien of xcoff_mark. 88460484Sobrien (xcoff_mark): Call xcoff_mark_symbol. 88560484Sobrien (bfd_xcoff_export_symbol): Call xcoff_mark_symbol. 88660484Sobrien (bfd_xcoff_link_count_reloc): Call xcoff_mark_symbol rather than 88760484Sobrien doing it by hand. 88860484Sobrien (xcoff_build_ldsyms): Build a .loader symbol for an export symbol. 88960484Sobrien 89060484SobrienMon Oct 30 14:53:48 1995 Ian Lance Taylor <ian@cygnus.com> 89160484Sobrien 89260484Sobrien * xcofflink.c (struct xcoff_final_link_info): Add new line_filepos 89360484Sobrien field. 89460484Sobrien (xcoff_find_reloc): New static function. 89560484Sobrien (xcoff_link_add_symbols): Use it. 89660484Sobrien (_bfd_xcoff_bfd_final_link): Set finfo.line_filepos. 89760484Sobrien (xcoff_link_input_bfd): Handle C_BINCL and C_EINCL. Don't 89860484Sobrien relocate the value of C_DECL. 89960484Sobrien 90060484Sobrien * elf.c (elf_fake_sections): Remove bogus BFD_ASSERT. 90160484Sobrien 90260484SobrienSat Oct 28 01:25:34 1995 steve chamberlain <sac@slash.cygnus.com> 90360484Sobrien 90460484Sobrien * cofflink.c (_bfd_coff_generic_relocate_section): Make 90560484Sobrien callback decide what goes in .relocs. 90660484Sobrien * pe[i]-i386.c (TARGET_UNDERSCORE): Define. 90760484Sobrien * peicode.h (pe_mkobject_hook): Only copy aouthdr if 90860484Sobrien there is one. 90960484Sobrien 91060484SobrienSat Oct 28 01:51:02 1995 Ian Lance Taylor <ian@cygnus.com> 91160484Sobrien 91260484Sobrien * xcofflink.c (xcoff_link_add_symbols): Handle csects in the 91360484Sobrien absolute section. 91460484Sobrien 91560484SobrienFri Oct 27 18:14:39 1995 Ian Lance Taylor <ian@cygnus.com> 91660484Sobrien 91760484Sobrien * xcofflink.c: More improvements, mostly to fix handling of 91860484Sobrien constructors and a few other special cases. 91960484Sobrien * coff-rs6000.c (rs6000coff_vec): Set symbol_leading_char back to 92060484Sobrien zero, reverting yesterday's change. 92160484Sobrien * bfd-in.h (bfd_xcoff_link_record_set): Declare. 92260484Sobrien (bfd_xcoff_link_count_reloc): Declare. 92360484Sobrien (bfd_xcoff_record_link_assignment): Declare. 92460484Sobrien * bfd-in2.h: Rebuild. 92560484Sobrien 92660484SobrienFri Oct 27 14:42:15 1995 Niklas Hallqvist <niklas@appli.se> 92760484Sobrien 92860484Sobrien * PORTING, aout-arm.c, aout-encap.c, aout-target.h, 92960484Sobrien aoutx.h, gen-aout.c, host-aout.c, hp300bsd.c, i386aout.c 93060484Sobrien i386bsd.c, i386dynix.c, i386linux.c, i386lynx.c, i386mach3.c, 93160484Sobrien i386netbsd.c, m68klynx.c, m88kmach3.c, mipsbsd.c, newsos3.c, 93260484Sobrien ns32knetbsd.c, pc532-mach.c, riscix.c, sparclynx.c, sparcnetbsd.c: 93360484Sobrien Change PAGE_SIZE to TARGET_PAGE_SIZE. 93460484Sobrien 93560484Sobrien * m68knetbsd.c: Ditto as well as add support for the m68k4k object 93660484Sobrien format. 93760484Sobrien 93860484Sobrien * netbsd.h: Double ditto (incl. m68k4k support). NetBSD's text 93960484Sobrien segments includes the a.out header. See to that the magic number 94060484Sobrien *always* is big-endian. 94160484Sobrien 94260484Sobrien * config.bfd: Add m68*-hp*-netbsd* case. Cross-pollinate m68k and 94360484Sobrien m68k4k NetBSD configurations. 94460484Sobrien 94560484Sobrien * configure.in, configure: Separate i386 & mips NetBSD 94660484Sobrien configurations from other BSD ones. Don't assume DEC is the only 94760484Sobrien thing NetBSD/mips run on. Add {m68k,ns32k,sparc}-*-netbsd* 94860484Sobrien configurations. Add support for m68k4k NetBSD object format. 94960484Sobrien 95060484Sobrien * libaout.h: Added M_68K4K_NETBSD magic. 95160484Sobrien 95260484Sobrien * m68k4knetbsd.c: New file. 95360484Sobrien 95460484Sobrien * hosts/{m68k,sparc}nbsd.h: Don't define HOST_BIG_ENDIAN_P. 95560484Sobrien 95660484Sobrien * hosts/nbsd.h: Define HOST_BIG_ENDIAN_P according to 95760484Sobrien <machine/endian.h>. 95860484Sobrien 95960484Sobrien * hosts/mipsnbsd.h: New file. 96060484Sobrien 96160484SobrienThu Oct 26 14:16:47 1995 Ian Lance Taylor <ian@cygnus.com> 96260484Sobrien 96360484Sobrien * xcofflink.c: Numerous changes to get closer to a working XCOFF 96460484Sobrien linker. 96560484Sobrien * libcoff-in.h (struct xcoff_tdata): Add full_aouthdr, 96660484Sobrien toc_section, and entry_section fields. 96760484Sobrien (struct xcoff_section_tdata): Remove ldrel_count field. 96860484Sobrien * libcoff.h: Rebuild. 96960484Sobrien * coffcode.h (coff_mkobject_hook): Initialize new xcoff_data 97060484Sobrien fields. 97160484Sobrien (coff_compute_section_file_positions): If RS6000COFF_C, generate 97260484Sobrien full a.out header if full_aouthdr is set in xcoff_data. 97360484Sobrien (coff_write_object_contents): Likewise. Set o_snentry and o_sntoc 97460484Sobrien based on sections stored in xcoff_data. 97560484Sobrien * coff-rs6000.c (xcoff_copy_private_bfd_data): Copy new xcoff_data 97660484Sobrien fields. 97760484Sobrien (xcoff_reloc_type_lookup): Handle BFD_RELOC_CTOR. 97860484Sobrien (rs6000coff_vec): Set symbol_leading_char to '.'. 97960484Sobrien * coffgen.c (coff_get_symbol_info): If fix_value is set, fix the 98060484Sobrien value stored in ret rather than returning a pointer value. 98160484Sobrien 98260484SobrienWed Oct 25 23:10:39 1995 Michael Meissner <meissner@tiktok.cygnus.com> 98360484Sobrien 98460484Sobrien * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Remove MAC 98560484Sobrien format for now. 98660484Sobrien 98760484SobrienWed Oct 25 16:19:27 1995 Jeffrey A Law (law@cygnus.com) 98860484Sobrien 98960484Sobrien * som.c (som_slurp_string_table): Allocate the strings with malloc 99060484Sobrien since they're free'd by free_cached_info. 99160484Sobrien (som_slurp_symbol_table): Similarly for the symbol table. 99260484Sobrien 99360484SobrienWed Oct 25 14:59:22 1995 Per Bothner <bothner@kalessin.cygnus.com> 99460484Sobrien 99560484Sobrien * Makefile.in (diststuff): Don't make headers. 99660484Sobrien 99760484SobrienWed Oct 25 11:32:54 1995 Ian Lance Taylor <ian@cygnus.com> 99860484Sobrien 99960484Sobrien * Makefile.in: Rebuild dependencies. 100060484Sobrien 100160484Sobrien * sunos.c (bfd_sunos_record_link_assignment): Don't do anything if 100260484Sobrien output_bfd is not SunOS. 100360484Sobrien (bfd_sunos_size_dynamic_sections): Likewise. Don't scan relocs of 100460484Sobrien non-SunOS input files. 100560484Sobrien 100660484Sobrien * xcofflink.c: Extensive changes to support linking shared objects 100760484Sobrien and generating a .loader section. 100860484Sobrien * libcoff-in.h (struct xcoff_tdata): Add import_file_id field. 100960484Sobrien (struct xcoff_section_tdata): Add lineno_count, first_symndx, 101060484Sobrien last_symndx, and ldrel_count fields. 101160484Sobrien * libcoff.h: Rebuild. 101260484Sobrien * coff-rs6000.c (xcoff_howto_table): Correct reloc names. 101360484Sobrien * coffcode.h (styp_to_sec_flags): Don't set any flags if STYP_PAD 101460484Sobrien is set. 101560484Sobrien * bfd-in.h (bfd_xcoff_import_symbol): Declare. 101660484Sobrien (bfd_xcoff_export_symbol): Declare. 101760484Sobrien (bfd_xcoff_size_dynamic_sections): Declare. 101860484Sobrien * bfd-in2.h: Rebuild. 101960484Sobrien 102060484SobrienTue Oct 24 17:44:20 1995 Stan Shebs <shebs@andros.cygnus.com> 102160484Sobrien 102260484Sobrien * configure.in: Add xcofflink.o to pmac_xcoff_vec. 102360484Sobrien * configure: Rebuild. 102460484Sobrien * mpw-config.in: Add xcofflink.c.o to powerpc-apple-macos. 102560484Sobrien * coff-pmac.c: Include coff-rs6000.c instead of duplicating its 102660484Sobrien contents. 102760484Sobrien (pmac_xcoff_vec): Update to use new xcoff support. 102860484Sobrien * coff-rs6000.c (xcoff_generic_stat_arch_elt): Make static. 102960484Sobrien (xcoff_write_armap): Declare buf as unsigned char. 103060484Sobrien * xcofflink.c (xcoff_link_add_symbols): Declare a local as PTR. 103160484Sobrien 103260484Sobrien * mpw-make.sed: Generalize subdir_do edit. 103360484Sobrien 103460484SobrienTue Oct 24 10:25:01 1995 Jeffrey A Law (law@cygnus.com) 103560484Sobrien 103660484Sobrien * hppabsd-core.c (make_bfd_asection): Initialize asect->filepos 103760484Sobrien correctly. Don't initialize asect->vma. 103860484Sobrien 103960484SobrienFri Oct 20 13:23:48 1995 Ken Raeburn <raeburn@cygnus.com> 104060484Sobrien 104160484Sobrien * opncls.c (_bfd_new_bfd): If _bfd_chunksize wasn't preset, use 104260484Sobrien something a little less than the page size. 104360484Sobrien 104460484SobrienThu Oct 19 13:06:09 1995 Ian Lance Taylor <ian@cygnus.com> 104560484Sobrien 104660484Sobrien * coff-i960.c (coff_i960_adjust_symndx): Clear *adjustedp. 104760484Sobrien 104860484SobrienWed Oct 18 16:20:08 1995 steve chamberlain <sac@slash.cygnus.com> 104960484Sobrien 105060484Sobrien * coff-i386.c (coff_i386_reloc_type_lookup): New. 105160484Sobrien * coffcode.h (coff_write_object_contents): If .bss is before 105260484Sobrien .data us that as data_start. 105360484Sobrien * cofflink.c (_bfd_coff_generic_relocate_section): Get reloc 105460484Sobrien calc correct. 105560484Sobrien * peicode.h (add_data_entry): Use _cooked_size of data directory. 105660484Sobrien (coff_swap_outhdr_out): Hardwire in version number. 105760484Sobrien 105860484SobrienWed Oct 18 16:50:54 1995 Ken Raeburn <raeburn@cygnus.com> 105960484Sobrien 106060484Sobrien * sunos.c (sunos_add_dynamic_symbols): Rename local variables 106160484Sobrien major and minor to *_vno, since the former are also macros in 106260484Sobrien SunOS header files. Cast result of bfd_alloc to appropriate 106360484Sobrien type. 106460484Sobrien 106560484Sobrien * coffgen.c (coff_find_nearest_line): Cast used_by_bfd value 106660484Sobrien before assigning to sec_data. 106760484Sobrien 106860484SobrienWed Oct 18 13:25:17 1995 Ian Lance Taylor <ian@cygnus.com> 106960484Sobrien 107060484Sobrien * ecoff.c (_bfd_ecoff_find_nearest_line): The offset argument is 107160484Sobrien now relative to the section, not absolute. 107260484Sobrien * ecofflink.c (_bfd_ecoff_locate_line): Use the right symbol to 107360484Sobrien get the file name when there is a N_SO directory name. When 107460484Sobrien handling stabs, remember that section->vma was added to the 107560484Sobrien offset. 107660484Sobrien 107760484SobrienTue Oct 17 18:24:54 1995 Ian Lance Taylor <ian@cygnus.com> 107860484Sobrien 107960484Sobrien * sunos.c (struct sunos_link_hash_table): Add needed field. 108060484Sobrien (sunos_link_hash_table_create): Call bfd_release, not free. 108160484Sobrien (sunos_link_hash_table_create): Initialize needed field. 108260484Sobrien (sunos_add_dynamic_symbols): Record needed objects. 108360484Sobrien (bfd_sunos_get_needed_list): New function. 108460484Sobrien * bfd-in.h (bfd_sunos_get_needed_list): Declare. 108560484Sobrien * bfd-in2.h: Rebuild. 108660484Sobrien 108760484SobrienMon Oct 16 14:43:59 1995 steve chamberlain <sac@slash.cygnus.com> 108860484Sobrien 108960484Sobrien * libcoff-in.h (pe_data_type.in_reloc_p): New. 109060484Sobrien 109160484SobrienMon Oct 16 10:52:50 1995 Ian Lance Taylor <ian@cygnus.com> 109260484Sobrien 109360484Sobrien * bfd-in.h (struct bfd_link_needed_list): Rename from 109460484Sobrien bfd_elf_link_needed_list. 109560484Sobrien * bfd-in2.h: Rebuild. 109660484Sobrien * elf.c, elflink.h, libelf.h: Corresponding changes. 109760484Sobrien 109860484Sobrien Add start at AIX linker support; no shared libraries yet. 109960484Sobrien * xcofflink.c: New file. 110060484Sobrien * configure.in (rs600coff_vec): Use xcofflink.o. 110160484Sobrien * configure: Rebuild. 110260484Sobrien * libcoff-in.h (struct xcoff_tdata): Add csects and debug_indices 110360484Sobrien fields. 110460484Sobrien (struct xcoff_section_tdata): Define. 110560484Sobrien (xcoff_section_data): Define macro. 110660484Sobrien (_bfd_xcoff_bfd_link_hash_table_create): Declare. 110760484Sobrien (_bfd_xcoff_bfd_link_add_symbols): Declare. 110860484Sobrien (_bfd_xcoff_bfd_final_link): Declare. 110960484Sobrien (_bfd_ppc_xcoff_relocate_section): Declare. 111060484Sobrien * libcoff.h: Rebuild. 111160484Sobrien * coff-rs6000.c: Clean up a bit. 111260484Sobrien (xcoff_mkobject): Default modtype to 1L, not RE. Initialize 111360484Sobrien cputype, csects, and debug_indices. 111460484Sobrien (xcoff_copy_private_bfd_data): Copy cputype. 111560484Sobrien (xcoff_howto_table): Rename from rs6000coff_howto_table. 111660484Sobrien (xcoff_rtype2howto): Rename from rs6000coff_rtype2howto. 111760484Sobrien (xcoff_reloc_type_lookup): Rename from 111860484Sobrien rs6000coff_reloc_type_lookup. 111960484Sobrien (coff_relocate_section): Define. 112060484Sobrien (_bfd_xcoff_sizeof_headers): Define. 112160484Sobrien (_bfd_xcoff_bfd_get_relocated_section_contents): Define. 112260484Sobrien (_bfd_xcoff_bfd_relax_section): Define. 112360484Sobrien (_bfd_xcoff_bfd_link_split_section): Define. 112460484Sobrien (rs6000coff_vec): For BFD_JUMP_TABLE_LINK, use _bfd_xcoff, not 112560484Sobrien coff. 112660484Sobrien * coffcode.h (coff_compute_section_file_positions): If AIX, 112760484Sobrien increment sofar by SMALL_AOUTSZ if not executable. 112860484Sobrien (coff_write_object_contents): If AIX, always output an a.out 112960484Sobrien header; if not executable, header size of SMALL_AOUTSZ. 113060484Sobrien * hash.c (struct bfd_strtab_hash): Add xcoff field. 113160484Sobrien (_bfd_stringtab_init): Initialize xcoff field. 113260484Sobrien (_bfd_xcoff_stringtab_init): New function. 113360484Sobrien (_bfd_stringtab_add): In XCOFF mode, leave two bytes for length. 113460484Sobrien (_bfd_stringtab_emit): In XCOFF mode, write out length. 113560484Sobrien * libbfd-in.h (_bfd_xcoff_stringtab_init): Declare. 113660484Sobrien * libbfd.h: Rebuild. 113760484Sobrien * Makefile.in: Rebuild dependencies. 113860484Sobrien (BFD32_BACKENDS): Add xcofflink.o. 113960484Sobrien (CFILES): Add xcofflink.c. 114060484Sobrien 114160484Sobrien * elf32-mips.c (mips_elf_symbol_processing): Set SEC_ALLOC, not 114260484Sobrien SEC_NO_FLAGS, for .acommon section. From Peter Schauer 114360484Sobrien <Peter.Schauer@Regent.E-Technik.TU-Muenchen.DE>. 114460484Sobrien 114560484SobrienSat Oct 14 21:36:02 1995 Michael Meissner <meissner@tiktok.cygnus.com> 114660484Sobrien 114760484Sobrien * coff-ppc.c (in_reloc_p): Add, clone from coff-i386.c. 114860484Sobrien 114960484SobrienFri Oct 13 17:48:43 1995 Ken Raeburn <raeburn@cygnus.com> 115060484Sobrien 115160484Sobrien * acconfig.h (HAVE_SYS_PROCFS_H): Undef, with comment. 115260484Sobrien * config.in: Regenerated. 115360484Sobrien 115460484Sobrien * opncls.c (getpagesize) [!HAVE_GETPAGESIZE]: Define as 2048. 115560484Sobrien (_bfd_chunksize): New variable. 115660484Sobrien (_bfd_new_bfd): Set it to getpagesize() if negative, and use it 115760484Sobrien for obstack chunk size. 115860484Sobrien * configure.in: Check for getpagesize. 115960484Sobrien * configure: Regenerated. 116060484Sobrien 116160484Sobrien Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 116260484Sobrien 116360484Sobrien * trad-core.c (rawptr): Make it a local variable of 116460484Sobrien ptrace_unix_core_file_p. 116560484Sobrien 116660484SobrienFri Oct 13 11:22:01 1995 steve chamberlain <sac@slash.cygnus.com> 116760484Sobrien 116860484Sobrien * coff-arm.c (in_reloc_p): New. 116960484Sobrien * coff-i386.c (in_reloc_p): New. 117060484Sobrien * coffcode.h: Allways include peicode.h if COFF_WITH_PE. 117160484Sobrien (coff_write_object_contents): Only set has_reloc_section 117260484Sobrien if PE_IMAGE. 117360484Sobrien * cofflink.c (_bfd_coff_generic_relocate_section): Call 117460484Sobrien in_reloc_p to decide if reloc should be emitted. 117560484Sobrien * libcoff.h (pe_data_type.in_reloc_p): New. 117660484Sobrien * peicode.h (pe_mkobject): Initialize in_reloc_p. 117760484Sobrien 117860484SobrienWed Oct 11 00:49:29 1995 Ian Lance Taylor <ian@cygnus.com> 117960484Sobrien 118060484Sobrien * cofflink.c (_bfd_coff_internal_syment_name): Move to coffgen.c. 118160484Sobrien (_bfd_coff_read_internal_relocs): Likewise. 118260484Sobrien * coffgen.c (_bfd_coff_internal_syment_name): Copy from coffgen.c. 118360484Sobrien (_bfd_coff_read_internal_relocs): Likewise. 118460484Sobrien 118560484Sobrien * elflink.h (elf_link_add_object_symbols): Correct conditions 118660484Sobrien under which type and size change warnings are issued. 118760484Sobrien 118860484SobrienTue Oct 10 18:32:46 1995 Ian Lance Taylor <ian@cygnus.com> 118960484Sobrien 119060484Sobrien * coffgen.c (coff_count_linenumbers): Don't count line numbers for 119160484Sobrien a symbol which is not in a real section. 119260484Sobrien (coff_write_native_symbol): Corresponding change. 119360484Sobrien 119460484Sobrien * cofflink.c (_bfd_coff_link_hash_newfunc): Rename from 119560484Sobrien coff_link_hash_newfunc and make non-static. 119660484Sobrien (_bfd_coff_link_hash_table_init): New function, broken out of 119760484Sobrien _bfd_coff_link_hash_table_create. 119860484Sobrien (_bfd_coff_link_hash_table_create): Use it. 119960484Sobrien (process_embedded_commands): Make static. 120060484Sobrien * libcoff-in.h ((_bfd_coff_link_hash_newfunc): Declare. 120160484Sobrien (_bfd_coff_link_hash_table_init): Declare. 120260484Sobrien * libcoff.h: Rebuild. 120360484Sobrien 120460484Sobrien * coffcode.h (coff_mkobject_hook): If RS6000COFF_C, set cputype 120560484Sobrien field in XCOFF tdata. 120660484Sobrien (coff_set_arch_mach_hook): Check ifdef RS6000COFF_C, not ifdef 120760484Sobrien U802ROMAGIC, for clarity. Try to set arch and machine correctly 120860484Sobrien based on cputype stored in a.out header, or in n_type of initial 120960484Sobrien .file symbol. 121060484Sobrien (coff_write_object_contents): Set cputype correctly in a.out 121160484Sobrien header. 121260484Sobrien (coff_slurp_symbol_table): Add casts to file_ptr to avoid 121360484Sobrien warnings. 121460484Sobrien * coffswap.h (coff_swap_aouthdr_in): Swap in cputype field. 121560484Sobrien (coff_swap_aouthdr_out): Swap out cputype field. Don't clear 121660484Sobrien old resv1 field. 121760484Sobrien * libcoff-in.h (struct xcoff_tdata): Add cputype field. 121860484Sobrien * libcoff.h: Rebuild. 121960484Sobrien 122060484Sobrien * cpu-rs6000.c (rs6000_compatible): New static function. 122160484Sobrien (bfd_rs6000_arch): Use it. 122260484Sobrien * cpu-powerpc.c (powerpc_compatible): New static function. 122360484Sobrien (arch_info_struct): Define various flavours of PowerPC. 122460484Sobrien (bfd_powerpc_arch): Use powerpc_compatible. Point at 122560484Sobrien arch_info_struct. 122660484Sobrien 122760484SobrienTue Oct 10 10:50:46 1995 Fred Fish <fnf@cygnus.com> 122860484Sobrien 122960484Sobrien * Makefile.in (FLAGS_TO_PASS): Remove BISON. 123060484Sobrien 123160484SobrienTue Oct 10 01:28:29 1995 Ian Lance Taylor <ian@cygnus.com> 123260484Sobrien 123360484Sobrien * elflink.h (elf_link_add_object_symbols): Don't warn about 123460484Sobrien changing the size or type if the old definition was weak. 123560484Sobrien 123660484SobrienMon Oct 9 11:24:08 1995 Ian Lance Taylor <ian@cygnus.com> 123760484Sobrien 123860484Sobrien * coffcode.h (combined_entry_type): Add fix_line field. 123960484Sobrien (coff_slurp_line_table): Warn if we try to set the lineno field of 124060484Sobrien a symbol twice. 124160484Sobrien (coff_slurp_symbol_table): If RS6000COFF_C, handle C_BINCL and 124260484Sobrien C_EINCL by setting fix_line. Fix C_BSTAT symbol value. 124360484Sobrien * coffgen.c (coff_mangle_symbols): Handle fix_line. 124460484Sobrien (coff_write_symbol): Only use N_DEBUG if the symbol is in the 124560484Sobrien absolute section. 124660484Sobrien (coff_print_symbol): Print fix_value symbols in a useful fashion. 124760484Sobrien * libcoff.h: Rebuild. 124860484Sobrien 124960484Sobrien * libcoff-in.h (struct xcoff_tdata): Define. 125060484Sobrien (xcoff_data): Define. 125160484Sobrien * bfd.c (struct _bfd): Add xcoff_obj_data field to tdata union. 125260484Sobrien * bfd-in2.h, libcoff.h: Rebuild. 125360484Sobrien * coff-rs6000.c (xcoff_mkobject): New static function. 125460484Sobrien (coff_mkobject): Define. 125560484Sobrien (xcoff_copy_private_bfd_data): New static function. 125660484Sobrien (coff_bfd_copy_private_bfd_data): Define. 125760484Sobrien (rs6000coff_howto_table): Change R_TOC complain_on_overflow from 125860484Sobrien signed to bitfield. 125960484Sobrien (rs6000coff_vec): Add DYNAMIC to object_flags. 126060484Sobrien * coffcode.h (sec_to_styp_flags): If RS6000COFF_C, handle .pad and 126160484Sobrien .loader sections specially. 126260484Sobrien (coff_new_section_hook): If RS6000COFF_C, get the .text and .data 126360484Sobrien section alignment from the XCOFF tdata information. 126460484Sobrien (coff_mkobject_hook): If RS6000COFF_C, set DYNAMIC based on 126560484Sobrien F_SHROBJ, and copy the extra a.out header information into the 126660484Sobrien XCOFF tdata structure. 126760484Sobrien (coff_write_object_contents): If RS6000COFF_C, set F_SHROBJ, 126860484Sobrien F_DYNLOAD and the extra a.out header information. 126960484Sobrien (coff_slurp_symbol_table): Set BSF_NOT_AT_END for a C_EXT or 127060484Sobrien C_HIDEXT symbol with attached csect information. 127160484Sobrien * coffswap.h (coff_swap_aouthdr_in): If RS6000COFF_C, swap 127260484Sobrien in the o_maxdata field. 127360484Sobrien (coff_swap_aouthdr_out): If RS6000COFF_C, swap extra XCOFF fields. 127460484Sobrien * coffgen.c (coff_renumber_symbols): Don't move any symbol to the 127560484Sobrien end if BSF_NOT_AT_END is set. 127660484Sobrien 127760484Sobrien * targets.c (bfd_target): Rename _bfd_read_ar_hdr field to 127860484Sobrien _bfd_read_ar_hdr_fn. 127960484Sobrien * libbfd-in.h (_bfd_read_ar_hdr): Update accordingly. 128060484Sobrien * bfd-in2.h, libbfd.h: Rebuild. 128160484Sobrien * archive.c (_bfd_get_elt_at_filepos): Cast _bfd_read_ar_hdr 128260484Sobrien return value. 128360484Sobrien (do_slurp_bsd_armap, do_slurp_coff_armap): Likewise. 128460484Sobrien (bfd_slurp_bsd_armap_f2): Likewise. 128560484Sobrien (_bfd_slurp_extended_name_table): Likewise. 128660484Sobrien 128760484SobrienFri Oct 6 16:18:35 1995 Ken Raeburn <raeburn@cygnus.com> 128860484Sobrien 128960484Sobrien Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 129060484Sobrien 129160484Sobrien * archive.c (bfd_get_next_mapent): Return BFD_NO_MORE_SYMBOLS 129260484Sobrien when the symbol table is empty. 129360484Sobrien 129460484Sobrien * elf32-m68k.c (elf_m68k_size_dynamic_sections): Don't reserve 129560484Sobrien space for section symbols, since we don't output them either. 129660484Sobrien (elf_m68k_adjust_dynindx): Removed. 129760484Sobrien 129860484Sobrien * ptrace-core.c (rawptr): Make it a local variable of 129960484Sobrien ptrace_unix_core_file_p. 130060484Sobrien 130160484SobrienFri Oct 6 12:24:47 1995 Michael Meissner <meissner@tiktok.cygnus.com> 130260484Sobrien 130360484Sobrien * coff-rs6000.c (xcoff_write_archive_contents): Return false, not 130460484Sobrien NULL. 130560484Sobrien 130660484Sobrien * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Add NT, and 130760484Sobrien Mac object file formats. 130860484Sobrien 130960484SobrienFri Oct 6 12:04:02 1995 Ian Lance Taylor <ian@cygnus.com> 131060484Sobrien 131160484Sobrien * coffgen.c (coff_fix_symbol_name): Don't try to set up file 131260484Sobrien auxent if there isn't one. 131360484Sobrien (coff_write_symbols): If there is no file auxent, use SYMNMLEN 131460484Sobrien rather than FILNMLEN as the maximum name length. 131560484Sobrien 131660484Sobrien * coffcode.h (bfd_coff_backend_data): Add new field 131760484Sobrien _bfd_coff_print_aux. 131860484Sobrien (bfd_coff_print_aux): New static function. 131960484Sobrien (coff_pointerize_aux_hook (RS6000COFF_C version)): Pointerize the 132060484Sobrien scnlen field of an XTY_LD csect aux entry. 132160484Sobrien (coff_print_aux): New static function. 132260484Sobrien (coff_slurp_symbol_table): Don't pointerize scnlen field; now done 132360484Sobrien in coff_pointerize_aux_hook. 132460484Sobrien (bfd_coff_std_swap_table): Initialize new field. 132560484Sobrien * coffgen.c (coff_print_symbol): Call bfd_coff_print_aux. 132660484Sobrien * libcoff.h: Rebuild. 132760484Sobrien * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field. 132860484Sobrien * coff-mips.c (mips_ecoff_backend_data): Likewise. 132960484Sobrien 133060484Sobrien * coffcode.h (coff_write_object_contents): On AIX, clear F_RELFLG 133160484Sobrien if there are symbols, for native AIX ld compatibility. 133260484Sobrien 133360484Sobrien * coffcode.h (bfd_coff_backend_data): Add new field 133460484Sobrien _bfd_coff_pointerize_aux_hook. 133560484Sobrien (coff_pointerize_aux_hook): Define as a function if RS6000COFF_C 133660484Sobrien or I960, and as 0 otherwise. 133760484Sobrien (bfd_coff_std_swap_table): Initialize new field. 133860484Sobrien * libcoff.h: Rebuild. 133960484Sobrien * coffgen.c (coff_pointerize_aux): Change parameters to take 134060484Sobrien symbol pointer instead of type and class, and to take aux index. 134160484Sobrien Call _bfd_coff_pointerize_aux_hook if it is defined. 134260484Sobrien (coff_get_normalized_symtab): Always call coff_pointerize_aux. 134360484Sobrien * coff-alpha.c (alpha_ecoff_backend_data): Initialize all fields. 134460484Sobrien * coff-mips.c (mips_ecoff_backend_data): Likewise. 134560484Sobrien 134660484Sobrien * coff-rs6000.c: Add full support for AIX archives. Rewrite old 134760484Sobrien read-only/host-only support. 134860484Sobrien 134960484Sobrien * coffcode.h (coff_slurp_symbol_table): Set C_HIDEXT symbols to be 135060484Sobrien BSF_LOCAL. 135160484Sobrien (OTHER_GLOBAL_CLASS): Do not define to be C_HIDEXT if 135260484Sobrien RS6000COFF_C. 135360484Sobrien 135460484Sobrien * targets.c (bfd_target): Add _bfd_read_ar_hdr field. Modify 135560484Sobrien BFD_JUMP_TABLE_ARCHIVE accordingly. 135660484Sobrien * libbfd-in.h (_bfd_snarf_ar_hdr): Don't declare. 135760484Sobrien (_bfd_compute_and_write_armap): Declare. 135860484Sobrien (_bfd_generic_read_ar_hdr): Declare. 135960484Sobrien (_bfd_read_ar_hdr): Define. 136060484Sobrien (_bfd_noarchive_read_ar_hdr): Define. 136160484Sobrien (_bfd_archive_bsd_read_ar_hdr): Define. 136260484Sobrien (_bfd_archive_coff_read_ar_hdr): Define. 136360484Sobrien * archive.c: Change all callers of _bfd_snarf_ar_hdr to call 136460484Sobrien _bfd_read_ar_hdr instead. 136560484Sobrien (_bfd_generic_read_ar_hdr): Rename from _bfd_snarf_ar_hdr. 136660484Sobrien (_bfd_compute_and_write_armap): Rename from 136760484Sobrien compute_and_write_armap. Make non-static. Change all callers. 136860484Sobrien * ecoff.c (_bfd_ecoff_slurp_armap): Call _bfd_read_ar_hdr rather 136960484Sobrien than _bfd_snarf_ar_hdr. 137060484Sobrien * aout-target.h (MY_read_ar_hdr): Define if not defined. 137160484Sobrien * ieee.c (ieee_read_ar_hdr): Define. 137260484Sobrien * libecoff.h (_bfd_ecoff_read_ar_hdr): Define. 137360484Sobrien * oasys.c (oasys_read_ar_hdr): Define. 137460484Sobrien * som.c (som_read_ar_hdr): Define. 137560484Sobrien * bfd-in2.h, libbfd.h: Rebuild. 137660484Sobrien 137760484SobrienThu Oct 5 14:04:07 1995 steve chamberlain <sac@slash.cygnus.com> 137860484Sobrien 137960484Sobrien * peicode.c (coff_swap_filehdr_in): If symptr is 138060484Sobrien zero, there aren't any symbols, even if nsyms is set. 138160484Sobrien 138260484SobrienThu Oct 5 11:45:02 1995 Ian Lance Taylor <ian@cygnus.com> 138360484Sobrien 138460484Sobrien * libecoff.h (struct ecoff_backend_data): Add adjust_headers 138560484Sobrien field. 138660484Sobrien * ecoff.c (ecoff_sec_to_styp_flags): Check for various Alpha 138760484Sobrien sections, and set styp correctly for them: .got, .hash, .dynamic, 138860484Sobrien .liblist, .rel.dyn, .conflic, .dynstr, .dynsym, .comment. 138960484Sobrien (_bfd_ecoff_styp_to_sec_flags): Check for various Alpha section 139060484Sobrien types. 139160484Sobrien (ecoff_sort_hdrs): New static function. 139260484Sobrien (ecoff_compute_section_file_positions): Return boolean, not void. 139360484Sobrien Sort the sections by VMA before looking through them. Put the 139460484Sobrien first non SEC_ALLOC section on a new page. Put every SEC_ALLOC 139560484Sobrien section on an appropriate boundary within the page. 139660484Sobrien (ecoff_compute_reloc_file_positions): Check return value of 139760484Sobrien ecoff_compute_section_file_positions. 139860484Sobrien (_bfd_ecoff_set_section_contents): Likewise. 139960484Sobrien (_bfd_ecoff_write_object_contents): Check for various Alpha 140060484Sobrien section types when incrementing text_size and data_size. Call 140160484Sobrien adjust_headers backend function if it exists. 140260484Sobrien * coff-alpha.c (alpha_adjust_headers): New static function. 140360484Sobrien (alpha_ecoff_backend_data): Initialize adjust_headers field. 140460484Sobrien * coff-mips.c (mips_ecoff_backend_data): Likewise. 140560484Sobrien 140660484Sobrien * hosts/i386bsd.h: Restore file incorrectly deleted on Sep 6. 140760484Sobrien 140860484SobrienWed Oct 4 18:15:02 1995 Jeff Law (law@hurl.cygnus.com) 140960484Sobrien 141060484Sobrien * rs6000-core.c (CORE_VERSION_1): Use CORE_VERSION_1 instead 141160484Sobrien of ALTERNATE_AIX_CORE_FORMAT. 141260484Sobrien * configure.in (aix4): No longer need CORE_FLAGS. 141360484Sobrien * configure: Updated. 141460484Sobrien 141560484SobrienWed Oct 4 15:36:36 1995 Ken Raeburn <raeburn@cygnus.com> 141660484Sobrien 141760484Sobrien NS32k changes from Ian Dall: 141860484Sobrien * aoutx.h (MY_final_link_relocate, MY_relocate_contents): New 141960484Sobrien macros. 142060484Sobrien (aout_link_input_section_std, aout_link_input_section_ext, 142160484Sobrien aout_link_reloc_link_order): Call them instead of _bfd_* 142260484Sobrien versions. 142360484Sobrien * aout-target.h (MY_exec_header_not_counted): New macro, defaults 142460484Sobrien to zero. 142560484Sobrien (backend_data): Use it instead of hardcoded zero. 142660484Sobrien 142760484Sobrien * aout-ns32k.c (CTOR_TABLE_RELOC_HOWTO): New macro. 142860484Sobrien (MY_swap_std_reloc_out): Use udata.i for KEEPIT, don't call stoi. 142960484Sobrien 143060484Sobrien * ns32knetbsd.c: Include bfd.h. 143160484Sobrien (MY_text_includes_header, MY_bfd_reloc_type_lookup): New macros. 143260484Sobrien (MY_bfd_reloc_type_lookup): Declare function too. 143360484Sobrien * pc532-mach.c (set_sizes): Don't declare. 143460484Sobrien (MY_text_includes_header, MY_exec_header_not_counted): Define. 143560484Sobrien (backend_data, MY_backend_data): Don't define. 143660484Sobrien 143760484Sobrien * config.bfd: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and 143860484Sobrien ns32k-*-lites* like ns32k-*-netbsd*. 143960484Sobrien 144060484Sobrien * hosts/nbsd.h: Swap order of sys/vmparam.h and sys/param.h, to 144160484Sobrien compile on lites. 144260484Sobrien 144360484SobrienWed Oct 4 14:15:52 1995 Ian Lance Taylor <ian@cygnus.com> 144460484Sobrien 144560484Sobrien * coffcode.h (coff_write_object_contents): Restore setting 144660484Sobrien f_timdat to 0, deleted on August 22. 144760484Sobrien 144860484SobrienTue Oct 3 16:28:32 1995 steve chamberlain <sac@slash.cygnus.com> 144960484Sobrien 145060484Sobrien * coffcode.h (coff_bfd_copy_private_symbol_data, 145160484Sobrien coff_bfd_copy_private_section_data, 145260484Sobrien coff_bfd_copy_private_bfd_data): ifdef to allow overrides. 145360484Sobrien * peicode.h (coff_bfd_copy_private_bfd_data): New 145460484Sobrien (pe_bfd_copy_private_bfd_data): New. 145560484Sobrien (coff_swap_scnhdr_in): Swap bss size into the right place. 145660484Sobrien (pe_print_private_bfd_data): Add some newlines. 145760484Sobrien 145860484SobrienTue Oct 3 11:53:04 1995 Jeff Law (law@hurl.cygnus.com) 145960484Sobrien 146060484Sobrien * som.c (setup_sections): Don't die if a space has no subspaces. 146160484Sobrien 146260484SobrienMon Oct 2 14:08:55 1995 Ian Lance Taylor <ian@cygnus.com> 146360484Sobrien 146460484Sobrien * elflink.h (elf_link_add_object_symbols): Don't let a weak 146560484Sobrien dynamic symbol override a common symbol. Don't change the size or 146660484Sobrien type if they have been set and the new symbol is not a definition. 146760484Sobrien Warn if the size or type changes. 146860484Sobrien 146960484SobrienSun Oct 1 01:34:41 1995 Jeff Law (law@hurl.cygnus.com) 147060484Sobrien 147160484Sobrien * som.c (som_begin_writing): Don't write the symbol table or 147260484Sobrien symbol strings. 147360484Sobrien (som_finish_writing): Write them here. Place them after the 147460484Sobrien subspace data, but before the relocs. 147560484Sobrien 147660484SobrienFri Sep 29 11:01:55 1995 Ian Lance Taylor <ian@cygnus.com> 147760484Sobrien 147860484Sobrien * sunos.c (sunos_add_one_symbol): Just pass false, not 147960484Sobrien info->shared_library, to sunos_create_dynamic_sections. 148060484Sobrien (sunos_scan_ext_relocs): Don't warn about a reloc in the .text 148160484Sobrien section. 148260484Sobrien (sunos_check_dynamic_reloc): Remove .text section assertion. 148360484Sobrien 148460484SobrienThu Sep 28 18:48:47 1995 Stan Shebs <shebs@andros.cygnus.com> 148560484Sobrien 148660484Sobrien * config.bfd: Add powerpc-*-macos*, powerpc-*-mpw*. 148760484Sobrien * configure, configure.in: Add pmac_xcoff_vec case. 148860484Sobrien * Makefile.in (BFD32_BACKENDS): Add coff-pmac.o. 148960484Sobrien * coff-pmac.c: New file, PowerMac XCOFF support. 149060484Sobrien * coffcode.h (coff_set_arch_mach_hook): Add PowerMac case. 149160484Sobrien * targets.c (pmac_xcoff_vec): Declare. 149260484Sobrien 149360484Sobrien * mpw-config.in: Various changes to be compatible with the 149460484Sobrien autoconf-based configury. 149560484Sobrien * mpw-make.sed: New file, sed commands to translate Unix 149660484Sobrien makefile into MPW syntax. 149760484Sobrien * mpw-make.in: Remove. 149860484Sobrien * hosts/mpw.h: Remove. 149960484Sobrien * bfd-in.h, bfd-in2.h: If MPW, include the file that defines 150060484Sobrien true and false as enums, then define TRUE_FALSE_ALREADY_DEFINED. 150160484Sobrien 150260484SobrienThu Sep 28 17:06:23 1995 steve chamberlain <sac@slash.cygnus.com> 150360484Sobrien 150460484Sobrien * binary.c (binary_get_symtab): Return an empty string on error. 150560484Sobrien * opncls.c (bfd_fdpenr): Change WIN32 restriction to WINGDB. 150660484Sobrien 150760484SobrienThu Sep 28 15:30:44 1995 Kim Knuttila <krk@nellie> 150860484Sobrien 150960484Sobrien * coff-ppc.c: Reformatted according to gnu conventions 151060484Sobrien Removed irrelevant "if 0" code 151160484Sobrien 151260484SobrienThu Sep 28 11:19:53 1995 Ian Lance Taylor <ian@cygnus.com> 151360484Sobrien 151460484Sobrien * hp300hpux.c (convert_sym_type): Treat secondary symbols as weak 151560484Sobrien symbols rather than as indirect symbols. 151660484Sobrien (MY(slurp_symbol_table)): Don't do anything special about 151760484Sobrien secondary symbols. 151860484Sobrien 151960484Sobrien * coffcode.h (coff_new_section_hook): Make sure that the alignment 152060484Sobrien of .ctors and .dtors sections is no larger than 2. 152160484Sobrien 152260484Sobrien * sunos.c (sunos_add_one_symbol): Don't change 152360484Sobrien bfd_link_hash_common to bfd_link_hash_new, since it may be on the 152460484Sobrien undef list. 152560484Sobrien (bfd_sunos_record_link_assignment): Don't put __DYNAMIC in the 152660484Sobrien dynamic symbols when creating a shared library. 152760484Sobrien (sunos_scan_ext_relocs): Handle relocs correctly when creating a 152860484Sobrien shared library. 152960484Sobrien (sunos_scan_dynamic_symbol): Don't mark the __DYNAMIC symbol as 153060484Sobrien written even if it is not defined in a regular object. 153160484Sobrien (sunos_write_dynamic_symbol): Use plt_offset for the address of 153260484Sobrien the jump table reloc. Add an assertion. Use RELOC_JMP_SLOT 153360484Sobrien rather than the constant 22. 153460484Sobrien (sunos_check_dynamic_reloc): Handle creating a shared library. 153560484Sobrien (sunos_finish_dynamic_link): Set the first entry in the GOT to 153660484Sobrien zero when creating a shared library. 153760484Sobrien * aoutx.h (NAME(aout,final_link)): If there is a symbol __DYNAMIC, 153860484Sobrien write it out at the start of the symbol table. 153960484Sobrien 154060484Sobrien * Makefile.in (BFD32_BACKENDS): Add coff-arm.o. 154160484Sobrien 154260484SobrienThu Sep 28 00:58:05 1995 Doug Evans <dje@deneb.cygnus.com> 154360484Sobrien 154460484Sobrien * config.bfd: Add arm-*-coff. 154560484Sobrien * configure.in, configure: Add armcoff_{little,big}_vec. 154660484Sobrien * targets.c (armcoff_{little,big}_vec): Declare. 154760484Sobrien (bfd_target_vector): Add armcoff_{little,big}_vec. 154860484Sobrien * coff-arm.c (armcoff_{little,big}_vec): Always define. 154960484Sobrien 155060484SobrienWed Sep 27 10:37:14 1995 Ian Lance Taylor <ian@cygnus.com> 155160484Sobrien 155260484Sobrien * targets.c (bfd_find_target): Remove debugging code. 155360484Sobrien 155460484SobrienWed Sep 27 07:23:39 1995 Kim Knuttila <krk@nellie> 155560484Sobrien 155660484Sobrien * coff-ppc.c, pe-ppc.c, pei-ppc.c: Initial bfd for coff/PE 155760484Sobrien support on powerpc. 155860484Sobrien * Makefile.in: added *-ppc files 155960484Sobrien * coffcode.h: ppc MAGIC, and use peicode.h rather than coffswap.h to 156060484Sobrien allow pe based .o's to be shared with other tools on ppc/NT 156160484Sobrien * config.bfd: added powerpc[le]-[pe|winnt] config support 156260484Sobrien * configure, configure.in: added bfd_powerpc[le]_pe[i]_vec 156360484Sobrien * peicode.h: Added more section flags for PE on ppc 156460484Sobrien Added coff_swap_filehdr_out to allow peicode.h to be 156560484Sobrien used for non-image PE files on ppc. 156660484Sobrien Check for image, or not, before copying pe_opthdr 156760484Sobrien * targets.c: Added new bfd's 156860484Sobrien * targets.c: Removed two inactive bfds that shouldn't have made it this 156960484Sobrien far. 157060484Sobrien 157160484SobrienTue Sep 26 14:06:41 1995 Michael Meissner <meissner@tiktok.cygnus.com> 157260484Sobrien 157360484Sobrien * elf32-ppc.c (ppc_reloc_type): Rename from reloc_type, and use 157460484Sobrien explicit values to initialize all relocs. Change all users. 157560484Sobrien (ppc_elf_brtaken_inner): New function to handle branch predicition 157660484Sobrien relocs. 157760484Sobrien (ppc_elf_brtaken_reloc): Ditto. 157860484Sobrien (ppc_elf_howto_raw): Use new functions. Make sure all unsupported 157960484Sobrien relocs use ppc_elf_unsupported_reloc. 158060484Sobrien (ppc_elf_merge_private_bfd_data): Keep track of whether an error 158160484Sobrien needs to be reported. 158260484Sobrien (ppc_elf_relocate_section): Support branch prediction relocs. 158360484Sobrien 158460484SobrienTue Sep 26 12:48:05 1995 Ian Lance Taylor <ian@cygnus.com> 158560484Sobrien 158660484Sobrien * bfd.c (bfd_assert): Remove \n from string passed to 158760484Sobrien _bfd_error_handler. 158860484Sobrien 158960484Sobrien * coff-i386.c: (TWO_DATA_SECS): Don't define. 159060484Sobrien * coffcode.h (bfd_coff_backend_data): Remove _bfd_make_section_hook. 159160484Sobrien (bfd_coff_make_section_hook): Don't define. 159260484Sobrien (coff_make_section_hook): Remove. 159360484Sobrien (sec_to_styp_flags): Remove TWO_DATA_SECS case. 159460484Sobrien (styp_to_sec_flags): Likewise. 159560484Sobrien (coff_write_object_contents): Likewise. 159660484Sobrien (bfd_coff_std_swap_table): Don't initialize make_section_hook 159760484Sobrien field. 159860484Sobrien * libcoff.h: Rebuild. 159960484Sobrien * coffgen.c (make_a_section_from_file): Just call 160060484Sobrien bfd_make_section_anyway, not bfd_make_section or 160160484Sobrien bfd_coff_make_section_hook. 160260484Sobrien * ecoff.c (_bfd_ecoff_make_section_hook): Remove. 160360484Sobrien * libecoff.h (_bfd_ecoff_make_section_hook): Don't declare. 160460484Sobrien * coff-alpha.c (alpha_ecoff_backend_data): Don't initialize 160560484Sobrien make_section_hook field. 160660484Sobrien * coff-mips.c (mips_ecoff_backend_data): Likewise. 160760484Sobrien 160860484Sobrien * aoutx.h (translate_from_native_sym_flags): Don't try to stuff 160960484Sobrien pointers into value field for warning and indirect symbols; just 161060484Sobrien leave the value field alone. 161160484Sobrien * linker.c (generic_link_add_symbol_list): Use next symbol for 161260484Sobrien warning and indirect symbols, rather than looking in symbol value. 161360484Sobrien * ecoff.c (ecoff_set_symbol_info): Remove indirect_ptr_ptr 161460484Sobrien parameter. Change all callers. Remove support for indirect 161560484Sobrien symbols; it didn't work anyhow. 161660484Sobrien (_bfd_ecoff_slurp_symbol_table): Remove indirect_ptr variable. 161760484Sobrien * syms.c: Change comments about BSF_WARNING and BSF_INDIRECT. 161860484Sobrien * bfd-in2.h: Rebuild. 161960484Sobrien 162060484SobrienMon Sep 25 16:04:09 1995 Michael Meissner <meissner@tiktok.cygnus.com> 162160484Sobrien 162260484Sobrien * elf32-ppc.c (ppc_elf_howto_raw): For all 14-bit branch relocs, 162360484Sobrien go back to telling the tools this reloc operates on 32 bits. 162460484Sobrien 162560484SobrienMon Sep 25 11:48:02 1995 Ian Lance Taylor <ian@cygnus.com> 162660484Sobrien 162760484Sobrien * aout-adobe.c (aout_adobe_callback): Use _bfd_error_handler 162860484Sobrien rather than a direct fprintf. 162960484Sobrien * archive.c (_bfd_write_archive_contents): Likewise. 163060484Sobrien * coffcode.h (coff_slurp_symbol_table): Likewise. 163160484Sobrien * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Likewise. 163260484Sobrien (ppc_elf_unsupported_reloc): Likewise. 163360484Sobrien (ppc_elf_relocate_section): Likewise. 163460484Sobrien * i386linux.c (linux_tally_symbols): Likewise. 163560484Sobrien (linux_finish_dynamic_link): Likewise. 163660484Sobrien * osf-core.c (osf_core_core_file_p): Likewise. 163760484Sobrien * rs6000-core.c (rs6000coff_get_section_contents): Likewise. 163860484Sobrien * som.c (som_sizeof_headers): Likewise. 163960484Sobrien * srec.c (srec_bad_byte): Likewise. 164060484Sobrien * bfd.c (bfd_assert): Likewise. Also change file to be const. 164160484Sobrien * libbfd-in.h (bfd_assert): Declare first parameter const. 164260484Sobrien * libbfd.h: Rebuild. 164360484Sobrien * coff-a29k.c (a29k_reloc): Don't bother to fprintf; returning 164460484Sobrien bfd_reloc_overflow is enough. 164560484Sobrien * coff-h8300.c (rtype2howto): Don't bother to fprintf; just abort. 164660484Sobrien * coff-h8500.c (rtype2howto): Likewise. 164760484Sobrien * coff-z8k.c (rtype2howto): Likewise. 164860484Sobrien * coffcode.h (dummy_reloc16_extra_cases): Likewise. 164960484Sobrien * elf.c (_bfd_elf_get_lineno): Likewise. 165060484Sobrien (_bfd_elf_no_info_to_howto): Likewise. 165160484Sobrien (_bfd_elf_no_info_to_howto_rel): Likewise. 165260484Sobrien * hp300hpux.c (convert_sym_type): Likewise. 165360484Sobrien (MY(swap_std_reloc_in)): Likewise. 165460484Sobrien * elf.c (bfd_section_from_shdr): Remove #if 0 sections. 165560484Sobrien 165660484Sobrien * libaout.h (struct aoutdata): Add line_buf field. 165760484Sobrien * aoutx.h (NAME(aout,find_nearest_line)): Remove statics buffer 165860484Sobrien and filename_buffer. Instead, use a malloc buffer stored in the 165960484Sobrien new line_buf field. Remove length restrictions. 166060484Sobrien 166160484Sobrien * coffgen.c (string_size): Remove static variable. 166260484Sobrien (debug_string_size, debug_string_section): Likewise. 166360484Sobrien (coff_fix_symbol_name): Add string_size_p, debug_string_section_p, 166460484Sobrien and debug_string_size_p parameters. Use them instead of the 166560484Sobrien global variables. Change all callers. 166660484Sobrien (coff_write_symbol): Likewise. 166760484Sobrien (coff_write_alien_symbol, coff_write_native_symbol): Likewise. 166860484Sobrien (coff_write_symbols): Add local variables to replace removed 166960484Sobrien global variables. 167060484Sobrien 167160484Sobrien * libcoff-in.h (struct coff_section_tdata): Add offset, i, 167260484Sobrien function, and line_base fields. 167360484Sobrien * libcoff.h: Rebuild. 167460484Sobrien * coffgen.c (coff_find_nearest_line): Use section tdata to cache 167560484Sobrien information, rather than using static variables. 167660484Sobrien 167760484Sobrien * sunos.c (sunos_read_dynamic_info): Adjust offsets in an NMAGIC 167860484Sobrien file. From Peter DeWolf <pld@amt.tay1.dec.com>. 167960484Sobrien 168060484Sobrien * init.c (initialized): Remove static variable. 168160484Sobrien (bfd_init): Don't bother setting initialized. 168260484Sobrien (bfd_check_init): Remove. 168360484Sobrien * opncls.c (_bfd_new_bfd): Don't call bfd_check_init. 168460484Sobrien * libbfd.h: Rebuild. 168560484Sobrien 168660484SobrienSat Sep 23 01:22:23 1995 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 168760484Sobrien 168860484Sobrien * rs6000-core.c (rs6000coff_core_p): Don't check the core file 168960484Sobrien size for full core dumps. Copy core file header to private data. 169060484Sobrien (rs6000coff_core_file_failing_command, 169160484Sobrien rs6000coff_core_file_failing_signal): New functions to extract 169260484Sobrien the file name and terminating signal from the core file. 169360484Sobrien * coff-rs6000.c: Use them. 169460484Sobrien 169560484SobrienFri Sep 22 17:44:47 1995 Ian Lance Taylor <ian@cygnus.com> 169660484Sobrien 169760484Sobrien Change arch info to be const, initialized at compile time. 169860484Sobrien * archures.c: Reindent many functions. Change CONST to const. 169960484Sobrien (bfd_arch_info_type): Make arch_name const. Remove disassemble; 170060484Sobrien nothing set it anyhow. Make next const. 170160484Sobrien (bfd_arch_info_list): Remove. 170260484Sobrien (bfd_archures_list): Rename from archures_init_table. Change from 170360484Sobrien a table of function pointers to a table of bfd_arch_info_type 170460484Sobrien structure addresses. 170560484Sobrien (bfd_scan_arch): Rewrite accordingly. Return a const pointer. 170660484Sobrien (bfd_lookup_arch): Likewise. 170760484Sobrien (bfd_set_arch_info): Rewrite accordingly. Change argument to be a 170860484Sobrien const pointer. 170960484Sobrien (bfd_default_arch_struct): Make const. 171060484Sobrien (bfd_arch_init, bfd_arch_linkin): Remove. 171160484Sobrien (bfd_get_arch_info): Return a const pointer. 171260484Sobrien * init.c (bfd_init): Don't call bfd_arch_init. 171360484Sobrien * bfd.c (struct _bfd): Make arch_info const. 171460484Sobrien * bfd-in2.h: Rebuild. 171560484Sobrien * libbfd.h: Rebuild. 171660484Sobrien * configure.in: Put & before everything in $selarchs. 171760484Sobrien * configure: Rebuild. 171860484Sobrien * cpu-*.c: Change bfd_*_arch from a function which calls 171960484Sobrien bfd_arch_linkin to a const structure. 172060484Sobrien * ieee.c (ieee_object_p): Make arch const. 172160484Sobrien 172260484SobrienFri Sep 22 16:23:18 1995 Michael Meissner <meissner@tiktok.cygnus.com> 172360484Sobrien 172460484Sobrien * reloc.c (bfd_reloc_code_type): Add relocations to support all of 172560484Sobrien PowerPC V.4. 172660484Sobrien * bfd-in2.h: Regenerate. 172760484Sobrien * libbfd.h: Regenerate. 172860484Sobrien 172960484Sobrien * elf32-ppc.c (reloc_type): Update names to match current draft. 173060484Sobrien (ppc_elf_howto_raw): Mark 14 bit relocs as short sized and PC 173160484Sobrien relative. Update names to current V.4 draft. 173260484Sobrien (ppc_elf_reloc_type_lookup): Add support for more relocations. 173360484Sobrien (ppc_elf_relocate_section): Rename relocations to match draft. 173460484Sobrien 173560484SobrienThu Sep 21 21:53:18 1995 Michael Meissner <meissner@cygnus.com> 173660484Sobrien 173760484Sobrien * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Allow modules 173860484Sobrien compiled with -mrelocatable-lib to be linked with either normal 173960484Sobrien modules or -mrelocatable modules. 174060484Sobrien 174160484SobrienWed Sep 20 12:03:26 1995 Ian Lance Taylor <ian@cygnus.com> 174260484Sobrien 174360484Sobrien * coffcode.h (coff_write_object_contents): Clear the vstamp field 174460484Sobrien in the a.out header. 174560484Sobrien 174660484Sobrien * aoutx.h (NAME(aout,swap_ext_reloc_out)): Don't set r_extern for 174760484Sobrien a reloc against a local symbol, even if it's not a section. 174860484Sobrien 174960484SobrienTue Sep 19 17:02:26 1995 Ian Lance Taylor <ian@cygnus.com> 175060484Sobrien 175160484Sobrien * targets.c (bfd_target): Remove unused align_power_min field. 175260484Sobrien * bfd-in2.h: Rebuild. 175360484Sobrien * All backends: Remove initialization of align_power_min. 175460484Sobrien 175560484SobrienTue Sep 19 14:02:21 1995 steve chamberlain <sac@slash.cygnus.com> 175660484Sobrien 175760484Sobrien * peicode.h (coff_swap_scnhdr_out): Get sizes for BSS right. 175860484Sobrien 175960484SobrienMon Sep 18 14:35:01 1995 Arne H. Juul <arnej@pvv.unit.no> 176060484Sobrien 176160484Sobrien * config.bfd (mips-dec-netbsd*): New target. 176260484Sobrien * configure.host (mips-dec-netbsd*): New host. 176360484Sobrien * configure.in (mips-dec-netbsd*): New native. 176460484Sobrien * configure: Rebuild. 176560484Sobrien 176660484SobrienFri Sep 15 10:24:36 1995 Ian Lance Taylor <ian@cygnus.com> 176760484Sobrien 176860484Sobrien Make the COFF backend linker merge common types: 176960484Sobrien * cofflink.c (struct coff_debug_merge_element): Define. 177060484Sobrien (struct coff_debug_merge_type): Define. 177160484Sobrien (struct coff_debug_merge_hash_entry): Define. 177260484Sobrien (struct coff_debug_merge_hash_table): Define. 177360484Sobrien (coff_debug_merge_hash_table_init): Define. 177460484Sobrien (coff_debug_merge_hash_table_free): Define. 177560484Sobrien (coff_debug_merge_hash_lookup): Define. 177660484Sobrien (struct coff_final_link_info): Add debug_merge field. 177760484Sobrien (coff_debug_merge_hash_newfunc): New static function. 177860484Sobrien (_bfd_coff_final_link): Allocate and free debug_merge table. 177960484Sobrien (coff_link_input_bfd): Merge identical enum, struct and union 178060484Sobrien types. 178160484Sobrien 178260484SobrienThu Sep 14 14:53:58 1995 Ian Lance Taylor <ian@cygnus.com> 178360484Sobrien 178460484Sobrien Convert i960 COFF to use COFF backend linker. 178560484Sobrien * coff-i960.c (coff_i960_relocate): Use a coff_section_data 178660484Sobrien structure to store the symbol being used. 178760484Sobrien (coff_i960_start_final_link): New static function. 178860484Sobrien (coff_i960_relocate_section): New static function. 178960484Sobrien (coff_i960_adjust_symndx): New static function. 179060484Sobrien (coff_start_final_link): Define. 179160484Sobrien (coff_relocate_section): Define. 179260484Sobrien (coff_adjust_symndx): Define. 179360484Sobrien * coffcode.h (bfd_coff_backend_data): Add new callback function 179460484Sobrien _bfd_coff_start_final_link. 179560484Sobrien (bfd_coff_start_final_link): Define. 179660484Sobrien (coff_start_final_link): Define if not defined. 179760484Sobrien (bfd_coff_std_swap_table): Add coff_start_final_link. 179860484Sobrien * cofflink.c (_bfd_coff_internal_syment_name): Make globally 179960484Sobrien visible. 180060484Sobrien (_bfd_coff_final_link): Call bfd_coff_start_final_link if the 180160484Sobrien function callback is not NULL. 180260484Sobrien * libcoff-in.h (struct coff_section_tdata): Add tdata field. 180360484Sobrien (_bfd_coff_internal_syment_name): Declare. 180460484Sobrien * libcoff.h: Rebuild. 180560484Sobrien * configure.in (icoff_big_vec): Add cofflink.o. 180660484Sobrien (icoff_little_vec): Likewise. 180760484Sobrien * configure: Rebuild. 180860484Sobrien 180960484SobrienWed Sep 13 17:38:23 1995 Fred Fish <fnf@rtl.cygnus.com> 181060484Sobrien 181160484Sobrien * Makefile.in (clean-info): Remove extraneous tab from line 181260484Sobrien following action. 181360484Sobrien 181460484SobrienWed Sep 13 13:27:53 1995 Ian Lance Taylor <ian@cygnus.com> 181560484Sobrien 181660484Sobrien * cofflink.c (coff_link_input_bfd): Fail if a section with no 181760484Sobrien contents has relocs. 181860484Sobrien 181960484SobrienThu Sep 12 12:45:34 1995 steve chamberlain <sac@slash.cygnus.com> 182060484Sobrien 182160484Sobrien * coffcode.h (coff_compute_section_file_positions): Keep the 182260484Sobrien raw size safe. 182360484Sobrien (coff_write_object_contents): Remember if it's a relocatable 182460484Sobrien file. 182560484Sobrien * libcoff-in.h (pe_data_type): New member 'has_reloc_section' 182660484Sobrien * peicode.h (coff_swap_filehdr_out): Clear not-reloc flag 182760484Sobrien if relocatable file. Swap out saved raw size. 182860484Sobrien 182960484SobrienTue Sep 12 12:14:33 1995 Ian Lance Taylor <ian@cygnus.com> 183060484Sobrien 183160484Sobrien * Makefile.in (do_maintainer_clean): Rename from do_realclean. 183260484Sobrien (maintainer-clean): Rename from realclean, passing 183360484Sobrien maintainer-clean down to subdirectories, but leave realclean as a 183460484Sobrien synonym. 183560484Sobrien 183660484Sobrien * linker.c (_bfd_generic_link_add_one_symbol): Pass symbol name to 183760484Sobrien warning callback. 183860484Sobrien 183960484Sobrien * dep-in.sed: Remove config.h from generated dependencies. 184060484Sobrien 184160484Sobrien * sunos.c (sunos_slurp_dynamic_symtab): New static function, 184260484Sobrien broken out of sunos_canonicalize_dynamic_symtab. 184360484Sobrien (sunos_canonicalize_dynamic_symtab): Call new function 184460484Sobrien sunos_slurp_dynamic_symtab. 184560484Sobrien (sunos_add_dynamic_symbols): Add three new parameters. Return the 184660484Sobrien dynamic symbol table to the caller. 184760484Sobrien * aoutx.h (aout_link_add_symbols): Permit add_dynamic_symbols 184860484Sobrien callback to override the symbols being read. 184960484Sobrien * libaout.h (struct aout_backend_data): Add three new parameters 185060484Sobrien to add_dynamic_symbols callback. 185160484Sobrien 185260484Sobrien Extensive minor changes to avoid various gcc warnings. Also: 185360484Sobrien * Makefile.in (BFD32_BACKENDS): Remove coff-arm.o. 185460484Sobrien * archures.c (bfd_arch_info_type): Change mach field from long to 185560484Sobrien unsigned long. 185660484Sobrien (bfd_lookup_arch): Change machine parameter from long to unsigned 185760484Sobrien long. 185860484Sobrien 185960484SobrienMon Sep 11 10:55:47 1995 Ian Lance Taylor <ian@cygnus.com> 186060484Sobrien 186160484Sobrien * sunos.c (sunos_scan_std_relocs): Fix BFD_ASSERT: it's OK to find 186260484Sobrien a symbol with a non-zero plt_offset. 186360484Sobrien 186460484SobrienFri Sep 8 11:47:24 1995 Ian Lance Taylor <ian@cygnus.com> 186560484Sobrien 186660484Sobrien * elfcode.h (align_file_position): Remove; not used. 186760484Sobrien 186860484Sobrien * configure.in: Only check for <sys/procfs.h> on a native system, 186960484Sobrien and make sure it defines prstatus_t. 187060484Sobrien * configure: Rebuild. 187160484Sobrien 187260484SobrienThu Sep 7 12:48:01 1995 Ian Lance Taylor <ian@cygnus.com> 187360484Sobrien 187460484Sobrien * sunos.c (sunos_write_dynamic_symbol): Correct m68k abort test. 187560484Sobrien 187660484Sobrien * config.in: Rename from config.h.in. 187760484Sobrien * configure.in: Call AC_CONFIG_HEADER with config.h:config.in. 187860484Sobrien Check for config.h:config.in when creating stamp-h. 187960484Sobrien * configure: Rebuild. 188060484Sobrien * Makefile.in (stamp-h): Depend upon config.in rather than 188160484Sobrien config.h.in. Set CONFIG_HEADERS to config.h:config.in when 188260484Sobrien calling config.status. 188360484Sobrien 188460484Sobrien * Makefile.in (do_distclean): Remove config.h and stamp-h. 188560484Sobrien (Makefile): Just rebuild Makefile. 188660484Sobrien (config.h, stamp-h): New targets. 188760484Sobrien * configure.in: Create stamp-h when rebuilding config.h. 188860484Sobrien * configure: Rebuild. 188960484Sobrien 189060484SobrienWed Sep 6 15:00:33 1995 Ian Lance Taylor <ian@cygnus.com> 189160484Sobrien 189260484Sobrien * configure.in: Call AC_CONFIG_HEADER. Substitute 189360484Sobrien HOST_64BIT_LONG. Check that various header files exist. Check 189460484Sobrien that fcntl exists. Call BFD_BINARY_FOPEN. Check whether malloc 189560484Sobrien and/or free need to be declared. Don't make a link to sysdep.h. 189660484Sobrien Define TRAD_HEADER for various hosts. 189760484Sobrien * configure: Rebuild. 189860484Sobrien * configure.host: Don't set my_host. Add definitions taken from 189960484Sobrien host header files for various entries. Remove entries which now 190060484Sobrien do nothing. 190160484Sobrien * acconfig.h: New file. 190260484Sobrien * config.h.in: New file, built by autoheader. 190360484Sobrien * sysdep.h: New file. 190460484Sobrien * Makefile.in (do_distclean): Don't remove sysdep.h. 190560484Sobrien (RECONFIG): Remove. 190660484Sobrien (LOCAL_H_DEPS): New variable. 190760484Sobrien ($(BFD_LIBS)): Use $(LOCAL_H_DEPS) rather than libbfd.h and 190860484Sobrien $(RECONFIG). 190960484Sobrien ($(BFD_MACHINES), $(BFD_BACKENDS)): Likewise. 191060484Sobrien ($(OPTIONAL_BACKENDS)): Likewise. 191160484Sobrien (stmp-bfd.h): Just substitute for BFD_HOST_64BIT_LONG, rather than 191260484Sobrien looking through sysdep.h. 191360484Sobrien * bfd-in.h (BFD_HOST_64BIT_LONG): Define; set by Makefile. 191460484Sobrien (BFD_HOST_64_BIT): Define based on BFD_HOST_64BIT_LONG. 191560484Sobrien (fprintf_vma, sprintf_vma): Likewise. 191660484Sobrien (int64_type, uint64_type): Don't define. 191760484Sobrien * bfd-in2.h: Rebuild. 191860484Sobrien * archures.c, bfd.c, srec.c: Include <ctype.h>. 191960484Sobrien * elfcore.h: Check HAVE_SYS_PROCFS_H rather than HAVE_PROCFS. 192060484Sobrien * lynx-core.c: Include stuff from old hosts/lynx.h. 192160484Sobrien * opncls.c (bfd_fdopenr): Check HAVE_FNCTL and defined (F_GETFL), 192260484Sobrien rather than NO_FCNTL. 192360484Sobrien * targets.c (bfd_target_list): Check HOST_HPPAHPUX and ! __STDC__ 192460484Sobrien rather than NATIVE_HPPAHPUX_COMPILER. 192560484Sobrien * trad-core.c: Don't include <errno.h>. Include TRAD_HEADER if it 192660484Sobrien is defined. 192760484Sobrien * hosts/*.h: Remove all header files which merely include, 192860484Sobrien declare, and define things. Leave header files which define 192960484Sobrien information needed by trad-core.c. 193060484Sobrien 193160484Sobrien * aclocal.m4 (BFD_BINARY_FOPEN): Define. 193260484Sobrien (BFD_CC_FOR_BUILD): Define. 193360484Sobrien * configure.in: Use BFD_CC_FOR_BUILD. 193460484Sobrien * configure: Rebuild. 193560484Sobrien 193660484SobrienTue Sep 5 19:35:28 1995 Ian Lance Taylor <ian@cygnus.com> 193760484Sobrien 193860484Sobrien * aclocal.m4: Don't try to grep ../Makefile if it doesn't exist. 193960484Sobrien * configure: Rebuild. 194060484Sobrien 194160484Sobrien * coff-sparc.c (CALC_ADDEND): Don't set the addend to the value of 194260484Sobrien a global symbol. 194360484Sobrien 194460484SobrienTue Sep 5 12:48:26 1995 Jason Molenda (crash@phydeaux.cygnus.com) 194560484Sobrien 194660484Sobrien * config.bfd: i386pe_ve -> i386pe_vec. 194760484Sobrien 194860484SobrienMon Sep 4 14:02:43 1995 Ian Lance Taylor <ian@cygnus.com> 194960484Sobrien 195060484Sobrien * configure.host: Incorporate host Makefile fragments by setting 195160484Sobrien shell variables. 195260484Sobrien * configure.in: Call AC_PROG_CC. Substitute CFLAGS, HDEFINES and 195360484Sobrien AR. Call AC_PROG_INSTALL. Substitute CC_FOR_BUILD, choosing a 195460484Sobrien value based on whether the code is being compiled by a cross 195560484Sobrien compiler. Don't substitute host_makefile_frag or frags. 195660484Sobrien * aclocal.m4: New file to define local AC_PROG_CC. 195760484Sobrien * configure: Rebuild. 195860484Sobrien * Makefile.in (INSTALL): Set to @INSTALL@. 195960484Sobrien (INSTALL_PROGRAM): Set to @INSTALL_PROGRAM@. 196060484Sobrien (INSTALL_DATA): Set to @INSTALL_DATA@. 196160484Sobrien (AR): Set to @AR@. 196260484Sobrien (CC): Define as @CC@. 196360484Sobrien (CFLAGS): Set to @CFLAGS@. 196460484Sobrien (CC_FOR_BUILD): Set to @CC_FOR_BUILD@. 196560484Sobrien (@host_makefile_frag@): Remove. 196660484Sobrien (ALL_CFLAGS): Change $(HDEFINES) to @HDEFINES@. Move $(CFLAGS) 196760484Sobrien after other options. 196860484Sobrien (config.status): Remove dependency upon @frags@. 196960484Sobrien * config/*.mh, config/README: Remove. 197060484Sobrien 197160484Sobrien * config.bfd: Rewrite to incorporate the contents of the Makefile 197260484Sobrien fragments by setting shell variables, rather than merely returning 197360484Sobrien the name of a Makefile fragment. 197460484Sobrien * configure.in: Use shell variables set by config.bfd rather than 197560484Sobrien looking at the target Makefile fragment files. Don't substitute 197660484Sobrien target_makefile_frag. Do substitute TDEFINES. 197760484Sobrien * configure: Rebuild. 197860484Sobrien * Makefile.in (@target_makefile_frag@): Remove. 197960484Sobrien (ALL_CFLAGS): Change $(TDEFINES) to @TDEFINES@. 198060484Sobrien * config/*.mt: Remove. 198160484Sobrien 198260484SobrienMon Sep 4 03:13:28 1995 Ken Raeburn <raeburn@cygnus.com> 198360484Sobrien 198460484Sobrien * configure.in: Put changequote lines around "i[345]86" patterns 198560484Sobrien section of core file support. 198660484Sobrien 198760484SobrienSun Sep 3 11:31:58 1995 Jeff Law (law@snake.cs.utah.edu) 198860484Sobrien 198960484Sobrien * som.c (som_bfd_print_private_bfd_data): Define to use the 199060484Sobrien generic version. 199160484Sobrien 199260484SobrienFri Sep 1 17:08:40 1995 steve chamberlain <sac@slash.cygnus.com> 199360484Sobrien 199460484Sobrien * peicode.h (coff_swap_aouthdr_in): Add ImageBase to 199560484Sobrien entry, text_start and data_start. 199660484Sobrien 199760484SobrienFri Sep 1 18:06:28 1995 Ian Lance Taylor <ian@cygnus.com> 199860484Sobrien 199960484Sobrien * Makefile.in (OFILES): Remove $(TDEPFILES). 200060484Sobrien * config/apollo.mt (TDEPFILES): Remove. 200160484Sobrien * config/README: Update. 200260484Sobrien 200360484Sobrien * configure.in: For a native configuration, set COREFILE and 200460484Sobrien COREFLAG based on the canonical host name. 200560484Sobrien * configure: Rebuild. 200660484Sobrien * Makefile.in: Rebuild dependencies. 200760484Sobrien (ALL_CFLAGS): Add @COREFLAG@. 200860484Sobrien (OFILES): Replace $(HDEPFILES) with @COREFILE@. 200960484Sobrien * coff-rs6000.c: Check AIX_CORE rather than HOST_AIX for core file 201060484Sobrien support routines. Check LYNX_CORE rather than HOST_LYNX. 201160484Sobrien * lynx-core.c: Check LYNX_CORE rather than HOST_LYNX. 201260484Sobrien * i386lynx.c: Likewise. 201360484Sobrien * m68klynx.c: Likewise. 201460484Sobrien * sparclynx.c: Likewise. 201560484Sobrien * rs6000-core.c: Check AIX_CORE rather than HOST_AIX. 201660484Sobrien * *-core.c: Comment changes. 201760484Sobrien * config/decstation.mh (HDEPFILES): Remove. 201860484Sobrien (HDEFINES): Remove -DTRAD_CORE. 201960484Sobrien * config/irix3.mh (RANLIB): Remove. 202060484Sobrien * config/irix4.mh (HDEPFILES, RANLIB): Remove. 202160484Sobrien (HDEFINES): Remove -DIRIX_CORE. 202260484Sobrien * config/riscos.mh (RANLIB, HDEPFILES): Remove. 202360484Sobrien (HDEFINES): Remove -DTRAD_CORE. 202460484Sobrien * config/ncr3000.mh (AR_FLAGS, RANLIB): Remove. 202560484Sobrien * config/ultra3.mh (RANLIB): Remove. 202660484Sobrien * config/aix4.mh, config/alphaosf.mh, config/amix.mh: Remove. 202760484Sobrien * config/apollo.mh, config/delta68.mh, config/delta88.mh: Remove. 202860484Sobrien * config/dpx2.mh, config/esix.mh, config/harris.mh: Remove. 202960484Sobrien * config/hp300.mh, config/hp300bsd.mh, config/hppabsd.mh: Remove. 203060484Sobrien * config/hppahpux.mh, config/hppaosf.mh: Remove. 203160484Sobrien * config/i386aix.mh, config/i386bsd.mh: Remove. 203260484Sobrien * config/i386linux.mh, config/i386mach3.mh: Remove. 203360484Sobrien * config/i386sco.mh, config/i386v.mh, config/i386v4.mh: Remove. 203460484Sobrien * config/irix5.mh, config/m88kmach3.mh, config/mipsbsd.mh: Remove. 203560484Sobrien * config/mipsmach3.mh, config/news-mips.mh: Remove. 203660484Sobrien * config/news.mh, config/pc532mach.mh, config/riscix.mh: Remove. 203760484Sobrien * config/rs600.mh, config/rs6000lynx.mh: Remove. 203860484Sobrien * config/solaris2.mh, config/stratus.mh: Remove. 203960484Sobrien * config/symmetry.mh, config/sysv4.mh, config/tahoe.mh: Remove. 204060484Sobrien * config/vaxbsd.mh, config/vaxult.mh, config/vaxult2.mh: Remove. 204160484Sobrien 204260484SobrienFri Sep 1 15:18:50 1995 Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp> 204360484Sobrien 204460484Sobrien * elflink.h (elf_bfd_final_link): Don't change a DT_INIT or 204560484Sobrien DT_FINI entry if the appropriate symbol is not in the hash table. 204660484Sobrien 204760484Sobrien * libelf.h (struct elf_backend_data): Add create_program_headers 204860484Sobrien and want_hdr_in_seg fields. 204960484Sobrien * elfxx-target.h (elf_backend_want_hdr_in_seg): Define if not 205060484Sobrien defined. 205160484Sobrien (elf_backend_create_program_headers): Likewise. 205260484Sobrien (elfNN_bed): Initialize create_program_headers and 205360484Sobrien want_hdr_in_seg. 205460484Sobrien * elf.c (get_program_header_size): Call create_program_headers 205560484Sobrien backend routine. 205660484Sobrien (map_program_segments): Check want_hdr_in_seg backend field. Call 205760484Sobrien create_program_headers backend routine. 205860484Sobrien 205960484Sobrien * elf.c (assign_file_positions_except_relocs): Align non allocated 206060484Sobrien sections when creating an executable. 206160484Sobrien 206260484Sobrien * elfcode.h (elf_swap_phdr_in): Make non static. 206360484Sobrien (elf_swap_phdr_out): Make non static. 206460484Sobrien * libelf.h (bfd_elf32_swap_phdr_in): Declare. 206560484Sobrien (bfd_elf32_swap_phdr_out): Declare. 206660484Sobrien (bfd_elf64_swap_phdr_in): Declare. 206760484Sobrien (bfd_elf64_swap_phdr_out): Declare. 206860484Sobrien 206960484Sobrien * ecofflink.c (ecoff_collect_shuffle): New static function. 207060484Sobrien (_bfd_ecoff_get_accumulated_pdr): New function. 207160484Sobrien (_bfd_ecoff_get_accumulated_sym): New function. 207260484Sobrien (_bfd_ecoff_get_accumulated_ss): New function. 207360484Sobrien * libbfd-in.h (_bfd_ecoff_get_accumulated_pdr): Declare. 207460484Sobrien (_bfd_ecoff_get_accumulated_sym): Declare. 207560484Sobrien (_bfd_ecoff_get_accumulated_ss): Declare. 207660484Sobrien * libbfd.h: Rebuild. 207760484Sobrien 207860484SobrienFri Sep 1 13:20:25 1995 Ian Lance Taylor <ian@cygnus.com> 207960484Sobrien 208060484Sobrien * libecoff.h (_bfd_ecoff_bfd_print_private_bfd_data): Fix typo. 208160484Sobrien 208260484Sobrien * elflink.h (elf_link_add_object_symbols): Handle indirect and 208360484Sobrien warning symbols. If any section is named .gnu.warning.XXX, treat 208460484Sobrien the contents as a warning to be issued if the symbol XXX is 208560484Sobrien referenced. 208660484Sobrien (elf_link_output_extsym): For an indirect or warning symbol, just 208760484Sobrien output the symbol it points to. 208860484Sobrien 208960484Sobrien * linker.c (_bfd_link_hash_newfunc): Don't bother to set bfd_error 209060484Sobrien if bfd_hash_allocate fails, since it will already be set. 209160484Sobrien (generic_link_hash_newfunc): Likewise. 209260484Sobrien (archive_hash_newfunc): Likewise. 209360484Sobrien (hash_entry_bfd): New static function. 209460484Sobrien (_bfd_generic_link_add_one_symbol): Pass new arguments to warning 209560484Sobrien callback. Allocate a new warning using the hash table newfunc. 209660484Sobrien Use bfd_hash_replace to update the entry in the hash table, rather 209760484Sobrien than assuming we can copy the fields with structure assignment. 209860484Sobrien 209960484Sobrien * hash.c (bfd_hash_replace): New function. 210060484Sobrien * bfd-in.h (bfd_hash_replace): Declare. 210160484Sobrien * bfd-in2.h: Rebuild. 210260484Sobrien 210360484SobrienFri Sep 1 08:12:50 1995 James G. Smith <jsmith@beauty.cygnus.com> 210460484Sobrien 210560484Sobrien * config.bfd: Add mips*vr4300-*-elf* target. 210660484Sobrien * config/mipsbvr4300.mt: Added. 210760484Sobrien 210860484SobrienThu Aug 31 16:00:53 1995 steve chamberlain <sac@slash.cygnus.com> 210960484Sobrien 211060484Sobrien * Makefile.in: Update dependencies. 211160484Sobrien * aout-target.h (MY_bfd_print_private_bfd_data): New. 211260484Sobrien * bfd-in.h (PE STUFF): Deleted. 211360484Sobrien * bfd.c (tdata->pe_obj_data): New. 211460484Sobrien (bfd_print_private_bfd_data): New. 211560484Sobrien * coff-i386.c, coff-arm.c (coff_*-rtype_to_howto): Get image base from 211660484Sobrien new place. 211760484Sobrien * libcoff.h, libbfd.h, bfd-in2.h: Rebuilt. 211860484Sobrien * coffcode.h (pe_value): Delete 211960484Sobrien (coff_mkobject, coff_mkobject_hook): Conditionally build. 212060484Sobrien (coff_compute_section_file_positions): Look in new place. 212160484Sobrien (add_data_entry, fill_pe_header_info): Deleted. 212260484Sobrien (coff_write_object_contents): Remove PE stuff. 212360484Sobrien (coff_bfd_print_private_bfd_data): New. 212460484Sobrien * coffswap.h: Remove PE stuff. 212560484Sobrien * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): New. 212660484Sobrien * libbfd-in.h (_bfd_generic_bfd_print_private_bfd_data): New. 212760484Sobrien * libcoff-in.h (pe_data_type): New. 212860484Sobrien * libecoff.h (_bfd_ecoff_bfd_print_private_bfd_data): New. 212960484Sobrien * targets.c (_bfd_print_private_bfd_data): New. 213060484Sobrien * peicode.h: New file. 213160484Sobrien 213260484SobrienThu Aug 31 11:49:21 1995 Ian Lance Taylor <ian@cygnus.com> 213360484Sobrien 213460484Sobrien * bfd-in.h: Add extern "C" if __cplusplus. 213560484Sobrien * bfd-in2.h: Rebuild. 213660484Sobrien 213760484Sobrien * coff-mips.c (mips_relocate_section): Don't convert a reloc 213860484Sobrien against an absolute symbol into a reloc against a section. 213960484Sobrien 214060484SobrienThu Aug 31 08:00:14 1995 steve chamberlain <sac@slash.cygnus.com> 214160484Sobrien 214260484Sobrien * coff-arm.c (coff_arm_reloc): Fix common size problem. 214360484Sobrien (i3coff_object_p): Delete. 214460484Sobrien 214560484SobrienWed Aug 30 20:41:27 1995 steve chamberlain <sac@slash.cygnus.com> 214660484Sobrien 214760484Sobrien * coff-arm.c (deletemeacoff_arm_reloc): Deleted. 214860484Sobrien (arm26): Not partial inplace. 214960484Sobrien * coffcode.h (coff_compute_section_file_positions): Don't 215060484Sobrien do page aligning if COFF_PAGE_SIZE isn't defined. 215160484Sobrien * coffswap.h (coff_swap_scnhdr_in): Update image base correctly. 215260484Sobrien 215360484SobrienTue Aug 29 13:50:21 1995 steve chamberlain <sac@slash.cygnus.com> 215460484Sobrien 215560484Sobrien * coffcode.h (coff_compute_section_file_positions): 215660484Sobrien Compile even if COFF_PAGE_SIZE isn't defined. 215760484Sobrien * cofflink.c (_bfd_coff_generate_reloc_section): Write 215860484Sobrien base file info as rvas. 215960484Sobrien * coff-arm.c (coff_rtype_to_howto): Deal with reloc 11. 216060484Sobrien * coffcode.h (coff_write_object_contents): Remove #if0ed code 216160484Sobrien Only remove empty sections in PE inmage files. 216260484Sobrien * libbfd.h, bfd-in2.h: regenerated. 216360484Sobrien * coff-arm.c (aoutarm_std_relo): New entry at 11. 216460484Sobrien (arm_reloc_type_lookup) : Understand type 11. 216560484Sobrien * coff-i386.c (howto_table): fix name of rva type. 216660484Sobrien (coff-i386_rtype_to_howto): Understand R_IMAGEBASE type. 216760484Sobrien * coffcode.h (sec_to_styp_flags): .edata is data. 216860484Sobrien (coff_compute_section_file_positions): Get page size right for PE. 216960484Sobrien Pagesize info is only valid in PE image files. 217060484Sobrien (fill_pe_header_info): Fix fields. 217160484Sobrien (coff_write_object_contents): Remove end_of_image calc. 217260484Sobrien (_bfd_coff_generate_reloc_section): Remove orphaned comment. 217360484Sobrien * coffswap.h (coff_swap_scnhdr_in): Don't always add IMAGE_BASE. 217460484Sobrien Swap in PE header. 217560484Sobrien (coff_swap_scnhdr_out): Setup PE flags correctly. 217660484Sobrien * reloc.c (BFD_RELOC_RVA): New field. 217760484Sobrien 217860484SobrienThu Aug 24 17:49:59 1995 Ian Lance Taylor (ian@cygnus.com) 217960484Sobrien 218060484Sobrien * cofflink.c (coff_link_input_bfd): Don't include line numbers for 218160484Sobrien a section if its output section has no contents. 218260484Sobrien 218360484SobrienWed Aug 23 16:48:52 1995 Ian Lance Taylor (ian@cygnus.com) 218460484Sobrien 218560484Sobrien * ecoff.c (_bfd_ecoff_slurp_symbolic_info): Add parentheses to FIX 218660484Sobrien expression to avoid compiler bug on HP-UX 9.01. 218760484Sobrien 218860484SobrienWed Aug 23 09:49:39 1995 Steve Chamberlain <sac@rtl.cygnus.com> 218960484Sobrien 219060484Sobrien * coffcode.h (pe_value): Unansify. 219160484Sobrien 219260484SobrienMon Aug 21 17:49:28 1995 steve chamberlain <sac@slash.cygnus.com> 219360484Sobrien 219460484Sobrien * bfd-in.h (bfd_link_subsystem): Turn enum into #defines. 219560484Sobrien (bfd_link_pe_info_dval): New 219660484Sobrien (bfd_link_stack_heap): Renamed and massaged into bfd_link_pe_info. 219760484Sobrien * bfd-in2.h: rebuilt. 219860484Sobrien * bfd.c (NT_subsystem, NT_stack_heap): Deleted. 219960484Sobrien * coffcode.h (pe_value): New function. 220060484Sobrien (fill_pe_header_info): New function. 220160484Sobrien (coff_write_object_contents): Use new function. 220260484Sobrien (coff_write_object_contents): Initialze link_data if not set. 220360484Sobrien * cofflink.c (coff_final_link_info): Remove pe randomness. 220460484Sobrien (dores_com): Update info in bfd_link_pe_info_dval. 220560484Sobrien (process_embedded_commands): Use the bfd_link_pe_info_dval. 220660484Sobrien (_bfd_coff_final_link): Remove PE stuff, initialize 220760484Sobrien coff_data->link_info. 220860484Sobrien * coffswap.h (coff_swap_[aout|filehdr]_out): Use indirect PE pointer. 220960484Sobrien (coff_swap_scnhdr_out): Use real imagebase. 221060484Sobrien * libcoff-in.h (coff_data_type.link_info): New field. 221160484Sobrien 221260484SobrienMon Aug 21 11:10:32 1995 Ian Lance Taylor <ian@cygnus.com> 221360484Sobrien 221460484Sobrien * linker.c (link_action): If an undefined reference follows an 221560484Sobrien undefined weak reference, change the type to undefined. 221660484Sobrien * elflink.h (elf_link_add_archive_symbols): Don't record an 221760484Sobrien undefined weak reference as defined, in case it turns into a real 221860484Sobrien undefined reference later in the same archive. 221960484Sobrien 222060484SobrienThu Aug 17 16:29:09 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com> 222160484Sobrien 222260484Sobrien * coff-sh.c (sh_relax_section): Cast value for used_by_bfd field 222360484Sobrien to PTR, not coff_section_tdata pointer, since PTR is the real type 222460484Sobrien of the field. 222560484Sobrien * cofflink.c (_bfd_coff_read_internal_relocs): Ditto. 222660484Sobrien 222760484SobrienThu Aug 17 14:44:26 1995 Ian Lance Taylor <ian@cygnus.com> 222860484Sobrien 222960484Sobrien Add support for linking SPARC SunOS PIC compiled code. 223060484Sobrien * sunos.c (SPARC_PLT_PIC_WORD0): Define. 223160484Sobrien (SPARC_PLT_PIC_WORD1, SPARC_PLT_PIC_WORD2): Define. 223260484Sobrien (struct sunos_link_hash_entry): Add got_offset and plt_offset 223360484Sobrien fields. 223460484Sobrien (struct sunos_link_hash_table): Add dynamic_sections_created and 223560484Sobrien dynamic_sections_needed fields. 223660484Sobrien (sunos_link_hash_newfunc): Initialize new fields. 223760484Sobrien (sunos_link_hash_table_create): Initialize new fields. 223860484Sobrien (sunos_create_dynamic_sections): New static function, broken out 223960484Sobrien of sunos_add_dynamic_symbols. 224060484Sobrien (sunos_add_dynamic_symbols): Call sunos_create_dynamic_sections. 224160484Sobrien (sunos_add_one_symbol): Call sunos_create_dynamic_sections. 224260484Sobrien (bfd_sunos_size_dynamic_sections): Call sunos_scan_relocs before 224360484Sobrien checking whether we need to set up the dynamic link information. 224460484Sobrien Define __GLOBAL_OFFSET_TABLE if anything referred to it. 224560484Sobrien (sunos_scan_std_relocs): Call sunos_create_dynamic_sections. Use 224660484Sobrien plt_offset field; only put symbol in .plt if it is not defined by 224760484Sobrien a regular object. 224860484Sobrien (sunos_scan_ext_relocs): Likewise. Handle base relative relocs. 224960484Sobrien (sunos_scan_dynamic_symbol): Store dynobj in local variable. 225060484Sobrien (sunos_write_dynamic_symbol): Check plt_offset rather than 225160484Sobrien checking whether symbol is in .plt section. If symbol is defined 225260484Sobrien in a regular object file, use SPARC_PLT_PIC_WORD[012], and don't 225360484Sobrien add a JMP_TBL reloc. 225460484Sobrien (sunos_check_dynamic_reloc): Add contents and relocationp fields. 225560484Sobrien If plt_offset is set, redirect relocation to PLT. If this is a 225660484Sobrien base relative reloc, redirect relocation to GOT. Check 225760484Sobrien dynamic_sections_needed field rather than whether dynobj is set. 225860484Sobrien (sunos_finish_dynamic_link): Check dynamic_sections_needed field 225960484Sobrien rather than whether dynobj is set. Don't die if .need and .rules 226060484Sobrien sections were not created. 226160484Sobrien * aoutx.h (howto_table_ext): Mark PC10, PC22, and JMP_TBL entries 226260484Sobrien PC relative. Mark PC10 complain_overflow_dont. Mark PC22 and 226360484Sobrien JMP_TBL complain_overflow_signed. 226460484Sobrien (NAME(aout,final_link)): If info->shared is set, set DYNAMIC. 226560484Sobrien (aout_link_input_section_std): Call check_dynamic_reloc for all 226660484Sobrien relocs. Pass contents and &relocation. Don't warn about an 226760484Sobrien undefined symbol until check_dynamic_reloc has been called. Don't 226860484Sobrien warn about an undefined symbol for a base relative reloc. 226960484Sobrien (aout_link_input_section_ext): Likewise. For a base relative 227060484Sobrien reloc, always treat r_index as an index into the symbol table. 227160484Sobrien * libaout.h (struct aout_backend_data): Add contents and 227260484Sobrien relocation argument to check_dynamic_reloc entry point. 227360484Sobrien (struct aoutdata): Add local_got_offsets field. 227460484Sobrien 227560484SobrienWed Aug 16 01:03:07 1995 Ian Lance Taylor <ian@cygnus.com> 227660484Sobrien 227760484Sobrien * elf32-i386.c (elf_i386_check_relocs): Fix bug in last change. 227860484Sobrien 227960484SobrienMon Aug 14 11:39:24 1995 Ian Lance Taylor <ian@cygnus.com> 228060484Sobrien 228160484Sobrien * aoutx.h (NAME(aout,machine_type)): Handle a machine of 228260484Sobrien bfd_mach_sparc or bfd_mach_sparc64. 228360484Sobrien 228460484Sobrien * elflink.h (elf_link_add_object_symbols): If a symbol is a weak 228560484Sobrien definition, add it to the dynamic symbol table if any dynamic 228660484Sobrien object mentions it. If we do add it, make sure we add the 228760484Sobrien corresponding real symbol. 228860484Sobrien (elf_adjust_dynamic_symbol): Adjust a weak defined symbol which we 228960484Sobrien put in the dynamic symbol table, even if no regular object refers 229060484Sobrien to it. 229160484Sobrien * elf32-i386.c (elf_i386_check_relocs): When creating a shared 229260484Sobrien library, don't allocate space for a PC relative reloc against a 229360484Sobrien local symbol. 229460484Sobrien * elf32-m68k.c (elf_m68k_check_relocs): Likewise. 229560484Sobrien * elf32-sparc.c (elf32_sparc_check_relocs): Likewise. 229660484Sobrien * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Change assertion 229760484Sobrien to accept symbol with weakdef set. 229860484Sobrien * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise. 229960484Sobrien * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise. 230060484Sobrien * elf32-m68k.c (elf_m68k_relocate_section): When creating a shared 230160484Sobrien libary, don't copy over a PC relative reloc against a local 230260484Sobrien symbol. 230360484Sobrien * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 230460484Sobrien 230560484SobrienSun Aug 13 00:40:58 1995 Jeff Law (law@snake.cs.utah.edu) 230660484Sobrien 230760484Sobrien * som.h (R_HPPA_BEGIN_BRTAB): Define. 230860484Sobrien (R_HPPA_END_BRTAB): Likewise. 230960484Sobrien * som.c (som_write_fixups): Handle R_BEGIN_BRTAB and R_END_BRTAB. 231060484Sobrien 231160484SobrienThu Aug 10 15:53:29 1995 Ian Lance Taylor <ian@cygnus.com> 231260484Sobrien 231360484Sobrien * coffswap.h (coff_swap_aux_in): Swap the array dimensions 231460484Sobrien whenever x_fcnary is not being used for something else, rather 231560484Sobrien than only for an array. 231660484Sobrien (coff_swap_aux_out): Likewise. 231760484Sobrien 231860484SobrienTue Aug 8 16:34:57 1995 steve chamberlain <sac@slash.cygnus.com> 231960484Sobrien 232060484Sobrien * cofflink.c (_bfd_coff_generic_relocate_section): Remove most 232160484Sobrien of special case stuff for PE. Now handled by relocs. 232260484Sobrien * coff-i386.c (coff_i386_reloc): Special case of PE type 7s. 232360484Sobrien (howto_table): Type 7 is dir32-rva. 232460484Sobrien 232560484SobrienTue Aug 8 10:15:43 1995 Jeffrey A. Law <law@rtl.cygnus.com> 232660484Sobrien 232760484Sobrien * configure.host: Recognize aix4 explicitly. 232860484Sobrien * rs6000-core.c (CORE_DATA_SIZE_FIELD): New macro to get a the size 232960484Sobrien of a core dump's data section. Provide alternate definition for aix4. 233060484Sobrien (SAVE_FIELD): Similarly for save state field (register info). 233160484Sobrien (STACK_END_ADDR): Provide definition suitable for aix4. 233260484Sobrien * config/{aix4.mh,aix4.mt}: New configuration files. 233360484Sobrien * hosts/aix4.h: Likewise. 233460484Sobrien 233560484SobrienMon Aug 7 23:03:21 1995 Ian Lance Taylor <ian@cygnus.com> 233660484Sobrien 233760484Sobrien * som.c (som_bfd_copy_private_symbol_data): Cast initializations 233860484Sobrien to avoid warnings. 233960484Sobrien 234060484SobrienMon Aug 7 14:51:08 1995 Jeff Law (law@snake.cs.utah.edu) 234160484Sobrien 234260484Sobrien * som.c (som_decode_symclass): Handle absolute symbols by checking 234360484Sobrien the SOM type (since they will rarely if ever be in the absolute 234460484Sobrien section). 234560484Sobrien 234660484SobrienWed Aug 6 09:12:50 1995 Doug Evans <dje@canuck.cygnus.com> 234760484Sobrien 234860484Sobrien * archures.c (bfd_mach_sparc, bfd_mach_sparc64): Define. 234960484Sobrien * bfd-in2.h: Regenerated. 235060484Sobrien * cpu-sparc.c (sparc_arch_info): Renamed from arch_info_struct. 235160484Sobrien (sparc64_arch_info): New static variable. 235260484Sobrien (bfd_sparc_arch): Link in sparc64_arch_info. 235360484Sobrien * elf64-sparc.c (sparc64_elf_xxx): Renamed from elf64_xxx. 235460484Sobrien (sparc64_elf_object_p): New static function. 235560484Sobrien (elf_backend_object_p): Define. 235660484Sobrien * config/sparc64-elf.mt (SELECT_VECS): Add bfd_elf32_sparc_vec. 235760484Sobrien 235860484SobrienSat Aug 5 00:04:08 1995 Jeff Law (law@snake.cs.utah.edu) 235960484Sobrien 236060484Sobrien * som (som_get_reloc_upper_bound): Return -1 on error. Compute 236160484Sobrien return value with sizeof (arelent *), not sizeof (arelent). 236260484Sobrien 236360484SobrienWed Aug 2 12:32:21 1995 Ian Lance Taylor <ian@cygnus.com> 236460484Sobrien 236560484Sobrien * elf.c (bfd_section_from_shdr): If the section pointed to by the 236660484Sobrien sh_link field of a reloc section is not a symbol table, and the 236760484Sobrien file contains a single symbol table, clobber the sh_link field of 236860484Sobrien the reloc section to point to the symbol table. 236960484Sobrien 237060484SobrienTue Aug 1 10:09:01 1995 Doug Evans <dje@canuck.cygnus.com> 237160484Sobrien 237260484Sobrien * coff-arm.c (howto reloc ARM26): Change size from 3 to 2. 237360484Sobrien (howto reloc ARM26D): Likewise. 237460484Sobrien 237560484SobrienMon Jul 24 14:17:50 1995 Ian Lance Taylor <ian@cygnus.com> 237660484Sobrien 237760484Sobrien * aoutx.h (NAME(aout,find_nearest_line)): Use the line just before 237860484Sobrien the offset, not the one just after. Break out of the loop after 237960484Sobrien finding a function past the offset, not merely when finding a 238060484Sobrien function with a line defined. 238160484Sobrien 238260484Sobrien * ecofflink.c (_bfd_ecoff_locate_line): When handling stabs: 238360484Sobrien correct setting of sym_ptr_end to consider symbols skipped when 238460484Sobrien setting sym_ptr; don't leave loop early unless an N_FUN is found 238560484Sobrien with a larger value. 238660484Sobrien 238760484Sobrien * coff-sh.c (sh_coff_howtos): Mark R_SH_PCDISP8BY2 and R_SH_PCDISP 238860484Sobrien as PC relative. Describe R_SH_IMM16. Add entries for 238960484Sobrien R_SH_SWITCH16, R_SH_SWITCH32, R_SH_USES, R_SH_COUNT, and 239060484Sobrien R_SH_ALIGN. 239160484Sobrien (SWAP_IN_RELOC_OFFSET): Define. 239260484Sobrien (SWAP_OUT_RELOC_OFFSET): Define. 239360484Sobrien (CALC_ADDEND): Define. 239460484Sobrien (sh_reloc): Change sym_value and addr to type bfd_vma. Skip reloc 239560484Sobrien types other than R_SH_IMM32 and R_SH_PCDISP on an external symbol. 239660484Sobrien (coff_bfd_relax_section): Define. 239760484Sobrien (coff_bfd_get_relocated_section_contents): Define. 239860484Sobrien (sh_relax_section): New static function. 239960484Sobrien (sh_relax_delete_bytes): New static function. 240060484Sobrien (sh_relocate_section): Handle R_SH_PCDISP on an external symbol. 240160484Sobrien (sh_coff_get_relocated_section_contents): New static function. 240260484Sobrien 240360484Sobrien * cofflink.c (coff_link_add_object_symbols): Call 240460484Sobrien _bfd_coff_get_external_symbols, not coff_link_get_symbols. Call 240560484Sobrien _bfd_coff_free_symbols, not coff_link_free_symbols. Call 240660484Sobrien _bfd_coff_read_string_table, not coff_read_string_table. 240760484Sobrien (coff_link_check_archive_element): Likewise. 240860484Sobrien (coff_link_input_bfd): Likewise. 240960484Sobrien (coff_link_get_symbols): Move to coffgen.c. 241060484Sobrien (coff_read_string_table): Likewise. 241160484Sobrien (coff_link_free_symbols): Likewise. 241260484Sobrien (_bfd_coff_internal_syment_name): New static function. 241360484Sobrien (coff_link_check_ar_symbols): Use _bfd_coff_internal_syment_name. 241460484Sobrien (coff_link_add_symbols): Likewise. 241560484Sobrien (coff_link_input_bfd): Likewise. 241660484Sobrien (_bfd_coff_generic_relocate_section): Likewise. 241760484Sobrien (_bfd_coff_read_internal_relocs): New function. 241860484Sobrien (coff_link_input_bfd): Use cached section contents if available. 241960484Sobrien Use _bfd_coff_read_internal_relocs. 242060484Sobrien * coffcode.h (coff_slurp_symbol_table): Don't call bfd_seek. 242160484Sobrien (coff_bfd_get_relocated_section_contents): Only define if not 242260484Sobrien already defined. 242360484Sobrien (coff_bfd_relax_section): Likewise. 242460484Sobrien * coffgen.c (build_string_table): Remove. 242560484Sobrien (_bfd_coff_get_external_symbols): New function, moved in from old 242660484Sobrien coff_link_get_symbols in cofflink.c. 242760484Sobrien (_bfd_coff_read_string_table): New function, moved in from old 242860484Sobrien coff_read_string_table in cofflink.c. 242960484Sobrien (_bfd_coff_free_symbols): New function, moved in frmo old 243060484Sobrien coff_link_free_symbols in cofflink.c. 243160484Sobrien (coff_get_normalized_symtab): Use _bfd_coff_get_external_symbols 243260484Sobrien rather than reading the symbols directly. To free them, call 243360484Sobrien _bfd_coff_free_symbols. Use _bfd_coff_read_string_table rather 243460484Sobrien than build_string_table. 243560484Sobrien * libcoff-in.h (obj_coff_keep_syms): Define. 243660484Sobrien (obj_coff_keep_strings): Define. 243760484Sobrien (coff_data_type): Add fields keep_syms and keep_strings. 243860484Sobrien (coff_section_tdata): Define new structure. 243960484Sobrien (coff_section_data): Define. 244060484Sobrien (_bfd_coff_get_external_symbols): Declare. 244160484Sobrien (_bfd_coff_read_string_table): Declare. 244260484Sobrien (_bfd_coff_free_symbols): Declare. 244360484Sobrien (_bfd_coff_read_internal_relocs): Declare. 244460484Sobrien * libcoff.h: Rebuild. 244560484Sobrien 244660484SobrienFri Jul 21 22:32:54 1995 Michael Meissner <meissner@cygnus.com> 244760484Sobrien 244860484Sobrien * elf32-ppc.c (ppc_elf_howto_raw): Add support for R_PPC_SDAREL 244960484Sobrien relocation. 245060484Sobrien (ppc_elf_reloc_type_lookup): Ditto. 245160484Sobrien (ppc_elf_got16_inner): Ditto. 245260484Sobrien (ppc_elf_relocate_section): Ditto. 245360484Sobrien 245460484SobrienThu Jul 20 19:19:06 1995 Jeff Law (law@snake.cs.utah.edu) 245560484Sobrien 245660484Sobrien * elf32-hppa.c (hppa_elf_gen_reloc_type): Add new (ignored) 245760484Sobrien argument. 245860484Sobrien * elf32-hppa.h: Corresponding change. 245960484Sobrien 246060484SobrienThu Jul 20 19:01:07 1995 Ken Raeburn <raeburn@cygnus.com> 246160484Sobrien 246260484Sobrien * libaout.h (set_aout_section_data): New macro. 246360484Sobrien * sunos.c (sunos_scan_relocs): Use it. 246460484Sobrien 246560484Sobrien * aout-ns32k.c (MY_swap_std_reloc_out): Undef KEEPIT before 246660484Sobrien defining it. 246760484Sobrien 246860484SobrienThu Jul 20 13:48:00 1995 Fred Fish <fnf@cygnus.com> 246960484Sobrien 247060484Sobrien * hosts/i386v4.h (getgid, getuid): Change prototypes to be 247160484Sobrien compatible with Unixware 1.x and Unixware 2.x, and probably other 247260484Sobrien i386 svr4 versions as well. 247360484Sobrien 247460484SobrienThu Jul 20 13:41:21 1995 Ken Raeburn <raeburn@cygnus.com> 247560484Sobrien 247660484Sobrien * targets.c (bfd_target_vector): Since armpe and armpei have been 247760484Sobrien split into big- and little-endian variants, list all of them, 247860484Sobrien instead of the now-nonexistant armpe[i]_vec. 247960484Sobrien 248060484SobrienThu Jul 20 00:06:39 1995 Ian Lance Taylor <ian@cygnus.com> 248160484Sobrien 248260484Sobrien * elf.c (bfd_section_from_phdr): Set lma based on p_paddr. 248360484Sobrien (elf_fake_sections): Set sh_addr based on lma, not vma. 248460484Sobrien 248560484SobrienWed Jul 19 15:52:01 1995 Doug Evans <dje@canuck.cygnus.com> 248660484Sobrien 248760484Sobrien * coff-arm.c (TARGET_LITTLE_SYM, TARGET_BIG_SYM): Replaces TARGET_SYM. 248860484Sobrien * configure.in (armpe_vec, armpei_vec): Add bi-endian support. 248960484Sobrien * configure: "regenerated". 249060484Sobrien * pe-arm.c (TARGET_LITTLE_SYM, TARGET_BIG_SYM): Replaces TARGET_SYM. 249160484Sobrien (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Replaces TARGET_NAME. 249260484Sobrien * pei-arm.c (TARGET_LITTLE_SYM, TARGET_BIG_SYM): Replaces TARGET_SYM. 249360484Sobrien (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Replaces TARGET_NAME. 249460484Sobrien * targets.c (armpe_vec, armpei_vec): Deleted. 249560484Sobrien (armpe_little_vec, armpe_big_vec, armpei_little_vec, armpei_big_vec): 249660484Sobrien Added. 249760484Sobrien * config/arm-pe.mt (DEFAULT_VECTOR): Default is armpe_little_vec. 249860484Sobrien (SELECT_VECS): Add bi-endian support. 249960484Sobrien 250060484SobrienWed Jul 19 10:47:25 1995 Ian Lance Taylor <ian@cygnus.com> 250160484Sobrien 250260484Sobrien * coff-sh.c: Clean up and comment. 250360484Sobrien (r_imm32): Remove. 250460484Sobrien (sh_coff_howtos): New static array. 250560484Sobrien (SH_COFF_HOWTO_COUNT): Define. 250660484Sobrien (get_symbol_value): Make relocation bfd_vma rather than long. 250760484Sobrien (RTYPE2HOWTO): Rewrite to use sh_coff_howtos. 250860484Sobrien (coff_relocate_section): Define to sh_relocate_section. 250960484Sobrien (sh_relocate_section): New static function. 251060484Sobrien 251160484SobrienSat Jul 15 01:02:53 1995 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 251260484Sobrien 251360484Sobrien * configure.host: Add support for generic m68k SVR4 host. 251460484Sobrien 251560484SobrienFri Jul 14 13:13:55 1995 Ian Lance Taylor <ian@cygnus.com> 251660484Sobrien 251760484Sobrien * aoutx.h (KEEPIT): Change definition to udata.i. 251860484Sobrien (KEEPITTYPE): Remove. 251960484Sobrien (NAME(aout,reloc_type_lookup)): Add cases to the 252060484Sobrien extended reloc type switch: SPARC_GOT10, SPARC_GOT13, SPARC_GOT22, 252160484Sobrien SPARC_PC10, SPARC_PC22, SPARC_WPLT30. 252260484Sobrien (NAME(aout,swap_std_reloc_out)): Don't bother to use stoi when 252360484Sobrien retrieving KEEPIT value. 252460484Sobrien (NAME(aout,swap_ext_reloc_out)): Likewise. Also, only add in 252560484Sobrien output section VMA for section symbols, and check BSF_SECTION_SYM 252660484Sobrien to control whether to set r_extern to 1. 252760484Sobrien 252860484Sobrien * syms.c: Fix comments so that `make info' works. 252960484Sobrien 253060484Sobrien * elf32-mips.c (mips_elf_find_nearest_line): Set SEC_HAS_CONTENTS 253160484Sobrien in .mdebug section, in case backend linker has cleared it. 253260484Sobrien 253360484SobrienFri Jul 14 11:58:34 1995 Michael Meissner <meissner@tiktok.cygnus.com> 253460484Sobrien 253560484Sobrien * elf32-ppc.c (ppc_elf_addr16_ha_inner): Rewrite to take just one 253660484Sobrien argument, the final relocated address. 253760484Sobrien (ppc_elf_addr16_ha_inner): Adjust ppc_elf_addr16_ha_inner caller. 253860484Sobrien (ppc_elf_relocate_section): Ditto. 253960484Sobrien 254060484SobrienThu Jul 13 17:22:03 1995 Jeff Law (law@snake.cs.utah.edu) 254160484Sobrien 254260484Sobrien * som.c (hppa_som_gen_reloc_type): Choose a reasonable field 254360484Sobrien selector relocation for the difference of two symbols. 254460484Sobrien 254560484SobrienThu Jul 13 10:33:25 1995 Ian Lance Taylor <ian@cygnus.com> 254660484Sobrien 254760484Sobrien * aoutx.h (NAME(aout,slurp_reloc_table)): Cast argument to size_t 254860484Sobrien for malloc. 254960484Sobrien * coff-mips.c (mips_relocate_section): Likewise, for memmove. 255060484Sobrien (mips_relax_section): Likewise, for malloc. 255160484Sobrien * cofflink.c (process_embedded_commands): Likewise. 255260484Sobrien (_bfd_coff_final_link): Likewise. 255360484Sobrien * ecoff.c (_bfd_ecoff_write_object_contents): Likewise. 255460484Sobrien (ecoff_final_link_debug_accumulate): Likewise. 255560484Sobrien (ecoff_indirect_link_order): Likewise, for memcpy and malloc. 255660484Sobrien (ecoff_reloc_link_order): Likewise, for malloc. 255760484Sobrien * ecofflink.c (ecoff_align_debug): Likewise, for memset. 255860484Sobrien (ecoff_write_symhdr): Likewise, for malloc. 255960484Sobrien * elf32-hppa.c (elf32_hppa_read_symext_info): Likewise. 256060484Sobrien * elf.c (assign_file_positions_except_relocs): Likewise, for 256160484Sobrien qsort. 256260484Sobrien * elf32-mips.c (mips_elf_read_ecoff_info): Likewise, for malloc. 256360484Sobrien * elfcode.h (elf_slurp_reloc_table): Likewise. 256460484Sobrien * elfcore.h (elf_corefile_note): Likewise. 256560484Sobrien * elflink.h (elf_link_add_object_symbols): Likewise. 256660484Sobrien (elf_link_read_relocs): Likewise. 256760484Sobrien (NAME(bfd_elf,size_dynamic_sections)): Likewise, for memset. 256860484Sobrien * i386linux.c (bfd_linux_size_dynamic_sections): Likewise. 256960484Sobrien * ieee.c (do_with_relocs): Likewise. 257060484Sobrien * linker.c (default_indirect_link_order): Likewise, for malloc. 257160484Sobrien * nlmcode.h (nlm_object_p): Likewise. 257260484Sobrien (nlm_write_object_contents): Likewise. 257360484Sobrien * oasys.c (oasys_set_section_contents): Likewise, for memcpy. 257460484Sobrien * reloc.c (bfd_generic_get_relocated_section_contents): Likewise, 257560484Sobrien for malloc. 257660484Sobrien * section.c (bfd_get_section_contents): Likewise, for memcpy. 257760484Sobrien * srec.c (srec_get_section_contents): Likewise. 257860484Sobrien (srec_set_section_contents): Likewise. 257960484Sobrien * sunos.c (bfd_sunos_size_dynamic_sections): Likewise, for 258060484Sobrien realloc and memset. 258160484Sobrien (sunos_scan_relocs): Likewise, for malloc. 258260484Sobrien (sunos_scan_dynamic_symbol): Likewise, for realloc. 258360484Sobrien * syms.c (_bfd_generic_read_minisymbols): Likewise, for malloc. 258460484Sobrien * versados.c (versados_get_section_contents): Likewise, for 258560484Sobrien memcpy. 258660484Sobrien 258760484Sobrien * libbfd.c (real_read): Add prototype. Change argument types from 258860484Sobrien int to size_t. 258960484Sobrien (bfd_read): Cast real_read argument to size_t, not int. 259060484Sobrien (bfd_write): Cast fwrite argument to size_t, not int. 259160484Sobrien 259260484Sobrien * elf64-gen.c (elf_info_to_howto): Fix definition for recent elf.c 259360484Sobrien changes. 259460484Sobrien 259560484Sobrien * configure.in: Fix typo: change {$enableval} to ${enableval}. 259660484Sobrien * configure: Rebuild. 259760484Sobrien 259860484Sobrien * Makefile.in (BFD32_BACKENDS): Add elflink.o. 259960484Sobrien 260060484Sobrien * targets.c (bfd_target): Add fields _read_minisymbols and 260160484Sobrien _minisymbol_to_symbol. 260260484Sobrien (BFD_JUMP_TABLE_SYMBOLS): Add _read_minisymbols and 260360484Sobrien _minisymbol_to_symbol. 260460484Sobrien (bfd_read_minisymbols): Define. 260560484Sobrien (bfd_minisymbol_to_symbol): Define. 260660484Sobrien * syms.c (_bfd_generic_read_minisymbols): Define. 260760484Sobrien (_bfd_generic_minisymbol_to_symbol): Define. 260860484Sobrien * libbfd-in.h (_bfd_nosymbols_read_minisymbols): Define. 260960484Sobrien (_bfd_nosymbols_minisymbol_to_symbol): Define. 261060484Sobrien (_bfd_generic_read_minisymbols): Declare. 261160484Sobrien (_bfd_generic_minisymbol_to_symbol): Declare. 261260484Sobrien * bfd-in2.h: Rebuild. 261360484Sobrien * libbfd.h: Rebuild. 261460484Sobrien * aoutx.h (MINISYM_THRESHOLD): Define. 261560484Sobrien (NAME(aout,read_minisymbols)): New function. 261660484Sobrien (NAME(aout,minisymbol_to_symbol)): New function. 261760484Sobrien * libaout.h (NAME(aout,read_minisymbols)): Declare. 261860484Sobrien (NAME(aout,minisymbol_to_symbol)): Declare. 261960484Sobrien * aout-target.h (MY_read_minisymbols): Define. 262060484Sobrien (MY_minisymbol_to_symbol): Define. 262160484Sobrien * All targets: Define read_minisymbols and minisymbol_to_symbol. 262260484Sobrien 262360484SobrienWed Jul 12 17:55:55 1995 Ken Raeburn <raeburn@cygnus.com> 262460484Sobrien 262560484Sobrien * elflink.h (elf_link_add_object_symbols): Cast return value from 262660484Sobrien bfd_alloc. 262760484Sobrien 262860484Sobrien * elfcode.h (size_info): Don't use "&" before function names. 262960484Sobrien 263060484SobrienWed Jul 12 00:16:48 1995 Ken Raeburn <raeburn@kr-pc.cygnus.com> 263160484Sobrien 263260484Sobrien * libelf.h (elf_backend_data): Use unsigned, not unsigned char, 263360484Sobrien for bitfields. 263460484Sobrien 263560484SobrienTue Jul 11 15:19:53 1995 Ian Lance Taylor <ian@cygnus.com> 263660484Sobrien 263760484Sobrien * elf.c (bfd_section_from_shdr): In case SHT_REL[A], only get the 263860484Sobrien BFD section for the sh_link section if it is a SYMTAB section. 263960484Sobrien 264060484Sobrien * aoutx.h (NAME(aout,link_add_symbols)): Don't bother to check 264160484Sobrien that archives hold a.out objects. 264260484Sobrien * cf-i386lynx.c (coff_bfd_link_add_symbols): Don't define. 264360484Sobrien (lynx_link_add_symbols): Remove. 264460484Sobrien * cf-m68klynx.c (coff_bfd_link_add_symbols): Don't define. 264560484Sobrien (lynx_link_add_symbols): Remove. 264660484Sobrien * elflink.h (elf_bfd_link_add_symbols): Don't bother to check that 264760484Sobrien archives hold ELF objects. 264860484Sobrien 264960484Sobrien * archive.c (bfd_generic_archive_p): If the archive has a map, and 265060484Sobrien the target was defaulted, but the first object in the archive can 265160484Sobrien not be matched with that target, then return a bad format error. 265260484Sobrien 265360484Sobrien * elf64-sparc.c (elf_sparc_howto_table): Set howto for WDISP16 to 265460484Sobrien elf64_wdisp16_reloc. 265560484Sobrien (elf64_wdisp16_reloc): New static function. 265660484Sobrien (elf64_sparc_relocate_section): New static function. 265760484Sobrien (elf_backend_relocate_section): Define. 265860484Sobrien 265960484Sobrien * libelf.h (struct elf_size_info): Change type of last argument to 266060484Sobrien swap_symbol_out from char * to PTR. 266160484Sobrien (bfd_elf32_swap_symbol_out): Update declaration. 266260484Sobrien (bfd_elf64_swap_symbol_out): Likewise. 266360484Sobrien * elfcode.h (elf_swap_symbol_out): Change type of cdst from char * 266460484Sobrien to PTR. 266560484Sobrien * elf.c (swap_out_syms): Cast to PTR, not char *, when calling 266660484Sobrien swap_symbol_out routine. 266760484Sobrien * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Likewise. 266860484Sobrien (elf_link_output_sym): Likewise. 266960484Sobrien (elf_link_output_extsym): Likewise. 267060484Sobrien * elf32-sparc.c (elf32_sparc_finish_dynamic_sections): Likewise. 267160484Sobrien 267260484SobrienTue Jul 11 12:29:49 1995 Rick Sladkey <jrs@world.std.com> 267360484Sobrien 267460484Sobrien * elf.c (_bfd_elf_find_nearest_line): Handle the simple case where 267560484Sobrien there is no debugging information. 267660484Sobrien 267760484SobrienMon Jul 10 11:45:55 1995 Ken Raeburn <raeburn@cygnus.com> 267860484Sobrien 267960484Sobrien * makefile.dos (OBJS): Add binary.o and tekhex.o. From DJ 268060484Sobrien Delorie. 268160484Sobrien 268260484SobrienMon Jul 10 11:09:58 1995 Ian Lance Taylor <ian@cygnus.com> 268360484Sobrien 268460484Sobrien * linker.c (set_symbol_from_hash): bfd_link_hash_new case: Don't 268560484Sobrien abort; it can happen for constructor symbols when not building 268660484Sobrien constructors. 268760484Sobrien 268860484Sobrien * coff-i960.c (coff_i960_relocate): Correct typo: use ! on strcmp, 268960484Sobrien not on string. 269060484Sobrien * cofflink.c (_bfd_coff_generic_relocate_section): Remove unused 269160484Sobrien local i. 269260484Sobrien * coff-arm.c (coff_arm_rtype_to_howto): Don't declare. 269360484Sobrien (PCRELOFFSET): Define if not already defined. 269460484Sobrien * Makefile.in: Rebuild dependencies. 269560484Sobrien (BFD32_BACKENDS): Add coff-arm.o 269660484Sobrien (CFILES): Add coff-arm.c, pe-arm.c, pei-arm.c. 269760484Sobrien 269860484Sobrien * aoutx.h (NAME(aout,link_hash_table_create)): Allocate hash table 269960484Sobrien using bfd_alloc, not malloc. 270060484Sobrien * cofflink.c (_bfd_coff_link_hash_table_create): Likewise. 270160484Sobrien * ecoff.c (_bfd_ecoff_bfd_link_hash_table_create): Likewise. 270260484Sobrien * i386linux.c (linux_link_hash_table_create): Likewise. 270360484Sobrien * linker.c (_bfd_generic_link_hash_table_create): Likewise. 270460484Sobrien * sunos.c (sunos_link_hash_table_create): Likewise. 270560484Sobrien 270660484Sobrien Based on patches from Eric Youngdale <eric@aib.com>: 270760484Sobrien * elflink.h (NAME(bfd_elf,size_dynamic_sections)): If -Bsymbolic, 270860484Sobrien output a DT_SYMBOLIC dynamic entry. 270960484Sobrien (elf_adjust_dynamic_symbol): If -Bsymbolic, don't require a PLT 271060484Sobrien entry for a locally defined symbol. 271160484Sobrien * elf32-i386.c (elf_i386_relocate_section): If -Bsymbolic, do warn 271260484Sobrien about undefined symbols, and fill in the GOT entry for a symbol 271360484Sobrien defined in a regular object file. 271460484Sobrien (elf_i386_finish_dynamic_symbol): If -Bsymbolic, output a RELATIVE 271560484Sobrien reloc rather than a GLOB_DAT reloc for a symbol defined in a 271660484Sobrien regular object file. 271760484Sobrien * elf32-m68k.c (elf_m68k_relocate_section): If -Bsymbolic, do warn 271860484Sobrien about undefined symbols, and fill in the GOT entry for a symbol 271960484Sobrien defined in a regular object file. 272060484Sobrien (elf_m68k_finish_dynamic_symbol): If -Bsymbolic, output a RELATIVE 272160484Sobrien reloc rather than a GLOB_DAT reloc for a symbol defined in a 272260484Sobrien regular object file. 272360484Sobrien * elf32-sparc.c (elf32_sparc_relocate_section): If -Bsymbolic, do 272460484Sobrien warn about undefined symbols, and fill in the GOT entry for a 272560484Sobrien symbol defined in a regular object file. 272660484Sobrien (elf32_sparc_finish_dynamic_symbol): If -Bsymbolic, output a 272760484Sobrien RELATIVE reloc rather than a GLOB_DAT reloc for a symbol defined 272860484Sobrien in a regular object file. 272960484Sobrien 273060484Sobrien * config/m68k-coff.mt (SELECT_VECS): Rename from SELECT_VECTORS. 273160484Sobrien Correct elements to be actual BFD vector names. 273260484Sobrien 273360484Sobrien * Makefile.in (Makefile): Don't depend upon @frags@. 273460484Sobrien (config.status): Depend upon @frags@. 273560484Sobrien 273660484SobrienFri Jul 7 17:36:44 1995 Ian Lance Taylor <ian@cygnus.com> 273760484Sobrien 273860484Sobrien * coffgen.c (coff_renumber_symbols): Sort defined symbols that are 273960484Sobrien neither BSF_FUNCTION not BSF_NOT_AT_END just before undefined 274060484Sobrien symbols. 274160484Sobrien * coffcode.h (coff_slurp_symbol_table): Set BSF_FUNCTION as well 274260484Sobrien as BSF_NOT_AT_END. 274360484Sobrien 274460484SobrienFri Jul 7 17:16:15 1995 Ken Raeburn <raeburn@cygnus.com> 274560484Sobrien 274660484Sobrien * Makefile.in (do_mostlyclean): Remove config.log. 274760484Sobrien (do_distclean): Remove config.cache. 274860484Sobrien 274960484SobrienThu Jul 6 14:37:43 1995 Ian Lance Taylor <ian@cygnus.com> 275060484Sobrien 275160484Sobrien * elf32-i386.c (elf_i386_relocate_section): Revert May 24 patch. 275260484Sobrien Don't copy PC32 reloc against section into shared object. 275360484Sobrien 275460484Sobrien * Makefile.in: Rebuild dependencies. 275560484Sobrien (CFILES): Added elflink.c. 275660484Sobrien (Makefile): Depend upon config.status, not configure.in. 275760484Sobrien (config.status): New target; depend upon configure configure.host 275860484Sobrien and config.bfd. 275960484Sobrien 276060484SobrienWed Jul 5 20:17:14 1995 Ken Raeburn <raeburn@cygnus.com> 276160484Sobrien 276260484Sobrien * elfcore.h, elflink.h, elfcode.h, elf.c, elflink.c: Moved some 276360484Sobrien primarily size-independent code from elfcode.h to elf.c and new 276460484Sobrien file elflink.c; moved out other core- or linker-related routines 276560484Sobrien into other new .h files for clarity. Renamed many routines to 276660484Sobrien start with bfd_elf or _bfd_elf. Added a structure of 276760484Sobrien size-dependent but target-independent info to elfcode.h. 276860484Sobrien * Makefile.in: Build elflink.o. Update dependencies. 276960484Sobrien * libelf.h: Updated some declarations. Added a definition for the 277060484Sobrien new structure in elfcode.h. Added more fields to elf backend data 277160484Sobrien structure. 277260484Sobrien * elfxx-target.h: Refer to the appropriate size-dependent info. 277360484Sobrien * elf32-*.c: Changed some function names. Moved common 277460484Sobrien create_dynamic_sections code from m68k, sparc, and i386 support 277560484Sobrien into elflink.c. Define some new macros to fill in new fields of 277660484Sobrien back end data. Also clean up some "gcc -Wall" warnings regarding 277760484Sobrien unused or uninitialized variables. 277860484Sobrien 277960484Sobrien * Makefile.in (BFD_LIBS): No, don't put elflink.o here. 278060484Sobrien * configure.in: Include it here whenever elf.o is specified. 278160484Sobrien 278260484SobrienWed Jul 5 10:31:47 1995 Ian Lance Taylor <ian@cygnus.com> 278360484Sobrien 278460484Sobrien * elf32-mips.c (mips_elf_object_p): Unconditionally set 278560484Sobrien elf_bad_symtab, since sometimes the symbol table is messed up and 278660484Sobrien the last symbol is global. 278760484Sobrien 278860484Sobrien * ecoff.c (_bfd_ecoff_bfd_is_local_label): New function. 278960484Sobrien * libecoff.h (_bfd_ecoff_bfd_is_local_label): Declare. 279060484Sobrien * elf32-mips.c (mips_elf_is_local_label): New static function. 279160484Sobrien (bfd_elf32_bfd_is_local_label): Define. 279260484Sobrien 279360484Sobrien * configure.in: Use $ac_config_sub, not $configsub. 279460484Sobrien * configure: Likewise. 279560484Sobrien 279660484Sobrien Permit --enable-targets=ieee: 279760484Sobrien * config.bfd (*-*-ieee*): New target. 279860484Sobrien * config/ieee.mt: New file. 279960484Sobrien 280060484SobrienWed Jul 5 04:16:35 1995 Ken Raeburn <raeburn@kr-pc.cygnus.com> 280160484Sobrien 280260484Sobrien * config/i386aix.mh (HDEFINES): Remove -DFASCIST_FDOPEN. 280360484Sobrien 280460484Sobrien Autoconfiscation: 280560484Sobrien * configure.in, Makefile.in, doc/Makefile.in: Switch from Cygnus 280660484Sobrien configure to autoconf ways of processing --enable arguments, 280760484Sobrien setting up symlinks, incorporating makefile fragments, printing 280860484Sobrien messages at configuration time, setting variables in Makefile. 280960484Sobrien Deleted some unused variables. Check for ranlib via autoconf. 281060484Sobrien For now, configure script removes doc/config.status. 281160484Sobrien * configure: New file. 281260484Sobrien * dep-in.sed: Use @SRCDIR@ instead of @srcdir@, so Makefile.in 281360484Sobrien line doesn't get broken by configure. 281460484Sobrien * doc/configure.in: Removed. 281560484Sobrien 281660484SobrienTue Jul 4 12:22:21 1995 Ian Lance Taylor <ian@cygnus.com> 281760484Sobrien 281860484Sobrien * archive.c (_bfd_construct_extended_name_table): If 281960484Sobrien BFD_TRADITIONAL_FORMAT is set, limit the length of all file names 282060484Sobrien to ar_max_namelen. 282160484Sobrien (bfd_dont_truncate_arname): If BFD_TRADITIONAL_FORMAT is set, call 282260484Sobrien bfd_bsd_truncate_arname. 282360484Sobrien (_bfd_write_archive_contents): Revert June 1 change. 282460484Sobrien 282560484Sobrien * elfcode.h (NAME(bfd_elf,record_link_assignment)): Add provide 282660484Sobrien argument. 282760484Sobrien * bfd-in.h (bfd_elf32_record_link_assignment): Update prototype. 282860484Sobrien (bfd_elf64_record_link_assignment): Likewise. 282960484Sobrien * bfd-in2.h: Rebuild. 283060484Sobrien 283160484Sobrien * libelf.h (struct elf_link_hash_table): Add needed field. Remove 283260484Sobrien saw_needed field. 283360484Sobrien * elfcode.h (elf_link_add_object_symbols): If elf_dt_needed_name 283460484Sobrien is an empty string, don't make a DT_NEEDED entry in the output 283560484Sobrien file. Record all DT_NEEDED entries found in input dynamic 283660484Sobrien objects. 283760484Sobrien (elf_link_output_extsym): Don't check saw_needed when issuing 283860484Sobrien warnings. 283960484Sobrien * elf.c (_bfd_elf_link_hash_table_init): Initialize needed, not 284060484Sobrien saw_needed. 284160484Sobrien (bfd_elf_get_needed_list): New function. 284260484Sobrien * bfd-in.h (struct bfd_elf_link_needed_list): Define. 284360484Sobrien (bfd_elf_get_needed_list): Define. 284460484Sobrien * bfd-in2.h: Rebuild. 284560484Sobrien 284660484Sobrien * ecoff.c (_bfd_ecoff_find_nearest_line): Also initialize 284760484Sobrien find_buffer and fdrtab_len fields of newly allocated 284860484Sobrien find_line_info structure. 284960484Sobrien 285060484SobrienMon Jul 3 17:03:52 1995 Jeff Law (law@snake.cs.utah.edu) 285160484Sobrien 285260484Sobrien * som.c (hppa_som_gen_reloc_type): New argument "sym_diff", 285360484Sobrien nonzero when we're generating relocations for an expression 285460484Sobrien using the difference of two symbols. All callers changed. 285560484Sobrien Handle difference of symbols for both R_HPPA and R_COMPLEX 285660484Sobrien cases. 285760484Sobrien (som_write_fixups): Handle R_COMP1, R_COMP2 and R_CODE_EXPR 285860484Sobrien fixups. 285960484Sobrien 286060484SobrienMon Jul 3 13:55:18 1995 Steve Chamberlain <sac@slash.cygnus.com> 286160484Sobrien 286260484Sobrien * config.bfd (win32): New configuration. 286360484Sobrien * configure.host (pe): Changed to i386win32. 286460484Sobrien * config/i386pe.mh: Deleted. 286560484Sobrien * config/i386win32.mh: New file. 286660484Sobrien 286760484SobrienMon Jul 3 11:30:45 1995 Ian Lance Taylor <ian@cygnus.com> 286860484Sobrien 286960484Sobrien * ecoff.c (_bfd_ecoff_find_nearest_line): If we allocate 287060484Sobrien find_line_info, clear the fdrtab field. 287160484Sobrien 287260484Sobrien * targets.c (enum bfd_flavour): Add bfd_target_msdos_flavour here, 287360484Sobrien rather than in bfd-in2.h. 287460484Sobrien 287560484Sobrien * bfd.c (enum bfd_error): Define bfd_error_no_armap. 287660484Sobrien (bfd_errmsgs): Add string for bfd_error_no_armap. 287760484Sobrien * bfd-in2.h: Rebuild. 287860484Sobrien * ecoff.c (ecoff_link_add_archive_symbols): If an archive has no 287960484Sobrien armap, set bfd_error_no_armap rather than bfd_error_no_symbols. 288060484Sobrien * elfcode.h (elf_link_add_archive_symbols): Likewise. 288160484Sobrien * linker.c (_bfd_generic_link_add_archive_symbols): Likewise. 288260484Sobrien 288360484Sobrien * elfcode.h (elf_link_add_object_symbols): Permit common and 288460484Sobrien indirect symbols in weakdefs BFD_ASSERT. 288560484Sobrien * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Simplify 288660484Sobrien BFD_ASSERT to permit some legal, but odd, cases. 288760484Sobrien * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise. 288860484Sobrien * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise. 288960484Sobrien 289060484Sobrien * Makefile.in: Rebuild dependencies. 289160484Sobrien (BFD32_BACKENDS): Add versados.o. 289260484Sobrien (CFILES): Add pe-i386.c, pei-i386.c, and versados.c. 289360484Sobrien 289460484SobrienSun Jul 2 17:49:32 1995 Ian Lance Taylor <ian@cygnus.com> 289560484Sobrien 289660484Sobrien * cofflink.c (_bfd_coff_generic_relocate_section): Cast base_file 289760484Sobrien to FILE * before using it. 289860484Sobrien * stab-syms.c: Revert yesterday's patch. 289960484Sobrien 290060484SobrienSat Jul 1 12:10:42 1995 Fred Fish <fnf@cygnus.com> 290160484Sobrien 290260484Sobrien * stab-syms.c (stdio.h): Include prior to libaout.h, which 290360484Sobrien includes bfdlink.h, which now uses FILE. 290460484Sobrien 290560484SobrienSat Jul 1 00:11:08 1995 Ken Raeburn <raeburn@cygnus.com> 290660484Sobrien 290760484Sobrien * elfxx-target.h: New file. 290860484Sobrien 290960484Sobrien * libelf.h (struct elf_backend_data): Remove elf_64_p field. 291060484Sobrien * elfxx-target.h (elfNN_bed): Don't set it. 291160484Sobrien 291260484Sobrien * elf32-target.h, elf64-target.h: Deleted. 291360484Sobrien * Makefile.in (elf32-target.h, elf64-target.h): Build them from 291460484Sobrien elfxx-target.h. 291560484Sobrien 291660484SobrienFri Jun 30 16:07:18 1995 Steve Chamberlain <sac@slash.cygnus.com> 291760484Sobrien 291860484Sobrien * cofflink.c (_bfd_coff_generic_relocate_section): Compare 291960484Sobrien the full text of .reloc or .edata section names. 292060484Sobrien 292160484SobrienFri Jun 30 15:47:37 1995 Fred Fish <fnf@cygnus.com> 292260484Sobrien 292360484Sobrien * cofflink.c (_bfd_coff_generic_relocate_section): 292460484Sobrien Remove extra '+'. 292560484Sobrien 292660484SobrienThu Jun 29 17:24:52 1995 Steve Chamberlain <sac@slash.cygnus.com> 292760484Sobrien 292860484Sobrien * coff-h8300.c (COFF_LONG_FILENAMES): Define. 292960484Sobrien 293060484SobrienWed Jun 28 18:04:42 1995 Steve Chamberlain <sac@slash.cygnus.com> 293160484Sobrien 293260484Sobrien * Makefile.in: versados.o is now conditionally built. 293360484Sobrien * coffcode.h (add_data_entry): New function. 293460484Sobrien (coff_write_object_contents): Clean up. Calculate 293560484Sobrien data entries. 293660484Sobrien * cofflink.c (_bfd_coff_generic_relocate_section): 293760484Sobrien .reloc and .edata sections are IMAGE_BASED too. 293860484Sobrien If there's a base_file then write out base information. 293960484Sobrien * configure.host (i386-*-pe): New. 294060484Sobrien * syms.c (coff_section_type): Only scan prefixes. 294160484Sobrien * targets.c (bfd_target_vector): Versados is now conditionally 294260484Sobrien built. 294360484Sobrien * config/m68k-coff.mt: Build versados.o 294460484Sobrien * hosts/i386pe.h: New file. 294560484Sobrien 294660484SobrienMon Jun 26 13:53:49 1995 Jeff Law (law@snake.cs.utah.edu) 294760484Sobrien 294860484Sobrien * elf32-hpa.c (elf32_hppa_relocate_section): Close comment before 294960484Sobrien R_PARISC_DPREL21L handling. 295060484Sobrien 295160484SobrienThu Jun 22 19:28:36 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 295260484Sobrien 295360484Sobrien Sun May 7 11:53:41 MDT 1995 Bryan Ford <baford@cs.utah.edu> 295460484Sobrien 295560484Sobrien * config/i386-moss.mt: created. 295660484Sobrien 295760484SobrienThu Jun 22 08:56:10 1995 Steve Chamberlain <sac@slash.cygnus.com> 295860484Sobrien 295960484Sobrien * reloc.c (bfd_perform_relocation): Add case for -ve words. 296060484Sobrien 296160484SobrienWed Jun 21 13:13:49 1995 Jeff Law (law@snake.cs.utah.edu) 296260484Sobrien 296360484Sobrien * elf32-hppa.c (elf32_hppa_relocate_section): Don't try to apply a 296460484Sobrien relocation against an undefined symbols. 296560484Sobrien 296660484SobrienWed Jun 21 10:16:10 1995 Steve Chamberlain <sac@slash.cygnus.com> 296760484Sobrien 296860484Sobrien * versados.c: Second pass/rewrite. 296960484Sobrien 297060484SobrienMon Jun 19 08:40:45 1995 Steve Chamberlain <sac@slash.cygnus.com> 297160484Sobrien 297260484Sobrien * syms.c (coff_section_type): Compare only the front part 297360484Sobrien of a section name. 297460484Sobrien 297560484SobrienSat Jun 17 09:40:44 1995 Jeff Law (law@snake.cs.utah.edu) 297660484Sobrien 297760484Sobrien * elf32-hppa.c (elf32_hppa_size_stubs): Set the size of the stub 297860484Sobrien section if we get an error. 297960484Sobrien 298060484Sobrien * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Don't mess 298160484Sobrien with the operands of an R_PARISC_DPREL21L relocation if the insn 298260484Sobrien is not "addil <symbol>,%r27". 298360484Sobrien 298460484SobrienFri Jun 16 15:04:47 1995 Stan Shebs <shebs@andros.cygnus.com> 298560484Sobrien 298660484Sobrien * bfd-in.h (NT_subsystem, NT_stack_heap): Declare but don't 298760484Sobrien define. 298860484Sobrien * bfd-in2.h: Rebuilt. 298960484Sobrien * bfd.c (NT_subsystem, NT_stack_heap): Define. 299060484Sobrien 299160484SobrienFri Jun 16 00:07:25 1995 Jeff Law (law@snake.cs.utah.edu) 299260484Sobrien 299360484Sobrien * elf32-hppa.c (elf32_hppa_bfd_link_link_relocate): Use the right 299460484Sobrien type field (there are two!) when checking to see if $global$ is 299560484Sobrien defined. 299660484Sobrien 299760484SobrienThu Jun 15 14:03:47 1995 Stan Shebs <shebs@andros.cygnus.com> 299860484Sobrien 299960484Sobrien * bfd-in.h, bfd-in2.h (bfd_boolean): Rename bfd_true, bfd_false 300060484Sobrien to bfd_tttrue, bfd_fffalse so as not to conflict with functions. 300160484Sobrien * coffswap.h (coff_swap_scnhdr_out): Remove version that was 300260484Sobrien hacked for MPW C. 300360484Sobrien * mpw-config.in: Set shell vars instead of pasting to makefile 300460484Sobrien for each configuration, edit coffswap.h to make MPW C not choke. 300560484Sobrien (i386-unknown-coff, sh-hitachi-hms): Recognize. 300660484Sobrien * mpw-make.in (BFD_LIBS): Add versados.c.o. 300760484Sobrien 300860484Sobrien * versados.c (versados_scan): Properly cast results from bfd_alloc. 300960484Sobrien 301060484SobrienWed Jun 14 15:27:32 1995 Steve Chamberlain <sac@slash.cygnus.com> 301160484Sobrien 301260484Sobrien * cofflink.c (process_embedded_commands): New function 301360484Sobrien reads and handles .drectve sections for PE. 301460484Sobrien (coff_link_input_bfd): Call new function if PE. 301560484Sobrien 301660484SobrienMon Jun 12 12:09:39 1995 Jeff Law (law@snake.cs.utah.edu) 301760484Sobrien 301860484Sobrien * bfd-in.h (bfd_set_section_vma): Case true to a boolean. 301960484Sobrien (bfd_set_cacheable): Likewise. 302060484Sobrien * bfd-in2.h: Rebuilt. 302160484Sobrien 302260484SobrienFri Jun 9 12:20:28 1995 Steve Chamberlain <sac@rtl.cygnus.com> 302360484Sobrien 302460484Sobrien * elfcode.h (elf_sort_hdrs): Rewrite to be symmetrical. 302560484Sobrien 302660484SobrienFri Jun 9 12:49:00 1995 Jeff Law (law@snake.cs.utah.edu) 302760484Sobrien 302860484Sobrien * targets.c: Add copy_private_symbol_data and link_split_section 302960484Sobrien to the target vector. 303060484Sobrien * libbfd-in.h (_bfd_generic_bfd_copy_private_symbol_data): Define. 303160484Sobrien (_bfd_nolink_bfd_link_split_section): Likewise. 303260484Sobrien (bfd_generic_link_split_section): Declare. 303360484Sobrien * syms.c (bfd_copy_private_symbol_data): Define. 303460484Sobrien * linker.c (bf_link_split_section): Likewise. 303560484Sobrien * som.c (som_bfd_copy_private_symbol_data): New function 303660484Sobrien (som_bfd_link_split_section): Likewise. 303760484Sobrien * All other targets updated with default versions of new routines. 303860484Sobrien 303960484Sobrien * Take out my braindamaged bfd_true/bfd_false changes from earlier 304060484Sobrien today. Replace with just: 304160484Sobrien * bfd-in.h: (TRUE_FALSE_ALREADY_DEFINED): Define this if 304260484Sobrien compiling with g++-2.6 or later. 304360484Sobrien * bfd-in2.h: Rebuilt. 304460484Sobrien 304560484SobrienFri Jun 9 07:54:29 1995 Steve Chamberlain <sac@slash.cygnus.com> 304660484Sobrien 304760484Sobrien * versados.c (struct esd, get_4): Lint; use unsigned chars. 304860484Sobrien 304960484Sobrien * coff-i960.c (coff_i960_relocate): Compare output section names 305060484Sobrien when converting for vxworks. 305160484Sobrien 305260484SobrienWed Jun 7 19:01:30 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 305360484Sobrien 305460484Sobrien * elfcode.h (elf_fake_sections): Permit .scommon or COMMON 305560484Sobrien sections as random SHT_NOBITS sections, in case a linker script is 305660484Sobrien strange. 305760484Sobrien 305860484SobrienTue Jun 6 17:29:32 1995 Steve Chamberlain <sac@slash.cygnus.com> 305960484Sobrien 306060484Sobrien * bfd-in.h (NT_subsystem, NT_stack_heap): Moved from pe.h 306160484Sobrien * coff-i386.c (coff_i386_rtype_to_howto): Get PE relocs right. 306260484Sobrien * coffcode.h (coff_mkobject): Set pe tdata bit when using PE. 306360484Sobrien * cofflink.c (COFF_WITH_PE code): Test on obj_pe bit rather 306460484Sobrien than conditional compile. 306560484Sobrien * configure.in: Fix PE dependencies. 306660484Sobrien * libcoff-in.h (obj_pe): New. 306760484Sobrien (coff_tdata): Added pe entry. 306860484Sobrien * libcoff.h: Regenerated. 306960484Sobrien 307060484SobrienMon Jun 5 09:07:13 1995 Steve Chamberlain <sac@slash.cygnus.com> 307160484Sobrien 307260484Sobrien * coff-a29k.c (coff_a29k_adjust_symndx): Completely parenthesize 307360484Sobrien macro. 307460484Sobrien 307560484SobrienMon Jun 5 02:15:20 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com> 307660484Sobrien 307760484Sobrien Linker support for m68k-elf from Andreas Schwab 307860484Sobrien <schwab@issan.informatik.uni-dortmund.de>: 307960484Sobrien * elfcode.h (elf_link_add_object_symbols): Check for NULL when 308060484Sobrien looping through the symbol hashes. 308160484Sobrien (elf_bfd_final_link): When looking for _init and _fini don't use 308260484Sobrien the symbol if it is imported from another object. 308360484Sobrien * elf32-m68k.c: Relocation type changed from REL to RELA. Regular 308460484Sobrien and dynamic linking support functions added, similar to other elf 308560484Sobrien targets. 308660484Sobrien 308760484Sobrien * config.bfd (i[345]86-*-gnu*): Use ELF configuration. 308860484Sobrien 308960484SobrienFri Jun 2 18:54:59 1995 Steve Chamberlain <sac@slash.cygnus.com> 309060484Sobrien 309160484Sobrien * versados.c: New file. 309260484Sobrien * bfd-in2.h (struct _bfd): New field. 309360484Sobrien * bfd.c (struct _bfd): New field. 309460484Sobrien * configure.in (versados_vec): New field. 309560484Sobrien * targets.c (bfd_flavor): Added versados. 309660484Sobrien 309760484SobrienThu Jun 1 13:51:49 1995 Steve Chamberlain <sac@slash.cygnus.com> 309860484Sobrien 309960484Sobrien * coffcode.h (sec_to_styp_flags, styp_to_sec_flags, 310060484Sobrien coff_new_section_hook): Any section that starts ".stab" 310160484Sobrien is now marked as debugging. 310260484Sobrien 310360484SobrienThu Jun 1 16:15:16 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 310460484Sobrien 310560484Sobrien * archive.c (_bfd_write_archive_contents): Disable extended name 310660484Sobrien table until it can be made optional, so that native AR has half a 310760484Sobrien chance on SunOS and HP/UX. 310860484Sobrien 310960484Sobrien * linker.c (_bfd_generic_link_output_symbols, case 311060484Sobrien bfd_link_hash_indirect): Add cast to correct pointer types. 311160484Sobrien 311260484SobrienSat May 27 21:37:31 1995 J.T. Conklin <jtc@rtl.cygnus.com> 311360484Sobrien 311460484Sobrien * config.bfd (m68k-bull-sysv*): Added strip_underscore=yes. 311560484Sobrien (m68k-est-coff): Removed. target does not effect object format. 311660484Sobrien 311760484SobrienWed May 24 10:52:01 1995 Steve Chamberlain <sac@slash.cygnus.com> 311860484Sobrien 311960484Sobrien * linker.c (_bfd_generic_link_output_symbols): Cope with 312060484Sobrien indirect symbols. 312160484Sobrien 312260484Sobrien * elf32-i386.c (elf_i386_relocate_section): Give error 312360484Sobrien message when linking to a shared reloc which isn't there. 312460484Sobrien 312560484SobrienWed May 24 10:40:00 1995 Steve Chamberlain <sac@slash.cygnus.com> 312660484Sobrien 312760484Sobrien Support for ARM-PE. 312860484Sobrien 312960484Sobrien * Makefile.in, coffcode.h, config.bfd, configure.in, pe-arm.c, 313060484Sobrien pei-arm.c, coff-arm.c, reloc.c, targets.c, config/arm-pe.mt: 313160484Sobrien Support for ARM COFF/PE. 313260484Sobrien 313360484SobrienTue May 23 19:24:58 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 313460484Sobrien 313560484Sobrien * bfd.c (bfd_get_relocated_section_contents): Now a function, 313660484Sobrien tries calling routine from input bfd target vector for 313760484Sobrien bfd_indirect_link_order. Put a declaration into the header file. 313860484Sobrien * bfd-in2.h: Regenerated. 313960484Sobrien * elf32-mips.c (gprel16_with_gp): New function, split out from 314060484Sobrien mips_elf_gprel16_reloc. 314160484Sobrien (mips_elf_gprel16_reloc): Call it. If output bfd target vector 314260484Sobrien isn't elf flavoured, abort, since it's assumed to be elf in some 314360484Sobrien of this code, including the code that looks up the gp value. 314460484Sobrien (elf32_mips_get_relocated_section_contents): New function, 314560484Sobrien modified from bfd_generic_get_relocated_section_contents to deal 314660484Sobrien with passing gp to gprel16_with_gp. 314760484Sobrien (bfd_elf32_bfd_get_relocated_section_contents): New macro. 314860484Sobrien * elf32-target.h (bfd_elf32_bfd_get_relocated_section_contents): 314960484Sobrien Don't define if already defined. 315060484Sobrien 315160484SobrienTue May 23 15:58:15 1995 Jeff Law (law@snake.cs.utah.edu) 315260484Sobrien 315360484Sobrien * Makefile.in: Install bfdlink.h too. 315460484Sobrien 315560484SobrienSun May 21 22:25:09 1995 Jeff Law (law@snake.cs.utah.edu) 315660484Sobrien 315760484Sobrien * elf32-hppa.c (elf32_hppa_relocate_section): Handle undefined and 315860484Sobrien notsupported return codes from final_link_relocate (used when 315960484Sobrien $global$ is undefined or nonexistant). 316060484Sobrien (elf32_hppa_bfd_link_link_relocate): If $global$ exists, but is 316160484Sobrien not defined,then return bfd_reloc_undefined. 316260484Sobrien 316360484SobrienFri May 19 10:00:14 1995 Steve Chamberlain <sac@rtl.cygnus.com> 316460484Sobrien 316560484Sobrien * coffswap.h: (IMAGE_BASE): Define to 0 if not. 316660484Sobrien 316760484SobrienThu May 18 04:24:01 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com> 316860484Sobrien 316960484Sobrien Wed May 10 14:28:16 1995 Richard Earnshaw (rearnsha@armltd.co.uk) 317060484Sobrien 317160484Sobrien * aoutx.h (aout_link_input_section_standard): If defined, call 317260484Sobrien MY_relocatable_reloc before doing a partial relocation. 317360484Sobrien 317460484Sobrien * aout-arm.c: (WRITE_HEADERS): Delete. 317560484Sobrien (NAME): Define version to override default in aoutx.h 317660484Sobrien (MY(howto_table)): Reformat. Alter some entries slightly. 317760484Sobrien (RELOC_ARM_BITS_NEG_{BIG,LITTLE}): Define. 317860484Sobrien (MY(reloc_howto), MY(put_reloc), MY(relocatable_reloc)): New functions. 317960484Sobrien (MY_reloc_howto, MY_put_reloc, MY_relocatable_reloc): Define. 318060484Sobrien (MY(fix_pcrel_26)): Renamed from aoutarm_fix_pcrel_26, return 318160484Sobrien bfd_reloc_ok not bfd_reloc_continue. 318260484Sobrien (MY(fix_pcrel_26_done)): Likewise. 318360484Sobrien (MY(bfd_reloc_type_lookup)): Renamed from aoutarm_reloc_type_lookup. 318460484Sobrien (MY_bfd_link_hash_table_create, MY_bfd_link_add_symbols, 318560484Sobrien MY_bfd_final_link): Delete. 318660484Sobrien (MY_swap_std_reloc_in, MY_swap_std_reloc_out, MY_get_section_contents): 318760484Sobrien Define. 318860484Sobrien (aoutx.h): Include it. 318960484Sobrien (MY(swap_std_reloc_{in,out})): New functions. 319060484Sobrien Use RELOC_ARM_BITS_NEG_{BIG,LITTLE} to extract negative reloc bit. 319160484Sobrien (aoutarm_squirt_out_relocs): Delete. 319260484Sobrien 319360484Sobrien From: David Taylor (dtaylor@armltd.co.uk) 319460484Sobrien * config/arm[lb]-aout.mt: New files. 319560484Sobrien * aout-arm.c: New file. 319660484Sobrien * config.bfd: Handle arm{,e[lb]}-*-aout 319760484Sobrien * configure.in: Add vetor for aout_arm_{big,little}_vec. 319860484Sobrien * reloc.c: New relocation types for the ARM. 319960484Sobrien * targets.c (aout_arm_{big,little}_vec): declare. 320060484Sobrien 320160484SobrienTue May 16 10:29:51 1995 Jim Kingdon <kingdon@deneb.cygnus.com> 320260484Sobrien 320360484Sobrien * libbfd.c (bfd_stat): If bfd_cache_lookup returns an error, 320460484Sobrien return an error to the caller. Call bfd_set_error on errors. 320560484Sobrien 320660484SobrienTue May 16 14:44:45 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 320760484Sobrien 320860484Sobrien * libcoff-in.h (coff_renumber_symbols): Modified prototypes in 320960484Sobrien accordance with 11 May libcoff.h change. 321060484Sobrien 321160484SobrienThu May 11 16:43:14 1995 Steve Chamberlain <sac@slash.cygnus.com> 321260484Sobrien 321360484Sobrien tekhex.c (first_phase): Understand type 0 symbols. 321460484Sobrien (tekhex_write_object_contents): Fix typo in final record. 321560484Sobrien 321660484SobrienThu May 11 16:43:14 1995 Steve Chamberlain <sac@slash.cygnus.com> 321760484Sobrien 321860484Sobrien * coff-i960.c (optcall_callback): don't try and optimize 321960484Sobrien undefined refs. 322060484Sobrien (coff_write_relocs): Search for broken relocs on the way 322160484Sobrien out and fix them up. 322260484Sobrien (coff_renumber_symbols): Calculate and return index of 322360484Sobrien first undefined symbol. 322460484Sobrien (coff_write_object_contents): Call coff_renumber_symbols 322560484Sobrien and coff_write_relocs with the new args. 322660484Sobrien * libcoff.h: (coff_renumber_symbols, coff_renumber_symbols): 322760484Sobrien Modified prototypes. 322860484Sobrien 322960484SobrienThu May 11 16:43:14 1995 Steve Chamberlain <sac@slash.cygnus.com> 323060484Sobrien Tom Griest <griest@cs.yale.edu> 323160484Sobrien 323260484Sobrien Initial support for PE format. 323360484Sobrien 323460484Sobrien * Makefile.in, targets.c, configure.in, config.bfd: 323560484Sobrien Add support for i386-*-winnt and i386-*-pe. 323660484Sobrien * archive.c (do_slurp_coff_armap): Understand NTPE format 323760484Sobrien archives. 323860484Sobrien (_bfd_slurp_extended_name_table): Turn \ in a filename 323960484Sobrien into /. 324060484Sobrien * bfd-in.h (bfd_link_subsystem, _bfd_link_stack_heap): New. 324160484Sobrien * coff-i386.c (howto_table): Conditionalize PCRELOFFSET. 324260484Sobrien * coffcode.h (IMAGE_BASE): New. 324360484Sobrien (coff_compute_section_file_positions): Throw away .junk 324460484Sobrien sections for PE, align symbols. 324560484Sobrien (coff_write_object_contents): Throw away .junk sections 324660484Sobrien for PE. Remember info on .idata and .rsrc sections. 324760484Sobrien Fill in the PE header. 324860484Sobrien (coff_slurp_symbol_table): PE uses C_SECTION class. 324960484Sobrien * cofflink.c (_bfd_coff_final_link): Keep PE info up to date. 325060484Sobrien (_bfd_coff_generic_relocate_section): Cope with PE relocs. 325160484Sobrien * coffswap.h (coff_swap_{aout/file/scn/sym}hdr_{in/out}): 325260484Sobrien New code for PE headers. 325360484Sobrien 325460484SobrienTue May 9 17:01:38 1995 Michael Meissner <meissner@tiktok.cygnus.com> 325560484Sobrien 325660484Sobrien * config.bfd: Add little endian PowerPC support. 325760484Sobrien * configure.in: Ditto. 325860484Sobrien * targets.c: Ditto. 325960484Sobrien * config/ppcle-elf.mt: New file, for little endian PowerPC 326060484Sobrien support. 326160484Sobrien * config/ppc-elf.mt: Add little endian powerpc to the BFD 326260484Sobrien selection vectors. 326360484Sobrien * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Complain if 326460484Sobrien linking a different endian object than we expect. 326560484Sobrien (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Define, to provide little 326660484Sobrien endian support. 326760484Sobrien 326860484SobrienTue May 2 16:32:24 1995 Jeff Law (law@snake.cs.utah.edu) 326960484Sobrien 327060484Sobrien * config.bfd (hppa*-*-lites*): Treat just like hppa*-*-*elf*. 327160484Sobrien 327260484SobrienTue Apr 25 19:38:43 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 327360484Sobrien 327460484Sobrien * coffgen.c (make_a_section_from_file): Initialize lma same as 327560484Sobrien vma. 327660484Sobrien 327760484SobrienTue Apr 25 11:03:21 1995 Jason Molenda (crash@phydeaux.cygnus.com) 327860484Sobrien 327960484Sobrien * hosts/std-host.h: #include ansidecl.h 'cause PTR is used in 328060484Sobrien std-host.h. 328160484Sobrien 328260484SobrienMon Apr 24 23:56:44 1995 Ken Raeburn (raeburn@kr-pc.cygnus.com) 328360484Sobrien 328460484Sobrien * hosts/i386linux.h (HAVE_PROCFS): Don't define it. Added lengthy 328560484Sobrien comment explaining why. 328660484Sobrien 328760484SobrienMon Apr 24 10:34:02 1995 Michael Meissner <meissner@cygnus.com> 328860484Sobrien 328960484Sobrien * hosts/i386linux.h (HAVE_PROCFS): If NO_PROCFS is defined, don't 329060484Sobrien define HAVE_PROCFS. 329160484Sobrien 329260484SobrienMon Apr 24 08:33:12 1995 Michael Meissner <meissner@cygnus.com> 329360484Sobrien 329460484Sobrien * elf32-ppc.c (ppc_elf_relocate_section): Do not continue 329560484Sobrien processing unknown symbols to prevent a cascade of errors. 329660484Sobrien 329760484SobrienFri Apr 21 12:48:48 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 329860484Sobrien 329960484Sobrien Patches from H.J. Lu for Linux ELF core file support. 330060484Sobrien * elfcode.h (elf_core_file_matches_executable_p) [HAVE_PROCFS]: 330160484Sobrien Use prpsinfo_t instead of struct prpsinfo, for consistency. 330260484Sobrien * hosts/i386linux.h (HAVE_PROCFS): Define. 330360484Sobrien 330460484SobrienThu Apr 20 09:07:39 1995 Steve Chamberlain <sac@slash.cygnus.com> 330560484Sobrien 330660484Sobrien * linker.c (link_action): Do the right thing when a undefined 330760484Sobrien strong symbol appears after an undefined weak symbol. 330860484Sobrien 330960484SobrienFri Apr 14 16:51:17 1995 Michael Meissner <meissner@tiktok.cygnus.com> 331060484Sobrien 331160484Sobrien * elf32-ppc.c (ppc_elf_relocate_section): New function to relocate 331260484Sobrien a whole section for the linker, bypassing bfd_perform_relocation. 331360484Sobrien (ppc_elf_reloc_type_lookup): New function to map the BFD 331460484Sobrien enumeration code into a howto structure. 331560484Sobrien (ppc_elf_howto_raw): Rename from ppc_elf_howto_table. 331660484Sobrien (ppc_elf_howto_table): New array that maps PowerPC relocation 331760484Sobrien numbers to howto structures without a linear search. Change from 331860484Sobrien using bfd_elf_generic_reloc to use ppc_elf_std_reloc. 331960484Sobrien (ppc_elf_howto_init): Initialize ppc_elf_howto_table from 332060484Sobrien ppc_elf_howto_raw. 332160484Sobrien (ppc_elf_reloc_type_lookup): Use a case statement instead of a 332260484Sobrien loop. 332360484Sobrien (ppc_elf_std_reloc): Replacement for bfd_elf_generic_reloc. 332460484Sobrien (ppc_elf_unsupported_reloc): Print a real error message, instead 332560484Sobrien of calling abort. 332660484Sobrien (ppc_elf_addr16_ha_inner): Abstract getting adjustment from 332760484Sobrien ppc_elf_addr16_ha_reloc, so ppc_elf_relocate_section can use it 332860484Sobrien too. 332960484Sobrien (ppc_elf_addr16_ha_reloc): Call it. 333060484Sobrien (ppc_elf_got16_inner): Abstract getting adjustment from 333160484Sobrien ppc_elf_got16_reloc, so ppc_elf_relocate_section can use it too. 333260484Sobrien (ppc_elf_got16_reloc): Call it. 333360484Sobrien (ppc_elf_info_to_howto): Rename from powerpc_info_to_howto. 333460484Sobrien 333560484Sobrien * elfcode.h (elf_symbol_from_bfd_symbol): Omit space in debugging 333660484Sobrien output. 333760484Sobrien (elf_symbol_flags): Add debug function to decode flags so that 333860484Sobrien defining DEBUG to be 4 will compile again. 333960484Sobrien (elf_debug_section): Fix typo in debug output. 334060484Sobrien 334160484SobrienFri Apr 14 16:03:04 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 334260484Sobrien 334360484Sobrien * config.bfd: Add m68*-*-elf*. 334460484Sobrien * elf32-m68k.c: Filled out implementation, except for dynamic 334560484Sobrien linking support. 334660484Sobrien * reloc.c (enum bfd_reloc_code_real): Added *_GOT_PCREL, *_GOTOFF, 334760484Sobrien *_PLT_PCREL, *_PLTOFF, *_68K_* relocations for ELF. 334860484Sobrien * libbfd.h, bfd-in2.h: Regenerated. 334960484Sobrien 335060484SobrienThu Apr 13 14:28:04 1995 Torbjorn Granlund <tege@adder.cygnus.com> 335160484Sobrien 335260484Sobrien * coff-m68k.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Change from 335360484Sobrien 1 to 2. 335460484Sobrien (bfd_target): Change minimum section alignment from 1 to 2. 335560484Sobrien 335660484SobrienWed Apr 12 12:40:04 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 335760484Sobrien 335860484Sobrien * aoutx.h (machine_type, case bfd_arch_mips): Treat R8000 like 335960484Sobrien R6000 and R4000 for now. 336060484Sobrien 336160484SobrienTue Apr 4 12:28:25 1995 Stan Shebs <shebs@andros.cygnus.com> 336260484Sobrien 336360484Sobrien * mpw-config.in: New file, MPW version of configure.in. 336460484Sobrien * mpw-make.in: New file, MPW version of Makefile.in. 336560484Sobrien * hosts/mpw.h: New file, MPW host definitions. 336660484Sobrien * ecoffswap.h (ecoff_swap_pdr_in, ecoff_swap_pdr_in) [MPW_C]: 336760484Sobrien Alternate versions without ECOFF_64 that chokes MPW C. 336860484Sobrien * coffswap.h (coff_swap_scnhdr_out): Add alternative version with 336960484Sobrien partly-expanded macros. 337060484Sobrien 337160484SobrienThu Mar 30 14:56:21 1995 Ian Lance Taylor <ian@cygnus.com> 337260484Sobrien 337360484Sobrien * reloc.c (bfd_perform_relocation): Don't bother to check for 337460484Sobrien overflow if the symbol is undefined. 337560484Sobrien 337660484SobrienThu Mar 30 14:32:26 1995 H.J. Lu (hjl@nynexst.com) 337760484Sobrien 337860484Sobrien * config.bfd: Change linux to default to elf. Using 337960484Sobrien i[345]86-*-linuxaout will build a library which defaults to a.out. 338060484Sobrien * config/i386-laout.mt: Rename from old config/i386-linux.mt. 338160484Sobrien * config/i386-linux.mt: Rename from old config/i386-lelf.mt. 338260484Sobrien Comment out EXTRALIBS. 338360484Sobrien * config/i386-lelf.mt: Remove. 338460484Sobrien 338560484SobrienWed Mar 29 12:01:30 1995 Ian Lance Taylor <ian@cygnus.com> 338660484Sobrien 338760484Sobrien * coff-i960.c (coff_i960_relocate): Cache the section symbol in 338860484Sobrien the used_by_bfd field of the section, to avoid looping for each 338960484Sobrien reloc. 339060484Sobrien 339160484Sobrien * cpu-h8500.c (arch_info_struct): Change name from "H8/300" to 339260484Sobrien "h8300" for consistency with other cpu-* files. 339360484Sobrien 339460484SobrienTue Mar 28 15:14:11 1995 Ian Lance Taylor <ian@cygnus.com> 339560484Sobrien 339660484Sobrien * bout.c (b_out_canonicalize_reloc): Handle SEC_CONSTRUCTOR 339760484Sobrien sections. 339860484Sobrien (b_out_get_reloc_upper_bound): Likewise. 339960484Sobrien 340060484Sobrien * linker.c (generic_link_add_symbol_list): Skip constructor 340160484Sobrien symbols which the main linker code did not do anything with. 340260484Sobrien (_bfd_generic_link_output_symbols): Use udata.p if it is set, 340360484Sobrien rather than looking the symbol up in the hash table. Just pass 340460484Sobrien through constructor symbols for which udata.p is not set. If the 340560484Sobrien linker defined the symbol, clear the constructor flag. 340660484Sobrien 340760484SobrienTue Mar 21 10:50:32 1995 Jeff Law (law@snake.cs.utah.edu) 340860484Sobrien 340960484Sobrien * som.c (som_set_reloc_info): Sign extend constants from 341060484Sobrien R_DATA_OVERRIDE fixups. 341160484Sobrien * libhppa.h (sign_extend): Renamed from sign_ext. Fix. 341260484Sobrien (low_sign_extend): Likewise. 341360484Sobrien 341460484SobrienMon Mar 20 22:39:10 1995 Jeff Law (law@snake.cs.utah.edu) 341560484Sobrien 341660484Sobrien * som.c (som_slurp_symbol_table): Tighten test to determine 341760484Sobrien what symbols are section symbols. 341860484Sobrien 341960484SobrienSat Mar 18 01:54:45 1995 Ian Lance Taylor <ian@cygnus.com> 342060484Sobrien 342160484Sobrien * elfcode.h (elf_bfd_link_add_symbols): An empty archive is OK. 342260484Sobrien 342360484SobrienFri Mar 17 16:29:02 1995 Jeff Law (law@snake.cs.utah.edu) 342460484Sobrien 342560484Sobrien * som.c (som_bfd_copy_private_section_data): Just return true when 342660484Sobrien either the input or output section isn't attached to a SOM BFD. 342760484Sobrien (som_bfd_copy_private_bfd_data): Similarly for BFD private data. 342860484Sobrien 342960484SobrienFri Mar 17 11:50:34 1995 Ian Lance Taylor <ian@cygnus.com> 343060484Sobrien 343160484Sobrien * elfcode.h (elf_link_add_object_symbols): Check whether a dynamic 343260484Sobrien object has already been included, and ignore it the second time. 343360484Sobrien 343460484SobrienWed Mar 15 11:56:40 1995 Ian Lance Taylor <ian@cygnus.com> 343560484Sobrien 343660484Sobrien * elf32-sparc.c (elf_sparc_howto_table): Change R_SPARC_GOT13 from 343760484Sobrien complain_overflow_bitfield to complain_overflow_signed. 343860484Sobrien 343960484Sobrien * libelf.h (bfd_elf32__write_relocs): Don't declare. 344060484Sobrien (bfd_elf64__write_relocs): Don't declare. 344160484Sobrien 344260484SobrienTue Mar 14 05:54:33 1995 Ken Raeburn (raeburn@kr-pc.cygnus.com) 344360484Sobrien 344460484Sobrien * stab-syms.c (aout_stab_name): Moved aout_stab_names to be local 344560484Sobrien to this function. Recoded function to stop using table, to 344660484Sobrien improve performance (on i486-netbsd host). Left old version 344760484Sobrien intact under "#if 0" for further performance testing. 344860484Sobrien 344960484SobrienMon Mar 13 13:48:49 1995 Ian Lance Taylor <ian@cygnus.com> 345060484Sobrien 345160484Sobrien * elfcode.h (write_relocs): Make static. Use PTR argument as a 345260484Sobrien pointer to a boolean variable set to true if something fails. 345360484Sobrien Cast to PTR rather than void *. 345460484Sobrien (sym_is_global): Rewrite for clarity. 345560484Sobrien (map_program_segments): If the program header size is too small, 345660484Sobrien call _bfd_error_handler and return failure rather than aborting. 345760484Sobrien (NAME(bfd_elf,write_object_contents)): Pass boolean variable when 345860484Sobrien calling write_relocs. 345960484Sobrien (elf_symbol_from_bfd_symbol): Use BFD_ASSERT rather than abort. 346060484Sobrien (struct elf_info_failed): Define. 346160484Sobrien (NAME(bfd_elf,size_dynamic_sections)): Declare variables in inner 346260484Sobrien blocks. Pass elf_info_failed structure when calling 346360484Sobrien elf_export_symbol and elf_adjust_dynamic_symbol. 346460484Sobrien (elf_export_symbol): Treat data argument as elf_info_failed rather 346560484Sobrien than bfd_link_info. Set failed field on error. 346660484Sobrien (elf_adjust_dynamic_symbol): Likewise. 346760484Sobrien (struct elf_finfo_failed): Define. 346860484Sobrien (elf_bfd_final_link): Pass elf_finfo_failed structure when calling 346960484Sobrien elf_link_output_extsym. Use BFD_ASSERT rather than abort. 347060484Sobrien (elf_link_output_extsym): Treat data argument as elf_finfo_failed 347160484Sobrien rather than elf_final_link_info. Set failed field on error. 347260484Sobrien (elf_link_input_bfd): Use BFD_ASSERT rather than abort. 347360484Sobrien (elf_reloc_link_order): Likewise. 347460484Sobrien 347560484Sobrien * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Only write 347660484Sobrien out PLTRELSZ, PLTREL and JMPREL relocs if there is a .rela.plt 347760484Sobrien section. Solaris 2.4 apparently does not handle empty reloc 347860484Sobrien information correctly. 347960484Sobrien 348060484Sobrien * archive.c (bsd_write_armap): Cast getuid and getgid results to 348160484Sobrien long, and print with %ld. 348260484Sobrien 348360484SobrienFri Mar 10 16:41:05 1995 Ian Lance Taylor <ian@cygnus.com> 348460484Sobrien 348560484Sobrien * aoutx.h (translate_to_native_sym_flags): Always use the output 348660484Sobrien section if it is not NULL. 348760484Sobrien 348860484SobrienThu Mar 9 15:06:25 1995 Ian Lance Taylor <ian@cygnus.com> 348960484Sobrien 349060484Sobrien * coffswap.h (coff_swap_scnhdr_out): If the line number count or 349160484Sobrien the reloc count does not fit, print an error and return 0. 349260484Sobrien * coffcode.h (coff_write_object_contents): Check return value of 349360484Sobrien coff_swap_scnhdr_out. 349460484Sobrien * ecoff.c (_bfd_ecoff_write_object_contents): Check return value 349560484Sobrien of bfd_coff_swap_scnhdr_out. 349660484Sobrien 349760484Sobrien * bfd.c: Include <stdarg.h> or <varargs.h>, depending upon 349860484Sobrien ANSI_PROTOTYPES. 349960484Sobrien (bfd_error_handler_type): New global type. 350060484Sobrien (_bfd_error_program_name): New static variable. 350160484Sobrien (_bfd_default_error_handler): New static function. 350260484Sobrien (_bfd_error_handler): New BFD private global variable. 350360484Sobrien (bfd_set_error_handler): New globally visible function. 350460484Sobrien (bfd_set_error_program_name): New globally visible function. 350560484Sobrien * libbfd-in.h (_bfd_error_handler): Declare. 350660484Sobrien * bfd-in2.h, libbfd.h: Rebuild. 350760484Sobrien 350860484Sobrien * aoutx.h (NAME(aout,swap_ext_reloc_in)): Add symcount parameter, 350960484Sobrien and use it instead of bfd_get_symcount. Check r_index after 351060484Sobrien setting r_extern based on whether this is a base relative reloc. 351160484Sobrien (NAME(aout,swap_std_reloc_IN)): Add symcount parameter, and use it 351260484Sobrien instead of bfd_get_symcount. 351360484Sobrien (NAME(aout,slurp_reloc_table)): Pass bfd_get_symcount to reloc 351460484Sobrien swap routines. 351560484Sobrien * libaout.h (NAME(aout,swap_ext_reloc_in)): Add symcount parameter 351660484Sobrien to declaration. 351760484Sobrien (NAME(aout,swap_std_reloc_in)): Likewise. 351860484Sobrien * sunos.c (sunos_canonicalize_dynamic_reloc): Pass 351960484Sobrien info->dynsym_count to reloc swap routines. 352060484Sobrien * aout-ns32k.c (MY_swap_std_reloc_in): Add symcount parameter. 352160484Sobrien * hp300hpux.c (MY(swap_std_reloc_in)): Likewise. 352260484Sobrien (MY(slurp_reloc_table)): Pass bfd_get_symcount to reloc swap 352360484Sobrien routine. 352460484Sobrien * i386lynx.c (NAME(lynx,swap_ext_reloc_in)): Add symcount 352560484Sobrien parameter. 352660484Sobrien (NAME(lynx,swap_std_reloc_in)): Likewise. 352760484Sobrien (NAME(lynx,slurp_reloc_table)): Pass bfd_get_symcount to reloc 352860484Sobrien swap routines. 352960484Sobrien 353060484SobrienThu Mar 9 12:04:05 1995 Michael Meissner <meissner@tiktok.cygnus.com> 353160484Sobrien 353260484Sobrien * bfd.c (bfd_merge_private_bfd_data): New function vector to be 353360484Sobrien called by the linker to merge any private bfd data of the input 353460484Sobrien files and the output file. Used by the PowerPC ELF support to 353560484Sobrien check whether -mrelocatable is used for all modules. 353660484Sobrien (bfd_set_private_flags): New function vector to be called by the 353760484Sobrien assembler to set private flags. Used by the PowerPC ELF support 353860484Sobrien to set that a particular object file was assembled with the 353960484Sobrien -mrelocatable option. 354060484Sobrien 354160484Sobrien * targets.c (BFD_JUMP_TABLE_COPY): Add intiialization of the 354260484Sobrien bfd_merge_private_bfd_data and bfd_set_private_flags function 354360484Sobrien vectors. 354460484Sobrien 354560484Sobrien * bfd-in2.h, libbfd-in.h: Rebuild with bfd.c and targets.c 354660484Sobrien changes. 354760484Sobrien 354860484Sobrien * elf32-ppc.c (ppc_elf_set_private_flags): New function to set the 354960484Sobrien ELF e_flags field. 355060484Sobrien (ppc_elf_copy_private_bfd_data): Copy the e_flags field from the 355160484Sobrien input file to the output file. 355260484Sobrien (ppc_elf_merge_private_bfd_data): Check for a mismatch between the 355360484Sobrien e_flags field of all of the linker input files. 355460484Sobrien 355560484Sobrien * libelf.h (elf_obj_tdata): Add ppc_flags_init field so that the 355660484Sobrien PowerPC support can check if compataible e_flags are present. 355760484Sobrien 355860484Sobrien * aout-target.h: Add NOP for the bfd_merge_private_bfd_data 355960484Sobrien and bfd_set_private_flags function vectors. 356060484Sobrien * coffcode.h: Ditto. 356160484Sobrien * elf32-target.h: Ditto. 356260484Sobrien * elf64-target.h: Ditto. 356360484Sobrien * libbfd.h: Ditto. 356460484Sobrien * libecoff.h: Ditto. 356560484Sobrien * som.c: Ditto. 356660484Sobrien 356760484SobrienWed Mar 8 00:53:54 1995 Ian Lance Taylor <ian@cygnus.com> 356860484Sobrien 356960484Sobrien * cpu-mips.c (arch_info_struct): Add mips:8000 entry. 357060484Sobrien 357160484Sobrien * elfcode.h (swap_out_syms): Mark an undefined BSF_WEAK symbol as 357260484Sobrien STB_WEAK rather than STB_GLOBAL. 357360484Sobrien 357460484SobrienTue Mar 7 12:23:47 1995 Ian Lance Taylor <ian@cygnus.com> 357560484Sobrien 357660484Sobrien * coffcode.h (bfd_coff_backend_data): Add new field 357760484Sobrien _bfd_coff_adjust_symndx. 357860484Sobrien (bfd_coff_adjust_symndx): Define. 357960484Sobrien (coff_adjust_symndx): Define as NULL if not already defined. 358060484Sobrien (bfd_coff_std_swap_table): Initialize new field to 358160484Sobrien coff_adjust_symndx. 358260484Sobrien * cofflink.c (coff_link_input_bfd): Call coff_adjust_symndx if it 358360484Sobrien is defined. 358460484Sobrien * coff-a29k.c (coff_a29k_adjust_symndx): New static function. 358560484Sobrien (coff_adjust_symndx): Define before including coffcode.h. 358660484Sobrien * libcoff.h: Rebuild. 358760484Sobrien 358860484Sobrien * format.c (bfd_check_format_matches): Skip binary_vec when 358960484Sobrien searching through bfd_target_vector. 359060484Sobrien 359160484Sobrien * elfcode.h (elf_sort_hdrs): Check SHT_NOBITS before checking 359260484Sobrien sh_size. 359360484Sobrien 359460484SobrienMon Mar 6 23:31:36 1995 Doug Evans <dje@chestnut.cygnus.com> 359560484Sobrien 359660484Sobrien * elfcode.h (elf_sort_hdrs): Keep SHT_NOBITS sections after 359760484Sobrien !SHT_NOBITS ones. 359860484Sobrien 359960484SobrienMon Mar 6 09:53:08 1995 Jeff Law (law@snake.cs.utah.edu) 360060484Sobrien 360160484Sobrien * cpu-hppa.c (arch_info_struct): Support both PA1.0 and PA1.1 360260484Sobrien machine types. 360360484Sobrien (bfd_hppa_arch): Link in both PA1.0 and PA1.1 architecture info 360460484Sobrien structures. 360560484Sobrien * libhppa.h (enum pa_arch): New enumeration to describe the 360660484Sobrien different variants of the PA architecture. 360760484Sobrien * som.c (som_object_setup): Use new enumeration to set machine 360860484Sobrien type. 360960484Sobrien (som_finish_writing): If the machine type is PA1.1, then use the 361060484Sobrien PA1.1 machine identifier in the output file. 361160484Sobrien 361260484SobrienThu Mar 2 15:58:24 1995 Ian Lance Taylor <ian@cygnus.com> 361360484Sobrien 361460484Sobrien * aoutx.h (NAME(aout,swap_ext_reloc_in)): Treat the index of a 361560484Sobrien base relative reloc as an index into the symbol table, regardless 361660484Sobrien of the setting of r_extern. 361760484Sobrien (NAME(aout,swap_std_reloc_in)): Likewise. 361860484Sobrien 361960484Sobrien * aoutx.h (NAME(aout,set_section_contents)): Double check that the 362060484Sobrien caller is writing to a valid section. 362160484Sobrien 362260484SobrienThu Mar 2 14:37:57 1995 Bryan Ford <baford@cs.utah.edu> 362360484Sobrien 362460484Sobrien * binary.c: Add support for reading binary files. Loads the raw 362560484Sobrien contents of the file into a data section and wraps some symbols 362660484Sobrien around it. The symbols `_binary_<filename>_start' and 362760484Sobrien `_binary_<filename>_end' indicate the start and end of the data, 362860484Sobrien while `_binary_<filename>_size' is an absolute symbol whose value 362960484Sobrien is the size of the data. <filename> is the name of the binary 363060484Sobrien input file, with all non-alphanumeric characters converted to 363160484Sobrien underscores. 363260484Sobrien 363360484Sobrien * archures.c (bfd_arch_get_compatible): Assume users knows what 363460484Sobrien they're doing if one of the architectures is bfd_arch_unknown. 363560484Sobrien 363660484SobrienWed Mar 1 17:30:46 1995 Michael Meissner <meissner@cygnus.com> 363760484Sobrien 363860484Sobrien * elf32-ppc.c (elf_powerpc_howto_table): For relocation 363960484Sobrien R_PPC_GOT16, change complain_on_overflow to be 364060484Sobrien complain_overflow_signed. 364160484Sobrien 364260484SobrienWed Mar 1 11:52:55 1995 Jason Molenda <crash@phydeaux.cygnus.com> 364360484Sobrien 364460484Sobrien * configure.host: Recognize powerpc-*-aix*. 364560484Sobrien 364660484SobrienWed Mar 1 11:57:39 1995 Ian Lance Taylor <ian@cygnus.com> 364760484Sobrien 364860484Sobrien * coff-i960.c (COFF_PAGE_SIZE): Define. 364960484Sobrien 365060484Sobrien * configure.in: Rewrite output of TDEFAULTS to avoid relying on 365160484Sobrien semantics of single quotes in parameter substitution. 365260484Sobrien 365360484SobrienTue Feb 28 12:53:09 1995 Ian Lance Taylor <ian@cygnus.com> 365460484Sobrien 365560484Sobrien * elfcode.h (elf_sort_hdrs): Sort empty sections before non-empty 365660484Sobrien sections, if they have the same VMA. 365760484Sobrien 365860484Sobrien * config.bfd (i[345]86-*-linuxelf*): New target. Use i386-lelf. 365960484Sobrien (i[345]86-*-gnuelf*): New target. Use i386-gelf. 366060484Sobrien * config/i386-lelf.mt: New file. 366160484Sobrien * config/i386-gelf.mt: New file. 366260484Sobrien 366360484SobrienMon Feb 27 12:58:25 1995 Kung Hsu <kung@mexican.cygnus.com> 366460484Sobrien 366560484Sobrien * config.bfd: add a29k-*-vxworks configuration. 366660484Sobrien 366760484SobrienWed Feb 22 14:40:26 1995 Ian Lance Taylor <ian@cygnus.com> 366860484Sobrien 366960484Sobrien * libaout.h (NAME(aout,slurp_reloc_table)): Change declaration to 367060484Sobrien use reloc_howto_type rather than const struct reloc_howto_struct. 367160484Sobrien 367260484SobrienTue Feb 21 18:19:22 1995 Ian Lance Taylor <ian@cygnus.com> 367360484Sobrien 367460484Sobrien * bout.c (b_out_slurp_reloc_table): Don't return an error if asked 367560484Sobrien for relocations for the .bss section. 367660484Sobrien 367760484SobrienTue Feb 21 15:13:05 1995 Jeff Law (law@snake.cs.utah.edu) 367860484Sobrien 367960484Sobrien * som.c (som_bfd_ar_write_symbol_stuff): Handle objects with odd 368060484Sobrien lengths. 368160484Sobrien 368260484SobrienFri Feb 17 12:34:36 1995 Michael Meissner <meissner@cygnus.com> 368360484Sobrien 368460484Sobrien * elf32-ppc.c (ppc_elf_got16_reloc): Make GOT style relocs add 368560484Sobrien 32768, so the GOT pointer can point to 16384 pointers, instead of 368660484Sobrien 8192. 368760484Sobrien 368860484SobrienFri Feb 17 11:45:38 1995 Ian Lance Taylor <ian@cygnus.com> 368960484Sobrien 369060484Sobrien * hosts/sysv4.h: Include <unistd.h>, <stdlib.h>, and <time.h>. 369160484Sobrien Only define SEEK_SET and SEEK_CUR if they are not already defined. 369260484Sobrien Remove all external function declarations. 369360484Sobrien 369460484Sobrien * syms.c (bfd_decode_symclass): Return 'W' for a weak symbol. 369560484Sobrien 369660484Sobrien * coffgen.c (coff_real_object_p): Set start address and flags 369760484Sobrien before calling coff_mkobject_hook. Restore them on failure. 369860484Sobrien * ecoff.c (_bfd_ecoff_mkobject_hook): If not ECOFF_AOUT_ZMAGIC, 369960484Sobrien clear D_PAGED. 370060484Sobrien 370160484Sobrien * coffgen.c: Reindented. 370260484Sobrien 370360484SobrienThu Feb 16 14:37:23 1995 Doug Evans <dje@cygnus.com> 370460484Sobrien 370560484Sobrien * reloc.c (bfd_perform_relocation): Don't use bitpos in overflow 370660484Sobrien calculations. 370760484Sobrien (bfd_install_relocation): Likewise. 370860484Sobrien 370960484SobrienThu Feb 16 13:22:29 1995 Ian Lance Taylor <ian@cygnus.com> 371060484Sobrien 371160484Sobrien * hosts/std-host.h: Remove all function declarations which return 371260484Sobrien int or void, except the one for free. 371360484Sobrien 371460484SobrienWed Feb 15 14:54:18 1995 Michael Meissner <meissner@tiktok.cygnus.com> 371560484Sobrien 371660484Sobrien * elf32-ppc.c (elf_powerpc_howto_table): Use a destination mask of 371760484Sobrien 0xffffffff for R_PPC_REL32, not 0. 371860484Sobrien (powerpc_reloc_map): Add low 16 bit, high 16 bit, and high 16 bit 371960484Sobrien adjusted relocations. 372060484Sobrien 372160484SobrienTue Feb 14 17:47:17 1995 Ian Lance Taylor <ian@cygnus.com> 372260484Sobrien 372360484Sobrien * elf32-mips.c (struct mips_elf_find_line): Define. 372460484Sobrien (mips_elf_find_nearest_line): New static function. 372560484Sobrien (bfd_elf32_find_nearest_line): Define. 372660484Sobrien * libelf.h (struct elf_obj_tdata): Add find_line_info field. 372760484Sobrien 372860484Sobrien * ecoff.c (_bfd_ecoff_swap_tir_in): Move to ecofflink.c. 372960484Sobrien (_bfd_ecoff_swap_tir_out): Likewise. 373060484Sobrien (_bfd_ecoff_swap_rndx_in): Likewise. 373160484Sobrien (_bfd_ecoff_swap_rndx_out): Likewise. 373260484Sobrien (cmp_fdrtab_entry): Likewise. 373360484Sobrien (mk_fdrtab): Likewise. 373460484Sobrien (lookup): Likewise. 373560484Sobrien (_bfd_ecoff_find_nearest_line): Just call _bfd_ecoff_locate_line 373660484Sobrien to do most of the work. Allocate find_line_info if necessary. 373760484Sobrien * ecofflink.c: Include "aout/stab_gnu.h". 373860484Sobrien (_bfd_ecoff_swap_tir_in): Move in from ecoff.c. 373960484Sobrien (_bfd_ecoff_swap_tir_out): Likewise. 374060484Sobrien (_bfd_ecoff_swap_rndx_in): Likewise. 374160484Sobrien (_bfd_ecoff_swap_rndx_out): Likewise. 374260484Sobrien (cmp_fdrtab_entry): Likewise. Use PTR instead of void *. 374360484Sobrien (mk_fdrtab): Move in from ecoff.c. Add debug_info, debug_swap, 374460484Sobrien and line_info arguments, and use them instead of ecoff_data. 374560484Sobrien (fdrtab_lookup): Move in from lookup in ecoff.c. Remove abfd 374660484Sobrien argument, add line_info argument. Use it instead of ecoff_data. 374760484Sobrien (_bfd_ecoff_locate_line): New function, mostly from the old 374860484Sobrien _bfd_ecoff_find_nearest_line in ecoff.c. 374960484Sobrien * libecoff.h (ecoff_data_type): Remove find_buffer, fdrtab_len and 375060484Sobrien fdrtab fields, replacing them find_line_info field. 375160484Sobrien (_bfd_ecoff_swap_tir_in): Declare. 375260484Sobrien (_bfd_ecoff_swap_tir_out): Declare. 375360484Sobrien (_bfd_ecoff_swap_rndx_in): Declare. 375460484Sobrien (_bfd_ecoff_swap_rndx_out): Declare. 375560484Sobrien * libbfd-in.h (_bfd_ecoff_locate_line): Declare. 375660484Sobrien * libbfd.h: Rebuild. 375760484Sobrien * configure.in: Don't use ecoff.o for bfd_elf32_bigmips_vec or 375860484Sobrien bfd_elf32_littlemips_vec. 375960484Sobrien * Makefile.in: Rebuild dependencies. 376060484Sobrien 376160484SobrienTue Feb 14 14:04:22 1995 Michael Meissner <meissner@tiktok.cygnus.com> 376260484Sobrien 376360484Sobrien * libelf.h (elf_backend_data): Add fields elf_machine_alt1 and 376460484Sobrien elf_machine_alt2 which provide alternate versions of the machine 376560484Sobrien code. 376660484Sobrien 376760484Sobrien * elf32-ppc.c (ELF_MACHINE_ALT1, ELF_MACHINE_ALT2): Define to 376860484Sobrien recognize old versions of the PowerPC machine code. 376960484Sobrien 377060484Sobrien * elf32-target.h (elf32_bed): Initialize alternate machine code 377160484Sobrien fields defined by ELF_MACHINE_ALT1 and ELF_MACHINE_ALT2. 377260484Sobrien 377360484Sobrien * elf64-target.h (elf64_bed): Initialize alternate machine code 377460484Sobrien fields defined by ELF_MACHINE_ALT1 and ELF_MACHINE_ALT2. 377560484Sobrien 377660484Sobrien * elfcode.h (elf_object_p, elf_core_file_p): In addition to the 377760484Sobrien main machine code field, check the two alternate machine code 377860484Sobrien fields. 377960484Sobrien 378060484SobrienTue Feb 14 12:46:48 1995 Ian Lance Taylor <ian@cygnus.com> 378160484Sobrien 378260484Sobrien * aoutf1.h (MACHTYPE_OK): Don't define if already defined. Don't 378360484Sobrien accept M_SPARC if bfd_arch_sparc is not in the list of supported 378460484Sobrien architectures, and don't accept a 680x0 machine type if 378560484Sobrien bfd_arch_m68k is not in the list of supported architectures. 378660484Sobrien * aout0.c (MACHTYPE_OK): Define. 378760484Sobrien 378860484SobrienMon Feb 13 23:25:38 1995 Ian Lance Taylor <ian@cygnus.com> 378960484Sobrien 379060484Sobrien * aoutx.h (NAME(aout,swap_ext_reloc_in)): Don't return a pointer 379160484Sobrien to garbage if the symbol index is out of range. 379260484Sobrien (NAME(aout,swap_std_reloc_in)): Likewise. 379360484Sobrien 379460484SobrienThu Feb 9 18:36:52 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 379560484Sobrien 379660484Sobrien * Makefile.in (BFD32_BACKENDS): Add i386msdos.o. 379760484Sobrien 379860484SobrienThu Feb 9 12:02:35 1995 Ian Lance Taylor <ian@cygnus.com> 379960484Sobrien 380060484Sobrien * i386linux.c (NEEDS_SHRLIB): Define. 380160484Sobrien (linux_tally_symbols): Crash if a NEEDS_SHRLIB symbol is 380260484Sobrien undefined. From hjl@nynexst.com (H.J. Lu). 380360484Sobrien 380460484SobrienWed Feb 8 17:26:00 1995 Ian Lance Taylor <ian@cygnus.com> 380560484Sobrien 380660484Sobrien * linker.c (generic_link_check_archive_element): Allocate common 380760484Sobrien symbol information structure. Don't bother to check for common 380860484Sobrien symbol size overflow. 380960484Sobrien (_bfd_generic_link_add_one_symbol): Likewise. 381060484Sobrien * aoutx.h (aout_link_check_ar_symbols): Likewise. 381160484Sobrien * linker.c (generic_link_check_archive_element): Adjust references 381260484Sobrien to common symbol information for new structure. 381360484Sobrien (_bfd_generic_link_add_one_symbol): Likewise. 381460484Sobrien * aoutx.h (aout_link_check_ar_symbols): Likewise. 381560484Sobrien (aout_link_add_symbols): Likewise. 381660484Sobrien * ecoff.c (ecoff_link_add_externals): Likewise. 381760484Sobrien * elfcode.h (elf_link_add_object_symbols): Likewise. 381860484Sobrien (elf_link_output_extsym): Likewise. 381960484Sobrien * sunos.c (sunos_add_one_symbol): Likewise. 382060484Sobrien 382160484SobrienWed Feb 8 09:53:42 1995 Doug Evans <dje@canuck.cygnus.com> 382260484Sobrien 382360484Sobrien * elfcode.h (elf_sort_hdrs): Put SHT_NOBITS sections after !SHT_NOBITS. 382460484Sobrien 382560484SobrienTue Feb 7 16:27:33 1995 Jeff Law (law@snake.cs.utah.edu) 382660484Sobrien 382760484Sobrien * som.c (som_bfd_find_nearest_line): Just return false, don't 382860484Sobrien abort. 382960484Sobrien 383060484SobrienTue Feb 7 14:43:33 1995 Ken Raeburn (raeburn@kr-pc.cygnus.com) 383160484Sobrien 383260484Sobrien * ecoff.c: Reformatted some comments and brace constructs in 383360484Sobrien recent changes to GNU style. 383460484Sobrien (cmp_fdrtab_entry, mk_fdrtab, lookup): Use old-style function 383560484Sobrien definitions. 383660484Sobrien 383760484SobrienTue Feb 7 14:21:28 1995 Ian Lance Taylor <ian@cygnus.com> 383860484Sobrien 383960484Sobrien * ecoffswap.h (ecoff_swap_pdr_in): Zero out intern before setting 384060484Sobrien any of the fields. 384160484Sobrien 384260484SobrienMon Feb 6 20:01:24 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 384360484Sobrien 384460484Sobrien Sat Feb 4 14:20:24 1995 David Mosberger-Tang <davidm@piston.cs.arizona.edu> 384560484Sobrien 384660484Sobrien * ecoffswap.h (ecoff_swap_pdr_in, ecoff_swap_pdr_out): added 384760484Sobrien internalizing/externalizing new "prof" field. 384860484Sobrien 384960484Sobrien * libecoff.h (ecoff_tdata): added fdrtab. 385060484Sobrien 385160484Sobrien * ecoff.c (_bfd_ecoff_find_nearest_line): Fixed. 385260484Sobrien 385360484SobrienMon Feb 6 14:25:24 1995 Ian Lance Taylor <ian@cygnus.com> 385460484Sobrien 385560484Sobrien * libelf.h (struct elf_link_hash_table): Add saw_needed field. 385660484Sobrien * elfcode.h (elf_link_add_object_symbols): Set saw_needed if 385760484Sobrien DT_NEEDED seen in .dynamic section. 385860484Sobrien (elf_link_output_extsym): Warn if an undefined symbol is 385960484Sobrien only referenced from a dynamic object, and not making a shared 386060484Sobrien object, and saw_needed is false. 386160484Sobrien * elf.c (_bfd_elf_link_hash_table_init): Initialize saw_needed. 386260484Sobrien 386360484Sobrien * libelf.h (ELF_LINK_HASH_DEFINED_WEAK): Don't define. 386460484Sobrien * elfcode.h (elf_link_add_object_symbols): Don't clear or set 386560484Sobrien ELF_LINK_HASH_DEFINED_WEAK. 386660484Sobrien (elf_link_output_extsym): Don't check ELF_LINK_HASH_DEFINED_WEAK. 386760484Sobrien 386860484Sobrien Distinguish a weak defined symbol from a regular defined symbol. 386960484Sobrien * linker.c (enum link_action): Add DEFW. 387060484Sobrien (link_action): Add bfd_link_hash_defweak column. 387160484Sobrien (_bfd_generic_link_add_one_symbol): Add DEFW case. Handle 387260484Sobrien bfd_link_hash_defweak in a few other cases. 387360484Sobrien * Many files (bfd_link_hash_undefweak): Renamed from 387460484Sobrien bfd_link_hash_weak. 387560484Sobrien * aoutx.h (aout_link_write_symbols): Handle bfd_link_hash_defweak. 387660484Sobrien (aout_link_write_other_symbol): Likewise. 387760484Sobrien (aout_link_input_section_std): Likewise. 387860484Sobrien (aout_link_input_section_ext): Likewise. 387960484Sobrien * bout.c (get_value): Likewise. 388060484Sobrien * coff-a29k.c (coff_a29k_relocate_section): Likewise. 388160484Sobrien * coff-alpha.c (alpha_convert_external_reloc): Likewise. 388260484Sobrien (alpha_relocate_section): Likewise. 388360484Sobrien * coff-mips.c (mips_relocate_section): Likewise. 388460484Sobrien (mips_relax_section): Likewise. 388560484Sobrien (bfd_mips_ecoff_create_embedded_relocs): Likewise. 388660484Sobrien * cofflink.c (coff_write_global_sym): Likewise. 388760484Sobrien (_bfd_coff_generic_relocate_section): Likewise. 388860484Sobrien * ecoff.c (ecoff_link_add_externals): Likewise. 388960484Sobrien (ecoff_link_write_external): LIkewise. 389060484Sobrien * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 389160484Sobrien (elf32_hppa_size_stubs): Likewise. 389260484Sobrien * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise. 389360484Sobrien (elf_i386_relocate_section): Likewise. 389460484Sobrien (elf_i386_finish_dynamic_symbol): Likewise. 389560484Sobrien * elf32-mips.c (mips_elf_output_extsym): Likewise. 389660484Sobrien (mips_elf_relocate_section): Likewise. 389760484Sobrien * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise. 389860484Sobrien (elf32_sparc_relocate_section): Likewise. 389960484Sobrien * elfcode.h (elf_link_add_object_symbols): Likewise. 390060484Sobrien (elf_adjust_dynamic_symbol): Likewise. 390160484Sobrien (elf_bfd_final_link): Likewise. 390260484Sobrien (elf_link_output_extsym): Likewise. 390360484Sobrien * i386linux.c (linux_add_one_symbol): Likewise. 390460484Sobrien (linux_tally_symbols): Likewise. 390560484Sobrien (linux_finish_dynamic_link): Likewise. 390660484Sobrien * linker.c (_bfd_generic_link_output_symbols): Likewise. 390760484Sobrien (set_symbol_from_hash): Likewise. 390860484Sobrien * reloc16.c (bfd_coff_reloc16_get_value): Likewise. 390960484Sobrien (bfd_perform_slip): Likewise. 391060484Sobrien * sunos.c (sunos_add_one_symbol): Likewise. 391160484Sobrien (sunos_scan_std_relocs): Likewise. 391260484Sobrien (sunos_scan_ext_relocs): Likewise. 391360484Sobrien (sunos_scan_dynamic_symbol): Likewise. 391460484Sobrien (sunos_write_dynamic_symbol): Likewise. 391560484Sobrien 391660484SobrienMon Feb 6 03:20:17 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 391760484Sobrien 391860484Sobrien Changes from Bryan Ford, baford@schirf.cs.utah.edu: 391960484Sobrien * config.bfd (i[345]86-*-msdos*): New target. 392060484Sobrien * configure.in (i386msdos_vec): Handle it. 392160484Sobrien * i386msdos.c: New file. 392260484Sobrien * config/i386-msdos.mt: New file. 392360484Sobrien * bfd.c (enum bfd_error): Added new value bfd_error_file_too_big. 392460484Sobrien (bfd_errmsgs): Added string to table. 392560484Sobrien * libaout.h (reloc_type-lookup): Declare it. 392660484Sobrien * targets.c (enum bfd_flavour): Added bfd_target_msdos_flavour. 392760484Sobrien (i386msdos_vec): Declare. 392860484Sobrien (bfd_target_vector): Add it to the list. 392960484Sobrien * bfd-in2.h: Regenerated. 393060484Sobrien 393160484SobrienWed Feb 1 01:32:14 1995 Jeff Law (law@snake.cs.utah.edu) 393260484Sobrien 393360484Sobrien * som.c (som_set_reloc_info, case R_DATA_ONE_SYMBOL): If there's 393460484Sobrien nothing in R_DATA_OVERRIDE, then try to find the addend in the 393560484Sobrien section's contents. 393660484Sobrien (som_write_fixups): Ignore the addend in a R_DATA_ONE_SYMBOL fixup. 393760484Sobrien 393860484Sobrien * som.c (som_object_setup): More heruistics to detect the 393960484Sobrien braindamaged HP OSF1 linker. 394060484Sobrien (setup_sections): Don't forget to free subspace_sections if we get 394160484Sobrien an error. 394260484Sobrien (som_slurp_string_table): Allocate strings on this bfd's obstack 394360484Sobrien rather than directly out of the heap. 394460484Sobrien (som_slurp_symbol_table): Likewise for the saved copy of the 394560484Sobrien canonical symbols. 394660484Sobrien (som_slurp_reloc_table): Likewise for the saved copy of the 394760484Sobrien canonical relocations. Free the native relocations when we're 394860484Sobrien done with them. 394960484Sobrien 395060484SobrienTue Jan 31 21:53:28 1995 Doug Evans <dje@canuck.cygnus.com> 395160484Sobrien 395260484Sobrien * libelf.h (struct elf_obj_tdata): New member program_header_size. 395360484Sobrien * elfcode.h (get_program_header_size): New parameters sorted_hdrs, 395460484Sobrien count, and maxpagesize. All callers updated. 395560484Sobrien If sorted_hdrs is non-NULL, use it to compute the number of segments. 395660484Sobrien Save result in case called again. 395760484Sobrien (assign_file_positions_except_relocs): Sort headers before calling 395860484Sobrien get_program_header_size. 395960484Sobrien 396060484SobrienTue Jan 31 15:27:53 1995 Ian Lance Taylor <ian@cygnus.com> 396160484Sobrien 396260484Sobrien * elfcode.h (map_program_segments): Add sorted_hdrs parameter. 396360484Sobrien Search through it rather than through unsorted section headers. 396460484Sobrien (assign_file_positions_except_relocs): Pass sorted_hdrs to 396560484Sobrien map_program_segments. 396660484Sobrien 396760484SobrienMon Jan 30 22:04:53 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 396860484Sobrien 396960484Sobrien * ecoff.c (_bfd_ecoff_find_nearest_line): Fix problems in range 397060484Sobrien checking. Expect argument OFFSET to be section-relative. From 397160484Sobrien David Mosberger-Tang, davidm@piston.cs.arizona.edu. 397260484Sobrien 397360484SobrienMon Jan 30 11:22:11 1995 Ian Lance Taylor <ian@cygnus.com> 397460484Sobrien 397560484Sobrien * elfcode.h (NAME(bfd_elf,record_link_assignment)): Don't do 397660484Sobrien anything if we are not linking an ELF file. 397760484Sobrien (NAME(bfd_elf,size_dynamic_sections)): Likewise. 397860484Sobrien 397960484SobrienSat Jan 28 12:48:57 1995 Jeff Law (law@snake.cs.utah.edu) 398060484Sobrien 398160484Sobrien * som.c (compare_subspaces): New function to sort subspaces by 398260484Sobrien their location in the object file. 398360484Sobrien (setup_sections): When computing the index for each subspace, 398460484Sobrien handle case where setup_sections reads the subspaces in a 398560484Sobrien different order that they appear in the object file. 398660484Sobrien (som_is_space): Also examine the output section for the containing 398760484Sobrien section. 398860484Sobrien (som_is_subspace, som_is_container): Likewise. 398960484Sobrien (som_begin_writing): Don't prepare or write fixups here. When 399060484Sobrien writing the symbol strings, use the unsorted symbol table. 399160484Sobrien (som_write_object_contents): Don't write the symbol table here. 399260484Sobrien (som_finish_writing): Prepare and write the fixups here. Likewise 399360484Sobrien for the symbol table. 399460484Sobrien (som_bfd_derive_misc_symbol_info): Undefined symbols always have 399560484Sobrien type SS_UNSAT regardless of BSF_EXPORT. 399660484Sobrien (som_set_reloc_info): Unpack and attach argument location 399760484Sobrien information for R_PCREL_CALL and R_ABS_CALL relocations. 399860484Sobrien 399960484Sobrien * som.c (som_object_setup): New heuristic to determine if the 400060484Sobrien entry and flags fields are switched in the exec header. 400160484Sobrien 400260484SobrienSat Jan 28 00:16:01 1995 Ian Lance Taylor <ian@cygnus.com> 400360484Sobrien 400460484Sobrien * elfcode.h (elf_link_add_object_symbols): Use *sym_hash instead 400560484Sobrien of h if we might not be doing an ELF link. 400660484Sobrien 400760484SobrienFri Jan 27 16:13:42 1995 Ian Lance Taylor <ian@cygnus.com> 400860484Sobrien 400960484Sobrien * elf32-mips.c (mips_elf_final_link): If the size of an input 401060484Sobrien .reginfo section is zero, force it to the correct size, since the 401160484Sobrien linker emulation code may have clobbered it. 401260484Sobrien 401360484Sobrien * elfcode.h (elf_sort_hdrs): Correct SHF_ALLOC test. 401460484Sobrien (assign_file_positions_except_relocs): Free sorted_hdrs. 401560484Sobrien 401660484SobrienThu Jan 26 09:00:12 1995 Steve Chamberlain <sac@splat> 401760484Sobrien 401860484Sobrien * srec.c (srec_set_section_contents): Fix off by 401960484Sobrien one end address calculation. 402060484Sobrien 402160484Sobrien * config.bfd: (m68*-est-coff): New configuration. 402260484Sobrien 402360484SobrienThu Jan 26 11:39:21 1995 Ian Lance Taylor <ian@cygnus.com> 402460484Sobrien 402560484Sobrien * elfcode.h (elf_link_add_object_symbols): Only examine weakdef if 402660484Sobrien we are using an ELF hash table. 402760484Sobrien 402860484Sobrien * aoutx.h (NAME(aout,some_aout_object_p)): Always set EXEC_P if 402960484Sobrien the start address is in the .text section, even if STAT_FOR_EXEC 403060484Sobrien is set. Just use STAT_FOR_EXEC as an additional test. 403160484Sobrien 403260484SobrienThu Jan 26 11:12:54 1995 Michael Meissner <meissner@cygnus.com> 403360484Sobrien 403460484Sobrien * elfcode.h (prep_headers): Use EM_PPC instead of 403560484Sobrien EM_CYGNUS_POWERPC. 403660484Sobrien 403760484Sobrien * elf32-ppc.c (reloc_type): Add all System V.4 and eABI 403860484Sobrien relocations currently defined. 403960484Sobrien (powerpc_reloc_map): Adjust to new relocation names. 404060484Sobrien (elf_powerpc_howto_table): Add most of the new relocations. 404160484Sobrien (ELF_MACHINE_CODE): Use EM_PPC instead of EM_CYGNUS_POWERPC. 404260484Sobrien 404360484Sobrien * config.bfd: Add support for powerpc-*-eabi. 404460484Sobrien 404560484Sobrien * config/ppc-elf.mt: Add rs6000 architecture support to the 404660484Sobrien PowerPC. Also add XCOFF support. 404760484Sobrien 404860484SobrienWed Jan 25 23:26:13 1995 Ian Lance Taylor <ian@cygnus.com> 404960484Sobrien 405060484Sobrien * coff-sh.c (CALC_ADDEND): Don't define. 405160484Sobrien (coff_sh_relocate_section): Remove. 405260484Sobrien (coff_relocate_section): Use _bfd_coff_generic_relocate_section. 405360484Sobrien 405460484SobrienTue Jan 24 14:22:47 1995 Ian Lance Taylor <ian@sanguine.cygnus.com> 405560484Sobrien 405660484Sobrien * elf32-mips.c (mips_elf_output_extsym): Set the value of the 405760484Sobrien ECOFF symbol from the hash table entry. 405860484Sobrien 405960484SobrienMon Jan 23 14:53:35 1995 Steve Chamberlain <sac@splat> 406060484Sobrien 406160484Sobrien * coff-sh.c (coff_sh_relocate_section): Don't subtract 406260484Sobrien vma twice. 406360484Sobrien 406460484SobrienMon Jan 23 13:33:18 1995 Ian Lance Taylor <ian@sanguine.cygnus.com> 406560484Sobrien 406660484Sobrien * coff-sh.c (sh_reloc): Don't ignore the previous contents of an 406760484Sobrien R_SH_IMM32 reloc. 406860484Sobrien 406960484Sobrien * config.bfd (i[345]86-*-gnu*): Set bfd_name to i386-gnu. 407060484Sobrien * config/i386-gnu.mt: New file. Include ELF support. 407160484Sobrien 407260484Sobrien * opncls.c (bfd_openstreamr): Call bfd_cache_init. 407360484Sobrien 407460484SobrienFri Jan 20 11:44:45 1995 Ian Lance Taylor <ian@sanguine.cygnus.com> 407560484Sobrien 407660484Sobrien * sunos.c (sunos_add_one_symbol): Only set the sunos specific 407760484Sobrien fields if we are doing a sunos link. 407860484Sobrien 407960484SobrienWed Jan 18 12:28:17 1995 Ian Lance Taylor <ian@sanguine.cygnus.com> 408060484Sobrien 408160484Sobrien * cpu-h8300.c (h8300_info_struct): Change name from "H8/300" to 408260484Sobrien "h8300" for consistency with other cpu-* files. 408360484Sobrien (h8300h_info_struct): Change name from "H8/300H" to "h8300h". 408460484Sobrien * coff-h8300.c (special): Remove unused variable diff. 408560484Sobrien 408660484SobrienTue Jan 17 10:52:32 1995 Ian Lance Taylor <ian@sanguine.cygnus.com> 408760484Sobrien 408860484Sobrien * bfd-in.h (bfd_byte, reloc_howto_type): Define here, not... 408960484Sobrien * reloc.c (bfd_byte, reloc_howto_type): here. 409060484Sobrien * Changed all occurrences of ``const struct reloc_howto_struct'' 409160484Sobrien to be ``reloc_howto_type'' instead. 409260484Sobrien * bfd-in2.h, libbfd.h, libcoff.h: Rebuilt. 409360484Sobrien 409460484Sobrien * opncls.c (bfd_openstreamr): New function. 409560484Sobrien * bfd-in2.h: Rebuilt. 409660484Sobrien 409760484Sobrien * elf32-mips.c (enum reloc_type): Define new relocs used on Irix. 409860484Sobrien (elf_mips_howto_table): Add entries for new relocs. 409960484Sobrien (mips_elf_section_from_shdr): Handle SHT_MIPS_MSYM, 410060484Sobrien SHT_MIPS_DWARF, and SHT_MIPS_EVENTS. 410160484Sobrien (mips_elf_fake_sections): Handle sections named .msym, .debug_* 410260484Sobrien and .MIPS.events.*. 410360484Sobrien 410460484Sobrien * srec.c (srec_init): Remove unused local variable i. 410560484Sobrien 410660484SobrienSat Jan 14 19:09:48 1995 Steve Chamberlain <sac@jonny> 410760484Sobrien 410860484Sobrien * archures.c, Makefile.in, targets.c, bfd-in2.h, coffcode.h, 410960484Sobrien config.bfd, configure.in, config/w65.mt: Initial support for the W65. 411060484Sobrien 411160484SobrienSun Jan 15 13:57:45 1995 Steve Chamberlain <sac@splat> 411260484Sobrien 411360484Sobrien * opncls.c (bfd_fdopenr): Configure for WIN32. 411460484Sobrien 411560484SobrienThu Jan 12 16:30:47 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 411660484Sobrien 411760484Sobrien * Makefile.in (diststuff): Include `headers'. 411860484Sobrien 411960484Sobrien * sunos.c (m68k_plt_first_entry, sparc_plt_first_entry): Now 412060484Sobrien const. 412160484Sobrien * tekhex.c (digs): Ditto. 412260484Sobrien * elf32-i386.c (elf_i386_plt0_entry, elf_i386_plt_entry): Ditto. 412360484Sobrien 412460484Sobrien * srec.c, tekhex.c: Include libiberty.h. Delete static array 412560484Sobrien hex_value and replace references to it with references to 412660484Sobrien hex_init, hex_p, and hex_value. 412760484Sobrien * Makefile.in: Updated dependencies. 412860484Sobrien 412960484Sobrien * archures.c (archures_init_table): Now const. 413060484Sobrien (bfd_arch_init): Adjusted type of local var `ptable'. 413160484Sobrien 413260484SobrienThu Jan 12 09:33:24 1995 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 413360484Sobrien 413460484Sobrien * hosts/symmetry.h: Redefine `shared' to enable compilation 413560484Sobrien with the native Dynix cc compiler. 413660484Sobrien * i386dynix.c: Include aoutx.h instead of using routines 413760484Sobrien from aout32.c. 413860484Sobrien 413960484SobrienWed Jan 11 21:31:41 1995 Ken Raeburn <raeburn@cujo.cygnus.com> 414060484Sobrien 414160484Sobrien * reloc.c (reloc_howto_type): Make typedef include `const'. 414260484Sobrien * aout-ns32k.c, aoutx.h, bout.c, cf-m68klynx.c, coff-i386.c, 414360484Sobrien coff-i960.c, coff-m68k.c, cofflink.c, cpu-ns32k.c, ecoff.c, 414460484Sobrien elf32-hppa.c, elf32-i386.c, elf32-mips.c, elf32-sparc.c, 414560484Sobrien elfcode.h, libbfd-in.h, linker.c, mipsbsd.c, nlm32-ppc.c, oasys.c, 414660484Sobrien reloc.c, som.c: Don't use `const' in combination with 414760484Sobrien `reloc_howto_type'. 414860484Sobrien * bfd-in2.h, libbfd.h: Regenerated. 414960484Sobrien 415060484Sobrien * ecoff.c (ecoff_type_to_string): Local variable `buffer1' doesn't 415160484Sobrien need to be static. 415260484Sobrien 415360484SobrienWed Jan 11 14:36:41 1995 Ian Lance Taylor <ian@sanguine.cygnus.com> 415460484Sobrien 415560484Sobrien * sunos.c (sunos_add_one_symbol): Don't core dump if a multiple 415660484Sobrien definition of an absolute symbol is encountered. 415760484Sobrien 415860484Sobrien * linker.c (_bfd_generic_link_add_one_symbol): Ignore 415960484Sobrien redefinitions of an absolute symbol to the same value. 416060484Sobrien 416160484SobrienMon Jan 9 15:51:32 1995 Ian Lance Taylor <ian@sanguine.cygnus.com> 416260484Sobrien 416360484Sobrien * elfcode.h (elf_link_add_object_symbols): It's reasonable for no 416460484Sobrien flags to be set, so don't insist otherwise. 416560484Sobrien 416660484SobrienFri Jan 6 16:39:40 1995 Ian Lance Taylor <ian@sanguine.cygnus.com> 416760484Sobrien 416860484Sobrien * elfcode.h (elf_slurp_symbol_table): Don't set BSF_GLOBAL for an 416960484Sobrien undefined or common symbol. 417060484Sobrien (elf_link_add_object_symbols): Likewise. 417160484Sobrien 417260484SobrienWed Jan 4 14:14:05 1995 Jeff Law (law@snake.cs.utah.edu) 417360484Sobrien 417460484Sobrien * som.c (bfd_section_from_som_symbol): Only return sections which 417560484Sobrien correspond to subspaces. 417660484Sobrien 417760484Sobrien * som.c (som_begin_writing): Don't forget to bump the 417860484Sobrien total_subspaces when writing the unloadable subspaces. 417960484Sobrien 418060484SobrienWed Dec 28 20:54:47 1994 Jeff Law (law@snake.cs.utah.edu) 418160484Sobrien 418260484Sobrien * som.c (som_write_fixups): Use SEC_HAS_CONTENTS to identify 418360484Sobrien bss-like sections. 418460484Sobrien (som_get_section_contents): Likewise. 418560484Sobrien (som_set_section_contents): Likewise. 418660484Sobrien 418760484SobrienTue Dec 27 14:03:47 1994 Jeff Law (law@snake.cs.utah.edu) 418860484Sobrien 418960484Sobrien * som.c (setup_sections): Turn off SEC_HAS_CONTENTS for bss-like 419060484Sobrien sections. 419160484Sobrien 419260484SobrienTue Dec 20 15:30:12 1994 Ken Raeburn <raeburn@cujo.cygnus.com> 419360484Sobrien 419460484Sobrien * coffgen.c (bfd_debug_section): Deleted. 419560484Sobrien (coff_section_from_bfd_index): Return absolute section for debug 419660484Sobrien symbol. 419760484Sobrien (coff_write_symbol): Set BSF_DEBUGGING for C_FILE symbols. If 419860484Sobrien BSF_DEBUGGING is set, set section to N_DEBUG. 419960484Sobrien (coff_bfd_make_debug_symbol): Use absolute section. 420060484Sobrien 420160484Sobrien * elfcode.h (assign_file_positions_except_relocs): In assertion, 420260484Sobrien force all values to the same type. 420360484Sobrien 420460484SobrienTue Dec 20 11:11:58 1994 Steve Chamberlain (sac@jonny.cygnus.com) 420560484Sobrien 420660484Sobrien * coff-h8300.c (howto_table): All relocs get a special function. 420760484Sobrien (special): Never do anything when linking -r. 420860484Sobrien 420960484SobrienTue Dec 20 13:58:01 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 421060484Sobrien 421160484Sobrien * i386linux.c (linux_add_one_symbol): Don't do anything Linux 421260484Sobrien specific if this is not a Linux hash table. From Eric Youngdale 421360484Sobrien <eric@aib.com>. 421460484Sobrien 421560484Sobrien Patches from kkojima@mix.or.jp (Kazumoto Kojima): 421660484Sobrien * mipsbsd.c (mips_howto_table_ext): Change sizes of memory relocs 421760484Sobrien apply to from two bytes to four bytes. 421860484Sobrien * MY(reloc_howto_type_lookup): Handle BFD_RELOC_CTOR. 421960484Sobrien 422060484Sobrien * elf32-i386.c (elf_i386_relocate_section): Correct and expand the 422160484Sobrien list of cases for which relocation need not be computed. 422260484Sobrien * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 422360484Sobrien 422460484SobrienMon Dec 19 23:09:16 1994 Jeff Law (law@snake.cs.utah.edu) 422560484Sobrien 422660484Sobrien * elf32-hppa.c (elf32_hppa_read_symext_info): Delete do_locals and 422760484Sobrien do_globals arguments, always read symbol extension information for 422860484Sobrien globals and locals. All callers changed. 422960484Sobrien (elf32_hppa_size_stubs): Rework to only read symbol extension 423060484Sobrien information once for each input bfd. 10% improvement in linker 423160484Sobrien performance. 423260484Sobrien 423360484SobrienFri Dec 16 12:28:46 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 423460484Sobrien 423560484Sobrien * elfcode.h (elf_section_from_bfd_section): Check 423660484Sobrien bfd_is_abs_section, etc., only after checking for the section in 423760484Sobrien the BFD and after calling the backend routine. 423860484Sobrien 423960484SobrienWed Dec 14 20:21:58 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 424060484Sobrien 424160484Sobrien * elfcode.h (elf_map_symbols): Only use section symbols whose 424260484Sobrien value is the start of the section, checking output_offset when 424360484Sobrien using output_section. When creating a new symbol, set the value 424460484Sobrien to 0, since BFD symbol values are section relative. 424560484Sobrien 424660484SobrienTue Dec 13 13:31:06 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 424760484Sobrien 424860484Sobrien * cpu-z8k.c (arch_info_struct): Make z8002 the default 424960484Sobrien architecture. 425060484Sobrien 425160484SobrienFri Dec 9 12:43:05 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 425260484Sobrien 425360484Sobrien * elfcode.h (elf_bfd_link_add_symbols): If the first object in the 425460484Sobrien archive is not an ELF object, pass the archive to the add_symbols 425560484Sobrien entry point appropriate for the first object. From Eric Youngdale 425660484Sobrien <eric@aib.com>. 425760484Sobrien * aoutx.h (NAME(aout,link_add_symbols)): Similar change if the 425860484Sobrien first object is not an a.out object. 425960484Sobrien 426060484Sobrien * elf32-i386.c (elf_i386_relocate_section): Don't compute 426160484Sobrien relocation in cases where we won't use it. 426260484Sobrien * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 426360484Sobrien 426460484SobrienThu Dec 8 14:19:41 1994 Ken Raeburn <raeburn@cujo.cygnus.com> 426560484Sobrien 426660484Sobrien * pc532-mach.c (NAME): Define to use ns32kaout prefix. 426760484Sobrien * ns32knetbsd.c (NAME): Ditto. 426860484Sobrien (ns32kaout_32_get_section_contents): Define to standard aout-32 426960484Sobrien version. 427060484Sobrien 427160484SobrienFri Dec 2 13:56:49 1994 Ian Lance Taylor <ian@rtl.cygnus.com> 427260484Sobrien 427360484Sobrien * coff-mips.c (mips_read_relocs): New static function, broken out 427460484Sobrien of mips_relax_section. 427560484Sobrien (mips_relax_section): Call mips_read_relocs. 427660484Sobrien (bfd_mips_ecoff_create_embedded_relocs): New function. 427760484Sobrien * bfd-in.h (bfd_mnips_ecoff_create_embedded_relocs): Declare. 427860484Sobrien * bfd-in2.h: Rebuild. 427960484Sobrien 428060484SobrienWed Nov 30 14:12:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 428160484Sobrien 428260484Sobrien * coff-sh.c: Use _bfd_dummy_target instead of no_archive. 428360484Sobrien 428460484SobrienTue Nov 29 14:00:19 1994 J.T. Conklin <jtc@.rtl.cygnus.com> 428560484Sobrien 428660484Sobrien * config.bfd (i[345]86-*-freebsd*): Use i386-bsd as bfd_name. 428760484Sobrien * configure.host (i[345]86-*-freebsd*): Use i386bsd as my_host. 428860484Sobrien 428960484SobrienMon Nov 28 15:36:04 1994 J.T. Conklin (jtc@phishhead.cygnus.com) 429060484Sobrien 429160484Sobrien * config/m68k-nbsd.mt (DEFAULT_VECTOR): set to m68knetbsd_vec. 429260484Sobrien * Makefile.in: Rebuilt dependancies. 429360484Sobrien (CFILES): Added m68knetbsd.c. 429460484Sobrien (HFILES): Added netbsd.h. 429560484Sobrien 429660484SobrienWed Nov 23 19:21:41 1994 Steve Chamberlain (sac@jonny.cygnus.com) 429760484Sobrien 429860484Sobrien * coff-sh.c (shlcoff_vec): New target vector. 429960484Sobrien (no_archive): New function. 430060484Sobrien * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): Handle 430160484Sobrien little endian SH. 430260484Sobrien * configure.in: Handle shl. 430360484Sobrien * targets.c (bfd_target_vector): Add shlcoff_vec. 430460484Sobrien * config/sh-coff.mt (SELECT_VECS): Handle shl_coff_vec. 430560484Sobrien 430660484SobrienWed Nov 23 10:50:13 1994 Jeff Law (law@snake.cs.utah.edu) 430760484Sobrien 430860484Sobrien * elfcode.h (write_relocs): Do not subtract the section's vma from 430960484Sobrien the reloc's offset when writing .o's. Instead add the section's 431060484Sobrien vma to the reloc's offset when writing an executable or shared 431160484Sobrien library. 431260484Sobrien 431360484SobrienTue Nov 22 23:34:37 1994 Jeff Law (law@snake.cs.utah.edu) 431460484Sobrien 431560484Sobrien * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Do not add 431660484Sobrien input_section->vma to the relocation's offset. 431760484Sobrien 431860484SobrienMon Nov 21 12:37:25 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 431960484Sobrien 432060484Sobrien * srec.c (srec_get_reloc_upper_bound): Define. 432160484Sobrien (srec_canonicalize_reloc): Define. 432260484Sobrien (srec_bfd_reloc_type_lookup): Define. 432360484Sobrien (srec_vec, symbolsrec_vec): Use BFD_JUMP_TABLE_RELOCS (srec). 432460484Sobrien 432560484SobrienSat Nov 19 03:10:51 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 432660484Sobrien 432760484Sobrien * configure.host (i[345]86-*-solaris*): Use solaris2 to 432860484Sobrien enable extraction of procfs info from core file for GDB. 432960484Sobrien 433060484SobrienThu Nov 17 17:37:39 1994 Ken Raeburn <raeburn@cujo.cygnus.com> 433160484Sobrien 433260484Sobrien * reloc.c (bfd_reloc_code_type): Add new value BFD_RELOC_12_PCREL. 433360484Sobrien * bfd-in2.h, libbfd.h: Rebuilt. 433460484Sobrien 433560484SobrienThu Nov 17 13:12:08 1994 Jeff Law (law@snake.cs.utah.edu) 433660484Sobrien 433760484Sobrien * bfd/elf32-hppa.c (elf32_hppa_bfd_final_link_relocated): Use the 433860484Sobrien vma from the output_section containing $global$ when computing 433960484Sobrien global_vlaue. 434060484Sobrien 434160484SobrienThu Nov 17 14:29:13 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 434260484Sobrien 434360484Sobrien * archive.c (_bfd_write_archive_contents): Round up the archive 434460484Sobrien header size of the extended name table to an even number. 434560484Sobrien 434660484SobrienWed Nov 16 16:08:06 1994 Ken Raeburn <raeburn@cujo.cygnus.com> 434760484Sobrien 434860484Sobrien * coff-sh.c: Deleted some code that was commented out or inside 434960484Sobrien "#if 0". 435060484Sobrien (COFF_LONG_FILENAMES): Define. 435160484Sobrien 435260484Sobrien * cpu-sh.c (arch_info_struct): Convert name to lowercase, for 435360484Sobrien consistency with other architectures. 435460484Sobrien 435560484SobrienSat Nov 12 23:50:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 435660484Sobrien 435760484Sobrien * elfcode.h (elf_export_symbol): Also export symbols which are 435860484Sobrien referenced by a regular file. 435960484Sobrien 436060484SobrienFri Nov 11 14:29:31 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 436160484Sobrien 436260484Sobrien * elfcode.h (NAME(bfd_elf,size_dynamic_sections)): Add 436360484Sobrien export_dynamic argument, and handle it. 436460484Sobrien (elf_export_symbol): New function. 436560484Sobrien * bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration. 436660484Sobrien (bfd_elf64_size_dynamic_sections): Update declaration. 436760484Sobrien * bfd-in2.h: Rebuild. 436860484Sobrien 436960484SobrienFri Nov 11 10:35:33 1994 Jeff Law (law@snake.cs.utah.edu) 437060484Sobrien 437160484Sobrien * hpux-core.c (hpux_core_struct): Delete handles for the 437260484Sobrien data, reg and stack sections. They're never used. Delete 437360484Sobrien accessor macros. 437460484Sobrien (make_bfd_asection): Use bfd_make_section_anyway since debugging 437560484Sobrien cores from dynamic executables may have several sections with the 437660484Sobrien same logical name. 437760484Sobrien (hpux_core_core_file_p): Don't save handles to data, reg and 437860484Sobrien stack sections. Handle CORE_TEXT, CORE_MMF and CORE_SHM. 437960484Sobrien 438060484SobrienTue Nov 8 13:03:30 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 438160484Sobrien 438260484Sobrien * bout.c (callj_callback): Add new argument shrinking. Change all 438360484Sobrien callers. Handle relocs against section symbols correctly. If not 438460484Sobrien shrinking, don't subtract out dstidx; the subtraction is already 438560484Sobrien in the object file. 438660484Sobrien 438760484SobrienSun Nov 6 12:52:00 1994 Jeff Law (law@snake.cs.utah.edu) 438860484Sobrien 438960484Sobrien * som.h: Conditionally include <shl.h> and <dl.h>. 439060484Sobrien 439160484SobrienThu Nov 3 18:19:13 1994 Ken Raeburn <raeburn@cujo.cygnus.com> 439260484Sobrien 439360484Sobrien * Makefile.in (ALL_MACHINES): Include m68knetbsd.o. 439460484Sobrien 439560484Sobrien * config/i386linux.mh (EXTRALIBS): Include -lm. 439660484Sobrien 439760484Sobrien Patches from DJ Delorie: 439860484Sobrien * coff-go32.c: Replacement file, uses coff-i386.c with minor 439960484Sobrien changes. 440060484Sobrien * coff-i386.c (TARGET_UNDERSCORE): allow other files to override 440160484Sobrien underscore also 440260484Sobrien * makefile.dos: del ctor.o, add cofflink.o and elf32.o 440360484Sobrien 440460484Sobrien * aoutx.h (adjust_o_magic): If user set data section vma, use it 440560484Sobrien to determine the default bss vma. Patch from Takada Hiroaki, 440660484Sobrien hiro@is.s.u-tokyo.ac.jp. 440760484Sobrien (machine_type, case bfd_arch_vax): Set *unknown to false. Patch 440860484Sobrien from John David Anglin <dave@hiauly1.hia.nrc.ca>. 440960484Sobrien 441060484Sobrien * configure.in (tb): Rename ns32knetbsd_vec to pc532netbsd_vec, 441160484Sobrien since that's what it's called. 441260484Sobrien 441360484SobrienWed Nov 2 15:24:51 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 441460484Sobrien 441560484Sobrien * archive.c (normalize): Change to take a BFD as an argument. 441660484Sobrien Change VMS version to use bfd_alloc rather than malloc, so that we 441760484Sobrien don't lose the memory forever. 441860484Sobrien (_bfd_construct_extended_name_table): Check the name of an archive 441960484Sobrien entry which is not being extended, and correct it if it is wrong. 442060484Sobrien This is necessary in case the archive was constructed by another 442160484Sobrien program which put an entry in the extended name table which we 442260484Sobrien don't plan to put in ourselves. From jjc@jclark.com (James 442360484Sobrien Clark). 442460484Sobrien (bfd_dont_truncate_arname): Check return value of normalize. 442560484Sobrien 442660484SobrienMon Oct 31 14:19:08 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 442760484Sobrien 442860484Sobrien * elf32-hppa.c (ELF32_PARISC_SX_SIZE): Define. 442960484Sobrien (ELF32_PARISC_SX_GET, ELF32_PARISC_SX_PUT): Define. 443060484Sobrien (symextn_entry): Don't define. 443160484Sobrien (symext_chain_size): Change type to bfd_size_type. 443260484Sobrien (symextn_contents): Change type to bfd_byte *. 443360484Sobrien (elf32_hppa_backend_begin_write_processing): Use 443460484Sobrien ELF32_PARISC_SX_SIZE instead of sizeof (symext_entryS). 443560484Sobrien (elf32_hppa_size_symext): Likewise. Also, change type of sizep to 443660484Sobrien bfd_size_type *. 443760484Sobrien (elf_hppa_tc_make_sections): Cast symextn_contents assignment to 443860484Sobrien bfd_byte *. Use ELF32_PARISC_SX_PUT instead of direct assignment. 443960484Sobrien (elf32_hppa_backend_symbol_table_processing): Use 444060484Sobrien ELF32_PARISC_SX_SIZE instead of sizeof (symext_entryS). Use 444160484Sobrien ELF32_PARISC_SX_GET insetad of direct assignment. 444260484Sobrien (elf32_hppa_read_symext_info): Change type of contents, and its 444360484Sobrien assignment cast, to bfd_byte *. Use ELF32_PARISC_SX_SIZE instead 444460484Sobrien of sizeof (symextn_entry). Use symext_entryS instead of 444560484Sobrien symextn_entry. Use ELF32_PARISC_SX_GET instead of direct 444660484Sobrien assignment. 444760484Sobrien 444860484Sobrien * archive.c (bfd_dont_truncate_arname): Add the ar padding 444960484Sobrien character, if there is room for it, even if the name is the 445060484Sobrien maximum length. 445160484Sobrien 445260484Sobrien * elfcode.h (assign_file_positions_except_relocs): Sort the ELF 445360484Sobrien headers by section address when assigning file positions. 445460484Sobrien (elf_sort_hdrs): New static function. 445560484Sobrien 445660484SobrienSun Oct 30 18:56:58 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 445760484Sobrien 445860484Sobrien * elfcode.h (NAME(bfd_elf,size_dynamic_sections)): Create DT_INIT 445960484Sobrien and DT_FINI dynamic entries based on the existence of _init and 446060484Sobrien _fini symbols, not on the .init and .fini sections. This is 446160484Sobrien compatible with some SVR4 linkers. 446260484Sobrien (elf_bfd_final_link): Corresponding change. 446360484Sobrien 446460484SobrienSat Oct 29 12:18:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 446560484Sobrien 446660484Sobrien * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Don't move a 446760484Sobrien symbol with a PLT entry into the .plt section if it is defined in 446860484Sobrien a regular file. 446960484Sobrien * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise. 447060484Sobrien 447160484Sobrien * linker.c (_bfd_generic_link_add_archive_symbols): It's not an 447260484Sobrien error if an empty archive has no symbol table. 447360484Sobrien * ecoff.c (ecoff_link_add_archive_symbols): Likewise. 447460484Sobrien * elfcode.h (elf_link_add_archive_symbols): Likewise. 447560484Sobrien 447660484SobrienFri Oct 28 10:08:41 1994 J.T. Conklin (jtc@rtl.cygnus.com) 447760484Sobrien 447860484Sobrien NetBSD/m68k support, based on work by mikeb@snow.datametrics.com: 447960484Sobrien * config.bfd (m68*-*-netbsd*): Use m68k-nbsd as bfd_name. 448060484Sobrien * configure.in (m68knetbsd_vec): Added. 448160484Sobrien * targets.c (bfd_m68knetbsd_vec): Added. 448260484Sobrien * hosts/m68knbsd.h, config/m68k-nbsd.mt, m68knetbsd.c: New files. 448360484Sobrien * Makefile.in (BFD32_BACKENDS, CFILES): Add m68knetbsd.c. 448460484Sobrien 448560484Sobrien miscellaneous cleanup required by all netbsd targets, based on work 448660484Sobrien by Andrew Cagney <cagney@highland.com.au>: 448760484Sobrien * netbsd.h (N_MAGIC, N_SET_MAGIC, N_GETMAGIC, N_GETMAGIC2, N_TXTADDR, 448860484Sobrien N_TXTOFF, N_ALIGN, N_DATADDR, N_DATOFF): Removed. Generic a.out 448960484Sobrien definitions work. 449060484Sobrien * i386nbsd.c, ns32knbsd.c, sparcnbsd.c (__LDPGSZ): Removed. 449160484Sobrien (MY(write_object_contents)): Use NetBSD's magic numbers 449260484Sobrien 449360484SobrienThu Oct 27 16:59:52 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 449460484Sobrien 449560484Sobrien * libelf.h (struct bfd_elf_section_data): Add field dynindx. 449660484Sobrien * elfcode.h (NAME(bfd_elf,size_dynamic_sections)): Don't finalize 449760484Sobrien the .dynsym, .dynstr or .hash sections until after the backend 449860484Sobrien size_dynamic_sections routine, so that it can add dynamic symbols 449960484Sobrien if it wants to. 450060484Sobrien * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Don't define the 450160484Sobrien symbol to be in the .plt section when generating a shared library 450260484Sobrien if it is a defined symbol. 450360484Sobrien * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise. 450460484Sobrien (elf32_sparc_size_dynamic_sections): When generating a shared 450560484Sobrien library, allocate space for a dynamic symbol for each output 450660484Sobrien section, storing the index in the dynindx field of the ELF section 450760484Sobrien data. Adjust the other dynindx fields to account for this. 450860484Sobrien (elf32_sparc_adjust_dynindx): New static function. 450960484Sobrien (elf32_sparc_relocate_section): When copying a reloc into a shared 451060484Sobrien library, use the original addend as appropriate. Convert an 451160484Sobrien R_SPARC_32 reloc into an R_SPARC_RELATIVE reloc. Use the dynamic 451260484Sobrien symbol index of the output section, not the normal symbol index. 451360484Sobrien (elf32_sparc_finish_dynamic_sections): Don't die if a section does 451460484Sobrien not exist when setting the value of the dynamic tags. Write out 451560484Sobrien a dynamic symbol for each output section. 451660484Sobrien 451760484SobrienWed Oct 26 01:15:51 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 451860484Sobrien 451960484Sobrien * aoutx.h (aout_link_input_section): Don't bother to read or write 452060484Sobrien the relocs if there aren't any. 452160484Sobrien 452260484SobrienTue Oct 25 11:44:38 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 452360484Sobrien 452460484Sobrien * Makefile.in (ALL_MACHINES): Add tekhex.o. 452560484Sobrien * targets.c (bfd_target_vector): If SELECT_VECS is not defined, 452660484Sobrien include tekhex_vec. 452760484Sobrien * tekhex.c (NIBBLE, ISHEX): Cast array arguments to unsigned char. 452860484Sobrien (getvalue, getsym, out): Likewise. 452960484Sobrien (find_chunk): Remove unused variable s. 453060484Sobrien (first_phase): Remove unused variable s. 453160484Sobrien (pass_over): Remove unused variable address. 453260484Sobrien (tekhex_object_p): Remove unused variable section. 453360484Sobrien (move_section_contents): Change return type from boolean to void. 453460484Sobrien (tekhex_write_object_contents): Remove unused variables tdata and 453560484Sobrien list. 453660484Sobrien 453760484Sobrien * linker.c (enum link_action): Add CIND. 453860484Sobrien (link_action): Change COMMON_ROW\indr from MDEF to CREF. Change 453960484Sobrien INDR_ROW\common from MDEF to CIND. 454060484Sobrien (_bfd_generic_link_add_one_symbol): In CREF case, handle an 454160484Sobrien existing symbol which is indirect rather than defined. Add new 454260484Sobrien CIND case. 454360484Sobrien 454460484SobrienMon Oct 24 15:33:16 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 454560484Sobrien 454660484Sobrien Change S-record backend to use multiple sections to handle gaps in 454760484Sobrien file. 454860484Sobrien * srec.c (srec_data_list_struct): Move field next from last place 454960484Sobrien to first. Change type of data to bfd_byte *. 455060484Sobrien (struct srec_symbol): Define. 455160484Sobrien (tdata_type): Remove done_symbol_read, count, strings, symbol_idx, 455260484Sobrien string_size, string_idx. Change type of symbols to struct 455360484Sobrien srec_symbol *. Add symtail and csymbols. 455460484Sobrien (low, high): Remove. 455560484Sobrien (size_symbols, fillup_symbols, size_srec, fillup): Remove. 455660484Sobrien (white, skipwhite, pass_over, object_p): Remove. 455760484Sobrien (srec_mkobject): Call srec_init. Adjust tdata initialization for 455860484Sobrien field changes. 455960484Sobrien (srec_get_byte, srec_bad_byte): New static functions. 456060484Sobrien (srec_new_symbol, srec_scan): New static functions. 456160484Sobrien (srec_object_p): Change type of b to bfd_byte. Explicitly set 456260484Sobrien wrong_format error. Call srec_mkobject and srec_scan instead of 456360484Sobrien object_p. 456460484Sobrien (symbolsrec_object_p): Likewise. Also, change b to be only two 456560484Sobrien bytes. 456660484Sobrien (srec_read_section): New static function. 456760484Sobrien (srec_get_section_contents): Call srec_read_section rather than 456860484Sobrien pass_over. Handle zero length section correctly. 456960484Sobrien (set_set_arch_mach): Change from function to macro. 457060484Sobrien (srec_set_section_contents): Change data to bfd_byte *. 457160484Sobrien (srec_write_record): Change data, end and src to bfd_byte *. 457260484Sobrien (srec_write_header): Change buffer and dst to bfd_byte *. 457360484Sobrien (srec_write_section): Change location to bfd_byte *. 457460484Sobrien (srec_write_terminator): Change buffer to bfd_byte *. 457560484Sobrien (srec_get_symtab_upper_bound): Don't call 457660484Sobrien srec_get_section_contents. 457760484Sobrien (srec_get_symtab): Rewrite. 457860484Sobrien 457960484Sobrien * ecoff.c (ecoff_set_symbol_info): Set udata.i to 0, not NULL. 458060484Sobrien 458160484SobrienFri Oct 21 16:43:13 1994 J.T. Conklin (jtc@phishhead.cygnus.com) 458260484Sobrien 458360484Sobrien * libaout.h (machine_type): added M_68K_NETBSD and M_SPARC_NETBSD. 458460484Sobrien * i386netbsd.c, ns32knetbsd.c, sparcnetbsd.c: removed RCS Id's. 458560484Sobrien changed how PAGE_SIZE and SEGMENT_SIZE are defined so they are 458660484Sobrien consistant with each other. 458760484Sobrien * netbsd.h (N_HEADER_IN_TEXT, TEXT_START_ADDR): NetBSD fits its 458860484Sobrien header into the start of its text segment. 458960484Sobrien 459060484SobrienFri Oct 21 17:13:07 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 459160484Sobrien 459260484Sobrien * targets.c (BFD_JUMP_TABLE_ARCHIVE): Add case for 459360484Sobrien _construct_extended_name_table. 459460484Sobrien (bfd_target): Add _bfd_construct_extended_name_table. 459560484Sobrien * archive.c (_bfd_archive_bsd_construct_extended_name_table): New 459660484Sobrien function. 459760484Sobrien (_bfd_archive_coff_construct_extended_name_table): New function. 459860484Sobrien (_bfd_construct_extended_name_table): Renamed by adding a leading 459960484Sobrien underscore, and made externally visible. Added trailing_slash 460060484Sobrien argument, and used it instead of elf_style. Changed type of 460160484Sobrien tablen to bfd_size_type *. 460260484Sobrien (_bfd_write_archive_contents): Use BFD_SEND to call 460360484Sobrien construct_extended_name_table. Use the returned name. 460460484Sobrien * libbfd-in.h (_bfd_construct_extended_name_table): Declare. 460560484Sobrien (_bfd_noarchive_construct_extended_name_table): Define. 460660484Sobrien (_bfd_archive_bsd_construct_extended_name_table): Declare. 460760484Sobrien (_bfd_archive_coff_construct_extended_name_table): Declare. 460860484Sobrien * bfd-in2.h: Rebuild. 460960484Sobrien * libbfd.h: Rebuild. 461060484Sobrien * som.c (som_construct_extended_name_table): New static function. 461160484Sobrien * aout-target.h (MY_construct_extended_name_table): Define. 461260484Sobrien * coff-rs6000.c (rs6000coff_construct_extended_name_table): 461360484Sobrien Define. 461460484Sobrien * ieee.c (ieee_construct_extended_name_table): Define. 461560484Sobrien * libecoff.h (_bfd_ecoff_construct_extended_name_table): Define. 461660484Sobrien * oasys.c (oasys_construct_extended_name_table): Define. 461760484Sobrien 461860484Sobrien Fix the ELF linker to not require an interpreter if no dynamic 461960484Sobrien objects were seen, even when linking PIC code. 462060484Sobrien * libelf.h (ELF_LINK_HASH_NEEDS_PLT): Define. 462160484Sobrien (struct elf_link_hash_table): Add field dynamic_sections_created. 462260484Sobrien * elfcode.h (elf_link_record_dynamic_symbol): Create dynstr if it 462360484Sobrien doesn't already exist. 462460484Sobrien (elf_link_add_object_symbols): Create dynamic sections based on 462560484Sobrien dynamic_sections_created field, not dynobj field. Don't bother to 462660484Sobrien set dynobj. 462760484Sobrien (elf_link_create_dynamic_sections): If dynamic sections were 462860484Sobrien already created, don't do anything. If dynobj is already set, use 462960484Sobrien it; otherwise, set it to the bfd argument. Don't initialize 463060484Sobrien dynsymcount. Only create dynstr if it does not exist. Set 463160484Sobrien dynamic_sections_created to true. 463260484Sobrien (NAME(bfd_elf,size_dynamic_sections)): Skip most of this function 463360484Sobrien if no dynamic objects were seen. 463460484Sobrien (elf_adjust_dynamic_symbol): If a symbol has the 463560484Sobrien ELF_LINK_HASH_NEEDS_PLT flag set, let the backend adjust it. 463660484Sobrien (elf_bfd_final_link): Change most decisions based on dynobj to 463760484Sobrien check dynamic_sections_created instead. 463860484Sobrien (elf_link_output_extsym): Only handle dynamic symbols if a dynamic 463960484Sobrien object was seen. 464060484Sobrien * elf.c (_bfd_elf_link_hash_table_init): Initialize new field 464160484Sobrien dynamic_sections_created. Set dynsymcount to 1, not 0. 464260484Sobrien * elf32-i386.c (elf_i386_create_dynamic_sections): Call 464360484Sobrien elf_i386_create_got_section rather than creating the .got and 464460484Sobrien .got.plt sections. 464560484Sobrien (elf_i386_create_got_section): New static function. 464660484Sobrien (elf_i386_check_relocs): Just call elf_i386_create_got_section if 464760484Sobrien a GOT table is needed, not bfd_elf32_link_create_dynamic_sections. 464860484Sobrien Only create the .rel.got section, and only make space for a reloc, 464960484Sobrien for a global symbol or when generating a shared object. For a 465060484Sobrien R_386_PLT32 reloc, just set the ELF_LINK_HASH_NEEDS_PLT flag. 465160484Sobrien (elf_i386_adjust_dynamic_symbol): Rework initial assertion to 465260484Sobrien permit ELF_LINK_HASH_NEEDS_PLT non dynamic symbols. Create a 465360484Sobrien procedure linkage table entry for such symbols. But, if no 465460484Sobrien dynamic objects were seen, never create a PLT entry. 465560484Sobrien (elf_i386_size_dynamic_sections): If no dynamic objects were seen, 465660484Sobrien skip most of this function, and force the size of the .rel.got 465760484Sobrien section to zero. 465860484Sobrien (elf_i386_relocate_section): For a R_386_GOT32 reloc against a global 465960484Sobrien symbol when no dynamic object was seen, initialize the contents of 466060484Sobrien the .got section. For a R_386_GOT32 against a local symbol, only 466160484Sobrien create a R_386_RELATIVE reloc when generating a shared object. 466260484Sobrien Treat a R_386_PLT32 reloc against a symbol for which we did not 466360484Sobrien create a PLT entry as a R_386_PC32 reloc. 466460484Sobrien (elf_i386_finish_dynamic_sections): Only fiddle with the dynamic 466560484Sobrien entries and the PLT if we saw a dynamic object. 466660484Sobrien * elf32-sparc.c (elf_sparc_howto_table): Fix R_SPARC_PC22 by 466760484Sobrien setting rightshift to 10. Fix R_SPARC_WPLT20 by setting 466860484Sobrien rightshift to 2, size to 2, bitsize to 30, and dst_mask to 466960484Sobrien 0x3fffffff. 467060484Sobrien (elf32_sparc_create_dynamic_sections): Don't set the size of the 467160484Sobrien .plt section. Call elf32_sparc_create_got_section rather than 467260484Sobrien creating the .got section. 467360484Sobrien (elf32_sparc_check_relocs): Call elf32_sparc_create_got_section if 467460484Sobrien a GOT table is needed, not bfd_elf32_link_create_dynamic_sections. 467560484Sobrien Only create the .rela.got section, and only make space for a 467660484Sobrien reloc, for a global symbol or when generating a shared object. 467760484Sobrien Set the alignment of the .rela.got section to 2. For a 467860484Sobrien R_SPARC_WPLT30 reloc, just set the ELF_LINK_HASH_NEEDS_PLT flag. 467960484Sobrien (elf32_sparc_adjust_dynamic_symbol): Rework initial assertion to 468060484Sobrien permit ELF_LINK_HASH_NEDS_PLT non dynamic symbols. Create a 468160484Sobrien procedure linkage table for such symbols. But, if no dynamic 468260484Sobrien objects were seen, never create a PLT entry. Initialize the size 468360484Sobrien of the .plt section. 468460484Sobrien (elf32_sparc_size_dynamic_sections): If no dynamic objects were 468560484Sobrien seen, skip most of this function, and force the size of the 468660484Sobrien .rela.got section to zero. Strip empty reloc sections, and strip 468760484Sobrien an empty .plt section. 468860484Sobrien (elf32_sparc_relocate_section): For a GOT reloc against a global 468960484Sobrien symbol when no dynamic object was seen, initialize the contents of 469060484Sobrien the .got section. For a GOT reloc against a local symbol, only 469160484Sobrien create a R_SPARC_RELATIVE reloc when generating a shared object. 469260484Sobrien Treat a R_SPARC_WPLT30 reloc against a symbol for which we did not 469360484Sobrien create a PLT entry as a R_SPARC_WDISP30 reloc. 469460484Sobrien (elf32_sparc_finish_dynamic_sections): Only fiddle with the 469560484Sobrien dynamic entries and the PLT if we saw a dynamic object. 469660484Sobrien 469760484SobrienThu Oct 20 13:28:45 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 469860484Sobrien 469960484Sobrien * elfcode.h (elf_map_symbols): Don't worry about section symbols 470060484Sobrien in a section not owned by any BFD. 470160484Sobrien (elf_section_from_bfd_section): Separate out loop which calls 470260484Sobrien backend routine. Check bfd_section and call the backend routine 470360484Sobrien even for a section not owned by any BFD. 470460484Sobrien * elf32-mips.c (mips_elf_section_from_bfd_section): Handle 470560484Sobrien .acommon section. 470660484Sobrien 470760484SobrienWed Oct 19 13:28:29 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 470860484Sobrien 470960484Sobrien * coffgen.c (coff_print_symbol): Make names for section number and 471060484Sobrien storage class slightly more verbose. It's not clear how many 471160484Sobrien characters I can justify using up, but before this change they 471260484Sobrien both were abbreviated "sc" which is (IMHO) clearly unacceptable. 471360484Sobrien 471460484SobrienWed Oct 19 01:26:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 471560484Sobrien 471660484Sobrien * binary.c (binary_set_section_contents): Set the base file 471760484Sobrien position from the lowest section VMA, not the start address. 471860484Sobrien 471960484Sobrien * aoutx.h (NAME(aout,slurp_symbol_table)): Don't return an error 472060484Sobrien if there are no symbols. 472160484Sobrien * coffgen.c (coff_get_normalized_symtab): Likewise. 472260484Sobrien * hp300hpux.c (MY(slurp_symbol_table)): Likewise. 472360484Sobrien 472460484SobrienTue Oct 18 12:56:43 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 472560484Sobrien 472660484Sobrien * aout-target.h (MY_bfd_copy_private_section_data): Only copy 472760484Sobrien subformat to another bfd_target_aout_flavour file. 472860484Sobrien 472960484Sobrien * binary.c: New file for raw binary output format. 473060484Sobrien * Makefile.in (BFD_LIBS): Add binary.o. 473160484Sobrien (CFILES): Add binary.c. 473260484Sobrien * targets.c (binary_vec): Declare. 473360484Sobrien (bfd_target_vector): Include binary_vec. 473460484Sobrien 473560484Sobrien * srec.c (tdata_type): Add field tail. 473660484Sobrien (srec_mkobject): Initialize tail. 473760484Sobrien (srec_set_section_contents): Sort S record list by address. 473860484Sobrien 473960484SobrienMon Oct 17 11:38:16 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 474060484Sobrien 474160484Sobrien * elfcode.h (elf_map_symbols): Sort the symbols into a new array, 474260484Sobrien rather than messing with Elf_Sym_Extra. Store the symbol index in 474360484Sobrien the udata.i field. 474460484Sobrien (swap_out_syms): Use outbound_syms as a pointer rather than as an 474560484Sobrien array. Don't worry about elf_sym_num. 474660484Sobrien * libelf.h (struct elf_sym_extra): Don't define. 474760484Sobrien (Elf_Sym_Extra): Don't define. 474860484Sobrien (struct elf_obj_tdata): Remove sym_extra field. 474960484Sobrien (elf_sym_extra): Don't define. 475060484Sobrien * elf32-hppa.c (elf32_hppa_backend_final_write_processing): Use 475160484Sobrien udata.i rather than elf_sym_extra array. 475260484Sobrien 475360484Sobrien * syms.c (asymbol): Change udata field into a union. 475460484Sobrien * bfd-in2.h: Rebuild. 475560484Sobrien * aoutx.h (NAME(aout,translate_symbol_table)): Use udata.p rather 475660484Sobrien than just udata. 475760484Sobrien * bout.c (perform_slip): Likewise. 475860484Sobrien * hp300hpux.c (MY(slurp_symbol_table)): Likewise. 475960484Sobrien * ieee.c (ieee_slurp_external_symbols): Likewise. 476060484Sobrien * linker.c (generic_link_add_symbol_list): Likewise. 476160484Sobrien (default_indirect_link_order): Likewise. 476260484Sobrien * oasys.c (oasys_slurp_symbol_table): Likewise. 476360484Sobrien * reloc16.c (bfd_perform_slip): Likewise. 476460484Sobrien * srec.c (fillup_symbols): Likewise. 476560484Sobrien * coffcode.h (get_index): Use udata.i rather than just udata. 476660484Sobrien (coff_slurp_symbol_table): Likewise. 476760484Sobrien * coffgen.c (set_index): Likewise. 476860484Sobrien * ecoff.c (ecoff_set_symbol_info): Likewise. 476960484Sobrien * elfcode.h (elf_symbol_from_bfd_symbol): Likewise. 477060484Sobrien * libecoff.h (ecoff_get_sym_index, ecoff_set_sym_index): Likewise. 477160484Sobrien * som.c (compare_syms): Likewise. 477260484Sobrien (som_prep_for_fixups): Likewise. 477360484Sobrien (som_write_fixups): Likewise. 477460484Sobrien 477560484Sobrien Use a hash table when writing out ELF symbol names. 477660484Sobrien * elfcode.h (elf_stringtab_init): New static function. 477760484Sobrien (bfd_new_strtab, bfd_add_to_strtab, bfd_add_2_to_strtab): Remove. 477860484Sobrien Change all callers to use elf_stringtab_init or 477960484Sobrien _bfd_stringtab_add, and get stringtab lengths using 478060484Sobrien _bfd_stringtab_size. 478160484Sobrien (elf_fake_sections): Change ignored argument to pointer to 478260484Sobrien boolean, and set the boolean to true if an error occurs. If an 478360484Sobrien error has already occurred, don't do anything. 478460484Sobrien (assign_section_numbers): Just set sh_size, not contents. 478560484Sobrien (elf_compute_section_file_positions): Pass the address of a 478660484Sobrien boolean to elf_fake_sections. Pass the address of a 478760484Sobrien bfd_strtab_hash to swap_out_syms. Write out the .strtab section. 478860484Sobrien (prep_headers): Change shstrtab to bfd_strtab_hash. 478960484Sobrien (swap_out_syms): Take a pointer to a bfd_strtab_hash as an 479060484Sobrien argument. Set it to the symbol names. 479160484Sobrien (NAME(bfd_elf,write_object_contents)): Write out the section 479260484Sobrien header names using _bfd_stringtab_emit. 479360484Sobrien (elf_debug_section): Remove first argument; get the section name 479460484Sobrien via the bfd_section pointer. Change caller. 479560484Sobrien (elf_bfd_final_link): Write out the symbol names using 479660484Sobrien _bfd_stringtab_emit. Likewise for the .dynstr section contents. 479760484Sobrien Free the symbol names at the end of the function. 479860484Sobrien (elf_link_input_bfd): Remove the last argument, output_names, 479960484Sobrien from relocate_section. Save the old symbol contents before 480060484Sobrien calling elf_link_output_sym, and restore them afterward. 480160484Sobrien * libelf.h (struct elf_link_hash_table): Change dynstr field to 480260484Sobrien struct bfd_strtab_hash. 480360484Sobrien (struct elf_backend_data): Remove last argument, output_names, 480460484Sobrien from elf_backend_relocate_section field. 480560484Sobrien (struct strtab): Don't define. 480660484Sobrien (struct elf_obj_tdata): Change strtab_ptr field to struct 480760484Sobrien bfd_strtab_hash. 480860484Sobrien * elf32-hppa.c (elf32_hppa_relocate_section): Remove last 480960484Sobrien argument, output_names. 481060484Sobrien * elf32-i386.c (elf_i386_relocate_section): Likewise. 481160484Sobrien * elf32-mips.c (mips_elf_relocate_section): Likewise. 481260484Sobrien * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 481360484Sobrien 481460484Sobrien * libbfd-in.h (DEFAULT_STRING_SPACE_SIZE): Don't define. 481560484Sobrien (bfd_add_to_string_table): Don't declare. 481660484Sobrien * libbfd.h: Rebuild. 481760484Sobrien * libbfd.c (bfd_add_to_string_table): Remove. 481860484Sobrien 481960484Sobrien * elfcode.h (elf_swap_shdr_in): Use bfd_section, not rawdata. 482060484Sobrien Clear contents field. 482160484Sobrien (bfd_section_from_shdr): In SHT_STRTAB case, check bfd_section, 482260484Sobrien not rawdata. Don't set rawdata if e_shstrndx. Use bfd_section 482360484Sobrien rather than rawdata in commented out code. In SHT_REL[A] case, 482460484Sobrien don't bother to check elf_section_data of section returned by 482560484Sobrien section_from_elf_index. 482660484Sobrien (elf_fake_sections): Set bfd_section, not rawdata. Don't set 482760484Sobrien size. 482860484Sobrien (elf_map_symbols): Don't set elf_num_section_syms. Don't create 482960484Sobrien section symbols that already exist. 483060484Sobrien (assign_file_position_for_section): Use bfd_section, not rawdata. 483160484Sobrien (section_from_elf_index): Just check bfd_section field. 483260484Sobrien (elf_section_from_bfd_section): Likewise. 483360484Sobrien (elf_debug_section): Don't print rawdata, contents, or size. 483460484Sobrien (elf_link_add_object_symbols): Don't error out if 483560484Sobrien section_from_elf_index returns NULL. 483660484Sobrien (elf_bfd_final_link): Check return value from 483760484Sobrien section_from_elf_index against NULL, not bfd_is_abs_section. 483860484Sobrien (elf_link_input_bfd): Don't check section_from_elf_index return 483960484Sobrien value. 484060484Sobrien * libelf.h (struct elf_obj_tdata): Remove num_section_syms field. 484160484Sobrien (elf_num_section_syms): Don't define. 484260484Sobrien * elf.c (elf_get_str_section): Store section contents in contents 484360484Sobrien field rather than rawdata field. 484460484Sobrien (elf_string_from_elf_section): Likewise. 484560484Sobrien (_bfd_elf_make_section_from_shdr): Store BFD section pointer in 484660484Sobrien bfd_section field rather than rawdata field. 484760484Sobrien * elf32-hppa.c (elf32_hppa_read_symext_info): Use bfd_section 484860484Sobrien rather than rawdata. 484960484Sobrien (elf32_hppa_size_stubs): Likewise. 485060484Sobrien (elf32_hppa_backend_symbol_table_processing): Don't set 485160484Sobrien symextn_hdr->size; just use sh_size. 485260484Sobrien * elf32-mips.c (mips_elf_final_write_processing): Use bfd_section 485360484Sobrien rathern than rawdata. 485460484Sobrien (mips_elf_section_from_shdr): Likewise. 485560484Sobrien (mips_elf_section_processing): Likewise. 485660484Sobrien (mips_elf_section_from_bfd_section): Remove rawdata check. 485760484Sobrien 485860484Sobrien * srec.c (pass_over): Set the start address for S7, S8 or S9. 485960484Sobrien 486060484SobrienFri Oct 14 19:15:46 1994 Ken Raeburn <raeburn@cujo.cygnus.com> 486160484Sobrien 486260484Sobrien * VERSION: Updated to 2.5. 486360484Sobrien 486460484SobrienFri Oct 14 11:07:50 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 486560484Sobrien 486660484Sobrien * bfd.c (bfd_scan_vma): Cast end to be non const before passing it 486760484Sobrien to strtoul. 486860484Sobrien 486960484SobrienThu Oct 13 14:40:41 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 487060484Sobrien 487160484Sobrien * bfd.c (bfd_scan_vma): Pass end argument on to strtoul. 487260484Sobrien 487360484SobrienWed Oct 12 16:46:43 1994 Ken Raeburn <raeburn@cujo.cygnus.com> 487460484Sobrien 487560484Sobrien * opncls.c (bfd_realloc): Deleted, since it's broken and fixing it 487660484Sobrien would make it slow. Besides, it isn't used much. 487760484Sobrien * elfcode.h (elf_map_symbols): Always allocate new storage for the 487860484Sobrien symbol table. 487960484Sobrien 488060484SobrienWed Oct 12 11:54:37 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 488160484Sobrien 488260484Sobrien * ecoff.c (ecoff_set_symbol_info): Mark local stProc, stLabel or 488360484Sobrien stabs symbols as BSF_DEBUGGING. 488460484Sobrien 488560484Sobrien * rs6000-core.c (rs6000coff_core_file_matches_executable_p): Make 488660484Sobrien str1 and str2 const pointers. 488760484Sobrien 488860484Sobrien * Makefile.in (INSTALL): Use top level install.sh script. 488960484Sobrien * config/README (INSTALL): Remove. 489060484Sobrien * config/delta88.mh (INSTALL): Remove. 489160484Sobrien * config/i386v4.mh (INSTALL): Remove. 489260484Sobrien * config/irix4.mh (INSTALL): Remove. 489360484Sobrien * config/irix5.mh (INSTALL): Remove. 489460484Sobrien * config/ncrt3000.mh (INSTALL): Remove. 489560484Sobrien 489660484SobrienTue Oct 11 13:57:56 1994 Eric Youngdale (eric@andante.aib.com) 489760484Sobrien 489860484Sobrien * elf32-i386.c (elf_i386_check_relocs): Make sure that a symbol 489960484Sobrien with a global offset table entry or a procedure linkage table 490060484Sobrien entry is added to the dynamic symbol table. 490160484Sobrien * elf32-sparc.c (elf32_sparc_check_relocs): Likewise. 490260484Sobrien * elf32-i386.c (elf_i386_adjust_dynamic_symbol): If a symbol has 490360484Sobrien already gotten a procedure linkage table entry, change the 490460484Sobrien definition to the PLT entry. 490560484Sobrien * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise. 490660484Sobrien 490760484SobrienTue Oct 11 17:12:00 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 490860484Sobrien 490960484Sobrien * lynx-core.c (lynx_core_file_p): SPARC Lynx appears to start 491060484Sobrien dumping the .data section in a core file at a page boundary. 491160484Sobrien 491260484SobrienMon Oct 10 16:24:44 1994 Ken Raeburn <raeburn@cujo.cygnus.com> 491360484Sobrien 491460484Sobrien * cofflink.c (_bfd_coff_final_link): Cast argument to bfd_h_put_32 491560484Sobrien to correct type. 491660484Sobrien (coff_read_string_table): Cast argument to bfd_h_get_32 to correct 491760484Sobrien type. 491860484Sobrien * elfcode.h (elf_link_output_extsym): Cast argument to 491960484Sobrien bfd_elf_hash to correct type. 492060484Sobrien 492160484Sobrien * elf32-sparc.c (elf_sparc_howto_table): The PC10, PC22, and 492260484Sobrien WPLT30 relocations are PC-relative. 492360484Sobrien 492460484SobrienThu Oct 6 12:57:26 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org) 492560484Sobrien 492660484Sobrien * aoutx.h (adjust_o_magic): Correctly initialize vma if the vma of 492760484Sobrien the text section was user-defined. 492860484Sobrien 492960484SobrienWed Oct 5 14:42:12 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 493060484Sobrien 493160484Sobrien * archive.c (bfd_construct_extended_name_table): SVR4 uses slash 493260484Sobrien newline at the end of the file name, not just newline. 493360484Sobrien 493460484SobrienTue Oct 4 11:23:12 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 493560484Sobrien 493660484Sobrien * ecoff.c (_bfd_ecoff_new_section_hook): Default section alignment 493760484Sobrien power to 4, rather than using align_power_min. 493860484Sobrien 493960484Sobrien * coffcode.h (coff_new_section_hook): Don't use align_power_min; 494060484Sobrien use COFF_DEFAULT_SECTION_ALIGNMENT_POWER instead. Force the .stab 494160484Sobrien and .stabstr sections to be aligned to no more than 2. Remove 494260484Sobrien COFF_SPARC special cases. 494360484Sobrien * coff-a29k.c: Define COFF_DEFAULT_SECTION_ALIGNMENT_POWER. 494460484Sobrien * coff-apollo.c, coff-go32.c, coff-h8300.c: Likewise. 494560484Sobrien * coff-h8500.c, coff-i386.c, coff-i960.c, coff-m68k.c: Likewise. 494660484Sobrien * coff-m88k.c, coff-rs6000.c, coff-sh.c, coff-sparc.c: Likewise. 494760484Sobrien * coff-we32k.c, coff-z8k.c: Likewise. 494860484Sobrien 494960484Sobrien * configure.in: Use ${config_shell} when running config.bfd. 495060484Sobrien 495160484Sobrien * cofflink.c (coff_link_input_bfd): Don't try to convert a long 495260484Sobrien filename if the offset field is zero. 495360484Sobrien 495460484Sobrien * elfcode.h (swap_out_syms): If the alignment of a common symbol 495560484Sobrien was not set, use a sensible default rather than zero. 495660484Sobrien 495760484SobrienMon Oct 3 16:04:29 1994 H.J. Lu (hjl@nynexst.com) 495860484Sobrien 495960484Sobrien * opncls.c (bfd_close): Honor umask when setting execution bits. 496060484Sobrien (bfd_close_all_done): Likewise. 496160484Sobrien 496260484SobrienMon Oct 3 04:41:49 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 496360484Sobrien 496460484Sobrien * rs6000-core.c (rs6000coff_core_p): Set SEC_HAS_CONTENTS flag 496560484Sobrien for .stack and .ldinfo sections. Cast coredata.c_tab to a 496660484Sobrien file_ptr to avoid warnings from gcc. 496760484Sobrien 496860484SobrienFri Sep 30 13:11:38 1994 Ian Lance Taylor <ian@sanguine.cygnus.com> 496960484Sobrien 497060484Sobrien * elfcode.h (elf_bfd_final_link): Remove assertion when a non 497160484Sobrien SEC_IN_MEMORY section is found in dynobj. This can happen when 497260484Sobrien linking PIC compiled code. 497360484Sobrien 497460484SobrienThu Sep 29 15:21:44 1994 Ken Raeburn <raeburn@cujo.cygnus.com> 497560484Sobrien 497660484Sobrien * reloc.c (bfd_install_relocation): Change type of "data" to 497760484Sobrien bfd_byte *, to go along with yesterday's change. 497860484Sobrien 497960484Sobrien * elf.c (bfd_elf_print_symbol): Moved here from elf_print_symbol 498060484Sobrien in elfcode.h. (case bfd_print_symbol_all): Print symbol's size 498160484Sobrien field, except for common symbols; print their alignment. 498260484Sobrien * elfcode.h (elf_print_symbol): Deleted. 498360484Sobrien * libelf.h (bfd_elf_print_symbol): Declare. 498460484Sobrien (bfd_elf{32,64}_print_symbol): Replace declarations with macros. 498560484Sobrien 498660484Sobrien * syms.c (bfd_print_symbol_vandf): Show BSF_LOCAL and BSF_GLOBAL 498760484Sobrien in one column. Use the column freed up to show BSF_FUNCTION and 498860484Sobrien BSF_FILE. 498960484Sobrien 499060484SobrienThu Sep 29 12:29:01 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 499160484Sobrien 499260484Sobrien * syms.c (stt): Add .rdata and .rodata. 499360484Sobrien 499460484SobrienWed Sep 28 13:35:05 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 499560484Sobrien 499660484Sobrien * reloc.c (bfd_install_relocation): Cast data_start to bfd_byte * 499760484Sobrien before trying to add values to it. 499860484Sobrien 499960484SobrienTue Sep 27 16:47:58 1994 Ken Raeburn <raeburn@cujo.cygnus.com> 500060484Sobrien 500160484Sobrien * elf32-hppa.c (elf32_hppa_backend_final_write_processing): Cast 500260484Sobrien return value from elf_sym_extra. 500360484Sobrien (elf32_hppa_build_stubs): Cast return value from bfd_zalloc. 500460484Sobrien (elf32_hppa_size_stubs): Cast return value from malloc. 500560484Sobrien 500660484Sobrien * gen-aout.c (main): Declare and initialize "arch". 500760484Sobrien 500860484Sobrien * cofflink.c (coff_link_add_symbols): Cast return value of 500960484Sobrien bfd_hash_allocate. 501060484Sobrien 501160484Sobrien * riscix.c (riscix_callback): Use PARAMS macro in prototype. 501260484Sobrien 501360484Sobrien * reloc.c (bfd_install_relocation): New function, mostly copied 501460484Sobrien from bfd_perform_relocation, adjusted for the assembler's needs. 501560484Sobrien * bfd-in2.h: Regenerated. 501660484Sobrien 501760484SobrienMon Sep 26 11:00:14 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 501860484Sobrien 501960484Sobrien * elfcode.h (assign_file_positions_except_relocs): Align the 502060484Sobrien section VMA and the file position even if D_PAGED is not set. 502160484Sobrien 502260484Sobrien * bfd-in.h (bfd_seek): Change declaration to not mark fp const. 502360484Sobrien * bfd-in2.h: Rebuild. 502460484Sobrien * libbfd.c (bfd_seek): Don't mark parameters const, to avoid 502560484Sobrien conflicts with declaration. 502660484Sobrien 502760484SobrienFri Sep 23 15:15:31 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 502860484Sobrien 502960484Sobrien * elfcode.h (map_program_segments): Don't abort if we allocated 503060484Sobrien too much space for the program header, only if we allocated too 503160484Sobrien little. 503260484Sobrien (assign_file_positions_except_relocs): Similar change. 503360484Sobrien 503460484SobrienTue Sep 20 13:17:07 1994 J.T. Conklin (jtc@phishhead.cygnus.com) 503560484Sobrien 503660484Sobrien * libaout.h: Fix comment. 503760484Sobrien * ns32knbsd.h: Changed M_NS32K_NETBSD to M_532_NETBSD to match 503860484Sobrien libaout.h. 503960484Sobrien 504060484SobrienTue Sep 20 15:23:21 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 504160484Sobrien 504260484Sobrien * Makefile.in: Rebuilt dependencies. 504360484Sobrien (BFD32_BACKENDS): Add sparcnetbsd.o. 504460484Sobrien (CFILES): Add ns32knetbsd.c and sparcnetbsd.c. 504560484Sobrien * targets.c: ns32knetbsd_vec was renamed to pc532netbsd_vec. 504660484Sobrien 504760484Sobrien * coff-sh.c (rtype2howto): Remove; unused. 504860484Sobrien (coff_sh_relocate_section): Remove unused local variable rstat. 504960484Sobrien (reloc_processing): Comment out; unused. 505060484Sobrien 505160484SobrienFri Sep 16 12:12:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 505260484Sobrien 505360484Sobrien * aoutx.h (aout_link_write_other_symbol): If h->indx is -2, then 505460484Sobrien always write it out even if it would normally be stripped. 505560484Sobrien (aout_link_input_section_std): If we find a reloc against a 505660484Sobrien stripped global symbol, force it to be written out rather than 505760484Sobrien merely calling unattached_reloc. 505860484Sobrien (aout_link_input_section_ext): Likewise. 505960484Sobrien (aout_link_reloc_link_order): Likewise. 506060484Sobrien 506160484SobrienWed Sep 14 15:37:19 1994 Jeff Law (law@snake.cs.utah.edu) 506260484Sobrien 506360484Sobrien * som.h (struct somdata): New field sorted_syms. 506460484Sobrien (obj_som_sorted_syms): Accessor macro. 506560484Sobrien * som.c (som_object_setup): Initialize sorted_syms to NULL. 506660484Sobrien (som_prep_for_fixups): Sort a copy of the BFD's symbol table; 506760484Sobrien store the sorted symbol table in sorted_syms. 506860484Sobrien (som_write_fixups): Initalize tmp_reloc to NULL to make GCC happy. 506960484Sobrien (som_begin_writing): Similarly for exec_header. Pass the sorted 507060484Sobrien symbol table to som_write_symbol_strings. 507160484Sobrien (som_build_and_write_symbol_table): Use the sorted symbols rather 507260484Sobrien than the canonical symbol table. 507360484Sobrien 507460484Sobrien * som.h (som_symbol_type): Add "stringtab_offset" field. 507560484Sobrien * som.c (som_write_symbol_strings): Use "stringtab_offset" 507660484Sobrien rather than destroying the "name" field in the BFD symbol. 507760484Sobrien (som_build_and_write_symbol_table): Likewise. 507860484Sobrien 507960484SobrienWed Sep 14 15:06:55 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 508060484Sobrien 508160484Sobrien * aoutx.h (aout_link_write_symbols): Rename skip_indirect to 508260484Sobrien skip_next. If we find an N_WARNING symbol which has already been 508360484Sobrien written out, set skip_next. 508460484Sobrien 508560484Sobrien * libecoff.h (struct ecoff_tdata): Add field find_buffer. 508660484Sobrien * ecoff.c: Include aout/stab_gnu.h. 508760484Sobrien (ecoff_find_nearest_line): Handle stabs debugging information. 508860484Sobrien 508960484Sobrien * elfcode.h (elf_link_output_extsym): Keep a symbol marked as weak 509060484Sobrien even if it is referenced by another object. 509160484Sobrien 509260484SobrienTue Sep 13 17:57:00 1994 Jeff Law (law@snake.cs.utah.edu) 509360484Sobrien 509460484Sobrien * som.c (som_fixup_formats): Case R_ENTRY (0xb3), set both 509560484Sobrien 'T' and 'U' to grab all the unwind information. 509660484Sobrien (som_set_reloc_info): Make 'U' unwind bits persist across 509760484Sobrien multiple SOM relocations. Set the addend field of an R_ENTRY 509860484Sobrien relocation to the value in 'T'; set the addend field on an 509960484Sobrien R_EXIT relocation to the value in 'U'. 510060484Sobrien 510160484Sobrien * som.h (som_symbol_type): Delete unwind field. 510260484Sobrien 510360484Sobrien * som.c (som_write_fixups): For R_ENTRY fixups, get 32bits of 510460484Sobrien unwind information from the addend field of the R_ENTRY, get the 510560484Sobrien other 32bits from the addend field of the R_EXIT. 510660484Sobrien (bfd_som_attach_unwind_info): Delete function and all references. 510760484Sobrien 510860484Sobrien * som.h (som_symbol_type): Delete unused a.out-related fields. 510960484Sobrien 511060484Sobrien * som.c (bfd_section_from_som_symbol): Use bfd_abs_section_ptr 511160484Sobrien instead of &bfd_abs_section. 511260484Sobrien 511360484Sobrien * som.c (som_object_setup): Handle exec_entry and exec_flags being 511460484Sobrien switched in executables created by the OSF1 linker. 511560484Sobrien (som_write_fixups): Handle R_EXIT just like the R_{F,L,R}SEL 511660484Sobrien fixups. Support R_ALT_ENTRY (handle just like R_EXIT). 511760484Sobrien 511860484SobrienTue Sep 13 16:04:07 1994 Steve Chamberlain (sac@jonny.cygnus.com) 511960484Sobrien 512060484Sobrien * cofflink.c (coff_link_input_bfd): syment_base is unsigned 512160484Sobrien so can't compare -ve numbers with it. 512260484Sobrien 512360484SobrienMon Sep 12 20:31:17 1994 Steve Chamberlain (sac@jonny.cygnus.com) 512460484Sobrien 512560484Sobrien * configure.in (shcoff_vec): Use cofflink.o now. 512660484Sobrien * coff-sh.c: Rewritten to use new fast coff backend. 512760484Sobrien 512860484SobrienTue Sep 13 16:23:57 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 512960484Sobrien 513060484Sobrien * aoutx.h (NAME(aout,final_link)): Don't assume that all the input 513160484Sobrien files are a.out. 513260484Sobrien 513360484SobrienTue Sep 13 11:09:39 1994 J.T. Conklin (jtc@rtl.cygnus.com) 513460484Sobrien 513560484Sobrien * configure.host (sparc-*-netbsd): use sparcnbsd. 513660484Sobrien (ns32k-*-netbsd): use ns32knbsd. 513760484Sobrien 513860484Sobrien * hosts/{nbsd,i386nbsd,ns32knbsd,sparcnbsd}.h: New files, NetBSD 513960484Sobrien host support. 514060484Sobrien 514160484Sobrien * sparcnetbsd.c: New file, adds support for NetBSD/sparc. 514260484Sobrien * config/sparc-nbsd.mt: Likewise. 514360484Sobrien 514460484Sobrien * netbsd.h: New file, definitions common to all netbsd ports. 514560484Sobrien * i386netbsd.c: Use it. 514660484Sobrien * ns32knetbsd.c: Use it. 514760484Sobrien 514860484Sobrien * Makefile.in, configure.in, targets.c, config/i386-nbsd.mt, 514960484Sobrien config/ns32k-nbsd.mt: canonicalize netbsd targets to conform to 515060484Sobrien file/variable naming conventions. 515160484Sobrien * i386netbsd.c: New file, renamed from netbsd386.c. 515260484Sobrien * ns32knetbsd.c: New file, renamed from netbsd532.c. 515360484Sobrien 515460484SobrienMon Sep 12 21:56:20 1994 Jeff Law (law@snake.cs.utah.edu) 515560484Sobrien 515660484Sobrien * som.c (som_reloc_skip): Correct off-by-one error for 4-byte 515760484Sobrien R_NO_RELOCATION fixups. 515860484Sobrien (bfd_section_from_som_symbol): Return the absolute section if the 515960484Sobrien symbol isn't contained in any section in the output file. 516060484Sobrien (som_slurp_symbol_table): ST_PRI_PROG and ST_SEC_PROG symbols are 516160484Sobrien not function symbols (they are magic code labels which *can* be the 516260484Sobrien targets of cross space branches). $START$ is not a section symbol. 516360484Sobrien 516460484SobrienMon Sep 12 11:43:08 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 516560484Sobrien 516660484Sobrien * coff-alpha.c (ecoffalpha_little_vec): Add SEC_CODE and SEC_DATA 516760484Sobrien to section_flags. 516860484Sobrien * coff-mips.c (ecoff_little_vec, ecoff_big_vec): Likewise. 516960484Sobrien 517060484Sobrien * elfcode.h (swap_out_syms): Set the type of an undefined symbol 517160484Sobrien to STT_FUNC if the BSF_FUNCTION flag is set. 517260484Sobrien 517360484Sobrien * cofflink.c (coff_link_input_bfd): If r_symndx is -1, don't 517460484Sobrien change it. 517560484Sobrien (_bfd_coff_generic_relocate_section): If r_symndx is -1, it is an 517660484Sobrien absolute reloc. Don't dump core using r_symndx as an array index. 517760484Sobrien * cf-m68klynx.c (coff_bfd_link_add_symbols): Define. 517860484Sobrien (lynx_link_add_symbols): New static function (copy of function in 517960484Sobrien coff-i386.c). 518060484Sobrien (coff_m68k_lynxrtype_to_howto): sym argument may be NULL. 518160484Sobrien * coff-i386.c (coff_i386_rtype_to_howto): Likewise. 518260484Sobrien * coff-a29k.c (coff_a29k_relocate_section): Handle an r_symndx 518360484Sobrien value of -1, meaning an absolute reloc. 518460484Sobrien 518560484Sobrien * ctor.c: Remove; obsolete. 518660484Sobrien * Makefile.in: Rebuild dependencies. 518760484Sobrien (BFD_LIBS): Remove ctor.o. 518860484Sobrien (CFILES): Remove ctor.c. 518960484Sobrien * libbfd.h: Rebuild. 519060484Sobrien 519160484SobrienMon Sep 12 01:58:47 1994 Jeff Law (law@snake.cs.utah.edu) 519260484Sobrien 519360484Sobrien * elf32-hppa.c (elf32_hppa_relocate_section): If there was a link 519460484Sobrien error of some sort (for example, undefined symbols), then do not 519560484Sobrien apply any relocs, just notify the user of the errors. 519660484Sobrien (elf32_hppa_backend_begin_write_processing): Do not build a symbol 519760484Sobrien extension section for an executable (it's useless). 519860484Sobrien (elf32_hppa_link_output_symbol_hook): Do nothing if there was a 519960484Sobrien link error of some sort (for example, undefined symbols). 520060484Sobrien (elf32_hppa_read_symext_info): Kludge. Turn off SEC_HAS_CONTENTS 520160484Sobrien for all the input symbol extension sections to keep the generic 520260484Sobrien BFD code happy. Temporarily turn it on to read the contents of 520360484Sobrien the symbol extension section. 520460484Sobrien 520560484SobrienSun Sep 11 21:58:59 1994 Jeff Law (law@snake.cs.utah.edu) 520660484Sobrien 520760484Sobrien * config/hppaosf.mh (RANLIB): Do not set. 520860484Sobrien * config/hppabsd.mh (RANLIB): Likewise. 520960484Sobrien 521060484SobrienSun Sep 11 22:50:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 521160484Sobrien 521260484Sobrien * cf-i386lynx.c: Remove #if 0 code. 521360484Sobrien (i386_lynxos_coff_object_p): Remove unused function. 521460484Sobrien (coff_bfd_link_add_symbols): Define. 521560484Sobrien (lynx_link_add_symbols): New static function. 521660484Sobrien * coffcode.h (coff_bfd_link_hash_table_create): If 521760484Sobrien coff_relocate_section is defined, only define this if not already 521860484Sobrien defined. 521960484Sobrien (coff_bfd_link_add_symbols, coff_bfd_final_link): Likewise. 522060484Sobrien 522160484Sobrien * linker.c (_bfd_generic_final_link): Handle 522260484Sobrien bfd_indirect_link_order explicitly, rather than via 522360484Sobrien _bfd_default_link_order. 522460484Sobrien (set_symbol_from_hash): New static function, broken out of 522560484Sobrien _bfd_generic_link_write_global_symbol. 522660484Sobrien (_bfd_generic_link_write_global_symbol): Symbol setting code moved 522760484Sobrien to set_symbol_from_hash; call it. 522860484Sobrien (default_indirect_link_order): Add generic_linker argument. 522960484Sobrien Change all callers. If false, set the generic symbols based on 523060484Sobrien the hash table entries. 523160484Sobrien 523260484SobrienFri Sep 9 11:51:49 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 523360484Sobrien 523460484Sobrien * coffgen.c (coff_get_symtab): Reindented. Removed commented out 523560484Sobrien call to bfd_constructor_entry. 523660484Sobrien 523760484Sobrien Convert m68k COFF to use new COFF backend linker. 523860484Sobrien * coff-m68k.c (coff_relocate_section): Define. 523960484Sobrien * cf-m68klynx.c (coff_rtype_to_howto): Define. 524060484Sobrien (coff_m68k_lynx_rtype_to_howto): New static function. 524160484Sobrien * configure.in (m68kcoff_vec): Build cofflink.o. 524260484Sobrien (m68kcoffun_vec, m68klynx_coff_vec): Likewise. 524360484Sobrien 524460484SobrienThu Sep 8 16:20:38 1994 Steve Chamberlain (sac@jonny.cygnus.com) 524560484Sobrien 524660484Sobrien * coff-h8300.c (h8300_reloc16_extra_cases, case RELBYTE): Flag 524760484Sobrien overflows correctly. 524860484Sobrien 524960484SobrienWed Sep 7 19:01:42 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 525060484Sobrien 525160484Sobrien * libelf.h (struct elf_backend_data): Change second argument of 525260484Sobrien elf_backend_final_write_processing hook to boolean. 525360484Sobrien (struct elf_obj_tdata): Add linker field. 525460484Sobrien * elfcode.h (NAME(bfd_elf,write_object_contents)): Pass value of 525560484Sobrien tdata linker field to final_write_processing, rather than NULL. 525660484Sobrien (elf_bfd_final_link): Don't call final_write_processing hook. Set 525760484Sobrien tdata linker field to true. 525860484Sobrien * elf32-mips.c (mips_elf_final_write_processing): Change type of 525960484Sobrien second argument to boolean. 526060484Sobrien * elf32-hppa.c (elf32_hppa_backend_final_write_processing): 526160484Sobrien Likewise. 526260484Sobrien 526360484Sobrien * coff-go32.c (RTYPE2HOWTO): Fully parenthesize arguments. 526460484Sobrien * coff-i960.c (RTYPE2HOWTO): Likewise. 526560484Sobrien * coff-m88k.c (RTYPE2HOWTO): Likewise. 526660484Sobrien * coff-we32k.c (RTYPE2HOWTO): Likewise. 526760484Sobrien 526860484Sobrien Make i386 COFF use new COFF backend linker. 526960484Sobrien * coff-i386.c (RTYPE2HOWTO): Fully parenthesize arguments. 527060484Sobrien (coff_relocate_section): Define. 527160484Sobrien (coff_i386_rtype_to_howto): New function. 527260484Sobrien * configure.in (i386coff_vec): Use cofflink.o. 527360484Sobrien (i386lynx_coff_vec): Likewise. 527460484Sobrien 527560484Sobrien * coffcode.h (bfd_coff_backend_data): Add new field 527660484Sobrien _bfd_coff_rtype_to_howto. 527760484Sobrien (bfd_coff_rtype_to_howto): Define. 527860484Sobrien (coff_rtype_to_howto): Define to use RTYPE2HOWTO, if not already 527960484Sobrien defined. 528060484Sobrien (bfd_coff_std_swap_table): Initialize new field. 528160484Sobrien * cofflink.c (_bfd_coff_final_link): Allocate section_count + 1 528260484Sobrien section_info structures, since the target_index is 1 based. 528360484Sobrien (coff_link_input_bfd): Set *secpp to bfd_com_section_ptr for a 528460484Sobrien common symbol. Adjust rel_hash by the output reloc count. 528560484Sobrien (_bfd_coff_generic_relocate_section): New function. 528660484Sobrien * libcoff-in.h (_bfd_coff_generic_relocate_section): Declare. 528760484Sobrien * libcoff.h: Rebuild. 528860484Sobrien * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field. 528960484Sobrien * coff-mips.c (mips_ecoff_backend_data): Likewise. 529060484Sobrien 529160484SobrienTue Sep 6 23:28:52 1994 Jeff Law (law@snake.cs.utah.edu) 529260484Sobrien 529360484Sobrien * som.c (som_bfd_derive_misc_symbol_info): Treat undefined code 529460484Sobrien symbols and undefined symbols which no type in the same manner 529560484Sobrien if the associated BFD symbol has BSF_FUNCTION set. For a defined 529660484Sobrien symbol which no type, select a SOM type based on the flags of the 529760484Sobrien section containing the symbol. 529860484Sobrien (som_slurp_symbol_type): Set BSF_FUNCTION for undefined ST_STUB 529960484Sobrien or ST_CODE symbols (importing a non-function code symbol is 530060484Sobrien meaningless in SOM). 530160484Sobrien (som_set_reloc_info): Don't set "offset" to the section's vma; it 530260484Sobrien should always start at zero. 530360484Sobrien 530460484SobrienTue Sep 6 14:51:11 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 530560484Sobrien 530660484Sobrien Add new style linker support to COFF backend. a29k only for now. 530760484Sobrien * cofflink.c: New file. 530860484Sobrien * libcoff-in.h: Include bfdlink.h. 530960484Sobrien (obj_coff_external_syms, obj_coff_strings): Define accessor macro. 531060484Sobrien (obj_coff_sym_hashes): Define accessor macro. 531160484Sobrien (struct coff_tdata): Add fields external_syms, strings, and 531260484Sobrien sym_hashes. 531360484Sobrien (struct coff_link_hash_entry): Define. 531460484Sobrien (struct coff_link_hash_table): Define. 531560484Sobrien (coff_link_hash_lookup, coff_link_hash_traverse): Define. 531660484Sobrien (coff_hash_table): Define. 531760484Sobrien (_bfd_coff_link_hash_table_create): Declare. 531860484Sobrien (_bfd_coff_link_add_symbols, _bfd_coff_final_link): Declare. 531960484Sobrien * coffcode.h (bfd_coff_backend_data): Add fields _bfd_relsz, 532060484Sobrien _bfd_coff_swap_reloc_in, _bfd_coff_sym_is_global, 532160484Sobrien _bfd_coff_compute_section_file_positions, 532260484Sobrien _bfd_coff_relocate_section. 532360484Sobrien (bfd_coff_relsz, bfd_coff_swap_reloc_in): Define. 532460484Sobrien (bfd_coff_sym_is_global): Define. 532560484Sobrien (bfd_coff_compute_section_file_positions): Define. 532660484Sobrien (bfd_coff_relocate_section): Define. 532760484Sobrien (coff_mkobject_hook): Initialize obj_raw_syment_count and 532860484Sobrien obj_conv_table_size. 532960484Sobrien (coff_compute_section_file_positions): Set target_index of all 533060484Sobrien sections. Set output_has_begun field. 533160484Sobrien (coff_write_object_contents): Don't set target_index; now done by 533260484Sobrien coff_compute_section_file_positions. Remove obsolete handling of 533360484Sobrien scn_base and data_base. Don't bother to check that target_index 533460484Sobrien is positive, since it always is. Remove use of pad, which is 533560484Sobrien always zero. Check obj_raw_syment_count, not bfd_get_symcount, 533660484Sobrien for the number of symbols, but only write them out if 533760484Sobrien bfd_get_symcount is non-zero. Don't check obj_raw_syment_count 533860484Sobrien until after coff_write_symbols is called. 533960484Sobrien (coff_slurp_symbol_table): Use obj_raw_syment_count, not 534060484Sobrien bfd_get_symcount for the number of symbols. Don't set 534160484Sobrien obj_conv_table_size. 534260484Sobrien (coff_sym_is_global): New static function or macro. 534360484Sobrien (coff_slurp_reloc_table): Call coff_swap_reloc_in, not 534460484Sobrien bfd_swap_reloc_in. 534560484Sobrien (coff_bfd_link_hash_table_create): If coff_relocate_section is 534660484Sobrien defined, define as _bfd_coff_link_hash_table_create. 534760484Sobrien (coff_bfd_link_add_symbols): Similar change. 534860484Sobrien (coff_bfd_final_link): Similar change. 534960484Sobrien (coff_relocate_section): Define as NULL if not defined. 535060484Sobrien (bfd_coff_std_swap_table): Initialize new fields. 535160484Sobrien * coffgen.c (coff_real_object_p): Don't set obj_raw_syment_count 535260484Sobrien and obj_conv_table_size here. 535360484Sobrien (coff_count_linenumbers): Reindent. If bfd_get_symcount is zero, 535460484Sobrien add up the line numbers from the sections. 535560484Sobrien (coff_write_symbols): Set obj_raw_syment_count, not 535660484Sobrien bfd_get_symcount. 535760484Sobrien (coff_pointerize_aux): Don't pointerize a nonpositive x_endndx 535860484Sobrien field. 535960484Sobrien (coff_get_normalized_symtab): Use obj_raw_syment_count, not 536060484Sobrien bfd_get_symcount. 536160484Sobrien (coff_print_symbol): If auxp->fix_end, print x_endndx value. 536260484Sobrien * coffswap.h (coff_swap_reloc_in): Rename from bfd_swap_reloc_in. 536360484Sobrien Reindent. Change argument type to PTR. 536460484Sobrien * coff-a29k.c (coff_a29k_relocate_section): New static function. 536560484Sobrien (coff_relocate_section): Define. 536660484Sobrien * configure.in (a29kcoff_big_vec): Compile cofflink.o. 536760484Sobrien * coff-alpha.c (alpha_ecoff_backend_data): Initialize new fields. 536860484Sobrien * coff-mips.c (mips_ecoff_backend_data): Likewise. 536960484Sobrien * libcoff.h: Rebuilt. 537060484Sobrien * Makefile.in: Rebuilt dependencies. 537160484Sobrien (BFD32_BACKENDS): Add cofflink.o. 537260484Sobrien (CFILES): Add cofflink.c. 537360484Sobrien 537460484SobrienTue Sep 6 14:00:45 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 537560484Sobrien 537660484Sobrien * coffgen.c (coff_print_symbol, case bfd_symbol_print_all): Check 537760484Sobrien for section symbol, and print its aux fields with appropriate 537860484Sobrien labels. 537960484Sobrien 538060484Sobrien * Makefile.in (ALL_MACHINES): Added cpu-arm.o. 538160484Sobrien 538260484SobrienSun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org) 538360484Sobrien 538460484Sobrien * aoutx.h (NAME(aout,machine_type)): Recognize the ARM processor. 538560484Sobrien * archures.c, config.bfd, configure.host, libaout.h, reloc.c, 538660484Sobrien targets.c: Add support for the ARM. 538760484Sobrien * cpu-arm.c, riscix.c, config/riscix.mh, config/riscix.mt: New files. 538860484Sobrien 538960484Sobrien * aoutx.h (add_to_stringtable): Check that str isn't a NULL pointer. 539060484Sobrien 539160484SobrienFri Sep 2 14:10:30 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 539260484Sobrien 539360484Sobrien * reloc.c (enum bfd_reloc_code_real): Rewrote definition to use 539460484Sobrien new "chew" commands for simultaneous definition of enumerator and 539560484Sobrien enumerator name table. 539660484Sobrien (bfd_get_reloc_code_name): New function, for retrieving a symbolic 539760484Sobrien name associated with an enumerator. 539860484Sobrien * libbfd.h, bfd-in2.h: Regenerated. 539960484Sobrien 540060484SobrienTue Aug 30 21:24:54 1994 Jeff Law (law@snake.cs.utah.edu) 540160484Sobrien 540260484Sobrien * som.c (som_write_fixups, case R_ENTRY): Handle case where no 540360484Sobrien unwind descriptor information is available. 540460484Sobrien 540560484SobrienTue Aug 30 11:43:30 1994 Eric Youngdale (ericy@cais.cais.com) 540660484Sobrien 540760484Sobrien * elfcode.h (NAME(bfd_elf,size_dynamic_sections)): Add soname 540860484Sobrien argument, and use it to set DT_SONAME dynamic entry. 540960484Sobrien * bfd-in.h (bfd_elf32_size_dynamic_sections): Update prototype. 541060484Sobrien (bfd_elf64_size_dynamic_sections): Update prototype. 541160484Sobrien * bfd-in2.h: Rebuilt. 541260484Sobrien 541360484SobrienFri Aug 26 15:47:57 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 541460484Sobrien 541560484Sobrien * coffgen.c (coff_real_object_p): Set obj_raw_syment_count. 541660484Sobrien (coff_get_normalized_symtab): Verify obj_raw_syment_count, rather 541760484Sobrien than setting it. 541860484Sobrien 541960484SobrienThu Aug 25 10:44:53 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 542060484Sobrien 542160484Sobrien * archive.c (bsd_write_armap): Remove host dependencies. 542260484Sobrien 542360484Sobrien * aoutx.h (add_to_stringtab): Check for _bfd_stringtab_add error 542460484Sobrien before adding BYTES_IN_WORD. 542560484Sobrien 542660484Sobrien * coffgen.c (coff_find_nearest_line): Look for the best C_FILE, 542760484Sobrien not merely the first. 542860484Sobrien 542960484Sobrien * coffgen.c (coff_write_alien_symbol): If we are not using the 543060484Sobrien symbol, clear the name so that it is not put in the string table. 543160484Sobrien From Antti.Miettinen@ntc.nokia.com. 543260484Sobrien 543360484SobrienWed Aug 24 11:49:19 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 543460484Sobrien 543560484Sobrien * coffgen.c (coff_print_symbol): Cast pointer different to long 543660484Sobrien and use %ld to print it. 543760484Sobrien * osf-core.c (osf_core_core_file_p): Remove unused variable 543860484Sobrien dseccnt. 543960484Sobrien * ecoffswap.h (ecoff_swap_ext_out): If ECOFF_64, clear remaining 544060484Sobrien bytes in bits2. 544160484Sobrien 544260484Sobrien * configure.host, config.bfd: Change i[34]86 to i[345]86. 544360484Sobrien * coffgen.c (coff_real_object_p): Set obj_conv_table_size here, 544460484Sobrien rather than waiting until coff_slurp_symbol_table. 544560484Sobrien (coff_write_alien_symbol): Just ignore BSF_DEBUGGING symbols. 544660484Sobrien From Antti.Miettinen@ntc.nokia.com. 544760484Sobrien 544860484Sobrien * section.c (bfd_make_section_anyway): Fix failure check of 544960484Sobrien bfd_make_empty_symbol. From Antti.Miettinen@ntc.nokia.com. 545060484Sobrien 545160484Sobrien * aoutx.h (translate_to_native_sym_flags): Use the output_section 545260484Sobrien (and output_offset) if there is one. 545360484Sobrien 545460484Sobrien * aoutx.h (aout_link_check_archive_element): Discard the symbols 545560484Sobrien if the archive element was not needed. 545660484Sobrien 545760484Sobrien * aoutx.h (aout_get_external_symbols): Ensure that a zero string 545860484Sobrien index yields an empty string. 545960484Sobrien (aout_link_write_symbols): If info->keep_memory is false, use name 546060484Sobrien from original hash table entry, not from entry in *sym_hash. 546160484Sobrien 546260484Sobrien * aoutx.h (struct aout_final_link_info): Add fields contents, 546360484Sobrien relocs, symbol_map and output_syms. 546460484Sobrien (NAME(aout,final_link)): Work out the largest section size, reloc 546560484Sobrien size, and number of symbols. Use them to preallocate buffers that 546660484Sobrien are large enough for all cases. 546760484Sobrien (aout_link_input_bfd): Use preallocated symbol_map. 546860484Sobrien (aout_link_write_symbols): Remove symbol_map argument; use 546960484Sobrien preallocated symbol_map instead. Change all callers. Use 547060484Sobrien preallocated output_syms. 547160484Sobrien (aout_link_input_section): Remove symbol_map argument. Change all 547260484Sobrien callers. Use preallocated contents and relocs. 547360484Sobrien (aout_link_input_section_std): Remove symbol_map argument; use 547460484Sobrien preallocated symbol_map instead. Change all callers. 547560484Sobrien (aout_link_input_section_ext): Likewise. 547660484Sobrien 547760484SobrienTue Aug 23 10:51:09 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 547860484Sobrien 547960484Sobrien * archive.c (_bfd_write_archive_contents): Don't update the 548060484Sobrien symbol map timestamp if there is no symbol map. From 548160484Sobrien schwab@issan.informatik.uni-dortmund.de (Andreas Schwab). 548260484Sobrien 548360484SobrienMon Aug 22 12:26:42 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 548460484Sobrien 548560484Sobrien * targets.c (BFD_JUMP_TABLE_ARCHIVE): Add _update_armap_timestamp. 548660484Sobrien (bfd_target): Add field _bfd_update_armap_timestamp. 548760484Sobrien * bfd.c (bfd_update_armap_timestamp): Define. 548860484Sobrien * bfd-in2.h: Rebuilt. 548960484Sobrien * libbfd-in.h (_bfd_noarchive_update_armap_timestamp): Define. 549060484Sobrien (_bfd_archive_bsd_update_armap_timestamp): Declare. 549160484Sobrien (_bfd_archive_coff_update_armap_timestamp): Define. 549260484Sobrien * libbfd.h: Rebuilt. 549360484Sobrien * archive.c (_bfd_write_archive_contents): Call 549460484Sobrien bfd_update_armap_timestamp instead of checking for a BSD archive 549560484Sobrien and calling bsd_update_armap_timestamp. 549660484Sobrien (_bfd_archive_bsd_update_armap_timestamp): Rename from 549760484Sobrien _bsd_update_armap_timestamp. Don't assume that armap_datepos is 549860484Sobrien already set. 549960484Sobrien * aout-target.h (MY_update_armap_timestamp): Define if not already 550060484Sobrien defined. 550160484Sobrien * coff-rs6000.c (rs6000coff_update_armap_timestamp): Define. 550260484Sobrien * ieee.c (ieee_update_armap_timestamp): Define. 550360484Sobrien * libecoff.h (_bfd_ecoff_update_armap_timestamp): Define. 550460484Sobrien * oasys.c (oasys_update_armap_timestamp): Define. 550560484Sobrien * som.c (som_update_armap_timestamp): Define. 550660484Sobrien 550760484Sobrien * hash.c: Copy string hash functions from aoutx.h. 550860484Sobrien * aoutx.h: String hash functions moved to hash.c. Retain 550960484Sobrien simplified versions of add_to_stringtab and emit_stringtab. 551060484Sobrien Change all callers to use new function and structure names. 551160484Sobrien * libbfd-in.h (_bfd_stringtab_init, _bfd_stringtab_free): Declare. 551260484Sobrien (_bfd_stringtab_size, _bfd_stringtab_add): Declare. 551360484Sobrien (_bfd_stringtab_emit): Declare. 551460484Sobrien * libbfd.h: Rebuilt. 551560484Sobrien 551660484SobrienMon Aug 22 10:49:37 1994 Eric Youngdale (ericy@cais.cais.com) 551760484Sobrien 551860484Sobrien * i386linux.c (linux_add_one_symbol): Create a fixup for any 551960484Sobrien defined absolute symbol, not just GOT or PLT symbols. 552060484Sobrien (linux_tally_symbols): Correct handling of references to defined 552160484Sobrien symbols. 552260484Sobrien 552360484SobrienThu Aug 18 16:29:57 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 552460484Sobrien 552560484Sobrien Get ld -x -r to handle a.out set symbols correctly. 552660484Sobrien * aoutx.h (adjust_o_magic): If the .bss VMA was set outside of 552760484Sobrien BFD, pad the .data section up to the VMA of the .bss section. 552860484Sobrien (aout_link_add_symbols): If a set symbol does not get modified, 552960484Sobrien treat it as a local symbol. 553060484Sobrien (aout_link_write_symbols): Set the value of set symbols 553160484Sobrien correctly. Don't discard set symbols even if discarding local 553260484Sobrien symbols. 553360484Sobrien (aout_link_write_other_symbol): Don't abort on bfd_link_hash_new, 553460484Sobrien since it can now happen for set symbols. 553560484Sobrien 553660484Sobrien * elfcode.h (elf_fake_sections): Just check for ".rela" and 553760484Sobrien ".rel", not ".rela." and ".rel."; make this work by checking 553860484Sobrien use_rela_p. 553960484Sobrien * elf32-i386.c (elf_i386_check_relocs): Just check for ".rel", not 554060484Sobrien ".rel." 554160484Sobrien (elf_i386_size_dynamic_sections): Likewise. 554260484Sobrien (elf_i386_relocate_section): Likewise. 554360484Sobrien * elf32-sparc.c (elf32_sparc_check_relocs): Just check for 554460484Sobrien ".rela", not ".rela." 554560484Sobrien (elf32_sparc_size_dynamic_sections): Likewise. 554660484Sobrien (elf32_sparc_relocate_section): Likewise. 554760484Sobrien 554860484SobrienWed Aug 17 16:54:18 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 554960484Sobrien 555060484Sobrien * linker.c (_bfd_generic_link_add_archive_symbols): Initialize 555160484Sobrien PASS to the old value + 1. 555260484Sobrien 555360484Sobrien * coffgen.c (coff_get_normalized_symtab): If a C_FILE symbol has 555460484Sobrien no aux entries, use the symbol name as the file name. 555560484Sobrien (coff_find_nearest_line): Look for the right C_FILE symbol, rather 555660484Sobrien than always using the first one. If there is a debugging symbol 555760484Sobrien after a function symbol, skip it. Add the section VMA to the line 555860484Sobrien offset, since it was subtracted out in coff_slurp_line_table. 555960484Sobrien 556060484SobrienTue Aug 16 16:53:00 1994 Jeff Law (law@snake.cs.utah.edu) 556160484Sobrien 556260484Sobrien * som.c (som_prep_headers): If writing some form of an executable, 556360484Sobrien allocate and attach an exec header to the BFD private data. 556460484Sobrien (som_begin_writing): Don't fill fields of the exec header based 556560484Sobrien on BFD private data here (like the exec flags). Do not write 556660484Sobrien the exec header here. 556760484Sobrien (som_write_headers): Instead do it here. 556860484Sobrien * som.h (struct somdata): New field "exec_hdr" for the executable 556960484Sobrien file header. 557060484Sobrien (obj_som_exec_hdr): New accessor macro. 557160484Sobrien 557260484SobrienTue Aug 16 00:12:31 1994 Eric Youngdale (ericy@cais.cais.com) 557360484Sobrien 557460484Sobrien * i386linux.c (linux_link_create_dynamic_sections): Create section 557560484Sobrien named .linux-dynamic, not .dynamic. 557660484Sobrien (linux_add_one_symbol): Use .linux-dynamic, not .dynamic. 557760484Sobrien (bfd_linux_size_dynamic_sections): Likewise. 557860484Sobrien (linux_finish_dynamic_link): Likewise. 557960484Sobrien 558060484SobrienMon Aug 15 12:16:56 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 558160484Sobrien 558260484Sobrien * coffgen.c (STRING_SIZE_SIZE): Define. 558360484Sobrien (coff_fix_symbol_name): Use STRING_SIZE_SIZE, not 4. 558460484Sobrien (coff_write_symbols, build_string_table): Likewise. 558560484Sobrien (coff_get_normalized_symtab): Likewise. 558660484Sobrien 558760484Sobrien * libcoff-in.h (obj_symbol_slew): Don't define. 558860484Sobrien (struct coff_tdata): Remove unused fields index_slew, raw_linenos, 558960484Sobrien and flags. 559060484Sobrien * libcoff.h: Rebuilt. 559160484Sobrien * coffcode.h (coff_mkobject): Don't initialize raw_linenos. 559260484Sobrien (coff_mkobject_hook): Don't initialize flags. 559360484Sobrien 559460484Sobrien * aout-target.h (MY_zmagic_contiguous): Define as 0 if not already 559560484Sobrien defined. 559660484Sobrien (MY(backend_data)): Use MY_zmagic_contiguous, not hardcoded 0. 559760484Sobrien * i386linux.c (MY_zmagic_contiguous): Define. 559860484Sobrien 559960484Sobrien * elfcode.h (bfd_section_from_shdr): If a SHT_SYMTAB section in a 560060484Sobrien shared object has SHF_ALLOC set, create a BFD section for it. 560160484Sobrien (elf_section_from_bfd_section): There may be a BFD section for a 560260484Sobrien SHT_SYMTAB section. 560360484Sobrien 560460484Sobrien * coffcode.h (styp_to_sec_flags): Add name argument. If no flags 560560484Sobrien are recognized, chose section flags based on the name. 560660484Sobrien (bfd_coff_backend_data): _bfd_styp_to_sec_flags_hook field: Add 560760484Sobrien name argument. 560860484Sobrien (bfd_coff_styp_to_sec_flags_hook): Add name argument. 560960484Sobrien (coff_compute_section_file_positions): Don't adjust the section 561060484Sobrien position by COFF_PAGE_SIZE unless SEC_ALLOC is set. 561160484Sobrien * libcoff.h: Rebuilt. 561260484Sobrien * coffgen.c (make_a_section_from_file): Pass section name to 561360484Sobrien bfd_coff_styp_to_sec_flags_hook. 561460484Sobrien * ecoff.c (_bfd_ecoff_styp_to_sec_flags): Add unused name 561560484Sobrien argument. 561660484Sobrien * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Add name argument to 561760484Sobrien prototype. 561860484Sobrien 561960484SobrienFri Aug 12 11:22:40 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 562060484Sobrien 562160484Sobrien * elfcode.h (section_from_elf_index): Correct check for invalid 562260484Sobrien section index. 562360484Sobrien 562460484Sobrien * elfcode.h (elf_link_add_object_symbols): If there is no symbol 562560484Sobrien table, try using the dynamic symbol table. From Eric Youngdale 562660484Sobrien <ericy@cais.cais.com>. 562760484Sobrien 562860484Sobrien * configure.host (sparc-*-solaris2*): Use solaris2, not sysv4. 562960484Sobrien The linker depends upon configuring for solaris2. 563060484Sobrien * hosts/solaris2.h: New file; include hosts/sysv4.h. 563160484Sobrien * config/solaris2.mh: New file; copy of config/sysv4.mh. 563260484Sobrien 563360484SobrienWed Aug 10 13:09:38 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 563460484Sobrien 563560484Sobrien * aoutx.h (adjust_z_magic): Make sure data section is padded to 563660484Sobrien page boundary when the VMA is set by the calling program. From 563760484Sobrien Eric Youngdale <ericy@cais.cais.com>. 563860484Sobrien 563960484SobrienMon Aug 8 17:18:49 1994 Stan Shebs (shebs@andros.cygnus.com) 564060484Sobrien 564160484Sobrien Update to ns32k support, from Ian Dall (dall@hfrd.dsto.gov.au). 564260484Sobrien * aout-ns32k.c: Add declarations that were in aout-ns32k.h, change 564360484Sobrien declarations to traditional form. 564460484Sobrien (MY_reloc_howto, MY_put_reloc): Change from macro to function. 564560484Sobrien (ns32k_relocate_contents): New function. 564660484Sobrien * aout-ns32k.h: Remove. 564760484Sobrien * cpu-ns32k.c: Add declarations that were in aout-ns32k.h, change 564860484Sobrien declarations to traditional form. 564960484Sobrien (ns32k_final_link_relocate): Call ns32k_relocate_contents. 565060484Sobrien * netbsd532.c: Reformat to standards, add copyright notice. 565160484Sobrien (ARCH): Don't define. 565260484Sobrien (aout-ns32k.h): Don't include. 565360484Sobrien * pc532-mach.c: Ditto. 565460484Sobrien 565560484SobrienMon Aug 8 17:55:52 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 565660484Sobrien 565760484Sobrien * coff-i960.c (coff_i960_relocate): Don't try to convert relocs 565860484Sobrien against common symbols. 565960484Sobrien 566060484SobrienSat Aug 6 22:27:30 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 566160484Sobrien 566260484Sobrien * irix-core.c (irix_core_core_file_p): Ignore sections that 566360484Sobrien are not contained in the core file. 566460484Sobrien 566560484SobrienThu Aug 4 11:32:23 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 566660484Sobrien 566760484Sobrien * coff-m68k.c (m68k_reloc_type_lookup): New function. 566860484Sobrien (coff_bfd_reloc_type_lookup): Define. 566960484Sobrien * cf-m68klynx.c (_bfd_m68kcoff_reloc_type_lookup): Define. 567060484Sobrien 567160484Sobrien * elfcode.h (elf_bfd_final_link): Force the vma of sections which 567260484Sobrien do not have SEC_ALLOC set to be 0. This is needed to handle 567360484Sobrien relocs against debugging sections. 567460484Sobrien 567560484SobrienWed Aug 3 16:45:41 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 567660484Sobrien 567760484Sobrien * coff-i960.c (coff_i960_relocate): Rewrote to change relocs 567860484Sobrien against locally defined symbols into relocs against section 567960484Sobrien symbols, for VxWorks 5.1. 568060484Sobrien 568160484SobrienWed Aug 3 10:34:37 1994 Eric Youngdale (ericy@cais.cais.com) 568260484Sobrien 568360484Sobrien * i386linux.c (linux_add_one_symbol): Only handle 568460484Sobrien SHARABLE_CONFLICTS specially if BSF_CONSTRUCTOR is set. Set hashp 568560484Sobrien for a GOT or PLT symbol. Set jump field of fixup for a PLT symbol. 568660484Sobrien (linux_tally_symbols): Check section of real symbol. When looking 568760484Sobrien for a builtin fixup, check builtin and jump flags. Create no more 568860484Sobrien than one fixup, and always create one if the real symbol is in the 568960484Sobrien absolute section. Only strip absolute symbols. 569060484Sobrien 569160484SobrienWed Aug 3 05:08:24 1994 D. V. Henkel-Wallace (gumby@cygnus.com) 569260484Sobrien 569360484Sobrien * coffcode.h (coff_write_object_contents): set internal_a.magic to 569460484Sobrien LYNXCOFFMAGIC whenever 68k, SPARC or i386 LynxOS 569560484Sobrien (yes, they have the same magic number!) 569660484Sobrien 569760484SobrienTue Aug 2 10:43:21 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 569860484Sobrien 569960484Sobrien * hp300hpux.c (BMAGIC): Define as HPUX_DOT_O_MAGIC, to make test 570060484Sobrien in aoutx.h work correctly. 570160484Sobrien 570260484Sobrien * coff-i960.c (coff_i960_relocate): New function. 570360484Sobrien (howto_rellong, howto_iprmed): Use it as special_function. 570460484Sobrien 570560484Sobrien * libbfd-in.h: Move declarations of bfd_read, bfd_write, bfd_seek, 570660484Sobrien bfd_tell, bfd_flush, and bfd_stat from here... 570760484Sobrien * bfd-in.h: ...to here, to make them visible to programs which 570860484Sobrien know more about the object file format than BFD does. 570960484Sobrien * libbfd.h, bfd-in2.h: Rebuilt. 571060484Sobrien 571160484SobrienMon Aug 1 17:55:53 1994 Fred Fish (fnf@cygnus.com) 571260484Sobrien 571360484Sobrien * ptrace-core.c (ptrace_unix_core_file_p): Convert zalloc usage 571460484Sobrien to bfd_zalloc. 571560484Sobrien 571660484SobrienMon Aug 1 12:04:40 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 571760484Sobrien 571860484Sobrien * elf64-sparc.c (ELF_MAXPAGESIZE): Define. 571960484Sobrien 572060484Sobrien ELF linker patches from Eric Youngdale <ericy@cais.cais.com>. 572160484Sobrien * elfcode.h (elf_link_create_dynamic_sections): Set type of 572260484Sobrien _DYNAMIC to STT_OBJECT. 572360484Sobrien (NAME(bfd_elf,record_link_assignment)): Always create hash table 572460484Sobrien entry. Set type to STT_OBJECT. 572560484Sobrien (elf_link_output_extsym): Don't set type of weak defined symbol to 572660484Sobrien STB_WEAK if symbol was referenced. 572760484Sobrien (map_program_segments): Check DYNAMIC as well as EXEC_P. 572860484Sobrien (assign_file_positions_except_relocs): Likewise. 572960484Sobrien * elf32-i386.c (elf_i386_create_dynamic_sections): Set type of 573060484Sobrien _GLOBAL_OFFSET_TABLE to STT_OBJECT. 573160484Sobrien (elf_i386_check_relocs): Ignore local PLT32 relocs. 573260484Sobrien (elf_i386_relocate_section): Treat local PLT32 relocs as PC32. 573360484Sobrien 573460484Sobrien * elfcode.h (elf_adjust_dynamic_symbol): Correct weak symbol 573560484Sobrien handling again. 573660484Sobrien 573760484Sobrien * elfcode.h (elf_slurp_reloc_table): Don't try to read the relocs 573860484Sobrien if there aren't any. 573960484Sobrien 574060484Sobrien * configure.host (sparc-*-solaris2*): Use sysv4, not solaris2. 574160484Sobrien * hosts/solaris2.h: Remove. 574260484Sobrien * config/solaris2.mh: Remove. 574360484Sobrien 574460484SobrienSun Jul 31 14:27:04 1994 Jeff Law (law@snake.cs.utah.edu) 574560484Sobrien 574660484Sobrien * elf32-hppa.c, elf32-hppa.h: Update comment reflecting which 574760484Sobrien HPPA ELF spec the code implements. 574860484Sobrien 574960484SobrienTue Jul 26 17:38:01 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 575060484Sobrien 575160484Sobrien * cpu-i960.c (MAX_ARCH): New macro. 575260484Sobrien (compatible): Use it in computing array bounds. Put comma after 575360484Sobrien last entry in array, for regularity. 575460484Sobrien (arch_info_struct): Adjust spacing for easier reading. 575560484Sobrien 575660484Sobrien * coff-i960.c (howto_rellong, howto_iprmed, howto_optcall): Use 575760484Sobrien HOWTO macro. 575860484Sobrien 575960484Sobrien * cpu-i960.c (JX): Define as bfd_mach_i960_jx. 576060484Sobrien (scan_960_mach): Recognize jx machine. 576160484Sobrien (MAX_ARCH): Define to be JX. 576260484Sobrien (compatible): Add JX row to array. 576360484Sobrien (arch_info_struct): Add JX entry. 576460484Sobrien 576560484Sobrien * archures.c (bfd_mach_i960_jx): New macro. 576660484Sobrien * bfd-in2.h: Regenerated. 576760484Sobrien 576860484Sobrien * coffcode.h (coff_set_arch_mach_hook): For F_I960JX, set machine 576960484Sobrien to bfd_mach_i960_jx. 577060484Sobrien (coff_set_flags): For bfd_mach_i960_jx, set F_I960JX. 577160484Sobrien 577260484SobrienTue Jul 26 11:04:00 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 577360484Sobrien 577460484Sobrien * elfcode.h (elf_adjust_dynamic_symbol): When handling a weak 577560484Sobrien symbol, correct check to see whether the equivalent normal symbol 577660484Sobrien was referenced. 577760484Sobrien 577860484Sobrien Add support for creating shared libraries under i386 ELF and SPARC 577960484Sobrien ELF. Based on patches by Eric Youngdale <ericy@cais.cais.com>. 578060484Sobrien * libelf.h (struct elf_link_hash_entry): Remove copy_offset field. 578160484Sobrien Add got_offset and plt_offset fields. 578260484Sobrien (ELF_LINK_HASH_REF_DYNAMIC_MULTIPLE): Don't define. 578360484Sobrien (ELF_LINK_HASH_DEF_DYNAMIC_MULTIPLE): Don't define. 578460484Sobrien (ELF_LINK_HASH_NEEDS_COPY): Define. 578560484Sobrien (struct elf_backend_data): Add check_relocs field. 578660484Sobrien (struct bfd_elf_section_data): Change relocs from PTR to 578760484Sobrien Elf_Internal_Rela *. 578860484Sobrien (struct elf_obj_tdata): Add local_got_offsets field. 578960484Sobrien (elf_local_got_offsets): Define accessor macro. 579060484Sobrien (bfd_elf32_link_create_dynamic_sections): Declare. 579160484Sobrien (bfd_elf32_link_record_dynamic_symbol): Declare. 579260484Sobrien (bfd_elf64_link_create_dynamic_sections): Declare. 579360484Sobrien (bfd_elf64_link_record_dynamic_symbol): Declare. 579460484Sobrien * elfcode.h (elf_slurp_reloc_table): Don't use the section data 579560484Sobrien relocs field. 579660484Sobrien (elf_link_record_dynamic_symbol): Make globally visible. Use 579760484Sobrien macro to rename to NAME(bfd_elf,link_record_dynamic_symbol). 579860484Sobrien (elf_link_add_object_symbols): If creating a shared library, put 579960484Sobrien make all local symbols dynamic. Don't bother with the 580060484Sobrien DYNAMIC_MULTIPLE flags. Call the check_relocs backend function if 580160484Sobrien it is defined. 580260484Sobrien (elf_link_create_dynamic_sections): Make globally visible. Use 580360484Sobrien macro to rename to NAME(bfd_elf,link_create_dynamic_sections). If 580460484Sobrien creating a shared library, make sure that _DYNAMIC is added as a 580560484Sobrien dynamic symbol. 580660484Sobrien (elf_link_read_relocs): New function. 580760484Sobrien (NAME(bfd_elf,record_link_assignment)): If creating a shared 580860484Sobrien library, always create symbols, and always make them dynamic. 580960484Sobrien (elf_bfd_final_link): Permit creation of shared libraries. 581060484Sobrien (elf_link_input_bfd): Use elf_link_read_relocs to get the relocs. 581160484Sobrien * elf.c (_bfd_elf_link_hash_newfunc): Don't initialize 581260484Sobrien copy_offset. Initialize got_offset and plt_offset. 581360484Sobrien * elf32-target.h (elf_backend_check_relocs): Define as 0 if not 581460484Sobrien defined. 581560484Sobrien (elf32_bed): Initialize check_relocs field. 581660484Sobrien * elf64-target.h (elf_backend_check_relocs): Define as 0 if not 581760484Sobrien defined. 581860484Sobrien (elf64_bed): Initialize check_relocs field. 581960484Sobrien * elf32-i386.c (elf_howto_table): Change R_386_PLT32 and 582060484Sobrien R_386_GOTPC to be pc_relative and pcrel_offset. 582160484Sobrien (elf_i386_pic_plt0_entry): Define. 582260484Sobrien (elf_i386_pic_plt_entry): Define. 582360484Sobrien (elf_i386_create_dynamic_sections): Create a .got.plt section, and 582460484Sobrien define _GLOBAL_OFFSET_TABLE_ at the start of it. If creating a 582560484Sobrien shared library, make sure that _GLOBAL_OFFSET_TABLE_ is added as a 582660484Sobrien dynamic symbol. Don't create .rel.bss if creating a shared 582760484Sobrien library. 582860484Sobrien (elf_i386_check_relocs): New function. 582960484Sobrien (elf_i386_adjust_dynamic_symbol): Don't make a PLT entry if the 583060484Sobrien symbol already has one. When making a PLT entry, set plt_offset. 583160484Sobrien Don't create a copy reloc when creating a shared library. Don't 583260484Sobrien set copy_offset, just set ELF_LINK_HASH_NEEDS_COPY. 583360484Sobrien (elf_i386_allocate_dynamic_section): Remove. 583460484Sobrien (elf_i386_size_dynamic_sections): Look through all the sections 583560484Sobrien rather than assuming we know their names. Remove any empty reloc 583660484Sobrien or plt sections. Only add a DT_DEBUG entry if not creating a 583760484Sobrien shared library. Only add a DT_PLTGOT entry if there is a PLT. 583860484Sobrien Add a DT_TEXTREL entry if required. 583960484Sobrien (elf_i386_relocate_section): Permit undefined symbols when 584060484Sobrien creating a shared library. Handle the special relocation types 584160484Sobrien specially. 584260484Sobrien (elf_i386_finish_dynamic_symbol): Create a PLT entry if plt_offset 584360484Sobrien is set. If creating a shared library, produce a PIC PLT entry. 584460484Sobrien Only mark a PLT symbol as undefined if it was not defined by a 584560484Sobrien regular object file. Create a GOT entry if got_offset is set. 584660484Sobrien Create a copy reloc if ELF_LINK_HASH_NEEDS_COPY is set. 584760484Sobrien (elf_i386_finish_dynamic_sections): Change the handling of 584860484Sobrien DT_RELSZ to simply subtract out the size of .rel.plt. If creating 584960484Sobrien a shared library, produce PIC PLT code. 585060484Sobrien (elf_backend_check_relocs): Define. 585160484Sobrien * elf32-sparc.c (elf_sparc_howto_table): Change R_SPARC_GOT10, 585260484Sobrien R_SPARC_GOT22, and R_SPARC_PC10 to not warn about reloc overflow. 585360484Sobrien (elf32_sparc_create_dynamic_sections): If creating a shared 585460484Sobrien library, make sure that _GLOBAL_OFFSET_TABLE_ is added as a 585560484Sobrien dynamic symbol, and set the type to STT_OBJECT. Likewise for 585660484Sobrien _PROCEDURE_LINKAGE_TABLE_. Don't create .rel.bss if creating a 585760484Sobrien shared library. 585860484Sobrien (elf32_sparc_check_relocs): New function. 585960484Sobrien (elf32_sparc_adjust_dynamic_symbol): Don't make a PLT entry if the 586060484Sobrien symbol already has one. When making a PLT entry, set plt_offset. 586160484Sobrien Don't create a copy reloc when creating a shared library. Don't 586260484Sobrien set copy_offset, just set ELF_LINK_HASH_NEEDS_COPY. 586360484Sobrien (elf32_sparc_allocate_dynamic_section): Remove. 586460484Sobrien (elf32_sparc_size_dynamic_sections): Look through all the sections 586560484Sobrien rather than assuming we know their names. Only add a DT_DEBUG 586660484Sobrien entry if not creating a shared library. Add a DT_TEXTREL entry if 586760484Sobrien required. 586860484Sobrien (elf32_sparc_relocate_section): Permit undefined symbols when 586960484Sobrien creating a shared library. Handle the special relocation types 587060484Sobrien specially. 587160484Sobrien (elf32_sparc_finish_dynamic_symbol): Create a PLT entry if plt_offset 587260484Sobrien is set. Only mark a PLT symbol as undefined if it was not defined 587360484Sobrien by a regular object file. Create a GOT entry if got_offset is 587460484Sobrien set. Create a copy reloc if ELF_LINK_HASH_NEEDS_COPY is set. 587560484Sobrien (elf32_sparc_finish_dynamic_sections): Store dynobj in a local 587660484Sobrien variable. 587760484Sobrien (elf_backend_check_relocs): Define. 587860484Sobrien 587960484SobrienMon Jul 25 12:21:07 1994 Stan Shebs (shebs@andros.cygnus.com) 588060484Sobrien 588160484Sobrien * configure.in (pc532mach_vec): Change to pc532machaout_vec. 588260484Sobrien * config.bfd (ns32k-*-netbsd*): Use ns32k-nbsd as bfd_name. 588360484Sobrien * Makefile.in (ALL_MACHINES): Add cpu-ns32k.o. 588460484Sobrien (BFD32_BACKENDS): Add aout-ns32k.o, netbsd532.o, m88kmach3.o, 588560484Sobrien pc532-mach.o. 588660484Sobrien * targets.c (pc532machaout_vec): Use instead of pc532mach_vec. 588760484Sobrien * config/pc532-mach.mt (DEFAULT_VECTOR): Ditto. 588860484Sobrien (SELECT_VECS): Remove. 588960484Sobrien * config/ns32k-nbsd.mt: New file, was ns32k-netbsd.mt. 589060484Sobrien * config/ns32k-netbsd.mt: Remove, name too long. 589160484Sobrien 589260484SobrienFri Jul 22 11:07:14 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 589360484Sobrien 589460484Sobrien * linker.c (generic_link_check_archive_element): When changing a 589560484Sobrien symbol to common, set the alignment. 589660484Sobrien (_bfd_generic_link_add_one_symbol): When creating a common symbol, 589760484Sobrien set the alignment. 589860484Sobrien * aoutx.h (aout_link_check_ar_symbols): When changing a symbol to 589960484Sobrien common, set the alignment. 590060484Sobrien (aout_link_add_symbols): Restrict the alignment of a common symbol 590160484Sobrien to the alignment power given by the architecture. 590260484Sobrien * libelf.h (struct elf_link_hash_entry): Remove align field. Add 590360484Sobrien copy_offset field. 590460484Sobrien * elfcode.h (elf_link_add_object_symbols): Store alignment in 590560484Sobrien new bfd_link_hash_entry field, not in elf_link_hash_entry field. 590660484Sobrien (elf_link_output_extsym): Similar change when getting alignment. 590760484Sobrien * elf.c (_bfd_elf_link_hash_newfunc): Don't initialize align. Do 590860484Sobrien initialize copy_offset. 590960484Sobrien * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Use copy_offset 591060484Sobrien field rather than align field. Get alignment using bfd_log2 591160484Sobrien rather than switch. 591260484Sobrien * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise. 591360484Sobrien * elf32-i386.c (elf_i386_finish_dynamic_symbol): Use copy_offset, 591460484Sobrien not align. 591560484Sobrien * elf32-sparc.c (elf32_sparc_finish_dynamic_symbol): Likewise. 591660484Sobrien 591760484Sobrien * aoutx.h (NAME(aout,some_aout_object_p)): Just check 591860484Sobrien STAT_FOR_EXEC, don't check MACH. 591960484Sobrien * m88kmach3.c (MACH): Don't define. 592060484Sobrien * config/i386-mach3.mt (TDEFINES): Define STAT_FOR_EXEC. 592160484Sobrien * config/m88k-mach3.mt (TDEFINES): Likewise. 592260484Sobrien * config/mips-mach3.mt (TDEFINES): Likewise. 592360484Sobrien 592460484SobrienThu Jul 21 17:24:31 1994 Stan Shebs (shebs@andros.cygnus.com) 592560484Sobrien 592660484Sobrien * i386mach3.c: Reverted to version from before Jul 5 1994 changes. 592760484Sobrien 592860484SobrienThu Jul 21 12:26:01 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 592960484Sobrien 593060484Sobrien * reloc.c (struct reloc_howto_struct): Remove special_function1. 593160484Sobrien It's the wrong way to do things. 593260484Sobrien (HOWTO): Change accordingly. 593360484Sobrien (HOWTO2): Remove. 593460484Sobrien (_bfd_final_link_relocate): Remove references to 593560484Sobrien special_function1. 593660484Sobrien * bfd-in2.h: Rebuilt. 593760484Sobrien * aoutx.h (aout_link_input_section_std): Remove references to 593860484Sobrien special_function1. 593960484Sobrien (aout_link_reloc_link_order): Likewise. 594060484Sobrien 594160484SobrienWed Jul 20 15:46:44 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 594260484Sobrien 594360484Sobrien * elfcode.h (NAME(bfd_elf,size_dynamic_sections)): Add rpath 594460484Sobrien argument. If it is not NULL, use it to set DT_RPATH. 594560484Sobrien * bfd-in.h (bfd_elf32_size_dynamic_sections): Update prototype. 594660484Sobrien (bfd_elf64_size_dynamic_sections): Likewise. 594760484Sobrien * bfd-in2.h: Rebuilt. 594860484Sobrien 594960484SobrienSat Jul 16 21:10:39 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 595060484Sobrien 595160484Sobrien * elfcode.h (elf_get_dynamic_symtab_upper_bound): If there is no 595260484Sobrien dynamic symtab, return error. 595360484Sobrien 595460484Sobrien * libelf.h (ELF_LINK_HASH_DEFINED_WEAK): Define. 595560484Sobrien * elfcode.h (elf_link_add_object_symbols): If symbol is defined as 595660484Sobrien weak, set ELF_LINK_HASH_DEFINED_WEAK. 595760484Sobrien (elf_link_output_extsym): If symbol is defined as weak, mark it 595860484Sobrien STB_WEAK. 595960484Sobrien 596060484Sobrien * libelf.h (struct bfd_elf_section_data): Add relocs field. 596160484Sobrien (shdr_name): Remove; unused. 596260484Sobrien * elfcode.h (elf_slurp_reloc_table): Rewrote to handle both REL 596360484Sobrien and RELA relocs. Free up the unswapped relocs. Permit the relocs 596460484Sobrien to be cached in the section_data. Correct the reloc address. 596560484Sobrien (elf_slurp_reloca_table): Remove. 596660484Sobrien (elf_canonicalize_reloc): Rewrote. 596760484Sobrien (elf_link_input_bfd): Permit the relocs to be cached in the 596860484Sobrien section data. 596960484Sobrien 597060484SobrienSat Jul 16 13:55:38 1994 Stan Shebs (shebs@andros.cygnus.com) 597160484Sobrien 597260484Sobrien * config.bfd (m88*-harris-cxux*): Recognize. 597360484Sobrien * hosts/harris.h (POSIX_UTIME, HAVE_PROCFS): Define. 597460484Sobrien 597560484Sobrien * configure.host (m68*-atari-sysv4*): New host. 597660484Sobrien (m68*-cbm-sysv4*): Use m68kv4 instead of amix. 597760484Sobrien * hosts/amix.h: Remove. 597860484Sobrien * hosts/m68kv4.h: New file, was amix.h. 597960484Sobrien 598060484SobrienThu Jul 14 15:12:24 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 598160484Sobrien 598260484Sobrien * reloc.c (enum bfd_reloc_code_real, bfd_type, struct 598360484Sobrien reloc_howto_struct, reloc_howto_type, HOWTO, HOWTO2): Copied 598460484Sobrien changes over from bfd-in2.h so they get generated properly next 598560484Sobrien time someone runs "make headers". 598660484Sobrien * bfd-in2.h: Rebuilt. 598760484Sobrien 598860484Sobrien * targets.c (netbsd532_vec, pc532mach_vec): Declare const. 598960484Sobrien (m88kmach3_vec): Restore deleted declaration. 599060484Sobrien 599160484Sobrien * configure.in: Alphabetize target vector names. 599260484Sobrien 599360484Sobrien * config/pc532mach.mh: New file. 599460484Sobrien (HDEPFILES, HDEFINES): Define here. 599560484Sobrien * config/pc532-mach.mt (HDEPFILES, HDEFINES): Deleted. 599660484Sobrien * config/ns32k-netbsd.mt (HDEPFILES, HDEFINES): Deleted. 599760484Sobrien 599860484Sobrien Sun Jul 10 00:04:20 1994 Ian Dall (dall@hfrd.dsto.gov.au) 599960484Sobrien 600060484Sobrien * pc532-mach.c: New File. pc532-mach a.out format. 600160484Sobrien 600260484Sobrien * netbsd532.c: New file. pc532-netbsd532 a.out format. 600360484Sobrien 600460484Sobrien * hosts/pc532mach.h: New file. pc532-mach host support. 600560484Sobrien 600660484Sobrien * cpu-ns32k.c: New file. ns32k support cpu specific code rather 600760484Sobrien than format specific code. 600860484Sobrien 600960484Sobrien * config/pc532-mach.mt: New file. Support for pc532-mach target. 601060484Sobrien 601160484Sobrien * config/ns32k-netbsd.mt: New file. Support for netbsd532 target. 601260484Sobrien 601360484Sobrien * aout-ns32k.c, aout-ns32k.h: New files supporting aout format for 601460484Sobrien ns32k series. 601560484Sobrien 601660484Sobrien * targets.c: Add netbsd532_vec and pc532machaout_vec into 601760484Sobrien bfd_target_vector array. Move netbsd386_vec to alphabetic order 601860484Sobrien location. 601960484Sobrien 602060484Sobrien * reloc.c (_bfd_final_link_relocate) Add support for 602160484Sobrien special_function1 in howto. 602260484Sobrien 602360484Sobrien * libaout.h: add M_NS32032, M_NS32532, M_532_NETBSD entries in 602460484Sobrien machine_type enum. 602560484Sobrien 602660484Sobrien * configure.in: add pc532mach_vec and netbsd532_vec entries. 602760484Sobrien 602860484Sobrien * config.bfd: add pc532mach host entries. Use for both 602960484Sobrien ns32k-pc532-mach and ns32k-pc532-netbsd. 603060484Sobrien 603160484Sobrien * config.bfd: it doesn't work to use i386-mach3 for ns32k*-*-mach. 603260484Sobrien add ns32k-pc532-mach* and ns32k-*-netbsd* entries. 603360484Sobrien 603460484Sobrien * bfd-in2.h: Add ns32k specific relocations to bfd_reloc_code_real 603560484Sobrien enum. 603660484Sobrien 603760484Sobrien * bfd-in2.h: Add special_function1 to struct howto. Change HOWTO 603860484Sobrien and NEWHOWTO macros to make special_function1 NULL. Neww HOWTO2 603960484Sobrien macro. 604060484Sobrien 604160484Sobrien * bfd-in2.h: Split definition of struct reloc_howto_struct 604260484Sobrien and corresponding typedef into two statements. 604360484Sobrien 604460484Sobrien * bfd-in2.h: Add entry bfd_arch_ns32k to bfd_architecture enum. 604560484Sobrien 604660484Sobrien * archures.c: Add bfd_ns32k_arch prototype, and entry in 604760484Sobrien archures_init_table. 604860484Sobrien 604960484Sobrien * aoutx.h (aout_link_reloc_link_order): Allow for target dependent 605060484Sobrien MY_put_reloc macro. Allow for target dependent special_function1 605160484Sobrien to apply the relocation. 605260484Sobrien 605360484Sobrien * aoutx.h (aout_link_input_section_std): Allow for target 605460484Sobrien dependent determination of reloc howto. Allow for target dependent 605560484Sobrien special_function1 to apply the relocation. 605660484Sobrien 605760484Sobrien * aoutx.h (get_reloc_upper_bound): Detect bss and return 0. 605860484Sobrien 605960484Sobrien * aoutx.h (slurp_reloc_table): Detect bss and succesfully read 606060484Sobrien zero reloc entries. 606160484Sobrien 606260484Sobrien * aoutx.h (machine_type): Add bfd_arch_ns32k case. 606360484Sobrien 606460484Sobrien * aoutx.h: Stat to determine executable status if STAT_FOR_EXEC 606560484Sobrien is defined (not just MACH). Use fstat instead of stat and check 606660484Sobrien for fstat error. 606760484Sobrien 606860484Sobrien * aoutx.h: Allow target dependent swap_std_reloc_{in,out}. 606960484Sobrien 607060484Sobrien * aoutx.h: Allow CTORS reloc info to be in target dependent reloc 607160484Sobrien table. 607260484Sobrien 607360484Sobrien * aout-target.h: Apply SWAP_MAGIC (if defined) after 607460484Sobrien swap_exec_header_in, otherwise we have magic in the wrong order. 607560484Sobrien 607660484SobrienThu Jul 14 11:47:27 1994 Stan Shebs (shebs@andros.cygnus.com) 607760484Sobrien 607860484Sobrien * coff-sparc.c (sparccoff_vec): Have leading underscores. 607960484Sobrien 608060484SobrienTue Jul 12 12:08:10 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 608160484Sobrien 608260484Sobrien * aix386-core.c, aoutf1.h, cisco-core.c, elfcode.h, hppabsd-core.c, 608360484Sobrien hpux-core.c, irix-core.c, lynx-core.c, osf-core.c, ptrace-core.c, 608460484Sobrien rs6000-core.c, trad-core.c: Remove SEC_ALLOC flag from .reg 608560484Sobrien sections, .reg sections are not allocated and contain debug 608660484Sobrien information only. 608760484Sobrien * osf-core.c (make_bfd_asection, osf_core_core_file_p): Use 608860484Sobrien bfd_make_section_anyway instead of building unique section names. 608960484Sobrien 609060484SobrienTue Jul 12 11:41:22 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 609160484Sobrien 609260484Sobrien * libelf.h (bfd_elf32_swap_symbol_in): Declare. 609360484Sobrien (bfd_elf32_swap_symbol_out): Declare. 609460484Sobrien (bfd_elf64_swap_symbol_in, bfd_elf64_swap_symbol_out): Declare. 609560484Sobrien * elf32-hppa.c (elf32_hppa_args_hash_table_init): Correct cast. 609660484Sobrien 609760484Sobrien * aout-encap.c (ARCH): Don't define. Obsolete. 609860484Sobrien * aout0.c, aoutx.h, gen-aout.c, hp300bsd.c, hp300hpux.c: Likewise. 609960484Sobrien * i386aout.c, i386bsd.c, i386dynix.c, i386linux.c: Likewise. 610060484Sobrien * i386lynx.c, m68klynx.c, mipsbsd.c, netbsd386.c: Likewise. 610160484Sobrien * newsos3.c, sparclynx.c, sunos.c: Likewise. 610260484Sobrien 610360484SobrienMon Jul 11 20:08:23 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 610460484Sobrien 610560484Sobrien * section.c (STD_SECTION): Make the sixth argument boolean, not 610660484Sobrien the seventh. From gary@tuva.pacsemi.oz.au (gary kopff). 610760484Sobrien 610860484SobrienSun Jul 10 09:12:02 1994 D. V. Henkel-Wallace (gumby@cygnus.com) 610960484Sobrien 611060484Sobrien * aoutx.h (bfd_free_cached_info): Change name of FREE to BFCI_FREE 611160484Sobrien in order not to collide with LynxOS's definition of FREE in 611260484Sobrien /usr/include/sys/proc.h 611360484Sobrien 611460484SobrienThu Jul 7 14:18:06 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 611560484Sobrien 611660484Sobrien * reloc.c (bfd_perform_relocation): Don't clobber the relocation 611760484Sobrien value for coff-Intel-little or coff-Intel-big. Hack upon hack. 611860484Sobrien 611960484SobrienThu Jul 7 10:10:34 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 612060484Sobrien 612160484Sobrien * aoutx.h (howto_table_std): Add entry for GOT relocations 612260484Sobrien which are present in sun3 shared libraries, to avoid assertions 612360484Sobrien when reading the dynamic relocations. 612460484Sobrien 612560484SobrienThu Jul 7 10:19:20 1994 Jeff Law (law@snake.cs.utah.edu) 612660484Sobrien 612760484Sobrien * som.h (R_HPPA_COMPLEX): Fix dumb typo. 612860484Sobrien 612960484SobrienWed Jul 6 19:21:57 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 613060484Sobrien 613160484Sobrien * hosts/sysv4.h (qsort, strtol): Don't declare. 613260484Sobrien 613360484Sobrien * elfcode.h (elf_link_output_sym): Don't call output_symbol_hook 613460484Sobrien if it is NULL. 613560484Sobrien 613660484Sobrien * elf32-mips.c (mips_elf_final_write_processing): Add ignored info 613760484Sobrien argument to correspond to recent libelf.h change. 613860484Sobrien 613960484SobrienWed Jul 6 00:48:57 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 614060484Sobrien 614160484Sobrien * coff-alpha.c (alpha_ecoff_mkobject_hook): New hook to 614260484Sobrien additionally copy object type information from the alpha file 614360484Sobrien header to the BFD flags. 614460484Sobrien (alpha_ecoff_backend_data): Use it. 614560484Sobrien (ecoffalpha_little_vec): Add DYNAMIC to object_flags. 614660484Sobrien * aout64.c: Fix typo in conditional QMAGIC definition. 614760484Sobrien 614860484SobrienWed Jul 6 00:13:17 1994 Jeff Law (law@snake.cs.utah.edu) 614960484Sobrien 615060484Sobrien * hppabsd-core.c (hppabsd_core_core_file_p): Sanity check the 615160484Sobrien value of clicksz to help weed out non HPPA BSD core files. 615260484Sobrien 615360484SobrienTue Jul 5 13:26:02 1994 Stan Shebs (shebs@andros.cygnus.com) 615460484Sobrien 615560484Sobrien Mach 3 support. 615660484Sobrien * config.bfd (m88*-*-mach3*, mips*-dec-mach3*, mips*-*-mach3*): 615760484Sobrien New targets. 615860484Sobrien * configure.host (i[34]86-*-mach3*, ns32k-*-mach3*): Recognize 615960484Sobrien "mach3" instead of "mach". 616060484Sobrien (m88*-*-mach3*, mips*-dec-mach3*, mips*-*-mach3*): New hosts. 616160484Sobrien * targets.c (m88kmach3_vec): New target vector. 616260484Sobrien (bfd_target_vector): Add i386mach3_vec and m88kmach3_vec, but 616360484Sobrien inside #if 0. 616460484Sobrien * aoutx.h (some_aout_object_p) [MACH]: Recognize executables by 616560484Sobrien checking for execute permission, instead of looking at entry 616660484Sobrien point. 616760484Sobrien * i386mach3.c: Update, define MACH, N_TXTOFF, N_TXTADDR, 616860484Sobrien N_SHARED_LIB, don't include aout/*.h files, etc. 616960484Sobrien * m88kmach3.c: New file, m88k Mach 3 target. 617060484Sobrien * config/m88k-mach3.mt, config/mips-mach3.mt: New files, target 617160484Sobrien makefile fragments. 617260484Sobrien * config/i386mach3.mh, config/m88kmach3.mh, config/mipsmach3.mh: 617360484Sobrien New files, host makefile fragments. 617460484Sobrien * hosts/m88kmach3.h, hosts/mipsmach3.h: New files, host definitions. 617560484Sobrien 617660484SobrienTue Jul 5 13:56:52 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 617760484Sobrien 617860484Sobrien * elfcode.h (swap_out_syms): Get alignment of common symbol from 617960484Sobrien st_value field of saved ELF symbol information, if there is any. 618060484Sobrien 618160484SobrienMon Jul 4 19:13:32 1994 Jeff Law (law@snake.cs.utah.edu) 618260484Sobrien 618360484Sobrien * som.h (R_HPPA_COMPLEX): Define. 618460484Sobrien * elf32-hppa.h (R_HPPA_COMPLEX): Define. 618560484Sobrien (elf32_hppa_reloc_type): Delete R_PARISC_STUB_CALL_17. 618660484Sobrien 618760484SobrienFri Jul 1 12:07:41 1994 Jeff Law (law@snake.cs.utah.edu) 618860484Sobrien 618960484Sobrien * Support code for enabling the new style linker for PA ELF. 619060484Sobrien * elfcode.h (swap_symbol_in, swap_symbol_out): Externalize. 619160484Sobrien (elf_compute_section_file_positions): Pass link_info to 619260484Sobrien the begin_write_processing hook. 619360484Sobrien (bfd_elf_write_object_contents): Pass NULL for new link_info 619460484Sobrien argument to final_write_processing hook. 619560484Sobrien (elf_link_output_sym): Accept new "input_section" argument for 619660484Sobrien the symbols's input section. All callers changed. Call the 619760484Sobrien link_output_symbol_hook if it's defined. 619860484Sobrien (elf_bfd_final_link): Call the final_write_processing hook if 619960484Sobrien it's defined. 620060484Sobrien * libelf.h (elf_backend_link_output_symbol_hook): Declare. 620160484Sobrien (elf_backend_begin_write_processing): Add new "info" argument. 620260484Sobrien (elf_backend_final_write_processing): Likewise. 620360484Sobrien * elf32-target.h (elf_backend_link_output_symbol_hook): Provide 620460484Sobrien a default definition. 620560484Sobrien (elf32_bed): Add elf_backend_link_output_symbol_hook. 620660484Sobrien * elf64-target.h: Likewise. 620760484Sobrien 620860484Sobrien * Major rework of the PA ELF code. Uses the new style BFD 620960484Sobrien linker, major cleanups. 621060484Sobrien * hppa_stubs.h: Rewrite from scratch. Much smaller and simpler. 621160484Sobrien * elf32-hppa.h: Delete all symbol extension related code. 621260484Sobrien (hppa_look_for_stubs_in_section): Delete decl. 621360484Sobrien (elf32_hppa_size_stubs, elf32_hppa_build_stubs): New decls. 621460484Sobrien * elf32-hppa.c: Symbol extension stuff moved form elf32-hppa.h 621560484Sobrien into elf32-hppa.c. Do not include aout64.h. 621660484Sobrien (typdef hppa_stub_type): Delete. 621760484Sobrien (elf32_hppa_stub_name_list_struct): Delete. 621860484Sobrien (elf32_hppa_stub_description_struct): Delete. 621960484Sobrien (arg_reloc_type): Use simpler enumerations. All references changed. 622060484Sobrien (arg_location, arg_reloc_relocation): Likewise. 622160484Sobrien (elf32_hppa_symextn_map_struct): Delete. 622260484Sobrien (get_symbol_value): Delete. 622360484Sobrien (elf32_hppa_get_sym_extn): Delete. 622460484Sobrien (find_stubs, new_stubs, type_of_mismatch): Delete. 622560484Sobrien (find_stub_by_name, add_stub_by_name): Delete. 622660484Sobrien (hppa_elf_stub_finish, hppa_elf_stub_reloc): Delete. 622760484Sobrien (hppa_elf_arg_reloc_needed): Renamed. Simplify. 622860484Sobrien (hppa_elf_build_linker_stub, hppa_elf_create_stub_sec): Delete. 622960484Sobrien (hppa_elf_long_branch_needed_p): Delete. 623060484Sobrien (hppa_look_for_stubs_in_section): Delete. 623160484Sobrien (hppa_elf_get_section_contents): Delete. 623260484Sobrien (elf32_hppa_backend_symbol_processing): Delete. 623360484Sobrien (elf32_hppa_backend_section_processing): Delete. 623460484Sobrien (elf32_hppa_backend_section_from_shdr): Delete. 623560484Sobrien (elf32_hppa_backend_fake_sections): Delete. 623660484Sobrien (elf32_hppa_backend_section_from_bfd_section): Delete. 623760484Sobrien (NEW_INSTRUCTION): Delete. 623860484Sobrien (CURRENT_STUB_OFFSET): Delete. 623960484Sobrien (elf32_hppa_relocate_section): New function. 624060484Sobrien (elf32_hppa_bfd_final_link_relocate): New function. 624160484Sobrien (elf32_hppa_size_symext): New function. 624260484Sobrien (elf32_hppa_link_output_symbol_hook): New function. 624360484Sobrien (elf32_hppa_read_symext_info): New function. 624460484Sobrien (elf32_hppa_add_symbol_hook): New function. 624560484Sobrien (elf32_hppa_name_of_stub): New function. 624660484Sobrien (elf32_hppa_size_of_stub): New function. 624760484Sobrien (elf32_hppa_build_one_sub): New function. 624860484Sobrien (elf32_hppa_build_stubs): New function. 624960484Sobrien (elf32_hppa_size_stubs): New function. 625060484Sobrien (linker, stub and argument hash tables): Add appropriate 625160484Sobrien structures, definitions and functions to implement all three 625260484Sobrien hash tables. 625360484Sobrien (hppa_elf_relocate_insn): Don't need argument location information 625460484Sobrien in this function. 625560484Sobrien (add_entry_to_symext_chain): Accept a symbol's argument location 625660484Sobrien information rather than the symbol itself. All callers changed. 625760484Sobrien (hppa_elf_gen_reloc_type): Simplify. 625860484Sobrien (hppa_elf_set_section_contents): Stub section is no longer special. 625960484Sobrien (hppa_elf_reloc): Greatly simplify. 626060484Sobrien (elf32_hppa_begin_write_processing): Accept link_info argument. 626160484Sobrien Handle being called from the BFD backend linker. 626260484Sobrien (elf32_hppa_final_write_processing): Likewise. 626360484Sobrien (elf_hppa_tc_make_sections): No longer call stub_finish. 626460484Sobrien 626560484SobrienMon Jun 27 18:07:06 1994 Steve Chamberlain (sac@cirdan.cygnus.com) 626660484Sobrien 626760484Sobrien * section.c (bfd_get_section_contents): Put in parens to get 626860484Sobrien precedence right. 626960484Sobrien 627060484SobrienSun Jun 26 18:08:29 1994 Jeff Law (law@snake.cs.utah.edu) 627160484Sobrien 627260484Sobrien * libelf.h (relocate_section): New argument "output_names" added 627360484Sobrien to prototype. 627460484Sobrien * elfcode.h (elf_link_input_bfd): New argument "output_names" 627560484Sobrien added to prototype of relocate_section. Pass the output symbol 627660484Sobrien names to relocate_section. 627760484Sobrien * elf32-i386.c (elf_i386_relocate_section): Use "output_names" to 627860484Sobrien determine the name of a local symbol. 627960484Sobrien * elf32-mips.c (mips_elf_relocate_section): Likewise. 628060484Sobrien * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 628160484Sobrien 628260484SobrienFri Jun 24 08:15:42 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 628360484Sobrien 628460484Sobrien Add Solaris BCP (the part of Solaris which allows it to run 628560484Sobrien SunOS4 a.out files) core file handling. 628660484Sobrien * aoutf1.h (external_solaris_bcp_core, swapcore_solaris_bcp): 628760484Sobrien New structure and its swap in function. 628860484Sobrien (internal_sunos_core): New member c_data_addr, to receive the 628960484Sobrien start address of the data section in the core file. 629060484Sobrien (swapcore_sun3, swapcore_sparc, sunos4_core_file_p): Use it. 629160484Sobrien (sunos4_core_file_p): Recognize Solaris BCP core file. 629260484Sobrien (sunos4_core_file_matches_executable_p): Always indicate match 629360484Sobrien for Solaris BCP core files. 629460484Sobrien 629560484SobrienThu Jun 23 15:31:28 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 629660484Sobrien 629760484Sobrien Preliminary support for generating shared libraries, from Eric 629860484Sobrien Youngdale <ericy@cais.cais.com>. 629960484Sobrien * elfcode.h (prep_headers): If DYNAMIC, set e_type to ET_DYN. 630060484Sobrien (elf_link_add_object_symbols): If generating a shared library, 630160484Sobrien create dynamic sections for first input BFD with the right format. 630260484Sobrien (elf_link_create_dynamic_sections): Don't create .interp section 630360484Sobrien if creating a shared library. 630460484Sobrien (elf_link_input_bfd): Skip dynamic sections in input file. 630560484Sobrien (elf_bfd_final_link): If creating a shared library, it's OK for 630660484Sobrien dynobj to have sections which are not SEC_IN_MEMORY. 630760484Sobrien * elf32-i386.c (elf_i386_size_dynamic_sections): Only set .interp 630860484Sobrien section if not creating a shared library. 630960484Sobrien * elf32-sparc.c (elf_sparc_size_dynamic_sections): Likewise. 631060484Sobrien 631160484Sobrien * elfcode.h (elf_object_p): Don't set DYNAMIC just because there 631260484Sobrien is an SHT_DYNAMIC section. 631360484Sobrien 631460484Sobrien * cf-i386lynx.c (i386coff_vec): Don't include DYNAMIC in 631560484Sobrien object_flags. 631660484Sobrien * coff-sparc.c (sparccoff_vec): Likewise. 631760484Sobrien * hppabsd-core.c (hppabsd_core_vec): Likewise. 631860484Sobrien 631960484Sobrien * aoutx.h (NAME(aout,some_aout_object_p)): Don't set SEC_RELOC 632060484Sobrien just because DYNAMIC is set. 632160484Sobrien 632260484SobrienThu Jun 23 12:53:41 1994 David J. Mackenzie (djm@rtl.cygnus.com) 632360484Sobrien 632460484Sobrien * configure.in: Change --with-targets to --enable-targets and 632560484Sobrien --with-64-bit-bfd to --enable-64-bit-bfd. 632660484Sobrien * Makefile.in, mpw-make.in, targets.c: Change comments. 632760484Sobrien 632860484SobrienWed Jun 22 17:59:59 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 632960484Sobrien 633060484Sobrien * config.bfd (powerpc-*-elf*): New target, just like 633160484Sobrien powerpc-*-sysv4*. 633260484Sobrien 633360484Sobrien * linker.c (FAIL): Undefine macro before defining as enum. 633460484Sobrien 633560484SobrienWed Jun 22 10:52:47 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 633660484Sobrien 633760484Sobrien * linker.c (_bfd_generic_link_add_archive_symbols): Initialize 633860484Sobrien pass from abfd->archive_pass, and save it there as well. 633960484Sobrien 634060484Sobrien * hash.c (bfd_hash_allocate): Don't call bfd_set_error if 634160484Sobrien obstack_alloc returns NULL unless the size is non-zero. 634260484Sobrien 634360484Sobrien * linker.c (archive_hash_allocate): Define. 634460484Sobrien (_bfd_generic_link_add_archive_symbols): Use archive_hash_allocate 634560484Sobrien rather than obstack_alloc, for clarity. 634660484Sobrien 634760484Sobrien * elfcode.h (elf_get_reloc_upper_bound): Correct. 634860484Sobrien 634960484Sobrien * aout64.c (BMAGIC, QMAGIC): Define if not already defined. From 635060484Sobrien Peter Schauer <pes@regent.e-technik.tu-muenchen.de>. 635160484Sobrien 635260484Sobrien Linux ZMAGIC support from Eric Youngdale <ericy@cais.cais.com>. 635360484Sobrien * libaout.h (struct aoutdata): Add field zmagic_disk_block_size. 635460484Sobrien * aout-target.h (MY(callback)): Only set alignment according to 635560484Sobrien architecture if the section sizes are aligned to that alignment, 635660484Sobrien for backward compatibility. 635760484Sobrien (MY(set_sizes)): Initialize zmagic_disk_block_size field. 635860484Sobrien * aoutx.h (adjust_z_magic): Set ztih if using q_magic_format. Set 635960484Sobrien text section filepos to zmagic_disk_block_size if not ztih. Use a 636060484Sobrien different padding algorithm if not ztih. 636160484Sobrien * i386linux.c (MY_text_includes_header): Don't define. 636260484Sobrien 636360484Sobrien * aoutx.h (aout_link_check_ar_symbols): Just skip N_STAB and N_FN 636460484Sobrien symbols; don't look them up in the hash table. From 636560484Sobrien ralphc@pyramid.com (Ralph Campbell). 636660484Sobrien 636760484SobrienTue Jun 21 11:47:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 636860484Sobrien 636960484Sobrien * coff-go32.c (go32coff_archive_p): Remove unused function. 637060484Sobrien 637160484Sobrien * section.c (bfd_abs_section): Make const. 637260484Sobrien (bfd_abs_section_ptr, bfd_is_abs_section): Define. 637360484Sobrien (bfd_und_section): Make const. 637460484Sobrien (bfd_und_section_ptr, bfd_is_und_section): Define. 637560484Sobrien (bfd_com_section): Make const. 637660484Sobrien (bfd_com_section_ptr): Define. 637760484Sobrien (bfd_ind_section): Make const. 637860484Sobrien (bfd_ind_section_ptr, bfd_is_ind_section): Define. 637960484Sobrien (bfd_abs_symbol, bfd_com_symbol): Make const. 638060484Sobrien (bfd_und_symbol, bfd_ind_symbol): Likewise. 638160484Sobrien (global_syms): Cast initialization of section field. 638260484Sobrien (STD_SECTION): Define as const, and cast initializations. 638360484Sobrien * bfd-in2.h: Rebuilt. 638460484Sobrien * Many files: Change uses of bfd_abs_section, etc., to use 638560484Sobrien bfd_abs_section_ptr or bfd_is_abs_section, etc. 638660484Sobrien 638760484SobrienMon Jun 20 11:06:27 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) 638860484Sobrien 638960484Sobrien * Many files: change all bfd_target vectors to be const. Change 639060484Sobrien all uses of bfd_target * to be const bfd_target *. Change 639160484Sobrien bfd_target_vector and bfd_default_vector arrays to be const 639260484Sobrien bfd_target * const *. 639360484Sobrien 639460484Sobrien * ecoff.c, libecoff.h, ecoffswap.h, coff-alpha.c, coff-mips.c, 639560484Sobrien elf32-mips.c: Renamed all externally visible ECOFF routines which 639660484Sobrien are local to BFD to start with _bfd_ecoff instead of just ecoff. 639760484Sobrien 639860484Sobrien * ecoff.c (ecoff_swap_tir_in): Change input argument to const. 639960484Sobrien (ecoff_swap_tir_out): Likewise. 640060484Sobrien (ecoff_swap_rndx_in, ecoff_swap_rndx_out): Likewise. 640160484Sobrien (ecoff_slurp_symbolic_info): Add new arguments to correspond to 640260484Sobrien read_debug_info entry point in ecoff_debug_swap structure. 640360484Sobrien Change all calls. 640460484Sobrien * libecoff.h (ecoff_slurp_symbolic_info): Change declaration. 640560484Sobrien * ecoffswap.h (ecoff_swap_tir_in, ecoff_swap_tir_out): Declare. 640660484Sobrien (ecoff_swap_rndx_in, ecoff_swap_rndx_out): Declare. 640760484Sobrien * coff-alpha.c (alpha_ecoff_backend_data): Initialize new 640860484Sobrien ecoff_debug_swap fields. 640960484Sobrien * coff-mips.c (mips_ecoff_backend_data): Likewise. 641060484Sobrien * elf32-mips.c (mips_elf_read_ecoff_info): Undefine READ. 641160484Sobrien (mips_elf_ecoff_debug_swap): Initialize new ecoff_debug_swap 641260484Sobrien fields. 641360484Sobrien * configure.in (bfd_elf32_bigmips_vec): Use ecoff.o and 641460484Sobrien ecofflink.o. 641560484Sobrien (bfd_elf32_littlemips_vec): Likewise. 641660484Sobrien (ecoff_big_vec, ecoff_little_vec): Likewise. 641760484Sobrien (ecoffalpha_little_vec): Likewise. 641860484Sobrien * Makefile.in (BFD_LIBS): Remove ecoff.o and ecofflink.o. 641960484Sobrien (BFD32_BACKENDS): Add ecoff.o and ecofflink.o. 642060484Sobrien 642160484Sobrien * aoutx.h (NAME(aout,final_link)): Check flavour of sub, not abfd, 642260484Sobrien when computing reloc sizes. From Eric Youngdale 642360484Sobrien <ericy@cais.cais.com>. 642460484Sobrien * elfcode.h (elf_bfd_final_link): Don't try to compute maximum 642560484Sobrien reloc count or size for a non-ELF file. 642660484Sobrien 642760484Sobrien * mipsbsd.c (MY_final_link_callback): Define to avoid warning. 642860484Sobrien 642960484Sobrien * hp300hpux.c (MY_final_link_callback): Define to avoid warning. 643060484Sobrien (BMAGIC, QMAGIC): Define; used by aoutx.h. 643160484Sobrien (MY(slurp_symbol_table)): Change translate_from_native_sym_flags 643260484Sobrien calls to use new parameters. 643360484Sobrien 643460484SobrienFri Jun 17 14:45:32 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 643560484Sobrien 643660484Sobrien * aout-target.h (MY(callback)): Set the alignments of the text, 643760484Sobrien data and bss sections after determining the architecture. 643860484Sobrien 643960484Sobrien * sunos.c (sunos_add_one_symbol): Treat a common symbol from a 644060484Sobrien dynamic object as being in the .bss section of the object, rather 644160484Sobrien than as being undefined. 644260484Sobrien 644360484SobrienFri Jun 17 11:16:50 1994 Jeff Law (law@snake.cs.utah.edu) 644460484Sobrien 644560484Sobrien * libhppa.h (bfd_hppa_insn2fmt, hppa_rebuild_insn): Make INLINE. 644660484Sobrien 644760484Sobrien * elf32-hppa.h (elf_hppa_final_processing): Delete decl. 644860484Sobrien 644960484SobrienThu Jun 16 23:36:23 1994 Jeff Law (law@snake.cs.utah.edu) 645060484Sobrien 645160484Sobrien * elfcode.h (elf_link_input_bfd): Don't try to read local symbols 645260484Sobrien if there aren't any in the input file. 645360484Sobrien 645460484SobrienThu Jun 16 14:25:22 1994 Eric Youngdale (ericy@cais.cais.com) 645560484Sobrien 645660484Sobrien * i386linux.c: Many new functions and definitions for linker 645760484Sobrien support for Linux shared libraries. 645860484Sobrien * bfd-in.h (bfd_linux_size_dynamic_sections): Declare. 645960484Sobrien * bfd-in2.h: Rebuild. 646060484Sobrien 646160484SobrienThu Jun 16 14:23:46 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 646260484Sobrien 646360484Sobrien * config.bfd: If second argument is ``_'', then, instead of 646460484Sobrien echoing config file name, echo whether target uses leading 646560484Sobrien underscores on symbol names. Add appropriate settings to 646660484Sobrien different cases. Used by binutils/configure.in to set default for 646760484Sobrien c++filt. 646860484Sobrien 646960484Sobrien * elfcode.h (elf_bfd_final_link): If trying to generate a shared 647060484Sobrien object, warn and return false. 647160484Sobrien 647260484Sobrien * aoutx.h (NAME(aout,some_aout_object_p)): Accept BMAGIC objects 647360484Sobrien and treat them as OMAGIC. 647460484Sobrien 647560484SobrienWed Jun 15 18:02:21 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 647660484Sobrien 647760484Sobrien Enable sparc v9 support for release. Note that this is still a 647860484Sobrien work in progress, pending release of an ABI specification. 647960484Sobrien * config.bfd, configure.in: Include sparc v9 elf config. 648060484Sobrien * elfcode.h (prep_headers): Handle sparc v9 (64 bit). 648160484Sobrien * reloc.c (bfd_reloc_code_real): New reloc types. 648260484Sobrien * elf64-sparc.c: Implement elf64-sparc target. 648360484Sobrien * Makefile.in, targets.c: Updated. 648460484Sobrien 648560484SobrienWed Jun 15 01:34:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 648660484Sobrien 648760484Sobrien * libelf.h (struct elf_obj_tdata): New field dt_needed_name. 648860484Sobrien (elf_dt_needed_name): New accessor macro. 648960484Sobrien * elfcode.h (elf_link_add_object_symbols): If elf_dt_needed_name 649060484Sobrien is set, use that instead of the filename for the DT_NEEDED dynamic 649160484Sobrien entry. 649260484Sobrien * elf.c (bfd_elf_set_dt_needed_name): New function. 649360484Sobrien * bfd-in.h (bfd_elf_set_dt_needed_name): Declare. 649460484Sobrien * bfd-in2.h: Rebuilt. 649560484Sobrien 649660484Sobrien * elfcode.h (NAME(bfd_elf,size_dynamic_sections)): Add sinterpptr 649760484Sobrien argument, and set it to the .interp section. 649860484Sobrien * bfd-in.h (bfd_elf32_size_dynamic_sections): Update prototype. 649960484Sobrien (bfd_elf64_size_dynamic_sections): Likewise. 650060484Sobrien * bfd-in2.h: Rebuilt. 650160484Sobrien 650260484Sobrien * coff-sparc.c (SWAP_OUT_RELOC_EXTRA): Define to clear the r_spare 650360484Sobrien field of the reloc rather than letting it be garbage. 650460484Sobrien 650560484Sobrien * archive.c (bfd_slurp_armap): Recognize __.SYMDEF/ as well as 650660484Sobrien __.SYMDEF; the former was used in old Linux archives. From 650760484Sobrien jrs@world.std.com (Rick Sladkey). 650860484Sobrien 650960484Sobrien * i386linux.c (i386linux_write_object_contents): Define; like 651060484Sobrien MY(write_object_contents) in aout-target.h, but set MACHTYPE to 651160484Sobrien M_386. From jrs@world.std.com (Rick Sladkey). 651260484Sobrien (MY_write_object_contents): Define. 651360484Sobrien 651460484Sobrien * aoutx.h (translate_from_native_sym_flags): Treat N_SETV symbols 651560484Sobrien as N_DATA symbols. 651660484Sobrien (aout_link_add_symbols): Likewise. 651760484Sobrien 651860484Sobrien * aoutx.h: Rewrite symbol duplicate elimination to use BFD hash 651960484Sobrien tables. 652060484Sobrien (struct stringtab_entry, struct stringtab_data): Remove. 652160484Sobrien (HASHMAXLEN, HASH_CHAR, hash, compare, log2, emit_strtab): Remove. 652260484Sobrien (struct strtab_hash_entry, struct strtab_hash): Define. 652360484Sobrien (strtab_hash_newfunc, strtab_hash_lookup): Define. 652460484Sobrien (stringtab_free, emit_stringtab): Define. 652560484Sobrien (stringtab_init, add_to_stringtab): Rewrite. 652660484Sobrien (NAME(aout,write_syms)): Use new stringtab code. 652760484Sobrien (struct aout_final_link_info, NAME(aout,final_link)): Likewise. 652860484Sobrien (aout_link_write_symbols, aout_link_write_other_symbol): Likewise. 652960484Sobrien 653060484Sobrien * bfd-in.h (BFD_TRADITIONAL_FORMAT): Define new BFD flag to 653160484Sobrien request BFD to write object in the traditional format, whatever 653260484Sobrien that means for the particular backend. 653360484Sobrien * bfd-in2.h: Rebuilt. 653460484Sobrien 653560484Sobrien * hash.c (bfd_hash_allocate): If obstack_alloc fails, set 653660484Sobrien bfd_error_no_memory. 653760484Sobrien 653860484SobrienTue Jun 14 13:00:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 653960484Sobrien 654060484Sobrien * libaout.h (struct aoutdata): Add q_magic_format to subformat 654160484Sobrien enum. 654260484Sobrien * aout-target.h (MY_bfd_copy_private_bfd_data): Define as function 654360484Sobrien if not already defined. Copy subformat information. 654460484Sobrien (MY_text_includes_header): Define as 0 if not already defined. 654560484Sobrien (MY(backend_data)): Use MY_text_includes_header rather than 0. 654660484Sobrien (MY_final_link_callback): Rename from final_link_callback, and 654760484Sobrien define only if MY_final_link_callback is not already defined. 654860484Sobrien (MY_bfd_final_link): Rename use of final_link_callback to 654960484Sobrien MY_final_link_callback. 655060484Sobrien * aoutx.h (NAME(aout,some_aout_object_p)): Handle QMAGIC like 655160484Sobrien ZMAGIC, but set the subformat to q_magic_format. Abort if the 655260484Sobrien magic number if not recognized. 655360484Sobrien (adjust_z_magic): Use QMAGIC if q_magic_format. 655460484Sobrien * i386linux.c (MY_text_includes_header): Define as 1. 655560484Sobrien (i386linux_bfd_final_link): New static function. 655660484Sobrien (MY_bfd_final_link): Define as i386linux_bfd_final_link. 655760484Sobrien 655860484Sobrien * aoutx.h (translate_to_native_sym_flags): Check both section and 655960484Sobrien output_section against sections of abfd. 656060484Sobrien 656160484Sobrien * libecoff.h (struct ecoff_link_hash_entry): Change type of 656260484Sobrien written from boolean to char. Add new field small. 656360484Sobrien * ecoff.c (ecoff_link_hash_newfunc): Initialize written to 0 656460484Sobrien rather than false. Initialize small to 0. 656560484Sobrien (ecoff_link_add_externals): If ECOFF type is scSUndefined, set 656660484Sobrien small. If small is set, and hash table type is common, force the 656760484Sobrien symbol into a section named SCOMMON and change the ECOFF type from 656860484Sobrien scCommon to scSCommon. 656960484Sobrien (ecoff_link_write_external): Set written to 1 rather than true. 657060484Sobrien * coff-mips.c (mips_relocate_section): Correct JMPADDR reloc 657160484Sobrien overflow check to consider section VMA of input file. 657260484Sobrien 657360484SobrienMon Jun 13 14:20:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 657460484Sobrien 657560484Sobrien * aoutf1.h (aout_32_sunos4_write_object_contents): Handle a 657660484Sobrien machine type of 68000. 657760484Sobrien * aoutx.h (NAME(aout,machine_type)): Add new argument unknown. 657860484Sobrien Set *unknown to true if machine type is really unknown, as opposed 657960484Sobrien to M_UNKNOWN for the 68000. 658060484Sobrien (NAME(aout,set_arch_mach)): Change NAME(aout,machine_type) call 658160484Sobrien accordingly. 658260484Sobrien * libaout.h (NAME(aout,machine_type)): Add new argument to 658360484Sobrien prototype. 658460484Sobrien 658560484SobrienSun Jun 12 20:21:03 1994 Jeff Law (law@snake.cs.utah.edu) 658660484Sobrien 658760484Sobrien * som.c (EXEC_AUX_ID): Define based on availablity of HPUX_AUX_ID 658860484Sobrien or HIUX_AUX_ID. 658960484Sobrien (som_begin_writing): Use EXEC_AUX_ID instead of HPUX_AUX_ID. 659060484Sobrien (som_write_armap): Use CPU_PA_RISC1_0 as the magic number. Note 659160484Sobrien som.c is careful to always define CPU_PA_RISC1_0. 659260484Sobrien 659360484SobrienSat Jun 11 16:32:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 659460484Sobrien 659560484Sobrien Add weak symbols as an extension to a.out. 659660484Sobrien * aoutx.h (sym_in_text_section): Don't define. 659760484Sobrien (sym_in_data_section, sym_in_bss_section): Likewise. 659860484Sobrien (sym_is_undefined, sym_is_global_defn): Likewise. 659960484Sobrien (sym_is_debugger_info, sym_is_fortrancommon): Likewise. 660060484Sobrien (sym_is_absolute, sym_is_indirect): Likewise. 660160484Sobrien (translate_from_native_sym_flags): Rewrite for clarity. Rearrange 660260484Sobrien arguments and change caller. Handle weak symbols. 660360484Sobrien (translate_to_native_sym_flags): Likewise. 660460484Sobrien (aout_link_check_ar_symbols): Don't ignore weak symbols. Pull 660560484Sobrien object in from archive if a weak defintion is found for an 660660484Sobrien existing undefined symbol. 660760484Sobrien (aout_link_add_symbols): Put all cases in switch. Set flags of an 660860484Sobrien undefined symbol to 0. Handle weak symbols. 660960484Sobrien (aout_link_write_symbols): Handle weak symbols. 661060484Sobrien (aout_link_write_other_symbol): Likewise. 661160484Sobrien (aout_link_input_section_std): Likewise. 661260484Sobrien (aout_link_input_section_ext): Likewise. 661360484Sobrien * sunos.c (sunos_write_dynamic_symbol): Likewise. 661460484Sobrien 661560484SobrienFri Jun 10 13:25:13 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 661660484Sobrien 661760484Sobrien * aoutx.h (NAME(aout,canonicalize_reloc)): Handle .bss section. 661860484Sobrien (NAME(aout,get_reloc_upper_bound)): Likewise. 661960484Sobrien 662060484Sobrien * coff-i960.c (coff_i960_reloc_type_lookup): Add BFD_RELOC_CTOR. 662160484Sobrien * linker.c (_bfd_generic_link_write_global_symbol): Don't assume 662260484Sobrien the section of a common symbol is not NULL. 662360484Sobrien 662460484SobrienWed Jun 8 23:15:53 1994 Stu Grossman (grossman@cygnus.com) 662560484Sobrien 662660484Sobrien * nlmcode.h (nlm_object_p): Set EXEC_P and start address for GDB. 662760484Sobrien 662860484SobrienWed Jun 8 23:57:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 662960484Sobrien 663060484Sobrien * aoutx.h (aout_get_external_symbols): Don't try to read the 663160484Sobrien strings if there are no symbols. 663260484Sobrien (aout_link_write_other_symbol): Use the output section when 663360484Sobrien working out the type. 663460484Sobrien 663560484SobrienTue Jun 7 13:25:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 663660484Sobrien 663760484Sobrien * elfcode.h (assign_section_numbers): Put shstrtab, symtab and 663860484Sobrien strtab sections at end of file. Avoids bug in some versions of 663960484Sobrien SVR4 strip. From Eric Youngdale <eric@tantalus.nrl.navy.mil>. 664060484Sobrien 664160484Sobrien * coffcode.h (styp_to_sec_flags): If COFF_PAGE_SIZE is defined, 664260484Sobrien set SEC_DEBUGGING for STYP_INFO sections. 664360484Sobrien (coff_compute_section_file_positions): If COFF_PAGE_SIZE is 664460484Sobrien defined, and D_PAGED is set, set the file position equal to the 664560484Sobrien section VMA modulo COFF_PAGE_SIZE. 664660484Sobrien * coffgen.c (coff_real_object_p): If F_EXEC is set, set D_PAGED. 664760484Sobrien * coff-i386.c: Set D_PAGED in BFD target. 664860484Sobrien (COFF_PAGE_SIZE): Define. 664960484Sobrien * coff-m68k.c, coff-sparc.c: Likewise. 665060484Sobrien 665160484SobrienMon Jun 6 10:57:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 665260484Sobrien 665360484Sobrien * elfcode.h (bfd_section_from_shdr): Don't turn a reloc section 665460484Sobrien into a BFD section just because SHF_ALLOC is set; require that it 665560484Sobrien not use the normal symbol table. 665660484Sobrien (elf_section_from_bfd_section): Corresponding change. 665760484Sobrien 665860484Sobrien Better indirect and warning symbol handling inspired by Stuart 665960484Sobrien Quick <stuck@cs.man.ac.uk>. 666060484Sobrien * linker.c (enum link_action): Add REF, MIND, CWARN, REFC. 666160484Sobrien (link_action): Change UNDEF_ROW/def and UNDEFW_ROW/def from NOACT 666260484Sobrien to REF. Change UNDEF_ROW/indr and UNDEFW_ROW/indr from CYCLE to 666360484Sobrien REFC. Change DEF_ROW/indr and COMMON_ROW/indr from CYCLE to MDEF. 666460484Sobrien Change DEFW_ROW/indr from CYCLE to NOACT. Change INDR_ROW/indr 666560484Sobrien from MDEF to MIND. Change INDR_ROW/warn from WARNC to CYCLE. 666660484Sobrien Change WARN_ROW/def and WARN_ROW/indr from MWARN to CWARN. Change 666760484Sobrien WARN_ROW/com from MWARN to WARN. Change WARN_ROW/warn from NOACT 666860484Sobrien to CYCLE. Change SET_ROW/warn from WARNC to CYCLE> 666960484Sobrien (_bfd_generic_link_add_one_symbol): Handle REF, MIND, CWARN and 667060484Sobrien REFC. If a new indirect symbol has been referenced, push the 667160484Sobrien reference down to the symbol it points to. FIx handling of WARN. 667260484Sobrien * aoutx.h (translate_from_native_sym_flags): If N_WARNING, don't 667360484Sobrien clobber e_type of next symbol. 667460484Sobrien (translate_to_native_sym_flags): Likewise. 667560484Sobrien (aout_link_write_symbols): Loop on bfd_link_hash_warning as well 667660484Sobrien as bfd_link_hash_indirect. 667760484Sobrien 667860484Sobrien * libaout.h (struct aout_link_hash_entry): New field written. 667960484Sobrien * aoutx.h (NAME(aout,link_hash_newfunc)): Initialize written. 668060484Sobrien (aout_link_write_symbols): Use written, not root.written. 668160484Sobrien (aout_link_write_other_symbol): Likewise. 668260484Sobrien * sunos.c (sunos_scan_dynamic_symbol): Likewise. 668360484Sobrien * libecoff.h (struct ecoff_link_hash_entry): New field written. 668460484Sobrien * ecoff.c (ecoff_link_hash_newfunc): Initialize written. 668560484Sobrien (ecoff_link_write_external): use written, not root.written. 668660484Sobrien * genlink.h (struct generic_link_hash_entry): New field written. 668760484Sobrien * linker.c (_bfd_link_hash_newfunc): Don't initialize written. 668860484Sobrien (generic_link_hash_newfunc): Initialize written. 668960484Sobrien (_bfd_generic_link_output_symbols): Use written, not root.written. 669060484Sobrien (_bfd_generic_link_write_global_symbol): Likewise. 669160484Sobrien (_bfd_generic_reloc_link_order): Likewise. 669260484Sobrien 669360484Sobrien * libecoff.h (ecoff_data_type): Add linker field. 669460484Sobrien * ecoff.c (ecoff_write_object_contents): Check new tdata linker 669560484Sobrien field, rather than outsymbols being non-NULL, to decide whether to 669660484Sobrien output the symbols and relocs. 669760484Sobrien (ecoff_bfd_final_link): Set new tdata linker field to true. 669860484Sobrien 669960484Sobrien * ecoff.c (ecoff_bfd_copy_private_bfd_data): Don't try to copy 670060484Sobrien data to a non-ECOFF file. 670160484Sobrien 670260484Sobrien * libbfd-in.h: Add warning that libbfd.h is a generated file. 670360484Sobrien * libbfd.h: Rebuilt. 670460484Sobrien 670560484SobrienSun Jun 5 15:02:30 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 670660484Sobrien 670760484Sobrien Changes to support ELF strip and objcopy on dynamically linked 670860484Sobrien files. 670960484Sobrien * elfcode.h (elf_fake_sections): Add prototype. 671060484Sobrien (bfd_section_from_shdr): Make a BFD section from an SHT_HASH 671160484Sobrien section, and from an SHT_DYNSYM section, and from the dynamic 671260484Sobrien string table section. 671360484Sobrien (elf_object_p): Set D_PAGED if there is a program header. 671460484Sobrien (elf_make_sections): Remove. 671560484Sobrien (fix_up_strtabs): Remove. 671660484Sobrien (elf_fake_sections): Rewrite. Now sets sh_entsize. 671760484Sobrien (assign_section_numbers): Rewrite. Now sets sh_link and sh_info 671860484Sobrien for all sections. 671960484Sobrien (elf_compute_section_file_positions): Don't call obsolete 672060484Sobrien functions elf_make_sections or fix_up_strtabs. 672160484Sobrien (swap_out_syms): Set sh_addralign to FILE_ALIGN rather than 4. 672260484Sobrien (NAME(bfd_elf,write_object_contents)): Permit writing DYNAMIC 672360484Sobrien objects. 672460484Sobrien (elf_section_from_bfd_section): Treat SHT_DYNSYM like other normal 672560484Sobrien sections. If an SHT_REL or SHT_RELA section is allocated or uses 672660484Sobrien an unusual symbol table, permit a BFD section to map to it. 672760484Sobrien Permit most SHT_STRTAB sections to have a BFD section mapped to 672860484Sobrien them. 672960484Sobrien (elf_bfd_final_link): Don't set sh_link, sh_info or sh_entsize 673060484Sobrien fields of dynamic sections here; do it in assign_section_numbers. 673160484Sobrien * elf32-target.h, elf64-target.h: Add D_PAGED to permitted object 673260484Sobrien flags. 673360484Sobrien 673460484Sobrien * elf.c (_bfd_elf_make_section_from_shdr): Only set SEC_DATA if 673560484Sobrien SEC_LOAD is set, rather than checking SEC_ALLOC. 673660484Sobrien 673760484Sobrien * libbfd-in.h (bfd_realloc): Change last arg to "size_t size". 673860484Sobrien 673960484SobrienFri Jun 3 10:58:02 1994 Jeff Law (law@snake.cs.utah.edu) 674060484Sobrien 674160484Sobrien * som.c (som_write_object_contents): Don't compute the file header's 674260484Sobrien checksum here. 674360484Sobrien (som_write_headers): Instead do it here. 674460484Sobrien 674560484Sobrien * libbfd.h (bfd_realloc): Change last arg to "size_t size". 674660484Sobrien 674760484SobrienThu Jun 2 17:39:22 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 674860484Sobrien 674960484Sobrien * hosts/sun3.h: Include <stdlib.h>. Don't declare free, exit or 675060484Sobrien getenv. 675160484Sobrien 675260484Sobrien Add linker support for SunOS shared libraries. 675360484Sobrien * sunos.c: Include bfdlink.h. Add many new functions and 675460484Sobrien definitions for SunOS shared library support. 675560484Sobrien * bfd-in.h (bfd_sunos_record_link_assignment): Declare. 675660484Sobrien (bfd_sunos_size_dynamic_sections): Declare. 675760484Sobrien * bfd-in2.h: Rebuilt. 675860484Sobrien * aoutx.h (struct aout_link_hash_entry): Move to libaout.h. 675960484Sobrien (struct aout_link_hash_table): Likewise. 676060484Sobrien (aout_link_hash_lookup, aout_link_hash_traverse): Likewise. 676160484Sobrien (aout_hash_table): Likewise. 676260484Sobrien (NAME(aout,link_hash_newfunc)): Rename from aout_link_hash_newfunc 676360484Sobrien and make externally visible. 676460484Sobrien (NAME(aout,link_hash_table_init)): New function. 676560484Sobrien (NAME(aout,link_hash_table_create)): Call 676660484Sobrien NAME(aout,link_hash_table_init), not _bfd_link_hash_table_init. 676760484Sobrien (aout_link_add_symbols): Don't fail if no symbols. If it exists, 676860484Sobrien call add_dynamic_symbols backend entry point for dynamic objects. 676960484Sobrien Use add_one_symbol backend entry point if it exists. 677060484Sobrien (NAME(aout,final_link)): Call finish_dynamic_link backend entry 677160484Sobrien point, if it exists. 677260484Sobrien (aout_link_input_bfd): For a dynamic object, call 677360484Sobrien link_dynamic_object backend entry point, if it exists. 677460484Sobrien (aout_link_write_other_symbol): Call write_dynamic_symbol backend 677560484Sobrien entry point, if it exists. 677660484Sobrien (aout_link_input_section): Don't read the relocs if they have 677760484Sobrien already been read. 677860484Sobrien (aout_link_input_section_std): When doing a final link, for a 677960484Sobrien reloc against an external symbol, call check_dynamic_reloc backend 678060484Sobrien entry point, if it exists. 678160484Sobrien (aout_link_input_section_ext): Likewise. 678260484Sobrien * libaout.h: Protect against multiple inclusion. Include 678360484Sobrien bfdlink.h. 678460484Sobrien (struct aout_link_hash_entry): Move in from aoutx.h. 678560484Sobrien (struct aout_link_hash_table): Likewise. 678660484Sobrien (aout_link_hash_lookup, aout_link_hash_traverse): Likewise. 678760484Sobrien (aout_hash_table): Likewise. 678860484Sobrien (struct aout_backend_data): Add fields add_dynamic_symbols, 678960484Sobrien add_one_symbol, link_dynamic_object, write_dynamic_symbol, 679060484Sobrien check_dynamic_reloc, and finish_dynamic_link. 679160484Sobrien (struct aout_section_data_struct): Define new structure. 679260484Sobrien (aout_section_data): Define new accessor macro. 679360484Sobrien (NAME(aout,link_hash_newfunc)): Declare. 679460484Sobrien (NAME(aout,link_hash_table_init)): Declare. 679560484Sobrien * aoutf1.h (sunos4_aout_backend): Initialize new aout_backend_data 679660484Sobrien fields. 679760484Sobrien * aout-target.h (MY(backend_data)): Likewise. 679860484Sobrien * i386aout.c (MY(backend_data)): Likewise. 679960484Sobrien * i386mach3.c (MY(backend_data)): Likewise. 680060484Sobrien * mipsbsd.c (MY(backend_data)): Likewise. 680160484Sobrien * sparclynx.c (sparclynx_aout_backend): Likewise. 680260484Sobrien 680360484Sobrien * aoutx.h (NAME(aout,slurp_symbol_table)): Don't zero out cached 680460484Sobrien until we know it is non-NULL. 680560484Sobrien (aout_link_write_symbols): Don't skip a warning symbol even if it 680660484Sobrien has already been written out. If skipping an indirect symbol, 680760484Sobrien skip the next symbol as well. 680860484Sobrien 680960484SobrienWed Jun 1 14:37:50 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 681060484Sobrien 681160484Sobrien * hosts/sun3.h: Don't declare qsort, malloc or realloc. 681260484Sobrien 681360484SobrienThu May 26 13:56:03 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 681460484Sobrien 681560484Sobrien * nlmcode.h (nlm_swap_auxiliary_headers_in): Cast bfd_byte pointer 681660484Sobrien to char pointer to avoid compiler warnings. 681760484Sobrien 681860484Sobrien * dep-in.sed: Remove spaces before colons. 681960484Sobrien 682060484Sobrien Merged changes back in from FSF gas release 2.3: 682160484Sobrien 682260484Sobrien * Makefile.in (stmp-bfd.h): Wrap `if' block around grep 682360484Sobrien invocation, to avoid a bug in BSD 4.4 make. 682460484Sobrien 682560484Sobrien From Ralph Campbell: 682660484Sobrien * mipsbsd.c (mips_fix_jmp_addr): If symbol is undefined, return an 682760484Sobrien error. 682860484Sobrien (mips_fix_hi16_s): Ditto. 682960484Sobrien 683060484Sobrien Fri May 13 21:21:00 1994 DJ Delorie (dj@ctron.com) 683160484Sobrien 683260484Sobrien * makefile.dos: define a default target, or archives won't work 683360484Sobrien due to multiple matches. 683460484Sobrien 683560484Sobrien Wed May 11 22:32:00 1994 DJ Delorie (dj@ctron.com) 683660484Sobrien 683760484Sobrien * configure.bat: update for latest files 683860484Sobrien * makefile.dos: update for correct targets and sources 683960484Sobrien * coff-go32.c: [new] go32's COFF format (i386coff with underscores) 684060484Sobrien * targets.c: add go32coff target 684160484Sobrien * makefile.in: add coff-go32.c support 684260484Sobrien 684360484SobrienThu May 26 10:10:21 1994 Jeff Law (law@snake.cs.utah.edu) 684460484Sobrien 684560484Sobrien * som.c (som_prep_headers): Do not set the system_id here, private 684660484Sobrien bfd data has not been copied yet. 684760484Sobrien (som_write_headers): Instead do it here. 684860484Sobrien 684960484SobrienTue May 24 16:17:18 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 685060484Sobrien 685160484Sobrien Make MIPS ELF use new ELF backend linker. No shared library 685260484Sobrien support yet. 685360484Sobrien * elf32-mips.c (bfd_mips_elf32_swap_gptab_in): New function. 685460484Sobrien (bfd_mips_elf32_swap_gptab_out): New function. 685560484Sobrien (mips_elf_object_p): If last symbol is LOCAL, set elf_bad_symtab. 685660484Sobrien (mips_elf_final_write_processing): Set sh_info field for .gptab.* 685760484Sobrien sections. 685860484Sobrien (mips_elf_fake_sections): Set sh_entsize for .gptab.* sections. 685960484Sobrien (mips_elf_read_ecoff_info): Read and free external symbols last, 686060484Sobrien not first, for clarity. 686160484Sobrien (struct mips_elf_link_hash_entry): Define new structure. 686260484Sobrien (struct mips_elf_link_hash_table): Define new structure. 686360484Sobrien (mips_elf_link_hash_lookup): Define new macro. 686460484Sobrien (mips_elf_link_hash_traverse): Define new macro. 686560484Sobrien (mips_elf_hash_table): Define new macro. 686660484Sobrien (mips_elf_link_hash_newfunc): New static function. 686760484Sobrien (mips_elf_link_hash_table_create): New static function. 686860484Sobrien (mips_elf_add_symbol_hook): New static function. 686960484Sobrien (struct extsym_info): Define new structure. 687060484Sobrien (mips_elf_get_extr, mips_elf_set_index): Remove. 687160484Sobrien (mips_elf_output_extsym): New static function. 687260484Sobrien (gptab_compare): New static function. 687360484Sobrien (mips_elf_final_link): Rewrite to use ELF backend linker, and to 687460484Sobrien merge gptab information in input files. 687560484Sobrien (mips_elf_relocate_hi16): New static function. 687660484Sobrien (mips_elf_relocate_section): New static function. 687760484Sobrien (bfd_elf32_bfd_link_hash_table_create): Define as macro before 687860484Sobrien including elf32-target.h. 687960484Sobrien (elf_backend_relocate_section): Likewise. 688060484Sobrien (elf_backend_add_symbol_hook): Likewise. 688160484Sobrien * elf.c (_bfd_elf_link_hash_newfunc): Rename from 688260484Sobrien elf_link_hash_newfunc and make globally visible. Change caller. 688360484Sobrien (_bfd_elf_link_hash_table_init): New function, broken out of 688460484Sobrien _bfd_elf_link_hash_table_create. 688560484Sobrien (_bfd_elf_link_hash_table_create): Use 688660484Sobrien _bfd_elf_link_hash_table_init. 688760484Sobrien * libelf.h (struct elf_obj_tdata): Add new field bad_symtab. 688860484Sobrien (elf_bad_symtab): Define new accessor macro. 688960484Sobrien (_bfd_elf_link_hash_newfunc): Declare. 689060484Sobrien (_bew_elf_link_hash_table_init): Declare. 689160484Sobrien * elfcode.h (elf_object_p): Call backend object_p hook after 689260484Sobrien swapping in all the section headers. 689360484Sobrien (map_program_segments): Correct typo: Internal for External. 689460484Sobrien (elf_link_add_object_symbols): If elf_bad_symtab is set, read all 689560484Sobrien the symbols. Skip STB_LOCAL symbols rather than giving an error. 689660484Sobrien (elf_bfd_final_link): If elf_bad_symtab is set, allocate space for 689760484Sobrien all symbols, not just locals. 689860484Sobrien (elf_link_output_extsym): Only skip a symbol not mentioned by a 689960484Sobrien regular file if it is mentioned by a dynamic object. 690060484Sobrien (elf_link_input_bfd): If elf_bad_symtab is set, read all the 690160484Sobrien symbols. 690260484Sobrien 690360484SobrienFri May 20 13:38:23 1994 Jeff Law (law@snake.cs.utah.edu) 690460484Sobrien 690560484Sobrien * som.c (som_set_reloc_info): Do not set any relocation info 690660484Sobrien for SOM fixups which are never passed to BFD. 690760484Sobrien 690860484SobrienFri May 20 11:57:05 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 690960484Sobrien 691060484Sobrien * coff-mips.c (mips_relocate_section): Add MIPS_R_JMPADDR overflow 691160484Sobrien checking. 691260484Sobrien 691360484Sobrien * elf32-i386.c (elf_i386_size_dynamic_sections): Add DT_DEBUG to 691460484Sobrien the dynamic linking information for the benefit of the debugger. 691560484Sobrien From Peter Schauer. 691660484Sobrien * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. 691760484Sobrien 691860484Sobrien * elf.c (_bfd_elf_make_section_from_shdr): New function, based on 691960484Sobrien code repeated three times in bfd_section_from_shdr in elfcode.h. 692060484Sobrien * libelf.h (_bfd_elf_make_section_from_shdr): Declare. 692160484Sobrien * elfcode.h (bfd_section_from_shdr): Use new function 692260484Sobrien _bfd_elf_make_section_from_shdr to create BFD sections. If a 692360484Sobrien reloc section does not use the main symbol table, or it is part of 692460484Sobrien the process image, treat it as a normal section, not relocs. 692560484Sobrien * elf32-mips.c (mips_elf_section_from_shdr): Use new function 692660484Sobrien _bfd_elf_make_section_from_shdr. 692760484Sobrien 692860484SobrienThu May 19 11:37:11 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 692960484Sobrien 693060484Sobrien * elf32-target.h, elf64-target.h: Change ar_max_namelen value from 693160484Sobrien 15 to 14 to match SVR4 ar. 693260484Sobrien 693360484Sobrien Add support for ELF shared libraries. Loosely based on work by 693460484Sobrien Eric Youngdale <ericy@cais.com>. 693560484Sobrien * libelf.h (struct elf_backend_data): Add new fields for dynamic 693660484Sobrien linking: elf_backend_create_dynamic_sections, 693760484Sobrien elf_backend_adjust_dynamic_symbol, 693860484Sobrien elf_backend_size_dynamic_sections, 693960484Sobrien elf_backend_finish_dynamic_symbol, 694060484Sobrien elf_backend_finish_dynamic_sections. 694160484Sobrien (struct elf_link_hash_entry): Change type of align field to 694260484Sobrien bfd_size_type. Add fields dynindx, dynstr_index, weakdef, 694360484Sobrien elf_link_hash_flags. 694460484Sobrien (struct elf_link_hash_table): Add fields dynobj, dynsymcount, 694560484Sobrien dynstr, bucketcount. 694660484Sobrien (bfd_elf32_swap_reloc_in, bfd_elf32_swap_reloc_out): Declare. 694760484Sobrien (bfd_elf32_swap_reloca_in, bfd_elf32_swap_reloca_out): Declare. 694860484Sobrien (bfd_elf32_swap_dyn_in, bfd_elf32_swap_dyn_out): Declare. 694960484Sobrien (bfd_elf32_add_dynamic_entry): Declare. 695060484Sobrien (bfd_elf64_swap_reloc_in, bfd_elf64_swap_reloc_out): Declare. 695160484Sobrien (bfd_elf64_swap_reloca_in, bfd_elf64_swap_reloca_out): Declare. 695260484Sobrien (bfd_elf64_swap_dyn_in, bfd_elf64_swap_dyn_out): Declare. 695360484Sobrien (bfd_elf64_add_dynamic_entry): Declare. 695460484Sobrien * elfcode.h (Elf_External_Dyn): Define. 695560484Sobrien (elf_swap_reloc_in): Define as macro using NAME. Make externally 695660484Sobrien visible. 695760484Sobrien (elf_swap_reloc_out): Likewise. 695860484Sobrien (elf_swap_reloca_in, elf_swap_reloca_out): Likewise. 695960484Sobrien (elf_swap_dyn_in, elf_swap_dyn_out): Define as macro using NAME 696060484Sobrien and as new externally visible function. 696160484Sobrien (elf_fake_sections): Set section type of dynamic sections based on 696260484Sobrien section names. 696360484Sobrien (elf_write_phdrs): Remove. 696460484Sobrien (assign_file_position_for_section): Add new align argument. 696560484Sobrien Change all callers. 696660484Sobrien (get_program_header_size): New static function. 696760484Sobrien (struct seg_info): Remove. 696860484Sobrien (map_program_segments): Completely rewrite. 696960484Sobrien (assign_file_positions_except_relocs): Completely rewrite. 697060484Sobrien (assign_file_positions_for_relocs): Don't set a file position for 697160484Sobrien sections which already have one. Don't bother to align the file 697260484Sobrien position here. 697360484Sobrien (section_from_elf_index): Handle SHT_HASH and SHT_DYNAMIC 697460484Sobrien section types. 697560484Sobrien (elf_section_from_bfd_section): Likewise. 697660484Sobrien (elf_slurp_symbol_table): If section_from_elf_index fails, just 697760484Sobrien use bfd_abs_section rather than returning an error. 697860484Sobrien (elf_sizeof_headers): Make useful. 697960484Sobrien (elf_link_record_dynamic_symbol): New static function. 698060484Sobrien (elf_link_add_object_symbols): Handle dynamic objects. 698160484Sobrien (elf_link_create_dynamic_sections): New static function. 698260484Sobrien (elf_add_dynamic_entry): Define as macro using NAME and as new 698360484Sobrien externally visible function. 698460484Sobrien (NAME(bfd_elf,record_link_assignment)): New function. 698560484Sobrien (elf_buckets): New static variable. 698660484Sobrien (NAME(bfd_elf,size_dynamic_sections)): New function. 698760484Sobrien (struct elf_final_link_info): Add dynsym_sec and hash_sec fields. 698860484Sobrien (elf_bfd_final_link): Handle dynamic linking. Create a section 698960484Sobrien symbol for all ELF sections, not all BFD sections. Store section 699060484Sobrien symbol index in target_index field, not index field. Traverse 699160484Sobrien over global symbols even if stripping. 699260484Sobrien (elf_link_output_extsym): Output dynamic symbols. Mark symbols 699360484Sobrien defined by dynamic objects as undefined. 699460484Sobrien (elf_link_input_bfd): Ignore dynamic objects. Use target_index 699560484Sobrien field for section relocs, and make sure it is set. 699660484Sobrien (elf_reloc_link_order): Use target_index field for section relocs, 699760484Sobrien and make sure it is set. 699860484Sobrien * elf.c (elf_link_hash_newfunc): Initialize dynindx, dynstr_index, 699960484Sobrien weakdef and elf_link_hash_flags fields. 700060484Sobrien (_bfd_elf_link_hash_table_create): Initialize dynobj, dynsymcount, 700160484Sobrien dynstr and bucketcount fields. 700260484Sobrien * elf32-target.h: Initialize new dynamic linking fields. 700360484Sobrien * elf64-target.h: Likewise. 700460484Sobrien * elf32-i386.c: New functions for dynamic linking support. 700560484Sobrien * elf32-sparc.c: Likewise. 700660484Sobrien * bfd-in.h (bfd_elf32_record_link_assignment): Declare. 700760484Sobrien (bfd_elf64_record_link_assignment): Declare. 700860484Sobrien (bfd_elf32_size_dynamic_sections): Declare. 700960484Sobrien (bfd_elf64_size_dynamic_sections): Declare. 701060484Sobrien * bfd-in2.h: Rebuilt. 701160484Sobrien 701260484SobrienWed May 18 08:29:04 1994 Ian Lance Taylor (ian@cygnus.com) 701360484Sobrien 701460484Sobrien * som.c: Don't include <sys/dir.h> or <sys/user.h>. 701560484Sobrien (som_reloc_queue_find): Call memcmp instead of bcmp. 701660484Sobrien (som_bfd_reloc_type_lookup): Change first argument to bfd *. 701760484Sobrien (compare_syms): Change types of arguments to const void *. 701860484Sobrien (bfd_section_from_som_symbol): Removed unused local found. 701960484Sobrien (som_write_armap): Add elength, map, orl_count and int arguments. 702060484Sobrien (som_write_armap): Use %ld and cast to long for getuid result. 702160484Sobrien 702260484SobrienWed May 18 09:09:32 1994 Jeff Law (law@snake.cs.utah.edu) 702360484Sobrien 702460484Sobrien * elf32-hppa.h (R_HPPA_ABS_CALL): Define. 702560484Sobrien * elf32-hppa.c (hppa_elf_gen_reloc_type): Handle absolute calls. 702660484Sobrien 702760484Sobrien * som.h (R_HPPA_ABS_CALL): Define. 702860484Sobrien * som.c (hppa_som_gen_reloc_type): Delete complex relocation types. 702960484Sobrien 703060484SobrienTue May 17 19:33:12 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 703160484Sobrien 703260484Sobrien * coff-i960.c (icoff_little_vec, icoff_big_vec): Indicate leading 703360484Sobrien underscore, for compatibility with Intel tool chain (gnu960v2). 703460484Sobrien 703560484SobrienMon May 16 10:09:22 1994 Jeff Law (law@snake.cs.utah.edu) 703660484Sobrien 703760484Sobrien * bfd-in2.h: Rebuilt. 703860484Sobrien 703960484Sobrien * elf32-hppa.c: Change .hppa_linker_stubs to .PARISC.stubs, 704060484Sobrien likewise for other PA specific sections. 704160484Sobrien (hppa_elf_relocate_unwind_table): Delete unused 704260484Sobrien function. 704360484Sobrien (elf_hppa_howto_table): Completely new table based on 94-02-02 704460484Sobrien draft PA ELF spec. Change relocation tags appropriately 704560484Sobrien throughout elf32-hppa.c 704660484Sobrien (hppa_elf_gen_reloc_type): Rewrite and simplify based on 94-02-02 704760484Sobrien spec. 704860484Sobrien (hppa_elf_reloc): Likewise. 704960484Sobrien (hppa_look_for_stubs_in_section): Likewise 705060484Sobrien (ELF_MACHINE_CODE): Change to EM_PARISC. 705160484Sobrien * elf32-hppa.h: Include "elf/hppa.h". Change relocation tags 705260484Sobrien appropriately throughout elf32-hppa.h. 705360484Sobrien (elf32_hppa_reloc_type): New table based on 94-02-02 draft PA ELF 705460484Sobrien spec. 705560484Sobrien (R_HPPA_ABS_CALL, R_HPPA_COMPLEX*, R_HPPA_UNWIND): Delete definitions. 705660484Sobrien * elfcode.h (prep_headers): Use EM_PARISC instead of EM_HPPA. 705760484Sobrien * reloc.c (bfd_reloc_code_real): Delete unused HPPA relocations. 705860484Sobrien * som.h (R_HPPA_ABS_CALL, R_HPPA_COMPLEX): Delete definitions. 705960484Sobrien 706060484Sobrien * libhppa.h (hppa_field_adjust): Avoid adding constant_value into 706160484Sobrien the final value twice for LR and RR field selectors. 706260484Sobrien 706360484SobrienSat May 14 09:09:19 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 706460484Sobrien 706560484Sobrien * aoutx.h (add_to_stringtab): Use BFD_ASSERT not assert. This 706660484Sobrien avoids __eprintf troubles. 706760484Sobrien 706860484SobrienFri May 13 10:51:21 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 706960484Sobrien 707060484Sobrien * bout.c (b_out_bfd_reloc_type_lookup): Handle BFD_RELOC_CTOR. 707160484Sobrien 707260484Sobrien * config/mipsbelf.mt (SELECT_VECS): Add ecoff_big_vec and 707360484Sobrien ecoff_little_vec since Irix 5 supports ECOFF executables. 707460484Sobrien 707560484SobrienWed May 11 00:31:57 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 707660484Sobrien 707760484Sobrien * ecoff.c (ecoff_find_nearest_line): Handle fdr.adr != pdr.adr 707860484Sobrien correctly. 707960484Sobrien 708060484Sobrien * Makefile.in (stmp-bfd.h): Use || instead of ; to force SunOS 708160484Sobrien make to invoke the shell. 708260484Sobrien 708360484SobrienTue May 10 14:23:43 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 708460484Sobrien 708560484Sobrien * section.c (SEC_COFF_SHARED_LIBRARY): Renamed from 708660484Sobrien SEC_SHARED_LIBRARY for clarity. Changed all uses. 708760484Sobrien * bfd-in2.h: Rebuilt. 708860484Sobrien * coffcode.h (sec_to_styp_flags): If SEC_COFF_SHARED_LIBRARY is 708960484Sobrien set, set STYP_NOLOAD. 709060484Sobrien * coffgen.c (coff_section_from_bfd_index): Don't get an assertion 709160484Sobrien failure because of a bad shared library. 709260484Sobrien 709360484SobrienMon May 9 18:53:40 1994 Bill Cox (bill@rtl.cygnus.com) 709460484Sobrien 709560484Sobrien * linker.c: Add missing comment terminator. 709660484Sobrien 709760484SobrienMon May 9 11:53:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 709860484Sobrien 709960484Sobrien * linker.c (_bfd_generic_link_add_one_symbol): If hashp and *hashp 710060484Sobrien are not NULL, assume the caller has already looked up the symbol 710160484Sobrien in the hash table and has stored the entry in *hashp. 710260484Sobrien (generic_link_add_symbol_list): Set h to NULL before calling 710360484Sobrien _bfd_generic_link_add_one_symbol. 710460484Sobrien * ecoff.c (ecoff_link_add_externals): Likewise. 710560484Sobrien 710660484Sobrien * elfcode.h (assign_file_positions_except_relocs): Don't require 710760484Sobrien page shared between .data and .bss segments to contain zeroes. 710860484Sobrien 710960484Sobrien * elfcode.h: Include bfdlink.h. Added several new functions to do 711060484Sobrien linking. 711160484Sobrien (ELF_R_TYPE): Define. 711260484Sobrien (bfd_add_to_strtab): Return unsigned long. Change check for 711360484Sobrien realloc failure. 711460484Sobrien (elf_fake_sections): Check return value of bfd_add_to_strtab. 711560484Sobrien (elf_compute_section_file_positions): Add link_info argument. 711660484Sobrien Call elf_backend_begin_write_processing hook and prep_headers 711760484Sobrien here. Only call swap_out_syms if link_info is NULL. Set up 711860484Sobrien .shstrtab section here. Pass dosyms argument to 711960484Sobrien assign_file_positions_except_relocs. Set output_has_begun flag. 712060484Sobrien (assign_file_positions_for_symtab_and_strtabs): Add dosyms 712160484Sobrien argument, and use it to control setting .symtab and .strtab file 712260484Sobrien positions. 712360484Sobrien (assign_file_positions_except_relocs): Add dosyms argument, and 712460484Sobrien pass it on. 712560484Sobrien (prep_headers): Check return value of bfd_add_to_strtab. 712660484Sobrien (swap_out_syms): Likewise. Also, don't set up .shstrtab here. 712760484Sobrien (NAME(bfd_elf,write_object_contents)): Some calls moved into 712860484Sobrien elf_compute_section_file_positions. 712960484Sobrien (elf_set_section_contents): Likewise. 713060484Sobrien (elf_slurp_symbol_table): SHN_LORESERV corrected to SHN_LORESERVE. 713160484Sobrien * libelf.h: Include bfdlink.h. 713260484Sobrien (struct elf_backend_data): Add fields collect, 713360484Sobrien elf_add_symbol_hook, elf_backend_relocate_section. 713460484Sobrien (struct bfd_elf_section_data): Add field rel_hashes. 713560484Sobrien (struct elf_obj_tdata): Remove fields internal_syms and symbols. 713660484Sobrien Add field sym_hashes. 713760484Sobrien (obj_symbols, obj_internal_syms): Remove definitions. 713860484Sobrien (elf_sym_hashes): Define. 713960484Sobrien (struct elf_link_hash_entry): Define. 714060484Sobrien (struct elf_link_hash_table): Define. 714160484Sobrien (elf_link_hash_lookup): Define. 714260484Sobrien (elf_link_hash_traverse): Define. 714360484Sobrien (elf_hash_table): Define. 714460484Sobrien (_bfd_elf_link_hash_table_create): Declare. 714560484Sobrien (bfd_elf32_bfd_link_add_symbols): Declare. 714660484Sobrien (bfd_elf32_bfd_final_link): Declare. 714760484Sobrien (bfd_elf64_bfd_link_add_symbols): Declare. 714860484Sobrien (bfd_elf64_bfd_final_link): Declare. 714960484Sobrien * elf.c: Include bfdlink.h. 715060484Sobrien (elf_link_hash_newfunc): New function. 715160484Sobrien (_bfd_elf_link_hash_table_create): New function. 715260484Sobrien * elf32-target.h (elf_backend_relocate_section): If not defined, 715360484Sobrien define as 0 and use generic linker. Otherwise, use ELF backend 715460484Sobrien linker. 715560484Sobrien (elf_backend_collect): If not defined, define as false. 715660484Sobrien (elf_backend_add_symbol_hook): If not defined, define as 0. 715760484Sobrien (elf32_bed): Initialize new fields. 715860484Sobrien * elf64-target.h: Same changes as elf32-target.h. 715960484Sobrien * elf32-i386.c: Include bfdlink.h. 716060484Sobrien (elf_i386_relocate_section): New function. 716160484Sobrien (elf_backend_relocate_section): Define. 716260484Sobrien * elf32-sparc.c: Include bfdlink.h. 716360484Sobrien (elf_info_to_howto): Change type of dst from Elf32_Internal_Rela 716460484Sobrien to Elf_Internal_Rela (they're the same type anyhow). 716560484Sobrien (elf_sparc_relocate_section): New function. 716660484Sobrien (elf_backend_relocate_section): Define. 716760484Sobrien * elf32-mips.c (elf_backend_collect): Define. 716860484Sobrien 716960484Sobrien * Makefile.in (stmp-bfd.h): Avoid useless make error message in a 717060484Sobrien different way; touch takes a numeric argument on some systems. 717160484Sobrien 717260484SobrienFri May 6 13:34:14 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 717360484Sobrien 717460484Sobrien * nlmcode.h (nlm_swap_auxiliary_headers_in): Rework custom header 717560484Sobrien handling for latest suggested format. 717660484Sobrien (nlm_swap_auxiliary_headers_out): Likewise. 717760484Sobrien (nlm_compute_section_file_positions): Likewise. 717860484Sobrien 717960484SobrienFri May 6 11:11:50 1994 D. V. Henkel-Wallace (gumby@rtl.cygnus.com) 718060484Sobrien 718160484Sobrien * config.bfd: handle erricsson config (for OSE). 718260484Sobrien 718360484SobrienThu May 5 15:40:47 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 718460484Sobrien 718560484Sobrien Patches from Ralph Campbell: 718660484Sobrien * mipsbsd.c (mips_fix_jmp_addr): New function. 718760484Sobrien (mips_fix_hi16_s): Use bfd_is_com_section. 718860484Sobrien (mips_howto_table_ext): Call mips_fix_jmp_addr for MIPS_RELOC_JMP. 718960484Sobrien 719060484SobrienFri May 6 11:48:55 1994 Steve Chamberlain (sac@cygnus.com) 719160484Sobrien 719260484Sobrien * config/go32.mh: XX support. 719360484Sobrien 719460484Sobrien From bill 719560484Sobrien * Makefile.in: Build sysdep.h without causing worrying but 719660484Sobrien harmless error message. 719760484Sobrien 719860484SobrienWed May 4 11:09:53 1994 Ian Lance Taylor (ian@cygnus.com) 719960484Sobrien 720060484Sobrien Changed m68k-aout to set flags to 0; m68k-sunos still uses 1. 720160484Sobrien * aout0.c: New file. 720260484Sobrien * targets.c (aout0_big_vec): Declare. 720360484Sobrien (bfd_target_vector): Add aout0_big_vec. 720460484Sobrien * config.bfd (m68*-*-aout*): Use m68k-0aout, not m68k-aout. 720560484Sobrien * config/m68k-aout.mt (SELECT_VECS): Removed. 720660484Sobrien * config/m68k-0aout.mt: New file. 720760484Sobrien * configure.in (aout0_big_vec): New target vector: use aout0.o, 720860484Sobrien aout32.o and stab-syms.o. 720960484Sobrien * Makefile.in: Rebuilt dependencies. 721060484Sobrien (BFD32_BACKENDS): Add aout0.o. 721160484Sobrien (CFILES): Add aout0.c. 721260484Sobrien 721360484Sobrien * libaout.h (struct aout_backend_data): Add field exec_hdr_flags. 721460484Sobrien * aout-target.h (MY_exec_hdr_flags): If not defined, define as 0. 721560484Sobrien MY(backend_data): Initialize exec_hdr_flags field. 721660484Sobrien * aoutf1.h (sunos_32_set_arch_mach): Make static. 721760484Sobrien (aout32_sunos4_write_object_contents): Set flags from backend 721860484Sobrien info. 721960484Sobrien (MY_exec_hdr_flags): If not defined, define as 1. 722060484Sobrien (sunos4_aout_backend): Initialize exec_hdr_flags field. 722160484Sobrien * aout-encap.c (encap_write_object_contents): Set flags from 722260484Sobrien backend info. 722360484Sobrien (MY_exec_hdr_flags): Define as N_FLAGS_COFF_ENCAPSULATE. 722460484Sobrien * hp300hpux.c (MY_exec_hdr_flags): Define as 0x2. 722560484Sobrien (MY(write_object_contents)): Set flags from backend info. 722660484Sobrien * i386aout.c (MY(backend_data)): Initialize exec_hdr_flags field. 722760484Sobrien * i386mach3.c (MY(backend_data)): Likewise. 722860484Sobrien * mipsbsd.c (MY(backend_data)): Likewise. 722960484Sobrien * sparclynx.c (NAME(aout,sparclynx_write_object_contents)): Set 723060484Sobrien flags from backend info. 723160484Sobrien (sparclynx_aout_backend): Initialize exec_hdr_flags field. 723260484Sobrien 723360484SobrienWed May 4 02:56:00 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com) 723460484Sobrien 723560484Sobrien * config.bfd (i386-*-gnu*): Treat like i386-*-mach*. 723660484Sobrien (m68*-apollo-*): Treat all Apollo configs the same, don't handle 723760484Sobrien BSD specially. 723860484Sobrien 723960484SobrienTue May 3 19:43:21 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 724060484Sobrien 724160484Sobrien * cache.c: Rewrote to work correctly. 724260484Sobrien * libbfd.h: Rebuilt. 724360484Sobrien * opncls.c (bfd_cache_init, bfd_open_file): Don't declare. 724460484Sobrien (bfd_fdopenr): Check return value of bfd_cache_init. 724560484Sobrien 724660484SobrienFri Apr 29 15:08:23 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 724760484Sobrien 724860484Sobrien * cf-m68klynx.c (CALC_ADDEND): Check for PC relative relocs by 724960484Sobrien enumerating them, since the reloc type can not serve as an index 725060484Sobrien into the m68k COFF howto_table. 725160484Sobrien 725260484SobrienFri Apr 29 09:42:39 1994 Steve Chamberlain (sac@cygnus.com) 725360484Sobrien 725460484Sobrien * config.bfd (*-go32): Changed to coff. 725560484Sobrien * coff-h8300.c (JMPL1): Get HOWTO right for 24bit branches. 725660484Sobrien * srec.c (srec_write_symbols): Write out the correct number of 725760484Sobrien symbols and don't stick in extra nulls. 725860484Sobrien 725960484SobrienTue Apr 26 15:07:24 1994 Stan Shebs (shebs@andros.cygnus.com) 726060484Sobrien 726160484Sobrien * cf-sparclynx.c (LYNXOS, COFF_LONG_FILENAMES): Define. 726260484Sobrien * coff-sparc.c (BADMAG): Recognize LYNXCOFFMAGIC. 726360484Sobrien (COFF_SPARC): Define. 726460484Sobrien * coffcode.h (coff_new_section_hook): If COFF_SPARC, set alignment 726560484Sobrien power of data and bss sections to 3. 726660484Sobrien * hosts/lynx.h (__LYNXOS): Define. 726760484Sobrien 726860484SobrienTue Apr 26 15:04:26 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 726960484Sobrien 727060484Sobrien * elf32-hppa.c (hppa_elf_reloc): Adjust the addend of relocations 727160484Sobrien against section symbols to avoid losing during ld -r. 727260484Sobrien 727360484SobrienTue Apr 26 12:16:41 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 727460484Sobrien 727560484Sobrien * elfcode.h (shstrtab_length_fixed): Remove useless static 727660484Sobrien variable. 727760484Sobrien (struct elf_sect_data): Remove unused structure. 727860484Sobrien (elf_object_p): Free memory if error occurs. Check return value 727960484Sobrien of bfd_default_set_arch_mach. If elf_get_str_section fails, 728060484Sobrien preserve error code rather than setting wrong_format. 728160484Sobrien (null_shdr): Remove static variable. 728260484Sobrien (assign_section_numbers): Remove shstrtab_length_fixed assignment. 728360484Sobrien Allocate first section header on BFD obstack rather than using 728460484Sobrien null_shdr. 728560484Sobrien (bfd_prpsinfo): Remove unused local variable newsect. 728660484Sobrien 728760484SobrienMon Apr 25 15:31:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 728860484Sobrien 728960484Sobrien * elfcode.h (write_relocs): Undo patch of Apr 10; breaks Solaris. 729060484Sobrien 729160484Sobrien * elfcode.h (bfd_section_from_shdr): Use bfd_make_section_anyway 729260484Sobrien to create sections. Check return value of recursive calls. 729360484Sobrien (bfd_section_from_phdr): Check return value of bfd_make_section. 729460484Sobrien (elf_symbol_from_bfd_symbol): Likewise. 729560484Sobrien (elf_object_p): Check return value of bfd_section_from_shdr. 729660484Sobrien (section_from_elf_index): Likewise. 729760484Sobrien (elf_slurp_symbol_table): Check return value of 729860484Sobrien section_from_elf_index. 729960484Sobrien (bfd_prstatus): Return boolean value. Check return value of 730060484Sobrien bfd_make_section. 730160484Sobrien (bfd_fpregset): Likewise. 730260484Sobrien (bfd_prpsinfo): Return boolean value. 730360484Sobrien (elf_corefile_note): Check return values of bfd_prstatus, 730460484Sobrien bfd_fpregset, and bfd_prpsinfo. 730560484Sobrien (elf_core_file_p): Check return value of elf_corefile_note. 730660484Sobrien 730760484SobrienFri Apr 22 11:08:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 730860484Sobrien 730960484Sobrien Get rid of the ECOFF .reginfo section hack. 731060484Sobrien * ecoff.c (ecoff_mkobject_hook): Don't create a .reginfo section. 731160484Sobrien (ecoff_new_section_hook): Don't handle the .reginfo section. 731260484Sobrien (ecoff_sizeof_headers): Likewise. 731360484Sobrien (ecoff_get_section_contents): Likewise. 731460484Sobrien (ecoff_compute_section_file_positions): Likewise. 731560484Sobrien (ecoff_compute_reloc_file_positions): Likewise. 731660484Sobrien (ecoff_set_section_contents): Likewise. 731760484Sobrien (ecoff_write_object_contents): Likewise. 731860484Sobrien (ecoff_bfd_final_link): Likewise. 731960484Sobrien (ecoff_bfd_copy_private_bfd_data): Copy the GP value and the 732060484Sobrien register masks. 732160484Sobrien (bfd_ecoff_get_gp_value): New function. 732260484Sobrien (bfd_ecoff_set_gp_value): New function. 732360484Sobrien (bfd_ecoff_set_regmasks): New function. 732460484Sobrien * bfd-in.h (bfd_ecoff_get_gp_value): Declare. 732560484Sobrien (bfd_ecoff_set_gp_value): Declare. 732660484Sobrien (bfd_ecoff_set_regmasks): Declare. 732760484Sobrien * bfd-in2.h: Rebuilt. 732860484Sobrien 732960484Sobrien Fix ECOFF objcopy to actually copy debugging information. 733060484Sobrien * ecoff.c (ecoff_bfd_copy_private_bfd_data): New function. 733160484Sobrien (ecoff_get_extr): Assume that any ECOFF symbol with local clear is 733260484Sobrien an external symbol, rather than checking the symbol flags. Only 733360484Sobrien check the flags for non-ECOFF symbols. 733460484Sobrien * ecofflink.c (bfd_ecoff_debug_externals): Don't crash if the 733560484Sobrien output_section field of the symbol section is NULL. 733660484Sobrien * libecoff.h (ecoff_bfd_copy_private_bfd_data): Declare as 733760484Sobrien function rather than defining as macro. 733860484Sobrien 733960484Sobrien * ieee.c (ieee_object_p): Set bfd_error_got_wrong_format if 734060484Sobrien appropriate. 734160484Sobrien 734260484Sobrien * targets.c (bfd_target_vector): Add bfd_elf32_powerpc_vec. 734360484Sobrien 734460484Sobrien * aout-adobe.c (aout_adobe_set_arch_mach): Check return value of 734560484Sobrien bfd_default_set_arch_mach. Accept bfd_arch_m68k as well as 734660484Sobrien bfd_arch_unknown. 734760484Sobrien * coffcode.h (coff_set_arch_mach): Check return value of 734860484Sobrien bfd_default_set_arch_mach. 734960484Sobrien * elfcode.h (elf_set_arch_mach): Don't check a list of ELF 735060484Sobrien architectures, just see if the desired architecture matches what 735160484Sobrien the ELF backend permits. 735260484Sobrien 735360484Sobrien * coffcode.h (coff_set_arch_mach_hook): Rename SHMAGIC to 735460484Sobrien SH_ARCH_MAGIC to match change in coff/sh.h. 735560484Sobrien (coff_set_flags): Likewise. 735660484Sobrien 735760484Sobrien Follow convention in which each NLM header has an 8 byte stamp 735860484Sobrien followed by a four byte length. 735960484Sobrien * libnlm.h (struct nlm_obj_tdata): Rename nlm_cygnus_section_hdr 736060484Sobrien to nlm_cygnus_ext_header, and change type to 736160484Sobrien Nlm_Internal_Cygnus_Ext_Header. 736260484Sobrien (nlm_cygnus_ext_header): Rename from nlm_cygnus_section_header. 736360484Sobrien * nlmcode.h (nlm_swap_auxiliary_headers_in): Use CyGnUsEx instead 736460484Sobrien of CyGnUsSeCs. Rename from cygnus_section to cygnus_ext. Require 736560484Sobrien length word to be 8. 736660484Sobrien (nlm_swap_auxiliary_headers_out): Rename from cygnus_section to 736760484Sobrien cygnus_ext. Set length word to 8. 736860484Sobrien (nlm_compute_section_file_positions): Rename from cygnus_section 736960484Sobrien to cygnus_ext. 737060484Sobrien 737160484SobrienThu Apr 21 22:54:22 1994 Stu Grossman (grossman at cygnus.com) 737260484Sobrien 737360484Sobrien * nlmcode.h (nlm_swap_auxiliary_headers_in): Keep section table 737460484Sobrien (from CyGnUsSeCs) in more permanent memory to keep section names 737560484Sobrien from getting trashed. 737660484Sobrien 737760484SobrienThu Apr 21 09:29:37 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 737860484Sobrien 737960484Sobrien * libelf.h (elf_obj_tdata): Add members for dynamic symbol table 738060484Sobrien handling. 738160484Sobrien * elfcode.h (bfd_section_from_shdr): Handle dynamic symbol table. 738260484Sobrien * elfcode.h (elf_slurp_symbol_table): Take additional parameter 738360484Sobrien to select static or dynamic symbol table and return number of 738460484Sobrien symbols slurped or -1 on error. 738560484Sobrien * elfcode.h (elf_get_symtab): Set bfd symcount from 738660484Sobrien elf_slurp_symbol_table result. 738760484Sobrien * elfcode.h (elf_get_dynamic_symtab_upper_bound, 738860484Sobrien elf_canonicalize_dynamic_symtab): New functions to handle dynamic 738960484Sobrien symbol table. 739060484Sobrien * elf32-target.h, elf64-target.h (BFD_JUMP_TABLE_DYNAMIC): 739160484Sobrien Change to handle dynamic symbol table, provide default definitions 739260484Sobrien for dynamic relocs. 739360484Sobrien * aoutx.h (howto_table_std, NAME(aout,swap_std_reloc_out), 739460484Sobrien NAME(aout,swap_std_reloc_in), aout_link_input_section_std, 739560484Sobrien aout_link_reloc_link_order): Handle r_jmptable and r_relative 739660484Sobrien relocations. 739760484Sobrien 739860484SobrienThu Apr 21 11:58:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 739960484Sobrien 740060484Sobrien Clean up uses of _bfd_dummy_target (from Peter Schauer). 740160484Sobrien * libbfd.c (_bfd_dummy_target): Set bfd_error_wrong_format. 740260484Sobrien * nlm-target.h (nlm_core_file_p): Define as _bfd_dummy_target, not 740360484Sobrien NULL. 740460484Sobrien * srec.c (srec_vec): Use _bfd_dummy_target, not NULL, in 740560484Sobrien _bfd_check_format. 740660484Sobrien (symbolsrec_vec): Likewise. 740760484Sobrien * tekhex.c (tekhex_vec): Likewise. 740860484Sobrien 740960484Sobrien * libnlm.h (struct nlm_obj_tdata): Add nlm_cygnus_section_hdr 741060484Sobrien field. 741160484Sobrien (nlm_cygnus_section_header): New accessor macro. 741260484Sobrien * nlmcode.h (nlm_object_p): Free new tdata structure if failure. 741360484Sobrien Add fixed sections before swapping in auxiliary headers. After 741460484Sobrien adding sections, treat errors as real, not as wrong format. 741560484Sobrien (nlm_swap_auxiliary_headers_in): Swap in the sections header; add 741660484Sobrien sections to the BFD for each section it describes. 741760484Sobrien (nlm_swap_auxiliary_headers_out): Swap out the sections header. 741860484Sobrien (nlm_compute_section_file_positions): Account for the size of the 741960484Sobrien sections header. 742060484Sobrien 742160484SobrienWed Apr 20 16:45:51 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 742260484Sobrien 742360484Sobrien * coff-sparc.c (sparccoff_vec): Change minimum alignment power to 742460484Sobrien 2, so that stab sections can be multiples of 4 bytes only. 742560484Sobrien 742660484Sobrien * hosts/i386aix.h: Changes to avoid prototypes conflicts with the 742760484Sobrien ones defined in stdlib.h. (From Minh Tran-Le.) 742860484Sobrien 742960484SobrienWed Apr 20 14:15:21 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 743060484Sobrien 743160484Sobrien * nlm32-ppc.c: Complete rewrite for new version of PowerPC 743260484Sobrien NetWare. Old code still present, but ifdeffed out. 743360484Sobrien 743460484Sobrien * nlmcode.h (nlm_swap_auxiliary_headers_in): Don't assume a 743560484Sobrien particular format for the customer header. Allocate a block of 743660484Sobrien memory and read it into that. 743760484Sobrien (nlm_swap_auxiliary_headers_out): Write out the block of memory. 743860484Sobrien (nlm_compute_section_file_positions): Include length of customer 743960484Sobrien header when computing its size. 744060484Sobrien 744160484SobrienMon Apr 18 14:27:17 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 744260484Sobrien 744360484Sobrien * som.c (som_prep_headers): Get the space's number from the 744460484Sobrien backend private section data rather than target_index. 744560484Sobrien (bfd_som_set_section_attributes): Store the space's number 744660484Sobrien in the backend private section data rather than target_index. 744760484Sobrien 744860484Sobrien * som.h (som_copyable_section_data_struct): Add space_number. 744960484Sobrien 745060484SobrienFri Apr 15 12:22:07 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 745160484Sobrien 745260484Sobrien * coff-a29k.c (reloc_processing): Always set the address of a 745360484Sobrien R_IHCONST reloc to that of the immediately preceding R_IHIHALF. 745460484Sobrien gas does this anyhow, but some other assemblers seem to leave 745560484Sobrien garbage in the R_IHCONST address field. 745660484Sobrien 745760484Sobrien * bfd/archive.c: Consistently use ARFMAG; from 745860484Sobrien schwab@issan.informatik.uni-dortmund.de (Andreas Schwab). 745960484Sobrien (_bfd_write_archive_contents): Use ARFMAG rather than '`' and 746060484Sobrien '\012'. 746160484Sobrien (bsd_write_armap): Likewise. 746260484Sobrien (coff_write_armap): Likewise. 746360484Sobrien 746460484Sobrien * coff-mips.c (mips_relocate_section): When relaxing, adjust local 746560484Sobrien relocs against the .text section as required. 746660484Sobrien * ecofflink.c (bfd_ecoff_debug_accumulate): When relaxing, adjust 746760484Sobrien PDR addresses as required. 746860484Sobrien 746960484Sobrien * ecoff.c (ecoff_emit_aggregate): Take fdr argument. Map fdr 747060484Sobrien index through rfd map if it exists. Check for a couple of cases 747160484Sobrien which gdb handles specially. Change all callers. 747260484Sobrien (ecoff_type_to_string): Take fdr argument rather than aux_ptr and 747360484Sobrien bigendian argument. Change all callers. 747460484Sobrien (ecoff_print_symbol): Handle stStruct, stUnion and stEnum. 747560484Sobrien 747660484SobrienThu Apr 14 13:05:10 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 747760484Sobrien 747860484Sobrien * coff-mips.c (mips_howto_table): Add dummy entries to account for 747960484Sobrien numbering changes in include/coff/mips.h. Add entries for 748060484Sobrien MIPS_R_RELHI and MIPS_R_RELLO. 748160484Sobrien (mips_ecoff_swap_reloc_in): Handle an extra bit for the reloc type 748260484Sobrien when little endian. Treat internal MIPS_R_RELLO or MIPS_R_RELHI 748360484Sobrien relocs like MIPS_R_SWITCH, and convert r_offset from 24 to 32 748460484Sobrien bits. 748560484Sobrien (mips_ecoff_swap_reloc_out): Likewise. 748660484Sobrien (mips_adjust_reloc_in): Handle internal MIPS_R_RELLO or 748760484Sobrien MIPS_R_RELHI relocs like MIPS_R_SWITCH. 748860484Sobrien (mips_adjust_reloc_out): Likewise. 748960484Sobrien (mips_relhi_addr, mips_relhi_addend): New static variables. 749060484Sobrien (mips_relhi_reloc, mips_rello_reloc): New functions. 749160484Sobrien (mips_bfd_reloc_type_lookup): Turn BFD_RELOC_PCREL_HI16_S into 749260484Sobrien MIPS_R_RELHI and turn BFD_RELOC_PCREL_LO16 into MIPS_R_RELLO. 749360484Sobrien (mips_relocate_hi): Rename from mips_relocate_refhi, and add pcrel 749460484Sobrien argument. Changed all callers. 749560484Sobrien (mips_relocate_section): Rename got_reflo to got_lo and 749660484Sobrien reflo_int_rel to lo_int_rel. Handle MIPS_R_RELLO and MIPS_R_RELHI 749760484Sobrien relocs. 749860484Sobrien (mips_relax_section): Adjust MIPS_R_RELHI/MIPS_R_RELLO pairs when 749960484Sobrien expanding a PC relative call. 750060484Sobrien 750160484Sobrien * reloc.c (bfd_reloc_code_real_type): Add BFD_RELOC_PCREL_HI16_S 750260484Sobrien and BFD_RELOC_PCREL_LO16. 750360484Sobrien * bfd-in2.h: Rebuilt. 750460484Sobrien 750560484SobrienWed Apr 13 11:50:07 1994 Stan Shebs (shebs@andros.cygnus.com) 750660484Sobrien 750760484Sobrien * coff-sparc.c (sparccoff_vec): Set minimum alignment power to 3. 750860484Sobrien 750960484SobrienTue Apr 12 13:36:20 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 751060484Sobrien 751160484Sobrien * som.c (som_write_fixups): Always emit at least 751260484Sobrien one relocation for any non-bss section. 751360484Sobrien 751460484SobrienMon Apr 11 14:41:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 751560484Sobrien 751660484Sobrien * elfcode.h (assign_file_positions_except_relocs): Don't require 751760484Sobrien the file alignment to correspond to the page size when linking 751860484Sobrien with -N. 751960484Sobrien 752060484SobrienSun Apr 10 01:02:24 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 752160484Sobrien 752260484Sobrien * elfcode.h (write_relocs): For rela relocations, adjust the 752360484Sobrien addend for relocations involving section symbols to account 752460484Sobrien for the lossage of 1:1 mapping from input section symbols to 752560484Sobrien output section symbols. 752660484Sobrien 752760484SobrienFri Apr 8 12:22:02 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 752860484Sobrien 752960484Sobrien * aoutx.h (NAME(aout,make_sections)): New function. 753060484Sobrien (NAME(aout,some_aout_object_p)): Call NAME(aout,make_sections) 753160484Sobrien rather than making sections inline. 753260484Sobrien (NAME(aout,mkobject)): Don't make any sections. 753360484Sobrien (NAME(aout,adjust_sizes_and_vmas)): Call NAME(aout,make_sections). 753460484Sobrien (NAME(aout,final_link)): Don't dereference obj_textsec (abfd) or 753560484Sobrien obj_datasec (abfd) if they are NULL. 753660484Sobrien * libaout.h (NAME(aout,make_sections)): Declare. 753760484Sobrien * bout.c (b_out_mkobject): Don't make any sections. 753860484Sobrien (b_out_write_object_contents): Call aout_32_make_sections. 753960484Sobrien (b_out_set_section_contents): Likewise. 754060484Sobrien * i386os9k.c (os9k_mkobject): Don't make any sections. 754160484Sobrien (os9k_write_object_contents): Call aout_32_make_sections. 754260484Sobrien (os9k_set_section_contents): Likewise. 754360484Sobrien 754460484Sobrien * aoutx.h (NAME(aout,new_section_hook)): Don't set N_EXT in target 754560484Sobrien index. 754660484Sobrien 754760484SobrienWed Apr 6 20:44:56 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 754860484Sobrien 754960484Sobrien * config.bfd, configure.host: Add mips-*-sysv4* support. 755060484Sobrien 755160484SobrienThu Apr 7 14:23:05 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 755260484Sobrien 755360484Sobrien * coff-mips.c (mips_howto_table): Add entry for MIPS_R_SWITCH. 755460484Sobrien (mips_ecoff_swap_reloc_in): For MIPS_R_SWTICH, copy r_symndx into 755560484Sobrien r_offset and set r_symndx to RELOC_SECTION_TEXT. 755660484Sobrien (mips_ecoff_swap_reloc_out): For MIPS_R_SWITCH, get the r_symndx 755760484Sobrien value from the r_offset field. 755860484Sobrien (mips_adjust_reloc_in): Maximum r_type value is now MIPS_R_SWITCH. 755960484Sobrien For MIPS_R_SWITCH, copy the r_offset field into the addend field. 756060484Sobrien (mips_adjust_reloc_out): For MIPS_R_SWITCH, copy the addend field 756160484Sobrien into the r_offset field. 756260484Sobrien (mips_switch_reloc): New function. 756360484Sobrien (mips_bfd_reloc_type_lookup): Translate BFD_RELOC_GPREL32 into 756460484Sobrien MIPS_R_SWITCH. 756560484Sobrien (mips_relocate_section): Handle MIPS_R_SWITCH. 756660484Sobrien (mips_relax_section): Adjust MIPS_R_SWITCH offset if necessary. 756760484Sobrien 756860484SobrienThu Apr 7 11:10:51 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 756960484Sobrien 757060484Sobrien * elfcode.h (elf_set_section_contents): Support calling the backend 757160484Sobrien function elf_backend_begin_write_processing when just beginning to 757260484Sobrien write an object file. 757360484Sobrien 757460484Sobrien * libelf.h (elf_backend_begin_write_processing): Declare. 757560484Sobrien 757660484Sobrien * elf{32,64}-target.h (elf_backend_begin_write_processing): Provide 757760484Sobrien a default definition. 757860484Sobrien (elf{32,64}_bed): Add elf_backend_begin_write_processing. 757960484Sobrien 758060484Sobrien * elf32-hppa.h (elf_hppa_tc_symbol): Delete extern declaration. 758160484Sobrien (elf_hppa_tc_make_sections): Likewise. 758260484Sobrien 758360484Sobrien * elf32-hppa.c (symext_chain_built): Delete. 758460484Sobrien (symext_chain_size): Renamed from symextn_contents_real_size. 758560484Sobrien (elf32_hppa_backend_{begin,final}_write_processing): New functions. 758660484Sobrien (add_entry_to_symext_chain): New function. 758760484Sobrien (hppa_elf_set_section_contents): Ignore writes to the symbol extension 758860484Sobrien section until it's been rebuilt internally. 758960484Sobrien (hppa_elf_get_section_contents): Symbol extension section is no 759060484Sobrien longer special. 759160484Sobrien (elf_backend_{begin,final}_write_processing): Define. 759260484Sobrien (elf_hppa_tc_make_sections): Simplify now that much code has 759360484Sobrien migrated into elf32_hppa_backend_{being,final}_write_processing. 759460484Sobrien 759560484SobrienWed Apr 6 17:24:14 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 759660484Sobrien 759760484Sobrien Add new target vectors to read the dynamic symbols and dynamic 759860484Sobrien relocs. Change a.out to use these rather than reading the dynamic 759960484Sobrien symbols and relocs along with the normal symbols and relocs. 760060484Sobrien * targets.c (bfd_target): Add fields 760160484Sobrien _bfd_get_dynamic_symtab_upper_bound, 760260484Sobrien _bfd_canonicalize_dynamic_symtab, 760360484Sobrien _bfd_get_dynamic_reloc_upper_bound, 760460484Sobrien _bfd_canonicalize_dynamic_reloc. 760560484Sobrien (BFD_JUMP_TABLE_DYNAMIC): Define. 760660484Sobrien * libbfd-in.h (_bfd_nodynamic_get_dynamic_symtab_upper_bound): 760760484Sobrien Define. 760860484Sobrien (_bfd_nodynamic_canonicalize_dynamic_symtab): Define. 760960484Sobrien (_bfd_nodynamic_get_dynamic_reloc_upper_bound): Define. 761060484Sobrien (_bfd_nodynamic_canonicalize_dynamic_reloc): Define. 761160484Sobrien * bfd.c (bfd_get_dynamic_symtab_upper_bound): Define. 761260484Sobrien (bfd_canonicalize_dynamic_symtab): Define. 761360484Sobrien (bfd_get_dynamic_reloc_upper_bound): Define. 761460484Sobrien (bfd_canonicalize_dynamic_reloc): Define. 761560484Sobrien * sunos.c (MY_read_dynamic_symbols): Don't define. 761660484Sobrien (MY_read_dynamic_relocs): Don't define. 761760484Sobrien (MY_get_dynamic_symtab_upper_bound): Define. 761860484Sobrien (MY_canonicalize_dynamic_symtab): Define. 761960484Sobrien (MY_get_dynamic_reloc_upper_bound): Define. 762060484Sobrien (MY_canonicalize_dynamic_reloc): Define. 762160484Sobrien (struct sunos_dynamic_info): Change type of dynsym_count and 762260484Sobrien dynrel_count to long. Add fields canonical_dynsym and 762360484Sobrien canonical_dynrel. 762460484Sobrien (sunos_read_dynamic_info): Check that BFD had DYNAMIC flag set. 762560484Sobrien Clear info->canonical_dynsym and info->canonical_dynrel. 762660484Sobrien (MY(read_dynamic_symbols)): Removed. 762760484Sobrien (MY(read_dynamic_relocs)): Removed. 762860484Sobrien (sunos_get_dynamic_symtab_upper_bound): New function. 762960484Sobrien (sunos_canonicalize_dynamic_symtab): New function. 763060484Sobrien (sunos_get_dynamic_reloc_upper_bound): New function. 763160484Sobrien (sunos_canonicalize_dynamic_reloc): New function. 763260484Sobrien * libaout.h: Declare struct reloc_ext_external and 763360484Sobrien reloc_std_external to avoid prototype problems. 763460484Sobrien (struct aout_backend_data): Remove fields read_dynamic_symbols and 763560484Sobrien read_dynamic_relocs. 763660484Sobrien (NAME(aout,translate_symbol_table)): Declare. 763760484Sobrien (NAME(aout,swap_ext_reloc_in)): Declare. 763860484Sobrien (NAME(aout,swap_std_reloc_in)): Declare. 763960484Sobrien * aoutx.h (NAME(aout,translate_symbol_table)): Renamed from 764060484Sobrien translate_symbol_table and made non-static. Changed all callers. 764160484Sobrien (NAME(aout,slurp_symbol_table)): Don't read dynamic symbols. 764260484Sobrien (NAME(aout,slurp_reloc_table)): Don't read dynamic relocs. 764360484Sobrien (NAME(aout,get_reloc_upper_bound)): Don't count dynamic relocs. 764460484Sobrien * aoutf1.h (aout_32_sunos4_write_object_contents): Don't bother to 764560484Sobrien remove dynamic symbols and relocs. They will no longer be 764660484Sobrien present. 764760484Sobrien (MY_read_dynamic_symbols): Don't define. 764860484Sobrien (MY_read_dynamic_relocs): Don't define. 764960484Sobrien (sunos4_aout_backend): Don't initialize dynamic entry points. 765060484Sobrien * aout-target.h (MY_read_dynamic_symbols): Don't define. 765160484Sobrien (MY_read_dynamic_relocs): Don't define. 765260484Sobrien (MY(backend_data)): Don't initialize dynamic entry points. 765360484Sobrien (MY_get_dynamic_symtab_upper_bound): If not defined, define to 765460484Sobrien _bfd_nodynamic version. 765560484Sobrien (MY_canonicalize_dynamic_symtab): Likewise. 765660484Sobrien (MY_get_dynamic_reloc_upper_bound): Likewise. 765760484Sobrien (MY_canonicalize_dynamic_reloc): Likewise. 765860484Sobrien * All backends: Added BFD_JUMP_TABLE_DYNAMIC to target vector. 765960484Sobrien * bfd-in2.h: Rebuilt. 766060484Sobrien * libbfd.h: Rebuilt. 766160484Sobrien 766260484Sobrien * cf-m68klynx.c: Include sysdep.h. 766360484Sobrien 766460484Sobrien * hp300hpux.c: Removed some spaces in uses of NAME to avoid 766560484Sobrien problems with traditional C compilers. 766660484Sobrien 766760484Sobrien * targets.c (bfd_target): Rearranged fields in target vector. 766860484Sobrien Removed _bfd_debug_info_start, _bfd_debug_info_end and 766960484Sobrien _bfd_debug_info_accumulate, which were never used. 767060484Sobrien (BFD_JUMP_TABLE_GENERIC, BFD_JUMP_TABLE_COPY): Defined. 767160484Sobrien (BFD_JUMP_TABLE_CORE, BFD_JUMP_TABLE_ARCHIVE): Defined. 767260484Sobrien (BFD_JUMP_TABLE_SYMBOLS, BFD_JUMP_TABLE_RELOCS): Defined. 767360484Sobrien (BFD_JUMP_TABLE_WRITE, BFD_JUMP_TABLE_LINK): Defined. 767460484Sobrien * All backends: Changed to use the new BFD_JUMP_TABLE_* macros 767560484Sobrien rather than the single JUMP_TABLE macro. Removed many of the 767660484Sobrien weird macro definitions needed to support the monolithic 767760484Sobrien JUMP_TABLE. 767860484Sobrien * bfd-in.h (JUMP_TABLE): Removed. 767960484Sobrien * libbfd-in.h: Define a bunch of macros, and declare a few 768060484Sobrien functions, for use with the new BFD_JUMP_TABLE_* macros. 768160484Sobrien * libbfd.c (_bfd_dummy_new_section_hook): Removed. 768260484Sobrien (bfd_false): Set bfd_error_invalid_operation. 768360484Sobrien (bfd_nullvoidptr): Likewise. 768460484Sobrien (bfd_n1): New function. 768560484Sobrien (_bfd_nocore_core_file_matches_executable_p): Renamed from 768660484Sobrien _bfd_dummy_core_file_matches_executable_p. 768760484Sobrien (_bfd_nocore_core_file_failing_command): Similar rename. Set 768860484Sobrien bfd_error_invalid_operation. 768960484Sobrien (_bfd_nocore_core_file_failing_signal): Likewise. 769060484Sobrien (_bfd_generic_get_section_contents): Renamed from 769160484Sobrien bfd_generic_get_section_contents. Changed all callers. 769260484Sobrien (_bfd_generic_set_section_contents): Similar rename. 769360484Sobrien * ieee.c: #if 0 out ieee_bfd_debug_info_start, 769460484Sobrien ieee_bfd_debug_info_end, ieee_bfd_debug_info_accumulate. They 769560484Sobrien were never called. 769660484Sobrien * bfd-in2.h: Rebuilt. 769760484Sobrien * libbfd.h: Rebuilt. 769860484Sobrien 769960484SobrienTue Apr 5 22:10:04 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 770060484Sobrien 770160484Sobrien * Crude support for examining dynamic libraries. 770260484Sobrien * som.c (som_object_setup): Set DYNAMIC flag for SHL_MAGIC and 770360484Sobrien DL_MAGIC objects. 770460484Sobrien (som_prep_headers): Preserve the system_id for DYNAMIC objects. 770560484Sobrien Use SHL_MAGIC as the magic number of the DYNAMIC flag is set. 770660484Sobrien Write exec headers for DYNAMIC objects. 770760484Sobrien (som_begin_writing): DYNAMIC objects have the same alignment 770860484Sobrien restrictions as D_PAGED objects. 770960484Sobrien (bfd_section_from_som_symbol): Treat DYNAMIC objects like EXEC_P 771060484Sobrien objects. 771160484Sobrien (object_flags): Add DYNAMIC. 771260484Sobrien 771360484SobrienTue Apr 5 17:48:52 1994 Stan Shebs (shebs@andros.cygnus.com) 771460484Sobrien 771560484Sobrien * i386lynx.c, sparclynx.c (NAME): Remove embedded whitespace in 771660484Sobrien macro uses, confuses some non-ANSI compilers. 771760484Sobrien 771860484SobrienTue Apr 5 15:50:01 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 771960484Sobrien 772060484Sobrien * som.c (som_bfd_free_cached_info): Add missing PARAMS decl. 772160484Sobrien Don't free anything if we don't have a bfd_object. 772260484Sobrien (som_close_and_cleanup): Call som_bfd_free_cached_info. 772360484Sobrien 772460484SobrienTue Apr 5 11:22:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 772560484Sobrien 772660484Sobrien * elf32-mips.c (mips_elf_final_link): Don't remove empty sections. 772760484Sobrien It turns out not to be required on Irix 5, and it causes problems 772860484Sobrien if the sections happen to contain symbols. 772960484Sobrien 773060484Sobrien * elfcode.h (write_shdrs_and_ehdr): Correct bfd_write check. 773160484Sobrien 773260484Sobrien * aoutx.h (NAME(aout,canonicalize_reloc)): Don't error out if 773360484Sobrien section->relocation is NULL; malloc might have returned NULL when 773460484Sobrien given a zero size if there were no relocations. 773560484Sobrien * bout.c (b_out_canonicalize_reloc): Likewise. 773660484Sobrien * coffcode.h (coff_canonicalize_reloc): Likewise. 773760484Sobrien * ecoff.c (ecoff_canonicalize_reloc): Likewise. 773860484Sobrien * elfcode.h (elf_canonicalize_reloc): Likewise. 773960484Sobrien * mipsbsd.c (MY(canonicalize_reloc)): Likewise. 774060484Sobrien * i386lynx.c (NAME(lynx,canonicalize_reloc)): Likewise. 774160484Sobrien * nlmcode.h (nlm_canonicalize_reloc): Likewise. 774260484Sobrien * som.c (som_canonicalize_reloc): Likewise. 774360484Sobrien * hp300hpux.c (MY(slurp_reloc_table)): Likewise. Also, if malloc 774460484Sobrien returns NULL, don't report an error if we asked for zero bytes. 774560484Sobrien * i386lynx.c (NAME(lynx,slurp_reloc_table)): If malloc returns 774660484Sobrien NULL, don't report an error if we asked for zero bytes. 774760484Sobrien * nlmcode.h (nlm_slurp_reloc_fixups): Likewise. 774860484Sobrien 774960484SobrienMon Apr 4 15:30:49 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 775060484Sobrien 775160484Sobrien * aoutx.h (NAME(aout,bfd_free_cached_info)): Don't free anything 775260484Sobrien if we don't have a bfd_object. 775360484Sobrien 775460484Sobrien Made sure that every call to bfd_read, bfd_write, and bfd_seek 775560484Sobrien checks the return value and handled bfd_error correctly. These 775660484Sobrien changes are not itemised. Also: 775760484Sobrien * aoutx.h (emit_strtab): Change return type to boolean, and return 775860484Sobrien errors. 775960484Sobrien (NAME(aout,write_syms)): Check emit_strtab return value. 776060484Sobrien (NAME(aout,final_link)): Likewise. 776160484Sobrien * coffcode.h (coff_write_relocs): Change return type to boolean, 776260484Sobrien and return errors. 776360484Sobrien (coff_write_object_contents): Check coff_write_relocs return 776460484Sobrien value. 776560484Sobrien * i386os9k.c (os9k_swap_exec_header_in): Change return type to 776660484Sobrien boolean. 776760484Sobrien (os9k_object_p): Check os9k_swap_exec_header_in return value. 776860484Sobrien * oasys.c (oasys_read_record): Change return type to boolean. 776960484Sobrien (oasys_slurp_symbol_table: Check oasys_read_record return value. 777060484Sobrien (oasys_object_p, oasys_slurp_section_data): Likewise. 777160484Sobrien (oasys_write_record): Change return type to boolean. 777260484Sobrien (oasys_write_syms): Likewise. Also, check oasys_write_record 777360484Sobrien return value. 777460484Sobrien (oasys_write_sections): Check oasys_write_record return value. 777560484Sobrien (oasys_write_header): Change return type to boolean. Check 777660484Sobrien oasys_write_record return value. 777760484Sobrien (oasys_write_end, oasys_write_data): Likewise. 777860484Sobrien (oasys_write_object_contents): Check return values of 777960484Sobrien oasys_write_header, oasys_write_syms, oasys_write_data, and 778060484Sobrien oasys_write_end. 778160484Sobrien * srec.c (srec_write_record): Change return type to boolean. 778260484Sobrien (srec_write_header): Likewise. Also, check srec_write_record 778360484Sobrien return value. 778460484Sobrien (srec_write_section, srec_write_terminator): Likewise. 778560484Sobrien (srec_write_symbols): Change return type to boolean. 778660484Sobrien (internal_srec_write_object_contents): Check return value of 778760484Sobrien srec_write_symbols, srec_write_header, srec_write_section, and 778860484Sobrien srec_write_terminator. 778960484Sobrien 779060484Sobrien * Makefile.in: Rebuilt dependencies. 779160484Sobrien 779260484SobrienMon Apr 4 10:56:45 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 779360484Sobrien 779460484Sobrien * aix386-core.c (aix386_bfd_is_local_label): Correct cast from 779560484Sobrien asection to asymbol. 779660484Sobrien * ptrace-core.c (ptrace_unix_bfd_is_local_label): Correct cast from 779760484Sobrien bfd to asymbol. 779860484Sobrien * trad-core.c (trad_unix_bfd_is_local_label): Correct cast from 779960484Sobrien asection to asymbol. 780060484Sobrien 780160484SobrienSun Apr 3 18:27:29 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 780260484Sobrien 780360484Sobrien * som.c (som_slurp_string_table): Use malloc to allocate space 780460484Sobrien for the cached copy of the native string table. 780560484Sobrien (som_slurp_symbol_table): Likewise for the native symbol table. 780660484Sobrien (som_slurp_reloc_table): Likewise for the native and generic 780760484Sobrien relocation tables. 780860484Sobrien (som_bfd_free_cached_info): Free the cached native strings, 780960484Sobrien symbols, and relocations. Also free the canonical cached 781060484Sobrien relocations. 781160484Sobrien 781260484SobrienFri Apr 1 12:40:58 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 781360484Sobrien 781460484Sobrien * aoutx.h (aout_link_write_symbols): If keep_memory is false, make 781560484Sobrien sure the symbol name is stored in permanent memory before adding 781660484Sobrien it to the string table. 781760484Sobrien 781860484Sobrien * archive.c (_bfd_write_archive_contents): Once we've found an 781960484Sobrien object, don't bother to look for more when deciding whether to 782060484Sobrien build a map. 782160484Sobrien (compute_and_write_armap): After adding the symbols for a BFD, 782260484Sobrien call bfd_free_cached_info on it. 782360484Sobrien 782460484Sobrien Add bfd_free_cached_info support to a.out backends. 782560484Sobrien * aoutx.h (aout_get_external_symbols): Renamed from 782660484Sobrien aout_link_get_symbols. Read strings even if symbols have been 782760484Sobrien read. Store string size in obj_aout_string_size. 782860484Sobrien (NAME(aout,slurp_symbol_table)): Call aout_get_external_symbols to 782960484Sobrien read the symbols. Allocate the cached symbols with malloc, not 783060484Sobrien bfd_alloc. 783160484Sobrien (NAME(aout,slurp_reloc_table)): Allocate the cached relocs with 783260484Sobrien malloc, not bfd_alloc. 783360484Sobrien (NAME(aout,bfd_free_cached_info)): New function; free cached 783460484Sobrien symbols and relocs. 783560484Sobrien * libaout.h (struct aoutdata): Add external_string_size field. 783660484Sobrien (obj_aout_external_string_size): New accessor macro. 783760484Sobrien (NAME(aout,close_and_cleanup)): Don't declare. 783860484Sobrien (NAME(aout,bfd_free_cached_info)): Declare. 783960484Sobrien (aout_32_close_and_cleanup): Don't define. 784060484Sobrien (aout_64_close_and_cleanup): Don't define. 784160484Sobrien * aout-target.h (MY_bfd_free_cached_info): If not already defined, 784260484Sobrien define as NAME(aout,free_cached_info). 784360484Sobrien (MY_close_and_cleanup): If not already defined, define as 784460484Sobrien MY_bfd_free_cached_info. 784560484Sobrien * aout-adobe.c (aout_32_close_and_cleanup): Define. 784660484Sobrien (aout_32_bfd_free_cached_info): Don't define. 784760484Sobrien * bout.c (aout_32_close_and_cleanup): Define. 784860484Sobrien (aout_32_bfd_free_cached_info): Don't define. 784960484Sobrien * hp300hpux.c (MY_bfd_free_cached_info): Define as bfd_true. 785060484Sobrien (MY_close_and_cleanup): Don't define. 785160484Sobrien * i386lynx.c (NAME(lynx,slurp_reloc_table)): Allocate the cached 785260484Sobrien relocs with malloc, not bfd_alloc. 785360484Sobrien * i386os9k.c (aout_32_close_and_cleanup): Define. 785460484Sobrien (aout_32_bfd_free_cached_info): Don't define. 785560484Sobrien 785660484Sobrien Add a new entry point to free memory cached by a BFD. 785760484Sobrien * targets.c (bfd_target): Add _bfd_free_cached_info field. 785860484Sobrien * bfd.c (bfd_free_cached_info): Define. 785960484Sobrien * bfd-in.h (JUMP_TABLE): Add _bfd_free_cached_info. 786060484Sobrien * bfd-in2.h: Rebuilt. 786160484Sobrien * All backends: Initialize bfd_free_cached_info entry point to 786260484Sobrien bfd_true. 786360484Sobrien 786460484Sobrien * elf32-hppa.c (elf_hppa_reloc_type_lookup): Correct type of 786560484Sobrien first, unused, argument. 786660484Sobrien (hppa_elf_is_local_label): Declare instead of 786760484Sobrien som_bfd_is_local_label. 786860484Sobrien 786960484Sobrien * coff-a29k.c (a29k_reloc): Add reloc_entry->address to value of 787060484Sobrien absolute R_IREL reloc. 787160484Sobrien 787260484SobrienThu Mar 31 11:52:15 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 787360484Sobrien 787460484Sobrien Added some support for Irix 4 shared libraries. 787560484Sobrien * ecoff.c (ecoff_new_section_hook): Set SEC_SHARED_LIBRARY for a 787660484Sobrien .lib section. 787760484Sobrien (ecoff_sec_to_styp_flags): Set SEC_SHARED_LIBRARY if 787860484Sobrien STYP_ECOFF_LIB bit is set. 787960484Sobrien (ecoff_compute_section_file_positions): Round the contents of a 788060484Sobrien .lib section up to the next page boundary. 788160484Sobrien (ecoff_set_section_contents): If we see a .lib section, increment 788260484Sobrien the vma by one to count the number of shared libraries we have. 788360484Sobrien (ecoff_write_object_contents): Don't crash if we see a 788460484Sobrien STYP_ECOFF_LIB section, and don't adjust text_start or data_start 788560484Sobrien or bss_size either. 788660484Sobrien 788760484Sobrien * coffcode.h (CALC_ADDEND): Change to fetch original symbol value 788860484Sobrien from original BFD, rather than using value of current BFD symbol. 788960484Sobrien Needed for new linker. 789060484Sobrien * coff-sparc.c (CALC_ADDEND): Likewise. 789160484Sobrien 789260484Sobrien * ecoff.c (ecoff_write_object_contents): Set the text_start and 789360484Sobrien data_start entries in the optional header correctly even if a text 789460484Sobrien or data section starts at location zero. 789560484Sobrien 789660484Sobrien * reloc.c (bfd_reloc_code_real_type): Added BFD_RELOC_26 (from sef 789760484Sobrien and raeburn). 789860484Sobrien * bfd-in2.h: Rebuilt. 789960484Sobrien 790060484Sobrien * nlm32-i386.c (nlm_i386_read_import): Null terminate the symbol 790160484Sobrien name. 790260484Sobrien * nlm32-alpha.c (nlm_alpha_read_import): Likewise. 790360484Sobrien * nlm32-sparc.c (nlm_sparc_read_import): Likewise. 790460484Sobrien 790560484Sobrien * coffgen.c (coff_write_symbol): Reindented. Changed to return 790660484Sobrien boolean, and changed written to unsigned int *. Check error 790760484Sobrien returns from called functions. 790860484Sobrien (coff_write_alien_symbol): Likewise. 790960484Sobrien (coff_write_native_symbol): Likewise. 791060484Sobrien (coff_write_symbols): Likewise. Reworked checks on whether to 791160484Sobrien write symbol name to string table for clarity and to avoid core 791260484Sobrien dumping when given a non COFF symbol. 791360484Sobrien * libcoff-in.h (coff_write_symbols): Declare as returning boolean. 791460484Sobrien * libcoff.h: Rebuilt. 791560484Sobrien * coffcode.h (coff_write_object_contents): Check return value of 791660484Sobrien coff_write_symbols. 791760484Sobrien 791860484SobrienWed Mar 30 16:25:41 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 791960484Sobrien 792060484Sobrien Changes to let BFD return an error indication from 792160484Sobrien get_symtab_upper_bound, bfd_canonicalize_symtab, 792260484Sobrien bfd_get_reloc_upper_bound, and bfd_canonicalize_reloc. They now 792360484Sobrien return long instead of unsigned int, and use -1 to indicate an 792460484Sobrien error. Along the way, rename get_symtab_upper_bound to 792560484Sobrien bfd_get_symtab_upper_bound. 792660484Sobrien * bfd.c (bfd_get_reloc_upper_bound): Return long, and -1 on 792760484Sobrien errors. 792860484Sobrien (bfd_canonicalize_reloc): Likewise. 792960484Sobrien * syms.c (bfd_get_symtab_upper_bound): Renamed from 793060484Sobrien get_symtab_upper_bound. 793160484Sobrien * targets.c (bfd_target): Renamed _get_symtab_upper_bound to 793260484Sobrien _bfd_get_symtab_upper_bound, and changed it and 793360484Sobrien _bfd_canonicalize_symtab and _get_reloc_upper_bound and 793460484Sobrien _bfd_canonicalize_reloc to all return long. 793560484Sobrien * aoutx.h (NAME(aout,get_symtab)): Return long, and -1 on errors. 793660484Sobrien (NAME(aout,canonicalize_reloc)): Likewise. 793760484Sobrien (NAME(aout,get_reloc_upper_bound)): Likewise. 793860484Sobrien (NAME(aout,get_symtab_upper_bound)): Likewise. 793960484Sobrien * bout.c (b_out_canonicalize_reloc): Likewise. 794060484Sobrien (b_out_get_reloc_upper_bound): Likewise. 794160484Sobrien * coffcode.h (coff_canonicalize_reloc): Likewise. 794260484Sobrien * coffgen.c (coff_get_symtab_upper_bound): Likewise. 794360484Sobrien (coff_get_symtab): Likewise. 794460484Sobrien (coff_get_reloc_upper_bound): Likewise. 794560484Sobrien * ecoff.c (ecoff_get_symtab_upper_bound): Likewise. 794660484Sobrien (ecoff_get_symtab): Likewise. 794760484Sobrien (ecoff_canonicalize_reloc): Likewise. 794860484Sobrien * elfcode.h (elf_get_symtab_upper_bound): Likewise. 794960484Sobrien (elf_get_reloc_upper_bound): Likewise. 795060484Sobrien (elf_canonicalize_reloc): Likewise. 795160484Sobrien (elf_get_symtab): Likewise. 795260484Sobrien * hp300hpux.c (MY(get_symtab)): Likewise. 795360484Sobrien (MY(get_symtab_upper_bound)): Likewise. 795460484Sobrien (MY(canonicalize_reloc)): Likewise. 795560484Sobrien * i386lynx.c (NAME(lynx,canonicalize_reloc)): Likewise. 795660484Sobrien * ieee.c (ieee_slurp_external_symbols): Change return type to 795760484Sobrien boolean. Check for errors from get_symbol. 795860484Sobrien (ieee_slurp_symbol_table): Change return type to boolean. Check 795960484Sobrien for errors from ieee_slurp_external_symbols. 796060484Sobrien (ieee_get_symtab_upper_bound): Return long, and -1 on errors. 796160484Sobrien (ieee_get_symtab): Likewise. 796260484Sobrien (ieee_get_reloc_upper_bound): Likewise. 796360484Sobrien (ieee_canonicalize_reloc): Likewise. 796460484Sobrien * mipsbsd.c (MY(canonicalize_reloc)): Likewise. 796560484Sobrien * nlmcode.h (nlm_get_symtab_upper_bound): Likewise. 796660484Sobrien (nlm_get_symtab): Likewise. 796760484Sobrien (nlm_get_reloc_upper_bound): Likewise. 796860484Sobrien (nlm_canonicalize_reloc): Likewise. 796960484Sobrien * oasys.c (oasys_get_symtab_upper_bound): Likewise. 797060484Sobrien (oasys_get_symtab): Likewise. 797160484Sobrien (oasys_get_reloc_upper_bound): Likewise. 797260484Sobrien (oasys_canonicalize_reloc): Likewise. 797360484Sobrien * som.c (som_get_symtab_upper_bound): Likewise. 797460484Sobrien (som_get_symtab): Likewise. 797560484Sobrien (som_get_reloc_upper_bound): Likewise. 797660484Sobrien (som_canonicalize_reloc): Likewise. 797760484Sobrien * srec.c (srec_get_symtab_upper_bound): Likewise. 797860484Sobrien (srec_get_symtab): Likewise. 797960484Sobrien (srec_get_reloc_upper_bound): Define as bfd_0l. 798060484Sobrien (srec_canonicalize_reloc): Likewise. 798160484Sobrien * tekhex.c (tekhex_get_symtab): Return long, and -1 on errors. 798260484Sobrien (tekhex_get_symtab_upper_bound): Likewise. 798360484Sobrien (tekhex_get_reloc_upper_bound): Define as bfd_0l. 798460484Sobrien (tekhex_canonicalize_reloc): Likewise. 798560484Sobrien * libaout.h (NAME(aout,get_symtab_upper_bound)): Change 798660484Sobrien declaration to return long. 798760484Sobrien (NAME(aout,get_symtab)): Likewise. 798860484Sobrien (NAME(aout,canonicalize_reloc)): Likewise. 798960484Sobrien (NAME(aout,get_reloc_upper_bound)): Likewise. 799060484Sobrien * libcoff-in.h (coff_get_symtab_upper_bound): Likewise. 799160484Sobrien (coff_get_symtab): Likewise. 799260484Sobrien (coff_get_reloc_upper_bound): Likewise. 799360484Sobrien * libecoff.h (ecoff_get_symtab_upper_bound): Likewise. 799460484Sobrien (ecoff_get_symtab): Likewise. 799560484Sobrien (ecoff_canonicalize_reloc): Likewise. 799660484Sobrien * libelf.h (bfd_elf32_get_symtab_upper_bound): Likewise. 799760484Sobrien (bfd_elf32_get_symtab): Likewise. 799860484Sobrien (bfd_elf32_get_reloc_upper_bound): Likewise. 799960484Sobrien (bfd_elf32_canonicalize_reloc): Likewise. 800060484Sobrien (bfd_elf64_get_symtab_upper_bound): Likewise. 800160484Sobrien (bfd_elf64_get_symtab): Likewise. 800260484Sobrien (bfd_elf64_get_reloc_upper_bound): Likewise. 800360484Sobrien (bfd_elf64_canonicalize_reloc): Likewise. 800460484Sobrien * libnlm.h (nlmNAME(get_symtab_upper_bound)): Likewise. 800560484Sobrien (nlmNAME(get_symtab)): Likewise. 800660484Sobrien (nlmNAME(get_reloc_upper_bound)): Likewise. 800760484Sobrien (nlmNAME(canonicalize_reloc)): Likewise. 800860484Sobrien * archive.c (compute_and_write_armap): Use error_return and 800960484Sobrien no_memory_return labels rather than freeing information in various 801060484Sobrien places. Change storage, symcount and src_count to long. Check 801160484Sobrien errors from bfd_get_symtab_upper_bound and 801260484Sobrien bfd_canonicalize_symtab. 801360484Sobrien * bout.c (b_out_relax_section): Change reloc_size to long. Check 801460484Sobrien for errors from bfd_get_reloc_upper_bound and 801560484Sobrien bfd_canonicalize_reloc. 801660484Sobrien (b_out_get_relocated_section_contents): Likewise. 801760484Sobrien * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): 801860484Sobrien Likewise. 801960484Sobrien * elf32-mips.c: Likewise. 802060484Sobrien * elf32-hppa.c (hppa_elf_stub_finish): Likewise. 802160484Sobrien (hppa_look_for_stubs_in_section): Check for errors from 802260484Sobrien bfd_get_symtab_upper_bound, bfd_canonicalize_symtab, and 802360484Sobrien bfd_canonicalize_reloc. 802460484Sobrien * ecofflink.c (bfd_ecoff_debug_accumulate_other): Check for errors 802560484Sobrien from bfd_get_symtab_upper_bound and bfd_canonicalize_symtab. 802660484Sobrien * linker.c (generic_link_read_symbols): Likewise. 802760484Sobrien (_bfd_generic_final_link): Check for errors from 802860484Sobrien bfd_get_reloc_upper_bound and bfd_canonicalize_reloc. 802960484Sobrien * reloc.c (bfd_generic_get_relocated_section_contents): Likewise. 803060484Sobrien * reloc16.c (bfd_coff_reloc16_relax_section): Likewise. 803160484Sobrien (bfd_coff_reloc16_get_relocated_section_contents): Likewise. 803260484Sobrien * libbfd.c (bfd_0l): New function. 803360484Sobrien * libbfd-in.h (bfd_0l): Declare. 803460484Sobrien * aix386-core.c: Change get_symtab_upper_bound, get_symtab, 803560484Sobrien get_reloc_upper_bound, and canonicalize_reloc to use bfd_0l rather 803660484Sobrien than bfd_0u. 803760484Sobrien * cisco-core.c, hppabsd-core.c, hpux-core.c: Likewise. 803860484Sobrien * irix-core.c, osf-core.c, ptrace-core.c, trad-core.c: Likewise. 803960484Sobrien * bfd-in2.h: Rebuilt. 804060484Sobrien * libbfd.h: Rebuilt. 804160484Sobrien * libcoff.h: Rebuilt. 804260484Sobrien 804360484Sobrien * nlm32-sparc.c (nlm_sparc_read_reloc): Remove unused variables 804460484Sobrien temp and name. 804560484Sobrien 804660484SobrienWed Mar 30 08:33:04 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 804760484Sobrien 804860484Sobrien * hosts/dpx2.h: Define POSIX_UTIME. 804960484Sobrien 805060484SobrienWed Mar 30 00:31:49 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 805160484Sobrien 805260484Sobrien * i386dynix.c, config/i386-dynix.mt: New files, handling Dynix 805360484Sobrien variant of a.out. 805460484Sobrien * configure.in, config.bfd: Use them for Dynix. 805560484Sobrien * Makefile.in: Add dependencies for i386dynix.o. 805660484Sobrien * targets.c: Add definition for i386dynix_vec. 805760484Sobrien * hosts/symmetry.h: Do not define TRAD_CORE_USER_OFFSET for Dynix. 805860484Sobrien Define HOST_DATA_START_ADDR and TRAD_UNIX_CORE_FILE_FAILING_SIGNAL 805960484Sobrien for Dynix. Remove inclusion of dynix3.h, Dynix bfd is now handled by 806060484Sobrien i386dynix.c 806160484Sobrien 806260484SobrienMon Mar 28 12:53:27 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 806360484Sobrien 806460484Sobrien * Makefile.in (BFD32_BACKENDS): Add coff-sparc.o. 806560484Sobrien 806660484Sobrien * coffcode.h (coff_set_flags): Handle bfd_arch_powerpc like 806760484Sobrien bfd_arch_rs6000. 806860484Sobrien 806960484Sobrien * config.bfd (powerpc-*-aix*): New target; use rs6000.mt. 807060484Sobrien * config/rs6000.mt (SELECT_ARCHITECTURES): Add bfd_powerpc_arch. 807160484Sobrien 807260484Sobrien * aoutx.h (translate_from_native_sym_flags): Set SEC_RELOC flag 807360484Sobrien for generated constructor section. 807460484Sobrien 807560484SobrienSun Mar 27 16:25:22 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 807660484Sobrien 807760484Sobrien * som.c (som_begin_writing): New approach at dealing with holes 807860484Sobrien in executables left by the HP linker. Does not rely on subspace 807960484Sobrien alignments as subspaces are *NOT* guaranteed to be properly 808060484Sobrien aligned in an executable (can you believe that!). 808160484Sobrien 808260484SobrienSat Mar 26 10:25:43 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 808360484Sobrien 808460484Sobrien * som.c (som_get_section_contents): New function. Do not try 808560484Sobrien to actually read data from a section that doesn't have either 808660484Sobrien SEC_LOAD or SEC_DEBUGGING set (eg $BSS$) just return true. 808760484Sobrien 808860484Sobrien * libbfd.c (bfd_read): Set bfd_error as appropriate for a short 808960484Sobrien read. (bfd_error_system_call or bfd_error_file_truncated). 809060484Sobrien 809160484Sobrien * som.c: Do not blindly set bfd_error_system_call after a 809260484Sobrien failing bfd_read, bfd_write, or bfd_seek. In a few places 809360484Sobrien (like som_object_p) override the error status set by bfd_read. 809460484Sobrien 809560484Sobrien * aix386-core.c, aout-encap,c archive.c, bout.c: Likewise. 809660484Sobrien * coff-rs6000.c, coffgen.c ecoff.c, elf.c: Likewise. 809760484Sobrien * elf32-hppa.c, elfcode.h, hp300hpux.c, i386lynx.c: Likewise. 809860484Sobrien * nlm32-alpha.c, nlm32-i386.c, nlm32-sparc.c: Likewise. 809960484Sobrien 810060484Sobrien * som.c: Check return values from several bfd_{seek,read,write} 810160484Sobrien calls that we just assumed were not failing. 810260484Sobrien 810360484SobrienFri Mar 25 11:44:06 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 810460484Sobrien 810560484Sobrien * hosts/sysv4.h (HAVE_PROCFS): Add comments about ptx4. 810660484Sobrien * config/sysv4.mh: Add comment. 810760484Sobrien * config/symmetry.mh: Change comment. 810860484Sobrien * configure.host: Use sysv4, not symmetry, for i[34]86-sequent-sysv4*. 810960484Sobrien 811060484SobrienFri Mar 25 17:10:45 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 811160484Sobrien 811260484Sobrien Changes to support linker relaxing of embedded MIPS PIC code to 811360484Sobrien use a five instruction sequence for function calls which are out of 811460484Sobrien range of the bal instruction. 811560484Sobrien * libecoff.h (struct ecoff_section_tdata): Define. 811660484Sobrien (ecoff_section_data): Define. 811760484Sobrien (ecoff_bfd_relax_section): Don't define. 811860484Sobrien * ecoff.c (ecoff_final_link_debug_accumulate): Don't read or free 811960484Sobrien the debugging information if it has already been read. 812060484Sobrien (ecoff_indirect_link_order): Handle _cooked_size being different 812160484Sobrien from _raw_size. Don't reread the contents or the relocs if they 812260484Sobrien have already been read in. 812360484Sobrien * coff-mips.c (mips_howto_table): Change bitsize of PCREL16 from 812460484Sobrien 18 to 16. 812560484Sobrien (PCREL16_EXPANSION_ADJUSTMENT): Define. 812660484Sobrien (mips_relocate_refhi): Take adjust argument. 812760484Sobrien (mips_relocate_section): Handle reloc offsets stored in section 812860484Sobrien used_by_bfd field. Call mips_relax_pcrel16 to handle details of 812960484Sobrien expanding an out of range PCREL16. Keep trace of adjustments 813060484Sobrien required by expansions. Set s and unset h when converting a reloc 813160484Sobrien from undefined to section. Change handling of PC relative relocs: 813260484Sobrien if against a section, they are correct in the object file, if 813360484Sobrien against an external symbol they are pcrel_offset. 813460484Sobrien (mips_relax_section): New function. 813560484Sobrien (mips_relax_pcrel16): New function. 813660484Sobrien (ecoff_bfd_relax_section): Define. 813760484Sobrien * coff-alpha.c (ecoff_bfd_relax_section): Define. 813860484Sobrien * ecofflink.c (bfd_ecoff_debug_accumulate): Handle adjustments 813960484Sobrien built by mips_relax_section when writing out addresses. 814060484Sobrien * elf32-mips.c (mips_elf_read_ecoff_info): Clear adjust field. 814160484Sobrien 814260484Sobrien * aoutx.h (NAME(aout,find_nearest_line)): The caller expects 814360484Sobrien functionname_ptr to be set to a symbol name, so prepend 814460484Sobrien symbol_leading_char. 814560484Sobrien 814660484SobrienThu Mar 24 11:33:46 1994 Steve Chamberlain (sac@jonny.cygnus.com) 814760484Sobrien 814860484Sobrien * coff-h8300.c (h8300_reloc16_extra_cases): Add relaxing info 814960484Sobrien for 16bit relative branches. 815060484Sobrien * coff-h8500.c (r_high8, r_low16, r_high16): Don't complain on 815160484Sobrien overflow. 815260484Sobrien 815360484SobrienThu Mar 24 09:21:13 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 815460484Sobrien 815560484Sobrien * som.c (som_bfd_prep_for_ar_write): Ignore non-SOM objects. 815660484Sobrien (som_bfd_ar_write_symbol_stuff, som_write_armap): Likewise. 815760484Sobrien 815860484SobrienWed Mar 23 14:29:31 1994 David J. Mackenzie (djm@rtl.cygnus.com) 815960484Sobrien 816060484Sobrien * netbsd386.c (N_SET_FLAGS): Delete the old definition. 816160484Sobrien 816260484SobrienWed Mar 23 14:58:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 816360484Sobrien 816460484Sobrien Clean up the relaxing code for the new linker. 816560484Sobrien * targets.c (_bfd_relax_section): Take boolean *again argument 816660484Sobrien rather than asymbol list. 816760484Sobrien * bfd.c (bfd_relax_section): Change name of fourth argument from 816860484Sobrien symbols to again. 816960484Sobrien * reloc.c (bfd_generic_relax_section): Take boolean *again 817060484Sobrien argument rather than asymbol list. Always return true. 817160484Sobrien * bout.c: Include genlink.h. 817260484Sobrien (aligncode, perform_slip): Declare. 817360484Sobrien (perform_slip): Take BFD argument rather than asymbol list. 817460484Sobrien Changed all callers. Get the symbols from the BFD. Change the 817560484Sobrien hash table entry value as well as the symbol value. 817660484Sobrien (abs32code): Take BFD argument rather than asymbol list. Changed 817760484Sobrien all callers. 817860484Sobrien (aligncode): Likewise. 817960484Sobrien (b_out_relax_section): Take boolean *again argument rather than 818060484Sobrien asymbol list. Only return false if an error occurred. Set *again 818160484Sobrien to false. Get symbols from BFD. 818260484Sobrien * reloc16.c: Include genlink.h. 818360484Sobrien (bfd_perform_slip): Take BFD argument rather than asymbol list. 818460484Sobrien Get the symbols from the BFD. Change the hash table entry value 818560484Sobrien as well as the symbol value. 818660484Sobrien (bfd_coff_reloc16_relax_section): Take boolean *again argument 818760484Sobrien rather than asymbol list. Only return false if an error occurred. 818860484Sobrien Set *again to false. Get symbols from BFD. 818960484Sobrien * coffcode.h (bfd_coff_backend_data): Change 819060484Sobrien _bfd_coff_reloc16_estimate to take BFD argument rather than 819160484Sobrien asymbol list. 819260484Sobrien (bfd_coff_reloc16_estimate): Corresponding change. 819360484Sobrien (dummy_reloc16_estimate): Corresponding change. 819460484Sobrien * libcoff-in.h (bfd_coff_reloc16_relax_section): Change 819560484Sobrien declaration to take boolean * rather than asymbol list. 819660484Sobrien (bfd_perform_slip): Change declaration to take BFD rather than 819760484Sobrien asymbol list. 819860484Sobrien * coff-h8300.c (h300_reloc16_estimate): Take BFD argument rather 819960484Sobrien than asymbol list. Changed calls to bfd_perform_slip. 820060484Sobrien * bfd-in2.h: Rebuilt. 820160484Sobrien * libbfd.h: Rebuilt. 820260484Sobrien * libcoff.h: Rebuilt. 820360484Sobrien * Makefile.in: Rebuilt dependencies. 820460484Sobrien 820560484Sobrien * genlink.h (_bfd_generic_link_get_symbols): Define. 820660484Sobrien (_bfd_generic_link_get_symcount): Define. 820760484Sobrien * linker.c (generic_link_read_symbols): New function. 820860484Sobrien (generic_link_add_object_symbols): Use it. Use 820960484Sobrien _bfd_generic_link_get_symbols and _bfd_generic_link_get_symcount 821060484Sobrien to get the symbols from the BFD. 821160484Sobrien (generic_link_check_archive_element): Likewise. 821260484Sobrien (_bfd_generic_final_link): Likewise. 821360484Sobrien (_bfd_generic_link_output_symbols): Likewise. 821460484Sobrien (default_indirect_link_order): Likewise. 821560484Sobrien (generic_link_add_symbol_list): Store pointer to hash table entry 821660484Sobrien in asymbol udata field. 821760484Sobrien 821860484SobrienTue Mar 22 13:09:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 821960484Sobrien 822060484Sobrien * coff-mips.c (mips_howto_table): Add entry for new MIPS_R_PCREL16 822160484Sobrien reloc, used in embedded PIC code. 822260484Sobrien (mips_adjust_reloc_in): Change sanity check to permit new reloc. 822360484Sobrien (mips_bfd_reloc_type_lookup): Turn BFD_RELOC_16_PCREL_S2 into 822460484Sobrien MIPS_R_PCREL16. 822560484Sobrien 822660484Sobrien * elf32-mips.c (mips_elf_final_link): Account for link_order 822760484Sobrien relocs when allocating space for relocations. Set SEC_RELOC flag 822860484Sobrien for any section which has relocs. Handle link_order relocs in 822960484Sobrien link_order loop. Use _bfd_generic_link_add_symbols_collect for 823060484Sobrien add_symbls entry point. 823160484Sobrien 823260484Sobrien * linker.c (_bfd_generic_final_link): Set reloc_count to 0 before 823360484Sobrien counting relocs. Set SEC_RELOC flag for any section which has 823460484Sobrien relocs. 823560484Sobrien 823660484Sobrien * linker.c (_bfd_default_link_order): Handle bfd_data_link_order. 823760484Sobrien 823860484Sobrien * linker.c (_bfd_generic_link_add_symbols): Just call 823960484Sobrien generic_link_add_symbols. 824060484Sobrien (_bfd_generic_link_add_symbols_collect): New function, like 824160484Sobrien _bfd_generic_link_add_symbols but also collect constructors and 824260484Sobrien destructors by name as collect2 does. 824360484Sobrien (generic_link_add_symbols): New function, like old 824460484Sobrien _bfd_generic_link_add_symbols but with collect argument. 824560484Sobrien (generic_link_add_object_symbols): Take collect argument. 824660484Sobrien (generic_link_check_archive_element_no_collect): New function. 824760484Sobrien (generic_link_check_archive_element_collect): New function. 824860484Sobrien (generic_link_check_archive_element): Take collect argument. 824960484Sobrien (generic_link_add_symbol_list): Take collect argument. 825060484Sobrien (_bfd_generic_link_add_one_symbol): Rename constructor argument to 825160484Sobrien collect. 825260484Sobrien * libbfd-in.h (_bfd_generic_link_add_symbols_collect): Declare. 825360484Sobrien * libbfd.h: Rebuilt. 825460484Sobrien 825560484SobrienTue Mar 22 10:04:00 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 825660484Sobrien 825760484Sobrien * archive.c (bfd_construct_extended_name_table): Use ar_padchar 825860484Sobrien for first character in an extended name. 825960484Sobrien (_bfd_write_archive_contents): If ar_padchar == '/', then use 826060484Sobrien "//" as the name of the special archive member holding the 826160484Sobrien extended name table. 826260484Sobrien 826360484SobrienMon Mar 21 12:28:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 826460484Sobrien 826560484Sobrien Support for link_order types which generate relocs in order to 826660484Sobrien support -Ur in the linker. 826760484Sobrien * linker.c (generic_link_add_symbol_list): Remove bitsize argument 826860484Sobrien from call to _bfd_generic_link_add_one_symbol. 826960484Sobrien (_bfd_generic_link_add_one_symbol): Remove bitsize argument. 827060484Sobrien Don't pass bitsize to constructor call back. Pass BFD_RELOC_CTOR 827160484Sobrien instead of bitsize to add_to_set call back. 827260484Sobrien (_bfd_generic_final_link): Account for link_order relocs when 827360484Sobrien allocating space for relocations. Handle them in link_order loop. 827460484Sobrien (_bfd_generic_reloc_link_order): New function. 827560484Sobrien (_bfd_default_link_order): If a reloc_link_order is seen here, 827660484Sobrien abort. 827760484Sobrien (_bfd_count_link_order_relocs): New function. 827860484Sobrien * libbfd-in.h (_bfd_generic_link_add_one_symbol): Remove bitsize 827960484Sobrien argument from declaration. 828060484Sobrien (_bfd_generic_reloc_link_order): Declare. 828160484Sobrien (_bfd_count_link_order_relocs): Declare. 828260484Sobrien * libbfd.h: Rebuilt. 828360484Sobrien * aoutx.h (aout_link_add_symbols): Remove bitsize argument from 828460484Sobrien call to _bfd_generic_link_add_one_symbol. 828560484Sobrien (NAME(aout,final_link)): Account for link_order relocs when 828660484Sobrien allocating space for relocations. Handle them after handling all 828760484Sobrien input BFDs. 828860484Sobrien (aout_link_reloc_link_order): New function. 828960484Sobrien * ecoff.c (ecoff_link_add_externals): Remove bitsize argument from 829060484Sobrien call to _bfd_generic_link_add_one_symbol. 829160484Sobrien (ecoff_bfd_final_link): Account for link_order relocs when 829260484Sobrien allocating space for relocations. Handle them in link_order loop. 829360484Sobrien (ecoff_link_write_external): Set the storage class of a defined 829460484Sobrien linker created symbol based on the section it is in. Correct 829560484Sobrien bfd_link_hash_weak case to use .sc rather than .st. 829660484Sobrien (ecoff_reloc_link_order): New function. 829760484Sobrien * coff-alpha.c (alpha_bfd_reloc_type_lookup): Handle 829860484Sobrien BFD_RELOC_CTOR. 829960484Sobrien * coff-mips.c (mips_bfd_reloc_type_lookup): Likewise. 830060484Sobrien 830160484Sobrien * sunos.c (sunos_read_dynamic_info): Remove unused locals dynsym 830260484Sobrien and buf. 830360484Sobrien 830460484Sobrien * cisco-core.c (cisco_core_file_p): Only pass one argument to 830560484Sobrien bfd_zmalloc. Free a pointer, not a union. 830660484Sobrien (cisco_bfd_is_local_label): Correct cast from asection to asymbol. 830760484Sobrien 830860484SobrienSun Mar 20 09:24:36 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 830960484Sobrien 831060484Sobrien * bfd/som.c (som_begin_writing): Fix thinko (off by one error). 831160484Sobrien 831260484Sobrien * som.c (bfd_section_from_som_symbol): Only to do the value 831360484Sobrien comparison for function symbols within executables. 831460484Sobrien 831560484Sobrien * som.c (bfd_section_from_som_symbol): Renamed from 831660484Sobrien som_section_from_subspace_index. Pass in a native SOM symbol. 831760484Sobrien For executables, iterate through the sections to find out 831860484Sobrien which contains the symbol's address rather than using the 831960484Sobrien symbol_info field. (symbol_info has a different meaning for 832060484Sobrien dynamicly linked executables.) 832160484Sobrien 832260484Sobrien * trad-core.c (trad_unix_core_file_p): Don't pass abfd to 832360484Sobrien bfd_zmalloc. 832460484Sobrien 832560484Sobrien * som.c (som_begin_writing): Fix braino (one call to align 832660484Sobrien space/subspace data was done unconditionally rather than 832760484Sobrien just for executables.) 832860484Sobrien 832960484Sobrien * som.c (som_begin_writing): Align text in all executables to 833060484Sobrien make HPUX kernel happy. Fixes strip/objcopy for shared 833160484Sobrien executables. 833260484Sobrien 833360484SobrienSat Mar 19 07:06:59 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 833460484Sobrien 833560484Sobrien * som.c (som_begin_writing): Account for alignment needs of 833660484Sobrien subspaces too when writing executables. Never request a negative 833760484Sobrien bss size. Fixes some problems with demand paged executables, 833860484Sobrien still having problems with pure executables and shared executables. 833960484Sobrien 834060484SobrienFri Mar 18 19:12:47 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 834160484Sobrien 834260484Sobrien * trad-core.c (trad_unix_core_file_p): Call bfd_zmalloc not 834360484Sobrien bfd_zalloc for rawptr, because later on we may call free, not 834460484Sobrien bfd_release, on it. 834560484Sobrien 834660484Sobrien * bfd.c (struct _bfd): Add cisco_core_struct to tdata union. 834760484Sobrien * libbfd.c (bfd_read, bfd_seek): Add comments regarding errors. 834860484Sobrien * cisco-core.c: New file. 834960484Sobrien * Makefile.in: Change accordingly. 835060484Sobrien * configure.in: Recognize cisco_core_vec. 835160484Sobrien * config/m68k-aout.mt (SELECT_VECS): Add cisco_core_vec. 835260484Sobrien * targets.c: Add cisco_core_vec. 835360484Sobrien * bfd-in2.h: Rebuilt. 835460484Sobrien 835560484SobrienFri Mar 18 18:13:49 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 835660484Sobrien 835760484Sobrien * som.h (som_copyable_section_data_struct): New structure 835860484Sobrien containing all the private section information which needs 835960484Sobrien to be copied from input section to output section during 836060484Sobrien objcopy or strip. 836160484Sobrien (som_section_data_struct): Remove several fields now in 836260484Sobrien som_copyable_section_data_struct. Make the space and 836360484Sobrien subspace dictionaries be pointers (to save space when 836460484Sobrien only reading objects). 836560484Sobrien 836660484Sobrien * som.c (bfd_som_set_section_attributes): Now returns a boolean; 836760484Sobrien some references changed. Allocate a copyable data stucture if 836860484Sobrien none exists. Store info into the copyable data structure. 836960484Sobrien (bfd_som_set_subsection_attributes): Likewise. 837060484Sobrien (som_is_space, som_is_subspace, som_is_container): New functions. 837160484Sobrien Use these instead of directly accessing private data. 837260484Sobrien (som_prep_headers): Allocate space and subspace headers here. 837360484Sobrien Fill in some fields in the space/subspace headers from the 837460484Sobrien copyable data. 837560484Sobrien (som_bfd_copy_private_section_data): Only copy the stuff 837660484Sobrien that we really need to make objcopy and strip work. Allocate 837760484Sobrien the copy_data structure for the output bfd before copying. 837860484Sobrien 837960484Sobrien * som.h (struct som_exec_data): New structure to hold exec 838060484Sobrien info that must be preserved when running objcopy/strip. 838160484Sobrien (struct somdata): Add new "exec_data" field and accessor 838260484Sobrien macro. Add some comments on how the various fields are used. 838360484Sobrien (som_section_data_struct): Make is_space and is_subspace bitfields. 838460484Sobrien Delete unused subspace_index. All references now use the 838560484Sobrien target_index field within the section structure itself. 838660484Sobrien 838760484Sobrien * som.c (make_unique_section): Delete unused declaration. 838860484Sobrien (som_bfd_copy_private_bfd_data): New function. 838960484Sobrien (som_object_setup): Allocate space for and save exec information 839060484Sobrien that needs to be copied during objcopy/strip. 839160484Sobrien (som_mkobject): Do not allocate space for a file header here. 839260484Sobrien It is not used when only reading SOM objects. 839360484Sobrien (som_prep_headers): Allocate space for and attach a file header 839460484Sobrien to the output bfd. For executables, use the saved system_id 839560484Sobrien value rather than trying to guess the right value. Do not abort 839660484Sobrien wwhen setting file_hdr->entry* for executables. 839760484Sobrien (som_begin_writing): For executables, set the exec_entry and 839860484Sobrien exec_flags fields. 839960484Sobrien (som_copy_private_backend_section_data): Always return a value. 840060484Sobrien 840160484Sobrien * libhppa.h (PA_PAGESIZE): Define. 840260484Sobrien 840360484Sobrien * som.c (SOM_ALIGN): Define. 840460484Sobrien (som_begin_writing): If writing an executable, initialize all 840560484Sobrien fields in the exec header to zero. Update fields in the exec 840660484Sobrien header as sizes of loadable subspaces are computed. Carefully 840760484Sobrien preserve alignments when building executables. Actually write the 840860484Sobrien exec after all the fields are filled in. 840960484Sobrien 841060484Sobrien * Better long-filename handling. Reads SOM ABI compliant extended 841160484Sobrien names, but doesn't quite write compliant extended names yet. 841260484Sobrien * som.c (som_slurp_extended_name_table): Delete function. The 841360484Sobrien generic code will handle things correctly. 841460484Sobrien (som_slurp_armap): Seek to the beginning of the next member. 841560484Sobrien (normalize): New function. 841660484Sobrien (som_bfd_ar_write_symbol_stuff): Take the size of the extended 841760484Sobrien name table into account when computing the file offsets in the 841860484Sobrien SOM dictionary. Make sure to align to an even boundary. 841960484Sobrien (som_write_armap): Initialize the checksum to zero. 842060484Sobrien (ar_maxchars): Fix. Opps. 842160484Sobrien 842260484SobrienFri Mar 18 20:35:24 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 842360484Sobrien 842460484Sobrien * aoutx.h (reloc_type_lookup): Handle BFD_RELOC_CTOR on a 64-bit 842560484Sobrien machine. Handle BFD_RELOC_SPARC13 and BFD_RELOC_SPARC_BASE13. 842660484Sobrien 842760484SobrienThu Mar 17 18:26:46 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 842860484Sobrien 842960484Sobrien * bfd-in.h (BFD_VERSION): Use @VERSION@. 843060484Sobrien * Makefile.in (bfd.h): Replace it with contents of VERSION file. 843160484Sobrien * bfd-in2.h: Regenerated. 843260484Sobrien 843360484Sobrien * trad-core.c (trad_unix_bfd_is_local_label): Fixed typo where 843460484Sobrien this was also named trad_unix_bfd_copy_private_bfd_data. 843560484Sobrien 843660484SobrienThu Mar 17 10:37:07 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 843760484Sobrien 843860484Sobrien * aoutx.h, elfcode.h, coff-alpha.c, bout.c, ecoff.c, ecofflink.c, 843960484Sobrien elf32-hppa.c, elf32-mips.c, linker.c, som.c, sunos.c: If malloc(0) 844060484Sobrien returns NULL, it is not an error. It's possible that some of 844160484Sobrien these checks are not necessary (because the size can never be 844260484Sobrien zero), but putting in the checks is the conservative thing to do 844360484Sobrien in light of the fact that some of these malloc calls replaced 844460484Sobrien unchecked alloca calls, in which a zero argument would work fine. 844560484Sobrien 844660484SobrienThu Mar 17 11:44:45 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 844760484Sobrien 844860484Sobrien * osf-core.c (osf_core_bfd_copy_private_bfd_data): Remove 844960484Sobrien duplicate definition. 845060484Sobrien (osf_core_bfd_is_local_label): Define. 845160484Sobrien 845260484Sobrien * reloc.c (bfd_generic_get_relocated_section_contents): Don't fail 845360484Sobrien if malloc (0) fails. bfd_canonicalize_reloc returning 0 is not a 845460484Sobrien failure indication, it merely means there are no relocs. 845560484Sobrien 845660484Sobrien * elfcode.h (NAME(bfd_elf,write_object_contents)): Don't use space 845760484Sobrien after NAME, since SunOS /bin/cc can't handle it. 845860484Sobrien 845960484SobrienWed Mar 16 16:43:33 1994 David J. Mackenzie (djm@thepub.cygnus.com) 846060484Sobrien 846160484Sobrien * netbsd386.c (N_SET_FLAGS): Don't nuke the machine id field. 846260484Sobrien From sukes@glue.umd.edu (Tasuki Hirata). 846360484Sobrien 846460484SobrienWed Mar 16 07:55:54 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 846560484Sobrien 846660484Sobrien * aoutf1.h (4 places): Use a simple #if on ARCH_SIZE, rather than 846760484Sobrien all that convoluted stuff with NAME, CAT3, etc. The convoluted 846860484Sobrien stuff broke for SunOS4 /bin/cc (due to DEFUN elimination, I guess). 846960484Sobrien 847060484SobrienWed Mar 16 00:02:05 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 847160484Sobrien 847260484Sobrien * som.c (som_prep_for_fixups): Detect section symbols based 847360484Sobrien on either the lack of private data or the symbol flags. Do not 847460484Sobrien munge section symbol names anymore -- they no longer confuse GDB. 847560484Sobrien (som_begin_writing): Leave space for an exec header if writing 847660484Sobrien an executable. 847760484Sobrien (som_slurp_symbol_table): Recognize both forms of section symbol 847860484Sobrien names "L$0\002" and "$<FOO>$". Change the name of "L$0\002" 847960484Sobrien section symbols to be the name of the section they represent. 848060484Sobrien Debugging symbols begin with "L$0\001", not just "L$". 848160484Sobrien 848260484SobrienTue Mar 15 22:58:28 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 848360484Sobrien 848460484Sobrien * bfd-in2.h, libbfd.h, libcoff.h: Rebuilt. 848560484Sobrien 848660484Sobrien * bfd-in.h (JUMP_TABLE): Add new entries to the jump table 848760484Sobrien for bfd_copy_private_section_data, bfd_copy_private_bfd_data, 848860484Sobrien and bfd_is_local_label. 848960484Sobrien 849060484Sobrien * targets.c: Add new entries to the bfd_target structure. 849160484Sobrien 849260484Sobrien * bfd.c (bfd_copy_private_bfd_data): New definition. 849360484Sobrien 849460484Sobrien * section.c (bfd_copy_private_section_data): New definition. 849560484Sobrien 849660484Sobrien * syms.c (bfd_is_local_label): New definition. 849760484Sobrien 849860484Sobrien * libbfd-in.h (bfd_generic_is_local_label): Declare. 849960484Sobrien 850060484Sobrien * libbfd.c (bfd_generic_is_local_label): New function. 850160484Sobrien 850260484Sobrien * *-core.c: Provide default definitions for new functions in 850360484Sobrien the target vector which all point to bfd_false. 850460484Sobrien 850560484Sobrien * aout-target.h, coffcode.h, elf32-target.h elf64-target.h, ieee.c 850660484Sobrien libaout.h, libecoff.h, nlm-target.h, oasys.c, srec.c, tekhex.c 850760484Sobrien Default new vectors for copying private backend data to bfd_true. 850860484Sobrien Default new vector for determining if a symbol is a local label 850960484Sobrien to bfd_generic_is_local_label. 851060484Sobrien 851160484Sobrien * som.c (som_bfd_copy_private_section_data): New function. 851260484Sobrien (som_bfd_is_local_label): New function. 851360484Sobrien (som_bfd_copy_private_bfd_data): For now default to bfd_true. 851460484Sobrien 851560484Sobrien * elf32-hppa.c (hppa_elf_is_local_label): New function. 851660484Sobrien 851760484SobrienTue Mar 15 23:55:47 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 851860484Sobrien 851960484Sobrien * cf-m68klynx.c (CALC_ADDEND): Use _bfd_m68klynx_howto_table. 852060484Sobrien 852160484SobrienTue Mar 15 04:41:13 1994 David J. Mackenzie (djm@rtl.cygnus.com) 852260484Sobrien 852360484Sobrien * Most files: 852460484Sobrien Replace DEFUN and DEFUN_VOID with K&R-style function definition. 852560484Sobrien Indent some of them to GNU standards. 852660484Sobrien 852760484Sobrien * aout32.c, archures.c, core.c, cpu-h8300.c, cpu-i960.c, 852860484Sobrien cpu-m68k.c, cpu-m88k.c, cpu-mips.c, cpu-vax.c, ctor.c, demo64.c, 852960484Sobrien elf32-hppa.h, gen-aout.c, host-aout.c, init.c, libhppa.h, 853060484Sobrien libieee.h, liboasys.h, newsos3.c, som.h, stab-syms.c, sunos.c: 853160484Sobrien Update copyright years. 853260484Sobrien 853360484SobrienMon Mar 14 11:41:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 853460484Sobrien 853560484Sobrien * som.c (som_prep_for_fixups): A relocation involving the section 853660484Sobrien symbol for the *ABS* section is really a relocation involving 853760484Sobrien no symbol. 853860484Sobrien (som_slurp_symbol_table): Do not set BSF_GLOBAL or BSF_EXPORT for 853960484Sobrien undefined symbols. Correctly distinguish between debugger symbols 854060484Sobrien and section symbols. 854160484Sobrien 854260484Sobrien * som (setup_sections): Set SEC_DEBUGGING and the section attributes 854360484Sobrien for spaces and subspaces. 854460484Sobrien 854560484Sobrien * som.c (som_bfd_count_ar_symbols): Fix typo. 854660484Sobrien 854760484Sobrien * som.c (som_object_setup): Set EXEC_P, D_PAGED, WP_TEXT, and 854860484Sobrien HAS_RELOC based on the object's magic number. 854960484Sobrien (make_unique_section): Delete function. BFD and its users are 855060484Sobrien prepared to handle multiple sections with the same name. 855160484Sobrien (setup_sections): Allocate space on the BFD's obstack to hold 855260484Sobrien section names. Use bfd_make_setion_anyway rather than the 855360484Sobrien obsolete make_unique_section. 855460484Sobrien (som_prep_headers): Choose the correct SOM magic number based 855560484Sobrien on the BFD's flags. 855660484Sobrien (som_bfd_fill_in_ar_symbols): Return false, not NULL on error. 855760484Sobrien 855860484SobrienSat Mar 12 09:46:09 1994 Ian Lance Taylor (ian@cygnus.com) 855960484Sobrien 856060484Sobrien * elf32-ppc.c: Renamed from elf32-powerpc.c. 856160484Sobrien * nlm32-ppc.c: Renamed from nlm32-powerpc.c. 856260484Sobrien * Makefile.in, configure.in: Corresponding changes. 856360484Sobrien 856460484SobrienFri Mar 11 22:27:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 856560484Sobrien 856660484Sobrien * elf32-powerpc.c: Extensive changes to update to preliminary ABI. 856760484Sobrien 856860484SobrienFri Mar 11 00:34:59 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 856960484Sobrien 857060484Sobrien * sunos.c (sunos_read_dynamic_info): Assume that dynamic info 857160484Sobrien is always located at the start of the data section to allow 857260484Sobrien recovery of the dynamic info from a stripped executable. 857360484Sobrien * ecoff.c (ecoff_styp_to_sec_flags): Handle STYP_PDATA, STYP_XDATA 857460484Sobrien and STYP_COMMENT. 857560484Sobrien 857660484SobrienWed Mar 9 17:17:53 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 857760484Sobrien 857860484Sobrien * libbfd-in.h: Remove alloca cruft. It was missing some necessary 857960484Sobrien cruft (like the #pragma alloca for AIX). 858060484Sobrien In addition to that problem, the C alloca calls xmalloc, which 858160484Sobrien means checking for being out of memory can't work right. The 858260484Sobrien following changes remove all uses of alloca from BFD. 858360484Sobrien * hosts/solaris2.h: Remove alloca cruft. 858460484Sobrien * som.c: Replace alloca with a fixed size auto array. 858560484Sobrien * aoutx.h, elfcode.h, nlmcode.h, bout.c, coff-alpha.c, ecoff.c, 858660484Sobrien ecofflink.c, elf32-hppa.c, elf32-mips.c, linker.c, reloc.c, som.c, 858760484Sobrien sunos.c: Replace alloca with malloc and appropriate error checking and 858860484Sobrien freeing. 858960484Sobrien * linker.c: Replace alloca with obstack_alloc. 859060484Sobrien * libbfd.h: Rebuilt. 859160484Sobrien 859260484SobrienTue Mar 8 12:10:38 1994 Ian Lance Taylor (ian@cygnus.com) 859360484Sobrien 859460484Sobrien * coff-mips.c (mips_relocate_section): Handle MIPS_R_LITERAL like 859560484Sobrien MIPS_R_GPREL. 859660484Sobrien 859760484SobrienSat Mar 5 14:08:54 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 859860484Sobrien 859960484Sobrien * elf32-hppa.h, elfcode.h: Replace uses of Elf*_Half, Elf*_Word, 860060484Sobrien Elf*_Off typedefs by their expansion, the typedefs have been 860160484Sobrien removed from include/elf/internal.h. 860260484Sobrien * elfcode.h (bfd_section_from_shdr): Handle SHT_DYNAMIC section like 860360484Sobrien SHT_PROGBITS section. 860460484Sobrien 860560484SobrienThu Mar 3 20:03:39 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 860660484Sobrien 860760484Sobrien * som.h (_PA_RISC_ID): Treat HOST_HPPAOSF just like HOST_HPPABSD. 860860484Sobrien 860960484SobrienWed Mar 2 13:28:06 1994 Jim Kingdon (kingdon@deneb.cygnus.com) 861060484Sobrien 861160484Sobrien * configure.host: Recognize i[34]86-sequent-*. 861260484Sobrien 861360484Sobrien * trad-core.c (trad_unix_core_file_p): A non-zero, not zero, 861460484Sobrien return from bfd_seek indicates an error. 861560484Sobrien New macro TRAD_CORE_DSIZE_INCLUDES_TSIZE to replace 861660484Sobrien TRAD_CORE_STACK_OFFSET. 861760484Sobrien * hosts/symmetry.h: Define TRAD_CORE_DSIZE_INCLUDES_TSIZE and 861860484Sobrien TRAD_CORE_USER_OFFSET but not HOST_STACK_OFFSET. 861960484Sobrien 862060484SobrienWed Mar 2 11:57:03 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 862160484Sobrien 862260484Sobrien * som.[ch]: Do not include libhppa.h in som.c, instead include 862360484Sobrien it in som.h. 862460484Sobrien 862560484Sobrien * elf32-hppa.[ch]: Do not include libhppa.h in elf32-hppa.c, instead 862660484Sobrien include it in elf32-hppa.h. 862760484Sobrien 862860484Sobrien * som.c (log2): Return -1 on error rather than aborting. 862960484Sobrien (setup_sections): Bubble up an error from log2. 863060484Sobrien 863160484Sobrien * Changes to make HP C compiler happy in both traditional 863260484Sobrien and ANSI mode. 863360484Sobrien * som.c (hppa_som_gen_reloc_type): Use correct enum type for 863460484Sobrien field parameter. 863560484Sobrien (bfd_som_set_section_attributes): Use unsigned int rather than 863660484Sobrien unsigned char to avoid GNU-C extensions. 863760484Sobrien (bfd_som_attach_aux_hdr): Return a boolean to indicate success 863860484Sobrien or failure rather than aborting on failure. 863960484Sobrien 864060484Sobrien * som.h (bfd_som_set_section_attributes): Fix prototype to match 864160484Sobrien som.c changes. 864260484Sobrien (bfd_som_attach_aux_hdr): Add prototype. 864360484Sobrien (hppa_som-gen_reloc_type): Likewise. 864460484Sobrien 864560484Sobrien * elf32-hppa.c: Add a couple casts to make HP compiler happy. 864660484Sobrien (hppa_look_for_stubs_in_section): Do not return false on failure 864760484Sobrien until rest of code is ready to handle it. Abort for now. 864860484Sobrien 864960484SobrienTue Mar 1 18:33:59 1994 Jim Kingdon (kingdon@deneb.cygnus.com) 865060484Sobrien 865160484Sobrien * bfd-in2.h: Rebuilt. 865260484Sobrien 865360484SobrienTue Mar 1 13:06:53 1994 Kung Hsu (kung@mexican.cygnus.com) 865460484Sobrien 865560484Sobrien * i386os9k.c: use new functions bfd_set_error and bfd_get_error. 865660484Sobrien * Makefile.in: delete an extra blank. 865760484Sobrien * configure.in : Add i396os9k_vec. 865860484Sobrien 865960484SobrienMon Feb 28 15:41:01 1994 Kung Hsu (kung@mexican.cygnus.com) 866060484Sobrien 866160484Sobrien * config.bfd : Add i386-os9k. 866260484Sobrien * config/i386-os9k.mt : Newly add os9k target makefile. 866360484Sobrien 866460484Sobrien * i386os9k.c : new file to handle os9k format bfd. 866560484Sobrien * Makefile.in : Handle new file i386os9k.c 866660484Sobrien * targets.c : Add bfd_target_os9k_flavour and i386os9k_vec. 866760484Sobrien * cache.c : Initialize cache_sentinel to 0. 866860484Sobrien 866960484SobrienSun Feb 27 16:30:55 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 867060484Sobrien 867160484Sobrien * elf32-hppa.c (mismatches, retval_mismatches): Fix mismatch 867260484Sobrien action in case where caller specified no argument relocation. 867360484Sobrien (hppa_elf_build_linker_stub): Try again to get the sym_ptr_ptr 867460484Sobrien right in the original relocation and the stub's relocation. 867560484Sobrien 867660484Sobrien * elf32-hppa.h (hppa_look_for_stub_in_section): Fix typo. Delete 867760484Sobrien unused symbols argument. 867860484Sobrien 867960484Sobrien * elf32-hppa.c (hppa_elf_stub_reloc): Accept asymbol ** rather 868060484Sobrien than asymbol * for original target symbol. All callers changed. 868160484Sobrien Set reloc->sym_ptr_ptr appropriately. 868260484Sobrien (hppa_elf_build_linker_stub): Set reloc->sym_ptr_ptr correctly. 868360484Sobrien (hppa_elf_look_for_stubs_in_section): No longer need symbols 868460484Sobrien argument. Use the output symbols when canonicalizing the relocs, 868560484Sobrien creating them if necessary. 868660484Sobrien 868760484Sobrien * linker.c (_bfd_generic_link_output_symbols): Do not 868860484Sobrien rebuild/clobber the output symbols if they already exist. 868960484Sobrien 869060484SobrienSun Feb 27 15:22:36 1994 Stan Shebs (shebs@andros.cygnus.com) 869160484Sobrien 869260484Sobrien * targets.c (BFD_SEND, BFD_SEND_FMT): Add debugging versions that 869360484Sobrien check all the pointer dereferences. Enabled via DEBUG_BFD_SEND. 869460484Sobrien * bfd-in2.h: Rebuilt. 869560484Sobrien 869660484Sobrien * srec.c (hex_value): Always set to a size of 256 bytes. 869760484Sobrien (srec_init): Cosmetic changes. 869860484Sobrien 869960484SobrienSun Feb 27 11:18:47 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 870060484Sobrien 870160484Sobrien * elf32-hppa.c: Second half of major cleanup. More comments, 870260484Sobrien PARAMize and staticize rest of functions. Delete unused 870360484Sobrien functions. Delete unused/unnecessary arguments to some functions. 870460484Sobrien Group static vars together. Abort for bad errors until we have 870560484Sobrien error code propogation working. Work on spacing and indention. 870660484Sobrien Add FIXMEs for unresolved problems. Use enums rather than 870760484Sobrien #defines for lots of things. Merge two functions which build 870860484Sobrien linker stubs into a single function (so they can easily share a 870960484Sobrien ton of common code). 871060484Sobrien 871160484SobrienSat Feb 26 10:00:45 1994 Ian Lance Taylor (ian@cygnus.com) 871260484Sobrien 871360484Sobrien * reloc.c (_bfd_relocate_contents): Adjust handling of overflow to 871460484Sobrien avoid depending upon right shifts of signed numbers, and to 871560484Sobrien correct handling of src_mask with lower bits zero. 871660484Sobrien 871760484Sobrien * aoutx.h, archive.c: Add casts to avoid warnings from SVR4 cc. 871860484Sobrien * ecoff.c, ecofflink.c, ecoffswap.h, srec.c: Likewise. 871960484Sobrien * elf32-i386.c: Likewise. 872060484Sobrien * elfcode.h (bfd_section_from_shdr): Make i unsigned; remove old 872160484Sobrien #if 0 code. 872260484Sobrien (elf_write_phdrs): Make i unsigned. 872360484Sobrien (map_program_segments): Make i and n_left unsigned. 872460484Sobrien (assign_file_positions_except_relocs): Make i unsigned. 872560484Sobrien (write_shdrs_and_ehdr): Make count unsigned. 872660484Sobrien (assign_file_positions_for_relocs): Make i unsigned. 872760484Sobrien (NAME(bfd,elf_write_object_contents)): Make count unsigned. 872860484Sobrien (section_from_elf_index): Make index argument unsigned. 872960484Sobrien 873060484SobrienFri Feb 25 21:34:58 1994 Ian Lance Taylor (ian@cygnus.com) 873160484Sobrien 873260484Sobrien * elfcode.h: Don't include assert.h. 873360484Sobrien (swap_out_syms): Use BFD_ASSERT rather than assert. 873460484Sobrien 873560484Sobrien * linker.c (_bfd_generic_link_write_global_symbol): Add missing 873660484Sobrien break in switch. 873760484Sobrien 873860484Sobrien * hosts/i386v4.h (qsort, strtol): Remove incorrect and useless 873960484Sobrien declarations. 874060484Sobrien 874160484SobrienFri Feb 25 16:35:57 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 874260484Sobrien 874360484Sobrien * libhppa.h (hppa_rebuild_insn): Moved here from elf32-hppa.c. 874460484Sobrien 874560484Sobrien * elf32-hppa.h (elf_hppa_tc_symbol): Add new arguments. 874660484Sobrien (elf_hppa_tc_make_sections): Likewise. 874760484Sobrien (elf_hppa_final_processing): Add extern decl. 874860484Sobrien 874960484Sobrien * elf32-hppa.c: First half of major cleanup. Add/cleanup lots of 875060484Sobrien comments. PARAMize some static functions. Delete unused functions. 875160484Sobrien Delete unused/unnecessary arguments to many functions. Group 875260484Sobrien static vars together. Collapse common case statements together 875360484Sobrien in many places. Use default case when possible instead of listing 875460484Sobrien each case separately. Abort for bad errors until we get error 875560484Sobrien code propogation working. Work on spacing and indention problems. 875660484Sobrien Add FIXMEs for some unresolved problems. Delete hopelessly broken 875760484Sobrien COMPLEX relocation support (it's never used anyway). 875860484Sobrien (hppa_elf_rebuild_insn): Delete. Moved into libhppa.h. 875960484Sobrien (elf_hppa_tc_symbol): Accept and use new arguments (symext chains). 876060484Sobrien (elf_hppa_tc_make_sections): Likewise. 876160484Sobrien 876260484Sobrien * format.c (bfd_check_format_matches): Initialize matching_vector 876360484Sobrien to keep gcc -Wall quiet. 876460484Sobrien 876560484Sobrien * elfcode.h (elf_slurp_reloca_table): Fix typo. 876660484Sobrien 876760484Sobrien * som.c (som_get_symtab_upper_bound): Use "sizeof (asymbol *)" 876860484Sobrien not "sizeof (som_symbol_type *)". 876960484Sobrien 877060484Sobrien * elfcode.h (elf_get_symtab_upper_bound): Use "sizeof (asymbol *)" 877160484Sobrien not "sizeof (asymbol"). Opps. 877260484Sobrien 877360484SobrienFri Feb 25 13:19:04 1994 Ted Lemon (mellon@pepper.ncd.com) 877460484Sobrien 877560484Sobrien * bfd.c (bfd_get_gp_size): Can't return gp value on an archive. 877660484Sobrien (bfd_set_gp_size): Can't set gp value on an archive. 877760484Sobrien 877860484SobrienFri Feb 25 12:57:00 1994 Steve Chamberlain (sac@jonny.cygnus.com) 877960484Sobrien 878060484Sobrien * srec.c (pass_over): Don't skip too many characters when 878160484Sobrien end of line seen. 878260484Sobrien 878360484SobrienFri Feb 25 11:41:57 1994 Ian Lance Taylor (ian@cygnus.com) 878460484Sobrien 878560484Sobrien * ecoff.c (ecoff_sizeof_headers): Align result to 16 byte 878660484Sobrien boundary. 878760484Sobrien 878860484SobrienThu Feb 24 07:13:22 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 878960484Sobrien 879060484Sobrien * som.c (som_bfd_derive_misc_symbol_info): Derive symbol_info 879160484Sobrien field for absolute symbols in the same manner as undefined 879260484Sobrien and common symbols. 879360484Sobrien 879460484SobrienThu Feb 24 04:29:19 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 879560484Sobrien 879660484Sobrien * elfcode.h (elf_core_file_p): Check for core file e_machine match 879760484Sobrien like in elf_object_p. 879860484Sobrien 879960484SobrienWed Feb 23 18:28:37 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 880060484Sobrien 880160484Sobrien * elfcode.h (alloca): Delete declaration. 880260484Sobrien 880360484Sobrien * som.c (som_prep_headers): Use CPU_PA_RISC1_0 for magic 880460484Sobrien number rather than HP9000S800_ID. Note som.c is careful 880560484Sobrien to make sure CPU_PA_RISC1_0 is always defined. 880660484Sobrien 880760484SobrienMon Feb 21 10:12:02 1994 Stan Shebs (shebs@andros.cygnus.com) 880860484Sobrien 880960484Sobrien * Makefile.in (targets.o, archures.o): Use ALL_CFLAGS to supply 881060484Sobrien flags to explicit compile actions. 881160484Sobrien 881260484SobrienMon Feb 21 09:50:06 1994 Ian Lance Taylor (ian@lisa.cygnus.com) 881360484Sobrien 881460484Sobrien * ecofflink.c (ecoff_write_symhdr): Set symhdr->magic here. 881560484Sobrien * ecoff.c (ecoff_write_object_contents): Make sure .bss section 881660484Sobrien ends on a page boundary if there is no symbol table. 881760484Sobrien (ecoff_bfd_final_link): Don't set symhdr->magic here. 881860484Sobrien 881960484Sobrien * hosts/hp300.h: Include <stdlib.h>; don't declare free. 882060484Sobrien 882160484Sobrien * som.c (som_bfd_count_ar_symbols): Use a pointer and alloca 882260484Sobrien rather than an array of variable size. 882360484Sobrien (som_bfd_fill_in_ar_symbols): Likewise. 882460484Sobrien (som_bfd_ar_write_symbol_stuff): Likewise. 882560484Sobrien 882660484Sobrien * coff-alpha.c (alpha_relocate_section): Rewrite mask and shift 882760484Sobrien operation to avoid OSF 1.3 cc bug. 882860484Sobrien * ecoff.c (ecoff_write_object_contents): Make text_size, data_size 882960484Sobrien and bss_size bfd_size_type instead of unsigned long. Make 883060484Sobrien text_start and data_start bfd_vma instead of unsigned long. 883160484Sobrien * ecofflink.c (ecoff_add_string): Remove incorrect cast of return 883260484Sobrien value. 883360484Sobrien 883460484SobrienSun Feb 20 16:06:54 1994 Ian Lance Taylor (ian@lisa.cygnus.com) 883560484Sobrien 883660484Sobrien * linker.c (_bfd_generic_link_add_archive_symbols): Consider 883760484Sobrien symbols in the order they appear in the archive map. 883860484Sobrien 883960484SobrienSat Feb 19 03:17:32 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 884060484Sobrien 884160484Sobrien * coff-alpha.c (reloc_nil): Add forward declaration, add missing 884260484Sobrien error_message argument. 884360484Sobrien * coff-sparc.c (bfd_coff_generic_reloc): Add forward declaration, 884460484Sobrien add missing error_message argument. 884560484Sobrien * mipsbsd.c (mips_fix_hi16_s): Add forward declaration, add missing 884660484Sobrien error_message argument. 884760484Sobrien 884860484SobrienFri Feb 18 11:41:58 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 884960484Sobrien 885060484Sobrien Support for PowerPC NetWare. 885160484Sobrien * nlm32-powerpc.c: New file. 885260484Sobrien * config.bfd (powerpc-*-netware*): New target; use ppc-nlm. 885360484Sobrien * config/ppc-nlm.mt: New file. 885460484Sobrien * configure.in (nlm32_powerpc_vec): New target vector; use 885560484Sobrien nlm32-powerpc.o, nlm32.o, nlm.o. 885660484Sobrien * targets.c (nlm32_powerpc_vec): Declare. 885760484Sobrien * Makefile.in (BFD32_BACKENDS): Add nlm32-powerpc.o. 885860484Sobrien (CFILES): Add nlm32-powerpc.c. 885960484Sobrien 886060484Sobrien Initial support for PowerPC ELF. Done without an ABI, and 886160484Sobrien probably to be changed when I get an ABI. 886260484Sobrien * config.bfd (powerpc-*-sysv4*): New target; use ppc-elf. 886360484Sobrien * config/ppc-elf.mt: New file. 886460484Sobrien * configure.in (bfd_elf32_powerpc_vec): New target vector; use 886560484Sobrien elf32-powerpc.o, elf32.o, elf.o. 886660484Sobrien * elf32-powerpc.c: New file. 886760484Sobrien * elfcode.h (prep_headers): Add bfd_arch_powerpc case. 886860484Sobrien (elf_set_arch_mach): Likewise. 886960484Sobrien * targets.c (bfd_elf32_powerpc_vec): Declare. 887060484Sobrien * Makefile.in (BFD32_BACKENDS): Add elf32-powerpc.o. 887160484Sobrien (CFILES): Add elf32-powerpc.c. 887260484Sobrien Rebuilt dependencies. 887360484Sobrien 887460484SobrienThu Feb 17 15:29:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 887560484Sobrien 887660484Sobrien * coffgen.c (coff_write_linenumbers): Always return a value. 887760484Sobrien 887860484Sobrien * elfcode.h (elf_slurp_symbol_table): Handle zero symbols 887960484Sobrien reasonably. Allocate x_symp using alloca. 888060484Sobrien 888160484Sobrien * elfcode.h (map_program_segments): ELF program header entries 888260484Sobrien must be sorted by load address. This used to generate the entries 888360484Sobrien in reverse order. 888460484Sobrien 888560484Sobrien * section.c (SEC_IN_MEMORY): Define. 888660484Sobrien (asection): Rename unused field otheruserdata to contents, and 888760484Sobrien make it char *. 888860484Sobrien (bfd_make_section_anyway): Initialize contents field to NULL. 888960484Sobrien (bfd_get_section_contents): If SEC_IN_MEMORY is set, get section 889060484Sobrien contents from contents field rather than from file. 889160484Sobrien * bfd-in2.h: Rebuilt. 889260484Sobrien 889360484SobrienThu Feb 17 08:30:53 1994 David J. Mackenzie (djm@thepub.cygnus.com) 889460484Sobrien 889560484Sobrien * bfd.c (bfd_get_error, bfd_set_error): New functions. 889660484Sobrien (bfd_error): Make static. 889760484Sobrien (bfd_error_type): Renamed from bfd_ec. Prepend "bfd_error_" to 889860484Sobrien all values. 889960484Sobrien * bfd-in2.h: Regenerated. 890060484Sobrien * aix386-core.c, aout-adobe.c, aout-encap.c, aout-target.h, 890160484Sobrien aoutf1.h, aoutx.h, archive.c, archures.c, 890260484Sobrien bfd.c, bout.c, cache.c, coff-alpha.c, coff-mips.c, 890360484Sobrien coff-rs6000.c, coffcode.h, coffgen.c, core.c, ctor.c, 890460484Sobrien ecoff.c, ecofflink.c, elf.c, elf32-hppa.c, elf32-mips.c, 890560484Sobrien elfcode.h, format.c, hash.c, hp300hpux.c, hppabsd-core.c, 890660484Sobrien i386lynx.c, ieee.c, libbfd.c, libelf.h, linker.c, 890760484Sobrien lynx-core.c, nlm.c, nlm32-alpha.c, nlm32-i386.c, 890860484Sobrien nlm32-sparc.c, nlmcode.h, oasys.c, opncls.c, osf-core.c, 890960484Sobrien ptrace-core.c, reloc16.c, rs6000-core.c, section.c, som.c, 891060484Sobrien srec.c, sunos.c, syms.c, targets.c, tekhex.c, 891160484Sobrien trad-core.c: Change callers. 891260484Sobrien 891360484SobrienTue Feb 15 22:27:27 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 891460484Sobrien 891560484Sobrien * som.c: Remove FIXMEs for things which have been dealt with. 891660484Sobrien 891760484SobrienTue Feb 15 19:39:24 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 891860484Sobrien 891960484Sobrien * section.c (bfd_get_section_contents): Since this function reads 892060484Sobrien unrelocated contents, the section's raw size is always the one to 892160484Sobrien use for bounds checking. 892260484Sobrien 892360484Sobrien * linker.c (default_indirect_link_order): In assertion, compare 892460484Sobrien link_order size field against cooked size, not raw size, of input 892560484Sobrien section. 892660484Sobrien 892760484Sobrien * bout.c (b_out_get_reloc_upper_bound): For BSS section, just 892860484Sobrien return 0. 892960484Sobrien (aligncode): When shrinking, the addend should be set to the 893060484Sobrien current offset in the section plus the number of bytes of padding 893160484Sobrien that will actually be retained. 893260484Sobrien (b_out_relax_section): If a section contains no relocations, don't 893360484Sobrien bother processing them. 893460484Sobrien (b_out_get_relocated_section_contents): Set reloc_done. Assert 893560484Sobrien that bfd_get_section_contents returns true. Check that relocs are 893660484Sobrien properly ordered. 893760484Sobrien (b_out_get_relocated_section_contents, case ALIGNDONE): Assert 893860484Sobrien that reloc->addend falls between the current source offset and the 893960484Sobrien raw size of the input section. 894060484Sobrien 894160484Sobrien * config.bfd: Support i960 vxworks versions > 5.0 with coff, not 894260484Sobrien bout. Default with no version number is still bout. Support 894360484Sobrien explicit i960-coff target too. 894460484Sobrien 894560484Sobrien * bout.c: Changed some indentation, deleted trailing whitespace, 894660484Sobrien fixed some comments, removed some "#if 1" lines. 894760484Sobrien (output_addr): New macro. 894860484Sobrien (calljx_callback, callj_callback, get_value, abs32code, aligncode, 894960484Sobrien b_out_get_relocated_section_contents): Use it for readability. 895060484Sobrien 895160484SobrienTue Feb 15 09:00:16 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 895260484Sobrien 895360484Sobrien * som.c (som_bfd_prep_for_ar_write): Iterate through the SOM 895460484Sobrien symbols, not the BFD symbols. 895560484Sobrien (som_bfd_ar_write_symbol_stuff): Likewise. 895660484Sobrien 895760484SobrienMon Feb 14 22:55:20 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 895860484Sobrien 895960484Sobrien * som.c (som_slurp_symbol_table): Do not die if a BFD doesn't 896060484Sobrien have any symbols. 896160484Sobrien 896260484Sobrien * Finish basic read-write support for SOM archive libraries. Bugs 896360484Sobrien surely remain as this hasn't been tested all that much. 896460484Sobrien * som.c (SOM_LST_HASH_SIZE, SOM_LST_MODULE_LIMIT): Define. 896560484Sobrien (struct som_misc_symbol_info): New structure to hold info necessary 896660484Sobrien to build both normal and library symbol tables. 896760484Sobrien (som_derive_misc_symbol_info): New function to derive info necessary 896860484Sobrien to build both normal and library symbol tables. 896960484Sobrien (som_build_and_write_symbol_table): Use new function to derive misc 897060484Sobrien symbol information. 897160484Sobrien (som_slurp_symbol_table): Update backend private data for symbols 897260484Sobrien appropriately. 897360484Sobrien (som_bfd_prep_for_ar_write): New function. 897460484Sobrien (som_bfd_ar_symbol_hash): New function. 897560484Sobrien (som_bfd_ar_write_symbol_stuff): New function. 897660484Sobrien (som_write_armap): Flesh out. 897760484Sobrien (som_vec): Fix ar padding character. 897860484Sobrien 897960484Sobrien * som.c: Consistently use memset rather than bzero. 898060484Sobrien 898160484SobrienMon Feb 14 17:02:28 1994 Stu Grossman (grossman at cygnus.com) 898260484Sobrien 898360484Sobrien * coff-rs6000.c: Add Lynx core file support, use HOST_AIX, where 898460484Sobrien appropriate. 898560484Sobrien * rs6000-core.c: Use HOST_AIX instead of COREFILES_PLEASE. 898660484Sobrien * config/rs6000.mh: Remove defs of ARCHIVES_PLEASE and 898760484Sobrien COREFILES_PLEASE. 898860484Sobrien * config/rs6000lynx.mh: Turn on Lynx core file support. 898960484Sobrien * hosts/rs6000.h: #define HOST_AIX. 899060484Sobrien * hosts/rs6000lynx.h: Create this to enable Lynx host support. 899160484Sobrien 899260484SobrienSun Feb 13 14:30:00 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 899360484Sobrien 899460484Sobrien * som.h (som_symbol_data): Safely access backend private data 899560484Sobrien for BFD symbols. All callers changed. 899660484Sobrien 899760484Sobrien * Read-only SOM archive support. 899860484Sobrien * som.c (som_bfd_count_ar_symbols): New helper function. 899960484Sobrien (som_bfd_fill_in_ar_symbols): New helper function. 900060484Sobrien (som_slurp_armap): New function to read a SOM LST. 900160484Sobrien 900260484Sobrien * som.h: Include <lst.h> and <ar.h>. 900360484Sobrien 900460484SobrienSat Feb 12 22:34:14 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 900560484Sobrien 900660484Sobrien * elfcode.h (elf_map_symbols): Fix typo. 900760484Sobrien (write_object_contents): Check return values from prep_headers and 900860484Sobrien elf_compute_section_file_positions. 900960484Sobrien (set_section_contents): Likewise. 901060484Sobrien 901160484SobrienFri Feb 11 16:56:50 1994 David J. Mackenzie (djm@thepub.cygnus.com) 901260484Sobrien 901360484Sobrien * archive.c (normalize) [VMS]: Call malloc, not bfd_xmalloc. 901460484Sobrien (bfd_construct_extended_name_table): Check result of normalize. 901560484Sobrien 901660484SobrienTue Feb 8 08:57:31 1994 David J. Mackenzie (djm@thepub.cygnus.com) 901760484Sobrien 901860484Sobrien Make all callers of malloc or realloc (including via obstacks) 901960484Sobrien check the result for NULL. Most set bfd_error to no_memory and 902060484Sobrien return in that case; a few are harder to fix, and are marked 902160484Sobrien with "FIXME <return type>". 902260484Sobrien 902360484Sobrien * elf32-hppa.c (hppa_elf_build_arg_reloc_stub 902460484Sobrien hppa_elf_build_long_branch_stub): Check bfd_make_empty_symbol return. 902560484Sobrien * linker.c (_bfd_generic_link_output_symbols 902660484Sobrien _bfd_generic_link_write_global_symbol): Ditto 902760484Sobrien * section.c (bfd_make_section_anyway): Ditto. 902860484Sobrien 902960484Sobrien * tekhex.c (find_chunk tekhex_mkobject): Check bfd_alloc. 903060484Sobrien (first_phase): Ditto. FIXME void 903160484Sobrien (tekhex_make_empty_symbol): Check bfd_zalloc. 903260484Sobrien 903360484Sobrien * sunos.c (sunos_read_dynamic_info): Check bfd_zalloc. 903460484Sobrien (MY(read_dynamic_symbols) MY(read_dynamic_relocs)): Check bfd_alloc. 903560484Sobrien 903660484Sobrien * stringhash.c (_bfd_stringtab_hash_newfunc): Check bfd_hash_allocate. 903760484Sobrien 903860484Sobrien * srec.c: Indent. 903960484Sobrien (fillup_symbols): Check bfd_alloc. FIXME void 904060484Sobrien (srec_mkobject srec_get_section_contents 904160484Sobrien srec_set_section_contents): Check bfd_alloc. 904260484Sobrien (srec_make_empty_symbol): Check bfd_zalloc. 904360484Sobrien 904460484Sobrien * som.c (hppa_som_gen_reloc_type): Check bfd_alloc_by_size_t. 904560484Sobrien (make_unique_section): Check bfd_alloc. 904660484Sobrien (som_new_section_hook): Check bfd_zalloc. 904760484Sobrien (bfd_som_attach_aux_hdr): Ditto. FIXME void 904860484Sobrien 904960484Sobrien * rs6000-core.c (rs6000coff_core_p): Check bfd_zalloc. 905060484Sobrien 905160484Sobrien * osf-core.c (osf_core_make_empty_symbol): Check bfd_zalloc. 905260484Sobrien (osf_core_core_file_p): Check bfd_alloc. 905360484Sobrien 905460484Sobrien * oasys.c (oasys_slurp_symbol_table oasys_archive_p 905560484Sobrien oasys_mkobject oasys_object_p oasys_new_section_hook 905660484Sobrien oasys_set_section_contents): Check bfd_alloc. 905760484Sobrien (oasys_slurp_section_data): Check bfd_zalloc and bfd_alloc. 905860484Sobrien (oasys_make_empty_symbol): Check bfd_zalloc. 905960484Sobrien 906060484Sobrien * nlmcode.h (nlm_make_empty_symbol): Check bfd_zalloc. 906160484Sobrien (nlm_slurp_symbol_table): Check bfd_zalloc and bfd_alloc. 906260484Sobrien 906360484Sobrien * nlm32-sparc.c (nlm_sparc_read_import): Check bfd_alloc. 906460484Sobrien 906560484Sobrien * nlm32-i386.c (nlm_i386_read_import): Check bfd_alloc. 906660484Sobrien 906760484Sobrien * nlm32-alpha.c (nlm_alpha_read_import): Check bfd_alloc. 906860484Sobrien 906960484Sobrien * linker.c (_bfd_link_hash_newfunc 907060484Sobrien (generic_link_hash_newfunc 907160484Sobrien (archive_hash_newfunc 907260484Sobrien (_bfd_generic_link_add_one_symbol): Check bfd_hash_allocate. 907360484Sobrien (_bfd_generic_final_link 907460484Sobrien (_bfd_generic_link_output_symbols 907560484Sobrien (default_indirect_link_order): Check bfd_alloc. 907660484Sobrien (bfd_new_link_order): Check bfd_alloc_by_size_t. 907760484Sobrien 907860484Sobrien * irix-core.c (irix_core_make_empty_symbol): Check bfd_zalloc. 907960484Sobrien 908060484Sobrien * ieee.c: Indent. 908160484Sobrien (read_id get_symbol get_section_entry ieee_archive_p ieee_object_p 908260484Sobrien ieee_slurp_section_data ieee_new_section_hook): Check bfd_alloc. 908360484Sobrien (do_one): Check bfd_alloc. Return a boolean. 908460484Sobrien (ieee_slurp_section_data): Check it. 908560484Sobrien (init_for_output): Check bfd_alloc. Return a boolean. 908660484Sobrien (ieee_set_section_contents): Check it. 908760484Sobrien (do_with_relocs): Check bfd_alloc. Return a boolean. 908860484Sobrien (ieee_bfd_debug_info_accumulate): Ditto. FIXME void. 908960484Sobrien (ieee_mkobject): Check bfd_zalloc. 909060484Sobrien (ieee_make_empty_symbol): Check bfd_zmalloc. 909160484Sobrien 909260484Sobrien * hpux-core.c (hpux_core_make_empty_symbol): Check 909360484Sobrien bfd_zalloc. 909460484Sobrien 909560484Sobrien * hppabsd-core.c (hppabsd_core_make_empty_symbol): Check 909660484Sobrien bfd_zalloc. 909760484Sobrien (hppabsd_core_core_file_p): Check bfd_zalloc. 909860484Sobrien 909960484Sobrien * hp300hpux.c (MY(slurp_symbol_table)): Check bfd_alloc. 910060484Sobrien 910160484Sobrien * elfcode.h (elf_new_section_hook): Check bfd_alloc. 910260484Sobrien (bfd_section_from_phdr): Ditto. 910360484Sobrien (write_relocs): Ditto. FIXME void 910460484Sobrien (elf_map_symbols assign_section_numbers map_program_segments): 910560484Sobrien Ditto. Return a boolean. 910660484Sobrien (swap_out_syms): Ditto. Check elf_map_symbols. 910760484Sobrien (elf_slurp_symbol_table): Check bfd_zalloc. 910860484Sobrien (elf_slurp_reloca_table): Check bfd_alloc. 910960484Sobrien (elf_slurp_reloc_table): Ditto. 911060484Sobrien (elf_compute_section_file_positions): Check assign_section_numbers. 911160484Sobrien (assign_file_positions_except_relocs): Return a boolean. 911260484Sobrien Check map_program_segments. 911360484Sobrien (elf_compute_section_file_positions): Check it. 911460484Sobrien 911560484Sobrien * elf32-mips.c (mips_elf_final_link): Check bfd_alloc. 911660484Sobrien 911760484Sobrien * elf32-hppa.c (hppa_elf_stub_branch_reloc): Check bfd_zmalloc and 911860484Sobrien realloc. 911960484Sobrien (hppa_elf_stub_reloc): Ditto. 912060484Sobrien (hppa_elf_build_arg_reloc_stub): Check bfd_zalloc. 912160484Sobrien (hppa_elf_build_long_branch_stub): Ditto. 912260484Sobrien (elf32_hppa_backend_symbol_table_processing): Ditto. 912360484Sobrien 912460484Sobrien * ecoff.c (ecoff_set_symbol_info): Check bfd_alloc. Return a boolean. 912560484Sobrien (ecoff_slurp_symbol_table): Check it. 912660484Sobrien (ecoff_slurp_armap): Check bfd_alloc. 912760484Sobrien (ecoff_write_armap): Check bfd_zalloc. 912860484Sobrien (ecoff_link_hash_newfunc): Check bfd_hash_allocate and 912960484Sobrien _bfd_link_hash_newfunc. 913060484Sobrien (ecoff_link_add_externals): Check bfd_alloc. 913160484Sobrien 913260484Sobrien * ctor.c (bfd_constructor_entry): Check bfd_alloc. 913360484Sobrien 913460484Sobrien * coffgen.c (coff_real_object_p): Check bfd_alloc. 913560484Sobrien (coff_renumber_symbols): Check bfd_alloc_by_size_t. Return a boolean. 913660484Sobrien (coff_write_symbol): Check bfd_alloc. FIXME int 913760484Sobrien (coff_write_linenumbers): Check bfd_alloc. Return a boolean. 913860484Sobrien (coff_section_symbol): Check bfd_alloc_by_size_t. 913960484Sobrien (coff_get_normalized_symtab): Check bfd_alloc. 914060484Sobrien (coff_bfd_make_debug_symbol): Check bfd_zalloc. 914160484Sobrien * libcoff-in.h: Change decls of coff_renumber_symbols, 914260484Sobrien coff_write_linenumbers. 914360484Sobrien * libcoff.h: Rebuilt. 914460484Sobrien * coffcode.h (coff_write_object_contents): Check 914560484Sobrien coff_renumber_symbols, coff_write_linenumbers. 914660484Sobrien 914760484Sobrien * coffcode.h: Indent. 914860484Sobrien (coff_add_missing_symbols): Check bfd_alloc_by_size_t. Return a 914960484Sobrien boolean. 915060484Sobrien (coff_write_object_contents): Check it. 915160484Sobrien 915260484Sobrien * coff-alpha.c (alpha_relocate_section): Check bfd_alloc. 915360484Sobrien * coff-mips.c (mips_relocate_section): Ditto. 915460484Sobrien 915560484Sobrien * archive.c (bfd_slurp_bsd_armap_f2): Check bfd_alloc value. 915660484Sobrien (do_slurp_bsd_armap): Ditto. 915760484Sobrien (compute_and_write_armap): Check bfd_realloc value. 915860484Sobrien 915960484Sobrien * aoutx.h (translate_from_native_sym_flags): Check bfd_alloc 916060484Sobrien return value. Return boolean value. 916160484Sobrien (NAME(aout,make_empty_symbol)): Check bfd_zalloc return value. 916260484Sobrien (NAME(aout,slurp_symbol_table)): Check bf_alloc and bfd_zalloc 916360484Sobrien return value. 916460484Sobrien (add_to_stringtab): Ditto. FIXME void 916560484Sobrien (aout_link_hash_newfunc): Check bfd_hash_allocate return value. 916660484Sobrien (aout_link_add_symbols): Check bfd_alloc value. 916760484Sobrien (translate_symbol_table): Check translate_from_native_sym_flags. 916860484Sobrien * hp300hpux.c (MY(slurp_symbol_table)): Ditto. 916960484Sobrien * aoutx.h (aout_link_hash_newfunc): Check _bfd_link_hash_newfunc. 917060484Sobrien 917160484Sobrien * opncls.c (bfd_zalloc bfd_realloc): Check result of bfd_alloc. 917260484Sobrien 917360484Sobrien * opncls.c (obstack_chunk_alloc): Define as malloc, not 917460484Sobrien bfd_xmalloc_by_size_t. 917560484Sobrien (_bfd_new_bfd): Check obstack_begin for 0 return. 917660484Sobrien 917760484Sobrien * ieee.c (obstack_chunk_alloc): Define as malloc, not 917860484Sobrien bfd_xmalloc_by_size_t. 917960484Sobrien (ieee_archive_p): Check obstack_begin for 0 return and 918060484Sobrien obstack_finish for NULL return. 918160484Sobrien 918260484Sobrien * hash.c (obstack_chunk_alloc): Define as malloc, not 918360484Sobrien bfd_xmalloc_by_size_t. 918460484Sobrien (bfd_hash_table_init_n): Check obstack_begin for 0 return and 918560484Sobrien obstack_finish for NULL return. 918660484Sobrien (bfd_hash_lookup): Check obstack_alloc for NULL return. 918760484Sobrien 918860484Sobrien * ecofflink.c (obstack_chunk_alloc): Define as malloc, not 918960484Sobrien bfd_xmalloc_by_size_t. 919060484Sobrien bfd_ecoff_debug_accumulate 919160484Sobrien bfd_ecoff_debug_accumulate_other): Check obstack_alloc. 919260484Sobrien (add_file_shuffle add_memory_shuffle): Check obstack_alloc for 919360484Sobrien NULL return. Return boolean, not void. 919460484Sobrien (bfd_ecoff_debug_init): Check obstack_begin for 0 return. 919560484Sobrien (bfd_ecoff_debug_accumulate): Check add_file_shuffle 919660484Sobrien and add_memory_shuffle return. 919760484Sobrien (string_hash_newfunc): Check bfd_hash_allocate and bfd_hash_newfunc. 919860484Sobrien (bfd_ecoff_debug_accumulate): Check bfd_alloc. 919960484Sobrien (ecoff_add_string): Check add_memory_shuffle return. 920060484Sobrien 920160484Sobrien * libbfd-in.h (xmalloc, bfd_xmalloc, bfd_xmalloc_by_size_t): 920260484Sobrien Remove decls. 920360484Sobrien * libbfd.h: Rebuilt. 920460484Sobrien 920560484SobrienFri Feb 11 15:35:32 1994 Stu Grossman (grossman at cygnus.com) 920660484Sobrien 920760484Sobrien * configure.host: Add Lynx/rs6000 support. 920860484Sobrien * config/i386-nlm.mt: Enable a.out file support. 920960484Sobrien * config/rs6000lynx.mh: Lynx/rs6000 host support. 921060484Sobrien 921160484SobrienFri Feb 11 17:25:58 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 921260484Sobrien 921360484Sobrien * archive.c (compute_and_write_armap): Rewrite somewhat to improve 921460484Sobrien memory usage. 921560484Sobrien 921660484SobrienFri Feb 11 13:10:42 1994 Stan Shebs (shebs@andros.cygnus.com) 921760484Sobrien 921860484Sobrien * archive.c: Change all references to '\n' in archive magic 921960484Sobrien to '\012', for greater portability. 922060484Sobrien * ecoff.c (ecoff_write_armap): Ditto. 922160484Sobrien 922260484SobrienThu Feb 10 12:58:48 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 922360484Sobrien 922460484Sobrien * aoutx.h (aout_link_write_other_symbol): Check strip settings to 922560484Sobrien see whether symbol should be output. 922660484Sobrien * genlink.h (struct generic_write_global_symbol_info): Added info 922760484Sobrien field. 922860484Sobrien * linker.c (_bfd_generic_final_link): Initialize wginfo.info. 922960484Sobrien (_bfd_generic_link_write_global_symbol): Check strip settings to 923060484Sobrien see whether symbol should be output. 923160484Sobrien * elf32-mips.c (mips_elf_final_link): Initialize wginfo.info. 923260484Sobrien 923360484SobrienWed Feb 9 21:34:58 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 923460484Sobrien 923560484Sobrien * som.c (som_reloc_queue_find): Do not examine a NULL queue entry. 923660484Sobrien 923760484Sobrien * som.c: Cast return values from BFD memory allocation routines to 923860484Sobrien avoid warnings from the HP compiler. 923960484Sobrien 924060484SobrienWed Feb 9 12:55:02 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 924160484Sobrien 924260484Sobrien * coff-alpha.c (alpha_relocate_section): Accept a LITERAL 924360484Sobrien reloc on an "ldl" instruction too. 924460484Sobrien 924560484Sobrien * archive.c (bfd_ar_hdr_from_filesystem): Cast status elements 924660484Sobrien when passing them to sprintf. Use %ld instead of %d. 924760484Sobrien 924860484Sobrien * coff-rs6000.c (rs6000coff_mkarchive): Return false. 924960484Sobrien (rs6000_coff_snarf_ar_hdr): Don't declare errno; it's not used. 925060484Sobrien Also removed unused variable namelen. 925160484Sobrien (rs6000coff_write_armap): Declare orl_count and stridx parameters. 925260484Sobrien 925360484SobrienTue Feb 8 18:00:34 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 925460484Sobrien 925560484Sobrien * libbfd-in.h (xmalloc): Don't declare parameter type, to avoid 925660484Sobrien conflicts. 925760484Sobrien * libbfd.h: Rebuilt. 925860484Sobrien 925960484SobrienTue Feb 8 15:55:50 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 926060484Sobrien 926160484Sobrien * coff-alpha.c (reloc_nil): New function. 926260484Sobrien (alpha_howto_table): Use it as special_function to prevent certain 926360484Sobrien relocs from being adjusted by bfd_perform_relocation. IGNORE 926460484Sobrien reloc should be partial_inplace. 926560484Sobrien (alpha_ecoff_get_relocated_section_contents): Accept a LITERAL 926660484Sobrien reloc on an "ldl" instruction too. 926760484Sobrien 926860484SobrienTue Feb 8 00:32:28 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 926960484Sobrien 927060484Sobrien * elf32-hppa.c (CURRENT_STUB_OFFSET, hppa_elf_build_arg_reloc_stub, 927160484Sobrien hppa_elf_build_long_branch_stub): Cast to char * instead of int 927260484Sobrien before performing pointer arithmetic. 927360484Sobrien 927460484SobrienMon Feb 7 20:56:27 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 927560484Sobrien 927660484Sobrien * config.bfd (hppa*-*-osf*): Use bfd_name hppaosf for this 927760484Sobrien configuration. 927860484Sobrien (hppa*-*-*elf*): This configuration used hppa-elf now. 927960484Sobrien 928060484Sobrien * som.c: This file is also used for HOST_HPPAOSF. 928160484Sobrien 928260484Sobrien * targets.c (bfd_target_vector): Enable som_vec for HOST_HPPAOSF. 928360484Sobrien 928460484Sobrien * hosts/hppaosf.h: New host configuration file. 928560484Sobrien 928660484Sobrien * config/hppabsd.mt (SELECT_VECS): Add bfd_elf32_hppa_vec as 928760484Sobrien BSD handles both SOM and ELF object files. 928860484Sobrien 928960484Sobrien * config/hppaosf.mh (HDEFINES): Delete. No longer needed. 929060484Sobrien (RANLIB): Doesn't do anything, define it to be "echo". 929160484Sobrien 929260484Sobrien * config/hppaosf.mt: New target makefile fragment for a PA running 929360484Sobrien OSF1. 929460484Sobrien 929560484SobrienMon Feb 7 15:02:06 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 929660484Sobrien 929760484Sobrien * archures.c (enum bfd_architecture): Added bfd_arch_powerpc. 929860484Sobrien (archures_init_table): If SELECT_ARCHITECTURES is not defined, 929960484Sobrien added bfd_powerpc_arch. 930060484Sobrien * bfd-in2.h: Rebuilt. 930160484Sobrien * cpu-powerpc.c: New file. 930260484Sobrien * Makefile.in (ALL_MACHINES, CFILES): Added cpu-powerpc.c. 930360484Sobrien Rebuilt dependencies. 930460484Sobrien 930560484Sobrien * elfcode.h (bfd_section_from_shdr): Get vma and alignment_power 930660484Sobrien of an SHT_STRTAB section from sh_addr and sh_addralign, rather 930760484Sobrien than just setting them to zero. 930860484Sobrien 930960484SobrienSun Feb 6 20:04:10 1994 David J. Mackenzie (djm@thepub.cygnus.com) 931060484Sobrien 931160484Sobrien * elfcode.h (prep_headers, swap_out_syms): Check for NULL return 931260484Sobrien from bfd_new_strtab. 931360484Sobrien (elf_compute_section_file_positions): Check for false return from 931460484Sobrien swap_out_syms. 931560484Sobrien 931660484Sobrien * linker.c (default_indirect_link_order): Check for NULL return 931760484Sobrien from bfd_get_relocated_section_contents. 931860484Sobrien 931960484Sobrien * syms.c: Make example application in doc call xmalloc, not 932060484Sobrien bfd_xmalloc. 932160484Sobrien 932260484Sobrien * aoutx.h (NAME(aout,slurp_symbol_table), 932360484Sobrien aout_link_get_symbols, NAME(aout,link_hash_table_create)): 932460484Sobrien * bout.c (b_out_slurp_reloc_table, b_out_squirt_out_relocs): 932560484Sobrien * ecoff.c (ecoff_bfd_link_hash_table_create): 932660484Sobrien * ecofflink.c (bfd_ecoff_debug_init): 932760484Sobrien * format.c (bfd_check_format_matches): 932860484Sobrien * linker.c (_bfd_generic_link_hash_table_create): 932960484Sobrien (_bfd_generic_final_link): 933060484Sobrien * reloc16.c (bfd_coff_reloc16_relax_section): 933160484Sobrien (bfd_coff_reloc16_get_relocated_section_contents): 933260484Sobrien * elf32-hppa.c (hppa_elf_build_arg_reloc_stub): 933360484Sobrien * elf32-mips.c (mips_elf_final_link): 933460484Sobrien * elfcode.h (bfd_new_strtab): 933560484Sobrien (bfd_add_2_to_strtab): 933660484Sobrien (elf_slurp_symbol_table): 933760484Sobrien (elf_corefile_note): 933860484Sobrien * libbfd.c (bfd_zmalloc): 933960484Sobrien Use malloc and check the result, instead of bfd_xmalloc. 934060484Sobrien 934160484SobrienSat Feb 5 12:39:28 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 934260484Sobrien 934360484Sobrien * config.bfd: Put m68*-*-sysv* line after m68*-*-sysv4*. 934460484Sobrien 934560484SobrienSat Feb 5 05:32:44 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 934660484Sobrien 934760484Sobrien * srec.c (srec_write_record): Put CONST keyword for "src" before 934860484Sobrien "unsigned", some compilers don't like it after "unsigned". 934960484Sobrien * libcoff.h, libcoff-in.h (bfd_perform_slip): Rename "value" to 935060484Sobrien "val" in prototype declaration because some compilers don't like 935160484Sobrien arguments whose names are the same as types. 935260484Sobrien 935360484SobrienSat Feb 5 01:14:38 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 935460484Sobrien 935560484Sobrien * aoutx.h (aout_link_check_ar_symbols): Correct test for whether 935660484Sobrien object file defines symbol. Also, if skipping a symbol, skip the 935760484Sobrien second symbol of a N_WARNING or N_INDR symbol as well. 935860484Sobrien 935960484SobrienFri Feb 4 23:55:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 936060484Sobrien 936160484Sobrien Add basic support for writing RS/6000 XCOFF files. 936260484Sobrien * coff-rs6000.c (dummy_reloc): Removed. 936360484Sobrien (rs6000coff_howto_table): Defined XCOFF relocs. 936460484Sobrien (RTYPE2HOWTO): Defined to use rs6000coff_rtype2howto. 936560484Sobrien (rs6000coff_rtype2howto): New function. 936660484Sobrien (coff_bfd_reloc_type_lookup): Defined to use 936760484Sobrien rs6000coff_reloc_type_lookup. 936860484Sobrien (rs6000coff_reloc_type_lookup): New function. 936960484Sobrien (SELECT_RELOC): Defined to set r_type and r_size fields. 937060484Sobrien (COFF_LONG_FILENAMES): Defined. 937160484Sobrien * coffcode.h (combined_entry_type): Changed fix_tag and fix_end 937260484Sobrien fields to bitfields. Added fields fix_value and fix_scnlen. 937360484Sobrien (sec_to_styp_flags): If STYP_DEBUG is defined, use it rather than 937460484Sobrien STYP_INFO for the type of a section named .debug. 937560484Sobrien (coff_add_missing_symbols): Don't define if RS6000COFF_C. 937660484Sobrien (coff_write_object_contents): If RS6000COFF_C, don't call 937760484Sobrien coff_add_missing_symbols. 937860484Sobrien (coff_slurp_symbol_table): If RS6000COFF_C, then if the last aux 937960484Sobrien entry has type STY_LD change the x_scnlen into a pointer to a 938060484Sobrien symbol and set fix_scnlen. Also, for a C_BSTAT symbol, change the 938160484Sobrien value into a pointer to a symbol and set fix_value. 938260484Sobrien * libcoff.h: Rebuilt. 938360484Sobrien * coffgen.c (coff_mangle_symbols): Reindent. If fix_value is set, 938460484Sobrien get the symbol offset. Likewise for fix_scnlen. 938560484Sobrien (string_size): Change type to bfd_size_type. 938660484Sobrien (debug_string_size, debug_string_section): New static variables. 938760484Sobrien (coff_fix_symbol_name): If bfd_coff_symname_in_debug returns true, 938860484Sobrien write the symbol name into the .debug section; assume that the 938960484Sobrien section has already been created with the right size. 939060484Sobrien (coff_write_symbols): Initialize debug_string_size to 0. If 939160484Sobrien bfd_coff_symname_in_debug returns true, don't put symbol name in 939260484Sobrien usual string table. After writing out all symbols, if 939360484Sobrien debug_string_size is not 0, check that it matches the size of the 939460484Sobrien .debug section. 939560484Sobrien (coff_get_normalized_symtab): Clear new fix_value and fix_scnlen 939660484Sobrien fields. If the string offset is 0, always use an empty string as 939760484Sobrien the name. 939860484Sobrien (coff_make_empty_symbol): Zero out the symbol structure. 939960484Sobrien * reloc.c (bfd_perform_relocation): Work around one gross hack 940060484Sobrien with another: actually look at the target name to avoid the broken 940160484Sobrien COFF check. 940260484Sobrien (bfd_reloc_code_real_type): Add BFD_RELOC_PPC_B26, 940360484Sobrien BFD_RELOC_PPC_BA26 and BFD_RELOC_PPC_TOC16. 940460484Sobrien * bfd-in2.h: Rebuilt. 940560484Sobrien 940660484SobrienFri Feb 4 17:28:32 1994 David J. Mackenzie (djm@thepub.cygnus.com) 940760484Sobrien 940860484Sobrien * libbfd.c (bfd_zmalloc): Call bfd_xmalloc instead of malloc. 940960484Sobrien (bfd_xmalloc, bfd_xmalloc_by_size_t): Functions deleted. 941060484Sobrien * libbfd-in.h: Define them as macros calling xmalloc and declare 941160484Sobrien xmalloc. 941260484Sobrien * libbfd.h: Rebuilt. 941360484Sobrien 941460484SobrienThu Feb 3 16:49:35 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 941560484Sobrien 941660484Sobrien * ecofflink.c (bfd_ecoff_debug_externals): If a small undefined 941760484Sobrien symbol has a value in the ECOFF symbol but not in the BFD symbol, 941860484Sobrien keep the value in the ECOFF symbol. This helps gas. 941960484Sobrien 942060484Sobrien * linker.c (_bfd_generic_link_output_symbols, 942160484Sobrien _bfd_generic_link_write_global_symbol): Don't require that all 942260484Sobrien references to a common symbol be themselves common symbols. 942360484Sobrien 942460484Sobrien * aoutx.h (aout_reloc_index_to_section): Handle N_UNDF. 942560484Sobrien 942660484SobrienWed Feb 2 20:37:19 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 942760484Sobrien 942860484Sobrien * libbfd.c, bfd-in.h, hosts/alphaosf.h, hosts/sparc-ll.h, aoutf1.h, 942960484Sobrien sparclynx.c, Makefile.in: Change HOST_64_BIT to BFD_HOST_64_BIT. 943060484Sobrien * bfd-in2.h: Rebuilt. 943160484Sobrien 943260484SobrienWed Feb 2 12:30:13 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 943360484Sobrien 943460484Sobrien * coffswap.h (coff_swap_reloc_out): If RS6000COFF_C, handle type 943560484Sobrien and size correctly. 943660484Sobrien (coff_swap_aux_in): If RS6000COFF_C, change x_csect.x_scnlen to 943760484Sobrien x_csect.x_scnlen.l to match change in coff/internal.h. 943860484Sobrien (coff_swap_aux_out): Likewise. 943960484Sobrien 944060484Sobrien * coff-mips.c (mips_ecoff_backend_data), coff-alpha.c 944160484Sobrien (alpha_ecoff_backend_data): Change casts of aux_in and aux_out 944260484Sobrien fields to match yesterday's changes. 944360484Sobrien 944460484Sobrien * coffcode.h (coff_write_relocs): If SELECT_RELOC is defined, pass 944560484Sobrien in the internal_reloc itself, not the type. 944660484Sobrien * coff-apollo.c, coff-h8300.c, coff-h8500.c, coff-i386.c, 944760484Sobrien coff-m68k.c, coff-sh.c, coff-we32k.c, coff-z8k.c: Changed 944860484Sobrien definition of SELECT_RELOC accordingly. 944960484Sobrien 945060484SobrienTue Feb 1 12:05:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 945160484Sobrien 945260484Sobrien * coffcode.h (bfd_coff_backend_data): Added new arguments to 945360484Sobrien _bfd_coff_swap_aux_in and _bfd_coff_swap_aux_out: aux index number 945460484Sobrien and number of aux entries. 945560484Sobrien (bfd_coff_swap_aux_in, bfd_coff_swap_aux_out): Changed 945660484Sobrien accordingly. 945760484Sobrien * libcoff.h: Rebuilt. 945860484Sobrien * coffswap.h (coff_swap_aux_in, coff_swap_aux_out): Accept new 945960484Sobrien arguments. If RS6000COFF_C, only treat C_EXT and C_HIDEXT 946060484Sobrien specially if this is the last aux entry. 946160484Sobrien * coffgen.c (coff_write_symbol, coff_get_normalized_symtab): Pass 946260484Sobrien new arguments to swap_aux functions. 946360484Sobrien 946460484SobrienSun Jan 30 15:14:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 946560484Sobrien 946660484Sobrien * gen-aout.c (main): Set DEFAULT_ARCH based on preprocessor macros 946760484Sobrien (only testing for m68k and vax at the moment); do verify that the 946860484Sobrien preprocessor didn't trash the arch name inside the string version. 946960484Sobrien Don't print out "pagesize =" line that prevents output from 947060484Sobrien compiling. Derive BYTES_IN_WORD and ARCH values from sizeof 947160484Sobrien results. 947260484Sobrien * Makefile.in (aout-params.h): Pass gen-aout a dummy target name. 947360484Sobrien (check, installcheck): Identify directory in "no testsuites" 947460484Sobrien message. 947560484Sobrien 947660484SobrienSun Jan 30 13:25:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 947760484Sobrien 947860484Sobrien * aoutx.h (aout_link_write_symbols): Write out correct value for 947960484Sobrien object file symbol. 948060484Sobrien 948160484SobrienFri Jan 28 18:34:05 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 948260484Sobrien 948360484Sobrien * hosts/vaxbsd.h (HOST_STACK_END_ADDR): Vax BSD doesn't define 948460484Sobrien KERNBASE, so hard-code 0x80000000 instead. 948560484Sobrien 948660484SobrienThu Jan 27 13:54:08 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 948760484Sobrien 948860484Sobrien * linker.c (generic_link_add_symbol_list): If symbol is common, 948960484Sobrien set the BSF_OLD_COMMON flag. 949060484Sobrien 949160484SobrienWed Jan 26 13:47:15 1994 David J. Mackenzie (djm@thepub.cygnus.com) 949260484Sobrien 949360484Sobrien * format.c (bfd_check_format_matches): Put the new entry in the 949460484Sobrien correct element of matching_vector. 949560484Sobrien 949660484SobrienTue Jan 25 11:43:28 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 949760484Sobrien 949860484Sobrien * som.c, som.h (bfd_som_set_section_attributes, 949960484Sobrien bfd_som_set_subsection_attributes): Change parameters from char 950060484Sobrien to int. Following a prototype with an old-style function definition 950160484Sobrien in the presence of widened parameters is a GCC-ism not supported 950260484Sobrien by the HP compiler in ANSI mode. 950360484Sobrien 950460484SobrienTue Jan 25 11:46:46 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 950560484Sobrien 950660484Sobrien * reloc.c (bfd_get_reloc_size): Size of type -2 is 4 bytes, not 2. 950760484Sobrien 950860484Sobrien * hp300hpux.c (MY(write_object_contents)): Write out the symbols 950960484Sobrien before writing out the relocs, so that the right symbol indices 951060484Sobrien are used. 951160484Sobrien 951260484Sobrien * archive.c (do_slurp_bsd_armap, bfd_slurp_bsd_armap_f2): Do not 951360484Sobrien try to overlay the internal carsyms on the external symdefs. That 951460484Sobrien can not work if the size of a host pointer is larger than 4 bytes. 951560484Sobrien 951660484Sobrien * format.c (bfd_check_format_matches): Cast result of 951760484Sobrien bfd_xmalloc_by_size_t. 951860484Sobrien * opncls.c (_bfd_new_bfd): Avoid ANSI C prototype. 951960484Sobrien 952060484Sobrien * archive.c: Reindented to GNU standards. 952160484Sobrien 952260484SobrienMon Jan 24 14:41:23 1994 David J. Mackenzie (djm@thepub.cygnus.com) 952360484Sobrien 952460484Sobrien * opncls.c (_bfd_new_bfd, _bfd_new_bfd_contained_in): Add 952560484Sobrien "_bfd_" to function names. 952660484Sobrien * archive.c (_bfd_create_empty_archive_element_shell), 952760484Sobrien libbfd-in.h: Change callers. 952860484Sobrien 952960484Sobrien * libbfd.c (bfd_zmalloc): Renamed from zalloc. 953060484Sobrien * libbfd.c (bfd_add_to_string_table), 953160484Sobrien trad-core.c (trad_unix_core_file_p), 953260484Sobrien targets.c (bfd_target_list), 953360484Sobrien ptrace-core.c (ptrace_unix_core_file_p), 953460484Sobrien opncls.c (new_bfd), libbfd-in.h, 953560484Sobrien ieee.c (ieee_make_empty_symbol), 953660484Sobrien elf32-hppa.c (hppa_elf_stub_branch_reloc), 953760484Sobrien (hppa_elf_stub_reloc): Change callers. 953860484Sobrien * libbfd.h: Regenerated. 953960484Sobrien 954060484Sobrien * archive.c (_bfd_look_for_bfd_in_cache): Add "_bfd_" to name. 954160484Sobrien (_bfd_get_elt_at_filepos), 954260484Sobrien coff-rs6000.c (rs6000coff_get_elt_at_filepos), libbfd-in.h: 954360484Sobrien Change callers. 954460484Sobrien 954560484Sobrien * format.c (bfd_check_format_matches), libbfd-in.h, targets.c, 954660484Sobrien elfcode.h (elf_object_p): Rename target_vector to bfd_target_vector 954760484Sobrien and default_vector to bfd_default_vector. 954860484Sobrien * libbfd.h: Regenerated. 954960484Sobrien 955060484Sobrien * format.c (bfd_check_format_matches): New function. 955160484Sobrien (bfd_check_format): Call it. 955260484Sobrien (bfd_matching_formats): Function removed. 955360484Sobrien * targets.c: Replace the vector added on Jan 21 with a count of 955460484Sobrien entries in default_vector. 955560484Sobrien * bfd-in2.h: Regenerated. 955660484Sobrien 955760484SobrienMon Jan 24 12:38:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 955860484Sobrien 955960484Sobrien * coff-alpha.c (alpha_ecoff_object_p): New function. Set size of 956060484Sobrien .pdata section based on lnnoptr field, not section header. 956160484Sobrien (alpha_relocate_section): Don't bother to check if r_symndx >= 0, 956260484Sobrien since it is unsigned. 956360484Sobrien (ecoffalpha_little_vec): Use alpha_ecoff_object_p rather than 956460484Sobrien coff_object_p. 956560484Sobrien * ecoff.c (ecoff_new_section_hook): Set alignment_power field of 956660484Sobrien .pdata section to 3. 956760484Sobrien (ecoff_compute_section_file_positions): Save the size of the 956860484Sobrien .pdata section in the line_filepos field, and actually align the 956960484Sobrien .pdata section to an alignment power of 4. 957060484Sobrien (ecoff_compute_reloc_file_positions): Set output_has_begun after 957160484Sobrien calling ecoff_compute_section_file_positions. 957260484Sobrien (ecoff_write_object_contents): Set s_lnnoptr for the .pdata 957360484Sobrien section from the line_filepos field. Set vstamp for the optional 957460484Sobrien header from the vstamp of the symbolic header. 957560484Sobrien (ecoff_bfd_final_link): Set vstamp of the symbolic header to the 957660484Sobrien vstamp used by the first object file in the link. 957760484Sobrien 957860484Sobrien * ecofflink.c (ecoff_align_debug): Align RFDs to debug_align. 957960484Sobrien 958060484Sobrien * linker.c (generic_link_check_achive_element): Set SEC_ALLOC flag 958160484Sobrien for a created common section. 958260484Sobrien (_bfd_generic_link_add_one_symbol): Likewise. 958360484Sobrien 958460484Sobrien * elfcode.h (swap_out_syms): Use elf_section_from_bfd_section to 958560484Sobrien get the index of a common section, rather than always using 958660484Sobrien SHN_COMMON (MIPS has multiple common sections). 958760484Sobrien 958860484Sobrien * elf32-hppa.c (hppa_elf_gen_reloc_type): Typo (== for =). 958960484Sobrien 959060484Sobrien * bfd/aoutx.h (aout_link_input_section_std, 959160484Sobrien aout_link_input_section_ext): Pass additional arguments to 959260484Sobrien reloc_overflow callback. 959360484Sobrien * coff-alpha.c (alpha_ecoff_get_relocated_section_contents, 959460484Sobrien alpha_relocat_section): Likewise. 959560484Sobrien * coff-h8300.c (h8300_reloc16_extra_cases): Likewise. 959660484Sobrien * coff-h8500.c (extra_case): Likewise. 959760484Sobrien * coff-mips.c (mips_relocate_section): Likewise. 959860484Sobrien * coff-z8k.c (extra_case): Likewise. 959960484Sobrien * elf32-hppa.c (hppa_elf_stub_finish): Likewise. 960060484Sobrien * reloc.c (bfd_generic_get_relocated_section_contents): Likewise. 960160484Sobrien 960260484Sobrien * bout.c (calljx_callback, callj_callback): Use get_value to get 960360484Sobrien the symbol value and check for undefined symbols. 960460484Sobrien (get_value): If the symbol is undefined, look it up in the linker 960560484Sobrien hash table. 960660484Sobrien (b_out_get_relocated_section_contents): For PCREL24 and PCREL13 960760484Sobrien use get_value to get the symbol value and check for undefined 960860484Sobrien symbols. 960960484Sobrien * reloc16.c (bfd_coff_reloc16_get_value): If the symbol is 961060484Sobrien undefined, look it up in the linker hash table. 961160484Sobrien 961260484Sobrien * aoutx.h (translate_symbol_table): The string index 0 has a 961360484Sobrien special meaning for normal symbols, but not for dynamic symbols. 961460484Sobrien 961560484SobrienSat Jan 22 12:26:01 1994 Stu Grossman (grossman at cygnus.com) 961660484Sobrien 961760484Sobrien * sparclynx.c: Setup appropriate macros to enable core file 961860484Sobrien support. 961960484Sobrien 962060484SobrienFri Jan 21 16:25:35 1994 David J. Mackenzie (djm@thepub.cygnus.com) 962160484Sobrien 962260484Sobrien * targets.c: Add a vector of matching format names. 962360484Sobrien * format.c (bfd_matching_formats): New function to return it. 962460484Sobrien (bfd_check_format): Set it. 962560484Sobrien * bfd-in2.h: Regenerated. 962660484Sobrien 962760484Sobrien * bfd-in.h: Remove decls of bfd_ec type and error printing functions. 962860484Sobrien Remove decl of type symclass; wasn't used. 962960484Sobrien * bfd.c: Document error handling, including code fragments 963060484Sobrien containing the error decls that were in bfd-in.h. 963160484Sobrien Remove DEFUNs. 963260484Sobrien * bfd-in2.h: Regenerated. 963360484Sobrien 963460484SobrienFri Jan 21 14:11:16 1994 Sean Fagan (sef@cygnus.com) 963560484Sobrien 963660484Sobrien * nlmcode.h, liblnm.h, nlm32-alpha.c nlm32-i386.c nlm32-sparc.c: 963760484Sobrien The sparc (and possibly other?) NLM format requires a different 963860484Sobrien way to write exports, so add a write_export field to the backend 963960484Sobrien data (and set it to NULL for everything but the sparc). 964060484Sobrien 964160484SobrienFri Jan 21 14:11:16 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 964260484Sobrien 964360484Sobrien * sunos.c (MY(read_dynamic_relocs)): Compare info->dynrel with NULL, 964460484Sobrien not (struct external_nlist *) NULL. info->dynrel is a PTR, not 964560484Sobrien a struct external_nlist *. 964660484Sobrien 964760484SobrienFri Jan 21 09:29:01 1994 David J. Mackenzie (djm@thepub.cygnus.com) 964860484Sobrien 964960484Sobrien * bfd.c: Remove error strings for errors removed below. 965060484Sobrien * aoutx.h (translate_to_native_sym_flags), bfd-in.h (bfd_ec), 965160484Sobrien oasys.c (oasys_write_sections): Rename 965260484Sobrien bfd_error_nonrepresentable_section to nonrepresentable_section. 965360484Sobrien None of the other bfd error names start with "bfd_error". 965460484Sobrien Remove errors symbol_not_found and no_relocation_info, which seem 965560484Sobrien to be unused. 965660484Sobrien * bfd-in2.h: Regenerated. 965760484Sobrien 965860484SobrienFri Jan 21 01:11:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 965960484Sobrien 966060484Sobrien * bfd.c (bfd_get_gp_size): Added support for ELF. 966160484Sobrien 966260484Sobrien * syms.c (BSF_DYNAMIC): New symbol flag. 966360484Sobrien (bfd_print_symbol_vandf): Print it. 966460484Sobrien * bfd-in2.h: Rebuilt. 966560484Sobrien * libaout.h (struct aout_backend_data): New read_dynamic_symbols 966660484Sobrien and read_dynamic_relocs fields. 966760484Sobrien (struct aoutdata): New dynamic_info field. 966860484Sobrien (obj_aout_dynamic_info): New accessor macro. 966960484Sobrien * sunos.c (struct sunos_dynamic_info): New structure. 967060484Sobrien (sunos_read_dynamic_info, MY(read_dynamic_symbols), 967160484Sobrien MY(read_dynamic_relocs)): New functions to read dynamic symbols 967260484Sobrien and relocs. 967360484Sobrien * aoutx.h (NAME(aout,some_aout_object_p)): If the object is 967460484Sobrien dynamically linked, set SEC_RELOC for both the .text and .data 967560484Sobrien sections. 967660484Sobrien (translate_from_native_sym_flags): Don't set BSF_LOCAL for an 967760484Sobrien undefined symbol. 967860484Sobrien (translate_symbol_table): New function, split out of 967960484Sobrien slurp_symbol_table; set the BSF_DYNAMIC flag appropriately. 968060484Sobrien (NAME(aout,slurp_symbol_table)): Read dynamic symbols, if any. 968160484Sobrien (NAME(aout,slurp_reloc_table)): Read dynamic relocs, if any. 968260484Sobrien (NAME(aout,get_reloc_upper_bound)): Include dynamic reloc count in 968360484Sobrien return value. 968460484Sobrien * aoutf1.h (NAME(aout,sunos4_write_object_contents)): Don't write 968560484Sobrien out dynamic symbols or relocs against reloc symbols, since they 968660484Sobrien are already in the .text section and we wouldn't know where to 968760484Sobrien write them anyhow. 968860484Sobrien (sunos4_aout_backend): Initialize read_dynamic_symbols and 968960484Sobrien read_dynamic_relocs fields. 969060484Sobrien * aout-target.h (MY(backend_data)): Initialize 969160484Sobrien read_dynamic_symbols and read_dynamic_relocs fields. 969260484Sobrien 969360484SobrienThu Jan 20 20:57:27 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 969460484Sobrien 969560484Sobrien * hosts/alphaosf.h (uint64e_type, uint64_type, int64_type): Delete 969660484Sobrien typedefs, since HOST_64_BIT will take care of defining them in 969760484Sobrien bfd.h. 969860484Sobrien 969960484SobrienWed Jan 19 17:28:59 1994 Ken Raeburn (raeburn@cujo.cygnus.com) 970060484Sobrien 970160484Sobrien * config/alphaosf.mh (HDEFINES): Don't define HOST_64_BIT here; 970260484Sobrien that's dealt with elsewhere. 970360484Sobrien * hosts/alphaosf.h (sprintf_vma, fprintf_vma): New macros. 970460484Sobrien (uint64_typeHIGH, uint64_typeLOW): Comment with HOST_64_BIT so 970560484Sobrien they get copied to bfd.h. 970660484Sobrien 970760484Sobrien * reloc.c (enum bfd_reloc_code_real): Add some Alpha relocation 970860484Sobrien types. Reorganized some of the existing ones. 970960484Sobrien * coff-alpha.c (alpha_howto_table): Construct 64-bit negative one 971060484Sobrien values in case of compilation on a 32-bit machine. Fix pcrel 971160484Sobrien fields of some reloc types. 971260484Sobrien (alpha_bfd_reloc_type_lookup): Handle more relocation types. 971360484Sobrien 971460484Sobrien * bfd-in.h (uint64_typeHIGH, uint64_typeLOW): Supply default 971560484Sobrien definitions when not defined, regardless of whether uint64_type is 971660484Sobrien a defined macro or not. 971760484Sobrien (fprintf_vma, sprintf_vma): Define only if fprintf_vma is not 971860484Sobrien already defined. 971960484Sobrien 972060484SobrienWed Jan 19 00:02:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 972160484Sobrien 972260484Sobrien * aoutx.h (translate_to_native_sym_flags): Set the type of a 972360484Sobrien BSF_WARNING symbol to N_WARNING. 972460484Sobrien 972560484SobrienTue Jan 18 16:43:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 972660484Sobrien 972760484Sobrien * aoutx.h (aout_link_add_symbols): Increment sym_hash as well as p 972860484Sobrien for an indirect or warning symbol. 972960484Sobrien (aout_link_write_symbols): Update sym_hash with the target of an 973060484Sobrien indirect or warning symbol. If an indirect symbol is defined, 973160484Sobrien output the calculated value and don't output the target symbol. 973260484Sobrien 973360484SobrienTue Jan 18 03:54:59 1994 David J. Mackenzie (djm@thepub.cygnus.com) 973460484Sobrien 973560484Sobrien * aoutx.h (translate_from_native_sym_flags): Give warning symbols 973660484Sobrien an (unused) nonzero section value, needed for check below. 973760484Sobrien 973860484SobrienMon Jan 17 15:12:07 1994 David J. Mackenzie (djm@thepub.cygnus.com) 973960484Sobrien 974060484Sobrien * aoutx.h (translate_from_native_sym_flags, 974160484Sobrien aout_link_add_symbols): Treat N_SET[ABDT] | N_EXT like 974260484Sobrien N_SET[ABDT]. 974360484Sobrien 974460484SobrienFri Jan 14 16:45:43 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 974560484Sobrien 974660484Sobrien * elfcode.h (elf_object_p): If there is a SHT_DYNAMIC section, set 974760484Sobrien the DYNAMIC flag for the BFD. 974860484Sobrien (NAME(bfd_elf,write_object_contents)): Don't try to write out a 974960484Sobrien BFD with the DYNAMIC flag set, since we don't generate the program 975060484Sobrien header table correctly. 975160484Sobrien 975260484SobrienFri Jan 14 01:04:36 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 975360484Sobrien 975460484Sobrien * elfcode.h (elf_slurp_symbol_table): Free x_symp at the end 975560484Sobrien of the function to avoid storage leak. 975660484Sobrien 975760484SobrienThu Jan 13 23:07:32 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 975860484Sobrien 975960484Sobrien * ecoff.c (ecoff_link_write_external): An ifd can be -1. 976060484Sobrien 976160484SobrienThu Jan 13 12:33:27 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 976260484Sobrien 976360484Sobrien * som.c (som_set_reloc_info): Provide a default symbol for 976460484Sobrien relocations which don't actually have an associated symbol. 976560484Sobrien 976660484Sobrien * som.c (hppa_som_reloc): Add new "error message" argument. 976760484Sobrien 976860484SobrienWed Jan 12 13:36:43 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 976960484Sobrien 977060484Sobrien Enable gdb to write to core files on more core file readers. 977160484Sobrien * libbfd.c (bfd_generic_set_section_contents): Remove range check 977260484Sobrien for section size, it is already done in bfd_set_section_contents 977360484Sobrien with bfd_get_section_size_now. 977460484Sobrien * aix386-core.c, hppabsd-core.c, hpux-core.c, irix-core.c, 977560484Sobrien osf-core.c, ptrace-core.c, trad-core.c (*_set_section_contents): 977660484Sobrien Use bfd_generic_set_section_contents instead of bfd_false. 977760484Sobrien 977860484SobrienWed Jan 12 15:31:57 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 977960484Sobrien 978060484Sobrien * linker.c: Added initial documentation. 978160484Sobrien 978260484Sobrien * linker.c (default_indirect_link_order): Don't expect space for 978360484Sobrien output relocations if there aren't any input relocations. 978460484Sobrien 978560484SobrienTue Jan 11 14:37:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 978660484Sobrien 978760484Sobrien * aoutx.h (NAME(aout,final_link)): Set a_entry before computing 978860484Sobrien file offsets. 978960484Sobrien 979060484Sobrien * elfcode.h (swap_out_syms): A common symbol is STT_OBJECT, not 979160484Sobrien STT_NOTYPE. 979260484Sobrien 979360484SobrienTue Jan 11 09:10:56 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 979460484Sobrien 979560484Sobrien * config.bfd: Use ELF, not COFF for m88*-*-dgux*. 979660484Sobrien Combine m88k-*-* and m88110-*-* cases into m88*-*-*. 979760484Sobrien 979860484SobrienTue Jan 11 00:07:19 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 979960484Sobrien 980060484Sobrien * ecofflink.c: Extensive changes to compress and merge debugging 980160484Sobrien information, and to write some of out directly rather than saving 980260484Sobrien it in memory. Several new functions and structures, and new 980360484Sobrien arguments to existing functions. 980460484Sobrien * ecoff.c (ecoff_compute_reloc_file_positions): Compute 980560484Sobrien sym_filepos as well. 980660484Sobrien (ecoff_get_extr): Use ifdmap instead of ifdbase. 980760484Sobrien (ecoff_write_object_contents): Don't compute sym_filepos here. 980860484Sobrien Only output symbols if outsymbols is not NULL. 980960484Sobrien (ecoff_bfd_final_link): Adjust for changes in ecoff_debug_info and 981060484Sobrien bfd_ecoff_debug functions. Write out debugging information here. 981160484Sobrien (ecoff_final_link_debug_accumulate): Adjust for changes in 981260484Sobrien bfd_ecoff_debug functions. 981360484Sobrien (ecoff_link_write_external): Use ifdmap rather than ifdbase. 981460484Sobrien * elf32-mips.c (mips_elf_read_ecoff_info): Read external symbols 981560484Sobrien first, to put them in the first memory buffer. Clear fdr field. 981660484Sobrien (mips_elf_get_extr): Use pointer to unswapped external symbol. 981760484Sobrien (mips_elf_final_link): Adjust for changes in bfd_ecoff functions. 981860484Sobrien Preserve .text, .data and .bss even if they are empty. Save 981960484Sobrien pointer to unswapped external symbol rather than copying it. 982060484Sobrien Don't free up the external symbols. 982160484Sobrien * libelf.h (elf_symbol_type): Change mips_extr to PTR. 982260484Sobrien * bfd-in.h (bfd_ecoff_debug_init, bfd_ecoff_debug_free): Declare. 982360484Sobrien (bfd_ecoff_debug_accumulate): Update declaration. 982460484Sobrien (bfd_ecoff_debug_accumulate_other): Rename declaration from 982560484Sobrien bfd_ecoff_debug_link_other and update. 982660484Sobrien (bfd_ecoff_write_accumulated_debug): Declare. 982760484Sobrien * bfd-in2.h: Rebuilt. 982860484Sobrien * Makefile.in: Rebuilt dependencies. 982960484Sobrien 983060484SobrienMon Jan 10 20:46:53 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 983160484Sobrien 983260484Sobrien * Makefile.in (install): Remove "@" which follows a backslash. In 983360484Sobrien this position it just causes errors, not suppresses echoes. 983460484Sobrien 983560484SobrienMon Jan 10 09:06:21 1994 Jeffrey A. Law (law@snake.cs.utah.edu) 983660484Sobrien 983760484Sobrien * som.c (hppa_som_gen_reloc_type): Fix handling of LT and RT 983860484Sobrien field selectors. 983960484Sobrien 984060484SobrienSun Jan 9 04:32:25 1994 Ken Raeburn (raeburn@kr-pc.cygnus.com) 984160484Sobrien 984260484Sobrien * config/i386-netbsd.mt (SELECT_VECS): Include i386bsd_vec. 984360484Sobrien 984460484SobrienFri Jan 7 10:27:27 1994 David J. Mackenzie (djm@rtl.cygnus.com) 984560484Sobrien 984660484Sobrien * aoutx.h (adjust_z_magic): Don't merge the start of bss with the 984760484Sobrien end of data if they are not contiguous. 984860484Sobrien 984960484Sobrien * aoutf1.h (sunos4_aout_backend): Comment the fields' meanings. 985060484Sobrien 985160484SobrienFri Jan 7 15:40:16 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 985260484Sobrien 985360484Sobrien * ecoff.c (ecoff_mkobject_hook): Don't set SEC_SHARED_LIBRARY flag 985460484Sobrien for .reginfo section here. 985560484Sobrien (ecoff_new_section_hook): Set it here instead. 985660484Sobrien 985760484SobrienFri Jan 7 10:29:27 1994 Stan Shebs (shebs@andros.cygnus.com) 985860484Sobrien 985960484Sobrien * bfd-in.h: (bfd_boolean): Add workaround for systems that also 986060484Sobrien define true and false as enums. 986160484Sobrien (ALMOST_STDC): Add as alternative to __STDC__. 986260484Sobrien * bfd-in2.h: Rebuilt. 986360484Sobrien * syms.c (bfd_print_symbol_vandf): Convert a PTR to FILE*. 986460484Sobrien 986560484SobrienThu Jan 6 14:24:44 1994 David J. Mackenzie (djm@thepub.cygnus.com) 986660484Sobrien 986760484Sobrien * aoutx.h (translate_to_native_sym_flags): Catch the case where 986860484Sobrien there is no output section. 986960484Sobrien 987060484SobrienThu Jan 6 14:37:42 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 987160484Sobrien 987260484Sobrien * nlmcode.h (nlm_object_p): If we can't read the fixed header, 987360484Sobrien count it as a wrong format error, not a system call error, since 987460484Sobrien the object file might simply be too small. 987560484Sobrien 987660484Sobrien * targets.c (target_vector): Added nlm32_alpha_vec inside #ifdef 987760484Sobrien BFD64. 987860484Sobrien * Makefile.in (BFD32_BACKENDS): Remove nlm32-alpha.o. 987960484Sobrien (BFD64_BACKENDS): Add nlm32-alpha.o. It depends on 64 bit 988060484Sobrien support, even though it is for an Alpha in 32 bit mode. 988160484Sobrien * configure.in (nlm32_alpha_vec): Set target64 to true. 988260484Sobrien 988360484Sobrien * nlm32-gen.c, nlm64-gen.c: Removed. All nlm targets are 988460484Sobrien different, so there is no point to providing a generic one. 988560484Sobrien * libnlm.h: Don't bother to check for nlm_backend(bfd) being NULL 988660484Sobrien in the backend accessor macros; that should no longer be possible. 988760484Sobrien * targets.c (target_vector): Removed nlm32_big_generic_vec, 988860484Sobrien nlm64_big_generic_vec, nlm64_little_generic_vec. 988960484Sobrien * configure.in (nlm32_big_generic_vec, nlm32_little_generic_vec, 989060484Sobrien nlm64_big_generic_vec, nlm64_little_generic_vec): Removed. 989160484Sobrien * Makefile.in: Rebuilt dependencies, and 989260484Sobrien (BFD32_BACKENDS): Removed nlm32-gen.o. 989360484Sobrien (BFD64_BACKENDS): Removed nlm64-gen.o. 989460484Sobrien (CFILES): Removed nlm32-gen.c and nlm64-gen.c. 989560484Sobrien 989660484Sobrien * hp300hpux.c (ARCH_SIZE): Define before including aoutx.h. 989760484Sobrien 989860484Sobrien * linker.c (_bfd_generic_link_add_one_symbol): Add constructor and 989960484Sobrien bitsize arguments. Changed all callers (aoutx.h). 990060484Sobrien * libbfd-in.h (_bfd_generic_link_add_one_symbol): Add constructor 990160484Sobrien and bitsize arguments to declaration. 990260484Sobrien * libbfd.h: Rebuilt. 990360484Sobrien 990460484Sobrien * ecoff.c: First cut at new style of linker backend for 990560484Sobrien ECOFF--added a bunch of functions. Also: 990660484Sobrien (ecoff_sec_to_styp_flags): Set flags for .pdata and .xdata. 990760484Sobrien (ecoff_slurp_symbolic_header): New function. 990860484Sobrien (ecoff_slurp_symbolic_info): Call ecoff_slurp_symbolic_header. 990960484Sobrien (ecoff_compute_reloc_file_positions): New function. 991060484Sobrien (ecoff_set_section_contents): Get out quickly if count is zero. 991160484Sobrien Check errors better. 991260484Sobrien (ecoff_write_object_contents): Put .xdata section in data segment. 991360484Sobrien Call ecoff_compute_reloc_file_positions. Don't output relocs or 991460484Sobrien external symbols if outsymbols is NULL. 991560484Sobrien (ecoff_bfd_final_link): Completely rewritten. 991660484Sobrien * libecoff.h: Include bfdlink.h. 991760484Sobrien (struct ecoff_backend_data): Add relocate_section field. 991860484Sobrien (ecoff_data_type): Add sym_hashes and symndx_to_section fields. 991960484Sobrien (struct ecoff_link_hash_entry): Define. 992060484Sobrien (struct ecoff_link_hash_table): Define. 992160484Sobrien (ecoff_bfd_link_add_symbols): Declare as function, not macro. 992260484Sobrien (ecoff_bfd_link_hash_table_create): Likewise. 992360484Sobrien * ecofflink.c (bfd_ecoff_debug_one_external): New function. 992460484Sobrien (bfd_ecoff_debug_externals): Call bfd_ecoff_debug_one_external. 992560484Sobrien * bfd-in.h (bfd_ecoff_debug_one_external): Declare. 992660484Sobrien * bfd-in2.h: Rebuilt. 992760484Sobrien * coff-alpha.c (alpha_howto_table): Mark BRADDR as 992860484Sobrien partial_inplace, and set the src_mask to 0x1fffff. 992960484Sobrien (alpha_ecoff_get_relocated_section_contents): Remove unused 993060484Sobrien variable gp_warned. 993160484Sobrien (alpha_convert_external_reloc): New static function. 993260484Sobrien (alpha_relocate_section): New static function. 993360484Sobrien (alpha_ecoff_backend_data): Initialize relocate_section field. 993460484Sobrien * coff-mips.c (mips_relocate_refhi): New static function. 993560484Sobrien (mips_relocate_section): New static function. 993660484Sobrien (mips_ecoff_backend_data): Initialize relocate_section field. 993760484Sobrien 993860484Sobrien * reloc.c (_bfd_relocate_contents): Corrected signed overflow 993960484Sobrien checking when there is an addend. 994060484Sobrien 994160484Sobrien * aoutx.h (NAME(aout,final_link)): Don't abort when trying to link 994260484Sobrien a non a.out file, just pass it to _bfd_default_link_order. 994360484Sobrien (aout_link_input_section_std): When doing a final PC relative link 994460484Sobrien against a section symbol, subtract the VMA of the input section. 994560484Sobrien (aout_link_input_section_ext): Likewise. 994660484Sobrien 994760484Sobrien * linker.c (default_indirect_link_order): Renamed from 994860484Sobrien _bfd_generic_indirect_link_order and made static. 994960484Sobrien (_bfd_generic_final_link): Don't switch on link_order type, just 995060484Sobrien call _bfd_default_link_order. 995160484Sobrien (_bfd_default_link_order): Handle bfd_indirect_link_order type. 995260484Sobrien * genlink.h: Removed declaration of 995360484Sobrien _bfd_generic_indirect_link_order. 995460484Sobrien * elf32-mips.c (mips_elf_final_link): Don't switch on link_order 995560484Sobrien type, just call _bfd_default_link_order. 995660484Sobrien 995760484SobrienTue Jan 4 21:23:37 1994 Ian Lance Taylor (ian@cygnus.com) 995860484Sobrien 995960484Sobrien * linker.c (generic_link_check_archive_element): Base the name of 996060484Sobrien the created common section on the name of the section the symbol 996160484Sobrien came from. 996260484Sobrien (_bfd_generic_link_add_one_symbol): (case BIG): A common symbol 996360484Sobrien must have a section, so don't bother to create one. 996460484Sobrien 996560484SobrienMon Jan 3 15:32:16 1994 David J. Mackenzie (djm@thepub.cygnus.com) 996660484Sobrien 996760484Sobrien * aout-target.h (MY(vec)): Add DYNAMIC to mask of object flags. 996860484Sobrien * aoutf1.h (NAME(aout,sunos4_write_object_contents)): 996960484Sobrien If the DYNAMIC flag is set, set it in the exec header. 997060484Sobrien * aoutx.h (NAME(aout,some_aout_object_p)): If the object is 997160484Sobrien dynamically linked, set the DYNAMIC flag in the BFD. 997260484Sobrien * libaout.h (N_SET_DYNAMIC): New macro. 997360484Sobrien (N_DYNAMIC): Add missing 0 in mask. 997460484Sobrien 997560484SobrienMon Jan 3 11:41:45 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) 997660484Sobrien 997760484Sobrien * ecoff.c (ecoff_get_extr): Don't output section symbols as 997860484Sobrien external symbols. 997960484Sobrien 998060484Sobrien * bfd-in.h, hash.c: Change bfd_hash_allocate argument from size_t 998160484Sobrien to unsigned int, because size_t may not be defined in bfd.h. 998260484Sobrien * bfd-in2.h: Rebuilt. 998360484Sobrien 998460484Sobrien * bfd-in.h (bfd_get{b,l}[_signed_]{16,32,64}): Declare argument to 998560484Sobrien be a const pointer. 998660484Sobrien * bfd-in2.h: Rebuilt. 998760484Sobrien * libbfd.c (bfd_get{b,l}[_signed_]{16,32,64}): Declare argument to 998860484Sobrien be a const pointer. 998960484Sobrien * targets.c (bfd_target): Change swap function pointers 999060484Sobrien accordingly. 999160484Sobrien * archive.c (do_slurp_coff_armap): Change swap accordingly. 999260484Sobrien * aix386-core.c: Change NO_GET and NO_GETS accordingly. 999360484Sobrien * hppabsd-core.c, hpux-core.c, irix-core.c, osf-core.c, 999460484Sobrien ptrace-core.c, trad-core.c: Change NO_GET and NO_SIGNED_GET 999560484Sobrien accordingly. 999660484Sobrien 999760484Sobrien * libbfd-in.h (struct artdata): Added tdata field. 999860484Sobrien (_bfd_add_bfd_to_archive_cache): Declare. 999960484Sobrien (_bfd_get_elt_at_filepos): Declare. 1000060484Sobrien (_bfd_snarf_ar_hdr): Renamed from snarf_ar_hdr. 1000160484Sobrien * libbfd.h: Rebuilt. 1000260484Sobrien * archive.c: Cleaned up some more. 1000360484Sobrien (_bfd_generic_mkarchive, bfd_generic_archive_p): Initialize 1000460484Sobrien pointer elements of artdata. 1000560484Sobrien (_bfd_add_bfd_to_archive_cache): Renamed from add_bfd_to_cache. 1000660484Sobrien (_bfd_snarf_ar_hdr): Renamed from snarf_ar_hdr. 1000760484Sobrien (_bfd_get_elt_at_filepos): Renamed from get_elt_at_filepos. 1000860484Sobrien (get_extended_arelt_filename, bfd_construct_extended_name_table, 1000960484Sobrien bfd_ar_hdr_from_filesystem, compute_and_write_armap): Made static. 1001060484Sobrien * ecoff.c: Some comment changes. 1001160484Sobrien (ecoff_slurp_armap): Handle rename of snarf_ar_hdr. Set 1001260484Sobrien ardata->tdata to raw_armap. 1001360484Sobrien (ecoff_archive_p): Initialize pointer elements of artdata. 1001460484Sobrien * coff-rs6000.c (rs6000coff_get_elt_at_filepos): Handle rename of 1001560484Sobrien add_bfd_to_cache. 1001660484Sobrien 1001760484Sobrien * hash.c: Added some documentation. 1001860484Sobrien 1001960484SobrienMon Jan 3 11:09:28 1994 Jim Kingdon (kingdon@lioth.cygnus.com) 1002060484Sobrien 1002160484Sobrien * aout-target.h, netbsd386.c: Replace NO_SWAP_MAGIC with SWAP_MAGIC, 1002260484Sobrien and do the swapping here rather than calling ntohl from the N_* 1002360484Sobrien macros. This cleans up assumptions about the size of a host long, 1002460484Sobrien the existence to ntohl, etc. 1002560484Sobrien 1002660484SobrienSat Jan 1 13:50:05 1994 Rob Savoye (rob@darkstar.cygnus.com) 1002760484Sobrien 1002860484Sobrien * config.bfd: Add support for VSTa micro-kernel. It currently uses 1002960484Sobrien i386-aout. 1003060484Sobrien 1003160484SobrienSat Jan 1 10:18:54 1994 David J. Mackenzie (djm@thepub.cygnus.com) 1003260484Sobrien 1003360484Sobrien * hosts/i386mach3.h (HOST_SEGMENT_SIZE): Fix value. 1003460484Sobrien * i386mach3.c (SEGMENT_SIZE): Fix value. 1003560484Sobrien 1003660484SobrienFor older changes see ChangeLog-9193 1003760484Sobrien 1003860484SobrienLocal Variables: 1003960484Sobrienmode: change-log 1004060484Sobrienleft-margin: 8 1004160484Sobrienfill-column: 74 1004260484Sobrienversion-control: never 1004360484SobrienEnd: 10044