Commit Graph

44 Commits

Author SHA1 Message Date
Fred Fish
c3e964b955 * configure.in (*-*-netware, i[34]86-*-netware): New configs.
* Makefile.in (BFD32_BACKENDS):  Add nlm.o, nlm32.o, nlm32-gen.o.
	* Makefile.in (BFD64_BACKENDS):  Add nlm64.o, nlm64-gen.o.
	* Makefile.in (CFILES):  Add nlm{32,64}.c, nlm{32,64}-gen.c.
	* Makefile.in (nlm.o, nlm{32,64}.o, nlm{32,64}-gen.o:  New targets.
	* bfd-in2.h (INLINE):  Defines moved here.
	* {aoutx.h, elf.c, elfcode.h}:  Move INLINE defines to bfd-in2.h.
	* libelf.h (CAT4):  Move define to bfd-in2.h.
	* bfd-in2.h (CAT4):  Merge CAT4 macro with other CAT macros.
	* bfd-in2.h (union tdata):  Add nlm_obj_data.
	* bfd-in2.h (enum target_flavour):  Add bfd_target_nlm_flavour.
	* targets.c (bfd_nlm{32,64}_{big,little}_vec):  Add prototypes.
	* targets.c (target_vector):  Add bfd_nlm{32,64}_{big,little}_vec.
	* (libnlm.h, nlm.c, nlmcode.h, nlm{32,64}-gen.c,
	nlm{32,64}-target.h, nlm{32,64}.c, config/i386-nlm.mt):  New files
	for NLM support.
1993-07-20 04:45:13 +00:00
Ian Lance Taylor
ebd2413529 * aoutx.h (translate_from_native_sym_flags): Removed statep
argument.  Just let an indirect symbol point to the next symbol
	without forcing the next symbol to be undefined.  Changed all
	callers.
	* hp300hpux.c (slurp_symbol_table): Changed call to
	translate_from_native_sym_flags.
	* targets.c: Added hp300hpux_vec.
	* Makefile.in (hp300hpux.o): Added dependencies.
1993-07-07 18:05:06 +00:00
David MacKenzie
3caa6924bc * aoutx.h (hash, compare, struct stringtab_entry, add_to_stringtab):
Use unsigned hash values for better hashing.
	(hash): Hash in the string length for long strings.
	* aoutx.h (compare): Replace 3 if's with a subtraction.
	(translate_to_native_sym_flags, add_to_stringtab): Reorder tests
	in decreasing order of success, as an optimization.
	(hash): Take a length arg; ignore chars after #25, for speed.
	(add_to_stringtab): Pass length to hash.
1993-06-26 15:00:47 +00:00
Ken Raeburn
c48ff89fe1 Before casting a pointer into an integer field, verify that the field is
wide enough to hold it.
1993-06-22 03:00:43 +00:00
John Gilmore
34dd8ba311 Eliminate "int8_type", "int16_type", "int32_type", and their
variants from the BFD universe.  Leave the 64-bit types for now,
since they are in flux.

* aoutx.h, hp300hpux.c:  Eliminate needless (int32_type) casts.
* libaout.h (GET_SWORD):  Convert (int32_type) to (int).
* ieee.c:  Convert uint8e_type => unsigned char.
* oasys.c:  Extensive changes to eliminate obsolete types.
These depend on changes in ../include/oasys.h as well.
1993-06-18 10:26:55 +00:00
Ken Raeburn
0f213cc206 a.out string table reduction code, take two.
Also fixed a bug in reading symbol tables on some systems...
1993-04-20 02:00:01 +00:00
John Gilmore
a99c3d7094 * aoutx.h (aout_*_adjust_sizes_and_vmas): Avoid `sanity'
check for the case where the user sets the address of the BSS
section (and the file header can't specify this).  Let the user
set it wherever they want, regardless of what goes in the header.

Fixes #ld/1826 (the fix was never checked in by Steve or Ken).
1993-04-15 08:44:58 +00:00
Ken Raeburn
5cd3dcffba from ralphc: mips-aout support 1993-02-01 21:42:59 +00:00
Ian Lance Taylor
382f2a3d75 Tue Jan 26 11:43:14 1993 Ian Lance Taylor (ian@cygnus.com)
* section.c (SEC_IS_COMMON): New section flag, needed for MIPS
	ECOFF which has two common sections.
	(bfd_com_section): Set SEC_IS_COMMON flag.
	* bfd-in.h (bfd_is_com_section): New macro to test SEC_IS_COMMON.
	* aoutx.h, archive.c, bout.c, coff-a29k.c, coff-m88k.c,
	coff-mips.c, coffgen.c, ieee.c, oasys.c, reloc.c, syms.: Use
	bfd_is_com_section macro rather than checking for equality to
	bfd_com_section.
1993-01-26 19:54:07 +00:00
Ian Lance Taylor
fa2b89f103 Tue Jan 19 09:06:14 1993 Ian Lance Taylor (ian@cygnus.com)
* aoutx.h (swap_ext_reloc_in, swap_std_reloc_in),
	bout.c (b_out_slurp_reloc_table),
	coff-mips.c (ecoff_swap_reloc_in),
	coff-msym.c (ecoff_swap_sym_in, ecoff_swap_rndx_in,
	ecoff_swap_opt_in): Added casts to int to avoid muttering by
	MIPS compiler.
1993-01-19 18:23:21 +00:00
Fred Fish
b86f998b8a * aoutx.h (some_aout_object_p): Protect arg prototype in
callback_to_real_object_p with PARAMS macro for non-ANSI compilers.
1992-11-29 16:40:09 +00:00
John Gilmore
1f29e30b1f * aout-target.h, aoutf1.h, trad-core.c, coffcode.h, libaout.h:
Eliminate all PROTO calls, replace with PARAMS for readability.

* aoutx.h:  Add type to callback parameter.
* coff-mips.c:  Don't call trad-core.h, not needed.
* trad-core.c:  Incorporate trad-core.h declarations.  Fix comments.
* trad-core.h:  Eliminate, unused.
1992-11-28 13:00:18 +00:00
John Gilmore
5f9ca96038 * aout-adobe.c, aoutf1.h, aoutx.h, bout.c coff-m68k.c, coff-z8k.c,
coffcode.h, elf.c, libaout.h, libbfd.h, srec.c:  Lint.
1992-10-15 09:44:59 +00:00
Mark Eichin
7f90aa8b18 Linker now works for go32; other changes keep it from breaking the other
platforms (new backend_data "exec_header_not_counted") (from p3.)
1992-10-09 02:41:30 +00:00
Ken Raeburn
214f8f2392 * aout-target.h (callback): Don't define this function if it won't be used.
* aoutx.h (some_aout_object_p): Restore old aout_data value if this type
doesn't match.  Don't lose if file sections have already been created.
(set_arch_mach): Set reloc_entry_size.
(slurp_symbol_table): Use bfd_h_get_{16,8} for reaeding symbol data.

* hosts/i386bsd.h: New file.
* configure.in: Recognize i[34]86-*-bsd host.

* aout-target.h (callback, write_object_contents): Delete unused variables.

* aoutx.h (reloc_type_lookup): New function.
* aout-target.h (MY_reloc_howto_type_lookup): Use it as default.
* aoutf1.h (sunos4_reloc_type_lookup): Deleted.
(MY_reloc_howto_type_lookup): Don't define it.

* aoutx.h (adjust_sizes_and_vmas): Don't bother with padding for OMAGIC files.
(slurp_symbol_table): Use header byte order, not target byte order, for reading
symbol data.
1992-10-09 01:39:06 +00:00
John Gilmore
d047d16af7 * configure.in: Undo some brain damage in the host section.
* Makefile.in (make):  Remove obsolete `make make'.
	* aoutx.h (some_aout_object_p):  Make defines line up.
1992-10-09 01:34:32 +00:00
Steve Chamberlain
2768b3f763 * aoutx.h (aout<n>swap_ext_reloc_out), bout.c
(b_out_squirt_out_relocs): fix bug 1506 where abs symbols attached
	to the built-in abs_section were not written out correctly.
1992-08-31 15:10:34 +00:00
Ken Raeburn
ce07dd7c0c [time to file a PR on cvs...]
Various changes to get linker working again for a.out:
 * don't set/adjust section file positions or vmas more than once
 * use correct page size and segment size when calculating them
 * deal with some variations in a.out implementations
Tested on sun4 and sun4->sun3 so far, will be testing further but
needed to get wider exposure&testing.  See ChangeLog for details.

Also:
* coffcode.h (coff_write_relocs): Write out swapped reloc, not
pre-swapped version.
* hosts/sparc.h (abort, exit): Hide these names if compiling with
gcc version 2, to avoid warnings.
1992-06-16 12:04:03 +00:00
David Henkel-Wallace
10dea9ed17 A couple of things from the net. 1992-05-20 06:47:14 +00:00
Fred Fish
55c0061edd aoutx.h (aout_<bits>_swap_exec_header_in): Zero out the internal_exec
structure before initializing the fields that are used, so that the unused
fields are in a known state.  Two of these structures are memcmp'd so
any fields not explicitly initialized must be set to a known state.
1992-04-24 01:42:41 +00:00
Steve Chamberlain
e7b4046cbf Don't core dump if no output section available for a symbol 1992-02-27 19:22:41 +00:00
Steve Chamberlain
6db82ea7e5 * aoutx.h (translate_from_native_sym_flags): when creating an alias symbol, fill in the section as undefined, rather than leaving it blank 1992-02-27 17:26:08 +00:00
Per Bothner
3f7607af77 * aoutx.h (NAME(aout,find_nearest_line)): Recognize N_SOL symbols,
so that we can emit the correct file name even if it's an include file.
1992-01-10 22:54:39 +00:00
Steve Chamberlain
4e41b5aa40 *** empty log message *** 1991-12-04 18:16:41 +00:00
Steve Chamberlain
c3eb25fc25 * aout-encap.c, aoutf1.h, aoutx.h, archive.c, bout.c, coff-a29k.c,
coff-h8300.c, coff-i386.c, coff-i960.c, coff-m68k.c, coff-m88k.c,
	coff-mips.c, coff-rs6000.c, cpu-h300.c, elf.c, i386aout.c,
	newos3.c, stab-syms.c, syms.c: All these files have had their
	#includes altered to point to the new places.
1991-12-01 05:24:02 +00:00
John Gilmore
e6e265ce3a Fix hp300bsd entry point problem. 1991-11-23 03:20:41 +00:00
John Gilmore
f8adc62df4 const lint 1991-11-22 19:09:03 +00:00
John Gilmore
8c4a1ace3d ALIGN->BFD_ALIGN 1991-11-22 16:45:04 +00:00
Per Bothner
7de245d362 Moved bfd_stab_name() and bfd_stab_names[]
from syms.c to new file stab-syms.c.
	Renamed to  aout_stab_name() and aout_stab_names[].
	Also, since GNU extended type codes such as N_SETT are no longer
	in ../include/stab.def, include them manually.
1991-11-22 05:00:08 +00:00
John Gilmore
98d4310737 * libaout.h (WORK_OUT_FILE_POSITIONS): One more try at this
rather complicated seeming problem.  Eliminate LOGICAL_ versions,
just make N_XXX work by excluding the header from the text segment.
* aoutx.h:  Fix comments to match.
1991-11-21 19:52:23 +00:00
John Gilmore
db138ce2a7 Update doc on how to define an architecture for "mh" change. 1991-10-25 08:03:08 +00:00
John Gilmore
cbdc790909 RS/6000 support, by Metin G. Ozisik, Mimi Phûông-Thåo Võ, and John Gilmore. 1991-10-25 07:06:02 +00:00
John Gilmore
7b02b4ed6f * hosts/h-amix.h (free): Fix prototype.
* aoutx.h:  Don't use NULL as an integer, for braindead systems
that declare it as (void *)0.  (From Peter Schauer.)
1991-10-15 23:41:17 +00:00
John Gilmore
9e2dad8ed4 * bfd.c: Remove strerror() to libiberty.
* elf.c:  Remove elf_set_section_contents, use generic one.  Lint.
* libbfd-in.h, libbfd.c:  Add bfd_generic_set_section_contents.
* libbfd.c (bfd_generic_{get,set}_section_contents):  Check that
last byte of transfer, not first byte, is within the section.

* host-aout.c:  Remove `BSD' archive support.  Lint.

* archures.c: Rename `struct bfd_arch_info_struct' to `struct
bfd_arch_info'.  Rename `typedef bfd_arch_info_struct_type' to
`bfd_arch_info_type'.  All uses changed.
* reloc.c:  Rename `bfd_reloc_status_enum_type' to
`bfd_reloc_status_type'.  Rename `bfd_reloc_code_enum_real_type'
to `bfd_reloc_code_real_type'.  (This seems to be a misnomer,
it needs a better name.)  All uses changed.
* targets.c:  Rename `enum target_flavour_enum' to `enum
target_flavour', and remove the `_enum' from all of the enum
values themselves.  All uses changed.

* configure.in, config/h-i386mach:  i386 mach host.
* config/t-i386-aout:  Use host-aout.c.

* trad-core.c:  Give it its own xvec's to make it independent
of other file formats.
* ecoff.c, host-aout.c:  Remove refs to trad-core.
* config/t-dec3100, t-hp300bsd, t-tahoe, t-vax:  Define TRAD_CORE.
* targets.c:  #ifdef TRAD_CORE, include it in the vector.
1991-10-05 05:18:08 +00:00
John Gilmore
fb3be09b66 Lint (saber actually). 1991-09-26 22:28:46 +00:00
John Gilmore
12e7087f53 Allow GDB to patch object files.
Makefile.in:  Add crude dependencies.
1991-09-04 07:52:46 +00:00
Steve Chamberlain
c67056970a *** empty log message *** 1991-09-03 20:48:27 +00:00
Stu Grossman
7d003262a7 saber 1991-08-23 05:26:06 +00:00
Roland Pesch
6724ff46c8 Mon Aug 19 13:48:22 1991 Roland H. Pesch (pesch at cygint.cygnus.com)
* 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-19 20:52:38 +00:00
Steve Chamberlain
c618de01c1 Documentation 1991-08-17 00:17:15 +00:00
Steve Chamberlain
88dfcd6832 Added support for constructors, warnings and indirects 1991-08-01 23:35:05 +00:00
Steve Chamberlain
67c060c306 Fixed memory trampling problem 1991-07-31 00:37:09 +00:00
Steve Chamberlain
6f715d66ad Now full of documentation. Yum Yum. 1991-07-04 16:52:56 +00:00
Steve Chamberlain
7ed4093abc *** empty log message *** 1991-05-21 00:14:16 +00:00