aboutsummaryrefslogtreecommitdiff
path: root/gdb/target.h
AgeCommit message (Collapse)AuthorFilesLines
2009-05-21 * linux-nat.c (linux_nat_terminal_inferior)Pedro Alves1-2/+1
(linux_nat_terminal_ours): Don't check sync_execution. * remote.c (remote_terminal_inferior, remote_terminal_ours): Don't check sync_execution. Update comments. * target.c (target_terminal_inferior): New. * target.h (target_terminal_inferior): Delete macro, and declare as function. * event-top.c (async_disable_stdin): Make idempotent. Don't give the target the terminal here. * inflow.c (terminal_ours_1): Don't return early without setting `terminal_is_ours'.
2009-05-21 * target.h (TARGET_WNOHANG): New.Pedro Alves1-3/+12
* target.c (target_wait): Add `options' argument. Adjust. (struct target_ops) <to_wait>: Add `options' argument. (target_wait): Add `options' argument. * infrun.c (wait_for_inferior): Pass 0 as options to target_wait (blocking wait). (fetch_inferior_event): Pass TARGET_WNOHANG as options to target_wait. * fork-child.c (startup_inferior): Pass 0 as options to target_wait (blocking wait). * linux-nat.c (linux_nat_create_inferior): Remove async masking. (linux_nat_wait_1): Add `target_options' argument. Use it instead of checking on target_can_async_p. (linux_nat_wait): Add `target_options' argument. Adjust. * remote.c (remote_wait_ns): Add `options' argument. Adjust to check on TARGET_WNOWAIT instead of checking on remote_is_async_p. (remote_wait_as): Add `options' argument. Adjust to check on TARGET_WNOWAIT instead of checking on remote_is_async_p. If doing a blocking wait, keep waiting until an interesting event comes out. (remote_wait): Add `options' argument. Don't loop here if the target is in async mode, and a blocking wait has been requested. * top.c (deprecated_target_wait_hook): Add `options' argument. * linux-thread-db.c (thread_db_wait): Add `options' argument, and pass it down to the layer beneath. * inf-ptrace.c (inf_ptrace_wait): Add `options' argument. * record.c (record_beneath_to_wait): Add `options' argument. (record_wait): Add `options' argument, and pass it down to the layer beneath. * bsd-uthread.c (bsd_uthread_wait): Add `options' argument. * darwin-nat.c (darwin_wait): Likewise. * defs.h (deprecated_target_wait_hook): Likewise. * gnu-nat.c (gnu_wait): Add `options' argument. * go32-nat.c (go32_wait): Likewise. * hpux-thread.c (hpux_thread_wait): Add `options' argument, and pass it down to the layer beneath. * inf-ttrace.c (inf_ttrace_wait): Add `options' argument. * monitor.c (monitor_wait): Likewise. * nto-procfs.c (procfs_wait): Likewise. * remote-mips.c (mips_wait): Add `options' argument. * remote-sim.c (gdbsim_wait): Likewise. * rs6000-nat.c (rs6000_wait): Add `options' argument. * sol-thread.c (sol_thread_wait): Add `options' argument, and pass it down to the layer beneath. * spu-linux-nat.c (spu_child_wait): Add `options' argument. * windows-nat.c (windows_wait): Likewise. * tui/tui-hooks.c (tui_target_wait_hook): Likewise. Adjust.
2009-05-11 Unify target macros.Pierre Muller1-6/+6
* target.h (STOPPED_BY_WATCHPOINT): Delete, replaced by ... (target_stoppped_by_watchpoint): New macro. (HAVE_STEPPABLE_WATCHPOINT): Delete, replaced by ... (target_have_steppable_watchpoint): New macro. (HAVE_CONTINUABLE_WATCHPOINT): Delete, replace by ... (target_have_continuable_watchpoint): New macro. (TARGET_CAN_USE_HARDWARE_WATCHPOINT):Delete, replaced by ... (target_can_use_hardware_watchpoint): New macro. (TARGET_REGION_OK_FOR_HW_WATCHPOINT):Delete, replaced by ... (target_region_ok_for_hw_watchpoint): New macro. * breakpoint.c (update_watchpoint): Use new macros. (bpstat_alloc): Likewise. (create_breakpoint): Likewise. (watch_command_1): Likewise. (can_use_hardware_watchpoint): Likewise. (do_enable_breakpoint): Likewise. * infrun.c (handle_inferior_event): Adapt to new macros. * mips-tdep.c (mips_gdbarch_init): Update comments. * procfs.c (procfs_set_watchpoint): Update comment. (procfs_insert_watchpoint): Adapt to new macros. * remote-m32r-sdi.c (m32r_stop): * remote-mips.c (mips_remove_breakpoint): * target.c (debug_to_region_ok_for_hw_watchpoint): Update to new macros. (debug_to_stopped_by_watchpoint): Likewise.
2009-05-10 * src/gdb/target.h: Remove all tests for already definedPierre Muller1-16/+0
macros. All macros defined here should not be set in config headers anymore.
2009-04-30* target.h (strata): New stratum "record_stratum".Hui Zhu1-1/+2
2009-03-17 Add a target_ops parameter to the to_kill method in struct target_ops.Joel Brobecker1-3/+2
* target.h (struct target_ops): Add a "target_ops *" parameter to method to_kill. (target_kill): Remove macro. Add declaration. * target.c (debug_to_kill): Delete, no longer necessary. (target_kill): New function. (update_current_target): Stop inheriting the to_kill method. Do not de_fault it to no_process either. (setup_target_debug): Do not set current_target.to_kill. * gnu-nat.c, go32-nat.c, hpux-thread.c, inf-ptrace.c, inf-ttrace.c, linux-nat.c, monitor.c, nto-procfs.c, procfs.c, remote-m32r-sdi.c, remote-mips.c, remote-sim.c, remote.c, windows-nat.c: Update accordingly.
2009-03-02 * Makefile.in (GDB_CFLAGS): Add -I$(srcdir)/common.Doug Evans1-31/+3
(init.c): signals/ -> common/. (signals.o): Update. * target.h (target_signal_to_string,target_signal_to_string) (target_signal_from_name,target_signal_to_host_p) (target_signal_from_host,target_signal_to_host): Move to ... * common/gdb_signals.h: ... here. New file. * common/signals.c: Moved here from signals/signals.c. #include gdb_signals.h, remove #include of target.h in gdb case. (target_signal_from_command,default_target_signal_to_host) (default_target_signal_from_host): Move inside #ifndef GDBSERVER. * gdbserver/Makefile.in (INCLUDE_CFLAGS): Add -I$(srcdir)/../common. (server_h): Add gdb_signals.h. (signals.o): Update. * server.h (target_signal_from_host,target_signal_to_host_p) (target_signal_to_host,target_signal_to_name): Moved to gdb_signals.h.
2009-02-23 * corelow.c (get_core_registers): Adjust.Pedro Alves1-13/+9
(core_file_thread_alive): Rename to... (core_thread_alive): ... this. (core_pid_to_str): Try gdbarch_core_pid_to_str first. (init_core_ops): Adjust. (coreops_suppress_target): Delete. (_initialize_corelow): Unconditionally add core_ops. * procfs.c: Include "inf-child.h". (procfs_ops): Delete. (init_procfs_ops): Delete. Reimplement as... (procfs_target): ... this, inheriting from inf-child. (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust. (procfs_prepare_to_store): Delete. (procfs_store_registers, procfs_resume): Adjust. (procfs_open): Delete. (procfs_suppress_run): Delete. (procfs_can_run): Delete. (procfs_mourn_inferior): Adjust. (procfs_init_inferior): Add target_ops parameter. Adjust. (procfs_create_inferior): Don't pass procfs_init_inferior to fork_inferior. Instead call it after fork_inferior returns. (procfs_find_new_threads): Adjust. (_initialize_procfs): Adjust to use procfs_target instead of init_procfs_ops. * sol-thread.c (orig_core_ops, sol_core_ops): Delete. (lwp_to_thread): Use target_thread_alive. (sol_thread_open): Delete. (sol_thread_attach): Delete. (sol_thread_detach, sol_thread_resume, sol_thread_wait) (sol_thread_fetch_registers, sol_thread_store_registers): Adjust to use find_target_beneath. (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete. (sol_thread_xfer_partial): Adjust to use find_target_beneath. (sol_thread_files_info, sol_thread_kill_inferior): Delete. (check_for_thread_db): New. (sol_thread_notice_signals, sol_thread_create_inferior): Delete. (sol_thread_new_objfile): Call check_for_thread_db. (sol_thread_mourn_inferior): Adjust to use find_target_beneath. (sol_thread_can_run): Delete. (sol_thread_alive): Adjust to use find_target_beneath. (sol_thread_stop): Delete. (rw_common): Use target_write_memory or target_read_memory. (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers. (ps_lsetregs, ps_lsetfpregs): Use target_store_registers. (solaris_pid_to_str): Remove check for libthread_db initialization failing. (sol_find_new_threads): Remove check for libthread_db initialization failing, or for an invalid inferior_ptid. Adjust to use find_target_beneath. (sol_core_open, sol_core_close, sol_core_detach, sol_core_files_info, sol_find_memory_regions, sol_make_note_section, ignore): Delete. (init_sol_thread_ops): Make it a thread_stratum target. Remove unneeded callback settings. (init_sol_core_ops): Delete. (_initialize_sol_thread): No longer call init_sol_core_ops, set procfs_suppress_run, or hack with core_ops. * target.h (struct target_ops): Add a target_ops * parameter to to_resume, to_fetch_registers, to_store_registers, to_thread_alive and to_find_new_threads. (target_fetch_registers, target_store_registers) (target_thread_alive, target_find_new_threads): Redeclare as function. * target.c (update_current_target): Do not inherit or de_fault to_resume, to_fetch_registers, to_store_registers, to_thread_alive, to_find_new_threads. (target_resume): Adjust. (target_thread_alive, target_find_new_threads): New. (debug_to_resume, debug_to_fetch_registers): Delete. (target_fetch_registers): New. (debug_to_store_registers): Delete. (target_store_registers): New. (debug_to_thread_alive, debug_to_find_new_threads): Delete. (setup_target_debug): Adjust. * gdbcore.h (core_ops): Delete declaration. * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c, inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c, i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c, hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c, nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c, alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c, bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c, hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c, ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c, m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c, mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c, ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c, shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c, vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes. * gdbarch.sh (core_pid_to_str): New gdbarch callback. * gdbarch.h, gdbarch.c: Regenerate. * sol2-tdep.c: Include "inferior.h". (sol2_core_pid_to_str): New. * sol2-tdep.h (sol2_core_pid_to_str): Declare. * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it. * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it. * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it. * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
2009-02-212008-02-21 Pedro Alves <pedro@codesorcery.com>Pedro Alves1-1/+1
Silence a few -Wmissing-prototypes warnings. PR build/9877: * amd64-nat.c: Include "amd64-nat.h". * fork-child.c (_initialize_fork_child): Ditto. * gcore.c (_initialize_gcore): Ditto. * inf-ptrace.c: Include "inf-ptrace.h". (inf_ptrace_store_registers): Make it static. * linux-nat.c (linux_nat_terminal_ours): Make it static. (_initialize_linux_nat): Declare before definition. * linux-tdep.c: Include "linux-tdep.h". * linux-thread-db.c (_initialize_thread_db): Declare before definition. * proc-service.c (_initialize_proc_service): Ditto. * remote.c (remote_send_printf): Make it static. * solib.c: Include "solib.h". * symfile-mem.c (_initialize_symfile_mem): Declare before definition. * ada-lang.c (ada_la_decode, ada_match_name) (ada_suppress_symbol_printing, ada_is_array_type) (ada_value_ptr_subscript, ada_array_length) (ada_to_static_fixed_value): Make them static. (_initialize_ada_language): Declare before definition. * ada-tasks.c (ada_get_task_number, ada_get_environment_task) (ada_task_list_changed, ada_new_objfile_observer): Make them static. (_initialize_tasks): Declare before definition. * addrmap.c (_initialize_addrmap): Declare before definition. * auxv.c (default_auxv_parse): Make it static. * bfd-target.c (target_bfd_xfer_partial, target_bfd_xclose): Make them static. * breakpoint.c (remove_sal): Add line break. (expand_line_sal_maybe): Make it static. * cp-name-parser.y: Include "cp-support.h". * cp-valprint.c (cp_find_class_member): Make it static. * eval.c (value_f90_subarray): Ditto. * exceptions.c (print_any_exception): Ditto. * findcmd.c (_initialize_mem_search): Declare before definition. * frame.c (frame_observer_target_changed): Make it static. * gnu-v3-abi.c (gnuv3_find_method_in): Make it static. * inf-child.c: Include "inf-child.h". * inferior.h (valid_inferior_id): Rename to ... (valid_gdb_inferior_id): ... this. * infrun.c (infrun_thread_stop_requested, siginfo_make_value): Make them static. * jv-lang.c (java_language_arch_info): Make it static. * m2-typeprint.c (m2_get_discrete_bounds): Ditto. * osdata.c (info_osdata_command): Make it static. * regcache.c (regcache_observer_target_changed): Make it static. * reverse.c (_initialize_reverse): Declare before definition. * stabsread.c (cleanup_undefined_types_noname) (cleanup_undefined_types_1): Make them static. * symfile.c (place_section): Make it static. * symtab.c (find_pc_sect_psymtab_closer): Make it static. * target-descriptions.c (_initialize_target_descriptions): Declare before definition. * target.c (default_get_ada_task_ptid, find_default_can_async_p) (find_default_is_async_p, find_default_supports_non_stop): Make them static. (target_supports_non_stop): Add prototype. (dummy_pid_to_str): Make it static. * utils.c (_initialize_utils): Declare before definition. * ada-exp.y (_initialize_ada_exp): Declare before definition. * solib-svr4.c (HAS_LM_DYNAMIC_FROM_LINK_MAP): Add a prototype. * target.h (struct target_ops): Add a prototype to the to_can_execute_reverse callback. * macroscope.c (_initialize_macroscope): Declare before definition. * cp-namespace.c (_initialize_cp_namespace): Declare before definition. * python/python.c (_initialize_python): Declare before definition. * tui/tui-command.c: Include "tui/tui-command.h". * tui/tui-data.c (init_content_element, init_win_info): Make them static. * tui/tui-disasm.c: Include "tui/tui-disasm.h". * tui/tui-interp.c (_initialize_tui_interp): Declare before definition. * tui/tui-layout.c: Include "tui/tui-layout.h". (_initialize_tui_layout): Declare before definition. * tui/tui-regs.c: Include "tui/tui-regs.h". (tui_display_reg_element_at_line): Make it static. (_initialize_tui_regs): Declare before definition. * tui/tui-stack.c (_initialize_tui_stack): Declare before definition. * tui/tui-win.c: Include "tui/tui-win.h". (_initialize_tui_win): Declare before definition. (tui_sigwinch_handler): Make it static. Wrap in ifdef SIGWINCH. * tui/tui-win.h (tui_sigwinch_handler): Delete declaration. (tui_get_cmd_list): Add a prototype. * tui/tui-windata.c: Include tui-windata.h. * tui/tui-wingeneral.c (box_win): Make it static. * cli/cli-logging.c (show_logging_command): Make it static. (_initialize_cli_logging): Declare before definition. * mi/mi-common.c (_initialize_gdb_mi_common): Declare before definition.
2009-02-062009-02-06 Pedro Alves <pedro@codesourcery.com>Pedro Alves1-1/+4
gdb/ * target.h (enum target_object): Add new TARGET_OBJECT_SIGNAL_INFO. * infrun.c (siginfo_value_read, siginfo_value_write): New. (siginfo_value_funcs): New. (siginfo_make_value): New. (_initialize_infrun): Create the $_siginfo convenience variable. * gdbtypes.h (append_composite_type_field_aligned): Declare. * gdbtypes.c (append_composite_type_field): Rename to... (append_composite_type_field_aligned): ... this. Add ALIGNMENT argument. Handle it. (append_composite_type_field): Rewrite on top of append_composite_type_field_aligned. * value.h (internalvar_make_value): New typedef. (struct internalvar) <make_value>: New field. (create_internalvar_type_lazy): Declare. * value.c (create_internalvar): Clear make_value. (create_internalvar_type_lazy): New. (value_of_internalvar): If make_value is set use it. (preserve_values): Skip internal variables that don't have a value. * gdbarch.sh (get_siginfo_type): New. * gdbarch.h, gdbarch.c: Regenerate. * linux-tdep.h, linux-tdep.c: New. * amd64-linux-tdep.c: Include "linux-tdep.h". (amd64_linux_init_abi): Register linux_get_siginfo_type and linux_get_siginfo_mapper. * i386-linux-tdep.c: Include "linux-tdep.h". (i386_linux_init_abi): Register linux_get_siginfo_type and linux_get_siginfo_mapper. * arm-linux-tdep.c: Include "linux-tdep.h". (i386_linux_init_abi): Register linux_get_siginfo_type and linux_get_siginfo_mapper. * linux-nat.c (linux_xfer_siginfo): New. (linux_nat_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO. * remote.c (PACKET_qXfer_siginfo_read) (PACKET_qXfer_siginfo_write): New. (feature remote_protocol_features): Add "qXfer:siginfo:read" and "qXfer:siginfo:write" features. (remote_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO. (_initialize_remote): Add "set/show remote read-siginfo-object" and "set/show remote write-siginfo-object" commands. * Makefile.in (ALL_TARGET_OBS): Add linux-tdep.o. (HFILES_NO_SRCDIR): Add linux-tdep.h. (ALLDEPFILES): Add linux-tdep.c. * configure.tgt (arm*-*-linux* | arm*-*-uclinux*) (i[34567]86-*-linux*, x86_64-*-linux*): Add linux-tdep.o to gdb_target_obs. 2009-02-06 Pedro Alves <pedro@codesourcery.com> gdb/gdbserver/ * server.c (handle_query): Report qXfer:siginfo:read and qXfer:siginfo:write as supported and handle them. * target.h (struct target_ops) <qxfer_siginfo>: New field. * linux-low.c (linux_xfer_siginfo): New. (linux_target_ops): Set it. 2009-02-06 Pedro Alves <pedro@codesourcery.com> gdb/doc/ * gdb.texinfo (Signals): Document $_siginfo. (Convenience Variables): Mention $_siginfo. (Remote Configuration): Document qXfer:siginfo:read, qXfer:siginfo:write packets, and the read-siginfo-object, write-siginfo-object commands. 2009-02-06 Pedro Alves <pedro@codesourcery.com> gdb/testsuite/ * gdb.base/siginfo-obj.c, gdb.base/siginfo-obj.exp: New.
2009-02-06 * linux-nat.c (linux_nat_wait): Adjust.Pedro Alves1-15/+8
(linux_nat_pid_to_str): Adjust. Remove call to thread_db_init. * linux-nat.h (thread_db_init): Delete declaration. * linux-thread-db.c (target_beneath): Delete. (thread_db_init): Delete. (thread_db_detach): Use find_target_beneath. (thread_db_wait): Adjust interface. Use find_target_beneath. (thread_db_mourn_inferior): Use find_target_beneath. (thread_db_can_async_p, thread_db_is_async_p, thread_db_async) (thread_db_async_mask): Delete. (thread_db_pid_to_str): Adjust interface. Use find_target_beneath. (thread_db_get_thread_local_address): Adjust interface. Use find_target_beneath. (init_thread_db_ops): Delete references to delete functions. * target.c (update_current_target): Don't inherit or default to_wait. Don't inherit to_pid_to_str and to_get_thread_local_address. (target_translate_tls_address): Look for a pushed target that implements to_get_thread_local_address, and use it instead of checking for target_get_thread_local_address_p. (target_wait, target_pid_to_str): Reimplement as functions. (dummy_pid_to_str): New. (init_dummy_target): Register it. (debug_to_wait): Delete. * target.h (struct target_ops): Make to_wait, to_pid_to_str and to_get_thread_local_address accept a pointer to struct target_ops. (target_wait): Delete macro, and declare as function. (target_pid_to_str): Likewise. (target_get_thread_local_address) (target_get_thread_local_address_p): Delete. (noprocess): Add NORETURN and ATTR_NORETURN tags. * inf-ptrace.c (inf_ptrace_wait): Adjust. (inf_ptrace_pid_to_str): New. (inf_ptrace_target): Use inf_ptrace_pid_to_str. * aix-thread.c (aix_thread_wait, aix_thread_pid_to_str): Adjust. * bsd-kvm.c (bsd_kvm_pid_to_str): Adjust. * bsd-uthread.c (bsd_uthread_wait, bsd_uthread_pid_to_str): Adjust. * corelow.c (core_pid_to_str): Adjust. * darwin-nat.c (darwin_wait, darwin_pid_to_str): Adjust. * dec-thread.c (dec_thread_wait, dec_thread_pid_to_str): Adjust. * gnu-nat.c (gnu_wait, gnu_pid_to_str): Adjust. * go32-nat.c (go32_wait, go32_pid_to_str): Adjust. * hpux-thread.c (hpux_thread_wait): Adjust. * inf-ttrace.c (inf_ttrace_wait, inf_ttrace_pid_to_str): Adjust. * monitor.c (monitor_wait, monitor_pid_to_str): Adjust. * nto-procfs.c (procfs_wait, procfs_pid_to_str): Adjust. * procfs.c (procfs_pid_to_str): Adjust. * remote-m32r-sdi.c (m32r_wait, m32r_pid_to_str): Adjust. * remote-mips.c (mips_wait): Adjust. * remote-sim.c (gdbsim_wait, gdbsim_pid_to_str): Adjust. * remote.c (remote_wait, remote_pid_to_str) (remote_get_thread_local_address): Adjust. * rs6000-nat.c (rs6000_wait): Adjust. * sol-thread.c (procfs_pid_to_str): Adjust declaration. (sol_thread_wait, solaris_pid_to_str): Adjust. * spu-linux-nat.c (spu_child_wait): Adjust. * windows-nat.c (windows_wait, windows_pid_to_str): Adjust.
2009-02-05 * target.h (target_stopped_data_address_p): Delete declaration,Pedro Alves1-5/+0
and don't define as macro. * target.c (target_stopped_data_address_p): Delete.
2009-02-05 * target.h (target_tid_to_str): Delete.Pedro Alves1-4/+0
* thread.c (print_thread_info, thread_apply_all_command) (thread_apply_command, thread_command, do_captured_thread_select): Use target_pid_to_str instead of target_tid_to_str. * linux-fork.c (delete_fork_command): Likewise.
2009-02-01 * target.h (target_waitstatus_to_string): Declare.Doug Evans1-0/+4
* target.c (target_waitstatus_to_string): New function. Copied from debug_to_wait. Add missing entries for TARGET_WAITKIND_SYSCALL_ENTRY, TARGET_WAITKIND_SYSCALL_RETURN, TARGET_WAITKIND_IGNORE, TARGET_WAITKIND_NO_HISTORY. (debug_to_wait): Call it. * infrun.c (wait_for_inferior): If debug_infrun, print result of target_wait. (fetch_inferior_event): Ditto.
2009-01-15 * target.h (target_signal_to_string): Make return type const char *.Doug Evans1-3/+3
(target_signal_to_name): Ditto. (target_signal_from_name): Make arg const char *. * thread-db.c (thread_db_err_str): Make return type const char *. * utils.c (perror_with_name): Make arg const char *. * infrun.c (sig_print_info): Update. * signals/signals.c (signals): Make array and struct members const. (target_signal_to_string): Make return type const char *. (target_signal_to_name): Ditto. (target_signal_from_name): Make arg const char *. * gdbserver/gdbreplay.c (perror_with_name): Make arg const char *. * gdbserver/server.h (target_signal_to_name): Make return type const char *.
2009-01-03 Updated copyright notices for most files.Joel Brobecker1-1/+1
2008-12-162008-12-16 Tristan Gingold <gingold@adacore.com>Tristan Gingold1-9/+0
* inflow.c: Remove old_sigio, handle_sigio, old_fcntl_flags, set_sigio_trap, clear_sigio_trap definitions. * inferior.h: Remove set_sigio_trap and clear_sigio_trap declarations. * inf-ptrace.c (inf_ptrace_wait): Remove call to set_sigio_trap and clear_sigio_trap. * inf-ttrace.c (inf_ttrace_wait): Ditto. * linux-nat.c (linux_nat_wait): Ditto. * spu-linux-nat.c (spu_child_wait): Ditto. * rs6000-nat.c (rs6000_wait): Ditto. * target.c: Remove target_activity_function and target_activity_fd. * target.h: Remove target_activity_function and target_activity_fd declarations.
2008-12-02 * target.h (target_get_osdata): Describe.Pedro Alves1-0/+6
* osdata.h (make_cleanup_osdata_free): Declare. * osdata.c (osdata_item_clear): Define even if HAVE_LIBEXPAT is not defined. (osdata_free_cleanup): New. (make_cleanup_osdata_free): New. (get_osdata): Fix leak. (info_osdata_command): Use make_cleanup_osdata_free. (info_processes_command): Delete. (_initialize_osdata): Drop undocumented "info processes" alias. * mi/mi-main.c (mi_cmd_list_thread_groups): Fix leak.
2008-12-02 Implement -list-thread-groups --availableVladimir Prus1-2/+7
* Makefile.in (XMLFILES): Add osdata.dtd. (SFILES): Add osdata.c. (COMMON_OBS): Add osdata.o. * linux-nat.c: Include pwd.h, sys/types.h, gdb_dirent.h and xml-support.h. (linux_nat_xfer_osdata): New function. (linux_xfer_partial): Handle TARGET_OBJECT_OSDATA. * osdata.c: New file. * osdata.h: New file. * remote.c (PACKET_qXfer_osdata): New packet enum. (remote_protocol_features): Add "qXfer:osdata:read". (remote_read_qxfer): Handle TARGET_OBJECT_OSDATA. (extended_remote_can_run): New. (init_extended_remote_ops): Set to_can_run to extended_remote_can_run. (_initialize_remote): Add packet config command for "qXfer:osdata:read". * xml-support.c (obstack_xml_printf): New function. * xml-support.h (obstack_xml_printf): Declare. * target.c (target_get_osdata): New function. * target.h (enum target_object): Add TARGET_OBJECT_OSDATA. (target_os_data): Declare. * features/osdata.dtd: New file. * mi/mi-main.c (mi_list_thread_groups): Handle the --available option.
2008-11-09 Kill pthread_ops_hackVladimir Prus1-13/+12
* target.h (struct target_ops): Make to_attach, to_detach, to_create_inferior and to_mourn_inferior accept a pointer to struct target_ops. (target_attach, target_create_inferior, target_create_inferior): Convert from macros to function. Find the right target to invoke a method of. (find_default_attach, find_default_create_inferior): New parameter ops. * corefile.c (core_file_command): Pass target to to_detach. * corelow.c (core_detach): Add 'ops' parameter. * fork-child.c (fork_inferior): Return the pid. Allow init_trace_fun to be NULL. * inf-ptrace (ptrace_ops_hack): Remove. (inf_ptrace_him): Remove, moving all logic into.... (inf_ptrace_create_inferior): ... here. Push the target passed as parameter. (inf_ptrace_mourn_inferior, inf_ptrace_attach, inf_ptrace_detach): Push/pop target passed as parameter, no ptrace_ops_hack. (inf_ptrace_target): Don't remember result. * inferior.h (fork_inferior): Adjust prototype. * linux-nat.c (linux_nat_create_inferior, linux_nat_attach) (linux_nat_detach, linux_nat_mourn_inferior): New parameter ops. Pass it to linux_ops target. * linux-thread-db.c (thread_db_detach, thread_db_mourn_inferior): New parameter ops. Pass it to the target beneath. * remote.c (remote_mourn, extended_remote_mourn, remote_detach) (extended_remote_create_inferior): New parameter ops. Pass it further. * target.c (debug_to_attach, debug_to_detach) (debug_to_mourn_inferior): New parameter ops. (target_create_inferior): New. (update_current_target): Do not inherit to_attach, to_detach, to_create_inferiour, to_mourn_inferior. Do not default to_detach and to_mourn_inferior. (target_detach): Find the right target to use. (target_mourn_inferior): New. (find_default_attach, find_default_create_inferior): New parameter ops. Pass the found target when calling its method. (init_dummy_target): Provide fallback definition of to_detach. (target_attach): New. (debug_to_attach, debug_to_detach, debug_to_create_inferior) (debug_to_mourn_inferiour): New parameter ops. * aix-thread.c: Adjust. * bsd-uthread.c: Adjust. * gnu-nat.c: Adjust. * go32-nat.c: Adjust. * hpux-thread.c: Adjust. * inf-ttrace.c: Ajust. * monitor.c: Adjust. * nto-procfs.c: Adjust. * procfs.c: Adjust. * remote-m32r-sdi.c: Adjust. * remote-mips.c: Adjust. * remote-sim.c: Adjust. * rs6000-nat.c: Adjust. * sol-thread.c: Adjust. * win32-nat.c: Adjust. * dec-thread.c: Adjust.
2008-10-27 * target.h (struct target_ops) <to_supports_multi_process>: NewPedro Alves1-0/+10
field. (target_supports_multi_process): New define. * target.c (update_current_target): Inherit and de_fault to_supports_multi_process. * infcmd.c (attach_command): Allow attaching to multiple processes if the target supports it. (detach_command): If the target claims there is still execution, don't clear the thread list. * remote.c (remote_supports_multi_process): New. (init_remote_ops): Register remote_supports_multi_process.
2008-10-22 * target.h (struct target_ops): Add new field to_get_ada_task_ptid.Joel Brobecker1-0/+9
(target_get_ada_task_ptid): New macro. * target.c (default_get_ada_task_ptid): New function. (update_current_target): Inherit field default_get_ada_task_ptid. (update_current_target): Make default_get_ada_task_ptid the default value for field to_get_ada_task_ptid. * ada-lang.h (struct task_control_block): Delete. Never used. (struct task_ptid, task_ptid_t, struct task_entry, task_list): Likewise. (struct ada_task_info): New. (ada_task_is_alive, ada_find_printable_frame) (ada_task_list_iterator_ftype, iterate_over_live_ada_tasks): Add declarations. (ada_build_task_list): Update prototype. (init_task_list, ada_is_exception_breakpoint): Remove prototypes. * ada-lang.c (ada_find_printable_frame): Make non-static. * ada-tasks.c: New file. * Makefile.in (SFILES): Add ada-tasks.c. (COMMON_OBS): Add ada-tasks.o. * linux-thread-db.c (thread_db_find_thread_from_tid) (thread_db_get_ada_task_ptid): New functions. (init_thread_db_ops): Set thread_db_ops.to_get_ada_task_ptid.
2008-10-172008-10-17 Michael Snyder <msnyder@vmware.com>Michael Snyder1-1/+13
Target interface for reverse debugging. * target.h (enum target_waitkind): Add new wait event, TARGET_WAITKIND_NO_HISTORY. (struct target_ops): New method to_can_execute_reverse. (target_can_execute_reverse): New macro. * target.c (update_current_target): Inherit to_can_execute_reverse. Remote interface for reverse debugging. * remote.c (remote_can_execute_reverse): New target method. (remote_resume): Check for reverse exec direction, and send appropriate command to target. (remote_wait_as): Check target response for NO_HISTORY status. Also check for empty reply (target doesn't understand "bs" or "bc). (remote_vcont_resume): Jump out if attempting reverse execution. Event handling interface for reverse debugging. * infrun.c (execution_direction): New state variable. (enum inferior_stop_reason): Add NO_HISTORY reason. (handle_inferior_event): Handle TARGET_WAITKIND_NO_HISTORY. Handle stepping over a function call in reverse. Handle stepping thru a line range in reverse. Handle setting a step-resume breakpoint in reverse. Handle stepping into a function in reverse. Handle stepping between line ranges in reverse. (print_stop_reason): Print reason for NO_HISTORY. (step_into_function): Rename to handle_step_into_function. (handle_step_into_function_backward): New function. (set_exec_direction_func, show_exec_direction_func): New funcs. (proceed): No need to singlestep over a breakpoint when resuming in reverse. * inferior.h (enum exec_direction_kind): New enum. (execution_direction): Export new execution state variable. * breakpoint.c (make_breakpoint_silent): New function. * breakpoint.h (make_breakpoint_silent): Export. * infcmd.c (finish_command): Check for reverse exec direction. (finish_backward): New function, handle finish cmd in reverse. User interface for reverse execution. * Makefile.in (reverse.c): New file. * reverse.c: New file. User interface for reverse execution.
2008-10-16 * remote.c (push_remote_target): Delete.Pedro Alves1-3/+0
* target.h (push_remote_target): Delete declaration.
2008-08-19 Make sure target supports non-stop.Vladimir Prus1-0/+3
* infcmd.c (run_command_1, attach_command): If non-stop mode is requested, verify the target supports it. * linux-nat.c (linux_nat_supports_non_stop): New. (linux_nat_add_target): Register the above. * target.c (find_default_supports_non_stop) (target_supports_non_stop): New. (init_dummy_target): Register find_default_supports_non_stop. * target.h (struct target_ops): New field to_supports_non_stop. (target_supports_non_stop): New.
2008-08-19 * target.c (target_async_permitted, target_async_permitted_1)Vladimir Prus1-0/+4
(set_maintenance_target_async_permitted) (show_maintenance_target_async_permitted): New. (initialize_targets): Register 'set target-async'. * target.h (target_async_permitted): Declare. * linux-nat.c (linux_nat_async_enabled) (linux_nat_async_permitted, set_maintenance_linux_async_permitted) (show_maintenance_linux_async_permitted): Remove. (sigchld_handler, linux_nat_is_async_p, linux_nat_can_async_p) (get_pending_events, linux_nat_async): Use target_async_permitted. (linux_nat_set_async_mode): Remove, moving the only used bits into... (linux_nat_setup_async): This. (_initialize_linux_nat): Do not register 'maint set linux-async'. Use linux_nat_setup_async. * remote.c (remote_async_permitted, remote_async_permitted_set) (set_maintenance_remote_async_permitted) (show_maintenance_remote_async_permitted): Remove. (remote_open_1, remote_terminal_inferior, remote_can_async_p) (remote_is_async_p): Use target_async_permitted. (_initialize_remote): Don't register 'main set remote-async'. * mi/mi-cmds.c (mi_cmds): Register -list-target-features. * mi/mi-cmds.h (mi_cmd_list_target_features): New. * mi/mi-main.c (mi_cmd_list_target_features): New.
2008-08-18 * corelow.c (core_open): Assume there was no upper layer leftPedro Alves1-0/+4
behind from a previous inferior. * target.c (pop_all_targets): Rename to ... (pop_all_targets_above): ... this. Add a target stratum parameter. Use it instead of hardcoding the dummy_stratum. (pop_all_targets): New, defer to pop_all_targets_above. (target_preopen): Use pop_all_targets_above. * target.h (pop_all_targets_above): Declare.
2008-08-16 * target.h (pop_all_targets): Declare.Pedro Alves1-0/+7
* target.c (pop_all_targets): New. * top.c (quit_target): Pop all targets instead of just closing the current.
2008-07-09 Non-stop inferior control.Pedro Alves1-2/+2
* infrun.c (resume): In non-stop mode, always resume just one thread. (proceed): Don't call prepare_to_proceed in non-stop mode. (fetch_inferior_event): In non-stop mode, switch context before handling the event. (error_is_running, ensure_not_running): New. (handle_inferior_event): In non-stop mode: Mark only the event thread as stopped. Require that the target module manages adding threads to the thread list. Assert that there isn't a deferred_step_ptid set. Don't switch to infwait_thread_hop_state. (normal_stop): Only mark not-running if inferior hasn't exited. In non-stop mode, only mark the event thread. * thread.c:Include "cli/cli-decode.h". (print_thread_info): Don't read from a running thread. Output "(running)" if thread is running. (switch_to_thread): Don't read stop_pc if thread is executing. (do_restore_current_thread_cleanup): Don't write to a running thread. (thread_apply_all_command): Don't read from a running thread. In non-stop mode, do a full context-switch instead of just switching threads. (thread_apply_command): In non-stop mode, do a full context-switch instead of just switching threads. (do_captured_thread_select): Likewise. Inform user if selected thread is running. (_initialize_thread): Mark "info threads" and "thread" and async_ok. * inf-loop.c (inferior_event_handler): In non-stop mode, don't unregister the target from the event loop. * infcmd.c (continue_command, step_1, jump_command) (signal_command): Ensure the selected thread isn't running. (interrupt_target_command): In non-stop mode, interrupt only the selected thread. * inferior.h (error_is_running, ensure_not_running): Declare. * target.h (struct target_ops): Add ptid argument to the to_stop member. (target_stop): Add ptid_t argument. * target.c (update_current_target): Add ptid argument to to_stop's type. (debug_to_stop): Add ptid_t argument. (debug_to_rcmd): Set to_stop_ptid. * remote.c (remote_stop): Add ptid_t argument. (async_remote_interrupt): Add inferior_ptid to target_stop. * inf-ptrace.c (inf_ptrace_stop): Add ptid argument. * Makefile.in (thread.o): Depend on $(cli_decode_h).
2008-07-09 Adjust fork/vfork/exec to pass ptids around.Pedro Alves1-6/+6
* target.h (struct target_waitstatus): Store related_pid as a ptid. (inferior_has_forked, inferior_has_vforked, inferior_has_execd): Take a ptid_t. * breakpoint.h (struct breakpoint): Change forked_inferior_pid type to ptid. * breakpoint.c (print_it_typical, bpstat_check_location) (print_one_breakpoint_location, set_raw_breakpoint_without_location) (create_fork_vfork_event_catchpoint): Adjust. * infrun.c (fork_event): Change parent_pid and child_pid types to ptid. (follow_exec, inferior_has_forked, inferior_has_vforked) (inferior_has_execd): Take a ptid_t and don't trim it. * linux-thread-db.c (thread_db_wait): Don't trim the returned ptid. * linux-nat.c (linux_child_follow_fork): Adjust. * inf-ptrace.c (inf_ptrace_wait): Adjust. * inf-ttrace.c (inf_ttrace_wait): Adjust. * win32-nat.c (get_win32_debug_event): Don't set related_pid.
2008-07-03 * config/i386/nm-cygwin.h (ATTACH_NO_WAIT): Delete.Pedro Alves1-0/+8
* config/i386/nm-i386gnu.h (ATTACH_NO_WAIT): Delete. * target.h (struct target_ops): Add to_attach_no_wait member. (target_attach_no_wait): New. * target.c (update_current_target): Inherit to_attach_no_wait. * infcmd.c: Replace ATTACH_NO_WAIT compile time check by target_attach_no_wait runtime check. * gnu-nat.c (init_gnu_ops): Set to_attach_no_wait in gnu_ops. * win32-nat.c (init_win32_ops): Set to_attach_no_wait in win32_ops.
2008-06-26 * target.c (target_read_until_error): New.Vladimir Prus1-0/+5
* target.h (target_read_until_error): Declare. * mi/mi-main.c (mi_cmd_data_read_memory): Use target_read_until_error.
2008-06-10 Implement *running.Vladimir Prus1-5/+1
* Makefile.in: Update dependencies. * gdbthread.h (struct thread_info): New field running_. (set_running, is_running): New. * thread.c (set_running, is_running): New. * inferior.h (suppress_normal_stop_observer): Rename to... (suppress_run_stop_observers): ..this. * infcmd.c (suppress_normal_stop_observer): Rename to... (suppress_run_stop_observers): ..this. (finish_command_continuation, finish_command): Adjust. * infcall.c (call_function_by_hand): Adjust. * infrun.c (normal_stop): Call set_running. * target.c (target_resume): New. Call set_running. * target.h (target_resume): Convert from macro to a function. * mi/mi-interp.c (mi_on_resume): New. (mi_interpreter_init): Register mi_on_resume.
2008-05-09 New "find" command.Doug Evans1-0/+26
* NEWS: Document find command and qSearch:memory packet. * Makefile.in (SFILES): Add findcmd.c. (COMMON_OBJS): Add findcmd.o. (findcmd.o): New rule. * findcmd.c: New file. * target.h (target_ops): New member to_search_memory. (simple_search_memory): Declare. (target_search_memory): Declare. * target.c (simple_search_memory): New fn. (target_search_memory): New fn. * remote.c (PACKET_qSearch_memory): New packet kind. (remote_search_memory): New fn. (init_remote_ops): Init to_search_memory. (init_extended_remote_ops): Ditto. (_initialize_remote): Add qSearch:memory packet config command. * gdbserver/server.h (decode_search_memory_packet): Declare. * gdbserver/remote-utils.c (decode_search_memory_packet): New fn. * gdbserver/server.c (handle_search_memory_1): New fn. (handle_search_memory): New fn. (handle_query): Process qSearch:memory packets. * doc/gdb.texinfo: Document "find" command, qSearch:memory packet. * testsuite/gdb.base/find.exp: New file. * testsuite/gdb.base/find.c: New file.
2008-05-04 Fix auxv data parsing on 64-bit solarisVladimir Prus1-0/+7
* target.h (struct target_ops): New field to_auxv_parse. * auxv.c (default_auxv_parse): New, renamed from previous target_auxv_parse. (target_auxv_parse): Try to call target method. Fallback to default_auxv_parse if not found. * procfs.c (procfs_auxv_parse): New. (init_procfs_ops): On Solaris, in 64-bit mode, install procfs_auxv_parse.
2008-05-03 * alpha-tdep.h (ALPHA_REGISTER_BYTES): Delete.Daniel Jacobowitz1-6/+1
* arm-tdep.h (STATUS_REGISTER_SIZE): Delete. * breakpoint.c (args_for_catchpoint_enable, current_exception_event): Delete. * c-typeprint.c (c_type_print_base): Delete handling of template instantiations. * cp-support.h (METHOD_PTR_IS_VIRTUAL, METHOD_PTR_FROM_VOFFSET) (METHOD_PTR_TO_VOFFSET): Delete. * defs.h (QUIT_FIXME): Delete. * f-lang.h (DEFAULT_DOTMAIN_NAME_IN_MF77, DEFAULT_MAIN_NAME_IN_MF77) (DEFAULT_DOTMAIN_NAME_IN_XLF_BUGGY, DEFAULT_DOTMAIN_NAME_IN_XLF): Delete. * gdbtypes.h (struct cplus_struct_type): Delete is_inlined, ninstantiations, and instantiations. (TYPE_INSTANTIATIONS, TYPE_NINSTANTIATIONS, TYPE_INSTANTIATION) (TYPE_FN_FIELD_INLINED): Delete. * srec.h (SREC_BINARY): Delete. * symtab.c (symbol_init_demangled_name): Delete. * symtab.h (SYMBOL_INIT_DEMANGLED_NAME, symbol_init_demangled_name) (SYMBOL_OBJFILE, struct exception_event_record, CURRENT_EXCEPTION_KIND) (CURRENT_EXCEPTION_CATCH_SAL, CURRENT_EXCEPTION_CATCH_LINE) (CURRENT_EXCEPTION_CATCH_FILE, CURRENT_EXCEPTION_CATCH_PC) (CURRENT_EXCEPTION_THROW_SAL, CURRENT_EXCEPTION_THROW_LINE) (CURRENT_EXCEPTION_THROW_FILE, CURRENT_EXCEPTION_THROW_PC): Delete. * target.h (enum thread_control_capabilities): Delete tc_switch. (target_can_switch_threads): Delete.
2008-05-02* target.h (struct target_ops): AddAndreas Schwab1-0/+5
to_watchpoint_addr_within_range. (target_watchpoint_addr_within_range): New function. * target.c (update_current_target): Inherit to_watchpoint_addr_within_range, defaulting to default_watchpoint_addr_within_range. (default_watchpoint_addr_within_range): New function. (debug_to_watchpoint_addr_within_range): New function. (setup_target_debug): Set to_watchpoint_addr_within_range. * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range): New function. (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range. * breakpoint.c (watchpoints_triggered): Use target_watchpoint_addr_within_range. * gdbint.texinfo (Algorithms): Describe target_watchpoint_addr_within_range.
2008-05-01 PR gdb/2343Aleksandar Ristovski1-0/+5
* corelow.c (core_open): Use gdbarch_target_signal_from_host to translate signal numeric value from the target to GDB's enum target_signal. * gdbarch.c, gdbarch.h: Regenerated. * gdbarch.sh: Added two new functions target_signal_from_host and target_signal_to_host. * target.h (default_target_signal_from_host, default_target_signal_to_host): New functions - declarations. * signals/signals.c (struct gdbarch): New declaration. (default_target_signal_to_host, default_target_signal_from_host): New functions.
2008-04-08Fix trailing space.Vladimir Prus1-1/+1
2008-04-08 * target.h (enum strata): Remove the download_stratum.Vladimir Prus1-2/+1
2008-03-21gdb/Pedro Alves1-9/+6
* target.h (struct target_ops): Delete to_async_mask_value and add to_async_mask. (target_is_async_p, target_async): Formatting. (target_async_mask_value): Delete. (target_async_mask): Delete function declaration, and add new target macro with the same name. * target.c (update_current_target): Replace to_async_mask_value by to_async_mask. Default to_async_mask to return_one. (target_async_mask): Delete. (find_default_can_async_p, find_default_is_async_p): New. (init_dummy_target): register find_default_can_async_p and find_default_is_async_p on the dummy target. * linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h. (debug_linux_nat_async): New global. (show_debug_linux_nat_async): New function. (linux_nat_async_enabled, linux_nat_async_mask_value) (linux_nat_event_pipe, linux_nat_num_queued_events) (linux_nat_async_events_enabled): New globals. (struct waitpid_result): New struct. (waitpid_queue): New global. (queued_waitpid, push_waitpid, drain_queued_events): New. (my_waitpid): Call queued_waitpid. (linux_child_follow_fork): Disable async events during the call. (blocked_mask): Delete. (sync_sigchld_action, async_sigchld_action): New globals. (lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD. In async mode, block events during the call. (linux_nat_create_inferior): New. (linux_nat_attach): In sync mode, restore the mask states. In async mode, wake the event loop immediatelly. (detach_callback): Drain all queued events of the lwp we're detaching from. (linux_nat_detach): Block async mode, and drain events of the main process. (linux_nat_resume): If in async mode, mask async events during the call. If short circuiting, force event loop to wake up. If resuming, set target_executing, and register target events in the event loop. (pipe_to_local_event_queue, local_event_queue_to_pipe): New. (linux_nat_wait): In async mode, block events during the call. Only enable/disable passing SIGINT to the inferior in sync mode. Get events from local waitpid queue. If no interesting events was found, return to events loop. Reregister target events in the event loop on exit. In sync mode, no need to reblock SIGCHLD. (linux_nat_kill): Disable events on entry. (linux_nat_mourn_inferior): In sync mode, don't restore the masks here. Detach async mode from the event loop if there are no more forks available, otherwise leave it on. (sigchld_handler): Assure this is called only in sync mode. (linux_async_permitted, linux_async_permitted_1): New globals. (set_maintenance_linux_async_permitted) (show_maintenance_linux_async_permitted): New functions. (linux_nat_is_async_p, linux_nat_can_async_p) (linux_nat_async_mask): New. (linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New. (get_pending_events, async_sigchld_handler): New. (linux_nat_async_events): New. (async_terminal_is_ours): New global. (linux_nat_terminal_inferior, linux_nat_terminal_ours): New. (async_client_callback, async_client_context): New. (linux_nat_async_file_handler, linux_nat_async) (linux_nat_disable_async, linux_nat_enable_async): New. (linux_nat_add_target): Register linux_nat_create_inferior, linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async, linux_nat_async_mask, linux_nat_terminal_inferior and linux_nat_terminal_ours. (_initialize_linux_nat): Remove local action variable, and update code that used it to use sync_sigchld_action. Add new "lin-lwp-async" debug set/show command. Put the "lin-lwp" debug set/show command in the maintenance class. Add new "linux-async" maintenance set/show command. Block SIGCHLD by default. Setup async_sichld_action, and sync_sigchld_action. Install the default async mode. (lin_thread_get_thread_signals): Use a local sigset_t for blocking the cancel signals. * linux-thread-db.c (re_check_for_thread_db): New. (clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE. (thread_db_can_async_p, thread_db_is_async_p, thread_db_async) (thread_db_async_mask): New. (init_thread_db_ops): Register thread_db_can_async_p, thread_db_is_async_p, thread_db_async and thread_db_async_mask. * remote.c (remote_async_mask_value): New. (remote_return_zero): New. (init_remote_ops): Register remote_return_zero as callbacks of to_can_async_p and to_is_async_p. (remote_can_async_p, remote_is_async_p, remote_async): Update to use remote_async_mask_value. (remote_async_mask): New. (init_remote_async_ops): Remove to_async_mask_value setting and register remote_async_mask as to_async_mask callback in remote_async_ops. * Makefile.in (linux-nat.o): Update. gdb/doc/ * gdb.texinfo (Debugging Output): Document "set/show debug lin-lwp-async". (Maintenance Commands): Document "maint set/show linux-async".
2008-03-15 Remove ignoring leading exec events code.Vladimir Prus1-8/+0
* fork-child.c (startup_inferior): Do not set inferior_ignoring_leading_exec_events. * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove. (inf_child_target): Do not set to_reported_exec_events_per_exec_call. * infrun.c (inferior_ignoring_leading_exec_events): Remove. (handle_inferior_event): Remove code for ignoring leading exec events. * target.c (update_current_target): Do not inherit, or default, to_reported_exec_events_per_exec_call. (debug_to_reported_exec_events_per_exec_call): Remove. (setup_target_debug): Do not set to_reported_exec_events_per_exec_call. * target.h (target_reported_exec_events_per_exec_call): Remove. (struct target): Remove the to_reported_exec_events_per_exec_call field.
2008-03-13 * breakpoint.h (breakpoint_restore_shadows): NewDaniel Jacobowitz1-0/+5
declaration. * breakpoint.c (breakpoint_restore_shadows): New. (read_memory_nobpt): Delete. * gdbcore.h (read_memory_nobpt): Delete declaration. * target.c (memory_xfer_partial): Call breakpoint_restore_shadows. (restore_show_memory_breakpoints) (make_show_memory_beakpoints_cleanup): New. (show_memory_breakpoints): New. * target.h (make_show_memory_beakpoints_cleanup): Declare. * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Make sure we see memory breakpoints when checking if breakpoint is still there. * alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c, hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c, m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c, sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
2008-02-28 * infcmd.c (kill_if_already_running): Make static. UseDaniel Jacobowitz1-0/+2
target_require_runnable. * target.c (target_require_runnable): New. * target.h (target_require_runnable): Declare. * gdb.texinfo (Starting): Mention always-running targets. (Target Commands): Add an anchor for load. (Connecting): Explain continue instead of run.
2008-02-20 * gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): AddMarkus Deuling1-2/+2
gdbarch as parameter. * gdbarch.{c,h}: Regenerate. * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as parameter. * mem-break.c (default_memory_insert_breakpoint) (default_memory_remove_breakpoint): Likewise. * target.h (default_memory_remove_breakpoint) (default_memory_insert_breakpoint): Likewise. * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as parameter. Replace current_gdbarch by gdbarch. * m32r-tdep.c (m32r_memory_insert_breakpoint) (m32r_memory_remove_breakpoint): Likewise.
2008-01-01 Updated copyright notices for most files.Daniel Jacobowitz1-1/+1
2007-12-16 * target.h (target_pid_or_tid_to_str): Remove.Vladimir Prus1-5/+0
* infrun.c (handle_inferior_event): Use target_pid_to_str instead of target_pid_or_tid_to_str. (normal_stop): Likewise.
2007-12-13Remove unused support for target-based exception catching.Jim Blandy1-19/+0
* target.h (struct target_ops): Delete to_enable_exception_callback and to_get_current_exception_event members. (target_enable_exception_callback) (target_get_current_exception_event): Delete macros. * target.c (update_current_target): Remove code to inherit and default those members. (debug_to_enable_exception_callback) (debug_to_get_current_exception_event): Delete functions. (setup_target_debug): Don't install those methods. * inf-child.c (inf_child_enable_exception_callback) (inf_child_get_current_exception_event): Delete dummy functions. (inf_child_target): Don't install them in the target vector. * breakpoint.h (enum bptype): Delete bp_catch_catch, bp_catch_throw. * breakpoint.c (cover_target_enable_exception_callback) (ep_is_exception_catchpoint, create_exception_catchpoint): Delete functions. (insert_bp_location, update_breakpoints_after_exec) (remove_breakpoint, ep_is_catchpoint, print_it_typical) (bpstat_stop_status, bpstat_what) (bpstat_get_triggered_catchpoints, print_one_breakpoint_location) (user_settable_breakpoint, allocate_bp_location) (disable_watchpoints_before_interactive_call_start) (enable_watchpoints_after_interactive_call_stop, mention) (delete_breakpoint, breakpoint_re_set_one, disable_command) (enable_command): Remove exception catchpoint cases. (catch_exception_command_1): Don't try target-based exception handling. * stack.c (catch_info): Call print_frame_label_vars unconditionally.
2007-12-07* target.c (update_current_target): Inherit to_log_command.Maciej W. Rozycki1-0/+9
* target.h (struct target_ops). Add to_log_command. (target_log_command): New macro. * top.c (execute_command): Call target_log_command() rather than serial_log_command(). * monitor.c (init_base_monitor_ops): Initialize to_log_command. * remote-m32r-sdi.c (init_m32r_ops): Likewise. * remote-mips.c (_initialize_remote_mips): Likewise. * remote.c (init_remote_ops): Likewise.
2007-12-04* target.h (target_find_new_threads): Fix definition.Maciej W. Rozycki1-1/+1