GDB (xrefs)
|
#include "defs.h"
#include "interps.h"
#include "event-top.h"
#include "event-loop.h"
#include "inferior.h"
#include "infrun.h"
#include "ui-out.h"
#include "top.h"
#include "mi-main.h"
#include "mi-cmds.h"
#include "mi-out.h"
#include "mi-console.h"
#include "mi-common.h"
#include "observer.h"
#include "gdbthread.h"
#include "solist.h"
#include "gdb.h"
#include "objfiles.h"
#include "tracepoint.h"
#include "cli-out.h"
Go to the source code of this file.
Functions | |
static void | mi_execute_command_wrapper (const char *cmd) |
static void | mi_execute_command_input_handler (char *cmd) |
static void | mi_command_loop (void *data) |
static int | mi_interp_query_hook (const char *ctlstr, va_list ap) ATTRIBUTE_PRINTF(1 |
static int static void | mi_insert_notify_hooks (void) |
static void | mi_remove_notify_hooks (void) |
static void | mi_on_signal_received (enum gdb_signal siggnal) |
static void | mi_on_end_stepping_range (void) |
static void | mi_on_signal_exited (enum gdb_signal siggnal) |
static void | mi_on_exited (int exitstatus) |
static void | mi_on_normal_stop (struct bpstats *bs, int print_frame) |
static void | mi_on_no_history (void) |
static void | mi_new_thread (struct thread_info *t) |
static void | mi_thread_exit (struct thread_info *t, int silent) |
static void | mi_record_changed (struct inferior *, int) |
static void | mi_inferior_added (struct inferior *inf) |
static void | mi_inferior_appeared (struct inferior *inf) |
static void | mi_inferior_exit (struct inferior *inf) |
static void | mi_inferior_removed (struct inferior *inf) |
static void | mi_on_resume (ptid_t ptid) |
static void | mi_solib_loaded (struct so_list *solib) |
static void | mi_solib_unloaded (struct so_list *solib) |
static void | mi_about_to_proceed (void) |
static void | mi_traceframe_changed (int tfnum, int tpnum) |
static void | mi_tsv_created (const struct trace_state_variable *tsv) |
static void | mi_tsv_deleted (const struct trace_state_variable *tsv) |
static void | mi_tsv_modified (const struct trace_state_variable *tsv) |
static void | mi_breakpoint_created (struct breakpoint *b) |
static void | mi_breakpoint_deleted (struct breakpoint *b) |
static void | mi_breakpoint_modified (struct breakpoint *b) |
static void | mi_command_param_changed (const char *param, const char *value) |
static void | mi_memory_changed (struct inferior *inf, CORE_ADDR memaddr, ssize_t len, const bfd_byte *myaddr) |
static void | mi_on_sync_execution_done (void) |
static int | report_initial_inferior (struct inferior *inf, void *closure) |
static void * | mi_interpreter_init (struct interp *interp, int top_level) |
static int | mi_interpreter_resume (void *data) |
static int | mi_interpreter_suspend (void *data) |
static struct gdb_exception | mi_interpreter_exec (void *data, const char *command) |
void | mi_cmd_interpreter_exec (char *command, char **argv, int argc) |
static void | restore_current_uiout_cleanup (void *arg) |
static struct interp * | find_mi_interpreter (void) |
static struct mi_interp * | mi_interp_data (void) |
static int | mi_output_running_pid (struct thread_info *info, void *arg) |
static int | mi_inferior_count (struct inferior *inf, void *arg) |
static struct ui_out * | mi_ui_out (struct interp *interp) |
static int | mi_set_logging (struct interp *interp, int start_log, struct ui_file *out, struct ui_file *logfile) |
void | _initialize_mi_interp (void) |
Variables | |
struct mi_suppress_notification | mi_suppress_notification |
static struct ui_file * | saved_raw_stdout |
initialize_file_ftype | _initialize_mi_interp |
void _initialize_mi_interp | ( | void | ) |
Definition at line 1188 of file mi-interp.c.
References interp_add(), INTERP_MI, INTERP_MI1, INTERP_MI2, INTERP_MI3, interp_new(), mi_command_loop(), mi_interpreter_exec(), mi_interpreter_init(), mi_interpreter_resume(), mi_interpreter_suspend(), mi_set_logging(), and mi_ui_out().
|
static |
Definition at line 488 of file mi-interp.c.
References command_interp(), interp_ui_out(), top_level_interpreter(), and ui_out_is_mi_like_p().
Referenced by mi_interp_data().
|
static |
Definition at line 697 of file mi-interp.c.
References thread_info::control, thread_control_state::in_infcall, inferior_ptid, inferior_thread(), mi_proceeded, null_ptid, and ptid_equal().
Referenced by mi_interpreter_init().
|
static |
Definition at line 807 of file mi-interp.c.
References mi_suppress_notification::breakpoint, CATCH, END_CATCH, mi_interp::event_channel, fprintf_unfiltered(), gdb_breakpoint_query(), gdb_flush(), interp_ui_out(), breakpoint::number, RETURN_MASK_ERROR, target_terminal_ours(), top_level_interpreter(), top_level_interpreter_data(), TRY, and ui_out_redirect().
Referenced by mi_interpreter_init().
|
static |
Definition at line 846 of file mi-interp.c.
References mi_suppress_notification::breakpoint, mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), breakpoint::number, target_terminal_ours(), and top_level_interpreter_data().
Referenced by mi_interpreter_init().
|
static |
Definition at line 867 of file mi-interp.c.
References mi_suppress_notification::breakpoint, CATCH, END_CATCH, mi_interp::event_channel, fprintf_unfiltered(), gdb_breakpoint_query(), gdb_flush(), interp_ui_out(), breakpoint::number, RETURN_MASK_ERROR, target_terminal_ours(), top_level_interpreter(), top_level_interpreter_data(), TRY, and ui_out_redirect().
Referenced by mi_interpreter_init().
void mi_cmd_interpreter_exec | ( | char * | command, |
char ** | argv, | ||
int | argc | ||
) |
Definition at line 227 of file mi-interp.c.
References _, do_cleanups(), error(), interp_exec(), interp_lookup(), make_cleanup(), gdb_exception::message, mi_insert_notify_hooks(), mi_remove_notify_hooks(), null_cleanup(), gdb_exception::reason, and xfree().
|
static |
Definition at line 357 of file mi-interp.c.
References fputs_unfiltered(), gdb_flush(), raw_stdout, sevenbit_strings, and start_event_loop().
Referenced by _initialize_mi_interp().
Definition at line 1048 of file mi-interp.c.
References mi_suppress_notification::cmd_param_changed, mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), interp_ui_out(), target_terminal_ours(), top_level_interpreter(), top_level_interpreter_data(), ui_out_field_string(), and ui_out_redirect().
Referenced by mi_interpreter_init().
|
static |
Definition at line 332 of file mi-interp.c.
References fputs_unfiltered(), gdb_flush(), mi_execute_command_wrapper(), raw_stdout, sync_execution, and target_is_async_p.
Referenced by mi_interpreter_resume().
|
static |
Definition at line 302 of file mi-interp.c.
References instream, and mi_execute_command().
Referenced by mi_execute_command_input_handler(), and mi_interpreter_exec().
|
static |
Definition at line 421 of file mi-interp.c.
References mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), inferior::num, target_terminal_ours(), and top_level_interpreter_data().
Referenced by mi_interpreter_init().
|
static |
Definition at line 433 of file mi-interp.c.
References mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), inferior::num, inferior::pid, target_terminal_ours(), and top_level_interpreter_data().
Referenced by mi_interpreter_init().
|
static |
Definition at line 445 of file mi-interp.c.
References mi_interp::event_channel, inferior::exit_code, fprintf_unfiltered(), gdb_flush(), inferior::has_exit_code, int_string(), inferior::num, target_terminal_ours(), and top_level_interpreter_data().
Referenced by mi_interpreter_init().
|
static |
Definition at line 462 of file mi-interp.c.
References mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), inferior::num, target_terminal_ours(), and top_level_interpreter_data().
Referenced by mi_interpreter_init().
|
static |
Definition at line 284 of file mi-interp.c.
References deprecated_query_hook, and mi_interp_query_hook().
Referenced by mi_cmd_interpreter_exec().
|
static |
Definition at line 507 of file mi-interp.c.
References find_mi_interpreter(), and interp_data().
Referenced by mi_on_end_stepping_range(), mi_on_exited(), mi_on_no_history(), mi_on_signal_exited(), and mi_on_signal_received().
Definition at line 296 of file mi-interp.c.
Referenced by mi_insert_notify_hooks().
|
static |
Definition at line 220 of file mi-interp.c.
References exception_none, and mi_execute_command_wrapper().
Referenced by _initialize_mi_interp().
Definition at line 91 of file mi-interp.c.
References cli_out_new(), mi_interp::cli_uiout, mi_interp::err, mi_interp::event_channel, gdb_assert_not_reached, gdb_stdout, INTERP_MI, INTERP_MI1, INTERP_MI2, INTERP_MI3, interp_name(), iterate_over_inferiors(), mi_interp::log, mi_about_to_proceed(), mi_breakpoint_created(), mi_breakpoint_deleted(), mi_breakpoint_modified(), mi_command_param_changed(), mi_console_file_new(), mi_inferior_added(), mi_inferior_appeared(), mi_inferior_exit(), mi_inferior_removed(), mi_memory_changed(), mi_new_thread(), mi_on_end_stepping_range(), mi_on_exited(), mi_on_no_history(), mi_on_normal_stop(), mi_on_resume(), mi_on_signal_exited(), mi_on_signal_received(), mi_on_sync_execution_done(), mi_out_new(), mi_record_changed(), mi_solib_loaded(), mi_solib_unloaded(), mi_thread_exit(), mi_traceframe_changed(), mi_tsv_created(), mi_tsv_deleted(), mi_tsv_modified(), mi_interp::mi_uiout, mi_version(), name, observer_attach_about_to_proceed(), observer_attach_breakpoint_created(), observer_attach_breakpoint_deleted(), observer_attach_breakpoint_modified(), observer_attach_command_param_changed(), observer_attach_end_stepping_range(), observer_attach_exited(), observer_attach_inferior_added(), observer_attach_inferior_appeared(), observer_attach_inferior_exit(), observer_attach_inferior_removed(), observer_attach_memory_changed(), observer_attach_new_thread(), observer_attach_no_history(), observer_attach_normal_stop(), observer_attach_record_changed(), observer_attach_signal_exited(), observer_attach_signal_received(), observer_attach_solib_loaded(), observer_attach_solib_unloaded(), observer_attach_sync_execution_done(), observer_attach_target_resumed(), observer_attach_thread_exit(), observer_attach_traceframe_changed(), observer_attach_tsv_created(), observer_attach_tsv_deleted(), observer_attach_tsv_modified(), mi_interp::out, raw_stdout, report_initial_inferior(), and mi_interp::targ.
Referenced by _initialize_mi_interp().
|
static |
Definition at line 173 of file mi-interp.c.
References async_command_editing_p, call_readline, clear_interpreter_hooks(), deprecated_show_load_progress, mi_interp::err, gdb_readline2(), gdb_setup_readline(), gdb_stderr, gdb_stdlog, gdb_stdout, gdb_stdtarg, gdb_stdtargerr, input_handler, mi_interp::log, mi_execute_command_input_handler(), mi_load_progress(), mi_interp::out, sync_execution, and mi_interp::targ.
Referenced by _initialize_mi_interp().
|
static |
Definition at line 213 of file mi-interp.c.
References gdb_disable_readline().
Referenced by _initialize_mi_interp().
|
static |
Definition at line 1074 of file mi-interp.c.
References mi_interp::event_channel, find_pc_section(), flags, fprintf_unfiltered(), gdb_flush(), hex_string(), interp_ui_out(), mi_suppress_notification::memory, inferior::num, objfile::obfd, obj_section::objfile, target_gdbarch(), target_terminal_ours(), obj_section::the_bfd_section, top_level_interpreter(), top_level_interpreter_data(), ui_out_field_core_addr(), ui_out_field_fmt(), ui_out_field_string(), and ui_out_redirect().
Referenced by mi_interpreter_init().
|
static |
Definition at line 371 of file mi-interp.c.
References mi_interp::event_channel, find_inferior_ptid(), fprintf_unfiltered(), gdb_assert, gdb_flush(), thread_info::num, inferior::num, thread_info::ptid, and top_level_interpreter_data().
Referenced by mi_interpreter_init().
|
static |
Definition at line 537 of file mi-interp.c.
References mi_interp::cli_uiout, mi_interp_data(), mi_interp::mi_uiout, and print_end_stepping_range_reason().
Referenced by mi_interpreter_init().
|
static |
Definition at line 565 of file mi-interp.c.
References mi_interp::cli_uiout, mi_interp_data(), mi_interp::mi_uiout, and print_exited_reason().
Referenced by mi_interpreter_init().
|
static |
Definition at line 579 of file mi-interp.c.
References mi_interp::cli_uiout, mi_interp_data(), mi_interp::mi_uiout, and print_no_history_reason().
Referenced by mi_interpreter_init().
Definition at line 591 of file mi-interp.c.
References mi_interp::cli_uiout, thread_control_state::command_interp, thread_info::control, current_uiout, do_cleanups(), fputs_unfiltered(), gdb_flush(), get_last_target_status(), inferior_ptid, inferior_thread(), interp_ui_out(), make_cleanup(), make_cleanup_ui_out_list_begin_end(), mi_out_put(), mi_out_rewind(), mi_print_timing_maybe(), non_stop, pid_to_thread_id(), print_stop_event(), thread_control_state::proceed_to_finish, raw_stdout, restore_current_uiout_cleanup(), thread_control_state::stop_step, target_core_of_thread(), top_level_interpreter(), top_level_interpreter_data(), ui_out_field_int(), and ui_out_field_string().
Referenced by mi_interpreter_init().
|
static |
Definition at line 929 of file mi-interp.c.
References thread_info::control, current_token, find_thread_ptid(), fprintf_unfiltered(), fputs_unfiltered(), gdb_assert, gdb_flush(), thread_control_state::in_infcall, inferior_thread(), iterate_over_inferiors(), iterate_over_threads(), mi_inferior_count(), mi_output_running_pid(), mi_proceeded, minus_one_ptid, thread_info::num, ptid_equal(), ptid_get_pid(), ptid_is_pid(), raw_stdout, running_result_record_printed, sync_execution, and target_is_async_p.
Referenced by mi_interpreter_init().
|
static |
Definition at line 551 of file mi-interp.c.
References mi_interp::cli_uiout, mi_interp_data(), mi_interp::mi_uiout, and print_signal_exited_reason().
Referenced by mi_interpreter_init().
|
static |
Definition at line 523 of file mi-interp.c.
References mi_interp::cli_uiout, mi_interp_data(), mi_interp::mi_uiout, and print_signal_received_reason().
Referenced by mi_interpreter_init().
|
static |
Definition at line 310 of file mi-interp.c.
References fputs_unfiltered(), gdb_flush(), mi_async_p(), and raw_stdout.
Referenced by mi_interpreter_init().
|
static |
Definition at line 904 of file mi-interp.c.
References fprintf_unfiltered(), thread_info::num, thread_info::ptid, ptid_get_pid(), and raw_stdout.
Referenced by mi_on_resume().
Definition at line 410 of file mi-interp.c.
References mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), inferior::num, and top_level_interpreter_data().
Referenced by mi_interpreter_init().
|
static |
Definition at line 290 of file mi-interp.c.
References deprecated_query_hook.
Referenced by mi_cmd_interpreter_exec().
|
static |
Definition at line 1146 of file mi-interp.c.
References mi_interp::err, mi_interp::event_channel, interp_data(), mi_interp::log, mi_console_set_raw(), mi_interp::out, raw_stdout, saved_raw_stdout, mi_interp::targ, tee_file_new(), and ui_file_delete().
Referenced by _initialize_mi_interp().
|
static |
Definition at line 995 of file mi-interp.c.
References current_inferior(), mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), gdbarch_has_global_solist(), interp_ui_out(), so_list::so_name, so_list::so_original_name, so_list::symbols_loaded, target_gdbarch(), target_terminal_ours(), top_level_interpreter(), top_level_interpreter_data(), ui_out_field_fmt(), ui_out_field_int(), ui_out_field_string(), and ui_out_redirect().
Referenced by mi_interpreter_init().
|
static |
Definition at line 1021 of file mi-interp.c.
References current_inferior(), mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), gdbarch_has_global_solist(), interp_ui_out(), so_list::so_name, so_list::so_original_name, target_gdbarch(), target_terminal_ours(), top_level_interpreter(), top_level_interpreter_data(), ui_out_field_fmt(), ui_out_field_string(), and ui_out_redirect().
Referenced by mi_interpreter_init().
|
static |
Definition at line 385 of file mi-interp.c.
References do_cleanups(), mi_interp::event_channel, find_inferior_ptid(), fprintf_unfiltered(), gdb_flush(), arm-linux::inf, make_cleanup_restore_target_terminal(), thread_info::num, inferior::num, thread_info::ptid, target_terminal_ours(), and top_level_interpreter_data().
Referenced by mi_interpreter_init().
Definition at line 725 of file mi-interp.c.
References mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), target_terminal_ours(), top_level_interpreter_data(), and mi_suppress_notification::traceframe.
Referenced by mi_interpreter_init().
|
static |
Definition at line 747 of file mi-interp.c.
References mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), trace_state_variable::initial_value, trace_state_variable::name, plongest(), target_terminal_ours(), and top_level_interpreter_data().
Referenced by mi_interpreter_init().
|
static |
Definition at line 763 of file mi-interp.c.
References mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), trace_state_variable::name, target_terminal_ours(), and top_level_interpreter_data().
Referenced by mi_interpreter_init().
|
static |
Definition at line 781 of file mi-interp.c.
References mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), trace_state_variable::initial_value, interp_ui_out(), trace_state_variable::name, plongest(), target_terminal_ours(), top_level_interpreter(), top_level_interpreter_data(), ui_out_field_string(), ui_out_redirect(), trace_state_variable::value, and trace_state_variable::value_known.
Referenced by mi_interpreter_init().
Definition at line 1130 of file mi-interp.c.
References interp_data(), and mi_interp::mi_uiout.
Referenced by _initialize_mi_interp().
Definition at line 1113 of file mi-interp.c.
References mi_interp::event_channel, fprintf_unfiltered(), gdb_flush(), inferior::num, and target_terminal_ours().
Referenced by mi_interpreter_init().
|
static |
Definition at line 476 of file mi-interp.c.
References current_uiout.
Referenced by mi_on_normal_stop().
initialize_file_ftype _initialize_mi_interp |
Definition at line 715 of file mi-interp.c.
|
static |
Definition at line 1140 of file mi-interp.c.
Referenced by mi_set_logging().