Commit graph

171 commits

Author SHA1 Message Date
Per Bothner
e18e24af07 * bfd-in.h (bfd_print_symbol_type_hopw enum): Add new option
bfd_print_symbol_nm, for use by nm.
	* aoutx.h (NAME(aout,print_symbol)):  Add code for new
	bfd_print_symbol_nm option, to print in nm format.
	* coffcode.h (coff_print_symbol), ieee.c (ieee_print_symbol)
	oasys.c (oasys_print_symbol):  Provide stub implementations
	for bfd_print_symbol_nm.
	* syms.c:  New function bfd_decode_symclass, used by nm printer.
	New function bfd_stab_name to look up string name of stab code.
1991-11-03 22:47:50 +00:00
John Gilmore
6d7c88c3d0 * coff-rs6000.c: Change name to "aixcoff-rs6000", to avoid
matching prefix "coff".
* coffcode.h (coff_swap_aux_in, coff_swap_aux_out):  Handle
rs/6000 csect records.
1991-11-01 02:24:43 +00:00
Steve Chamberlain
da6745fd68 * coff-m88k.c, targets.c: change name of m88k_bcs to m88kbcs 1991-10-28 01:18:01 +00:00
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
Steve Chamberlain
7a276b09e5 *** empty log message *** 1991-07-04 16:56:17 +00:00
Sean Eric Fagan
2099685bad Added code to deal with filenames less than 9 characters in a COFF file. 1991-06-07 19:37:42 +00:00
Steve Chamberlain
357a1f38a5 *** empty log message *** 1991-06-07 01:32:45 +00:00
Steve Chamberlain
3df049722c *** empty log message *** 1991-05-30 23:57:00 +00:00
Steve Chamberlain
2700c3c75a *** empty log message *** 1991-05-30 22:33:01 +00:00
John Gilmore
a5b00362e8 Undo Bothner changes that depend on pointer representation. 1991-05-29 00:38:52 +00:00
Steve Chamberlain
8c556488d1 Updated
#
1991-05-25 01:58:08 +00:00
Steve Chamberlain
b75ea0ea93 *** empty log message *** 1991-05-22 14:27:39 +00:00
Steve Chamberlain
7ed4093abc *** empty log message *** 1991-05-21 00:14:16 +00:00
Steve Chamberlain
a14b9e8aa1 *** empty log message *** 1991-05-13 21:03:08 +00:00
Steve Chamberlain
fb030779ae *** empty log message *** 1991-05-13 19:56:07 +00:00
Steve Chamberlain
99a2aa2cb5 *** empty log message *** 1991-05-13 17:14:49 +00:00
John Gilmore
e10d93eda2 Sony NEWS port and modularization of a.out code. Cleanup of
close_and_cleanup, write_contents, and jump vectors.
1991-05-11 00:48:27 +00:00
Steve Chamberlain
a0a87dd55e *** empty log message *** 1991-05-10 19:44:53 +00:00
Steve Chamberlain
cdd896f940 *** empty log message *** 1991-05-10 19:38:27 +00:00
Steve Chamberlain
af773d1b0f It's new and improved 1991-05-10 01:47:44 +00:00
John Gilmore
b1847ba9e7 Saber C cleanup. Fix horrid bug in opncls.c in which an obstack is
initialized on the stack and then copied into its own allocated space.
(Wow, Steve, you're twisted...)
1991-05-04 22:52:03 +00:00
David Henkel-Wallace
4a81b56152 Initial revision 1991-03-21 21:11:25 +00:00