blob: 8ed06120d2e414ad699eef4701a5dc0ddffff350 [file] [log] [blame]
Sun Dec 19 18:56:38 1999 Andrew Cagney <>
* breakpoint.c (mention): Delete ui-out breakpoint code. Mention
calls breakpoint_create_event and that, eventually, calls
gdb_breakpoint_query which displays the breakpoint details.
(hbreak_command_wrapper, thbreak_command_wrapper): Delete.
Wed Dec 29 17:41:11 1999 Andrew Cagney <>
* 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
* defs.h (gdb_breakpoint): Add declaration.
1999-12-22 Michael Chastain <>
* 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 <>
* blockframe.c (generic_pop_current_frame): Cosmetic changes to
1999-12-20 Michael Snyder <>
* 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.
* Add rules for above new files.
* config/i386/ Add above new files to NATDEPFILES.
* config/sparc/ ditto.
* config/i386/ ditto.
* config/i386/ ditto.
* config/i386/ ditto.
* config/i386/ ditto.
* config/m68k/ ditto.
* config/m88k/ ditto.
* config/mips/ ditto.
* config/mips/ ditto.
* config/mips/ ditto.
* config/powerpc/ ditto.
* config/alpha/ ditto.
* config/alpha/ 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
*; ditto.
* 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.
* config/mips/nm-irix4.h: ditto.
1999-12-21 Jim Blandy <>
* (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 <>
* 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 <>
* test for <stdint.h>, which is not available
on earlier versions of Linux.
* 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 <>
* target.c (find_target_beneath): Change ``='' in if to ``==''.
1999-12-16 Michael Snyder <>
* 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 <>
* 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 <>
* 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 <>
* 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/ add lin-thread.o to the link, and add
-ldl and -rdynamic since libthread_db is a dynamic library.
* config/alpha/ ditto.
* test for thread_db.h, proc_service.h
* configure: autoconf.
* conditionally define HAVE_THREAD_DB_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 <>
* 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 <>
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 <>
* 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 <>
* 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
(child_frame_chain_saved_pc): Ditto.
* config/i386/tm-cygwin.h: Define frame handling stuff.
1999-12-15 Stan Shebs <>
ARM GNU/Linux support and general ARM target fixes/cleanup from
Scott Bambrough <>, plus obsoletion of the old
RISCix support.
* NEWS: Mention addition and obsoletion.
* Recognize arm* instead of just arm.
(arm*-*-linux*): Recognize.
* configure.tgt: Ditto, plus assume arm*-*-* is embedded.
* config/arm/, config/arm/, config/arm/nm-arm.h,
config/arm/xm-arm.h: Mark as OBSOLETE.
* config/arm/, config/arm/tm-embed.h: New files.
* config/arm/, config/arm/, 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.
THUMB_BE_BREAKPOINT): Move to here from arm-tdep.c.
(NUM_REGS): Define as sum.
(NUM_FREGS, NUM_SREGS, NUM_GREGS): New definitions.
REGISTER_VIRTUAL_SIZE): Rewrite to use symbolic values.
EXTRACT_RETURN_VALUE): Rewrite to use new functions.
(IN_SIGTRAMP): Remove definition.
* arm-convert.s: Mark as OBSOLETE.
* arm-linux-nat.c: New file.
* 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
* arm-xdep.c: Mark as OBSOLETE.
1999-12-15 Elena Zannoni <>
* 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
* target.h (to_async_mask_value): New entry in the target
(target_async_mask): Export.
(target_async_mask_value): Define.
Wed Dec 15 11:24:32 1999 Jeffrey A Law (
* hp-psymtab-read.c (trans_lang): Use HP_LANGUAGE_FORTRAN instead
Wed Dec 15 13:37:55 1999 Andrew Cagney <>
* gdb-events.h, gdb-events.c (set_gdb_event_hooks): Return the old
event hooks vector.
1999-08-13 Jim Kingdon <>
* 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
1999-12-14 Stan Shebs <>
* arm-tdep.c (arm_get_next_pc): Add argument to shifted_reg_val
1999-12-14 Mark Salter <>
* mips-tdep.c (mips_print_register): Fix printing of individual
Tue Dec 14 23:29:19 1999 Andrew Cagney <>
* defs.h (mcalloc): Delcare.
* utils.c (xcalloc, mcalloc): New functions.
1999-12-13 Stan Shebs <>
* 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 <>
* 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 <>
* 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.
(value_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 <>
* main.c (main): Remove unused variable.
From Hubert VERSTRAETE (
* 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 <>
* breakpoint.c (do_captured_breakpoint_query,
gdb_breakpoint_query): New functions. Implement a breakpoint
* defs.h (enum gdb_rc): Declare.
(gdb_breakpoint_query): Declare.
Mon Dec 13 14:18:06 1999 Andrew Cagney <>
* gdb-events.h: Fix typo in description of breakpoint events.
* Update.
Mon Dec 13 13:57:26 1999 Andrew Cagney <>
* breakpoint.c (ep_type_description_t): Delete.
(print_one_breakpoint): Add local declaration of struct
Mon Dec 13 12:38:31 1999 Andrew Cagney <>
* top.h: Delete #include <setjmp.h>. Moved to top.c.
SIGLONGJMP): Delete. Moved to top.c
(error_return, quit_return): Delete extern declarations.
* top.c: #include <setjmp.h>.
(error_return, quit_return): Make static.
Mon Dec 13 11:54:12 1999 Andrew Cagney <>
* tracepoint.c (trace_start_command, tracepoints_info): Print
step_count using %ld.
* (tracepoint.o): Compile tracepoint.o with -Werror.
1999-12-12 Elena Zannoni <>
* 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 <>
* 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 <>
* eval.c (evaluate_subexp): Only inline when GNUC and not STDC.
Sat Dec 11 17:52:03 1999 Andrew Cagney <>
* breakpoint.c (print_one_breakpoint): New function. Move
breakpoint print code to here.
(breakpoint_1): From here.
(print_one_breakpoint): Merge in ui-out code.
(print_one_breakpoint): Add local variabls ``stb'' and
(breakpoint_1): Use print_one_breakpoint when UI.
(print_one_breakpoint): Print breakpoint type when UI.
(breakpoint_1): Merge UI out code into non UI function.
* ui-out.c (make_cleanup_ui_out_stream_delete): New function. Wrap
(do_stream_delete): New function. Wrap ui_out_stream_delete.
* ui-out.h (make_cleanup_ui_out_stream_delete): Declare.
Sat Dec 11 00:12:41 1999 Andrew Cagney <>
* breakpoint.c (breakpoint_1): Clone breakpoint_1 creating UI
and non-UI versions.
Mon Dec 6 20:31:28 1999 Andrew Cagney <>
* 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 <>
* 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/ (TDEPFILES): Move solib.o from here.
* config/sparc/ (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.
* Add patterns for sparc-*-netbsdaout* and
* config/sparc/nm-nbsdelf.h: New file.
* config/sparc/ New file.
Wed Dec 8 19:56:48 1999 Andrew Cagney <>
* frame.h, blockframe.c: Rename default_frame_chain_valid to
file_frame_chain_valid. Rename alternate_frame_chain_valid to
* 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 <>
* blockframe.c (generic_file_frame_chain_valid): Rename
* 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:
* blockframe.c (generic_func_frame_chain_valid): New function.
Implement dummy-frame equivalent of function based frame chain
* frame.h (generic_func_frame_chain_valid): Declare.
Wed Dec 8 16:26:27 1999 Andrew Cagney <>
* 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 <>
* 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 <> but the ChangeLog was omitted.
1999-12-07 Jim Blandy <>
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
* 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
* config/i386/ (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 <>:
* 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 <>
* dcache.c (set_dcache_state): New function.
* dcache.h: Declare set_dcache_state().
Sat Dec 4 15:17:44 1999 Andrew Cagney <>
* 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 <>
* 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
* 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 <>
* (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.
1999-12-02 Elena Zannoni <>
* breakpoint.c (print_it_typical): Print reason for stopping in
case of bp_until.
Thu Dec 2 17:14:53 1999 Andrew Cagney <>
* ser-pipe.c: Include <string.h> for memset().
1999-12-01 Jim Blandy <>
* 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 Elena Zannoni <>
* stack.c (return_command_wrapper): New function, to export
1999-12-01 Christopher Faylor <>
* config/i386/tm-cygwin.h: Change tm-i386.h include back to tm-i386v.h.
1999-12-01 Elena Zannoni <>
* 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
* 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,
1999-11-30 Christopher Faylor <>
* win32-nat.c (mappings): Reorganize slightly for new uniform i386
register configuration.
(do_child_fetch_inferior_registers): Handle special case floating point
(handle_output_debug_string): Handle cygwin-specific signals broadcast
from the cygwin DLL.
(handle_exceptions): Add code to properly allow continuation after a
(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
(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
Patch from Egor Duda (
* 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 <>
* 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 <>
* infcmd.c (step_once): New function. Used to do just one step
(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-loop.c (inferior_event_handler): Handle new case
* 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 <>
* utils.c (verror): Don't traverse va_list argument twice. Also,
removed extraneous va_end() call.
1999-11-29 Michael Snyder <>
* 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 <>
* infrun.c (print_stop_reason): Don't print end of stepping reason
if we are in the middle of a multistep command (same condition as
in normal_stop).
* 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 <>
* gdbtypes.c (init_simd_type): Make static.
* (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 <>
* stabsread.c: Revert 1999-11-09 Jim Blandy
<> and 1999-11-08 Jim Blandy
<>. Broken on non-Linux targets.
1999-11-26 Elena Zannoni <>
* 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 <>
* coffread.c (coff_symfile_read): Treat "epoc-pe" targets as "pe"
* dbxread.c (dbx_read_symfile): Treat "epoc-pe" targets as "pe"
Wed Nov 24 17:07:28 1999 Andrew Cagney <>
* (init.c): Add SUBDIR_INIT_FILES so that sub
directories can hook in extra init files.
Wed Nov 24 11:41:01 1999 Andrew Cagney <>
* ui-out.h (field_string_ftype, ui_out_field_string): Make string
parameter const.
* cli-out.c (cli_field_string): Update.
* ui-out.c (uo_field_string, ui_out_field_string,
default_field_string): Update.
1999-11-23 Elena Zannoni <>
* 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.
Add output for ui case.
(print_transfer_performance): Add output for ui case.
Thu Nov 18 11:54:24 1999 Andrew Cagney <>
* arc-tdep.c (codestream_fill): Rewrite byte swap code using
function extract_unsigned_integer.
Wed Nov 17 17:01:06 1999 Andrew Cagney <>
* arm-xdep.c: #include "arm-opcode.h" -> "opcode/arm.h".
1999-11-22 Jim Blandy <>
* (i386-tdep.o): Update list of dependencies.
1999-11-22 Elena Zannoni <>
* stack.c (print_frame_info_base): Adjust output for stepi/nexti case.
1999-11-22 Jim Blandy <>
* config/i386/tm-i386v.h (NUM_REGS, REGISTER_NAMES,
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 <>
* target.c (do_target_signal_to_host): New function. Indicate of
the conversion was successful to the caller via an additional
(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 <>:
* 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 <>
* 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.
* varobj.c (varobj_gen_name, c_name_of_child, c_value_of_variable,
cplus_value_of_variable): Replace strdup with xstrdup.
* ui-out.c (ui_out_table_begin): Ditto.
Mon Nov 22 12:02:47 1999 Andrew Cagney <>
* bcache.c (print_bcache_statistics): Fix printf_filtered
(print_percentage): Make function void.
1999-11-21 Jim Blandy <>
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
(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 <>
* 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 <>
* top.c (print_command_lines): Remove unused var.
1999-11-19 Jim Kingdon <>
Patch applied by Jim Blandy <>:
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/, config/sparc/,
config/alpha/ Add linux-thread.o.
1999-11-18 Tom Tromey <>
* 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 <>
* findvar.c (SWAP_FLOATING): Delete macro. Unused.
1999-11-16 Mark Salter <>
* monitor.c (monitor_supply_register): Initialize value to zero.
1999-11-15 Eli Zaretskii <>
(Patches applied by Jim Blandy <>)
Change DJGPP target use the common register layout in
* config/i386/tm-go32.h: #include "i386/tm-i386.h", not
(HAVE_I387_REGS): Define.
(HAVE_SSE_REGS): Undefine.
(i387_to_double, double_to_i387): Declarations deleted.
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
(sig_map): Map exception 7 to TARGET_SIGNAL_EMT.
* utils.c (notice_quit): Doc fixes.
1999-11-15 Kevin Buettner <>
* 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 <>
* remote-rdi.c: Fix indentation accordingly to GNU standards.
1999-11-11 Elena Zannoni <>
* breakpoint.h: Export {watch, awatch, rwatch}_command_wrapper().
* breakpoint.c (print_it_typical): Add output for bp_watchpoint,
bp_hardware_watchpoint, read_watchpoint, access_watchpoint cases.
(watchpoint_check): Add output for when the watchpoint goes out of
(mention): Add output for bp_watchpoint, bp_hardware_watchpoint,
read_watchpoint, access_watchpointcases. Move end of list to end
of function.
({watch, awatch, rwatch}_command_wrapper): New functions, to
export {watch, awatch, rwatch}_command().
Thu Oct 28 00:28:51 1999 Andrew Cagney <>
* d10v-tdep.c (d10v_gdbarch_init): Make the d10v:ts3 the default.
Tue Oct 26 09:57:29 1999 Andrew Cagney <>
* Re-sync with Cagney's earlier const change.
Sun Oct 24 20:07:31 1999 Andrew Cagney <>
* d10v-tdep.c (struct gdbarch_tdep): Replace nr_a_regs,
imap0_regnum, nr_imap_regs, dmap0_regnum, with dmap_register and
Convert to enums.
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
Sun Oct 24 00:12:44 1999 Andrew Cagney <>
* d10v-tdep.c (struct gdbarch_tdep): Declare.
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 <>
* config/d10v/tm-d10v.h (IMAP0_REGNUM, IMAP1_REGNUM, DMAP_REGNUM):
Delete macro.
* 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
(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
Sat Oct 23 19:08:39 1999 Andrew Cagney <>
* 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.
(d10v_register_sim_regno): Declare.
Sat Oct 23 16:39:34 1999 Andrew Cagney <>
* gdbarch.c (initialize_current_architecture): Make ``choice''
Wed Nov 10 16:10:22 1999 Jeffrey A Law (
* hppa-tdep.c (hppa_fix_call_dummy): Fix typo in error message.
Wed Nov 10 16:47:06 1999 Andrew Cagney <>
* 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.
* varobj.c (c_value_of_variable): Use mem_fileopen () and
gdb_file_xstrdup() instead of strdup and tui_sfileopen.
* remote-sim.c (gdb_os_error): Rewrite using verror. Don't call
Wed Nov 10 14:21:43 1999 Andrew Cagney <>
* defs.h (gdb_file_xstrdup): New function.
* utils.c (gdb_file_xstrdup, do_gdb_file_xstrdup): Implement.
* ui-out.c (ui_out_stream_new): Simplify, XMALLOC doesn't return
if malloc failed. Use mem_fileopen and gdb_file_xstrdup.
1999-11-09 Stan Shebs <>
* 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 <>
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 <>
* 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 <>
* 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 <>
* (procfs.o): Don't compile with -Werror for moment.
* sol-thread.c (info_cb): Move assignments to outside of if
(info_cb): Use paddr when printing addresses.
1999-11-08 Jim Blandy <>
* defs.h (ULONGEST_MAX, LONGEST_MAX): New definitions.
* stabsread.c (read_huge_number): Parse and return LONGEST values.
1999-11-08 Mark Salter <>
* utils.c (floatformat_to_doublest): Fix conversion of denormals.
1999-11-08 Elena Zannoni <>
* breakpoint.c (hbreak_command_wrapper): New function, to export
(thbreak_command_wrapper): New function, to export thbreak_command.
* symtab.c (rbreak_command_wrapper): New function, to export
* breakpoint.h (hbreak_command_wrapper, thbreak_command_wrapper,
rbreak_command_wrapper): Export.
Mon Nov 8 20:14:13 1999 Andrew Cagney <>
* 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
(set_memory_packet_size): Print usage when ``args'' is NULL.
Mon Nov 8 18:18:07 1999 Andrew Cagney <>
* defs.h, utils.c (gdb_file_deallocate): Delete.
* varobj.c (varobj_get_type, c_value_of_variable): Use
* ui-out.c (ui_out_stream_delete): Use gdb_file_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
(tui_file_adjust_strbuf): Rename gdb_file_adjust_strbuf.
* utils.c (error_stream, error_last_message): Update.
* varobj.c (varobj_get_type, c_value_of_variable): Update.
* ui-out.c (ui_out_field_stream): Update.
Mon Nov 8 16:28:00 1999 Andrew Cagney <>
* 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
* symmisc.c (maintenance_print_symbols,
maintenance_print_psymbols, maintenance_print_msymbols): Use
* serial.c (do_serial_close): Use gdb_file_delete.
Mon Nov 8 14:16:32 1999 Andrew Cagney <>
* 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
Thu Nov 4 11:59:24 1999 Andrew Cagney <>
* 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.
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 <>
* 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
* 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
(captured_command_loop): New function. Wrap call to command_loop.
1999-11-05 Elena Zannoni <>
* 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.
1999-11-05 Elena Zannoni <>
* infcmd.c (print_return_value): Add output for UI.
Fri Nov 5 16:32:04 1999 Andrew Cagney <>
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 <>
* 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
1999-11-04 Jeff Holcomb <>
* remote-rdp.c (send_rdp): Fix typo.
1999-11-04 Michael Snyder <>
* breakpoint.c (commands_command): remove unprotected ref to
args pointer (which may be null).
1999-11-04 Elena Zannoni <>
* 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 <>
* breakpoint.c (print_it_typical): Print reason for stopping in
case of bp_finish.
1999-11-04 Elena Zannoni <>
* infrun.c (handle_inferior_event): Add calls to print_stop_reason()
for end of stepping range cases.
(print_stop_reason): Add output for END_STEPPING_RANGE, EXITED,
* breakpoint.c (print_it_typical): Add printing of stop reason for
bp_breakpoint case.
Thu Nov 4 17:46:36 1999 Andrew Cagney <>
* 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 <>
* breakpoint.c (get_number): Delete static declaration.
1999-11-03 Michael Snyder <>
* breakpoint.c (map_breakpoint_numbers): use a match count
instead of a goto.
1999-11-03 Nick Clifton <>
* config/mcore/tm-mcore.h (TARGET_BYTE_ORDER_DEFAULT): Change to
little endian.
1999-11-02 Michael Snyder <>
* 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):
* linux-thread.c (_initialize_linux_thread, linux_thread_new_objfile):
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 <>
* NEWS: Mention breakpoint ranges.
1999-11-02 Fernando Nasser <>
* 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 <>
* 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:
(print_stop_reason): New static function. Print relevant messages
when stopping.
1999-11-02 Fernando Nasser <>
* rdi-share/ Rename dependency from bytesex.o to
1999-11-02 Fernando Nasser <>
* kod.c: Remove prototype for show_kod() which is no longer used.
1999-11-01 Michael Snyder <>
Tom Tromey <>
* 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 <>
* remote-rdi.c (_initialize_remote_rdi): Make log commands
subcommands of maintenance. Remove improper identation from
command documentation.
1999-11-01 Fernando Nasser <>
From Grant Edwards <>:
* 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
* rdi-share/unixcomm.c (Unix_ReadSerial): Print system error code
if read() system call fails.
1999-11-01 Fernando Nasser <>
* 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/ Reflect above changes.
* rdi-share/ Reflect above changes.
1999-11-01 Jimmy Guo <>
* 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 <>
From Grant Edwards <>:
* 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 <>
From Grant Edwards <>:
* 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 <>
From Grant Edwards <>:
* 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/ Reflect above changes.
* rdi-share/ Reflect above changes.
1999-11-01 Fernando Nasser <>
From Grant Edwards <>:
* 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
(_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
* 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 <>
From Grant Edwards <>:
* 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
1999-11-01 Elena Zannoni <>
* stack.c (print_frame_info_base): Do not change printing of stack
frame info if not running with our interpreter.
1999-11-01 Fernando Nasser <>
From Grant Edwards <>:
* 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 <>
From Grant Edwards <>:
* 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 <>
* i386-linux-nat.c (dummy_sse_values): Also define for systems
1999-10-29 Jim Blandy <>
Hardware watchpoint fix from Eli Zaretskii <>:
* 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 <>
* breakpoint.h (bpstat_print): Return 'enum print_stop_action',
not 'int'.
1999-10-29 Jim Blandy <>
* acconfig.h: Fix entries for HAVE_STRUCT_SAVE_STATE_T,
* Regenerated.
1999-10-28 Jim Blandy <>
Fixes for warnings from Andreas Jaeger <>.
* 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 <>
* infcmd.c: Fix typo.
1999-10-28 Elena Zannoni <>
* stack.c (select_frame_command_wrapper): Fix typo.
* infcmd.c (interrupt_target_command_wrapper): Wrapper to allow use of
static interrupt_target_command outside of file.
* stack.c (select_frame_command_wrapper): Wrapper to allow use of
static select_frame_command outside of file.
1999-10-28 Jim Blandy <>
* 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
* Check for PTRACE_GETXFPREGS, and #define
* acconfig.h: Add entry for HAVE_PTRACE_GETXFPREGS.
* configure, 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.
(have_ptrace_getxfpregs): New variable.
(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 <>
* 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
* 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/ (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
(INCLUDE_CFLAGS): Added -I.. .
1999-10-27 Nick Clifton <>
* arm-tdep.c (THUMB_BE_BREAKPOINT): Change to 0xbebe.
(THUMB_LE_BREAKPOINT): Change to 0xbebe.
1999-10-25 Elena Zannoni <>
* stack.c (print_frame_info_base): Don't print the arguments
during a backtrace.
* stack.c (print_frame_info_base): When setting source to 0, save
and restore old value. Do this only if source is greater than
Mon Oct 25 18:22:06 1999 Andrew Cagney <>
* 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 <>
* gdbarch.h (REGISTER_GDBARCH_SWAP): Define.
* Update.
Sat Oct 23 16:39:34 1999 Andrew Cagney <>
* gdbarch.c (initialize_current_architecture): Make ``choice''
1999-10-22 Tom Tromey <>
* 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-22 Elena Zannoni <>
* stack.c (print_frame_info_base): Check for value of source
parameter equal to 2, and print address anyway. Set source to 0
later, to avoid printing file & line info again.
1999-10-21 Michael Snyder <>
* utils.c (chars_per_line): fix typo in comment.
1999-10-21 Elena Zannoni <>
* 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 <>
* breakpoint.c (print_it_normal): Reorganize into a switch
1999-10-21 Elena Zannoni <>
* (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 <>
* (dwarf2read.o): Note that this depends on bfd/elf-bfd.h.
(elf_bfd_h): New variable.
1999-10-19 Jim Blandy <>
* 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 <>
* stack.c (print_frame_info_base): Add printing of list
begin and end.
* 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_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
Mon Oct 18 17:32:51 1999 Andrew Cagney <>
* 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 <>
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.
NUM_FREGS): Remove #undefs and subsequent redefinitions: we're
using the values from tm-i386.h now.
FPREG_BYTES): Deleted.
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.
(MAX_NUM_REGS): New macro.
(REGISTER_NAMES): Expand name list with FPU control registers and
SSE registers.
fully describing the FPU register set.
(XMM0_REGNUM, XMM7_REGNUM, MXCSR_REGNUM): New macros, describing
the SSE register set.
convenience macros.
these into tables, since the register sizes are pretty irregular.
(i386_register_byte, i386_register_raw_size,
i386_register_virtual_size): New extern declarations.
(MAX_REGISTER_RAW_SIZE): Bump to 16, for the SSE registers.
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-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 <>
* 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 <>
* 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 <>
* 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 <>
* 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 <>
* target.c (target_xfer_memory_partial): New function. Simple
implementation of partial memory reads.
(target_read_memory_partial): New function. Replaces old
(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 <>
* 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 <>
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 <>
* remote-hms.c: Commented out H8 code.
Fri Oct 15 17:46:39 1999 Andrew Cagney <>
* dcache.c (dcache_p): Rename variable remote_dcache. Make
(_initialize_dcache): Fix description of ``set remotecache''.
Cache is OFF by default.
1999-10-13 Jim Blandy <>
* valops.c (value_push): Don't forget to initialize container_len.
Wed Oct 13 17:58:20 1999 Andrew Cagney <>
* utils.c (tui_file_flush): Don't call flush_hook. Don't try to
flush ``astring''.
* Update
* top.c (flush_hook): Delete.
1999-10-13 Kevin Buettner <>
* mem-break.c (memory_insert_breakpoint,
memory_remove_breakpoint): Added missing return statements.
Wed Oct 13 20:53:42 1999 Andrew Cagney <>
* 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 <>
* mem-break.c (default_memory_insert_breakpoint): Renamed from
(default_memory_remove_breakpoint): Renamed from
(memory_insert_breakpoint, memory_remove_breakpoint,
* target.h (default_memory_remove_breakpoint,
default_memory_insert_breakpoint): Added declarations.
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
Wed Oct 13 19:15:51 1999 Andrew Cagney <>
* defs.h: Remove PARAMS from all declarations. Re-indent. Clean
up the gdb_file declarations.
Tue Oct 12 12:19:07 1999 David Taylor <>
* 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 <>
* 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 <>
* 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 <>
Fix from Jim Kingdon <>, 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 <>
* 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 <>
* 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 <>
* 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 <>
* 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 <>
* main.c (print_gdb_help): Fix bug reporting address.
* gnu-regex.h, gnu-regex.c: Ditto.
1999-10-07 Jim Blandy <>
* 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
* 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 <>
* 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
* 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
* 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 <>
* (monitor.o): Allow monitor.o to be compiled with
* 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
1999-10-06 Stan Shebs <>
* MAINTAINERS: Switch ARM target maintenance from Elena
Zannoni to Jim Ingham.
1999-10-06 Frank Ch. Eigler <>
* remote.c (hexnumnstr): New function. Allow setting of width.
(hexnumstr): Call the above.
(remote_write_bytes): Fill in X-protocol address field more
1999-10-06 Fred Fish <>
* xcoffread.c (xcoff_symfile_offsets): Fix typo, addr->addrs.
1999-10-06 Elena Zannoni <>
* 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 (inferior_event_handler_wrapper): New function.
(inferior_event_handler): Handle a request to quit and kill the
Include remote.h.
* inf-loop.h (inferior_event_handler_wrapper): Export.
1999-10-04 James Ingham <>
* 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 <>
* printcmd.c (output_command): Makes sure result from the output
command is printed before the next prompt.
1999-10-04 Fernando Nasser <>
* 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 <>
* 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
(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 <>
* corefile.c (memory_error): Use error_stream() and eliminate call
to return_to_top_level().
1999-10-04 Fernando Nasser <>
* 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
* main.c (main): Add call to error_init().
1999-10-04 Fernando Nasser <>
* varobj.c (varobj_get_type): Call tui_sfileopen() instead of
deprecated gdb_file_init_astream().
(c_value_of_variable): Ditto.
* ui-out.c (ui_out_stream_new): Ditto.
1999-10-04 Fernando Nasser <>
* utils.c (tui_sfileopen): New function. Replaces
* defs.h: Add prototype for the above.
Mon Oct 4 19:25:55 1999 Andrew Cagney <>
* symfile.c (add_symbol_file_command): Fix -Wformat on query call.
1999-10-01 Elena Zannoni <>
* 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-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 <>
* 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,
* 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 <>
* 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.
* (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 <>
* ser-unix.c: Add some notes on how the async code works.
Fri Oct 1 01:45:32 1999 Jeffrey A Law (
* somread.c (som_symfile_offsets): Fix typo in last change.
1999-09-30 Fred Fish <>
* 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 (
* 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 <>
* 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,
(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 <>
* 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
(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 (
* breakpoint.c (insert_breakpoints): Addresses are CORE_ADDRs,
not "int"s.
(remove_breakpoint): Likewise.
1999-09-29 Fred Fish <>
* 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.
* varobj.c (varobj_create, new_root_variable): Ditto.
Thu Sep 30 10:36:19 1999 Andrew Cagney <>
* ser-unix.c (ser_unix_flush_input): New function. Discard input
(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 <>
* 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 <>
* serial.h (struct _serial_t): Add field debug_p.
* 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 <>
* serial.h (serial_event_ftype): Replace FD and ERROR args with
* 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 <>
* (AC_CHECK_FUNCS): Test for sigprocmask.
* configure, Re-generate.
* event-top.c (async_stop_sig): Use sigprocmask when available.
1999-09-29 Doug Evans <>
* sh-stub.c (handle_exception): Fix typo in patch of 1999-08-26.
* m68k-stub.c (handle_exception): Ditto.
1999-09-28 Fred Fish <>
* 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 <>
* event-loop.c (poll_timers): Check whether the timer list has any
element on it by looking at the first element pointer, instead of
Wed Sep 29 18:02:31 1999 Andrew Cagney <>
* command.c: Attempt to include POSIX <sys/wait.h> before
* ser-unix.c (hardwire_print_tty_state): Ditto.
* inflow.c (child_terminal_info): Fix printf args.
1999-09-28 Elena Zannoni <>
* 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 (
* 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 <>
* 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 <>
* 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 <>
* 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.
* (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 <>
* 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
* 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 <>
* infcmd.c (run_command): Call async_disable_stdin() only if
dealing with an asynchronous target.
Mon Sep 27 11:48:38 1999 Andrew Cagney <>
* 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
(remote_can_async_p, remote_is_async_p, remote_async): New
(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
Sun Sep 26 02:10:47 1999 Andrew Cagney <>
* 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 <>
* 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
(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 <>
* (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
* 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 <>
* defs.h (enum command_class): Move from here.
* command.h (command_class): To here.
1999-09-24 Kevin Buettner <>
* breakpoint.c (bpstat_stop_status): Use not_a_breakpoint to
help properly set bp_addr.
* infrun.c (handle_inferior_event): Simplify calls to
1999-09-24 Elena Zannoni <>
* 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
(async_interrupt_query): New function. Async case of
* 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 <>
* ax-gdb.c (expr_to_agent): Don't forget to pass argument to
1999-09-24 Elena Zannoni <>
* 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 <>
* ax-gdb.c: Use internal_error instead of error, where
1999-09-23 James Ingham <>
* 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
* 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
1999-09-23 Fernando Nasser <>
* varobj.c (varobj_set_value): Fix handling of baseclasses and
correct the behavior when it is not a baseclass (both cases were
dumping core).
1999-09-23 Fernando Nasser <>
* varobj.c (varobj_update): Fix setting of child error field.
1999-09-23 Elena Zannoni <>
* 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.
1999-09-23 Fernando Nasser <>
* varobj.c (varobj_gen_name): Dynamically allocate variable object
name string.
(varobj_update): Fix creation of result list.
Wed Sep 22 10:35:32 1999 Andrew Cagney <>
* (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 <>
* procfs.c (init_procinfo): move fltset initialization to caller.
(do_attach, create_procinfo): initialize fltset.
1999-09-22 Fernando Nasser <>
* varobj.c (_initialize_varobj): Rename varobjdebug to debugvarobj
to avoid conflict with "set var".
1999-09-22 Fernando Nasser <>
* varobj.c (varobj_get_type, c_value_of_variable): Remove
dependency on ui_out.[ch].
1999-09-22 Fernando Nasser <>
* varobj.c (varobj_update): Fix order in which changed variables
are reported to match that of the old code.
1999-09-22 Fernando Nasser <>
* varobj.c (type_changeable): Fix for testsuite case 2.12. Do not
report as changed a structure when one of it's children has changed.
(get_type, get_type_deref): Remove uneeded initialization.
1999-09-22 Elena Zannoni <>
* event-loop.c, event-top.c, event-loop.h: Rerun indent.
1999-09-21 Doug Evans <>
* m32r-stub.c (handle_exception): Fix typo in patch of 1999-08-26.
1999-09-21 Fernando Nasser <>
* varobj.c (_initialize_varobj): Add set/show for varobjdebug.
(uninstall_variable): Test for varobjdebug before printing trace
and send it to gdb_stdlog.
1999-09-21 Fernando Nasser <>
* varobj.c (c_type_of_child): Fix missing break, improve comment
and add warning.
(c_number_of_children): Add comment.
Tue Sep 21 14:55:29 1999 Andrew Cagney <>
From 1999-08-20 J.T. Conklin <>:
* 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 Fernando Nasser <>
* varobj.c (varobj_update): Test for illegal invocation for
non-root variable object.
1999-09-20 Fernando Nasser <>
* varobj.c (my_value_equal): Style. Eliminate side-effects.
(varobj_update): Adjust calls to reflect the above change.
1999-09-20 Fernando Nasser <>
* varobj.c (c_value_of_variable): Fix return value for struct
members when parent is a invalid pointer.
1999-09-20 Elena Zannoni <>
* event-loop.c: Include <sys/time.h>.
1999-09-20 Fernando Nasser <>
* varobj.c (cplus_number_of_children): Coding style improvement.
(cplus_value_of_child): Ditto.
1999-09-20 Fernando Nasser <>
* varobj.c (c_name_of_child): Add missing default clause in switch
(c_type_of_child): Ditto.
(varobj_set_value): Test for NULL type.
1999-09-20 Fernando Nasser <>
* varobj.c (varobj_set_value): Wrap call to evaluate_expression.
1999-09-20 Fernando Nasser <>
* varobj.c (format_string[]): Remove unused variable(s).
(varobj_set_value): Ditto.
(c_value_of_root): Ditto.
(cplus_value_of_child): Ditto.
1999-09-20 Fernando Nasser <>
* varobj.c: Add missing header file include.
(new_variable, new_root_variable): Fix prototype and header.
(_initialize_varobj): Add prototype.
1999-09-20 Elena Zannoni <>
* 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
(ocd_readremote): Remove.
(ocd_write): Remove unused var 'c'.
1999-09-20 Elena Zannoni <>
* 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 <>
* 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".
* (remote_h): Define.
* remote.c, tracepoint.c: Include "remote.h".
* (tracepoint.o, remote.o): Add dependency on
* 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''.
* (infrun.o): Add dependency on remote.h.
Mon Sep 20 16:15:29 1999 Andrew Cagney <>
* ui-out.h (ui_out_test_flags): Add missing declaration.
Mon Sep 20 13:41:04 1999 Andrew Cagney <>
* 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".
* (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 <>
* 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.
Mon Sep 20 10:54:19 1999 Andrew Cagney <>
* (varobj.o): Disable warnings. Currently
Fri Sep 17 19:28:17 1999 Andrew Cagney <>
* source.c: Include "source.h".
(open_source_file, find_source_lines): Move declaration from here.
* source.h: New file. To here.
* (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 <>
* 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 (
* dwarf2read.c (dwarf_decode_lines): Correctly handle
1999-09-18 Elena Zannoni <>
* 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
(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
(gdb_wait_for_event): If select() or poll() return error, report
this to user.
(create_async_signal_handler): Change first param type to
(inferior_event_handler): New function. Smarter inferior event
1999-09-18 Jim Blandy <>
* 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 (
* hppa-tdep.c (internalize_unwinds): Handle PA64 shared libraries
* hppa-tdep.c (in_solib_call_trampoline): Handle PA64 shared library
1999-09-17 Fernando Nasser <>
* wrapper.h: Add missing define brackets.
1999-09-17 Jim Blandy <>
* breakpoint.c (permanent_breakpoint_here_p): Delete.
Accidentally left over from previous changes.
1999-09-17 Jim Blandy <>
* 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
1999-09-17 Fernando Nasser <>
* Add entries for varobj.[cho] and wrapper.[cho].
gdbtk-varobj.[co]. gdbtk-varobj.o is not yet on the COMMON_OBS
list because it conflicts with the older gdbtk-variable.o which
is still the default.
1999-09-17 Fernando Nasser <>
* varobj.h: New file. GDB variable objects API.
* varobj.c: New file. Implementation of the GDB variable objects
1999-09-17 Fernando Nasser <>
* wrapper.h: New file. Longjump free calls to gdb internal
* wrapper.c (gdb_evaluate_expression, wrap_evaluate_expression,
gdb_value_fetch_lazy, wrap_value_fetch_lazy, gdb_value_equal,
wrap_value_equal, gdb_value_ind, wrap_value_ind): New functions.
Thu Sep 16 17:33:35 1999 Andrew Cagney <>
* 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
(ser_unix_readchar): Ditto. Problems occure with back-to-back
data from a target. The ASYNC code can loose the second data
* serial.c (serial_fdopen): Initialize async_handler and
1999-09-16 Elena Zannoni <>
* utils.c (discard_all_continuations): New function.
* defs.h: (discard_all_continuations): Add prototype.
1999-09-16 Elena Zannoni <>
* 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.
* (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 <>
* 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 <>
* serial.h (SERIAL_IS_ASYNC_P): Define. Non-zero when serial
device is in async mode.
* 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 <>
* serial.h (struct serial_ops): Add field ASYNC.
(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
* 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
* ser-unix.c: Register "async-hardwire" device.
Thu Sep 16 09:04:53 1999 Andrew Cagney <>
* 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
* ser-unix.c: Include <sys/wait.h>, <sys/socket.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 <>
* 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/ (TDEPFILES): Remove remote-d10v.o.
1999-09-15 Jim Blandy <>
* breakpoint.c (remove_breakpoint): Return zero, not nothing.
1999-09-14 Jim Blandy <>
* 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 <>
* 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 with FD instead of serial_t.
1999-09-14 Jim Blandy <>
* 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.
* (gdbtk.o, gdbtk-cmds.o): Depend on $(top_h).
* (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
(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
* 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
* hppa-tdep.c (hppa_skip_permanent_breakpoint): New function.
* config/pa/tm-hppa.h (hppa_skip_permanent_breakpoint): Declare.
1999-09-14 Kevin Buettner <>
* 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 <>
* event-loop.c (create_file_handler): Increment the total number
of file descriptors for the poll case, only if this is a new file
1999-09-14 Eli Zaretskii <>
* go32-nat.c: misc minor cleanups and fixes missed in last patch.
Tue Sep 14 12:37:33 1999 Andrew Cagney <>
* 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 <>
* 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
1999-09-13 James Ingham <>
* 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 (
* pa64solib.c (pa64_sharedlibrary_info_command): Fix typos.
1999-09-13 Kevin Buettner <>
* 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):
* 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 <>
* event-top.c (call_readline): Change to accept gdb_client_data as
(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 <>
* 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 <>
* event-top.h: New file. All the exported vars and functions from
* 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
Include event-top.h. Remove use of PARAMS. ANSIfy functions headers.
* event-top.c: Include event-top.h. Include "signals.h", not
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 <>
* Describe each of the fields.
Mon Sep 13 17:51:28 1999 Andrew Cagney <>
From 1999-09-12 Jim Blandy <>:
* (generating setters): Use sed to generate the proper
indentation, not tr; tr's behavior is notoriously unportable.
1999-09-10 Jim Blandy <>
* 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 <>
* 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 <>
* remote.c (_initialize_remote): Fix the specification of the
"remote" prefix to set and show commands.
1999-09-09 Fernando Nasser <>
* command.c (print_doc_line): Update to use ui_out.
(do_setshow_command): Ditto.
(cmd_show_list): Ditto.
1999-09-09 Elena Zannoni <>
* 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 <>
* 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 <>
* config/i386/tm-linux.h (SOFUN_ADDRESS_MAYBE_MISSING):
Tue Sep 7 08:18:01 1999 Kevin Buettner <>
From Jim Blandy <>:
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 <>
* 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 <>
* 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 (
* monitor.c (monitor_supply_register): Stop scanning val string
if a newline is encountered.
1999-09-03 Jason Molenda (