Ian Lance Taylor [Fri, 7 Jan 1994 01:21:37 +0000 (01:21 +0000)]
* targets.c (target_vector): Added nlm32_alpha_vec inside #ifdef
BFD64.
* Makefile.in (BFD32_BACKENDS): Remove nlm32-alpha.o.
(BFD64_BACKENDS): Add nlm32-alpha.o. It depends on 64 bit
support, even though it is for an Alpha in 32 bit mode.
* configure.in (nlm32_alpha_vec): Set target64 to true.
* nlm32-gen.c, nlm64-gen.c: Removed. All nlm targets are
different, so there is no point to providing a generic one.
* libnlm.h: Don't bother to check for nlm_backend(bfd) being NULL
in the backend accessor macros; that should no longer be possible.
* targets.c (target_vector): Removed nlm32_big_generic_vec,
nlm64_big_generic_vec, nlm64_little_generic_vec.
* configure.in (nlm32_big_generic_vec, nlm32_little_generic_vec,
nlm64_big_generic_vec, nlm64_little_generic_vec): Removed.
* Makefile.in: Rebuilt dependencies, and
(BFD32_BACKENDS): Removed nlm32-gen.o.
(BFD64_BACKENDS): Removed nlm64-gen.o.
(CFILES): Removed nlm32-gen.c and nlm64-gen.c.
Ian Lance Taylor [Fri, 7 Jan 1994 01:15:41 +0000 (01:15 +0000)]
* configure.in: Correct test for --with-gnu-as and
--with-gnu-ld to not get confused by substring matches.
Ken Raeburn [Thu, 6 Jan 1994 23:17:44 +0000 (23:17 +0000)]
fix sparc-solaris reloc bug
Jim Kingdon [Thu, 6 Jan 1994 23:09:53 +0000 (23:09 +0000)]
* symtab.c (lookup_symbol): Don't try adding .c to the name.
David MacKenzie [Thu, 6 Jan 1994 22:26:18 +0000 (22:26 +0000)]
* aoutx.h (translate_to_native_sym_flags): Catch the case where
there is no output section.
Ian Lance Taylor [Thu, 6 Jan 1994 22:18:59 +0000 (22:18 +0000)]
* hp300hpux.c (ARCH_SIZE): Define before including aoutx.h.
Jim Kingdon [Thu, 6 Jan 1994 21:55:18 +0000 (21:55 +0000)]
* remote-bug.c: At the start of each section, reset srec_frame
back to 160.
Ian Lance Taylor [Thu, 6 Jan 1994 21:11:10 +0000 (21:11 +0000)]
* configure.in: Don't issue warnings about directories which are
not being configued if -norecursion is set.
Jim Kingdon [Thu, 6 Jan 1994 20:51:19 +0000 (20:51 +0000)]
* target.h: Add TARGET_WAITKIND_LOADED and TARGET_WAITKIND_SPURIOUS.
* target.c (store_waitstatus): Add CHILD_SPECIAL_WAITSTATUS hook.
* infrun.c (wait_for_inferior): Replace SIGTRAP_STOP_AFTER_LOAD with
code which looks for those two waitkinds. Use switch statement.
* config/rs6000/tm-rs6000.h: Replace SIGTRAP_STOP_AFTER_LOAD with
CHILD_SPECIAL_WAITSTATUS.
David MacKenzie [Thu, 6 Jan 1994 20:37:47 +0000 (20:37 +0000)]
fix comments
Ian Lance Taylor [Thu, 6 Jan 1994 20:05:44 +0000 (20:05 +0000)]
Various entries.
Ian Lance Taylor [Thu, 6 Jan 1994 20:04:43 +0000 (20:04 +0000)]
* ecoff.c: First cut at new style of linker backend for
ECOFF--added a bunch of functions. Also:
(ecoff_sec_to_styp_flags): Set flags for .pdata and .xdata.
(ecoff_slurp_symbolic_header): New function.
(ecoff_slurp_symbolic_info): Call ecoff_slurp_symbolic_header.
(ecoff_compute_reloc_file_positions): New function.
(ecoff_set_section_contents): Get out quickly if count is zero.
Check errors better.
(ecoff_write_object_contents): Put .xdata section in data segment.
Call ecoff_compute_reloc_file_positions. Don't output relocs or
external symbols if outsymbols is NULL.
(ecoff_bfd_final_link): Completely rewritten.
* libecoff.h: Include bfdlink.h.
(struct ecoff_backend_data): Add relocate_section field.
(ecoff_data_type): Add sym_hashes and symndx_to_section fields.
(struct ecoff_link_hash_entry): Define.
(struct ecoff_link_hash_table): Define.
(ecoff_bfd_link_add_symbols): Declare as function, not macro.
(ecoff_bfd_link_hash_table_create): Likewise.
* ecofflink.c (bfd_ecoff_debug_one_external): New function.
(bfd_ecoff_debug_externals): Call bfd_ecoff_debug_one_external.
* bfd-in.h (bfd_ecoff_debug_one_external): Declare.
* bfd-in2.h: Rebuilt.
* coff-alpha.c (alpha_howto_table): Mark BRADDR as
partial_inplace, and set the src_mask to 0x1fffff.
(alpha_ecoff_get_relocated_section_contents): Remove unused
variable gp_warned.
(alpha_convert_external_reloc): New static function.
(alpha_relocate_section): New static function.
(alpha_ecoff_backend_data): Initialize relocate_section field.
* coff-mips.c (mips_relocate_refhi): New static function.
(mips_relocate_section): New static function.
(mips_ecoff_backend_data): Initialize relocate_section field.
Ian Lance Taylor [Thu, 6 Jan 1994 20:04:26 +0000 (20:04 +0000)]
* ldmain.c (add_to_set): Add bitsize argument.
(constructor_callback): New function.
(link_callbacks): Add constructor_callback.
* ldctor.c (struct set_info): Add bitsize field.
(ldctor_add_set_entry): Add bitsize argument.
(ldctor_build_sets): Base the size of the elements of the set on
the bitsize, rather than always using LONG.
* ldctor.h (ldctor_add_set_entry): Add bitsize to declaration.
Ian Lance Taylor [Thu, 6 Jan 1994 20:02:49 +0000 (20:02 +0000)]
* aoutx.h (NAME(aout,final_link)): Don't abort when trying to link
a non a.out file, just pass it to _bfd_default_link_order.
(aout_link_input_section_std): When doing a final PC relative link
against a section symbol, subtract the VMA of the input section.
(aout_link_input_section_ext): Likewise.
Ian Lance Taylor [Thu, 6 Jan 1994 20:01:42 +0000 (20:01 +0000)]
* linker.c (_bfd_generic_link_add_one_symbol): Add constructor and
bitsize arguments. Changed all callers (aoutx.h).
(default_indirect_link_order): Renamed from
_bfd_generic_indirect_link_order and made static.
(_bfd_generic_final_link): Don't switch on link_order type, just
call _bfd_default_link_order.
(_bfd_default_link_order): Handle bfd_indirect_link_order type.
* genlink.h: Removed declaration of
_bfd_generic_indirect_link_order.
* elf32-mips.c (mips_elf_final_link): Don't switch on link_order
type, just call _bfd_default_link_order.
David MacKenzie [Thu, 6 Jan 1994 19:49:06 +0000 (19:49 +0000)]
* binutils.texi: Add a chapter summarizing the ways to select
aspects of the target for each program.
* objdump.c (long_options, usage): Add long equivalents for all
remaining short options that lacked them.
* binutils.texi objdump.1: Document them.
* size.c (usage): Tweak usage message.
* size.1: Add missing `=' in examples.
* binutils.texi strip.1 objcopy.1 nlmconv.1 objcopy.c nlmconv.c:
Use "--target=bfdname" as the option to select the BFD target,
like nm and size already do.
Reserve "--format=format" for textual output selection options, but
for now keep old option names as obsolete for backward compatibility.
* strings.c (main, strings_object_file, usage): Add --target option.
* binutils.texi strings.1: Document it.
Ian Lance Taylor [Thu, 6 Jan 1994 19:38:36 +0000 (19:38 +0000)]
* ld.h (QUAD_SIZE): Define.
* ldgram.y (QUAD): New token.
(length): Handle it.
* ldlex.l: Return QUAD.
* lexsup.c (keywords): Add QUAD.
* ldwrite.c (build_link_order): Handle QUAD.
* ldlang.c (print_data_statement): Handle QUAD.
(lang_size_sections): Likewise.
(lang_do_assignments): Likewise.
* ldexp.c (exp_print_token): Add QUAD to table.
* ld.texinfo: Describe QUAD.
Jim Kingdon [Thu, 6 Jan 1994 16:34:51 +0000 (16:34 +0000)]
* procfs.c (procfs_wait): Fix argument name to match 4 Jan changes.
* Move target_signal_from_host, target_signal_to_host, and
store_waitstatus from inftarg.c to target.c. procfs needs them.
* target.c: Include "wait.h" and <signal.h>.
* target.h, infrun.c (proceed), proceed callers: Pass new code
TARGET_SIGNAL_DEFAULT instead of -1. This avoids problems with
enums being treated as unsigned and is cleaner.
* infrun.c (signals_info): Don't print TARGET_SIGNAL_DEFAULT or
TARGET_SIGNAL_0.
* infcmd.c (signal_command), infrun.c (signals_info):
Don't allow user to specify numeric equivalent of
TARGET_SIGNAL_DEFAULT.
Ian Lance Taylor [Thu, 6 Jan 1994 16:22:31 +0000 (16:22 +0000)]
* configure.in: Don't build gas for alpha-dec-osf1*.
Ian Lance Taylor [Thu, 6 Jan 1994 06:09:22 +0000 (06:09 +0000)]
* config/tc-mips.c (mips_ip): Warn about using $1 as well as $at
without .set noat.
Rob Savoye [Thu, 6 Jan 1994 05:43:20 +0000 (05:43 +0000)]
Tweaked to work with either version of expect.
Ian Lance Taylor [Thu, 6 Jan 1994 05:14:48 +0000 (05:14 +0000)]
* scripttempl/alpha.sc: Don't create .lit4 or .sdata sections,
since the Alpha doesn't use them.
David MacKenzie [Thu, 6 Jan 1994 01:57:11 +0000 (01:57 +0000)]
* ldemul.h (ld_emulation_xfer_struct): Comment the members.
Ken Raeburn [Thu, 6 Jan 1994 01:17:18 +0000 (01:17 +0000)]
Makefile.in, as.h changes
Ken Raeburn [Thu, 6 Jan 1994 01:16:51 +0000 (01:16 +0000)]
include literal.c, .o
Ken Raeburn [Thu, 6 Jan 1994 01:14:04 +0000 (01:14 +0000)]
new file literal.c
Ken Raeburn [Thu, 6 Jan 1994 01:11:05 +0000 (01:11 +0000)]
tc-mips.h, subsegs.c changes
Ken Raeburn [Thu, 6 Jan 1994 01:10:35 +0000 (01:10 +0000)]
(TARGET_FORMAT) [OBJ_AOUT]: Fix for new names in bfd.
Ken Raeburn [Thu, 6 Jan 1994 01:07:04 +0000 (01:07 +0000)]
* ecoff.h (STYP_EXTENDESC, STYP_COMMENT, STYP_XDATA, STYP_PDATA): Define.
Ian Lance Taylor [Wed, 5 Jan 1994 21:59:00 +0000 (21:59 +0000)]
* ecoff.h (NUM_RELOC_SECTIONS): Define.
David D. Zuhn [Wed, 5 Jan 1994 19:35:44 +0000 (19:35 +0000)]
fix comment delimiters
Rob Savoye [Wed, 5 Jan 1994 05:26:47 +0000 (05:26 +0000)]
* config/ho-vsta.h, configure.in, .Sanitize: Add support for VSTa
micro-kernel.
Rob Savoye [Wed, 5 Jan 1994 05:21:34 +0000 (05:21 +0000)]
Add default values for AS and ASFLAGS.
Stu Grossman [Wed, 5 Jan 1994 01:14:41 +0000 (01:14 +0000)]
* configure: Back out Per's change of 12/19/1993. It changes the
behavior of configure in unexpected and confusing ways.
Also, use different delim char when calculating
program_transform_name so that the name can contain slashes.
Stu Grossman [Tue, 4 Jan 1994 23:43:28 +0000 (23:43 +0000)]
* config/alpha/alpha-netware.mt: New target support for Alpha
running Netware.
* configure.in: Add alpha-*-netware* target.
Stan Shebs [Tue, 4 Jan 1994 23:35:56 +0000 (23:35 +0000)]
Tue Jan 4 15:12:43 1994 Stan Shebs (shebs@andros.cygnus.com)
* Makefile.in (INCLUDES): Add $(srcdir)/.. to places to search.
* config/obj-ecoff.c: Include files as "bfd/" instead of "../bfd/".
* app.c, flonum.h, hex-value.c (const): Change #if to be more
portable.
Stan Shebs [Tue, 4 Jan 1994 22:56:06 +0000 (22:56 +0000)]
Tue Jan 4 14:51:35 1994 Stan Shebs (shebs@andros.cygnus.com)
* remote-mips.c (mips_wait): Fix ref to TARGET_WAITKIND_STOPPED.
Jim Kingdon [Tue, 4 Jan 1994 21:53:53 +0000 (21:53 +0000)]
* target.h: Add enum target_waitkind, enum target_signal, and
struct target_waitstatus. Change status argument to target_wait to
be struct target_waitstatus * instead of int *.
* target.h, infrun.c, all targets: Change type of signal arguments
to resume(), proceed(), and target_resume() from int to enum
target_signal.
* All targets (*_wait, *_resume): Change accordingly.
* infcmd.c (program_info, signal_command), throughout infrun.c,
* fork-child.c, solib.c, hppa-tdep.c, osfsolib.c: Use this stuff.
* convex-xdep.c, convex-tdep.c: Add FIXME's (getting the Convex
signal code stuff right with the new signals would be non-trivial).
* inferior.h (stop_signal): Make it enum target_signal not int.
* target.c, target.h (target_signal_to_string, target_signal_to_name,
target_signal_from_name): New functions.
* inftarg.c, target.h (target_signal_to_host, target_signal_from_host,
store_waitstatus): New functions.
* procfs.c (procfs_notice_signals): Use them.
* i960-tdep.c (i960_fault_to_signal): New function, to replace
print_fault.
* config/i960/tm-i960.h: Don't define PRINT_RANDOM_SIGNAL.
Jim Kingdon [Tue, 4 Jan 1994 21:37:25 +0000 (21:37 +0000)]
* objfiles.c (build_objfile_section_table): Don't abort() if
objfile->sections is already set.
* objfiles.c (add_to_objfile_sections): Check SEC_ALLOC not SEC_LOAD
to match recent change to exec.c.
Jim Kingdon [Tue, 4 Jan 1994 21:36:04 +0000 (21:36 +0000)]
* target.h: Add enum target_waitkind, enum target_signal, and
struct target_waitstatus. Change status argument to target_wait to
be struct target_waitstatus * instead of int *.
* target.h, infrun.c, all targets: Change type of signal arguments
to resume(), proceed(), and target_resume() from int to enum
target_signal.
* All targets (*_wait, *_resume): Change accordingly.
* infcmd.c (program_info, signal_command), throughout infrun.c,
* fork-child.c, solib.c, hppa-tdep.c, osfsolib.c: Use this stuff.
* convex-xdep.c, convex-tdep.c: Add FIXME's (getting the Convex
signal code stuff right with the new signals would be non-trivial).
* inferior.h (stop_signal): Make it enum target_signal not int.
* target.c, target.h (target_signal_to_string, target_signal_to_name,
target_signal_from_name): New functions.
* inftarg.c, target.h (target_signal_to_host, target_signal_from_host,
store_waitstatus): New functions.
* procfs.c (procfs_notice_signals): Use them.
* i960-tdep.c (i960_fault_to_signal): New function, to replace
print_fault.
* config/i960/tm-i960.h: Don't define PRINT_RANDOM_SIGNAL.
Stan Shebs [Tue, 4 Jan 1994 21:20:25 +0000 (21:20 +0000)]
need GM ChangeLog
Stan Shebs [Tue, 4 Jan 1994 21:18:15 +0000 (21:18 +0000)]
fix the .Sanitize
Stan Shebs [Tue, 4 Jan 1994 21:14:04 +0000 (21:14 +0000)]
Mon Jan 3 10:47:37 1994 Stan Shebs (shebs@andros.cygnus.com)
* config.sub: Add MPW-related aliases.
* mpw-configure: New file, MPW version of configure.
* mpw-config.in: New file, MPW version of configure.in.
* mpw-xconfig.in: New file, addon to configure.in.
Mon Jan 3 12:42:45 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-xconfig.in: New file, mpw x mips configuration bits.
Rob Savoye [Tue, 4 Jan 1994 16:35:49 +0000 (16:35 +0000)]
Add vsta.mt and vsta.sh.
Jim Kingdon [Tue, 4 Jan 1994 14:58:43 +0000 (14:58 +0000)]
* Version 4.11.3.
* main.c (print_gdb_version): Change year to 1994.
* ChangeLog, ChangeLog-93: Split ChangeLog at 1994.
* Makefile.in (NONSRC): Add ChangeLog-93.
Jim Kingdon [Tue, 4 Jan 1994 14:45:11 +0000 (14:45 +0000)]
New for ChangeLog split
Stan Shebs [Tue, 4 Jan 1994 00:42:09 +0000 (00:42 +0000)]
Remove ChangeLog entry, since one change was backed out immediately and
the other never committed.
Stan Shebs [Tue, 4 Jan 1994 00:38:05 +0000 (00:38 +0000)]
Mon Jan 3 10:59:28 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-config.in: New file, MPW version of configure.in.
* mpw-make.in: New file, MPW version of Makefile.in.
* hosts/mpw.h: New file, MPW host definitions.
Mon Jan 3 13:00:07 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-xconfig.in: New file, mpw x mips configuration bits.
Stan Shebs [Tue, 4 Jan 1994 00:34:05 +0000 (00:34 +0000)]
Mon Jan 3 10:59:28 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-config.in: New file, MPW version of configure.in.
* mpw-make.in: New file, MPW version of Makefile.in.
* hosts/mpw.h: New file, MPW host definitions.
David MacKenzie [Tue, 4 Jan 1994 00:08:53 +0000 (00:08 +0000)]
* aout-target.h (MY(vec)): Add DYNAMIC to mask of object flags.
* aoutf1.h (NAME(aout,sunos4_write_object_contents)):
If the DYNAMIC flag is set, set it in the exec header.
* aoutx.h (NAME(aout,some_aout_object_p)): If the object is
dynamically linked, set the DYNAMIC flag in the BFD.
* libaout.h (N_SET_DYNAMIC): New macro.
(N_DYNAMIC): Add missing 0 in mask.
Ian Lance Taylor [Mon, 3 Jan 1994 22:42:12 +0000 (22:42 +0000)]
* bfd-in.h, hash.c: Change bfd_hash_allocate argument from size_t
to unsigned int, because size_t may not be defined in bfd.h.
* bfd-in2.h: Rebuilt.
Jim Kingdon [Mon, 3 Jan 1994 22:36:52 +0000 (22:36 +0000)]
* stabsread.c (read_type): Allow defining several type numbers
at once (e.g. "(1,2)=(3,4)="...).
Jim Kingdon [Mon, 3 Jan 1994 22:30:19 +0000 (22:30 +0000)]
* stabs.texinfo (String Field): Talk about defining several type
numbers at once.
Fix lint regarding changing node ELF Transformations to
ELF and SOM Transformations.
Stan Shebs [Mon, 3 Jan 1994 22:02:48 +0000 (22:02 +0000)]
Mon Jan 3 13:05:08 1994 Stan Shebs (shebs@andros.cygnus.com)
* syms.c (bfd_print_symbol_vandf): Change PTR to FILE *.
* hosts/irix4.h (exit): Declare properly.
Jim Kingdon [Mon, 3 Jan 1994 21:49:43 +0000 (21:49 +0000)]
* stabsread.c (read_enum_type): Use TARGET_INT_BIT not sizeof (int).
Ian Lance Taylor [Mon, 3 Jan 1994 21:36:02 +0000 (21:36 +0000)]
Entry for making swapping retrieval routines take const argument.
Ian Lance Taylor [Mon, 3 Jan 1994 21:28:43 +0000 (21:28 +0000)]
* bfd-in.h (bfd_get{b,l}[_signed_]{16,32,64}): Declare argument to
be a const pointer.
* bfd-in2.h: Rebuilt.
* libbfd.c (bfd_get{b,l}[_signed_]{16,32,64}): Declare argument to
be a const pointer.
* targets.c (bfd_target): Change swap function pointers
accordingly.
* archive.c (do_slurp_coff_armap): Change swap accordingly.
* aix386-core.c: Change NO_GET and NO_GETS accordingly.
* hppabsd-core.c, hpux-core.c, irix-core.c, osf-core.c,
ptrace-core.c, trad-core.c: Change NO_GET and NO_SIGNED_GET
accordingly.
Stan Shebs [Mon, 3 Jan 1994 20:58:02 +0000 (20:58 +0000)]
Mon Jan 3 11:44:29 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-config.in: New file, MPW version of configure.in.
* mpw-make.in: New file, MPW version of Makefile.in.
Mon Jan 3 12:54:35 1994 Stan Shebs (shebs@andros.cygnus.com)
* mpw-xconfig.in: New file, mpw x mips configuration bits.
Stan Shebs [Mon, 3 Jan 1994 19:39:01 +0000 (19:39 +0000)]
Mon Jan 3 11:35:26 1994 Stan Shebs (shebs@andros.cygnus.com)
* configure.in (*-*-lynxos*): Add stabs tests.
Ian Lance Taylor [Mon, 3 Jan 1994 18:27:24 +0000 (18:27 +0000)]
Renamed get_elt_at_filepos to _bfd_get_elt_at_filepos, and made it
non-static.
Jeff Law [Mon, 3 Jan 1994 18:08:43 +0000 (18:08 +0000)]
* gas/hppa/more.parse/labelbug.s: Add testcase for bug in last
app.c change
Ian Lance Taylor [Mon, 3 Jan 1994 18:05:19 +0000 (18:05 +0000)]
* libbfd-in.h (struct artdata): Added tdata field.
(_bfd_add_bfd_to_archive_cache): Declare.
(_bfd_snarf_ar_hdr): Renamed from snarf_ar_hdr.
* libbfd.h: Rebuilt.
* archive.c: Cleaned up some more.
(_bfd_generic_mkarchive, bfd_generic_archive_p): Initialize
pointer elements of artdata.
(_bfd_add_bfd_to_archive_cache): Renamed from add_bfd_to_cache.
(_bfd_snarf_ar_hdr): Renamed from snarf_ar_hdr.
(get_extended_arelt_filename, get_elt_at_filepos,
bfd_construct_extended_name_table, bfd_ar_hdr_from_filesystem,
compute_and_write_armap): Made static.
* ecoff.c: Some comment changes.
(ecoff_slurp_armap): Handle rename of snarf_ar_hdr. Set
ardata->tdata to raw_armap.
(ecoff_archive_p): Initialize pointer elements of artdata.
* coff-rs6000.c (rs6000coff_get_elt_at_filepos): Handle rename of
add_bfd_to_cache.
Jim Kingdon [Mon, 3 Jan 1994 17:20:09 +0000 (17:20 +0000)]
* breakpoint.c (frame_in_dummy): Check PC as well as frame.
Ian Lance Taylor [Mon, 3 Jan 1994 16:48:24 +0000 (16:48 +0000)]
* bfd.texinfo: Added Hash Tables node.
* Makefile.in (DOCFILES): Added hash.texi.
(SRCDOC): Added hash.c.
(hash.texi): New target.
Ian Lance Taylor [Mon, 3 Jan 1994 16:47:46 +0000 (16:47 +0000)]
* hash.c: Added some documentation.
Jim Kingdon [Mon, 3 Jan 1994 16:16:01 +0000 (16:16 +0000)]
* aout-target.h, netbsd386.c: Replace NO_SWAP_MAGIC with SWAP_MAGIC,
and do the swapping here rather than calling ntohl from the N_*
macros. This cleans up assumptions about the size of a host long,
the existence to ntohl, etc.
Peter Schauer [Mon, 3 Jan 1994 10:50:26 +0000 (10:50 +0000)]
* mdebugread.c (psymtab_to_symtab_1): Only pass N_STAB symbols
to process_one_symbol.
* symtab.c (find_pc_psymbol): Search global_psymbols as well to
avoid caching a bad endaddr in find_pc_partial_function.
Jim Kingdon [Mon, 3 Jan 1994 02:48:10 +0000 (02:48 +0000)]
* config/m68k/tm-sun3.h: Don't define BELIEVE_PCC_PROMOTION.
David MacKenzie [Sat, 1 Jan 1994 23:39:18 +0000 (23:39 +0000)]
* hosts/i386mach3.h (HOST_SEGMENT_SIZE): Fix value.
Rob Savoye [Sat, 1 Jan 1994 20:53:41 +0000 (20:53 +0000)]
Support for VSTa micro-kernel.
Rob Savoye [Sat, 1 Jan 1994 20:52:24 +0000 (20:52 +0000)]
* config.bfd: Add support for VSTa micro-kernel. It currently uses
i386-aout.
Rob Savoye [Sat, 1 Jan 1994 20:48:41 +0000 (20:48 +0000)]
* configure.in, config.sub: Add support for VSTa micro-kernel.
David MacKenzie [Sat, 1 Jan 1994 19:20:16 +0000 (19:20 +0000)]
clarify change
David MacKenzie [Sat, 1 Jan 1994 19:15:50 +0000 (19:15 +0000)]
* scripttempl/aout.sc: Pad .text to DATA_ALIGNMENT if relocating;
needed for i386mach.
* emulparams/i386mach.sh (SEGMENT_SIZE): Fix again.
(PAGE_SIZE): Don't define; not used.
David MacKenzie [Sat, 1 Jan 1994 19:09:51 +0000 (19:09 +0000)]
* i386mach3.c (SEGMENT_SIZE): Fix value.
Peter Schauer [Sat, 1 Jan 1994 12:36:48 +0000 (12:36 +0000)]
* infrun.c (wait_for_inferior): Do not step or step resume past
the end of a one-line function we just stepped into.
Jim Kingdon [Fri, 31 Dec 1993 23:37:18 +0000 (23:37 +0000)]
* nindy-share/nindy.c: Fix order of arguments to store_unsigned_integer
(second and third arguments were reversed).
(say): Use varargs.
Jim Kingdon [Fri, 31 Dec 1993 22:34:56 +0000 (22:34 +0000)]
* remote-mips.c: Add timeout parameter to mips_request and
mips_receive_packet.
(callers): pass in mips_receive_wait except mips_initialize (where
we use it to clean up the kludge where we had been changing
mips_receive_wait temporarily) and mips_wait (where we pass in
-1 for no timeout).
Ian Lance Taylor [Fri, 31 Dec 1993 21:51:05 +0000 (21:51 +0000)]
Minor cleanups suggested by CodeCenter.
* aoutx.h, coffgen.c, ecoff.c, ecofflink.c, elf.c, libbfd.c,
linker.c, reloc.c, section.c, srec.c: Added /*ARGSUSED*/ as
appropriate.
* aoutx.h (struct external_exec): Removed unnecessary declaration.
(NAME(aout,some_aout_object_p)): Set some tdata pointers to NULL.
(adjust_z_magic): Removed useless variable data_vma.
(stringtab_init): Initialize hash_zero.
(add_to_stringtab): Removed unused fourth argument.
(NAME(aout,swap_std_reloc_out)): Removed useless variable
r_addend.
(aout_link_input_section): Added some casts.
* archive.c (get_extended_arelt_filename, do_slurp_coff_armap,
bfd_ar_hdr_from_filesystem, bsd_write_armap, coff_write_armap):
Minor code rewriting to make it more C like.
(do_slurp_bsd_armap): Added some casts.
* ecoff.c (ecoff_write_object_contents): Removed useless variable
scn_base.
(ecoff_write_armap): Added some casts. Use "" rather than "\0".
* ecofflink.c (bfd_ecoff_write_debug): Added a cast.
* libaout.h (struct internal_exec): Removed unnecessary
declaration.
* linker.c (_bfd_generic_indirect_link_order): Added a cast.
* opncls.c (new_bfd): Removed a cast.
* reloc.c (bfd_generic_get_relocated_section_contents): Added
some casts.
* srec.c (internal_srec_write_object_contents): Removed useless
variable bytes_written.
Ian Lance Taylor [Fri, 31 Dec 1993 21:17:33 +0000 (21:17 +0000)]
* ldgram.y (yyerror): Make argument const char *, and actually
print it out rather than assuming it is a syntax error.
* ldmisc.h: Change declaration of yyerror.
* ldemul.c, ldwrite.c: Add /*ARGSUSED*/ as appropriate.
David MacKenzie [Fri, 31 Dec 1993 21:13:03 +0000 (21:13 +0000)]
* emulparams/i386mach.sh (NONPAGED_TEXT_START_ADDR): Don't include
exec header offset, since the exec header isn't loaded.
(PAGE_SIZE, SEGMENT_SIZE): Agree with bfd/i386mach3.c.
David MacKenzie [Fri, 31 Dec 1993 21:11:49 +0000 (21:11 +0000)]
* i386mach3.c (N_TXTADDR): Don't define after all.
(TEXT_START_ADDR): Don't include exec header size in value.
David MacKenzie [Fri, 31 Dec 1993 21:08:12 +0000 (21:08 +0000)]
minor fixes
Jim Kingdon [Fri, 31 Dec 1993 19:41:30 +0000 (19:41 +0000)]
* stack.c (print_block_frame_locals): Also print LOC_BASEREG variables.
Peter Schauer [Fri, 31 Dec 1993 14:57:19 +0000 (14:57 +0000)]
* symtab.c (find_methods): Call fprintf_symbol_filtered with DMGL_ANSI.
John Gilmore [Fri, 31 Dec 1993 08:45:16 +0000 (08:45 +0000)]
Insert Peter Kessler's name as inventor (I think).
Jim Kingdon [Fri, 31 Dec 1993 03:05:15 +0000 (03:05 +0000)]
* remote-mips.c (mips_error): New function.
* remote-mips.c: Use it instead of error() most places.
* remote-mips.c (mips_receive_packet): New arg throw_error.
(mips_initialize): Use it not catch_errors.
* defs.h: Declare error_pre_print and warning_pre_print here...
* main.c: ...not here.
David MacKenzie [Thu, 30 Dec 1993 23:48:44 +0000 (23:48 +0000)]
Define N_TXTADDR
Jim Kingdon [Thu, 30 Dec 1993 22:49:48 +0000 (22:49 +0000)]
* values.c (unpack_long): Fix garbled error message.
Jim Kingdon [Thu, 30 Dec 1993 22:25:52 +0000 (22:25 +0000)]
* remote-mips.c (mips_error): New function.
* remote-mips.c: Use it instead of error() most places.
Ian Lance Taylor [Thu, 30 Dec 1993 22:14:19 +0000 (22:14 +0000)]
Rebuilt after removal of seclet.c from doc/Makefile.in.
Ken Raeburn [Thu, 30 Dec 1993 22:02:22 +0000 (22:02 +0000)]
Makefile.in: Delete all references to seclet.c, since it's just been deleted.
Don't mention hash.c, linker.c, or genlink.h yet, since they don't contain
documentation yet (hint, hint!).
Jim Kingdon [Thu, 30 Dec 1993 20:34:06 +0000 (20:34 +0000)]
* breakpoint.c (breakpoint_chain): Make static.
* breakpoint.c, breakpoint.h (frame_in_dummy): New function.
* stack.c (print_frame_info): Use it.
Ian Lance Taylor [Thu, 30 Dec 1993 20:03:34 +0000 (20:03 +0000)]
Added new files for linker support, and removed old seclet files.
Ian Lance Taylor [Thu, 30 Dec 1993 19:57:49 +0000 (19:57 +0000)]
Removed files that are no longer used by the rewritten linker.
Ian Lance Taylor [Thu, 30 Dec 1993 19:56:50 +0000 (19:56 +0000)]
Extensive changes to move the bulk of the linker into BFD so that
more efficient backend code can be written for specific object
files. Only existing efficient backend is a.out.
* seclet.c, seclet.h: Removed.
* hash.c, linker.c, genlink.h: New files.
* bfd-in.h: Removed bfd_error_vector. Declared hash table
structures and functions.
(JUMP_TABLE): Removed bfd_seclet_link, added
bfd_link_hash_table_create, bfd_link_add_symbols and
bfd_final_link.
* All backends: Changed accordingly.
* bfd-in2.h: Rebuilt.
* bfd.c (struct _bfd): Added link_next and archive_pass fields.
Removed ld_symbols field.
(bfd_nonrepresentable_section, bfd_undefined_symbol,
bfd_reloc_value_truncated, bfd_reloc_is_dangerous,
bfd_error_vector): Removed.
(bfd_default_error_trap, bfd_error_trap,
bfd_error_nonrepresentabltrap): Removed.
(bfd_get_relocated_section_contents): Pass link_info. Pass
link_order instead of seclet. Pass symbols.
(bfd_relax_section): Pass link_info.
(bfd_seclet_link): Removed.
(bfd_link_hash_table_create, bfd_link_add_symbols,
bfd_final_link): New macros.
* libbfd-in.h: If __GNUC__ is defined and alloca is not, define
alloca as __builtin_alloca. Declare internal linking functions.
* libbfd.h: Rebuilt.
* libbfd.c (bfd_seek): Comment out fseek assertion. It's worked
for months.
* reloc.c (reloc_howto_type): Added error_message argument to
special_function field. Changed all callers and all definitions.
(bfd_get_reloc_size): Make argument a const pointer.
(bfd_perform_relocation): Add error_message argument to hold
string set if return value if bfd_reloc_dangerous. Changed all
callers.
(_bfd_final_link_relocate, _bfd_relocate_contents): New functions.
* section.c (asection): Renamed seclets_head and seclets_tail to
link_order_head and link_order_tail.
* targets.c (bfd_target): Replaced seclet argument with link_info
and link_order and symbols arguments in
bfd_get_relocated_section_contents. Added symbols argument to
bfd_relax_section. Removed bfd_seclet_link. Added
bfd_link_hash_table_create, bfd_link_add_symbols and
bfd_final_link.
* libaout.h (struct aoutdata): Added external_syms,
external_sym_count, external_strings, sym_hashes fields.
(obj_aout_external_syms, obj_aout_external_sym_count,
obj_aout_external_strings, obj_aout_sym_hashes): New accessor
macros.
(WRITE_HEADERS): Only output symbols if outsymbols is not NULL.
* aoutx.h: Wrote new back end linker routines.
(translate_to_native_sym_flags): Return boolean value. Don't use
bfd_error_vector.
(NAME(aout,write_syms)): Return boolean value. Check return value
of translate_to_native_sym_flags and bfd_write.
* aout-target.h (final_link_callback): New function.
(MY_bfd_final_link): New function.
* aout-adobe.c (aout_adobe_write_object_contents): Check return
value of aout_32_write_syms.
* hp300hpux.c (MY(write_object_contents)): Likewise.
* i386lynx.c (WRITE_HEADERS): Likewise.
* libaout.h (WRITE_HEADERS): Likewise.
* bout.c: Changed functions to use link_info->callbacks rather
than bfd_error_vector, and link_orders rather than seclets.
* coff-alpha.c: Likewise.
* coff-h8300.c: Likewise.
* coff-h8500.c: Likewise.
* coff-sh.c: Likewise.
* coff-z8k.c: Likewise.
* elf32-hppa.c: Likewise.
* reloc16.c: Likewise.
* coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Look
up _gp in the hash table rather than in outsymbols.
* coff-a29k.c (a29k_reloc): Pass errors back in new error_message
argument rather than printing them.
* coffcode.h (bfd_coff_reloc16_extra_cases): Take link_info and
link_order arguments rather than seclet. Changed all uses and
definitions.
(bfd_coff_reloc16_estimate): Pass link_info arguments. Changed
all uses and definitions.
* libcoff.h: Rebuilt.
* ecoff.c (ecoff_get_extr): If symbol is defined by linker, but
not by ECOFF, make it scAbs.
(ecoff_bfd_final_link): Renamed from ecoff_bfd_seclet_link and
rewritten.
* elf32-mips.c (mips_elf_final_link): Renamed from
mips_elf_seclet_link and rewritten.
* elf32-hppa.c (elf32_hppa_stub_description): Added link_info
field.
(new_stub, add_stub_by_name, hppa_elf_build_arg_reloc_stub,
hppa_elf_build_long_branch_stub, hppa_look_for_stubs_in_section):
Added link_info arguments. Changed all callers.
* elfcode.h (elf_slurp_symbol_table): Don't quit if outsymbols is
not NULL.
* oasys.c (oasys_write_sections): Return boolean value rather than
using bfd_error_vector.
(oasys_write_object_contents): Check return value of
oasys_write_sections.
* hosts/std-host.h: Don't declare qsort or strtol.
* Makefile.in: Rebuild dependencies.
(BFD_LIBS): Removed seclet.o. Added hash.o and linker.o.
(CFILES): Removed seclet.c. Added hash.c and linker.c.
(HFILES): Removed seclet.h. Added genlink.h.
Ian Lance Taylor [Thu, 30 Dec 1993 19:51:41 +0000 (19:51 +0000)]
A major rewrite to move the bulk of the linker into BFD so that
more efficient backend code can be written for specific object
files.
* lderror.c, lderror.h, ldindr.c, ldindr.h, ldsym.c, ldsym.h,
ldwarn.c, ldwarn.h, relax.c, relax.h: Removed.
* ldctor.c, ldctor.h: Complete rewrite.
* ldwrite.c, ldwrite.h: Complete rewrite.
* ld.h (strip_symbols_type, strip_symbols): Removed. Use
link_info.strip instead. Changed all uses.
(discard_locals_type, discard_locals): Removed. Use
link_info.discard instead. Changed all uses.
(ld_config_type): Removed relocateable_output field; use
link_info.relocateable instead; changed all uses. Added stats
field.
(set_asymbol_chain, get_asymbol_chain, get_loader_symbol,
set_loader_symbol): Removed.
* ldexp.h (node_class): Added etree_rel.
(etree_type): Added rel field.
* ldexp.c (exp_print_token): Bracketed table initialization.
(exp_relop): New function.
(fold_name): Use linker hash table rather than ldsym functions.
(exp_fold_tree): Likewise. Also, handle etree_rel case.
(exp_print_tree): Handle etree_rel.
* ldgram.y (strip_symbols, discard_locals): Removed.
(OPTION_stats, OPTION_no_keep_memory): New tokens. Handle them.
(REL): New token. Does not appear in grammar, but needed for
expression code.
(file): Don't call lang_final; it's called by main anyhow.
* ldlex.l: Accept -stats and -no-keep-memory options.
* ldlang.h (fill_type): Make unsigned int, not unsigned short.
* ldlang.c: Consistently use fill_type for fill argument.
(lang_init_script_file, script_file): Removed.
(create_object_symbols): Removed. Use
link_info.create_object_symbols_section instead. Changed all
uses.
(lang_add_keepsyms_file): Removed.
(lookup_name): Call bfd_link_add_symbols instead of
ldmain_open_file_read_symbol.
(wild): Don't iterate over script_file.
(open_output): Create link hash table.
(lang_place_undefineds): Rewrote.
(lang_size_sections): Handle relaxing (doesn't work yet).
(lang_relocate_globals): Removed.
(lang_finish): Use link hash table rather than ldsym functions.
(lang_common): Rewrote.
(lang_one_common): New function.
(ldlang_add_file): Add file to link_info.input_bfds list. Set
usrdata.
(create_symbol): Removed.
(lang_process): Don't call lang_init_script_file. Call
ldctor_build_sets rather than find_constructors. Don't call
lang_relocate_globals.
(lang_abs_symbol_at_beginning_of): Rewrote.
(lang_abs_symbol_at_end_of): Rewrote.
* ldmain.c (had_y): Removed.
(lprefix, lprefix_len): Removed; use link_info fields instead.
Changed all uses.
(multiple_def_count, commons_pending, undefined_global_sym_count,
total_symbols_seen, total_files_seen): Removed.
(link_callbacks, link_info): New variables.
(main): Initialize link_info. Don't call init_bfd_error_vector or
ldsym_init. Don't set now unused variables. Handle -stats.
(get_emulation): Removed obsolete and nonfunctional GNU960 code.
(add_ysym): Rewrote.
(read_entry_symbols, refize, enter_global_ref, enter_file_symbols,
search_library, gnu960_check_format, decode_library_subfile,
linear_library, symdef_library, clear_syms, subfile_wanted_p):
Removed.
(add_keepsyms_file, add_archive_element, multiple_definition,
multiple_common, add_to_set, warning_callback, undefined_symbol,
reloc_overflow, reloc_dangerous, unattached_reloc, notice_ysym):
New functions.
* ldmisc.c (vfinfo): Accept a string for %T, not a symbol. Don't
require symbols for %C; look them up instead.
* emultempl/hppaosf.em: Pass link_info to
hppa_look_for_stubs_in_section.
* Makefile.in: Rebuilt dependencies.
(CFILES): Removed lderror.c, ldindr.c, ldsym.c, ldwarn.c, and
relax.c.
(HFILES): Removed lderror.h, ldindr.h, ldsym.h, ldwarn.h, and
relax.h.
(EMULATION_OFILES): Depend on bfdlink.h, ldmain.h, ldexp.h,
ldlang.h and ldctor.h.
* Makefile.in (ldlex.c): Don't depend on ldgram.h. Remove
declarations of free and malloc from flex output. Change malloc
to ldmalloc in flex output.
Ian Lance Taylor [Thu, 30 Dec 1993 18:44:54 +0000 (18:44 +0000)]
* bfdlink.h: New file for new BFD linker backend routines.
Peter Schauer [Thu, 30 Dec 1993 15:56:06 +0000 (15:56 +0000)]
* exec.c (add_to_section_table): Check for SEC_ALLOC instead of
SEC_LOAD to handle .bss segments properly.
Peter Schauer [Thu, 30 Dec 1993 15:51:16 +0000 (15:51 +0000)]
* section.c (bfd_get_section_contents): Return zero filled buffer
if section has no contents.