86 ssize_t len,
const bfd_byte *myaddr);
206 struct interp *interp_to_use;
210 error (
_(
"-interpreter-exec: " 211 "Usage: -interpreter-exec interp command"));
214 if (interp_to_use == NULL)
215 error (
_(
"-interpreter-exec: could not find interpreter \"%s\""),
232 for (i = 1; i < argc; i++)
245 if (!mi_error_message.empty ())
246 error (
"%s", mi_error_message.c_str ());
350 "thread-created,id=\"%d\",group-id=\"i%d\"",
372 "thread-exited,id=\"%d\",group-id=\"i%d\"",
399 "record-started,thread-group=\"i%d\"," 400 "method=\"%s\",format=\"%s\"",
406 "record-started,thread-group=\"i%d\"," 414 "record-stopped,thread-group=\"i%d\"",
444 "thread-group-added,id=\"i%d\"",
464 "thread-group-started,id=\"i%d\",pid=\"%d\"",
483 if (
inf->has_exit_code)
485 "thread-group-exited,id=\"i%d\",exit-code=\"%s\"",
489 "thread-group-exited,id=\"i%d\"",
inf->num);
509 "thread-group-removed,id=\"i%d\"",
637 struct interp *console_interp;
737 "num=\"%d\",tracepoint=\"%d\"\n",
762 "name=\"%s\",initial=\"%s\"\n",
786 "name=\"%s\"\n", tsv->
name);
883 "breakpoint-created");
939 "breakpoint-modified");
960 "*running,thread-id=\"%d\"\n",
972 int *count_p = (
int *) arg;
1184 ssize_t len,
const bfd_byte *myaddr)
1214 if (sec != NULL && sec->
objfile != NULL)
1219 if (
flags & SEC_CODE)
1268 "thread-selected,id=\"%d\"",
1296 "thread-group-added,id=\"i%d\"",
1317 if (logfile != NULL)
1321 std::move (logfile),
struct gdbarch * target_gdbarch(void)
char * hex_string(LONGEST num)
static int mi_inferior_count(struct inferior *inf, void *arg)
static void mi_inferior_exit(struct inferior *inf)
struct observer * observer_attach_record_changed(observer_record_changed_ftype *f)
static void mi_on_no_history(void)
struct observer * observer_attach_breakpoint_deleted(observer_breakpoint_deleted_ftype *f)
static void mi_on_end_stepping_range(void)
struct thread_info * find_thread_ptid(ptid_t ptid)
struct observer * observer_attach_inferior_removed(observer_inferior_removed_ftype *f)
struct observer * observer_attach_thread_exit(observer_thread_exit_ftype *f)
int ptid_is_pid(const ptid_t &ptid)
struct frame_info * get_selected_frame(const char *message)
int should_print_stop_to_console(struct interp *console_interp, struct thread_info *tp)
void field_core_addr(const char *fldname, struct gdbarch *gdbarch, CORE_ADDR address)
static void mi_on_signal_exited(enum gdb_signal siggnal)
void field_string(const char *fldname, const char *string)
void print_signal_received_reason(struct ui_out *uiout, enum gdb_signal siggnal)
void mi_load_progress(const char *section_name, unsigned long sent_so_far, unsigned long total_section, unsigned long total_sent, unsigned long grand_total)
static int mi_output_running_pid(struct thread_info *info, void *arg)
int ptid_get_pid(const ptid_t &ptid)
void fputs_unfiltered(const char *buf, struct ui_file *file)
void print_no_history_reason(struct ui_out *uiout)
std::unique_ptr< ui_file > ui_file_up
int gdbarch_has_global_solist(struct gdbarch *gdbarch)
char * int_string(LONGEST val, int radix, int is_signed, int width, int use_c_format)
struct bfd_section * the_bfd_section
static struct interp * mi_interp_factory(const char *name)
int(* deprecated_query_hook)(const char *, va_list) ATTRIBUTE_FPTR_PRINTF(1
static void mi_new_thread(struct thread_info *t)
char * plongest(LONGEST l)
static void mi_command_param_changed(const char *param, const char *value)
void set_logging(ui_file_up logfile, bool logging_redirect) override
struct thread_info * inferior_thread(void)
struct ui_out * interp_ui_out(struct interp *interp)
struct observer * observer_attach_signal_exited(observer_signal_exited_ftype *f)
void print_exited_reason(struct ui_out *uiout, int exitstatus)
const struct gdb_exception exception_none
void gdb_setup_readline(int editing)
static int report_initial_inferior(struct inferior *inf, void *closure)
struct observer * observer_attach_inferior_exit(observer_inferior_exit_ftype *f)
void set_raw(ui_file *raw)
struct inferior * find_inferior_ptid(ptid_t ptid)
int user_selected_context
struct inferior * iterate_over_inferiors(int(*callback)(struct inferior *, void *), void *data)
static void mi_on_exited(int exitstatus)
mi_ui_out * mi_out_new(int mi_version)
void gdb_disable_readline(void)
struct observer * observer_attach_signal_received(observer_signal_received_ftype *f)
static void mi_on_sync_execution_done(void)
static void mi_breakpoint_created(struct breakpoint *b)
static void mi_tsv_modified(const struct trace_state_variable *tsv)
ui_out * interp_ui_out() override
static void mi_traceframe_changed(int tfnum, int tpnum)
void(* input_handler)(char *)
struct ui_file * raw_stdout
void mi_cmd_interpreter_exec(const char *command, char **argv, int argc)
scoped_restore_tmpl< T > make_scoped_restore(T *var)
static void mi_record_changed(struct inferior *, int, const char *, const char *)
mach_port_t kern_return_t mach_port_t msgports mach_port_t kern_return_t pid_t pid mach_port_t kern_return_t mach_port_t task mach_port_t kern_return_t int flags
enum async_reply_reason thread_fsm_async_reply_reason(struct thread_fsm *self)
ui_file * make_logging_output(ui_file *curr_output, ui_file_up logfile, bool logging_redirect)
struct thread_info * iterate_over_threads(thread_callback_func, void *)
struct observer * observer_attach_no_history(observer_no_history_ftype *f)
void print_signal_exited_reason(struct ui_out *uiout, enum gdb_signal siggnal)
struct observer * observer_attach_command_param_changed(observer_command_param_changed_ftype *f)
static void display_mi_prompt(struct mi_interp *mi)
void mi_output_solib_attribs(ui_out *uiout, struct so_list *solib)
static int static void mi_insert_notify_hooks(void)
#define CATCH(EXCEPTION, MASK)
void redirect(ui_file *outstream)
static void mi_remove_notify_hooks(void)
static int mi_interp_query_hook(const char *ctlstr, va_list ap) ATTRIBUTE_PRINTF(1
static int logging_redirect
void print_stop_event(struct ui_out *uiout)
void print_selected_thread_frame(struct ui_out *uiout, user_selected_what selection)
void mi_print_timing_maybe(struct ui_file *file)
static void mi_memory_changed(struct inferior *inf, CORE_ADDR memaddr, ssize_t len, const bfd_byte *myaddr)
enum prompt_state prompt_state
void interp_factory_register(const char *name, interp_factory_func func)
struct observer * observer_attach_tsv_created(observer_tsv_created_ftype *f)
void fprintf_unfiltered(struct ui_file *stream, const char *format,...)
void clear_interpreter_hooks(void)
void exception_print(struct ui_file *file, struct gdb_exception e)
struct observer * observer_attach_breakpoint_created(observer_breakpoint_created_ftype *f)
static void mi_on_resume(ptid_t ptid)
void gdb_readline_no_editing_callback(gdb_client_data client_data)
struct observer * observer_attach_solib_unloaded(observer_solib_unloaded_ftype *f)
#define gdb_assert_not_reached(message)
static void mi_on_normal_stop_1(struct bpstats *bs, int print_frame)
gdb_exception exec(const char *command_str) override
int mi_version(ui_out *uiout)
char so_original_name[SO_NAME_MAX_PATH_SIZE]
static void mi_inferior_added(struct inferior *inf)
char so_name[SO_NAME_MAX_PATH_SIZE]
static void mi_on_normal_stop(struct bpstats *bs, int print_frame)
void(* deprecated_show_load_progress)(const char *section, unsigned long section_sent, unsigned long section_size, unsigned long total_sent, unsigned long total_size)
static struct mi_interp * as_mi_interp(struct interp *interp)
struct ui_out * cli_uiout
static struct mi_interp * find_mi_interp(void)
static void mi_thread_exit(struct thread_info *t, int silent)
struct observer * observer_attach_target_resumed(observer_target_resumed_ftype *f)
struct observer * observer_attach_exited(observer_exited_ftype *f)
struct thread_fsm * thread_fsm
int running_result_record_printed
int thread_fsm_finished_p(struct thread_fsm *self)
void print_breakpoint(breakpoint *b)
struct obj_section * find_pc_section(CORE_ADDR pc)
struct observer * observer_attach_inferior_appeared(observer_inferior_appeared_ftype *f)
static void ours_for_output()
void print_selected_inferior(struct ui_out *uiout)
static void mi_tsv_deleted(const struct trace_state_variable *tsv)
void init(bool top_level) override
static void mi_inferior_removed(struct inferior *inf)
#define SWITCH_THRU_ALL_UIS()
const char * interp_name(struct interp *interp)
static void mi_solib_unloaded(struct so_list *solib)
static void mi_on_resume_1(struct mi_interp *mi, ptid_t ptid)
static void mi_solib_loaded(struct so_list *solib)
static void mi_breakpoint_modified(struct breakpoint *b)
struct observer * observer_attach_tsv_modified(observer_tsv_modified_ftype *f)
static void mi_tsv_created(const struct trace_state_variable *tsv)
static void mi_breakpoint_deleted(struct breakpoint *b)
struct gdb_exception interp_exec(struct interp *interp, const char *command_str)
struct observer * observer_attach_user_selected_context_changed(observer_user_selected_context_changed_ftype *f)
static void print_frame(struct frame_info *frame, int print_level, enum print_what print_what, int print_args, struct symtab_and_line sal)
static void mi_user_selected_context_changed(user_selected_what selection)
void print_end_stepping_range_reason(struct ui_out *uiout)
static void mi_print_breakpoint_for_event(struct mi_interp *mi, breakpoint *bp)
const char * async_reason_lookup(enum async_reply_reason reason)
thread_control_state control
void field_int(const char *fldname, int value)
struct observer * observer_attach_breakpoint_modified(observer_breakpoint_modified_ftype *f)
struct ui_file * saved_raw_stdout
struct interp * command_interp(void)
static void mi_on_signal_received(enum gdb_signal siggnal)
mi_console_file * event_channel
struct ui_file * gdb_stdtarg
static void mi_about_to_proceed(void)
int target_core_of_thread(ptid_t ptid)
int ptid_equal(const ptid_t &ptid1, const ptid_t &ptid2)
struct inferior * current_inferior(void)
struct observer * observer_attach_normal_stop(observer_normal_stop_ftype *f)
struct interp * top_level_interpreter(void)
struct observer * observer_attach_new_thread(observer_new_thread_ftype *f)
void pre_command_loop() override
struct observer * observer_attach_inferior_added(observer_inferior_added_ftype *f)
struct ui_file * gdb_stdtargerr
struct observer * observer_attach_sync_execution_done(observer_sync_execution_done_ftype *f)
struct observer * observer_attach_end_stepping_range(observer_end_stepping_range_ftype *f)
void gdb_flush(struct ui_file *file)
void mi_out_rewind(ui_out *uiout)
struct observer * observer_attach_memory_changed(observer_memory_changed_ftype *f)
void mi_out_put(ui_out *uiout, struct ui_file *stream)
void mi_execute_command(const char *cmd, int from_tty)
cli_ui_out * cli_out_new(struct ui_file *stream)
static void mi_execute_command_input_handler(char *cmd)
int has_stack_frames(void)
void error(const char *fmt,...)
struct observer * observer_attach_traceframe_changed(observer_traceframe_changed_ftype *f)
struct observer * observer_attach_tsv_deleted(observer_tsv_deleted_ftype *f)
struct observer * observer_attach_solib_loaded(observer_solib_loaded_ftype *f)
void(* call_readline)(gdb_client_data)
void print_stack_frame_to_uiout(struct ui_out *uiout, struct frame_info *, int print_level, enum print_what print_what, int set_current_sal)
static void mi_execute_command_wrapper(const char *cmd)
void _initialize_mi_interp(void)
enum return_reason reason
void field_fmt(const char *fldname, const char *format,...) ATTRIBUTE_PRINTF(3
struct observer * observer_attach_about_to_proceed(observer_about_to_proceed_ftype *f)
static void mi_inferior_appeared(struct inferior *inf)
struct interp * interp_lookup(struct ui *ui, const char *name)