* hosts/i386{mach3,osf1mk}.h: New files, for Mach hosting.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 01fdca705befdfcd9ef8fae58aa7a71ba7039c2d..3c8abd7699cee5f910ac05448282193b55151fc9 100644 (file)
@@ -1,3 +1,454 @@
+Tue Aug 17 18:12:32 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
+
+       * hosts/i386{mach3,osf1mk}.h: New files, for Mach hosting.
+       * hosts/i386mach.h: removed, replaced by i386osf1mk.h.
+       * config/i386mach3.mt, i386mach3.c: New files, for Mach a.out format.
+       * Makefile.in, configure.host, config.bfd: Corresponding changes.
+       * hosts/decstation.h: Include <sys/param.h> not <machine/param.h>.
+
+Tue Aug 17 15:19:41 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       * coffgen.c (coff_section_symbol): If section's output_section is
+       not yet set, point to itself.  This is needed because this is
+       called on the output file, not the input file.
+
+       * coff-rs6000.c (dummy_reloc, RTYPE2HOWTO): Set howto field to a
+       dummy value, rather than leaving it NULL.
+
+       * archures.c (bfd_default_set_arch_mach): Set bfd_error on
+       failure.
+       * aoutx.h (NAME(aout,set_arch_mach)): Check return value of
+       bfd_default_set_arch_mach.
+
+Tue Aug 17 09:42:16 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
+
+       * config.bfd (cpu): Extract from canonical name with sed.
+       * configure.in: Don't pass it.
+
+Sun Aug 15 20:45:45 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
+
+       * bfd-in.h: Remove {BYTE,WORD,LONG}_SIZE; they are pointless and
+       BYTE_SIZE conflicts with a Mach header.
+       * ecoff.c: Change LONG_SIZE to ECOFF_LONG_SIZE and define it.
+
+       * configure.host: Make sure all OS fields end in *.
+
+Fri Aug 13 16:33:33 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       * ecoff.c (ecoff_slurp_reloc_table): Use bfd_abs_section for
+       RELOC_SECTION_NONE and RELOC_SECTION_ABS.  If a reloc section
+       doesn't exist, don't try to create it.
+
+       * nlmcode.h (nlm_write_object_contents): procedure offsets are
+       from start of code segment, not start of file.
+       * config/i386-nlm.mt (DEFAULT_VECTOR): It's nlm32_i386_vec, not
+       bfd_nlm32_i386_vec.
+       * configure.in (SELECT_VECS switch): Likewise.
+
+Thu Aug 12 10:32:47 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
+
+       * format.c (bfd_check_format): If the target matches the default
+       target, set match_count to 1, to ignore any previous matches.
+
+       * Makefile.in (BFD32_BACKENDS): Remove srec.o, add reloc16.o.
+
+       * configure.in: Add reloc16.o when we add
+       coff-h8300.o, coff-h8500.o, coff-sh.o, coff-z8k.o.
+       Makefile.in (BFD_LIBS): Remove reloc16.o.
+
+       * config/u68k-coff.mt: Fix typo, DEFAULT_TARGET for
+       DEFAULT_VECTOR. 
+
+       * config/h8300-coff.mt, h8500-coff.mt, sh-coff.mt, st2000.mt,
+       z8k-coff.mt (DEFAULT_VECTOR): Define.  Don't explicitly add
+       S-records via SELECT_VECS.
+
+       * targets.c (target_vector), Makefile.in (BFD_LIBS): Always
+       support S-records, for convenience.
+
+Thu Aug 12 08:30:05 1993  Ian Lance Taylor  (ian@cygnus.com)
+
+       * coff-alpha.c (alpha_howto_table, alpha_finish_reloc,
+       alpha_ecoff_swap_reloc_{in,out}, alpha_bfd_reloc_type_lookup):
+       Read and write Alpha relocs.  Can't process them yet.
+       * ecoff.c (ecoff_slurp_reloc_table): Recognize new reloc sections.
+       If the section does not already exist, create it.
+
+       * ecoffswap.h (ecoff_swap_pdr_{in,out}): Handle new fields defined
+       on the Alpha.
+
+       * libecoff.h (ecoff_backend_data): Added constructor_reloc and
+       finish_reloc fields.
+       * ecoff.c: Move MIPS reloc support from here...
+       * coff-mips.c: to here.
+       * ecoff.c (ecoff_set_symbol_info): Get constructor reloc howto
+       from backend.
+       (ecoff_slurp_reloc_table): Removed MIPS specific stuff.  Call
+       finish_reloc backend function.
+       (ecoff_write_object_contents): Removed MIPS specific assertions.
+       * coff-mips.c (mips_finish_reloc): New function.
+       (mips_ecoff_backend_data): Fill in new fields.
+       * coff-alpha.c (alpha_ecoff_backend_data): Use NULL for new
+       fields.
+       * targets.c: Added extern for ecoffalpha_little_vec.
+
+       * bfd.c (_bfd_host_big_endian): Removed.
+       * bfd-in.h (HOST_BYTE_ORDER_BIG_P, bfd_header_twiddle_required):
+       Removed.
+       * bfd-in2.h: Regenerated.
+
+Wed Aug 11 12:11:23 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
+
+       * config.bfd: New file, broken out of configure.in.
+       * configure.in: Use it, and use standard target names for
+       --with-targets, replacing --with-bfd-targets.
+
+       * archures.c (archures_init_table): Add bfd_sh_arch.
+
+       * configure.in: Include coff-m68k.o for m68kcoffun_vec.
+       Include nlm32.o and nlm.o for bfd_nlm32_i386_vec.
+       Fix error in error message.
+
+       * oasys.c: Make bfd_error_vector extern.
+
+       * configure.in: Include stab-syms.o for a.out/b.out targets
+       and hp300{bsd,hpux}.
+
+Wed Aug 11 06:40:51 1993  Ian Lance Taylor  (ian@cygnus.com)
+
+       * nlmcode.h (nlm_compute_section_file_positions): Add the .bss
+       section before setting output_has_begun.
+       (nlm_set_section_contents): Remove argument names from
+       mangle_relocs_func prototype.
+       (nlm_write_object_contents): Remove shadowing local variable.
+       Don't write out debugging symbols if debugInfoOffset is -1.  Add
+       the codeImageOffset to the start, exit, and check procedure
+       offsets.
+       * nlm32-i386.c (nlm_i386_write_reloc, nlm_i386_mangle_relocs):
+       Don't check partial_inplace field; its value is irrelevant.
+
+       * Base use of sco-core on host, not target.
+       * configure.host (i[34]86-*-sco*): Use i386sco rather than i386v.
+       * config/i386-sco.mt (TDEFINES): Removed.
+       * config/i386sco.mh: New file to use sco-core.
+       * hosts/i386sco.h: New file; just includes hosts/i386v.h.
+
+       * ecoffswap.h (ecoff_swap_{hdr,ext}_{in,out}): Use signed
+       conversions for some fields.
+
+Tue Aug 10 13:32:23 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       * ecoff.c (ecoff_gprel_reloc): If _gp is not defined, give an
+       error rather than aborting.
+
+       * libnlm.h (struct nlm_backend_data): Added mach field.
+       (nlm_machine): New accessor macro.
+       * nlm.c (nlm_mkobject): Set architecture and machine from backend
+       information.
+       * nlm32-i386.c (nlm32_i386_backend): Initialize new mach field.
+
+Tue Aug 10 09:31:18 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
+
+       * configure.in: Replace calls to sort with shell code
+       to uniq the lists.
+
+Tue Aug 10 06:23:16 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
+
+       * configure.in: Include aout32.o for any a.out/b.out formats.
+
+Mon Aug  9 09:37:18 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
+
+       * config/i386-linux.mt (SELECT_VECS): Support bfd_elf32_i386_vec.
+       * config/m68k-elf.mt (SELECT_VECS): Support m68kcoff_vec.
+       * config/i386-elf.mt (SELECT_VECS): Support i386coff_vec.
+       * config/hppa-elf.mt (SELECT_VECS): Support hppa_vec.
+       * config/sparc-elf.mt (SELECT_VECS): Support sunos_big_vec.
+       * config/i386-sco.mt (SELECT_VECS): Don't define; Ian says it was
+       just a hack.
+
+Mon Aug  9 13:15:00 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
+
+       * config/m88k-coff.mt (DEFAULT_VEC -> DEFAULT_VECTOR): renamed.
+
+Mon Aug  9 14:26:45 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
+
+       * syms.c (BSF_EXPORT): Now same as BSF_GLOBAL.
+
+       * bfd.c (bfd_scan_vma): New function.
+
+Mon Aug  9 11:29:53 1993  Ian Lance Taylor  (ian@cygnus.com)
+
+       * bfd-in.h (bfd_get_architecture, bfd_get_machine): Removed
+       obsolete macros.
+       * bfd-in2.h: Updated.
+
+       * ecoff.c (ecoff_slurp_armap): Correct bug in initialization of
+       stringbase.
+
+Sun Aug  8 12:21:13 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
+
+       * configure.in: Remove unneeded test.
+
+Sun Aug  8 12:41:22 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
+
+       * Makefile.in ({dist,real}clean): Use $(MAKE), not make.
+
+Sat Aug  7 09:14:21 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
+
+       * config/st2000.mt (TDEFINES): Don't define MRI; not used.
+
+       * PORTING, TODO, config/README: Update to reflect below changes.
+
+       * configure.in: Replace MINIMIZE and --with-minimal-bfd with
+       --with-bfd-targets="target1,target2,..." and the special target
+       "all" to get the previous default behavior.
+       Figure out which architecture and backend .o files are needed from
+       DEFAULT_VECTOR, SELECT_VECS, and SELECT_ARCHITECTURES as set in
+       the .mt files.  Define TDEFAULTS based on them, also.
+
+       * Makefile.in: Remove references to MINIMIZE.
+       * archures.c, targets.c: Ditto.
+
+       * config/*.mt: Define DEFAULT_VECTOR, SELECT_VECS, and
+       SELECT_ARCHITECTURES as variables rather than as -D arguments to
+       TDEFAULTS.
+
+       * config/a29k-coff.mt,alphaosf.mt, i386-sco.mt, i960-bout.mt,
+       i960-coff.mt (TDEFAULTS): Don't put the default vector in
+       SELECT_VECS manually; it's automatic now.
+
+       * config/i386-sco.mt (TDEFAULTS): Don't put &sco_core_vec in
+       SELECT_VECS manually; -DSCO_CORE does it automatically now.
+
+       * config/h8300-coff.mt,h8500-coff.mt,sh-coff.mt,st2000.mt,z8k-coff.mt
+       (TDEFAULTS): Don't define BFD; not used.
+
+       * config/hppaosf.mh (HDEFINES): Don't define SELECT_ARCHITECTURES;
+       this is a host, not a target.
+
+Sat Aug  7 05:28:03 1993  Fred Fish  (fnf@deneb.cygnus.com)
+
+       * elfcode.h (elf_object_p):  Add comment about what this function
+       does and to watch out for side effects.  Add FIXME for memory leaks.
+       Fix comment about checking for matching byte order.  Preserve
+       pointer to old tdata (if any), and restore it if we don't match
+       file with target vector.  If we are going to use goto's, use them
+       consistently and maintainably.
+       * nlmcode.h (nlm_object_p):  Expand comments about leaked memory
+       to note that the problem is even more serious than just leaked
+       memory.  Replace goto with more traditional return.
+
+Fri Aug  6 12:00:03 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
+
+       Fix incorrect or useless makefile variable definitions:
+       * config/news.mt, config/u68k-coff.mt (TDEFAULTS): Use this to
+       define DEFAULT_VECTOR, instead of TDEFINES.
+       * config/i386aix.mh (MINIMIZE): Don't define.
+       * config/hppaosf.mh (MINIMIZE): Don't conditionalize.
+       * config/rs6000.mh (ALLOCA),
+       * config/i386v.mh (ALLOCA),
+       * config/i386linux.mh (ALLOCA),
+       * config/i386isc.mh (ALLOCA),
+       * config/go32.mh (EXTRALIBS): Don't define; not used.
+       * config/solaris2.mh (HDEFINES): Renamed from H_DEFINES.
+       * config/alphaosf.mt (TDEFINES): Set it, not HDEFINES.
+       * config/z8k-coff.mt (CC): Don't define.  It's a target, not a host.
+
+       * config/.Sanitize (Things-to-keep): Add README.
+       * config/README: New file, explaining the variables.
+
+       * targets.c (target_vector): Add hp300_bsd_vec.
+       * Makefile.in (BFD32_BACKENDS, CFILES): Add hp300bsd.
+       (hp300bsd.o): New rule.
+
+Fri Aug  6 15:13:22 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
+
+       * libelf.h (NAME): Provide a default definition, that's neither
+       for 32 bits nor for 64.
+
+       Tue Jun 15 14:38:32 1993  Michael Meissner  (meissner@osf.org)
+
+       * libelf.h (elf_hash): Change declaration to bfd_elf_hash, since
+       that is what is in elf.c.
+
+Fri Aug  6 12:28:38 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       * ecoff.c (ecoff_set_symbol_info): Removed special handling for
+       scBss and scSBss symbols, since it was wrong.
+
+       * Makefile.in (coff-mips.o, coff-alpha.o): Don't depend on
+       coffcode.h.
+
+       * coffcode.h (sec_to_styp_flags): Inspired by mb@tti.COM (Michael
+       Bloom): Only set STYP_BSS for SEC_ALLOC sections.
+
+       * ecoff.c (ecoff_slurp_armap): From Arne Henrik Juul
+       <arnej@kari.fm.unit.no>: Handle a COFF style armap.
+
+Fri Aug  6 09:59:45 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
+
+       * hpux-core.c: Cast return value from bfd_zalloc.
+
+Thu Aug  5 13:22:44 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
+
+       * aoutx.h (log2): Delete i387-specific code.
+
+       * Makefile.in (BFD_LIBS): Always include elf.o.
+       (BFD32_BACKENDS): Don't include elf.o here.
+       (ofiles): Delete references to ofiles2 and ofiles3.
+       (do_clean): Delete ofiles.
+       (BFDIN_H): Changed references to $(srcdir)/bfd-in2.h.
+       (stmp-bfd.h): Use bfd.h-new as temporary name, not bfd.h2.
+       (headers): Use bfd-in2.h-new as temporary name, not bfd.h-new.
+
+       * bfd-in.h: Reworded comment to make it clear that bfd-in2.h is a
+       generated file.
+
+       * reloc.c (enum bfd_reloc_code_real): Added i386-elf reloc types
+       (from Meissner's additions to bfd-in2.h).
+
+       * elf32-i386.c (ELF_MAXPAGESIZE): Define.
+
+       Merged:
+
+       Wed Jun 23 06:05:58 1993  Michael Meissner  (meissner@osf.org)
+
+       * elfcode.h (elf_write_object_contents): Don't drop core if
+       elf_symbol_from returns a NULL pointer when processing a non-elf
+       symbol, use a 0 size instead.
+
+       Tue Jun 15 14:38:32 1993  Michael Meissner  (meissner@osf.org)
+
+       * elfcode.h (elf_hash): Delete macro mapping elf_hash to
+       bfd_elf32_hash, since the hash table is independent of the 32/64
+       bit system.
+
+       * libelf.h (elf_hash): Change declaration to bfd_elf_hash, since
+       that is what is in elf.c.
+
+       Sat Jun 19 10:12:27 1993  Michael Meissner  (meissner@osf.org)
+
+       * elf32-i386.h (reloc_type): Reformat spacing.
+       (elf_howto_table): Add the rest of the 386/ELF relocations.
+       (elf_i386_reloc_type_lookup): Ditto.
+       (elf_i386_info_to_howto): Ditto.
+       (elf_i386_info_to_howto_rel): Ditto.
+
+Thu Aug  5 10:07:43 1993  Fred Fish  (fnf@cygnus.com)
+
+       * nlmcode.h (nlm_get_reloc_upper_bound):  Test return value
+       of nlm_slurp_symbol_table as boolean, not pointer.
+       * nlmcode.h (nlm_canonicalize_reloc):  Test return value
+       of nlm_slurp_reloc_fixups as boolean, not pointer.
+
+Wed Aug  4 16:22:55 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
+
+       * config/go32.mh: remove HDEFINES; since __MSDOS__ and __GO32__
+       are now predefined by GCC
+
+Wed Aug  4 16:06:29 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
+
+       * coffgen.c (coff_print_symbol): Add the section offset to the
+       line number address, so it's printed the same way as the function
+       address.  Only showed up for line numbers that aren't in the first
+       section (.text).
+
+Wed Aug  4 08:33:55 1993  Ian Lance Taylor  (ian@cygnus.com)
+
+       * libnlm.h (nlm_backend_data): Added nlm_mangle_relocs.
+       (nlm_mangle_relocs_func): New macro.
+       * nlm32-i386.c (nlm_i386_write_reloc): Rewrote correctly.
+       (nlm_i386_mangle_relocs): New function.
+       * nlmcode.h (nlm_compute_section_file_positions): Move all common
+       symbols into the .bss section.
+       (nlm_set_section_contents): Call the mangle_relocs function.
+       (nlm_write_object_contents): Treat a reloc against any defined
+       symbol as an internal reloc.  Fix bug in external reloc counting.
+       Get the offset and debugging type right for .bss symbols.  Only
+       output debugging symbols for defined symbols.
+
+       * coff-h8500.c (rtype2howto): Do an fprintf to stderr rather than
+       using printf.
+       * coff-z8k.c (rtype2howto): Likewise.
+       * coffcode.h (dummy_reloc16_extra_cases): Likewise.
+       * elf32-i386.c (TRACE): Likewise.
+       * hp300hpux.c (convert_sym_type, swap_std_reloc_in): Likewise.
+       * rs6000-core.c (rs6000coff_get_section_contents): Likewise.
+       * coffgen.c (coff_print_symbol): Do an fprintf to the file
+       argument rather than using printf.
+
+Tue Aug  3 18:17:25 1993  Ian Lance Taylor  (ian@cygnus.com)
+
+       * coffswap.h: Added macros used when accessing several fields;
+       default is the same as before.
+       (coff_swap_aouthdr_{in,out}): Handle the Alpha ECOFF fields.
+       * coff-alpha.c: Defined macros to use the right sizes in
+       coffswap.h.
+       * libecoff.h: Backend information is now in target vector, not
+       BFD.  Start of backend information is COFF backend information.
+       * coff-alpha.c, coff-mips.c: Changed accordingly.
+       * ecoff.c (ecoff_mkobject): New function.
+       (ARMAP_START): Changed into backend information, since Alpha uses
+       a different name.
+       (ecoff_slurp_armap): Don't overlay archive header.
+       * bfd.c: Include libcoff.h.
+
+Tue Aug  3 16:33:11 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
+
+       * Makefile.in (install): Fix sh syntax error.
+
+       * aoutf1.h: Make bfd_error_trap extern; it's defined in bfd.c.
+
+Tue Aug  3 15:19:09 1993  Fred Fish  (fnf@deneb.cygnus.com)
+
+       * nlm_slurp_symbol_table: Don't use '&' on arrays.
+
+Tue Aug  3 11:06:28 1993  Ian Lance Taylor  (ian@cygnus.com)
+
+       * ecoff.c: New file for generic ECOFF functions.
+       * ecoffswap.h: New file for ECOFF swapping functions which differ
+       only slightly for different targets.
+       * libecoff.h: Added prototypes for ecoff.c functions.
+       (ecoff_backend_data): New structure.
+       (ecoff_tdata): Added backend_data field.  Changed external data
+       pointers to be PTR rather than to a particular struct.
+       (ecoff_symbol_struct): Moved in from coff-mips.c.
+       * coff-alpha.c, coff-mips.c: Moved common functions into ecoff.c.
+       Added ECOFF backend structures.  Include ecoffswap.h.
+       * coff-msym.c: Removed; superseded by ecoffswap.h.
+       * bfd.c: Include coff/internal.h.
+       * Makefile.in (BFD_LIBS): Removed coff-mips.o and coff-msym.o.
+       Added ecoff.o.
+       (BFD64_BACKENDS): Added coff-alpha.o.
+       (CFILES): Removed coff-msym.c.  Added ecoff.c.
+       (bfd.o): Added dependency on $(INCDIR)/coff/sym.h.
+       (coff-mips.o): Added dependency on ecoffswap.h and coff/ecoff.h.
+       (ecoff.o, coff-alpha.o): New targets.
+       (coff-msym.o): Removed target.
+
+Mon Aug  2 23:33:38 1993  John Gilmore  (gnu@cygnus.com)
+
+       * elf32-hppa.h, hosts/*:  Remove (one more time) all occurrances
+       of EXFUN in the BFD sources.  Heave ho!
+
+Mon Aug  2 16:45:57 1993  Stu Grossman  (grossman at cygnus.com)
+
+       * coffcode.h (coff_set_arch_mach_hook):  Add check for I386LYNXMAGIC.
+
+Mon Aug  2 12:18:03 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com)
+
+       * hosts/sun3.h: remove some more conflicting decls
+
+Mon Aug  2 11:48:23 1993  Stu Grossman  (grossman at cygnus.com)
+
+       * i386lynx.c:  Remove unnecessary def of N_HEADER_IN_TEXT,
+       redefine TEXT_START_ADDR to be 0.
+
+Sun Aug  1 22:54:08 1993  Stu Grossman  (grossman at cygnus.com)
+
+       * configure.host, configure.in, hosts/i386lynx.h:  Lynx/386
+       host and target info.
+
 Fri Jul 30 18:08:27 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
 
        * nlm32-i386.c: New file.  First cut at i386 NLM code.
@@ -342,6 +793,9 @@ Fri Jul  9 00:43:06 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
 
 Thu Jul  8 14:37:44 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
 
+       * reloc.c (bfd_perform_relocation): Don't subtract the addend
+       again for coff.
+
        * syms.c, bfd-in2.h: Doc fix.
 
        * coffcode.h (CALC_ADDEND): Check for common section using the
This page took 0.029602 seconds and 4 git commands to generate.