2009-10-21 Andrew Stubbs <ams@codesourcery.com>
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 25964d31bd4ac8e914fb33fc63fb5100f6a026b2..199b65221f5d1cf3fc0c7669e6c75ae63d9d350b 100644 (file)
@@ -1,3 +1,986 @@
+2009-10-21  Andrew Stubbs  <ams@codesourcery.com>
+           Joel Brobecker  <brobecker@adacore.com>
+
+       * Makefile.in (HFILES_NO_SRCDIR): Remove shnbsd-tdep.h
+       * configure.tgt (sh*-*-linux*): Add corelow.o to gdb_target_obs.
+       * sh-linux-tdep.c: Include sh-tdep.h.
+       (REGSx16): New macro.
+       (gregs_table, fpregs_table): New variables.
+       (sh_linux_init_abi): Set core_gregmap and fpregmap.
+       * sh-tdep.c: Include regset.h.
+       (sh_corefile_supply_regset): New function.
+       (sh_corefile_collect_regset): New function.
+       (sh_corefile_gregset, sh_corefile_fpregset): New variables.
+       (sh_regset_from_core_section): New function.
+       (sh_gdbarch_init): Set up tdep value.
+       Call set_gdbarch_regset_from_core_section.
+       * sh-tdep.h (PC_REGNUM): New enum value.
+       (struct sh_corefile_regs): New type.
+       (sh_corefile_gregset): Export variable.
+       (sh_corefile_supply_regset): New prototype.
+       (sh_corefile_collect_regset): New prototype.
+       * shnbsd-tdep.c: Remove include of regcache.h, gdb_assert.h and
+       shnbsd-tdep.h.
+       (regmap): Use new definition using struct sh_corefile_regs.
+       (shnbsd_supply_gregset, shnbsd_collect_gregset): Delete.
+       (shnbsd_gregset): Delete.
+       (shnbsd_regset_from_core_section): Delete.
+       (shnbsd_supply_reg, shnbsd_fill_reg): Use new regset interface.
+       (shnbsd_init_abi): Set core_gregmap.
+       (shnbsd_supply_reg): Delete.
+       (shnbsd_fill_reg): Delete.
+       (SHNBSD_SIZEOF_GREGS): Move ...
+       * shnbsd-nat.c (SHNBSD_SIZEOF_GREGS): ... to here.
+       Remove include of shnbsd-tdep.h.
+       (shnbsd_fetch_inferior_registers): Replace shnbsd_supply_reg call
+       with sh_corefile_supply_regset.
+       (shnbsd_store_inferior_registers): Replace shnbsd_fill_reg call with
+       sh_corefile_collect_regset.
+       * shnbsd-tdep.h: Delete file.
+
+2009-10-21  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * rs6000-nat.c (exec_one_dummy_insn): Add missing new ASPACE parameter
+       to depreacted_insert_raw_breakpoint function call.
+       * procfs.c (insert_dbx_link_bpt_in_file): Likewise.
+
+2009-10-20  Michael Snyder  <msnyder@vmware.com>
+
+       * record.c: Add some top-level comments for general explanation.
+
+2009-10-20  Hui Zhu  <teawater@gmail.com>
+           Michael Snyder  <msnyder@vmware.com>
+
+       * record.c (record_exec_insn): New function.  Emulate one
+       instruction, forward or backward.  Abstracted from record_wait.
+       (record_wait) Call record_exec_insn.
+
+2009-10-20  Michael Snyder  <msnyder@msnyder-server.eng.vmware.com>
+
+       * infrun.c (handle_inferior_event): Add pspace field to sal
+       for reverse execution cases.
+
+2009-10-20  Ken Werner  <ken@linux.vnet.ibm.com>
+
+       * go32-nat.c (go32_create_inferior): Use inferior_appeared, not
+       inferior_appeared_silent.
+       * remote-sim.c (gdbsim_create_inferior): Ditto.
+
+2009-10-20  Pedro Alves  <pedro@codesourcery.com>
+
+       * darwin-nat.c (cancel_breakpoint): Pass the regcache's address
+       space to breakpoint_inserted_here_p.
+
+2009-10-20  Pedro Alves  <pedro@codesourcery.com>
+
+       * linux-nat.c (linux_nat_thread_address_space): New.
+       (linux_nat_add_target): Install it.
+       * progspace.c (address_space_num): New.
+       * progspace.h (address_space_num): Declare.
+       * target.c (target_thread_address_space): Really query the target.
+       * target.h (struct target_ops) <to_thread_address_space>: New
+       field.
+
+2009-10-19  Joel Brobecker  <brobecker@adacore.com>
+
+       * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Add comment.
+
+2009-10-19  Pedro Alves  <pedro@codesourcery.com>
+           Stan Shebs  <stan@codesourcery.com>
+
+       Add base multi-executable/process support to GDB.
+
+       * Makefile.in (SFILES): Add progspace.c.
+       (COMMON_OBS): Add progspace.o.
+       * progspace.h: New.
+       * progspace.c: New.
+
+       * breakpoint.h (struct bp_target_info) <placed_address_space>: New
+       field.
+       (struct bp_location) <pspace>: New field.
+       (struct breakpoint) <pspace>: New field.
+       (bpstat_stop_status, breakpoint_here_p)
+       (moribund_breakpoint_here_p, breakpoint_inserted_here_p)
+       (regular_breakpoint_inserted_here_p)
+       (software_breakpoint_inserted_here_p, breakpoint_thread_match)
+       (set_default_breakpoint): Adjust prototypes.
+       (remove_breakpoints_pid, breakpoint_program_space_exit): Declare.
+       (insert_single_step_breakpoint, deprecated_insert_raw_breakpoint):
+       Adjust prototypes.
+       * breakpoint.c (executing_startup): Delete.
+       (default_breakpoint_sspace): New.
+       (breakpoint_restore_shadows): Skip if the address space doesn't
+       match.
+       (update_watchpoint): Record the frame's program space in the
+       breakpoint location.
+       (insert_bp_location): Record the address space in target_info.
+       Adjust to pass the symbol space to solib_name_from_address.
+       (breakpoint_program_space_exit): New.
+       (insert_breakpoint_locations): Switch the symbol space and thread
+       when inserting breakpoints.  Don't insert breakpoints in a vfork
+       parent waiting for vfork done if we're not attached to the vfork
+       child.
+       (remove_breakpoints_pid): New.
+       (reattach_breakpoints): Switch to a thread of PID.  Ignore
+       breakpoints of other symbol spaces.
+       (create_internal_breakpoint): Store the symbol space in the sal.
+       (create_longjmp_master_breakpoint): Iterate over all symbol
+       spaces.
+       (update_breakpoints_after_exec): Ignore breakpoints for other
+       symbol spaces.
+       (remove_breakpoint): Rename to ...
+       (remove_breakpoint_1): ... this.  Pass the breakpoints symbol
+       space to solib_name_from_address.
+       (remove_breakpoint): New.
+       (mark_breakpoints_out): Ignore breakpoints from other symbol
+       spaces.
+       (breakpoint_init_inferior): Ditto.
+       (breakpoint_here_p): Add an address space argument and adjust to
+       use breakpoint_address_match.
+       (moribund_breakpoint_here_p): Ditto.
+       (regular_breakpoint_inserted_here_p): Ditto.
+       (breakpoint_inserted_here_p): Ditto.
+       (software_breakpoint_inserted_here_p): Ditto.
+       (breakpoint_thread_match): Ditto.
+       (bpstat_check_location): Ditto.
+       (bpstat_stop_status): Ditto.
+       (print_breakpoint_location): If there's a location to print,
+       switch the current symbol space.
+       (print_one_breakpoint_location): Add `allflag' argument.
+       (print_one_breakpoint): Ditto.  Adjust.
+       (do_captured_breakpoint_query): Adjust.
+       (breakpoint_1): Adjust.
+       (breakpoint_has_pc): Also match the symbol space.
+       (describe_other_breakpoints): Add a symbol space argument and
+       adjust.
+       (set_default_breakpoint): Add a symbol space argument.  Set
+       default_breakpoint_sspace.
+       (breakpoint_address_match): New.
+       (check_duplicates_for): Add an address space argument, and adjust.
+       (set_raw_breakpoint): Record the symbol space in the location and
+       in the breakpoint.
+       (set_longjmp_breakpoint): Skip longjmp master breakpoints from
+       other symbol spaces.
+       (remove_thread_event_breakpoints, remove_solib_event_breakpoints)
+       (disable_breakpoints_in_shlibs): Skip breakpoints from other
+       symbol spaces.
+       (disable_breakpoints_in_unloaded_shlib): Match symbol spaces.
+       (create_catchpoint): Set the symbol space in the sal.
+       (disable_breakpoints_before_startup): Skip breakpoints from other
+       symbol spaces.  Set executing_startup in the current symbol space.
+       (enable_breakpoints_after_startup): Clear executing_startup in the
+       current symbol space.  Skip breakpoints from other symbol spaces.
+       (clone_momentary_breakpoint): Also copy the symbol space.
+       (add_location_to_breakpoint): Set the location's symbol space.
+       (bp_loc_is_permanent): Switch thread and symbol space.
+       (create_breakpoint): Adjust.
+       (expand_line_sal_maybe): Expand comment to mention symbol spaces.
+       Switch thread and symbol space when reading memory.
+       (parse_breakpoint_sals): Set the symbol space in the sal.
+       (break_command_really): Ditto.
+       (skip_prologue_sal): Switch and space.
+       (resolve_sal_pc): Ditto.
+       (watch_command_1): Record the symbol space in the sal.
+       (create_ada_exception_breakpoint): Adjust.
+       (clear_command): Adjust.  Match symbol spaces.
+       (update_global_location_list): Use breakpoint_address_match.
+       (breakpoint_re_set_one): Switch thread and space.
+       (breakpoint_re_set): Save symbol space.
+       (breakpoint_re_set_thread): Also reset the symbol space.
+       (deprecated_insert_raw_breakpoint): Add an address space argument.
+       Adjust.
+       (insert_single_step_breakpoint): Ditto.
+       (single_step_breakpoint_inserted_here_p): Ditto.
+       (clear_syscall_counts): New.
+       (_initialize_breakpoint): Install it as inferior_exit observer.
+
+       * exec.h: Include "progspace.h".
+       (exec_bfd, exec_bfd_mtime): New defines.
+       (exec_close): Declare.
+       * exec.c: Include "gdbthread.h" and "progspace.h".
+       (exec_bfd, exec_bfd_mtime, current_target_sections_1): Delete.
+       (using_exec_ops): New.
+       (exec_close_1): Rename to exec_close, and make public.
+       (exec_close): Rename to exec_close_1, and adjust all callers.  Add
+       description.  Remove target sections and close executables from
+       all program spaces.
+       (exec_file_attach): Add comment.
+       (add_target_sections): Check on `using_exec_ops' to check if the
+       target should be pushed.
+       (remove_target_sections): Only unpush the target if there are no
+       more target sections in any symbol space.
+       * gdbcore.h: Include "exec.h".
+       (exec_bfd, exec_bfd_mtime): Remove declarations.
+
+       * frame.h (get_frame_program_space, get_frame_address_space)
+       (frame_unwind_program_space): Declare.
+       * frame.c (struct frame_info) <pspace, aspace>: New fields.
+       (create_sentinel_frame): Add program space argument.  Set the
+       pspace and aspace fields of the frame object.
+       (get_current_frame, create_new_frame): Adjust.
+       (get_frame_program_space): New.
+       (frame_unwind_program_space): New.
+       (get_frame_address_space): New.
+       * stack.c (print_frame_info): Adjust.
+       (print_frame): Use the frame's program space.
+
+       * gdbthread.h (any_live_thread_of_process): Declare.
+       * thread.c (any_live_thread_of_process): New.
+       (switch_to_thread): Switch the program space as well.
+       (restore_selected_frame): Don't warn if trying to restore frame
+       level 0.
+
+       * inferior.h: Include "progspace.h".
+       (detach_fork): Declare.
+       (struct inferior) <removable, aspace, pspace>
+       <vfork_parent, vfork_child, pending_detach>
+       <waiting_for_vfork_done>: New fields.
+       <terminal_info>: Remove field.
+       <data, num_data>: New fields.
+       (register_inferior_data, register_inferior_data_with_cleanup)
+       (clear_inferior_data, set_inferior_data, inferior_data): Declare.
+       (exit_inferior, exit_inferior_silent, exit_inferior_num_silent)
+       (inferior_appeared): Declare.
+       (find_inferior_pid): Typo.
+       (find_inferior_id, find_inferior_for_program_space): Declare.
+       (set_current_inferior, save_current_inferior, prune_inferiors)
+       (number_of_inferiors): Declare.
+       (inferior_list): Declare.
+       * inferior.c: Include "gdbcore.h" and "symfile.h".
+       (inferior_list): Make public.
+       (delete_inferior_1): Always delete thread silently.
+       (find_inferior_id): Make public.
+       (current_inferior_): New.
+       (current_inferior): Use it.
+       (set_current_inferior): New.
+       (restore_inferior): New.
+       (save_current_inferior): New.
+       (free_inferior): Free the per-inferior data.
+       (add_inferior_silent): Allocate per-inferior data.
+       Call inferior_appeared.
+       (delete_threads_of_inferior): New.
+       (delete_inferior_1): Adjust interface to take an inferior pointer.
+       (delete_inferior): Adjust.
+       (delete_inferior_silent): Adjust.
+       (exit_inferior_1): New.
+       (exit_inferior): New.
+       (exit_inferior_silent): New.
+       (exit_inferior_num_silent): New.
+       (detach_inferior): Adjust.
+       (inferior_appeared): New.
+       (discard_all_inferiors): Adjust.
+       (find_inferior_id): Make public.  Assert pid is not zero.
+       (find_inferior_for_program_space): New.
+       (have_inferiors): Check if we have any inferior with pid not zero.
+       (have_live_inferiors): Go over all pushed targets looking for
+       process_stratum.
+       (prune_inferiors): New.
+       (number_of_inferiors): New.
+       (print_inferior): Add executable column.  Print vfork parent/child
+       relationships.
+       (inferior_command): Adjust to cope with not running inferiors.
+       (remove_inferior_command): New.
+       (add_inferior_command): New.
+       (clone_inferior_command): New.
+       (struct inferior_data): New.
+       (struct inferior_data_registration): New.
+       (struct inferior_data_registry): New.
+       (inferior_data_registry): New.
+       (register_inferior_data_with_cleanup): New.
+       (register_inferior_data): New.
+       (inferior_alloc_data): New.
+       (inferior_free_data): New.
+       (clear_inferior_data): New.
+       (set_inferior_data): New.
+       (inferior_data): New.
+       (initialize_inferiors): New.
+       (_initialize_inferiors): Register "add-inferior",
+       "remove-inferior" and "clone-inferior" commands.
+
+       * objfiles.h: Include "progspace.h".
+       (struct objfile) <pspace>: New field.
+       (symfile_objfile, object_files): Don't declare.
+       (ALL_PSPACE_OBJFILES): New.
+       (ALL_PSPACE_OBJFILES_SAFE): New.
+       (ALL_OBJFILES, ALL_OBJFILES_SAFE): Adjust.
+       (ALL_PSPACE_SYMTABS): New.
+       (ALL_PRIMARY_SYMTABS): Adjust.
+       (ALL_PSPACE_PRIMARY_SYMTABS): New.
+       (ALL_PSYMTABS): Adjust.
+       (ALL_PSPACE_PSYMTABS): New.
+       * objfiles.c (object_files, symfile_objfile): Delete.
+       (struct objfile_sspace_info): New.
+       (objfiles_pspace_data): New.
+       (objfiles_pspace_data_cleanup): New.
+       (get_objfile_pspace_data): New.
+       (objfiles_changed_p): Delete.
+       (allocate_objfile): Set the objfile's program space.  Adjust to
+       reference objfiles_changed_p in pspace data.
+       (free_objfile): Adjust to reference objfiles_changed_p in pspace
+       data.
+       (objfile_relocate): Ditto.
+       (update_section_map): Add pspace argument.  Adjust to iterate over
+       objfiles in the passed in pspace.
+       (find_pc_section): Delete sections and num_sections statics.
+       Adjust to refer to program space's objfiles_changed_p.  Adjust to
+       refer to sections and num_sections store in the objfile's pspace
+       data.
+       (objfiles_changed): Adjust to reference objfiles_changed_p in
+       pspace data.
+       (_initialize_objfiles): New.
+       * linespec.c (decode_all_digits, decode_dollar): Set the sal's
+       program space.
+       * source.c (current_source_pspace): New.
+       (get_current_source_symtab_and_line): Set the sal's program space.
+       (set_current_source_symtab_and_line): Set current_source_pspace.
+       (select_source_symtab): Ditto.  Use ALL_OBJFILES.
+       (forget_cached_source_info): Iterate over all program spaces.
+       * symfile.c (clear_symtab_users): Adjust.
+       * symmisc.c (print_symbol_bcache_statistics): Iterate over all
+       program spaces.
+       (print_objfile_statistics): Ditto.
+       (maintenance_print_msymbols): Ditto.
+       (maintenance_print_objfiles): Ditto.
+       (maintenance_info_symtabs): Ditto.
+       (maintenance_info_psymtabs): Ditto.
+       * symtab.h (SYMTAB_PSPACE): New.
+       (struct symtab_and_line) <pspace>: New field.
+       * symtab.c (init_sal): Clear the sal's program space.
+       (find_pc_sect_symtab): Set the sal's program space.  Switch thread
+       and space.
+       (append_expanded_sal): Add program space argument.  Iterate over
+       all program spaces.
+       (expand_line_sal): Iterate over all program spaces.  Switch
+       program space.
+
+       * target.h (enum target_waitkind) <TARGET_WAITKIND_VFORK_DONE>: New.
+       (struct target_ops) <to_thread_address_space>: New field.
+       (target_thread_address_space): Define.
+       * target.c (target_detach): Only remove breakpoints from the
+       inferior we're detaching.
+       (target_thread_address_space): New.
+
+       * defs.h (initialize_progspace): Declare.
+       * top.c (gdb_init): Call it.
+
+       * solist.h (struct so_list) <sspace>: New field.
+       * solib.h (struct program_space): Forward declare.
+       (solib_name_from_address): Adjust prototype.
+       * solib.c (so_list_head): Replace with a macro referencing the
+       program space.
+       (update_solib_list): Set the so's program space.
+       (solib_name_from_address): Add a program space argument and adjust.
+
+       * solib-svr4.c (struct svr4_info) <pid>: Delete field.
+       <interp_text_sect_low, interp_text_sect_high, interp_plt_sect_low>
+       <interp_plt_sect_high>: New fields.
+       (svr4_info_p, svr4_info): Delete.
+       (solib_svr4_sspace_data): New.
+       (get_svr4_info): Rewrite.
+       (svr4_sspace_data_cleanup): New.
+       (open_symbol_file_object): Adjust.
+       (svr4_default_sos): Adjust.
+       (svr4_fetch_objfile_link_map): Adjust.
+       (interp_text_sect_low, interp_text_sect_high, interp_plt_sect_low)
+       (interp_plt_sect_high): Delete.
+       (svr4_in_dynsym_resolve_code): Adjust.
+       (enable_break): Adjust.
+       (svr4_clear_solib): Revert bit that removed the svr4_info here,
+       and reinstate clearing debug_base, debug_loader_offset_p,
+       debug_loader_offset and debug_loader_name.
+       (_initialize_svr4_solib): Register solib_svr4_pspace_data.  Don't
+       install an inferior_exit observer anymore.
+
+       * printcmd.c (struct display) <pspace>: New field.
+       (display_command): Set the display's sspace.
+       (do_one_display): Match the display's sspace.
+       (display_uses_solib_p): Ditto.
+
+       * linux-fork.c (detach_fork): Moved to infrun.c.
+       (_initialize_linux_fork): Moved "detach-on-fork" command to
+       infrun.c.
+       * infrun.c (detach_fork): Moved from linux-fork.c.
+       (proceed_after_vfork_done): New.
+       (handle_vfork_child_exec_or_exit): New.
+       (follow_exec_mode_replace, follow_exec_mode_keep)
+       (follow_exec_mode_names, follow_exec_mode_string)
+       (show_follow_exec_mode_string): New.
+       (follow_exec): New.  Reinstate the mark_breakpoints_out call.
+       Remove shared libraries before attaching new executable.  If user
+       wants to keep the inferior, keep it.
+       (displaced_step_fixup): Adjust to pass an address space to the
+       breakpoints module.
+       (resume): Ditto.
+       (clear_proceed_status): In all-stop mode, always clear the proceed
+       status of all threads.
+       (prepare_to_proceed): Adjust to pass an address space to the
+       breakpoints module.
+       (proceed): Ditto.
+       (adjust_pc_after_break): Ditto.
+       (handle_inferior_event): When handling a process exit, switch the
+       program space to the inferior's that had exited.  Call
+       handle_vfork_child_exec_or_exit.  Adjust to pass an address space
+       to the breakpoints module.  In non-stop mode, when following a
+       fork and detach-fork is off, also resume the other branch.  Handle
+       TARGET_WAITKIND_VFORK_DONE.  Set the program space in sals.
+       (normal_stop): Prune inferiors.
+       (_initialize_infrun): Install the new "follow-exec-mode" command.
+       "detach-on-fork" moved here.
+
+       * regcache.h (get_regcache_aspace): Declare.
+       * regcache.c (struct regcache) <aspace>: New field.
+       (regcache_xmalloc): Clear the aspace.
+       (get_regcache_aspace): New.
+       (regcache_cpy): Copy the aspace field.
+       (regcache_cpy_no_passthrough): Ditto.
+       (get_thread_regcache): Fetch the thread's address space from the
+       target, and store it in the regcache.
+
+       * infcall.c (call_function_by_hand): Set the sal's pspace.
+
+       * arch-utils.c (default_has_shared_address_space): New.
+       * arch-utils.h (default_has_shared_address_space): Declare.
+
+       * gdbarch.sh (has_shared_address_space): New.
+       * gdbarch.h, gdbarch.c: Regenerate.
+
+       * linux-tdep.c: Include auxv.h, target.h, elf/common.h.
+       (linux_has_shared_address_space): New.
+       (_initialize_linux_tdep): Declare.
+
+       * arm-tdep.c (arm_software_single_step): Pass the frame's address
+       space to insert_single_step_breakpoint.
+       * arm-linux-tdep.c (arm_linux_software_single_step): Pass the
+       frame's pspace to breakpoint functions.
+       * cris-tdep.c (crisv32_single_step_through_delay): Ditto.
+       (cris_software_single_step): Ditto.
+       * mips-tdep.c (deal_with_atomic_sequence): Add frame argument.
+       Pass the frame's pspace to breakpoint functions.
+       (mips_software_single_step): Adjust.
+       (mips_single_step_through_delay): Adjust.
+       * rs6000-aix-tdep.c (rs6000_software_single_step): Adjust.
+       * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Adjust.
+       * solib-irix.c (enable_break): Adjust to pass the current frame's
+       address space to breakpoint functions.
+       * sparc-tdep.c (sparc_software_single_step): Ditto.
+       * spu-tdep.c (spu_software_single_step): Ditto.
+       * alpha-tdep.c (alpha_software_single_step): Ditto.
+       * record.c (record_wait): Adjust to pass an address space to the
+       breakpoints module.
+
+       * fork-child.c (fork_inferior): Set the new inferior's program and
+       address spaces.
+       * inf-ptrace.c (inf_ptrace_follow_fork): Copy the parent's program
+       and address spaces.
+       (inf_ptrace_attach): Set the inferior's program and address spaces.
+       * linux-nat.c: Include "solib.h".
+       (linux_child_follow_fork): Manage parent and child's program and
+       address spaces.  Clone the parent's program space if necessary.
+       Don't wait for the vfork to be done here.  Refuse to resume if
+       following the vfork parent while leaving the child stopped.
+       (resume_callback): Don't resume a vfork parent.
+       (linux_nat_resume): Also check for pending events in the
+       lp->waitstatus field.
+       (linux_handle_extended_wait): Report TARGET_WAITKIND_VFORK_DONE
+       events to the core.
+       (stop_wait_callback): Don't wait for SIGSTOP on vfork parents.
+       (cancel_breakpoint): Adjust.
+       * linux-thread-db.c (thread_db_wait): Don't remove thread event
+       breakpoints here.
+       (thread_db_mourn_inferior): Don't mark breakpoints out here.
+       Remove thread event breakpoints after mourning.
+       * corelow.c: Include progspace.h.
+       (core_open): Set the inferior's program and address spaces.
+       * remote.c (remote_add_inferior): Set the new inferior's program
+       and address spaces.
+       (remote_start_remote): Update address spaces.
+       (extended_remote_create_inferior_1): Don't init the thread list if
+       we already debugging other inferiors.
+       * darwin-nat.c (darwin_attach): Set the new inferior's program and
+       address spaces.
+       * gnu-nat.c (gnu_attach): Ditto.
+       * go32-nat.c (go32_create_inferior): Ditto.
+       * inf-ttrace.c (inf_ttrace_follow_fork, inf_ttrace_attach): Ditto.
+       * monitor.c (monitor_open): Ditto.
+       * nto-procfs.c (procfs_attach, procfs_create_inferior): Ditto.
+       * procfs.c (do_attach): Ditto.
+       * windows-nat.c (do_initial_windows_stuff): Ditto.
+
+       * inflow.c (inferior_process_group)
+       (terminal_init_inferior_with_pgrp, terminal_inferior,
+       (terminal_ours_1, inflow_inferior_exit, copy_terminal_info)
+       (child_terminal_info, new_tty_postfork, set_sigint_trap): Adjust
+       to use per-inferior data instead of inferior->terminal_info.
+       (inflow_inferior_data): New.
+       (inflow_new_inferior): Delete.
+       (inflow_inferior_data_cleanup): New.
+       (get_inflow_inferior_data): New.
+
+       * mi/mi-interp.c (mi_new_inferior): Rename to...
+       (mi_inferior_appeared): ... this.
+       (mi_interpreter_init): Adjust.
+
+       * tui/tui-disasm.c: Include "progspace.h".
+       (tui_set_disassem_content): Pass an address space to
+       breakpoint_here_p.
+
+       * NEWS: Mention multi-program debugging support.  Mention new
+       commands "add-inferior", "clone-inferior", "remove-inferior",
+       "maint info program-spaces", and new option "set
+       follow-exec-mode".
+
+2009-10-19  Don Lee  <don.lee@sunplusct.com>
+
+       * score-tdep.c: Delete dead codes.
+
+2009-10-15  Michael Snyder  <msnyder@vmware.com>
+
+       * record.c (struct record_reg_entry): Replace ptr with union 
+       of ptr and buf.
+       (struct record_mem_entry): Ditto.
+       (record_reg_alloc): Don't alloc ptr if reg will fit into buf.
+       (record_mem_alloc): Ditto.
+       (record_reg_release): Don't free ptr if reg was stored in buf.
+       (record_mem_release): Ditto.
+       (record_get_loc): New function.  Return a pointer to where the
+       value (mem or reg) is to be stored.
+       (record_arch_list_add_reg): Call record_get_loc instead of using ptr.
+       (record_arch_list_add_mem): Ditto.
+       (record_wait): Ditto.
+
+2009-10-16  Michael Eager  <eager@eagercon.com>
+
+       * microblaze-linux-tdep.c:
+       microblaze_linux_memory_remove_breakpoint(): Add gdbarch to param,
+       replace frame_pc_unwind with get_frame_address_in_block.
+       * microblaze-tdep.c: Remove MICROBLAZE_REGISTER_SIZE.
+       * microblaze-tdep.h: Add MICROBLAZE_REGISTER_SIZE.
+
+2008-10-15  Steven G. Kargl  <kargl@gcc.gnu.org>  (tiny patch)
+
+       * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Conditionally compile in
+       support for pcb->pcb_{fs,ds,es,gs} on FreeBSD older than 8.0.
+
+2009-10-15  Michael Eager  <eager@eagercon.com>
+
+       * config/djgpp/fnchange.lst: Add translations for cpu-microblaze.c,
+       elf32-microblaze.c, microblaze-rom.c, microblaze-linux-tdep.c,
+       microblaze-tdep.h, microblaze-tdep.c, microblaze-opc.h,
+       microblaze-opcm.h, microblaze-dis.c, microblaze-dis.h, sim/microblaze,
+       microblaze.h, and microblaze.isa.
+       * configure.tgt: Add targets microblaze*-linux-*, microblaze*-xilinx-*.
+       * Makefile.in: Build microblaze-tdep.o, microblaze-linux-tdep.o.
+       HFILES_NO_SRCDIR: Add microblaze-tdep.h.
+       * microblaze-linux-tdep.c: New.
+       * microblaze-tdep.c: New.
+       * microblaze-tdep.h: New.
+       * NEWS: Announce Xilinx MicroBlaze support.
+
+2009-10-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
+
+       PR gdb/10757
+       * linux-nat.c (linux_nat_post_attach_wait): Adjust assert.
+       (lin_lwp_attach_lwp, linux_nat_attach): Handle disappearing LWP.
+       
+2009-10-15  Michael Snyder  <msnyder@vmware.com>
+
+       * record.c (record_insn_max_num): Make unsigned.
+       (_initialize_record): Use uinteger instead of zinteger for
+       set command, so that it will report "unlimited" for zero.
+
+2009-10-15  Michael Snyder  <msnyder@vmware.com>
+
+       * record.c (record_reg_alloc): New function.
+       (record_reg_release): New function.
+       (record_mem_alloc): New function.
+       (record_mem_release): New function.
+       (record_end_alloc): New function.
+       (record_end_release): New function.
+       (record_entry_release): New function.
+       (record_list_release): Simplify, call record_entry_release.
+       (record_list_release_next): Rename to record_list_release_following.
+       Simplify and call record_entry_release.
+       (record_list_release_first): Simplify, comment, and use
+       record_entry_release.
+       (record_arch_list_add_reg): Simplify, call record_reg_alloc.
+       (record_arch_list_add_mem): Simplify, call record_mem_alloc.
+       (record_arch_list_add_end): Simplify, call record_end_alloc.
+
+2009-10-14  Michael Snyder  <msnyder@vmware.com>
+
+       * record.c (record_list_release_first): Do not decrement
+       record_insn_num.
+       (set_insn_num_max): Remove printf.
+       Decrement record_insn_num in the loop.
+
+2009-10-14  Cary Coutant  <ccoutant@google.com>
+
+       * dwarf2read.c (read_import_statement): Call follow_die_ref_or_sig.
+
+2009-10-14  Keith Seitz  <keiths@redhat.com>
+
+       * dwarf2read.c (dwarf2_const_value): Fix order of arguments to
+       store_unsigned_integer.
+
+2009-10-14  Pedro Alves  <pedro@codesourcery.com>
+
+       * configure.ac (build_warnings): Add -Wunused-value.
+       * configure: Regenerate.
+
+2009-10-14  Tristan Gingold  <gingold@adacore.com>
+
+       * solib-darwin.c: Remove trailing whitespaces.
+       (darwin_dyld_version_ok): Fix typo.
+
+2009-10-14  Andrew Stubbs  <ams@codesourcery.com>
+
+       * sh-tdep.c (sh_gdbarch_init): Add show_regs settings for
+       bfd_mach_sh3_nommu, bfd_mach_sh2a_nofpu_or_sh3_nommu,
+       bfd_mach_sh2a_or_sh3e, bfd_mach_sh2a_or_sh4, bfd_mach_sh4_nommu_nofpu,
+       and bfd_mach_sh2a_nofpu_or_sh4_nommu_nofpu.
+       Move bfd_mach_sh2a_or_sh4 to use the same configuration as
+       bfd_mach_sh4.
+
+2009-10-13  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * arm-tdep.c (arm_push_dummy_call): Set the low bit of LR for
+       a Thumb entry point.
+       (thumb_get_next_pc): Handle Thumb-2 and ARM v6 instructions.  Refuse
+       to single step into IT blocks.
+
+2009-10-13  Pedro Alves  <pedro@codesourcery.com>
+
+       * infcall.c (call_function_by_hand): Formatting.
+
+2009-10-13  Tristan Gingold  <gingold@adacore.com>
+
+       * solib-darwin.c: Add an empty line after comment for functions.
+       (struct gdb_dyld_all_image_infos): Improve comment.
+       (DYLD_VERSION): Removed and replaced by ...
+       (DYLD_VERSION_MAX, DYLD_VERSION_MIN): ... New macros.
+       (darwin_dyld_version_ok): New function.
+       (darwin_load_image_infos): Call darwin_dyld_version_ok.
+       (darwin_current_sos): Ditto.
+       (darwin_solib_create_inferior_hook): Ditto.
+
+2009-10-13  Tristan Gingold  <gingold@adacore.com>
+
+       * machoread.c: Add an empty line after comment for functions.
+       (oso_el_compare_name): New function.
+       (macho_add_oso_symfile): New function.
+       (macho_oso_symfile): Use macho_add_oso_symfile.  Sort the oso
+       and optimize accesses to libraries.
+
+2009-10-13  Tristan Gingold  <gingold@adacore.com>
+
+       * objfiles.c (objfile_has_symbols): New function.
+       * objfiles.h (objfile_has_symbols): Add prototype.
+       * symfile.c (symbol_file_add_with_addrs_or_offsets): Call
+       objfile_has_symbols.
+       (reread_symbols): Ditto.
+
+2009-10-12  Jiang Jilin  <freephp@gmail.com>
+
+       * i386-tdep.c (i386_process_record): Add xgetbv/xsetbv
+       instructions support.
+
+2009-10-11  Pedro Alves  <pedro@codesourcery.com>
+
+       * procfs.c (procfs_make_note_section): Go back to only outputing
+       an NT_PSTATUS note when UNIXWARE is defined.
+
+2009-10-11  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * features/xinclude.dtd: Correct EMPTY typo.
+
+2009-10-10  Michael Snyder  <msnyder@vmware.com>
+
+       * i386-tdep.c (i386_process_record): Or-equals, not not-equals.
+
+2009-10-10  Pedro Alves  <pedro@codesourcery.com>
+
+       * mi/mi-cmd-stack.c (list_args_or_locals): Use internal_error.
+       Put "break" statements on their own line.
+
+2009-10-09  Pedro Alves  <pedro@codesourcery.com>
+
+       * linux-nat.c (linux_nat_wait_1): Bail out, if TARGET_WNOHANG and
+       we found no event while waiting for a specific LWP.
+       * infrun.c (handle_inferior_event): Handle TARGET_WAITKIND_IGNORE
+       before anything else.
+
+2009-10-09  Pedro Alves  <pedro@codesourcery.com>
+
+       * procfs.c (procfs_make_note_section): Always output a NT_PSTATUS
+       note when NEW_PROC_API is defined.
+
+2009-10-09  Pedro Alves  <pedro@codesourcery.com>
+
+       * corelow.c (core_has_fake_pid): New.
+       (core_close): Clear it.
+       (add_to_thread_list): Fake a pid if one is not found on a Solaris
+       core.  Add the inferior here.  Always add the thread, don't use
+       thread_change_ptid.
+       (core_open): Don't add the main thread or the inferior here unless
+       we find that the core had no .reg/NN sections.
+       (get_core_register_section): Handle Solaris cores with fake pids.
+
+       * corelow.c (add_to_thread_list): Fix typo.
+
+2009-10-08  Paul Pluzhnikov  <ppluzhnikov@google.com>
+
+       PR gdb/10457
+       * elfread.c (elf_symtab_read): Don't use alloca in a loop.
+       
+2009-10-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * i386-nat.c (i386_stopped_by_hwbp): Remove.
+
+2009-10-07  Joel Brobecker  <brobecker@adacore.com>
+
+       * NEWS: Update following the GDB 7.0 release.
+
+2009-10-07  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       ARI fix: OP eol rule.
+       * doublest.c (floatformat_from_length): Avoid operator at end of line.
+       * dwarf2-frame.c (dwarf2_build_frame_info): Idem.
+       * dwarf2read.c (read_array_order, dwarf_decode_macros): Idem.
+       * eval.c (evaluate_subexp_standard): Idem.
+       * event-loop.c (create_timer, handle_timer_event): Idem.
+       * expprint.c (print_subexp_standard): Idem.
+       * f-exp.y (variable): Idem.
+       * f-typeprint.c (f_print_type): Idem.
+
+2009-10-06  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       ARI fix: OP eol rule.
+       * blockframe.c (find_pc_partial_function): Avoid operator at end of
+       line.
+       * buildsym.c (find_symbol_in_list): Idem.
+       (start_subfile, patch_subfile_names): Idem.
+       * c-exp.y (variable, yylex): Idem.
+       * c-typeprint.c (c_print_type, c_type_print_base): Idem.
+       * c-valprint.c (c_val_print): Idem.
+       * coffread.c (patch_opaque_types, process_coff_symbol): Idem.
+       * corelow.c (core_open): Idem.
+       * cris-tdep.c (move_reg_to_mem_movem_op): Idem.
+       * cli/cli-decode.c (help_cmd_list, find_command_name_length): Idem.
+
+2009-10-06  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       ARI fix: OP eol rule.
+       * ada-exp.y (block_lookup): Avoid operator at end of line.
+       * aix-thread.c (pd_enable): Idem.
+       * alpha-tdep.c (alpha_next_pc): Idem.
+       * arm-tdep.c (arm_skip_prologue, arm_scan_prologue): Idem.
+       (condition_true, coff_sym_is_thumb): Idem.
+
+2009-10-06  Joel Brobecker  <brobecker@adacore.com>
+
+       GDB 7.0 released.
+
+2009-10-06  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       ARI fix: "%p" rule.
+       * target.c (debug_to_thread_architecture): Replace %p by %s using
+       host_address_to_string function.
+
+2009-10-06  Tristan Gingold  <gingold@adacore.com>
+
+       * darwin-nat.c: Add __TEXT __info_plist content.
+       (darwin_attach_pid): Update error message.
+
+2009-10-06  Joel Brobecker  <brobecker@adacore.com>
+
+       * MAINTAINERS: Add Tristan Gingold as Maintainer of the Darwin port.
+
+2009-10-06  Joel Brobecker  <brobecker@adacore.com>
+
+       * MAINTAINERS: Add Jan Kratochvil as Maintainer of the ia64 target.
+
+2009-10-05  Pedro Alves  <pedro@codesourcery.com>
+
+       Revert:
+       2009-10-04  Pedro Alves  <pedro@codesourcery.com>
+       * gdbinit.in: Set data-directory to @srcdir@.
+
+2009-10-04  Pedro Alves  <pedro@codesourcery.com>
+
+       * NEWS: Mention non-stop mode.
+
+2009-10-04  Pedro Alves  <pedro@codesourcery.com>
+
+       * gdbinit.in: Set data-directory to @srcdir@.
+
+2009-10-02  Pedro Alves  <pedro@codesourcery.com>
+
+       * linux-nat.c (TRAP_IS_SYSCALL, TRAP_REMOVE_SYSCALL_FLAG): Delete.
+       (SYSCALL_SIGTRAP): New.
+       (status_to_str): Adjust.
+       (get_pending_status): Pending events in lp->waitstatus don't map
+       to any signal.  Simplify.
+       (linux_handle_syscall_trap): New.
+       (linux_handle_extended_wait): When handling PTRACE_EVENT_CLONE
+       events, use linux_ops->to_resume instead of direct ptrace with
+       PTRACE_CONT.  Remove all TRAP_IS_SYSCALL handling.
+       (wait_lwp): Handle syscall traps with linux_handle_syscall_trap,
+       and clear the sysgood bit.
+       (status_callback): Make it clearer and add comments.
+       (cancel_breakpoints_callback): Ignore if LP has waitstatus set.
+       (linux_nat_filter_event): Handle syscall traps with
+       linux_handle_syscall_trap, and clear the sysgood bit.  Move the
+       check for storing siginfo to after handling extended statuses and
+       syscall traps.  Store status in the lwp object.
+       (linux_wait_1): Don't swap the pending status out of the lwp
+       object until after deciding we found an lwp with an interesting
+       event.  Requeue a new pending signal if we find one while getting
+       rid or a pending SIGSTOP we sent ourselves.  Don't clear the
+       sysgood bit here.
+
+       * infrun.c (deal_with_syscall_event): Rename to ...
+       (handle_syscall_event): ... this.  Always context switch and set
+       stop_pc, even if not catching the syscall.  If not catching the
+       syscall, always resume with keep_going.
+       (handle_inferior_event): Adjust.
+
+2009-10-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       Fix compatibility of --with-system-readline and readline-6.0+.
+       * configure.ac <--with-system-readline> (for readline_echoing_p): New
+       test.
+       * config.in: Regenerate.
+       * configure: Regenerate.
+
+2009-10-01  Joel Brobecker  <brobecker@adacore.com>
+
+       * MAINTAINERS: Move Don Lee to the correct section (Write After
+       Approval).
+
+2009-10-01  Phil Muldoon  <pmuldoon@redhat.com>
+
+       * infcall.c (call_function_by_hand): Add a new cleanup branch for
+       std::terminate breakpoints.
+
+2009-09-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * ia64-tdep.c (ia64_convert_from_func_ptr_addr): New variable buf.
+       Check first the descriptor memory is readable.
+
+2009-09-29  Tom Tromey  <tromey@redhat.com>
+
+       * python/py-value.c (valpy_string): NULL-terminate 'keywords'.
+
+2009-09-29  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * s390-tdep.c (s390_displaced_step_fixup): Use type ULONGEST
+       instead of CORE_ADDR for "amode".
+
+2009-09-29  Joel Brobecker  <brobecker@adacore.com>
+
+       * ia64-tdep.c: Update the comments on how we insert/remove
+       breakpoints for L-X instructions.
+       (ia64_memory_insert_breakpoint, ia64_memory_remove_breakpoint):
+       Update the comments inside these functions.
+
+2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * gdbarch.sh (displaced_step_hw_singlestep): New callback.
+       * gdbarch.c, gdbarch.h: Regenerate.
+       * arch-utils.c (default_displaced_step_hw_singlestep): New function.
+       * arch-utils.h (default_displaced_step_hw_singlestep): Add prototype.
+
+       * ppc-linux-tdep.c (ppc_displaced_step_hw_singlestep): New function.
+       (rs6000_gdbarch_init): Install it.
+
+       * infrun.c (displaced_step_fixup): Use new callback to determine
+       whether to "step" or "continue" displaced copy.
+       (resume): Likewise.  Do not call maybe_software_singlestep
+       for displaced stepping.
+       (maybe_software_singlestep): Do not handle displaced stepping.
+
+2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * eval.c (evaluate_subexp_standard) [OP_OBJC_MSGCALL]: Support
+       platforms that use function descriptors.  Prefer to use function
+       pointer types instead of function types.
+       * linespec.c (decode_objc): Support function descriptors.  Fully
+       initialize SAL result.
+       * objc-lang.c (find_methods): Support function descriptors.
+       Do not require function symbol to point to text section.
+
+       * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): When calling
+       via a function pointer, use the descriptor it points to.
+
+2009-09-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       Fix ia64 breakpoints in the L-X slot.
+       * ia64-tdep.c (ia64_memory_insert_breakpoint): Extend the comment.
+       New variable shadow_slotnum, use it appropriately instead of slotnum.
+       Move shadow_len initialization before SLOTNUM adjustment, cover now the
+       whole remaining bundle.  Error now on breakpoints requested for the
+       slot 2 of L-X bundles.  Better sanity check the requested slot 1 of L-X
+       bundles.
+       (ia64_memory_remove_breakpoint): New variable shadow_slotnum, use it
+       appropriately instead of slotnum.  Warn now on breakpoints requested
+       for the slot 2 of L-X bundles.  Better sanity check the requested slot
+       1 of L-X bundles.  Update the assertio check of PLACED_SIZE.
+       (ia64_breakpoint_from_pc): New variable shadow_slotnum, use it
+       appropriately instead of slotnum.  Move *lenptr initialization before
+       SLOTNUM adjustment, cover now the whole remaining bundle.  Error now
+       on breakpoints requested for the slot 2 of L-X bundles.  Better sanity
+       check the requested slot 1 of L-X bundles.  Simplify the returned
+       expression.
+
+2009-09-28  Joel Brobecker  <brobecker@adacore.com>
+
+       * ia64-tdep.c (ia64_memory_insert_breakpoint): Check the slotnum
+       and the type of instruction before deciding which slot to save
+       in the breakpoint shadown contents.
+
+2009-09-28  Doug Evans  <dje@google.com>
+
+       * linux-nat.c (status_to_str): Handle TRAP_IS_SYSCALL.
+       (TRAP_REMOVE_SYSCALL_FLAG): New macro.
+       (linux_nat_wait_1): Mask off is-syscall bit in wait status for
+       TRAP_IS_SYSCALL before passing value to caller.
+
+2009-09-28  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * valops.c (value_assign): Respect parent offset when
+       assigning to a bitfield.
+
+2009-09-28  Hui Zhu  <teawater@gmail.com>
+
+       * i386-tdep.c (i386_process_record): Remove "0x" that
+       don't need.
+
+2009-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * s390-tdep.c (op_bctr, op_bctgr, op_bct, op1_bctg, op2_bctg,
+       op_bxh, op1_bxhg, op2_bxhg, op_bxle, op1_bxleg, op2_bxleg,
+       op1_brct, op2_brct, op1_brctg, op2_brctg, op_brxh, op1_brxhg,
+       op2_brxhg, op_brxle, op1_brxlg, op2_brxlg): New enum values.
+       (is_rsi, is_rie): New insn format decoder routines.
+       (s390_displaced_step_fixup): New function.
+       (s390_gdbarch_init): Install displaced stepping routines.
+
+2009-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*):
+       Add linux-tdep.o to gdb_target_obs.
+       (s390*-*-*): Likewise.
+
+2009-09-27  Don Lee  <don.lee@sunplusct.com>
+
+       * score-tdep.c: Comment out some simulator dependent codes.
+       * score-tdep.h: Delete some simulator dependent macro definitions.
+
+2009-09-27  Hui Zhu  <teawater@gmail.com>
+
+       * record.c (record_open): Change "query" to "error".
+       (cmd_record_stop): Change "query" to "printf_unfiltered".
+
 2009-09-26  Pierre Muller  <muller@ics.u-strasbg.fr>
 
        * i386-nat.c (i386_stopped_data_address): Also check that
This page took 0.035521 seconds and 4 git commands to generate.