Commit Graph

17 Commits

Author SHA1 Message Date
Ian Lance Taylor
8d12f138ea * ecofflink.c: New file to hold ECOFF debug information linking
routines.
	* ecoff.c (ecoff_clear_output_flags, ecoff_rel, ecoff_dump_seclet,
	ecoff_add_string, ecoff_get_debug): Removed.  Functionality now in
	ecofflink.c.
	(ecoff_get_extr, ecoff_set_index): New functions.
	(ecoff_slurp_symbolic_info): Don't save raw_size.
	(ecoff_bfd_seclet_link): Rewrote to use ecofflink.c functions.
	(ecoff_compute_section_file_positions): Don't set EXEC_P just
	because there is a start address.
	(ecoff_write_object_contents): Handle external symbols here.  Use
	ecofflink.c functions to write out debugging information.
	* elf32-mips.c (mips_elf_read_ecoff_info, mips_elf_get_extr,
	mips_elf_set_index): New functions.
	(mips_elf_seclet_link): Discard empty sections, the .options
	section and .gptab sections.  Handle linking .mdebug section.
	* libecoff.h (ecoff_data_type): Removed raw_size and ifdbase.
	* libelf.h (elf_symbol_type): Added mips_extr to tc_data union.
	* bfd-in.h: Added prototypes for routines in ecofflink.c (some are
	called by gas, so they are public).
	* bfd-in2.h: Rebuilt.
	* Makefile.in (BFD_LIBS): Added ecofflink.o.
	(CFILES): Added ecofflink.c.
	(ecofflink.o): New target.  Rebuilt dependencies.
1993-11-24 07:21:28 +00:00
Ken Raeburn
1fa5371efb rewrite comment -- bfd-in2.h is generated too 1993-08-05 18:27:16 +00:00
Ken Raeburn
58488bc652 Change insertion marker for new bfd.h generation scheme. 1993-06-21 00:30:11 +00:00
Ken Raeburn
034a8a56a4 Put in marker for sysdep.h inclusion.
(int64_type, uint64_type): Define when using "long long" fallback for
HOST_64_BIT.
1993-06-16 02:08:29 +00:00
Jim Kingdon
14e3c2e47d * libbfd.c: Add signed versions of bfd_{h_,}{get,put}_signed_<size>.
libbfd.c, libbfd-in.h: Add _do*signed*.
	targets.c, all targets: Add bfd*signed*.
	bfd-in.h: Add bfd_signed_vma.  Add comments.
1993-04-17 00:39:36 +00:00
Jim Kingdon
34b6a8c305 Thu Apr 15 09:09:18 1993 Jim Kingdon (kingdon@cygnus.com)
* bfd-in.h (bfd_error), bfd.c (bfd_errmsgs): Add file_truncated.

	* format.c (bfd_check_error): Check error return from
	_bfd_check_format routines.

Wed Apr 14 23:48:25 1993  Jim Kingdon  (kingdon@cygnus.com)

	* rs6000-core.c (rs6000coff_core_p): Improve error checking and
	recognize .data section if present.
1993-04-15 19:29:51 +00:00
John Gilmore
b6090f4d65 Cleanup in preparation for better 64-bit host support.
* bfd-in.h (bfd_64_type):  Remove.
* libbfd.c (_do_getb64, _do_putb64):  Use bfd_vma, not bfd_64_type.

* bfd-in.h (bfd_size):  Remove.

* bfd-in.h (bfd_offset):  Remove, after fixing ld/ldlang.[ch].

* bfd-in.h (bfd_word):  Remove.
* reloc.c (reloc_howto_type):  Replace bfd_word with bfd_vma.

* bfd-in.h (rawdata_offset):  Remove.
* reloc.c (arelent):  Replace rawdata_offset with bfd_size_type.
(bfd_perform_relocation):  Lint.
(enum bfd_reloc_status):  Comment cleanup.
1993-04-15 04:53:14 +00:00
John Gilmore
ec30dfba17 Roll to version 2.1. 1993-02-16 08:49:29 +00:00
Ian Lance Taylor
0c2fae099a Mon Jan 11 18:32:22 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
* targets.c (bfd_target): Added relocateable argument to
	_bfd_get_relocated_section_contents.  Added _bfd_seclet_link
	target vector for linker use.
	* bfd.c (bfd_seclet_link): New macro.
	* bfd-in.h (JUMP_TABLE): Added _bfd_seclet_link.
	* seclet.c (rel, seclet_dump_seclet): Added relocateable argument
	and boolean return value.  Made static.
	(bfd_generic_seclet_link): Renamed from seclet_dump.  Added
	relocateable argument.
	* reloc.c (bfd_generic_get_relocated_section_contents): Added
	relocateable argument (if relocateable, saves relocs).
	* bout.c (b_out_get_relocated_section_contents),
	reloc16.c (bfd_coff_reloc16_get_relocated_section_contents): Added
	relocateable argument (if relocateable, just calls
	bfd_generic_get_relocated_section_contents).
	* libcoff-in.h (bfd_coff_reloc16_get_value): Added relocateable
	argument to prototype.
	* All targets: Set new _bfd_seclet_link vector to
	bfd_generic_seclet_link.
1993-01-12 00:38:59 +00:00
John Gilmore
1093ee14ae * libbfd-in.h, bfd-in.h: Eliminate all PROTO calls, replace with
PARAMS for readability.
1992-11-28 12:14:14 +00:00
John Gilmore
00539ee3b3 * bfd-in.h: Improve comments to make it clear that bfd.h is
the wrong place to edit this file.
* Makefile.in (install):  Install ansidecl.h and obstack.h in the
same places where we install bfd.h.
* libieee.h:  Add FIXME about removing limit on number of sections.
1992-11-05 08:17:56 +00:00
Steve Chamberlain
294eaca479 Some of these are guesses, if you know different, just yell.
Thu Oct  8 08:52:48 1992  Steve Chamberlain  (sac@thepub.cygnus.com)

	 Now a bfd knows whether underscores are normally prepended
	 to symbols in its file format. Helps with error messages.

	* aout-adobe.c, aout-target.h, bout.c, coff-a29k.c, coff-h8300.c,
	coff-z8k.c: targets set so they have leading underscore
	* coff-i386.c, coff-i960.c, coff-m68k.c, coff-mips.c, coff-m88k.c,
	coff-rs6000.c, coff-we32k.c, elf.c, ieee.c, srec.c: targets set
	without leading underscore flag
	* targets.c: add symbol leading char to xvec description
	* bfd-in.h (bfd_get_symbol_leading_char): new macro.
1992-10-08 16:02:09 +00:00
Steve Chamberlain
2cfd05621b * bfd-in.h: bump version to 1.96
Major change; changed calling convention for
	 bfd_get_relocated_section_contents so that caller allocates
	 memory for section data.
	* coffcode.h (bfd_coff_get_relocated_section_contents), reloc.c,
	seclet.c, targets.c, bfd.c: reflect new convention.
	* coffcode.h (styp_to_sec_flags): if styp_flags is not a special
	case, then use reasonable default values for SEC_* flags.
1992-05-04 23:42:03 +00:00
Steve Chamberlain
e98e6ec111 Uses the new small reloc type now.
Currently self hosts on sun4 and sun3
1992-01-24 22:44:51 +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
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
63ffe5ef86 Insert the incidentals and things I forgot to ci last time, same log message:
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.

	* amdcoff.c: (a29k_reloc) fix error message.

	* 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:55:40 +00:00