Jeff Law [Tue, 4 Jul 1995 17:40:41 +0000 (17:40 +0000)]
* infrun.c (wait_for_inferior): When we hit a breakpoint for the
wrong thread, make sure to write the fixed PC value into the thread
that stopped. Restart all threads after single stepping over a
breakpoint for a different thread.
* breakpoint.c (set_momentary_breakpoint): Make momentary
breakpoints thread specific in a multi-threaded program.
* lynx-nat.c (child_resume): Add some comments. Correctly
choose between the single and multi-threaded step and continue
ptrace calls.
* libelf.h (struct elf_link_hash_table): Add needed field. Remove
saw_needed field.
* elfcode.h (elf_link_add_object_symbols): If elf_dt_needed_name
is an empty string, don't make a DT_NEEDED entry in the output
file. Record all DT_NEEDED entries found in input dynamic
objects.
(elf_link_output_extsym): Don't check saw_needed when issuing
warnings.
* elf.c (_bfd_elf_link_hash_table_init): Initialize needed, not
saw_needed.
(bfd_elf_get_needed_list): New function.
* bfd-in.h (struct bfd_elf_link_needed_list): Define.
(bfd_elf_get_needed_list): Define.
* bfd-in2.h: Rebuild.
PR 7083.
Jeff Law [Mon, 3 Jul 1995 23:33:21 +0000 (23:33 +0000)]
* config/tc-hppa.h (MAX_RELOC_EXPANSION): Bump to 6.
* config/tc-hppa.c (tc_gen_reloc, SOM version): Handle
relocations for the difference of two (possibly external)
symbols.
(hppa_fix_adjustable): For SOM, reject reductions involving
the difference of two symbols.
(hppa_force_relocation): Force relocations for expressions
involving the difference of two symbols.
Jeff Law [Mon, 3 Jul 1995 23:27:25 +0000 (23:27 +0000)]
* som.c (hppa_som_gen_reloc_type): New argument "sym_diff",
nonzero when we're generating relocations for an expression
using the difference of two symbols. All callers changed.
Handle difference of symbols for both R_HPPA and R_COMPLEX
cases.
(som_write_fixups): Handle R_COMP1, R_COMP2 and R_CODE_EXPR
fixups.
* bfd.c (enum bfd_error): Define bfd_error_no_armap.
(bfd_errmsgs): Add string for bfd_error_no_armap.
* bfd-in2.h: Rebuild.
* ecoff.c (ecoff_link_add_archive_symbols): If an archive has no
armap, set bfd_error_no_armap rather than bfd_error_no_symbols.
* elfcode.h (elf_link_add_archive_symbols): Likewise.
* linker.c (_bfd_generic_link_add_archive_symbols): Likewise.
* lexsup.c (parse_args): Let -G either set the small data size or
be equivalent to --shared, depending on the next argument. Accept
and ignore -z for Solaris compatibility.
PR 7118.
* Makefile.in: Rebuild dependencies.
(BFD32_BACKENDS): Add versados.o.
(CFILES): Add pe-i386.c, pei-i386.c, and versados.c.
start-sanitize-arc
(elf32-arc.o): New target. This should be removed when
elf32-arc.c can be added to CFILES.
end-sanitize-arc
Fred Fish [Sat, 1 Jul 1995 19:28:13 +0000 (19:28 +0000)]
* ar.c: (extract_file): Change "#if POSIX_UTIME" to
"#ifdef POSIX_UTIME" to match other tests of POSIX_UTIME
and avoid lossage when POSIX_UTIME is not defined at all.
Stan Shebs [Sat, 1 Jul 1995 00:01:19 +0000 (00:01 +0000)]
* interp.c (sim_open): If argument supplied, interpret as
desired memory size.
(parse_and_set_memory_size): New function.
(sim_do_command): New function.
Support for long filenames non-bfd coff. bfd/7288
* config/obj-coff.c (filename_list_head, filename_list_tail): New.
(yank_symbols): Notice and record filenames which are too long.
(w_strings): Write out filename strings.
(c_dot_file_symbols): Put long filenames onto list.
Fred Fish [Thu, 29 Jun 1995 17:15:30 +0000 (17:15 +0000)]
* interp.c: (SYS_wait): Define as SYS_wait4 if available and
SYS_wait is not already defined (SunOS 4.1.3 for example).
(SYS_utime): Define as SYS_utimes if available and
SYS_utime is not already defined.
* Makefile.in: versados.o is now conditionally built.
* coffcode.h (add_data_entry): New function.
(coff_write_object_contents): Clean up. Calculate
data entries.
* cofflink.c (_bfd_coff_generic_relocate_section):
.reloc and .edata sections are IMAGE_BASED too.
If there's a base_file then write out base information.
* configure.host (i386-*-pe): New.
* syms.c (coff_section_type): Only scan prefixes.
* targets.c (bfd_target_vector): Versados is now conditionally
built.
* config/m68k-coff.mt: Build versados.o
* hosts/i386pe.h: New file.
* ar.c: (print_contents.c, extract_file, do_quick_append):
Malloc buffers rather than allocate on stack (so it works
on NT).
* deflex.l: Names can have an @ in them.
* dlltool.c: Loads of stuff. Can now generate .imp files which
work with NT .dlls.
* config/obj-coff.c (fixup_segment): PE doens't use
the strange common symbol format that other 386s formats
do.
* config/tc-i386.c (md_begin): If LEX_AT defined then
'@' is in the set of identifiers.
(i386_operand): If LEX_AT, then don't look for @goto stuff.
* config/te-pe.h: Define LEX_AT.
* ldmain.c (main): Always initialize PE info in link_info.
* lexsup.c (OPTION_BASE_FILE): New option.
(parse_args): Handle new option.
* emulparams/armpe.sh: Output pei.
* emultempl/i386pe.em: Add newline to end.
* scripttempl/armpe.sc: Change output and quote the $s.
* scripttempl/i386pe.sc: Change output and quote the $s.
Ken Raeburn [Tue, 27 Jun 1995 21:22:30 +0000 (21:22 +0000)]
Move various files that are only checked out for certain modules into
the *_these_too lists before the check for existence of the items of those
lists.
Apply "sort -u" to the *_these_too lists to keep Sanitize from complaining
when it can't delete COPYING.NEWLIB twice.
I'm not convinced the right thing will be done with COPYING.NEWLIB when
keep-cygnus or keep-newlib (but not both) is supplied; that's unchanged.
Stan Shebs [Sun, 25 Jun 1995 23:23:06 +0000 (23:23 +0000)]
* remote.c (remote_read_bytes, remote_write_bytes): Second arg
should be char *, not unsigned char *.
* dcache.h (memxferfunc): Ditto.
* monitor.c (monitor_write_memory, monitor_read_memory_single):
Ditto.
(monitor_make_srec): Let compiler figure size of hextab.
Jeff Law [Sun, 25 Jun 1995 02:33:33 +0000 (02:33 +0000)]
* lynx-nat.c (child_wait): Don't restart new threads and loop
to the top of child_wait; let the machine independent code in
wait_for_inferior deal with new thread notifications.
lynx-6100 (partial)
Fixes SEGV when multi-threaded program hits a breakpoint in a new
thread.
Stan Shebs [Fri, 23 Jun 1995 04:41:37 +0000 (04:41 +0000)]
* utils.c (error): Move local `args' outside conditional,
move local `string1' inside, declare function as void if
non-ANSI compiler, dereference error_hook when calling.
Fred Fish [Thu, 22 Jun 1995 00:51:47 +0000 (00:51 +0000)]
* gdb.base/return.exp: Xfail `return double' test failure
on at least Solaris 2.3 and handle future/past versions on
a case by case basis as appropriate. Also update message
to include i*86 failures.
* monitor.c: Turn on caching.
(monitor_printf): If a ^C was sent, don't expect to see its
echo.
(monitor_open): Enable caching.
(monitor_resume, monitor_load): Flush cache.
(monitor_xfer_memory): Call cache routine.
(monitor_dump_regs): New.
(monitor_fetch_registers): If monitor_dump_regs available
then use it.
(monitor_load): Don't ref exec_bfd if it's NULL.
(monitor_load_srec): Use new monitor_make_srec calling convention.
(monitor_make_srec): Rewrite to cope with two, three and four byte
addresses.
* remote-hms.c (hms_cmds): Initialze end-of-command delim.
* dcache.h, dcache.h: Rewritten.
* remote.c: Reenable caching.
(getpkt): Reduce MAX_TRIES to 3.
(remote_xfer_memory): Use dcache_xfer_memory.
* defs.h (error_hook): New.
* top.c (error_hook): New definition.
* utils.c (error): Use error_hook if initialized.
* sparcl-tdep.c (HAVE_SOCKETS): Don't define if GO32 or WIN32. Use
HAVE_SOCKETS in place of #ifndef GO32.
Rob Savoye [Wed, 21 Jun 1995 21:25:10 +0000 (21:25 +0000)]
* testsuite: New directory for customer acceptance and whole tool
chain tests.
* configure: Set build_{cpu,vendor,os,alias} to host values when
--build isn't specified
* monitor.c: Turn on caching.
(monitor_printf): If a ^C was sent, don't expect to see its
echo.
(monitor_open): Enable caching.
(monitor_resume, monitor_load): Flush cache.
(monitor_xfer_memory): Call cache routine.
(monitor_dump_regs): New.
(monitor_fetch_registers): If monitor_dump_regs available
then use it.
(monitor_load): Don't ref exec_bfd if it's NULL.
(monitor_load_srec): Use new monitor_make_srec calling convention.
(monitor_make_srec): Rewrite to cope with two, three and four byte
addresses.
* remote-hms.c (hms_cmds): Initialze end-of-command delim.
* dcache.h, dcache.h: Rewritten.
* remote.c: Reenable caching.
(getpkt): Reduce MAX_TRIES to 3.
(remote_xfer_memory): Use dcache_xfer_memory.
* defs.h (error_hook): New.
* top.c (error_hook): New definition.
* utils.c (error): Use error_hook if initialized.
* sparcl-tdep.c (HAVE_SOCKETS): Don't define if GO32 or WIN32. Use
HAVE_SOCKETS in place of #ifndef GO32.
Jeff Law [Wed, 21 Jun 1995 04:20:15 +0000 (04:20 +0000)]
* config/pa/tm-hppa.h (PSW_*): Define processor status word masks.
(INSTRUCTION_NULLIFIED): Allow specific targets to override.
* config/pa/tm-hppao.h (INSTRUCTION_NULLIFIED): Define to work
around losing mach kernel behavior.
Stan Shebs [Wed, 21 Jun 1995 00:52:21 +0000 (00:52 +0000)]
* mpw-esh.c: New file, modified for MPW from esh.c.
* scripttempl/sh.sc: Reformatted to simplify MPWification,
use *() to concat stab sections instead of [].