Commit graph

1439 commits

Author SHA1 Message Date
Stu Grossman
9e16fcf124 * som.c (hppa_object_setup): Set SEC_CODE for .text section so
that GDB can figure out text_start and text_end.
1993-10-26 09:42:15 +00:00
Ian Lance Taylor
56775366f3 Fix up warnings from gcc -Wall:
* coffgen.c (coff_print_symbol): Use %lx and cast n_value to
	unsigned long.  Use %ld for tagndx.  Use %lx for offset + vma and
	cast it to unsigned long.
	* ecoff.c (ecoff_emit_aggregate): Use %ld.
	(ecoff_print_symbol): Use %ld, and cast indx and sym_base to long.
	* coffcode.h (dummy_reloc16_estimate): Specify return type.
1993-10-25 21:22:33 +00:00
Ian Lance Taylor
df34342bde * libbfd.c (bfd_write): If not everything is written out, set
bfd_error to system_call_error.  If the return value is
	non-negative, set errno to ENOSPC (if ENOSPC is defined).
	(bfd_seek): If the seek fails, set bfd_error to system_call_error.
	(bfd_generic_set_section_contents): For a bad offset + count, set
	bfd_error to bad_value.
	* seclet.c (rel): Don't abort.  Instead, return false.
1993-10-25 20:09:46 +00:00
Ken Raeburn
7956846326 aoutx.h (reloc_type_lookup): Handle BFD_RELOC_SPARC_WDISP22. 1993-10-25 17:01:57 +00:00
Mark Eichin
dd8dd099b0 note TDEFINES setting of FPRINTF_ALREADY_DECLARED. 1993-10-22 18:14:21 +00:00
Ian Lance Taylor
609151bee8 * targets.c (target_vector): Enable MIPS ELF vectors. 1993-10-22 15:56:08 +00:00
Jim Kingdon
212b1b07fa * config.bfd: Use bigmips for mips-sony-bsd*. 1993-10-22 14:58:28 +00:00
Jim Kingdon
ffa2b1dfe7 * configure.host, config.bfd: Add * to end of all OS names. 1993-10-22 13:36:28 +00:00
Ken Raeburn
3bca03362f elfcode.h (FILE_ALIGN_: Renamed from EALIGN, to avoid conflict with Ultrix
header files.

Also, lots of changes for PA elf and som support from Utah; see ChangeLog
for details.
1993-10-21 19:22:42 +00:00
Jim Kingdon
37e6f1d0e4 gcc -Wall lint:
* coff-h8300.c, coffcode.h: Change shrink parameter
	in *_reloc16_estimate to unsigned to match prototype.
	* archive.c: Avoid "/*" in comment.
1993-10-21 19:11:15 +00:00
Ian Lance Taylor
5280bd62ff * dep-in.sed: Create our own line breaks for a more aesthetic
Makefile.
	* Makefile.in: Rebuilt dependencies.
1993-10-21 18:30:12 +00:00
Ian Lance Taylor
632f2cc779 * elf32-mips.c: Include "seclet.h".
(mips_elf_fake_sections): Force size of .reginfo section to sizeof
	Elf32_External_RegInfo.
	(mips_elf_seclet_link): New function.  Link the .reginfo section
	specially, and pass everything else to the generic routine.
	(bfd_elf32_bfd_seclet_link): Define macro.
	* elf32-target.h: If bfd_elf32_bfd_seclet_link is already defined,
	don't override it.
1993-10-21 17:13:38 +00:00
Ian Lance Taylor
0186bcc6d5 * libnlm.h (nlm_backend_data): Added signature field.
(nlm_signature): New macro.
	* nlmcode.h (nlm_object_p, nlm_write_object_contents): Use the NLM
	signature from the backend rather than the constant NLM_SIGNATURE.
	* nlm32-i386.c (nlm32_i386_backend): Initialize signature field.
1993-10-20 20:37:40 +00:00
Ken Raeburn
c6b399ceb8 (HFILES): New variable, for use in "make dep".
(.dep): Depend on $(CFILES) and $(HFILES).  Delete .dep1 and remake it, so that
"$?" is complete.
(.dep1): Don't need to remove .dep1 first.
(dep.sed): Depend on config.status, not Makefile.
(CFILES): Add nlm.c.
1993-10-20 20:04:17 +00:00
Ian Lance Taylor
e61742338b * aoutf1.h (MACHTYPE_OK): Accept M_UNKNOWN.
(NAME(sunos,set_arch_mach)): Treat M_UNKNOWN as 68000, not 68020.
1993-10-20 16:26:50 +00:00
Jim Kingdon
dc0d7d91da * hosts/i386bsd.h [__bsdi__]: Define HOST_DATA_START_ADDR. 1993-10-20 15:33:40 +00:00
Ian Lance Taylor
5fa2aaa241 * coff-alpha.c: Implemented reloc handling for the linker, made
various other related changes.
	* libecoff.h (ecoff_backend_data): Added rdata_in_text field.
	Renamed finish_reloc to adjust_reloc_in.  Added adjust_reloc_out
	field.
	(ecoff_bfd_get_relocated_section_contents): Don't define.
	* ecoff.c (ecoff_sec_to_styp_flags, ecoff_styp_to_sec_flags):
	Handle .lita section.
	(ecoff_slurp_reloc_table): Handle RELOC_SECTION_FINI.
	finish_reloc backend field renamed to adjust_reloc_in.
	(ecoff_bfd_seclet_link): Adjust number of aux entries to
	debug_align boundary.
	(ecoff_compute_section_file_positions): If rdata_in_text put
	.rdata section in text segment, not data segment.  Put .pdata
	section in text segment.
	(ecoff_write_object_contents): Likewise.  Also, call
	adjust_reloc_out, and handle .lita, .xdata, .pdata, .fini and
	absolute sections when writing out relocs.
	* coffswap.h (coff_swap_aouthdr_out): For ALPHAECOFF, output 2 for
	bldrev field, as on Alpha OSF/1.  Padding field is now 2 bytes.
	* coff-mips.c (mips_ecoff_swap_reloc_out): Added assertion.
	(mips_adjust_reloc_in): Renamed from mips_finish_reloc.
	(mips_adjust_reloc_out): New function (does nothing).
	(mips_ecoff_backend_data): Initialize new fields.
	(ecoff_bfd_get_relocation_section_contents): Define to be
	bfd_generic_get_relocated_section_contents.

	* reloc.c (bfd_perform_relocation): Added casts to avoid Alpha
	OSF/1 cc bug.
1993-10-19 19:41:44 +00:00
Stu Grossman
653dd82a60 * Makefile.in: Add dependancy for elf.o to make Sun make happy
when using VPATH.
1993-10-19 01:17:42 +00:00
Ian Lance Taylor
08243cb522 * coffcode.h (styp_to_sec_flags): Don't set SEC_DEBUGGING until it
is made to work.
	(coff_compute_section_file_positions): Remove check for
	USE_DISCARDED_SECTIONS_COUNT.
	* coff-i386.c: Don't define USE_DISCARDED_SECTIONS_COUNT.  Basing
	it on host defines is wrong.
1993-10-14 16:04:35 +00:00
Ian Lance Taylor
fa1dccfb48 * ecoff.c (ecoff_bfd_seclet_link): Don't link a .reginfo section.
(ecoff_write_object_contents): Don't require the .reginfo section
	to be a particular size.
1993-10-14 05:13:43 +00:00
Ken Raeburn
97eb2f0cb6 More "make dep" fixups.
Apollo 68k support from Troy Rollo <troy@cbme.unsw.edu.au>.
1993-10-13 23:08:10 +00:00
Ken Raeburn
6327ba5dc7 Oopsie.
Use "[^ ]*", not ".*", in matching filename patterns.
Updated dependencies in Makefile.in.
1993-10-13 22:33:48 +00:00
Ken Raeburn
28f4c45f71 remove inclusion of strings.h 1993-10-13 21:42:42 +00:00
Ken Raeburn
cbd8493e6c coff-i386.c (i3coff_object_p): Now static. 1993-10-13 19:17:05 +00:00
Ken Raeburn
f3bb56f1c8 68kcoff, makedep changes 1993-10-13 19:04:43 +00:00
Ken Raeburn
d684720f29 Make "make dep" easier to work with. Updated lots of dependencies.
Don't try "make dep" alone; use "make dep DEP=mymkdep", where "mymkdep" has
been hacked to use "gcc -MM"...
1993-10-13 19:04:08 +00:00
Ken Raeburn
3fd4fab335 Define ONLY_DECLARE_RELOCS, to avoid name conflicts when "--with-targets=all". 1993-10-13 18:57:21 +00:00
Ken Raeburn
dd4edae4db for m68klynx_coff_vec, include coff-m68k.o for now 1993-10-13 18:56:39 +00:00
Ian Lance Taylor
d5a30a0879 * elf32-mips.c: Extensive additions to do relocations and to
handle MIPS specific sections.
	* libelf.h (elf_backend_data): Pass fourth argument to
	elf_backend_section_from_bfd_section to permit it to control the
	section index to use.
	(elf_obj_tdata): Add gp and gp_size fields.
	(elf_gp, elf_gp_size): New accessor macros.
	* elfcode.h: Removed a number of unused local variables.
	(elf_fake_sections): Clear section header before calling
	elf_backend_fake_sections, not after.
	(prep_headers): Return true at end.
	(elf_section_from_bfd_section): Pass retval argument to
	elf_backend_section_from_bfd_section.
	* elf32-hppa.c (elf32_hppa_backend_section_from_bfd_section):
	Accept and ignore new retval argument.
	* bfd.c: Include libelf.h.
	(bfd_set_gp_size): Handle ELF targets.
	* Makefile.in (bfd.o): Depends upon libelf.h.
	(elf32-mips.o): Depends upon $(INCDIR)/elf/mips.h.
1993-10-12 21:16:14 +00:00
Fred Fish
f7df1b2b26 Add elf64-sparc.c to lose_these_too if it is not added to keep_these_too. 1993-10-12 02:44:07 +00:00
Ian Lance Taylor
a785321604 * ecoff.c (ecoff_mkobject): Check bfd_make_section return value.
(ecoff_mkobject_hook): New function.
	(ecoff_new_section_hook, ecoff_sizeof_headers,
	ecoff_compute_section_file_positions, ecoff_set_section_contents,
	ecoff_write_object_contents): Handle dummy REGINFO section.
	(ecoff_get_section_contents): New function to handle reading
	REGINFO section.
	* libecoff.h (ecoff_get_section_contents): Change from macro
	definition to function prototype.
	(ecoff_mkobject_hook): New prototype.
	* coff-alpha.c (alpha_ecoff_mkobject_hook): Removed.
	(alpha_ecoff_backend_data): Use ecoff_mkobject_hook.
	* coff-mips.c (mips_ecoff_mkobject_hook): Removed.
	(mips_ecoff_backend_data): Use ecoff_mkobject_hook.
1993-10-11 21:38:38 +00:00
Peter Schauer
22d33fb2f5 * libbfd.c (bfd_get*32, bfd_get*64): Prevent ANSI sign extension
by casting the most significant byte to bfd_vma.
1993-10-08 22:27:53 +00:00
Peter Schauer
cede97315d * configure.in: Do not define SELECT_VECS, SELECT_ARCHITECTURES
if configuring --with-targets=all.
1993-10-08 09:42:42 +00:00
Ken Raeburn
fb32909add * aoutx.h (howto_table_std): Correct the "size" field in some entries.
* reloc.c (reloc_howto_type): Change documentation to dispel any
notion that the "size" field is a power-of-two indicator.
1993-10-07 21:46:12 +00:00
Steve Chamberlain
fbb61b5029 * coffswap.h: (bfd_swap_reloc_in): a symndx is signed. 1993-10-07 19:24:22 +00:00
Steve Chamberlain
5cfdedb902 Make support for relaxing more generic.
* reloc16.c: Add new target entry - bfd_coff_reloc16_estimate,
	fix bit rot.
	* libcoff.h, libcoff-in.h: declarations. Prototypes
	* coffcode.h (bfd_coff_std_swap_table): Add calls to
	coff_reloc_16_extra_cases and coff_reloc16_estimate.
	(dummy_reloc16_estimate): New function.
	* coff-h8300.c (h8300_reloc16_estimate): New function
1993-10-07 19:21:54 +00:00
Ken Raeburn
01383fb458 elfcode.h (EALIGN): Define, dependent on ARCH_SIZE.
(align_file_position): New function.
(elf_locate_sh): Disabled function deleted.
(assign_file_positions_for_symtab_and_strtabs): Align position, then place
symtab, then do other sections.
(map_program_segments): Align program header.
(assign_file_positions_except_relocs): Align section headers.
(assign_file_positions_for_relocs): Align relocation sections.

Fixes ld/3584.
1993-10-07 18:34:59 +00:00
Ken Raeburn
fd201fc392 removed two deleted files (thanks Fred) 1993-10-07 18:22:21 +00:00
Jim Kingdon
bdacad9c48 * configure.host: Recognize hppa*-*-hiux* (currently synonym for hpux).
Change other hppa entries to use -*- not -hp-.
	* config.bfd: Recognize hppa*-*-hiux* (currently synonym for hpux).
1993-10-05 17:46:28 +00:00
Jim Kingdon
cf513c6e39 * coff-rs6000.c, cpu-rs6000.c, rs6000-core.c: Change non-ASCII
characters in comment to octal escapes.
1993-10-05 16:01:49 +00:00
Stan Shebs
3151f12f33 Another forgotten file. 1993-10-05 02:30:37 +00:00
Stan Shebs
47d2245116 Reflect changes in Lynx files. 1993-10-03 22:51:51 +00:00
Stan Shebs
c4a423818e More additions and changes for Lynx. 1993-10-03 22:15:52 +00:00
Jim Kingdon
8a1f626075 * config/news-mips.mh, hosts/news-mips.h: New files. 1993-10-03 05:46:21 +00:00
Jim Kingdon
bc991bc903 * config/news-mips.mh, hosts/news-mips.h: New files.
* configure.host: Use news-mips for mips-sony-bsd*.
1993-10-03 00:35:12 +00:00
Jim Kingdon
17dbd90993 new for mips corefiles 1993-10-02 23:55:34 +00:00
Stan Shebs
48ee075741 * configure.in: i386lynx_coff_vec requires coff-i386lynx.o.
* coff-i386lynx.c: New file, defines Lynx target vector and name,
	includes coff-i386.c.
	* coff-i386.c (i386coff_vec): Allow redefinition of target vector
	symbol and name, if TARGET_SYM and/or TARGET_NAME are defined.
	* i386lynx.c: Remove coff vector definition entirely.
	(lynx_32_swap_ext_reloc_in): Define.
	(lynx_32_swap_std_reloc_in): Define, get reloc bits in i386
	Lynx-specific way.
	(lynx_32_swap_ext_reloc_out): Define.
	(lynx_32_swap_std_reloc_out): Define.
	(lynx_32_slurp_reloc_table): Define, call Lynx swapping fns.
	(lynx_32_squirt_out_relocs): Define, call Lynx swapping fns.
	(lynx_32_canonicalize_reloc): Define, call Lynx swapping fns.
	(WRITE_HEADERS): Define, call Lynx swapping fns.

	* config/i386-lynx.mt (SELECT_VECS): Remove redundant vector.
1993-10-01 21:42:59 +00:00
Ken Raeburn
763cfca018 reloc.c (bfd_reloc_code_type): Add linkage-table relative reloc of size 8, 16,
32.  Sort generic relocs by type, not size.  Added a little documentation too.
1993-09-30 21:54:49 +00:00
Jim Kingdon
a1b51eb3eb * section.c (bfd_make_section_anyway): New function.
* section.c: Change comments to say several sections can have
	the same name.
	* bfd-in2.h: Re-generate to reflect above change.
	* coffgen.c (make_a_section_from_file): Call bfd_make_section_anyway
	if still no section after the bfd_coff_make_section_hook.
	* coffcode.h: Add comment about TWO_DATA_SECS.
1993-09-28 21:47:15 +00:00
Jim Kingdon
9b3fa58950 * section.c (bfd_make_section_anyway): New function.
* section.c: Change comments to say several sections can have
	the same name.
	* bfd-in2.h: Re-generate to reflect above change.
	* coffgen.c (make_a_section_from_file): Call bfd_make_section_anyway
	if still no section after the bfd_coff_make_section_hook.
	* coffcode.h: Add comment about TWO_DATA_SECS.
1993-09-28 20:44:43 +00:00
Stan Shebs
4ac3ff671b Keep m68klynx.h 1993-09-28 20:27:21 +00:00
Stan Shebs
eefe075d6a Keep m68klynx.c 1993-09-28 20:25:00 +00:00
Peter Schauer
2c24db3b2d * ecoff.c (ecoff_slurp_symbolic_info): Always determine raw_size
explicitly.
	* ecoff.c (ecoff_sec_to_styp_flags, ecoff_styp_to_sec_flags):  Handle
	.fini section.
1993-09-28 10:23:52 +00:00
Stan Shebs
32940b9fe3 Fix a typo 1993-09-28 01:57:25 +00:00
Stan Shebs
96e39d2aaa New and improved Lynx support. 1993-09-28 01:53:25 +00:00
Jim Kingdon
69bdf1a5da * archive.c: Define offsetof here.
* hosts/*.h: Don't define it here.
1993-09-27 23:27:46 +00:00
Ian Lance Taylor
8737c2f4e5 * elfcode.h (bfd_section_from_shdr): Set filepos for SHT_STRTAB
section.
1993-09-27 23:12:40 +00:00
Jim Kingdon
eafdb69561 * hpux-core.c: Add comment about hpux version 7. 1993-09-26 18:47:53 +00:00
Stu Grossman
08ba2f95fe * lynx-core.c (lynx_core_file_p): Change per-thread register
section names from .regXXX to .reg/XXX to avoid parsing ambiguity
in gdb/corelow.c.  Create alias .reg section for the currently
running thread.
1993-09-24 23:54:32 +00:00
Peter Schauer
0a27542138 Fix typo in previous ChangeLog message. 1993-09-24 16:13:26 +00:00
Peter Schauer
4346ee0f97 * osf-core.c: New file for OSF/1 core file support.
* config/alphaosf.mh (HDEFINES):  Set to -DHPUX_CORE.
	(HDEPFILES):  Set to hpux-core.o.
	* bfd-in2.h (union tdata):  Add osf_core_data member.
	* targets.c:  If OSF_CORE is defined, add osf_core_vec to target list.
	* Makefile.in (OPTIONAL_BACKENDS):  Add osf-core.o.
	(osf-core.o):  New dependency.
1993-09-24 07:45:28 +00:00
Jim Kingdon
449fc5131c * ecoff.h (ecoff_set_arch_mach_hook): Accept MIPS_MAGIC_LITTLE2
and MIPS_MAGIC_BIG2.
1993-09-24 02:16:09 +00:00
Ian Lance Taylor
7437667486 * archive.c (compute_and_write_armap): Put weak symbols in the
armap.

	* elfcode.h (fix_up_strtabs): Set sh_entsize for the .stab
	section, not the .stabstr section.  Set the type of the .stabstr
	section to SHT_STRTAB.
	(elf_section_from_bfd_section): Handle SHT_STRTAB sections.

Also set SEC_DEBUGGING for appropriate SHT_STRTAB sections.
1993-09-23 21:59:07 +00:00
Ken Raeburn
869cbaae87 * gen-aout.c (main): Output newline after end of comment, not before.
(Reported by Jonathan Stone, jonathan@oscar.stanford.edu).
1993-09-23 16:51:30 +00:00
Ian Lance Taylor
d6e5f95000 * section.c (SEC_DEBUGGING): New section flag.
* elfcode.h (bfd_section_from_shdr): If section is SHT_PROGBITS,
	and the name starts with .debug, .line or .stab, set
	SEC_DEBUGGING.
	* elf32-target.h (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Added
	SEC_DEBUGGING to section_flags.
	* elf64-target.h (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Added
	SEC_DEBUGGING and SEC_CODE to section_flags.
	* bfd-in2.h: Updated.
1993-09-23 15:14:12 +00:00
Ian Lance Taylor
01657c7aec * bfd.c (tdata): Add lynx_core_data. 1993-09-22 20:57:58 +00:00
Ian Lance Taylor
e544ed4f3d * ecoff.c (ecoff_compute_section_file_positions): Set filepos for
sections with SEC_LOAD set, even if SEC_HAS_CONTENTS is clear.
	(ecoff_write_object_contents): Don't set scnptr to zero just
	because size of section is zero.  Needed for Irix 4.0.5F.
1993-09-22 20:49:57 +00:00
Jim Kingdon
bdb45162af * config.bfd: Use i960-bout, not i960-coff for i960-*-nindy*. 1993-09-22 15:11:59 +00:00
Stu Grossman
6c08c1ef02 * Makefile.in (OPTIONAL_BACKENDS): Add lynx-core.o.
* bfd-in2.h (tdata):  Add lynx_core_data;
	* config.bfd configure.host:  Get rid of superfluous netbsd and
	lynxos entries.
	* configure.in:  Add lynx-core.o to Lynx config.
	* i386lynx.c:  Add defs for core file support.
	* lynx-core.c:  New file with Lynx core file support.
	* hosts/i386lynx.h:  Move lots of host specific includes to here.
	Add def of HOST_LYNX.  Remove unnecessary defs.
1993-09-22 14:58:31 +00:00
Stu Grossman
2b91cc453b * Makefile.in (OPTIONAL_BACKENDS): Add lynx-core.o.
* bfd-in2.h (tdata):  Add lynx_core_data;
* config.bfd configure.host:  Get rid of superfluous netbsd and
lynxos entries.
* configure.in:  Add lynx-core.o to Lynx config.
* i386lynx.c:  Add defs for core file support.
* lynx-core.c:  New file with Lynx core file support.
* hosts/i386lynx.h:  Move lots of host specific includes to here.
Add def of HOST_LYNX.  Remove unnecessary defs.
1993-09-22 14:54:50 +00:00
Ian Lance Taylor
36d541b1c7 * elfcode.h (bfd_section_from_shdr): Only set SEC_DATA for a
SHF_PROGBITS or SHT_STRTAB section if SEC_ALLOC is set.  Never set
	SEC_DATA for a SHF_NOBITS section.

	* nlm32-i386.c (nlm_i386_mangle_relocs): Check SEC_LOAD rather
	than SEC_CODE | SEC_DATA.  Add some casts to avoid warnings.
	* nlmcode.h: Add some casts to avoid warnings.
	(nlm_write_object_contents): Ignore relocs for sections that are
	neither code nor data.  Just use the symbol value for debugging
	symbols; don't offset by the section vma.
1993-09-20 23:25:52 +00:00
Ian Lance Taylor
4fe784bb8f * reloc.c (bfd_perform_relocation): Don't return an error when
performing a reloc against an undefined weak symbol.
	* syms.c (bfd_print_symbol_vandf): Show value of BSF_WEAK rather
	than obsolete BSF_EXPORT.
1993-09-17 22:13:33 +00:00
John Gilmore
9d6323bace * hosts/{alphaosf.h, amix.h, apollo68.h, apollov68.h,
decstation.h, delta88.h, dgux.h, dose.h, go32.h, harris.h,
hp300.h, hp300bsd.h, hppabsd.h, hppahpux.h, i386aix.h, i386bsd.h,
i386linux.h, i386lynx.h, i386v.h, i386v4.h, irix3.h, irix4.h,
mipsbsd.h, ncr3000.h, rs6000.h, rtbsd.h, solaris2.h, sparc-ll.h,
std-host.h, stratus.h, sun3.h, sysv4.h, tahoe.h, ultra3.h,
vaxult.h, vaxult2.h, we32k.h}:  Make sure that "offsetof" is
defined on all hosts, now that archive.c uses it.
1993-09-17 09:14:31 +00:00
John Gilmore
c5652bffcb Make sure that "offsetof" is defined on all hosts, now that archive.c uses it. 1993-09-17 09:08:00 +00:00
Ian Lance Taylor
e621c5cc37 * elfcode.h (elf_map_symbols): Create section symbols for all
sections, not just allocated sections; debugging sections can have
	relocs.
	(elf_symbol_from_bfd_symbol): If there is an output section, use
	the section index from that rather than the input section.
1993-09-16 22:24:33 +00:00
Ian Lance Taylor
0542a638d7 * libbfd.h (COERCExx): Cast x to bfd_signed_vma before doing the
xor and subtract.  Otherwise it will not sign extend if the type
	of bfd_vma is larger than int.
1993-09-15 20:57:47 +00:00
Ian Lance Taylor
2fbb0a713c * ecoffswap.h (ecoff_swap_pdr_in): Get regoffset, iopt, fregoffset
and frameoffset as signed numbers.  From Peter Schauer.
1993-09-15 15:58:11 +00:00
Ian Lance Taylor
207f85b54b * elf32-i386.c (elf_howto_table): Add bfd_elf_generic_reloc
special function for all reloc entries.
	* elf32-target.h (TARGET_LITTLE_SYM): Add SEC_CODE to
	section_flags.
	* libelf.h (elf_symbol_type): Remove desc, type and other fields.
	* Makefile.in (elf32-*.o): These depend upon elf32-target.h.
1993-09-14 22:29:26 +00:00
Steve Chamberlain
a6f5fcd8c2 Tue Sep 14 14:34:45 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
* libbfd-in.h (struct artdata):  Add armap_timestamp and
 	armap_datepos here too.
1993-09-14 21:39:33 +00:00
John Gilmore
cb4acadb8c Avoid minor warning in archive.c change. 1993-09-14 04:19:40 +00:00
John Gilmore
f26a0e9bcf * hosts/std-host.h (offsetof): Define, if not already, for archive.c. 1993-09-14 04:15:23 +00:00
John Gilmore
b5b4294e65 Improve timestamp support in BSD archive files to avoid linker
warnings.

* libbfd.h (struct artdata):  Add armap_timestamp and armap_datepos.
(bfd_flush, bfd_stat):  Add prototypes.
* libbfd.c (bfd_flush):  Add, does fflush on a BFD.
(bfd_stat):  Add, does fstat on a BFD.

* archive.c (_bfd_write_archive_contents): At end of file writing,
verify and possibly update the timestamp in the armap, if a BSD
archive.  FIXME!  Kludge recognizes BSD archive, rather than
vectoring properly.  Should add to xvec.
(compute_and_write_armap):  Move prototype to top, avoid PROTO.
(bsd_write_armap): Save timestamp and file location thereof, when
writing the armap in a BSD file.
(bsd_update_armap_timestamp):  New function to check and
rewrite the timestamp.
1993-09-14 04:13:43 +00:00
Jim Kingdon
66eca5ee10 add som.c and som.h 1993-09-13 22:51:51 +00:00
Jim Kingdon
4793011a34 * hosts/i386sco.h: Define a bunch of stuff for core files.
* sco-core.c: Remove, replace by trad-core.c.
	* trad-core.c: If HOST_STACK_START_ADDR is defined, use it.
	* config/i386sco.mh: Use trad-core not sco-core.
	* hosts/i386isc.h, config/i386isc.mh: Remove.
	* configure.host: Use i386sco for isc.
	* config/i386-sco.mt: Remove, identical to i386-coff.mt.
	* config.bfd: Use i386-coff not i386-sco.
1993-09-12 05:09:08 +00:00
Jim Kingdon
d36bdf4005 * config.bfd: Recognize i[34]86-*-solaris2* specifically rather
than using *-*-solaris2* (i486-unknown-solaris2 is i386-elf, not
	i486-elf which doesn't exist).
1993-09-12 01:16:45 +00:00
Ian Lance Taylor
bccf35217e * coffswap.h (coff_swap_aouthdr_out): For ALPHAECOFF, force
padding field to zero.
1993-09-10 21:54:32 +00:00
Ian Lance Taylor
1964686f00 * config.bfd (i[34]86-*-netbsd*): New target; use i386-netbsd.
* configure.in: Remove bogus netbsd386 handling.
1993-09-10 17:10:13 +00:00
Ian Lance Taylor
5f9b59542f * coff-mips.c: Don't warn about overflow for MIPS_R_JMPADDR reloc.
Correct overflow detection requires matching the upper four bits
	of the destination against the PC.
1993-09-10 17:00:49 +00:00
Ken Raeburn
ffe2639825 * configure.in: Make 64-bit stuff work with "--with-targets=all". 1993-09-09 21:03:20 +00:00
Ian Lance Taylor
23f44e6f1a * libbfd-in.h: Removed swapping routines declarations.
* bfd-in.h: Added swapping routine declarations, and renamed them
	from _do_* to bfd_*.
	* libbfd.c: Renamed swapping routines from _do_* to _bfd_*.
	* Changed all callers.
	* libbfd.h, bfd-in2.h: Rebuilt.
1993-09-07 18:32:33 +00:00
Ian Lance Taylor
f3e8b15d8e * elf32-i386.c (elf_howto_table): Set pcrel_offset to true for
R_386_PC32.
1993-09-07 15:45:42 +00:00
Ken Raeburn
c6d33b2ff2 configure.in, libbfd, elf, elf-hppa (utah) changes 1993-09-03 20:24:07 +00:00
Ken Raeburn
7adbe989b6 Reorganized setting of makefile variables so 64-bit stuff works again. 1993-09-03 20:13:31 +00:00
Ken Raeburn
3a70b01d63 more changes from Utah, see log for details 1993-09-03 20:12:51 +00:00
Ken Raeburn
ee8cb54804 Deleted some fields of elf*_symbol_type and elf_obj_tdata that were getting
set but not used.  Merged elf*_symbol_type into a single elf_symbol_type.
1993-09-03 20:12:05 +00:00
Ken Raeburn
bc750ff1c1 regenerated after doc fix 1993-09-03 20:09:31 +00:00
Ken Raeburn
6affd66ac1 (_do_get*, _do_put*): Renamed via macros to clean up namespace. 1993-09-03 20:04:52 +00:00
Jim Kingdon
e808f62943 * libhppa.h (hppa_field_adjust): Remove unused `init_value' variable. 1993-09-02 19:24:33 +00:00
Jim Kingdon
aa93c577df * hosts/delta88v4.h: New for SVR4.
* configure.hosts: Use it.
1993-09-02 06:06:40 +00:00
Jim Kingdon
d44759e1c0 new for /proc support on svr4 delta88 1993-09-02 05:57:31 +00:00
Jim Kingdon
f6fcc08262 * libaout.h, netbsd386.c: Change M_I386 to M_386_NETBSD. M_I386
is an SCO pre-define.
1993-09-01 19:28:53 +00:00
Ian Lance Taylor
45a78ebbfb * nlmcode.h (nlm_object_p): Set HAS_SYMS if there are external
references.
	(nlm_swap_auxiliary_headers_{in,out}): The copyright length is
	only one byte.
	(nlm_get_symtab_upper_bound): Include debugging symbols in symbol
	count.
	(nlm_slurp_symbol_table): Make symlength unsigned.  Read debugging
	symbols as BFD local symbols.
	(nlm_write_object_contents): Don't bother writing out exported
	symbols more than once; they now appear in the symbol table more
	than once (with and without a prefix) if necessary.  Set offset
	values to be non-zero as NLMLINK does.
1993-08-31 17:28:03 +00:00
Jim Kingdon
aef3ae9a8f * libhppa.h: Restore #undefs of e_fsel and other e_* symbols. 1993-08-31 17:11:46 +00:00
Ken Raeburn
b2ae9efbe0 regenerated after section.c changes 1993-08-28 00:35:56 +00:00
Ken Raeburn
5f05dcd9ac section.c, hppa changes 1993-08-28 00:17:05 +00:00
Ken Raeburn
94772e9b80 %$#@ cvs bugs 1993-08-28 00:16:15 +00:00
Ken Raeburn
01619b8b80 More patches from Jeff Law, plus a little cleanup of my own.
These changes separate PA-SOM support from PA-ELF support.
A sun4-x-hppaosf assembler can now be built.

Include <stdlib.h> and <unistd.h>.  Do not define malloc or free.
1993-08-28 00:12:52 +00:00
Ken Raeburn
d9ad93bce5 More patches from Jeff Law, plus a little cleanup of my own.
These changes separate PA-SOM support from PA-ELF support.
A sun4-x-hppaosf assembler can now be built.

* elf32-hppa.c (elf_hppa_howto_table): Now static.
(symext_rootP, symext_lastP, global_value, GOT_value, global_symbol,
global_sym_defined, symextn_contents, symextn_contents_real_size,
elf_hppa_stub_rootP, elf32_hppa_symextn_map, elf32_hppa_symextn_map_size): Rely
on default initialization.
(hppa_elf_gen_reloc_type): Macro "UNDEFINED" doesn't need a trailing semicolon.
(hppa_look_for_stubs_in_section): Introduce temporaries to make code more
readable in 80 columns.

* libhppa.h (all functions): Now inline under GNU C.

* elf32-hppa.c (AR_WARN): Give argument which caused the invalid argument
relocation.
(AR_UNIMP): Delete unused macro.
(hppa_elf_set_section_contents): Always return a value.
(elf32_hppa_backend_table_processing): Likewise.
(elf32_hppa_backend_section_processing: Likewise.

* som.c: New file containing SOM specific code extracted from hppa.c

* som.h: New file containing SOM specific code extracted from libhppa.h

* hppa.c: Deleted.

* libhppa.h: Delete SOM specific code.  Add generic PA code which can be shared
by both SOM and ELF backends.

* Makefile.in: Replace hppa.c with som.c.  elf32-hppa.o depends on libhppa.h
now.

* configure.in (hppa_vec): Needs som.o module instead of hppa.o.

* elf32-hppa.c: Include libhppa.h.  Do not define BYTES_IN_WORD.

* elf32-hppa.h (hppa_reloc_field_selector_type): Delete now lives in libhppa.h.
(hppa_reloc_field_selector_type_alt): Likewise.

* elf32-hppa.c (hppa_elf_relocate_unwind_table): Delete unused variables.
(elf_hppa_reloc_type_lookup): Likewise.
(elf_hppa_tc_make_sections): Likewise.
(hppa_elf_arg_reloc_needed_p): Likewise.
(hppa_elf_build_long_branch_stub): Likewise.
(elf_reloc_map): Delete, no longer used.
(elf_hppa_reloc_map): Likewise.
(elf32_hppa_symextn_map_max_size): Likewise.
(elf32_hppa_get_sym_extn): Abort if type is bogus.

* elf32-hppa.c (elf32_hppa_backend_fake_sections): Add processing
of the .hppa_unwind section.
1993-08-28 00:10:54 +00:00
Ken Raeburn
78e1e6d95a removed some "#if 0" code 1993-08-27 23:59:37 +00:00
Ken Raeburn
a8a4b6b5d9 (struct sec): Move position of user_set_vma, and document it.
(SEC_BALIGN): Disable for now.  I don't think it's currently used.
1993-08-27 23:56:49 +00:00
Ken Raeburn
5d22adf110 deleted -- no longer accurate 1993-08-27 19:44:58 +00:00
Ken Raeburn
3ba17f70f0 make config.bfd executable 1993-08-26 20:29:28 +00:00
Ken Raeburn
e2a422b84c Merged in changes from Jeff Law and Pete Hoogenboom at Utah for PA ELF
support.  Compiles, not particularly well tested.  See ChangeLog for details.
1993-08-25 01:15:07 +00:00
Jim Kingdon
ae33833d63 add ChangeLog entry for sef change to aoutx.h 1993-08-23 20:29:54 +00:00
David D. Zuhn
3d7de4c290 config.sub also has v9 code 1993-08-23 19:41:49 +00:00
Jim Kingdon
c28096f36a Write (half-assed) ChangeLog entry for sef changes.
Change name of target from netbsd-386 to a.out-netbsd-386 so that GDB
can recognize it as an a.out variant.
1993-08-23 19:35:33 +00:00
Sean Eric Fagan
05c81f45b4 Add support for netbsd386 (almost-but-not-quite 386bsd). 1993-08-23 07:45:32 +00:00
Sean Eric Fagan
fbd5481a2e Don't let netbsd386.c get sanitized out. 1993-08-23 07:43:25 +00:00
Jim Kingdon
8d3ad2528f * config/m88k-elf.mt: New file.
* config.bfd: Use it for m88*-*-sysv4*.
1993-08-21 00:52:58 +00:00
Ken Raeburn
d24928c05b * elfcode.h (elf_build_phdrs): Unused function deleted.
(bfd_shdr_from_section): Ditto.
(write_relocs): Don't change section contents for addend.
(elf_locate_sh): Return type is now always elf_internal_shdr, since the other
types were really aliases for this type anyways.  Don't compile this function,
since it is static and doesn't appear to be used in this file.
(sym_is_global): Return non-zero for weak symbols.  Abort if sec ptr is null.
(swap_out_syms): Reorder tests so function symbols can be weak.
(elf_slurp_symbol_table): Don't use BSF_EXPORT.
(elf_slurp_reloca_table): Make RELOC_PROCESSING section smaller by
extracting out some common code.  Abort if BFD section symbol has null name.
(elf_slurp_reloc_table): Translate ELF section symbols into BFD section
symbols.  Don't read section contents to fill in addend field.

* Merged from OSF:

Tue Jun 15 14:38:32 1993  Michael Meissner  (meissner@osf.org)

* libelf.h (struct Elf_Sym_Extra): New structure to contain ELF
specific information for a symbol.  Put in elf_sym_num, which
gives the external symbol number in the elf object file, since
local symbols must come before global symbols.
(elf_sym_extra): New macro.
(elf_symtab_map): Delete, in favor of using Elf_Sym_Extra.
* elfcode.h (elf_map_symbols): Use Elf_Sym_Extra to map internal
symbol number to external number.  Store the address of the
Elf_Sym_Extra field for the symbol in the udata field.
(elf_write_object_contents): Use Elf_Sym_Extra to map out symbols.

Sun Jun 20 16:30:11 1993  Michael Meissner  (meissner@osf.org)

* elfcode.h (elf_obj_tdata): Add field to count the size of the
array of pointers to section symbols.
(elf_map_symbols): Bump the max index of the section symbols so
that we don't overwrite memory.  Store the max index into the
elf_obj_tdata field.

Sat Jun 19 10:12:27 1993  Michael Meissner  (meissner@osf.org)

* elfcode.h (elf_obj_tdata): Add pointer to an array of pointers
to the section symbols we created.  Remove unused field internal_syms.
(elf_map_symbols): Fill in array of pointers to section symbols.  Only create
section symbols for sections that have SEC_ALLOC set, and have non-zero size.
(elf_symbol_from_bfd_symbol): If udata is NULL, and this is a section symbol,
look up the section in the list of section symbols, and set the udata pointer
appropriately.  Otherwise, if udata is still NULL, fail an assertion, and use
0, instead of dropping core.
1993-08-20 22:21:49 +00:00
Ken Raeburn
7bece32411 * elf32-i386.c (elf_howto_table): All partial_inplace fields should be "true". 1993-08-20 21:18:56 +00:00
Ian Lance Taylor
03f4cf996a * config.bfd (mips-*-elfl*, mips-*-elf*): New targets, using
mipslelf and mipsbelf respectively.
	* config/mipslelf.mt, config/mipsbelf.mt: New files.
	* elf32-mips.c: Added some reloc information.
	* configure.in: Fixed error message.
1993-08-20 19:19:51 +00:00
Ken Raeburn
52f94fc486 minor doc tweaks 1993-08-20 19:10:58 +00:00
Ian Lance Taylor
5a735b6353 * ecoff.c (ECOFF_LONG_SIZE): Removed. Just use constants. 1993-08-20 16:21:45 +00:00
David MacKenzie
010877137c * Makefile.in (BFD_LIBS, ALL_MACHINES, BFD32_BACKENDS, BFD64_BACKENDS,
OPTIONAL_BACKENDS): Alphabetize entries and add a few missing ones.
	* archures.c: Alphabetize decls.
1993-08-19 21:07:50 +00:00
David MacKenzie
315b021faa add more missing vectors 1993-08-19 19:45:23 +00:00
David MacKenzie
c8e1d00b19 targets.c (target_vector): Remove hp300bsd_vec due to clash with sunos_big_vec. 1993-08-19 19:11:30 +00:00
David MacKenzie
cf39664e3c Thu Aug 19 09:45:51 1993 David J. Mackenzie (djm@thepub.cygnus.com)
* configure.in, targets.c: Add missing vectors to the tables.
	* targets.c (target_vector) [!SELECT_VECS]: Add DEFAULT_VECTOR.
1993-08-19 18:21:58 +00:00
Jim Kingdon
890eafc0e1 * 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>.
1993-08-18 05:10:45 +00:00
Jim Kingdon
13cadf768b * 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>.
1993-08-18 00:54:48 +00:00
Jim Kingdon
5670002f8f replaced by i386mach3.h 1993-08-17 23:11:08 +00:00
Jim Kingdon
5cd493edad new for mach 1993-08-17 22:50:20 +00:00
Ian Lance Taylor
da6102634a * 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.
1993-08-17 22:30:24 +00:00
Ian Lance Taylor
ec83e70497 * coff-rs6000.c (dummy_reloc, RTYPE2HOWTO): Set howto field to a
dummy value, rather than leaving it NULL.
1993-08-17 20:11:39 +00:00
Ian Lance Taylor
2e235c9319 * 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.
1993-08-17 19:24:21 +00:00
David MacKenzie
49df10b142 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.
1993-08-17 16:43:52 +00:00
Jim Kingdon
e45500abea * configure.host: Make sure all OS fields end in *. 1993-08-16 02:09:54 +00:00
Ian Lance Taylor
1095e08dba * 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.
1993-08-13 20:38:02 +00:00
David MacKenzie
cba949c5a3 * format.c (bfd_check_format): If the target matches the default
target, set match_count to 1, to ignore any previous matches.
1993-08-13 00:34:19 +00:00
Ian Lance Taylor
f487c0e8ee Tipo. 1993-08-12 22:16:07 +00:00
Ian Lance Taylor
8f46bac815 * coff-aplha.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.
1993-08-12 22:15:25 +00:00
David MacKenzie
1461600216 keep config.bfd 1993-08-12 20:30:39 +00:00
David MacKenzie
d97523aa34 * Makefile.in (BFD32_BACKENDS): Remove srec.o, add reloc16.o. 1993-08-12 19:09:00 +00:00
Ian Lance Taylor
bb138b644e * 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.
1993-08-12 18:47:18 +00:00
David MacKenzie
ac0d500c3c * 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.
1993-08-12 18:41:30 +00:00
David MacKenzie
180acef58b Thu Aug 12 10:32:47 1993 David J. Mackenzie (djm@thepub.cygnus.com)
* 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.

	* 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.
1993-08-12 17:57:02 +00:00
David MacKenzie
22d276b1c0 Finish the minimizing, the right way (using normal target names).
Thu Aug 12 10:32:47 1993  David J. Mackenzie  (djm@thepub.cygnus.com)

	* 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.

	* 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.
1993-08-12 17:55:52 +00:00
Ian Lance Taylor
8e2184bda0 * bfd.c (_bfd_host_big_endian): Removed.
* bfd-in.h (HOST_BYTE_ORDER_BIG_P, bfd_header_twiddle_required):
	Removed.
	* bfd-in2.h: Regenerated.
1993-08-12 15:33:12 +00:00
David MacKenzie
a339de272f more cleanups 1993-08-12 02:32:34 +00:00
David MacKenzie
3c957a61b3 really do last change 1993-08-11 23:24:06 +00:00
David MacKenzie
161bb4082c * configure.in: Include coff-m68k.o for m68kcoffun_vec.
Include nlm32.o and nlm.o for bfd_nlm32_i386_vec.
1993-08-11 23:22:06 +00:00
David MacKenzie
1a10f9a2dd Make bfd_error_vector extern. 1993-08-11 22:37:23 +00:00
David MacKenzie
c4726c0fe3 Include stab-syms.o for a.out/b.out targets and hp300{bsd,hpux}. 1993-08-11 19:16:21 +00:00
Ian Lance Taylor
792b5f025d * 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.
1993-08-11 18:30:08 +00:00
Ian Lance Taylor
e2f4c2884c * 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.

Not needed for gdb 4.10.
1993-08-11 15:56:14 +00:00
Ian Lance Taylor
fbffaf55b8 * ecoffswap.h (ecoff_swap_{hdr,ext}_{in,out}): Use signed
conversions for some fields.
1993-08-11 13:42:17 +00:00
Ian Lance Taylor
53a6ff7e1d * 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.
1993-08-10 17:41:17 +00:00
David MacKenzie
7505d16f52 Replace calls to sort with shell code 1993-08-10 16:35:12 +00:00
Ken Raeburn
509f081ec9 configure.in: Include aout32.o for any a.out/b.out formats. 1993-08-10 16:23:32 +00:00
David MacKenzie
505f714f81 support COFF on ELF systems 1993-08-10 05:01:12 +00:00
Ken Raeburn
e5c5fbca67 include elf doc 1993-08-09 20:31:30 +00:00
K. Richard Pixley
5757d35bba config/m88k-coff.mt (DEFAULT_VEC -> DEFAULT_VECTOR): renamed. 1993-08-09 20:17:40 +00:00
Ian Lance Taylor
41efeb59a0 * bfd-in.h (bfd_get_architecture, bfd_get_machine): Removed
obsolete macros.
	* bfd-in2.h: Updated.
1993-08-09 20:08:16 +00:00
Ken Raeburn
e543618c75 code changes to syms.c bfd.c 1993-08-09 19:27:43 +00:00
Ken Raeburn
ef758f3ee8 regenerated 1993-08-09 19:25:56 +00:00
Ken Raeburn
36d701ab49 sanitize targets.c 1993-08-09 19:16:24 +00:00
Ian Lance Taylor
3036933a88 * ecoff.c (ecoff_slurp_armap): Correct bug in initialization of
stringbase.
1993-08-09 18:32:39 +00:00
David MacKenzie
aedc02dff0 remove unused test 1993-08-08 19:22:54 +00:00
Jim Kingdon
810a7a82a0 * Makefile.in ({dist,real}clean): Use $(MAKE), not make. 1993-08-08 17:47:17 +00:00
David MacKenzie
105ceb6a62 cleanup 1993-08-08 02:14:01 +00:00
David MacKenzie
61434ebb73 add pointer to config/README 1993-08-07 22:45:02 +00:00
David MacKenzie
2e39bde39f document bfdsumm.texi 1993-08-07 22:43:02 +00:00
David MacKenzie
5f9a2245d8 make target selection fully configurable 1993-08-07 22:38:22 +00:00
Fred Fish
9ea71abfcf * 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.
1993-08-07 14:46:21 +00:00
David MacKenzie
dcdfa32cec cleanups 1993-08-07 01:35:00 +00:00
David MacKenzie
493a259370 add hp300bsd to default target vector 1993-08-06 20:11:42 +00:00
Ian Lance Taylor
70bec8b806 * ecoff.c (ecoff_set_symbol_info): Removed special handling for
scBss and scSBss symbols, since it was wrong.
1993-08-06 20:04:22 +00:00
Ken Raeburn
153cb9ade3 * 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.
1993-08-06 19:29:57 +00:00
Ian Lance Taylor
014e4e9981 * Makefile.in (coff-mips.o, coff-alpha.o): Don't depend on
coffcode.h.
1993-08-06 19:17:36 +00:00
Ian Lance Taylor
c39fcfdca8 * coffcode.h (sec_to_styp_flags): Inspired by mb@tti.COM (Michael
Bloom): Only set STYP_BSS for SEC_ALLOC sections.
1993-08-06 19:12:47 +00:00
Ian Lance Taylor
8c11363a29 * ecoff.c (ecoff_slurp_armap): From Arne Henrik Juul
<arnej@kari.fm.unit.no>: Handle a COFF style armap.
1993-08-06 16:39:44 +00:00
Jim Kingdon
a61a4125ed * hpux-core.c: Cast return value from bfd_zalloc. 1993-08-06 15:06:23 +00:00
Ken Raeburn
b12193c073 Makefile.in, bfd-in.h, reloc, elf32-i386, elfcode changes 1993-08-05 19:23:43 +00:00
Ken Raeburn
b66b07a292 regenerated 1993-08-05 18:36:19 +00:00
Ken Raeburn
e74034d81a 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.
1993-08-05 18:32:50 +00:00
Ken Raeburn
1fa5371efb rewrite comment -- bfd-in2.h is generated too 1993-08-05 18:27:16 +00:00
Ken Raeburn
a49880c83d add i386-elf relocs (from Meissner) 1993-08-05 18:24:21 +00:00
Ken Raeburn
15db204498 (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.
1993-08-05 18:20:20 +00:00
Fred Fish
8b97737768 * 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.
1993-08-05 17:22:58 +00:00
David MacKenzie
ebdb7db782 fix line numbers 1993-08-05 02:47:20 +00:00
Ian Lance Taylor
7389debf1c * 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.
1993-08-04 20:25:53 +00:00
Ian Lance Taylor
e4b6b3e71b * 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.
1993-08-04 16:36:10 +00:00
Ian Lance Taylor
48edba8191 With these changes, the binutils mostly work on the Alpha, except for
objdump -r.

	* 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.
1993-08-04 01:37:25 +00:00
David MacKenzie
5d4c714ebd fix syntax error 1993-08-04 00:28:19 +00:00
David MacKenzie
eca6fef226 make a common extern 1993-08-03 23:37:45 +00:00
Fred Fish
b6e7553c42 * nlm_slurp_symbol_table: Don't use '&' on arrays. 1993-08-03 22:22:13 +00:00
Ian Lance Taylor
dae31cf51b * 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.
1993-08-03 20:22:47 +00:00
John Gilmore
e49d537916 * elf32-hppa.h, hosts/*: Remove (one more time) all occurrances
of EXFUN in the BFD sources.  Heave ho!
1993-08-03 06:36:30 +00:00
Fred Fish
b5ed6e32c2 Remove '.Sanitize' from explicit list of Things-to-lose. It is now implicitly
added to the list by Sanitize, unless Sanitize knows it needs to keep it.
1993-08-02 23:29:32 +00:00
David D. Zuhn
19d06401a4 remove some conflicting decls 1993-08-02 19:18:38 +00:00