* callback.[ch]: New files.
* remote-rdp.c: Support for the ARM RDP monitor.
* Makefile: Update.
* arm-tdep.c (arm_othernames): New.
(_initialize_arm_tdep): install 'othernames' command.
(arm_nullified_insn, shifted_reg_val, arm_get_next_pc): New.
* configure.in: Check for termios.h, termio.h and sgtty.h.
(i[345]86-*-win32*): New host.
* configure: Regenerated.
* inflow.c: Clean up inclusions.
* main.c (main): Check for WINGDB, not WIN32.
* printcmd.c (do_examine): Put QUIT test in loop.
* remote-hms.c (e7000_load): Delete.
(hms_ops): Point to generic_load instead.
* remote-hms.c (hms_ops): Point to generic_load.
* remote-sim.c (sim_callback_write_stdout): Becomes
gdbsim_write_stdout.
(gdbsim_load): Call generic_load.
* remote-utils.c (gr_load_image): Delete.
* ser-unix.c (terminal.h): Include instead of havig
own #if tree.
(hardwire_flush_input): Reset input buffer too.
* source.c (openp): If WIN32 then open file in binary mode.
* terminal.h: Configure IO mechanism using autoconf defines if available and
not overriden.
* utils.c (quit, pollquit, notice_quit): WIN32 check becomes WINGDB check.
* config/arm/arm.mt (TDEPFILES): Add remote-rdp.o
* config/arm/tm-arm.h (TARGET_BYTE_ORDER): becomes TARGET_BYTE_ORDER_SELECTABLE.
(ADDR_BITS_REMOVE): New.
(ORIGINAL_REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): New.
(INST_xx): New
(FRAME_FIND_SAVED_REGS): Pass the right argument.
(arm_get_next_pc): Declare.
* mswin/prebuilt/*/bfdtarget.h (SELECT_ARCHITECTURES): Need leading &.
* 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.
* remote-hms.c (hms_open): Make static.
* mpw-config.in (MacSerial.h): Copy from version in {CIncludes},
not {MPW}Interfaces:CIncludes.
* ser-mac.c (mac_baud_rate_table): Fix value for 38400 baud.
All references to value changed to value_ptrlage_command is now
called big_command.
All references to value changed to value_ptr.
* remote-z8k.c (e7000_wait): Use target_waitstatus and SETSTOP
* remote-hms.c (hms_wait): Timeout after five seconds.
* ser-go32.c (dosasync_read): Poll if timeout < 0.
* config/tm/tm-h8500.h (BEFORE_MAIN_LOOP_HOOK): Deleted.
* config/sh/tm-sh.h (BREAKPOINT): Is now sleep opcode.
* h8500-tdep.c (saved_pc_after_call): The size of the
pc is memory model dependent. (segmented_command,
unsegmented_command, _initialize_h8500_tdep): New commands to
change memory model.
* remote-7000.c (initialize_remote_e7000): Change name of snoop
command.
* remote-hms.c (hms_load): Remove breakpoints when loaded.
(hms_wait): Use new status structure
(hms_open): Push the target here. (hms_before_main_loop): Not
here. (supply_val, hms_fetch_register, hms_store_register): Cope
with H8/500 names too.
* sh-tdep.c (show_regs, initialize_sh_tdep): New command to print
all registers in a compact way.
* 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.
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.
Change all references to stdout/stderr to gdb_stdout/gdb_stderr.
Replace all calls to stdio output functions with calls to
corresponding _unfiltered functions (`fprintf_unfiltered')
Replaced calls to fopen for output to gdb_fopen.
Added sufficient goo to utils.c and defs.h to make the above work.
The net effect is that stdio output functions are only directly used
in utils.c. Elsewhere, the _unfiltered and _filtered functions and
GDB_FILE type are used.
In the near future, GDB_FILE will stop being equivalant to FILE.
The semantics of some commands has changed in a very subtle way:
called in the right context, they may cause new occurences of
prompt_for_continue() behavior. The testsuite doesn't notice anything
like this, though.
Please respect this change by not reintroducing stdio output
dependencies in the main body of gdb code. All output from commands
should go to a GDB_FILE.
Target-specific code can still use stdio directly to communicate with
targets.
* core.c: Add commands to set and show it.
* Callers to bfd_*open*: Pass gnutarget instead of NULL as target.
* environ.c (set_in_environ): For GNUTARGET, use set_gnutarget not
putenv.
* symtab.c (decode_line_1): Give error on unmatched single quote.
(bug_ops, monitor_desc): now static.
(monitor_desc): in several places, check and/or set to NULL.
* remote-hms.c (hms_files_info): Add the appropriate items where
missing in the printf call.
* remote-bug.c: new file for m88k bug support.
* config/m88k/m88k.mt (TDEPFILES): added remote-bug.o.
* Makefile.in (CLIBS): Reorder to make Lynx ld happy.
* (HFILES): New file thread.h.
* (OBS): New file thread.c.
* configure.in: Host config for Lynx/386.
* fork-child.c (fork_inferior): Call init_thread_list().
* infrun.c (resume): Add pid to invocation of target_resume().
* (wait_for_inferior): Pay attention to pid from target_wait().
Multi-threading code now uses this to determine what to do.
* inftarg.c (child_wait): Conditionalize based on CHILD_WAIT macro.
Use target_pid_to_str() macro throughout when printing pid.
* inferior.h (child_resume): Add pid to prototype.
* hppab-nat.c hppah-nat.c infptrace.c (child_resume): Pass in pid as
argument, instead of using inferior_pid.
* procfs.c (procfs_resume): Pass in pid as argument. Ignored for
now. Use target_pid_to_str() macro throughout for printing process id.
* remote-adapt.c (adapt_resume): Pass in pid as argument.
* remote-eb.c (eb_resume): Pass in pid as argument.
* remote-es.c (es1800_resume): Pass in pid as argument.
* remote-hms.c (hms_resume): Pass in pid as argument.
* remote-mips.c (mips_resume): Pass in pid as argument.
* remote-mm.c (mm_resume): Pass in pid as argument.
* remote-monitor.c (monitor_resume): Pass in pid as argument.
* remote-nindy.c (nindy_resume): Pass in pid as argument.
* remote-sa.sparc.c (remote_resume): Pass in pid as argument.
* remote-sim.c (rem_resume): Pass in pid as argument.
* remote-sp64sim.c (simif_resume): Pass in pid as argument.
* remote-st.c (st2000_resume): Pass in pid as argument.
* remote-udi.c (udi_resume): Pass in pid as argument.
* remote-vx.c (vx_resume): Pass in pid as argument.
* remote-z8k.c (rem_resume): Pass in pid as argument.
* remote.c (remote_resume): Pass in pid as argument.
* solib.c (solid_create_inferior_hook): Pass inferior_pid to
target_resume().
* target.c (normal_pid_to_str): New routine to print out process
ID normally.
* target.h (struct target_ops): Add pid to prototype at
to_resume(). (target_resume): Add pid argument.
* (target_pid_to_str): Default definition for normal type pids.
* thread.c, thread.c: New modules for multi thread/process control.
binary files oring in the right bit.
* main.c, source.c, state.c, symmisc.c: use macros defined in
fopen-{bin|both} when fopening files.
* remote-hms.c, remote-sim.c: lint