X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2FChangeLog;h=53e3951afe6e44b8bfa4a73cd41628fcb1aa333f;hb=0f48b757071509040d800ff9f7c8726e5828bd1a;hp=6372946a8c29fadbc949ed733fa33ef927e0b21d;hpb=9204d6922cb80f34dd799e57f7f0c74bc86e7027;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 6372946a8c..53e3951afe 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,522 @@ +2016-07-01 Pedro Alves + + * darwin-nat.c (darwin_detach): Use target_announce_detach. + * inf-ptrace.c (inf_ptrace_detach): Likewise. + * nto-procfs.c (procfs_detach): Likewise. + * remote.c (remote_detach_1): Likewise. + * target.c (target_announce_detach): New function. + * target.h (target_announce_detach): New declaration. + +2016-06-29 Tom Tromey + + PR python/20129: + * python/lib/gdb/command/frame_filters.py (_do_enable_frame_filter) + (SetFrameFilterPriority._set_filter_priority): Use "frame_filter", + not "name". + +2016-06-29 Tom Tromey + + PR gdb/17210: + * target.c (free_memory_read_result_vector): Take a pointer to the + VEC as an argument. + (read_memory_robust): Install a cleanup for "result". + * mi/mi-main.c (mi_cmd_data_read_memory_bytes): Update. + +2016-06-29 Manish Goregaokar + + * rust-lang.c (rust_get_disr_info): Initialize saveptr to NULL. + +2016-06-29 Manish Goregaokar + + * rust-lang.c (rust_get_disr_info): Use strtok_r instead of strsep. + +2016-06-28 Yao Qi + + * aarch64-tdep.c (aarch64_displaced_step_b): Use int64_t for + variable new_offset. + +2016-06-27 Manish Goregaokar + + * rust-lang.c (rust_print_type, rust_decorations): Print unit + types as "()". + (rust_print_type): Omit return type for functions returning unit. + +2016-06-25 Pierre-Marie de Rodat + + * python/py-breakpoint.c (bppy_init): Clear bppy_pending_object + when there is an error during the breakpoint creation. + +2016-06-25 Tom Tromey + + * rust-lang.c (rust_get_disr_info, rust_print_type): Fix + formatting. + +2016-06-25 Manish Goregaokar + + PR gdb/20239 + * rust-lang.c (rust_get_disr_info): Correctly interpret + NonZero-optimized enums of arbitrary depth. + (rust_print_type): Correctly print NonZero-optimized + enums. + +2016-06-24 David Taylor + + PR gdb/17520 Structure offset wrong when 1/4 GB or greater. + * c-lang.h: Change all parameters, variables, and struct or union + members used as struct or union fie3ld offsets from int to + LONGEST. + * c-valprint.c: Likewise. + * cp-abi.c: Likewise. + * cp-abi.h: Likewise. + * cp-valprint.c: Likewise. + * d-valprint.c: Likewise. + * dwarf2loc.c: Likewise. + * eval.c: Likewise. + * extension-priv.h: Likewise. + * extension.c: Likewise. + * extension.h: Likewise. + * findvar.c: Likewise. + * gdbtypes.h: Likewise. + * gnu-v2-abi.c: Likewise. + * gnu-v3-abi.c: Likewise. + * go-valprint.c: Likewise. + * guile/guile-internal.h: Likewise. + * guile/scm-pretty-print.c: Likewise. + * jv-valprint.c Likewise. + * opencl-lang.c: Likewise. + * p-lang.h: Likewise. + * python/py-prettyprint.c: Likewise. + * python/python-internal.h: Likewise. + * spu-tdep.c: Likewise. + * typeprint.c: Likewise. + * valarith.c: Likewise. + * valops.c: Likewise. + * valprint.c: Likewise. + * valprint.h: Likewise. + * value.c: Likewise. + * value.h: Likewise. + * p-valprint.c: Likewise. + * c-typeprint.c (c_type_print_base): When printing offset, use + plongest, not %d. + * gdbtypes.c (recursive_dump_type): Ditto. + +2016-06-24 David Taylor + + * MAINTAINERS (Write After Approval): Add David Taylor. + +2016-06-24 John Baldwin + + * configure.ac: Check for support for system call LWP fields on + FreeBSD. + * config.in, configure: Rebuild. + * data-directory/Makefile.in (SYSCALLS_FILES): Add freebsd.xml. + * fbsd-nat.c (fbsd_wait) [HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE]: + Report system call events. + [HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE] + (fbsd_set_syscall_catchpoint): New function. + (fbsd_nat_add_target) [HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE]: + Set "to_set_syscall_catchpoint" to "fbsd_set_syscall_catchpoint". + * fbsd-tdep.c: Include xml-syscall.h + (fbsd_get_syscall_number): New function. + (fbsd_init_abi): Set XML system call file name. + Add "get_syscall_number" gdbarch method. + * syscalls/freebsd.xml: New file. + +2016-06-24 John Baldwin + + * fbsd-tdep.c: Include "auxv.h". + (fbsd_print_auxv_entry): New function. + (fbsd_init_abi): Install gdbarch "print_auxv_entry" method. + +2016-06-24 John Baldwin + + * auxv.c (fprint_auxv_entry): New function. + (default_print_auxv_entry): New function. + (fprint_target_auxv): Use gdbarch_print_auxv_entry. + * auxv.h (enum auxv_format): New enum. + (fprint_auxv_entry): Declare. + (default_print_auxv_entry): Declare. + * gdbarch.sh (print_auxv_entry): New. + * gdbarch.c, gdbarch.h: Re-generated. + +2016-06-24 John Baldwin + + * fbsd-nat.c [KERN_PROC_AUXV] New variable super_xfer_partial. + (fbsd_xfer_partial): New function. + (fbsd_nat_add_target) [KERN_PROC_AUXV] Set "to_xfer_partial" to + "fbsd_xfer_partial". + +2016-06-23 Tom Tromey + + * symtab.c (symbol_find_demangled_name): Loop over languages and + use language_sniff_from_mangled_name. + * rust-lang.c (rust_sniff_from_mangled_name): New function. + (rust_language_defn): Update. + * p-lang.c (pascal_language_defn): Update. + * opencl-lang.c (opencl_language_defn): Update. + * objc-lang.c (objc_sniff_from_mangled_name): New function. + (objc_language_defn): Update. + * m2-lang.c (m2_language_defn): Update. + * language.h (struct language_defn) : New + field. + (language_sniff_from_mangled_name): Declare. + * language.c (language_sniff_from_mangled_name): New function. + (unknown_language_defn, auto_language_defn, local_language_defn): + Update. + * jv-lang.c (java_sniff_from_mangled_name): New function. + (java_language_defn): Use it. + * go-lang.c (go_sniff_from_mangled_name): New function. + (go_language_defn): Use it. + * f-lang.c (f_language_defn): Update. + * defs.h (enum language): Reorder. + * d-lang.c (d_sniff_from_mangled_name): New function. + (d_language_defn): Use it. + * cp-support.h (gdb_sniff_from_mangled_name): Declare. + * cp-support.c (gdb_sniff_from_mangled_name): New function. + * c-lang.c (c_language_defn, cplus_language_defn) + (asm_language_defn, minimal_language_defn): Update. + * ada-lang.c (ada_sniff_from_mangled_name): New function. + (ada_language_defn): Use it. + +2016-06-23 Tom Tromey + + * ada-lang.c (ada_extensions): New array. + (ada_language_defn): Use it. + * c-lang.c (c_extensions): New array. + (c_language_defn): Use it. + (cplus_extensions): New array. + (cplus_language_defn): Use it. + (asm_extensions): New array. + (asm_language_defn): Use it. + (minimal_language_defn): Update. + * d-lang.c (d_extensions): New array. + (d_language_defn): Use it. + * f-lang.c (f_extensions): New array. + (f_language_defn): Use it. + * go-lang.c (go_language_defn): Update. + * jv-lang.c (java_extensions): New array. + (java_language_defn): Use it. + * language.c (add_language): Call add_filename_language. + (unknown_language_defn, auto_language_defn, local_language_defn): + Update. + * language.h (struct language_defn) : New + field. + * m2-lang.c (m2_language_defn): Update. + * objc-lang.c (objc_extensions): New array. + (objc_language_defn): Use it. + * opencl-lang.c (opencl_language_defn): Update. + * p-lang.c (p_extensions): New array. + (pascal_language_defn): Use it. + * rust-lang.c (rust_extensions): New array. + (rust_language_defn): Use it. + * symfile.c (add_filename_language): No longer static. Make "ext" + const. + (init_filename_language_table): Remove. + (_initialize_symfile): Update. + * symfile.h (add_filename_language): Declare. + +2016-06-23 Tom Tromey + + * symfile.c (filename_language_table): Now a VEC. + (fl_table_size, fl_table_next): Remove. + (add_filename_language): Use VEC_safe_push. + (set_ext_lang_command, info_ext_lang_command) + (deduce_language_from_filename): Use VEC_iterate. + (init_filename_language_table): Use VEC_empty. + +2016-06-23 Tom Tromey + + * python/python.c (gdbpy_parameter): Now static. + * python/python-internal.h (gdbpy_parameter): Don't declare. + +2016-06-23 Tom Tromey + + PR gdb/16483: + * python/lib/gdb/command/frame_filters.py + (InfoFrameFilter.list_frame_filters): Rename to print_list. Print + nothing if no filters found. Return value indicating whether + filters were printed. + (InfoFrameFilter.print_list): Remove. + (InfoFrameFilter.invoke): Print message if no frame filters + found. + +2016-06-21 Walfred Tedeschi + + * f-valprint.c (f_val_print): Add field names for printing + derived types fields. + +2016-06-21 Andreas Arnez + + * s390-linux-tdep.c (s390_iterate_over_regset_sections): Fix typo + in name of last-break regset. + +2016-06-21 Pedro Alves + + * fork-child.c (fork_inferior): Switch the child to the main UI + right after vfork. Save/restore the current UI in the parent. + Flush outputs of the main UI instead of the current UI. + +2016-06-21 Pedro Alves + + * breakpoint.c (watchpoint_check): Send watchpoint-deleted output + to all UIs. + +2016-06-21 Pedro Alves + + * NEWS: Mention support for running interpreters on separate + UIs and the new new-ui command. + +2016-06-21 Pedro Alves + + * interps.c (set_top_level_interpreter): New function, factored + out from captured_main. + (interpreter_completer): Make extern. + * interps.h (set_top_level_interpreter, interpreter_completer): + New declarations. + (captured_main): Use set_top_level_interpreter. + * top.c [!O_NOCTTY] (O_NOCTTY): Define as 0. + (open_terminal_stream, new_ui_command): New functions. + (init_main): Install the "new-ui" command. + +2016-06-21 Pedro Alves + + * cli/cli-script.c (read_next_line): Adjust to per-UI stdin. + (read_command_lines): Use input_interactive_p instead of + input_from_terminal_p. + * defs.h (struct ui): Forward declare. + (input_from_terminal_p): Rename to ... + (input_interactive_p): ... this. + * event-top.c (stdin_event_handler): Pass 0 as from_tty argument + to quit_command. + (command_handler): Adjust to per-UI stdin. + (handle_line_of_input): Adjust to per-UI stdin and use + input_interactive_p instead of ISATTY and input_from_terminal_p. + (gdb_readline_no_editing_callback): Adjust to per-UI stdin. + (command_line_handler): Always pass true as "from_tty" parameter + of handle_line_of_input and execute_command. + (async_sigterm_handler): Pass 0 as from_tty argument to + quit_command. + * inflow.c (interactive_mode, show_interactive_mode): Moved to ... + (gdb_has_a_terminal): Don't check interactive_mode here. + (_initialize_inflow): Don't install "set interactive-mode" here. + * main.c (captured_command_loop): Adjust to per-UI stdin. + * mi/mi-interp.c (mi_execute_command_wrapper): Adjust to per-UI + stdin. + * top.c (new_ui): Save the stdin stream and whether it's a tty. + (dont_repeat): Adjust to per-UI stdin. + (command_line_input): Adjust to per-UI stdin and to use + input_interactive_p. + (quit_force): Write history if any UI supports interactive input. + (interactive_mode, show_interactive_mode): Move here, from + inflow.c. + (input_from_terminal_p): Rename to ... + (input_interactive_p): ... this, and check the "interactive_mode" + global instead of calling gdb_has_a_terminal. + (_initialize_top): Install "set interactive-mode" here. + * top.h (struct ui) : New + fields. + * utils.c (quit): Pass 0 as from_tty argument to quit_force. + (defaulted_query): Adjust to per-UI stdin and to use + input_interactive_p. + +2016-06-21 Pedro Alves + + * event-top.c (stdin_event_handler): Don't quit gdb if it was a + secondary UI's input stream that closed. Instead, just delete the + UI. + +2016-06-21 Pedro Alves + + * event-top.c (main_ui_): Delete. + (main_ui, current_ui, ui_list): No longer initialize here. + * main.c (captured_main): UI initialization code factored out to + new new_ui function. + (gdb_main): Wrap captured_main with TRY/CATCH instead of + catch_errors. + * top.c (highest_ui_num): New global. + (new_ui): New function. + * top.h (struct ui) : New field. + (new_ui): New declaration. + +2016-06-21 Pedro Alves + + * cli/cli-interp.c (cli_on_normal_stop): Bail out early if there's + nothing to print. Use should_print_stop_to_console. + * tui/tui-interp.c (tui_on_normal_stop): Likewise. + +2016-06-21 Pedro Alves + + * breakpoint.c (new_until_break_fsm): Add 'cmd_interp' parameter. + (until_break_fsm_should_stop, until_break_fsm_clean_up): Add + thread parameter. + (until_break_command): Pass command interpreter to thread fsm + ctor. + * cli/cli-interp.c (should_print_stop_to_console): Adjust. + * gdbthread.h (struct thread_control_state) : + Delete field. + * infcall.c (new_call_thread_fsm): Add 'cmd_interp' parameter. + Pass it down. + (call_thread_fsm_should_stop): Add thread parameter. + (call_function_by_hand_dummy): Pass command interpreter to thread + fsm ctor. Pass thread pointer to fsm clean up method. + * infcmd.c: Include interps.h. + (struct step_command_fsm) : Delete field. + (new_step_command_fsm): Add 'cmd_interp' parameter. Pass it down. + (step_command_fsm_prepare): Remove references to fsm's thread + field. + (step_1): Pass command interpreter to thread + fsm ctor. Pass thread pointer to fsm clean up method. + (step_command_fsm_should_stop, step_command_fsm_clean_up): Add + thread parameter and use it. + (new_until_next_fsm): Add 'cmd_interp' parameter. Pass it down. + (until_next_fsm_should_stop, until_next_fsm_clean_up): Add thread + parameter and use it. + (until_next_command): Pass command interpreter to thread fsm ctor. + (struct finish_command_fsm) : Delete field. + (finish_command_fsm_ops): Add NULL slot for should_notify_stop. + (new_finish_command_fsm): Add 'cmd_interp' parameter and pass it + down. Remove thread parameter and adjust. + (finish_command_fsm_should_stop, finish_command_fsm_clean_up): Add + thread parameter and use it. + (finish_command): Pass command interpreter to thread fsm ctor. + Don't pass thread. + * infrun.c (follow_fork): Move thread fsm to child fork instead of + command interpreter, only. + (clear_proceed_status_thread): Remove reference to command_interp. + (proceed): Don't record the thread's command interpreter. + (clean_up_just_stopped_threads_fsms): Pass thread to fsm clean_up + method. + (fetch_inferior_event): Pass thread to fsm should_stop method. + * thread-fsm.c (thread_fsm_ctor): Add 'cmd_interp' parameter. + Store it. + (thread_fsm_clean_up, thread_fsm_should_stop): Add thread + parameter and pass it down. + * thread-fsm.h (struct thread_fsm) : New field. + (struct thread_fsm_ops) : Add thread + parameter. + (thread_fsm_ctor): Add 'cmd_interp' parameter. + (thread_fsm_clean_up, thread_fsm_should_stop): Add thread + parameter. + * thread.c (thread_cancel_execution_command): Pass thread to + thread fsm clean_up method. + +2016-06-21 Pedro Alves + + * cli/cli-interp.c: Include gdbthread.h and thread-fsm.h. + (should_print_stop_to_console): New function, factored out from + mi_on_normal_stop_1. + * cli/cli-interp.h (should_print_stop_to_console): Declare. + * mi/mi-interp.c (mi_on_normal_stop_1): Use + should_print_stop_to_console. Pass it the current UI's console + interpreter. + * mi/mi-main.c (captured_mi_execute_command): Use the + INTERP_CONSOLE symbol rather than explicit "console". + +2016-06-21 Pedro Alves + + * infcmd.c (prepare_execution_command): Use + all_uis_on_sync_execution_starting. + * infrun.c (all_uis_on_sync_execution_starting): New function. + * infrun.h (all_uis_on_sync_execution_starting): Declare. + +2016-06-21 Pedro Alves + + * annotate.c: Include top.h. + (async_background_execution_p): Delete. + (print_value_flags): Check the UI's prompt state rather then + async_background_execution_p. + * event-loop.c (start_event_loop): Set the prompt state to + PROMPT_NEEDED. + * event-top.c (display_gdb_prompt, async_enable_stdin) + (async_disable_stdin): Check the current UI's prompt state instead + of the sync_execution global. + (command_line_handler): Set the prompt state to PROMPT_NEEDED + before running a command, and display the prompt if still needed + afterwards. + * infcall.c (struct call_thread_fsm) : New field. + (new_call_thread_fsm): New parameter 'waiting_ui'. Store it. + (call_thread_fsm_should_stop): Set the prompt state to + PROMPT_NEEDED. + (run_inferior_call): Adjust to temporarily set the prompt state to + PROMPT_BLOCKED instead of using the sync_execution global. + (call_function_by_hand_dummy): Pass the current UI to + new_call_thread_fsm. + * infcmd.c: Include top.h. + (continue_1): Check the current UI's prompt state instead of the + sync_execution global. + (continue_command): Validate global execution state before calling + prepare_execution_command. + (step_1): Call all_uis_check_sync_execution_done. + (attach_post_wait): Don't call async_enable_stdin here. Remove + reference to sync_execution. + * infrun.c (sync_execution): Delete global. + (follow_fork_inferior) + (reinstall_readline_callback_handler_cleanup): Check the current + UI's prompt state instead of the sync_execution global. + (check_curr_ui_sync_execution_done) + (all_uis_check_sync_execution_done): New functions. + (fetch_inferior_event): Call all_uis_check_sync_execution_done + instead of trying to determine whether the global sync execution + changed. + (handle_no_resumed): Check the prompt state of all UIs. + (normal_stop): Emit the no unwait-for even to all PROMPT_BLOCKED + UIs. Emit the "Switching to" notification to all UIs. Enable + stdin in all UIs. + * infrun.h (sync_execution): Delete. + (all_uis_check_sync_execution_done): Declare. + * main.c (captured_command_loop): Don't call + interp_pre_command_loop if the prompt is blocked. + (catch_command_errors, catch_command_errors_const): Adjust. + (captured_main): Set the initial prompt state to PROMPT_NEEDED. + * mi/mi-interp.c (display_mi_prompt): Set the prompt state to + PROMPTED. + (mi_interpreter_resume): Don't clear sync_execution. Remove hack + comment. + (mi_execute_command_input_handler): Set the prompt state to + PROMPT_NEEDED before executing the command, and only display the + prompt if the prompt state is PROMPT_NEEDED afterwards. + (mi_on_resume_1): Adjust to check the prompt state. + * target.c (target_terminal_inferior): Adjust to check the prompt + state. + * top.c (wait_sync_command_done, maybe_wait_sync_command_done) + (execute_command): Check the current UI's prompt state instead of + sync_execution. + * top.h (enum prompt_state): New. + (struct ui) : New field. + (ALL_UIS): New macro. + +2016-06-21 Pedro Alves + + * top.c (gdb_secondary_prompt_depth): Delete. + (gdb_in_secondary_prompt_p): Add ui parameter. Use it. + (gdb_readline_wrapper_cleanup, gdb_readline_wrapper): Adjust to + per-UI gdb_secondary_prompt_depth. + * top.h (struct ui) : New field. + +2016-06-21 Pedro Alves + + * cli/cli-interp.c (cli_interpreter_pre_command_loop): New + function. + (cli_interp_procs): Install it instead of cli_command_loop. + * cli/cli-interp.h (cli_interpreter_pre_command_loop): Declare. + * event-top.c (cli_command_loop): Delete. + * interps.c (interp_new): Remove reference to command_loop_proc. + (current_interp_command_loop): Delete. + (interp_pre_command_loop): New function. + (interp_command_loop_ftype): Delete. + * interps.h (interp_pre_command_loop_ftype): New typedef. + (struct interp_procs) : Delele field. + : New field. + (current_interp_command_loop): Delete declaration. + (interp_pre_command_loop): New declaration. + * main.c (captured_command_loop): Call interp_pre_command_loop + instead of current_interp_command_loop and start an event loop. + * mi/mi-interp.c (mi_command_loop): Delete. + (mi_interpreter_pre_command_loop): New. + (mi_interp_procs): Update. + * tui/tui-interp.c (tui_interp_procs): Install + cli_interpreter_pre_command_loop instead of cli_command_loop. + 2016-06-21 Pedro Alves * interps.c (current_interpreter): New function.