OSDN Git Service

Initial revision
authorjsm <jsm>
Thu, 6 Jan 2000 03:06:34 +0000 (03:06 +0000)
committerjsm <jsm>
Thu, 6 Jan 2000 03:06:34 +0000 (03:06 +0000)
gdb/ChangeLog-99 [new file with mode: 0644]
gdb/proc_api.c [new file with mode: 0755]
gdb/proc_events.c [new file with mode: 0755]
gdb/proc_flags.c [new file with mode: 0755]
gdb/proc_why.c [new file with mode: 0755]

diff --git a/gdb/ChangeLog-99 b/gdb/ChangeLog-99
new file mode 100644 (file)
index 0000000..005de04
--- /dev/null
@@ -0,0 +1,8815 @@
+Wed Dec 29 17:41:11 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * breakpoint.c (create_breakpoints, parse_breapoint_sals,
+       breakpoint_sals_to_pc): New functions.
+       (break_command_1): Rewrite. Use create_breakpoints,
+       parse_breapoint_sals, breakpoint_sals_to_pcto create the list of
+       breakpoints specified in ``sals''.  Delete unused variables.
+       Pre-allocate addr_strings for all breakpoints.  Allocate a
+       separate cond and cond_string for each breakpoint.
+       (gdb_breakpoint, do_captured_breakpoint, struct
+       captured_breakpoint_args): Provide a library interface into
+       create_breakpoints.
+
+       * defs.h (gdb_breakpoint): Add declaration.
+
+1999-12-22  Michael Chastain  <chastain@cygnus.com>
+
+       * dbxread.c (process_one_symbol): check for nested LBRAC
+       symbols before calling finish_block rather than after.  Do not
+       call define_symbol for these symbols.
+
+1999-12-21  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * blockframe.c (generic_pop_current_frame): Cosmetic changes to
+       clarify.
+
+1999-12-20  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * procfs.c: Completely rewritten.  All functions replaced, to make
+       maintainence easier in the presence of two very different versions
+       of /proc (ioctl vs. read/write).
+       * proc_api.c: New file, pretty-print /proc diagnostic trace info.
+       * proc_events.c: New file, pretty-print /proc signals, exceptions.
+       * proc_flags.c: New file, pretty-print /proc flags.
+       * proc_why.c: New file, pretty-print /proc reasons for stopping.
+       * Makefile.in: Add rules for above new files.
+       * config/i386/i386sol2.mh: Add above new files to NATDEPFILES.
+       * config/sparc/sun4sol2.mh: ditto.
+       * config/i386/i386dgux.mh: ditto.
+       * config/i386/i386v4.mh: ditto.
+       * config/i386/i386v42mp.mh: ditto.
+       * config/i386/ncr3000.mh: ditto.
+       * config/m68k/m68kv4.mh: ditto.
+       * config/m88k/delta88v4.mh: ditto.
+       * config/mips/irix4.mh: ditto.
+       * config/mips/irix5.mh: ditto.
+       * config/mips/mipsv4.mh: ditto.
+       * config/powerpc/solaris.mh: ditto.
+       * config/alpha/alpha-osf2.mh: ditto.
+       * config/alpha/alpha-osf3.mh: ditto.
+       * testsuite/gdb.base/callfuncs.exp: make "next" test match the
+       next source line, in case the "next" runs away.
+       * acconfig.h: remove obsolete def HAVE_MULTIPLE_PROC_FDS, 
+       add new def NEW_PROC_API
+       * config.in; ditto.
+       * configure.in: Detect sparc solaris 7 and all versions of 
+       UnixWare, and define NEW_PROC_API.
+       * configure: auto-generate.
+       * infrun.c (MAY_SWITCH_FROM_INFERIOR_PID): remove define, make it
+       the default behavior.  (switched_from_inferior_pid): rename to
+       previous_inferior_pid.  (handle_inferior_event): remove the
+       [Switching to thread...] message.  (normal_stop): move the
+       [Switching to thread...] message to here.
+       * sol-thread.c (sol_find_new_threads): add a call to 
+       procfs_find_new_threads, so that new LWPs are found too.
+       * config/mips/nm-irix5.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT): 
+       define to always use.  (target_insert_watchpoint) define to use
+       new procfs call (one additional parameter).
+       (target_remove_watchpoint): ditto.
+       (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT) define always true.
+       * config/mips/nm-irix4.h: ditto.
+       
+       
+1999-12-21  Jim Blandy  <jimb@cygnus.com>
+
+       * Makefile.in (elf_bfd_h): Look for elf-bfd.h in BFD_SRC, not
+       BFD_DIR.  Unlike bfd.h, it is not a generated file.
+       
+Fri Dec 17 18:24:58 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * language.c (_initialize_language): move settings of language,
+       range, and type and corresponding function calls
+       set_language_command, set_type_command, and set_range_command
+       closer together to match the model of having the user set the
+       variable via the 'set {language | range | type}' commands.
+       This eliminates startup noise introduced by Jimmy Guo's change
+       of Dec 13th.
+
+1999-12-17  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * configure.in: test for <stdint.h>, which is not available
+       on earlier versions of Linux.
+       * config.in: define HAVE_STDINT_H if it's present.
+       * configure: autoconfiscate.
+       * lin-thread.c: if not HAVE_STDINT_H, stub out the entire module.
+       
+Fri Dec 17 20:45:21 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * target.c (find_target_beneath): Change ``='' in if to ``==''.
+
+1999-12-16  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * defs.h (TIDGET): add default definition.
+       * lin-thread.c (check_for_thread_event): for now, just provide
+       an empty definition (to be filled in later).
+
+1999-12-16  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * varobj.c (varobj_list): Improve the test and the text of the
+       assertion that guards against wrong tally of root varobjs.
+       (uninstall_variable): Fix for a bug in which the number of root
+       varobjs was not decremented if the first one in the list was deleted.
+
+1999-12-16  Michael Snyder  <msnyder@cleaver.cygnus.com>
+       
+       * linux-thread.c: Remove printf-debugging code.
+       * lin-thread.c: ditto.
+       * config/alpha/nm-linux.h: protect with NM_LINUX_H.
+       * testsuite/gdb.threads/linux-dp.exp: Make test for "New Thread"
+       message more forgiving.  Ditto test for "info threads".
+       
+1999-12-16  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * lin-thread.c: new file.  Implements multi-thread debugging on
+       Linux using the thread_db API first implemented on Solaris.  This
+       frees GDB from any dependency on the internal implementation of
+       the thread library.  Future versions of the thread library will
+       implement a libthread_db API for debuggers, which GDB will use.
+       * config/i386/linux.mh: add lin-thread.o to the link, and add
+       -ldl and -rdynamic since libthread_db is a dynamic library.
+       * config/alpha/alpha-linux.mh: ditto.
+       * configure.in: test for thread_db.h, proc_service.h
+       * configure: autoconf.
+       * config.in: conditionally define HAVE_THREAD_DB_H
+       and HAVE_PROC_SERVICE_H
+       * gdb_thread_db.h: new file, used when the system doesn't have it.
+       * gdb_proc_service.h: ditto.
+       
+1999-12-16  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * linux-thread.c: changes to accomodate the new lin-thread.c
+       module based on the thread_db API.  These changes make parts of
+       linux-thread.c shareable with lin-thread.c.
+       (linuxthreads_wait_mask): replace with linuxthreads_block_mask.
+       (using_thread_db): new variable.  Allows linux-thread module to 
+       detect when lin-thread (thread_db API) module is in use.
+       (save_inferior_pid, restore_inferior_pid): make 32/64 bit safe.
+       (check_all_signal_numbers) make extern, shared with lin-thead.c.
+       (linuxthreads_new_objfile): use target_new_objfile_chain to share
+       this hook with the lin-thread module.  Call the other module FIRST.
+       If using_thread_db is turned on by the other thread module, do not
+       set linuxthreads_debug and do not call update_stop_threads.  Do call
+       check_all_signal_numbers, to be sure it gets set before target_wait.
+       (linux_child_wait): new function.  Abstracts out the "child_wait"
+       functionality, so that it can be shared with the lin-thread module.
+       (linuxthreads_wait): call linux_child_wait, instead of doing the
+       waiting inline.  If using_thread_db, do not call update_stop_threads
+       and do not turn on linuxthreads_debug.
+       (linuxthreads_mourn_inferior): abstract out the clearing of global
+       state, so that it can be shared with the lin-thread.c module.
+       (_initialize_linuxthreads): use linuxthreads_wait_mask to block
+       SIGCHLD exactly ONCE, and leave it blocked!  Then linux_child_wait
+       will call sigsuspend when it wants to wait for this signal.
+       (thread_attach): abstract out ptrace attach to share with lin-thread.c
+       
+1999-12-16  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       Make target_pid_to_str a target_ops vector.
+       * target.h (target_pid_to_str): redefine to use a target_ops vector.
+       (target_tid_to_str): default to using target_pid_to_str.
+       (target_pid_or_tid_to_str): ditto.
+       * target.c (update_current_target): inherit to_pid_to_str method.
+       (find_target_beneath): new function.  Find target stratum below 
+       the given one.
+       * config/nm-gnu.h: don't define target_pid_to_str.
+       * config/i386/tm-i386sol2.h: ditto.
+       * config/sparc/tm-sun4sol2.h: ditto.
+       * gnu-nat.c (init_gnu_ops): initialize to_pid_to_str vector.
+       * linux-thread.c (init_linuxthreads_ops): ditto.
+       * sol-thread.c (init_sol_thread_ops: ditto.
+       * procfs.c (init_procfs_ops): ditto.
+       * win32-nat.c (init_child_ops): ditto.
+       * config/i386/tm-cygwin.h: don't define target_pid_to_str.
+       * inftarg.c (child_pid_to_str): new function, used to initialize
+       to_pid_to_str vector.  May be suppressed by defining CHILD_PID_TO_STR.
+       (init_child_ops): initialize to_pid_to_str using child_pid_to_str.
+       Derivative modules may substitute their own child_pid_to_str func
+       by defining CHILD_PID_TO_STR.
+       * lynx-nat.c (lynx_pid_to_str): rename to child_pid_to_str.
+       * config/nm-lynx.h: define CHILD_PID_TO_STR.  
+       Don't define target_pid_to_str.
+       * hppah-nat.c (hppa_pid_to_str): rename to child_pid_to_str.
+       * infttrace.c (hppa_pid_or_tid_to_str): call child_pid_to str 
+       instead of hppa_pid_to_str.
+       * config/pa/nm-hppah.h: define CHILD_PID_TO_STR.
+       Don't define target_pid_to_str.
+       
+1999-12-16  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * i386-linux-nat.c: introduce PIDGET/TIDGET macros as on Solaris, 
+       preparatory to using the thread_db debugging API for Linux.
+       (fill_gregset): guard against invalid input.
+       (fetch_regs): add a pid/thread_id argument, so we can fetch regs
+       from multiple processes/clones/threads.  (store_regs): ditto.
+       (fetch_fpregs): ditto.  (store_fpregs): ditto.
+       (fetch_xfpregs): ditto.  (store_xfpregs): ditto.
+       (fetch_inferior_registers): use TIDGET to extract an appropriate
+       thread/clone/process id from inferior_pid, if there's one there, 
+       and pass it to fetch_regs etc.  (store_inferior_registers): ditto.
+
+       * infptrace.c: include every available version of wait.h.
+       introduce PIDGET/TIDGET macros for use with thread_db API on Linux.
+       (call_ptrace): rearrange lines that were split by an ifdef.
+       (fetch_register): use TIDGET to extract an appropriate process ID
+       from inferior_pid, in case we are debugging more than one process.
+       (store_register): ditto.  This is for Linux.
+       (child_xfer_memory): use PIDGET to extract the main process id from
+       inferior_pid, in case we are debugging multiple processes that share
+       the same address space (as on Linux).
+
+1999-12-16  Christopher Faylor  <cgf@cygnus.com>
+
+       * win32-nat.c: Add a missing register to mappings array.
+       (child_fetch_inferior_registers): Use precalculated index into mappings
+       array as supply_registers argument.
+       (handle_output_debug_string): Avoid considering every debug string as a
+       cygwin signal.
+       (handle_exception): Trap first chance exceptions.
+       (child_create_inferior): Initialize Microsoft thread walking API.
+       (sgmb): New function.  Used by Microsoft API for stack walking.
+       (child_frame_chain): New function.  Uses Microsoft API for stack
+       walking.
+       (child_frame_chain_saved_pc): Ditto.
+       * config/i386/tm-cygwin.h: Define frame handling stuff.
+
+1999-12-15  Stan Shebs  <shebs@andros.cygnus.com>
+
+       ARM GNU/Linux support and general ARM target fixes/cleanup from
+       Scott Bambrough <scottb@netwinder.org>, plus obsoletion of the old
+       RISCix support.
+       * NEWS: Mention addition and obsoletion.
+       * configure.host: Recognize arm* instead of just arm.
+       (arm*-*-linux*): Recognize.
+       * configure.tgt: Ditto, plus assume arm*-*-* is embedded.
+       * config/arm/arm.mh, config/arm/arm.mt, config/arm/nm-arm.h,
+       config/arm/xm-arm.h: Mark as OBSOLETE.
+       * config/arm/embed.mt, config/arm/tm-embed.h: New files.
+       * config/arm/linux.mh, config/arm/linux.mt, config/arm/nm-linux.h,
+       config/arm/tm-linux.h, config/arm/xm-linux.h: Ditto.
+       * config/arm/tm-arm.h: Add more comments, eliminate PARAMS.
+       (STACK_END_ADDR): Remove.
+       (ARM_LE_BREAKPOINT, ARM_BE_BREAKPOINT, THUMB_LE_BREAKPOINT,
+       THUMB_BE_BREAKPOINT): Move to here from arm-tdep.c.
+       (NUM_REGS): Define as sum.
+       (NUM_FREGS, NUM_SREGS, NUM_GREGS): New definitions.
+       (FP_REGISTER_RAW_SIZE, FP_REGISTER_VIRTUAL_SIZE,
+       STATUS_REGISTER_SIZE): Define.
+       (REGISTER_BYTES, REGISTER_BYTE, REGISTER_RAW_SIZE,
+       REGISTER_VIRTUAL_SIZE): Rewrite to use symbolic values.
+       (REGISTER_CONVERTIBLE, REGISTER_CONVERT_TO_VIRTUAL,
+       REGISTER_CONVERT_TO_RAW, USE_STRUCT_CONVENTION,
+       EXTRACT_RETURN_VALUE): Rewrite to use new functions.
+       (IN_SIGTRAMP): Remove definition.
+       * arm-convert.s: Mark as OBSOLETE.
+       * arm-linux-nat.c: New file.
+       * Makefile.in: Add build rule for it.
+       * arm-tdep.c (struct frame_extra_info): New struct.
+       (arm_use_struct_convention): Rewrite.
+       (arm_push_arguments): Rewrite to handle more cases.
+       (arm_register_convertible, arm_register_convert_to_virtual,
+       arm_register_convert_to_raw, arm_extract_return_value): New
+       functions.
+       (LITTLE_BREAKPOINT, BIG_BREAKPOINT): Remove.
+       * arm-xdep.c: Mark as OBSOLETE.
+
+1999-12-15  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * infcmd.c (run_stack_dummy): Temporarily lie about the target
+       ability to support asynchronous execution.
+
+       * remote.c (remote_can_async_p, remote_is_async_p): Return true
+       iff to_async_mask_value is true too.
+       (remote_async): Error out if called when to_async_mask_value is 0.
+       (init_remote_async_ops): Initialize to_async_mask_value to 1.
+       (remote_async_detach, remote_async_resume, remote_async_wait,
+       remote_async_kill): Change SERIAL_IS_ASYNC_P call to
+       target_is_async_p call.
+       (remote_async_resume): Change SERIAL_CAN_ASYNC_P call to
+       target_can_async_p call.
+       
+       * target.c (update_current_target): Inherit to_async_mask_value.
+       (target_async_mask): New function. To temporarily turn the target
+       into a synchronous one for inferior function calls, and back to
+       asynchronous.
+
+       * target.h (to_async_mask_value): New entry in the target
+       vector.
+       (target_async_mask): Export.
+       (target_async_mask_value): Define.
+       
+Wed Dec 15 11:24:32 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hp-psymtab-read.c (trans_lang): Use HP_LANGUAGE_FORTRAN instead
+       of HP_LANGUAGE_F77.
+
+Wed Dec 15 13:37:55 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdb-events.h, gdb-events.c (set_gdb_event_hooks): Return the old
+       event hooks vector.
+
+1999-08-13  Jim Kingdon  <http://developer.redhat.com/>
+
+        * breakpoint.c (bpstat_stop_status): Revert 1998-09-08 change
+        to ->frame matching.  The change did not match the ChangeLog
+        entry, looked fishy, and caused infinite stepping when running
+        "next" from main on sparc w/ RH Linux.  Thanks to Jakub for the
+       report.
+
+1999-12-14  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * arm-tdep.c (arm_get_next_pc): Add argument to shifted_reg_val
+       call.
+
+1999-12-14  Mark Salter  <msalter@cygnus.com>
+
+       * mips-tdep.c (mips_print_register): Fix printing of individual
+       registers when REGISTER_VIRTUAL_SIZE != REGISTER_RAW_SIZE.
+
+Tue Dec 14 23:29:19 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h (mcalloc): Delcare.
+       * utils.c (xcalloc, mcalloc): New functions.
+
+1999-12-13  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * config/arm/tm-arm.h: Reformat comments, in preparation for
+       real changes.
+       * arm-tdep.c: Similarly, plus change function definitions to
+       modern form.
+
+1999-12-13  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * breakpoint.h (enum bptype): add new BP type bp_thread_event.
+       This will be used when a target needs to set an invisible 
+       breakpoint to detect events such as thread creation.
+       * breakpoint.c (interlan_breakpoint_number): remove ifdefs.
+       (create_thread_event_breakpoint): new function.
+       (remove_thread_event_breakpoints): new function.
+       (bpstat_what): don't stop at invisible thread_event breakpoints.
+       (update_breakpoints_after_exec): if bp_thread_event breakpoins
+       still exist after an exec, delete them.  They'll need to be 
+       found and installed anew anyway.
+       (print_it_typical): don't announce bp_thread_event breakpoints.
+       (print_one_breakpoint): account for new breakpoint type.
+       (mention): don't mention invisible bp_thread_event breakpoints.
+       (delete_command): don't delete invisible bp_thread_event bp's.
+       (breakpoint_re_set_one): don't touch bp_thread_event bp's.
+       
+Mon Dec 13 11:10:59 1999  Jimmy Guo    <guo@cup.hp.com>
+
+       * language.h (longest_raw_hex_string, longest_local_hex_string,
+       longest_local_hex_string_custom): Declare.
+       * language.c: New functions, and misc. fixes.
+       (longest_raw_hex_string, longest_local_hex_string,
+       longest_local_hex_string_custom): New functions.
+
+       * c-typeprint.c
+       (c_type_print_varspec_prefix,c_type_print_varpsec_suffix): Add
+       TYPE_CODE_TEMPLATE case and default case.
+       (c_type_print_base): Revise how demangled_no_class is found;
+       print '}' before printing local file:line info.
+       * c-valprint.c (c_value_print): print reference type to class.
+
+       * valarith.c (value_binop): Add support for exponentiation,
+       equal, not equal.
+       (my_strcmp): New function.
+       (value_equal,value_less): Add string equality comparison support.
+
+       * m2-exp.y (lex): add default case statement to capture
+       unhandled token and call error().
+
+1999-12-13  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * main.c (main): Remove unused variable.
+
+       From Hubert VERSTRAETE (hubertV@bigfoot.com):
+       * main.c (captured_main): Disambiguate command line option '-d' by
+       preferring --directory over --dbx.
+
+       * top.c (return_to_top_level): Do not do exec cleanups if the
+       target is executing. Those cleanups are supposed to be done when
+       the target has stopped.
+
+Mon Dec 13 20:52:37 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * breakpoint.c (do_captured_breakpoint_query,
+       gdb_breakpoint_query): New functions.  Implement a breakpoint
+       query.
+
+       * defs.h (enum gdb_rc): Declare.
+       (gdb_breakpoint_query): Declare.
+
+Mon Dec 13 14:18:06 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdb-events.h: Fix typo in description of breakpoint events.
+       * gdb-events.sh: Update.
+
+Mon Dec 13 13:57:26 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * breakpoint.c (ep_type_description_t): Delete.
+       (print_one_breakpoint): Add local declaration of struct
+       ep_type_description.
+
+Mon Dec 13 12:38:31 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * top.h: Delete #include <setjmp.h>.  Moved to top.c.
+       (SIGJMP_BUF, SIGSETJMP, SIGLONGJMP, SIGJMP_BUF, SIGSETJMP,
+       SIGLONGJMP): Delete.  Moved to top.c
+       (error_return, quit_return): Delete extern declarations.
+
+       * top.c: #include <setjmp.h>.
+       (error_return, quit_return): Make static.
+       (SIGJMP_BUF, SIGSETJMP, SIGLONGJMP, SIGJMP_BUF, SIGSETJMP,
+       SIGLONGJMP): Define.
+
+Mon Dec 13 11:54:12 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * tracepoint.c (trace_start_command, tracepoints_info): Print
+       step_count using %ld.
+       * Makefile.in (tracepoint.o): Compile tracepoint.o with -Werror.
+
+1999-12-12  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * target.h (enum target_waitkind): Add new enumeration value
+       TARGET_WAITKIND_IGNORE. For inferior events that we should do
+       nothing about.
+
+       * remote.c (remote_async_wait): After each character of console
+       output from the inferior, return to the event loop with an event
+       kind of TARGET_WAITKIND_IGNORE instead of looping here.
+
+       * infrun.c (handle_inferior_event): In case of
+       TARGET_WAITKIND_IGNORE, return immediately, and set things up so
+       that we are still waiting for the inferior.
+
+1999-12-12  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-loop.c (handle_timer_event): When calling the timer
+       procedure, use the saved_timer data, not the timer_ptr data,
+       because the latter has been already freed.
+
+Fri Dec 10 12:01:43 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * eval.c (evaluate_subexp): Only inline when GNUC and not STDC.
+
+Sat Dec 11 17:52:03 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * breakpoint.c (print_one_breakpoint): New function.  Move
+       breakpoint print code to here.
+       (breakpoint_1): From here.
+
+Mon Dec  6 20:31:28 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.sh: Replace field init_p with invalid_p.
+       (TARGET_BFD_VMA_BIT): New architecture vector method.  Defaults to
+       architecture bits_per_address.
+       * gdbarch.h, gdbarch.c: Update.
+       * defs.h (TARGET_BFD_VMA_BIT): Provide default of TARGET_PTR_BIT
+       for non- multi-arch case.
+
+       * gdbtypes.h (builtin_type_bfd_vma, builtin_type_ptr,
+       builtin_type_CORE_ADDR): New GDB specific address types.
+       * gdbtypes.c (_initialize_gdbtypes, build_gdbtypes): Initialize
+       new builtin types.
+
+Wed Dec  8 17:48:56 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * config/sparc/nm-nbsd.h (FETCH_INFERIOR_REGISTERS): Delete
+       definition.  Already defined in config/nm-nbsd.h.  Include the
+       more explicit config/nm-nbsd.h.
+
+       * config/sparc/nbsd.mt (TDEPFILES): Move solib.o from here.
+       * config/sparc/nbsd.mh (NATDEPFILES): To here.
+       * config/xm-nbsd.h: #include <sys/param.h> to get definition of
+       NGROUPS needed by <limits.h> and missing on some systems.
+       * config/nm-nbsd.h: Only macro's that match NetBSD definitions
+       with what is expected by solib.c when not SVR4_SHARED_LIBS.
+
+       * configure.host: Add patterns for sparc-*-netbsdaout* and
+       sparc-*-netbsdelf*.
+       * config/sparc/nm-nbsdelf.h: New file.
+       * config/sparc/nbsdelf.mh: New file.
+
+Wed Dec  8 19:56:48 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * frame.h, blockframe.c: Rename default_frame_chain_valid to
+       file_frame_chain_valid.  Rename alternate_frame_chain_valid to
+       func_frame_chain_valid.
+
+       * config/sparc/tm-sparclite.h, config/mips/tm-mipsv4.h,
+       config/m88k/tm-delta88v4.h, config/m68k/tm-m68kv4.h,
+       config/m68k/tm-monitor.h, config/i386/tm-i386nw.h,
+       config/i386/tm-i386v4.h, config/h8300/tm-h8300.h: Update.
+       * mips-tdep.c (mips_gdbarch_init): Update.
+       
+Wed Dec  8 19:12:17 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * blockframe.c (generic_file_frame_chain_valid): Rename
+       generic_file_frame_chain_valid.
+       * frame.h: Update.
+       * config/fr30/tm-fr30.h, config/m32r/tm-m32r.h,
+       config/mn10200/tm-mn10200.h, config/mn10300/tm-mn10300.h,
+       config/sh/tm-sh.h, config/v850/tm-v850.h, config/mcore/tm-mcore.h:
+       Update.
+
+       * blockframe.c (generic_func_frame_chain_valid): New function.
+       Implement dummy-frame equivalent of function based frame chain
+       valid.
+       * frame.h (generic_func_frame_chain_valid): Declare.
+
+Wed Dec  8 16:26:27 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * blockframe.c (alternate_frame_chain_valid,
+       default_frame_chain_valid): Swap implementations.  The change Mon
+       Nov 30 11:18:48 1998 Andrew Cagney <cagney@chook> which converted
+       several macros to functions was backwards.
+
+       * mips-tdep.c (mips_gdbarch_init): Update.  Call
+       alternate_frame_chain_valid and not default_frame_chain_valid.
+
+Wed Dec  8 15:29:48 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * infptrace.c: Simplify handling of <sys/wait.h>. Always include
+       "wait.h" from the ../include/wait.h directory.  #include
+       <sys/wait.h> was added as part of Mon Nov 29 12:14:10 1999 Andrew
+       Cagney <cagney@b1.cygnus.com> but the ChangeLog was omitted.
+
+1999-12-07  Jim Blandy  <jimb@cygnus.com>
+
+       Add support for SSE registers in core files.
+       * corelow.c (get_core_register_section): New function.
+       (get_core_registers): Fetch the new ".reg-xfp" sections,
+       in addition to the traditional ".reg" and ".reg2" sections.
+       Check for per-thread variants of all three.  Use
+       get_core_register_section, instead of writing it out over and over
+       again.
+       * i386-linux-nat.c (i386_linux_fetch_core_registers): New function.
+       (i386_linux_nat_core_fns): New core_fns structure.  We do our own
+       core handling now, instead of using the generic code in core-regset.c.
+       (_initialize_i386_linux_nat): New function, needed to register
+       i386_linux_nat_core_fns.
+       * config/i386/linux.mh (NATDEPFILES): Remove core-regset.o;
+       i386-linux-nat.c has its own sniffer now.
+       * gdbcore.h: (struct core_fns): Doc fix.
+
+       * i386v-nat.c (i386_float_info): Definition is #if 0'd; delete it
+       altogether.  This should use the function i387-tdep.c.
+
+       Patch from Mark Kettenis  <kettenis@gnu.org>:
+
+       * config/i386/tm-i386.h (FLOAT_INFO): New define.
+       * i387-tdep.c (print_i387_value, print_i387_ext,
+       print_i387_status_word, print_i387_control_word, i387_float_info):
+       New functions, used to implement generic `info float' command.
+
+1999-12-06  Christopher Faylor  <cgf@cygnus.com>
+
+       * dcache.c (set_dcache_state): New function.
+       * dcache.h: Declare set_dcache_state().
+
+Sat Dec  4 15:17:44 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (build_remote_packet_sizes): Reduce the default packet
+       size of 400 bytes by one to 399.  Stops GDB trashing stubs that
+       append a trailing NUL to an already full buffer.
+
+Sat Dec  4 01:16:47 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * tracepoint.c (remote_get_noisy_reply): Add parameter sizeof_buf.
+       (finish_tfind_command): Add parameter sizeof_msg.
+       
+       * remote.c (remote_threads_info): Move assignment operator to
+       outside of function call.
+       (remote_send): Add parameter sizeof_buf.
+       (getpkt): Add parameter sizeof_buf. Call read_frame passing in
+       sizeof_buf.
+
+       * remote.h (getpkt): Update.
+       
+       * tracepoint.c (remote_set_transparent_ranges,
+       remote_get_noisy_reply, trace_start_command, trace_stop_command,
+       trace_status_command, finish_tfind_command, trace_find_pc_command,
+       trace_find_tracepoint_command, trace_find_line_command,
+       trace_find_range_command, trace_find_outside_command): Update.
+
+       * remote.c (set_thread, remote_thread_alive,
+       remote_get_threadinfo, remote_get_threadlist,
+       remote_current_thread, remote_threads_info,
+       extended_remote_restart, get_offsets, remote_open_1,
+       remote_async_open_1, remote_wait, remote_async_wait,
+       remote_fetch_registers, check_binary_download, remote_write_bytes,
+       remote_read_bytes, remote_send, remote_detach,
+       remote_async_detach, remote_fetch_registers,
+       store_register_using_P, store_register_using_P,
+       remote_fetch_registers, remote_store_registers, putpkt_binary,
+       remote_insert_breakpoint, remote_remove_breakpoint,
+       compare_sections_command, remote_rcmd, packet_command,
+       remote_info_process, remote_query, remote_insert_watchpoint,
+       remote_search, remote_remove_watchpoint,
+       remote_insert_hw_breakpoint, remote_remove_hw_breakpoint): Update.
+
+Fri Dec  3 17:38:06 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * (read_frame): Add sizeof_buf parameter. Don't allow repeat when
+       first character.  Always leave space at the end of the buffer.
+       Return size of packet or -1.
+       (getpkt): Update.  Pass in PBUFSIZ.
+
+Thu Dec  2 17:14:53 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ser-pipe.c: Include <string.h> for memset().
+
+1999-12-01  Jim Blandy  <jimb@cygnus.com>
+
+       * gdbtypes.c (builtin_type_v4si, builtin_type_v8qi,
+       builtin_type_v4hi, builtin_type_v2si): New SIMD types.
+       (build_gdbtypes): Initialize them.
+       (_initialize_gdbtypes): Gdbarch_swap them.
+       * gdbtypes.h (builtin_type_v4si, builtin_type_v8qi,
+       builtin_type_v4hi, builtin_type_v2si): Declare them. 
+
+       * findvar.c (read_register_bytes, write_register_bytes): Correctly
+       determine how the region the caller is writing overlaps with each
+       register's bytes.
+
+       * value.h (struct value): Doc fixes.
+
+       * valops.c (value_assign): Clarify error message.
+
+1999-12-01  Christopher Faylor  <cgf@cygnus.com>
+
+       * config/i386/tm-cygwin.h: Change tm-i386.h include back to tm-i386v.h.
+
+1999-12-01  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * inf-loop.c (inferior_event_handler): In case of
+       INF_EXEC_CONTINUE, don't do all the regular continuations, but
+       just the intermediate ones.
+
+       * infcmd.c (step_once): Add the continuation to the
+       intermediate_continuation list instead of the regular continuation
+       list.
+
+       * utils.c (add_intermediate_continuation): New function, to add
+       continuations to the intermedite_continuation list.
+       (do_all_intermediate_continuations): New function, do all the
+       continuations in the intermediate list.
+       (discard_all_intermediate_continuations): New function, discard
+       all the continuations in the intermediate list.
+       (intermediate_continuation): New global list for use by step_1().
+
+       * defs.h: Export intermediate_continuation,
+       add_intermediate_continuation, do_all_intermediate_continuations,
+       discard_all_intermediate_continuations.
+
+1999-11-30  Christopher Faylor  <cgf@cygnus.com>
+
+       * win32-nat.c (mappings): Reorganize slightly for new uniform i386
+       register configuration.
+       (do_child_fetch_inferior_registers): Handle special case floating point
+       registers.
+       (handle_output_debug_string): Handle cygwin-specific signals broadcast
+       from the cygwin DLL.
+       (handle_exceptions): Add code to properly allow continuation after a
+       CTRL-C.
+       (child_continue): Accept propagated "continue_status" which controls
+       how the inferior should be continued.
+       (get_child_debug_event): New function.
+       (child_wait): Use above function to handle debug events.
+       (child_create_inferior): Add more intelligent method for running the
+       inferior to the appropriate point before handing it off to the rest of
+       gdb.
+       (child_stop): Specifically send a CTRL-C to the debugged process.
+       (child_kill_inferior): Set global continue status here to cause
+       inferior to run to completion.
+       (child_resume): Eliminate code which attempts to decide how to continue
+       the inferior.  This is now handled by child_continue.
+       * config/i386/tm-cygwin.h: Gut and reorganize for consistency with new
+       tm-i386.h.
+
+       Patch from Egor Duda (deo@logos-m.ru)
+       * win32-nat.c (psapi_get_dll_name): New function.
+       (handle_load_dll): Correctly load DLL symbol tables after attaching to
+       a running pid.
+
+1999-11-30  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * infrun.c (handle_inferior_pid): revert 11-29 change: resuming
+       a thread other than the current thread with a signal.  Apparently
+       target_resume with a specific pid, a specific signal, and no step
+       means to continue ALL threads but to only send the signal to one
+       (and not, as I had assumed, to continue only the specified thread).
+       * i386-linux-nat.c (fill_gregset): guard against invalid input.
+       
+1999-11-30  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * infcmd.c (step_once): New function. Used to do just one step
+       operation.
+       (step_1_continuation): New function. Figure out if we need to step
+       again before returning control to the user.
+       (step_1): If we are in asynchronous mode, don't do the for loop,
+       but rather delegate to continuations the task of repeating the
+       step operation.
+
+       * utils.c (do_all_continuations): Copy the continuation list aside
+       before working on it.
+
+       * target.h (enum inferior_event_type): Add new enum
+       INF_EXEC_CONTINUE.
+
+       * inf-loop.c (inferior_event_handler): Handle new case
+       INF_EXEC_CONTINUE.
+
+       * infrun.c (fetch_inferior_event): If we are in the middle of a
+       'step n' type command, don't say that the execution is complete,
+       but that it will have to continue.
+
+1999-11-30  Kevin Buettner  <kevinb@cygnus.com>
+
+       * utils.c (verror): Don't traverse va_list argument twice.  Also,
+       removed extraneous va_end() call.
+
+1999-11-29  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * infrun.c (handle_inferior_pid): If a child thread stops on a 
+       signal that we are ignoring, and GDB silently resumes the child, 
+       resume ALL threads (not just the one that got the signal).  All
+       threads are stopped, so all must be resumed.
+       (handle_inferior_event): on detecting a thread context switch, 
+       swap infrun_state ONLY if both the old thread and the new one
+       are in the thread list.  Otherwise state information will be lost!
+       Problem may arise with flaky back-ends.
+       
+1999-11-29  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * breakpoint.c (bpstat_stop_status): Don't decrease hit_count
+       in case of a wp that has not changed.
+
+Mon Nov 29 12:14:10 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbtypes.c (init_simd_type): Make static.
+
+       * configure.in (AC_CHECK_HEADERS): Check for <sys/ioctl.h>.
+       * configure, config.h: Re-generate.
+       * inflow.c: Include <sys/ioctl.h>
+
+       * i386b-nat.c: Include "gdbcore.h".
+       * fork-child.c: Include "command.h".
+
+       * remote.c (remote_cisco_section_offsets,
+       remote_start_remote_dummy, store_register_using_P,
+       remote_info_process, remote_cisco_open, remote_cisco_close,
+       readsocket, readtty, minitelnet, remote_cisco_wait,
+       init_remote_async_ops, init_extended_async_remote_ops,
+       set_remote_cmd), infrun.c (default_skip_permanent_breakpoint): Use
+       ISO-C syntax for function definition.
+
+Mon Nov 29 11:28:21 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * stabsread.c: Revert 1999-11-09 Jim Blandy
+       <jimb@zwingli.cygnus.com> and 1999-11-08 Jim Blandy
+       <jimb@cygnus.com>.  Broken on non-Linux targets.
+
+1999-11-26  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * symfile.c (show_load_progress): Add total sent so far to the
+       information passsed to the hook users.
+       (generic_load): Collect total sent so far and pass that to the
+       progress hook.
+
+       * defs.h (show_load_progress): Update.
+
+1999-11-25  Nick Clifton  <nickc@cygnus.com>
+
+       * coffread.c (coff_symfile_read): Treat "epoc-pe" targets as "pe"
+       targets.
+       * dbxread.c (dbx_read_symfile): Treat "epoc-pe" targets as "pe"
+       targets. 
+
+Wed Nov 24 17:07:28 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (init.c): Add SUBDIR_INIT_FILES so that sub
+       directories can hook in extra init files.
+
+1999-11-23  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * defs.h (show_load_progress): Export.
+
+       * symfile.c (show_load_progress): New hook for download.
+       (generic_load): Collect total size of executable to load. 
+       Call progress hook when downloading.
+
+Thu Nov 18 11:54:24 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * arc-tdep.c (codestream_fill): Rewrite byte swap code using
+       function extract_unsigned_integer.
+
+Wed Nov 17 17:01:06 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * arm-xdep.c: #include "arm-opcode.h" -> "opcode/arm.h".
+
+1999-11-22  Jim Blandy  <jimb@cygnus.com>
+
+       * Makefile.in (i386-tdep.o): Update list of dependencies.
+
+1999-11-22  Jim Blandy  <jimb@cygnus.com>
+
+       * config/i386/tm-i386v.h (NUM_REGS, REGISTER_NAMES,
+       REGISTER_BYTES, REGISTER_BYTE, REGISTER_RAW_SIZE,
+       REGISTER_VIRTUAL_SIZE, MAX_REGISTER_RAW_SIZE,
+       MAX_REGISTER_VIRTUAL_SIZE, REGISTER_VIRTUAL_TYPE): Deleted.  All
+       of these should inherit identical or compatible values from
+       tm-i386.h, as long as you don't define HAVE_SSE_REGS or
+       HAVE_I387_REGS, which are new anyway.
+
+Mon Nov 22 21:39:27 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * target.c (do_target_signal_to_host): New function.  Indicate of
+       the conversion was successful to the caller via an additional
+       parameter.
+       (target_signal_to_host_p): New function. Return non-zero if the
+       GDB signal exists on the host system.
+       (target_signal_to_host): Rewrite.  Use do_target_signal_to_host.
+       * target.h (target_signal_to_host_p): Add declaration. Document
+       target_singal vs host signal vs target OS signal confusion.
+       
+       From 1999-11-08 Jimmy Guo <guo@cup.hp.com>:
+       * hppah-nat.c (require_notification_of_events): Start by ignoring
+       all signals and then adding back in ones we're interested in.
+       
+Thu Nov 18 18:12:48 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * jv-typeprint.c (java_type_print_base), kod-cisco.c
+       (cisco_kod_open), kod.c (kod_set_os), xcoffread.c
+       (process_linenos), symfile.c (add_symbol_file_command),
+       remote-rdi.c (arm_rdi_open, rdilogfile_command), main.c
+       (captured_main), go32-nat.c (go32_create_inferior), exec.c
+       (exec_file_attach), corefile.c (core_file_command,
+       reopen_exec_file): Replace strdup with xstrdup.
+
+Mon Nov 22 12:02:47 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * bcache.c (print_bcache_statistics): Fix printf_filtered
+       arguments.
+       (print_percentage): Make function void.
+
+1999-11-21  Jim Blandy  <jimb@cygnus.com>
+
+       Make the bcache hash table grow.
+       * bcache.h (BCACHE_NUM_BUCKETS): Delete definition.
+       (struct bcache): Add new element: num_buckets.  Make bucket be a
+       pointer to an array, not an array.
+       (free_bcache): New extern declaration.
+       * bcache.c (CHAIN_LENGTH_THRESHOLD): New constant.
+       (expand_hash_table): New function.
+       (bcache): Grow the hash table if the average chain length reaches
+       CHAIN_LENGTH_THRESHOLD.
+       (free_bcache): New function.
+       (print_bcache_statistics): Don't assume that the number of buckets
+       is constant any more.
+       (BSTRING_SIZE): Moved down to just above 'bcache' function, where
+       it's used.
+       * objfiles.c (free_objfile): Call free_bcache, instead of just 
+       freeing the bcache's obstack directly.
+       * symfile.c (reread_symbols): Same.
+
+1999-11-20  Jim Blandy  <jimb@cygnus.com>
+
+       * bcache.c, bcache.h: Rewritten.  New version imposes less memory
+       overhead, and has a more effective hash function, so it's probably
+       faster, too.
+
+       * config/nm-linux.h: No need to check whether __STDC__ is
+       #defined --- GDB requires ANSI C now.
+
+       * config/i386/nm-linux.h (linuxthreads_pid_to_str,
+       linuxthreads_prepare_to_proceed): Delete declarations --- they're
+       provided by config/nm-linux.h now.
+
+1999-11-19  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * top.c (print_command_lines): Remove unused var.
+
+1999-11-19  Jim Kingdon  <kingdon@redhat.com>
+
+        Patch applied by Jim Blandy <jimb@cygnus.com>:
+
+       Enable threads for all linux architectures:
+       * config/nm-linux.h: New file.
+       config/alpha/nm-linux.h, config/i386/nm-linux.h,
+       config/m68k/nm-linux.h, config/sparc/nm-linux.h: Use it.
+       * config/tm-linux.h: New file.
+       * config/i386/tm-linux.h, config/m68k/tm-linux.h,
+       config/sparc/tm-linux.h, config/alpha/tm-alphalinux.h: Use it.
+       * config/m68k/linux.mh, config/sparc/linux.mh,
+       config/alpha/alpha-linux.mh: Add linux-thread.o.
+
+1999-11-18  Tom Tromey  <tromey@cygnus.com>
+
+       * tracepoint.h (get_tracepoint_by_number): Updated declaration.
+       * tracepoint.c (trace_pass_command): Better error message.  Fixed
+       logic when `all' not specified.
+       (get_tracepoint_by_number): Added `optional_p' argument.  Fixed
+       all callers.
+
+Wed Nov 17 17:40:30 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * findvar.c (SWAP_FLOATING): Delete macro. Unused.
+
+1999-11-16  Mark Salter  <msalter@cygnus.com>
+
+       * monitor.c (monitor_supply_register): Initialize value to zero.
+
+1999-11-15  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       (Patches applied by Jim Blandy <jimb@zwingli.cygnus.com>)
+       
+       Change DJGPP target use the common register layout in
+       config/i386/tm-i386.h.
+       * config/i386/tm-go32.h: #include "i386/tm-i386.h", not 
+       "i386/tm-i386v.h".
+       (HAVE_I387_REGS): Define.
+       (HAVE_SSE_REGS): Undefine.
+       (NUM_FREGS, NUM_REGS, REGISTER_NAMES, FP_REGNUM, SP_REGNUM,
+       PS_REGNUM, PC_REGNUM, FP0_REGNUM, FPC_REGNUM, FPCWD_REGNUM,
+       FPSWD_REGNUM, FPTWD_REGNUM, FPIPO_REGNUM, FPIPS_REGNUM,
+       FPOOS_REGNUM, FPOPS_REGNUM, REGISTER_BYTES, REGISTER_BYTE,
+       REGBYTE_0, REGBYTE_10 REGBYTE_16, REGBYTE_24, REGBYTE_29,
+       REGISTER_RAW_SIZE, REGISTER_VIRTUAL_SIZE, MAX_REGISTER_RAW_SIZE,
+       MAX_REGISTER_VIRTUAL_SIZE, REGISTER_CONVERTIBLE): Definitions
+       deleted.
+       (i387_to_double, double_to_i387): Declarations deleted.
+       (REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW,
+       REGISTER_VIRTUAL_TYPE): Use definitions from
+       config/i386/tm-i386.h, unless LD_I387 is #defined.
+       
+       * go32-nat.c (go32_fetch_registers, store_register)
+       (go32_create_inferior, init_go32_ops): Replace fatal with
+       internal_error.
+       (sig_map): Map exception 7 to TARGET_SIGNAL_EMT.
+
+       * utils.c (notice_quit): Doc fixes.
+
+1999-11-15  Kevin Buettner  <kevinb@cygnus.com>
+
+       * gdbserver/server.h (initialize_low): Declare this target
+       specific function.
+       * gdbserver/server.c (main): Call initialize_low.
+       * gdbserver/low-hppabsd.c, gdbserver/low-linux.c,
+       gdbserver/low-sim.c, gdbserver/low-sparc.c, gdbserver/low-sun3.c
+       (initialize_low): Renamed from initialize.  Also removed
+       initialization of inferior_pid.
+       (have_inferior_p): Removed.
+       * gdbserver/low-lynx.c (initialize_low): New function.
+
+1999-11-12  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * remote-rdi.c: Fix indentation accordingly to GNU standards.
+
+Thu Oct 28 00:28:51 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d10v-tdep.c (d10v_gdbarch_init): Make the d10v:ts3 the default.
+
+Tue Oct 26 09:57:29 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.sh: Re-sync with Cagney's earlier const change.
+
+Sun Oct 24 20:07:31 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d10v-tdep.c (struct gdbarch_tdep): Replace nr_a_regs,
+       imap0_regnum, nr_imap_regs, dmap0_regnum, with dmap_register and
+       imap_register.
+       (R0_REGNUM, LR_REGNUM, PSW_REGNUM, NR_IMAP_REGS, NR_A_REGS):
+       Convert to enums.
+       (TS2_NR_A_REGS, TS2_NR_IMAP_REGS, TS3_NR_IMAP_REGS,
+       TS3_NR_A_REGS): Delete.
+       (d10v_ts2_dmap_register, d10v_ts3_dmap_register,
+       d10v_ts2_imap_register, d10v_ts3_imap_register): New functions.
+       (d10v_dmap_register, d10v_imap_register,
+       d10v_ts2_register_sim_regno, d10v_ts3_register_sim_regno,
+       show_regs): Update.
+       (remote_d10v_translate_xfer_address): Rewrite.  Use
+       sim_d10v_translate_addr to translate addresses.
+       (d10v_gdbarch_init): Initialize tdep members dmap_register and
+       imap_register.
+
+Sun Oct 24 00:12:44 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d10v-tdep.c (struct gdbarch_tdep): Declare.
+       (NR_IMAP_REGS, NR_DMAP_REGS, A0_REGNUM, NR_A_REGS): Redefine using
+       value in gdbarch_tdep.
+       (d10v_dmap_register, d10v_imap_register): Ditto.
+       (d10v_ts2_register_name, d10v_ts2_register_sim_regno): Rename
+       d10v_register_name and d10v_register_sim_regno
+       (enum ts3_regnums, d10v_ts3_register_name,
+       d10v_ts3_register_sim_regno, d10v_register_sim_regno): New.
+       (d10v_gdbarch_init): Configure registers and G packet according to
+       d10v/ts2 and d10v/ts3.
+
+Sat Oct 23 21:28:02 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * config/d10v/tm-d10v.h (IMAP0_REGNUM, IMAP1_REGNUM, DMAP_REGNUM):
+       Delete macro.
+       (R0_REGNUM, LR_REGNUM, PSW_REGNUM, A0_REGNUM): Move from here.
+       * d10v-tdep.c: To here.
+
+       * d10v-tdep.c: (NR_DMAP_REGS, NR_IMAP_REGS, NR_A_REGS): Define.
+       (d10v_dmap_register, d10v_imap_register): New functions.
+       (remote_d10v_translate_xfer_address): Make static.
+       (d10v_register_virtual_size): Use TYPE_LENGTH of
+       REGISTER_VIRTUAL_TYPE.
+       (d10v_register_byte, do_d10v_pop_frame,
+       remote_d10v_translate_xfer_address, show_regs,
+       d10v_register_raw_size): Ditto.
+       (d10v_register_virtual_type): Ditto. Use explicitly sized builtin
+       types.
+
+Sat Oct 23 19:08:39 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d10v-tdep.c: Include "sim-d10v.h".
+       (enum ts2_regnums): Declare.
+       (d10v_register_sim_regno): New function.
+
+       * config/d10v/tm-d10v.h: Delete pre multi-arch code.
+       (REGISTER_SIM_REGNO): Define.
+       (d10v_register_sim_regno): Declare.
+       
+Sat Oct 23 16:39:34 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.c (initialize_current_architecture): Make ``choice''
+       const.
+
+Wed Nov 10 16:10:22 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hppa-tdep.c (hppa_fix_call_dummy): Fix typo in error message.
+
+Wed Nov 10 16:47:06 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * utils.c (error_last_message): Use gdb_file_xstrdup.
+
+       * defs.h (verror, internal_verror): Declare.
+
+       * utils.c (verror, internal_error): New functions.
+       (error, internal_error): Use verror / internal_verror.
+       (error_stream): Use gdb_file_xstrdup.  Correctly handle %s in
+       error message body.
+       (error_init): Use mem_fileopen.
+
+       * corefile.c (memory_error): Use mem_fileopen instead of
+       tui_sfileopen.  Don't call error_begin.
+       * remote-sim.c (gdb_os_error): Rewrite using verror. Don't call
+       error_begin.
+
+Wed Nov 10 14:21:43 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h (gdb_file_xstrdup): New function.
+       * utils.c (gdb_file_xstrdup, do_gdb_file_xstrdup): Implement.
+
+1999-11-09  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * exec.c (exec_file_attach), irix5-nat.c, osfsolib.c, solib.c
+       (info_sharedlibrary_command), pa64solib.c
+       (pa64_sharedlibrary_info_command), somsolib.c
+       (som_sharedlibrary_info_command): Replace "exec file" with
+       "executable file" in messages.
+
+1999-11-09  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Finish the job attempted by the previous change.
+       * stabsread.c (read_range_type): Make n2 and n3 LONGEST.  Adjust
+       the various tests that check for maximum values, bit counts, etc.
+       In the long run, it might have been simpler just to give GDB bignums.
+       
+Tue Nov  9 18:34:13 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * defs.h (gdb_file_put): Add parameter write.
+       (gdb_file_put_method_ftype): New typedef.
+       * utils.c (gdb_file_put, mem_file_put, tui_file_put,
+       null_file_put): Update.
+       
+       * utils.c (struct gdb_file): Add field magic.
+       (gdb_file_new): Initialize.
+       (gdb_file_data): Verify.
+
+       * utils.c (mem_file_fputs): Delete.  Replaced by.
+       (mem_file_write): New function. Rewrite mem_file.
+       (mem_file_new): Update.
+       
+Tue Nov  9 17:51:12 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote-sim.c (gdb_os_write_stdout): Use gdb_file_write.
+       (gdb_os_flush_stdout): Flush gdb_stdtarg instead of gdb_stdout.
+
+Tue Nov  9 15:33:43 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (procfs.o): Don't compile with -Werror for moment.
+       * sol-thread.c (info_cb): Move assignments to outside of if
+       statement.
+       (info_cb): Use paddr when printing addresses.
+
+1999-11-08  Jim Blandy  <jimb@cygnus.com>
+
+       * defs.h (ULONGEST_MAX, LONGEST_MAX): New definitions.
+       * stabsread.c (read_huge_number): Parse and return LONGEST values.
+
+1999-11-08  Mark Salter  <msalter@cygnus.com>
+
+       * utils.c (floatformat_to_doublest): Fix conversion of denormals.
+
+Mon Nov  8 20:14:13 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * remote.c (get_memory_read_packet_size): For moment limit read
+       size to PBUFSIZ.
+       (putpkt_binary): Remove check on packet size.  Allocate ``cnt +
+       6'' characters for output buffer.
+       (get_memory_packet_size): When packet size is ``fixed'' and the
+       size is zero, return MAX_REMOTE_PACKET_SIZE.  Check that packets
+       are at least MIN_REMOTE_PACKET_SIZE.
+       (set_memory_packet_size): Print usage when ``args'' is NULL.
+
+Mon Nov  8 18:18:07 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h, utils.c (gdb_file_deallocate): Delete.
+       * corefile.c (memory_error): Use make_cleanup_gdb_file_delete.
+
+       * defs.h, utils.c (gdb_file_init_astring): Delete.
+
+       * defs.h, utils.c (tui_file_get_strbuf): Rename
+       gdb_file_get_strbuf.
+       (tui_file_adjust_strbuf): Rename gdb_file_adjust_strbuf.
+       * utils.c (error_stream, error_last_message): Update.
+       
+Mon Nov  8 16:28:00 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h, utils.c (gdb_fclose): Delete.
+       * defs.h (make_cleanup_gdb_file): Declare.
+       * utils.c (make_cleanup_gdb_file_delete, do_gdb_file_delete): New
+       functions.
+
+       * symmisc.c (maintenance_print_symbols,
+       maintenance_print_psymbols, maintenance_print_msymbols): Use
+       make_cleanup_gdb_file_delete.
+       * serial.c (do_serial_close): Use gdb_file_delete.
+
+Mon Nov  8 14:16:32 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h (gdb_file_write_ftype, set_gdb_file_write,
+       gdb_file_write): Declare.
+
+       * utils.c (struct gdb_file): Add to_write member.
+       (gdb_file_write, set_gdb_file_write): New functions.
+       (gdb_file_new): Initialize the write method.
+       (null_file_write): New function.
+       (null_file_fputs, null_file_write): ``write'' calls ``fputs'' and
+       ``fputs'' calls ``write'' when the other is implemented.
+       (stdio_file_new): Initialize write method.
+       (stdio_file_write): New function.
+
+       * utils.c (putchar_unfiltered, fputc_unfiltered): Use
+       gdb_file_write.
+
+Thu Nov  4 11:59:24 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (get_memory_packet_size, set_memory_packet_size,
+       build_memory_packet_size): New functions. Set / compute / update
+       the size of a memory read / write packet.
+       (set_memory_read_packet_size, set_memory_write_packet_size): New
+       functions.  Verify changes to the memory read / write packet size.
+       (prefered_memory_write_packet_size,
+       current_memory_write_packet_size, prefered_memory_read_packet_size,
+       current_memory_read_packet_size): New variables.
+       (get_memory_read_packet_size, get_memory_write_packet_size): New
+       functions. Determine the current memory read/write packet size.  A
+       function is needed as ``current_register_packet_size'', a variable
+       is used in the calculation.
+       (register_remote_packet_sizes, build_remote_packet_sizes):
+       Initialize packet sizes according the current architecture.
+       (remote_fetch_registers, remote_write_bytes, remote_read_bytes,
+       build_remote_gdbarch_data): Update.
+       (_initialize_remote): Add the commands ``set remote
+       memory-read-packet-size'' and ``set remote
+       memory-write-packet-size''.  Deprecate ``set remotepacketsize''.
+
+Sun Nov  7 18:09:54 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * target.h, target.c (target_load): Replace macro with a function.
+
+       * config/i960/tm-nindy960.h (ADDITIONAL_OPTION_HANDLER): Rewrite
+       replacing SET_TOP_LEVEL with catch_command_errors.
+       (nindy_open): Add extern declaration.
+
+       * top.h (top_level_val, SET_TOP_LEVEL): Delete.
+       * defs.h (catch_command_errors_ftype, catch_command_errors): Add
+       declarations.
+       * top.c (struct captured_command_args): Declare.
+       (do_captured_command, catch_command_errors): New functions. Call
+       the command function via catch_errors.
+       (catch_errors): Add more comments.
+       
+       * main.c (struct captured_main_args): Define.
+       (captured_main): New.  Rewrite main.  Replace SET_TOP_LEVEL with
+       calls to catch_command_errors. Delete calls to do_cleanups which
+       are now handled by catch_errors. Call the command loop via
+       captured_command_loop and catch_errors.
+       (main): Move code body to captured_main.  Call captured_main via
+       catch_errors.
+       (captured_command_loop): New function. Wrap call to command_loop.
+
+1999-11-05  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * procfs.c (unconditionally_kill_inferior) (init_procinfo)
+       (create_procinfo) (procfs_exit_handler) (proc_set_exec_trap)
+       (do_attach) (do_detach) (procfs_wait) (set_proc_siginfo)
+       (procfs_resume) (info_proc_mappings)
+       (modify_run_on_last_close_flag) (procfs_lwp_creation_handler)
+       (procfs_thread_alive): Remove unused variables, conditionalize
+       vars declarations to eliminate compiler warnings.
+
+Fri Nov  5 16:32:04 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * inferior.h (CALL_DUMMY_ADDRESS, CALL_DUMMY_START_OFFSET,
+       CALL_DUMMY_BREAKPOINT_OFFSET, CALL_DUMMY_LENGTH,
+       CALL_DUMMY_STACK_ADJUST, CALL_DUMMY_WORDS,
+       SIZEOF_CALL_DUMMY_WORDS, PUSH_DUMMY_FRAME, FIX_CALL_DUMMY,
+       STORE_STRUCT_RETURN), d10v-tdep.c (print_insn), d30v-tdep.c
+       (print_insn), target.h (SOFTWARE_SINGLE_STEP): Call internal_error
+       instead of abort.
+
+       * utils.c (stdio_file_delete, stdio_file_flush, stdio_file_fputs,
+       stdio_file_isatty, tui_file_delete, tui_file_isatty,
+       tui_file_rewind, tui_file_put, gdb_file_init_astring,
+       gdb_file_get_strbuf, gdb_file_adjust_strbuf): Call internal_error
+       instead of error.
+
+1999-11-04  Kevin Buettner  <kevinb@cygnus.com>
+
+       * remote.c (build_remote_gdbarch_data): Set remote_address_size...
+       (_initialize_remote) ...but don't set it here.  Also, tie
+       remote_address_size to the target architecture via call to
+       register_gdbarch_swap().
+
+1999-11-04  Jeff Holcomb  <jeffh@cygnus.com>
+
+       * remote-rdp.c (send_rdp): Fix typo.
+
+1999-11-04  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * breakpoint.c (commands_command): remove unprotected ref to 
+       args pointer (which may be null).
+
+1999-11-04  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * infcmd.c (print_return_value): New function. Print return value
+       from finish command.
+       (finish_command_continuation): Call print_return_value().
+       (finish_command): Ditto.
+
+1999-11-04  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * infrun.c (handle_inferior_event): Add calls to print_stop_reason()
+       for end of stepping range cases.
+       
+Thu Nov  4 17:46:36 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * event-loop.c (gdb_do_one_event): Delete SET_TOP_LEVEL call.
+       Move error code to start_event_loop.
+       (start_event_loop): Call gdb_do_one_event via catch_errors.
+       Handle caught errors.
+
+Thu Nov  4 17:36:27 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * breakpoint.c (get_number): Delete static declaration.
+
+1999-11-03  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * breakpoint.c (map_breakpoint_numbers): use a match count
+       instead of a goto.
+
+1999-11-03  Nick Clifton  <nickc@cygnus.com>
+
+       * config/mcore/tm-mcore.h (TARGET_BYTE_ORDER_DEFAULT): Change to
+       little endian.
+
+1999-11-02  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * target.h (target_new_objfile) replace macro with function pointer
+       hook.  Any module needing notification of new objfiles may claim
+       this hook.  Multiple notification clients must cooperate by saving
+       the previous pointer (if any) and calling it.
+       * sol-thread.c (_initialize_sol_thread): point new_objfile hook at
+       sol_thread_new_objfile.  Save old pointer if any.
+       (sol_thread_new_objfile): call old owner of event hook if any.
+       * hpux-thread.c (_initialize_hpux_thread, hpux_thread_new_objfile):
+       ditto.
+       * linux-thread.c (_initialize_linux_thread, linux_thread_new_objfile):
+       ditto.
+       symfile.c (symbol_file_add, clear_symtab_users) call the new
+       function pointer hook, instead of the macro.
+       * config/sparc/nm-sun4sol2.h: remove define of target_new_objfile.
+       * config/pa/nm-hppah.h: ditto.
+       * config/i386/nm-i386sol2.h: ditto.
+       * config/i386/nm-linux.h: ditto.
+       
+1999-11-02  Tom Tromey  <tromey@cygnus.com>
+
+       * NEWS: Mention breakpoint ranges.
+
+1999-11-02  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * rdi-share/devsw.c (openLogFile): Change a call to setlinebuf()
+       to an equivalent call to setvbuf() to prevent an unresolved
+       reference when building on cygwin.
+
+1999-11-02  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * infrun.c (inferior_stop_reason): New enum, explicitly name the
+       resons for which the inferior stops.
+       (handle_inferior_event): Case TARGET_WAITKIND_EXITED: replace
+       printf's with call to print_stop_reason(). Case
+       TARGET_WAITKIND_SIGNALLED: Same.  When stopped by random signal:
+       Same.
+       (print_stop_reason): New static function. Print relevant messages
+       when stopping.
+
+1999-11-02  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * rdi-share/Makefile.in: Rename dependency from bytesex.o to
+       angel_bytesex.o.
+
+1999-11-02  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+        * kod.c: Remove prototype for show_kod() which is no longer used.
+
+1999-11-01  Michael Snyder <msnyder@cygnus.com>
+           Tom Tromey  <tromey@cygnus.com>
+
+       * tracepoint.h (get_tracepoint_by_number): Updated declaration.
+       * tracepoint.c (get_tracepoint_by_number): Added `multi_p'
+       argument.  Now uses get_number_or_range and get_number.
+       (trace_pass_command): Allow a tracepoint range.
+       * breakpoint.h (get_number, get_number_or_range): Declare.
+       * breakpoint.c (get_number_trailer): New function.
+       (get_number): Rewrote to use get_number_trailer.
+       (get_number_or_range): New function.
+       (condition_command): Check `get_number' return value.
+       (commands_command): Likewise.
+       (ignore_command): Likewise.
+       (map_breakpoint_numbers): Use get_number_or_range.
+
+1999-11-01  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * remote-rdi.c (_initialize_remote_rdi): Make log commands
+       subcommands of maintenance. Remove improper identation from
+       command documentation.
+
+1999-11-01  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       From Grant Edwards <grante@visi.com>:
+       * rdi-share/etherdrv.c (fetch_ports): Print out additional TCP/IP
+       port information in ethernet driver if the DEBUG flag is set.
+       * rdi-share/hostchan.c (Adp_addToQueue): Changed #if statement in
+       hostchan.c to avoid compiler complaint when DEBUG macro was
+       undefined.
+       * rdi-share/unixcomm.c (Unix_ReadSerial): Print system error code
+       if read() system call fails.
+
+1999-11-01  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * rdi-share/bytesex.h: Deleted. Conflicts with a system header file
+       on some systems like Linux Red Hat 5.2.
+        * rdi-share/angel_bytesex.h: New file. Replaces the above.
+        * rdi-share/bytesex.c: Deleted. Name changed to match the header
+       mentioned above (this is the implementation file).
+        * rdi-share/angel_bytesex.c: New file. Replaces the above.
+        * rdi-share/Makefile.am: Reflect above changes.
+        * rdi-share/Makefile.in: Reflect above changes.
+
+1999-11-01  Jimmy Guo  <guo@cup.hp.com>
+
+       * annotate.c (breakpoints_changed, annotate_ignore_count_change,
+       annotate_stopped): Provide annotation for breakpoint ignore_count
+       changes but only provide once at annotate_stopped time for
+       sucessive ignore_count triggered breakpoint changes, to make GUIs
+       happy yet lazy.
+       * annotate.h (annotate_ignore_count_change): Declare.
+       * breakpoint.c (bpstat_stop_status): Call
+       annotate_ignore_count_change when ignore_count changes.
+
+1999-11-01  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       From Grant Edwards <grante@visi.com>:
+       * rdi-share/ardi.c (HandleStoppedMessage): Changed code that
+       handles the "stop" message so that unrecognized errors are
+       returned as "Error" rather than "NoError".  The old code resulted
+       in some error conditions not being reported to the user.
+
+1999-11-01  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       From Grant Edwards <grante@visi.com>:
+       * remote-rdi.c (arm_rdi_open): Added a call to Adp_CloseDevice()
+       before attempting to open a connection.  This allows the user to
+       issue the "target rdi" command multiple times (in case the user
+       needs to change options or re-initialize the link).
+
+1999-11-01  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       From Grant Edwards <grante@visi.com>:
+       * rdi-share/endian.h: Deleted.  Name clash with
+       /usr/include/endian.h. This was causing the wrong  byte order to
+       be used by htons() in the RDI Ethernet driver.
+       * rdi-share/angel_endian.h: New file.  Replaces the above.
+       * rdi-share/ardi.c: Replace include to reflect the above change.
+       * rdi-share/etherdrv.c: Ditto.
+       * rdi-share/hsys.c: Ditto.
+       * rdi-share/msgbuild.c: Ditto.
+       * rdi-share/params.c: Ditto.
+       * rdi-share/rx.c: Ditto.
+       * rdi-share/tx.c: Ditto.
+        * rdi-share/Makefile.am: Reflect above changes.
+        * rdi-share/Makefile.in: Reflect above changes.
+
+1999-11-01  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       From Grant Edwards <grante@visi.com>:
+        * remote-rdi.c (_initialize_remote_rdi): Added command
+       rdilogenable. Allows the user to log ADP packets that are
+       exchanged between gdb and the target.  Both the raw packets are
+       shown and some minimal decoding is attempted. Default state is
+       disabled.
+       (_initialize_remote_rdi): Added command rdilogfile. Allows the
+       user to specify the filename to which the ADP packet log is to be
+       written. Default state is "rdi.log".
+       (rdilogenable_command): New function. Related to rdilogenable.
+       (rdilogfile_command): New function. Related to rdilogfile.
+       * rdi-share/devsw.c (openLogFile, closeLogFile,
+       DevSW_SetLogEnable, DevSW_SetLogfile, dumpPacket): New
+       functions. Implement logging.
+       (DevSW_Read): Log if requested.
+       (DevSW_Write): Log if requested.
+       * rdi-share/devsw.h: Add prototypes for DevSW_SetLogfile and
+       DevSW_SetLogEnable.
+       * rdi-share/hostchan.c (Adp_SetLogEnable, Adp_SetLogfile): New
+       functions.  Related to rdilogenable and rdilogfile.
+       * rdi-share/hostchan.h: Add prototypes for the above functions.
+
+1999-11-01  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+        From Grant Edwards <grante@visi.com>:
+        * remote-rdi.c (arm_rdi_open): Added code to split the arguments
+        to the 'target rdi' command at the first space.  The first word is
+        passed to Adp_OpenDevice as the device name, the tail is passed as
+        the "arguments" parameter.  This allows user specified baud rates
+        -- among other things that still need to be documented [e.g. (gdb)
+        target rdi /dev/ttyS1 19200]. NB: With very limited testing, the
+        ARM Embedded-ICE seems to run at 19.2K (though it is reported to
+        be unreliable above 9600), and the EPI Jeeni seems to run at
+        38.4K.
+
+1999-11-01  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       From Grant Edwards <grante@visi.com>:
+       * remote-rdi.c (_initialize_remote_rdi): Added the boolean
+       set/show variable rdiromatzero. Should be set to true if the
+       target has ROM at address 0.  If true, then gdb will not tell the
+       target to trap fetches to interrupt vectors (which are located at
+       address 0).  Using the Angel monitor, attempting to set
+       breakpoints in ROM is an error.  Using JTAG debugging of the
+       ARM7TDMI, attempting to set more than two breakpoints in ROM is an
+       error. Default state is false (vectors will be trapped) -- used to
+       be hardwired false.
+
+1999-11-01  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       From Grant Edwards <grante@visi.com>:
+       * remote-rdi.c (_initialize_remote_rdi): Added the boolean
+       set/show variable rdiheartbeat. This enables or disables ADP
+       link-check "heartbeat" packets sent by the host to the target.
+       Heartbeat packets can cause both the ARM Embedded-ICE and the EPI
+       Jeeni to malfunction: If a heartbeat packet is received by the
+       target while it is sending a packet, that packet will be aborted,
+       and the ADP protocol engine then gets very confused. Default state
+       is off -- used to hardwired on.
+
+1999-10-29  Kevin Buettner  <kevinb@cygnus.com>
+
+       * i386-linux-nat.c (dummy_sse_values): Also define for systems
+       without PTRACE_GETXFPREGS.
+
+1999-10-29  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Hardware watchpoint fix from Eli Zaretskii <eliz@gnu.org>:
+       
+       * breakpoint.c (insert_breakpoints): Fetch the value of the
+       expression we need to watch.  If it's a lazy memory lvalue, then
+       we need to fetch it now, before we start the inferior again.
+       (insert_breakpoints, remove_breakpoint, bpstat_stop_status,
+       can_use_hardware_watchpoint): Only those values representing
+       memory we actually fetched need to be watched.
+
+1999-10-29  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * breakpoint.h (bpstat_print): Return 'enum print_stop_action',
+       not 'int'.
+
+1999-10-29  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * acconfig.h: Fix entries for HAVE_STRUCT_SAVE_STATE_T,
+       HAVE_STRUCT_MEMBER_SS_WIDE, and HAVE_PTRACE_GETXFPREGS.
+       * config.h.in: Regenerated.
+       
+1999-10-28  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Fixes for warnings from Andreas Jaeger <aj@suse.de>.
+       * linux-thread.c (linuxthreads_sig_restart,
+       linuxthreads_sig_cancel, linuxthreads_sig_debug): Add missing
+       initializers to avoid gcc warnings.
+       (resume_thread): Add braces as recommended by gcc -Wparentheses.
+       (stop_thread): Likewise.
+       (linuxthreads_wait): Likewise.
+       (linuxthreads_find_trap): Likewise.
+
+1999-10-28  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * infcmd.c: Fix typo.
+
+1999-10-28  Jim Blandy  <jimb@cygnus.com>
+
+       * gdbtypes.c (init_simd_type): The upper bound to
+       create_range_type is inclusive, not exclusive.
+
+       Add preliminary support for the Pentium-III's Streaming SIMD
+       Extensions --- specifically, the ability to read the XMM
+       registers.
+       * Configure.in: Check for PTRACE_GETXFPREGS, and #define
+       HAVE_PTRACE_GETXFPREGS if we have it.
+       * acconfig.h: Add entry for HAVE_PTRACE_GETXFPREGS.
+       * configure, config.in: Regenerated.
+       * config/i386/tm-linux.h (HAVE_SSE_REGS): #define, iff the
+       configure script #defined HAVE_PTRACE_GETXFPREGS.
+       (REGISTER_VIRTUAL_TYPE): Provide the proper types for the pointer
+       registers and the SSE registers. 
+       * i386-linux-nat.c (GETREGS_SUPPLIES, GETFPREGS_SUPPLIES,
+       GETXFPREGS_SUPPLIES): New macros.
+       (have_ptrace_getxfpregs): New variable.
+       (FPREGSET_T_FPREG_ADDR): Renamed from FPREGSET_T_FPREG_OFFSET.
+       (supply_fpregset, convert_to_fpregset): Callers changed.
+       (supply_xfpregset, convert_to_xfpregset, fetch_xfpregs,
+       store_xfpregs, dummy_sse_values): New functions.
+       (fetch_inferior_registers, store_inferior_registers): Use the
+       *_SUPPLIES macros to decide how to fetch a given register.  Use
+       {fetch,store}_xfpregs and dummy_sse_values to provide access to
+       the SSE registers, on systems where they are present.
+
+1999-10-28  Kevin Buettner  <kevinb@cygnus.com>
+
+       * gdbserver/gdbreplay.c (config.h, errno.h): Include.
+       (perror_with_name): Don't declare sys_nerr, sys_errlist, or errno
+       when STDC_HEADERS is defined.
+       * gdbserver/utils.c (STDC_HEADERS): Likewise.
+
+       * gdbserver/low-hppabsd.c, gdbserver/low-linux.c,
+       gdbserver/low-lynx.c, gdbserver/low-sim.c, gdbserver/low-sparc.c,
+       gdbserver/low-sun3.c (my_registers): Declare.
+       (registers): Changed from array type to pointer type in order
+       to match declaration in inferior.h in main gdb sources.
+       * gdbserver/server.h (registers): Likewise.
+       * gdbserver/remote-utils.c (outreg): Removed declaration of
+       registers[].
+
+       * gdbserver/low-linux.c (fetch_register): Changed PTRACE_PEEKUSR to
+       PTRACE_PEEKUSER.  [Note the missing 'E'.]
+       (store_inferior_registers): Likewise for PTRACE_POKEUSER.
+
+       * gdbserver/low-linux.c (sys/ptrace.h): Move include to
+       avoid conflict with #defines coming from <sys/user.h>.
+       (sys/reg.h): Only include when HAVE_SYS_REG_H is defined.
+       (PTRACE_XFER_TYPE): Provide a default type in case
+       the target doesn't define it.
+       (fetch_register, read_inferior_memory, write_inferior_memory):
+       Use PTRACE_XFER_TYPE instead of int for ptrace() transfers.
+       (I386_GNULINUX_TARGET): Use #ifdef with this symbol instead
+       of assuming it's an x86 target when it's not a m68k target.
+       (i386_register_raw_size, i386_register_byte): Define these arrays
+       to match other changes that've been occuring to the x86 target
+       in the main gdb sources.
+       (initialize_arch): New (static) function for doing target arch
+       specific initializations.
+
+       * gdbserver/server.h (MAXBUFBYTES, PBUFSIZ): New defines
+       [actually stolen from remote.c].
+       * gdbserver/remote-utils.c (putpkt): Use PBUFSIZ to make
+       sure that buffer is big enough.
+       * gdbserver/server.c (main): Ditto.
+
+       * gdbserver/remote-utils.c (outreg): Allow register numbers
+       bigger than 255.
+       (prepare_resume_reply):  Provide alternate mechanism,
+       GDBSERVER_RESUME_REGS, for defining list of registers to send
+       to gdb.
+       * gdbserver/Makefile.in (INTERNAL_CFLAGS): Swapped order of
+       INCLUDE_CFLAGS and BFD_CFLAGS to ensure that gdb's config.h
+       gets found before bfd's config.h.  Also added -DGDBSERVER
+       switch.
+       (INCLUDE_CFLAGS): Added -I.. .
+
+1999-10-27  Nick Clifton  <nickc@cygnus.com>
+
+       * arm-tdep.c (THUMB_BE_BREAKPOINT): Change to 0xbebe.
+       (THUMB_LE_BREAKPOINT): Change to 0xbebe.
+
+Mon Oct 25 18:22:06 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c: Document future of compare_sections_command.
+       (remote_insert_breakpoint, remote_remove_breakpoint,
+       remote_insert_watchpoint, remote_insert_watchpoint,
+       remote_remove_watchpoint, remote_insert_hw_breakpoint,
+       remote_remove_hw_breakpoint): Use alloca instead of GCC's dynamic
+       array feature.
+
+Mon Oct 25 18:08:31 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h (REGISTER_GDBARCH_SWAP): Define.
+       * gdbarch.sh: Update.
+
+Sat Oct 23 16:39:34 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.c (initialize_current_architecture): Make ``choice''
+       const.
+
+1999-10-22  Tom Tromey  <tromey@cygnus.com>
+
+       * gdbarch.sh: Updated for gdbarch.[ch] changes.
+       * top.c (gdb_init): Call initialize_current_architecture.
+       * gdbarch.h (initialize_current_architecture): Declare.
+       * gdbarch.c (initialize_current_architecture): New function.
+
+1999-10-21  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * utils.c (chars_per_line): fix typo in comment.
+
+1999-10-21  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * breakpoint.h (bp_print_how): New enum, used for deciding how to
+       print bpstat information when we stop, instead of having 3
+       different functions.
+       (struct bpstat): Change print_it field to be an enum instead of a
+       function pointer.
+
+       * breakpoint.c (print_it_typical): New name for print_it_normal().
+       (print_bp_stop_message): New function. High level routine for
+       printing of why we stopped.
+       (bpstat_print): Call print_bp_stop_message instead of using the
+       print_it function pointer.
+       (print_it_done, print_it_noop): Delete these functions.
+       
+1999-10-21  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * breakpoint.c (print_it_normal): Reorganize into a switch
+       statement.
+
+1999-10-21  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * Makefile.in (event-top.o): Add dependency on target.h.
+       * event-top.c: Make dependency on target.h explicit.
+
+       * breakpoint.c (bpstat_print): Clean up logic. Remove recursion.
+       (catch_exec_command_1): Surround with appropriate ifdef's,
+       to avoid compiler warnings.
+       (catch_fork_command_1): Ditto.
+
+1999-10-20  Jim Blandy  <jimb@cygnus.com>
+
+       * Makefile.in (dwarf2read.o): Note that this depends on bfd/elf-bfd.h.
+       (elf_bfd_h): New variable.
+
+1999-10-19  Jim Blandy  <jimb@cygnus.com>
+
+       * config/i386/tm-i386.h (REGISTER_NAMES): Change names of FPU
+       instruction and operand pointer registers to improve consistency,
+       following J. T. Conklin's suggestions.
+
+1999-10-18  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * breakpoint.h: Change return type of field print_it of struct
+       bpstats to enumeration print_stop_action.
+       Define new enumeration print_stop_action.
+
+       * breakpoint.c (print_it_normal): Change return type to
+       enumeration type print_stop_action. Handle bp_shlib_event here
+       instead of in normal_stop().
+       (bpstat_print): Change return type to enumeration type
+       print_stop_action.
+       (print_it_done): Ditto.
+       (print_it_noop): Ditto.
+       
+       * infrun.c (is_internal_shlib_eventpoint): Delete this function.
+       (stopped_for_internal_shlib_event): Delete.
+       (normal_stop): Move logic to handle bp_shlib_event from here to
+       print_it_normal(). Use switch to handle return value from
+       bpstat_print().
+
+Mon Oct 18 17:32:51 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * symfile.c (generic_load): Rewrite.  Make the size of each
+       chunk/block write a run-time option. Check for quit_flag.
+       Use target_write_memory_partial for downloads.
+
+1999-10-18  Jim Blandy  <jimb@cygnus.com>
+
+       Change Linux x86 register support to use the new tm-i386.h layout.
+       * config/i386/tm-linux.h (HAVE_I387_REGS): #define this, so we get
+       the full set of FP register definitions from tm-i386.h.
+       (REGISTER_RAW_SIZE, REGISTER_NAMES, REGISTER_BYTES, REGISTER_BYTE,
+       MAX_REGISTER_VIRTUAL_SIZE, MAX_REGISTER_RAW_SIZE, NUM_REGS,
+       NUM_FREGS): Remove #undefs and subsequent redefinitions: we're
+       using the values from tm-i386.h now.
+       (FPSTART_REGNUM, FPCONTROL_REGNUM, FPSTATUS_REGNUM, FPTAG_REGNUM,
+       FPDATA_REGNUM, FPEND_REGNUM, FPENV_BYTES, FPREG_RAW_SIZE,
+       FPREG_BYTES): Deleted.
+       (TARGET_LONG_DOUBLE_BIT): Deleted.
+       (REGISTER_CONVERTIBLE, REGISTER_CONVERT_TO_VIRTUAL,
+       REGISTER_CONVERT_TO_RAW): Redefine these only if LD_I387 is #defined.
+       * i386-linux-nat.c (convert_to_gregset, convert_to_fpregset,
+       FPREGSET_T_FPREG_OFFSET): New functions and macros.
+       (supply_gregset, fill_gregset, supply_fpregset,
+       fill_fpregset, fetch_fpregs, store_fpregs, fetch_regs,
+       store_regs, fetch_inferior_registers, store_inferior_registers):
+       Adjusted to use new macros from tm-i386.h.
+       
+       * config/i386/tm-i386.h: Provide a decent x86 FPU description here,
+       so that the various i386 targets can share more FPU handling code.
+       (NUM_GREGS): New macro.
+       (NUM_SSE_REGS): New macro, dependent on HAVE_SSE_REGS
+       (NUM_FREGS): Depend on HAVE_I387_REGS.
+       (NUM_REGS, REGISTER_BYTES): Define in terms of NUM_GREGS,
+       NUM_FREGS, and NUM_SSE_REGS.
+       (MAX_NUM_REGS): New macro.
+       (REGISTER_NAMES): Expand name list with FPU control registers and
+       SSE registers.
+       (FP7_REGNUM, FCTRL_REGNUM, FSTAT_REGNUM, FTAG_REGNUM, FCS_REGNUM,
+       FCOFF_REGNUM, FDS_REGNUM, FDOFF_REGNUM, FOP_REGNUM,
+       FIRST_FPU_CTRL_REGNUM, LAST_FPU_CTRL_REGNUM): New macros, more
+       fully describing the FPU register set.
+       (XMM0_REGNUM, XMM7_REGNUM, MXCSR_REGNUM): New macros, describing
+       the SSE register set.
+       (IS_FP_REGNUM, IS_SSE_REGNUM, FPU_REG_RAW_SIZE, SIZEOF_GREGS,
+       SIZEOF_FPU_REGS, SIZEOF_FPU_CTRL_REGS, SIZEOF_SSE_REGS): New
+       convenience macros.
+       (REGISTER_BYTE, REGISTER_RAW_SIZE, REGISTER_VIRTUAL_SIZE): Turn
+       these into tables, since the register sizes are pretty irregular.
+       (i386_register_byte, i386_register_raw_size,
+       i386_register_virtual_size): New extern declarations.
+       (TARGET_LONG_DOUBLE_BIT): Define.
+       (MAX_REGISTER_RAW_SIZE): Bump to 16, for the SSE registers.
+       (REGISTER_VIRTUAL_TYPE, REGISTER_CONVERTIBLE,
+       REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW): New macros
+       for handling floating-point registers.
+       (i387_to_double, double_to_i387): New extern declarations.
+       * i386-tdep.c (i386_register_byte, i386_register_raw_size,
+       i386_register_virtual_size): New arrays.
+       (_initialize_i386_tdep): Initialize i386_register_byte and
+       i386_register_virtual_size.
+
+       * i386-tdep.c (_initialize_i386_tdep): Move new_cmd to a block
+       created specially for its use.
+
+Mon Oct 18 23:36:58 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * symfile.c (generic_load): Cleanup the validate code - remove
+       #ifdef, use paddr to print address.
+       (validate_download): Static, replace VALIDATE_DOWNLOAD
+       
+       * symfile.c (generic_load): Use strtoul to scan the optional load
+       offset.  Allocate a filename of the correct size.
+
+Mon Oct 18 17:32:51 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * symfile.c (generic_load): Don't filter output. Use
+       print_transfer_performance for summary. Use paddr for addresses.
+       (print_transfer_performance): New function.  Includes write count.
+       (report_transfer_performance): Call
+       print_transfer_performance. Deprecate.
+
+       * defs.h (print_transfer_performance): Add declaration.
+       (generic_load): Move declaration to here.
+       * symfile.h (generic_load): From here.
+
+Mon Oct 18 16:29:52 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * remote.c (remote_write_bytes): Re-write.  Transfer a single
+       packet and then return the that packets byte size.
+
+Sun Oct 17 15:09:00 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (remote_console_output): Flush gdb_stdtarg after
+       processing an ``O'' packet.
+       * remote.h (remote_console_output): Strip PARAMS.
+       
+Sun Oct 17 15:12:33 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * target.c (target_xfer_memory_partial): New function. Simple
+       implementation of partial memory reads.
+       (target_read_memory_partial): New function.  Replaces old
+       target_read_memory_partial.
+       (target_write_memory_partial): New function.
+       * target.h: Update.
+
+       * valprint.c (partial_memory_read): New function, based on old
+       memory_read_partial.  Implement partial memory reads the way that
+       val_print_string likes.
+       (val_print_string): Use partial_memory_read.
+
+Sun Oct 17 13:58:56 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h (ui_load_progress_hook): Add declaration.
+       * dsrec.c (ui_load_progress_hook): Delete extern declaration.
+       
+       * symfile.c (ui_load_progress_hook): Make first argument const.
+       (generic_load): Don't cast the result of bfd_get_section_name.
+       Replace ``sect'' with ``sect_name'', use consistently.
+
+1999-10-15  Jim Blandy  <jimb@cygnus.com>
+
+       Add beginnings of support for SIMD register types.
+       * gdbtypes.c (init_simd_type): New function for building
+       types for registers consisting of arrays of objects.
+       (builtin_type_v4sf): New built-in type.
+       (build_gdbtypes): Initialize it.
+       (_initialize_gdbtypes): Arrange for gdbarch swapping.
+       * gdbtypes.h (builtin_type_v4sf): Add external decl.
+
+Fri Oct 15 18:20:33 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote-hms.c: Commented out H8 code.
+
+Fri Oct 15 17:46:39 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * dcache.c (dcache_p): Rename variable remote_dcache.  Make
+       static.
+       (_initialize_dcache): Fix description of ``set remotecache''.
+       Cache is OFF by default.
+
+1999-10-13  Jim Blandy  <jimb@cygnus.com>
+
+       * valops.c (value_push): Don't forget to initialize container_len.
+
+Wed Oct 13 17:58:20 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * utils.c (tui_file_flush): Don't call flush_hook.  Don't try to
+       flush ``astring''.
+       * gdb-events.sh: Update
+       * top.c (flush_hook): Delete.
+
+1999-10-13  Kevin Buettner  <kevinb@cygnus.com>
+
+       * mem-break.c (memory_insert_breakpoint,
+       memory_remove_breakpoint): Added missing return statements.
+
+Wed Oct 13 20:53:42 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * utils.c (mem_fileopen, mem_file_delete, mem_file_new,
+       mem_file_rewind, mem_file_put, mem_file_fputs): New functions.
+       * defs.h (mem_fileopen): Declare.
+       
+1999-10-13  Kevin Buettner  <kevinb@cygnus.com>
+
+       * mem-break.c (default_memory_insert_breakpoint): Renamed from
+       memory_insert_breakpoint.
+       (default_memory_remove_breakpoint): Renamed from
+       memory_remove_breakpoint.
+       (memory_insert_breakpoint, memory_remove_breakpoint,
+       MEMORY_INSERT_BREAKPOINT, MEMORY_REMOVE_BREAKPOINT):  New
+       wrappers.
+       * target.h (default_memory_remove_breakpoint,
+       default_memory_insert_breakpoint): Added declarations.
+       * gdbarch.sh (MEMORY_INSERT_BREAKPOINT, MEMORY_REMOVE_BREAKPOINT):
+       New methods.
+       * gdbarch.h, gdbarch.c (MEMORY_INSERT_BREAKPOINT,
+       MEMORY_REMOVE_BREAKPOINT, gdbarch_memory_insert_breakpoint,
+       gdbarch_memory_remove_breakpoint, set_gdbarch_memory_insert_breakpoint,
+       set_gdbarch_memory_remove_breakpoint) : Generated from gdbarch.sh.
+
+Wed Oct 13 19:15:51 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h: Remove PARAMS from all declarations.  Re-indent.  Clean
+       up the gdb_file declarations.
+
+Tue Oct 12 12:19:07 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * i386-linux-nat.c (supply_fpregset, fill_fpregset): copy
+       from/to start of fpregsetp not start of st_space as the first
+       stuff we copy is the FP control registers not the actual FP values.
+
+1999-10-12  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * eval.c (evaluate_subexp_standard): Fix gdb invocation of
+       inferior C functions when debugging C++ code.
+       * valops.c (find_overload_match): Ditto.
+       * symtab.c (make_symbol_overload_list): Ditto.
+
+1999-10-11  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * config/pa/tm-hppa.h (SYMBOLS_CAN_START_WITH_DOLLAR): It's not
+       enough to #define this; you have to give it a non-zero value.
+
+1999-10-11  Jim Blandy  <jimb@cygnus.com>
+
+       Fix from Jim Kingdon <kingdon@redhat.com>, with tweaks to make it
+       gdbarch- and bigendian-friendly:
+       * valops.c (PARM_BOUNDARY): If not #defined, default to zero.
+       (value_push): If PARM_BOUNDARY is not zero, align arguments to
+       that boundary.
+       * config/i386/tm-i386.h: Define PARM_BOUNDARY.
+
+Mon Oct 11 14:23:55 1999  Fred Fish  <fnf@cygnus.com>
+
+       * config/mips/tm-irix3.h (PS_REGNUM): Don't undef if we aren't
+       going to redefine it to something else.
+
+1999-10-11  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * dwarfread.c (read_func_scope): Don't try to set main_func_*;
+       we handle that in blockframe.c:inside_main_func.
+       * dwarf2read.c (read_func_scope): Likewise.
+       (dwarf2_add_field, dwarf2_add_member_fn): Get member function name
+       directly, not from mangled name.
+       (skip_member_fn_name): Lose.
+
+Mon Oct 11 12:24:52 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * serial.h (enum serial_rc): Clarify SERIAL_TIMEOUT and
+       restrictions on TIMEOUT in ASYNC mode.
+
+       * serial.c (serial_readchar): Check for invalid timeout when in
+       async mode.  Disable test.
+
+Thu Oct  7 17:20:01 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * monitor.c (monitor_printable_string): Add length argument. Don't
+       return final string length.
+       (monitor_printf_noecho, monitor_printf, monitor_expect): Update.
+       (monitor_error): Pass real_len to monitor_printable_string.
+       (monitor_error): Rewrite. Replace printf fmt string parameter with
+       function name and message parameters.
+       (monitor_read_memory_single, monitor_read_memory): Update.
+
+1999-10-07  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * main.c (print_gdb_help): Fix bug reporting address.
+       * gnu-regex.h, gnu-regex.c: Ditto.
+
+1999-10-07  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * parse.c (SYMBOLS_CAN_START_WITH_DOLLAR): New macro,
+       whose value can be overridden by target files.
+       (write_dollar_variable): Don't check the symbol table for
+       identifiers beginning with `$' unless
+       SYMBOLS_CAN_START_WITH_DOLLAR is non-zero.
+       * config/pa/tm-hppa.h (SYMBOLS_CAN_START_WITH_DOLLAR): Define.
+       * doc/gdbint.texinfo (SYMBOLS_CAN_START_WITH_DOLLAR): Document.
+
+       Remove all traces of the BINOP_SCOPE operator.  It's never
+       generated, and not implemented.
+       * expression.h (enum exp_opcode): Delete BINOP_SCOPE.
+       * c-lang.c (c_op_print_tab): Delete entry for BINOP_SCOPE.
+       * eval.c (evaluate_subexp_standard): Doc fix.
+       * expprint.c (op_name): Remove case for BINOP_SCOPE.
+       (dump_subexp): Same.
+
+       * dwarf2read.c (dwarf2_const_value): Treat DW_FORM_data1,
+       DW_FORM_data2, DW_FORM_data4, and DW_FORM_data8 as signed values,
+       since that's what read_var_value will do anyway.
+
+1999-10-07  Fred Fish  <fnf@cygnus.com>
+
+       * objfiles.h (struct objfile): Delete is_solib member, now handled
+       by OBJF_SHARED bit in struct objfile's flags.
+       * objfiles.c (objfile_purge_solibs): Check OBJF_SHARED bit in flags
+       instead of old is_solib int member in objfile struct.
+
+       * objfiles.c (allocate_objfile): Remove is_solib arg.  Now passed
+       as a bit in combined flags arg.
+       * symfile.c (symbol_file_add): Ditto.
+       * objfiles.h (allocate_objfile): Adjust prototype after removal
+       of is_solib arg.
+       * symtab.h (symbol_file_add): Ditto.
+
+       * cxux-nat.c (add_shared_symbol_files): Remove zero passed to
+       symbol_file_add in old is_solib arg, defaults to zero now in
+       flags.
+       * irix5-nat.c (symbol_add_stub): Ditto.
+       * remote-mm.c (mm_load): Ditto.
+       * remote-udi.c (udi_load): Ditto.
+       * remote-vx.c (vx_add_symbols): Ditto.
+       * symfile.c (symbol_file_command): Ditto.
+       (add_symbol_file_command): Ditto.
+
+       * coff-solib.c (coff_solib_add): Call symbol_file_add with
+       OBJF_SHARED in flags bit, rather than 1 in old is_solib
+       arg.
+       * osfsolib.c (symbol_add_stub): Ditto.
+       * pa64solib.c (pa64_solib_add_solib_objfile): Ditto.
+       * solib.c (symbol_add_stub): Ditto.
+       * somsolib.c (som_solib_add_solib_objfile): Ditto.
+       * win32-nat.c (handle_load_dll): Ditto.
+
+       * objfiles.c (allocate_objfile): Remove old args "mapped" and
+       "user_loaded".  Replaced with new arg "flags" containing specific
+       If global var mapped_symbol_files is nonzero
+       then set OBJF_MAPPED in flags arg.  Check for OBJF_MAPPED bit in
+       flags where we used to check mapped arg.
+       Pass flags to open_mapped_file instead of mapped arg.
+       Ensure that OBJF_MAPPED bit is reset in flags when the objfile
+       is not mapped.  Add passed flags bits to objfile's flags bits.
+       (open_mapped_file): Replace "mapped" arg with new "flags" arg.
+       Adjust prototype.  Pass flags to open_existing_mapped_file.
+       (open_existing_mapped_file): Replace "mapped" arg with new "flags".
+       Check flags for OBJF_MAPPED.
+       * objfiles.h (allocate_objfile): Adjust prototype.
+       * rs6000-nat.c (add_vmap): Pass zero for combined flags, rather
+       than separate zero ints for old "mapped" and "user_loaded" flags.
+       * symfile.c (symbol_file_add): Pass allocate_objfile combined flags
+       rather than individual mapped and user loaded bits.
+
+       * symfile.c (symbol_file_add): Delete user_loaded arg.
+       * symtab.h (symbol_file_add): Adjust prototype for deleted
+       user_loaded arg.
+       * objfiles.h (struct objfile): Delete user_loaded member.
+       (OBJF_USERLOADED): New flag bit to replace user_loaded.
+
+       * symfile.c (symbol_file_command): Add OBJF_USER_LOADED to flags
+       passed to symbol_file_add.  Delete previous passing of explicit 1
+       for user_loaded.
+       (add_symbol_file_command): Ditto.
+
+       * coff-solib.c (coff_solib_add): No longer pass zero for user loaded,
+       now defaults to zero in flags.
+       * cxux-nat.c (add_shared_symbol_files): Ditto.
+       * irix5-nat.c (symbol_add_stub): Ditto.
+       * osfsolib.c (symbol_add_stub): Ditto.
+       * remote-mm.c (mm_load): Ditto.
+       * pa64solib.c (pa64_solib_add_solib_objfile): Ditto.
+       * remote-udi.c (udi_load): Ditto.
+       * remote-vx.c (vx_add_symbols): Ditto.
+       * solib.c (symbol_add_stub): Ditto.
+       * somsolib.c (som_solib_add_solib_objfile): Ditto.
+       * win32-nat.c (handle_load_dll): Ditto.
+
+Thu Oct  7 19:24:05 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (monitor.o): Allow monitor.o to be compiled with
+       -Werror.
+
+       * monitor.c (monitor_debug_p): New variable. Replaces macro.
+       (EXTRA_RDEBUG): Delete.  Update all uses.
+       (monitor_debug): New function.  Replaces macro.
+       (RDEBUG): Delete macro.  Update all uses.
+       debug output to gdb_stdlog and not the console.
+
+       * monitor.c: Fix printf formating.  Replace printf calls with
+       fprintf_unfiltered.
+
+1999-10-06  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * MAINTAINERS: Switch ARM target maintenance from Elena
+       Zannoni to Jim Ingham.
+
+1999-10-06  Frank Ch. Eigler  <fche@cygnus.com>
+
+       * remote.c (hexnumnstr): New function.  Allow setting of width.
+       (hexnumstr): Call the above.
+       (remote_write_bytes): Fill in X-protocol address field more
+       reliably.
+
+1999-10-06  Fred Fish  <fnf@cygnus.com>
+
+       * xcoffread.c (xcoff_symfile_offsets): Fix typo, addr->addrs.
+
+1999-10-06  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * remote.c (handle_remote_sigint_twice): Make this signal be
+       handled by inferior_event_handler, via the wrapper function.
+       (async_remote_interrupt_twice): Make not static. Add debug print.
+       * remote.h (async_remote_interrupt_twice): Export for use in
+       inf-loop.c.
+
+       * inf-loop.c (inferior_event_handler_wrapper): New function.
+       (inferior_event_handler): Handle a request to quit and kill the
+       target.
+       Include remote.h.
+       * inf-loop.h (inferior_event_handler_wrapper): Export.
+
+1999-10-04  James Ingham  <jingham@leda.cygnus.com>
+
+       * remote-rdi.c (arm_rdi_open): If the angel_RDI_Open fails, close
+       the serial port and raise an error.  If you try to go on, you will 
+       stall forever down in the rdi-share code.
+
+1999-10-04  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * printcmd.c (output_command): Makes sure result from the output
+       command is printed before the next prompt.
+
+1999-10-04  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * printcmd.c (print_formatted): Add missing stream parameter.
+       (do_examine, print_command_1, output_command, do_one_display):
+       Adjust call to print_formatted().
+
+1999-10-04  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * infcmd.c: Remove include of event-loop.h.
+       * utils.c: Ditto.
+       * top.c: Ditto.
+
+       * infrun.c (fetch_inferior_event): Call inferior_event_handler
+       when inferior stops, instead of doing work ourselves.  
+       (fetch_inferior_event): Use void* instead of gdb_client_data.
+       Remove includes of event-top.h and event-loop.h. Add include of
+       inf-loop.h.
+       (complete_execution): Move from here.
+
+       * inf-loop.c (complete_execution): To here.
+       (inferior_event_handler): Handle inferior's execution completion
+       case as well.
+       * inf-loop.h: Add def of INF_LOOP_H.
+       
+       * event-top.h: Don't use gdb_client_data, use void*, to avoid
+       dependency on event-loop.h.
+       
+       * remote.c (remote_async_resume): Set target_executing only after we
+       actually register the inferior with the event loop.
+
+1999-10-04  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * corefile.c (memory_error): Use error_stream() and eliminate call
+       to return_to_top_level().
+
+1999-10-04  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * utils.c (error): Save error message text (w/o new line).
+       (error_last_message): New function. Returns the last message
+       issued by gdb.
+       (error_init): New function. Initializes error handling machinery.
+       (error_stream): New function. Allows the error message to be
+       passed on a stream buffer.
+       * defs.h: Add prototypes for error_stream() and
+       error_last_message().
+       * main.c (main): Add call to error_init().
+
+1999-10-04  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * utils.c (tui_sfileopen): New function.  Replaces
+       gdb_file_init_astring().
+       * defs.h: Add prototype for the above.
+
+Mon Oct  4 19:25:55 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * symfile.c (add_symbol_file_command): Fix -Wformat on query call.
+
+1999-10-01  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * target.c (cleanup_target): Type of to_async param is now
+       function with enum inferior_event_type param.
+       
+       * target.h (target_ops): Adjust to_async accordingly. Move enum
+       inferior_event_type to this file.  Don't have a typedef for
+       inferior_event_type. Add more enumeration constants INF_QUIT_REQ,
+       INF_EXEC_COMPLETE. Remove INF_SIGINT_FIRST, INF_SIGINT_SECOND.
+
+       * inf-loop.c (inferior_event_handler): Change first param to tell
+       the type of event we are dealing with. Deal with INF_ERROR and
+       INF_REG_EVENT, for the moment. 
+       Include target.h.
+
+       * inf-loop.h (inferior_event_handler): Adjust prototype. Remove
+       enum inferior_event_type from here.
+       
+       * remote.c (remote_async_serial_handler): Pass INF_REG_EVENT to
+       the client callback.
+       (remote_async): Change callback's param type to inferior_event_type.
+       (async_client_callback): Change type as above.
+       
+1999-10-01  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-top.c (stdin_event_handler): Delete fd parameter, use
+       input_fd instead.
+       * event-top.h (stdin_event_handler): Delete fd parameter.
+
+       * inf-loop.c (inferior_event_handler): Delete fd parameter.  Use
+       target_async() to unregister the inferior fd in case of errors.
+       * inf-loop.h(inferior_event_handler): Delete fd parameter. 
+
+       * ser-unix.c (fd_event): Delete fd parameter. Use scb->fd,
+       instead.
+
+       * remote.c (async_client_callback):  Delete fd parameter.
+       (remote_async_serial_handler): Ditto.
+       (remote_async): Adjust to new type of callback function.
+
+       * target.c (cleanup_target): Adjust parameters for to_async
+       default case.
+       * target.h (*to_async): Delete fd parameter from cb function.
+
+       * event-loop.h (handler_func): Delete fd parameter.
+       * event-loop.c (handle_file_event): Delete fd param from call to
+       proc. Do not include inferior.h.
+       
+1999-10-01  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-loop.c (inferior_event_handler,
+       inferior_event_handler_wrapper): Move from here.
+       * inf-loop.c: To here. New file.
+       
+       * event-loop.h (inferior_event_handler): Move from here.
+       * inf-loop.h: To here. New file.
+
+       * remote.c: Include inf-loop.h.
+       (set_extende_protocol): Remove unused prototpye.
+
+       * Makefile.in (SFILES): Add inf-loop.c. 
+       (inf_loop_h): Define.
+       (COMMON_OBS): Add inf-loop.o.
+       (inf-loop.o): Add rule.
+       (remote.o): Add dependency on inf-loop.h.
+
+Fri Oct  1 19:59:31 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ser-unix.c: Add some notes on how the async code works.
+
+Fri Oct  1 01:45:32 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * somread.c (som_symfile_offsets): Fix typo in last change.
+
+1999-09-30  Fred Fish  <fnf@cygnus.com>
+
+       * coff-solib.c (coff_solib_add): Adjust call to symbol_file_add.
+       * cxux-nat.c (add_shared_symbol_files): Ditto.
+       * irix5-nat.c (symbol_add_stub): Ditto.
+       * osfsolib.c (symbol_add_stub): Ditto.
+       * pa64solib.c (pa64_solib_add_solib_objfile): Ditto.
+       * remote-mm.c (mm_load): Ditto.
+       * remote-udi.c (udi_load): Ditto.
+       * remote-vx.c (vx_add_symbols): Ditto.
+       * solib.c (symbol_add_stub): Ditto.
+       * somsolib.c (som_solib_add_solib_objfile): Ditto.
+       * win32-nat.c (handle_load_dll): Ditto.
+
+       * irix5-nat.c (symbol_add_stub): Add section_addrs, zero it.
+       * cxux-nat.c (add_shared_symbol_files): Ditto.
+       * osfsolib.c (symbol_add_stub): Ditto.
+       * pa64solib.c (pa64_solib_add_solib_objfile): Ditto.
+       * solib.c (symbol_add_stub): Ditto.
+       * somsolib.c (som_solib_add_solib_objfile): Ditto.
+       * symfile.c (symbol_file_command): Ditto.
+       * win32-nat.c (handle_load_dll): Ditto.
+
+       * irix5-nat.c (symbol_add_stub): Use section_addrs to pass text addr.
+       * cxux-nat.c (add_shared_symbol_files): Ditto.
+       * osfsolib.c (symbol_add_stub): Ditto.
+       * pa64solib.c (pa64_solib_add_solib_objfile): Ditto.
+       * solib.c (symbol_add_stub): Ditto.
+       * somsolib.c (som_solib_add_solib_objfile): Ditto.
+       * symfile.c (symbol_file_command): Ditto.
+       * win32-nat.c (handle_load_dll): Ditto.
+
+       * coff-solib.c (coff_solib_add): Call symbol_file_add with NULL ptr.
+       * cxux-nat.c (add_shared_symbol_files): Ditto.
+       * remote-udi.c (udi_load): Ditto.
+       * remote-vx.c (vx_add_symbols): Ditto.
+       * symfile.c (symbol_file_command): Ditto.
+
+       * dstread.c (dst_symfile_offsets): Take "section_addr_info *"
+       instead of CORE_ADDR.
+       * somread.c (som_symfile_offsets): Ditto.
+       * symfile.c (default_symfile_offsets): Ditto.
+       * xcoffread.c (xcoff_symfile_offsets): Ditto.
+
+       * symfile.h (default_symfile_offsets): Adjust prototype.
+       (syms_from_objfile): Ditto.
+       * symtab.h (symbol_file_add): Ditto.
+
+       * rs6000-nat.c (objfile_symbol_add): Call syms_from_objfile with NULL.
+       * xcoffsolib.c (solib_add): Ditto.
+       * gdb-stabs.h (SECT_OFF_MAX): Increase from 4 to 16.
+       * symtab.h (MAX_SECTIONS): Define.
+       (struct section_addr_info): New struct for better control over
+       changing load addresses of sections.
+       * objfiles.h (OBJF_READNOW): Add new flag bit.
+       * symfile.h (sym_offsets): Change second param from CORE_ADDR to
+       "section_addr_info *".
+
+       * symfile.c (symbol_file_add): Replace scalar arg "CORE_ADDR addr"
+       with "struct section_addr_info *addrs".
+       (syms_from_objfile): Ditto.
+       (add_symbol_file_command): Remove local variables "readnow" and
+       "mapped".  Replaced with general "flags" variable.
+       (symbol_file_command): Ditto.
+       (add_symbol_file_command): Add local variables i, sec_num, argcnt,
+       expecting_option, option_index, and opt. Rework option parsing code
+       to handle additional options.
+       (_initialize_symfile): Adjust add-symbol-file usage to match new
+       option handling.
+       (symbol_file_add): Remove parameters "mapped" and "readnow",
+       replace with general "flags".
+       (symbol_file_add): In call to allocate_objfile, replace "mapped"
+       with extracted OBJF_MAPPED bit from flags.
+       (symbol_file_add): Use OBJF_READNOW bit from flags, instead of
+       "readnow" variable.
+       (symbol_file_command): Set OBJF_MAPPED and OBJF_READNOW bits
+       from parsed options.  Pass flags to symbol_file_add.
+       (add_symbol_file_command): Ditto.
+       (syms_from_objfile): Add local variables i, sect, lower_sect,
+       lower_offset, and local_addr.  Substitute local_addr for addrs
+       when addrs is NULL.  Find lowest loadable section to be used as
+       starting point for contiguous sections.  Adjust offsets if segments
+       are not contiguous.  Call sym_offsets with section_addr_info
+       instead of single addr.
+       (default_symfile_offsets): Initialize objfile's section_offsets
+       with user specified offsets.
+       (symbol_file_add): Call syms_from_objfile with offsets.
+       (unknown_option_complaint): Add.
+       (add_symbol_file_command): Add "section_addrs", zero it with memset.
+
+1999-09-30  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * configure.in: Call config.sub explicitly instead of misusing the
+       autoconf internal variable $ac_config_sub.
+       * configure: Regenerated.
+
+Thu Sep 30 15:53:59 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (readchar): When EOF mourn the inferior.
+       (getpkt): Try QUIT.  Might not be a watchdog timer timeout.
+       (remote_async_serial_handler): Pass ``-1'' as the dummy FD.  Safer
+       than ZERO == STDIN.
+
+       * serial.h (enum serial_rc): Replace #define SERIAL_ERROR,
+       SERIAL_TIMEOUT and SERIAL_EOF.
+       (struct _serial_t): Add more notes on termios specific fields.
+
+       * ser-unix.c (generic_readchar): Make SERIAL_ERROR sticky.
+       (do_hardwire_readchar, do_unix_readchar): Don't use bufcnt as a
+       tempoary for the return-value from read.
+
+       * serial.c (serial_logchar): Add a stream parameter.
+       (serial_readchar, serial_write, serial_send_break): Update.
+       (serial_readchar): Add serial debug trace.
+
+Thu Sep 30 12:07:03 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * serial.h (struct _serial_t): Add field async_state.  Better
+       document field bufcnt.
+       (SERIAL_ERROR): Delete comment about errno.
+       * serial.c (serial_open, serial_fdopen): Initialize async_state.
+
+       * ser-unix.c (push_event, fd_event, reschedule): New functions.
+       Handle ASYNC serial input.
+       (ser_unix_async): Update.
+       (generic_readchar): New function. Handle event scheduling. Make
+       EOF condition sticky.
+       (do_unix_readchar): Rename ser_unix_readchar.
+       (ser_unix_readchar): New function, call do_unix_readchar via
+       generic_readchar.
+       (do_hardwire_readchar, hardwire_readchar): Ditto.
+
+       * ser-unix.c (ser_unix_readchar): Delete code working around ASYNC
+       fifo bugs.
+       (hardwire_readchar): Delete code working around ASYNC fifo bugs.
+
+Wed Sep 29 21:27:16 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * breakpoint.c (insert_breakpoints): Addresses are CORE_ADDRs,
+       not "int"s.
+       (remove_breakpoint): Likewise.
+
+1999-09-29  Fred Fish  <fnf@cygnus.com>
+
+       * breakpoint.c (breakpoint_1):  Replace cast "(CORE_ADDR) - 1"
+       with the more obviously intended expression "(CORE_ADDR) -1".
+       * dwarf2read.c (scan_partial_symbols, read_file_scope): Ditto.
+       * gnu-nat.c (gnu_create_inferior): Ditto.
+       * go32-nat.c (go32_create_inferior): Ditto.
+       * hppa-tdep.c (hppa_pop_frame): Ditto.
+       * infcmd.c (continue_command, step_1, signal_command): Ditto.
+       (until_next_command, finish_command): Ditto.
+       * infrun.c (proceed): Ditto.
+       * inftarg.c (child_create_inferior): Ditto.
+       * m3-nat.c (m3_create_inferior): Ditto.
+       * mac-nat.c (child_create_inferior): Ditto.
+       * procfs.c (procfs_create_inferior): Ditto.
+       * remote-sim.c (gdbsim_create_inferior): Ditto.
+       * target.c (target_link): Ditto.
+       * win32-nat.c (child_create_inferior): Ditto.
+
+Thu Sep 30 10:36:19 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ser-unix.c (ser_unix_flush_input): New function.  Discard input
+       buffer.
+       (hardwire_flush_input): Use ser_unix_flush_input.
+       (ser_unix_nop_flush_input): Delete.
+       * ser-unix.h (ser_unix_flush_input): Update.
+       ser-tcp.c (_initialize_ser_tcp), ser-pipe.c
+       (_initialize_ser_pipe): Update.
+       
+       * ser-unix.c (hardwire_write): Delete.
+       (_initialize_ser_hardwire): Update, use ser_unix_write.
+
+Thu Sep 30 10:16:50 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ser-pipe.c (pipe_open): Don't make the FD non-blocking.  Already
+       being handled in ser_unix_wait_for by a select.
+       
+Thu Sep 30 10:00:32 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * serial.h (struct _serial_t): Add field debug_p.
+       (SERIAL_DEBUG, SERIAL_DEBUG_P): Define.
+
+       * serial.c (serial_open, serial_fdopen): Initialize debug_p.
+       (serial_debug, serial_debug_p): New functions.
+       (global_serial_debug_p): New variable.
+       (_initialize_serial): Add ``set serialdebug'' command.
+
+Thu Sep 30 09:09:38 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * serial.h (serial_event_ftype): Replace FD and ERROR args with
+       SERRIAL_T arg.
+       * ser-unix.c (ser_unix_event): Update.
+
+       * remote.c (remote_async_serial_handler): New function.  Handle
+       serial events.
+       (remote_async): Pass remote_async_serial_handler to SERIAL.
+       (async_client_callback, async_client_context): New variables.
+
+       * remote.c (extended_remote_async_create_inferior): Use
+       target_async to register the inferior event handler.
+
+Thu Sep 30 00:02:03 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * configure.in (AC_CHECK_FUNCS): Test for sigprocmask.
+       * configure, config.in: Re-generate.
+       * event-top.c (async_stop_sig): Use sigprocmask when available.  
+
+1999-09-29  Doug Evans  <devans@casey.cygnus.com>
+
+       * sh-stub.c (handle_exception): Fix typo in patch of 1999-08-26.
+       * m68k-stub.c (handle_exception): Ditto.
+
+1999-09-28  Fred Fish  <fnf@cygnus.com>
+
+       * alpha-nat.c (alpha_osf_core_fns, alpha_elf_core_fns):
+       Add default entries for check_format and core_sniffer.
+       * core-aout.c (aout_core_fns): Ditto.
+       * core-regset.c (regset_core_fns): Ditto.
+       * core-sol2.c (solaris_core_fns): Ditto.
+       * i386aix-nat.c (i386aix_core_fns): Ditto.
+       * i386mach-nat.c (i386mach_core_fns): Ditto.
+       * irix4-nat.c (irix4_core_fns): Ditto.
+       * irix5-nat.c (irix5_core_fns): Ditto.
+       * lynx-nat.c (lynx_core_fns): Ditto.
+       * mips-nat.c (mips_core_fns): Ditto.
+       * ns32knbsd-nat.c (nat_core_fns): Ditto.
+       * rs6000-nat.c (rs6000_core_fns): Ditto.
+       * sparc-nat.c (sparc_core_fns): Ditto.
+       * sun-nat.c (sun3_core_fns): Ditto.
+       * ultra3-nat.c (ultra3_core_fns): Ditto.
+
+       * corelow.c (core_vec): New, for selected core file handler.
+       (sniff_core_bfd): New function.
+       (gdb_check_format): New function.
+       (default_check_format): New function.
+       (default_core_sniffer): New function.
+       (sniff_core_bfd): New function.
+       (core_close): Reset core_vec to NULL.
+       (core_open): Fall back to gdb_check_format if bfd_check_format
+       does not identify the file format.  Call sniff_core_bfd to pick
+       a core file handler.
+       (get_core_registers): Remove code that is now in sniff_core_bfd.
+       Use current core_vec.
+
+       * gdbcore.h (check_format): New core_fns function, points to function
+       to try and identify a core file format.
+       (core_sniffer): New core_fns function, points to function to select
+       a specific handler for the selected core file format.
+       (default_core_sniffer): Add prototype.
+       (default_check_format): Add prototype.
+
+       * i960-tdep.c (inferior.h): Include.
+       * mips-tdep.c (read_next_frame_reg): Use ADDR_BITS_REMOVE
+       on addresses pulled from stack.
+
+1999-09-29  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-loop.c (poll_timers): Check whether the timer list has any
+       element on it by looking at the first element pointer, instead of
+       num_timers.
+
+Wed Sep 29 18:02:31 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * command.c: Attempt to include POSIX <sys/wait.h> before
+       <wait.h>.
+
+       * ser-unix.c (hardwire_print_tty_state): Ditto.
+       * inflow.c (child_terminal_info): Fix printf args.
+
+1999-09-28  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * remote.c (remote_async_resume): Register the inferior with the
+       event loop.
+       (remote_async_open_1): Don't put the target in async mode here,
+       just do it when executing.
+
+       * infrun.c (complete_execution): Unregister the inferior from the
+       event loop.
+
+       * event-top.c (async_disable_stdin): Don't add
+       async_enable_stdin() to the exec_cleanups chain.
+
+Tue Sep 28 11:08:34 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hppa-tdep.c (hppa_fix_call_dummy): Ignore IMPORT_SHLIB stubs
+       except for hpux11 native.  Break out of the loop to find a
+       stub as soon as we find an IMPORT stub.
+       (skip_prologue_hard_way): Also recognize copy %ret1,target and
+       all PA64 argument stores as prologue instructions.
+
+1999-09-28  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * breakpoint.c, defs.h, event-top.c, infcmd.c, infrun.c, main.c,
+       remote.c, top.c, tracepoint.c, utils.c (async_p): Change var name
+       to event_loop_p.
+       
+1999-09-28  Jim Blandy  <jimb@cygnus.com>
+
+       * hppa-tdep.c (skip_prologue_hard_way): Recognize ldo insns
+       which generate pointers into the argument list.
+
+Tue Sep 28 13:56:49 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.h (cleanup_sigint_signal_handler,
+       initialize_sigint_signal_handler): Delete extern declarations.
+       * event-top.c, infrun.c: No longer need to include "remote.h".
+       * remote.c (cleanup_sigint_signal_handler,
+       initialize_sigint_signal_handler): Make static.
+       * Makefile.in (event-top.o): Delete dependency on "remote.h".
+
+       * remote.c (remote_async_terminal_ours_p): New static global. Keep
+       track of who currently owns the terminal.
+       (remote_async_open_1): Initialize.
+       (remote_async_terminal_inferior): Test
+       remote_async_terminal_ours_p.  Claim CNTRL-C handler as part of
+       transfering the terminal to the target.
+       (remote_async_terminal_ours): Similar.
+
+Mon Sep 27 12:33:45 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (async_interrupt_query): Delete function.  Merged into
+       interrupt_query.  Async cases handled by target_terminal_ours,
+       target_terminal_inferior and SERIAL_CLOSE.
+       (async_remote_interrupt_twice): Update.
+       (remote_async_terminal_ours, remote_async_terminal_inferior): New
+       functions. Steal STDIN from GDB's CLI.
+       (init_remote_async_ops): Initialize to_terminal_ours and
+       to_terminal_inferior.
+
+       * event-top.c (async_disable_stdin, async_disable_stdin): Use
+       target_terminal_ours / target_terminal_inferior to transfer
+       ownership of the terminal between GDB and the target.
+
+1999-09-27  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * infcmd.c (run_command): Call async_disable_stdin() only if
+       dealing with an asynchronous target.
+
+Mon Sep 27 11:48:38 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * target.h (struct target_ops): Add to_can_async_p, to_is_async_p,
+       to_async.  Delete to_has_async.  These correspond well with
+       SERIAL* async methods.
+       (target_can_async_p, target_is_async_p, target_async): Define.
+       * target.c (update_current_target, cleanup_target): Update.
+
+       * remote.c (remote_async_open_1): Change target to async using
+       target_async.
+       (remote_can_async_p, remote_is_async_p, remote_async): New
+       functions.
+       (remote_async_wait, remote_async_open_1): Add FIXME about how
+       wait_forever_enabled_p can almost be deleted once the client can
+       enable/disable target_async.
+
+       * breakpoint.c (until_break_command), infrun.c (proceed), infcmd.c
+       (run_command, continue_command, step_1, jump_command,
+       until_command, finish_command, interrupt_target_command), top.c
+       (return_to_top_level, execute_command), event-top.c
+       (command_handler): Replace target_has_async with
+       target_can_async_p.
+
+Sun Sep 26 02:10:47 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (remote_async_open_1): If we go into async mode, never
+       wait for ever.
+
+       * infcmd.c: Include "event-top.h".
+       (run_command, continue_command, jump_command, until_command,
+       finish_command): Use async_disable_stdin to disable the console
+       for synchronous commands.
+
+       * remote.c (async_interrupt_query): Only disconnect the console
+       from the terminal when sync_execution.
+
+       * remote.c (initialize_sigint_signal_handler): Move declaration
+       from here.
+       * remote.h: To here.  Make non-static.
+
+       * remote.c (remote_async_resume, async_interrupt_query): Move
+       prompt code from here.
+       * event-top.c (async_disable_stdin, async_enable_stdin): To
+       here. New function.
+
+       * infrun.c (start_remote): Delete commented out code.
+
+Fri Sep 24 12:38:31 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (remote_async_open_1): Perform the initial async_open
+       using only synchronous calls.  Only after the target is fully
+       connected, switch to async mode.  Include FIXME about now it
+       currently works VS how it should be working.
+       (remote_async_open_1, set_extended_protocol): Delete function
+       set_extended_protocol.  All open communication is now done
+       synchronously.
+       (forever_enabled_p): New variable.  Determine if remote_async_wait
+       should block FOREVER when fetching target information.
+       (remote_cisco_open, remote_open_1): Set forever_enabled_p.
+
+       * infrun.c (start_remote): During the initial connect, always use
+       a synchronous wait.
+
+Sat Sep 25 18:13:38 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (event-top.o): Add dependency.
+       * event-top.c: Include "remote.h".
+       * remote.c (async_interrupt_query), event-top.c:
+       (async_enable_stdin): Pass dummy parameter to
+       cleanup_sigint_signal_handler.
+       * remote.c (cleanup_sigint_signal_handler), remote.h
+       (cleanup_sigint_signal_handler), event-top.c (async_enable_stdin),
+       event-top.h (async_enable_stdin): Change signature to match
+       make_exec_error_cleanup handler pararameter.
+
+Thu Sep 23 20:48:22 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h (enum command_class): Move from here.
+       * command.h (command_class): To here.
+
+1999-09-24  Kevin Buettner  <kevinb@cygnus.com>
+       * breakpoint.c (bpstat_stop_status): Use not_a_breakpoint to
+       help properly set bp_addr.
+       * infrun.c (handle_inferior_event): Simplify calls to
+       bp_stop_status.
+
+1999-09-24  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * top.c (return_to_top_level): Do exec_error cleanups if are
+       interrupting a simulated synchronous execution command.
+
+       * infrun.c (start_remote): Create a cleanup to enable stdin in
+       case of error from this command.
+       (complete_execution): Do the enabling of stdin via the exec_error
+       cleanups, when needed.
+
+       * remote.c (remote_async_resume): Make sure we re-enable stdin in
+       case of error from the target.
+       (handle_remote_sigint_twice): The handler to be set is
+       async_remote_interrupt_twice, not async_remote_interrupt.
+       (async_remote_interrupt_twice): Don't do anything if the target
+       has been killed already. Call async_interrupt_query, instead of
+       interrupt_query.
+       (async_interrupt_query): New function. Async case of
+       interrupt_query().
+       
+       * event-top.c (async_enable_stdin): New function. Reinstate stdin
+       with the event loop.
+       * event-top.h (async_enable_stdin): Export.
+
+       * utils.c (exec_error_cleanup_chain): New cleanup chain.
+       (make_exec_error_cleanup, do_exec_error_cleanups,
+       discard_exec_error_cleanups): New functions.
+       * defs.h (make_exec_error_cleanup, do_exec_error_cleanups,
+       discard_exec_error_cleanups): Export.
+
+1999-09-24  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * ax-gdb.c (expr_to_agent): Don't forget to pass argument to
+       new_agent_expr.
+
+1999-09-24  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-loop.c (fetch_inferior_event_wrapper): New
+       function. Wrapper to pass to catch_errors.
+       (inferior_event_handler): Pop the target if things go bad with it.
+       Call fetch_inferior_event() from within catch_errors(). 
+
+1999-09-24  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * ax-gdb.c: Use internal_error instead of error, where
+       appropriate.
+
+1999-09-23  James Ingham  <jingham@leda.cygnus.com>
+
+       * target.c (target_resize_to_sections): New function.  Gather the
+       resizing code for the to_sections field into one place, and make
+       sure you update the other targets that are sharing the to_sections 
+       structure.
+       * target.h: Declare the target_resize_to_sections function.
+       * solib.c (solib_add): use target_resize_to_sections.
+       * somsolib.c (som_solib_load_symbols): ditto
+       * rs6000-nat.c (xcoff_relocate_core): ditto
+       * pa64solib.c (pa64_solib_load_symbols): ditto
+       * irix5-nat.c (solib_add):ditto
+
+       * top.c: Define the attach & detach hooks
+       * defs.h: Declare the attach & detach hooks.
+       * infcmd.c (attach_command): call the attach hook if it exists.
+       (detach_command): call the detach hook if it exists.
+
+       * complaints.c (complain): Send the complaints to stderr rather
+       than stdout, so they don't get mixed into the result stream from
+       commands. 
+
+1999-09-23  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-loop.c (poll_timers): Use correct timeval field names,
+       when setting the notifier timeouts, in case of select() used.
+       (gdb_wait_for_event): Pass a pointer to the timeout structure to
+       select(), not the structure.
+
+Wed Sep 22 10:35:32 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (init.c): Change generated file to include "defs.h"
+       and "call-cmds.h". Use initialize_file_ftype when declaring
+       each initialize functions.
+       (call_cmds_h): Add definition.
+       (init.o): Add target and dependencies.
+       (init.c): Don't grep for _initialize* in init.c.
+
+       * defs.h (initialize_file_ftype): Add function typedef.
+
+1999-09-22  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * procfs.c (init_procinfo): move fltset initialization to caller.
+       (do_attach, create_procinfo): initialize fltset.
+
+1999-09-22  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-loop.c, event-top.c, event-loop.h: Rerun indent.
+
+1999-09-21  Doug Evans  <devans@casey.cygnus.com>
+
+       * m32r-stub.c (handle_exception): Fix typo in patch of 1999-08-26.
+
+Tue Sep 21 14:55:29 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       From 1999-08-20 J.T. Conklin  <jtc@redback.com>:
+       * remote.c (read_frame): expand cisco run-length encoding variant
+       inline as is done for the standard encoding.
+       (remote_cisco_expand): Removed.
+
+1999-09-20  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-loop.c: Include <sys/time.h>.
+
+1999-09-20  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * ser-ocd.c: (ser_ocd_open, ser_ocd_raw, ser_ocd_readchar,
+       ser_ocd_setbaudrate, ser_ocd_write, ser_ocd_close,
+       ser_ocd_get_tty_state, ser_ocd_set_tty_state): Remove unused
+       prototypes.
+       (ocd_readremote): Remove.
+       (ocd_write): Remove unused var 'c'.
+
+1999-09-20  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-top.c (change_line_handler): Cleanup dead code. Add comments.
+       * event-loop.c: Cleanup #if 0 code.
+
+       * event-loop.h (timer_handler_func): New function type.
+       (create_timer): Export function.
+       (delete_timer): Export function.
+
+       * event-loop.c: Add timeout and timeout_valid fields to
+       gdb_notifier.  New structures gdb_timer and timer_list.
+       (gdb_do_one_event): Check whether there are any timers tht are
+       ready, before going to wait.
+       (gdb_wait_for_event): If the timeout structure is meaningful, pass
+       that to select()/poll().
+       (create_timer): New function. Creates a timer.
+       (delete_timer): New function. Deletes a timer.
+       (handle_timer_event): New function. Deals with timers that are ready.
+       (poll_timers): New Function. Chack whether timers have expired.
+
+Mon Sep 20 17:00:06 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (getpkt, putpkt, remote_console_output): Move
+       declaration from here.
+       * remote.h: To here. New file.
+       * tracepoint.c(putpkt, getpkt, remote_console_output): Delete
+       declarations. Moved to "remote.h".
+       * Makefile.in (remote_h): Define.
+       * remote.c, tracepoint.c: Include "remote.h".
+       * Makefile.in (tracepoint.o, remote.o): Add dependency on
+       "remote.h".
+
+       * remote.h (remote_cisco_objfile_relocate,
+       cleanup_sigint_signal_handler): Add declaration.  Include FIXME.
+       * infrun.c: Include "remote.h".
+       (complete_execution): Delete local extern declaration
+       of ``cleanup_sigint_signal_handler''.
+       * Makefile.in (infrun.o): Add dependency on remote.h.
+
+Mon Sep 20 13:41:04 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * kod.c (ecos_kod_open, ecos_kod_request, ecos_kod_close,
+       cisco_kod_open, cisco_kod_request, cisco_kod_close): Move
+       declarations from here.
+       * kod.h: To here. New file.
+       * kod-cisco.c, kod.c: Include "kod.h".
+       * Makefile.in (kod-cisco.o, kod.o): Add dependency on "kod.h".
+
+       * kod.h (kod_display_callback_ftype, kod_query_callback_ftype):
+       New function types.
+       * kod.h (kod_cisco_open): Use in declaration.
+       * kod.c (gdb_kod_open): Update definition.
+       * kod-cisco.c (cisco_kod_open): Update definition.
+
+Mon Sep 20 12:13:27 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * mn10300-tdep.c (_initialize_mn10300_tdep): Add declaration.
+
+       * breakpoint.c (until_break_command_continuation): Add
+       declaration.  Make static.
+       * event-top.c (rl_callback_read_char_wrapper): Ditto.
+
+Fri Sep 17 19:28:17 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * source.c: Include "source.h".
+       (open_source_file, find_source_lines): Move declaration from here.
+       * source.h: New file. To here.
+       * Makefile.in (source.o): Add dependency on source.h.
+
+       * breakpoints.c (delete_command): Move declaration from here.
+       * breakpoints.h (delete_command): To here.
+       
+1999-09-18  Jim Blandy  <jimb@cygnus.com>
+
+       * hppa-tdep.c (in_solib_call_trampoline): If we can't recognize
+       the instruction we're at, we're not in a stub.
+
+Sat Sep 18 07:13:03 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * dwarf2read.c (dwarf_decode_lines): Correctly handle
+       DW_LNS_const_add_pc.
+
+1999-09-18  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * remote.c (remote_async_open_1): Use inferior_event_handler to
+       handle inferior events.
+       (extended_remote_async_create_inferior): Ditto.
+
+       * serial.h (serial_event_ftype): Add two pars. 
+
+       * ser-unix.c (ser_unix_event): Add two parameters, error and fd.
+       Pass those into the call to the actual inferior event handler.
+
+       * infrun.c (complete_execution): Stdin handler is stdin_event_handler.
+
+       * event-top.h (stdin_event_handler): Export new function.
+
+       * event-top.c (stdin_event_handler): New function. Smarter handler
+       for events on stdin.
+       (change_line_handler): Don't need to update the handler for stdin
+       here anymore.
+       (_initialize_event_loop): Stdin handler is now stdin_event_handler.
+
+       * event-loop.h: (handler_func): Change signature, adding two new
+       args.
+       (sig_handler_func): New function type. It is the old handler_func.
+       (create_async_signal_handler): Update to use sig_handler_func.
+       (delete_async_signal_handler): Prototype for new function.
+
+       * event-loop.c: Include "inferior.h".
+       (struct file_handler): Add field error, to indicate error
+       condition on fd.
+       (struct async_signal_handler): Rename type of proc field.
+       (add_file_handler): Add exception condition as something select()
+       should report.
+       (handle_file_event): In case of error on the fd, record this in
+       the file_handler structure. Update call to (*proc)() to match new
+       signature.
+       (gdb_wait_for_event): If select() or poll() return error, report
+       this to user.
+       (create_async_signal_handler): Change first param type to
+       sig_handler_func*.
+       (inferior_event_handler): New function. Smarter inferior event
+       handling.
+
+1999-09-18  Jim Blandy  <jimb@cygnus.com>
+
+       * pa64solib.c (pa64_solib_create_inferior_hook): Remove code which
+       tries to set __d_pid; it's not relevant to PA64 shared libraries.
+
+       A psymtab's texthigh element, and a block's endaddr element, are
+       the address past the end of the address range, never the address
+       of the last byte.  These data structures mean the same thing on
+       forty different architectures; there's no reason they should be
+       different on HP/UX.
+       * symtab.c (find_pc_sect_psymtab): Remove special case for HP/UX.
+       (find_pc_sect_symtab): Same.
+       * objfiles.c (find_pc_sect_section): Same.
+
+Sat Sep 18 07:13:03 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hppa-tdep.c (internalize_unwinds): Handle PA64 shared libraries
+       correctly
+
+       * hppa-tdep.c (in_solib_call_trampoline): Handle PA64 shared library
+       trampolines.
+
+1999-09-17  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * breakpoint.c (permanent_breakpoint_here_p): Delete.
+       Accidentally left over from previous changes.
+
+1999-09-17  Jim Blandy  <jimb@cygnus.com>
+
+       * config/pa/tm-hppa64.h (ARGS_GROW_DOWNWARD): Deleted.  There are
+       many more differences between the 32- and 64-bit ABI's than the
+       direction the arguments grow, so this name is misleading.
+       (PA20W_CALLING_CONVENTIONS): Define this instead.
+       * config/pa/tm-hppa.h (ARGS_GROW_DOWNWARD): Delete.
+       * hppa-tdep.c (hppa_push_arguments): Split into two separate
+       functions, depending on whether PA20W_CALLING_CONVENTIONS is
+       #defined.  These implement completely separate specifications,
+       they don't really share that much code anyway, and this is much
+       more readable.  Specifically: leave a 16-byte, not 32-byte, frame
+       marker; correctly align objects larger than eight bytes; promote
+       all integral scalar arguments smaller than eight bytes to a full
+       register width; pad aggregates smaller than eight bytes on the
+       right.
+
+Thu Sep 16 17:33:35 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (remote_async_open_1): Use SERIAL_ASYNC to
+       enable/disable async event callback on serial port.  Use
+       SERIAL_CAN_ASYNC_P / SERIAL_IS_ASYNC_P to determine if / when
+       async mode.
+       (remote_async_resume, remote_async_detach, remote_async_kill,
+       extended_remote_async_create_inferior, remote_async_wait): Ditto.
+
+       * ser-unix.c (hardwire_readchar): When ASYNC, only read a single
+       character.
+       (ser_unix_readchar): Ditto.  Problems occure with back-to-back
+       data from a target.  The ASYNC code can loose the second data
+       chunk.
+
+       * serial.c (serial_fdopen): Initialize async_handler and
+       async_context.
+
+1999-09-16  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * utils.c (discard_all_continuations): New function.
+       * defs.h: (discard_all_continuations): Add prototype.
+
+1999-09-16  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * valops.c: Remove prototype for search_struct_field_aux(). THe
+       function was nowhere in the file.
+       (value_ind): Remove unused var real_val.
+       (value_find_oload_method_list): Remove unused var v. 
+       (find_overload_match): Remove extra declaration of var jj.
+
+       * Makefile.in (event_top_h): Define. Add dependency on this for
+       every file that includes event-top.h.
+
+Thu Sep 16 17:33:35 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * serial.c (serial_open): Delete ``&'' device.
+       * ser-unix.c (_initialize_ser_hardwire): Make the "hardwire"
+       device async.  Delete temporary "async-hardwire" device.
+
+Thu Sep 16 16:27:13 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * serial.h (SERIAL_IS_ASYNC_P): Define.  Non-zero when serial
+       device is in async mode.
+       (SERIAL_CAN_ASYNC_P): Rename SERIAL_ASYNC_P.
+       * serial.c (serial_is_async_p): Implement.
+       (serial_can_async_p): Rename serial_async_p.
+       (serial_open): Initialize ASYNC_HANDLER and ASYNC_CONTEXT. Save
+       the original name in SCB instead of the stripped name.
+
+Thu Sep 16 12:20:11 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * serial.h (struct serial_ops): Add field ASYNC.
+       (SERIAL_ASYNC, SERIAL_ASYNC_P): New macros.
+       (struct _serial_t): Add fields async_context and async_handler.
+       * serial.c (serial_async, serial_async_p): Implement.
+
+       * ser-unix.c: Include "event-loop.h".
+       (ser_unix_async), ser-unix.c: New function.  Implement async mode.
+       (async_event): Handle async events.
+       * ser-unix.c (_initialize_ser_hardwire), ser-tcp.c
+       (_initialize_ser_tcp), ser-pipe.c (_initialize_ser_pipe): Enable
+       ASYNC.
+
+       * serial.c (serial_open): Discard leading ``|'' before opening a
+       pipe device.
+       * ser-pipe.c (pipe_open): Adjust.
+       * serial.c (serial_open): Add ``&'' prefix so that
+       "async-hardwire" device can be explicitly selected.  Work in
+       progress.
+       * ser-unix.c: Register "async-hardwire" device.
+  
+Thu Sep 16 09:04:53 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ser-unix.h: New file.  Declare generic ser_unix functions.
+       * ser-unix.c (ser_unix_nop_get_tty_state,
+       ser_unix_nop_set_tty_state, ser_unix_nop_raw, ser_unix_wait_for,
+       ser_unix_readchar, ser_unix_nop_noflush_set_tty_state,
+       ser_unix_nop_print_tty_state, ser_unix_nop_setbaudrate,
+       ser_unix_nop_setstopbits, ser_unix_write,
+       ser_unix_nop_flush_output, ser_unix_nop_flush_input,
+       ser_unix_nop_send_break, ser_unix_nop_drain_output): New
+       functions.
+       * ser-unix.c: Include <sys/wait.h>, <sys/socket.h>,
+       "gdb_string.h".
+       
+       * ser-tcp.c (_initialize_ser_tcp), ser-unix.c
+       (_initialize_ser_hardwire), ser-pipe.c (_initialize_ser_tcp):
+       Initialize ops vector using assignment.
+
+       * ser-pipe.c, ser-tcp.c, ser-unix.c: Include ser-unix.h.
+       
+       * ser-pipe.c (pipe_get_tty_state, pipe_set_tty_state,
+       pipe_return_0, pipe_raw, wait_for, pipe_readchar,
+       pipe_noflush_set_tty_state, pipe_print_tty_state,
+       pipe_setbaudrate, pipe_setstopbits, pipe_write), ser-tcp.c
+       (tcp_get_tty_state, tcp_set_tty_state, tcp_return_0, tcp_raw,
+       wait_for, tcp_readchar, tcp_noflush_set_tty_state,
+       tcp_print_tty_state, tcp_setbaudrate, tcp_setstopbits, tcp_write):
+       Delete functions.
+
+1999-09-15  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * d10v-tdep.c (remote_d10v_translate_xfer_address): Move to here
+       from remote-d10v.c, also change the memory translation to its
+       previous version.
+       * remote-d10v.c: Remove.
+       * config/d10v/d10v.mt (TDEPFILES): Remove remote-d10v.o.
+
+1999-09-15  Jim Blandy  <jimb@cygnus.com>
+
+       * breakpoint.c (remove_breakpoint): Return zero, not nothing.
+
+1999-09-14  Jim Blandy  <jimb@cygnus.com>
+
+       * hppa-tdep.c (frame_chain): If the unwind info says we've saved
+       r3, don't trust it.  Call get_frame_saved_regs and see if we can
+       actually find an address for r3 there.
+
+       * pa64solib.c (pa64_sharedlibrary_info_command): Text fix.
+
+Tue Sep 14 14:34:28 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * serial.h (DEPRECATED_SERIAL_FD): Define.
+       * serial.c (deprecated_serial_fd): New function.
+
+       * remote.c (remote_async_open_1, remote_async_open_1,
+       remote_async_detach, remote_async_kill,
+       extended_remote_async_create_inferior, minitelnet): Update.
+       * remote-es.c (es1800_open, es1800_close, es1800_transparent): Update.
+
+       * remote-st.c (connect_command), remote-os9k.c (connect_command):
+       Fix.  Call FD_SET et.al. with FD instead of serial_t.
+
+1999-09-14  Jim Blandy  <jimb@cygnus.com>
+
+       * hppa-tdep.c (hppa_frame_find_saved_regs): The two possible
+       instructions for saving the return pointer (32- and 64-bit) save
+       it at different offsets.
+
+       * config/pa/tm-hppa64.h: Doc fix.
+
+       * defs.h (continuation): Make this a typedef.
+
+       * Makefile.in (gdbtk.o, gdbtk-cmds.o): Depend on $(top_h).
+
+       * Makefile.in (i386-linux-nat.o): Depend on symfile.h, not
+       $(symfile_h); the latter has no definition.
+
+       * breakpoint.c (breakpoint_here_p): Remove meaningless code,
+       testing b->enable against shlib_disabled and call_disabled after
+       we know it is enabled.
+
+       Implement "permanent breakpoints" --- breakpoints that are
+       hardwired into the inferior's code.  GDB knows they're there, but
+       doesn't try to insert or remove them, etc.
+       * breakpoint.h (enum enable): Add `permanent' enablement state.
+       * breakpoint.c (make_breakpoint_permanent): New function.
+       * breakpoint.h (make_breakpoint_permanent): Add declaration.
+       * breakpoint.c (insert_breakpoints): Don't bother to insert
+       permanent breakpoints...
+       (remove_breakpoint): ... or remove them.
+       (breakpoint_here_p): Handle `permanent' like `enabled'.  Change
+       return value to indicate whether it's a permanent breakpoint here,
+       or an ordinary breakpoint.
+       * breakpoint.h (enum breakpoint_here): New enum.
+       (breakpoint_here_p): Change declaration.
+       * breakpoint.h (breakpoint_1): Extend bpenables to cover all the
+       enablement states.
+       (describe_other_breakpoints): Describe permanent breakpoints.
+       (check_duplicates): If one of the breakpoints at ADDRESS is a
+       permanent breakpoint, treat all the others as the duplicates, so
+       we don't try to insert or remove any of them.  Verify that only
+       the permanent breakpoint is actually inserted.
+       (delete_breakpoint): Complain if we discover that another
+       breakpoint was inserted at the same place as a permanent
+       breakpoint.
+       (disable_breakpoint): Fail silently if asked to disable a
+       permanent breakpoint.
+       (do_enable_breakpoint): Don't change a permanent breakpoint's
+       enablement to ordinary `enabled'.  Leave it alone.
+       (create_solib_event_breakpoint): Return the
+       breakpoint object created.
+       * breakpoint.h (create_solib_event_breakpoint): Fix declaration.
+       * pa64solib.c (pa64_solib_create_inferior_hook): Do turn on the
+       DT_HP_DEBUG_CALLBACK flag in the dynamic linker, so it will call
+       __dld_break, which contains the permanent breakpoint, when interesting
+       things happen.  Tell GDB that the breakpoint in __dld_break is
+       permanent.
+       * gdbtk-cmds.c (gdb_get_breakpoint_info): Report a permanent
+       breakpoint as enabled.
+       * infrun.c (SKIP_PERMANENT_BREAKPOINT): Provide default definition.
+       (default_skip_permanent_breakpoint): New function.
+       (resume): If we're trying to resume at a permanent breakpoint, use
+       SKIP_PERMANENT_BREAKPOINT to step over it.
+       * hppa-tdep.c (hppa_skip_permanent_breakpoint): New function.
+       * config/pa/tm-hppa.h (hppa_skip_permanent_breakpoint): Declare.
+       (SKIP_PERMANENT_BREAKPOINT): Define.
+       
+1999-09-14  Kevin Buettner  <kevinb@cygnus.com>
+
+       * symtab.h, minsyms.c (find_stab_function_addr): Changed
+       type of second parameter from partial_symtab * to char *.
+       Fixed all callers.
+       * minsyms.c (find_stab_function_addr): Look for minimal
+       symbol without filename if filename based search fails.
+       * dbxread.c (process_one_symbol): Call find_stab_function_addr()
+       in place of inline code with identical functionality.
+       * partial-stab.h (case N_FUN, descriptors 'F' and 'f'): Look
+       up symbol's address from minimal symbol table when N_FUN
+       address is missing.  Also, make sure this value is used for
+       calculating the value of the texthigh field.
+
+1999-09-14  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-loop.c (create_file_handler): Increment the total number
+       of file descriptors for the poll case, only if this is a new file
+       desc.
+
+1999-09-14  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * go32-nat.c: misc minor cleanups and fixes missed in last patch.
+
+Tue Sep 14 12:37:33 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * serial.h (SERIAL_PRINT_TTY_STATE): Add STREAM parameter.
+       (union serial_ops): Update.
+
+       * ser-unix.c (hardwire_print_tty_state, ser-tcp.c
+       (tcp_print_tty_state), ser-pipe.c (pipe_print_tty_state,
+       ser-go32.c (dos_print_tty_state, ser-mac.c (mac_print_tty_state,
+       ser-ocd.c (ocd_print_tty_state, ser-e7kpc.c
+       (e7000pc_print_tty_state): Update.
+       * inflow.c (child_terminal_info): Update.
+       * serial.c (serial_print_tty_state): Update.
+
+Tue Sep 14 11:41:37 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * serial.c, serial.h, ser-tcp.c, ser-unix.c, ser-pipe.c: Convert
+       all functions to ISO-C.
+       * serial.h, serial.c: Move all indirect macro function calls from
+       serial.h into serial.c.
+       (serial_drain_output, serial_flush_output, serial_flush_input,
+       serial_raw, serial_get_tty_state, serial_set_tty_state,
+       serial_print_tty_state, serial_noflush_set_tty_state,
+       serial_setbaudrate, serial_setstopbits): New functions.
+       (do_serial_close): Rename serial_close.
+       (serial_close, serial_un_fdopen): New functions. Call
+       do_serial_close.
+
+1999-09-13  James Ingham  <jingham@leda.cygnus.com>
+
+       * symtab.c (decode_line_1): Find the rightmost parenthesis in the
+       expression, not the leftmost.  This allows us to parse function
+       declarations with embedded function prototypes.
+
+Mon Sep 13 18:39:31 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * pa64solib.c (pa64_sharedlibrary_info_command): Fix typos.
+
+1999-09-13  Kevin Buettner  <kevinb@cygnus.com>
+
+       * i386-tdep.c (i386_extract_return_value): ifdef'd so that
+       non-linux targets will work again.
+       (i386_do_registers_info, i386_print_register): Revert changes
+       of 1999-09-03; these functions have been removed because they
+       are Linux specific and break non-Linux builds.  This functionality
+       will be restored after FP support unification has been achieved.
+       * i387-tdep.c (i387_print_register, void i387_float_info):
+       Likewise.
+       * config/i386/tm-linux.h (i387_float_info, FLOAT_INFO,
+       DO_REGISTERS_INFO, i386_do_registers_info,
+       i387_print_register):  Likewise.
+
+1999-09-13  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-top.c (call_readline): Change to accept gdb_client_data as
+       param.
+       (rl_callback_read_char_wrapper): New function to match what the
+       event loop expects and what readline expects.
+       (change_line_handler): Make call_readline point to
+       rl_callback_read_char_wrapper, instead of rl_callback_read_char.
+       (_initialize_event_loop): Ditto.
+       (gdb_readline2): Change parameter to gdb_client_data.
+       * event-top.h (call_readline, gdb_readline2): Change accordingly.
+
+       * event-loop.c (add_file_handler): Change 2nd par to
+       handler_func*.  No more need for casting.
+       * event-loop.h (create_async_signal_handler): Change accordingly.
+
+       * inferior.h (fetch_inferior_event): Change parameter to void*.
+       * infrun.c (fetch_inferior_event): Ditto.
+
+1999-09-13  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * infrun.c (step_into_function): New function, broken out from the
+       step_into_function label in handle_inferior_event.
+       (handle_inferior_event): Change a goto into a function call.
+
+1999-09-13  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-top.h: New file. All the exported vars and functions from
+       event-top.c.
+
+       * event-loop.h (struct gdb_event, event_handler_func,
+       file_handler, async_signal_handler, SELECT_MASK, fd_mask, NBBY,
+       FD_SETSIZE, howmany, NFDBITS, MASK_SIZE): Move to event-loop.c.
+       (struct prompts, PROMPT, PREFIX, SUFFIX, display_gdb_prompt,
+       async_init_signals, set_async_editing_command,
+       set_async_annotation_level, set_async_prompt, handle_stop_sig,
+       handle_sigint, pop_prompt, push_prompt, gdb_readline2,
+       mark_async_signal_handler_wrapper, async_request_quit,
+       async_command_editing_p, exec_done_display_p,
+       async_annotation_suffix, new_async_prompt, the_prompts,
+       call_readline, input_handler, input_fd): Move to event-top.h.
+       (All function prototypes): Don't use PARAMS anymore.
+
+       * event-loop.c: (struct gdb_event, event_handler_func,
+       file_handler, async_signal_handler, SELECT_MASK, fd_mask, NBBY,
+       FD_SETSIZE, howmany, NFDBITS, MASK_SIZE): Move to here from
+       event-loop.h.
+       Include event-top.h. Remove use of PARAMS. ANSIfy functions headers.
+               
+       * event-top.c: Include event-top.h. Include "signals.h", not
+       <signals.h>.
+       Remove use of PARAMS. ANSIfy functions headers.
+       (handle_stop_sig): move prototype to event-top.h.
+
+       * remote.c: Include event-top.h. Make it understand
+       async_signal_handler type.
+       * infrun.c: Include event-top.h.
+       * mi-main.c: Ditto.
+       * top.c Ditto.
+       * utils.c: Ditto.
+       
+Mon Sep 13 18:54:05 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.sh: Describe each of the fields.
+       
+Mon Sep 13 17:51:28 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       From 1999-09-12 Jim Blandy <jimb@cygnus.com>:
+       * gdbarch.sh (generating setters): Use sed to generate the proper
+       indentation, not tr; tr's behavior is notoriously unportable.
+
+1999-09-10  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * i387-tdep.c (print_387_control_bits): Don't print newline; the
+       callers take care of that.  (Thanks to H.J. Lu.)
+
+1999-09-09  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * d10v-tdep.c (DMEM_START): Set to 0x2000000.
+       (itrace, iuntrace, info itrace, itdisassemble, itracedisplay,
+       itracesource): Add 'i' prefix to commands, so as not to conflict
+       with generic trace commands.
+
+1999-09-09  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * remote.c (_initialize_remote): Fix the specification of the
+       "remote" prefix to set and show commands.
+
+1999-09-09  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-loop.c (create_file_event): New function. Creates a gdb
+       event for a given fd.
+       (gdb_wait_for_event): Use create_file_event().  
+       * event-loop.h: export create_file_event().
+
+       * event-loop.c (delete_file_handler): Move the clearing of the
+       mask to later on in the function, because we need it in order to
+       deactivate the correct fd when using select().
+
+       * m32r-tdep.c (decode_prologue): Fix typo. Instructions starting
+       with 0xf are branch instructions.
+       (m32r_scan_prologue): Initialize framesize to 0.
+
+1999-09-07  J.T. Conklin  <jtc@redback.com>
+
+       * i386-stub.c (exceptionHook, oldExceptionHook): Removed.
+       (handle_exception): Removed #if'd out exception hook code.
+
+       * i386-stub.c, m68k-stub.c (error): Removed unused variable.
+
+       * i386-stub.c, m68k-stub.c, sh-stub.c, sparc-stub.c,
+       sparcl-stub.c, sparclet-stub.c (remcomInBuffer, remcomOutBuffer):
+       Make static.
+
+Tue Sep  7 14:06:22 1999  Kevin Buettner  <kevinb@cygnus.com>
+
+       * config/i386/tm-linux.h (SOFUN_ADDRESS_MAYBE_MISSING): 
+       Define.
+
+Tue Sep  7 08:18:01 1999  Kevin Buettner  <kevinb@cygnus.com>
+
+       From Jim Blandy <jimb@cygnus.com>:
+       
+       Step into calls to functions in shared libraries properly.  See
+       the comments for SKIP_SOLIB_RESOLVER atop infrun.c for details.
+       * infrun.c (SKIP_SOLIB_RESOLVER): New macro.
+
+1999-09-05  Fred Fish  <fnf@cygnus.com>
+
+       * elfread.c (elf_symtab_read): Remove separately passed bfd
+       pointer and offset.  Pick up bfd pointer from objfile, and
+       get offset from objfile's section_offsets.
+
+Fri Sep  3 22:29:39 1999  Kevin Buettner  <kevinb@cygnus.com>
+
+       * config/i386/tm-linux.h (REGISTER_NAMES): Changed register
+       named "foo" to "fopo" which more accurately describes the FPU
+       Operand Pointer Offset.  The real reason for this change, of
+       course, is that many programmers use $foo as a convenience
+       variable and are likely to be unpleasantly surprised to find
+       that they're unwittingly changing the state of their ia32 FPU.
+
+1999-09-03  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * monitor.c (monitor_supply_register): Stop scanning val string
+       if a newline is encountered.
+
+1999-09-03  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+        monitor.c (TARGET_BUF_SIZE): New macro, defined to 2048.
+        (monitor_expect_regexp, monitor_wait, monitor_dump_reg_block,
+        monitor_dump_reg_block): Dump hard-coded constants in favor
+        of TARGET_BUF_SIZE.
+
+        (readchar): Re-enable output of characters read from monitor when
+        remotedebug is set.
+
+        (monitor_supply_register): Use ULONGEST to hold value.
+        Replace strtoul() call with hand-coded loop to handle values
+        larger than 'long'.
+
+        (monitor_store_register): Use ULONGEST to hold value.
+
+Fri Sep  3 00:47:44 1999  Kevin Buettner  <kevinb@cygnus.com>
+
+       [Merged linux/x86 floating point code from Bill Metzenthen,
+       Jim Blandy, Anthony Green, H. J. Lu, and possibly others.  The
+       following remarks are Jim Blandy's.]
+
+       * findvar.c (extract_floating): Call TARGET_EXTRACT_FLOATING, if
+       #defined.
+       (store_floating): Call TARGET_STORE_FLOATING, if #defined.
+
+       * i386-tdep.c (i386_print_register, i386_do_registers_info): New
+       functions.
+       (i386_extract_return_value): GNU/Linux returns floating point
+       values in a floating point register too.
+       (set_disassembly_flavor): Add prototype.
+       (i386_extract_return_value): Use FPDATA_REGNUM, not FP0_REGNUM (
+       which wasn't the first FP data register).
+       (i386_do_registers_info): Use FPSTART_REGNUM and FPEND_REGNUM as
+       the limits of the FPU-related registers.
+       (i386_extract_return_value): Tell GDB how to find return values
+       larger than four bytes.  (Thanks to Paul N. Hilfinger for the bug
+       report.)
+
+       * i387-tdep.c (print_387_control_word): Break out bit-splitting into...
+       (print_387_control_bits): New function.
+       (print_387_status_word): Break out bit-splitting into...
+       (print_387_status_bits): New function.
+       (i387_print_register, i387_float_info, i387_hex_float_input): New
+       functions.
+       (i387_extract_floating, i387_store_floating): New functions.
+
+       * valprint.c (print_floating): Use macro TARGET_ANALYZE_FLOATING,
+       if it's #defined.  Tolerate values of `nonnegative' other than
+       zero and one.
+
+       * i386-linux-nat.c: New file.
+       * Makefile.in (ALLDEPFILES): Mention i386-linux-nat.c.
+       (i386-linux-nat.o): New rule, listing dependencies.
+       * config/i386/linux.mh (NATDEPFILES): Use i386-linux-nat.o, not
+       the plain i386v4-nat.o.
+       * config/i386/nm-linux.h (FETCH_INFERIOR_REGISTERS): Define.
+       * config/i386/xm-linux.h: Define HOST_I386.
+
+       * config/i386/tm-linux.h (FP0_REGNUM): Replaced by...
+       (FPSTART_REGNUM, FPCONTROL_REGNUM, FPSTATUS_REGNUM, FPTAG_REGNUM,
+       FPDATA_REGNUM, FPEND_REGNUM): New definitions.
+       (REGISTER_BYTES): Changed accordingly.
+       (SKIP_SOLIB_RESOLVER): #define this.
+       (i386_linux_skip_solib_resolver): New declaration.
+       (i387_float_info): Added extern decl for this function.
+       (TARGET_EXTRACT_FLOATING, TARGET_STORE_FLOATING,
+       TARGET_ANALYZE_FLOATING): Define.
+       (i387_extract_floating, i387_store_floating): New extern decls.
+       (I386_GNULINUX_TARGET): Define.
+       (NUM_REGS, NUM_FREGS, REGISTER_NAMES, FP0_REGNUM, FPDATA_REGNUM,
+       FPENV_BYTES, FPREG_RAW_SIZE, FPREG_BYTES, REGISTER_BYTES,
+       REGISTER_BYTE, REGISTER_RAW_SIZE, REGISTER_VIRTUAL_SIZE,
+       MAX_REGISTER_RAW_SIZE, MAX_REGISTER_VIRTUAL_SIZE,
+       TARGET_LONG_DOUBLE_BIT, FLOAT_INFO, DO_REGISTERS_INFO): New
+       definitions, perhaps overriding those inherited from
+       config/i386/tm-i386.h.
+       (i386_do_registers_info, i387_print_register, double_to_i387,
+       i387_to_double): New declarations.
+       (LD_I387): Define iff both the host and target are using i387
+       FPU's.
+       (HEX_FLOAT_INPUT, REGISTER_CONVERTIBLE,
+       REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW,
+       REGISTER_VIRTUAL_TYPE): Define these if LD_I387 is defined.
+
+       * source.c (list_command): List the right number of source lines,
+       even if we're at the top of the file.
+
+1999-09-02  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * infrun.c (step_over_function): New function, broken out from the
+       step_over_function label in handle_inferior_event.
+       (handle_inferior_event): Change a goto into a function call.
+
+Thu Sep  2 18:26:04 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (GDB_WERROR_CFLAGS, GBB_WARN_CFLAGS): Define.
+       (INTERNAL_CFLAGS): Update
+       * configure.in (WERROR_CFLAGS, WARN_CFLAGS): Sync with
+       ../sim/common/aclocal.m4.
+       * configure: Re-generate.
+       
+Thu Sep  2 00:27:36 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (z8k-tdep.o): For moment, don't try to compile with
+       -Werror.  See Makefile.in.
+       * z8k-tdep.c (z8k_set_pointer_size): Document problem.
+
+       * config/z8k/tm-z8k.h (z8k_print_register_hook, z8k_frame_chain,
+       z8k_saved_pc_after_call, z8k_frame_saved_pc,
+       z8k_set_pointer_size): Declare.
+       (z8k_skip_prologue): Fix typo. Was mz8k_skip_prologue.
+       (FRAME_CHAIN, PRINT_REGISTER_HOOK, FRAME_SAVED_PC,
+       SAVED_PC_AFTER_CALL): Update.
+       * z8k-tdep.c (z8k_print_register_hook): Rename
+       z8k_print_register_hook.
+       (z8k_frame_chain): Rename frame_chain.
+       (z8k_saved_pc_after_call): Rename saved_pc_after_call.
+       (z8k_frame_saved_pc): Rename frame_saved_pc.
+       (z8k_print_register_hook): Fix printf.
+       (read_memory_pointer): Add declaration.
+       ("value.h"): Include.
+       * Makefile.in (z8k-tdep.o): Add dependency on value.h.
+
+       * config/sparc/tm-sparc.h (PRINT_EXTRA_FRAME_INFO): Fix
+       printf. calls
+       * Makefile.in (remote-e7000.o): For moment, don't try to compile
+       with -Werror.  See Makefile.in.
+       * sh-tdep.c (sh_show_regs): Fix printf calls.
+       * xcoffsolib.c (solib_info): Fix Printf calls.
+       * dink32-rom.c: #include "symfile.h" for generic_load and
+       "inferior.h" for write_pc.
+       * Makefile.in (dink32-rom.o): Update.
+
+       * config/mn10300/tm-mn10300.h (mn10300_store_struct_return),
+       config/mn10200/tm-mn10200.h (mn10200_store_struct_return): Add
+       declarations.
+
+Tue Aug 31 00:48:27 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * config/mips/tm-tx49el.h (REGISTER_SIM_REGNO): Define.
+
+       * remote-sim.c (gdbsim_fetch_register, gdbsim_store_register):
+       Pass REGISTER_SIM_REGNO converted register number to the
+       simulator.
+
+1999-09-01  Tom Tromey  <tromey@cygnus.com>
+
+       * config/i386/nm-linux.h (PREPARE_TO_PROCEED): Added argument.
+
+1999-09-01  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * values.c (value_virtual_fn_field): Remove unused var(s).
+       * thread.c (prune_threads): Ditto.
+       * symtab.c (lookup_transparent_type): Ditto.
+       (decode_line_1): Ditto.
+       (make_symbol_overload_list): Ditto. 
+       * rs6000-tdep.c (frame_get_saved_regs): Ditto.
+       (set_processor): Ditto.
+       * remote.c (remote_remove_breakpoint): Ditto.
+       (remote_query): Ditto.
+       (readtty): Ditto.
+       * remote-sds.c (sds_fetch_registers): Ditto.
+       (putmessage): Ditto.
+       * ppcbug-rom.c (ppcbug_supply_register): Ditto.
+       (ppcbug_open): Remove unused prototype.
+       * parse.c (parse_nested_classes_for_hpacc): Remove unused var(s).
+       * ocd.c (ocd_open): Ditto.
+       (ocd_get_packet): Ditto.
+       * monitor.c (monitor_error): Ditto.
+       (monitor_wait_srec_ack): Ditto.
+       * main.c (main): Ditto.
+       * gdbtypes.c (count_virtual_fns): Ditto.
+       * exec.c (exec_file_command): Ditto.
+
+       * event-top.c: Include handle_sigwinch() function prototype within
+       appropriate #ifdef.
+
+       * eval.c (evaluate_subexp_standard): Remove unused variable.
+       (evaluate_subexp_standard): Remove unused variables.
+       * dink32-rom.c (dink32_supply_register): Remove unused variable.
+       * dbxread.c (elfstab_build_psymtabs): Ditto.
+       * command.c (do_setshow_command): Ditto.
+       * breakpoint.c (solib_load_unload_1): Remove unused variables 'i'
+       and 'sal'.
+       (until_break_command): Remove unused variables 'arg1' and 'arg2'.
+       (create_exception_catchpoint): Remove unused variable 'i'.
+       * ax-gdb.c (gen_sub): Remove unused variable.
+       (_initialize_ax_gdb): Ditto.
+
+       * ser-pipe.c (pipe_readchar): If timeout is expired return
+       SERIAL_TIMEOUT.
+       * ser-tcp.c (tcp_readchar): If timeout is expired return
+       SERIAL_TIMEOUT.
+
+Wed Sep  1 15:07:25 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * version.h: New file.
+       * Makefile.in (version_h): Define.
+       (version.o): Add target.
+
+       * remote-array.c: #include "version.h".
+       (version): Delete extern declarations.
+       * Makefile.in (remote-array.o): Add dependency on version.h.
+
+       * top.c: #include "version.h".
+       (version, host_name, target_name): Delete extern declarations.
+       * Makefile.in (top.o): Add dependency on version.h.
+
+       * remote.c (remote_remove_watchpoint, remote_insert_watchpoint),
+       remote-array.c (array_open), remote-mips.c (send_srec),
+       dve3900-rom.c (store_bitmapped_register): Fix Printfs.
+
+       * mips-tdep.c (mips_print_extra_frame_info, print_unpack),
+       m32r-rom.c (m32r_load_section), m32r-tdep.c (m32r_frame_chain),
+       dsrec.c (load_srec): Fix printf problems.
+       
+Wed Sep  1 13:16:49 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (monitor.o): For moment, don't try to compile with
+       -Werror.  monitor.c has -Wformat problems.  See Makefile.in for
+       more info.
+
+Tue Aug 31 21:23:38 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hppa-tdep.c (prologue_inst_adjust_sp): Correct offset computation
+       for doubleword store instructions.
+       (hppa_frame_find_saved_regs): Similarly.
+
+Wed Sep  1 09:22:50 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d30v-tdep.c (d30v_print_register): 
+       (tdisassemble_command): 
+
+       * d10v-tdep.c (show_regs, trace_info, tdisassemble_command): Fix
+       printf problems.
+
+       * remote-sim.c (dump_mem), remote-rdi.c (arm_rdi_create_inferior):
+       Fix printf arguments.
+
+       * remote-mips.c, mips-tdep.c: Move declaration of
+       ``mips_set_processor_type_command'' from here.
+       * config/mips/tm-mips.h: To here.
+       * remote-array.c: #include "inferior.h".
+       * config/mips/tm-embed.h (remote_mips_stopped_by_watchpoint): Add
+       declaration.
+       * remote-mips.c (remote_mips_stopped_by_watchpoint): Define using
+       ISO-C prototype.
+       (monitor_supports_breakpoints): Integer variable.
+
+       * m32r-rom.c: #include "inferior.h" and <ctype.h>
+       * config/m32r/tm-m32r.h (m32r_write_sp): Add declaration.
+
+       * config/i960/tm-i960.h (leafproc_return, i960_pop_frame): Add
+       declaration.
+       (POP_FRAME): Call i960_pop_frame.
+       * i960-tdep.c (i960_pop_frame): Rename pop_frame.
+       * mon960-rom.c: #include "inferior.h" for declaration of write_pc.
+
+1999-08-15  Fred Fish  <fnf@cygnus.com>
+
+       * objfiles.c (objfile_relocate): Use SIZEOF_SECTION_OFFSETS when
+       allocating section_offsets array.
+       * remote-os9k.c (rombug_wait): Ditto.
+       * remote-vx.c (vx_add_symbols): Ditto.
+       * remote.c (get_offsets): Ditto.
+       (remote_cisco_objfile_relocate): Ditto.
+       * rs6000-nat.c (vmap_symtab): Ditto.
+
+       * dstread.c (dst_symfile_offsets): Set section_offsets directly instead
+       of returning a pointer to section offsets.
+       * somread.c (som_symfile_offsets): Ditto.
+       * xcoffread.c (xcoff_symfile_offsets): Ditto.
+       * symfile.c (default_symfile_offsets): Ditto.
+       (syms_from_objfile): The sym_offsets function has already set section
+       offsets and no longer returns a value.
+
+       * xcoffread.c (scan_xcoff_symtab): Eliminate section_offsets passed
+       separate from objfile.
+       (xcoff_start_psymtab): Ditto.
+       (START_PSYMTAB): Ditto.
+       * os9kread.c (read_minimal_symbols): Ditto.
+       (read_os9k_psymtab): Ditto.
+       (os9k_start_psymtab): Ditto.
+       (record_minimal_symbol): Ditto.
+       * dbxread.c (START_PSYMTAB): Ditto.
+       (start_psymtab): Ditto.
+       * mdebugread.c (START_PSYMTAB): Ditto.
+       (elfmdebug_build_psymtabs): Ditto.
+       (mdebug_build_psymtabs): Ditto.
+       (parse_partial_symbols): Ditto.
+       (new_psymtab): Ditto.
+       * dwarfread.c (dwarf_build_psymtabs): Ditto.
+       * partial-stab.h (START_PSYMTAB): Ditto.
+       * stabsread.h (start_psymtab): Ditto.
+       * dwarf2read.c (dwarf2_build_psymtabs): Ditto.
+       (dwarf2_build_psymtabs_easy): Ditto.
+       (dwarf2_build_psymtabs_hard): Ditto.
+       * hp-psymtab-read.c (hpread_build_psymtabs): Ditto.
+       (hpread_quick_traverse): Ditto.
+       (hpread_start_psymtab): Ditto.
+       (scan_procs): Ditto.
+       * hpread.c (hpread_build_psymtabs): Ditto.
+       * symfile.h (dwarf2_build_psymtabs): Ditto.
+
+       * dbxread.c (read_dbx_symtab): Use ANOFFSET to access section
+       offsets.
+       * coffread.c (enter_linenos): Pass objfile instead of section
+       offsets.
+
+       * dbxread.c (dbx_symfile_read): No need to explicitly pass
+       text addr and size.  Let read_dbx_symtab find them.
+       (read_dbx_symtab): Get text addr and size from objfile.
+       (dbx_symfile_read): Remove dead code (call to strlen);
+       
+1999-08-31  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * Makefile.in: add rule for sol-thread.o.
+       Add rule for linux-thread.o.
+
+1999-08-13  Jim Kingdon  <kingdon@redhat.com>
+
+       Threads code from gdb 4.18-codefusion-990706
+       [Thanks to Eric Paire, H. J. Lu, Jim Blandy and others]
+       * infrun.c (signal_stop_update, signal_print_update,
+       signal_pass_update): new functions.
+       * inferior.h: new prototypes for above functions.
+       * target.h (enum strata): add thread stratum.
+       * linux-thread.c: new file.  Support for debugging linux threads.
+       * config/i386/nm-linux.h: several new prototypes for above.
+       * config/i386/linux.mh: add linux-thread.o to NATDEPFILES.
+
+       More threads code from the same place:
+       * config/i386/tm-linux.h (REALTIME_LO, REALTIME_HI): Add
+       definitions.
+       * target.h (enum target_signal): Add TARGET_SIGNAL_REALTIME_32.
+       * target.c (signals, target_signal_from_host,
+       target_signal_to_host): Add clauses for
+       TARGET_SIGNAL_REALTIME_32.
+       
+1999-08-31  Neil Schellenberger <neil.schellenberger@crosskeys.com>
+
+       * sol-thread.c (sol_thread_detach): strip thread-id out of 
+       inferior_pid, so that procfs_detach can't choke on it.
+
+1999-08-31  J.T. Conklin  <jtc@redback.com>
+
+       * i386-stub.c, m32r-stub.c, m68k-stub.c, sh-stub.c, sparc-stub.c,
+       sparcl-stub.c, sparclet-stub.c (getpacket): Remove 'buffer' arg,
+       define it as a pointer to &remcomInBuffer[0].
+       (handle_exception): Update.
+
+       * sparc-stub.c, sparcl-stub.c, sparclet-stub.c (handle_exception):
+       Removed #ifdef'd out code which implements the non-standard 'b'
+       (set baud rate) command.
+
+1999-08-31  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * infrun.c (keep_going): New function, broken out from the
+       keep_going label in handle_inferior_event.
+       (handle_inferior_event): Change more gotos into function calls.
+
+Tue Aug 31 02:29:27 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hppa-tdep.c (read_unwind_info): Handle multiple unwind sections.
+
+Tue Aug 31 15:28:44 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * config/alpha/tm-alpha.h (PRINT_EXTRA_FRAME_INFO): Fix printf
+       format argument.
+       * alpha-tdep.c (heuristic_proc_start): Ditto.
+
+       From Stan Shebs <shebs@andros.cygnus.com>:
+       * defs.h (strlen_paddr): Fix prototype - add void argument list.
+
+Tue Aug 31 14:02:12 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h (gdb_print_host_address), utils.c
+       (gdb_print_host_address): Rename gdb_print_address.
+
+       * expprint.c, gdbtypes.c, symmisc.c: Update.
+
+       *expprint.c: Use gdb_print_host_address when displaying native
+       pointers.
+
+Sat Aug 28 14:23:29 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * scm-valprint.c (scm_ipruk), jv-valprint.c (java_value_print),
+       cp-valprint.c (cp_print_class_member), exec.c (exec_files_info),
+       remote.c (putpkt_binary, compare_sections_command,
+       remote_cisco_section_offsets), dcache.c (dcache_info),
+       breakpoint.c (break_at_finish_at_depth_command_1,
+       break_at_finish_command_1), symfile.c (generic_load),
+       (report_transfer_performance), top.c (get_prompt_1), f-valprint.c
+       (f_val_print), maint.c (maintenance_translate_address): Fix printf
+       -Wformat warnings.  Use paddr, paddr_nz, sizeof_paddr, paddr_u and
+       paddr_d to print addresses. Change ``d'' to ``ld''.
+
+       * utils.c (strlen_paddr): New function.
+       
+Tue Aug 31 01:36:44 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * config/d30v/tm-d30v.h (d30v_frame_chain,
+       d30v_init_frame_pc): Add declaration.
+
+       * arc-tdep.c (arc_pop_frame): Rename pop_frame.
+       (arc_push_dummy_frame): Rename push_dummy_frame.
+       (arc_set_cpu_type_command): Add declaration.
+       
+       * config/arc/tm-arc.h (arc_pop_frame, arc_push_dummy_frame): Add
+       declaration.
+       
+1999-08-30  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * infrun.c (prepare_to_wait): New function, broken out from the
+       wfi_continue label in handle_inferior_event.
+       (handle_inferior_event): Change more gotos into function calls.
+
+1999-08-30  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * tracepoint.c: -Wall warning cleanup. 
+       (parse_and_eval_memrange): remove (unused).
+       (output_command, args_info, locals_info, registers_info): add decls.
+       (getpkt, putpkt, remote_console_output): add decls.
+       (isalnum, isspace): cast arg to avoid warning.
+       (printf, fprintf, sprintf): use [fs]printf_vma for printing addrs.
+       
+Mon Aug 30 21:47:58 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d10v-tdep.c: #include "language.h".
+
+Mon Aug 30 20:38:57 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * configure.in (AC_CHECK_HEADERS): Check for <time.h>.
+       * configure, acconfig.in: Re-generate.
+
+       * remote-rdp.c: #include <time.h>
+
+       * config/arm/tm-arm.h (arm_float_info): Add declaration.
+
+       * arm-tdep.c (convert_from_extended, convert_to_extended): Change
+       double ptr arg to void ptr arg.
+
+       * config/arm/tm-arm.h (arm_frameless_function_invocation): Add
+       declaration.
+       (arm_frame_find_saved_regs): Rename frame_find_saved_regs.
+       (convert_from_extended, convert_to_extended): Add declaration.
+
+Mon Aug 30 19:05:32 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * configure.in (WERR_CFLAGS): Separate the -Werror flag.
+       * configure: Re-generate.
+
+       * Makefile.in (INTERNAL_CFLAGS): Re-define using
+       INTERNAL_WARN_CFLAGS.
+       (INTERNAL_WARN_CFLAGS): Define.  Leave off WERR_CFLAGS.
+       (tracepoint.o): Add explicit rule.
+       (WERR_CFLAGS): Add definition.
+
+Mon Aug 30 17:52:17 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * utils.c: #include "event-loop.h" for declaration of
+       async_request_quit.
+       * Makefile.in (utils.o): Add dependency on event-loop.h.
+
+       * event-top.c (mark_async_signal_handler_wrapper,
+       async_request_quit): Move declaration from here.
+       * event-loop.h: To here.
+       
+       * defs.h: Add declaration of exec.c:exec_set_section_offsets.
+
+       * event-top.c: #include "gdbcmd.h" which includes "command.h" and
+       hence expose declaration of function dont_repeat.
+
+       * top.c (ISATTY), tracepoint.c (ISATTY), utils.c (ISATTY),
+       event-top.c (ISATTY): Move definitions from here.
+       * defs.h (ISATTY): To here. #include <unistd.h>.
+
+       * sol-thread.c, solib.c, source.c, sparcl-tdep.c, tracepoint.c,
+       utils.c, win32-nat.c, wince.c, top.c, symfile.c, ser-unix.c,
+       ser-tcp.c, procfs.c, maint.c, infttrace.c, hppa-tdep.c,
+       ser-pipe.c, remote-rdp.c, main.c, inftarg.c, inflow.c,
+       hpux-thread.c, hp-psymtab-read.c, go32-nat.c, fork-child.c,
+       corelow.c, command.c: Do not #include <unistd.h>, moved to defs.h.
+
+Mon Aug 30 15:14:43 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h (struct tui_stream, enum streamtype): Move from here.
+       * utils.c: To here.
+
+       * main.c (tui_file_fputs): Move from here.
+       * utils.c: To here.
+
+Sun Aug 29 10:03:32 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdb-events.h, gdb-events.c, gdb-events.sh: New files.
+
+1999-08-27  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * solib.c (open_symbol_file_object): new function.
+       Called when attaching to a new process, if there is no loaded
+       symbol file.  Attempts to locate the executable file for the
+       attached process and load symbols from it.
+       (solib_add): Call open_symbol_file_object if attaching to a
+       new process and no open symbol file.    
+
+1999-08-27  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * config/i386/tm-sun386.h (GDB_TARGET_IS_SUN386): Definition
+       removed--no longer checked anywhere in gdb.
+
+1999-08-27  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * infrun.c (stop_stepping): New function, broken out from
+       stop_stepping label in handle_inferior_event.
+       (handle_inferior_event): Change gotos into function calls.
+
+Fri Aug 27 20:13:22 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h (LONGEST): Move definition to earlier in file - to just
+       after BFD.
+       (paddr_u, paddr_d): Declare.
+       * utils.c (decimal2str): New function.
+       (paddr_u, paddr_d): Define.
+
+       * remote.c (remote_cisco_section_offsets,
+       compare_sections_command): Fix XprintfX arguments.  Use paddr...
+       (putpkt_binary): Fix XprintfX arguments.
+
+Tue Aug 24 21:30:36 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+        * arm-tdep.c (arm_init_extra_frame_info): Add braces.  Recommended
+        by gcc -Wparentheses.
+
+1999-08-26  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * infrun.c (check_sigtramp2): New function, broken out from
+       check_sigtramp2 label in handle_inferior_event.
+       (handle_inferior_event): Change gotos into function calls.
+
+       Declare Tahoe configuration obsolete.
+       * configure.host, configure.tgt: Comment out Tahoe configs.
+       * Makefile.in: Comment out Tahoe-related action.
+       * tahoe-tdep.c, config/tahoe/*: Comment out.
+       * NEWS: Mention obsolete status.
+
+1999-08-26  J.T. Conklin  <jtc@redback.com>
+
+       * i386-stub.c, m32r-stub.c, m68k-stub.c, sh-stub.c, sh-stub.c,
+       sparc-stub, sparcl-stub.c sparclet-stub.c (getpacket): If '$',
+       the packet start character is received in the 'middle' of a 
+       packet, assume that packet end character has been lost and
+       start a new packet.
+
+       * i386-stub.c, m32r-stub.c, m68k-stub.c, sh-stub.c, sparc-stub.c,
+       sparcl-stub.c sparclet-stub.c (getpacket): Changed to return ptr
+       to first character of input buffer.  Removed & 0x7f masks.
+       (handle_exception): Don't access remcomInBuffer directly.
+
+1999-08-25  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * breakpoint.c (disable_breakpoints_in_shlibs): Only disable
+       enabled breakpoints.
+
+Tue Aug 24 14:59:23 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * tracepoint.c, remote.c, pa64solib.h, value.h, somsolib.h,
+       solib.h, scm-lang.h, language.h, inferior.h, defs.h, coff-solib.h,
+       ch-lang.h, breakpoint.h, annotate.h: Remove #if __STDC__ wrapping
+       struct declarations.
+
+       * config/sparc/nm-sun4sol2.h, config/mn10300/tm-mn10300.h,
+       config/mn10200/tm-mn10200.h, config/i386/tm-i386.h,
+       config/i386/tm-i386v.h, config/i386/nm-i386sol2.h,
+       config/pa/nm-hppah.h, config/rs6000/nm-rs6000.h,
+       config/sparc/tm-sp64.h, config/v850/tm-v850.h,
+       config/tic80/tm-tic80.h, config/sparc/tm-sparc.h,
+       config/sh/tm-sh.h, config/rs6000/tm-rs6000.h, config/pa/tm-hppa.h,
+       config/mips/tm-mips.h, config/m68k/tm-m68k.h,
+       config/m32r/tm-m32r.h, config/i960/tm-mon960.h,
+       config/fr30/tm-fr30.h, config/h8300/tm-h8300.h,
+       config/arm/tm-arm.h, config/alpha/tm-alpha.h,
+       config/a29k/tm-a29k.h: Ditto.
+
+Wed Aug 25 10:45:33 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (gdb$(EXEEXT)): Add dependency on TDEPLIBS.
+
+       * config/arm/arm.mt (TDEPLIBS): Define.  Move libangsd.a to here.
+       (TDEPFILES): From here.
+
+1999-08-24  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * top.c (init_main): Add new set/show command exec-done-display,
+       default value is off.
+       * event-loop.h: Export exec_done_display_p.
+       * event-top.c: New variable exec_done_display_p.
+       * infrun.c (complete_execution): Print completion message if
+       corresponding flag is set.
+
+       * top.c (DEFAULT_PROMPT): Add space after "(gdb)" at end of prompt.
+
+       From: J.T. Conklin  <jtc@redback.com> 
+       * top.c (DEFAULT_PROMPT): Set to "(gdb)" if not already defined.
+       (init_main): Always use DEFAULT_PROMPT.
+
+Tue Aug 24 03:23:31 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hppa-tdep.c: Remove useless "purecov: deadcode" comments.
+       (hppa_use_struct_convention): Update for PA64.
+       (hppa_frame_saved_pc): Properly extract the saved PC in a call
+       dummy frame.
+       (in_solib_call_trampoline): Return nonzero if we are in a function
+       called ".stub".
+       (prologue_inst_adjust_sp): Handle std,ma.
+       (skip_prologue_hard_way): Handle more PA2.0/PA64 insns.
+       (hppa_frame_find_saved_regs): Similarly.  Handle indirect save of
+       %r3 into the stack.
+
+       * config/pa/tm-hppa64.h (CALL_DUMMY_BREAKPOINT_OFFSET_P): Define.
+       (CALL_DUMMY_BREAKPOINT_OFFSET): Define.
+
+Tue Aug 24 14:59:23 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (gdb$(EXEEXT)): Add dependency on main.o that was
+       lost when libgdb.a was added.
+
+Tue Aug 24 14:26:34 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.c, gdbarch.h: Convert to pure ISO-C.
+       
+       * gdbarch.sh: New file.
+       * gdbarch.c, gdbarch.h: Add note describing gdbarch.sh
+
+Mon Aug 23 19:36:17 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (libgdb.a): New target.
+       (gdb$(EXEEXT)): Add dependency on libgdb.a.
+       (libgdb-files, LIBGDB_OBS, libgdb, LIBGDBDEPS, LIBGDBFILES): Delete.
+
+Mon Aug 23 10:16:32 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * infttrate.c (child_pid_to_exec_file): Find the correct base
+       of the stack for PA64.
+
+       * pa64solib.c: Fix some minor whitespace problems.
+       (bfd_lookup_symbol): New function.
+       (pa64_solib_create_inferior_hook): Find the address __dld_break
+       in the dynamic linker.  Try to set a shlib event breakpoint in
+       that function.
+       (add_to_solist): Do not add the same shared library to the shlib
+       list more than once.
+
+Sun Aug 22 14:49:40 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * value.h (enum lval_type): Move declaration from here.
+       * defs.h (enum lval_type): To here.
+       * frame.h, gdbarch.h: Delete incomplete declaration of ``enum
+       lval_type''.
+       
+1999-08-20  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * breakpoint.c (can_use_hardware_watchpoint): reject expressions
+       that refer to registers or register variables.
+
+Fri Aug 20 10:53:38 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hppa-tdep.c (hppa_fix_call_dummy): Provide PA2.0W aware code.
+
+       * pa64solib.c pa64solib.h: New files.
+
+       * config/pa/hppa64.mt: Delete commented out code that is and
+       never will be appropriate for this target.
+       * config/pa/hpux11w.mt (TDEPFILES): Remove SOM references.  Also
+       remove pa64solib.o.
+       * config/pa/hpux11w.mh (NATDEPFILES): Remove SOM references.
+
+       * configure.host; Use "hpux11w" and "hpux11" instead of
+       "hpux1100w" and "hpux1100" respectively
+       * config/pa/hpux11w.mh: Renamed from hpux1100w.mh.
+       * config/pa/hpux11w.mt, config/pa/hpux11.mh: Likewise.
+       * config/pa/hpux11.mt: Likewise.
+
+1999-08-19  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * breakpoint.h (target_hw_bp_type): new enum.
+       * breakpoint.c (insert_breakpoints): use enum instead of consts.
+       (remove_breakpoint): use enum instead of consts.
+       (throughout): use "warning" instead of "fprintf(stderr, ..."
+       [Also clean up a bunch of excessively long lines.]
+       
+1999-08-19  J.T. Conklin  <jtc@redback.com>
+
+       * i386-stub.c (waitabit): Removed.
+       (breakpoint): Update.
+
+       * i386-stub.c, m32r-stub.c, sparc-stub.c, sparcl-stub.c,
+       sparclet-stub.c (set_debug_traps): Don't send gratuitous ACK.
+
+       * m68k-stub.c (putpacket): Restore code so that packets are sent
+       until an ACK is received.
+
+1999-08-19  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * breakpoint.c (bpstat_stop_status): Accept triggered addresses
+       anywhere inside the region occupied by a watched variable as a
+       sign that the watchpoint fired.  Don't stop if some watchpoint
+       was triggered, but its address doesn't match the address of this 
+       watchpoint.
+       (TARGET_REGION_OK_FOR_HW_WATCHPOINT): New macro.
+       Default definition is to call TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT.
+       (can_use_hardware_watchpoint): Call TARGET_REGION_OK_FOR_HW_WATCHPOINT;
+       if it returns zero, return zero immediately. 
+       (insert_breakpoints): Try to insert watchpoints for all the values
+       on the value chain, even if some of them fail to insert.  Remove
+       the breakpoint if parts of its value chain couldn't be inserted.
+       
+1999-08-19  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * go32-nat.c (go32_stopped_by_watchpoint): Remove unused code.
+
+1999-08-19  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * go32-nat.c (tcgetpgrp, tcsetpgrp): New functions.
+
+1999-08-19  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * go32-nat.c (go32_wait): If we are in a single-step mode, and the
+       next instruction is INT nn or INTO, use a temporary breakpoint to
+       simulate single-step mode, and reset the trace flag.
+
+1999-08-19  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * go32-nat.c (wp_op): New typedef.
+       (SHOW_DR): Print the length of watched region as well.
+       (go32_insert_aligned_watchpoint): Remove unused argument PID.  All
+       callers and the prototype changed.
+       (go32_handle_nonaligned_watchpoint): Renamed from
+       go32_insert_nonaligned_watchpoint.  Now handles all operations on
+       non-aligned watchpoints: insertion, deletion, and counting.  If
+       called with wp_count as the first argument, return the count of
+       debug registers needed to watch the region.  Don't break out of
+       the loop before all the addresses in the region are processed.
+       (go32_remove_watchpoint): Call go32_remove_aligned_watchpoint to
+       do the actual work.
+       (go32_remove_aligned_watchpoint): New function, modeled after
+       go32_insert_aligned_watchpoint.  Removes watchpoints that watch
+       regions of arbitrary length by calling
+       go32_handle_nonaligned_watchpoint as needed.
+       (go32_region_ok_for_watchpoint): New function, called from
+       can_use_hardware_watchpoint via the new macro
+       TARGET_REGION_OK_FOR_HW_WATCHPOINT.
+
+       * config/i386/nm-go32.h (TARGET_REGION_OK_FOR_HW_WATCHPOINT):
+       Define to call go32_region_ok_for_watchpoint.
+       (DECR_PC_AFTER_HW_BREAK): Define back to zero (previous redefinition
+       to 1 was due to a bug in go32-nat.c).
+
+1999-08-19  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * go32-nat.c (cleanup_dregs): New function.
+       (go32_mourn_inferior): Call it.
+       (IS_REG_FREE, LOCAL_ENABLE_REG, GLOBAL_ENABLE_REG, DISABLE_REG,
+       SET_BREAK, SET_WATCH, IS_WATCH, WATCH_HIT): Protect arguments with
+       parentheses.
+       (SET_BREAK): Increment the debug register's reference count.
+       (DR_DEF): New macro, returns the access and length bits of the
+       breakpoint.
+       (SHOW_DR): Print the reference count of each register.  Disable or
+       enable print-out depending on an environment variable GDB_SHOW_DR.
+       (go32_insert_aligned_watchpoint): Look for an occupied debug
+       register with the same address and access/length bits, and reuse
+       it by incrementing reference the count, before occupying another
+       register.  Return zero upon success.
+       (go32_insert_nonaligned_watchpoint): Pass the read/write bits to
+       go32_remove_watchpoint.
+       (go32_remove_watchpoint): Accept an additional parameter: the
+       read/write bits of the watchpoint to remove, and only remove a
+       watchpoint if it's occupied and its address and read/write bits
+       match.  Only disable the register if its reference count is zero;
+       otherwise just decrease the reference count.
+       (go32_remove_hw_breakpoint): Only decrease reference count and
+       disable the debug register if it is occupied and its access bits
+       match those of an instruction breakpoint.
+       (go32_insert_hw_breakpoint): Before occupying another debug
+       register, look for an already occupied register that defines an
+       instruction breakpoint with the same address.  If found, increment
+       its reference count.  Call SHOW_DR even if failed to insert a
+       breakpoint.
+
+       * config/i386/nm-go32.h (target_remove_watchpoint): Accept the
+       TYPE argument as well.
+
+Wed Aug 18 17:47:25 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * mips-tdep.c: Add more comments.
+
+1999-08-17  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * blockframe.c: Don't use PARAMS anymore, remove obsolete comment
+       about frameless functions.
+
+1999-08-16  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * thread.c (delete_thread): delete any step_resume breakpoint
+       held by the thread.  (prune_threads): call delete_thread.
+       * breakpoint.c (breakpoint_init_inferior): if startup, then
+       delete any remaining step_resume breakpoints.
+       * infrun.c (handle_inferior_event): add cautionary comment.
+
+1999-08-16  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * remote.c (remote_async_mourn): New function. Async version of
+       remote_mourn().
+
+1999-08-16  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * terminal.h [__GO32__]: Remove conditional; DJGPP now supports
+       termios.
+
+1999-08-16  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * command.c (CANT_FORK) [__MSDOS__]: Define.
+       (shell_escape) [CANT_FORK]: If ARG is NULL, pass an empty string
+       to `system'.
+       [__DJGPP__]: Return to the original directory after the shell
+       exits.
+
+1999-08-16  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * config/i386/xm-go32.h (ROOTED_P): Don't reference X[1] if X[0]
+       is a null character.
+
+       * config/i386/nm-go32.h (DECR_PC_AFTER_HW_BREAK): Define to 1.
+
+1999-08-16  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * go32-nat.c (redir_cmdline_parse, redir_cmdline_delete,
+       redir_to_child, redir_to_debugger, redir_debug_init)
+       [__DJGPP_MINOR__ < 3]: Dummy stubs for redirecting debuggee's
+       standard handles.
+       (print_387_status): Print "last FP instruction", not "last
+       exception".  Restore the upper 5 bits of the opcode that aren't
+       stored in the FPU state.  Print the FPU stack in its physical
+       order, not relative to ST(0).  Print "special", not "trap" for
+       unnormals and infinities.  Print all 10 bytes of each FP register,
+       and print them with 19 significant digits.
+       (regno_mapping): Make the mapping consistent with tm-go32.h.
+       (sig_map): Add mappings for SIGQUIT, SIGFPE, SIGALRM.  Map NMI to
+       SIGBUS.
+       (excep_map): New variable, maps GDB signals to DJGPP exceptions.
+       (go32_attach): Signal an error: we cannot attach to other
+       processes.
+       (go32_resume): Record the signal with which the inferior should be
+       resumed, mapped to the DJGPP exception number.
+       (go32_wait): Pass the signal recorded in go32_resume to the
+       debuggee.  Save and restore debugger's and debuggee's current
+       working directory.
+       [__DJGPP_MINOR__ < 3]: Save and restore inferior's FPU state.
+       (store_register): FPU regsiters have numbers less than 31.
+       (go32_kill_inferior): Delete the parsed command-line storage.
+       (go32_create_inferior): Initialize the parsed command-line
+       storage.  Parse the command line and create the redirections for
+       inferior's standard handles.
+       [__DJGPP_MINOR__ < 3]: Init the inferior's FPU state.
+       (ignore2): Function deleted.
+       (device_mode): New function, switches a character device between
+       raw and cooked mode.
+       (go32_terminal_init): Invalidate the raw/cooked mode information.
+       (go32_terminal_info): Print whether the inferior's terminal is in
+       raw or cooked mode.
+       [__DJGPP_MINOR__ > 2]: Say if standard handles are redirected or
+       closed by the inferior.
+       (go32_terminal_inferior): Switch standard handles to the
+       inferior's files/devices.  Put the inferior's input device to
+       raw/cooked mode, exactly like we found it last time.
+       (go32_terminal_ours): Restore debugger's standard handles and put
+       the terminal into cooked mode.  Save the mode of inferior's input
+       device.
+       (init_go32_ops): Assign go32_ops.to_attach,
+       go32_ops.to_terminal_info, go32_ops.to_terminal_ours_for_output.
+       Initialize inferior's cwd and the command-line storage.
+
+Mon Aug 16 14:29:30 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * config/pa/tm-hppa.h (ARGS_GROW_DOWNWARD): Define.
+       * config/pa/tm-hppa64.h (ARGS_GROW_DOWNWARD): Undefine.
+       * hppa-tdep.c (hppa_push_arguments): Handle arguments growing in
+       both directions depending ARGS_GROW_DOWNWARD.
+       (hppa_find_saved_regs): Update for 64bit wide registers & pointers
+       and PA64 ABI. 
+
+       * hppa-tdep.c (hppa_pop_frame): Various fixes for 64bit wide
+       registers and pointers.
+       (hppa_fix_call_dummy, skip_trampoline_code): Likewise.
+       (restore_pc_queue): Update tests for width of memory loads.
+       (hppa_push_arguments): Delete version that was #if 0'd out.
+
+       * hppa-tdep.c (push_dummy_frame): Handle the new 64it ABI.
+       (find_dummy_frame_regs): Corresponding changes.
+
+       * hppa-tdep.c (read_unwind_info): Initialize obj_private->dp.
+       (internalize_unwinds): Improve test for when to use segment
+       relative code for unwinder bounds.
+       (rp_saved): Fix offset of saved return pointer for the 64bit ABI.
+       (hppa_frame_saved_pc): Various updates to handle 64bit registers
+       and pointers.
+       (frame_chain, restore_pc_queue): Likewise.
+
+       * hppa-tdep.c (rp_saved): RP is saved at frame-16 when
+       pointers are 64bits wide.
+
+       * hppa-tdep.c (record_text_segment_lowaddr): New function.
+       (internalize_unwinds): Use it if addressess are 8 bytes wide. 
+
+       * symfile.c (syms_from_objfile): No longer warn if the lowest
+       section does not have SEC_CODE set.
+
+       * Makefile.in (pa64solib.o): Add dependencies.
+
+       * hppah-nat.c (store_inferior_registers): Do not try to write a
+       nonzero value to the high part of IPSW.  Fix typo in unable to store
+       warning.
+
+       * config/pa/tm-hppa.h (opd_data structure): Delete.  Not actually
+       needed.
+       (struct obj_private_struct): Add new entry for the objfile's DP
+       value.
+       * config/pa/tm-hppa64.h (CALL_DUMMY): Add a nop to make it an even
+       number of instructions.  Pack the dummy into word sized hunks.
+       (CALL_DUMMY_LENGTH): Update appropriately.
+       (PC_IN_CALL_DUMMY, CALL_DUMMY_LOCATION_AFTER_TEXT_END): Delete.
+
+Mon Aug 16 19:08:19 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * configure.in: Try -lsocket when looking for socketpair.
+       * configure, config.h: Re-generate.
+
+1999-08-13  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       From Christopher Faylor <cgf@cygnus.com>:
+       
+       * event-loop.c (gdb_wait_for_event): Before going to wait for
+       another event with select or poll, flush the error and the output
+       streams.
+
+       * event-top.c (gdb_readline2): Do not buffer the input, because
+       doing so can interfere with select/poll in bad ways.
+
+Fri Aug 13 17:36:56 1999  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * maint.c (maintenance_dump_me) [__DJGPP__]: Simulate a core dump
+       with SIGABRT.
+       * utils.c (quit) [__MSDOS__]: Don't mention SIGINT, since it's not
+       gonna happen.
+       (notice_quit): No need to define this function for the DJGPP port.
+
+1999-08-13  James Ingham  <jingham@leda.cygnus.com>
+
+       * arm-tdep.c (arm_frameless_function_invocation): SKIP_PROLOGUE
+       macro no longer modifies its argument.  Update uses to accord.
+
+       * config/arm/arm.mt (TDEPFILES): Add the remote-rdi.o to the
+       TDEPFILES.
+       * configure.tgt: Add rdi-share to configdir for the Arm targets.
+
+Fri Aug 13 11:16:32 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hppah-nat.c (store_inferior_registers): Revamp to be PA2.0W
+       aware.
+
+       * infttrace.c (ttrace_write_reg_64): New function.
+
+       * hp-symtab-read.c (is_in_import_list): Delete extern declaration.
+       * somread.c (is_in_import_list): Delete function.
+       * objfiles.c (is_in_import_list): New function.
+       * objfiles.h (is_in_import_list): Declare.
+
+       * config/pa/tm-hppa64.h (GDB_TARGET_IS_HPPA20W): Define before
+       including tm-hppah.h.
+       (PC_IN_CALL_DUMMY): Define.
+       (HPUX_1100): Similarly.
+       * config/pa/tm-hppa.h (somsolib.h, pa64solib.h): Conditionalize
+       includes on GDB_TARGET_IS_HPPA20W.
+
+       * configure.host: Distinguish between wide and narrow modes
+       for hpux11.
+       * config/pa/hpux1100w.mh, config/pa/hpux1100w.mt: New files.
+
+       * config/pa/tm-hppa64.h (STACK_ALIGN): Redefine.
+       (REG_PARM_STACK_SPACE): Likewise.
+
+       * config/pa/tm-hppa.h (CLEAN_UP_REGISTER_VALUE): Handle 64bit
+       PA target correctly.
+       (REG_PARM_STACK_SPACE): Define.
+       (struct unwind_table_entry): region_start and region_end are
+       CORE_ADDRs.
+       (typedef opd_data): New.
+       (obj_private_data_t): Include pointer to opd_data structure.
+
+1999-08-13  Keith Seitz  <keiths@cygnus.com>
+
+       * stabsread.c (stabsread_clear_cache): New funciton which clears
+       an optimization cache of the reader.
+
+       * coffread.c (coff_symfile_finish): Give stabs reader a chance to
+       clean up.
+
+       * win32-nat.c (handle_load_dll): Don't suppress re-reading symbols
+       from a DLL if an objfile for it already exists. (Not that this should
+       happen anymore anyway...)
+
+1999-08-13  Keith Seitz  <keiths@cygnus.com>
+
+       * config/mcore/tm-mcore.h (SAVE_DUMMY_FRAME_TOS): Define for MCore,
+       which also requires that the stack pointer be saved for call
+       dummies BEFORE arguments get pushed onto it.
+
+1999-08-12  Stan Shebs  <shebs@andros.cygnus.com>
+
+       From Eli Zaretskii  <eliz@is.elta.co.il>:
+       * source.c (mod_path) [_WIN32 || __DJGPP__]: Don't remove trailing
+       slash from "d:/".  Don't overstep the beginning of name.
+       [_WIN32 || __MSDOS__]: Convert "d:" to "d:.", otherwise appending
+       a slash changes its meaning.
+       (openp): Use SLASH_P, not equality with SLASH_CHAR.
+       (print_source_lines_base) [CRLF_SOURCE_FILES]: Skip \r only before
+       a \n.
+       (forward_search_command) [CRLF_SOURCE_FILES]: Remove \r at the end
+       of all lines.
+       (reverse_search_command) [CRLF_SOURCE_FILES]: Likewise.
+
+       * gnu-regex.c (CHAR_CLASS_MAX_LENGTH): Don't use wide characters
+       unless HAVE_BTOWC is defined.
+
+Fri Aug 13 10:20:12 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       From J.T. Conklin <jtc@redback.com>:
+       * gdbinit.in: Change the template .gdbinit to match the recent
+       fatal error handling change.
+
+1999-08-11  Keith Seitz  <keiths@cygnus.com>
+
+       * maint.c (maintenance_internal_error): Fix typo in prototype.
+
+Wed Aug 11 15:38:05 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * remote.c (remote_rcmd): Pass an empty command across to the
+       target.  Check for and handle an ``Enn'' return status.
+
+Tue Aug 10 13:59:45 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * maint.c (_initialize_maint_cmds): Add ``maintenance
+       internal-error'' command.
+       (maintenance_internal_error): New function.
+
+1999-08-10  James Ingham  <jingham@leda.cygnus.com>
+
+       * top.c: Remove the disassembly_flavor_hook, use the new set_hook
+       instead. 
+       * defs.h: Ditto.
+       * arm-tdep.c (set_disassembly_flavor_sfunc):  Ditto.
+
+1999-08-10  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * config/i386/nm-i386sol2.h (FIND_NEW_THREADS): remove, obsolete.
+       * config/sparc/nm-sun4sol2.h (FIND_NEW_THREADS): remove, obsolete.
+               
+1999-08-10  J.T. Conklin  <jtc@redback.com>
+
+       * configure.tgt (i[3456]86-*-aout*, i[3456]86-*-coff*,
+       i[3456]86-*-elf*): Use embed.mt.
+       * config/i386/embed.mt: New file.
+
+1999-08-10  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * remote.c (remote_async_open_1): Remove casting in call to
+       add_file_handler.
+       (extended_remote_async_create_inferior): Ditto.
+
+       * event-top.c (change_line_handler): Ditto.
+       (_initialize_event_loop): Ditto.
+
+       * infrun.c (complete_execution): Ditto.
+
+       * event-loop.c (add_file_handler): Change proc parameter to be ptr
+       to func with void parameter, rather than void*. Coerce second
+       paramter in calls to create_file_handler. Replace
+       async_handler_func and file_handler_func with handler_func.
+
+       * event-loop.h: Get rid of typedefs for file_handler_func and
+       async_handler_func, just have one, and call it handler_func.
+       Replace async_handler_func and file_handler_func occurrences with
+       handler_func.
+
+Tue Aug 10 03:13:03 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hppa-tdep.c: Delete random #if 0 code.
+       (is_branch): Handle new branching opcodes from PA2.0
+       (inst_saves_gr, inst_saves_fr): Handle additional instructions
+       used to save general and floating point registers in the stack.
+       (skip_prologue_hard_way): Handle additional instructions to
+       save the return pointer in the stack.
+       (after_prologue): Fix mis-guided and incorrect code to find
+       the end of the prologue using debug symbols.
+       (hppa_skip_prologue): Generally clean up comments, lose code
+       which does not apply to the PA, etc.
+
+Sun Aug  8 17:53:41 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * MAINTAINERS: Make Andrew Cagney the mn10300 maintainer.
+       Transfer responsibility for the PowerPC from Andrew Cagney to
+       Elena Zannoni.
+
+Tue Aug 10 13:59:45 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       Based on code from J.T. Conklin <jtc@redback.com>:
+       * utils.c (internal_error): Make quit? and coredump? separate
+       questions so that the user can dump-core and not quit.
+       (internal_error): Cleanup error message.
+
+1999-08-09  Tom Tromey  <tromey@cygnus.com>
+
+       * kod-cisco.c (cisco_kod_open): Removed incorrect `arg' argument.
+
+Sun Aug  8 12:06:47 1999  Fred Fish  <fnf@cygnus.com>
+
+       * coffread.c (process_coff_symbol): Remove section_offsets from
+       prototype and function definition.  Get section_offsets from the
+       passed objfile and pass it on to callees the same way.
+       (coff_symtab_read): Ditto.
+       (coff_symfile_read): Ditto.
+       * dbxread.c (read_dbx_dynamic_symtab): Ditto.
+       (read_dbx_symtab): Ditto.
+       (dbx_symfile_read): Ditto.
+       (coffstab_build_psymtabs): Ditto.
+       (elfstab_build_psymtabs): Ditto.
+       (stabsect_build_psymtabs): Ditto.
+       * dstread.c (dst_symfile_read): Ditto.
+       * elfread.c (elf_symfile_read): Ditto.
+       * jv-class.c (jv_class_symfile_read): Ditto.
+       * mipsread.c (mipscoff_symfile_read): Ditto.
+       * nlmread.c (nlm_symfile_read): Ditto.
+       * os9kread.c (os9k_symfile_read): Ditto.
+       * somread.c (som_symfile_read): Ditto.
+       * stabsread.h (elfstab_build_psymtabs): Ditto.
+       * xcoffread.c (xcoff_initial_scan): Ditto.
+
+       * symfile.h (sym_read): Remove section_offsets from prototype.
+       * symfile.c (syms_from_objfile): Call sym_read without
+       section_offsets.
+       (reread_symbols): Ditto.
+
+       * elfread.c (elfstab_offset_sections): Use SIZEOF_SECTION_OFFSETS
+       to allocate sections offsets array.
+       * xcoffread.c (xcoff_symfile_offsets): Ditto.
+
+       * partial-stab.h (section_offsets): Get from objfile.
+       * dbxread.c (read_dbx_symtab): Fix typo that made -1 casted
+       to a CORE_ADDR look like an subtraction expression.
+       * objfiles.h: Add some comments.
+       * symfile.c: Add some comments.
+       * objfiles.c: Add some comments.
+       (objfile_relocated): Use ALL_OBJFILE_OSECTIONS to iterate over
+       sections.
+       (find_pc_sect_sections): Use ALL_OBJSECTIONS to iterate over all
+       sections in all objfiles.
+       * symfile.c (syms_from_objfile): Use ALL_OBJFILE_OSECTIONS.
+
+       * irix5-nat.c (symbol_add_stub): Fix typo that made taking the
+       address of lowest_sect with '&' look like a bitwise and op.
+       * osfsolib.c (symbol_add_stub): Ditto.
+       * solib.c (symbol_add_stub): Ditto.
+       * symfile.c (syms_from_objfile): Ditto.
+
+       * dwarf2read.c (dwarf2_build_psymtabs_hard): Minor format tweak.
+       * symfile.c (syms_from_objfile): Ditto, and fix typo.
+       * top.c (init_main): Fix typo in comment (DEFULAT_PROMPT).
+       * doc/gdbint.texinfo (find_sym_fns): This replaces symfile_init.
+
+1999-08-08  James Ingham  <jingham@leda.cygnus.com>
+
+       * remote.c (remote_insert_breakpoint): Fix typo in Z packet support. 
+       Also move Z packet support OUTSIDE of REMOTE_BREAKPOINT ifdef,
+       since this is not set for all targets that support the Z packet.
+
+Fri Aug  6 17:17:28 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h (fatal): Delete declaration.
+       (internal_error): Declare.
+       * utils.c (nomem): Call internal_error instead of fatal.
+       (fatal_dump_core): Delete.
+       (malloc_botch): Print message direct to stderr.
+       (fatal): Delete definition.
+       * utils.c (internal_error): Define.
+       
+       * gdbarch.h, gdbarch.c, hppah-nat.c, ch-exp.c, dsrec.c, sh-tdep.c,
+       infptrace.c, f-lang.c, symm-nat.c, top.c, m3-nat.c, v850-tdep.c,
+       remote-vx.c, remote-sim.c, remote-mips.c, source.c, infcmd.c,
+       findvar.c, remote.c: Replace fatal with call to internal_error.
+
+Sun Aug  8 15:28:33 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ser-pipe.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO): Move
+       definition from here.
+       * defs.h: To here.
+       
+Sat Aug  7 21:44:59 1999  Fred Fish  <fnf@cygnus.com>
+
+       * remote.c (remote_insert_breakpoint): Fix typo, missing ';'.
+
+Sun Aug  8 11:26:57 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * mips-tdep.c (mips_gdbarch_init): Add break; to the default case.
+
+Fri Aug  6 19:26:03 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h: Delete #if ANSI_PROTOTYPES code, GDB assumes ISO-C.
+       * remote-rdp.c (send_rdp), remote-os9k.c (printf_monitor),
+       remote-mips.c: (mips_error), remote-array.c: (printf_monitor,
+       debuglogs), complaints.c (complain), monitor.c:
+       (monitor_printf_noecho, monitor_printf), language.c (type_error,
+       range_error), remote-st.c: (printf_stdebug), remote-sim.c
+       (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
+       gdb_os_evprintf_filtered, gdb_os_error), serial.c (serial_printf),
+       utils.c (warning, error, fatal, fatal_dump_core, (query,
+       fprintf_filtered, fprintf_unfiltered, fprintfi_filtered,
+       printf_filtered, printf_unfiltered, printfi_filtered): Delete
+       legacy #ifndef ANSI_PROTOTYPES varargs code.
+
+       * defs.h: Don't #include <varargs.h>.
+       * remote-rdp.c, remote-os9k.c, remote-mips.c, remote-array.c,
+       monitor.c, remote-st.c: Don't include <varargs.h> or <stdarg.h>.
+
+1999-08-06  James Ingham  <jingham@leda.cygnus.com>
+
+       * configure.in, configure: add the --enable-multi-ice to determine 
+       whether to configure and build the multi-ice-gdb-server.  Note,
+       for now this only builds on cygwin, so don't enable it for other
+       platforms... 
+
+1999-08-06  Tom Tromey  <tromey@cygnus.com>
+
+       * Makefile.in (SFILES): Added kod.c and kod-cisco.c.
+       (COMMON_OBS): Added kod.o and kod-cisco.o.
+       (kod-cisco.o): New target.
+       (kod.o): New target.
+       * kod-cisco.c: New file.
+       * kod.c: New file.
+
+1999-08-06  James Ingham  <jingham@leda.cygnus.com>
+
+       These are some fixups for the Arm, and support for the
+       disassembly-flavor for the ARM.
+       
+       * defs.h: Declare the disassembly_flavor_hook
+       * top.c: Define the disassembly_flavor_hook
+       * i386-tdep.c: Remove unnecessary declaration of the
+       disassembly_flavor_hook.
+
+       * config/arm/tm-arm.h: Change definition of
+       arm_init_extra_frame_info.
+       Add a few more comments.
+       * arm-tdep.c (arm_init_extra_frame_info): Listen to and use the
+       fromleaf parameter passed into init_extra_frame_info.
+       (set_disassembly_flavor_sfunc): New Function.
+       (set_disassembly_flavor): New Function.
+       (arm_othernames): Use the set_disassembly_flavor.
+       (_initialize_arm_tdep): Setup the disassembly flavor commands, and 
+       initialize the flavor.
+       (arm_frameless_function_invocation): Adjust for
+       frameless functions that have 1 or 2 instructions that mimic the
+       standard APCS form.
+       (arm_scan_prologue): Be more careful about scanning the function
+       prologue.  Don't match things that just have a few of the prologue 
+       instructions out of order, and don't get thrown by the scheduler
+       migrating instructions into the prologue.
+
+       Add support for the "Z" and "z" packets to request the stub
+       to set a breakpoint.
+       
+       * remote.c (set_remote_protocol_Z_packet_cmd): New function.
+       (show_remote_protocol_Z_packet_cmd): New Function.
+       (remote_open_1): Init the Z packet config.
+       (remote_async_open_1): Init the Z packet config.
+       (remote_insert_breakpoint): Use the "Z" packet if supported.
+       (remote_remove_breakpoint): Use the "z" packet if supported.
+       (remote_insert_watchpoint): New Function - currently wired to
+       nothing. 
+       (remote_remove_watchpoint): Ditto.
+       (remote_insert_hw_breakpoint): Ditto.
+       (remote_remove_hw_breakpoint): Ditto.
+
+1999-08-06  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * infcmd.c: Include parser-defs.h.
+       (interrupt_target_command): Declare.
+       (stack_dummy_testing): Remove old funky flag.
+       (run_stack_dummy): Remove unused reference to old funky flag.
+
+1999-08-06  Tom Tromey  <tromey@cygnus.com>
+
+       * command.c (do_setshow_command): Call set_hook if not NULL.
+       * top.c (set_hook): New hook definition.
+       * defs.h (set_hook): Declare.
+
+1999-08-05  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * infrun.c: Convert code to pure standard C, elim some warnings.
+       (stopped_for_shlib_catchpoint): Remove, never used.
+
+1999-08-05  Keith Seitz  <keiths@cygnus.com>
+
+       * NEWS: Mention new Motorola MCore target.
+
+       * sparc-tdep.c (gdb_print_insn_sparc): Print insns of the current
+       architecture.
+
+Thu Aug  5 20:41:22 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * configure.in (configdirs): Add check for socketpair.
+       * configure, config.in: Re-generate.
+
+       From Mon Jul 19 10:46:18 1999 Philippe De Muyter <phdm@macqel.be>:
+       * ser-pipe.c (sys/wait.h): Include this file only #if HAVE_SYS_WAIT_H.
+       (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO): Macros defined if needed.
+
+Thu Aug  5 20:04:17 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * target.c (debug_to_open, debug_to_attach, debug_to_post_attach,
+       debug_to_require_attach, debug_to_detach, debug_to_require_detach,
+       debug_to_wait, debug_to_post_wait, debug_to_fetch_registers,
+       debug_to_store_registers, debug_to_prepare_to_store,
+       debug_to_xfer_memory, debug_to_files_info,
+       debug_to_insert_breakpoint, debug_to_remove_breakpoint,
+       debug_to_terminal_init, debug_to_terminal_inferior,
+       debug_to_terminal_ours_for_output, debug_to_terminal_ours,
+       debug_to_terminal_info, debug_to_kill, debug_to_load,
+       debug_to_lookup_symbol, debug_to_create_inferior,
+       debug_to_post_startup_inferior,
+       debug_to_acknowledge_created_inferior,
+       debug_to_clone_and_follow_inferior,
+       debug_to_post_follow_inferior_by_clone,
+       debug_to_insert_fork_catchpoint, debug_to_remove_fork_catchpoint,
+       debug_to_insert_vfork_catchpoint,
+       debug_to_remove_vfork_catchpoint, debug_to_has_forked,
+       debug_to_has_vforked, debug_to_can_follow_vfork_prior_to_exec,
+       debug_to_post_follow_vfork, debug_to_insert_exec_catchpoint,
+       debug_to_remove_exec_catchpoint, debug_to_has_execd,
+       debug_to_reported_exec_events_per_exec_call,
+       debug_to_has_syscall_event, debug_to_has_exited,
+       debug_to_mourn_inferior, debug_to_can_run,
+       debug_to_notice_signals, debug_to_thread_alive, debug_to_stop,
+       debug_to_query, debug_to_rcmd, debug_to_enable_exception_callback,
+       debug_to_get_current_exception_event, debug_to_pid_to_exec_file,
+       debug_to_core_file_to_sym_file, debug_to_close): Send trace output
+       to ``gdb_stdlog'' instead of ``gdb_stderr''.
+
+Thu Aug  5 16:22:10 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (init_remote_ops): Initialize remote_ops.to_rcmd.
+       (init_remote_async_ops): Initialize remote_async_ops.to_query.
+       (remote_rcmd): New function.
+
+       * monitor.c (monitor_rcmd): Rename monitor_command.
+       (init_base_monitor_ops): Initialize monitor_ops.to_rcmd.
+       (_initialize_remote_monitors): Move "monitor" command from here.
+       * target.c (initialize_targets): To here.
+       (monitor_command): New function.  Implement "monitor" command.
+
+       * target.c (cleanup_target): de_fault to_rcmd.
+       (update_current_target): INHERIT to_rcmd.
+       (debug_to_rcmd): New function.
+       (setup_target_debug): Initialize current_target.to_rcmd.
+
+       * target.h (struct target_ops): Add field to_rcmd.
+       (target_rcmd): Define.
+
+Thu Aug  5 14:24:07 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c: Replace comment describing remote protocol with
+       pointer to official document.
+       
+Thu Aug  5 11:59:06 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (remote_protocol_binary_download): New variable.
+       Replace ``remote_binary_download'' and ``remote_binary_checked''.
+       (set_remote_protocol_binary_download_cmd,
+       show_remote_protocol_binary_download_cmd): New functions.
+       (remote_open_1, remote_async_open_1, remote_cisco_open):
+       Initialize ``remote_protocol_binary_download'' instead of
+       ``remote_binary_download''.
+       (check_binary_download): Re-write.
+       (remote_write_bytes): Ditto.
+       (_initialize_remote): Add ``set remote X-packet'' and ``show
+       remote X-packet'' commands.  Disable old ``set
+       remotebinarydownload'' command.
+
+1999-08-04  Keith Seitz  <keiths@cygnus.com>
+
+       * remote-rdi.c (arm_rdi_close): Close the transport device, too.
+
+Wed Aug  4 10:42:58 1999  Fred Fish  <fnf@cygnus.com>
+
+       * xcoffread.c (scan_xcoff_symtab): Change main_aux into
+       an array of 5 internal_auxent to leave room for bfd to
+       write n_numaux entries.  Change code to use the first one.
+
+1999-08-02  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * c-valprint.c (c_val_print): When printing decimal equivalent
+       of a char, cast appropriately.
+
+1999-08-02  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       From Jonathan Larmour <jlarmour@cygnus.co.uk>:
+       * main.c (print_gdb_help): Use gdbinit variable to determine file
+       name used for --nx help
+
+1999-08-01  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * config/mips/tm-mips.h (BIG_ENDIAN): Don't define here.
+
+1999-08-01  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * stabsread.c (read_range_type): Handle an unsigned range type
+       whose length in bytes is any power of two, not just a few
+       common ones.
+
+       * monitor.c (monitor_expect): When we receive a character that
+       isn't part of the string we were expecting, don't just start
+       matching again at the beginning of the string --- some shorter
+       suffix of the input might be a prefix of the string too.
+
+1999-07-31  Fred Fish  <fnf@cygnus.com>
+
+       * symfile.c (symbol_file_command): Fix typo that made -1 casted
+       to a CORE_ADDR look like an subtraction expression.
+       (add_symbol_file_command): Ditto.
+
+1999-07-30  Jim Blandy  <jimb@cygnus.com>
+
+       * hppa-tdep.c (pa_print_registers): Frob register output some more.
+
+1999-07-29  Jim Blandy  <jimb@cygnus.com>
+
+       * config/pa/nm-hppah.h (PTRACE_ARG3_TYPE): After more
+       consideration, make this a CORE_ADDR, like WDB did. 
+
+       Rather than casting every single use of really_free_pendings to 
+       make_cleanup_func, why not actually make it have that type?  Golly!
+       * buildsym.c (really_free_pendings): Change argument type to PTR.
+       buildsym.h (really_free_pendings): Fix declaration.
+       * dbxread.c (dbx_symfile_read, dbx_psymtab_to_symtab_1),
+       dwarf2read.c (psymtab_to_symtab_1), dwarfread
+       (psymtab_to_symtab_1), hp-psymtab-read.c (hpread_build_psymtabs),
+       os9kread.c (os9k_symfile_read, os9k_psymtab_to_symtab_1),
+       xcoffread.c (xcoff_psymtab_to_symtab_1, xcoff_initial_scan):
+       Remove casts.
+
+       Pass a CORE_ADDR safely through catch_errors.
+       * hppa-tdep.c (args_for_find_stub): New member, return_val.
+       (cover_find_stub_with_shl_get): Change argument and return type to
+       match catch_errors.  Save return value of find_stub_with_shl_get
+       in *args.
+       (initialize_hp_cxx_exception_support): Collect value of
+       eh_notify_callback_addr from args. 
+
+       Get rid of some noise.  It would be nice to get helpful warnings
+       from the compiler about lossy conversions.
+       * hppa-tdep.c (eh_notify_hook_addr, eh_notify_callback_addr,
+       eh_break_addr, eh_catch_catch_addr, eh_catch_throw_addr,
+       break_callback_sal): Initialize these to zero, not NULL, to shush
+       warnings.
+       * infttrace.c (thread_fake_step): Compare signal to
+       TARGET_SIGNAL_0, not NULL, to avoid warnings.
+       (_initialize_infttrace): Add sanity check.
+
+       * config/pa/nm-hppah.h (PTRACE_ARG3_TYPE): Define this to be
+       long, so we can pass arguments properly to ptrace.
+
+       * hppah-nat.c (child_xfer_memory): Correctly compute mask to round
+       address to an int boundary.
+
+1999-07-29  Jim Blandy  <jimb@cygnus.com>
+
+       Change from Ian Lance Taylor <ian@zembu.com>.  The
+       i386_linux_sigtramp* functions should be moved to
+       i386-linux-tdep.c, when that file is introduced.
+
+       * config/i386/tm-linux.h (LINUX_SIGCONTEXT_SIZE): Define.
+       (LINUX_SIGCONTEXT_PC_OFFSET): Define.
+       (LINUX_SIGCONTEXT_SP_OFFSET): Define.
+       (SIGCONTEXT_PC_OFFSET): Don't define.
+       (I386_LINUX_SIGTRAMP): Define.
+       (IN_SIGTRAMP): Define.
+       (i386_linux_sigtramp): Declare.
+       (sigtramp_saved_pc): Define.
+       (i386_linux_sigtramp_saved_pc): Declare.
+       (FRAMELESS_SIGNAL): Define.
+       (FRAME_CHAIN, FRAME_SAVED_PC): Define after #undef.
+       * i386-tdep.c (i386_linux_sigtramp_start): New static function if
+       I386_LINUX_SIGTRAMP.
+       (i386_linux_sigtramp): New function if I386_LINUX_SIGTRAMP.
+       (i386_linux_sigtramp_saved_pc): Likewise.
+       (i386_linux_sigtramp_saved_sp): Likewise.
+
+1999-07-28  Jim Blandy  <jimb@cygnus.com>
+
+       * infrun.c (handle_inferior_event): Don't try to use the code for
+       stepping over a function call to also handle stepping out of a
+       sigtramp on HP-UX.  That ends up trashing step-resume breakpoints.
+       This change reverts some of David Taylor's change of 31 Dec 1998.
+       The HP-UX maintainer needs to submit a new change for whatever
+       problem the original change was trying to fix.
+
+1999-07-28  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-top.c (command_line_handler): Don't treat an empty line
+       from readline the same way as a multiline command. This avoids
+       missing detecting when the user presses just 'enter'.
+
+1999-07-28  Jim Blandy  <jimb@cygnus.com>
+
+       Provide more sanity checking:
+       * infrun.c (handle_inferior_event): Before assigning a new
+       breakpoint to step_resume_breakpoint, make sure it's not already
+       pointing at one; if it is, that's a bug.
+       (check_for_old_step_resume_breakpoint): New function.
+
+1999-07-28  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       From Eli Zaretskii  <eliz@is.elta.co.il>:
+       * top.c (gdb_init) [__MSDOS__]: Arrange for GDB to return to the
+       original directory before exiting.
+       (cd_command) [_WIN32 || __MSDOS__]: Canonicalize the new directory
+       name explicitly.  Handle "d:/" names correctly.
+       (init_history) [__MSDOS__]: Use _gdb_history as the default GDB
+       history file name.
+
+Mon Jul 26 17:13:39 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (enum packet_support, enum packet_detect, struct
+       packet_config): Define.
+       (set_packet_config_cmd, show_packet_config_cmd,
+       add_packet_config_cmd, init_packet_config): New functions.
+       Generic support for optional packets.
+       (remote_protocol_P): Replace stub_supports_P.
+       (set_remote_protocol_P_packet_cmd, show_remote_protocol_P_packet_cmd):
+       New functions.
+       (_initialize_remote): Add ``set remote-protocol-P-packet'' command.
+       (remote_open_1, remote_async_open_1, remote_cisco_open):
+       Initialize ``remote_protocol_P''.
+       (remote_store_registers): Re-write ``P'' probe logic.
+       (store_register_using_P): New function.
+
+       From Ian Lance Taylor <ian@airs.com>:
+       (remote_prepare_to_store): Only read registers when ``P'' packet
+       is in state unsupported or support-unknown.
+       
+1999-07-24  Fred Fish  <fnf@cygnus.com>
+
+       * symfile.c (default_symfile_offsets): Clear section_offsets
+       before filling it in.
+
+1999-07-16  Keith Seitz  <keiths@cygnus.com>
+
+       * remote.c (_initialize_remote): "remotebreak" should be a var_boolean.
+
+1999-07-15  Jim Blandy  <jimb@cygnus.com>
+       
+       Make the output from "info registers" fit withinin 80 columns.
+       * hppa-tdep.c (pa_print_registers): Make it easy to change row and
+       column counts.  Switch to three columns, instead of four, and
+       adjust spacing.
+
+       First cut at supporting HPPA2.0 in "wide" (64-bit) mode.
+       * configure.tgt: Add hppa2.0w target.
+       * config/pa/hppa64.mt, config/pa/tm-hppa64.h: New files.
+       * hppa-tdep.c (hppa_fix_call_dummy): Dyke out code to tweak the
+       call dummy, if target is PA2.0w.  This is temporary, until I get
+       function calls working.
+       * hppah-nat.c (fetch_register): Rewritten to handle both narrow
+       and wide register requests.
+       (HPPAH_OFFSETOF): New macro.
+
+       * gdbtypes.c (is_integral_type): New function.
+       * gdbtypes.h: Prototype for above.
+
+1999-07-15  J.T. Conklin  <jtc@redback.com>
+
+       * configure.tgt (i[3456]86-*-vxworks*): New target.
+       * config/i386/vxworks.mt: New file, x86 VxWorks target
+       * config/i386/tm-vxworks.h: New file.
+
+       * configure.tgt (powerpc-*-vxworks*): New target.
+       * config/powerpc/vxworks.mt: New file, PowerPC VxWorks target
+       * config/powerpc/tm-vxworks.h: New file.
+
+       * NEWS: Mention the new configs.
+
+1999-07-15  Fernando Nasser  <fnasser@cygnus.com>
+
+       * target.c (target_preopen): Prevent query when not from_tty.
+       * infcmd.c (run_command): Prevent query when not from_tty.
+
+1999-07-15  Fernando Nasser  <fnasser@cygnus.com>
+
+       * event-loop.c: Fix typo in comment.
+
+Wed Jul 14 17:29:31 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ser-pipe.c (struct pipe_state): Define.
+       (pipe_close): Retain the PID of the sub-process using ``struct
+       pipe_state''.  Delete #ifdef code that used popen().
+       (pipe_close): Kill of the sub-process as part of the cleanup.
+
+       * serial.h (struct _serial_t): Add field ``state''.
+
+1999-07-13  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-top.c (display_gdb_prompt): Don't display the prompt if we
+       are in the middle of an execution command. Also trick readline so
+       it doesn't try to display the prompt.
+       (command_line_handler): Get rid of change_prompt, unused variable.
+       Use {push, pop}_prompt mechanism in case of multiline commands.
+
+       * infrun.c (complete_execution): Set target_executing to 0 as
+       first thing, so that display_gdb_prompt does the right thing.
+
+Tue Jul 13 20:29:46 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * parse.c (build_parse): Fix conditional increment of num_std_regs
+       for SP_REGNUM. Was conditional on FP_REGNUM.
+
+Tue Jul 13 16:44:58 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h, gdbarch.c: Revert 1999-07-07 Stan Shebs
+       <shebs@andros.cygnus.com> indentation change.  Don't let indent
+       mess with these files.
+
+Mon Jul 12 11:15:09 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * config/mips/tm-mips.h (REGISTER_CONVERT_TO_RAW,
+       REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERTIBLE): Define.
+       (REGISTER_RAW_SIZE): Re-define as mips_register_convert_to_raw.
+       * mips-tdep.c (mips_register_convert_to_raw,
+       mips_register_convert_to_virtual, ): New functions.
+       (mips_register_raw_size, mips_register_convertible): New
+       functions.  Handle bug introduced by ``Wed Apr 1 23:13:23 1998
+       Andrew Cagney <cagney@b1.cygnus.com>'' where remote mips64 target
+       transfers SR as 64 bits yet GDB expected only 32 bits.
+       (mips64_transfers_32bit_regs): New static variable.
+       (_initialize_mips_tdep): Add obscure command ``set
+       remote-mips64-transfers-32bit-regs'' that provides backward
+       compatibility.
+       (do_gp_register_row): Extract register values from raw buffer.
+
+       * NEWS: Document protocol change.
+
+1999-07-12  Keith Seitz  <keiths@cygnus.com>
+
+       * rdi-share/unixcomm.c (Unix_ResetSerial): Remove CYGWIN32
+       conditional.  It's no longer needed.
+       (SERPORT1, SERPORT2): Linux serial ports are "/dev/ttyX", not
+       "/dev/cuaX" (X=0,1,2,3,...).
+
+Mon Jul 12 02:02:00 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * defs.h, utils.c (fputstrn_filtered, fputstrn_unfiltered,
+       fputstrnn_unfiltered): New functions.
+       (gdb_printchar): Delete.
+
+       * remote.c (print_packet): Replace gdb_printchar with
+       fputstrn_filtered.
+       (getpkt): Use fputstrn_unfiltered to dump packet received.
+       (putpkt_binary): Use fputstrnn_unfiltered to dump packet sent.
+
+1999-07-09  Keith Seitz  <keiths@cygnus.com>
+
+       * blockframe.c (blockvector_for_pc_sect): When looking for a block,
+       we want the one whose end is greater than our PC, not greater or equal.
+
+1999-07-08  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * sparcl-tdep.c (init_sparclite_ops): Fix doc strings, remove
+       useless inits.
+       (sparclite_ops): Remove redundant decl.
+
+Thu Jul  8 16:48:40 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ser-pipe.c (pipe_open): Bi-directional popen found on both
+       NetBSD and OpenBSD.
+       * ser-pipe.c: New file.  Implement popen() style serial interface.
+       * NEWS: Mention.
+       * Makefile.in (ALLDEPFILES): Add ser-pipe.c.
+       (ser-pipe.o): Add new target.  Specify dependencies.
+       (SER_HARDWIRE): Add ser-pipe.o.
+       * serial.c (serial_open): Recognize a serial pipe ``|''.
+
+1999-07-07  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * All C files except *-stub.c and *-share/*: Indent to GNU
+       standard, using indent 1.9.1.
+       * defs.h: Make indent ignore this file, macros confuse it.
+
+       * gnu-regex.c, gnu-regex.h: Don't let indent mess with these.
+
+Wed Jul  7 13:06:24 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote-mips.c (fputs_readable): Rename puts_readable, add struct
+       gdb_file argument.
+       (fputc_readable): Rename putc_readable, add struct gdb_file
+       argument.
+
+       * remote-mips.c (mips_expect_timeout, mips_receive_header,
+       mips_send_packet, mips_receive_packet), remote-rdp.c (put_byte,
+       get_byte, put_word, rdp_init, rdp_init), remote-sds.c
+       (sds_interrupt, sds_wait, readchar, putmessage, read_frame,
+       getmessage), remote-udi.c (udi_store_registers, fetch_register):
+       (store_register), xmodem.c (readchar), utils.c (puts_debug),
+       gnu-nat.h (debug), parse.c (parse_exp_1): Cleanup - send debug/log
+       messages to gdb_stdlog.
+
+1999-07-06  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * exec.c: Remove long-#ifed-out section of code that confuses
+       indent.
+       * gdbtypes.c (add_mangled_type): Add some braces to indicate
+       grouping better.
+       * gnu-nat.c: Remove literal newlines embedded in strings,
+       causes indent to weird out.
+       * language.c (binop_result_type): Remove extra paren.
+       * lynx-nat.c: Add a missing paren to fetch_core_registers decl.
+       * nec4102rom.c (vr4102_insert_step): Fix typos.
+       (_initialize_vr4102_rom): Remove literal newline in string.
+       * config/a29k/tm-a29k.h: Suppress formatting of pictures.
+       * config/m68k/xm-3b1.h: Remove excess #endif.
+
+       Declare Pyramid configuration obsolete.
+       * configure.host, configure.tgt: Comment out Pyramid configs.
+       * Makefile.in: Comment out Pyramid-related actions.
+       * pyr-xdep.c, pyr-tdep.c, config/pyr/*: Comment out.
+       * NEWS: Mention obsolete status.
+
+1999-07-06  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * remote.c: Include <sys/time.h> to pick up FD_SET et al defns on
+       some old Linux distributions.
+       * remote-os9k.c, remote-st.c, ser-tcp.c, ser-unix.c,
+       sparcl-tdep.c, remote.c: Back out inclusion of <sys/select.h>.
+       It isn't necessary after all.
+
+1999-07-06  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * infcmd.c (strip_bg_char): Remove assignment from 'if' condition.
+
+1999-07-05  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * remote.c: Include <sys/select.h> if it exists in order to pick up
+       FD_SET et al defns.
+       * remote-os9k.c:  Same.
+       * remote-st.c:  Same.
+       * ser-tcp.c:  Same.
+       * ser-unix.c:  Same.
+       * sparcl-tdep.c:  Same.
+
+Fri Jul  2 19:38:43 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * top.c (target_output_hook): Delete definition.
+       * defs.h (target_output_hook): Delete declaration.
+
+       * remote.c (remote_console_output): Delete call to
+       target_output_hook().  Send target output to gdb_stdtarg using an
+       unfiltered write. Make more robust.
+
+       * remote-sim.c (gdb_os_write_stdout, gdb_os_write_stderr):
+       Ditto. For moment, do not try to separate target stdout and stderr
+       streams.
+
+       * defs.h (gdb_stdtarg): New global. Output from target and
+       simulators.
+
+1999-07-02  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * top.c (return_to_top_level): Do all the exec_cleanups too.
+
+       * event-top.c (command_handler): Set up for a continuation, if we
+       are in the middle of running an execution command which will
+       finish later on. Do cleanups, an display of time/space only if not
+       running with an async target or not running an execution command.
+       (command_line_handler_continuation): New function. Continuation
+       for command_line_handler.
+
+       * utils.c (exec_cleanup_chain): New cleanup chain to be used in
+       async mode for the execution commands.
+       (make_exec_cleanup): New function. Add a cleanup to the
+       exec_cleanup_chain.
+       (do_exec_cleanups): New Function. Do cleanups on the
+       exec_cleanup_chain.
+       (add_continuation): New function. Add a new continuation to the
+       cmd_continuation list.
+       (do_all_continuations): New function. Do all the continuations on
+       the cmd_continuation list.
+
+       * top.h (ALL_CLEANUPS): Move from here to defs.h.
+
+       * defs.h (struct continuation_arg): New structure. Arg to pass to
+       the call to a command continuation.
+       (struct continuation): New structure. Continuation for an
+       execution command.
+       (ALL_CLEANUPS): Move here from top.h.
+       
+       * remote.c (remote_async_open_1): Set things up for telling the
+       target we are running the extended protocol, only after the target
+       has stopped.
+       (set_extended_protocol): New function. Tell the target we are
+       using the extended protocol.
+       (remote_async_resume): Set things up for sync execution only if
+       this is the first time we are called.
+
+       * breakpoint.c (until_break_command_continuation): New function.
+       Stuff to be done after the target stops during the 'until'
+       command.
+       (until_break_command): Set things up for completing the 'until'
+       command later on. Do the final cleanups only if not running
+       asynchronously or async execution is not supported by the target.
+
+       * infcmd.c (until_command): Recognize '&' at end of command and
+       handle it properly.
+       (finish_command_continuation): New function. Do whatever is needed
+       after the target has stopped.
+       (finish_command): Recognize '&' at end of command and handle it
+       properly. Don't do stuff needed after target has stopped if
+       running asynchronously and target has async. Use exec_cleanup_chain
+       if running asynchronously and target is asynchronous.
+
+       * infrun.c (cmd_continuation): New gloabl variable. Used to
+       coplete execution commands in async mode, after the target has
+       stoped.
+       (fetch_inferior_event): Use exec_cleanup_chain, instead of
+       cleanup_chain. Do all the exec cleanups at the end. Do all the
+       continuations at the end. Call complete_execution from here,
+       instead of normal_stop.
+       (complete_execution): Cleanup the signals handlers for SIGINT
+       before displaying the prompt.
+       (start_remote): Set target_executing to 1.
+       (normal_stop): Don't call complete_execution from here.
+       
+Thu Jul  1 19:14:30 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * blockframe.c (struct dummy_frame): Add member ``top''.
+       (generic_push_dummy_frame): Initialize top to sp.
+       (generic_save_dummy_frame_tos): New function.  Initialize top.
+       (generic_find_dummy_frame): Check for the top of the frame.
+
+       * blockframe.c (generic_push_dummy_frame): Free the dummy_frame
+       registers.
+
+       * config/mn10300/tm-mn10300.h (SAVE_DUMMY_FRAME_TOS): Define.
+       (TARGET_READ_FP): Return the SP as a best guess.
+
+Wed Jun 30 15:45:48 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * configure.host (hppa*-*-hpux11*): Accept any version of hpux11
+       instead of hpux11.0*.
+
+1999-06-30  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * source.c (directory_command): Add missing test for from_tty. 
+
+1999-06-29  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * remote.c: Include event-loop.h.
+       (remote_async_ops, extended_async_remote_ops): Define new target
+       vector structures for asynchronous debugging.
+       (remote_async_open): New function. Asynchronous version of
+       remote_open.
+       (extended_remote_async_open): New function. Asynchronous version
+       of extended_remote_open.
+       (remote_async_open_1): New function. Async version of
+       remote_open_1.
+       (remote_async_detach): New function. Async version of
+       remote_detach.
+       (remote_async_resume): New function. Async version of
+       remote_resume.
+       (initialize_sigint_signal_handler, handle_remote_sigint,
+       handle_remote_sigint_twice, async_remote_interrupt,
+       async_remote_interrupt_twice, cleanup_sigint_signal_handler): New
+       functions. Used for handling ^C while target is running.
+       (remote_async_wait): New function. Async version of remote_wait.
+       (remote_async_kill): New function. Async version of remote_kill.
+       (extended_remote_async_create_inferior): New function. Async
+       version of extended_remote_create_inferior.
+       (init_remote_async_ops): New function. Initialize target vector
+       for target async.
+       (init_extended_async_remote_ops): New function. Initialize target
+       vector for target extended-async.
+       (_initialize_remote): Initialize remote_async_ops and
+       extended_async_remote_ops.
+
+       * infrun.c: Include "event-loop.h".
+       (sync_execution): new global variable.
+       (proceed): Invoke wait_for_inferior and normal_stop only if not
+       running in async mode or if target doesn't support async
+       execution.
+       (start_remote): Don't call wait_for_inferior and normal_stop if
+       not running in async mode or if target not async. If running async
+       and target is async, start the target in simulated synchronous
+       mode.
+       (async_ecss, async_ecs): New global vars, for inferior state.
+       (fetch_inferior_event): New function. Async version of
+       wait_for_inferior.
+       (complete_execution): New function. Reset of gdb prompt and stdin,
+       after inferior execution has completed.
+       (normal_stop): Call complete_execution at end of asynchronous
+       execution.
+
+       * infcmd.c (strip_bg_char): New function to detect the background
+       execution char '&'.
+       (run_command): Modify to support background and foreground
+       execution in async mode.
+       (continue_command): Ditto.
+       (step_1): Ditto.
+       (jump_command): Ditto.
+       (interrupt_target_command): New function. Interrupt the
+       target execution.
+       (_initialize_infcmd): Add new command 'interrupt'.
+       
+       * top.c (target_executing): New global variable.
+       (execute_command): Reject commands that cannot be executed while
+       the target is running asynchronously.
+
+       * event-top.c (push_prompt): Make non static.
+       (pop_prompt): Make non static. If the current prompt is empty,
+       don't try to copy it over the previous one.
+       (handle_sigint): Make non static.
+       (command_handler): Do the cleanups only when not executing with an
+       asynchronous target.
+
+       * event-loop.c (delete_async_signal_handler): Pass a pointer to a
+       pointer to a signal handler, so that is can be freed at the end.
+
+       * target.c (update_current_target): Inherit to_has_async_exec.
+
+       * inferior.h: Add global variables target_executing, and
+       sync_execution. Export function fetch_inferior_event.
+
+       * event-loop.h: Add push_prompt, pop_prompt, handle_sigint to the
+       exported functions. Update prototype for delete_signal_handler.
+
+       * target.h (struct target_ops): New target op: to_has_async_exec.
+       (target_has_async): New macro.
+
+       * Makefile.in (infrun.o): Add dependency on event-loop.h.
+       (remote.o): Ditto.
+
+1999-06-28  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * solib.c (clear_solib): Don't disable breakpoints if we're
+       running an a.out executable (Solaris's SunOS emulation).
+
+1999-06-25  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * main.c (main): Remove intialization of command_loop_hook, it
+       is now done in _initialize_event_loop().
+       * event-loop.c (gdb_do_one_event): Make static.
+       (start_event_loop): New function. Just start the event loop.
+       * event-top.c (cli_command_loop): New name for start_event_loop().
+       (gdb_readline2): Make non static.
+       (_initialize_event_loop): Set command_loop_hook to cli_command_loop.
+       * event-loop.h: Adjust exported functions accordingly.
+
+       * top.c (init_main): Move setting of async_command_editing_p from
+       here.  
+       * event-top.c (_initialize_event_loop): To here.
+       (change_line_handler): Revert previous change. Add comment.
+       (_initialize_event_loop): Revert previous change.
+       (cli_command_loop): New name for start_event_loop().
+       (start_event_loop): New function. This just starts up the event loop.
+       (gdb_readline2): Make non static.
+       (_initialize_event_loop): Set command_loop_hook to cli_command_loop.
+
+1999-06-25  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-top.c (change_line_handler): Get rid of the global
+       variable input_fd, use `fileno (instream)' instead.
+       (_initialize_event_loop): Ditto
+       
+       * event-loop.c (add_file_handler): New function. Wrapper for
+       create_file_handler.
+       (create_file_handler): Make static.  
+       * event-top.c (_initialize_event_loop): Call add_file_handler,
+       instead of create_file_handler.
+       (change_line_handler): Ditto.  
+       Remove poll.h include.
+       * event-loop.h: Export add_file_handler instead of
+       create_file_handler.    
+
+1999-06-24  Stan Shebs  <shebs@andros.cygnus.com>
+
+       Declare Altos configuration obsolete.
+       * configure.host, configure.tgt: Comment out Altos config.
+       * Makefile.in: Comment out Altos-related actions.
+       * altos-xdep.c, config/m68k/altos.mh, altos.mt, tm-altos.h,
+       xm-altos.h: Comment out.
+       * NEWS: Mention obsolete status.
+
+1999-06-24  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * Makefile.in: Add MAKEHTML and MAKEHTMLFLAGS; pass them down;
+       recognize html and install-html targets.
+       * gdbserver/Makefile.in: Add empty html and install-html targets.
+       * nlm/Makefile.in: Ditto.
+       * rdi-share/Makefile.in: Ditto.
+
+1999-06-24  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * ax-gdb.c (agent_command): Remove vestigial call to ax_reqs.
+
+1999-06-24  James Ingham  <jingham@leda.cygnus.com>
+
+       * arm-tdep.c (arm_othernames): Change both gdb's register display
+       AND the opcode disassembly register naming if the othernames
+       command.  Fixes the gdb part of CR 101177.
+
+1999-06-23  Stan Shebs  <shebs@andros.cygnus.com>
+
+       Declare Convex configuration obsolete.
+       * configure.host, configure.tgt: Comment out Convex configs.
+       * Makefile.in: Comment out Convex-related actions.
+       * convex-xdep.c, convex-tdep.c, config/convex/*: Comment out.
+       * NEWS: Mention obsolete status.
+
+1999-06-23  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * main.c: Turn on async by default by setting async_p to 1.
+
+Wed Jun 23 15:44:39 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       From Jimmy Guo <guo@cup.hp.com>:
+       * frame.h (enum lval_type): Delcare when an __STDC__ compiler.
+       Reverts Mon Aug 11 16:08:52 1997 Fred Fish <fnf@cygnus.com>
+       change.
+       * utils.c (gdb_file_rewind, gdb_file_put): Fix.  A void function
+       does not return a result.
+
+Wed Jun 23 15:30:46 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (set_thread, remote_get_threadinfo,
+       remote_threads_info, remote_current_thread, remote_get_threadlist,
+       extended_remote_restart, get_offsets, remote_open_1,
+       remote_detach, remote_resume, remote_wait, remote_fetch_registers,
+       remote_store_registers, check_binary_download, remote_write_bytes,
+       remote_read_bytes, remote_search, putpkt_binary, putpkt_binary,
+       read_frame, compare_sections_command, remote_query,
+       packet_command, remote_info_process): Use alloca to create space
+       for arrays of size PBUFSIZ.
+
+1999-06-22  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * top.c: Update copyright years to include 1999.
+
+1999-06-18  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * top.c: Move include of event-loop.h, to avoid redefinition of
+       NFDBITS.
+
+       * event-loop.c (create_file_handler): Do not do a realloc of the
+       pollfd structure of the notifier, unless there is already one.
+       Include <sys/types.h> for platforms that have no poll.
+       
+       * event-top.c: Fix prototype for _initialize_event_loop.
+       (_initialize_event_loop): Do something only if running in async
+       mode.
+
+1999-06-17  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Make the '/c' print format use a true character type.  This is
+       more appropriate than builtin_type_char for languages other than
+       C, and C tolerates it.
+       * gdbtypes.c (builtin_type_true_char): New variable.
+       (build_gdbtypes): Initialize it.
+       * gdbtypes.h (builtin_type_true_char): New declaration.
+       * printcmd.c (print_scalar_formatted): When the format is 'c',
+       extract the value as a builtin_type_true_char.
+
+       * jv-exp.y (yylex): Say character literals are java_char_type, not
+       builtin_type_char.  Java treats the latter like `byte'.
+
+1999-06-17  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * Makefile.in (top_h): Define.
+       (event-loop.o): Add dependencies on top.h and defs.h.
+       (event-top.o): Add dependency on terminal.h.
+
+       * event-loop.c: Get rid of #include <readline.h>.
+
+       * event-loop.h: Get rid of nested #include's. 
+       * event-loop.c: Rearrange includes to accomodate change in
+       event-loop.h. Include poll.h, not sys/poll.h.
+       * event-top.c: Ditto.
+       * main.c: Ditto.
+       
+1999-06-16  David Taylor  <taylor@louisiana.cygnus.com>
+
+       * alpha-tdep.c (alpha_pop_frame): if frame->proc_desc
+       is NULL, call find_proc_desc so we know how to restore
+       the registers.
+
+1999-06-15  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * event-top.c (start_event_loop): call get_prompt.
+       (display_gdb_prompt): call get_prompt.
+       (async_stop_sig): call get_prompt.
+
+1999-06-15  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-loop.c (delete_file_handler): When positioning prev_ptr,
+       keep looping while the one after is not equal to file_ptr, instead
+       of equal.
+
+1999-06-14  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * MAINTAINERS: Add Jimmy Guo and Jim Blandy as HP testsuite and
+       SVR4 solib maintainers, respectively.
+
+1999-06-14  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       Add parameters to the gdb prompt.
+       * top.c (prompt): Rename to gdb_prompt_string for clarity.
+       (command_line_input): rename "prrompt" to prompt_arg for clarity.
+       (gdb_readline): rename "prrompt" to prompt_arg for clarity.
+       (read_command_lines): rename "prompt" to prompt_arg for clarity.
+       (stop_sig): call get_prompt instead of reading prompt string directly.
+       (command_loop): ditto.
+       (gdb_prompt_escape): New variable.  Esc char for prompt parameters.
+       (get_prompt_1): New function, workhorse for get_prompt.
+       (get_prompt): Completely rewrite.  Add functionality for a 
+       parameterized prompt, ie. the displayed prompt can change according
+       to the value of one or more expressions given as parameters in the
+       prompt string.
+       (init_main): use renamed variable gdb_prompt_string.  Add new
+       command "set prompt-escape-char" to set gdb_prompt_escape.
+       
+Sun Jun 13 10:44:13 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h (gdb_stdlog), main.c: Declare.
+       * main.c (main): Initialize.
+       * gdbarch.c: Write trace messages to the log file.
+       * remote.c: Update any debug/log prints.
+
+1999-06-11  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * remote.c (remote_wait): Clean up new thread handling.
+       (record_currthread): Announce new threads.
+
+1999-06-11  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * partial-stab.h (case N_LSYM, 'T' descriptor): Don't create
+       partial symbol table entries for nameless enums, even if the type
+       name is " ".  (We still pick up the enum elements, though.)
+
+       * partial-stab.h: Remove #if 0'd sections, dating back to 1992,
+       which set a variable which exists nowhere else in the source.
+       Please examine your test suite output carefully, and report any
+       problems to me.
+
+1999-06-11  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-top.c (setup_event_loop): Change name to start_event_loop.
+       Move the intialization of event-loop variables to
+       _initialize_event_loop.
+       (_initialize_event_loop): New function. Called at init time, to
+       set up important event-loop variables.
+
+       * event-loop.h: setup_event_loop is now start_event_loop.
+       * main.c (main): Ditto.
+
+Fri Jun 11 18:34:33 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * defs.h (gdb_file_rewind_ftype, gdb_file_rewind,
+       set_gdb_file_rewind, gdb_file_put_ftype, gdb_file_put,
+       set_gdb_file_put): Declare.
+       
+       * utils.c (gdb_file_new): Initialize ``rewind'' and ``put''.
+       (struct gdb_file): Add to_rewind and to_put.
+       (null_file_put, null_file_rewind, gdb_file_put, gdb_file_rewind,
+       set_gdb_file_put, set_gdb_file_rewind): New functions.
+       (tui_file_rewind, tui_file_put): New functions.
+       (tui_file_new): Add rewind and put.
+
+Fri Jun 11 15:10:32 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d10v-tdep.c (d10v_push_arguments): Fix order of arguments passed
+       to store_address.
+
+Fri Jun 11 10:31:29 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (tty_input): Change array to pointer.
+       (_initialize_remote): Call build_remote_gdbarch_data.
+       (build_remote_gdbarch_data): New function. Allocate space for
+       tty_input.
+       (readsocket, readtty): Delete extern declaration of tty_input.
+
+1999-06-10  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-top.c (gdb_readline2): Call the command handling function
+       via the input_handler pointer.
+       (change_line_handler): When turning off editing, set input_handler
+       as well.
+
+       * utils.c (prompt_for_continue): If running asynchronously, call
+       async_request_quit, instead of request_quit.
+
+       * tracepoint.c (read_actions): If running asynchronously, set the
+       signal handler for STOP_SIGNAL to handle_stop_sig.
+
+       * top.h: (source_line_number, source_file_name, source_error,
+       source_pre_error, history_expansion_p, server_command): export for
+       use of event-top.c.
+
+       * event-top.c: Include top.h and terminal.h.
+       (instream): Remove extern declaration.
+       (handle_sigint, handle_sigquit, handle_sighup, handle_sigfpe,
+       handle_sigwinch, async_do_nothing, async_disconnect,
+       async_float_handler, async_stop_sig): Make static.
+       (async_request_quit, async_do_nothing, async_disconnect,
+       async_float_handler, async_stop_sig): Add gdb_glient_data
+       argument.
+       (handle_stop_sig): New function.
+       (sigtstp_token): New variable.
+       (sigint_token, sigquit_token, sigfpe_token, sigwinch_token):
+       Change their type tp PTR.
+       (mark_async_signal_handler_wrapper): New function.
+       (setup_event_loop): Initialize all the variables used by readline
+       only if not already done while reading the .gdbinit file.  Display
+       the initial gdb prompt, if .gdbinit took care of setting things up
+       for readline.
+       (change_line_handler): When turning on the use of readline,
+       initialize input_handler as well.
+       (command_line_handler): Set up the signal handler for STOP_SIGNAL
+       to be handle_stop_sig.
+       (async_init_signals): Remove coercion of signal handlers in calls
+       to create_async_signal_handler.  Initialize token for stop signal.
+       (handle_sigint): Call async_request_quit using one argument.
+       (handle_sigint, handle_sigquit, handle_sighup, handle_sigfpe,
+       handle_sigwinch): Call mark_async_signal_handler_wrapper instead
+       of mark_async_signal_handler.
+
+       * event-loop.h: Add extern declarations for handle_stop_sig,
+       async_command_editing_p, async_annotation_suffix,
+       new_async_prompt, the_prompts.
+
+       * top.c (command_line_input): Set the signal handler to be
+       handle_stop_sig, in case gdb is running asynchronously.
+       (get_prompt): Return the top of the prompt stack if running
+       asynchronously.
+       (set_prompt): Set the top of the prompt stack if running
+       asynchronously.
+       (init_main): Move ``extern'' vars from here to event-loop.h.
+       
+1999-06-10  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * values.c (value_from_string): new function.  Make a value_ptr
+       from a string, with storage in local GDB memory (not in inferior).
+       * value.h (value_from_string): add prototype.
+       * remote.c (remote_cisco_ops): New remote target, "target cisco".
+       (init_remote_cisco_ops): New function, initialize new target.
+       (remote_cisco_mourn, remote_cisco_wait, remote_cisco_open, 
+       remote_cisco_close): New functions, implement new target cisco.
+       (minitelnet, readtty, readsocket) New functions, implement the
+       I/O pass-through mode for target cisco.
+       (remote_wait): Detect special enhanced version of the 'S' packet
+       for target cisco.  
+       (remote_cisco_expand): Perform Cisco variant of RLL decoding.
+
+1999-06-10  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-loop.c (gdb_wait_for_event): Initialize num_found to 0.
+
+       * top.c (print_prompt): Delete this function.
+
+       From: Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * event-top.c (async_hook): Delete extern declaration.
+
+       * defs.h: Replace ``async_hook'' with ``async_p''.
+       * top.c (gdb_init, init_main, init_main, init_main, init_main):
+       Replace ``async_hook'' with ``async_p''.
+
+       * main.c: Rename ``async'' to ``async_p''.
+       (main): Add --noasync option.
+       (main): Hook in the asynchronous event-loop based CLI using
+       command_loop_hook instead of async_hook. Delete call to
+       async_hook().
+
+Thu Jun 10 21:14:16 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * mn10300-tdep.c (mn10300_store_return_value,
+       mn10300_extract_struct_value_address,
+       mn10300_extract_return_value), config/mn10300/tm-mn10300.h: New
+       functions.
+       * config/mn10300/tm-mn10300.h (EXTRACT_STRUCT_VALUE_ADDRESS,
+       STORE_RETURN_VALUE, EXTRACT_RETURN_VALUE): Update.
+       (TARGET_MN10300): Delete macro.  Not used.
+
+Thu Jun 10 20:04:02 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * mn10300-tdep.c (mn10300_register_names): Make static.
+       (STORE_STRUCT_RETURN): Do not modify SP.
+
+       * config/mn10300/tm-mn10300.h(mn10300_register_name),
+       mn10300-tdep.c : New function.
+       * config/mn10300/tm-mn10300.h (REGISTER_NAME): Update.
+       * config/mn10300/tm-mn10300.h (mn10300_saved_pc_after_call),
+       mn10300-tdep.c: New function.
+       * config/mn10300/tm-mn10300.h (SAVED_PC_AFTER_CALL): Update.
+
+1999-06-10  Keith Seitz  <keiths@cygnus.com>
+
+       * mcore-rom.c (picobug_dumpregs): Return a value. Any value, it
+       doesn't matter.
+       * mcore-tdep.c (mcore_analyze_prologue): Set NO_MORE_FRAMES
+       if the start of the function is the entry point.
+       (mcore_analyze_prologue): rotli takes an immediate, not an
+       offset immediate.
+       (mcore_push_arguments): Fix compiler warning.
+
+1999-06-09  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
+
+        * rs6000-tdep.c (skip_prologue): Don't mistake a branch for a     
+        subroutine call.        
+
+1999-06-08  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * remote.c (remote_wait): Add 'N' response packet, which is a
+       stop with signal number plus section offsets for .text, .data and
+       .bss.  This is used by Cisco to indicate relocation offsets.
+       (remote_cisco_section_offsets, remote_cisco_objfile_relocate):
+       new files to support 'N' packet.  
+       (remote_info_process): New function.  Implements the 
+       "info remote-process" command, by means of which the remote target 
+       can report anything it wants to about the remote process/app being 
+       debugged.  
+       (_initialize_remote): add info remote-proc command.  
+       (remote_threads_info): New function for "info threads" command.  
+       Attempts to use new query "qfThreadInfo" instead of the old 
+       undocumented query.
+       * exec.c (exec_set_section_offsets) new files to support 'N' packet.
+
+Tue Jun  8 13:33:42 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * inferior.h (generic_target_read_pc, generic_target_write_pc,
+       generic_target_read_fp, generic_target_write_fp,
+       generic_target_read_sp, generic_target_write_sp): Declare new
+       functions.
+       * findvar.c (generic_target_read_pc, generic_target_write_pc,
+       generic_target_read_fp, generic_target_write_fp,
+       generic_target_read_sp, generic_target_write_sp): New functions.
+       (TARGET_READ_PC, TARGET_WRITE_PC, TARGET_READ_FP, TARGET_WRITE_FP,
+       TARGET_READ_SP, TARGET_WRITE_SP): Default to corresponding generic
+       function.
+       (write_pc_pid, write_pc_pid, read_sp, write_sp, read_fp,
+       write_fp): Simplify.
+
+       * gdbarch.c (verify_gdbarch): Always verify TARGET_PTR_BIT,
+       TARGET_SHORT_BIT, TARGET_INT_BIT, TARGET_LONG_BIT,
+       TARGET_LONG_LONG_BIT, TARGET_FLOAT_BIT, TARGET_DOUBLE_BIT,
+       TARGET_LONG_DOUBLE_BIT, TARGET_READ_PC, TARGET_WRITE_PC,
+       TARGET_READ_FP, TARGET_WRITE_FP, TARGET_READ_SP, TARGET_WRITE_SP,
+       USE_GENERIC_DUMMY_FRAMES, CALL_DUMMY_BREAKPOINT_OFFSET_P,
+       CALL_DUMMY_P, CALL_DUMMY_STACK_ADJUST_P, GET_SAVED_REGISTER,
+       REGISTER_CONVERTIBLE, PUSH_ARGUMENTS, PUSH_RETURN_ADDRESS,
+       FRAME_CHAIN_VALID.
+       (GET_GDBARCH, SET_GDBARCH): Delete macros.  Implement functions
+       directly.
+       * gdbarch.h, gdbarch.c: Call fatal() instead of abort().  Identify
+       the function / macro with a problem.  Always verify a architecture
+       attribute before returning it.
+       * gdbarch.h, gdbarch.c (generic_register_convertible_not): New
+       function.
+
+       * mips-tdep.c (mips_push_return_address): New function.
+       * config/mips/tm-mips.h (PUSH_RETURN_ADDRESS): Define.
+
+       * mips-tdep.c (mips_gdbarch_init): Initialize short_bit,
+       double_bit, long_double_bit, read_pc, write_pc, read_fp, write_fp,
+       read_sp, write_sp, frame_chain_valid, get_saved_register,
+       push_arguments, push_return_address, register_convertible,
+       call_dummy_p, use_generic_dummy_frames,
+       call_dummy_breakpoint_offset_p, call_dummy_stack_adjust_p,
+       call_dummy_words and sizeof_call_dummy_words.
+       * config/mips/tm-mips.h: Don't define CALL_DUMMY when multi-arch.
+
+1999-06-07  Keith Seitz  <keiths@cygnus.com>
+
+       * v850ice.c (init_hidden_window): Do not rely on the existence of
+       a gui for window creation. Return boolean status.
+       (v850ice_open): Use boolean status of init_hidden_window.
+       Allow any ICE execution command to run under CLI. Maybe one
+       day gdb will use a real event loop and allow this code to run.
+       * configure.tgt: Configure the v850 ice for all cygwin-hosted
+       toolchains.
+
+Mon Jun  7 23:37:26 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * config/mips/tm-mips.h (EXTRA_FRAME_INFO): Delete.
+       * mips-tdep.c (mips_init_extra_frame_info): Allocate saved_regs.
+       (temp_saved_regs): Replace struct with a simple pointer.
+       (set_reg_offset, mips32_heuristic_proc_desc, heuristic_proc_desc,
+       mips_init_extra_frame_info): Update.
+
+Mon Jun  7 21:40:12 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * config/mips/tm-mips.h (EXTRA_FRAME_INFO): Move elements from here.
+       * mips-tdep.c (struct frame_extra_info): To here.
+
+       * mips-tdep.c (mips_print_extra_frame_info, mips_find_saved_regs,
+       mips_init_extra_frame_info, mips_pop_frame): Update
+       (mips_init_extra_frame_info): Allocate space for the extra info.
+
+Mon Jun  7 21:08:50 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * config/mips/tm-mips.h (mips_init_extra_frame_info), mips-tdep.c:
+       Rename init_extra_frame_info.  Add argument ``fromleaf''.
+       mips-tdep.c (mips_gdbarch_init): Add mips_init_extra_frame_info.
+
+       * config/mips/tm-mips.h (mips_print_extra_frame_info),
+       mips-tdep.c: New function.
+       (PRINT_EXTRA_FRAME_INFO): Update definition.
+
+Mon Jun  7 20:11:07 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * config/mips/tm-mips.h, config/mips/tm-irix3.h,
+       config/mips/tm-tx19.h, config/mips/tm-tx19l.h,
+       config/mips/tm-tx39.h, config/mips/tm-tx39l.h: Rename macro
+       REGISTER_NAMES to MIPS_REGISTER_NAMES.
+
+       * config/mips/tm-mips.h (REGISTER_NAME): Define.
+       * mips-tdep.c (mips_processor_reg_names): New static variable.
+       (mips_register_name): New function.
+       (mips_set_processor_type): Update mips_processor_reg_names.
+       (mips_generic_reg_names): Initialize using MIPS_REGISTER_NAMES.
+       (mips_gdbarch_init): Add mips_register_name.
+
+Sun Jun  6 11:09:19 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (PBUFSIZ): Re-define so that value is computed at
+       run-time.
+       (MAXBUFBYTES): Re-define as a macro function.
+       * gdbarch.h, gdbarch.c: Add multi-arch support for REGISTER_BYTES.
+       * d10v-tdep.c, config/d10v/tm-d10v.h: Update.
+
+1999-06-05  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * symtab.c (decode_line_1): Accept filenames with spaces in
+       'linespecs' when enclosed in double quotation marks and handle
+       drive specification is DOS format (D:).
+
+1999-06-04  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * parse.c: Don't include <ctype.h> twice.
+
+1999-06-04  David Taylor  <taylor@louisiana.cygnus.com>
+
+       Sat May 15 12:16:09 1999  Per Bothner  <bothner@deneb.cygnus.com>
+
+        * eval.c (evaluate_subexp_standard):  Remove Gilmore rant.
+        (Of course C has "expected types", at least if you allow
+        brace-initializer expressions - as in Gcc.)
+        Remove NULLing out expect_type.  Do pass NULL_TYPE in place
+        the incoming expect_type where appropriate.
+
+Fri Jun  4 10:56:23 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hppa-tdep.c (hppa_fix_call_dummy): Make it work for GCC compiled
+       executables without end.o.  Clean up lots of mis-guided comments.
+
+Fri Jun  4 17:10:36 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * parser-defs.h (std_regs): Replace array with pointer.
+       * parse.c (build_parse): Build the std_regs table according to the
+       standard registers available.
+       (_initialize_parse): Register std_regs and num_std_regs as
+       architecture specific.
+       * gdbarch.h, gdbarch.c: Add multi-arch support for SP_REGNUM,
+       FP_REGNUM, PC_REGNUM, NUM_REGS, REGISTER_NAME.
+       * d10v-tdep.c, config/d10v/tm-d10v.h: Update.
+       
+1999-06-03  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * thread.c: eliminate the target_thread_vector (functionality
+       moved into the standard target vector).
+       * gdbthread.h: eliminate target_thread_vector.  Move all related
+       defines into remote.c, since they are no longer shared with thread.c.
+       * remote.c: eliminate the target_thread_vector.
+       (remote_find_new_threads): change return type to void, consistent
+       with the target vector table.  (cont_thread): rename continue_thread.
+       (record_currthread): remove dead code.  (remote_thread_alive):
+       clean up and simplify.  (threadref etc.): move definitions to here
+       from gdbthread.h.  
+
+1999-06-02  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * inftarg.c (child_create_inferior): Remove dead HPUX specific code
+       which tries to find csh.
+       * fork-child.c: Remove DEBUGGING predefine and conditionalized
+       printfs.
+       (fork_inferior): Remove dead HPUX specific code which assumes shell
+       is csh.
+
+       * hppa-tdep.c: Remove DEBUGGING and #if 0 debugging printfs.
+       * parse.c: Ditto.
+       * somread.c: Ditto.
+
+       * gdbarch.h: Forward decl of struct value.
+
+Thu Jun  3 10:12:38 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d10v-tdep.c (do_d10v_pop_frame): Rename d10v_pop_frame.  Make
+       static.
+       * d10v-tdep.c (d10v_pop_frame), config/d10v/tm-d10v.h: New
+       function.  Call generic_pop_current_frame.
+       * config/d10v/tm-d10v.h (POP_FRAME): Update.
+       * gdbarch.h, gdbarch.c (frame_num_args_unknown): New function.
+       * gdbarch.h, gdbarch.c: Add multi-arch support for POP_FRAME,
+       SKIP_PROLOGUE, INNER_THAN, DECR_PC_AFTER_BREAK,
+       FUNCTION_START_OFFSET, REMOTE_TRANSLATE_XFER_ADDRESS, FRAME_CHAIN,
+       FRAME_CHAIN_VALID, FRAME_SAVED_PC, FRAME_ARGS_ADDRESS,
+       FRAME_LOCALS_ADDRESS, FRAME_ARGS_SKIP,
+       FRAMELESS_FUNCTION_INVOCATION, REGISTER_BYTE, REGISTER_RAW_SIZE,
+       REGISTER_VIRTUAL_SIZE, REGISTER_VIRTUAL_TYPE, SAVED_PC_AFTER_CALL,
+       FRAME_NUM_ARGS, MAX_REGISTER_RAW_SIZE, MAX_REGISTER_VIRTUAL_SIZE,
+       REGISTER_SIZE.
+       * d10v-tdep.c, config/d10v/tm-d10v.h: Update.
+       * config/d10v/tm-d10v.h (DMEM_START, IMEM_START, STACK_START,
+       ARG1_REGNUM, ARGN_REGNUM, RET1_REGNUM): Move definitions from
+       here.
+       * d10v-tdep.c: To here.
+       * config/d10v/tm-d10v.h (struct type): Move declaration from here.
+       * gdbarch.h: To here.
+       * config/d10v/tm-d10v.h (struct frame_info, struct
+       frame_saved_regs, struct type): Delete declarations.
+       
+1999-06-02  Robert Hoehne  <robert.hoehne@gmx.net>
+
+       * go32-nat.c: go32_terminal_init, go32_terminal_inferior and
+       go32_terminal_ours are new functions to save/restore the inferior`s
+       stdin/stdout filemodes
+
+1999-06-02  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * MAINTAINERS: Add Mark Kettenis, Jeff Law, and Philippe De Muyter
+       as maintainers for Hurd, HP/UX, and COFF, respectively.
+
+1999-06-02  Mark Kettenis  <kettenis@gnu.org>
+
+       * gnu-nat.c (inf_continue): New function.
+       (struct inf): Use `unsigned int' instead of `int' for bit-fields.
+       Add new bit-field named `nomsg'.
+       (inf_validate_procinfo): Renamed from inf_validate_stopped, all
+       callers changed.  Also update the `nomsg' and `traced' fields of
+       INF.
+       (make_inf): Initialize INF->nomsg.
+       (inf_cleanup): Reset INF->nomsg.
+       (inf_detach): Call `inf_validate_procinfo'.  Call `inf_continue'
+       instead of `inf_signal' if the inferior does not have a message
+       port.
+       (gnu_resume): Likewise.
+       (gnu_create_inferior): Reset INF->nomsg in `attach_to_child'.
+       Call `inf_validate_procinfo' after returning from `fork_inferior'.
+       (gnu_attach): Update signal thread and tracing state.
+
+       * config/i386/tm-i386gnu.h: Include "i386/tm-i386.h" instead of
+       "i386/tm-i386v.h".
+       (STACK_END_ADDR): Remove.
+       (SIGCONTEXT_PC_OFFSET): New define.
+       Include "tm-sysv4.h".
+
+1999-06-02  J.T. Conklin  <jtc@redback.com>
+
+       * config/tm-vxworks.h: New file, header for definitions common to
+       all vxWorks targets.
+       * config/a29k/tm-vx29k.h, config/i960/tm-vx960.h,
+       config/m68k/tm-vx68.h, config/mips/tm-vxmips.h,
+       config/sparc/tm-vxsparc.h: Include tm-vxworks.h.
+
+Wed Jun  2 17:37:03 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * config/pa/tm-hppa.h (IMPORT_SHLIB): New unwind stub type.
+
+1999-06-02  Christopher Faylor <cgf@cygnus.com>
+
+       * configure.tgt: Alphabetically reorder some targets.
+
+1999-06-02  Keith Seitz  <keiths@cygnus.com>
+
+       * v850ice.c (v850ice_xfer_memory): Insert lost "break".
+
+1999-06-02  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * rs6000-tdep.c (variants): Fix description of 750 register set.
+       (Thanks to J. T. Conklin.)
+
+Wed Jun  2 16:10:08 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h, gdbarch.c: Add multi-arch support for
+       STORE_STRUCT_RETURN, STORE_RETURN_VALUE,
+       EXTRACT_STRUCT_VALUE_ADDRESS, USE_STRUCT_CONVENTION,
+       FRAME_INIT_SAVED_REGS and INIT_EXTRA_FRAME_INFO.
+       * d10v-tdep.c, config/d10v/tm-d10v.h: Update.
+
+       * config/d10v/tm-d10v.h (FRAME_INIT_SAVED_REGS): Replace
+       FRAME_FIND_SAVED_REGS.
+       (d10v_frame_init_saved_regs): Replace d10v_frame_find_saved_regs.
+       * d10v-tdep.c (d10v_pop_frame, d10v_frame_chain,
+       d10v_frame_init_saved_regs): Update.
+       * gdbarch.h: Disallow FRAME_FIND_SAVED_REGS when multi-arch.
+
+       * gdbarch.h, gdbarch.c: Add multi-arch support for
+       D10V_MAKE_DADDR, D10V_MAKE_IADDR, D10V_DADDR_P, D10V_IADDR_P,
+       D10V_CONVERT_DADDR_TO_RAW and D10V_CONVERT_IADDR_TO_RAW.
+       * d10v-tdep.c, config/d10v/tm-d10v.h: Update.
+
+       * config/d10v/tm-d10v.h (EXTRA_FRAME_INFO): Delete.
+       * d10v-tdep.c (struct frame_extra_info): Define.
+       (d10v_init_extra_frame_info, d10v_pop_frame, d10v_frame_chain,
+       d10v_frame_find_saved_regs): Update.
+       * gdbarch.h: Disallow EXTRA_FRAME_INFO when multi-arch.
+
+Tue Jun  1 13:36:31 1999  Philippe De Muyter  <phdm@macqel.be>
+
+       * config/m68k/tm-delta68.h (FRAME_NUM_ARGS): Macro prototype fixed.
+       * config/m68k/tm-news.h, config/ns32k/tm-merlin.h: Ditto.
+       * config/ns32k/tm-umax.h (FRAME_NUM_ARGS): Old macro definition
+       removed; new macro prototype fixed.
+
+Wed Jun  2 11:18:37 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h, gdbarch.c: Add multi-arch support for
+       EXTRACT_RETURN_VALUE, PUSH_ARGUMENTS, PUSH_DUMMY_FRAME,
+       PUSH_RETURN_ADDRESS, POP_FRAME, FRAME_FIND_SAVED_REGS.
+       * d10v-tdep.c, config/d10v/tm-d10v.h: Update.
+
+       * gdbarch.h, gdbarch.c: Add multi-arch support for
+       REGISTER_CONVERTIBLE, REGISTER_CONVERT_TO_VIRTUAL,
+       REGISTER_CONVERT_TO_RAW.
+       * config/d10v/tm-d10v.h, d10v-tdep.c (d10v_gdbarch_init): Update.
+
+       * defs.h (REGISTER_NAME): Move compatibility definition from here.
+       * gdbarch.h: To here.
+
+       * frame.h, blockframe.c (generic_fix_call_dummy): New
+       stub function.
+       * gdbarch.h, gdbarch.c: Add multi-arch support for FIX_CALL_DUMMY.
+       * config/d10v/tm-d10v.h, d10v-tdep.c (d10v_gdbarch_init): Update.
+
+Tue Jun  1 20:06:38 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d10v-tdep.c (d10v_gdbarch_init): Set get_saved_register.
+       * config/d10v/tm-d10v.h: Update.
+       
+Tue Jun  1 19:50:05 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h, gdbarch.c: Add multi-arch support for TARGET_READ_PC,
+       TARGET_WRITE_PC, TARGET_READ_FP, TARGET_WRITE_FP, TARGET_READ_SP
+       and TARGET_WRITE_SP.
+       * config/d10v/tm-d10v.h, d10v-tdep.c (d10v_gdbarch_init): Update.
+
+Tue Jun  1 19:19:02 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.c (default_gdbarch): Set field GET_SAVED_REGISTER to
+       generic_get_saved_register.
+       * gdbarch.c: Change update dispatch functions so that they check
+       for a NULL function pointer.
+
+Tue Jun  1 19:19:02 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h, gdbarch.c: Add multi-arch support for TARGET_INT_BIT,
+       TARGET_CHAR_BIT, TARGET_SHORT_BIT, TARGET_FLOAT_BIT,
+       TARGET_DOUBLE_BIT and TARGET_LONG_DOUBLE_BIT.
+       * config/d10v/tm-d10v.h, d10v-tdep.c (d10v_gdbarch_init): Update.
+       
+Tue Jun  1 18:47:54 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * parse.c (build_parse): New function.  Initialize
+       msym_text_symbol_type, msym_data_symbol_type and
+       msym_unknown_symbol_type.
+       (_initialize_parse): Call build_parse.
+       (_initialize_parse): Register variables msym_text_symbol_type,
+       msym_data_symbol_type as msym_unknown_symbol_type as
+       per-architecture.
+
+Tue Jun  1 11:30:09 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d10v-tdep.c (_initialize_d10v_tdep): Register d10v as an
+       architecture.
+       (d10v_gdbarch_init): New function.
+       * confg/d10v/tm-d10v.h (GDB_MULTI_ARCH): Define.
+
+Tue Jun  1 10:45:24 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * config/d10v/tm-d10v.h (REGISTER_CONVERTIBLE,
+       REGISTER_CONVERT_TO_RAW, REGISTER_CONVERT_TO_VIRTUAL): Convert
+       macros into functions.
+       * config/d10v/tm-d10v.h, d10v-tdep.c (d10v_register_convertable,
+       d10v_register_convert_to_virtual, d10v_register_convert_to_raw):
+       The new functions.
+
+1999-05-31  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * stack.c (print_args_stub): Add missing stream parameter.
+
+Mon May 31 15:50:08 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       Fri May 28 16:51:00 1999  Martin Dorey  <martin.dorey@madge.com>:
+        * valops.c, value.h (default_push_arguments): Fix order of
+       parameters to match PUSH_ARGUMENTS arguments.
+
+Thu May 27 11:42:55 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h (EXTRACT_STRUCT_VALUE_ADDRESS): Return 0.
+
+       * valops.c (value_assign): Delete redundant test of
+       REGISTER_CONVERTIBLE.
+
+Thu May 27 11:33:57 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * config/w65/tm-w65.h, config/tic80/tm-tic80.h, config/sh/tm-sh.h,
+       config/i386/tm-i386m3.h, config/i386/tm-go32.h,
+       config/i386/tm-cygwin.h, config/h8500/tm-h8500.h,
+       config/d30v/tm-d30v.h, config/d10v/tm-d10v.h: Delete definition of
+       macro NAMES_HAVE_UNDERSCORE.
+
+Thu May 27 09:31:06 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h (EXTRACT_STRUCT_VALUE_ADDRESS,
+       EXTRACT_STRUCT_VALUE_ADDRESS_P): Provide default definitions.
+       * values.c (value_being_returned): Use
+       EXTRACT_STRUCT_VALUE_ADDRESS when EXTRACT_STRUCT_VALUE_ADDRESS_P.
+
+Wed May 26 13:51:25 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * utils.c (tui_file_new, tui_file_delete, tui_fileopen): New
+       functions.
+       (tui_file_isatty): Rename gdb_file_isatty.
+       (gdb_file_init_astring): Use tui_file_new to create stream.
+       (gdb_file_get_strbuf, gdb_file_adjust_strbuf): Call gdb_file_data
+       to access the tui_stream.
+       (tui_file_flush): Rename gdb_flush. Call gdb_file_data to access
+       the tui_stream. Pass FILE and not STREAM down.
+       
+       * utils.c (struct stdio_file, stdio_file_flush, stdio_file_fputs,
+       stdio_file_isatty, stdio_file_delete, stdio_file_new,
+       stdio_fileopen): Define type and functions.  Implement a simple
+       STDIO based gdb_file.
+       (struct gdb_file, gdb_file_new, gdb_file_delete, null_file_isatty,
+       null_file_flush, null_file_fputs, null_file_delete, gdb_file_data,
+       set_gdb_file_flush, set_gdb_file_isatty, set_gdb_file_fputs,
+       set_gdb_file_data, fputs_unfiltered, gdb_flush, gdb_file_isatty):
+       Define type and functions.  Implement virtual functions for
+       gdb_file.
+
+       * defs.h (struct gdb_file): Declare.
+       (GDB_FILE): Change type to struct gdb_file. Deprecate.
+       (gdb_file_flush_ftype, gdb_file_fputs_ftype,
+       gdb_file_isatty_ftype, gdb_file_delete_ftype): Add function type
+       declarations.
+       
+       * defs.h (set_gdb_file_flush, set_gdb_file_fputs,
+       set_gdb_file_isatty, set_gdb_file_data, gdb_file_new,
+       gdb_file_delete, gdb_file_data, stdio_fileopen, tui_fileopen): Add
+       function declarations.
+       (gdb_fopen): Re-implement. Call stdio_file_new.
+       (gdb_fclose): Re-implement. Call gdb_file_delete.
+       
+       * main.c (tui_file_fputs): Rename fputs_unfiltered.  Use
+       gdb_file_data to gain access to the tui_stream data.  Use FILE
+       instead of STREAM where applicable.
+       (main): Create gdb_stdout and gdb_stderr using tui_fileopen.
+       
+       * defs.h (struct tui_stream): Add field ts_magic.
+       * utils.c (tui_file_magic): Local variable.
+       (tui_file_new): Set field ts_magic.
+       (tui_file_delete, tui_file_isatty, gdb_file_init_astring,
+       gdb_file_get_strbuf, gdb_file_adjust_strbuf, tui_file_flush):
+       Verify ts_magic.
+
+1999-05-25  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * breakpoint.c (insert_breakpoints, remove_breakpoint,
+       breakpoint_1): Add a 'default' case, which prints a warning
+       message, to remove EGCS warnings.
+
+1999-05-25  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * utils.c (gdb_file_adjust_strbuf): Take into account the
+       possibility that the buffer has not been allocated yet.
+
+Tue May 25 16:05:11 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h (REGISTER_CONVERTIBLE, REGISTER_CONVERT_TO_VIRTUAL,
+       REGISTER_CONVERT_TO_RAW): Provide default definition.
+
+       * valops.c (value_assign), infcmd.c (do_registers_info), findvar.c
+       (value_from_register, value_of_register): Remove #ifdef
+       REGISTER_CONVERTIBLE.  Assume REGISTER_CONVERTIBLE etc defined.
+
+1999-05-25  Keith Seitz  <keiths@cygnus.com>
+
+       * config/mcore/tm-mcore.h (FRAME_NUM_ARGS): Re-write definition of
+       FRAME_NUM_ARGS so that it returns NUM_ARGS as a result instead of
+       setting a variable as a side effect.
+
+Tue May 25 16:18:25 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * remote-d10v.c (d10v_eva_prepare_to_trace,
+       d10v_eva_get_trace_data), remote-sim.c (_initialize_remote_sim):
+       Add declaraton.  Make static.
+
+       * remote-d10v.c (_initialize_remote_d10v), d10v-tdep.c
+       (_initialize_d10v_tdep): Add declaration.
+       * config/d10v/tm-d10v.h (d10v_frame_chain): Add declaration.
+
+Tue May 25 15:20:58 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * main.c (init_proc, proc_remove_foreign): Delete function.
+       * inftarg.c (child_mourn_inferior): Update. Delete call to
+       proc_remove_foreign().
+       * top.c (gdb_init): Update. Delete call to init_proc().
+
+       * utils.c (pollquit, fmthex, hexlate): Delete function.
+
+Tue May 25 13:01:43 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * main.c (gdb_init): Move declaration from here.
+       * top.h: To here.
+       
+       * defs.h (init_page_info): Add declaration.
+
+       * top.c (initialize_utils): Move declaration from here.
+       * defs.h: To here.
+
+       * infcmd.c (target_map_name_to_register): Move declaration from
+       here.
+       * parser-defs.h: To here.
+
+       * c-typeprint.c (cp_type_print_method_args), target.c
+       (nosupport_runtime, normal_target_post_startup_inferior): Add
+       declaration.  Make static.
+
+Tue May 25 13:53:23 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * main.c: Include "event-loop.h".
+       * Makefile.in (main.o): Add dependency.
+
+       * top.h (setup_event_loop, async_init_signals), top.c
+       (set_async_editing_command, set_async_annotation_level,
+       set_async_prompt), event-loop.c (display_gdb_prompt): Move
+       declarations from here.
+       * event-loop.h: To here.
+       
+       * event-loop.h (delete_async_signal_handler): Add function
+       declaration.
+
+       * event-top.c (change_annotation_level, command_handler): Add
+       declaration.  Make static.
+
+Tue May 25 12:44:58 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * tracepoint.c (free_actions_list, add_register): Add declaration.
+       Make static.
+       (free_actions_list_cleanup_wrapper): New function.  Wraps
+       free_actions_list for make_cleanup.
+       (trace_start_command): Pass free_actions_list_cleanup_wrapper
+       instead of free_actions_list to make_cleanup.
+       (_initialize_tracepoint): Add extern declaration.
+
+Tue May 25 12:23:39 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * jv-typeprint.c (java_type_print_base, jv-valprint.c
+       (java_print_value_fields): Add static declaration.
+
+       * jv-lang.c (java_lookup_type, get_java_utf8_name,
+       java_lookup_type): Add static declaration.
+       (get_java_class_symtab, java_class_is_primitive,
+       java_value_string): Add declaration. Make static.
+       (java_rerun_cleanup): Add extern declaration for this stub
+       function.
+       
+Tue May 25 12:06:29 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h: When multi-arch, check that REGISTER_NAMES was not
+       defined.
+
+Mon May 24 16:16:29 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * inflow.c (_initialize_inflow), annotate.c
+       (_initialize_annotate), os9kread.c (_initialize_os9kread),
+       serial.c (_initialize_serial), nlmread.c (_initialize_nlmread),
+       f-valprint.c (_initialize_f_valprint), cp-valprint.c
+       (_initialize_cp_valprint), typeprint.c (_initialize_typeprint),
+       complaints.c (_initialize_complaints), scm-lang.c
+       (_initialize_scheme_language), m2-lang.c
+       (_initialize_m2_language), dbxread.c (_initialize_dbxread),
+       f-lang.c (_initialize_f_language), ch-lang.c
+       (_initialize_chill_language), c-lang.c (_initialize_c_language),
+       corefile.c (_initialize_core), stabsread.c
+       (_initialize_stabsread), mipsread.c (_initialize_mipsread),
+       elfread.c (_initialize_elfread), coffread.c
+       (_initialize_coffread), maint.c (_initialize_maint_cmds),
+       demangle.c (_initialize_demangler), maint.c
+       (_initialize_maint_cmds), language.c (_initialize_language): Add
+       external declaration.
+
+Mon May 24 10:04:56 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * config/z8k/tm-z8k.h, config/w65/tm-w65.h, config/v850/tm-v850.h,
+       config/tic80/tm-tic80.h, config/tahoe/tm-tahoe.h,
+       config/rs6000/tm-rs6000.h, config/sparc/tm-sparc.h,
+       config/sh/tm-sh.h, config/pyr/tm-pyr.h, config/pa/tm-hppa.h,
+       config/ns32k/tm-merlin.h, config/mn10300/tm-mn10300.h,
+       config/mn10200/tm-mn10200.h, config/mips/tm-mips.h,
+       config/m88k/tm-m88k.h, config/m68k/tm-news.h,
+       config/m68k/tm-delta68.h, config/m68k/tm-isi.h,
+       config/m68k/tm-m68k.h, config/m32r/tm-m32r.h,
+       config/i960/tm-i960.h, config/i386/tm-i386v.h,
+       config/i386/tm-i386.h, config/h8500/tm-h8500.h,
+       config/h8300/tm-h8300.h, config/fr30/tm-fr30.h,
+       config/d30v/tm-d30v.h, config/d10v/tm-d10v.h,
+       config/convex/tm-convex.h, config/arc/tm-arc.h,
+       config/arm/tm-arm.h, config/alpha/tm-alpha.h,
+       config/a29k/tm-a29k.h: Re-write definition of FRAME_NUM_ARGS so
+       that it returns NUM_ARGS as a result instead of setting a variable
+       as a side effect.
+
+       * ns32k-tdep.c (merlin_frame_num_args), tahoe-tdep.c
+       (tahoe_frame_num_args), vax-tdep.c (vax_frame_num_args),
+       m68k-tdep.c (news_frame_num_args, delta68_frame_num_args,
+       isi_frame_num_args), convex-tdep.c (convex_frame_num_args): New
+       functions.
+
+       * stack.c (print_args_stub): Update use of FRAME_NUM_ARGS.
+
+Mon May 24 11:57:04 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote.c (remote_xfer_memory): Re-write with assumption that
+       REMOTE_TRANSLATE_XFER_ADDRESS is defined.  Pass targ_addr and
+       targ_len by reference.
+       (REMOTE_TRANSLATE_XFER_ADDRESS): Provide default definition.
+       
+       * remote-d10v.c (remote_d10v_translate_xfer_address): Update.
+       * config/d10v/tm-d10v.h (REMOTE_TRANSLATE_XFER_ADDRESS): Update.
+
+Mon May 24 12:10:58 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * value.h (default_push_arguments): Add function declaration.
+
+       * alpha-tdep.c (alpha_about_to_return), gdbarch.c (verify_gdbarch,
+       arch_ok, set_arch), command.c (find_cmd), infrun.c
+       (follow_inferior_fork, follow_fork, follow_vfork,
+       set_schedlock_func, is_internal_shlib_eventpoint,
+       stopped_for_internal_shlib_event, stopped_for_shlib_catchpoint,
+       xdb_handle_command), infcmd.c (run_no_args_command, go_command),
+       symfile.c (add_filename_language, set_ext_lang_command,
+       info_ext_lang_command, init_filename_language_table), symtab.c
+       (overload_list_add_symbol), defs.h (default_get_saved_register),
+       ax-general.c (grow_expr, append_const, read_const, generic_ext):
+       Ditto.
+
+       * infrun.c (currently_stepping): Ditto.  Make static.
+
+       * valops.c (hand_function_call): Explictly type static variable
+       ``checked''.
+
+Mon May 24 08:36:18 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d10v-tdep.c (d10v_breakpoint_from_pc, d10v_register_name,
+       d10v_register_byte, d10v_register_raw_size,
+       d10v_register_virtual_size, d10v_register_virtual_type,
+       d10v_make_daddr, d10v_make_iaddr, d10v_daddr_p, d10v_iaddr_p,
+       d10v_convert_iaddr_to_raw, d10v_convert_daddr_to_raw,
+       d10v_store_struct_return, d10v_store_return_value,
+       d10v_extract_struct_value_address, d10v_frame_saved_pc,
+       d10v_frame_args_address, d10v_frame_locals_address,
+       d10v_saved_pc_after_call): New functions.
+       
+       * config/d10v/tm-d10v.h (REGISTER_BYTE, REGISTER_RAW_SIZE,
+       REGISTER_VIRTUAL_SIZE, REGISTER_VIRTUAL_TYPE, STORE_STRUCT_RETURN,
+       D10V_MAKE_DADDR, D10V_MAKE_IADDR, D10V_DADDR_P, D10V_IADDR_P,
+       D10V_CONVERT_DADDR_TO_RAW, D10V_CONVERT_IADDR_TO_RAW,
+       STORE_STRUCT_RETURN, STORE_RETURN_VALUE,
+       EXTRACT_STRUCT_VALUE_ADDRESS, SAVED_PC_AFTER_CALL, FRAME_SAVED_PC,
+       FRAME_ARGS_ADDRESS): Re-define using new functions.
+
+       * config/d10v/tm-d10v.h (BREAKPOINT_FROM_PC): Replace BREAKPOINT.
+       (REGISTER_NAME): Replace REGISTER_NAMES.
+
+       * utils.c (core_addr_lessthan, core_addr_greaterthan): New
+       functions.
+       * defs.h (core_addr_lessthan, core_addr_greaterthan): Declare.
+       
+Sat May 22 16:44:06 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * utils.c (n_spaces): Handle case where first call has N equal to
+       zero.
+       (print_spaces): Use n_spaces.
+
+Fri May 21 11:23:54 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * valops.c (value_push): Remove conditional definition based on
+       absense of macro PUSH_ARGUMENTS.  Pass SP and STRUCT_ADDR by
+       reference.
+       (default_push_arguments): New function.
+
+       * config/v850/tm-v850.h, config/tic80/tm-tic80.h,
+       config/sparc/tm-sparc.h, config/sparc/tm-sp64.h,
+       config/sh/tm-sh.h, config/rs6000/tm-rs6000.h, config/pa/tm-hppa.h,
+       config/mn10300/tm-mn10300.h, config/mn10200/tm-mn10200.h,
+       config/mips/tm-mips.h, config/m32r/tm-m32r.h,
+       config/h8300/tm-h8300.h, config/fr30/tm-fr30.h,
+       config/d30v/tm-d30v.h, config/d10v/tm-d10v.h, config/arm/tm-arm.h,
+       config/alpha/tm-alpha.h: Update definition of PUSH_ARGUMENTS.
+       Return updated SP.
+
+       * rs6000-tdep.c (rs6000_push_arguments): Rename push_arguments.
+
+Thu May 20 12:18:28 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * blockframe.c (get_prev_frame): Remove #ifdef around test for
+       FRAMELESS_FUNCTION_INVOCATION.
+       (get_prev_frame): Change FRAMELESS_FUNCTION_INVOCATION call to a
+       function invocation.
+       * i386-tdep.c (i386_frame_num_args), stack.c (frame_info): Ditto.
+       * config/z8k/tm-z8k.h, config/w65/tm-w65.h, config/vax/tm-vax.h,
+       config/sparc/tm-sparc.h, config/sh/tm-sh.h,
+       config/rs6000/tm-rs6000.h, config/pa/tm-hppa.h,
+       config/mips/tm-mips.h, config/m88k/tm-m88k.h,
+       config/m68k/tm-m68k.h, config/i960/tm-i960.h,
+       config/i386/tm-sun386.h, config/i386/tm-i386v.h,
+       config/i386/tm-i386.h, config/h8500/tm-h8500.h,
+       config/h8300/tm-h8300.h, config/fr30/tm-fr30.h,
+       config/d30v/tm-d30v.h, config/d10v/tm-d10v.h,
+       config/convex/tm-convex.h, config/arm/tm-arm.h,
+       config/arc/tm-arc.h, config/alpha/tm-alpha.h,
+       config/a29k/tm-a29k.h: Update FRAMELESS_FUNCTION_INVOCATION.
+       * fr30-tdep.c (fr30_frameless_function_invocation), convex-tdep.c
+       (convex_frameless_function_invocation), arm-tdep.c
+       (arm_frameless_function_invocation): New functions.
+
+1999-05-20  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * top.c: Change dates in comments to ISO format.
+
+       * event-top.c: Ditto.
+       * event-loop.c: Ditto.
+       * main.c: Ditto.
+       
+1999-05-19  Keith Seitz  <keiths@cygnus.com>
+
+       * config/mcore/tm-mcore.h (BELIEVE_PCC_PROMOTION): Define. We
+       really do want to believe what gcc tells us about types...
+
+1999-05-19  Keith Seitz  <keiths@cygnus.com>
+
+       * config/mcore/tm-mcore.h (FRAME_ARGS_ADDRESS): Define to a function.
+        (FRAME_LOCALS_ADDRESS): Ditto.
+       * mcore-tdep.c (mcore_frame_args_addcress): New function.
+       (mcore_frame_locals_address): New function.
+
+       * monitor.c (monitor_open): Only assume we have eight
+       breakpoints if the monitor implementation does not tell
+       us how many there really are. Alloc memory for these
+       dynamically.
+       (monitor_close): Free memory associated with breakpoint
+       storage.
+       (monitor_insert_breakpoint): Don't rely on a hardcoded
+       number of breakpoints.
+       (monitor_remove_breakpoint): Ditto.
+       (NUM_MONITOR_BREAKPOINTS): Removed and replaced with monitor_ops
+       specification.
+       * monitor.h (struct monitor_ops): Add new member so that the
+       individual monitor implementations can tell us how many
+       breakpoints the monitor supports.
+
+       * mcore-rom.c (init_picobug_cmds): Add number of breakpoints supported
+       by picobug monitor.
+
+1999-05-18  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       From Philippe De Muyter  <phdm@macqel.be>:
+       * event-loop.h: Include sys/wait.h only if HAVE_SYS_WAIT_H.
+       
+1999-05-17  Keith Seitz  <keiths@cygnus.com>
+
+       * configure.tgt: Add MCore target.
+       * Makefile.in: Add mcore-tdep.c and mcore-rom.c
+       * config/mcore/tm-mcore.h: New file.
+       * config/mcore/mcore.mt: New file.
+       * mcore-rom.c: New file.
+       * mcore-tdep.c: New file.
+
+1999-05-17  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * top.c (print_command_line): Added the missing stream argument.
+       * gdbcmd.h: Added argument to prototype.
+       * command.c: Fixed call to include extra argument.
+       * breakpoint.c: Same.
+
+1999-05-14  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Targets are #defining PREPARE_TO_PROCEED with inconsistent numbers
+       of arguments.  Since the Mach 3 target needs an argument, we'll
+       make things consistent by adding an argument everywhere.
+       * infrun.c (proceed): Pass an argument to PREPARE_TO_PROCEED.
+       * config/pa/nm-hppah.h (PREPARE_TO_PROCEED): Add ignored argument
+       to definition.
+
+1999-05-11  Stan Shebs  <shebs@andros.cygnus.com>
+
+       Fri Apr 23 13:27:34 PDT 1999  Toshiyasu Morita  (tm@netcom.com)
+       * sh-stub.c: Mostly localize processor dependencies.
+
+1999-05-10  Martin Hunt  <hunt@cygnus.com>
+
+       * debugify.c, debugify.h: Removed because they are no
+       longer used.
+
+1999-05-08  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * infrun.c (_initialize_infrun): Handle TARGET_SIGNAL_LWP,
+       TARGET_SIGNAL_WAITING, and TARGET_SIGNAL_CANCEL like SIGALRM or
+       SIGIO --- pass them through to the inferior silently. 
+       * target.h (enum target_signals): Add TARGET_SIGNAL_CANCEL, for
+       Solaris's SIGCANCEL.
+       * target.c (target_signal_from_host, target_signal_to_host): Add
+       mapping between SIGCANCEL and TARGET_SIGNAL_CANCEL.
+       (signals): Add entry for SIGCANCEL.
+
+1999-05-07  Stan Shebs  <shebs@andros.cygnus.com>
+
+       After years of talking about it, finally break up the
+       wait_for_inferior loop.
+       * infrun.c (struct execution_control_state): New struct,
+       holds what used to be local vars governing wfi behavior.
+       (init_execution_control_state): New function, was code in
+       wfi that set up execution control state.
+       (handle_inferior_event): New function, was body of main
+       wfi loop.  Rewrite all local var references to go through
+       the ecs structure passed into this function.
+       (wait_for_inferior): Rewrite to set up and use execution control
+       state, and to call the new functions.
+       (currently_stepping): New function, was the macro
+       CURRENTLY_STEPPING.
+       (enum infwait_states): Rename from wfi_states.
+       (infwait_normal_state, etc): Similarly.
+
+Thu May  6 15:25:32 1999  Philippe De Muyter  <phdm@macqel.be>
+
+       * coffread.c (coff_symtab_read): Call `record_line' with the line
+       number of the ".bf" symbol only for one-line functions.
+
+1999-05-06  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * Makefile.in: thread.o depends on target.h.
+
+1999-05-06  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * event-top.c (change_line_handler): Use POLLIN instead of
+       POLLRDNORM, for compatibility with Linux.
+       (setup_event_loop): Ditto.
+
+1999-05-06  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * mips-tdep.c (heuristic_proc_start): Rewrite cryptic error
+       message about hitting the "heuristic fence post" with something
+       that actually gives the user a fighting chance of figuring out
+       why GDB is unhappy.
+       
+1999-05-06  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * top.c: Include event-loop.h.
+       (init_main): Add async version of 'set prompt' command.
+       If in async mode define the editing and annotate set 
+       commands in a different way.
+       Initialize new variable asyn_command_editing_p to 1.
+       Initialize the gdb prompt for async mode.
+       (quit_cover): Make not static, for use by the event loop.
+       (gdb_init): Call async_init_signals for the asynchronous case.
+       (source_line_number, source_file_name, source_error,
+       source_pre_error, history_expansion_p): Make non-static, so
+       event-top.c can use them.
+       (command_loop_marker): Make non-static, for use in event-top.c.
+       Include event-loop.h.
+       
+       * top.h: Add prototype for async_init_signals.
+       (SET_TOP_LEVEL): Move here from main.c.
+       Add setup_event_loop to exported functions.
+
+       * defs.h: Add async_hook to exported variables.
+
+       * main.c (SET_TOP_LEVEL): Move to top.h, so that it is visible in 
+       event-loop.c.  Add new global variable async to determine whether 
+       we are running in async mode or not.
+       (main): Add support for --async switch. Use async_hook to call
+       setup_event_loop, when running in async mode.
+
+       * event-top.c: New file. Gdb input line handler and command line
+       handler for the event loop. Initialization of signal handlers.
+       All the handled signals have handlers called handle_<signalname>.
+       Set up all the appropriate tokens for asynchronous signal 
+       handling.
+               
+       * event-loop.h: New file. Data structures and definitions for the
+       event loop.
+
+       * event-loop.c: New file. Functions for the event loop 
+       implementation.
+
+       * config.in: Regenerate with autoheader.
+
+       * configure.in (AC_CHECK_FUNCS): Add poll to list of functions 
+       to be checked for. 
+
+       * configure: Regenerate.
+                                                        
+       * Makefile.in (SFILES): Add new source files.
+       (eventloop_h): Define.
+       (COMMON_OBS): Add new object files.
+       (event-loop.o): Add rule for target object.
+       (event-top.o): Ditto.
+
+1999-05-05  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * infrun.c (wait_for_inferior): Transform breaks and continues
+       into gotos, move the target_wait to the very top of the loop.
+
+1999-05-05  Jonathan Larmour  <jlarmour@cygnus.co.uk>
+
+       * configure.in: Ensure that GDB links with libuser32.a under
+       cygwin because libreadline requires it.
+       * Makefile.in (WIN32LIBS): Substitute in result from configure
+       * configure: regenerate
+
+1999-05-04  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Fix from John Rigby.  Richard Henderson says it seems okay.
+       * alpha-tdep.c (PROC_DUMMY_FRAME): As long as we're abusing fields
+       of (proc)->pdr, we ought to at least abuse one large enough to
+       hold the value we're trying to store in it.  iopt is only 32 bits
+       wide; cbLineOffset is a bfd_vma.
+
+1999-05-04  DJ Delorie  <dj@cygnus.com>
+
+       DJGPP changes from Robert Hoehne  <robert.hoehne@gmx.net>
+
+       * ser-go32.c: correct includes
+       * source.c (openp): use ROOTED_P instead of SLASH_P
+       * go32-nat.c: enhance exception and NPX handling
+       (go32_kill_inferior): fix small bug killing inferior
+       * configure.in: don't look for termcap with djgpp
+       * configure: rebuild
+
+1999-05-04  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * main.c (main): Comment out unused and undocumented command line
+       option '-'.
+
+1999-04-30  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Cleanup from Philippe De Muyter:
+       * configure.in (BFD_NEED_DECLARATION): Check also for strstr.
+       * acconfig.h (NEED_DECLARATION_MALLOC, NEED_DECLARATION_REALLOC,
+       NEED_DECLARATION_FREE, NEED_DECLARATION_STRERROR): Define slots
+       removed; they are now generated automatically.
+       * gdb_string.h (strstr): Provide function prototype if
+       NEED_DECLARATION_STRSTR.
+       * configure, config.in: Regenerated.
+
+Fri Apr 30 11:16:09 1999  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * target.h (to_find_new_threads): new target ops vector.
+       (target_find_new_threads): define.
+       * target.c (update_current_target): inherit new target ops vector.
+       * remote.c: Setup to_find_new_threads vector.
+       * sol-thread.c: ditto.
+       * thread.c (target_find_new_threads): rename: local_find_new_threads.
+       (info_threads_command): call target_find_new_threads by new method,
+       as a target ops vector, rather than previous macro definition method.
+       * infcmd.c (go_command): define only if in xdb mode.
+       * procfs.c: fix typo in comment.
+       
+Fri Apr 30 01:02:05 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * hppah-nat.c: Fix various coding convention violations introduced
+       by HP.
+       (child_acknowledge_created_inferior): Do nothing if PT_SET_EVENT_MASK
+       is not defined.
+
+1999-04-28  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * TODO: Add some items inspired by review of the manual.
+
+Tue Apr 27 17:38:19 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * config/z8k/tm-z8k.h, config/v850/tm-v850.h,
+       config/tic80/tm-tic80.h, config/sparc/tm-sparc.h,
+       config/sh/tm-sh.h, config/pyr/tm-pyr.h, config/pa/tm-hppa.h,
+       config/mn10300/tm-mn10300.h, config/mn10200/tm-mn10200.h,
+       config/mips/tm-mips.h, config/m88k/tm-m88k.h,
+       config/m68k/tm-m68k.h, config/m32r/tm-m32r.h,
+       config/i960/tm-i960.h, config/i386/tm-i386.h,
+       config/h8500/tm-h8500.h, config/h8300/tm-h8300.h,
+       config/fr30/tm-fr30.h, config/d30v/tm-d30v.h,
+       config/d10v/tm-d10v.h, config/alpha/tm-alpha.h,
+       config/arm/tm-arm.h, config/a29k/tm-a29k.h, config/arc/tm-arc.h:
+       Change SKIP_PROLOGUE and SKIP_PROLOGUE_FRAMELESS_P macros so that
+       they return the new address.
+
+       * sparc-tdep.c (sparc_skip_prologue), hppa-tdep.c
+       (hppa_skip_prologue), m88k-tdep.c
+       (m88k_skip_prologue), i960-tdep.c
+       (i960_skip_prologue), arc-tdep.c
+       (arc_skip_prologue), a29k-tdep.c (a29k_skip_prologue): Rename
+       skip_prologue function.
+
+       * config/m68k/tm-isi.h: Convert macro SKIP_PROLOGUE into a new
+       function.
+       * m68k-tdep.c (isi_skip_prologue): That new function.
+       * vax-tdep.c (vax_skip_prologue), config/vax/tm-vax.h: Ditto.
+       * tahoe-tdep.c (tahoe_skip_prologue), config/tahoe/tm-tahoe.h: Ditto.
+       * rs6000-tdep.c (rs6000_skip_prologue), config/rs6000/tm-rs6000.h:
+       Ditto.
+       * ns32k-tdep.c (umax_skip_prologue), config/ns32k/tm-umax.h: Ditto.
+       * config/ns32k/tm-merlin.h, ns32k-tdep.c (merlin_skip_prologue):
+       Ditto.
+       * config/m68k/tm-altos.h, m68k-tdep.c (altos_skip_prologue): Ditto.
+       * config/convex/tm-convex.h, convex-tdep.c (convex_skip_prologue):
+       Ditto.
+
+       * symtab.c (in_prologue, find_function_start_sal, decode_line_1),
+       infrun.c (wait_for_inferior), blockframe.c
+       (frameless_look_for_prologue): Update.
+       * config/fr30/tm-fr30.h (FRAMELESS_FUNCTION_INVOCATION): Update.
+
+1999-04-27  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * TODO: Remove item about DEBUG_EXPRESSIONS, no longer meaningful.
+
+       * infrun.c (enum wfi_state): New enum.
+       (wait_for_inferior): Merge all but one of the target_wait calls
+       into a single call, add a wfi_state variable to encode which of
+       the calls is being made.
+
+1999-04-26  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Fix from Dave Holcomb.
+       * hpux-thread.c (init_hpux_thread_ops): Use the right function
+       name when initializing hpux_thread_ops.to_thread_alive.
+
+       * coffread.c (coff_symfile_read): If we have a `.stab' section,
+       but no `.stabstr' section, then print an error message; don't
+       crash.
+
+1999-04-26  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       1999-04-25  Mark Kettenis  <kettenis@gnu.org>
+
+       * gnu-nat.c (gnu_attach): Call target_terminal_init before calling
+       inf_set_traced, since that function calls code that might try to
+       restore the terminal settings.
+
+Mon Apr 26 08:55:46 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h, gdbarch.c: More format cleanups.
+
+Sun Apr 25 18:54:51 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h (CALL_DUMMY_STACK_ADJUST_P): Replace
+       SIZEOF_CALL_DUMMY_STACK_ADJUST_P.
+       (CALL_DUMMY_STACK_ADJUST): Replace
+       SIZEOF_CALL_DUMMY_STACK_ADJUST_P.
+       * gdbarch.c (gdbarch_call_dummy_stack_adjust,
+       set_gdbarch_call_dummy_stack_adjust): Define.
+
+Fri Apr 23 15:00:25 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.c (arch_ok): New function. Fix logic test for a valid
+       architecture.
+       (set_arch): Use.
+
+1999-04-22  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+        * README: Note that readline is not installed as a part of
+        make install.
+
+Thu Apr 22 21:02:28 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h, gdbarch.c (GET_SAVED_REGISTER, get_saved_register):
+       Add.
+       (struct gdbarch, verify_gdbarch, gdbarch_alloc, gdbarch_dump,
+       default_gdbarch): Update.
+
+       * value.h (get_saved_register): Cleanup prototype.
+       * findvar.c (default_get_saved_register): Rename function
+       get_saved_register.
+       (GET_SAVED_REGISTER): Define as default_get_saved_register when
+       undefined.
+       (get_saved_register): Always declare. Call GET_SAVED_REGISTER.
+
+       * sparc-tdep.c (sparc_get_saved_register): Rename function
+       get_saved_register.
+       * config/sparc/tm-sparc.h (GET_SAVED_REGISTER): Update.
+       * a29k-tdep.c (a29k_get_saved_register): Rename function
+       get_saved_register.
+       * config/a29k/tm-a29k.h (GET_SAVED_REGISTER): Update.
+
+       * config/d10v/tm-d10v.h, config/powerpc/tm-ppc-eabi.h,
+       config/h8300/tm-h8300.h, config/m32r/tm-m32r.h,
+       config/mn10200/tm-mn10200.h, config/mn10300/tm-mn10300.h,
+       config/sh/tm-sh.h, config/tic80/tm-tic80.h, config/v850/tm-v850.h:
+       Update macro GET_SAVED_REGISTER so that it calls
+       generic_get_saved_register.
+       * v850-tdep.c, tic80-tdep.c, sh-tdep.c, mn10300-tdep.c,
+       mn10200-tdep.c, m32r-tdep.c, h8300-tdep.c, rs6000-tdep.c: Delete
+       function get_saved_register.
+
+Thu Apr 22 13:32:23 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.c: Cleanup.  Re-order the definition of the ``struct
+       gdbarch'' initialization functions so that maintenance is more
+       straightforward.
+       
+Thu Apr 22 11:07:21 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h, gdbarch.c (use_generic_dummy_frames,
+       USE_GENERIC_DUMMY_FRAMES): Add.
+       (struct gdbarch, verify_gdbarch, gdbarch_alloc, gdbarch_dump,
+       default_gdbarch): Update.
+
+       * config/v850/tm-v850.h, config/tic80/tm-tic80.h,
+       config/sh/tm-sh.h, config/powerpc/tm-ppc-eabi.h,
+       config/mn10300/tm-mn10300.h, config/mn10200/tm-mn10200.h,
+       config/m32r/tm-m32r.h, config/h8300/tm-h8300.h,
+       config/fr30/tm-fr30.h, config/d10v/tm-d10v.h: Give the
+       USE_GENERIC_DUMMY_FRAMES macro the value one.
+       * inferior.h (USE_GENERIC_DUMMY_FRAMES): Default to a value of
+       zero.
+
+       * blockframe.c (generic_find_dummy_frame,
+       generic_pc_in_call_dummy, generic_read_register_dummy,
+       generic_push_dummy_frame, generic_pop_current_frame,
+       generic_pop_dummy_frame, generic_frame_chain_valid,
+       generic_get_saved_register): Always define.
+
+       * breakpoint.c (frame_in_dummy): Convert #ifdef
+       USE_GENERIC_DUMMY_FRAMES to runtime test.
+
+       * rs6000-tdep.c (pop_frame, push_arguments, push_arguments,
+       push_arguments, frame_saved_pc, rs6000_frame_chain,
+       rs6000_frame_chain): Convert #ifdef USE_GENERIC_DUMMY_FRAMES to
+       runtime test.
+       (get_saved_register): Always define.
+
+Wed Apr 21 17:15:52 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.c (gdbarch_dump): Fix robustness check on
+       BELIEVE_PCC_PROMOTION_TYPE.
+
+Wed Apr 21 15:39:27 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h (TARGET_BYTE_ORDER_SELECTABLE_P): When multi-arch,
+       force selectable byte order.
+       (CALL_DUMMY): Check for CALL_DUMMY definition when multi-arch. Are
+       incompatible.
+       * gdbarch.c (verify_gdbarch): Check call_dummy_stack_adjust.
+       
+Wed Apr 21 14:45:44 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.c (gdbarch_update): Move dump-arch code from here.
+       (gdbarch_dump): To here.  Make more robust.
+       * gdbarch.h (gdbarch_dump): Add prototype.
+       
+       * gdbarch.c (enum set_arch): Declare.
+       (set_arch): Add type parameter.  Only disable
+       ``target_architecture_auto'' when set_arch_manual.
+       (set_architecture, set_architecture_from_arch_mach,
+       set_architecture_from_file): Update.
+       (set_arch): When ``gdbarch_debug'', gdbarch_dump() the current
+       architecture.
+
+Wed Apr 21 10:48:53 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * frame.h (generic_pc_in_call_dummy):  Make signature consistent
+       with other pc_in_call_dummy functions by adding SP parameter.
+       * blockframe.c (generic_pc_in_call_dummy): Update.  Pass SP and
+       not FP to generic_find_dummy_frame().
+       * breakpoint.c (frame_in_dummy): Update.
+       * config/v850/tm-v850.h, config/tic80/tm-tic80.h,
+       config/sh/tm-sh.h, config/mn10300/tm-mn10300.h,
+       config/mn10200/tm-mn10200.h, config/m32r/tm-m32r.h,
+       config/h8300/tm-h8300.h, config/fr30/tm-fr30.h,
+       config/d10v/tm-d10v.h: Update PC_IN_CALL_DUMMY definition.
+
+Tue Apr 20 12:15:45 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * config/d10v/tm-d10v.h (GDB_TARGET_IS_D10V): Move from here.
+       * gdbarch.h (GDB_TARGET_IS_D10V): To here.  Implement using
+       TARGET_ARCHITECTURE.
+       (D10V_MAKE_DADDR, D10V_MAKE_IADDR): Provide fatal default
+       definitions.
+
+       * valops.c (value_at): Replace #ifdef GDB_TARGET_IS_D10V code with
+       runtime test.
+       (value_fetch_lazy): Ditto.
+       * values.c (unpack_long): Ditto.
+       * printcmd.c (print_frame_args): Ditto.
+
+Sat Apr 17 15:39:33 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h: Cleanup multi-arch comments.
+
+Fri Apr 16 15:39:10 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h: Provide definition if GDB_MULTI_ARCH > 1 or
+       GDB_MULTI_ARCH > 0 and no previous definition.
+       * gdbarch.c (verify_gdbarch): Only verify a full multi-arch
+       target.
+
+1999-04-15  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * infrun.c (wait_for_inferior) [HAVE_STEPPABLE_WATCHPOINT,
+       HAVE_NONSTEPPABLE_WATCHPOINT, HAVE_CONTINUABLE_WATCHPOINT]: Test
+       at runtime instead of compile time.
+
+Thu Apr 15 15:15:07 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * mips-tdep.c (struct gdbarch_tdep): Rename elf_abi to
+       elf_flags. Check ABFD is elf_flavour before extracting elf_flags.
+       Match ARCH against entire elf_flags instead of just the
+       EF_MIPS_ABI field.
+       (mips_gdbarch_init): Extract/print ef_mips_arch and
+       ef_mips_bitptrs and ef_mips_abi fields from elf_flags.
+
+1999-04-14  Philippe De Muyter  <phdm@macqel.be>
+
+       * breakpoint.c (maintenance_info_breakpoints): Function made
+       static to match previous prototype.
+
+       * coffread.c (coff_record_line): Static function removed.
+       (enter_linenos): Call `record_line' instead of `coff_record_line'.
+       (FILE-LEVEL, coff_start_symtab, coff_end_symtab): `coff_record_line'
+       -related stuff removed.
+       (coff_symfile_read): Redundant statement removed.
+       (coff_symtab_read): `record_line' is now called with the first line
+       number of each function, given by the ".bf" symbol.  This solves
+       the line-number bug for one-line functions.
+
+Wed Apr 14 11:09:45 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.h (BELIEVE_PCC_PROMOTION_TYPE, BELIEVE_PCC_PROMOTION):
+       Add multi-arch definitions.
+       * gdbarch.c (gdbarch_believe_pcc_promotion,
+       gdbarch_believe_pcc_promotion_type): New functions.
+       (gdbarch_update): Update
+       (struct gdbarch default_gdbarch): Update.
+
+       * stabsread.c (BELIEVE_PCC_PROMOTION_TYPE): Provide default.
+       (define_symbol): Change #if BELIEVE_PCC_PROMOTION_TYPE and #if
+       BELIEVE_PCC_PROMOTION to if().
+
+1999-04-13  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * configure.in (HAVE_MULTIPLE_PROC_FDS): Don't define if we're
+       on a Solaris host (of any architecture).
+       * configure: Regenerated.
+
+Wed Apr 14 08:23:32 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gdbarch.c (SET_GDBARCH, GET_GDBARCH, FSET_GDBARCH): New macros.
+       (gdbarch_byte_order, gdbarch_long_bit, gdbarch_long_long_bit,
+       gdbarch_ptr_bit, gdbarch_call_dummy_location,
+       gdbarch_call_dummy_address, gdbarch_call_dummy_address,
+       gdbarch_call_dummy_breakpoint_offset,
+       gdbarch_call_dummy_breakpoint_offset, gdbarch_call_dummy_length,
+       gdbarch_pc_in_call_dummy, dbarch_call_dummy_breakpoint_offset_p,
+       dbarch_call_dummy_p, dbarch_call_dummy_words,
+       dbarch_sizeof_call_dummy_words, dbarch_call_dummy_stack_adjust,
+       dbarch_call_dummy_stack_adjust_p): Define using new macros.
+       
+1999-04-13  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * rom68k-rom.c (init_rom68k_cmds): Fix an accidental substitution
+       in monitor command strings, fix some formatting mistakes.
+
+1999-04-13  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * configure.tgt (arm-*-*): Whack another vestige of wingdb.
+
+1999-04-12  James Ingham  <jingham@cygnus.com>
+
+       * arm-tdep.c (arm_pop_frame): don't clobber the previous frame's
+       stack pointer (stored in frame->framereg's register) BEFORE
+       reading it.  This was causing "return" to behave very oddly.
+
+1999-04-12  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * NEWS: Mention tic80.
+
+1999-04-12  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * a68v-nat.c: Remove reference to 'extern char registers[]' throughout.
+       * altos-xdep.c: Ditto.
+       * arm-xdep.c: Ditto.
+       * convex-xdep.c:  Ditto.
+       * cxux-nat.c: Ditto.
+       * hp300ux-nat.c: Ditto.
+       * hppab-nat.c: Ditto.
+       * i386aix-nat.c: Ditto.
+       * i386mach-nat.c: Ditto.
+       * m88k-nat.c: Ditto.
+       * ptx4-nat.c: Ditto.
+       * pyr-xdep.c: Ditto.
+       * rs6000-nat.c: Ditto.
+       * sun3-nat.c: Ditto.
+       * sun386-nat.c: Ditto.
+       * symm-nat.c: Ditto.
+       * umax-xdep.c: Ditto.
+       * i386v4-nat.c: Ditto. Also include inferior.h.
+       * m68k-tdep.c: Ditto. Also include inferior.h.
+
+Mon Apr 12 15:57:16 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * inferior.h (CALL_DUMMY_STACK_ADJUST, CALL_DUMMY_STACK_ADJUST_P):
+       Provide default definitions.
+       * valops.c (hand_function_call): Replace #ifdef
+       CALL_DUMMY_STACK_ADJUST with if (CALL_DUMMY_STACK_ADJUST_P).
+
+       * gdbarch.h (SIZEOF_CALL_DUMMY_STACK_ADJUST,
+       (SIZEOF_CALL_DUMMY_STACK_ADJUST_P): Define
+       * gdbarch.c (struct gdbarch): Add call_dummy_stack_adjust,
+       call_dummy_stack_adjust_p.
+       (gdbarch_call_dummy_stack_adjust,
+       set_gdbarch_call_dummy_stack_adjust,
+       gdbarch_call_dummy_stack_adjust_p,
+       set_gdbarch_call_dummy_stack_adjust_p): New functions.
+       (default_gdbarch): Update.
+
+1999-04-09  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * ax-gdb.c, ax-gdb.h, ax-general.c, ax.h: Remove RCS Id strings.
+       They're a pain.
+
+       * GDB 4.18 released.
+       * Makefile.in (VERSION): Bump to 4.18.1.
+
+Thu Apr  8 16:04:34 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * inferior.h (CALL_DUMMY_P, CALL_DUMMY_WORDS,
+       SIZEOF_CALL_DUMMY_WORDS): Define macros.
+       (PUSH_DUMMY_FRAME, FIX_CALL_DUMMY, STORE_STRUCT_RETURN): Provide
+       fatal default.
+
+       * inferior.h, gdbarch.c (call_dummy_words,
+       sizeof_call_dummy_words): Declare/Define variables.
+       * valops.c (value_arg_coerce, find_function_addr,
+       call_function_by_hand): Always define.
+       (hand_function_call): Rename CALL_DUMMY version of
+       call_function_by_hand.  Make static.  Add prototype.
+       (hand_function_call): Update.  Allocate space for *dummy and
+       *dummy1 using alloca.
+       * breakpoint.c (frame_in_dummy): Update.
+
+       * gdbarch.h (CALL_DUMMY_P, CALL_DUMMY_WORDS,
+       SIZEOF_CALL_DUMMY_WORDS): Define.
+       * gdbarch.c (gdbarch_call_dummy_p, set_gdbarch_call_dummy_p,
+       gdbarch_call_dummy_words, set_gdbarch_call_dummy_words,
+       gdbarch_sizeof_call_dummy_words,
+       set_gdbarch_sizeof_call_dummy_words): New functions.
+       (gdbarch_alloc, verify_gdbarch, gdbarch_update, struct
+       default_gdbarch): Update.
+
+1999-04-08  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * monitor.c (monitor_read_memory): If a MO_GETMEM_NEEDS_RANGE 
+       monitor, increase the end address by one byte.
+
+1999-04-08  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * dbug-rom.c (init_dbug_cmds): Fix strings in 
+        dbug_cmds.{step,clr_break,clr_all_break,fill} to send correct
+       commands to the monitor.
+
+1999-04-08  Keith Seitz  <keiths@cygnus.com>
+
+       * m32r-stub.c (branchDestination): Undo overly ambitious
+       sed script's conversion of cast from "char" to "unsigned char".
+       Return offset should now be properly computed.
+
+Thu Apr  8 14:13:19 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * inferior.h (CALL_DUMMY_BREAKPOINT_OFFSET_P): New macro.
+       Non-zero when CALL_DUMMY_BREAKPOINT_OFFSET is valid.
+
+       * infcmd.c (breakpoint_auto_delete_contents): Always define.
+       (run_stack_dummy): Update.
+       * infrun.c (wait_for_inferior): Update
+
+       * gdbarch.h (CALL_DUMMY_BREAKPOINT_OFFSET_P): New macro.
+       * gdbarch.c (set_gdbarch_call_dummy_breakpoint_offset_p,
+       gdbarch_call_dummy_breakpoint_offset_p): New functions.
+       (struct gdbarch, gdbarch_alloc, default_gdbarch, gdbarch_update):
+       Update.
+
+1999-04-07  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * MAINTAINERS: Mark Alexander can no longer maintain
+       h8300 and other embedded targets, sniff.
+
+1999-04-06  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * inftarg.c (child_wait): Initialize execd_pathname.
+       * target.c (debug_to_has_execd): Handle NULL execd_pathname.
+
+       * solib.c (clear_solib): Don't call disable_breakpoints_in_shlibs,
+       this breaks rerunning on sun4 native.
+
+1999-04-06  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * config/sparc/nm-linux.h: Don't redefine PT_ATTACH to use the
+       deprecated PTRACE_SUNATTACH compatibility commands.  The
+       definitions from <sys/ptrace.h> are fine.
+
+1999-04-06  Martin Hunt  <hunt@cygnus.com>
+
+       * annotate.h: Declare annotate_signal_hook.
+
+       * annotate.c (annotate_signal): Add a call to 
+       annotate_signal_hook().
+
+1999-04-06  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * dwarf2read.c (dwarf_decode_lines): Don't call record_line when
+       we hit a DW_LNE_end_sequence instruction.
+
+       * README: Note that GDB requires an ANSI C compiler, and explain
+       how to get GCC.
+
+       * README: Update.
+
+1999-04-05  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * NEWS: Add more notes about user-visible changes.
+
+Mon Apr  5 14:56:59 1999  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * target.c (target_signal_to_string): check for signal
+       number in range; otherwise if the target board returns
+       a bogus signal number we might core dump (per David Taylor).
+
+1999-04-05  David Taylor  <taylor@ryobi.cygnus.com>
+
+       * utils.c (fputs_maybe_filtered): test value of
+       pagination_enabled before paginating.
+
+1999-04-02  James Ingham  <jingham@cygnus.com>
+
+       * blockframe.c (get_prev_frame): Remove the redundant
+       get_prev_frame_info.  It is now exactly the same as
+       get_prev_frame, so there is no reason to have both functions.
+       
+       * rs6000-tdep.c (rs6000_init_extra_frame_info): 
+         frame.h: 
+         a29k-tdep.c (init_extra_frame_info): 
+         config/a29k/tm-a29k.h: 
+         i386-tdep.c:
+        Change all references to get_prev_frame_info to get_prev_frame.
+       
+1999-04-02  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * bcache.c, bcache.h, breakpoint.c, defs.h, expprint.c,
+       expression.h, gdbarch.c, gdbtypes.c, gdbtypes.h, gnu-nat.c,
+       gnu-nat.h, hppa-tdep.c, maint.c, monitor.c, objfiles.h, parse.c,
+       remote-mips.c, remote-sds.c, remote.c, sol-thread.c, symmisc.c,
+       symtab.h, target.c, top.c, typeprint.c, config/nm-gnu.h: Evaporate
+       the unused MAINTENANCE_CMDS conditional.
+
+1999-04-02  James Ingham  <jingham@cygnus.com>
+
+       * config/arm/tm-arm.h: (EXTRACT_STRUCT_VALUE_ADDRESS): This needs
+       to call extract_address, not just cast the first 4 bytes, since
+       the result will be passed to value_at which expects host-byte
+       order. 
+
+       * arm-tdep.c (arm_scan_prologue): The prologue_start address was
+       directly &'ed with 0x03fffffc, rather than using
+       ADDR_BITS_REMOVE.  This would cause inferior function calls to
+       report the stack incorrectly on return.
+
+
+1999-04-02  Keith Seitz  <keiths@cygnus.com>
+
+       * top.c (ui_loop_hook): Change declaration. Now returns an int.
+       * win32-nat.c (child_wait): Timeout WaitForDebugEvent and call
+       the ui_loop_hook if there was no debug event.
+       * top.c (ui_loop_hook): Change to return an int and include
+       on all non-Cygwin builds.
+       * v850ice.c: Change prototype of ui_loop_hook.
+       (v850ice_wait): Update call to ui_loop_hook.
+       * ser-unix.c (hardwire_readchar): Enable ui_loop_hook callbacks
+       for non-Cygwin builds. Check return status of ui_loop_hook and
+       return a timeout if told to detach. Add more documentation.
+       * ser-tcp.c (tcp_readchar): Break up timeouts into one second
+       intervals and call ui_loop_hook so that other UIs can
+       keep up to date. If ui_loop_hook returns non-zero, then
+       return SERIAL_TIMEOUT to facilitate detaching from the
+       target.
+       * remote.c (remote_interrupted_already): Remove.
+       (remote_interrupt_twice): Revive.
+       (remote_interrupt): Call remote_stop to interrupt the target
+       and install remote_interrupt_twice to take more severe
+       actions if this fails.
+       (remote_stop): Only attempt to stop the target. This separates
+       the command line from other UIs.
+       * remote-sim.c (gdb_os_poll_quit): Add a call to ui_loop_hook,
+       if it is defined.
+
+1999-04-01  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Fix for cross-debugging on an AIX host from Johanna Svenningsson:
+       * ax-gdb.h (enum axs_lvalue_kind): Remove trailing comma from enum.
+       * ax.h (enum agent_op): Same.
+       * tracepoint.h (enum actionline_type): Same.
+       * config/xm-aix4.h: Add declaration for termdef.
+
+1999-03-31  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * jv-lang.h (dynamics_objfile): Remove decl, conflicts with static
+       decl in jv-lang.c.
+
+       * infrun.c (follow_inferior_fork): Add ifdefs around
+       SOLIB_REMOVE_INFERIOR_HOOK.
+
+Wed Mar 31 11:39:49 1999  David Taylor  <taylor@ryobi.cygnus.com>
+
+       * valops.c (search_struct_field): revert HP merge change
+       to this function -- it causes messages to be printed about
+       member class ambiguity when the compiler is happy.
+       (search_struct_field_aux): delete -- added as part of HP merge
+       change; with aforementioned change it is no longer called.
+
+1999-03-30  Stan Shebs  <shebs@andros.cygnus.com>
+
+       Make more HPUX-specific code generic.
+       * infrun.c: Include top.h.
+       (MAY_SWITCH_FROM_INFERIOR_PID, MAY_FOLLOW_EXEC,
+       USE_THREAD_STEP_NEEDED): New native macros.
+       (may_switch_from_inferior_pid, may_follow_exec,
+       use_thread_step_needed): New globals.
+       (follow_inferior_fork): Remove HPUXHPPA ifdef.
+       (follow_exec): Ditto, also save run target and re-push instead of
+       always pushing child_ops, add ifdefs around SOLIB_RESTART and
+       SOLIB_CREATE_INFERIOR_HOOK.
+       (wait_for_inferior): Use new globals instead of ifdefing HPUXHPPA,
+       always use printf_filtered to report new threads.
+       (normal_stop): Ditto.
+       * target.h, target.c (find_run_target): New function.
+       * config/pa/nm-hppah.h: Define new macros.
+
+1999-03-29  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * top.h: Include setjmp.h here.
+       * main.c, top.c: Don't include it here.
+
+1999-03-29  Keith Seitz  <keiths@cygnus.com>
+
+       * symtab.c (decode_line_1): Take out change which breaks symbols
+       which include class names and methods, e.g., "Foo::bar".
+
+1999-03-26  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * configure.tgt (i[3456]86-*-sysv4.2MP, i[3456]86-*-sysv4.2uw2*):
+       Recognize both, as i[3456]86-*-sysv4.2*.
+       (i[3456]86-*-sysv5*): Recognize.
+
+       * infrun.c (wait_for_inferior): Remove most #if 0 segments.
+
+Fri Mar 26 17:27:27 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * blockframe.c (pc_in_call_dummy_on_stack): Fix.  Had copied code
+       from at_entry_point.
+
+Thu Mar 25 19:30:02 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * gdbarch.c: Include all headers.
+       (struct gdbarch), gdbarch.h (CALL_DUMMY_LOCATION,
+       CALL_DUMMY_ADDRESS, CALL_DUMMY_START_OFFSET,
+       CALL_DUMMY_BREAKPOINT_OFFSET, CALL_DUMMY_LENGTH,
+       PC_IN_CALL_DUMMY): Add ``call_dummy_location'',
+       ``call_dummy_length'', ``pc_in_call_dummy'',
+       ``call_dummy_start_offset'', ``call_dummy_breakpoint_offset'' to
+       multi-arch framework.
+
+       * inferior.h, blockframe.c (pc_in_call_dummy_before_text_end,
+       pc_in_call_dummy_after_text_end, pc_in_call_dummy_on_stack,
+       pc_in_call_dummy_at_entry_point): Convert PC_IN_CALL_DUMMY macro's
+       into functions.
+
+       * mips-tdep.c (mips_gdbarch_init): Initialize above
+
+Tue Mar 23 17:22:57 1999  Philippe De Muyter  <phdm@macqel.be>
+
+       * remote.c, parse.c: Include ctype.h.
+
+1999-03-24  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * configure.host (mips-dec-mach3*): Use mipsm3 not mach3.
+
+       Attempt to sort out SCO-related configs.
+       * configure.host (i[3456]86-*-sysv4.2*): Use instead of
+       i[3456]86-*-sysv4.2MP and i[3456]86-*-sysv4.2uw2*.
+       (i[3456]86-*-sysv5*): Recognize.
+       * configure.tgt (i[3456]86-*-sco3.2v5*, i[3456]86-*-sco3.2v4*):
+       Recognize.
+
+Wed Mar 24 16:19:01 1999  Christopher Faylor <cgf@cygnus.com>
+
+       * MAINTAINERS: Add DJ Delorie (dj@cygnus.com) as the djgpp
+       maintainer.
+
+Wed Mar 24 21:19:57 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * target.h (enum target_signal): Do not hardwire values of MACH
+       signals.
+
+1999-03-14  Ken Raeburn  <raeburn@raeburn.org>
+
+       * target.h (enum target_signal): Add TARGET_SIGNAL_INFO.
+       * target.c (signals): Add SIGINFO description.
+       (target_signal_from_host, target_signal_to_host): Translate
+       SIGINFO to/from TARGET_SIGNAL_INFO.
+
+Wed Mar 24 01:01:27 1999  Andrew Cagney  <cagney@sludge.cygnus.com>
+
+       * rs6000-tdep.c (rs6000_software_single_step): Change SIGNAL to
+       unsigned int.
+
+       From Rodney Brown <rodneybrown@pmsc.com>
+       * target.h (enum thread_control_capabilities), breakpoint.h (enum
+       bptype), breakpoint.c (enum insertion_state_t): Strict ISO-C
+       doesn't allow trailing comma in enum definition.
+       
+Mon Mar 22 15:56:04 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * blockframe.c (inside_entry_file, inside_entry_func): Convert #if
+       CALL_DUMMY_LOCATION to if.
+       * valops.c (call_function_by_hand): Ditto.
+       * infcmd.c (run_stack_dummy): Ditto.
+       * inferior.h (CALL_DUMMY_ADDRESS, CALL_DUMMY_START_OFFSET,
+       CALL_DUMMY_BREAKPOINT_OFFSET): Provide default.
+
+1999-03-23  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * hppa-tdep.c (pa_register_look_aside): Remove CPU_HPPA_RISC_20
+       check, test for presence of struct save_state_t and the ss_wide 
+       member directly.
+       * configure.in:  Remove CPU_HPPA_RISC_20 test.  Add tests for
+       HAVE_STRUCT_SAVE_STATE_T and HAVE_STRUCT_MEMBER_SS_WIDE.
+       * acconfig.h: Add HAVE_STRUCT_SAVE_STATE_T HAVE_STRUCT_MEMBER_SS_WIDE.
+       * configure, config.in: Regenerated.
+
+Mon Mar 22 13:25:13 1999  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * infttrace.c (proc_wait): rename to ptrace_wait.
+
+1999-03-18  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * dwarf2read.c: Correctly recognize location expressions that
+       designate LOC_REF_ARG arguments.  Doc fixes.
+       (isderef): New global.  (Yuck.)
+       (dwarf2_complex_location_expr): New complaint.
+       (read_func_scope): Reject frame_base attributes that use the
+       `deref' opcode as too complex.
+       (new_symbol): If both regoff and isderef are set, and the base
+       register is the frame pointer, then it's a LOC_REF_ARG argument.
+       (decode_locdesc): Recognize the `deref' opcode in location
+       expressions.  Complain if it's not the last op in the expression.
+
+       * config/fr30/tm-fr30.h (COERCE_FLOAT_TO_DOUBLE): #define this to
+       be true, or else value_arg_coere won't respect the (accurate)
+       information we have about whether a function is prototyped.
+
+1999-03-17  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * config/fr30/tm-fr30.h (STACK_ALIGN): Define this here, so
+       calling functions by hand with odd-sized arguments doesn't munge
+       the stack.
+
+1999-03-17  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * configure.in (HAVE_MULTIPLE_PROC_FDS): Don't define for Solaris
+       hosts--gdb doesn't support this yet.
+       * configure: Regenerated.
+
+1999-03-16  Keith Seitz  <keiths@cygnus.com>
+
+        * remote.c (remote_binary_checked): New file global.
+        (check_binary_download): New function to check if
+        stub supports binary downloading that works with
+        stubs that are not eight bit clean.
+        (remote_write_bytes): Check for binary download capability
+        and use it if available.
+        Remove references to global remote_binary_length. What a hack.
+        (putpkt_binary): New function.
+       (putpkt): Call putpkt_binary.
+       Use xor to escape trouble characters.
+       * m32r-stub.c (bin2mem): Follow escape char convention change.
+
+Tue Mar 16 01:11:33 1999  Andrew Cagney  <cagney@rhino.cygnus.com>
+
+       * target.h (struct target_ops), target.c (debug_to_query),
+       remote.c (pack_hex_byte, remote_query): Promote char parameters to
+       int.  Stops compile problems with pedantic ISO-C compilers.
+       
+Tue Mar 16 15:29:04 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * go32-xdep.c: Remove, no longer used by anything.
+       * Makefile.in: Remove references.
+
+       * jv-lang.c, jv-lang.h (java_primitive_type): Declare argument
+       as int instead of char.
+
+Mon Mar 15 11:42:43 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * d10v-tdep.c (push_stack_item, pop_stack_item): New function.
+       (d10v_push_arguments): Use.
+       
+       From Martin M. Hunt  <hunt@cygnus.com>:
+       * d10v-tdep.c (d10v_push_arguments): When arguments
+       must be pushed onto the stack, they go on in
+       reverse order.
+
+1999-03-16  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * symtab.c (make_symbol_overload_list): Don't try to stuff minimal
+       or partial symbols into the overload list; we don't know their
+       types.  (Thanks to Rajiv Mirani.)
+
+1999-03-15  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * acinclude.m4 (--with-itclconfig, --with-itkconfig, --with-tixconfig):
+       Fix whitespace so --help messages line up.
+       * configure.in (--with-cpu): Fix capitalization for --help messages.
+       * configure, aclocal.m4: Regenerated.
+
+Mon Mar 15 11:39:03 1999  Ian Carmichael  <iancarm@cygnus.com>
+
+        Support building gdb w/o simulator:
+        * configure.in: Support --disable-sim. Check for sim directory.
+        * Makefile.in (IGNORE_SIM, IGNORE_SIM_OBS): New.
+        * acconfig.h (WITH_SIM): Define.
+        * configure, config.in: Regenerate.
+
+Mon Mar 15 08:01:33 1999  Elena Zannoni  <ezannoni@cygnus.com>
+
+        Patch from Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
+
+       * top.c (read_command_lines): Reset control_level to 0.
+       (define_command): Don't do it here.
+
+Sun Mar 14 16:12:15 1999  Andrew Cagney  <cagney@rhino.cygnus.com>
+
+       * hppah-nat.c (store_inferior_registers): Delete extern
+       registers[] declaration.
+
+Sun Mar 14 19:17:30 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * infrun.c (write_inferior_status_register): New function. Provide
+       update access to an inf_status register buffer.  Only used by HP.
+       * inferior.h (write_inferior_status_register): Add prototype.
+
+       * hppa-tdep.c (push_dummy_frame): Use
+       write_inferior_status_register when hacking around a sleeping
+       inferior.  Accidently fix byte-order problem.
+
+Sun Mar 14 16:40:10 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * config/pa/tm-hppa.h (PUSH_DUMMY_FRAME): Fix parameter. Address
+       not needed.
+
+Fri Mar 12 13:11:48 1999  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * remote.c (remote_write_bytes): fix 'X' packet protocol so that it
+       can't overwrite the end of its buffer with escaped characters.
+
+1999-03-12  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+        Alpha patches from Richard Henderson:
+
+       * alpha-tdep.c (alpha_skip_prologue): Recognize subq.
+
+       * config/alpha/tm-alpha.h (REGISTER_NAMES): No f31, but fpcr.
+       (FPCR_REGNUM): New.
+       (REGISTER_CONVERTIBLE): Don't convert fpcr.
+       (REGISTER_VIRTUAL_TYPE): Don't make fpcr a double.
+
+       * stabsread.c (define_symbol): Only consider live range extension
+       if we have an open parenthesis.
+
+1999-03-11  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * monitor.c (monitor_fetch_register): Print RDEBUG info correctly
+       when the register name is null.
+
+Thu Mar 11 19:33:07 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * infrun.c (wait_for_inferior): Change #if DECR_PC_AFTER_BREAK
+       uses to expressions, remove redundant extern decls.
+
+Thu Mar 11 18:05:11 1999  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * infptrace.c (proc_wait): Rename to ptrace_wait.
+       * inftarg.c (child_wait): call ptrace_wait instead of proc_wait.
+       * inferior.h: Declare ptrace_wait instead of proc_wait.
+
+Thu Mar 11 11:46:25 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * breakpoint.c (create_solib_load_unload_event_breakpoint,
+       create_fork_vfork_event_catchpoint, tcatch_command,
+       create_exception_catchpoint, break_at_finish_at_depth_command_1,
+       catch_fork_command_1, ep_skip_leading_whitespace,
+       break_at_finish_command_1, catch_exec_command_1,
+       catch_exception_command_1, stop_command, stopin_command,
+       stopat_command, ep_parse_optional_filename,
+       ep_find_event_name_end, ep_parse_optional_if_clause,
+       catch_fork_command_1), stack.c (show_and_print_stack_frame_stub,
+       print_stack_frame_stub, print_only_stack_frame_stub,
+       backtrace_command_1, backtrace_full_command, func_command),
+       valprint.c (print_decimal), source.c (print_source_lines_base):
+       Add prototype.
+
+       * stack.c (print_stack_frame_stub, show_and_print_stack_frame_stub,
+       print_only_stack_frame_stub): Make param void*.
+
+Wed Mar 10 19:33:28 1999  Geoffrey Noer  <noer@cygnus.com>
+
+       * win32-nat.c: If old Cygwin Win32 API headers aren't being used,
+        define some gdb-specific defines that shouldn't have been in the
+        global headers.
+
+Wed Mar 10 21:20:25 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * findvar.c (registers, register_valid): Replace array with pointer.
+       (build_findvar): New function.  Allocate space for REGISTERS and
+       REGISTER_VALID.
+       (_initialize_findvar): Call build_findvar.
+       (_initialize_findvar): Register REGISTERS and REGISTER_VALID as
+       arch dependant.
+       
+       * inferior.h (registers, register_valid): Replace array with
+       pointer.
+
+       * inferior.h (struct inferior_status): Move definition from here.
+
+       * infrun.c (struct inferior_status): To here.
+       (struct inferior_status): Change ``stop_registers'' and
+       ``registers'' to pointers.
+       (xmalloc_inferior_status, free_inferior_status): New functions.
+       (restore_inferior_status): Call free_inferior_status.
+       (save_inferior_status): Call xmalloc_inferior_status.
+       (discard_inferior_status): New function, discard inf_status
+       buffer.  Call free_inferior_status.
+       
+       * inferior.h (stop_registers): Replace array with pointer.
+       * infrun.c (stop_registers): Update.
+       (build_infrun): Initialize stop_registers.
+       (_initialize_infrun): Call build_infrun.
+       (_initialize_infrun): Register ``stop_registers'' as arch dependant.
+
+Wed Mar 10 14:50:42 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * alpha-tdep.c (alpha_linux_sigtramp_offset): Only compile when
+       LINUXALPHA target. Hack.
+
+       * infrun.c (set_follow_fork_mode_command): Make static.  Add
+       prototype.
+       * tracepoint.c (add_register): Ditto.
+       * valprint.c (strcat_longest): Comment out.  Does not appear to be
+       used.
+       * valops.c (find_method_list): Make static.  Add prototype.
+       * thread.c (target_find_new_threads): Make static.  Add prototype.
+       * stack.c (stack_publish_stopped_with_no_frame,
+       select_and_maybe_print_frame): Comment out.  Does not appear to be
+       used.
+       (current_frame_command): Add prototype.
+       * breakpoint.c (break_at_finish_command,
+       break_at_finish_at_depth_command, tbreak_at_finish_command): Make
+       static.  Add prototype.
+       * findvar.c (read_relative_register_raw_bytes_for_frame): Ditto.
+
+Wed Mar 10 23:38:54 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * corefile.c (registers): Delete redundant variable declaration.
+       * inferior.h (run_stack_dummy): Change array argument to pointer.
+       * infcmd.c (run_stack_dummy): Update.
+       * value.h (value_being_returned): Change RETBUF to a pointer.
+       * values.c (value_being_returned): Update.
+
+Wed Mar 10 11:08:16 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * source.c (list_command): GCC suggested explicit braces to avoid
+       ambiguous `else'.
+
+       * jv-typeprint.c: Include "c-lang.h".
+       * Makefile.in (jv-typeprint.o): Add dependency.
+       * jv-valprint.c: Include "gdbcore.h", "annotate.h".
+       * Makefile.in (jv-valprint.o): Add dependencies.
+       * objfiles.c: Include "breakpoint.h".
+       * Makefile.in (objfiles.o): Add dependency.
+       * main.c: Include <unistd.h>.
+       * parse.c: Include <ctype.h>.
+       * remote.c: Include <ctype.h>.
+       * ser-tcp.c: Include <unistd.h>.
+       * ax-general.c: Include "value.h".
+       * Makefile.in (ax-general.o): Add dependency.
+
+       * alpha-tdep.c (alpha_push_arguments): Make ``i'' an int instead
+       of a register.
+       * frame.h (show_and_print_stack_frame): Add function prototype.
+       * language.h (language_enum): Add function prototype.
+       * value.h (find_overload_match): Add function prototype.
+
+       * defs.h, utils.c (subset_compare): Rename subsetCompare. Add
+       prototype.
+       * stack.c (backtrace_command): Update.
+
+Wed Mar 10 13:58:36 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * configure.in (AC_CHECK_HEADERS): Check for <sys/select.h>
+       * configure, config.in: Re-generate.
+       * inflow.c: Conditionally include <sys/select.h>.
+
+Wed Mar 10 13:44:38 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * frame.h (struct dummy_frame): Move from here.
+       * blockframe.c (struct dummy_frame): To here.
+
+       * blockframe.c (struct dummy_frame): Replace ``regs'' with pointer
+       ``registers''.
+       (generic_pop_dummy_frame): Free it.
+       (generic_push_dummy_frame): Allocate dummy frame register buffer.
+
+Wed Mar 10 11:08:16 1999  Andrew Cagney  <cagney@amy.cygnus.com>
+
+       * thread.c (_initialize_thread): Delete redundant ``extern struct
+       cmd_list_element *cmdlist''.
+       * printcmd.c (print_command_1): Ditto for ``objectprint'';
+
+1999-03-09  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * MAINTAINERS: New file, list of maintainers and areas they
+       maintain.
+
+1999-03-09  Rodney Brown  <RodneyBrown@pmsc.com>
+
+       Get working on UnixWare 2.1.1.
+       * acconfig.h: Update for defines for procfs.c.
+       * configure.in: Identify defines for procfs.c.
+       * configure.host: i386-*-sysv4.2uw2* => i386v42mp
+       * configure.tgt:  i386-*-sysv4.2uw2* => i386v42mp
+       * configure, config.in: Regenerate.
+       * procfs.c: Rename HAVE_NO_PRRUN_T to HAVE_PRRUN_T (autoconf
+       standard), wrap UNIXWARE difference in THE_PR_LWP macro for
+       legibility.
+       * config/i386/tm-i386v42mp.h: Remove HAVE_PSTATUS_T,
+       HAVE_NO_PRRUN_T; now set by configure.
+
+Tue Mar  9 16:29:24 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * i386-tdep.c (gdb_print_insn_i386): Abort when disassembly_flavor
+       undefined..
+
+       * fr30-tdep.c (_initialize_fr30_tdep): Add prototype.  Fix
+       coding style.
+
+       * target.c (debug_to_enable_exception_callback,
+       debug_to_get_current_exception_event): Return result of call to
+       debug_target().
+
+1999-03-09  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Another HURD fix from Mark Kettenis:
+       * gnu-nat.c: Include <string.h>.  Remove declaration of strerror.
+       Include <bits/waitflags.h> instead of <waitflags.h> and define
+       _SYS_WAIT_H to prevent the warning that we should not include it.
+       (gnu_create_inferior): Change return type of attach_to_child to
+       void.  Do not return INFERIOR_PID.
+       (gnu_pid_to_exec_file): Change return type to char *.
+       Return NULL.
+
+       Fix for the HURD from Mark Kettenis:
+       * configure.in: Add AC_PROG_AWK.  Needed by the machine-dependent
+       makefile fragments for the Hurd.
+       * Makefile.in (AWK): Add.  Set by configure.
+       * configure: Regenerated.
+
+1999-03-08  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * infttrace.c (hppa_get_process_events): Removed. Function only
+       usable on HPUX 10 and above.  It is not called by any other part
+       of GDB.
+       * hppah-nat.c (hppa_get_process_events): Ditto.
+       (child_pid_to_exec_file): Only call ptrace with
+       PT_GET_PROCESS_PATHNAME if that symbol has been defined.
+       * config/pa/nm-hppah.h: Don't set up prototypes et al for 
+       hppa_get_process_events.
+
+       * config/pa/hppahpux.mh (TERM_LIB): Do not initialize, let autoconf
+       determine best library automatically.
+       * config/pa/hpux1020.mh: Ditto.
+       * config/pa/hpux1100.mh: Ditto.
+       * configure.in (TERM_LIB): Also check for libHcurses.
+       * configure: Regenerated.
+
+Thu Mar  4 17:16:04 1999  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * m32r-stub.c: add support for crc "Compare" command.
+
+1999-03-04  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * fr30-tdep.c (fr30_store_return_value): Allocate zeroes
+       dynamically, to save BSS space, and to remove assumptions about
+       the size of the largest value we'll return.
+
+       * config/fr30/tm-fr30.h (fr30_store_return_value): Use PARAMS in
+       prototype.
+
+Thu Mar  4 08:37:35 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sh3-rom.c (sh3_supply_register, sh3_supply_register),
+       mips-tdep.c (mips_push_arguments), m32r-rom.c
+       (m32r_upload_command), m32r-tdep.c (decode_prologue), monitor.c
+       (longlong_hexchars), tracepoint.c (validate_actionline,
+       read_actions), mdebugread.c
+       (parse_symbol), jv-typeprint.c
+       (java_type_print_base, java_type_print_base), mdebugread.c
+       (parse_symbol), top.c (source_command), utils.c
+       (floatformat_to_doublest): GCC suggest explicit braces to avoid
+       ambiguous `else'.
+       
+       * tracepoint.c (map_args_over_tracepoints, trace_actions_command),
+       m32r-rom.c (m32r_supply_register), win32-nat.c
+       (handle_output_debug_string, child_continue), i960-tdep.c
+       (pop_frame), m32r-rom.c (m32r_upload_command): GCC suggested
+       parentheses around assignment used as truth value.
+
+       * remote-sds.c (sds_wait), monitor.c (monitor_fetch_register),
+       ser-e7kpc.c, (dosasync_write), arc-tdep.c (arc_get_frame_setup):
+       GCC suggested parentheses around operands.
+
+       * c-typeprint.c (c_type_print_base): GCC suggested enclosing
+       "while" expression in paren.
+
+Wed Mar  3 18:14:33 1999  Andrew Cagney  <cagney@chook.cygnus.com>
+
+       * sol-thread.c (save_inferior_pid): Cast the saved pid to void*.
+       (restore_inferior_pid): Takes void* as required by make_cleanup.
+       Casts pid back to an int.
+
+       * procfs.c (make_cleanup_close_proc_file,
+       close_proc_file_cleanup): Create a proc_file cleanup.
+       (info_proc): Use.
+
+       * defs.h (make_cleanup_freeargv): Helper function.  Establish
+       cleanup using freeargv.  Can not just typecast/pass freeargv as it
+       violates ISO-C.
+       * utils.c (do_freeargv): Helper.
+       (make_cleanup_freeargv): New function.
+
+       * symmisc.c (maintenance_print_symbols,
+       maintenance_print_psymbols, maintenance_print_msymbols), symfile.c
+       (symbol_file_command), stack.c (backtrace_command), remote-sim.c
+       (gdbsim_create_inferior, gdbsim_open), remote-mips.c
+       (common_open), procfs.c (info_proc), infrun.c (handle_command,
+       xdb_handle_command), exec.c (exec_file_attach): Call
+       make_cleanup_freeargv.
+
+1999-03-03  James Ingham  <jingham@cygnus.com>
+
+       * i386-tdep.c (_initialize_i386_tdep): Set the inital value for
+       disassembly flavor at startup, rather than hardcoding it.
+
+1999-03-03  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Put return values in the right place.
+       * fr30-tdep.c (fr30_store_return_value): New function.
+       * config/fr30/tm-fr30.h (STORE_RETURN_VALUE): Call
+       fr30_store_return_value.
+
+Wed Mar  3 18:10:55 1999  Andrew Cagney  <cagney@chook.cygnus.com>
+
+       * gdbtypes.c (virtual_base_list_aux): Return void.  Add prototype.
+
+       * breakpoint.c (map_catch_names): Comment out unused function.
+
+1999-03-02  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * hppa-tdep.c (pa_register_look_aside): Only refer to save_state_t
+       structure on PA 2.0 systems.
+
+1999-03-02  Stan Shebs  <shebs@andros.cygnus.com>
+
+       From Gary Thomas  <gthomas@cygnus.co.uk>:
+       * arm-tdep.c (ARM_LE_BREAKPOINT, ARM_BE_BREAKPOINT,
+       THUMB_LE_BREAKPOINT, THUMB_BE_BREAKPOINT): Use illegal instruction
+       instead of SWI 24.
+       * config/arm/tm-arm.h (CALL_DUMMY): Ditto.
+       (IN_SIGTRAMP): Define.
+
+1999-03-02  Nick Clifton  <nickc@cygnus.com>
+
+       * findvar.c (store_address): Delete incorrect big endian
+        code. 
+
+Tue Mar  2 18:02:42 1999  Andrew Cagney  <cagney@chook>
+
+       * configure.in (gdb_cv_os_cygwin): Compat.  Continue to reconize
+       __CYGWIN32__.
+
+1999-03-01  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * configure.in: Move setting of gdb_cv_os_cygwin to before
+       setting of TERM_LIB.  Check for __CYGWIN__ instead of __CYGWIN32__.
+       * configure: Regenerated.
+
+1999-03-01  DJ Delorie  <dj@cygnus.com>
+
+       * configure.in: Change -cygwin32* to -cygwin*.
+       * configure: Ditto.
+
+1999-02-25  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * breakpoint.c (SOLIB_LOADED_LIBRARY_PATHNAME,
+       SOLIB_UNLOADED_LIBRARY_PATHNAME, SOLIB_CREATE_CATCH_LOAD_HOOK,
+       SOLIB_CREATE_CATCH_UNLOAD_HOOK): Supply default definitions.
+       * infrun.c (SOLIB_IN_DYNAMIC_LINKER): Ditto.
+
+1999-02-25  Keith Seitz  <keiths@cygnus.com>
+
+       * corelow.c (core_close): Clear out solib state before
+       closing the bfd associated with the core file.
+       * solib.c (clear_solib): Mention that clear_solib requires
+       an open BFD in order for disable_breakpoints_in_shlibs to
+       determine whether breakpoints live in shared libraries.
+
+1999-02-24  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+        * configure.in: Set CPU_HPPA_RISC_20 if the host CPU is a PA 2.0 
+        processor.
+        * acconfig.h: Add CPU_HPPA_RISC_20
+        * config.in, configure: Regenerated.
+        * hppa-tdep.c (pa_register_look_aside): Only refer to new 
+        structure elements if we are on a PA2.0 system.
+        * defs.h: Include limits.h.
+
+Tue Feb 23 14:37:08 1999  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * infrun.c (wait_for_inferior): Check scheduler_locking state 
+       before resuming after a thread-specific breakpoint.
+
+1999-02-23  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * aclocal.m4, config.in, configure: Regenerated with latest
+       autotools.
+
+Mon Feb 22 12:32:19 1999  Per Bothner  <bothner@cygnus.com>
+
+       * jv-valprint.c (java_val_print):  Restore line that somehow got lost.
+
+       * jv-valprint.c (java_print_value_fields):  Check for NULL type.
+
+1999-02-21  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * tm-h8500.h, i386lynx-nat.c: Removed.  These files are long
+       dead; it seems that they only appeared due to some CVS weirdness.
+       If they appear again, we may need to distribute garlic and holy
+       water.
+
+1999-02-19  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * configure.in (TERM_LIB): Move checking for TERM_LIB, substituting.
+       * configure: Regenerated.
+
+1999-02-19 Robert Hoehne (robert.hoehne@gmx.net)
+
+        * configure.host (i[3456]86-*-msdosdjgpp*): New host.
+        * configure.tgt (i[3456]86-*-msdosdjgpp*): New target.
+        * go32-nat.c: New file, native DJGPP support.
+        * config/i386/go32.mh: Rewrite for DJGPP (go32) host.
+        * config/i386/go32.mt: New file, DJGPP (go32) target.
+        * config/i386/nm-go32.h: New file.
+        * config/i386/tm-go32.h: New file.
+        * config/i386/xm-go32.h: Rewritten for current DJGPP.
+
+1999-02-18  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * reply_mig_hack.awk, config/nm-gnu.h, config/alpha/nm-linux.h
+       config/alpha/xm-alphalinux.h, config/alpha/xm-alphaosf.h
+       config/i386/nm-i386sco5.h, config/i386/tm-fbsd.h, config/i386/tm-i386.h
+       config/powerpc/nm-aix.h, config/powerpc/tm-macos.h
+       config/powerpc/tm-ppc-aix.h, config/powerpc/xm-aix.h
+       config/rs6000/tm-rs6000-aix4.h, testsuite/gdb.chill/tests1.ch
+       testsuite/gdb.chill/tests2.ch, testsuite/gdb.chill/tests2.exp:
+       Update FSF address in copyright notices.
+
+1999-02-18  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * configure.in: Quote "$GCC" correctly.
+       * configure: Regenerated.
+
+1999-02-18  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * dbxread.c (elfstab_build_psymtabs): Don't assume that there's a
+       section named ".text", which has all the code in it.  Instead, look
+       at all the sections in the file with the `code' flag set.
+       (find_text_range): New function, that does all the work.
+
+Thu Feb 18 17:50:45 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * mips-tdep.c (FP_REGISTER_DOUBLE): Conditionally define.
+
+Fri Jan 29 16:51:11 1999  Andrew Cagney  <cagney@chook.cygnus.com>
+
+       * mips-tdep.c (return_value_location): New function. Merge/rewrite
+       of return-value code in mips_extract_return_value,
+       mips_store_return_value.  Stop buffer overflow when 64 bit value
+       in 32 bit registers.  Extract 64bit float from 32 bit register
+       pair of correct order.
+       (mips_extract_return_value, mips_store_return_value): Call
+       return_value_location.  For store, ensure that remainder of
+       register is zero.
+       
+Thu Jan 28 18:58:02 1999  Andrew Cagney  <cagney@chook.cygnus.com>
+
+       From John Metzler <jmetzler@cygnus.com>:
+       * mips-tdep.c (struct gdbarch_tdep): Add mips_saved_regsize.
+       (MIPS_SAVED_REGSIZE): Define.
+       (mips_find_saved_regs, read_next_frame_reg, mips_pop_frame):
+       Read/write MIPS_SAVED_REGSIZE bytes of register on stack instead
+       of MIPS_REGSIZE.
+       (mips_gdbarch_init): Initialize mips_saved_regsize.
+
+       * mips-tdep.c (mips_frame_saved_pc, mips16_heuristic_proc_desc,
+       mips_push_arguments, mips_push_dummy_frame,
+       mips_use_struct_convention): Ditto.  For MIPS_SAVED_REGSIZE <
+       REGISTER_RAW_SIZE, handle little/big endian issues from only using
+       half the register.
+       (STACK_ARGSIZE): Default to MIPS_SAVED_REGSIZE instead of
+       MIPS_REGSIZE.
+
+       * mips-tdep.c (struct gdbarch_tdep, FP_REGISTER_DOUBLE,
+       mips_gdbarch_init): Apply similar changes.  Add
+       mips_fp_register_double to struct.
+
+Wed Feb 17 10:10:27 1999  Stu Grossman  <grossman@babylon-5.cygnus.com>
+
+       * gdbtypes.h (get_discrete_bounds):  Remove duplicate decl.
+
+       * jv-typeprint.c (java_type_print_base):  Change fputs => fputs_filtered.
+       
+Mon Jan 25 18:30:57 1999  Per Bothner  <bothner@cygnus.com>
+
+       * jv-lang.h (JAVA_OBJECT_SIZE):  Change from hard-wired constant.
+       (java_primitive_type_from_name, get_java_object_header_size):  Declare.
+       * jv-lang.c (java_class_from_object):  Use get_java_object_type.
+       * jv-lang.c:  Update Class field names:  dtable->vtable,
+       msize->method_count, nfields->field_count, bfsize->size_in_bytes,
+       nmethods->method_count.
+       (type_from_class):  Demangle array type names.
+       (java_link_class_type):  Array type names are now demangled.
+       (get_java_object_type):  If not defined yet, try looking it up.
+       (get_java_object_header_size):  New function.
+       (java_primitive_type_from_name):  New function.
+       (java_demangled_signature_length, java_demangled_signature_copy): New.
+       (java_demangle_type_signature):  Re-implement using above functions.
+       (evaluate_subexp_java):  For UNOP_IND, call evaluate_subexp_java
+       to evaluate subexp (not evaluate_subexp_standard).
+       For BINOP_SUBSCRIPT update for new array type naming scheme.
+       * jv-valprint.c (java_value_print):  Use java_class_from_object.
+       Update array printing to new array type naming convention.
+       (java_val_print):  Doing check_typedef when printing a pointer is
+       is a waste of effort.  Also, handle TYPE_CODE_INT, to make sure
+       Java bytes as not printed as C chars.
+
+Fri Jan  8 16:58:22 1999  Stu Grossman  <grossman@babylon-5.cygnus.com>
+
+       * blockframe.c (find_pc_sect_partial_function):  Search full symtabs as
+       a last ditch effort (after the partial & minimal symtabs).
+       * defs.h utils.c:  Fixup prototypes for vprintf_filtered,
+       vfprintf_filtered, vfprintf_unfiltered and vprintf_unfiltered to return
+       ints to match their standard equivalents.
+       * defs.h symtab.c top.c:  Create skip_prologue_hook to allow Java to
+       control the prologue skipping process.
+       * jv-typeprint.c (java_type_print_base):  Remove extern for
+       jv_class_demangle, add new arg for objfile (NULL).
+       * symtab.h:  Remove struct sourcevector and struct source.  Definately
+       not needed.
+       * values.c (value_virtual_fn_field):  Fixes code to handle new vtable
+       debug info format.  Patch from marka.
+       
+Wed Dec 16 23:11:25 1998  Stu Grossman  <grossman@fencer.cygnus.com>
+
+       * jv-lang.c (java_class_from_object java_class_is_primitive
+       is_object_type):  Change dtable to vtable.
+       * (java_primitive_type):  Change arg to type char.
+       * (_initialize_java_language):  Make java_char_type be unsigned.
+       * jv-lang.h:  Fixup prototypes.
+       
+Mon Dec  7 19:02:15 1998  Stu Grossman  <grossman@babylon-5.cygnus.com>
+
+       * jv-valprint.c (java_value_print):  Fix printing of values where
+       run time type != compile time type.
+
+Fri Dec  4 15:23:38 1998  Stu Grossman  <grossman@fencer.cygnus.com>
+
+       * Makefile.in:  Whack out m2-typeprint.c.
+       * c-typeprint.c (c_type_print_varspec_suffix) typeprint.h:  Make this
+       global.  It's needed by Java.
+       * (c_type_print_base):  Whack prefix off of qualified method names
+       (names with name spaces).
+       * gdbtypes.h (struct cplus_struct_type):  Add bits for Java attributes.
+       Shrink voffset
+       to 16 bits to compensate for added bits above (hopefully this is still
+       enough).
+       * Add new accessor macros (TYPE_FND_FIELD_PUBLIC, ...) for all new
+       attribute bits.
+       * jv-typeprint.c (java_type_print_base):  Fix printing of method
+       attributes.  Handle JVM style manglings.
+       * (java_print_type):  Enable code type print varspec_suffix to allow
+       array indices to print out.
+       * jv-valprint.c (java_val_print):  Minor formatting.
+       * m2-lang.c (m2_language_d):  Change m2_print_type to c_print_type.
+       * stabsread.c (read_member_functions):  Save public and static attributes.
+       
+Wed Feb 17 15:32:57 1999  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * breakpoint.c (watch_command_1): Reformat comment.
+
+       * c-typeprint.c (c_type_print_base): Reformat comments.
+
+1999-02-17  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       * Makefile.in (VERSION): Bump version to 4.17.2.
+
+Tue Feb 16 15:48:20 1999  Edith Epstein  <eepstein@sophia.cygnus.com>
+        * config/pa/nm-hppah.h: Added prototype declarations for
+        hppa_enable_page_protection_events and 
+        hppa_disable_page_protection_events.
+        * inftarg.c (child_wait): Fixed code that checks whether
+        or not the target program has done a fork/vfork. 
+        related_pid  does not have a value unless the target 
+        program has forked/vforked.
+        * infttrace.c (hppa_insert_hw_watchpoint): Make sure that
+        function always returns a value.
+        (hppa_remove_hw_watchpoint): Make sure that function always
+        returns a value.
+
+Tue Feb 16 06:31:58 1999  Keith Seitz  <keiths@cygnus.com>
+
+       * config/powerpc/tm-ppc-eabi.h: Do not define PC_IN_CALL_DUMMY,
+       let the generic call dummy infrastructure do it.
+
+Sun Feb 14 18:21:08 1999  Mark Alexander  <marka@cygnus.com>
+
+       * config/sh/tm-sh.h (BELIEVE_PCC_PROMOTION): Define, so that
+       coffread.c will correctly handle char or short function parameters.
+
+1999-02-11  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * configure, aclocal.m4: Regenerate with correct version of aclocal.
+
+1999-02-10  Syd Polk  <spolk@cygnus.com>
+
+       * acinclude.m4: Fix for new location of itclConfig.sh and itkConfig.sh.
+       * aclocal.m4: Regnerate.
+       * configure: Regenerate.
+
+1999-02-10  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+        * demangle.c: Fix comments to mention "set demangle-style"
+        instead of "set demangle".
+        Run through indent to fix minor indenting problems.
+
+Wed Feb 10 17:53:09 1999  Bob Manson  <manson@charmed.cygnus.com>
+
+       * i386-tdep.c (gdb_print_insn_i386): Add missing returns.
+
+Wed Feb 10 13:17:21 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       Declare Gould configuration obsolete:
+       * configure.host, configure.tgt: Comment out Gould configs.
+       * Makefile.in: Comment out Gould-related actions.
+       * gould-xdep.c, gould-tdep.c, config/gould/*: Comment out.
+       * NEWS: Mention obsolete status.
+
+1999-02-09  DJ Delorie  <dj@cygnus.com>
+
+       * sparcl-tdep.c: UDP download works in cygwin
+
+1999-02-08  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * gnu-regex.c: Check ENABLE_NLS instead of HAVE_LIBINTL_H.
+       * configure.in: Don't check for libintl.h.
+       * configure, config.in: Regenerated.
+
+Mon Feb  8 18:10:50 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * NEWS: Mention new X packet and PowerPC variant support.
+
+1999-02-08  Nick Clifton  <nickc@cygnus.com>
+
+       * configure.host: Add support for StrongARM host.
+       * configure.tgt: Add support for StrongARM target.
+
+Mon Feb  8 12:05:05 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * dsrec.c (make_srec): Cast targ_addr to int in call to sprintf
+       otherwise on big endian machine with a bfd_vma of 64 bits,
+       *everything* gets loaded at location 0.
+
+Mon Feb  7 10:05:43 1999  Frank Ch. Eigler  <fche@cygnus.com>
+
+       * infrun.c (wait_for_inferior): Allow SIGTRAP to be "pass"ed
+       to target program.
+
+Fri Feb  5 16:46:14 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * NEWS: Add mentions of various new things.
+
+Thu Feb  4 00:19:14 1999  Christopher Faylor <cgf@cygnus.com>
+
+       * configure.in: Move termcap determination later in the
+       file to catch setting of cygwin flag.
+       * configure: Regenerate.
+
+Wed Feb  3 14:16:38 1999  Christopher Faylor <cgf@cygnus.com>
+
+       * config/i386/cygwin.mh: Move TERMCAP test code to configure.in.
+       * configure.in: Treat libtermcap.a detection as a special case
+       when hosting on cygwin.
+       * configure: Regenerate.
+
+1999-02-03  Keith Seitz  <keiths@cygnus.com>
+        * remote.c (remote_binary_download, remote_binary_length): New
+        static globals for dealing with binary transmissions.
+        (remote_write_bytes): Add support for binary downloads
+        by shadowing the "M" packet with a new "X" packet. This
+        defaults to ON; if the stub does not understand this, it
+        will fall back to using "M".
+        (putpkt): Add support for binary downloading.
+        * monitor.c (monitor_expect): The mon2000 monitor
+        on the MSA2000 will also emit random DC1/DC3 chars.
+        * m32r-stub.c: Change all char's to unsigned char's
+        to support binary downloading.
+        (handle_exception): Add support for binary downloading
+        via a new "X" packet.
+        (getpacket): Do NOT strip eighth bit of incoming chars.
+        Watch out for escaped characters in the incoming stream.
+        (putpacket): Do NOT strip eighth bit of incoming chars.
+        (bin2mem): New function to write binary data directly to
+        memory.
+        * m32r-rom.c: Add new "mon2000" target.
+
+Tue Feb  2 18:40:29 1999  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * hp-psymtab-read.c (hpread_build_psymtabs): Coerce first arg
+       passed to make_cleanup to the correct type.
+       (hpread_quick_traverse): Change fifth arg to call to 
+       hpread_end_psymtab to be 0. 
+       Compare CURR_MODULE_END to 0 rather than NULL.
+       Get rid of ifdef'ed out code.
+       (scan_procs): Get rid of ifdef'ed out code.
+
+       * somread.c (som_symfile_read): Coerce first argument passed to
+       make_cleanup to the correct type.
+
+Tue Feb  2 17:36:29 1999  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * hp-psymtab-read.c (do_pxdb): New function. Check whether the
+       file needs to be processed by pxdb (an HP debug info massaging
+       tool), if so call it.
+       (hpread_build_psymtabs): Initialize scan_start to 0 and
+       simplify flow of control.
+
+       * somread.c (som_symfile_read): Add call to do_pxdb (), 
+       in hp-psymtab-read.c.
+
+       * symfile.c (symbol_file_add): Remove ifdef'ed out HPUX specific
+       code.
+       (symfile_bfd_open): Remove HPUXHPPA ifdef'ed code. Code is now
+       in hp-psymtab-read.c.
+
+1999-02-02  Martin Hunt  <hunt@cygnus.com>
+
+       * printcmd.c (print_scalar_formatted): Use strcat to concat all
+       the output together before calling fprintf_filtered().
+
+1999-02-01  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * configure.in: Require autoconf 2.13.
+       (AM_EXEEXT): Replace with new AC_EXEEXT.
+       * acinclude.m4: Move itcl header macros from aclocal.m4 to here.
+       * aclocal.m4: Regenerated.
+       * configure: Regenerated.
+
+1999-02-01  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Allow PPC users to select which PPC/RS6000 variant they're
+       debugging at run-time.  At the moment, the only thing this affects
+       is the set of registers visible.
+       * config/rs6000/tm-rs6000.h (REGISTER_NAME): Define this as a call
+       to the function rs6000_register_name.
+       (rs6000_register_name): Include extern decl.
+       (NUM_REGS): Bump to 183.  What's the right way to do this?
+       (FIRST_UISA_SP_REGNUM, LAST_UISA_SP_REGNUM): Renamed from
+       FIRST_SP_REGNUM, LAST_SP_REGNUM.
+       (REGISTER_BYTES): Recompute this.
+       * rs6000-tdep.c: Renamed all uses of FIRST_SP_REGNUM and
+       LAST_SP_REGNUM to FIRST_UISA_SP_REGNUM and LAST_UISA_SP_REGNUM, with
+       some concomitant formatting changes.
+       #include "gdbcmd.h", so we can define commands here.
+       (struct variant): New structure.
+       (COMMON_UISA_REG_NAMES, PPC_UISA_SPR_NAMES, PPC_SEGMENT_REG_NAMES,
+       PPC_32_OEA_SPR_NAMES, num_registers): New macros. 
+       (register_names_rs6000, register_names_uisa, register_names_403,
+       register_names_403GC, register_names_505, register_names_860,
+       register_names_601, register_names_602, register_names_603,
+       register_names_604, register_names_750, variants): New variables.
+       (rs6000_register_name, install_variant, find_variant_by_name,
+       install_variant_by_name, list_variants, show_current_variant,
+       set_processor, show_processor): New functions.
+       (_initialize_rs6000_tdep): Define new commands `set processor' and
+       `show processor', and call install_variant_by_name to set the
+       default variant.
+       * rs6000-nat.c: Renamed all uses of FIRST_SP_REGNUM and
+       LAST_SP_REGNUM to FIRST_UISA_SP_REGNUM and LAST_UISA_SP_REGNUM, with
+       some concomitant formatting changes.
+       * configure.in: Accept the `--with-cpu' flag, to specify a default
+       processor variant.
+       * acconfig.h: Provide a blurb for TARGET_CPU_DEFAULT, which is set
+       by configure's `--with-cpu' flag.
+       * config.in, configure: Regenerated.
+
+Sun Jan 31 15:24:24 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * buildsym.h, buildsym.c: Convert to ANSI-only.
+
+       * buildsym.h, buildsym.c: Reformat to standard.
+
+       * buildsym.c (merge_symbol_lists): Remove unused variable.
+       (_initialize_buildsym): Remove, does nothing.
+
+1999-01-31 J.T. Conklin  <jtc@redbacknetworks.com>
+
+       * i386-stub.c, m32r-stub.c, m68k-stub.c, sh-stub.c, sparc-stub.c,
+       sparcl-stub, sparclet-stub.c: Change declaration of putDebugChar
+       to include explicit void return type as per documentation.  Fix up
+       occasions where stubs erroneously checked return type.
+
+Sun Jan 31 13:18:33 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       From J.T. Conklin <jtc@redbacknetworks.com>:
+       * remote.c (remote_query): Fix tipo.
+
+Fri Jan 29 15:25:09 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * configure.tgt (v850): Add wildcard to match.
+
+Fri Jan 29 16:44:01 1999  Edith Epstein  <eepstein@sophia.cygnus.com>
+
+       * inferior.h: Ran indent.
+
+       * fork-child.c: Ran indent.
+
+       * infrun.c : Ran indent.
+
+Fri Jan 29 12:57:34 1999  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * infrun.c (_initialize_infrun): Do not stop or print anything
+       when a SIGWINCH is received.
+
+       * Makefile.in (m2-exp.tab.c): Use YACC not BISON.
+       (f-exp.tab.c): Ditto.
+       (jv-exp.tab.c): Ditto.
+       (c-exp.tab.c): Ditto.
+       (YACC): Define as @YACC@.
+
+1999-01-29  Martin Hunt  <hunt@cygnus.com>
+
+       Changes from Keith Seitz  <keiths@cygnus.com>
+        * valops.c (value_assign): Add calls to register_changed_hook and
+        memory_changed_hook to inform UIs that the user has changed
+        the target's registers/memory.
+        * findvar.c (write_register_gen): Remove call to pc_changed_hook.
+        * defs.h: Remove declaration for pc_changed_hook and
+        add declarations for register_changed_hook and
+        memory_changed_hook.
+        * top.c: Ditto.
+
+1999-01-29  Mark Alexander  <marka@cygnus.com>
+
+       * procfs.c (wait_fd): Handle deleted threads correctly.
+
+1999-01-28  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * utils.c (init_page_info): Force window size if running under emacs.
+
+1999-01-27  James Ingham  <jingham@cygnus.com>
+
+       * typeprint.c (whatis_exp): Remove static declaration.
+
+Wed Jan 27 16:50:25 1999  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * hp-psymtab-read.c: Reformat using indent.
+
+Wed Jan 27 13:20:25 1999  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * hp-psymtab-read.c: Reformat comments, update copyright.
+
+Wed Jan 27 15:09:22 1999  Andrew Cagney  <cagney@chook.cygnus.com>
+
+       * mips-tdep.c (mips_gdbarch_init): Trace e_flags from BFD
+       elf_info.
+
+Tue Jan 26 16:02:47 1999  Mark Alexander  <marka@cygnus.com>
+
+       * v850-tdep.c (v850_generic_reg_names, v850e_reg_names,
+       v850_register_names, v850_processor_type_table): Declare tables
+       and structures for handling differences in register names for
+       v850 and v850e.
+       (struct reg_list): Define new structure for creating tables
+       of register bit masks in v850e instrutions.
+       (handle_prepare, handle_pushm): New helpers for v850_scan_prologue.
+       (v850_scan_prologue): Recognize v850e instructions: callt, prepare,
+       and pushm.
+       (v850_target_architecture_hook): New function to set register
+       names based on current machine.
+       (_initialize_v850_tdep): Set up target_architecture_hook.
+       * config/v850/tm-v850.h (v850_register_names): Declare.
+       (REGISTER_NAME): Define to refer to v850_register_names.
+       (SR0_REGNUM, CTBP_REGNUM): Define.
+       (PS_REGNUM): Redefine in terms of SR0_REGNUM.
+
+Tue Jan 26 18:27:26 1999  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
+
+       * Makefile.in (c-exp.tab.c): Use BISON instead of YACC, to pick
+       the correct value from configure output.
+       (jv-exp.tab.c): Ditto.
+       (f-exp.tab.c): Ditto.
+       (m2-exp.tab.c): Ditto.
+
+1999-01-26  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * breakpoint.h (ep_is_exception_catchpoint): Add prototype.
+       * frame.h (select_and_print_frame): Add prototype.
+       * stack.c (func_command): Call select_and_print_frame with correct
+       number of arguments.  Reformat whitespace.
+
+Tue Jan 26 16:53:54 1999  Fernando Nasser  <fnasser@cygnus.com>
+
+       * remote.c (remote_query): fix maximum packet size to account for
+         remote_debug use.
+         (putpkt): add comment to alert about extra byte need.
+
+Mon Jan 25 19:55:30 1999  Mark Alexander  <marka@cygnus.com>
+
+       * sh-tdep.c (sh_target_architecture_hook): Return immediately
+       when a matching machine is found.
+
+Fri Jan 22 09:10:35 1999  Mark Alexander  <marka@cygnus.com>
+
+       * remote-mips.c (mips_initialize): Fix parameters to clear_breakpoint.
+       (common_breakpoint): Restore support for instruction breakpoints
+       on non-LSI targets.
+
+Thu Jan 21 17:16:19 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * stack.c: Close open comment.
+       * symtab.c (find_pc_sect_line): Ditto.
+
+Thu Jan 21 17:51:51 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * procfs.c (init_procfs_ops): New function, fills in procfs_ops,
+       init only nonzero fields, leave to_require_attach and
+       to_require_detach empty, not needed for /proc systems yet.
+       (_initialize_procfs): Call init_procfs_ops.
+
+       From J.T. Conklin <jtc@redbacknetworks.com>:
+       * top.c (init_main): Fix tipo in description of the remotetimeout
+       variable.
+       * breakpoint.c (bpstat_stop_status): Handle systems where
+       DECR_PC_AFTER_BREAK != DECR_PC_AFTER_HW_BREAK.
+
+Thu Jan 21 17:25:46 1999  Mark Alexander  <marka@cygnus.com>
+
+       * mon960-rom.c (_initialize_mon960): Call init_mon960_cmds
+       to fill in mon960_cmds structure properly.
+
+Wed Jan 20 17:53:22 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * remote-sds.c (sds_ops): Define only once.
+       (init_sds_ops, sds_command, _initialize_remote_sds): Declare.
+       (init_sds_ops): Init only non-zero fields.
+
+Wed Jan 20 15:45:15 1999  Mark Alexander  <marka@cygnus.com>
+
+       * h8300-tdep.c (original_register_names, h8300h_register_names,
+       h8300_register_names): Define new variables.
+       (set_register_names): New function to set register names based on
+       current CPU type.
+       (h8300_command, h8300h_command, h8300s_command): Call
+       set_register_names.
+       * config/h8300/tm-h8300.h (h8300_register_names): Declare.
+       (REGISTER_NAME): Define to refer to h8300_register_names.
+
+1999-01-19  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * sol-thread.c abug-rom.c cpu32bug-rom.c dbug-rom.c m32r-rom.c 
+       mac-nat.c mon960-rom.c op50-rom.c ppc-bdm.c remote-adapt.c 
+       remote-array.c remote-bug.c remote-e7000.c remote-eb.c remote-es.c 
+       remote-est.c remote-hms.c remote-mm.c remote-nindy.c remote-nrom.c 
+       remote-os9k.c remote-rdp.c remote-sds.c remote-sim.c remote-st.c 
+       remote-udi.c rom68k-rom.c sh3-rom.c sparcl-tdep.c sparclet-rom.c 
+       v850ice.c win32-nat.c: cosmetic changes to conform to coding
+       standards. 
+
+1999-01-19  Jim Blandy  <jimb@zwingli.cygnus.com>
+
+       Use aclocal to generate GDB's aclocal.m4 script.  
+       * acinclude.m4: New file, containing the hand-written local macro
+       definitions that used to be in aclocal.m4.  Don't sinclude
+       ../bfd/aclocal.m4 any more; running aclocal in this directory will
+       get us the definitions we need.  HOWEVER: Do sinclude
+       ../bfd/acinclude.m4, because we need the definition of
+       BFD_NEED_DECLARATION.
+       * aclocal.m4: Regenerated by aclocal.
+       * configure: Regenerated by autoconf.
+
+Tue Jan 19 10:27:23 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * breakpoint.c (disable_breakpoints_in_shlibs): new parameter,
+       silent, controls whether to print message about removal of shared
+       library breakpoints.
+       * breakpoint.h (disable_breakpoints_in_shlibs): decl updated.
+       * irix5-nat.c (clear_solib): call disable_breakpoints_in_shlibs.
+       * osfsolib.c (clear_solib): ditto.
+       * solib.c (clear_solib): ditto.
+       * somsolib.c (som_solib_restart): update call to
+       disable_breakpoints_in_shlibs.
+
+       * target.h (child_post_attach): only declare if CHILD_POST_ATTACH
+       is define.
+
+Tue Jan 19 18:07:11 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * corelow.c (solib_add_stub): Ditto.
+       (core_file_to_sym_file): Cast make_cleanup parameter.
+
+       * solib.c (symbol_add_stub, solib_map_sections): Change argument
+       to PTR insted of a char*.  Matches catch_errors interface.
+
+Mon Jan 18 14:01:24 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote-array.c (array_open): Don't use fprintf_filtered to send
+       data to the log file.
+
+       * remote-array.c (handle_load_dll): Change argument type to PTR so
+       that it is compatible with catch_errors.
+       * ocd.c (ocd_start_remote): Ditto.
+       * remote-sds.c (sds_start_remote): Ditto.
+
+       * win32-nat.c (win32_child_thread_alive): Namespace proof
+       child_thread_alive.
+       (init_child_ops): Update.
+
+Mon Jan 18 12:03:47 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * remote-rdi.c (arm_rdi_open): Set gdb_hostif.hostosarg and
+       gdb_hostif.dbgarg to NULL instead of stdout.
+       (voiddummy, myprint, mywritec): Use gdb_stdout instead of stdout.
+
+Mon Jan 18 16:40:50 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * ser-ocd.c (ocd_open): Handle Unix case gracefully.
+
+       * target.c (dummy_target): Don't initialize statically.
+       (init_dummy_target): New function, fills in dummy_target.
+       (initialize_targets): Use it.
+       * hpux-thread.c (hpux_thread_ops): Don't initialize statically.
+       (init_hpux_thread_ops): New function, fills in hpux_thread_ops.
+       (_initialize_hpux_thread): Use it.
+       * m3-nat.c (m3_ops): Don't initialize statically.
+       (init_m3_ops): New function, fills in m3_ops.
+       (_initialize_m3): Use it.
+
+1999-01-18  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * sol-thread.c: delete compile time initialization of target_ops
+         (_initialize_sol_thread): initialize target_ops at run time.
+       * hpux-thread.c: added target_ops entry.
+       * m3-nat.c: ditto.
+
+Mon Jan 18 15:19:13 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * procfs.c (procfs_ops): delete compile time initialization.
+       (_initialize_procfs): initialize procfs_ops at run time.
+
+Mon Jan 18 12:51:44 1999  Christopher Faylor <cgf@cygnus.com>
+
+       * configure.in: Ensure that -luser32 is always linked in
+       for cygwin build.
+       * configure: Regenerated.
+
+Mon Jan 18 08:38:05 1999  Mark Alexander  <marka@cygnus.com>
+
+       * values.c (value_virtual_fn_field): Clear the pointed-to
+       offset when casting to the base class.
+
+Mon Jan 18 10:30:51 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * remote-udi.c (init_udi_ops): change non-existant udi_run_ops to
+       udi_ops; delete NULL initializers.
+
+Mon Jan 18 12:03:47 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * serial.c (serial_close): gdb_fclose tages gdb_file** arg, not
+       gdb_file*.
+
+       * f-valprint.c, target.c, gdbarch.c: Pass gdb_stderr not stderr.
+
+Mon Jan 18 10:46:12 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * stack.c (print_frame_info_base): Don't cast call to
+       catch_errors.
+       (print_args_stub): Change char* arg to PTR.
+       * symmisc.c (print_symbol): Ditto.
+       * top.c (quit_cover): Ditto.
+       * remote.c (remote_open_1, remote_start_remote): Ditto.
+       * infrun.c (normal_stop, hook_stop_stub, restore_selected_frame):
+       Ditto.
+
+       * stack.c (backtrace_command): Cast first arg of make_cleanup to
+       make_cleanup_func.
+       * remote.c (remote_kill): Cast putpkt arg to catch_errors_ftype.
+
+Mon Jan 18 08:47:02 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+       
+       * defs.h (catch_errors_ftype): Define.
+       (catch_errors): Replace char* arg with PTR arg.
+       * top.c (catch_errors): Update
+
+       * breakpoint.c (bpstat_stop_status, bpstat_stop_status,
+       delete_breakpoint, breakpoint_re_set): Delete all casts in call to
+       catch_errors.
+       (breakpoint_cond_eval, watchpoint_check,
+       cover_target_enable_exception_callback, breakpoint_re_set_one):
+       Arg is PTR not char*.
+       
+       * breakpoint.c (cover_target_enable_exception_callback): Change
+       type to int. Check for cast values of 0 and -1.  Return a result!
+       (insert_breakpoints): Move declaration of SAL and ARGS to where
+       they are used.
+
+1999-01-16  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * remote.c (remote_query): new function - creates proper interface
+       to the remote protocol "q" command.     
+
+Fri Jan 15 17:11:48 EST 1999  Zdenek Radouch   (radouch@cygnus.com)
+
+       * config/fr30/tm-fr30.h:  Changed ABI to match GCC change
+         (always use pointer for structs passed by value).
+
+1999-01-15  Fernando Nasser  <fnasser@totem.to.cygnus.com>
+
+       * target.h: added entry for target queries (to_query)
+         target.c: ditto.
+
+Thu Jan 14 18:29:17 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * mips-tdep.c (mips_gdbarch_init): fix stream arg in
+       fprintf_unfiltered calls.
+       * remote-mm.c (mm_wait): fix stream arg to gdb_flush.
+       * remote-udi.c (udi_wait): fix stream arg to fwrite.
+       * symmisc.c (maintenance_check_symtabs): fix stream argument to
+       print_address_numeric.
+       
+Wed Jan 13 19:33:16 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * breakpoint.c (insert_breakpoints): insert cast to eliminate
+       warning.
+
+Wed Jan 13 14:59:02 1999  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * infrun.c (set/show scheduler-locking) New command.  Set a
+         mode bit that will control how GDB attempts to control thread
+         scheduling for step, continue, etc.  (resume): make use of
+         the schedule-locking mode.
+       * target.h (struct target_ops): new field to_has_thread_control.
+       * sol-thread.c: initialize target_ops to_has_thread_control.
+       * procfs.c: ditto.
+       * target.c: ditto.
+       * m3-nat.c: ditto.
+       * remote.c: ditto.
+       * hpux-thread.c: ditto.
+       * thread.c: cull duplicate prototypes.  Move prototypes to top.
+       * serial.c: indentation cleanup.
+       * breakpoint.c: add casts to eliminate compiler warnings.
+       
+Tue Jan 12 17:00:00 1999  Edith Epstein  <eepstein@sophia.cygnus.com>
+
+       * inftarg.c (child_create_inferior): fixed HPUXHPPA specific
+         call to fork_inferior. The shell param is now NULL.
+
+1999-01-12  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * monitor.c (init_base_monitor_ops): Whitespace cleanup.
+       (_initialize_remote_monitors): Same.
+
+1999-01-12  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * monitor.c (init_monitor_ops): Initialize the monitor_ops
+       structure if it hasn't already been done.
+
+Tue Jan 12 14:50:10 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * inftarg.c (child_ops): Don't initialize statically.
+       (init_child_ops): New function, fills in child_ops.
+       (_initialize_inftarg): Use it.
+       (child_post_attach): Declare extern.
+       (child_wait): Fix ambiguous parens.
+       (child_attach_to_process): Remove unused local wstatus.
+       (child_insert_fork_catchpoint, child_remove_fork_catchpoint,
+       child_insert_vfork_catchpoint, child_remove_vfork_catchpoint,
+       child_has_forked, child_insert_exec_catchpoint,
+       child_remove_exec_catchpoint): Return a value.
+
+Mon Jan 11 16:43:44 1999  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * remote.c (remote_wait): Add inferior_pid to thread list only
+       if it is not already there.
+
+1999-01-11  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * scm-tags.h: Update FSF's address on copyright notice.
+       * ser-e7kpc.c: Same.
+       * gnu-nat.h: Same.
+
+Mon Jan 11 13:45:57 1999  Stu Grossman  <grossman@babylon-5.cygnus.com>
+
+       * dwarf2read.c (dump_die):  Change stderr to gdb_stderr.
+       * expprint.c (print_subexp):  fprintf => fprintf_unfiltered.
+       * jv-typeprint.c (java_type_print_base):  fputs => fputs_filtered.
+       * stack.c (struct function_bounds):  Remove superfluous `typedef'.
+       * symfile.c (list_overlays_command):  stdout => gdb_stdout.
+       * symmisc.c (maintenance_check_symtabs):  stdout => gdb_stdout.
+       * utils.c (print_spaces):  Make more efficient.
+       
+Mon Jan 11 13:55:51 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * utils (print_spaces): fix arg to strcat; fix formatting.
+
+Fri Jan  8 11:57:24 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * exec.c (exec_ops): Don't initialize statically.
+       (init_exec_ops): New function, fills in exec_ops.
+       (_initialize_exec): Use it.
+
+Thu Jan  7 17:50:15 EST 1999  Zdenek Radouch   (radouch@cygnus.com)
+
+       Beta FR30 port.
+       * fr30-tdep.c
+       * config/fr30/tm-fr30.h
+       
+Wed Jan  6 12:28:35 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * configure.in: Add an --enable-tui argument.  Construct
+       tui/Makefile from tui/Makefile.in.  Use AM_PROG_CC_STDC.  If we
+       have the GUI, then we need this to process libgui.h.
+       (ENABLE_CFLAGS): define and export BUILD_TUI.
+       (AC_CHECK_HEADERS): Add check for term.h.
+       
+       * configure.host (hppa-*-hpux10.20, hppa-*-hpux11.0*): New configs.
+
+       * config.in, configure : regenerated.
+
+       * Makefile.in: Allow the TUI code to be conditionally enabled.
+       (TUI_LIBRARY): New variable, value are set by the configuration
+       script.  Set to the empty string when the TUI isn't enabled.
+       (gdb$(GDBEXT)): Use those, instead of referring to all-tui and
+       tui/libtui.a directly.
+       (BUILD_TUI): build the tui -- only when configured with
+       --enable-tui.
+       (YLWRAP): use ylwrap to avoid problems on systems w/o bison.
+       (gdb$(EXEEXT)): make it dependent on BUILD_TUI.
+       (all-tui): remove dependency from phony target.
+       (c-exp.tab.c): use ylwrap instead of bison.
+       (jv-exp.tab.c): ditto.
+       (f-exp.tab.c): ditto.
+       (m2-exp.tab.c): ditto.
+       (ALLDEPFILES): add somread.c, hp-psymtab-read.c, hp-symtab-read.c.
+       (SFILES): remove the above files
+       (COMMON_OBS): remove somread.o
+       (SFILES): Add the tui files to this, so they get included in etags
+       tables.
+       (gdb$(EXEEXT)): Add all-tui to the list of dependencies, and add
+       tui/libtui.a to the link list.
+       (all-tui): New rule, which does a recursive make in the tui
+       subdir.
+       (tui/libtui.a): When recursing, pass down ${FLAGS_TO_PASS}.  And
+       don't echo the make command.  This is closer to what the other
+       recursions do.
+       (HFILES_NO_SRCDIR): add hpread.h
+       (COMMON_OBS): add hp-psymtab-read.o, hp-symtab-read.o
+        (SFILES): add hp-psymtab-read.c, hp-symtab-read.c add rules for
+       the new files.  Remove hpread.c, hpread.o
+       (gdb$(EXEEXT)): Depend on the actual tui library, not on a
+       fictitious target.  Since the fictitious target never existed,
+       make would always relink.
+       (tui/libtui.a): Always recurse to make sure the library is up to
+       date.
+
+Wed Jan  6 12:05:12 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * remote.c: Pacify --enable-build-warnings, reformat code
+       to conform to standards, fix spelling errors.
+       (ishex, stubhex, record_currthread, etc): Declare.
+       (ishex, stubhex): Declare char arg as int.
+       (pack_string): Comment out, never used but possibly useful.
+       (threadref_to_int, remote_get_threadinfo, etc): Make static.
+
+Wed Jan  6 11:43:32 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       The following changes were made by Elena Zannoni
+       <ezannoni@cygnus.com> and Edith Epstein <eepstein@cygnus.com> as
+       part of a project to merge in changes made by HP.
+
+       * c-exp.y: use external flag hp_som_som_object_present to decide
+       whether code was compiled by HP's compilers.  Add two new C++
+       tokens for true and false.
+        (yylex): check for template name is done differently for the
+       HP/aCC compiler case.  Change some of the template processing code
+       for handling HP aCC templates.  Handle true and false tokens.
+       
+Tue Jan  5 11:13:36 1999  Michael Snyder  <msnyder@cleaver.cygnus.com>
+
+       * remote.c (record_curthread): Must not modify inferior_pid when
+       called from wait_for_inferior.  Instead, if a new thread-id is
+       detected, call add_thread.
+       (MAGIC_NULL_PID): new macro, use instead of the magic number
+       "42000".
+       (remote_find_new_threads): if inferior_pid is unknown, get and use
+       the current thread id.
+       (remote_start_remote): on connecting, attempt to get the current
+       thread id for inferior_pid.
+       (remote_resume): If pid == -1, then resume any-thread (not the
+       current thread specifically).  Also some cosmetic fixups.
+       
+       * thread.c (info_threads_command): don't initialize current_pid 
+       until after call to FIND_NEW_THREADS (which may change inferior_pid).
+       Also some cosmetic fixups.
+       * infrun.c: cosmetic fixups and casts to avoid warnings.
+       * infcmd.c: cosmetic fixups, mainly long lines.
+       
+Tue Jan  5 11:55:57 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * target.c (noprocess): terminate sentence with a period.
+       * breakpoint.c (catch_command_1): ditto.
+
+       * c-valprint.c (c_value_print): remove hack^2 from HP; it causes
+       testsuite losses with no real gain.
+
+       * inferior.h (START_INFERIOR_TRAPS_EXPECTED): restore, but only
+       if tm-*.h hasn't overridden default value.
+
+1999-01-04  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * configure.in: Fix whitespace indentation for --help.
+       * configure: Regenerated.
+
+1999-01-04  Manuel Bouyer <bouyer@antioche.lip6.fr>
+
+       * main.c: Add --write command line option, document -w.
+       * gdb.1: Document --write.
+
+1999-01-04  Jason Molenda  (jsm@bugshack.cygnus.com)
+
+       * configure.in: Require autoconf 2.12.1 or higher.
+       * doc/configure.in: Ditto.
+       * nlm/configure.in: Ditto.
+       * rdi-share/configure.in: Ditto.
+       * testsuite/configure.in: Ditto.
+       * doc/Makefile.in: Don't hardcode $(SHELL).
+       * nlm/Makefile.in: Ditto.
+       * rdi-share/Makefile.in: Ditto.
+       * testsuite/Makefile.in: Ditto.
+
+Mon Jan  4 12:53:03 1999  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * remote-vx.c (init_vx_ops, init_vx_run_ops): Remove unneeded
+       inits of new fields, including ref to bogus field.
+       (vx_ops, vx_run_ops): Make static.
+
+Mon Jan  4 15:05:29 1999  David Taylor  <taylor@texas.cygnus.com>
+
+       * inferior.h (START_INFERIOR_TRAPS_EXPECTED): delete,
+       already defined in tm.h.
+
+       * inftarg.c: change <sys/unistd.h> to <unistd.h> and
+       conditionalize its inclusion.
+       * infttrace.c: ditto.
+
+For older changes see ChangeLog-98
+\f
+Local Variables:
+mode: change-log
+left-margin: 8
+fill-column: 74
+version-control: never
+End:
diff --git a/gdb/proc_api.c b/gdb/proc_api.c
new file mode 100755 (executable)
index 0000000..291ea62
--- /dev/null
@@ -0,0 +1,784 @@
+/*
+ * Pretty-print trace of api calls to the /proc api
+ * (ioctl or read/write calls).
+ * 
+ */
+
+#include "defs.h"
+#include "gdbcmd.h"
+
+#if defined (NEW_PROC_API)
+#define _STRUCTURED_PROC 1
+#endif
+
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/procfs.h>
+#include <sys/proc.h>  /* for struct proc */
+#include <sys/user.h>  /* for struct user */
+#include <fcntl.h>     /* for O_RDWR etc. */
+
+/*  Much of the information used in the /proc interface, particularly for
+    printing status information, is kept as tables of structures of the
+    following form.  These tables can be used to map numeric values to
+    their symbolic names and to a string that describes their specific use. */
+
+struct trans {
+  long value;                   /* The numeric value */
+  char *name;                   /* The equivalent symbolic value */
+  char *desc;                   /* Short description of value */
+};
+
+static int   procfs_trace    = 1;
+/*static int   info_verbose    = 1;*/  /* kludge */
+static FILE *procfs_file     = NULL;
+static char *procfs_filename = "procfs_trace";
+
+static void
+set_procfs_trace_cmd (args, from_tty, c)
+     char *args;
+     int from_tty;
+     struct cmd_list_element *c;
+{
+#if 0  /* not sure what I might actually need to do here, if anything */
+  if (procfs_file)
+    fflush (procfs_file);
+#endif
+}
+
+static void
+set_procfs_file_cmd (args, from_tty, c)
+     char *args;
+     int from_tty;
+     struct cmd_list_element *c;
+{
+  /* Just changed the filename for procfs tracing.
+     If a file was already open, close it.  */
+  if (procfs_file)
+    fclose (procfs_file);
+  procfs_file = NULL;
+}
+
+
+#ifndef NEW_PROC_API
+
+static struct trans ioctl_table[] = {
+#ifdef PIOCACINFO                      /* irix */
+  { PIOCACINFO,    "PIOCACINFO",   "get process account info" },
+#endif
+  { PIOCACTION,    "PIOCACTION",   "get signal action structs" },
+#ifdef PIOCARGUMENTS                   /* osf */
+  { PIOCARGUMENTS, "PIOCARGUMENTS", "command line args" },
+#endif
+#ifdef PIOCAUXV                                /* solaris aux vectors */
+  { PIOCAUXV,      "PIOCAUXV",     "get aux vector" },
+  { PIOCNAUXV,     "PIOCNAUXV",    "get number of aux vector entries" },
+#endif /* AUXV */
+  { PIOCCFAULT,    "PIOCCFAULT",   "clear current fault" },
+  { PIOCCRED,      "PIOCCRED",     "get process credentials" },
+#ifdef PIOCENEVCTRS                    /* irix event counters */
+  { PIOCENEVCTRS,    "PIOCENEVCTRS",    "acquire and start event counters" },
+  { PIOCGETEVCTRL,   "PIOCGETEVCTRL",   "get control info of event counters" },
+  { PIOCGETEVCTRS,   "PIOCGETEVCTRS",   "dump event counters" },
+  { PIOCGETPREVCTRS, "PIOCGETPREVCTRS", "dump event counters & prusage info" },
+  { PIOCRELEVCTRS,   "PIOCRELEVCTRS",   "release/stop event counters" },
+  { PIOCSETEVCTRL,   "PIOCSETEVCTRL",   "set control info of event counters" },
+  { PIOCGETPTIMER,   "PIOCGETPTIMER",   "get process timers" },
+#endif /* irix event counters */
+  { PIOCGENTRY,    "PIOCGENTRY",   "get traced syscall entry set" },
+  { PIOCGETPR,     "PIOCGETPR",    "read struct proc" },
+  { PIOCGETU,      "PIOCGETU",     "read user area" },
+#if defined (PIOCGETUTK) && (defined(KERNEL) || defined(SHOW_UTT)) /* osf */
+  { PIOCGETUTK,  "PIOCGETUTK", "get the utask struct" },
+#endif
+  { PIOCGEXIT,     "PIOCGEXIT",    "get traced syscall exit  set" },
+  { PIOCGFAULT,    "PIOCGFAULT",   "get traced fault set" },
+#ifdef PIOCGFPCR                       /* osf */
+  { PIOCGFPCR,     "PIOCGFPCR",    "get FP control register" },
+  { PIOCSFPCR,     "PIOCSFPCR",    "set FP conrtol register" },
+#endif
+  { PIOCGFPREG,    "PIOCGFPREG",   "get floating point registers" },
+  { PIOCGHOLD,     "PIOCGHOLD",    "get held signal set" },
+  { PIOCGREG,      "PIOCGREG",     "get general registers" },
+  { PIOCGROUPS,    "PIOCGROUPS",   "get supplementary groups" },
+#ifdef PIOCGSPCACT                     /* osf */
+  { PIOCGSPCACT,   "PIOCGSPCACT",  "get special action" },
+  { PIOCSSPCACT,   "PIOCSSPCACT",  "set special action" },
+#endif
+  { PIOCGTRACE,    "PIOCGTRACE",   "get traced signal set" },
+#ifdef PIOCGWATCH                      /* irix watchpoints */
+  { PIOCGWATCH,    "PIOCGWATCH",   "get watchpoint" },
+  { PIOCSWATCH,    "PIOCSWATCH",   "set watchpoint" },
+  { PIOCNWATCH,    "PIOCNWATCH",   "get number of watchpoints" },
+#endif /* irix watchpoints */
+#ifdef PIOCGWIN                                /* solaris sparc */
+  { PIOCGWIN,      "PIOCGWIN",     "get gwindows_t" },
+#endif
+#ifdef PIOCGXREG                       /* solaris sparc extra regs */
+  { PIOCGXREGSIZE, "PIOCXREGSIZE", "get extra register state size" },
+  { PIOCGXREG,     "PIOCGXREG",    "get extra register state" },
+  { PIOCSXREG,     "PIOCSXREG",    "set extra register state" },
+#endif /* XREG */
+  { PIOCKILL,      "PIOCKILL",     "send signal" },
+#ifdef PIOCLDT                         /* solaris i386 */
+  { PIOCLDT,       "PIOCLDT",      "get LDT" },
+  { PIOCNLDT,      "PIOCNLDT",     "get number of LDT entries" },
+#endif
+#ifdef PIOCLSTATUS                     /* solaris and unixware */
+  { PIOCLSTATUS,   "PIOCLSTATUS",  "get status of all lwps" },
+  { PIOCLUSAGE,    "PIOCLUSAGE",   "get resource usage of all lwps" },
+  { PIOCOPENLWP,   "PIOCOPENLWP",  "get lwp file descriptor" },
+  { PIOCLWPIDS,    "PIOCLWPIDS",   "get lwp identifiers" },
+#endif /* LWP */
+  { PIOCMAP,       "PIOCMAP",      "get memory map information" },
+  { PIOCMAXSIG,    "PIOCMAXSIG",   "get max signal number" },
+  { PIOCNICE,      "PIOCNICE",     "set nice priority" },
+  { PIOCNMAP,      "PIOCNMAP",     "get number of memory mappings" },
+  { PIOCOPENM,     "PIOCOPENM",    "open mapped object for reading" },
+#ifdef PIOCOPENMOBS                    /* osf */
+  { PIOCOPENMOBS,  "PIOCOPENMOBS", "open mapped object" },
+#endif
+#ifdef PIOCOPENPD      /* solaris */
+  { PIOCOPENPD,    "PIOCOPENPD",   "get page data file descriptor" },
+#endif
+  { PIOCPSINFO,    "PIOCPSINFO",   "get ps(1) information" },
+  { PIOCRESET,     "PIOCRESET",    "reset process flags" },
+  { PIOCRFORK,     "PIOCRFORK",    "reset inherit-on-fork flag" },
+  { PIOCRRLC,      "PIOCRRLC",     "reset run-on-last-close flag" },
+  { PIOCRUN,       "PIOCRUN",      "make process runnable" },
+#ifdef PIOCSAVECCNTRS                  /* irix */
+  { PIOCSAVECCNTRS, "PIOCSAVECCNTRS", "parent gets child cntrs" },
+#endif
+  { PIOCSENTRY,    "PIOCSENTRY",   "set traced syscall entry set" },
+  { PIOCSET,       "PIOCSET",      "set process flags" },
+  { PIOCSEXIT,     "PIOCSEXIT",    "set traced syscall exit  set" },
+  { PIOCSFAULT,    "PIOCSFAULT",   "set traced fault set" },
+  { PIOCSFORK,     "PIOCSFORK",    "set inherit-on-fork flag" },
+  { PIOCSFPREG,    "PIOCSFPREG",   "set floating point registers" },
+  { PIOCSHOLD,     "PIOCSHOLD",    "set held signal set" },
+  { PIOCSREG,      "PIOCSREG",     "set general registers" },
+  { PIOCSRLC,      "PIOCSRLC",     "set run-on-last-close flag" },
+  { PIOCSSIG,      "PIOCSSIG",     "set current signal" },
+  { PIOCSTATUS,    "PIOCSTATUS",   "get process status" },
+  { PIOCSTOP,      "PIOCSTOP",     "post stop request" },
+  { PIOCSTRACE,    "PIOCSTRACE",   "set traced signal set" },
+  { PIOCUNKILL,    "PIOCUNKILL",   "delete a signal" },
+#ifdef PIOCUSAGE       /* solaris */
+  { PIOCUSAGE,     "PIOCUSAGE",    "get resource usage" },
+#endif
+  { PIOCWSTOP,     "PIOCWSTOP",    "wait for process to stop" },
+
+#ifdef PIOCNTHR                                /* osf threads */
+  { PIOCNTHR,      "PIOCNTHR",     "get thread count" },
+  { PIOCRTINH,     "PIOCRTINH",    "reset inherit-on-thread-creation" },
+  { PIOCSTINH,     "PIOCSTINH",    "set   inherit-on-thread-creation" },
+  { PIOCTLIST,     "PIOCTLIST",    "get thread ids" },
+  { PIOCXPTH,      "PIOCXPTH",     "translate port to thread handle" },
+  { PIOCTRUN,      "PIOCTRUN",     "make thread runnable" },
+  { PIOCTSTATUS,   "PIOCTSTATUS",  "get thread status" },
+  { PIOCTSTOP,     "PIOCTSTOP",    "stop a thread" },
+  /* ... TGTRACE TSTRACE TSSIG TKILL TUNKILL TCFAULT TGFAULT TSFAULT
+     TGFPREG TSFPREG TGREG TSREG TACTION TTERM TABRUN TGENTRY TSENTRY
+     TGEXIT TSEXIT TSHOLD ... thread functions */
+#endif /* osf threads */
+  { -1,            NULL,           NULL }
+};
+
+int
+ioctl_with_trace (fd, opcode, ptr, file, line)
+     int  fd;
+     long opcode;
+     void *ptr;
+     char *file;
+     int  line;
+{
+  int i, ret, arg1;
+
+  if (procfs_trace)
+    {
+      if (procfs_file == NULL && procfs_filename != NULL)
+       procfs_file = fopen (procfs_filename, "a");
+
+      for (i = 0; ioctl_table[i].name != NULL; i++)
+       if (ioctl_table[i].value == opcode)
+         break;
+
+      if (info_verbose)
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "%s:%d -- ", file, line);
+      switch (opcode) {
+      case PIOCSET:
+       arg1 = ptr ? *(long *) ptr : 0;
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "ioctl (PIOCSET,   %s) %s\n", 
+                arg1 == PR_FORK  ? "PR_FORK"  :
+                arg1 == PR_RLC   ? "PR_RLC"   :
+#ifdef PR_ASYNC
+                arg1 == PR_ASYNC ? "PR_ASYNC" :
+#endif
+                "<unknown flag>",
+                info_verbose ? ioctl_table[i].desc : "");
+       break;
+      case PIOCRESET:
+       arg1 = ptr ? *(long *) ptr : 0;
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "ioctl (PIOCRESET, %s) %s\n", 
+                arg1 == PR_FORK  ? "PR_FORK"  :
+                arg1 == PR_RLC   ? "PR_RLC"   :
+#ifdef PR_ASYNC
+                arg1 == PR_ASYNC ? "PR_ASYNC" :
+#endif
+                "<unknown flag>",
+                info_verbose ? ioctl_table[i].desc : "");
+       break;
+      case PIOCSTRACE:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "ioctl (PIOCSTRACE) ");
+       proc_prettyfprint_signalset (procfs_file ? procfs_file : stdout,
+                                    (sigset_t *) ptr, 0);
+       break;
+      case PIOCSFAULT:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "ioctl (%s) ", 
+                opcode == PIOCSFAULT ? "PIOCSFAULT" : "PIOCGFAULT");
+       proc_prettyfprint_faultset (procfs_file ? procfs_file : stdout,
+                                   (fltset_t *) ptr, 0);
+       break;
+      case PIOCSENTRY:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "ioctl (%s) ", 
+                opcode == PIOCSENTRY ? "PIOCSENTRY" : "PIOCGENTRY");
+       proc_prettyfprint_syscalls (procfs_file ? procfs_file : stdout,
+                                   (sysset_t *) ptr, 0);
+       break;
+      case PIOCSEXIT:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "ioctl (%s) ", 
+                opcode == PIOCSEXIT ? "PIOCSEXIT" : "PIOCGEXIT");
+       proc_prettyfprint_syscalls (procfs_file ? procfs_file : stdout,
+                                   (sysset_t *) ptr, 0);
+       break;
+      case PIOCSHOLD:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "ioctl (%s) ", 
+                opcode == PIOCSHOLD ? "PIOCSHOLD" : "PIOCGHOLD");
+       proc_prettyfprint_signalset (procfs_file ? procfs_file : stdout,
+                                    (sigset_t *) ptr, 0);
+       break;
+      case PIOCSSIG:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "ioctl (PIOCSSIG) ");
+       proc_prettyfprint_signal (procfs_file ? procfs_file : stdout,
+                                 ptr ? ((siginfo_t *) ptr)->si_signo : 0, 
+                                 0);
+       fprintf (procfs_file ? procfs_file : stdout, "\n");
+       break;
+      case PIOCRUN:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "ioctl (PIOCRUN) ");
+       
+       arg1 = ptr ? *(long *) ptr : 0;
+       if (arg1 & PRCSIG)
+         fprintf (procfs_file ? procfs_file : stdout, "clearSig ");
+       if (arg1 & PRCFAULT)
+         fprintf (procfs_file ? procfs_file : stdout, "clearFlt ");
+       if (arg1 & PRSTRACE)
+         fprintf (procfs_file ? procfs_file : stdout, "setTrace ");
+       if (arg1 & PRSHOLD)
+         fprintf (procfs_file ? procfs_file : stdout, "setHold ");
+       if (arg1 & PRSFAULT)
+         fprintf (procfs_file ? procfs_file : stdout, "setFlt ");
+       if (arg1 & PRSVADDR)
+         fprintf (procfs_file ? procfs_file : stdout, "setVaddr ");
+       if (arg1 & PRSTEP)
+         fprintf (procfs_file ? procfs_file : stdout, "step ");
+       if (arg1 & PRSABORT)
+         fprintf (procfs_file ? procfs_file : stdout, "syscallAbort ");
+       if (arg1 & PRSTOP)
+         fprintf (procfs_file ? procfs_file : stdout, "stopReq ");
+         
+       fprintf (procfs_file ? procfs_file : stdout, "\n");
+       break;
+      case PIOCKILL:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "ioctl (PIOCKILL) ");
+       proc_prettyfprint_signal (procfs_file ? procfs_file : stdout,
+                                 ptr ? *(long *) ptr : 0, 0);
+       fprintf (procfs_file ? procfs_file : stdout, "\n");
+       break;
+#ifdef PIOCSSPCACT
+      case PIOCSSPCACT:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "ioctl (PIOCSSPCACT) ");
+       arg1 = ptr ? *(long *) ptr : 0;
+       if (arg1 & PRFS_STOPFORK)
+         fprintf (procfs_file ? procfs_file : stdout, "stopFork ");
+       if (arg1 & PRFS_STOPEXEC)
+         fprintf (procfs_file ? procfs_file : stdout, "stopExec ");
+       if (arg1 & PRFS_STOPTERM)
+         fprintf (procfs_file ? procfs_file : stdout, "stopTerm ");
+       if (arg1 & PRFS_STOPTCR)
+         fprintf (procfs_file ? procfs_file : stdout, "stopThreadCreate ");
+       if (arg1 & PRFS_STOPTTERM)
+         fprintf (procfs_file ? procfs_file : stdout, "stopThreadTerm ");
+       if (arg1 & PRFS_KOLC)
+         fprintf (procfs_file ? procfs_file : stdout, "killOnLastClose ");
+       fprintf (procfs_file ? procfs_file : stdout, "\n");
+       break;
+#endif /* PIOCSSPCACT */
+      default:
+       if (ioctl_table[i].name)
+         fprintf (procfs_file ? procfs_file : stdout, 
+                  "ioctl (%s) %s\n", 
+                  ioctl_table[i].name,
+                  info_verbose ? ioctl_table[i].desc : "");
+       else
+         fprintf (procfs_file ? procfs_file : stdout, 
+                  "ioctl (<unknown %ld (0x%lx)) \n", opcode, opcode);
+       break;
+      }
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+  ret = ioctl (fd, opcode, ptr);
+  if (procfs_trace && ret < 0)
+    {
+      fprintf (procfs_file ? procfs_file : stdout, 
+              "[ioctl (%s) FAILED!]\n",
+              ioctl_table[i].name != NULL ? 
+              ioctl_table[i].name : "<unknown>");
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+
+  return ret;
+}
+
+#else  /* NEW_PROC_API */
+
+static struct trans rw_table[] = {
+#ifdef PCAGENT                 /* solaris */
+  { PCAGENT,  "PCAGENT",  "create agent lwp with regs from argument" },
+#endif
+  { PCCFAULT, "PCCFAULT", "clear current fault" },
+#ifdef PCCSIG                  /* solaris */
+  { PCCSIG,   "PCCSIG",   "clear current signal" },
+#endif
+  { PCDSTOP,  "PCDSTOP",  "post stop request" },
+  { PCKILL,   "PCKILL",   "post a signal" },
+  { PCNICE,   "PCNICE",   "set nice priority" },
+#ifdef PCREAD                  /* solaris */
+  { PCREAD,   "PCREAD",   "read from the address space" },
+  { PCWRITE,  "PCWRITE",  "write to the address space" },
+#endif
+#ifdef PCRESET                 /* unixware */
+  { PCRESET,  "PCRESET",  "unset modes" },
+#endif
+  { PCRUN,    "PCRUN",    "make process/lwp runnable" },
+#ifdef PCSASRS                 /* solaris 2.7 only */
+  { PCSASRS,  "PCSASRS",  "set ancillary state registers" },
+#endif
+#ifdef PCSCRED                 /* solaris */
+  { PCSCRED,  "PCSCRED",  "set process credentials" },
+#endif
+  { PCSENTRY, "PCSENTRY", "set traced syscall entry set" },
+  { PCSET,    "PCSET",    "set modes" },
+  { PCSEXIT,  "PCSEXIT",  "set traced syscall exit  set" },
+  { PCSFAULT, "PCSFAULT", "set traced fault set" },
+  { PCSFPREG, "PCSFPREG", "set floating point registers" },
+  { PCSHOLD,  "PCSHOLD",  "set signal mask" },
+  { PCSREG,   "PCSREG",   "set general registers" },
+  { PCSSIG,   "PCSSIG",   "set current signal" },
+  { PCSTOP,   "PCSTOP",   "post stop request and wait" },
+  { PCSTRACE, "PCSTRACE", "set traced signal set" },
+#ifdef PCSVADDR                        /* solaris */
+  { PCSVADDR, "PCSVADDR", "set pc virtual address" },
+#endif
+#ifdef PCSXREG                 /* solaris sparc only */
+  { PCSXREG,  "PCSXREG",  "set extra registers" },
+#endif
+#ifdef PCTWSTOP                        /* solaris */
+  { PCTWSTOP, "PCTWSTOP", "wait for stop, with timeout arg" },
+#endif
+  { PCUNKILL, "PCUNKILL", "delete a pending signal" },
+#ifdef PCUNSET                 /* solaris */
+  { PCUNSET,  "PCUNSET",  "unset modes" },
+#endif
+#ifdef PCWATCH                 /* solaris */
+  { PCWATCH,  "PCWATCH",  "set/unset watched memory area" },
+#endif
+  { PCWSTOP,  "PCWSTOP",  "wait for process/lwp to stop, no timeout" },
+  { 0,        NULL,      NULL }
+};
+
+static off_t lseek_offset;
+
+int
+write_with_trace (fd, arg, len, file, line)
+     int  fd;
+     long *arg;
+     size_t len;
+     char *file;
+     int  line;
+{
+  int  i;
+  long opcode = arg[0];
+  int ret;
+
+  if (procfs_trace)
+    {
+      if (procfs_file == NULL && procfs_filename != NULL)
+       procfs_file = fopen (procfs_filename, "a");
+
+      for (i = 0; rw_table[i].name != NULL; i++)
+       if (rw_table[i].value == opcode)
+         break;
+
+      if (info_verbose)
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "%s:%d -- ", file, line);
+      switch (opcode) {
+      case PCSET:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "write (PCSET,   %s) %s\n", 
+                arg[1] == PR_FORK  ? "PR_FORK"  :
+                arg[1] == PR_RLC   ? "PR_RLC"   :
+#ifdef PR_ASYNC
+                arg[1] == PR_ASYNC ? "PR_ASYNC" :
+#endif
+                "<unknown flag>",
+                info_verbose ? rw_table[i].desc : "");
+       break;
+#ifdef PCUNSET
+      case PCUNSET:
+#endif
+#ifdef PCRESET
+      case PCRESET:
+#endif
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "write (PCRESET, %s) %s\n", 
+                arg[1] == PR_FORK  ? "PR_FORK"  :
+                arg[1] == PR_RLC   ? "PR_RLC"   :
+#ifdef PR_ASYNC
+                arg[1] == PR_ASYNC ? "PR_ASYNC" :
+#endif
+                "<unknown flag>",
+                info_verbose ? rw_table[i].desc : "");
+       break;
+      case PCSTRACE:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "write (PCSTRACE) ");
+       proc_prettyfprint_signalset (procfs_file ? procfs_file : stdout,
+                                    (sigset_t *) &arg[1], 0);
+       break;
+      case PCSFAULT:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "write (PCSFAULT) ");
+       proc_prettyfprint_faultset (procfs_file ? procfs_file : stdout,
+                                   (fltset_t *) &arg[1], 0);
+       break;
+      case PCSENTRY:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "write (PCSENTRY) ");
+       proc_prettyfprint_syscalls (procfs_file ? procfs_file : stdout,
+                                   (sysset_t *) &arg[1], 0);
+       break;
+      case PCSEXIT:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "write (PCSEXIT) ");
+       proc_prettyfprint_syscalls (procfs_file ? procfs_file : stdout,
+                                   (sysset_t *) &arg[1], 0);
+       break;
+      case PCSHOLD:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "write (PCSHOLD) ");
+       proc_prettyfprint_signalset (procfs_file ? procfs_file : stdout,
+                                    (sigset_t *) &arg[1], 0);
+       break;
+      case PCSSIG:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "write (PCSSIG) ");
+       proc_prettyfprint_signal (procfs_file ? procfs_file : stdout,
+                                 arg[1] ? ((siginfo_t *) &arg[1])->si_signo 
+                                        : 0, 
+                                 0);
+       fprintf (procfs_file ? procfs_file : stdout, "\n");
+       break;
+      case PCRUN:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "write (PCRUN) ");
+       if (arg[1] & PRCSIG)
+         fprintf (procfs_file ? procfs_file : stdout, "clearSig ");
+       if (arg[1] & PRCFAULT)
+         fprintf (procfs_file ? procfs_file : stdout, "clearFlt ");
+       if (arg[1] & PRSTEP)
+         fprintf (procfs_file ? procfs_file : stdout, "step ");
+       if (arg[1] & PRSABORT)
+         fprintf (procfs_file ? procfs_file : stdout, "syscallAbort ");
+       if (arg[1] & PRSTOP)
+         fprintf (procfs_file ? procfs_file : stdout, "stopReq ");
+         
+       fprintf (procfs_file ? procfs_file : stdout, "\n");
+       break;
+      case PCKILL:
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "write (PCKILL) ");
+       proc_prettyfprint_signal (procfs_file ? procfs_file : stdout,
+                                 arg[1], 0);
+       fprintf (procfs_file ? procfs_file : stdout, "\n");
+       break;
+      default:
+       {
+         static unsigned char break_insn[] = BREAKPOINT;
+
+         if (len == sizeof (break_insn) &&
+             memcmp (arg, &break_insn, len) == 0)
+           fprintf (procfs_file ? procfs_file : stdout, 
+                    "write (<breakpoint at 0x%08x>) \n", lseek_offset);
+         else if (rw_table[i].name)
+           fprintf (procfs_file ? procfs_file : stdout, 
+                    "write (%s) %s\n", 
+                    rw_table[i].name, 
+                    info_verbose ? rw_table[i].desc : "");
+         else
+           {
+             if (lseek_offset != -1)
+               fprintf (procfs_file ? procfs_file : stdout, 
+                        "write (<unknown>, %d bytes at 0x%08x) \n", 
+                        len, lseek_offset);
+             else
+               fprintf (procfs_file ? procfs_file : stdout, 
+                        "write (<unknown>, %d bytes) \n", len);
+           }
+         break;
+       }
+      }
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+  ret = write (fd, arg, len);
+  if (procfs_trace && ret != len)
+    {
+      fprintf (procfs_file ? procfs_file : stdout, 
+              "[write (%s) FAILED!\n",
+              rw_table[i].name != NULL ? 
+              rw_table[i].name : "<unknown>");
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+
+  lseek_offset = -1;
+  return ret;
+}
+
+off_t
+lseek_with_trace (fd, offset, whence, file, line)
+     int fd;
+     off_t offset;
+     int whence;
+     char *file;
+     int line;
+{
+  off_t ret;
+
+#if 0  /* don't need output, just need address */
+  if (procfs_trace)
+    {
+      if (procfs_file == NULL && procfs_filename != NULL)
+       procfs_file = fopen (procfs_filename, "a");
+
+      if (info_verbose)
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "%s:%d -- ", file, line);
+      fprintf (procfs_file ? procfs_file : stdout, 
+              "lseek (0x%08x, %s) \n", offset, 
+              whence == SEEK_SET ? "SEEK_SET" :
+              whence == SEEK_CUR ? "SEEK_CUR" : 
+              whence == SEEK_END ? "SEEK_END" :
+              "<unknown whence>");
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+#endif
+  ret = lseek (fd, offset, whence);
+  lseek_offset = ret;
+  if (procfs_trace && ret == -1)
+    {
+      if (procfs_file == NULL && procfs_filename != NULL)
+       procfs_file = fopen (procfs_filename, "a");
+
+      fprintf (procfs_file ? procfs_file : stdout, 
+              "[lseek (0x%08x) FAILED!\n", offset);
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+
+  return ret;
+}
+
+#endif /* NEW_PROC_API */
+
+int
+open_with_trace (filename, mode, file, line)
+     char *filename;
+     int   mode;
+     char *file;
+     int   line;
+{
+  int ret = open (filename, mode);
+
+  if (procfs_trace)
+    {
+      if (procfs_file == NULL && procfs_filename != NULL)
+       procfs_file = fopen (procfs_filename, "a");
+
+      if (info_verbose)
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "%s:%d -- ", file, line);
+      fprintf (procfs_file ? procfs_file : stdout, 
+              "%d = open (%s, ", ret, filename);
+      if (mode == O_RDONLY)
+       fprintf (procfs_file ? procfs_file : stdout, "O_RDONLY) %d\n", line);
+      else if (mode == O_WRONLY)
+       fprintf (procfs_file ? procfs_file : stdout, "O_WRONLY) %d\n", line);
+      else if (mode == O_RDWR)
+       fprintf (procfs_file ? procfs_file : stdout, "O_RDWR)   %d\n", line);
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+
+  return ret;
+}
+
+int
+close_with_trace (fd, file, line)
+     int   fd;
+     char *file;
+     int   line;
+{
+  int ret = close (fd);
+
+  if (procfs_trace)
+    {
+      if (procfs_file == NULL && procfs_filename != NULL)
+       procfs_file = fopen (procfs_filename, "a");
+
+      if (info_verbose)
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "%s:%d -- ", file, line);
+      fprintf (procfs_file ? procfs_file : stdout, 
+              "%d = close (%d)\n", ret, fd);
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+
+  return ret;
+}
+
+int
+wait_with_trace (wstat, file, line)
+     int  *wstat;
+     char *file;
+     int   line;
+{
+  int ret, lstat = 0;
+
+  if (procfs_trace)
+    {
+      if (procfs_file == NULL && procfs_filename != NULL)
+       procfs_file = fopen (procfs_filename, "a");
+
+      if (info_verbose)
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "%s:%d -- ", file, line);
+      fprintf (procfs_file ? procfs_file : stdout, 
+              "wait (line %d) ", line);
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+  ret = wait (&lstat);
+  if (procfs_trace)
+    {
+      fprintf (procfs_file ? procfs_file : stdout, 
+              "returned pid %d, status 0x%x\n", ret, lstat);
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+  if (wstat)
+    *wstat = lstat;
+
+  return ret;
+}
+
+void
+procfs_note (msg, file, line)
+     char *msg;
+     char *file;
+     int   line;
+{
+  if (procfs_trace)
+    {
+      if (procfs_file == NULL && procfs_filename != NULL)
+       procfs_file = fopen (procfs_filename, "a");
+
+      if (info_verbose)
+       fprintf (procfs_file ? procfs_file : stdout, 
+                "%s:%d -- ", file, line);
+      fprintf (procfs_file ? procfs_file : stdout, msg);
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+}
+
+void
+proc_prettyfprint_status (flags, why, what, thread)
+     long flags;
+     int  why;
+     int  what;
+     int  thread;
+{
+  if (procfs_trace)
+    {
+      if (procfs_file == NULL && procfs_filename != NULL)
+       procfs_file = fopen (procfs_filename, "a");
+
+      if (thread)
+       fprintf (procfs_file ? procfs_file : stdout,
+                "Thread %d: ", thread);
+
+      proc_prettyfprint_flags (procfs_file ? procfs_file : stdout, 
+                              flags, 0);
+
+      if (flags & (PR_STOPPED | PR_ISTOP))
+       proc_prettyfprint_why (procfs_file ? procfs_file : stdout, 
+                              why, what, 0);
+      if (procfs_file)
+       fflush (procfs_file);
+    }
+}
+
+
+void
+_initialize_proc_api ()
+{
+  struct cmd_list_element *c;
+
+  c = add_set_cmd ("procfs-trace", no_class,
+                  var_boolean, (char *) &procfs_trace, 
+                  "Set tracing for /proc ioctl calls.\n", &setlist);
+
+  add_show_from_set (c, &showlist);
+  c->function.sfunc = set_procfs_trace_cmd;
+
+  c = add_set_cmd ("procfs-file", no_class, var_filename,
+                  (char *) &procfs_filename, 
+                  "Set filename for /proc tracefile.\n", &setlist);
+
+  add_show_from_set (c, &showlist);
+  c->function.sfunc = set_procfs_file_cmd;
+
+#ifdef TRACE_PROCFS
+  if (procfs_file == NULL && procfs_filename != NULL)
+    procfs_file = fopen (procfs_filename, "a");
+#endif
+}
diff --git a/gdb/proc_events.c b/gdb/proc_events.c
new file mode 100755 (executable)
index 0000000..11b865d
--- /dev/null
@@ -0,0 +1,1785 @@
+/*
+ * Pretty-print "events of interest".
+ *
+ * This module includes pretty-print routines for:
+ *     faults  (hardware exceptions):
+ *     signals (software interrupts):
+ *     syscalls
+ *
+ * FIXME: At present, the syscall translation table must be initialized, 
+ * which is not true of the other translation tables.
+ */
+
+#include "defs.h"
+
+#if defined (NEW_PROC_API)
+#define _STRUCTURED_PROC 1
+#endif
+
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/procfs.h>
+#include <sys/syscall.h>
+#include <sys/fault.h>
+
+/*  Much of the information used in the /proc interface, particularly for
+    printing status information, is kept as tables of structures of the
+    following form.  These tables can be used to map numeric values to
+    their symbolic names and to a string that describes their specific use. */
+
+struct trans {
+  int value;                    /* The numeric value */
+  char *name;                   /* The equivalent symbolic value */
+  char *desc;                   /* Short description of value */
+};
+
+/*
+ * pretty print syscalls
+ */
+
+/* Ugh -- Unixware and Solaris spell these differently! */
+
+#ifdef  SYS_lwpcreate
+#define SYS_lwp_create SYS_lwpcreate
+#endif
+
+#ifdef  SYS_lwpexit
+#define SYS_lwp_exit SYS_lwpexit
+#endif
+
+#ifdef  SYS_lwpwait
+#define SYS_lwp_wait SYS_lwpwait
+#endif
+
+#ifdef  SYS_lwpself
+#define SYS_lwp_self SYS_lwpself
+#endif
+
+#ifdef  SYS_lwpinfo
+#define SYS_lwp_info SYS_lwpinfo
+#endif
+
+#ifdef  SYS_lwpprivate
+#define SYS_lwp_private SYS_lwpprivate
+#endif
+
+#ifdef  SYS_lwpkill
+#define SYS_lwp_kill SYS_lwpkill
+#endif
+
+#ifdef  SYS_lwpsuspend
+#define SYS_lwp_suspend SYS_lwpsuspend
+#endif
+
+#ifdef  SYS_lwpcontinue
+#define SYS_lwp_continue SYS_lwpcontinue
+#endif
+
+
+/* Syscall translation table. */
+
+#define MAX_SYSCALLS 262       /* pretty arbitrary */
+static char * syscall_table[MAX_SYSCALLS];
+
+void
+init_syscall_table (void)
+{
+#if defined (SYS_BSD_getime)
+  syscall_table[SYS_BSD_getime] = "BSD_getime";
+#endif
+#if defined (SYS_BSDgetpgrp)
+  syscall_table[SYS_BSDgetpgrp] = "BSDgetpgrp";
+#endif
+#if defined (SYS_BSDsetpgrp)
+  syscall_table[SYS_BSDsetpgrp] = "BSDsetpgrp";
+#endif
+#if defined (SYS_acancel)
+  syscall_table[SYS_acancel] = "acancel";
+#endif
+#if defined (SYS_accept)
+  syscall_table[SYS_accept] = "accept";
+#endif
+#if defined (SYS_access)
+  syscall_table[SYS_access] = "access";
+#endif
+#if defined (SYS_acct)
+  syscall_table[SYS_acct] = "acct";
+#endif
+#if defined (SYS_acl)
+  syscall_table[SYS_acl] = "acl";
+#endif
+#if defined (SYS_aclipc)
+  syscall_table[SYS_aclipc] = "aclipc";
+#endif
+#if defined (SYS_adjtime)
+  syscall_table[SYS_adjtime] = "adjtime";
+#endif
+#if defined (SYS_afs_syscall)
+  syscall_table[SYS_afs_syscall] = "afs_syscall";
+#endif
+#if defined (SYS_alarm)
+  syscall_table[SYS_alarm] = "alarm";
+#endif
+#if defined (SYS_alt_plock)
+  syscall_table[SYS_alt_plock] = "alt_plock";
+#endif
+#if defined (SYS_alt_sigpending)
+  syscall_table[SYS_alt_sigpending] = "alt_sigpending";
+#endif
+#if defined (SYS_async)
+  syscall_table[SYS_async] = "async";
+#endif
+#if defined (SYS_async_daemon)
+  syscall_table[SYS_async_daemon] = "async_daemon";
+#endif
+#if defined (SYS_audcntl)
+  syscall_table[SYS_audcntl] = "audcntl";
+#endif
+#if defined (SYS_audgen)
+  syscall_table[SYS_audgen] = "audgen";
+#endif
+#if defined (SYS_auditbuf)
+  syscall_table[SYS_auditbuf] = "auditbuf";
+#endif
+#if defined (SYS_auditctl)
+  syscall_table[SYS_auditctl] = "auditctl";
+#endif
+#if defined (SYS_auditdmp)
+  syscall_table[SYS_auditdmp] = "auditdmp";
+#endif
+#if defined (SYS_auditevt)
+  syscall_table[SYS_auditevt] = "auditevt";
+#endif
+#if defined (SYS_auditlog)
+  syscall_table[SYS_auditlog] = "auditlog";
+#endif
+#if defined (SYS_auditsys)
+  syscall_table[SYS_auditsys] = "auditsys";
+#endif
+#if defined (SYS_bind)
+  syscall_table[SYS_bind] = "bind";
+#endif
+#if defined (SYS_block)
+  syscall_table[SYS_block] = "block";
+#endif
+#if defined (SYS_brk)
+  syscall_table[SYS_brk] = "brk";
+#endif
+#if defined (SYS_cachectl)
+  syscall_table[SYS_cachectl] = "cachectl";
+#endif
+#if defined (SYS_cacheflush)
+  syscall_table[SYS_cacheflush] = "cacheflush";
+#endif
+#if defined (SYS_cancelblock)
+  syscall_table[SYS_cancelblock] = "cancelblock";
+#endif
+#if defined (SYS_cg_bind)
+  syscall_table[SYS_cg_bind] = "cg_bind";
+#endif
+#if defined (SYS_cg_current)
+  syscall_table[SYS_cg_current] = "cg_current";
+#endif
+#if defined (SYS_cg_ids)
+  syscall_table[SYS_cg_ids] = "cg_ids";
+#endif
+#if defined (SYS_cg_info)
+  syscall_table[SYS_cg_info] = "cg_info";
+#endif
+#if defined (SYS_cg_memloc)
+  syscall_table[SYS_cg_memloc] = "cg_memloc";
+#endif
+#if defined (SYS_cg_processors)
+  syscall_table[SYS_cg_processors] = "cg_processors";
+#endif
+#if defined (SYS_chdir)
+  syscall_table[SYS_chdir] = "chdir";
+#endif
+#if defined (SYS_chflags)
+  syscall_table[SYS_chflags] = "chflags";
+#endif
+#if defined (SYS_chmod)
+  syscall_table[SYS_chmod] = "chmod";
+#endif
+#if defined (SYS_chown)
+  syscall_table[SYS_chown] = "chown";
+#endif
+#if defined (SYS_chroot)
+  syscall_table[SYS_chroot] = "chroot";
+#endif
+#if defined (SYS_clocal)
+  syscall_table[SYS_clocal] = "clocal";
+#endif
+#if defined (SYS_clock_getres)
+  syscall_table[SYS_clock_getres] = "clock_getres";
+#endif
+#if defined (SYS_clock_gettime)
+  syscall_table[SYS_clock_gettime] = "clock_gettime";
+#endif
+#if defined (SYS_clock_settime)
+  syscall_table[SYS_clock_settime] = "clock_settime";
+#endif
+#if defined (SYS_close)
+  syscall_table[SYS_close] = "close";
+#endif
+#if defined (SYS_connect)
+  syscall_table[SYS_connect] = "connect";
+#endif
+#if defined (SYS_context)
+  syscall_table[SYS_context] = "context";
+#endif
+#if defined (SYS_creat)
+  syscall_table[SYS_creat] = "creat";
+#endif
+#if defined (SYS_creat64)
+  syscall_table[SYS_creat64] = "creat64";
+#endif
+#if defined (SYS_devstat)
+  syscall_table[SYS_devstat] = "devstat";
+#endif
+#if defined (SYS_dmi)
+  syscall_table[SYS_dmi] = "dmi";
+#endif
+#if defined (SYS_door)
+  syscall_table[SYS_door] = "door";
+#endif
+#if defined (SYS_dshmsys)
+  syscall_table[SYS_dshmsys] = "dshmsys";
+#endif
+#if defined (SYS_dup)
+  syscall_table[SYS_dup] = "dup";
+#endif
+#if defined (SYS_dup2)
+  syscall_table[SYS_dup2] = "dup2";
+#endif
+#if defined (SYS_evsys)
+  syscall_table[SYS_evsys] = "evsys";
+#endif
+#if defined (SYS_evtrapret)
+  syscall_table[SYS_evtrapret] = "evtrapret";
+#endif
+#if defined (SYS_exec)
+  syscall_table[SYS_exec] = "exec";
+#endif
+#if defined (SYS_exec_with_loader)
+  syscall_table[SYS_exec_with_loader] = "exec_with_loader";
+#endif
+#if defined (SYS_execv)
+  syscall_table[SYS_execv] = "execv";
+#endif
+#if defined (SYS_execve)
+  syscall_table[SYS_execve] = "execve";
+#endif
+#if defined (SYS_exit)
+  syscall_table[SYS_exit] = "exit";
+#endif
+#if defined (SYS_exportfs)
+  syscall_table[SYS_exportfs] = "exportfs";
+#endif
+#if defined (SYS_facl)
+  syscall_table[SYS_facl] = "facl";
+#endif
+#if defined (SYS_fchdir)
+  syscall_table[SYS_fchdir] = "fchdir";
+#endif
+#if defined (SYS_fchflags)
+  syscall_table[SYS_fchflags] = "fchflags";
+#endif
+#if defined (SYS_fchmod)
+  syscall_table[SYS_fchmod] = "fchmod";
+#endif
+#if defined (SYS_fchown)
+  syscall_table[SYS_fchown] = "fchown";
+#endif
+#if defined (SYS_fchroot)
+  syscall_table[SYS_fchroot] = "fchroot";
+#endif
+#if defined (SYS_fcntl)
+  syscall_table[SYS_fcntl] = "fcntl";
+#endif
+#if defined (SYS_fdatasync)
+  syscall_table[SYS_fdatasync] = "fdatasync";
+#endif
+#if defined (SYS_fdevstat)
+  syscall_table[SYS_fdevstat] = "fdevstat";
+#endif
+#if defined (SYS_fdsync)
+  syscall_table[SYS_fdsync] = "fdsync";
+#endif
+#if defined (SYS_filepriv)
+  syscall_table[SYS_filepriv] = "filepriv";
+#endif
+#if defined (SYS_flock)
+  syscall_table[SYS_flock] = "flock";
+#endif
+#if defined (SYS_flvlfile)
+  syscall_table[SYS_flvlfile] = "flvlfile";
+#endif
+#if defined (SYS_fork)
+  syscall_table[SYS_fork] = "fork";
+#endif
+#if defined (SYS_fork1)
+  syscall_table[SYS_fork1] = "fork1";
+#endif
+#if defined (SYS_forkall)
+  syscall_table[SYS_forkall] = "forkall";
+#endif
+#if defined (SYS_fpathconf)
+  syscall_table[SYS_fpathconf] = "fpathconf";
+#endif
+#if defined (SYS_fstat)
+  syscall_table[SYS_fstat] = "fstat";
+#endif
+#if defined (SYS_fstat64)
+  syscall_table[SYS_fstat64] = "fstat64";
+#endif
+#if defined (SYS_fstatfs)
+  syscall_table[SYS_fstatfs] = "fstatfs";
+#endif
+#if defined (SYS_fstatvfs)
+  syscall_table[SYS_fstatvfs] = "fstatvfs";
+#endif
+#if defined (SYS_fstatvfs64)
+  syscall_table[SYS_fstatvfs64] = "fstatvfs64";
+#endif
+#if defined (SYS_fsync)
+  syscall_table[SYS_fsync] = "fsync";
+#endif
+#if defined (SYS_ftruncate)
+  syscall_table[SYS_ftruncate] = "ftruncate";
+#endif
+#if defined (SYS_ftruncate64)
+  syscall_table[SYS_ftruncate64] = "ftruncate64";
+#endif
+#if defined (SYS_fuser)
+  syscall_table[SYS_fuser] = "fuser";
+#endif
+#if defined (SYS_fxstat)
+  syscall_table[SYS_fxstat] = "fxstat";
+#endif
+#if defined (SYS_get_sysinfo)
+  syscall_table[SYS_get_sysinfo] = "get_sysinfo";
+#endif
+#if defined (SYS_getaddressconf)
+  syscall_table[SYS_getaddressconf] = "getaddressconf";
+#endif
+#if defined (SYS_getcontext)
+  syscall_table[SYS_getcontext] = "getcontext";
+#endif
+#if defined (SYS_getdents)
+  syscall_table[SYS_getdents] = "getdents";
+#endif
+#if defined (SYS_getdents64)
+  syscall_table[SYS_getdents64] = "getdents64";
+#endif
+#if defined (SYS_getdirentries)
+  syscall_table[SYS_getdirentries] = "getdirentries";
+#endif
+#if defined (SYS_getdomainname)
+  syscall_table[SYS_getdomainname] = "getdomainname";
+#endif
+#if defined (SYS_getdtablesize)
+  syscall_table[SYS_getdtablesize] = "getdtablesize";
+#endif
+#if defined (SYS_getfh)
+  syscall_table[SYS_getfh] = "getfh";
+#endif
+#if defined (SYS_getfsstat)
+  syscall_table[SYS_getfsstat] = "getfsstat";
+#endif
+#if defined (SYS_getgid)
+  syscall_table[SYS_getgid] = "getgid";
+#endif
+#if defined (SYS_getgroups)
+  syscall_table[SYS_getgroups] = "getgroups";
+#endif
+#if defined (SYS_gethostid)
+  syscall_table[SYS_gethostid] = "gethostid";
+#endif
+#if defined (SYS_gethostname)
+  syscall_table[SYS_gethostname] = "gethostname";
+#endif
+#if defined (SYS_getitimer)
+  syscall_table[SYS_getitimer] = "getitimer";
+#endif
+#if defined (SYS_getksym)
+  syscall_table[SYS_getksym] = "getksym";
+#endif
+#if defined (SYS_getlogin)
+  syscall_table[SYS_getlogin] = "getlogin";
+#endif
+#if defined (SYS_getmnt)
+  syscall_table[SYS_getmnt] = "getmnt";
+#endif
+#if defined (SYS_getmsg)
+  syscall_table[SYS_getmsg] = "getmsg";
+#endif
+#if defined (SYS_getpagesize)
+  syscall_table[SYS_getpagesize] = "getpagesize";
+#endif
+#if defined (SYS_getpeername)
+  syscall_table[SYS_getpeername] = "getpeername";
+#endif
+#if defined (SYS_getpgid)
+  syscall_table[SYS_getpgid] = "getpgid";
+#endif
+#if defined (SYS_getpgrp)
+  syscall_table[SYS_getpgrp] = "getpgrp";
+#endif
+#if defined (SYS_getpid)
+  syscall_table[SYS_getpid] = "getpid";
+#endif
+#if defined (SYS_getpmsg)
+  syscall_table[SYS_getpmsg] = "getpmsg";
+#endif
+#if defined (SYS_getpriority)
+  syscall_table[SYS_getpriority] = "getpriority";
+#endif
+#if defined (SYS_getrlimit)
+  syscall_table[SYS_getrlimit] = "getrlimit";
+#endif
+#if defined (SYS_getrlimit64)
+  syscall_table[SYS_getrlimit64] = "getrlimit64";
+#endif
+#if defined (SYS_getrusage)
+  syscall_table[SYS_getrusage] = "getrusage";
+#endif
+#if defined (SYS_getsid)
+  syscall_table[SYS_getsid] = "getsid";
+#endif
+#if defined (SYS_getsockname)
+  syscall_table[SYS_getsockname] = "getsockname";
+#endif
+#if defined (SYS_getsockopt)
+  syscall_table[SYS_getsockopt] = "getsockopt";
+#endif
+#if defined (SYS_gettimeofday)
+  syscall_table[SYS_gettimeofday] = "gettimeofday";
+#endif
+#if defined (SYS_getuid)
+  syscall_table[SYS_getuid] = "getuid";
+#endif
+#if defined (SYS_gtty)
+  syscall_table[SYS_gtty] = "gtty";
+#endif
+#if defined (SYS_hrtsys)
+  syscall_table[SYS_hrtsys] = "hrtsys";
+#endif
+#if defined (SYS_inst_sync)
+  syscall_table[SYS_inst_sync] = "inst_sync";
+#endif
+#if defined (SYS_install_utrap)
+  syscall_table[SYS_install_utrap] = "install_utrap";
+#endif
+#if defined (SYS_invlpg)
+  syscall_table[SYS_invlpg] = "invlpg";
+#endif
+#if defined (SYS_ioctl)
+  syscall_table[SYS_ioctl] = "ioctl";
+#endif
+#if defined (SYS_kaio)
+  syscall_table[SYS_kaio] = "kaio";
+#endif
+#if defined (SYS_keyctl)
+  syscall_table[SYS_keyctl] = "keyctl";
+#endif
+#if defined (SYS_kill)
+  syscall_table[SYS_kill] = "kill";
+#endif
+#if defined (SYS_killpg)
+  syscall_table[SYS_killpg] = "killpg";
+#endif
+#if defined (SYS_kloadcall)
+  syscall_table[SYS_kloadcall] = "kloadcall";
+#endif
+#if defined (SYS_kmodcall)
+  syscall_table[SYS_kmodcall] = "kmodcall";
+#endif
+#if defined (SYS_ksigaction)
+  syscall_table[SYS_ksigaction] = "ksigaction";
+#endif
+#if defined (SYS_ksigprocmask)
+  syscall_table[SYS_ksigprocmask] = "ksigprocmask";
+#endif
+#if defined (SYS_ksigqueue)
+  syscall_table[SYS_ksigqueue] = "ksigqueue";
+#endif
+#if defined (SYS_lchown)
+  syscall_table[SYS_lchown] = "lchown";
+#endif
+#if defined (SYS_link)
+  syscall_table[SYS_link] = "link";
+#endif
+#if defined (SYS_listen)
+  syscall_table[SYS_listen] = "listen";
+#endif
+#if defined (SYS_llseek)
+  syscall_table[SYS_llseek] = "llseek";
+#endif
+#if defined (SYS_lseek)
+  syscall_table[SYS_lseek] = "lseek";
+#endif
+#if defined (SYS_lseek64)
+  syscall_table[SYS_lseek64] = "lseek64";
+#endif
+#if defined (SYS_lstat)
+  syscall_table[SYS_lstat] = "lstat";
+#endif
+#if defined (SYS_lstat64)
+  syscall_table[SYS_lstat64] = "lstat64";
+#endif
+#if defined (SYS_lvldom)
+  syscall_table[SYS_lvldom] = "lvldom";
+#endif
+#if defined (SYS_lvlequal)
+  syscall_table[SYS_lvlequal] = "lvlequal";
+#endif
+#if defined (SYS_lvlfile)
+  syscall_table[SYS_lvlfile] = "lvlfile";
+#endif
+#if defined (SYS_lvlipc)
+  syscall_table[SYS_lvlipc] = "lvlipc";
+#endif
+#if defined (SYS_lvlproc)
+  syscall_table[SYS_lvlproc] = "lvlproc";
+#endif
+#if defined (SYS_lvlvfs)
+  syscall_table[SYS_lvlvfs] = "lvlvfs";
+#endif
+#if defined (SYS_lwp_alarm)
+  syscall_table[SYS_lwp_alarm] = "lwp_alarm";
+#endif
+#if defined (SYS_lwp_cond_broadcast)
+  syscall_table[SYS_lwp_cond_broadcast] = "lwp_cond_broadcast";
+#endif
+#if defined (SYS_lwp_cond_signal)
+  syscall_table[SYS_lwp_cond_signal] = "lwp_cond_signal";
+#endif
+#if defined (SYS_lwp_cond_wait)
+  syscall_table[SYS_lwp_cond_wait] = "lwp_cond_wait";
+#endif
+#if defined (SYS_lwp_continue)
+  syscall_table[SYS_lwp_continue] = "lwp_continue";
+#endif
+#if defined (SYS_lwp_create)
+  syscall_table[SYS_lwp_create] = "lwp_create";
+#endif
+#if defined (SYS_lwp_exit)
+  syscall_table[SYS_lwp_exit] = "lwp_exit";
+#endif
+#if defined (SYS_lwp_getprivate)
+  syscall_table[SYS_lwp_getprivate] = "lwp_getprivate";
+#endif
+#if defined (SYS_lwp_info)
+  syscall_table[SYS_lwp_info] = "lwp_info";
+#endif
+#if defined (SYS_lwp_kill)
+  syscall_table[SYS_lwp_kill] = "lwp_kill";
+#endif
+#if defined (SYS_lwp_mutex_init)
+  syscall_table[SYS_lwp_mutex_init] = "lwp_mutex_init";
+#endif
+#if defined (SYS_lwp_mutex_lock)
+  syscall_table[SYS_lwp_mutex_lock] = "lwp_mutex_lock";
+#endif
+#if defined (SYS_lwp_mutex_trylock)
+  syscall_table[SYS_lwp_mutex_trylock] = "lwp_mutex_trylock";
+#endif
+#if defined (SYS_lwp_mutex_unlock)
+  syscall_table[SYS_lwp_mutex_unlock] = "lwp_mutex_unlock";
+#endif
+#if defined (SYS_lwp_private)
+  syscall_table[SYS_lwp_private] = "lwp_private";
+#endif
+#if defined (SYS_lwp_self)
+  syscall_table[SYS_lwp_self] = "lwp_self";
+#endif
+#if defined (SYS_lwp_sema_post)
+  syscall_table[SYS_lwp_sema_post] = "lwp_sema_post";
+#endif
+#if defined (SYS_lwp_sema_trywait)
+  syscall_table[SYS_lwp_sema_trywait] = "lwp_sema_trywait";
+#endif
+#if defined (SYS_lwp_sema_wait)
+  syscall_table[SYS_lwp_sema_wait] = "lwp_sema_wait";
+#endif
+#if defined (SYS_lwp_setprivate)
+  syscall_table[SYS_lwp_setprivate] = "lwp_setprivate";
+#endif
+#if defined (SYS_lwp_sigredirect)
+  syscall_table[SYS_lwp_sigredirect] = "lwp_sigredirect";
+#endif
+#if defined (SYS_lwp_suspend)
+  syscall_table[SYS_lwp_suspend] = "lwp_suspend";
+#endif
+#if defined (SYS_lwp_wait)
+  syscall_table[SYS_lwp_wait] = "lwp_wait";
+#endif
+#if defined (SYS_lxstat)
+  syscall_table[SYS_lxstat] = "lxstat";
+#endif
+#if defined (SYS_madvise)
+  syscall_table[SYS_madvise] = "madvise";
+#endif
+#if defined (SYS_memcntl)
+  syscall_table[SYS_memcntl] = "memcntl";
+#endif
+#if defined (SYS_mincore)
+  syscall_table[SYS_mincore] = "mincore";
+#endif
+#if defined (SYS_mincore)
+  syscall_table[SYS_mincore] = "mincore";
+#endif
+#if defined (SYS_mkdir)
+  syscall_table[SYS_mkdir] = "mkdir";
+#endif
+#if defined (SYS_mkmld)
+  syscall_table[SYS_mkmld] = "mkmld";
+#endif
+#if defined (SYS_mknod)
+  syscall_table[SYS_mknod] = "mknod";
+#endif
+#if defined (SYS_mldmode)
+  syscall_table[SYS_mldmode] = "mldmode";
+#endif
+#if defined (SYS_mmap)
+  syscall_table[SYS_mmap] = "mmap";
+#endif
+#if defined (SYS_mmap64)
+  syscall_table[SYS_mmap64] = "mmap64";
+#endif
+#if defined (SYS_modadm)
+  syscall_table[SYS_modadm] = "modadm";
+#endif
+#if defined (SYS_modctl)
+  syscall_table[SYS_modctl] = "modctl";
+#endif
+#if defined (SYS_modload)
+  syscall_table[SYS_modload] = "modload";
+#endif
+#if defined (SYS_modpath)
+  syscall_table[SYS_modpath] = "modpath";
+#endif
+#if defined (SYS_modstat)
+  syscall_table[SYS_modstat] = "modstat";
+#endif
+#if defined (SYS_moduload)
+  syscall_table[SYS_moduload] = "moduload";
+#endif
+#if defined (SYS_mount)
+  syscall_table[SYS_mount] = "mount";
+#endif
+#if defined (SYS_mprotect)
+  syscall_table[SYS_mprotect] = "mprotect";
+#endif
+#if defined (SYS_mremap)
+  syscall_table[SYS_mremap] = "mremap";
+#endif
+#if defined (SYS_msfs_syscall)
+  syscall_table[SYS_msfs_syscall] = "msfs_syscall";
+#endif
+#if defined (SYS_msgctl)
+  syscall_table[SYS_msgctl] = "msgctl";
+#endif
+#if defined (SYS_msgget)
+  syscall_table[SYS_msgget] = "msgget";
+#endif
+#if defined (SYS_msgrcv)
+  syscall_table[SYS_msgrcv] = "msgrcv";
+#endif
+#if defined (SYS_msgsnd)
+  syscall_table[SYS_msgsnd] = "msgsnd";
+#endif
+#if defined (SYS_msgsys)
+  syscall_table[SYS_msgsys] = "msgsys";
+#endif
+#if defined (SYS_msleep)
+  syscall_table[SYS_msleep] = "msleep";
+#endif
+#if defined (SYS_msync)
+  syscall_table[SYS_msync] = "msync";
+#endif
+#if defined (SYS_munmap)
+  syscall_table[SYS_munmap] = "munmap";
+#endif
+#if defined (SYS_mvalid)
+  syscall_table[SYS_mvalid] = "mvalid";
+#endif
+#if defined (SYS_mwakeup)
+  syscall_table[SYS_mwakeup] = "mwakeup";
+#endif
+#if defined (SYS_naccept)
+  syscall_table[SYS_naccept] = "naccept";
+#endif
+#if defined (SYS_nanosleep)
+  syscall_table[SYS_nanosleep] = "nanosleep";
+#endif
+#if defined (SYS_nfssvc)
+  syscall_table[SYS_nfssvc] = "nfssvc";
+#endif
+#if defined (SYS_nfssys)
+  syscall_table[SYS_nfssys] = "nfssys";
+#endif
+#if defined (SYS_ngetpeername)
+  syscall_table[SYS_ngetpeername] = "ngetpeername";
+#endif
+#if defined (SYS_ngetsockname)
+  syscall_table[SYS_ngetsockname] = "ngetsockname";
+#endif
+#if defined (SYS_nice)
+  syscall_table[SYS_nice] = "nice";
+#endif
+#if defined (SYS_nrecvfrom)
+  syscall_table[SYS_nrecvfrom] = "nrecvfrom";
+#endif
+#if defined (SYS_nrecvmsg)
+  syscall_table[SYS_nrecvmsg] = "nrecvmsg";
+#endif
+#if defined (SYS_nsendmsg)
+  syscall_table[SYS_nsendmsg] = "nsendmsg";
+#endif
+#if defined (SYS_ntp_adjtime)
+  syscall_table[SYS_ntp_adjtime] = "ntp_adjtime";
+#endif
+#if defined (SYS_ntp_gettime)
+  syscall_table[SYS_ntp_gettime] = "ntp_gettime";
+#endif
+#if defined (SYS_nuname)
+  syscall_table[SYS_nuname] = "nuname";
+#endif
+#if defined (SYS_obreak)
+  syscall_table[SYS_obreak] = "obreak";
+#endif
+#if defined (SYS_old_accept)
+  syscall_table[SYS_old_accept] = "old_accept";
+#endif
+#if defined (SYS_old_fstat)
+  syscall_table[SYS_old_fstat] = "old_fstat";
+#endif
+#if defined (SYS_old_getpeername)
+  syscall_table[SYS_old_getpeername] = "old_getpeername";
+#endif
+#if defined (SYS_old_getpgrp)
+  syscall_table[SYS_old_getpgrp] = "old_getpgrp";
+#endif
+#if defined (SYS_old_getsockname)
+  syscall_table[SYS_old_getsockname] = "old_getsockname";
+#endif
+#if defined (SYS_old_killpg)
+  syscall_table[SYS_old_killpg] = "old_killpg";
+#endif
+#if defined (SYS_old_lstat)
+  syscall_table[SYS_old_lstat] = "old_lstat";
+#endif
+#if defined (SYS_old_recv)
+  syscall_table[SYS_old_recv] = "old_recv";
+#endif
+#if defined (SYS_old_recvfrom)
+  syscall_table[SYS_old_recvfrom] = "old_recvfrom";
+#endif
+#if defined (SYS_old_recvmsg)
+  syscall_table[SYS_old_recvmsg] = "old_recvmsg";
+#endif
+#if defined (SYS_old_send)
+  syscall_table[SYS_old_send] = "old_send";
+#endif
+#if defined (SYS_old_sendmsg)
+  syscall_table[SYS_old_sendmsg] = "old_sendmsg";
+#endif
+#if defined (SYS_old_sigblock)
+  syscall_table[SYS_old_sigblock] = "old_sigblock";
+#endif
+#if defined (SYS_old_sigsetmask)
+  syscall_table[SYS_old_sigsetmask] = "old_sigsetmask";
+#endif
+#if defined (SYS_old_sigvec)
+  syscall_table[SYS_old_sigvec] = "old_sigvec";
+#endif
+#if defined (SYS_old_stat)
+  syscall_table[SYS_old_stat] = "old_stat";
+#endif
+#if defined (SYS_old_vhangup)
+  syscall_table[SYS_old_vhangup] = "old_vhangup";
+#endif
+#if defined (SYS_old_wait)
+  syscall_table[SYS_old_wait] = "old_wait";
+#endif
+#if defined (SYS_oldquota)
+  syscall_table[SYS_oldquota] = "oldquota";
+#endif
+#if defined (SYS_online)
+  syscall_table[SYS_online] = "online";
+#endif
+#if defined (SYS_open)
+  syscall_table[SYS_open] = "open";
+#endif
+#if defined (SYS_open64)
+  syscall_table[SYS_open64] = "open64";
+#endif
+#if defined (SYS_ovadvise)
+  syscall_table[SYS_ovadvise] = "ovadvise";
+#endif
+#if defined (SYS_p_online)
+  syscall_table[SYS_p_online] = "p_online";
+#endif
+#if defined (SYS_pagelock)
+  syscall_table[SYS_pagelock] = "pagelock";
+#endif
+#if defined (SYS_pathconf)
+  syscall_table[SYS_pathconf] = "pathconf";
+#endif
+#if defined (SYS_pause)
+  syscall_table[SYS_pause] = "pause";
+#endif
+#if defined (SYS_pgrpsys)
+  syscall_table[SYS_pgrpsys] = "pgrpsys";
+#endif
+#if defined (SYS_pid_block)
+  syscall_table[SYS_pid_block] = "pid_block";
+#endif
+#if defined (SYS_pid_unblock)
+  syscall_table[SYS_pid_unblock] = "pid_unblock";
+#endif
+#if defined (SYS_pipe)
+  syscall_table[SYS_pipe] = "pipe";
+#endif
+#if defined (SYS_plock)
+  syscall_table[SYS_plock] = "plock";
+#endif
+#if defined (SYS_poll)
+  syscall_table[SYS_poll] = "poll";
+#endif
+#if defined (SYS_prctl)
+  syscall_table[SYS_prctl] = "prctl";
+#endif
+#if defined (SYS_pread)
+  syscall_table[SYS_pread] = "pread";
+#endif
+#if defined (SYS_pread64)
+  syscall_table[SYS_pread64] = "pread64";
+#endif
+#if defined (SYS_pread64)
+  syscall_table[SYS_pread64] = "pread64";
+#endif
+#if defined (SYS_prepblock)
+  syscall_table[SYS_prepblock] = "prepblock";
+#endif
+#if defined (SYS_priocntl)
+  syscall_table[SYS_priocntl] = "priocntl";
+#endif
+#if defined (SYS_priocntllst)
+  syscall_table[SYS_priocntllst] = "priocntllst";
+#endif
+#if defined (SYS_priocntlset)
+  syscall_table[SYS_priocntlset] = "priocntlset";
+#endif
+#if defined (SYS_priocntlsys)
+  syscall_table[SYS_priocntlsys] = "priocntlsys";
+#endif
+#if defined (SYS_procblk)
+  syscall_table[SYS_procblk] = "procblk";
+#endif
+#if defined (SYS_processor_bind)
+  syscall_table[SYS_processor_bind] = "processor_bind";
+#endif
+#if defined (SYS_processor_exbind)
+  syscall_table[SYS_processor_exbind] = "processor_exbind";
+#endif
+#if defined (SYS_processor_info)
+  syscall_table[SYS_processor_info] = "processor_info";
+#endif
+#if defined (SYS_procpriv)
+  syscall_table[SYS_procpriv] = "procpriv";
+#endif
+#if defined (SYS_profil)
+  syscall_table[SYS_profil] = "profil";
+#endif
+#if defined (SYS_proplist_syscall)
+  syscall_table[SYS_proplist_syscall] = "proplist_syscall";
+#endif
+#if defined (SYS_pset)
+  syscall_table[SYS_pset] = "pset";
+#endif
+#if defined (SYS_ptrace)
+  syscall_table[SYS_ptrace] = "ptrace";
+#endif
+#if defined (SYS_putmsg)
+  syscall_table[SYS_putmsg] = "putmsg";
+#endif
+#if defined (SYS_putpmsg)
+  syscall_table[SYS_putpmsg] = "putpmsg";
+#endif
+#if defined (SYS_pwrite)
+  syscall_table[SYS_pwrite] = "pwrite";
+#endif
+#if defined (SYS_pwrite64)
+  syscall_table[SYS_pwrite64] = "pwrite64";
+#endif
+#if defined (SYS_quotactl)
+  syscall_table[SYS_quotactl] = "quotactl";
+#endif
+#if defined (SYS_rdblock)
+  syscall_table[SYS_rdblock] = "rdblock";
+#endif
+#if defined (SYS_read)
+  syscall_table[SYS_read] = "read";
+#endif
+#if defined (SYS_readlink)
+  syscall_table[SYS_readlink] = "readlink";
+#endif
+#if defined (SYS_readv)
+  syscall_table[SYS_readv] = "readv";
+#endif
+#if defined (SYS_reboot)
+  syscall_table[SYS_reboot] = "reboot";
+#endif
+#if defined (SYS_recv)
+  syscall_table[SYS_recv] = "recv";
+#endif
+#if defined (SYS_recvfrom)
+  syscall_table[SYS_recvfrom] = "recvfrom";
+#endif
+#if defined (SYS_recvmsg)
+  syscall_table[SYS_recvmsg] = "recvmsg";
+#endif
+#if defined (SYS_rename)
+  syscall_table[SYS_rename] = "rename";
+#endif
+#if defined (SYS_resolvepath)
+  syscall_table[SYS_resolvepath] = "resolvepath";
+#endif
+#if defined (SYS_revoke)
+  syscall_table[SYS_revoke] = "revoke";
+#endif
+#if defined (SYS_rfsys)
+  syscall_table[SYS_rfsys] = "rfsys";
+#endif
+#if defined (SYS_rmdir)
+  syscall_table[SYS_rmdir] = "rmdir";
+#endif
+#if defined (SYS_rpcsys)
+  syscall_table[SYS_rpcsys] = "rpcsys";
+#endif
+#if defined (SYS_sbrk)
+  syscall_table[SYS_sbrk] = "sbrk";
+#endif
+#if defined (SYS_schedctl)
+  syscall_table[SYS_schedctl] = "schedctl";
+#endif
+#if defined (SYS_secadvise)
+  syscall_table[SYS_secadvise] = "secadvise";
+#endif
+#if defined (SYS_secsys)
+  syscall_table[SYS_secsys] = "secsys";
+#endif
+#if defined (SYS_security)
+  syscall_table[SYS_security] = "security";
+#endif
+#if defined (SYS_select)
+  syscall_table[SYS_select] = "select";
+#endif
+#if defined (SYS_semctl)
+  syscall_table[SYS_semctl] = "semctl";
+#endif
+#if defined (SYS_semget)
+  syscall_table[SYS_semget] = "semget";
+#endif
+#if defined (SYS_semop)
+  syscall_table[SYS_semop] = "semop";
+#endif
+#if defined (SYS_semsys)
+  syscall_table[SYS_semsys] = "semsys";
+#endif
+#if defined (SYS_send)
+  syscall_table[SYS_send] = "send";
+#endif
+#if defined (SYS_sendmsg)
+  syscall_table[SYS_sendmsg] = "sendmsg";
+#endif
+#if defined (SYS_sendto)
+  syscall_table[SYS_sendto] = "sendto";
+#endif
+#if defined (SYS_set_program_attributes)
+  syscall_table[SYS_set_program_attributes] = "set_program_attributes";
+#endif
+#if defined (SYS_set_speculative)
+  syscall_table[SYS_set_speculative] = "set_speculative";
+#endif
+#if defined (SYS_set_sysinfo)
+  syscall_table[SYS_set_sysinfo] = "set_sysinfo";
+#endif
+#if defined (SYS_setcontext)
+  syscall_table[SYS_setcontext] = "setcontext";
+#endif
+#if defined (SYS_setdomainname)
+  syscall_table[SYS_setdomainname] = "setdomainname";
+#endif
+#if defined (SYS_setegid)
+  syscall_table[SYS_setegid] = "setegid";
+#endif
+#if defined (SYS_seteuid)
+  syscall_table[SYS_seteuid] = "seteuid";
+#endif
+#if defined (SYS_setgid)
+  syscall_table[SYS_setgid] = "setgid";
+#endif
+#if defined (SYS_setgroups)
+  syscall_table[SYS_setgroups] = "setgroups";
+#endif
+#if defined (SYS_sethostid)
+  syscall_table[SYS_sethostid] = "sethostid";
+#endif
+#if defined (SYS_sethostname)
+  syscall_table[SYS_sethostname] = "sethostname";
+#endif
+#if defined (SYS_setitimer)
+  syscall_table[SYS_setitimer] = "setitimer";
+#endif
+#if defined (SYS_setlogin)
+  syscall_table[SYS_setlogin] = "setlogin";
+#endif
+#if defined (SYS_setpgid)
+  syscall_table[SYS_setpgid] = "setpgid";
+#endif
+#if defined (SYS_setpgrp)
+  syscall_table[SYS_setpgrp] = "setpgrp";
+#endif
+#if defined (SYS_setpriority)
+  syscall_table[SYS_setpriority] = "setpriority";
+#endif
+#if defined (SYS_setregid)
+  syscall_table[SYS_setregid] = "setregid";
+#endif
+#if defined (SYS_setreuid)
+  syscall_table[SYS_setreuid] = "setreuid";
+#endif
+#if defined (SYS_setrlimit)
+  syscall_table[SYS_setrlimit] = "setrlimit";
+#endif
+#if defined (SYS_setrlimit64)
+  syscall_table[SYS_setrlimit64] = "setrlimit64";
+#endif
+#if defined (SYS_setsid)
+  syscall_table[SYS_setsid] = "setsid";
+#endif
+#if defined (SYS_setsockopt)
+  syscall_table[SYS_setsockopt] = "setsockopt";
+#endif
+#if defined (SYS_settimeofday)
+  syscall_table[SYS_settimeofday] = "settimeofday";
+#endif
+#if defined (SYS_setuid)
+  syscall_table[SYS_setuid] = "setuid";
+#endif
+#if defined (SYS_sgi)
+  syscall_table[SYS_sgi] = "sgi";
+#endif
+#if defined (SYS_sgifastpath)
+  syscall_table[SYS_sgifastpath] = "sgifastpath";
+#endif
+#if defined (SYS_sgikopt)
+  syscall_table[SYS_sgikopt] = "sgikopt";
+#endif
+#if defined (SYS_sginap)
+  syscall_table[SYS_sginap] = "sginap";
+#endif
+#if defined (SYS_shmat)
+  syscall_table[SYS_shmat] = "shmat";
+#endif
+#if defined (SYS_shmctl)
+  syscall_table[SYS_shmctl] = "shmctl";
+#endif
+#if defined (SYS_shmdt)
+  syscall_table[SYS_shmdt] = "shmdt";
+#endif
+#if defined (SYS_shmget)
+  syscall_table[SYS_shmget] = "shmget";
+#endif
+#if defined (SYS_shmsys)
+  syscall_table[SYS_shmsys] = "shmsys";
+#endif
+#if defined (SYS_shutdown)
+  syscall_table[SYS_shutdown] = "shutdown";
+#endif
+#if defined (SYS_sigaction)
+  syscall_table[SYS_sigaction] = "sigaction";
+#endif
+#if defined (SYS_sigaltstack)
+  syscall_table[SYS_sigaltstack] = "sigaltstack";
+#endif
+#if defined (SYS_sigaltstack)
+  syscall_table[SYS_sigaltstack] = "sigaltstack";
+#endif
+#if defined (SYS_sigblock)
+  syscall_table[SYS_sigblock] = "sigblock";
+#endif
+#if defined (SYS_signal)
+  syscall_table[SYS_signal] = "signal";
+#endif
+#if defined (SYS_signotify)
+  syscall_table[SYS_signotify] = "signotify";
+#endif
+#if defined (SYS_signotifywait)
+  syscall_table[SYS_signotifywait] = "signotifywait";
+#endif
+#if defined (SYS_sigpending)
+  syscall_table[SYS_sigpending] = "sigpending";
+#endif
+#if defined (SYS_sigpoll)
+  syscall_table[SYS_sigpoll] = "sigpoll";
+#endif
+#if defined (SYS_sigprocmask)
+  syscall_table[SYS_sigprocmask] = "sigprocmask";
+#endif
+#if defined (SYS_sigqueue)
+  syscall_table[SYS_sigqueue] = "sigqueue";
+#endif
+#if defined (SYS_sigreturn)
+  syscall_table[SYS_sigreturn] = "sigreturn";
+#endif
+#if defined (SYS_sigsendset)
+  syscall_table[SYS_sigsendset] = "sigsendset";
+#endif
+#if defined (SYS_sigsendsys)
+  syscall_table[SYS_sigsendsys] = "sigsendsys";
+#endif
+#if defined (SYS_sigsetmask)
+  syscall_table[SYS_sigsetmask] = "sigsetmask";
+#endif
+#if defined (SYS_sigstack)
+  syscall_table[SYS_sigstack] = "sigstack";
+#endif
+#if defined (SYS_sigsuspend)
+  syscall_table[SYS_sigsuspend] = "sigsuspend";
+#endif
+#if defined (SYS_sigvec)
+  syscall_table[SYS_sigvec] = "sigvec";
+#endif
+#if defined (SYS_sigwait)
+  syscall_table[SYS_sigwait] = "sigwait";
+#endif
+#if defined (SYS_sigwaitprim)
+  syscall_table[SYS_sigwaitprim] = "sigwaitprim";
+#endif
+#if defined (SYS_sleep)
+  syscall_table[SYS_sleep] = "sleep";
+#endif
+#if defined (SYS_so_socket)
+  syscall_table[SYS_so_socket] = "so_socket";
+#endif
+#if defined (SYS_so_socketpair)
+  syscall_table[SYS_so_socketpair] = "so_socketpair";
+#endif
+#if defined (SYS_sockconfig)
+  syscall_table[SYS_sockconfig] = "sockconfig";
+#endif
+#if defined (SYS_socket)
+  syscall_table[SYS_socket] = "socket";
+#endif
+#if defined (SYS_socketpair)
+  syscall_table[SYS_socketpair] = "socketpair";
+#endif
+#if defined (SYS_sproc)
+  syscall_table[SYS_sproc] = "sproc";
+#endif
+#if defined (SYS_sprocsp)
+  syscall_table[SYS_sprocsp] = "sprocsp";
+#endif
+#if defined (SYS_sstk)
+  syscall_table[SYS_sstk] = "sstk";
+#endif
+#if defined (SYS_stat)
+  syscall_table[SYS_stat] = "stat";
+#endif
+#if defined (SYS_stat64)
+  syscall_table[SYS_stat64] = "stat64";
+#endif
+#if defined (SYS_statfs)
+  syscall_table[SYS_statfs] = "statfs";
+#endif
+#if defined (SYS_statvfs)
+  syscall_table[SYS_statvfs] = "statvfs";
+#endif
+#if defined (SYS_statvfs64)
+  syscall_table[SYS_statvfs64] = "statvfs64";
+#endif
+#if defined (SYS_stime)
+  syscall_table[SYS_stime] = "stime";
+#endif
+#if defined (SYS_stty)
+  syscall_table[SYS_stty] = "stty";
+#endif
+#if defined (SYS_subsys_info)
+  syscall_table[SYS_subsys_info] = "subsys_info";
+#endif
+#if defined (SYS_swapctl)
+  syscall_table[SYS_swapctl] = "swapctl";
+#endif
+#if defined (SYS_swapon)
+  syscall_table[SYS_swapon] = "swapon";
+#endif
+#if defined (SYS_symlink)
+  syscall_table[SYS_symlink] = "symlink";
+#endif
+#if defined (SYS_sync)
+  syscall_table[SYS_sync] = "sync";
+#endif
+#if defined (SYS_sys3b)
+  syscall_table[SYS_sys3b] = "sys3b";
+#endif
+#if defined (SYS_syscall)
+  syscall_table[SYS_syscall] = "syscall";
+#endif
+#if defined (SYS_sysconfig)
+  syscall_table[SYS_sysconfig] = "sysconfig";
+#endif
+#if defined (SYS_sysfs)
+  syscall_table[SYS_sysfs] = "sysfs";
+#endif
+#if defined (SYS_sysi86)
+  syscall_table[SYS_sysi86] = "sysi86";
+#endif
+#if defined (SYS_sysinfo)
+  syscall_table[SYS_sysinfo] = "sysinfo";
+#endif
+#if defined (SYS_sysmips)
+  syscall_table[SYS_sysmips] = "sysmips";
+#endif
+#if defined (SYS_syssun)
+  syscall_table[SYS_syssun] = "syssun";
+#endif
+#if defined (SYS_systeminfo)
+  syscall_table[SYS_systeminfo] = "systeminfo";
+#endif
+#if defined (SYS_table)
+  syscall_table[SYS_table] = "table";
+#endif
+#if defined (SYS_time)
+  syscall_table[SYS_time] = "time";
+#endif
+#if defined (SYS_timedwait)
+  syscall_table[SYS_timedwait] = "timedwait";
+#endif
+#if defined (SYS_timer_create)
+  syscall_table[SYS_timer_create] = "timer_create";
+#endif
+#if defined (SYS_timer_delete)
+  syscall_table[SYS_timer_delete] = "timer_delete";
+#endif
+#if defined (SYS_timer_getoverrun)
+  syscall_table[SYS_timer_getoverrun] = "timer_getoverrun";
+#endif
+#if defined (SYS_timer_gettime)
+  syscall_table[SYS_timer_gettime] = "timer_gettime";
+#endif
+#if defined (SYS_timer_settime)
+  syscall_table[SYS_timer_settime] = "timer_settime";
+#endif
+#if defined (SYS_times)
+  syscall_table[SYS_times] = "times";
+#endif
+#if defined (SYS_truncate)
+  syscall_table[SYS_truncate] = "truncate";
+#endif
+#if defined (SYS_truncate64)
+  syscall_table[SYS_truncate64] = "truncate64";
+#endif
+#if defined (SYS_tsolsys)
+  syscall_table[SYS_tsolsys] = "tsolsys";
+#endif
+#if defined (SYS_uadmin)
+  syscall_table[SYS_uadmin] = "uadmin";
+#endif
+#if defined (SYS_ulimit)
+  syscall_table[SYS_ulimit] = "ulimit";
+#endif
+#if defined (SYS_umask)
+  syscall_table[SYS_umask] = "umask";
+#endif
+#if defined (SYS_umount)
+  syscall_table[SYS_umount] = "umount";
+#endif
+#if defined (SYS_uname)
+  syscall_table[SYS_uname] = "uname";
+#endif
+#if defined (SYS_unblock)
+  syscall_table[SYS_unblock] = "unblock";
+#endif
+#if defined (SYS_unlink)
+  syscall_table[SYS_unlink] = "unlink";
+#endif
+#if defined (SYS_unmount)
+  syscall_table[SYS_unmount] = "unmount";
+#endif
+#if defined (SYS_usleep_thread)
+  syscall_table[SYS_usleep_thread] = "usleep_thread";
+#endif
+#if defined (SYS_uswitch)
+  syscall_table[SYS_uswitch] = "uswitch";
+#endif
+#if defined (SYS_utc_adjtime)
+  syscall_table[SYS_utc_adjtime] = "utc_adjtime";
+#endif
+#if defined (SYS_utc_gettime)
+  syscall_table[SYS_utc_gettime] = "utc_gettime";
+#endif
+#if defined (SYS_utime)
+  syscall_table[SYS_utime] = "utime";
+#endif
+#if defined (SYS_utimes)
+  syscall_table[SYS_utimes] = "utimes";
+#endif
+#if defined (SYS_utssys)
+  syscall_table[SYS_utssys] = "utssys";
+#endif
+#if defined (SYS_vfork)
+  syscall_table[SYS_vfork] = "vfork";
+#endif
+#if defined (SYS_vhangup)
+  syscall_table[SYS_vhangup] = "vhangup";
+#endif
+#if defined (SYS_vtrace)
+  syscall_table[SYS_vtrace] = "vtrace";
+#endif
+#if defined (SYS_wait)
+  syscall_table[SYS_wait] = "wait";
+#endif
+#if defined (SYS_waitid)
+  syscall_table[SYS_waitid] = "waitid";
+#endif
+#if defined (SYS_waitsys)
+  syscall_table[SYS_waitsys] = "waitsys";
+#endif
+#if defined (SYS_write)
+  syscall_table[SYS_write] = "write";
+#endif
+#if defined (SYS_writev)
+  syscall_table[SYS_writev] = "writev";
+#endif
+#if defined (SYS_xenix)
+  syscall_table[SYS_xenix] = "xenix";
+#endif
+#if defined (SYS_xmknod)
+  syscall_table[SYS_xmknod] = "xmknod";
+#endif
+#if defined (SYS_xstat)
+  syscall_table[SYS_xstat] = "xstat";
+#endif
+#if defined (SYS_yield)
+  syscall_table[SYS_yield] = "yield";
+#endif
+};
+
+/*
+ * Prettyprint a single syscall by number.
+ */
+
+void
+proc_prettyfprint_syscall (file, num, verbose)
+     FILE *file;
+     int  num;
+     int  verbose;
+{
+  if (syscall_table[num])
+    fprintf (file, "SYS_%s ", syscall_table[num]);
+  else
+    fprintf (file, "<Unknown syscall %d> ", num);
+}
+
+void
+proc_prettyprint_syscall (num, verbose)
+     int num;
+     int verbose;
+{
+  proc_prettyfprint_syscall (stdout, num, verbose);
+}
+
+/*
+ * Prettyprint all of the syscalls in a sysset_t set.
+ */
+
+void
+proc_prettyfprint_syscalls (file, sysset, verbose)
+     FILE     *file;
+     sysset_t *sysset;
+     int      verbose;
+{
+  int i;
+
+  for (i = 0; i < MAX_SYSCALLS; i++)
+    if (prismember (sysset, i))
+      {
+       proc_prettyfprint_syscall (file, i, verbose);
+      }
+  fprintf (file, "\n");
+}
+
+void
+proc_prettyprint_syscalls (sysset, verbose)
+     sysset_t *sysset;
+     int      verbose;
+{
+  proc_prettyfprint_syscalls (stdout, sysset, verbose);
+}
+
+/* FIXME: add real-time signals */
+
+static struct trans signal_table[] = 
+{
+  { 0,      "<no signal>", "no signal" }, 
+#ifdef SIGHUP
+  { SIGHUP, "SIGHUP", "Hangup" },
+#endif
+#ifdef SIGINT
+  { SIGINT, "SIGINT", "Interrupt (rubout)" },
+#endif
+#ifdef SIGQUIT
+  { SIGQUIT, "SIGQUIT", "Quit (ASCII FS)" },
+#endif
+#ifdef SIGILL
+  { SIGILL, "SIGILL", "Illegal instruction" }, /* not reset when caught */
+#endif
+#ifdef SIGTRAP
+  { SIGTRAP, "SIGTRAP", "Trace trap" },                /* not reset when caught */
+#endif
+#ifdef SIGABRT
+  { SIGABRT, "SIGABRT", "used by abort()" },   /* replaces SIGIOT */
+#endif
+#ifdef SIGIOT
+  { SIGIOT, "SIGIOT", "IOT instruction" },
+#endif
+#ifdef SIGEMT
+  { SIGEMT, "SIGEMT", "EMT instruction" },
+#endif
+#ifdef SIGFPE
+  { SIGFPE, "SIGFPE", "Floating point exception" },
+#endif
+#ifdef SIGKILL
+  { SIGKILL, "SIGKILL", "Kill" },      /* Solaris: cannot be caught/ignored */
+#endif
+#ifdef SIGBUS
+  { SIGBUS, "SIGBUS", "Bus error" },
+#endif
+#ifdef SIGSEGV
+  { SIGSEGV, "SIGSEGV", "Segmentation violation" },
+#endif
+#ifdef SIGSYS
+  { SIGSYS, "SIGSYS", "Bad argument to system call" },
+#endif
+#ifdef SIGPIPE
+  { SIGPIPE, "SIGPIPE", "Write to pipe with no one to read it" },
+#endif
+#ifdef SIGALRM
+  { SIGALRM, "SIGALRM", "Alarm clock" },
+#endif
+#ifdef SIGTERM
+  { SIGTERM, "SIGTERM", "Software termination signal from kill" },
+#endif
+#ifdef SIGUSR1
+  { SIGUSR1, "SIGUSR1", "User defined signal 1" },
+#endif
+#ifdef SIGUSR2
+  { SIGUSR2, "SIGUSR2", "User defined signal 2" },
+#endif
+#ifdef SIGCHLD
+  { SIGCHLD, "SIGCHLD", "Child status changed" },      /* Posix version */
+#endif
+#ifdef SIGCLD
+  { SIGCLD, "SIGCLD", "Child status changed" },                /* Solaris version */
+#endif
+#ifdef SIGPWR
+  { SIGPWR, "SIGPWR", "Power-fail restart" },
+#endif
+#ifdef SIGWINCH
+  { SIGWINCH, "SIGWINCH", "Window size change" },
+#endif
+#ifdef SIGURG
+  { SIGURG, "SIGURG", "Urgent socket condition" },
+#endif
+#ifdef SIGPOLL
+  { SIGPOLL, "SIGPOLL", "Pollable event" },
+#endif
+#ifdef SIGIO
+  { SIGIO, "SIGIO", "Socket I/O possible" },   /* alias for SIGPOLL */
+#endif
+#ifdef SIGSTOP
+  { SIGSTOP, "SIGSTOP", "Stop, not from tty" },        /* cannot be caught or ignored */
+#endif
+#ifdef SIGTSTP
+  { SIGTSTP, "SIGTSTP", "User stop from tty" },
+#endif
+#ifdef SIGCONT
+  { SIGCONT, "SIGCONT", "Stopped process has been continued" },
+#endif
+#ifdef SIGTTIN
+  { SIGTTIN, "SIGTTIN", "Background tty read attempted" },
+#endif
+#ifdef SIGTTOU
+  { SIGTTOU, "SIGTTOU", "Background tty write attempted" },
+#endif
+#ifdef SIGVTALRM
+  { SIGVTALRM, "SIGVTALRM", "Virtual timer expired" },
+#endif
+#ifdef SIGPROF
+  { SIGPROF, "SIGPROF", "Profiling timer expired" },
+#endif
+#ifdef SIGXCPU
+  { SIGXCPU, "SIGXCPU", "Exceeded CPU limit" },
+#endif
+#ifdef SIGXFSZ
+  { SIGXFSZ, "SIGXFSZ", "Exceeded file size limit" },
+#endif
+#ifdef SIGWAITING
+  { SIGWAITING, "SIGWAITING", "Process's LWPs are blocked" },
+#endif
+#ifdef SIGLWP
+  { SIGLWP, "SIGLWP", "Used by thread library" },
+#endif
+#ifdef SIGFREEZE
+  { SIGFREEZE, "SIGFREEZE", "Used by CPR" },
+#endif
+#ifdef SIGTHAW
+  { SIGTHAW, "SIGTHAW", "Used by CPR" },
+#endif
+#ifdef SIGCANCEL
+  { SIGCANCEL, "SIGCANCEL", "Used by libthread" },
+#endif
+#ifdef SIGLOST
+  { SIGLOST, "SIGLOST", "Resource lost" },
+#endif
+#ifdef SIG32
+  { SIG32, "SIG32", "Reserved for kernel usage (Irix)" },
+#endif
+#ifdef SIGPTINTR
+  { SIGPTINTR, "SIGPTINTR", "Posix 1003.1b" },
+#endif
+#ifdef SIGTRESCHED
+  { SIGTRESCHED, "SIGTRESCHED", "Posix 1003.1b" },
+#endif
+#ifdef SIGINFO
+  { SIGINFO, "SIGINFO", "Information request" },
+#endif
+#ifdef SIGRESV
+  { SIGRESV, "SIGRESV", "Reserved by Digital for future use" },
+#endif
+#ifdef SIGAIO
+  { SIGAIO, "SIGAIO", "Asynchronous I/O signal" },
+#endif
+};
+
+/*
+ * Prettyprint a single signal by number.
+ * Accepts a signal number and finds it in the signal table, 
+ * then pretty-prints it. 
+ */
+
+void
+proc_prettyfprint_signal (file, signo, verbose)
+     FILE *file;
+     int  signo;
+     int verbose;
+{
+  int i;
+
+  for (i = 0; i < sizeof (signal_table) / sizeof (signal_table[0]); i++)
+    if (signo == signal_table[i].value)
+      {
+       fprintf (file, "%s", signal_table[i].name);
+       if (verbose)
+         fprintf (file, ": %s\n", signal_table[i].desc);
+       else
+         fprintf (file, " ");
+       return;
+      }
+  fprintf (file, "Unknown signal %d%c", signo, verbose ? '\n' : ' ');
+}
+
+void
+proc_prettyprint_signal (signo, verbose)
+     int signo;
+     int verbose;
+{
+  proc_prettyfprint_signal (stdout, signo, verbose);
+}
+
+/*
+ * Prettyprint all of the signals in a sigset_t set.
+ *
+ * This function loops over all signal numbers from 0 to NSIG, 
+ * uses them as indexes for prismember, and prints them pretty.
+ * 
+ * It does not loop over the signal table, as is done with the
+ * fault table, because the signal table may contain aliases.
+ * If it did, both aliases would be printed.
+ */
+
+void
+proc_prettyfprint_signalset (file, sigset, verbose)
+     FILE     *file;
+     sigset_t *sigset;
+     int      verbose;
+{
+  int i;
+
+  for (i = 0; i < NSIG; i++)
+    if (prismember (sigset, i))
+      proc_prettyfprint_signal (file, i, verbose);
+
+  if (!verbose)
+    fprintf (file, "\n");
+}
+
+void
+proc_prettyprint_signalset (sigset, verbose)
+     sigset_t *sigset;
+     int      verbose;
+{
+  proc_prettyfprint_signalset (stdout, sigset, verbose);
+}
+
+/*  Hardware fault translation table. */
+
+static struct trans fault_table[] =
+{
+#if defined (FLTILL)
+  { FLTILL, "FLTILL", "Illegal instruction" },
+#endif
+#if defined (FLTPRIV)
+  { FLTPRIV, "FLTPRIV", "Privileged instruction" },
+#endif
+#if defined (FLTBPT)
+  { FLTBPT, "FLTBPT", "Breakpoint trap" },
+#endif
+#if defined (FLTTRACE)
+  { FLTTRACE, "FLTTRACE", "Trace trap" },
+#endif
+#if defined (FLTACCESS)
+  { FLTACCESS, "FLTACCESS", "Memory access fault" },
+#endif
+#if defined (FLTBOUNDS)
+  { FLTBOUNDS, "FLTBOUNDS", "Memory bounds violation" },
+#endif
+#if defined (FLTIOVF)
+  { FLTIOVF, "FLTIOVF", "Integer overflow" },
+#endif
+#if defined (FLTIZDIV)
+  { FLTIZDIV, "FLTIZDIV", "Integer zero divide" },
+#endif
+#if defined (FLTFPE)
+  { FLTFPE, "FLTFPE", "Floating-point exception" },
+#endif
+#if defined (FLTSTACK)
+  { FLTSTACK, "FLTSTACK", "Unrecoverable stack fault" },
+#endif
+#if defined (FLTPAGE)
+  { FLTPAGE, "FLTPAGE", "Recoverable page fault" },
+#endif
+#if defined (FLTPCINVAL)
+  { FLTPCINVAL, "FLTPCINVAL", "Invalid PC exception" },
+#endif
+#if defined (FLTWATCH)
+  { FLTWATCH, "FLTWATCH", "User watchpoint" },
+#endif
+#if defined (FLTKWATCH)
+  { FLTKWATCH, "FLTKWATCH", "Kernel watchpoint" },
+#endif
+#if defined (FLTSCWATCH)
+  { FLTSCWATCH, "FLTSCWATCH", "Hit a store conditional on a watched page" },
+#endif
+};
+
+/*
+ * Work horse.  Accepts an index into the fault table, prints it pretty. 
+ */
+
+static void
+prettyfprint_faulttable_entry (file, i, verbose)
+     FILE *file;
+     int   i;
+     int   verbose;
+{
+  fprintf (file, "%s", fault_table[i].name);
+  if (verbose)
+    fprintf (file, ": %s\n", fault_table[i].desc);
+  else
+    fprintf (file, " ");
+}
+
+/* 
+ * Prettyprint a hardware fault by number.
+ */
+
+void
+proc_prettyfprint_fault (file, faultno, verbose)
+     FILE *file;
+     int  faultno;
+     int  verbose;
+{
+  int i;
+
+  for (i = 0; i < sizeof (fault_table) / sizeof (fault_table[0]); i++)
+    if (faultno == fault_table[i].value)
+      {
+       prettyfprint_faulttable_entry (file, i, verbose);
+       return;
+      }
+
+  fprintf (file, "Unknown hardware fault %d%c", 
+          faultno, verbose ? '\n' : ' ');
+}
+
+void
+proc_prettyprint_fault (faultno, verbose)
+     int  faultno;
+     int  verbose;
+{
+  proc_prettyfprint_fault (stdout, faultno, verbose);
+}
+
+/*
+ * Prettyprint all the faults in a fltset_t set.
+ *
+ * This function loops thru the fault table, 
+ * using the value field as the index to prismember.
+ * The fault table had better not contain aliases, 
+ * for if it does they will both be printed.
+ */
+
+void
+proc_prettyfprint_faultset (file, fltset, verbose)
+     FILE     *file;
+     fltset_t *fltset;
+     int      verbose;
+{
+  int i;
+
+  for (i = 0; i < sizeof (fault_table) / sizeof (fault_table[0]); i++)
+    if (prismember (fltset, fault_table[i].value))
+      prettyfprint_faulttable_entry (file, i, verbose);
+
+  if (!verbose)
+    fprintf (file, "\n");
+}
+
+void
+proc_prettyprint_faultset (fltset, verbose)
+     fltset_t *fltset;
+     int      verbose;
+{
+  proc_prettyfprint_faultset (stdout, fltset, verbose);
+}
+
+/*
+ * Todo: actions, holds...
+ */
+
+void
+proc_prettyprint_actionset (struct sigaction *actions, int verbose)
+{
+}
+
+void
+_initialize_proc_events ()
+{
+  init_syscall_table ();
+}
diff --git a/gdb/proc_flags.c b/gdb/proc_flags.c
new file mode 100755 (executable)
index 0000000..adbcfbc
--- /dev/null
@@ -0,0 +1,275 @@
+/*
+ * Pretty-print the prstatus flags.
+ * 
+ * Arguments: unsigned long flags, int verbose
+ *
+ */
+
+#include "defs.h"
+
+#if defined (NEW_PROC_API)
+#define _STRUCTURED_PROC 1
+#endif
+
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/procfs.h>
+
+/*  Much of the information used in the /proc interface, particularly for
+    printing status information, is kept as tables of structures of the
+    following form.  These tables can be used to map numeric values to
+    their symbolic names and to a string that describes their specific use. */
+
+struct trans {
+  int value;                    /* The numeric value */
+  char *name;                   /* The equivalent symbolic value */
+  char *desc;                   /* Short description of value */
+};
+
+/* Translate bits in the pr_flags member of the prstatus structure,
+   into the names and desc information. */
+
+static struct trans pr_flag_table[] =
+{
+#if defined (PR_STOPPED)
+  /* Sol2.5: lwp is stopped
+   * Sol2.6: lwp is stopped
+   * Sol2.7: lwp is stopped
+   * IRIX6:  process is stopped
+   * OSF:    task/thread is stopped
+   * UW:     LWP is stopped
+   */
+  { PR_STOPPED, "PR_STOPPED", "Process (LWP) is stopped" },
+#endif
+#if defined (PR_ISTOP)
+  /* Sol2.5: lwp is stopped on an event of interest
+   * Sol2.6: lwp is stopped on an event of interest
+   * Sol2.7: lwp is stopped on an event of interest
+   * IRIX6:  process is stopped on event of interest
+   * OSF:    task/thread stopped on event of interest
+   * UW:     LWP stopped on an event of interest
+   */
+  { PR_ISTOP, "PR_ISTOP", "Stopped on an event of interest" },
+#endif
+#if defined (PR_DSTOP)
+  /* Sol2.5: lwp has a stop directive in effect
+   * Sol2.6: lwp has a stop directive in effect
+   * Sol2.7: lwp has a stop directive in effect
+   * IRIX6:  process has stop directive in effect
+   * OSF:    task/thread has stop directive in effect
+   * UW:     A stop directive is in effect
+   */
+  { PR_DSTOP, "PR_DSTOP", "A stop directive is in effect" },
+#endif
+#if defined (PR_STEP)
+  /* Sol2.5: lwp has a single-step directive in effect
+   * Sol2.6: lwp has a single-step directive in effect
+   * Sol2.7: lwp has a single-step directive in effect
+   * IRIX6:  process has single step pending
+   */
+  { PR_STEP, "PR_STEP", "A single step directive is in effect" },
+#endif
+#if defined (PR_ASLEEP)
+  /* Sol2.5: lwp is sleeping in a system call
+   * Sol2.6: lwp is sleeping in a system call
+   * Sol2.7: lwp is sleeping in a system call
+   * IRIX6:  process is in an interruptible sleep
+   * OSF:    task/thread is asleep within a system call
+   * UW:     LWP is sleep()ing in a system call
+   */
+  { PR_ASLEEP, "PR_ASLEEP", "Sleeping in an (interruptible) system call" },
+#endif
+#if defined (PR_PCINVAL)
+  /* Sol2.5: contents of pr_instr undefined
+   * Sol2.6: contents of pr_instr undefined
+   * Sol2.7: contents of pr_instr undefined
+   * IRIX6:  current pc is invalid
+   * OSF:    program counter contains invalid address
+   * UW:     %pc refers to an invalid virtual address
+   */
+  { PR_PCINVAL, "PR_PCINVAL", "PC (pr_instr) is invalid" },
+#endif
+#if defined (PR_ASLWP)
+  /* Sol2.5: this lwp is the aslwp
+   * Sol2.6: this lwp is the aslwp
+   * Sol2.7: this lwp is the aslwp
+   */
+  { PR_ASLWP, "PR_ASLWP", "This is the asynchronous signal LWP" },
+#endif
+#if defined (PR_AGENT)
+  /* Sol2.6: this lwp is the /proc agent lwp
+   * Sol2.7: this lwp is the /proc agent lwp
+   */
+  { PR_AGENT, "PR_AGENT", "This is the /proc agent LWP" },
+#endif
+#if defined (PR_ISSYS)
+  /* Sol2.5: system process
+   * Sol2.6: this is a system process
+   * Sol2.7: this is a system process
+   * IRIX6:  process is a system process
+   * OSF:    task/thread is a system task/thread
+   * UW:     System process
+   */
+  { PR_ISSYS, "PR_ISSYS", "Is a system process/thread" },
+#endif
+#if defined (PR_VFORKP)
+  /* Sol2.6: process is the parent of a vfork()d child
+   * Sol2.7: process is the parent of a vfork()d child
+   */
+  { PR_VFORKP, "PR_VFORKP", "Process is the parent of a vforked child" },
+#endif
+#ifdef PR_ORPHAN
+  /* Sol2.6: process's process group is orphaned
+   * Sol2.7: process's process group is orphaned
+   */
+  { PR_ORPHAN, "PR_ORPHAN", "Process's process group is orphaned" },
+#endif
+#if defined (PR_FORK)
+  /* Sol2.5: inherit-on-fork is in effect
+   * Sol2.6: inherit-on-fork is in effect
+   * Sol2.7: inherit-on-fork is in effect
+   * IRIX6:  process has inherit-on-fork flag set
+   * OSF:    task/thread has inherit-on-fork flag set
+   * UW:     inherit-on-fork is in effect
+   */
+  { PR_FORK, "PR_FORK", "Inherit-on-fork is in effect" },
+#endif
+#if defined (PR_RLC)
+  /* Sol2.5: run-on-last-close is in effect
+   * Sol2.6: run-on-last-close is in effect
+   * Sol2.7: run-on-last-close is in effect
+   * IRIX6:  process has run-on-last-close flag set
+   * OSF:    task/thread has run-on-last-close flag set
+   * UW:     Run-on-last-close is in effect
+   */
+  { PR_RLC, "PR_RLC", "Run-on-last-close is in effect" },
+#endif
+#if defined (PR_KLC)
+  /* Sol2.5: kill-on-last-close is in effect
+   * Sol2.6: kill-on-last-close is in effect
+   * Sol2.7: kill-on-last-close is in effect
+   * IRIX6:  process has kill-on-last-close flag set
+   * OSF:    kill-on-last-close, superceeds RLC
+   * UW:     kill-on-last-close is in effect
+   */
+  { PR_KLC, "PR_KLC", "Kill-on-last-close is in effect" },
+#endif
+#if defined (PR_ASYNC)
+  /* Sol2.5: asynchronous-stop is in effect
+   * Sol2.6: asynchronous-stop is in effect
+   * Sol2.7: asynchronous-stop is in effect
+   * OSF:    asynchronous stop mode is in effect
+   * UW:     asynchronous stop mode is in effect
+   */
+  { PR_ASYNC, "PR_ASYNC", "Asynchronous stop is in effect" },
+#endif
+#if defined (PR_MSACCT)
+  /* Sol2.5: micro-state usage accounting is in effect
+   * Sol2.6: micro-state usage accounting is in effect
+   * Sol2.7: micro-state usage accounting is in effect
+   */
+  { PR_MSACCT, "PR_MSACCT", "Microstate accounting enabled" },
+#endif
+#if defined (PR_BPTADJ)
+  /* Sol2.5: breakpoint trap pc adjustment is in effect
+   * Sol2.6: breakpoint trap pc adjustment is in effect
+   * Sol2.7: breakpoint trap pc adjustment is in effect
+   */
+  { PR_BPTADJ, "PR_BPTADJ", "Breakpoint PC adjustment in effect" },
+#endif
+#if defined (PR_PTRACE)
+  /* Note: different meanings on Solaris and Irix 6
+   * Sol2.5: obsolete, never set in SunOS5.0
+   * Sol2.6: ptrace-compatibility mode is in effect
+   * Sol2.7: ptrace-compatibility mode is in effect
+   * IRIX6:  process is traced with ptrace() too
+   * OSF:    task/thread is being traced by ptrace
+   * UW:     Process is being controlled by ptrace(2)
+   */
+  { PR_PTRACE, "PR_PTRACE", "Process is being controlled by ptrace" },
+#endif
+#if defined (PR_PCOMPAT)
+  /* Note: PCOMPAT on Sol2.5 means same thing as PTRACE on Sol2.6
+   * Sol2.5 (only): ptrace-compatibility mode is in effect
+   */
+  { PR_PCOMPAT, "PR_PCOMPAT", "Ptrace compatibility mode in effect" },
+#endif
+#ifdef PR_MSFORK
+  /* Sol2.6: micro-state accounting inherited on fork
+   * Sol2.7: micro-state accounting inherited on fork
+   */
+  { PR_MSFORK, "PR_PCOMPAT", "Micro-state accounting inherited on fork" },
+#endif
+
+#ifdef PR_ISKTHREAD
+  /* Irix6: process is a kernel thread */
+  { PR_ISKTHREAD, "PR_KTHREAD", "Process is a kernel thread" },
+#endif
+
+#ifdef PR_ABORT
+  /* OSF (only): abort the current stop condition */
+  { PR_ABORT, "PR_ABORT", "Abort the current stop condition" },
+#endif
+
+#ifdef PR_TRACING
+  /* OSF: task is traced */
+  { PR_TRACING, "PR_TRACING", "Task is traced" },
+#endif
+
+#ifdef PR_STOPFORK
+  /* OSF: stop child on fork */
+  { PR_STOPFORK, "PR_STOPFORK", "Stop child on fork" },
+#endif
+
+#ifdef PR_STOPEXEC
+  /* OSF: stop on exec */
+  { PR_STOPEXEC, "PR_STOPEXEC", "Stop on exec" },
+#endif
+
+#ifdef PR_STOPTERM
+  /* OSF: stop on task exit */
+  { PR_STOPTERM, "PR_STOPTERM", "Stop on task exit" },
+#endif
+
+#ifdef PR_STOPTCR
+  /* OSF: stop on thread creation */
+  { PR_STOPTCR, "PR_STOPTCR", "Stop on thread creation" },
+#endif
+
+#ifdef PR_STOPTTERM
+  /* OSF: stop on thread exit */
+  { PR_STOPTTERM, "PR_STOPTTERM", "Stop on thread exit" },
+#endif
+
+#ifdef PR_USCHED
+  /* OSF: user level scheduling is in effect */
+  { PR_USCHED, "PR_USCHED", "User level scheduling is in effect" },
+#endif
+};
+
+void
+proc_prettyfprint_flags (file, flags, verbose)
+     FILE         *file;
+     unsigned long flags;
+     int           verbose;
+{
+  int i;
+
+  for (i = 0; i < sizeof (pr_flag_table) / sizeof (pr_flag_table[0]); i++)
+    if (flags & pr_flag_table[i].value)
+      {
+       fprintf (file, "%s ", pr_flag_table[i].name);
+       if (verbose)
+         fprintf (file, "%s\n", pr_flag_table[i].desc);
+      }
+  if (!verbose)
+    fprintf (file, "\n");
+}
+
+void
+proc_prettyprint_flags (flags, verbose)
+     unsigned long flags;
+     int           verbose;
+{
+  proc_prettyfprint_flags (stdout, flags, verbose);
+}
diff --git a/gdb/proc_why.c b/gdb/proc_why.c
new file mode 100755 (executable)
index 0000000..dbfec3c
--- /dev/null
@@ -0,0 +1,158 @@
+/*
+ * Pretty-print the pr_why value.
+ * 
+ * Arguments: unsigned long flags, int verbose
+ *
+ */
+
+#include "defs.h"
+
+#if defined(NEW_PROC_API)
+#define _STRUCTURED_PROC 1
+#endif
+
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/procfs.h>
+
+/*  Much of the information used in the /proc interface, particularly for
+    printing status information, is kept as tables of structures of the
+    following form.  These tables can be used to map numeric values to
+    their symbolic names and to a string that describes their specific use. */
+
+struct trans {
+  int value;                    /* The numeric value */
+  char *name;                   /* The equivalent symbolic value */
+  char *desc;                   /* Short description of value */
+};
+
+/*  Translate values in the pr_why field of the prstatus struct. */
+
+static struct trans pr_why_table[] =
+{
+#if defined (PR_REQUESTED)
+  /* All platforms */
+  { PR_REQUESTED, "PR_REQUESTED", 
+    "Directed to stop by debugger via P(IO)CSTOP or P(IO)CWSTOP" },
+#endif
+#if defined (PR_SIGNALLED)
+  /* All platforms */
+  { PR_SIGNALLED, "PR_SIGNALLED", "Receipt of a traced signal" },
+#endif
+#if defined (PR_SYSENTRY)
+  /* All platforms */
+  { PR_SYSENTRY, "PR_SYSENTRY", "Entry to a traced system call" },
+#endif
+#if defined (PR_SYSEXIT)
+  /* All platforms */
+  { PR_SYSEXIT, "PR_SYSEXIT", "Exit from a traced system call" },
+#endif
+#if defined (PR_JOBCONTROL)
+  /* All platforms */
+  { PR_JOBCONTROL, "PR_JOBCONTROL", "Default job control stop signal action" },
+#endif
+#if defined (PR_FAULTED)
+  /* All platforms */
+  { PR_FAULTED, "PR_FAULTED", "Incurred a traced hardware fault" },
+#endif
+#if defined (PR_SUSPENDED)
+  /* Solaris and UnixWare */
+  { PR_SUSPENDED, "PR_SUSPENDED", "Process suspended" },
+#endif
+#if defined (PR_CHECKPOINT)
+  /* Solaris only */
+  { PR_CHECKPOINT, "PR_CHECKPOINT", "Process stopped at checkpoint" },
+#endif
+#if defined (PR_FORKSTOP)
+  /* OSF only */
+  { PR_FORKSTOP, "PR_FORKSTOP", "Process stopped at end of fork call" },
+#endif
+#if defined (PR_TCRSTOP)
+  /* OSF only */
+  { PR_TCRSTOP, "PR_TCRSTOP", "Process stopped on thread creation" },
+#endif
+#if defined (PR_TTSTOP)
+  /* OSF only */
+  { PR_TTSTOP, "PR_TTSTOP", "Process stopped on thread termination" },
+#endif
+#if defined (PR_DEAD)
+  /* OSF only */
+  { PR_DEAD, "PR_DEAD", "Process stopped in exit system call" },
+#endif
+};
+
+void
+proc_prettyfprint_why (file, why, what, verbose)
+     FILE         *file;
+     unsigned long why; 
+     unsigned long what; 
+     int           verbose;
+{
+  int i;
+
+  if (why == 0)
+    return;
+
+  for (i = 0; i < sizeof (pr_why_table) / sizeof (pr_why_table[0]); i++)
+    if (why == pr_why_table[i].value)
+      {
+       fprintf (file, "%s ", pr_why_table[i].name);
+       if (verbose)
+         fprintf (file, ": %s ", pr_why_table[i].desc);
+
+       switch (why) {
+#ifdef PR_REQUESTED
+       case PR_REQUESTED:
+         break;        /* Nothing more to print. */
+#endif
+#ifdef PR_SIGNALLED
+       case PR_SIGNALLED:
+         proc_prettyfprint_signal (file, what, verbose);
+         break;
+#endif
+#ifdef PR_FAULTED
+       case PR_FAULTED:
+         proc_prettyfprint_fault (file, what, verbose);
+         break;
+#endif
+#ifdef PR_SYSENTRY
+       case PR_SYSENTRY:
+         fprintf (file, "Entry to ");
+         proc_prettyfprint_syscall (file, what, verbose);
+         break;
+#endif
+#ifdef PR_SYSEXIT
+       case PR_SYSEXIT:
+         fprintf (file, "Exit from ");
+         proc_prettyfprint_syscall (file, what, verbose);
+         break;
+#endif
+#ifdef PR_JOBCONTROL
+       case PR_JOBCONTROL:
+         proc_prettyfprint_signal (file, what, verbose);
+         break;
+#endif
+#ifdef PR_DEAD
+       case PR_DEAD:
+         fprintf (file, "Exit status: %d\n", what);
+         break;
+#endif
+       default:
+         fprintf (file, "Unknown why %d, what %d\n", why, what);
+         break;
+       }
+       fprintf (file, "\n");
+
+       return;
+      }
+  fprintf (file, "Unknown pr_why.\n");
+}
+
+void
+proc_prettyprint_why (why, what, verbose)
+     unsigned long why; 
+     unsigned long what; 
+     int           verbose;
+{
+  proc_prettyfprint_why (stdout, why, what, verbose);
+}