aboutsummaryrefslogtreecommitdiff
path: root/bfd/libbfd.h
AgeCommit message (Collapse)AuthorFilesLines
1995-10-06 * targets.c (bfd_target): Add _bfd_read_ar_hdr field. ModifyIan Lance Taylor1-2/+9
BFD_JUMP_TABLE_ARCHIVE accordingly. * libbfd-in.h (_bfd_snarf_ar_hdr): Don't declare. (_bfd_compute_and_write_armap): Declare. (_bfd_generic_read_ar_hdr): Declare. (_bfd_read_ar_hdr): Define. (_bfd_noarchive_read_ar_hdr): Define. (_bfd_archive_bsd_read_ar_hdr): Define. (_bfd_archive_coff_read_ar_hdr): Define. * archive.c: Change all callers of _bfd_snarf_ar_hdr to call _bfd_read_ar_hdr instead. (_bfd_generic_read_ar_hdr): Rename from _bfd_snarf_ar_hdr. (_bfd_compute_and_write_armap): Rename from compute_and_write_armap. Make non-static. Change all callers. * ecoff.c (_bfd_ecoff_slurp_armap): Call _bfd_read_ar_hdr rather than _bfd_snarf_ar_hdr. * aout-target.h (MY_read_ar_hdr): Define if not defined. * ieee.c (ieee_read_ar_hdr): Define. * libecoff.h (_bfd_ecoff_read_ar_hdr): Define. * oasys.c (oasys_read_ar_hdr): Define. * som.c (som_read_ar_hdr): Define. * bfd-in2.h, libbfd.h: Rebuild.
1995-09-25 * init.c (initialized): Remove static variable.Ian Lance Taylor1-3/+0
(bfd_init): Don't bother setting initialized. (bfd_check_init): Remove. * opncls.c (_bfd_new_bfd): Don't call bfd_check_init. * libbfd.h: Rebuild.
1995-09-22 Change arch info to be const, initialized at compile time.Ian Lance Taylor1-11/+5
* archures.c: Reindent many functions. Change CONST to const. (bfd_arch_info_type): Make arch_name const. Remove disassemble; nothing set it anyhow. Make next const. (bfd_arch_info_list): Remove. (bfd_archures_list): Rename from archures_init_table. Change from a table of function pointers to a table of bfd_arch_info_type structure addresses. (bfd_scan_arch): Rewrite accordingly. Return a const pointer. (bfd_lookup_arch): Likewise. (bfd_set_arch_info): Rewrite accordingly. Change argument to be a const pointer. (bfd_default_arch_struct): Make const. (bfd_arch_init, bfd_arch_linkin): Remove. (bfd_get_arch_info): Return a const pointer. * init.c (bfd_init): Don't call bfd_arch_init. * bfd.c (struct _bfd): Make arch_info const. * bfd-in2.h: Rebuild. * libbfd.h: Rebuild. * configure.in: Put & before everything in $selarchs. * configure: Rebuild. * cpu-*.c: Change bfd_*_arch from a function which calls bfd_arch_linkin to a const structure. * ieee.c (ieee_object_p): Make arch const.
1995-09-22Start work to all full PowerPC V.4 reloc support.Michael Meissner1-3/+26
1995-08-31Thu Aug 31 16:00:53 1995 steve chamberlain <sac@slash.cygnus.com>Steve Chamberlain1-4/+63
* Makefile.in: Update dependencies. * aout-target.h (MY_bfd_print_private_bfd_data): New. * bfd-in.h (PE STUFF): Deleted. * bfd.c (tdata->pe_obj_data): New. (bfd_print_private_bfd_data): New. * coff-i386.c, coff-arm.c (coff_*-rtype_to_howto): Get image base from new place. * libcoff.h, libbfd.h, bfd-in2.h: Rebuilt. * coffcode.h (pe_value): Delete (coff_mkobject, coff_mkobject_hook): Conditionally build. (coff_compute_section_file_positions): Look in new place. (add_data_entry, fill_pe_header_info): Deleted. (coff_write_object_contents): Remove PE stuff. (coff_bfd_print_private_bfd_data): New. * coffswap.h: Remove PE stuff. * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): New. * libbfd-in.h (_bfd_generic_bfd_print_private_bfd_data): New. * libcoff-in.h (pe_data_type): New. * libecoff.h (_bfd_ecoff_bfd_print_private_bfd_data): New. * targets.c (_bfd_print_private_bfd_data): New. * peicode.h: New file.
1995-01-12Change "reloc_howto_type" typedef to be "const", since all uses of it are (orKen Raeburn1-3/+7
should be) anyways.
1994-11-17* reloc.c (bfd_reloc_code_type): Add new value BFD_RELOC_12_PCREL.Ken Raeburn1-10/+17
* bfd-in2.h, libbfd.h: Rebuilt.
1994-09-02* reloc.c (enum bfd_reloc_code_real): Rewrote definition to use new "chew"Ken Raeburn1-0/+102
commands for simultaneous definition of enumerator and enumerator name table. (bfd_get_reloc_code_name): New function, for retrieving a symbolic name associated with an enumerator. * libbfd.h, bfd-in2.h: Regenerated.
1994-08-22 * hash.c: Copy string hash functions from aoutx.h.Ian Lance Taylor1-18/+27
* aoutx.h: String hash functions moved to hash.c. Retain simplified versions of add_to_stringtab and emit_stringtab. Change all callers to use new function and structure names. * libbfd-in.h (_bfd_stringtab_init, _bfd_stringtab_free): Declare. (_bfd_stringtab_size, _bfd_stringtab_add): Declare. (_bfd_stringtab_emit): Declare. * libbfd.h: Rebuilt.
1994-06-03 * libbfd.h (bfd_realloc): Change last arg to "size_t size".Jeff Law1-2/+16
1994-04-06 * targets.c (bfd_target): Rearranged fields in target vector.Ian Lance Taylor1-15/+141
Removed _bfd_debug_info_start, _bfd_debug_info_end and _bfd_debug_info_accumulate, which were never used. (BFD_JUMP_TABLE_GENERIC, BFD_JUMP_TABLE_COPY): Defined. (BFD_JUMP_TABLE_CORE, BFD_JUMP_TABLE_ARCHIVE): Defined. (BFD_JUMP_TABLE_SYMBOLS, BFD_JUMP_TABLE_RELOCS): Defined. (BFD_JUMP_TABLE_WRITE, BFD_JUMP_TABLE_LINK): Defined. * All backends: Changed to use the new BFD_JUMP_TABLE_* macros rather than the single JUMP_TABLE macro. Removed many of the weird macro definitions needed to support the monolithic JUMP_TABLE. * bfd-in.h (JUMP_TABLE): Removed. * libbfd-in.h: Define a bunch of macros, and declare a few functions, for use with the new BFD_JUMP_TABLE_* macros. * libbfd.c (_bfd_dummy_new_section_hook): Removed. (bfd_false): Set bfd_error_invalid_operation. (bfd_nullvoidptr): Likewise. (bfd_n1): New function. (_bfd_nocore_core_file_matches_executable_p): Renamed from _bfd_dummy_core_file_matches_executable_p. (_bfd_nocore_core_file_failing_command): Similar rename. Set bfd_error_invalid_operation. (_bfd_nocore_core_file_failing_signal): Likewise. (_bfd_generic_get_section_contents): Renamed from bfd_generic_get_section_contents. Changed all callers. (_bfd_generic_set_section_contents): Similar rename. * ieee.c: #if 0 out ieee_bfd_debug_info_start, ieee_bfd_debug_info_end, ieee_bfd_debug_info_accumulate. They were never called. * bfd-in2.h: Rebuilt. * libbfd.h: Rebuilt.
1994-03-30Wed Mar 30 16:25:41 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)Ian Lance Taylor1-1/+2
Changes to let BFD return an error indication from get_symtab_upper_bound, bfd_canonicalize_symtab, bfd_get_reloc_upper_bound, and bfd_canonicalize_reloc. They now return long instead of unsigned int, and use -1 to indicate an error. Along the way, rename get_symtab_upper_bound to bfd_get_symtab_upper_bound. * bfd.c (bfd_get_reloc_upper_bound): Return long, and -1 on errors. (bfd_canonicalize_reloc): Likewise. * syms.c (bfd_get_symtab_upper_bound): Renamed from get_symtab_upper_bound. * targets.c (bfd_target): Renamed _get_symtab_upper_bound to _bfd_get_symtab_upper_bound, and changed it and _bfd_canonicalize_symtab and _get_reloc_upper_bound and _bfd_canonicalize_reloc to all return long. * aoutx.h (NAME(aout,get_symtab)): Return long, and -1 on errors. (NAME(aout,canonicalize_reloc)): Likewise. (NAME(aout,get_reloc_upper_bound)): Likewise. (NAME(aout,get_symtab_upper_bound)): Likewise. * bout.c (b_out_canonicalize_reloc): Likewise. (b_out_get_reloc_upper_bound): Likewise. * coffcode.h (coff_canonicalize_reloc): Likewise. * coffgen.c (coff_get_symtab_upper_bound): Likewise. (coff_get_symtab): Likewise. (coff_get_reloc_upper_bound): Likewise. * ecoff.c (ecoff_get_symtab_upper_bound): Likewise. (ecoff_get_symtab): Likewise. (ecoff_canonicalize_reloc): Likewise. * elfcode.h (elf_get_symtab_upper_bound): Likewise. (elf_get_reloc_upper_bound): Likewise. (elf_canonicalize_reloc): Likewise. (elf_get_symtab): Likewise. * hp300hpux.c (MY(get_symtab)): Likewise. (MY(get_symtab_upper_bound)): Likewise. (MY(canonicalize_reloc)): Likewise. * i386lynx.c (NAME(lynx,canonicalize_reloc)): Likewise. * ieee.c (ieee_slurp_external_symbols): Change return type to boolean. Check for errors from get_symbol. (ieee_slurp_symbol_table): Change return type to boolean. Check for errors from ieee_slurp_external_symbols. (ieee_get_symtab_upper_bound): Return long, and -1 on errors. (ieee_get_symtab): Likewise. (ieee_get_reloc_upper_bound): Likewise. (ieee_canonicalize_reloc): Likewise. * mipsbsd.c (MY(canonicalize_reloc)): Likewise. * nlmcode.h (nlm_get_symtab_upper_bound): Likewise. (nlm_get_symtab): Likewise. (nlm_get_reloc_upper_bound): Likewise. (nlm_canonicalize_reloc): Likewise. * oasys.c (oasys_get_symtab_upper_bound): Likewise. (oasys_get_symtab): Likewise. (oasys_get_reloc_upper_bound): Likewise. (oasys_canonicalize_reloc): Likewise. * som.c (som_get_symtab_upper_bound): Likewise. (som_get_symtab): Likewise. (som_get_reloc_upper_bound): Likewise. (som_canonicalize_reloc): Likewise. * srec.c (srec_get_symtab_upper_bound): Likewise. (srec_get_symtab): Likewise. (srec_get_reloc_upper_bound): Define as bfd_0l. (srec_canonicalize_reloc): Likewise. * tekhex.c (tekhex_get_symtab): Return long, and -1 on errors. (tekhex_get_symtab_upper_bound): Likewise. (tekhex_get_reloc_upper_bound): Define as bfd_0l. (tekhex_canonicalize_reloc): Likewise. * libaout.h (NAME(aout,get_symtab_upper_bound)): Change declaration to return long. (NAME(aout,get_symtab)): Likewise. (NAME(aout,canonicalize_reloc)): Likewise. (NAME(aout,get_reloc_upper_bound)): Likewise. * libcoff-in.h (coff_get_symtab_upper_bound): Likewise. (coff_get_symtab): Likewise. (coff_get_reloc_upper_bound): Likewise. * libecoff.h (ecoff_get_symtab_upper_bound): Likewise. (ecoff_get_symtab): Likewise. (ecoff_canonicalize_reloc): Likewise. * libelf.h (bfd_elf32_get_symtab_upper_bound): Likewise. (bfd_elf32_get_symtab): Likewise. (bfd_elf32_get_reloc_upper_bound): Likewise. (bfd_elf32_canonicalize_reloc): Likewise. (bfd_elf64_get_symtab_upper_bound): Likewise. (bfd_elf64_get_symtab): Likewise. (bfd_elf64_get_reloc_upper_bound): Likewise. (bfd_elf64_canonicalize_reloc): Likewise. * libnlm.h (nlmNAME(get_symtab_upper_bound)): Likewise. (nlmNAME(get_symtab)): Likewise. (nlmNAME(get_reloc_upper_bound)): Likewise. (nlmNAME(canonicalize_reloc)): Likewise. * archive.c (compute_and_write_armap): Use error_return and no_memory_return labels rather than freeing information in various places. Change storage, symcount and src_count to long. Check errors from bfd_get_symtab_upper_bound and bfd_canonicalize_symtab. * bout.c (b_out_relax_section): Change reloc_size to long. Check for errors from bfd_get_reloc_upper_bound and bfd_canonicalize_reloc. (b_out_get_relocated_section_contents): Likewise. * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Likewise. * elf32-mips.c: Likewise. * elf32-hppa.c (hppa_elf_stub_finish): Likewise. (hppa_look_for_stubs_in_section): Check for errors from bfd_get_symtab_upper_bound, bfd_canonicalize_symtab, and bfd_canonicalize_reloc. * ecofflink.c (bfd_ecoff_debug_accumulate_other): Check for errors from bfd_get_symtab_upper_bound and bfd_canonicalize_symtab. * linker.c (generic_link_read_symbols): Likewise. (_bfd_generic_final_link): Check for errors from bfd_get_reloc_upper_bound and bfd_canonicalize_reloc. * reloc.c (bfd_generic_get_relocated_section_contents): Likewise. * reloc16.c (bfd_coff_reloc16_relax_section): Likewise. (bfd_coff_reloc16_get_relocated_section_contents): Likewise. * libbfd.c (bfd_0l): New function. * libbfd-in.h (bfd_0l): Declare. * aix386-core.c: Change get_symtab_upper_bound, get_symtab, get_reloc_upper_bound, and canonicalize_reloc to use bfd_0l rather than bfd_0u. * cisco-core.c, hppabsd-core.c, hpux-core.c: Likewise. * irix-core.c, osf-core.c, ptrace-core.c, trad-core.c: Likewise. * bfd-in2.h: Rebuilt. * libbfd.h: Rebuilt. * libcoff.h: Rebuilt. * nlm32-sparc.c (nlm_sparc_read_reloc): Remove unused variables temp and name.
1994-03-22 * linker.c (_bfd_generic_final_link): Set reloc_count to 0 beforeIan Lance Taylor1-0/+6
counting relocs. Set SEC_RELOC flag for any section which has relocs. * linker.c (_bfd_default_link_order): Handle bfd_data_link_order. * linker.c (_bfd_generic_link_add_symbols): Just call generic_link_add_symbols. (_bfd_generic_link_add_symbols_collect): New function, like _bfd_generic_link_add_symbols but also collect constructors and destructors by name as collect2 does. (generic_link_add_symbols): New function, like old _bfd_generic_link_add_symbols but with collect argument. (generic_link_add_object_symbols): Take collect argument. (generic_link_check_archive_element_no_collect): New function. (generic_link_check_archive_element_collect): New function. (generic_link_check_archive_element): Take collect argument. (generic_link_add_symbol_list): Take collect argument. (_bfd_generic_link_add_one_symbol): Rename constructor argument to collect. * libbfd-in.h (_bfd_generic_link_add_symbols_collect): Declare. * libbfd.h: Rebuilt.
1994-03-22 Support for link_order types which generate relocs in order toIan Lance Taylor1-2/+14
support -Ur in the linker. * linker.c (generic_link_add_symbol_list): Remove bitsize argument from call to _bfd_generic_link_add_one_symbol. (_bfd_generic_link_add_one_symbol): Remove bitsize argument. Don't pass bitsize to constructor call back. Pass BFD_RELOC_CTOR instead of bitsize to add_to_set call back. (_bfd_generic_final_link): Account for link_order relocs when allocating space for relocations. Handle them in link_order loop. (_bfd_generic_reloc_link_order): New function. (_bfd_default_link_order): If a reloc_link_order is seen here, abort. (_bfd_count_link_order_relocs): New function. * libbfd-in.h (_bfd_generic_link_add_one_symbol): Remove bitsize argument from declaration. (_bfd_generic_reloc_link_order): Declare. (_bfd_count_link_order_relocs): Declare. * libbfd.h: Rebuilt. * aoutx.h (aout_link_add_symbols): Remove bitsize argument from call to _bfd_generic_link_add_one_symbol. (NAME(aout,final_link)): Account for link_order relocs when allocating space for relocations. Handle them after handling all input BFDs. (aout_link_reloc_link_order): New function. * ecoff.c (ecoff_link_add_externals): Remove bitsize argument from call to _bfd_generic_link_add_one_symbol. (ecoff_bfd_final_link): Account for link_order relocs when allocating space for relocations. Handle them in link_order loop. (ecoff_link_write_external): Set the storage class of a defined linker created symbol based on the section it is in. Correct bfd_link_hash_weak case to use .sc rather than .st. (ecoff_reloc_link_order): New function. * coff-alpha.c (alpha_bfd_reloc_type_lookup): Handle BFD_RELOC_CTOR. * coff-mips.c (mips_bfd_reloc_type_lookup): Likewise.
1994-03-15 * Most files:David MacKenzie1-2/+1
Replace DEFUN and DEFUN_VOID with K&R-style function definition. Indent some of them to GNU standards. * aout32.c, archures.c, core.c, cpu-h8300.c, cpu-i960.c, cpu-m68k.c, cpu-m88k.c, cpu-mips.c, cpu-vax.c, ctor.c, demo64.c, elf32-hppa.h, gen-aout.c, host-aout.c, init.c, libhppa.h, libieee.h, liboasys.h, newsos3.c, som.h, stab-syms.c, sunos.c: Update copyright years.
1994-03-10 * libbfd-in.h: Remove alloca cruft. It was missing some necessaryJim Kingdon1-18/+1
cruft (like the #pragma alloca for AIX). In addition to that problem, the C alloca calls xmalloc, which means checking for being out of memory can't work right. The following changes remove all uses of alloca from BFD. * hosts/solaris2.h: Remove alloca cruft. * som.c: Replace alloca with a fixed size auto array. * aoutx.h, elfcode.h, nlmcode.h, bout.c, coff-alpha.c, ecoff.c, ecofflink.c, elf32-hppa.c, elf32-mips.c, linker.c, reloc.c, som.c: Replace alloca with malloc and appropriate error checking and freeing. * linker.c: Replace alloca with obstack_alloc. * libbfd.h: Rebuilt.
1994-02-05 Eliminate arg from bfd_xmalloc_by_size_t macro, allowingDavid MacKenzie1-2/+2
undoing of obstack parts of last change.
1994-02-05 * libbfd.c (bfd_zmalloc): Call bfd_xmalloc instead of malloc.David MacKenzie1-6/+10
(bfd_xmalloc, bfd_xmalloc_by_size_t): Functions deleted. * libbfd-in.h: Define them as macros calling xmalloc and declare xmalloc. * libbfd.h: Rebuilt. * ecofflink.c hash.c ieee.c opncls.c (obstack_chunk_alloc): Define to be xmalloc, not bfd_xmalloc_by_size_t.
1994-01-25 * opncls.c (_bfd_new_bfd, _bfd_new_bfd_contained_in): AddDavid MacKenzie1-7/+9
"_bfd_" to function names. * archive.c (_bfd_create_empty_archive_element_shell), libbfd-in.h: Change callers. * libbfd.c (bfd_zmalloc): Renamed from zalloc. * libbfd.c (bfd_add_to_string_table), trad-core.c (trad_unix_core_file_p), targets.c (bfd_target_list), ptrace-core.c (ptrace_unix_core_file_p), opncls.c (new_bfd), libbfd-in.h, ieee.c (ieee_make_empty_symbol), elf32-hppa.c (hppa_elf_stub_branch_reloc), (hppa_elf_stub_reloc): Change callers. * libbfd.h: Regenerated. * archive.c (_bfd_look_for_bfd_in_cache): Add "_bfd_" to name. (_bfd_get_elt_at_filepos), coff-rs6000.c (rs6000coff_get_elt_at_filepos), libbfd-in.h: Change callers. * format.c (bfd_check_format_matches), libbfd-in.h, targets.c, elfcode.h (elf_object_p): Rename target_vector to bfd_target_vector and default_vector to bfd_default_vector. * libbfd.h: Regenerated.
1994-01-03 * libbfd-in.h (struct artdata): Added tdata field.Ian Lance Taylor1-1/+3
(_bfd_add_bfd_to_archive_cache): Declare. (_bfd_snarf_ar_hdr): Renamed from snarf_ar_hdr. * libbfd.h: Rebuilt. * archive.c: Cleaned up some more. (_bfd_generic_mkarchive, bfd_generic_archive_p): Initialize pointer elements of artdata. (_bfd_add_bfd_to_archive_cache): Renamed from add_bfd_to_cache. (_bfd_snarf_ar_hdr): Renamed from snarf_ar_hdr. (get_extended_arelt_filename, get_elt_at_filepos, bfd_construct_extended_name_table, bfd_ar_hdr_from_filesystem, compute_and_write_armap): Made static. * ecoff.c: Some comment changes. (ecoff_slurp_armap): Handle rename of snarf_ar_hdr. Set ardata->tdata to raw_armap. (ecoff_archive_p): Initialize pointer elements of artdata. * coff-rs6000.c (rs6000coff_get_elt_at_filepos): Handle rename of add_bfd_to_cache.
1993-12-30Rebuilt after removal of seclet.c from doc/Makefile.in.Ian Lance Taylor1-6/+0
1993-12-30 Extensive changes to move the bulk of the linker into BFD so thatIan Lance Taylor1-4/+71
more efficient backend code can be written for specific object files. Only existing efficient backend is a.out. * seclet.c, seclet.h: Removed. * hash.c, linker.c, genlink.h: New files. * bfd-in.h: Removed bfd_error_vector. Declared hash table structures and functions. (JUMP_TABLE): Removed bfd_seclet_link, added bfd_link_hash_table_create, bfd_link_add_symbols and bfd_final_link. * All backends: Changed accordingly. * bfd-in2.h: Rebuilt. * bfd.c (struct _bfd): Added link_next and archive_pass fields. Removed ld_symbols field. (bfd_nonrepresentable_section, bfd_undefined_symbol, bfd_reloc_value_truncated, bfd_reloc_is_dangerous, bfd_error_vector): Removed. (bfd_default_error_trap, bfd_error_trap, bfd_error_nonrepresentabltrap): Removed. (bfd_get_relocated_section_contents): Pass link_info. Pass link_order instead of seclet. Pass symbols. (bfd_relax_section): Pass link_info. (bfd_seclet_link): Removed. (bfd_link_hash_table_create, bfd_link_add_symbols, bfd_final_link): New macros. * libbfd-in.h: If __GNUC__ is defined and alloca is not, define alloca as __builtin_alloca. Declare internal linking functions. * libbfd.h: Rebuilt. * libbfd.c (bfd_seek): Comment out fseek assertion. It's worked for months. * reloc.c (reloc_howto_type): Added error_message argument to special_function field. Changed all callers and all definitions. (bfd_get_reloc_size): Make argument a const pointer. (bfd_perform_relocation): Add error_message argument to hold string set if return value if bfd_reloc_dangerous. Changed all callers. (_bfd_final_link_relocate, _bfd_relocate_contents): New functions. * section.c (asection): Renamed seclets_head and seclets_tail to link_order_head and link_order_tail. * targets.c (bfd_target): Replaced seclet argument with link_info and link_order and symbols arguments in bfd_get_relocated_section_contents. Added symbols argument to bfd_relax_section. Removed bfd_seclet_link. Added bfd_link_hash_table_create, bfd_link_add_symbols and bfd_final_link. * libaout.h (struct aoutdata): Added external_syms, external_sym_count, external_strings, sym_hashes fields. (obj_aout_external_syms, obj_aout_external_sym_count, obj_aout_external_strings, obj_aout_sym_hashes): New accessor macros. (WRITE_HEADERS): Only output symbols if outsymbols is not NULL. * aoutx.h: Wrote new back end linker routines. (translate_to_native_sym_flags): Return boolean value. Don't use bfd_error_vector. (NAME(aout,write_syms)): Return boolean value. Check return value of translate_to_native_sym_flags and bfd_write. * aout-target.h (final_link_callback): New function. (MY_bfd_final_link): New function. * aout-adobe.c (aout_adobe_write_object_contents): Check return value of aout_32_write_syms. * hp300hpux.c (MY(write_object_contents)): Likewise. * i386lynx.c (WRITE_HEADERS): Likewise. * libaout.h (WRITE_HEADERS): Likewise. * bout.c: Changed functions to use link_info->callbacks rather than bfd_error_vector, and link_orders rather than seclets. * coff-alpha.c: Likewise. * coff-h8300.c: Likewise. * coff-h8500.c: Likewise. * coff-sh.c: Likewise. * coff-z8k.c: Likewise. * elf32-hppa.c: Likewise. * reloc16.c: Likewise. * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Look up _gp in the hash table rather than in outsymbols. * coff-a29k.c (a29k_reloc): Pass errors back in new error_message argument rather than printing them. * coffcode.h (bfd_coff_reloc16_extra_cases): Take link_info and link_order arguments rather than seclet. Changed all uses and definitions. (bfd_coff_reloc16_estimate): Pass link_info arguments. Changed all uses and definitions. * libcoff.h: Rebuilt. * ecoff.c (ecoff_get_extr): If symbol is defined by linker, but not by ECOFF, make it scAbs. (ecoff_bfd_final_link): Renamed from ecoff_bfd_seclet_link and rewritten. * elf32-mips.c (mips_elf_final_link): Renamed from mips_elf_seclet_link and rewritten. * elf32-hppa.c (elf32_hppa_stub_description): Added link_info field. (new_stub, add_stub_by_name, hppa_elf_build_arg_reloc_stub, hppa_elf_build_long_branch_stub, hppa_look_for_stubs_in_section): Added link_info arguments. Changed all callers. * elfcode.h (elf_slurp_symbol_table): Don't quit if outsymbols is not NULL. * oasys.c (oasys_write_sections): Return boolean value rather than using bfd_error_vector. (oasys_write_object_contents): Check return value of oasys_write_sections. * hosts/std-host.h: Don't declare qsort or strtol. * Makefile.in: Rebuild dependencies. (BFD_LIBS): Removed seclet.o. Added hash.o and linker.o. (CFILES): Removed seclet.c. Added hash.c and linker.c. (HFILES): Removed seclet.h. Added genlink.h.
1993-11-08 * reloc.c: Use const instead of CONST.Ian Lance Taylor1-3/+3
(bfd_perform_relocation): Make variable howto a const pointer. * bfd-in2.h, libbfd.h: Rebuilt.
1993-11-05doc cleanupDavid MacKenzie1-8/+8
1993-09-14Improve timestamp support in BSD archive files to avoid linkerJohn Gilmore1-41/+12
warnings. * libbfd.h (struct artdata): Add armap_timestamp and armap_datepos. (bfd_flush, bfd_stat): Add prototypes. * libbfd.c (bfd_flush): Add, does fflush on a BFD. (bfd_stat): Add, does fstat on a BFD. * archive.c (_bfd_write_archive_contents): At end of file writing, verify and possibly update the timestamp in the armap, if a BSD archive. FIXME! Kludge recognizes BSD archive, rather than vectoring properly. Should add to xvec. (compute_and_write_armap): Move prototype to top, avoid PROTO. (bsd_write_armap): Save timestamp and file location thereof, when writing the armap in a BSD file. (bsd_update_armap_timestamp): New function to check and rewrite the timestamp.
1993-09-03(_do_get*, _do_put*): Renamed via macros to clean up namespace.Ken Raeburn1-5/+28
1993-06-22regeneratedKen Raeburn1-2/+2
1993-06-21Regenerated after Kingdon's changes to cache.c.Ken Raeburn1-23/+24
(Declaration for bfd_cache_init is gone now.)
1993-04-17 * libbfd.c: Add signed versions of bfd_{h_,}{get,put}_signed_<size>.Jim Kingdon1-16/+17
libbfd.c, libbfd-in.h: Add _do*signed*. targets.c, all targets: Add bfd*signed*. bfd-in.h: Add bfd_signed_vma. Add comments.
1992-12-30regenerated from current sources - bfd_elf_find_section return type changedKen Raeburn1-1/+1
1992-12-16Various changes to improve archive support. See ChangeLog.Per Bothner1-83/+80
1992-11-05Cleanup: Replace all uses of EXFUN in the BFD sources, with PARAMS.John Gilmore1-25/+69
* archures.c, reloc.c, section.c, tekhex.c: Use PARAMS in declaring pointers to functions. * cache.c, elf.c: Move static function decls to top, use PARAMS. * seclet.h: Declare external function with PARAMS. * libbfd.h: Update, based on changes in source code and chew.
1992-10-23Fri Oct 23 13:55:35 1992 Ian Lance Taylor (ian@cygnus.com)Ian Lance Taylor1-1/+3
* Check fclose return value for errors. libbfd.h: bfd_cache_close now returns a boolean. cache.c (bfd_cache_delete): return fclose success value. (bfd_cache_close): return bfd_cache_delete return value. opncls.c (bfd_close, bfd_close_all_done): return result of bfd_cache_close.
1992-06-24 * libbfd.h, libbfd-in.h (bfd_seek): Make prototype match definition.Fred Fish1-1/+1
* reloc.c (bfd_default_reloc_type_lookup): Make cast on return type match actual return type. * elf_print_symbol (section_name): Make CONST.
1992-06-22Fri Jun 19 20:23:21 1992 Steve Chamberlain (sac@thepub.cygnus.com)Steve Chamberlain1-2/+1
Lints for bfd_reloc_code_type->bfd_reloc_code_real_type, and correct calling of howto special functions and fixes from Raeburn for gas<>bfdness * archures.c: nuke bfd_reloc_code_type * bout.c, cpu-h8300.c, coff-i960.c, coff-m88k.c: special function lint * coffcode.h (styp_to_sec_flags): STYP_INFO is marked as SEC_NEVER_LOAD, various other bfdgas newness * reloc.c->libbfd.h: change protype of bfd_default_reloc_type_lookup * targets.c: change jump table vector to above
1992-06-20* elf.c (bfd_elf_find_section): Mark as INTERNAL_FUNCTION soJohn Gilmore1-1/+3
its prototype will be included in libbfd.h. Change result type to struct * (rather than equivalent typedef) so it can be used in the prototype, where they typedef won't be known. * libbfd.h: Updated version.
1992-02-14pointer lint and tandem target.Steve Chamberlain1-3/+2
1992-02-07Fluff removal.Steve Chamberlain1-0/+5
1992-01-24Uses the new small reloc type now.Steve Chamberlain1-9/+20
Currently self hosts on sun4 and sun3
1991-12-01New order documentationSteve Chamberlain1-19/+3
1991-12-01New documentation styleSteve Chamberlain1-187/+24
1991-11-22ALIGN -> BFD_ALIGNJohn Gilmore1-4/+44
1991-10-28Sun Oct 27 16:56:58 1991 Steve Chamberlain (steve at cygnus.com)Steve Chamberlain1-10/+27
* configure.in: add motorola delta88 cases * libbfd.h, libbfd-in.h, archive.c, ieee.c, elf.c, srec.c: fix write_armap prototype * libbfd.c: add doc on bfd_write_bigendian_4byte_int
1991-10-04* bfd-in.h: enum boolean => enum bfd_boolean for SVR4. Gumby'sJohn Gilmore1-3/+0
prediction is vindicated! * bfd-in.h, libbfd-in.h, doc/Makefile, doc/tolibbfd, doc/intobfd: Remove refs to howto.c, since Steve forgot.
1991-10-01Insert the incidentals and things I forgot to ci last time, same log message:Steve Chamberlain1-11/+90
Mon Sep 30 15:13:46 1991 Steve Chamberlain (steve at cygnus.com) * cpu-a29k.c, cpu-i386.c, cpu-m68k.c, cpu-mips.c, cpu-vax.c, cpu-h8300.c, cpu-i960.c, cpu-m88k.c, cpu-sparc.c: added. These files will eventually contain processor specific bits for bfd, like strange relocation information and dis/assembly. So far only the H8 has been even partially done. This work also ties in with the change in handling architectures. * amdcoff.c: (a29k_reloc) fix error message. * aout-f1.h: (choose_reloc_size) now calls bfd_get_arch to discover the architecture of the bfd. (sunos4_callback) calls the function bfd_set_arch_mach rather than stuffing stuff directly into the bfd. (sunos4_write_object_contents), changed names of accessor functions. * aoutx.h: (set_arch_mach) now calls bfd_default_set_arch_mach to setup the environment. * archive.c: (bfd_slurp_coff_armap) coff archives always have the headers in big endian format, regardless of the endianess of the host or target. * archures.c: totally changed. Now an architecture is represented with a pointer to an info structure rather than an enumerated type and a long. The old info is available as two elements in the structure. Future enhancements to architecure support will involve pointers to methods being placed into the info structure. * bfd.c: changed the definition of the bfd structure for the new architecture stuff. * bout.c: (b_out_set_arch_mach) changed to use the new architecture mechanism. * coffcode.h: (coff_set_arch_mach, coff_set_flags) changed to use the new architecture mechanism. * configure.in: added h8 stuff. * ieee.c: too many changes to note. Now ieee files written with bfd gas and ld can be read by gld and ieee only linkers and simulators. * libbfd.c, libbfd.h: changed prototype of bfd_write. * newsos3.c: (newos3_callback) now calls bfd_set_arch_mach rather than fixing the structure directly. * oasys.c: (oasys_object_p) now calls bfd_default_set_arch_mach rather than fixing the structure directly. * opncls.c: (new_bfd) makes sure that bfd_init has been called before opening a bfd. * srec.c: (srec_set_arch_mach) now calls bfd_default_set_arch_mach rather than fixing the structure directly. * targets.c: (target_vector) now by defining SELECT_VECS (perhaps in the t/hmake file) a user can select which backends they want linked with bfd without changing the source. * init.c: new, looks after initializing modules. * howto.c: for future use, will allow an application to work out what cookie to use as a handle on a relcoatio howto.
1991-08-19Fixed minor typos.Roland Pesch1-1/+1
1991-08-19Mon Aug 19 13:48:22 1991 Roland H. Pesch (pesch at cygint.cygnus.com)Roland Pesch1-6/+6
* aoutx.h, archive.c, archures.c, bfd.c, bfd.texinfo, cache.c, coffcode.h, core.c, format.c, libbfd.c, libbfd.h, libcoff.h, opncls.c, reloc.c, section.c, syms.c, targets.c (documentation segments): used BFD (caps) more consistently as a name in discourse, fixed a few other minor typos and uses of fonts
1991-08-17DocumentationSteve Chamberlain1-36/+75
1991-07-04Now full of documentation. Yum Yum.Steve Chamberlain1-5/+54
1991-05-29Merge in changes from gdb-3.95 release into mainstream of BFD development.John Gilmore1-1/+1
Support defaulted (search all) targets and specific (only check one) targets.