* coff-mips.c (mips_relocate_section): Don't convert a reloc
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 177eb66edd15d6e1ba7ac29818d4636b68d9bbf2..f850718221191b97294502683bc7085e44b0eb44 100644 (file)
@@ -1,3 +1,203 @@
+Thu Aug 31 11:49:21 1995  Ian Lance Taylor  <ian@cygnus.com>
+
+       * coff-mips.c (mips_relocate_section): Don't convert a reloc
+       against an absolute symbol into a reloc against a section.
+
+Thu Aug 31 08:00:14 1995  steve chamberlain  <sac@slash.cygnus.com>
+       
+       * coff-arm.c (coff_arm_reloc): Fix common size problem.
+       (i3coff_object_p): Delete.
+
+Wed Aug 30 20:41:27 1995  steve chamberlain  <sac@slash.cygnus.com>
+
+       * coff-arm.c (deletemeacoff_arm_reloc): Deleted.
+       (arm26): Not partial inplace.
+       * coffcode.h (coff_compute_section_file_positions): Don't
+       do page aligning if COFF_PAGE_SIZE isn't defined.
+       * coffswap.h (coff_swap_scnhdr_in): Update image base correctly.
+
+Tue Aug 29 13:50:21 1995  steve chamberlain  <sac@slash.cygnus.com>
+
+       * coffcode.h (coff_compute_section_file_positions):
+       Compile even if COFF_PAGE_SIZE isn't defined.
+       * cofflink.c (_bfd_coff_generate_reloc_section): Write
+       base file info as rvas.
+       * coff-arm.c (coff_rtype_to_howto): Deal with reloc 11.
+       * coffcode.h (coff_write_object_contents): Remove #if0ed code
+       Only remove empty sections in PE inmage files.
+       * libbfd.h, bfd-in2.h: regenerated.
+       * coff-arm.c (aoutarm_std_relo): New entry at 11.
+       (arm_reloc_type_lookup) : Understand type 11.
+       * coff-i386.c (howto_table): fix name of rva type.
+       (coff-i386_rtype_to_howto): Understand R_IMAGEBASE type.
+       * coffcode.h (sec_to_styp_flags): .edata is data.
+       (coff_compute_section_file_positions): Get page size right for PE.
+       Pagesize info is only valid in PE image files.
+       (fill_pe_header_info): Fix fields.
+       (coff_write_object_contents): Remove end_of_image calc.
+       (_bfd_coff_generate_reloc_section): Remove orphaned comment.
+       * coffswap.h (coff_swap_scnhdr_in): Don't always add IMAGE_BASE.
+       Swap in PE header.
+       (coff_swap_scnhdr_out): Setup PE flags correctly.
+       * reloc.c (BFD_RELOC_RVA): New field.
+
+Thu Aug 24 17:49:59 1995  Ian Lance Taylor  (ian@cygnus.com)
+
+       * cofflink.c (coff_link_input_bfd): Don't include line numbers for
+       a section if its output section has no contents.
+
+Wed Aug 23 16:48:52 1995  Ian Lance Taylor  (ian@cygnus.com)
+
+       * ecoff.c (_bfd_ecoff_slurp_symbolic_info): Add parentheses to FIX
+       expression to avoid compiler bug on HP-UX 9.01.
+
+Wed Aug 23 09:49:39 1995  Steve Chamberlain  <sac@rtl.cygnus.com>
+
+       * coffcode.h (pe_value): Unansify.
+
+Mon Aug 21 17:49:28 1995  steve chamberlain  <sac@slash.cygnus.com>
+
+       * bfd-in.h (bfd_link_subsystem): Turn enum into #defines.
+       (bfd_link_pe_info_dval): New
+       (bfd_link_stack_heap): Renamed and massaged into bfd_link_pe_info.
+       * bfd-in2.h: rebuilt.
+       * bfd.c (NT_subsystem, NT_stack_heap): Deleted.
+       * coffcode.h (pe_value): New function.
+       (fill_pe_header_info): New function.
+       (coff_write_object_contents): Use new function.
+       (coff_write_object_contents): Initialze link_data if not set.
+       * cofflink.c (coff_final_link_info): Remove pe randomness.
+       (dores_com): Update info in bfd_link_pe_info_dval.
+       (process_embedded_commands): Use the bfd_link_pe_info_dval.
+       (_bfd_coff_final_link): Remove PE stuff, initialize
+       coff_data->link_info.
+       * coffswap.h (coff_swap_[aout|filehdr]_out): Use indirect PE pointer.
+       (coff_swap_scnhdr_out): Use real imagebase.
+       * libcoff-in.h (coff_data_type.link_info): New field.
+
+Mon Aug 21 11:10:32 1995  Ian Lance Taylor  <ian@cygnus.com>
+
+       * linker.c (link_action): If an undefined reference follows an
+       undefined weak reference, change the type to undefined.
+       * elflink.h (elf_link_add_archive_symbols): Don't record an
+       undefined weak reference as defined, in case it turns into a real
+       undefined reference later in the same archive.
+
+Thu Aug 17 16:29:09 1995  Ken Raeburn  <raeburn@kr-laptop.cygnus.com>
+
+       * coff-sh.c (sh_relax_section): Cast value for used_by_bfd field
+       to PTR, not coff_section_tdata pointer, since PTR is the real type
+       of the field.
+       * cofflink.c (_bfd_coff_read_internal_relocs): Ditto.
+
+Thu Aug 17 14:44:26 1995  Ian Lance Taylor  <ian@cygnus.com>
+
+       Add support for linking SPARC SunOS PIC compiled code.
+       * sunos.c (SPARC_PLT_PIC_WORD0): Define.
+       (SPARC_PLT_PIC_WORD1, SPARC_PLT_PIC_WORD2): Define.
+       (struct sunos_link_hash_entry): Add got_offset and plt_offset
+       fields.
+       (struct sunos_link_hash_table): Add dynamic_sections_created and
+       dynamic_sections_needed fields.
+       (sunos_link_hash_newfunc): Initialize new fields.
+       (sunos_link_hash_table_create): Initialize new fields.
+       (sunos_create_dynamic_sections): New static function, broken out
+       of sunos_add_dynamic_symbols.
+       (sunos_add_dynamic_symbols): Call sunos_create_dynamic_sections.
+       (sunos_add_one_symbol): Call sunos_create_dynamic_sections.
+       (bfd_sunos_size_dynamic_sections): Call sunos_scan_relocs before
+       checking whether we need to set up the dynamic link information.
+       Define __GLOBAL_OFFSET_TABLE if anything referred to it.
+       (sunos_scan_std_relocs): Call sunos_create_dynamic_sections.  Use
+       plt_offset field; only put symbol in .plt if it is not defined by
+       a regular object.
+       (sunos_scan_ext_relocs): Likewise.  Handle base relative relocs.
+       (sunos_scan_dynamic_symbol): Store dynobj in local variable.
+       (sunos_write_dynamic_symbol): Check plt_offset rather than
+       checking whether symbol is in .plt section.  If symbol is defined
+       in a regular object file, use SPARC_PLT_PIC_WORD[012], and don't
+       add a JMP_TBL reloc.
+       (sunos_check_dynamic_reloc): Add contents and relocationp fields.
+       If plt_offset is set, redirect relocation to PLT.  If this is a
+       base relative reloc, redirect relocation to GOT.  Check
+       dynamic_sections_needed field rather than whether dynobj is set.
+       (sunos_finish_dynamic_link): Check dynamic_sections_needed field
+       rather than whether dynobj is set.  Don't die if .need and .rules
+       sections were not created.
+       * aoutx.h (howto_table_ext): Mark PC10, PC22, and JMP_TBL entries
+       PC relative.  Mark PC10 complain_overflow_dont.  Mark PC22 and
+       JMP_TBL complain_overflow_signed.
+       (NAME(aout,final_link)): If info->shared is set, set DYNAMIC.
+       (aout_link_input_section_std): Call check_dynamic_reloc for all
+       relocs.  Pass contents and &relocation.  Don't warn about an
+       undefined symbol until check_dynamic_reloc has been called.  Don't
+       warn about an undefined symbol for a base relative reloc.
+       (aout_link_input_section_ext): Likewise.  For a base relative
+       reloc, always treat r_index as an index into the symbol table.
+       * libaout.h (struct aout_backend_data): Add contents and
+       relocation argument to check_dynamic_reloc entry point.
+       (struct aoutdata): Add local_got_offsets field.
+
+Wed Aug 16 01:03:07 1995  Ian Lance Taylor  <ian@cygnus.com>
+
+       * elf32-i386.c (elf_i386_check_relocs): Fix bug in last change.
+
+Mon Aug 14 11:39:24 1995  Ian Lance Taylor  <ian@cygnus.com>
+
+       * aoutx.h (NAME(aout,machine_type)): Handle a machine of
+       bfd_mach_sparc or bfd_mach_sparc64.
+
+       * elflink.h (elf_link_add_object_symbols): If a symbol is a weak
+       definition, add it to the dynamic symbol table if any dynamic
+       object mentions it.  If we do add it, make sure we add the
+       corresponding real symbol.
+       (elf_adjust_dynamic_symbol): Adjust a weak defined symbol which we
+       put in the dynamic symbol table, even if no regular object refers
+       to it.
+       * elf32-i386.c (elf_i386_check_relocs): When creating a shared
+       library, don't allocate space for a PC relative reloc against a
+       local symbol.
+       * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
+       * elf32-sparc.c (elf32_sparc_check_relocs): Likewise.
+       * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Change assertion
+       to accept symbol with weakdef set.
+       * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
+       * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise.
+       * elf32-m68k.c (elf_m68k_relocate_section): When creating a shared
+       libary, don't copy over a PC relative reloc against a local
+       symbol.
+       * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
+
+Sun Aug 13 00:40:58 1995  Jeff Law  (law@snake.cs.utah.edu)
+
+       * som.h (R_HPPA_BEGIN_BRTAB): Define.
+       (R_HPPA_END_BRTAB): Likewise.
+       * som.c (som_write_fixups): Handle R_BEGIN_BRTAB and R_END_BRTAB.
+
+Thu Aug 10 15:53:29 1995  Ian Lance Taylor  <ian@cygnus.com>
+
+       * coffswap.h (coff_swap_aux_in): Swap the array dimensions
+       whenever x_fcnary is not being used for something else, rather
+       than only for an array.
+       (coff_swap_aux_out): Likewise.
+
+Tue Aug  8 16:34:57 1995  steve chamberlain  <sac@slash.cygnus.com>
+
+       * cofflink.c (_bfd_coff_generic_relocate_section): Remove most
+       of special case stuff for PE.  Now handled by relocs.
+       * coff-i386.c (coff_i386_reloc): Special case of PE type 7s.
+       (howto_table): Type 7 is dir32-rva.
+
+Tue Aug  8 10:15:43 1995  Jeffrey A. Law  <law@rtl.cygnus.com>
+
+       * configure.host: Recognize aix4 explicitly.
+       * rs6000-core.c (CORE_DATA_SIZE_FIELD): New macro to get a the size
+       of a core dump's data section.  Provide alternate definition for aix4.
+       (SAVE_FIELD): Similarly for save state field (register info).
+       (STACK_END_ADDR): Provide definition suitable for aix4.
+       * config/{aix4.mh,aix4.mt}: New configuration files.
+       * hosts/aix4.h: Likewise.
+
 Mon Aug  7 23:03:21 1995  Ian Lance Taylor  <ian@cygnus.com>
 
        * som.c (som_bfd_copy_private_symbol_data): Cast initializations
This page took 0.026877 seconds and 4 git commands to generate.