* emultempl/aix.em (gld${EMULATION_NAME}_before_allocation): Add
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index ada9f55f44908e2c4cf60a6627e57d35c1fd75f8..ced528513853bc122956b01c7b1d7a5a5226d693 100644 (file)
@@ -1,5 +1,101 @@
+Thu Nov  9 13:01:31 1995  Ian Lance Taylor  <ian@cygnus.com>
+
+       * xcofflink.c (XCOFF_DESCRIPTOR): Define.
+       (struct xcoff_link_hash_table): Add descriptor_section and
+       special_sections fields.
+       (_bfd_xcoff_bfd_link_hash_table_create): Initialize new fields.
+       (xcoff_link_add_symbols): Set linkage section alignment.  Create
+       descriptor section.  Check for magic symbol names (_text, etc.),
+       and record them in special_sections if found.  Set
+       XCOFF_DESCRIPTOR flag for a function descriptor, and set its
+       descriptor field to point back to the function code symbol.
+       (xcoff_sweep): Always mark the special descriptor_section.
+       (bfd_xcoff_export_symbol): Check whether the symbol might be a
+       function descriptor, and mark it if it is.
+       (bfd_xcoff_size_dynamic_sections): Add new special_sections
+       parameter, and fill it in.  Allocate space for the descriptor
+       section.
+       (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR flag when defining
+       global linkage code.  If an undefined function descriptor is
+       exported, arrange to define it.  Warn about any other undefined
+       exported symbol.
+       (_bfd_xcoff_bfd_final_link): Write out the descriptor section.
+       (xcoff_write_global_symbol): Create a function descriptor when
+       necessary.
+       * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration.
+       * bfd-in2.h: Rebuild.
+
+Thu Nov  9 08:40:23 1995  Kim Knuttila  <krk@cygnus.com>
+
+       * coff-ppc.c (ppc_coff_link_hash_entry): new types for hashing
+       (ppc_coff_link_hash_table): new types for hashing
+       (ppc_coff_link_hash_newfunc): hash entry constructor
+       (ppc_coff_link_hash_table_init): hash table initializer
+       (ppc_coff_link_hash_table_create): hash table constructor
+       (ppc_record_toc_entry): changed references to hash table
+       (coff_ppc_relocate_section): changed references to hash table
+
+       * libcoff-in.h (coff_link_hash_entry): removed toc_offset
+       * libcoff.h: Rebuild
+
+       * cofflink.c (_bfd_coff_link_hash_newfunc): removed toc_offset init
+       (coff_link_add_symbols): removed toc_offset init
+
+Thu Nov  9 04:00:38 1995  Ken Raeburn  <raeburn@cygnus.com>
+
+       * Makefile.in (.dep1): Make sure the file mkdep is to write exists
+       first.
+
+       * configure.in: Added new option --with[out]-mmap.  Set USE_MMAP
+       if it is given and mmep is available.
+       * acconfig.h: Undef USE_MMAP.
+       * configure, config.in: Regenerated.
+       * aoutx.h: If USE_MMAP is not defined, do all symbol and string
+       table handling the old way.
+       (aout_get_external_symbols): Don't complain if last byte of string
+       table is nonzero.
+       * libbfd.c [HAVE_MADVISE]: Include sys/types.h and sys/mman.h.
+       (bfd_free_window) [! USE_MMAP]: Don't define.
+       (bfd_get_file_window,
+       _bfd_generic_get_section_contents_in_window) [! USE_MMAP]: Abort.
+
+Wed Nov  8 20:03:44 1995  Eric Freudenthal <freudenthal@nyu.edu>
+
+       * coff-a29k.c (SIGN_EXTEND_HWORD): Use ~0xffff rather than
+       0xffff0000.
+
 Wed Nov  8 11:31:11 1995  Ian Lance Taylor  <ian@cygnus.com>
 
+       * coff-a29k.c (a29k_reloc): Change handling of R_IREL reloc to be
+       compatible with AMD generated COFF files.  Try to support both AMD
+       and GNU formats simultaneously.
+       (coff_a29k_relocate_section): Likewise.
+
+       * libbfd.c (bfd_get_file_window): Change writable parameter from
+       int to boolean; update all callers.  Pass MAP_SHARED if not
+       writable--it's required on Solaris.  Cast fprintf argument to
+       avoid warning.
+       * bfd-in.h (bfd_get_file_window): Update declaration.
+       * bfd-in2.h: Rebuild.
+       * aoutx.h: Update calls to bfd_get_file_window.
+
+       * xcofflink.c (XCOFF_DEF_DYNAMIC): Rename from XCOFF_REF_DYNAMIC.
+       Change all uses.
+       (xcoff_swap_ldhdr_in): New static function.
+       (xcoff_swap_ldsym_in): New static function.
+       (xcoff_find_reloc): Handle the case of a single reloc correctly.
+       (xcoff_link_add_symbols): If we just created a descriptor, pass it
+       to _bfd_generic_link_add_one_symbol, to save a hash lookup.
+       Handle XTY_ER/XMC_XO symbols correctly.
+       (xcoff_link_add_dynamic_symbols): Rewrite to read .loader symbols
+       rather than normal symbol table.
+       (bfd_xcoff_import_symbol): It's not an error if the symbol is
+       already defined with the same absolute value.
+       (xcoff_mark): When considering called symbols, check whether the
+       descriptor is from a dynamic object, rather than the symbol
+       itself.
+       (xcoff_build_ldsyms): Likewise.
+
        * libbfd.c (bfd_get_file_window): Change return type to boolean.
        Cast realloc and malloc return values.  If malloc or realloc fail,
        set bfd_error_no_memory.
This page took 0.023734 seconds and 4 git commands to generate.