Commit Graph

68 Commits

Author SHA1 Message Date
Steve Chamberlain 01dd1b2b47 Sun Oct 27 16:56:58 1991 Steve Chamberlain (steve at cygnus.com)
* 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-28 01:08:51 +00:00
John Gilmore 156e38523a * Rename COFF-related files in `coff-ARCH.c' form.
coff-a29k.c, coff-i386.c, coff-i960.c, coff-m68k.c, coff-m88k.c,
coff-mips.c, coff-rs6000.c to be exact.
1991-10-25 10:17:52 +00:00
John Gilmore cc97dfbba7 RS/6000 support 1991-10-25 07:16:59 +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 ae9cce45ff Updates to h-vaxult.h from David Taylor. 1991-10-25 02:21:52 +00:00
Fred Fish e0796d2213 Add partial support for ELF format corefiles. Still needs code to extract
register values from corefiles and make them available to bfd clients.
1991-10-24 10:26:26 +00:00
Fred Fish 7b71de814a In config/t-m68k-elf, set DEFAULT_VECTOR to elf_big_vec. 1991-10-24 09:16:41 +00:00
Fred Fish dcc23cb9aa Document changes to some bfd config files. 1991-10-24 09:06:06 +00:00
Steve Chamberlain 33a782f1d2 * coffcode.h (coff_compute_section_file_positions): make it pad
section size out if there are alignment restrictions so that the
	image will be ok on a system where section positions are worked
	out by accumulating sizes rather than from the section headers.
1991-10-21 23:58:49 +00:00
Steve Chamberlain f58809fd41 * targets.c (proto write_armap). Changed orl_count to unsigned.
* opncls.c (bfd_close_all_done). Added so that generative
	programs like gas can close a bfd without causing bfd confusion.
	* libbfd.h (changed becuase of protos)
	* amdcoff.c: messed with the way that jmp displacements are
	calcualated. This may not yet be totally correct.
	* archive.c (coff_write_armap): rewrote the way that ranlibs are
	written out.
	* coffcode.h (fixup_symbol_value): now doesn't core dump if a non
	abs symbol has no section (like a register symbol).
	(coff_write_symbol) now zeros auxent before filling it up to help
	with sensitive applications.
	* libbfd.c (bfd_write_bigendian_4byte_int): added.
1991-10-21 16:42:54 +00:00
Per Bothner 314f3eeda3 * archive.c (bsd_write_argmap): The size of the ranlib structures
should not include teh size field itself.
	* aoutx.h, libaout.h (NAME(aout, sizeof_headers)):  Use
	adata(abfd)->exec_bytes_size field instead of constant macro,
	because aoutx.h compiles to a simple .o file shared by
	all 32-bits a.out targets.
1991-10-16 19:50:08 +00:00
John Gilmore 282effc79f Allow i386-sco-sysv.
Updates from my internet testing for gdb-4.2.
1991-10-16 18:59:59 +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
Per Bothner fd671dc421 * aoutx.h (NAME(aout,set_section_contents)): Try to handle the
various kinds of alignments for the various kinds of
	magic numbers.
1991-10-15 00:24:03 +00:00
John Gilmore f02be00a6d * Makefile.in: Avoid Sun Make VPATH bugs.
* targets.c:  Declare trad_core vectors extern.
1991-10-12 05:45:57 +00:00
Per Bothner 71fa3b0161 * coffcode.h: Moved ALIGN macro to libbfd.h. Removed i960_align.
* libbfd.h: Moved ALIGN macro here.
	* bout.c (b_out_callback): Replace i960_align by align_power.

	* libaout.h (struct aoutdata):  Added fields page_size,
	segment_size and exec_bytes_size.  These help generic code
	(in aoutx.h and libaout.h) to figure out where to align
	the various segments in a demand paged file.
	* libaout.h (WRITE_HEADER):  Use new (struct aoutdata) fields
	to decide if the exec header counts in a_text (text segment size).
	Also, assume D_PAGED flag is set; don't set it here.
	* bout.c (b_out_callback): Add initialization of
	adata fields page_size, segment_size, and exec_bytes_size.
	* host-aout.c (NAME(host_aout, callback) and
	NAME(host_aout,mkobject): Ditto.
	* i386aout.c (aout386_callback) and new aout386_mkobject): Ditto.
	* newos3.c (newsos3_callback) and new newsos_mkobject): Ditto.
	* aoutf1.c (sunos4_callback) and new sunos_mkobject): Ditto.
	* aoutx.h (NAME(aout,some_aout_object_p)): Don't subtract
	EXEC_BYTES_SIZE from the a_test size; this is only appropriate
	for some systems (mainly sunos), so do it in the callback instead.
	Same routine: Add stuff to the THIS_IS_ONLY_DOCUMENTATION comment.
	* aoutx.h (NAME(aout,set_section_contents): Change the way
	filepos and size of sections are carried out to support
	older styles of demand paged executables.
1991-10-11 20:45:29 +00:00
Steve Chamberlain 0d74098420 * bfd-in.h: Added more macros to COFF_SWAP_TABLE.
* bfd.c: Added macros to enable gas to swap coff records.
	* coffcode.h: Make the coff_swap_*_out routines return the number
	of bytes swapped, and cleaned up their prototypes.
	* configure.in: Added ebmon/coff support
	* ecoff.c: Changed null definitions of coff_swap_*_out to conform
	to new prototypes
	* targets.c: Added new entry points for coff swapping
1991-10-11 19:39:29 +00:00
John Gilmore 23d44ec958 Remove refs to ../include/sysdep.h. 1991-10-11 12:48:25 +00:00
John Gilmore 5b2765bf13 Restructure configuration scheme for bfd, binutils, ld.
* include/sys/h-*.h:  Move to bfd/hosts/h-*.h.
* configure.in:  Revise to symlink sysdep.h to hosts/h-xxx.h.
Change some config names to match other dirs.
* *.c:  Include bfd.h before sysdep.h, so ansidecl and PROTO()
get defined first.
* Makefile.in:  Use -I. to get sysdep.h.
* trad-core.c:  Don't disable the whole file if SUN4_SYS.
* config/:  Rename some config files to match up h-*.h names.
Remove all the HOST_SYS definitions from the config files.
* hosts/h-amix.h, h-i386v.h:  Define POSIX_UTIME, not USG.
* hosts/h-hp9000.h:  Remove USG comment.
* hosts/h-rs6000.h:  Include <stdlib.h> for malloc.
* hosts/h-news.h, h-sparc-64.h:  New config files that had
previously been kludged in the <sysdep.h> file.
1991-10-11 10:43:34 +00:00
John Gilmore 6a46902732 * Makefile.in: Rename XDEPFILES.
* trad-core.c:  Document how to use it nowadays.
* i386aout.c, newsos3.c:  Clean up.
* i386coff.c:  Allow 386 coff files to be used as core files too
(for reading core files from embedded systems).
1991-10-11 04:51:42 +00:00
Roland Pesch 92c78ee6ea * reloc.c, section.c, syms.c, targets.c: correct info-node
structure in *doc* comments.
1991-10-08 19:20:35 +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
Steve Chamberlain d997da5f3e *** empty log message *** 1991-10-05 00:42:03 +00:00
John Gilmore f004165ea5 * bfd-in.h: enum boolean => enum bfd_boolean for SVR4. Gumby's
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-04 02:49:06 +00:00
Steve Chamberlain a55612c73e * elf.c: took the abort out of set_arch_mach so that objdump -i will
still work. Now allows any architecture/machine to be set.
1991-10-03 14:51:20 +00:00
John Gilmore 3f85ebce78 * Makefile.in, configure.in, targets.c, elf.c: Add preliminary
ELF support good enough for GDB.
* configure.in, config/h-amix, config/t-m68k-elf:  Handle
m68k-cbm-svr4 host and target.
1991-10-01 19:46:47 +00:00
Steve Chamberlain 30d2c06f1d *** empty log message *** 1991-10-01 18:29:28 +00:00
John Gilmore 995ee059a1 Avoid depending on number of initializers. 1991-10-01 13:37:14 +00:00
John Gilmore 2ccc238359 Vax Ultrix changes from David Taylor <taylor@think.com>. 1991-10-01 12:08:20 +00:00
Steve Chamberlain e738d5d264 added:
* amdcoff.c: (a29k_reloc) fix error message.
1991-10-01 03:56:32 +00:00
Steve Chamberlain 4e6f9223b1 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.

	* 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-10-01 03:43:43 +00:00
John Gilmore 387cbb2bff * srec.c: Better error checking, partly from Peter Schauer.
(srec_object_p):  Avoid assuming any file that starts with 'S' is
an S-record file!  (Check for 3 uppercase-hex digits after it.)
(ISHEX):  Define new macro for checking supposedly hex characters.
(pass_over):  Treat as EOF any S-record line that:
    *  doesn't have hex in either size character
    *  produces a size larger than 0x7F
    *  has an unrecognized type number
1991-09-30 20:50:18 +00:00
John Gilmore fb3be09b66 Lint (saber actually). 1991-09-26 22:28:46 +00:00
Per Bothner ac0167e878 * libaout.h (WRITE_HEADERS): Set header's a_text field always.
* newsos3.c: Fixed two types: newos3 -> newsos3.
1991-09-26 18:40:30 +00:00
Per Bothner d0a27c3b8e Fix bfd_perform_relocation to handle pc-relative relocs better. 1991-09-26 18:26:28 +00:00
Roland Pesch b5493bc4c8 Thu Sep 12 14:07:22 1991 Roland H. Pesch (pesch at cygint.cygnus.com)
* Makefile.in: $(MAKE) for make, $(docdir) for doc
	* doc/Makefile: redundant dependencies for Sun-make VPATH bug
1991-09-12 21:08:51 +00:00
John Gilmore f053b34fe8 * aoutf1.h (sunos4_core_file_p): Release the right storage in error case.
(sunos4_core_file_matches_executable_p):  Fix header comparison.
* aoutx.h:  Avoid shifts of 32 bits, undefined in C.  Lint.
* bout.c, icoff.c, ieee.c, libbfd.c, oasys.c:  gcc -O -W lint.
1991-09-11 04:49:53 +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 10effd407e Fixed the line break as a test for cvs ci. 1991-09-03 22:43:19 +00:00
Steve Chamberlain c67056970a *** empty log message *** 1991-09-03 20:48:27 +00:00
John Gilmore 68b7021279 * configure.in: Tix typo.
* ecoff.c:  If compiling for DEC3100, use trad_unix core files,
        else dummy out the core file support.
        * trad-core.c (trad_unix_core_file_p):  If HOST_DATA_START_ADDR is
        specified, use it to locate the data section.
        * coffcode.h (coff_write_symbols):  Declare buffer as bfd_bytes
        rather than as chars (lint).
1991-08-23 20:55:23 +00:00
Stu Grossman 7d003262a7 saber 1991-08-23 05:26:06 +00:00
Roland Pesch d51d16c8e6 *** empty log message *** 1991-08-22 18:32:01 +00:00
Roland Pesch dd260c230b Wed Aug 21 14:33:06 1991 Roland H. Pesch (pesch at cygint.cygnus.com)
* Makefile.in, awkscan-ip, awkscan-p, intobfd,
	libbfd.h, libcoff.h, tolibcoff; new bfd-in.h, libbfd-in.h,
	libcoff-in.h: (a) use separate files for invariant parts of bfd.h,
	libbfd.h, and libcoff.h; (b) in generated parts of same, use less
	obtrusive marks indicating .c origins.

	* bfd.texinfo: generalize most references to linker
1991-08-21 21:37:39 +00:00
Roland Pesch a92b9db33c Tue Aug 20 15:18:02 1991 Roland H. Pesch (pesch at cygint.cygnus.com)
* Makefile.in: include core.p in PROTOS (building better bfd.h)
	* archures.c: remove empty foo() definition (crept in at vn1.9)
1991-08-20 22:23:49 +00:00
Roland Pesch 188d6d224e Fixed minor typos. 1991-08-19 23:03:12 +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
John Gilmore 3c8a3c56e4 * all files: update copyright notices for GPL version 2.
Install header comments and attribute most modules to their
	authors.  BFD's name is now officially "Binary File Descriptor",
	so remove any conflicting perjoratives.
1991-07-31 16:58:05 +00:00
Steve Chamberlain 87059abb6b *** empty log message *** 1991-07-27 01:14:16 +00:00