+2011-09-02 Matt Rice <ratmice@gmail.com>
+
+ PR gdb/10720
+ * event-top.c (cli_command_loop): Replace readline setup with
+ direct call to display_gdb_prompt.
+ (display_gdb_prompt): Do not call observer mechanism during
+ synchronous execution.
+
+2011-09-02 Pedro Alves <pedro@codesourcery.com>
+
+ * linux-nat.c (in_pid_list_p): New.
+ (linux_record_stopped_pid): Delete.
+ (lin_lwp_attach_lwp): Check if PTRACE_ATTACH failed because we're
+ already attached to the LWP. Return an indication if so.
+ (linux_nat_filter_event): Adjust.
+ * linux-thread-db.c (attach_thread): Handle lin_lwp_attach_lwp
+ returning an indication to ignore this thread.
+
+2011-09-02 Pedro Alves <pedro@codesourcery.com>
+
+ * top.c: Include interps.h.
+ (execute_command): If the target can async, but the interpreter is
+ in sync mode, synchronously wait for the command to finish before
+ returning.
+ (execute_command_to_string): Force the interpreter to sync mode.
+ * infrun.c: Include interps.h.
+ (fetch_inferior_event): Don't restore the prompt yet if the
+ interpreter is in sync mode.
+ * interps.c (interpreter_async): New global.
+ * interps.h (interpreter_async): Declare.
+ * inf-loop.c: Include interps.h.
+ (inferior_event_handler): Don't print the language change or run
+ breakpoint commands yet if the interpreter in is sync mode.
+ * main.c (captured_command_loop): Flip the interpreter to async
+ mode.
+ * cli/cli-script.c: Include interps.h.
+ (execute_user_command, while_command, if_command): Force the
+ interpreter to sync mode.
+ * python/python.c: Include interps.h.
+ (python_command, execute_gdb_command): Force the interpreter to
+ sync mode.
+
+2011-09-02 Pedro Alves <pedro@codesourcery.com>
+
+ * value.c (show_convenience): Catch errors thrown while printing
+ each internal variable.
+ * infrun.c (validate_siginfo_access): New function.
+ (siginfo_value_read, siginfo_value_write): Call it.
+
+2011-09-01 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Revert:
+ 2010-05-21 Pierre Muller <muller@ics.u-strasbg.fr>
+ * dwarf2read.c (new_symbol): Handle DW_AT_variable_parameter
+ attribute.
+
+2011-08-29 Yao Qi <yao@codesourcery.com>
+
+ * solib-dsbt.c (bfd_lookup_symbol): Removed.
+ (cmp_name): New.
+ (enable_break2): Update caller.
+ * solib-frv.c (bfd_lookup_symbol): Removed.
+ (cmp_name): New.
+ (enable_break2): Update caller.
+ * solib-pa64.c (bfd_lookup_symbol): Removed.
+ (cmp_name): New.
+ * solib-svr4.c (bfd_lookup_symbol): Removed.
+ (cmp_name_and_sec_flags): New.
+ (enable_break): Update caller.
+ * solib.c (gdb_bfd_lookup_symbol_from_symtab): New.
+ (gdb_bfd_lookup_symbol_from_dyn_symtab): New.
+ (gdb_bfd_lookup_symbol): New.
+ * solib.h: Functions declarations.
+
+2011-08-29 Yao Qi <yao@codesourcery.com>
+
+ * Makefile.in (ALL_TARGET_OBS): Add tic6x-tdep.o tic6x-linux-tdep.o
+ and solib-dsbt.o.
+
+2011-08-29 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Fix TUI stepi on code without symbols.
+ * tui/tui-stack.c (tui_show_frame_info): Remove error, set LOW for
+ current PC instead.
+
+2011-08-28 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Code cleanup.
+ * mi/mi-cmd-stack.c (list_args_or_locals): Remove stb initialization
+ and the static keyword.
+ * mi/mi-cmd-target.c (mi_cmd_target_file_get, mi_cmd_target_file_put):
+ Make prefix an array.
+ * mi/mi-cmd-target.c (mi_cmd_target_file_delete): Likewise.
+ * mi/mi-main.c (get_register): Remove stb initialization and the static
+ keyword.
+
+2011-08-28 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Code cleanup - make mi_opt const.
+ * mi/mi-cmd-break.c (mi_cmd_break_insert, mi_cmd_break_watch): Make
+ opts const.
+ * mi/mi-cmd-disas.c (mi_cmd_disassemble): Likewise.
+ * mi/mi-cmd-env.c (mi_cmd_env_path): Likewise.
+ (mi_cmd_env_dir): Likewise.
+ * mi/mi-cmd-target.c (mi_cmd_target_file_get): Likewise.
+ (mi_cmd_target_file_put): Likewise.
+ * mi/mi-cmd-target.c (mi_cmd_target_file_delete): Likewise.
+ * mi/mi-cmd-var.c (mi_cmd_var_evaluate_expression): Likewise.
+ * mi/mi-getopt.c (mi_getopt): Make opts and opt const.
+ (mi_valid_noargs): Make opts const.
+ * mi/mi-getopt.h (mi_getopt): Make opts and opt const.
+ * mi/mi-main.c (mi_cmd_list_thread_groups): Make opts const.
+ (mi_cmd_data_read_memory): Likewise.
+ (mi_cmd_data_read_memory_bytes): Likewise.
+ (mi_cmd_data_write_memory): Likewise.
+
+2011-08-26 Matt Rice <ratmice@gmail.com>
+
+ * solib-sunos.c (allocate_rt_common_objfile): Add missing arguments to
+ bcache_xmalloc, replace bcache_xmalloc with call to
+ psymbol_bcache_init for psymbol_cache.
+ * symfile.c (reread_symbols): Remove extra calls to bcache_xmalloc.
+
+2011-08-26 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * inf-loop.c (inferior_event_handler): Add exception_print in
+ INF_EXEC_COMPLETE.
+
+2011-08-26 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * breakpoint.c (bpstat_do_actions): New variable cleanup_if_error, call
+ make_bpstat_clear_actions_cleanup and discard_cleanups for it.
+ * defs.h (make_bpstat_clear_actions_cleanup): New declaration.
+ * exceptions.c (throw_exception): Remove the bpstat_clear_actions call.
+ * inf-loop.c (inferior_event_handler): New variable cleanup_if_error,
+ call make_bpstat_clear_actions_cleanup and discard_cleanups for it.
+ Call bpstat_clear_actions for failed fetch_inferior_event_wrapper.
+ * infrun.c (fetch_inferior_event): Call
+ make_bpstat_clear_actions_cleanup.
+ * top.c (execute_command): New variable cleanup_if_error, call
+ make_bpstat_clear_actions_cleanup and discard_cleanups for it.
+ * utils.c (do_bpstat_clear_actions_cleanup)
+ (make_bpstat_clear_actions_cleanup): New functions.
+
+2011-08-26 Pedro Alves <pedro@codesourcery.com>
+
+ * linux-nat.c (linux_child_follow_fork): Don't set lp->resumed on
+ either the parent or the child forks. Rename a couple locals.
+
+2011-08-26 Pedro Alves <pedro@codesourcery.com>
+
+ * linux-nat.c (wait_lwp): Avoid assuming errno is preserved by a
+ library call. Avoid reading the `status' local if all waitpid
+ calls failed.
+
+2011-08-26 Pedro Alves <pedro@codesourcery.com>
+
+ * common/linux-osdata.c (get_cores_used_by_process): Don't assume
+ opening /proc/PID/task always succeeds.
+
+2011-08-26 Aleksandar Ristovski <aristovski@qnx.com>
+
+ * linespec.c (symtab_from_filename): Check for the end of string.
+
+2011-08-26 Marc Khouzam <marc.khouzam@ericsson.com>
+
+ PR mi/11912
+ * varobj.c (cplus_describe_child): Add the keyword
+ 'class' to the output of the method when dealing
+ with a cast to a base class.
+
+2011-08-26 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ No functionality change.
+ * breakpoint.c (bpstat_clear_actions): Remove the BS parameter, make
+ function comment a reference, new variables tp and bs, move here code
+ from throw_exception.
+ * breakpoint.h (bpstat_clear_actions): Remove the BS parameter,
+ describe it in the comment.
+ * exceptions.c (throw_exception): Remove variable tp, move the code for
+ bpstat_clear_actions to bpstat_clear_actions.
+
+2011-08-24 Luis Machado <lgustavo@codesourcery.com>
+
+ * linux-nat.h (linux_proc_get_tgid): Remove declaration.
+ * linux-nat.c: Include linux-procfs.h.
+ (linux_proc_get_tgid): Move to ...
+ * common/linux-procfs.c: ... here. New file.
+ * common/linux-procfs.h: New file.
+ * linux-thread-db.c: Include linux-procfs.h.
+ * Makefile.in: Update dependencies.
+ * config/alpha/alpha-linux.mh: Add linux-procfs.o dependency.
+ * config/arm/linux.mh: Likewise.
+ * config/i386/linux.mh: Likewise.
+ * config/i386/linux64.mh: Likewise.
+ * config/ia64/linux.mh: Likewise.
+ * config/m32r/linux.mh: Likewise.
+ * config/m68k/linux.mh: Likewise.
+ * config/mips/linux.mh: Likewise.
+ * config/pa/linux.mh: Likewise.
+ * config/pa/linux.mh: Likewise.
+ * config/powerpc/linux.mh: Likewise.
+ * config/powerpc/ppc64-linux.mh: Likewise.
+ * config/powerpc/spu-linux.mh: Likewise.
+ * config/sparc/linux.mh: Likewise.
+ * config/sparc/linux64.mh: Likewise.
+ * config/xtensa/linux.mh: Likewise.
+
+2011-08-24 Hui Zhu <teawater@gmail.com>
+
+ * tracepoint.c (cond_string_is_same): New function.
+ (find_matching_tracepoint): Add condition check
+ by cond_string_is_same.
+
+2011-08-23 Josh Matthews <josh@joshmatthews.net>
+
+ Fix build error in Darwin port.
+ * darwin-nat-info.c (darwin_debug_regions_recurse): New variable uiout.
+
+2011-08-21 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Code cleanup.
+ * breakpoint.c (bpstat_clear_actions): Remove clearing of commands_left.
+ (command_line_is_silent): New function.
+ (bpstat_do_actions_1): No longer use commands_left, use
+ command_line_is_silent for commands.
+ (bpstat_alloc): Remove clearing of commands_left.
+ (bpstat_stop_status): Remove initialization of commands_left, use
+ command_line_is_silent.
+ * breakpoint.h (struct bpstats): Remove commands_left.
+
+2011-08-18 Keith Seitz <keiths@redhat.com>
+
+ PR c++/12266
+ * cp-name-parser.y (struct demangle_info): Remove unused
+ member PREV.
+ (d_grab): Likewise.
+ (allocate_info): Change return type to struct demangle_info *.
+ Always allocate a new demangle_info.
+ Remove unused PREV pointer.
+ (cp_new_demangle_parse_info): New function.
+ (cp_demangled_name_parse_free): New function.
+ (do_demangled_name_parse_free_cleanup): New function.
+ (make_cleanup_cp_demangled_name_parse_free): New function.
+ (cp_demangled_name_to_comp): Change return type to
+ struct demangle_parse_info *.
+ Allocate a new storage for each call.
+ (main): Update usage for cp_demangled_name_to_comp
+ API change.
+ * cp-support.h (struct demangle_parse_info): New structure.
+ (cp_demangled_name_to_comp): Update API change for
+ return type.
+ (cp_new_demangle_parse_info): Declare.
+ (make_cleanup_cp_demangled_name_parse_free): New declaration.
+ (cp_demangled_name_parse_free): Declare.
+ * cp-support.c (cp_canonicalize_string): Update API
+ change for cp_demangled_name_to_comp.
+ (mangled_name_to_comp): Likewise.
+ Return struct demangle_parse_info, too.
+ (cp_class_name_from_physname): Update mangled_name_to_comp
+ API change.
+ (method_name_from_physname): Likewise.
+ (cp_func_name): Update API change for cp_demangled_name_to_comp.
+ (cp_remove_params): Likewise.
+ * python/py-type.c (typy_legacy_template_argument): Likewise.
+
+ * cp-support.h (cp_canonicalize_string_no_typedefs): Declare.
+ (cp_merge_demangle_parse_infos): Declare.
+ * cp-support.c (ignore_typedefs): New file global.
+ (copy_string_to_obstack): New function.
+ (inspect_type): New function.
+ (replace_typedefs): New function.
+ (replace_typedefs_qualified_name): New function.
+ (cp_canonicalize_string_no_typedefs): New function.
+ * cp-name-parser.y (cp_merge_demangle_parse_infos): New function.
+ (cp_new_demangle__parse_info): Allocate and initialize the obstack.
+ * linespec.c (find_methods): Use cp_canonicalize_string_no_typedefs
+ instead of cp_canonicalize_string.
+ (find_method): Likewise.
+ (decode_compound): Before looking up the name, call
+ cp_canonicalize_string_no_typedefs.
+ (decode_variable): Likewise.
+
+2011-08-17 Phil Muldoon <pmuldoon@redhat.com>
+ Tom Tromey <tromey@redhat.com>
+ Matt Rice <ratmice@gmail.com>
+
+ * python/lib/gdb/prompt.py: New file.
+ * python/lib/gdb/command/prompt.py: New file.
+ * NEWS: Document set extended-prompt and gdb.prompt library
+
+2011-08-16 Yao Qi <yao@codesourcery.com>
+
+ * tic6x-linux-tdep.c: Move const arrays definition from here...
+ * tic6x-tdep.c: to here ...
+
+2011-08-14 Yao Qi <yao@codesourcery.com>
+
+ * NEWS: New port to Texas Instruments TMS320C6x.
+
+2011-08-14 Andrew Jenner <andrew@codesourcery.com>
+ Bernd Schmidt <bernds@codesourcery.com>
+ Yao Qi <yao@codesourcery.com>
+
+ * configure.tgt: Handle tic6x-*-*linux and tic6x-*-*.
+ * solib-dsbt.c: New file. Support DSBT shared object.
+ * tic6x-linux-tdep.c: New file.
+ * tic6x-tdep.c: New file.
+ * tic6x-tdep.h: New file.
+
+2011-08-14 Andrew Stubbs <ams@codesourcery.com>
+ Yao Qi <yao@codesourcery.com>
+
+ * remote.c (PACKET_qXfer_fdpic): New enum value.
+ (remote_protocol_features): Add qXfer:fdpic:read packet.
+ (remote_xfer_partial): Support TARGET_OBJECT_FDPIC.
+ (_initialize_remote): Add set/show remote read-fdpic-loadmap command.
+ * target.h (enum target_object): Add TARGET_OBJECT_FDPIC.
+
+2011-08-14 Yao Qi <yao@codesourcery.com>
+
+ Target description for tic6x.
+ * features/Makefile (WHICH): Add tic6x-c64xp tic6x-c64x tic6x-c62x
+ tic6x-c64xp-linux tic6x-c64x-linux and tic6x-c62x-linux.
+ * features/tic6x-c6xp.xml, features/tic6x-core.xml: New.
+ * features/tic6x-gp.xml, features/tic6x-c62x.xml: New.
+ * features/tic6x-c64x.xml, features/tic6x-c64xp.xml: New.
+ * features/tic6x-c62x-linux.xml, features/tic6x-c64x-linux.xml: New.
+ * features/tic6x-c64xp-linux.xml: New.
+ * features/tic6x-c64xp.c, features/tic6x-c64x.c: Generated.
+ * features/tic6x-c62x.c, features/tic6x-c64xp-linux.c: Generated.
+ * features/tic6x-c64x-linux.c, features/tic6x-c62x-linux.c: Generated.
+ * regformats/tic6x-c62x.dat, regformats/tic6x-c64x.dat: Generated.
+ * regformats/tic6x-c64xp.dat,
+ regformats/tic6x-c62x-linux.dat: Generated.
+ * regformats/tic6x-c64x-linux.dat,
+ regformats/tic6x-c64xp-linux.dat: Generated.
+ * config/djgpp/fnchange.lst: Add features/tic6x-*.xml and
+ features/tic6x-*.c files.
+ Add regformats/tic6x-*.dat files.
+
+2011-08-12 Doug Evans <dje@google.com>
+
+ * NEWS: Mention new "type" attribute of python gdb.Symbol objects.
+ * python/py-symbol.c (sympy_get_type): New function.
+ (symbol_object_getset): Add "type".
+
+2011-08-12 Pedro Alves <pedro@codesourcery.com>
+
+ PR tui/13073
+
+ * tui/tui-regs.c (tui_show_register_group): Skip registers with an
+ empty name.
+ (tui_show_register_group): Don't store a byte buffer in the data
+ element's value.
+ (tui_register_format): Skip registers with an empty name.
+ (tui_get_register): Store a struct value in the data element's
+ value field instead of a byte buffer holding the raw register
+ contents. Account for optimized-out and unavailable registers
+ when comparing register contents.
+
+2011-08-09 Pedro Alves <pedro@codesourcery.com>
+
+ * printcmd.c (current_display_number): Update comment.
+ (disable_current_display_cleanup): Delete.
+ (do_one_display): Use make_cleanup_restore_integer. Gracefully
+ catch errors thrown while evaluating and printing the display.
+
+2011-08-09 Tom Tromey <tromey@redhat.com>
+
+ * mi/mi-cmd-break.c (mi_cmd_break_passcount): Fix typo.
+
+2011-08-09 Pedro Alves <pedro@codesourcery.com>
+
+ * elfread.c (elf_symtab_read): Rework comments.
+ * maint.c (maintenance_command): Ditto.
+ * somread.c (som_symtab_read): Ditto.
+ * solib.c (solib_find, solib_map_sections, update_solib_list)
+ (solib_add, info_sharedlibrary_command, solib_name_from_address)
+ (solib_create_inferior_hook, in_solib_dynsym_resolve_code)
+ (sharedlibrary_command, no_shared_libraries): Ditto.
+ * solib-irix.c (locate_base, disable_break, enable_break)
+ (irix_solib_create_inferior_hook, irix_solib_create_inferior_hook)
+ (irix_current_sos, irix_open_symbol_file_object)
+ (irix_special_symbol_handling): Ditto.
+ * solib-sunos.c (locate_base, first_link_map_member)
+ (sunos_current_sos, disable_break, enable_break)
+ (sunos_special_symbol_handling, sunos_solib_create_inferior_hook):
+ Ditto.
+ * solib-svr4.c (bfd_lookup_symbol, elf_locate_base, locate_base)
+ (open_symbol_file_object, svr4_current_sos, enable_break)
+ (svr4_special_symbol_handling, svr4_solib_create_inferior_hook):
+ Ditto.
+ * solib-frv.c (bfd_lookup_symbol, open_symbol_file_object)
+ (frv_current_sos, enable_break, frv_special_symbol_handling)
+ (frv_solib_create_inferior_hook): Ditto.
+ * solist.h (struct target_so_ops): Extend the comments of the
+ special_symbol_handling, current_sos and open_symbol_file_object
+ methods.
+
+2011-08-09 Phil Muldoon <pmuldoon@redhat.com>
+
+ * python/lib/gdb/__init__.py: Auto-load files in command and
+ function directories.
+ * python/python.c (finish_python_initialization): Use
+ os.path.join.
+ * python/lib/gdb/command/pretty_printers.py: Self register
+ command.
+ * NEWS: Document auto-loading.
+
+2011-08-08 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * dwarf2loc.c (dwarf2_evaluate_loc_desc_full) <DWARF_VALUE_STACK>
+ (dwarf2_evaluate_loc_desc_full) <DWARF_VALUE_LITERAL>: New variable
+ objfile_gdbarch. Fix BFD_ENDIAN_BIG case.
+
+2011-08-08 Tom Tromey <tromey@redhat.com>
+
+ * breakpoint.c (clean_up_filters): Remove.
+ (catch_syscall_split_args): Use VEC_cleanup.
+
+2011-08-06 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * cp-name-parser.y (xfree): Wrap the name free by CONCAT2.
+ (main): Uncomment "Demangling error\n".
+
+2011-08-05 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * solib-target.c (segment_attributes): Make them static.
+ (section_attributes, library_children, library_attributes): Likewise.
+ (library_list_children, library_list_attributes): Likesise.
+ (library_list_elements): Likewise.
+
+2011-08-05 Pedro Alves <pedro@codesourcery.com>
+
+ * exceptions.c (throw_exception): Don't disable the current
+ display.
+ * printcmd.c (disable_current_display_cleanup): New function.
+ (do_one_display): Install a cleanup to disable the current display
+ if doing the display throws.
+
+2011-08-05 Eli Zaretskii <eliz@gnu.org>
+
+ * python/py-breakpoint.c (gdbpy_initialize_breakpoints): Move the
+ initialization of the tp_new member to the corresponding
+ gdbpy_initialize_* function.
+ * python/py-cmd.c (gdbpy_initialize_commands): Likewise.
+ * python/py-frame.c (gdbpy_initialize_frames): Likewise.
+ * python/py-function.c (gdbpy_initialize_functions): Likewise.
+ * python/py-inferior.c (gdbpy_initialize_inferior): Likewise.
+ * python/py-param.c (gdbpy_initialize_parameters): Likewise.
+
+2011-08-05 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * spu-tdep.c (info_spu_event_command, info_spu_signal_command)
+ (info_spu_mailbox_list, info_spu_mailbox_command, info_spu_dma_cmdlist)
+ (info_spu_dma_command, info_spu_proxydma_command): Rename uiout
+ references to current_uiout.
+
+2011-08-04 Pedro Alves <pedro@codesourcery.com>
+
+ * event-loop.c (gdb_do_one_event): Remove `data' parameter.
+ (start_event_loop): Use TRY_CATCH instead of catch_errors.
+ * event-loop.h (gdb_do_one_event): Remove `data' parameter.
+ * top.c (gdb_readline_wrapper): Adjust.
+ * tui/tui-interp.c (tui_command_loop):
+ (_initialize_tui_interp): Don't install it.
+
+2011-08-04 Pedro Alves <pedro@codesourcery.com>
+
+ * ui-out.h (uiout): Rename to ...
+ (current_uiout): ... this.
+ * ui-out.c (uiout): Rename to ...
+ (current_uiout): ... this.
+ * ada-lang.c (print_it_exception, print_one_exception)
+ (print_mention_exception): Adjust.
+ * breakpoint.c (watchpoint_check): Adjust.
+ (print_breakpoint_location, print_one_breakpoint, breakpoint_1)
+ (default_collect_info, watchpoints_info, print_one_catch_fork)
+ (print_one_catch_vfork, print_one_catch_syscall)
+ (print_one_catch_exec, mention, print_it_ranged_breakpoint)
+ (print_one_ranged_breakpoint, print_mention_ranged_breakpoint)
+ (print_it_watchpoint, print_mention_watchpoint)
+ (print_it_masked_watchpoint, print_mention_masked_watchpoint)
+ (print_it_exception_catchpoint, print_one_exception_catchpoint)
+ (print_mention_exception_catchpoint, say_where, bkpt_print_it)
+ (bkpt_print_mention, momentary_bkpt_print_it)
+ (tracepoint_print_mention, update_static_tracepoint)
+ (tracepoints_info, save_breakpoints): Adjust.
+ * cli-out.c (field_separator): Adjust.
+ * cp-abi.c (list_cp_abis, show_cp_abi_cmd): Adjust.
+ * exceptions.c (catch_exceptions_with_msg, catch_errors): Adjust.
+ * frame.c (get_current_frame): Adjust.
+ * infcmd.c (run_command_1, print_return_value): Adjust.
+ * inferior.c (inferior_command, info_inferiors_command): Adjust.
+ * infrun.c (print_end_stepping_range_reason): Adjust.
+ (print_signal_exited_reason, print_exited_reason): Adjust.
+ (print_signal_received_reason, print_no_history_reason): Adjust.
+ * interps.c (interp_set): Adjust.
+ * osdata.c (info_osdata_command): Adjust.
+ * progspace.c (maintenance_info_program_spaces_command): Adjust.
+ * remote-fileio.c (remote_fileio_request): Adjust.
+ * remote.c (show_remote_cmd): Adjust.
+ * solib.c (info_sharedlibrary_command): Adjust.
+ * source.c (print_source_lines_base): Adjust.
+ * stack.c (print_stack_frame): Adjust.
+ (do_gdb_disassembly, print_frame_info, print_frame): Adjust.
+ * symfile-mem.c (add_vsyscall_page): Adjust.
+ * symfile.c (load_progress, generic_load)
+ (print_transfer_performance): Adjust.
+ * thread.c (info_threads_command, restore_selected_frame)
+ (thread_command): Adjust.
+ * top.c (make_cleanup_restore_ui_file): Adjust.
+ * tracepoint.c (tvariables_info_1, trace_status_mi, tfind_1)
+ (print_one_static_tracepoint_marker): Adjust.
+ * cli/cli-cmds.c (print_disassembly): Adjust.
+ * cli/cli-decode.c (print_doc_line): Adjust.
+ * cli/cli-interp.c (safe_execute_command): Adjust.
+ * cli/cli-logging.c (set_logging_redirect, pop_output_files)
+ (handle_redirections): Adjust.
+ * cli/cli-script.c (show_user_1): Adjust.
+ * cli/cli-setshow.c (do_setshow_command, cmd_show_list): Adjust.
+ * mi/mi-cmd-break.c (breakpoint_notify): Adjust.
+ * mi/mi-cmd-disas.c (mi_cmd_disassemble): Adjust.
+ * mi/mi-cmd-env.c (mi_cmd_env_pwd, mi_cmd_env_path)
+ (mi_cmd_env_dir): Adjust.
+ * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file)
+ (print_partial_file_name, mi_cmd_file_list_exec_source_files): Adjust.
+ * mi/mi-cmd-stack.c (mi_cmd_stack_list_frames)
+ (mi_cmd_stack_info_depth, mi_cmd_stack_list_args)
+ (list_args_or_locals): Adjust.
+ * mi/mi-cmd-var.c (print_varobj, mi_cmd_var_create)
+ (mi_cmd_var_delete, mi_cmd_var_set_format, mi_cmd_var_set_frozen)
+ (mi_cmd_var_show_format, mi_cmd_var_info_num_children)
+ (mi_cmd_var_list_children, mi_cmd_var_info_type)
+ (mi_cmd_var_info_path_expression, mi_cmd_var_info_expression)
+ (mi_cmd_var_show_attributes, mi_cmd_var_evaluate_expression)
+ (mi_cmd_var_assign, mi_cmd_var_update, varobj_update_one): Adjust.
+ * mi/mi-interp.c (mi_on_normal_stop): Adjust.
+ * mi/mi-main.c (mi_cmd_gdb_exit, mi_cmd_thread_select)
+ (mi_cmd_thread_list_ids, mi_cmd_thread_info, print_one_inferior)
+ (list_available_thread_groups, mi_cmd_list_thread_groups)
+ (mi_cmd_data_list_register_names)
+ (mi_cmd_data_list_changed_registers)
+ (mi_cmd_data_list_register_values, get_register)
+ (mi_cmd_data_evaluate_expression, mi_cmd_data_read_memory)
+ (mi_cmd_data_read_memory_bytes, mi_cmd_list_features)
+ (mi_cmd_list_target_features, mi_cmd_add_inferior)
+ (mi_execute_command, mi_load_progress): Adjust.
+ * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Adjust.
+ * python/py-auto-load.c (print_script, info_auto_load_scripts):
+ Adjust.
+ * python/py-breakpoint.c (bppy_get_commands): Adjust.
+ * tui/tui-interp.c (tui_command_loop): Adjust.
+ * tui/tui-io.c (tui_setup_io, tui_initialize_io): Adjust.
+
+2011-08-04 Pedro Alves <pedro@codesourcery.com>
+
+ * exceptions.c (struct catcher): Remove saved_uiout field.
+ (exceptions_state_mc_init): Remove the `func_uiout' parameter, and
+ no longer save/resvore the global ui_out builder.
+ (catch_exceptions_with_msg): Save/override/restore the global
+ ui_out builder manually instead of relying on TRY_CATCH to do it.
+ (catch_errors): Save/restore the global ui_out builder manually
+ instead of relying on TRY_CATCH to do it.
+ * exceptions.h (exceptions_state_mc_init): Remove the `func_uiout'
+ parameter.
+ (TRY_CATCH): Adjust.
+ * cli/cli-interp.c (safe_execute_command): Save/override/restore
+ the global ui_out builder manually instead of relying on TRY_CATCH
+ to do it.
+
+2011-08-03 Philippe Waroquiers <philippe.waroquiers@skynet.be>
+
+ * breakpoint.c (update_global_location_list): Ensure
+ invariant 'first loc marked not duplicated and inserted,
+ following locs marked duplicated/not inserted' is respected
+ for multiple locations at the same address.
+ (unduplicated_should_be_inserted) New function.
+ (swap_insertion) New function.
+
+2011-08-03 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * stack.c (print_frame_arguments_choices): Comment typo fix.
+
+2011-08-01 Thiago Jung Bauermann <bauerman@br.ibm.com>
+
+ Revert:
+ 2011-07-31 Thiago Jung Bauermann <bauerman@br.ibm.com>
+ * breakpoint.c (insert_bp_location): Remove disabled_breaks
+ argument. Update callers.
+
+2011-08-01 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ PR gdb/13045
+ * doublest.c (convert_doublest_to_floatformat): Pass correct
+ mantissa length to put_field.
+
+2011-08-01 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * stack.c (do_gdb_disassembly): Use RETURN_MASK_ERROR, simplify the
+ exception_print code path.
+ (backtrace_command): Remove variable e. Protect arg by make_cleanup in
+ advance. Simplify memset. Remove TRY_CATCH. Remove explicit xfree.
+ (backtrace_full_command): Remove variable e. Remove TRY_CATCH.
+
+2011-08-01 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Code cleanup.
+ * stack.c (struct print_stack_frame_args, print_stack_frame_stub):
+ Remove, merge them into ...
+ (print_stack_frame): ... here with a TRY_CATCH. New variable e, remove
+ variable args and its initialization.
+ (struct print_args_args, print_args_stub): Remove, merge them into
+ print_frame.
+ (struct gdb_disassembly_stub_args, gdb_disassembly_stub): Remove, merge
+ them into ...
+ (do_gdb_disassembly): ... here. Remove variable args and its
+ initialization.
+ (print_frame): Remove variable args and its initialization, new
+ variable gdbarch and numargs (from print_args_stub), inline here
+ print_args_stub with a TRY_CATCH.
+ (struct backtrace_command_args, backtrace_command_stub): Remove, merge
+ them into ...
+ (backtrace_command, backtrace_full_command): ... here with a TRY_CATCH.
+ New variable e, remove variable btargs and its initialization.
+
+2011-08-01 Tristan Gingold <gingold@adacore.com>
+
+ * darwin-nat.c (darwin_decode_exception_message): Adjust assertion.
+
+2011-07-31 Thiago Jung Bauermann <bauerman@br.ibm.com>
+
+ * breakpoint.c (insert_bp_location): Document return value.
+ (insert_breakpoint_locations): Fix documentation.
+ (remove_breakpoints): Add documentation.
+
+2011-07-31 Thiago Jung Bauermann <bauerman@br.ibm.com>
+
+ * breakpoint.c (insert_bp_location): Remove disabled_breaks
+ argument. Update callers.
+
+2011-07-30 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * stack.c (print_frame_info): Comment typo fix.
+
+2011-07-29 Sterling Augustine <saugustine@google.com>
+
+ * MAINTAINERS (Write After Approval): Add myself to the list.
+
+2011-07-29 Tom Tromey <tromey@redhat.com>
+
+ * solib-target.c: Use DEF_VEC_I, not DEF_VEC_O.
+ (library_list_start_segment): Update.
+ (library_list_start_section): Update.
+
+2011-07-28 Phil Muldoon <pmuldoon@redhat.com>
+
+ * varobj.c (value_get_print_value): Move hint check later into the
+ function. Comment function. Free thevalue before reusing it.
+
+2011-07-27 Jan Kratochvil <jan.kratochvil@redhat.com>
+ Pedro Alves <pedro@codesourcery.com>
+
+ * eval.c (evaluate_subexp_standard): Remove not_lval from all calls of
+ value_one.
+ * valops.c (value_one): Remove parameter lv. Do not pass it to itself.
+ Assert the result kind.
+ * value.h (value_one): Remove parameter lv.
+
+2011-07-27 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Fix crash on lval_computed values.
+ * valops.c (value_zero): Use not_lval for lval_computed.
+
+2011-07-27 Tom Tromey <tromey@redhat.com>
+
+ * Makefile.in (HFILES_NO_SRCDIR): Add 'common' prefix for
+ gdb_assert.h, gdb_locale.h, gdb_dirent.h.
+
+2011-07-27 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * typeprint.c (_initialize_typeprint): Extend the help of "whatis" and
+ "ptype" by their typedefs difference.
+
+2011-07-27 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * dwarf2expr.c (ctx_no_read_reg): New function.
+ * dwarf2expr.h (ctx_no_read_reg): New declaration.
+ * dwarf2read.c (read_2_signed_bytes, read_4_signed_bytes): Remove.
+ (decode_locdesc_read_mem, decode_locdesc_ctx_funcs): New.
+ (decode_locdesc): Replace by a caller of dwarf_expr_eval.
+
+2011-07-27 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * dwarf2-frame.c (no_get_frame_base, no_get_frame_cfa, no_get_frame_pc)
+ (no_get_tls_address, no_dwarf_call, no_base_type): Move to the other
+ file.
+ (dwarf2_frame_ctx_funcs): Reference the renamed functions.
+ * dwarf2expr.c (ctx_no_get_frame_base, ctx_no_get_frame_cfa)
+ (ctx_no_get_frame_pc, ctx_no_get_tls_address, ctx_no_dwarf_call)
+ (ctx_no_get_base_type): Move the functions here.
+ * dwarf2expr.h (ctx_no_get_frame_base, ctx_no_get_frame_cfa)
+ (ctx_no_get_frame_pc, ctx_no_get_tls_address, ctx_no_dwarf_call)
+ (ctx_no_get_base_type): New declarations.
+
+2011-07-27 Tom Tromey <tromey@redhat.com>
+
+ * xcoffread.c (dwarf2_xcoff_names): Add 'macro' and 'sentinel'
+ entries.
+ * symfile.h (struct dwarf2_debug_sections) <sentinel>: New field.
+ * dwarf2read.c (dwarf2_elf_names): Add sentinel entry.
+
+2011-07-26 Sterling Augustine <saugustine@google.com>
+
+ * cli/cli-dump.c (dump_binary_file): Change parameter type to
+ ULONGEST.
+ (dump_bfd_file): Likewise.
+
+2011-07-26 Philippe Waroquiers <philippe.waroquiers@skynet.be>
+
+ * remote.c (remote_region_ok_for_hw_watchpoint): New function.
+ (remote_hw_watchpoint_length_limit): New variable.
+ (_initialize_remote) add set,show cmds for this new variable.
+ * gdb.texinfo: document these new commands.
+ * NEWS: Mention these new commands.
+
+2011-07-26 Pedro Alves <pedro@codesourcery.com>
+
+ * breakpoint.c (works_in_software_mode_watchpoint): Also return
+ true for software watchpoints.
+
+2011-07-26 Joel Brobecker <brobecker@adacore.com>
+
+ GDB 7.3 released.
+
+2011-07-26 Tom Tromey <tromey@redhat.com>
+
+ * symfile.h (struct dwarf2_debug_sections) <macro>: New field.
+ * dwarf2read.c (read_indirect_string_at_offset): New function.
+ (read_indirect_string): Use it.
+ (dwarf_decode_macro_bytes): New function, taken from
+ dwarf_decode_macros. Handle DW_MACRO_GNU_*.
+ (dwarf_decode_macros): Use it. handle DW_MACRO_GNU_*.
+ (dwarf_parse_macro_header, skip_form_bytes, skip_unknown_opcode):
+ New functions.
+ (struct dwarf2_per_objfile) <macro>: New field.
+ (dwarf2_elf_names): Add .debug_macro.
+ (dwarf2_macros_too_long_complaint): Add 'section' argument.
+ (dwarf2_locate_sections): Handle new section.
+ (read_file_scope): Handle DW_AT_GNU_macros.
+ (dwarf2_per_objfile_free): Unmap the .debug_macro section.
+
+2011-07-26 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * NEWS: Mention dcache configuration.
+ * dcache.c (dcache_set_list, dcache_show_list): New variables.
+ (dcache_size, dcache_line_size): New variables.
+ (LINE_SIZE_MASK, XFORM, MASK): Adjust.
+ (struct dcache_block): Make it expandable.
+ (struct dcache_struct): New field.
+ (dcache_invalidate): Discard freelist upon dcache_line_size changes.
+ (dcache_hit, dcache_alloc, dcache_peek_byte): Adjust.
+ (dcache_poke_byte, dcache_print_line): Adjust.
+ (set_dcache_size, set_dcache_line_size): New functions.
+ (set_dcache_command, show_dcache_command): New functions.
+ (_initialize_dcache): Add new commands.
+
+2011-07-26 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * progspace.h (struct program_space): Add solib_add_generation.
+ * infcmd.c (post_create_inferior): Only call solib_add if not
+ already done.
+ * solib.c (solib_add): Increment solib_add_generation.
+
+2011-07-25 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Fix implicit pointer offsets.
+ * dwarf2loc.c (indirect_pieced_value): Comment byte_offset. Use also
+ ptr.OFFSET.
+
+2011-07-25 Tom Tromey <tromey@redhat.com>
+
+ * ada-lang.c (ada_exception_breakpoint_ops): Make return type
+ const.
+ (ada_exception_sal): Make 'ops' const.
+ (ada_decode_exception_location): Likewise.
+ (ada_decode_assert_location): Likewise.
+ (catch_assert_command): Update.
+ (catch_ada_exception_command): Update.
+ (create_ada_exception_catchpoint): Make 'ops' const.
+ * breakpoint.c (set_raw_breakpoint_without_location)
+ (set_raw_breakpoint, momentary_breakpoint_from_master): Make 'ops'
+ const.
+ (create_internal_breakpoint): Update.
+ (init_raw_breakpoint_without_location): Make 'ops' const.
+ (init_raw_breakpoint, init_catchpoint)
+ (create_fork_vfork_event_catchpoint)
+ (create_syscall_event_catchpoint, init_breakpoint_sal)
+ (create_breakpoint_sal, create_breakpoints_sal)
+ (create_breakpoint, init_ada_exception_breakpoint): Likewise.
+ * breakpoint.h (struct breakpoint) <ops>: Now const.
+ (init_ada_exception_breakpoint, create_breakpoint): Make 'ops'
+ const.
+
+2011-07-25 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * linux-thread-db.c (thread_from_lwp): Initialize th.th_unique.
+
+2011-07-25 Pedro Alves <pedro@codesourcery.com>
+
+ * breakpoint.h (print_recreate_thread): Declare.
+ (struct breakpoint): Move step_count, pass_count,
+ number_on_target, static_trace_marker_id,
+ static_trace_marker_id_idx ...
+ (struct tracepoint): ... to this new struct.
+ (get_tracepoint, get_tracepoint_by_number_on_target)
+ (get_tracepoint_by_number): Change return type to struct
+ tracepoint pointer.
+ * breakpoint.c (is_tracepoint_type): New, factored out from
+ is_tracepoint.
+ (is_tracepoint): Adjust.
+ (print_one_breakpoint_location): Cast to struct tracepoint as
+ necessary, and adjust.
+ (print_recreate_catch_fork, print_recreate_catch_vfork)
+ (print_recreate_catch_syscall, print_recreate_catch_exec): Call
+ print_recreate_thread.
+ (init_breakpoint_sal): New, factored out from
+ create_breakpoint_sal.
+ (create_breakpoint_sal): Reimplement.
+ (create_breakpoint): Allocate a struct tracecepoint if the caller
+ wanted a tracepoint. Use init_breakpoint_sal and
+ install_breakpoint.
+ (print_recreate_ranged_breakpoint, print_recreate_watchpoint)
+ (print_recreate_masked_watchpoint)
+ (print_recreate_exception_catchpoint): Call print_recreate_thread.
+ (tracepoint_print_one_detail): Adjust.
+ (tracepoint_print_recreate): Adjust. Call print_recreate_thread.
+ Dump the pass count here.
+ (update_static_tracepoint): Adjust.
+ (addr_string_to_sals): Adjust.
+ (create_tracepoint_from_upload): Adjust. Change return type to
+ struct tracepoint pointer.
+ (trace_pass_set_count): Change parameter type to struct tracepoint
+ pointer, and adjust.
+ (trace_pass_command): Adjust.
+ (get_tracepoint, get_tracepoint_by_number_on_target)
+ (get_tracepoint_by_number): Change return type to struct
+ tracepoint pointer, and adjust.
+ (print_recreate_thread): New, factored out from save_breakpoints.
+ (save_breakpoints): Don't print thread and task and passcount
+ recreation here.
+ * remote.c (remote_download_tracepoint): Adjust.
+ * tracepoint.c (trace_actions_command, validate_actionline)
+ (start_tracing, tfind_1, trace_find_tracepoint_command)
+ (trace_dump_command): Adjust.
+ (find_matching_tracepoint): Change return type to struct
+ tracepoint pointer, and adjust.
+ (merge_uploaded_tracepoints, tfile_get_traceframe_address)
+ (tfile_trace_find, tfile_fetch_registers): Adjust.
+ * tracepoint.h (create_tracepoint_from_upload): Change return type
+ to struct tracepoint pointer.
+ * ada-lang.c (print_recreate_exception): Call
+ print_recreate_thread.
+ * mi/mi-cmd-break.c (mi_cmd_break_passcount): Adjust.
+
+2011-07-25 Pedro Alves <pedro@codesourcery.com>
+
+ * breakpoint.h (struct breakpoint): Move ops as first field. Move
+ exp_string, exp_string_reparse, exp, exp_valid_block, cond_exp,
+ cond_exp_valid_block, val, val_valid, watchpoint_frame,
+ watchpoint_thread, watchpoint_triggered ...
+ (struct watchpoint): ... to this new struct.
+ (is_watchpoint): Declare.
+ (install_breakpoint): Add new `internal' parameter.
+ * breakpoint.c (is_watchpoint): Delete declaration.
+ (set_breakpoint_condition): Handle watchpoints.
+ (is_watchpoint): Make public.
+ (watchpoint_in_thread_scope): Change parameter type to struct
+ watchpoint.
+ (watchpoint_del_at_next_stop): Change parameter type to struct
+ watchpoint. Remove assertion. Adjust.
+ (update_watchpoint): Ditto.
+ (insert_breakpoints, breakpoint_init_inferior)
+ (watchpoints_triggered, watchpoint_check)
+ (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions)
+ (bpstat_stop_status, print_one_breakpoint_location)
+ (print_one_breakpoint_location, watchpoint_locations_match): Cast
+ to struct watchpoint as necessary, and adjust.
+ (install_breakpoint): Add `internal' argument. If true, don't
+ mention the new breakpoint. Use set_breakpoint_number.
+ (create_fork_vfork_event_catchpoint)
+ (create_syscall_event_catchpoint): Adjust.
+ (dtor_watchpoint): New.
+ (re_set_watchpoint, insert_watchpoint, remove_watchpoint)
+ (breakpoint_hit_watchpoint, resources_needed_watchpoint)
+ (print_it_watchpoint, print_mention_watchpoint)
+ (print_recreate_watchpoint, insert_masked_watchpoint)
+ (remove_masked_watchpoint, resources_needed_masked_watchpoint)
+ (print_one_detail_masked_watchpoint)
+ (print_mention_masked_watchpoint)
+ (print_recreate_masked_watchpoint): Cast to struct watchpoint as
+ necessary, and adjust.
+ (watch_command_1): Allocate and initialize a struct watchpoint
+ instead of a struct breakpoint. Use install_breakpoint.
+ (catch_exec_command_1): Adjust.
+ (base_breakpoint_dtor): Delete accesses to watchpoint specific
+ fields.
+ (delete_breakpoint, enable_breakpoint_disp)
+ (invalidate_bp_value_on_memory_change): Cast to struct watchpoint
+ as necessary, and adjust.
+ (initialize_breakpoint_ops): Install dtor_watchpoint as
+ watchpoints' dtor method.
+ * ada-lang.c (create_ada_exception_catchpoint): Adjust.
+ * python/py-breakpoint.c (bppy_get_expression): Use is_watchpoint.
+ to struct watchpoint as necessary, and adjust.
+
+2011-07-25 Pedro Alves <pedro@codesourcery.com>
+
+ * ada-lang.c (dtor_exception, re_set_exception): Indirect through
+ the the base class ops table.
+ (catch_exception_breakpoint_ops)
+ (catch_exception_unhandled_breakpoint_ops)
+ (catch_assert_breakpoint_ops): Don't statically initialize.
+ (initialize_ada_catchpoint_ops): New.
+ (_initialize_ada_language): Call it.
+ * breakpoint.c (base_breakpoint_ops, bkpt_base_breakpoint_ops)
+ (bkpt_breakpoint_ops): Forward declare.
+ (catch_fork_breakpoint_ops, catch_vfork_breakpoint_ops)
+ (catch_syscall_breakpoint_ops, catch_exec_breakpoint_ops)
+ (ranged_breakpoint_ops, watchpoint_breakpoint_ops)
+ (masked_watchpoint_breakpoint_ops)
+ (gnu_v3_exception_catchpoint_ops): Don't statically initialize.
+ (dtor_catch_syscall, dtor_catch_exec): Indirect through the the
+ base class ops table.
+ (null_re_set, null_check_status, null_works_in_software_mode)
+ (null_resources_needed, null_print_one_detail): Delete.
+ (bkpt_dtor): Rename to ...
+ (base_breakpoint_dtor): ... this. Make static.
+ (bkpt_allocate_location): Rename to ...
+ (base_breakpoint_allocate_location): ... this. Make static.
+ (base_breakpoint_re_set): New.
+ (internal_error_pure_virtual_called): New.
+ (base_breakpoint_insert_location, base_breakpoint_remove_location)
+ (base_breakpoint_breakpoint_hit, base_breakpoint_check_status)
+ (base_breakpoint_works_in_software_mode)
+ (base_breakpoint_resources_needed, base_breakpoint_print_it)
+ (base_breakpoint_print_one_detail, base_breakpoint_print_mention)
+ (base_breakpoint_print_recreate): New functions.
+ (base_breakpoint_ops): New global.
+ (bkpt_re_set, bkpt_insert_location, bkpt_remove_location)
+ (bkpt_breakpoint_hit): Make static.
+ (bkpt_check_status): Delete.
+ (bkpt_resources_needed): Make static.
+ (bkpt_works_in_software_mode): Delete.
+ (bkpt_print_it, bkpt_print_mention, bkpt_print_recreate): Make
+ static.
+ (bkpt_breakpoint_ops, internal_breakpoint_ops)
+ (momentary_breakpoint_ops): Don't statically initialize.
+ (internal_bkpt_print_recreate, momentary_bkpt_print_recreate):
+ Delete.
+ (tracepoint_insert_location, tracepoint_remove_location)
+ (tracepoint_check_status, tracepoint_works_in_software_mode)
+ (tracepoint_print_it): Delete.
+ (tracepoint_breakpoint_ops): Don't statically initialize.
+ (initialize_breakpoint_ops): New.
+ (_initialize_breakpoint): Call it.
+ * breakpoint.h (null_re_set, null_works_in_software_mode)
+ (null_resources_needed, null_check_status, null_print_one_detail):
+ (bkpt_dtor, bkpt_allocate_location, bkpt_re_set)
+ (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit)
+ (bkpt_check_status, bkpt_resources_needed)
+ (bkpt_works_in_software_mode, bkpt_print_it)
+ (null_print_one_detail, bkpt_print_mention, bkpt_print_recreate):
+ Delete declarations.
+ (initialize_breakpoint_ops): Declare.
+
+2011-07-25 Pedro Alves <pedro@codesourcery.com>
+
+ * breakpoint.c (bkpt_print_it, internal_bkpt_print_it)
+ (momentary_bkpt_print_it): Simplify.
+
+2011-07-25 Pedro Alves <pedro@codesourcery.com>
+
+ Split internal, momentary and user breakpoints breakpoint_ops
+ tables.
+
+ * breakpoint.c (internal_breakpoint_ops)
+ (momentary_breakpoint_ops): Forward declare.
+ (create_internal_breakpoint): Add new breakpoint_ops parameter.
+ Pass it down, rather than hardcoding bkpt_breakpoint_ops.
+ (create_overlay_event_breakpoint)
+ (create_std_terminate_master_breakpoint)
+ (create_exception_master_breakpoint): Create breakpoints with
+ internal_breakpoint_ops vtable.
+ (set_longjmp_breakpoint): Create momentary breakpoints with
+ momentary_breakpoint_ops vtable, using
+ momentary_breakpoint_from_master.
+ (create_thread_event_breakpoint, create_jit_event_breakpoint)
+ (create_solib_event_breakpoint): Create breakpoints with
+ internal_breakpoint_ops vtable.
+ (set_momentary_breakpoint): Create breakpoints with
+ momentary_breakpoint_ops vtable.
+ (momentary_breakpoint_from_master): New, factored out from
+ clone_momentary_breakpoint.
+ (clone_momentary_breakpoint): Adjust.
+ (watch_command_1): Create scope breakpoints with
+ momentary_breakpoint_ops vtable.
+ (bkpt_re_set): Remove handling of internal and momentary
+ breakpoints.
+ (bkpt_print_mention, bkpt_print_recreate): New.
+ (bkpt_breakpoint_ops): Adjust.
+ (internal_bkpt_re_set, internal_bkpt_check_status)
+ (internal_bkpt_print_it, internal_bkpt_print_mention)
+ (internal_bkpt_print_recreate, internal_breakpoint_ops): New.
+ (momentary_bkpt_re_set, momentary_bkpt_check_status)
+ (momentary_bkpt_print_it, momentary_bkpt_print_mention)
+ (momentary_bkpt_print_recreate): New.
+ (momentary_breakpoint_ops): New.
+
+2011-07-25 Pedro Alves <pedro@codesourcery.com>
+
+ Implement most breakpoint_ops methods for all breakpoint types,
+ and move the default handlings to the proper callbacks.
+
+ * breakpoint.c (update_watchpoint): Always call the breakpoint's
+ works_in_software_mode method.
+ (insert_bp_location): Go through breakpoint_ops->insert_location
+ for software and hardware watchpoints.
+ (create_internal_breakpoint): Pass bkpt_breakpoint_ops as
+ breakpoint_ops.
+ (remove_breakpoint_1): Go through breakpoint_ops->remove_location
+ for software and hardware watchpoints.
+ (print_it_typical): Delete.
+ (print_bp_stop_message): Always call the breakpoint_ops->print_it
+ method.
+ (watchpoint_check): Adjust comment.
+ (bpstat_check_location): Simply always call the breakpoint's
+ breakpoint_hit method.
+ (bpstat_stop_status): Always call the breakpoint's check_status
+ method. Remove special cases for watchpoints and internal event
+ breakpoints from here (moved to the check_status implementations).
+ (print_one_breakpoint_location): Assume b->ops is never NULL.
+ Remove static tracepoint marker id printing from here (moved to
+ the print_one_detail callback implementation of tracepoints).
+ (init_bp_location): Assert OPS is never NULL.
+ (allocate_bp_location): Always call the breakpoint's
+ allocate_location method, and remove the default code from here.
+ (free_bp_location): Always call the location's dtor method, and
+ remove the default code from here.
+ (init_raw_breakpoint_without_location): Assert OPS is never NULL.
+ (set_raw_breakpoint_without_location): Add new breakpoint_ops
+ parameter. Pass it down.
+ (set_raw_breakpoint): Ditto.
+ (print_it_catch_fork): Adjust to take a bpstat as argument.
+ (catch_fork_breakpoint_ops): Install methods.
+ (print_it_catch_vfork): Adjust to take a bpstat as argument.
+ (catch_vfork_breakpoint_ops): Install methods.
+ (dtor_catch_syscall): Call the base dtor.
+ (print_it_catch_syscall): Adjust to take a bpstat as argument.
+ (catch_syscall_breakpoint_ops): Install methods.
+ (dtor_catch_exec): Call the base dtor.
+ (print_it_catch_exec): Adjust to take a bpstat as argument.
+ (catch_exec_breakpoint_ops): Install methods.
+ (hw_breakpoint_used_count, hw_watchpoint_used_count): Always call
+ the breakpoint's resources_needed method, and remove the default
+ code from here.
+ (set_momentary_breakpoint): Pass bkpt_breakpoint_ops as
+ breakpoint_ops.
+ (clone_momentary_breakpoint): Clone the original's ops.
+ (mention): Always call the breakpoint's print_mention method, and
+ remove the default code from here.
+ (create_breakpoint_sal): Adjust to pass the ops to
+ set_raw_breakpoint rather than setting it manually.
+ (create_breakpoint): Assert ops is never NULL. Adjust to pass the
+ ops to set_raw_breakpoint_without_location rather than setting it
+ manually.
+ (break_command_1): Pass bkpt_breakpoint_ops as breakpoint_ops.
+ (print_it_ranged_breakpoint): Adjust to take a bpstat as argument.
+ (ranged_breakpoint_ops): Install methods.
+ (break_range_command): Adjust to pass the ops to
+ set_raw_breakpoint rather than setting it manually.
+ (re_set_watchpoint, breakpoint_hit_watchpoint)
+ (check_status_watchpoint, resources_needed_watchpoint)
+ (works_in_software_mode_watchpoint, print_it_watchpoint)
+ (print_mention_watchpoint, print_recreate_watchpoint): New
+ functions.
+ (watchpoint_breakpoint_ops): Install new methods.
+ (print_it_masked_watchpoint): New function.
+ (masked_watchpoint_breakpoint_ops): Install new methods.
+ (watch_command_1): Adjust to pass the right breakpoint_ops to
+ set_raw_breakpoint_without_location rather than setting it
+ manually later. Record the current pspace.
+ (print_it_exception_catchpoint): Adjust to take a bpstat as
+ argument.
+ (gnu_v3_exception_catchpoint_ops): Install new methods.
+ (say_where): New function.
+ (null_re_set, null_check_status, null_works_in_software_mode)
+ (null_resources_needed, null_print_one_detail, bp_location_dtor):
+ New functions.
+ (bp_location_ops): New global.
+ (bkpt_dtor, bkpt_allocate_location, bkpt_re_set)
+ (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit)
+ (bkpt_check_status, bkpt_resources_needed)
+ (bkpt_works_in_software_mode, bkpt_print_it, bkpt_print_mention)
+ (bkpt_print_recreate): New functions.
+ (bkpt_breakpoint_ops): New global.
+ (tracepoint_re_set, tracepoint_insert_location)
+ (tracepoint_remove_location, tracepoint_breakpoint_hit)
+ (tracepoint_check_status, tracepoint_works_in_software_mode)
+ (tracepoint_print_it, tracepoint_print_one_detail)
+ (tracepoint_print_mention, tracepoint_print_recreate): New
+ functions.
+ (tracepoint_breakpoint_ops): New global.
+ (delete_breakpoint): Always call the breakpoint's dtor method, and
+ remove the default handling from here.
+ (breakpoint_re_set_default): Make static.
+ (breakpoint_re_set_one): Always call the breakpoints re_set
+ method, and remove the default handling from here.
+ (trace_command, ftrace_command, strace_command)
+ (create_tracepoint_from_upload): Pass appropriate breakpoints_ops
+ to create_breakpoint.
+ (save_breakpoints): Always call the breakpoint's print_recreate
+ method, and remove the default handling from here.
+
+ * ada-lang.c (dtor_exception): Call the base dtor.
+ (re_set_exception): Call the base method.
+ (print_it_exception, print_it_catch_exception): Adjust to take a
+ bpstat as argument.
+ (catch_exception_breakpoint_ops): Install methods.
+ (print_it_catch_exception_unhandled): Adjust to take a bpstat as
+ argument.
+ (catch_exception_unhandled_breakpoint_ops): Install methods.
+ (print_it_catch_assert): Adjust to take a bpstat as argument.
+ (catch_assert_breakpoint_ops): Install methods.
+
+ * breakpoint.h (struct breakpoint_ops): Adjust the print_it method
+ to take a bpstat as argument.
+ (enum print_stop_action): Add describing comments to each enum
+ value.
+ (breakpoint_re_set_default): Delete declaration.
+ (null_re_set, null_works_in_software_mode, null_resources_needed)
+ (null_check_status, null_print_one_detail): Declare.
+ (bkpt_breakpoint_ops): Declare.
+ (bkpt_dtor, bkpt_allocate_location, bkpt_re_set)
+ (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit)
+ (bkpt_check_status, bkpt_resources_needed)
+ (bkpt_works_in_software_mode, bkpt_print_it)
+ (null_print_one_detail, bkpt_print_mention, bkpt_print_recreate):
+ Declare.
+
+ * mi/mi-cmd-break.c (mi_cmd_break_insert): Adjust to pass
+ bkpt_breakpoint_ops.
+ * python/py-breakpoint.c (bppy_init): Ditto.
+
2011-07-15 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* MAINTAINERS (Write After Approval): Add myself to the list.