+2009-05-18 Jon Beniston <jon@beniston.com>
+
+ * MAINTAINERS: Add lm32 target.
+ * Makefile.in: Add lm32 dependencies.
+ * NEWS: Indicate lm32 is a new target.
+ * configure.tgt: Add lm32 targets.
+ * lm32-tdep.c: New file.
+
+2009-05-18 Pedro Alves <pedro@codesourcery.com>
+
+ * corelow.c (core_open): Flush the register cache before doing
+ anything with registers.
+
+2009-05-18 Pedro Alves <pedro@codesourcery.com>
+
+ * inflow.h (our_process_group): Remove declaration.
+ (inferior_process_group): Delete global variable declaration.
+ (inferior_process_group): New function declaration.
+ * inflow.c: Include observer.h.
+ (inferior_ttystate, our_ttystate, tflags_inferior, tflags_ours):
+ Delete.
+ (struct terminal_info): New struct.
+ (our_terminal_info): New global.
+ (inferior_process_group): New function.
+ (inferior_thisrun_terminal): Extend description comment.
+ (gdb_has_a_terminal): Adjust to write to our_terminal_info fields
+ instead of globals.
+ (terminal_init_inferior_with_pgrp): Adjust to per-inferior
+ terminal settings.
+ (terminal_inferior): Ditto.
+ (terminal_ours_1): Ditto.
+ (inflow_new_inferior, inflow_inferior_exit): New functions.
+ (child_terminal_info): Adjust to per-inferior terminal settings.
+ (osig_set): New global.
+ (set_sigint_trap): Adjust to per-inferior terminal settings. Set
+ or clear `osig_set' accordingly.
+ (clear_sigint_trap): Check `osig_set' to decide wheater to restore
+ SIGINT handler, instead of checking the current inferior (which
+ may be none).
+ (_initialize_inflow): Attach inflow_new_inferior and
+ inflow_inferior_exit to the "new_inferior" and "inferior_exit"
+ notifications, respectively.
+ * inferior.h (struct terminal_info): Forward declare.
+ (struct inferior): Add `terminal_info' field.
+ * inferior.c (delete_inferior_1): Notify the inferior_exit
+ observers before removing the inferior from the lists and deleting
+ it.
+ * inf-ptrace.c (inf_ptrace_stop): `inferior_process_group' is now
+ a function instead of a variable. Adjust.
+ * procfs.c (procfs_stop): Ditto.
+
+2009-05-17 Pedro Alves <pedro@codesourcery.com>
+
+ * infrun.c (handle_inferior_event): When handling a
+ TARGET_WAITKIND_FORKED, detach breakpoints from the fork child
+ immediatelly.
+ * linux-nat.c (linux_child_follow_fork): Only detach breakpoints
+ from the child if vforking.
+ * inf-ptrace.c (inf_ptrace_follow_fork): No need to detach
+ breakpoints from the child here.
+
+2009-05-17 Pedro Alves <pedro@codesourcery.com>
+
+ * infrun.c (pending_follow): Remove execd_pathname member.
+ (resume): No longer handle TARGET_WAITKIND_EXECD pending follow.
+ (handle_inferior_event): When handling a TARGET_WAITKIND_EXECD
+ event, don't copy `execd_pathname' to pending_follow, use the
+ event copy instead. Release `execd_pathname' once done with
+ handling the event.
+
+ * infrun.c (pending_follow): Remove mention of exec events.
+
+2009-05-17 Hui Zhu <teawater@gmail.com>
+
+ * i386-tdep.c (i386_process_record): Make it extern.
+ (i386_gdbarch_init): Don't call set_gdbarch_process_record
+ here.
+ * i386-tdep.h (i386_process_record): Declare.
+ * i386-linux-tdep.c (i386_linux_init_abi): Call
+ set_gdbarch_process_record.
+
+2009-05-17 Vladimir Prus <vladimir@codesourcery.com>
+
+ Always report varobj as changed when in_scope attribute changes.
+
+ * varobj.c (install_new_value): If non-NULL-ness of value
+ changed, return 1.
+
+2009-05-15 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * NEWS: Mention set/show libthread-db-search-path.
+ * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): New define.
+ (LIBTHREAD_DB_SO): Moved from linux-thread-db.c
+ * linux-thread-db.c (libthread_db_search_path): New setting.
+ (thread_db_handle): New variable (replaces using_thread_db).
+ (try_thread_db_load_1): New function.
+ (try_thread_db_load, thread_db_load_search): Likewise.
+ (dladdr_to_soname): Likewise.
+ (thread_db_load): Iterate over possibly multiple libthread_db's.
+ (check_for_thread_db): Attempt to load new libthread_db.
+ (thread_db_detach, thread_db_wait): Unload libthread_db.
+ (thread_db_mourn_inferior): Likewise.
+ (_initialize_thread_db): Add new libthread-db-search-path option.
+ Defer loading of libthread_db to check_for_thread_db.
+ * solib.c (libpthread_name_p): New function.
+ (libpthread_solib_p): Call it.
+ * solib.h (libpthread_name_p): New prototype.
+
+2009-05-15 Pierre Muller <muller@ics.u-strasbg.fr>
+
+ * MAINTAINERS: Update my email address.
+
+2009-05-14 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * breakpoint.h: Add breakpoint_re_set_objfile prototype.
+ * breakpoint.c (create_overlay_event_breakpoint): Renamed
+ from create_overlay_event_breakpoint_1, old
+ create_overlay_event_breakpoint deleted.
+ (breakpoint_re_set_objfile): Don't rescan all objfiles
+ unnecessarily.
+ (breakpoint_re_set): New function.
+ * symfile.c (new_symfile_objfile): Call breakpoint_re_set_objfile
+ instead of breakpoint_re_set.
+ * objfiles.c (objfile_relocate): Likewise.
+
+2009-05-14 Joel Brobecker <brobecker@adacore.com>
+
+ * gdbarch.sh: Add comment documenting the target_gdbarch global.
+ gdbarch.h does NOT need to be regenerated as the corresponding
+ change has already been made in a previous commit.
+
+2009-05-14 Pierre Muller <muller@ics.u-strasbg.fr>
+
+ Remove all i386 debug register low level macros in config nm files.
+ (I386_DR_LOW_SET_ADDR, I386_DR_LOW_RESET_ADDR): Remove.
+ (I386_DR_LOW_GET_STATUS, I386_DR_LOW_SET_CONTROL): Remove.
+ (I386_USE_GENERIC_WATCHPOIINTS): Remove.
+
+ * i386-nat.h: New file (adapted from config/i386/nm-i386.h).
+ (struct i386_dr_low_type): New type.
+ (i386_dr_low): New global variable.
+ * i386-nat.c (TARGET_HAS_DR_LEN_8): Update macro.
+ (i386_insert_aligned_watchpoint): Replace i386 dr low macros by
+ i386_dr_low struct variable fields.
+ (i386_remove_aligned_watchpoint): Likewise.
+ (i386_stopped_data_address): Likewise.
+ (i386_stopped_by_hwbp): Likewise.
+ (show_debug_regs_command_added): New static variable.
+ (add_show_debug_regs_command): New static function.
+ (i386_use_watchpoints): Call add_show_debug_regs_command if not done.
+ (i386_set_debug_register_length): New function.
+ (_initialize_i386_nat): Delete.
+
+ * amd64-linux-nat.c: Include "i386-nat.h".
+ (amd64_linux_dr_set_control): Change to static.
+ (amd64_linux_dr_get_status): Change to static.
+ (amd64_linux_dr_set_addr,amd64_linux_dr_reset_addr): Likewise.
+ (_initialize_amd64_linux_nat): Set i386_dr_low variable fields.
+
+ * go32-nat.c: Include "i386-nat.h".
+ (go32_set_addr): Change to static.
+ (go32_set_dr7): Change to static. Change arg type to unisgned long.
+ (go32_get_dr6): Change to static. Change return type to unisnged long.
+ (init_go32_ops): Set i386_dr_low variable fields.
+ * i386-linux-nat.c: Include "i386-nat.h".
+ (i386_linux_dr_set_control, i386_linux_dr_get_status): Change to static.
+ (i386_linux_dr_set_addr, i386_linux_dr_reset_addr): Idem.
+ (_initialize_i386_linux_nat): Set i386_dr_low variable fields.
+ * i386bsd-nat.h: Declare functions used for
+ i386_dr_low fields in i386fbsd-nat.c.
+ * i386fbsd-nat.c: Include "i386-nat.h".
+ (_initialize_i386fbsd_nat): Set i386_dr_low variable fields.
+ * windows-nat.c: Include "i386-nat.h".
+ (cygwin_set_dr, cygwin_get_dr6, cygwin_set_dr7): Add prototypes.
+ Change to static.
+ (cygwin_get_dr6): Change return type to unisnged long.
+ (cygwin_set_dr7): Change arg type to unisgned long.
+ (init_windows_ops): Set i386_dr_low function fields.
+
+ * amd64-windows-nat.c (_initialize_amd64_windows_nat): Call
+ i386_set_debug_register_length.
+ * i386-windows-nat.c (_initialize_i386_windows_nat): Likewise.
+
+ * config/i386/nm-cygwin.h: Remove all I386_* macros.
+ * config/i386/nm-cygwin64.h: Likewise.
+ * config/i386/nm-fbsd.h: Likewise.
+ * config/i386/nm-linux.h: Likewise.
+ * config/i386/nm-i386.h: Remove completely.
+ * config/i386/nm-go32.h: Remove completely.
+ * config/i386/nm-linux64.h: Remove completely.
+ * config/i386/go32.mh (NAT_FILE): Remove entry.
+ * config/i386/linux64.h (NAT_FILE): Change to config/nm-linux.h.
+
+2009-05-14 Jon Beniston <jon@beniston.com>
+
+ * MAINTAINERS: Add Jon Beniston to write after approval list.
+
+2009-05-13 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * objc-lang.c (objc_objfile_data): New variable.
+ (find_methods): Skip objfiles without Obj-C methods.
+ (_initialize_objc_lang): New function.
+
+2009-05-13 Joel Brobecker <brobecker@adacore.com>
+
+ * c-lang.c (print_wchar): Remove unnecessary cast.
+
+2009-05-12 Jim Blandy <jimb@red-bean.com>
+
+ * MAINTAINERS: Remove self as m32c target maintainer.
+
+2009-05-12 Pedro Alves <pedro@codesourcery.com>
+
+ * cli/cli-decode.c (deprecated_add_set_cmd): Delete.
+ * command.h (deprecated_add_set_cmd): Delete declaration.
+ * gnu-nat.c (_initialize_gnu_nat): Replace 'maint gnu-debug' with
+ 'set debug gnu-nat' and 'show debug gnu-nat'.
+ * i386-nat.c (_initialize_i386_nat): Replace 'maint
+ show-debug-registers' with 'maint set show-debug-registers' and
+ 'maint show show-debug-registers'.
+ * mips-linux-nat.c (_initialize_mips_linux_nat): Replace 'maint
+ show-debug-registers' with 'maint set show-debug-registers' and
+ 'maint show show-debug-registers'.
+
+2009-05-12 Joel Brobecker <brobecker@adacore.com>
+
+ * c-lang.c (print_wchar): Convert w into a gdb_wchar_t before
+ pushing it on the output obstack.
+
+2009-05-11 Joel Brobecker <brobecker@adacore.com>
+
+ Fix internal error on breaking at a multi-locations caller source line.
+ * breakpoint.c (parse_breakpoint_sals): Set EXPLICIT_PC for the `break'
+ command with no parameters.
+
+2009-05-11 Pedro Alves <pedro@codesourcery.com>
+
+ * linux-nat.c (enum sigchld_state): Delete.
+ (linux_nat_async_events_state): Delete.
+ (struct waitpid_result): Delete.
+ (waitpid_queue): Delete.
+ (queued_waitpid_1): Delete.
+ (async_file_flush): New.
+ (queued_waitpid, push_waitpid): Delete.
+ (async_file_mark): New.
+ (drain_queued_events): Delete.
+ (my_waitpid): Remove locally queued events handling.
+ (linux_test_for_tracefork): Upjust.
+ (linux_child_follow_fork): Ditto.
+ (sync_sigchld_action): Delete.
+ (blocked_mask): Reinstate.
+ (async_sigchld_action): Rename to...
+ (sigchld_action): ... this.
+ (block_child_signals): New.
+ (restore_child_signals_mask): New.
+ (lin_lwp_attach_lwp): Adjust.
+ (linux_nat_create_inferior): Ditto.
+ (linux_nat_attach): Also use lp->status in async mode.
+ (get_pending_status): Don't use queued_waitpid.
+ (linux_nat_detach): Don't drain locally queued events.
+ (linux_nat_resume): Allow pending wait statuses stored lp->status
+ in async mode. If returning early due to a pending event,
+ re-register the event source.
+ (stop_wait_callback): Allow pending wait statuses stored
+ lp->status in async mode.
+ (pipe_to_local_event_queue, local_event_queue_to_pipe): Delete.
+ (linux_nat_wait): Rename to ...
+ (linux_nat_wait_1): ... this. Allow pending wait statuses stored
+ lp->status in async mode. Always add WNOHANG to the waitpid
+ options in async mode.
+ (linux_nat_wait): New.
+ (kill_callback): Don't drain locally queued events.
+ (sigchld_handler): Rewrite.
+ (linux_nat_is_async_p, linux_nat_can_async_p): Fix comments to
+ refer to "set target-async".
+ (linux_nat_async_mask): If in non-stop, and re-enabling async
+ mode, re-register the target event source in the event loop.
+ (linux_nat_event_pipe_pop, linux_nat_event_pipe_push)
+ (get_pending_events, async_sigchld_handler)
+ (linux_nat_async_events): Delete.
+ (handle_target_event): New.
+ (linux_nat_async_file_handler): Delete.
+ (linux_async_pipe): New.
+ (linux_nat_async): Only re-register in the event loop if not
+ registered yet. Always notify the event-loop once if enabling the
+ event source.
+ (linux_nat_stop_lwp): Rewrite to handle pending events stored in
+ lp->status, not in the locally queued event list.
+ (linux_nat_stop): Don't mask out async event handling.
+ (linux_nat_setup_async): Delete.
+ (_initialize_linux_nat): Adjust.
+ (lin_thread_get_thread_signals): blocked_mask is global again.
+ Adjust.
+
+2009-05-11 Pierre Muller <muller@ics.u-strasbg.fr>
+
+ Unify target macros.
+
+ * 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 Pierre Muller <muller@ics.u-strasbg.fr>
+
+ * src/gdb/target.h: Remove all tests for already defined
+ macros. All macros defined here should not be set in config
+ headers anymore.
+
+2009-05-08 Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
+
+ * ppc-linux-nat.c (have_ptrace_getsetregs): New variable.
+ (have_ptrace_getsetfpregs): Likewise.
+ fetch_all_gp_regs): New function.
+ (fetch_gp_regs): New function.
+ (fetch_all_fp_regs): Likewise.
+ (fetch_fp_regs): New function.
+ (fetch_ppc_registers): Using the new methods to fetch general-
+ purpose and floating-pointer registers.
+ (store_all_gp_regs): New function.
+ (store_gp_regs): Likewise.
+ (store_all_fp_regs): New function.
+ (store_fp_regs): Likewise.
+ (store_ppc_registers): Using the new methods to store general-
+ purpose and floating-pointer registers.
+
+2009-05-08 Doug Evans <dje@google.com>
+
+ * linux-nat.c (linux_xfer_siginfo): Delete unused locals lp, n.
+
+2009-05-07 Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
+
+ * MAINTAINERS (Write After Approval): Add self.
+
+2009-05-07 Joel Brobecker <brobecker@adacore.com>
+
+ * gdbarch.h (target_gdbarch): Add comment documenting this global.
+
+2009-05-06 Joel Brobecker <brobecker@adacore.com>
+
+ * acinclude.m4 (AM_ICONV): Prefer in-tree libiconv if present over
+ system iconv.
+ * configure: Regenerate.
+
+2009-05-06 Joel Brobecker <brobecker@adacore.com>
+
+ * utils.c: Add include of gdb_usleep.h.
+ (defaulted_query): Detect false EOF conditions that happen
+ on terminals opened with the O_NONBLOCK flag when there is
+ nothing to read.
+
+2009-05-06 Pedro Alves <pedro@codesourcery.com>
+
+ * inferior.c (add_inferior): Move observer_notify_new_inferior
+ call to ...
+ (add_inferior_silent): ... here.
+
+2009-05-06 Pierre Muller <muller@ics.u-strasbg.fr>
+ Pedro Alves <pedro@codesourcery.com>
+
+ * procfs.c (procfs_insert_watchpoint, procfs_remove_watchpoint)
+ (procfs_region_ok_for_hw_watchpoint, procfs_use_watchpoints): New
+ functions.
+ (procfs_stopped_by_watchpoint): Made static, ptid argument
+ removed.
+ (_initialize_procfs): Register new watchpoint related target
+ functions.
+ * config/i386/nm-i386sol2.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT)
+ (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT, STOPPED_BY_WATCHPOINT)
+ (HAVE_CONTINUABLE_WATCHPOINT): Delete.
+ (target_insert_watchpoint, target_remove_watchpoint): Delete.
+ (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
+ declarations.
+ * config/mips/nm-irix5.h (STOPPED_BY_WATCHPOINT)
+ (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
+ (target_insert_watchpoint, target_remove_watchpoint): Delete.
+ (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
+ declarations.
+ * config/sparc/nm-sol2.h (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT)
+ (HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT): Delete.
+ (target_insert_watchpoint, target_remove_watchpoint): Delete.
+ (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
+ declarations.
+
+2009-05-06 Hui Zhu <teawater@gmail.com>
+
+ * i386-tdep.c (i386_process_record): Change bzero to memset.
+
+2009-05-06 Hui Zhu <teawater@gmail.com>
+
+ * NEWS: Add item for process record and replay.
+