91 static void step_1 (
int,
int,
char *);
92 static void step_once (
int skip_subroutines,
int single_inst,
93 int count,
int thread);
103 #define ERROR_NO_INFERIOR \
104 if (!target_has_execution) error (_("The program is not being run."));
179 if (inferior_io_terminal == NULL)
180 inferior_io_terminal =
"";
182 _(
"Terminal for future runs of program being debugged "
183 "is \"%s\".\n"), inferior_io_terminal);
259 char *special =
"\"!&*|[]{}<>?`~^=;, \t\n";
260 const char quote =
'"';
265 char *special =
"\"!#$&*()\\|[]{}<>?'`~^; \t\n";
266 const char quote =
'\'';
273 for (i = 0; i < argc; ++i)
274 length += 3 * strlen (argv[i]) + 1 + 2 * (argv[i][0] ==
'\0');
276 result = (
char *)
xmalloc (length);
279 for (i = 0; i < argc; ++i)
285 if (argv[i][0] ==
'\0')
295 if (strpbrk (argv[i], special))
301 for (cp = argv[i]; *cp; ++cp)
317 if (strchr (special, *cp) != NULL)
338 for (i = 0; i < argc; ++i)
340 char *cp = strchr (argv[i],
' ');
342 cp = strchr (argv[i],
'\t');
344 cp = strchr (argv[i],
'\n');
346 error (
_(
"can't handle command-line "
347 "argument containing whitespace"));
348 length += strlen (argv[i]) + 1;
351 result = (
char *)
xmalloc (length);
353 for (i = 0; i < argc; ++i)
356 strcat (result,
" ");
357 strcat (result, argv[i]);
377 if (args == NULL || *args ==
'\0')
383 p = args + strlen (args);
387 while (p > args && isspace (p[-1]))
398 return xstrdup (args);
435 const unsigned solib_add_generation
450 warning (
_(
"platform-specific solib_create_inferior_hook did "
451 "not load initial shared libraries."));
490 && !
query (
_(
"The program being debugged has been started already.\n\
491 Start it from the beginning? ")))
492 error (
_(
"Program not restarted."));
505 error (
_(
"Asynchronous execution not supported on this target."));
565 error (
_(
"The target does not support running in non-stop mode."));
654 error (
_(
"No symbol table loaded. Use the \"file\" command."));
686 error (
_(
"Cannot execute this command without a live selected thread."));
697 error (
_(
"Cannot execute this command while looking at trace frames."));
705 error (
_(
"Cannot execute this command while "
706 "the selected thread is running."));
787 args +=
sizeof (
"-a") - 1;
794 error (
_(
"`-a' is meaningless in all-stop mode."));
796 if (args != NULL && all_threads)
797 error (
_(
"Can't resume all threads and specify "
798 "proceed count simultaneously."));
835 if (!stopped && from_tty)
838 (
"Not stopped at any breakpoint; argument ignored.\n");
872 step_1 (0, 0, count_string);
880 step_1 (1, 0, count_string);
888 step_1 (0, 1, count_string);
894 step_1 (1, 1, count_string);
900 int thread = * (
int *) arg;
905 step_1 (
int skip_subroutines,
int single_inst,
char *count_string)
928 if (!single_inst || skip_subroutines)
943 for (; count > 0; count--)
945 step_once (skip_subroutines, single_inst, count, thread);
972 step_once (skip_subroutines, single_inst, count, thread);
1030 step_once (
int skip_subroutines,
int single_inst,
int count,
int thread)
1050 if (!skip_subroutines
1061 step_once (skip_subroutines, single_inst, count - 1, thread);
1093 error (
_(
"Cannot find bounds of current function"));
1097 "\nwhich has no line number information.\n"),
1105 if (!skip_subroutines)
1112 if (skip_subroutines)
1126 args =
xmalloc (
sizeof (*args));
1167 if (sals.
nelts != 1)
1169 error (
_(
"Unreasonable jump request"));
1178 if (sal.
symtab == 0 && sal.
pc == 0)
1179 error (
_(
"No source file has been specified."));
1186 if (fn != NULL && sfn != fn)
1188 if (!
query (
_(
"Line %d is not in `%s'. Jump anyway? "), sal.
line,
1191 error (
_(
"Not confirmed."));
1205 if (!
query (
_(
"WARNING!!! Destination is in "
1206 "unmapped overlay! Jump anyway? ")))
1208 error (
_(
"Not confirmed."));
1232 enum gdb_signal oursig;
1256 if (oursig == GDB_SIGNAL_UNKNOWN)
1262 oursig = GDB_SIGNAL_0;
1279 int must_confirm = 0;
1306 && !
query (
_(
"Continuing thread %d (the current thread) with specified signal will\n"
1307 "still deliver the signals noted above to their respective threads.\n"
1308 "Continue anyway? "),
1310 error (
_(
"Not confirmed."));
1315 if (oursig == GDB_SIGNAL_0)
1331 enum gdb_signal oursig;
1339 if (signum_exp == NULL)
1347 if (oursig == GDB_SIGNAL_UNKNOWN)
1353 oursig = GDB_SIGNAL_0;
1358 if (oursig != GDB_SIGNAL_0
1360 error (
_(
"Signal handling set to not pass this signal to the program."));
1400 int thread = tp->
num;
1419 if (msymbol.
minsym == NULL)
1420 error (
_(
"Execution is not within a known function."));
1525 if (ctx_saver != NULL)
1607 ui_out_text (uiout,
" Cannot determine contents\n");
1659 _(
"finish_command: function has no target type"));
1715 error (
_(
"Cannot find bounds of current function"));
1793 cargs =
xmalloc (
sizeof (*cargs));
1831 error (
_(
"The \"finish\" command does not take any arguments."));
1838 error (
_(
"\"finish\" not meaningful in the outermost frame."));
1892 && !
query (
_(
"warning: Function %s does not return normally.\n"
1893 "Try to finish anyway? "),
1895 error (
_(
"Not confirmed."));
1933 error (
_(
"Invalid selected thread."));
1935 error (
_(
"Selected thread is running."));
1955 "that has since been deleted.\n"));
1972 "registers\" for more information.\n"));
2012 char *p, *val, *var;
2019 p = (
char *) strchr (arg,
'=');
2020 val = (
char *) strchr (arg,
' ');
2022 if (p != 0 && val != 0)
2036 else if (val != 0 && p == 0)
2042 if (p == 0 || p[1] == 0)
2046 p = arg + strlen (arg);
2052 while (*val ==
' ' || *val ==
'\t')
2056 while (p != arg && (p[-1] ==
' ' || p[-1] ==
'\t'))
2063 "\"%s\" to null value.\n"),
2079 if (!from_tty ||
query (
_(
"Delete all environment variables? ")))
2115 exec_path = xstrdup (env);
2133 int print_raw_format;
2159 if (print_raw_format)
2179 if (print_raw_format &&
TYPE_VECTOR (regtype) == 0)
2209 int regnum,
int print_all)
2215 for (i = 0; i < numregs; i++)
2257 error (
_(
"The program has no registers now."));
2268 while (*addr_exp !=
'\0')
2278 if (addr_exp[0] ==
'$')
2280 if (isspace ((*addr_exp)) || (*addr_exp) ==
'\0')
2281 error (
_(
"Missing register name"));
2285 while ((*addr_exp) !=
'\0' && !isspace ((*addr_exp)))
2316 frame, regnum, fpregs);
2332 if (strncmp (start,
reggroup_name (group), end - start) == 0)
2354 error (
_(
"Invalid register `%.*s'"), (
int) (end - start), start);
2381 int printed_something = 0;
2390 printed_something = 1;
2394 if (!printed_something)
2403 error (
_(
"The program has no registers now."));
2418 error (
_(
"The program is not being run."));
2419 if (!
query (
_(
"Kill the program being debugged? ")))
2420 error (
_(
"Not confirmed."));
2437 bfd_cache_close_all ();
2450 int pid = * (
int *) arg;
2597 if (
query (
_(
"A program is being debugged already. Kill it? ")))
2600 error (
_(
"Not killed."));
2615 error (
_(
"Cannot attach to this target in non-stop mode"));
2617 attach_target->
to_attach (attach_target, args, from_tty);
2620 attach_target = NULL;
2681 a->
args = xstrdup (args);
2749 a->
args = xstrdup (
"");
2762 async_exec = leave_running;
2785 error (
_(
"The program is not being run."));
2860 int all_threads = 0;
2869 error (
_(
"-a is meaningless in all-stop mode."));
2882 int printed_something = 0;
2891 printed_something = 1;
2895 if (!printed_something)
2897 "available for this processor.\n");
2906 error (
_(
"The program has no registers now."));
2916 "name of an unset subcommand.\n"));
2932 error (
_(
"Not supported on this target."));
3005 const char *cmd_name;
3010 Set terminal for future runs of program being debugged."),
_(
"\
3011 Show terminal for future runs of program being debugged."),
_(
"\
3012 Usage: set inferior-tty /dev/pts/1"),
3021 Set argument list to give program being debugged when it is started."),
_(
"\
3022 Show argument list to give program being debugged when it is started."),
_(
"\
3023 Follow this command with any number of args, to be passed to the program."),
3032 The environment to give the program, or one variable's value.\n\
3033 With an argument VAR, prints the value of environment variable VAR to\n\
3034 give the program being debugged. With no arguments, prints the entire\n\
3035 environment to be given to the program."), &
showlist);
3039 _(
"Complement to certain \"set\" commands."),
3043 Cancel environment variable VAR for the program.\n\
3044 This does not affect the program until the next \"run\" command."),
3049 Set environment variable value to give the program.\n\
3050 Arguments are VAR VALUE where VAR is variable name and VALUE is value.\n\
3051 VALUES of environment variables are uninterpreted strings.\n\
3052 This does not affect the program until the next \"run\" command."),
3057 Add directory DIR(s) to beginning of search path for object files.\n\
3058 $cwd in the path means the current working directory.\n\
3059 This path is equivalent to the $PATH shell variable. It is a list of\n\
3060 directories, separated by colons. These directories are searched to find\n\
3061 fully linked executable files and separately compiled object files as \
3066 Current search path for finding object files.\n\
3067 $cwd in the path means the current working directory.\n\
3068 This path is equivalent to the $PATH shell variable. It is a list of\n\
3069 directories, separated by colons. These directories are searched to find\n\
3070 fully linked executable files and separately compiled object files as \
3076 _(
"Kill execution of program being debugged."),
3080 Attach to a process or file outside of GDB.\n\
3081 This command attaches to another target, of the same type as your last\n\
3082 \"target\" command (\"info files\" will show your target stack).\n\
3083 The command may take as argument a process id or a device file.\n\
3084 For a process id, you must have permission to send the process a signal,\n\
3085 and it must have the same effective uid as the debugger.\n\
3086 When using \"attach\" with a process id, the debugger finds the\n\
3087 program running in the process, looking first in the current working\n\
3088 directory, or (if not found there) using the source file search path\n\
3089 (see the \"directory\" command). You can also use the \"file\" command\n\
3090 to specify the program, and to load its symbol table."));
3093 Detach a process or file previously attached.\n\
3094 If a process, it is no longer traced, and it continues its execution. If\n\
3095 you were debugging a file, the file is closed and gdb no longer accesses it."),
3099 Disconnect from a target.\n\
3100 The target will wait for another debugger to connect. Not available for\n\
3104 Continue program with the specified signal.\n\
3105 Usage: signal SIGNAL\n\
3106 The SIGNAL argument is processed the same as the handle command.\n\
3108 An argument of \"0\" means continue the program without sending it a signal.\n\
3109 This is useful in cases where the program stopped because of a signal,\n\
3110 and you want to resume the program while discarding the signal.\n\
3112 In a multi-threaded program the signal is delivered to, or discarded from,\n\
3113 the current thread only."));
3117 Queue a signal to be delivered to the current thread when it is resumed.\n\
3118 Usage: queue-signal SIGNAL\n\
3119 The SIGNAL argument is processed the same as the handle command.\n\
3120 It is an error if the handling state of SIGNAL is \"nopass\".\n\
3122 An argument of \"0\" means remove any currently queued signal from\n\
3123 the current thread. This is useful in cases where the program stopped\n\
3124 because of a signal, and you want to resume it while discarding the signal.\n\
3126 In a multi-threaded program the signal is queued with, or discarded from,\n\
3127 the current thread only."));
3131 Step one instruction exactly.\n\
3133 Argument N means step N times (or till program stops for another \
3138 Step one instruction, but proceed through subroutine calls.\n\
3140 Argument N means step N times (or till program stops for another \
3145 Execute until selected stack frame returns.\n\
3147 Upon return, the value returned is printed and put in the value history."));
3151 Step program, proceeding through subroutine calls.\n\
3153 Unlike \"step\", if the current source line calls a subroutine,\n\
3154 this command does not enter the subroutine, but instead steps over\n\
3155 the call, in effect treating it as a single source line."));
3159 Step program until it reaches a different source line.\n\
3161 Argument N means step N times (or till program stops for another \
3166 Execute until the program reaches a source line greater than the current\n\
3167 or a specified location (same args as break command) within the current \
3173 Continue the program up to the given location (same form as args for break \
3175 Execution will also stop upon exit from the current stack frame."));
3179 Continue program being debugged at specified line or address.\n\
3180 Usage: jump <location>\n\
3181 Give as argument either LINENUM or *ADDR, where ADDR is an expression\n\
3182 for an address to start at."));
3187 Continue program being debugged, after signal or breakpoint.\n\
3188 Usage: continue [N]\n\
3189 If proceeding from breakpoint, a number N may be used as an argument,\n\
3190 which means to set the ignore count of that breakpoint to N - 1 (so that\n\
3191 the breakpoint won't break until the Nth time it is reached).\n\
3193 If non-stop mode is enabled, continue only the current thread,\n\
3194 otherwise all the threads in the program are continued. To \n\
3195 continue all stopped threads in non-stop mode, use the -a option.\n\
3196 Specifying -a and an ignore count simultaneously is an error."));
3201 Start debugged program. You may specify arguments to give it.\n\
3202 Args may include \"*\", or \"[...]\"; they are expanded using \"sh\".\n\
3203 Input and output redirection with \">\", \"<\", or \">>\" are also \
3205 With no arguments, uses arguments last specified (with \"run\" \
3206 or \"set args\").\n\
3207 To cancel previous arguments and run with no arguments,\n\
3208 use \"set args\" without arguments."));
3213 Run the debugged program until the beginning of the main procedure.\n\
3214 You may specify arguments to give to your program, just as with the\n\
3215 \"run\" command."));
3219 _(
"Interrupt the execution of the debugged program.\n\
3220 If non-stop mode is enabled, interrupt only the current thread,\n\
3221 otherwise all the threads in the program are stopped. To \n\
3222 interrupt all running threads in non-stop mode, use the -a option."));
3225 List of integer registers and their contents, for selected stack frame.\n\
3226 Register name as argument means describe only that register."));
3231 List of all registers and their contents, for selected stack frame.\n\
3232 Register name as argument means describe only that register."));
3236 _(
"Execution status of the program."));
3239 _(
"Print the status of the floating point unit\n"));
3242 _(
"Print the status of the vector unit\n"));
3246 Show /proc process information about any running process.\n\
3247 Specify any process id, or use the program being debugged by default."),
3248 &info_proc_cmdlist,
"info proc ",
3252 List of mapped memory regions."),
3253 &info_proc_cmdlist);
3256 List process info from /proc/PID/stat."),
3257 &info_proc_cmdlist);
3260 List process info from /proc/PID/status."),
3261 &info_proc_cmdlist);
3264 List current working directory of the process."),
3265 &info_proc_cmdlist);
3268 List command line arguments of the process."),
3269 &info_proc_cmdlist);
3272 List absolute filename for executable of the process."),
3273 &info_proc_cmdlist);
3276 List all available /proc info."),
3277 &info_proc_cmdlist);
void error_no_arg(const char *why)
void get_last_target_status(ptid_t *ptidp, struct target_waitstatus *status)
struct gdbarch * target_gdbarch(void)
static void attach_command_continuation(void *args, int err)
#define target_can_async_p()
void(* deprecated_detach_hook)(void)
static void info_proc_cmd_cwd(char *args, int from_tty)
const char * user_reg_map_regnum_to_name(struct gdbarch *gdbarch, int regnum)
void target_terminal_ours(void)
#define target_has_registers
struct cmd_list_element * add_prefix_cmd(const char *name, enum command_class theclass, cmd_cfunc_ftype *fun, const char *doc, struct cmd_list_element **prefixlist, const char *prefixname, int allow_unknown, struct cmd_list_element **list)
void reopen_exec_file(void)
ptid_t user_visible_resume_ptid(int step)
struct thread_info * find_thread_ptid(ptid_t ptid)
void set_ignore_count(int bptnum, int count, int from_tty)
static void set_inferior_tty_command(char *args, int from_tty, struct cmd_list_element *c)
void registers_info(char *addr_exp, int fpregs)
struct frame_info * get_selected_frame(const char *message)
void target_stop(ptid_t ptid)
void delete_longjmp_breakpoint_cleanup(void *arg)
static char * strip_bg_char(const char *args, int *bg_char_p)
CORE_ADDR step_range_start
CORE_ADDR get_frame_pc(struct frame_info *frame)
#define SYMBOL_PRINT_NAME(symbol)
void value_print(struct value *val, struct ui_file *stream, const struct value_print_options *options)
static void start_command(char *args, int from_tty)
void ui_out_field_stream(struct ui_out *uiout, const char *fldname, struct ui_file *stream)
static void vector_info(char *args, int from_tty)
struct frame_info * get_current_frame(void)
void post_create_inferior(struct target_ops *target, int from_tty)
#define target_files_info()
int ptid_equal(ptid_t ptid1, ptid_t ptid2)
static void attach_command_continuation_free_args(void *args)
static void jump_command(char *, int)
static void set_step_frame(void)
void ui_out_spaces(struct ui_out *uiout, int numspaces)
void target_require_runnable(void)
enum gdb_signal gdb_signal_from_command(int num)
char * get_inferior_args(void)
void set_running(ptid_t ptid, int running)
void interrupt_target_1(int all_threads)
static void all_registers_info(char *addr_exp, int from_tty)
int gdbarch_has_global_solist(struct gdbarch *gdbarch)
int section_is_overlay(struct obj_section *section)
static void set_args_command(char *args, int from_tty, struct cmd_list_element *c)
struct frame_info * get_prev_frame(struct frame_info *this_frame)
void no_shared_libraries(char *ignored, int from_tty)
struct gdbarch * get_regcache_arch(const struct regcache *regcache)
static void until_next_continuation(void *arg, int err)
static void signal_command(char *, int)
#define BMSYMBOL_VALUE_ADDRESS(symbol)
void warning(const char *fmt,...)
int query(const char *ctlstr,...)
void init_wait_for_inferior(void)
void async_enable_stdin(void)
void default_print_registers_info(struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, int regnum, int print_all)
static char * inferior_args_scratch
void get_formatted_print_options(struct value_print_options *opts, char format)
show_value_ftype deprecated_show_value_hack
void target_detach(const char *args, int from_tty)
struct ui_file * gdb_stdout
void gdbarch_print_registers_info(struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, int regnum, int all)
static int proceed_after_attach_callback(struct thread_info *thread, void *arg)
struct frame_id get_stack_frame_id(struct frame_info *next_frame)
int ptid_match(ptid_t ptid, ptid_t filter)
void internal_error(const char *file, int line, const char *fmt,...)
const struct frame_id null_frame_id
struct thread_info * inferior_thread(void)
static void float_info(char *, int)
void init_sal(struct symtab_and_line *sal)
void observer_notify_normal_stop(struct bpstats *bs, int print_frame)
void switch_to_thread(ptid_t ptid)
#define ERROR_NO_INFERIOR
int gdbarch_print_vector_info_p(struct gdbarch *gdbarch)
void set_inferior_io_terminal(const char *terminal_name)
struct value * read_var_value(struct symbol *var, struct frame_info *frame)
void reread_symbols(void)
#define TYPE_NO_RETURN(thistype)
#define target_post_attach(pid)
static void advance_command(char *arg, int from_tty)
struct cmd_list_element * cmdlist
void get_no_prettyformat_print_options(struct value_print_options *opts)
static void continue_command(char *args, int from_tty)
int gdbarch_num_regs(struct gdbarch *gdbarch)
char * skip_spaces(char *chp)
struct reggroup *const all_reggroup
const gdb_byte * value_contents_for_printing(struct value *value)
void set_longjmp_breakpoint(struct thread_info *tp, struct frame_id frame)
enum gdb_signal stop_signal
static void info_proc_cmd_all(char *args, int from_tty)
struct cmd_list_element * lookup_cmd(const char **line, struct cmd_list_element *list, char *cmdtype, int allow_unknown, int ignore_help_classes)
void set_in_environ(struct gdb_environ *e, const char *var, const char *value)
void gdbarch_info_proc(struct gdbarch *gdbarch, const char *args, enum info_proc_what what)
static void print_return_value(struct value *function, struct type *value_type, struct dummy_frame_context_saver *ctx_saver)
void ui_out_field_fmt(struct ui_out *uiout, const char *fldname, const char *format,...)
struct value * allocate_value(struct type *type)
struct regcache * dummy_frame_context_saver_get_regs(struct dummy_frame_context_saver *saver)
void delete_longjmp_breakpoint(int thread)
struct regcache * get_current_regcache(void)
struct objfile * symbol_objfile(const struct symbol *symbol)
void ui_out_text(struct ui_out *uiout, const char *string)
static void until_command(char *, int)
static void error_is_running(void)
static char * inferior_io_terminal_scratch
void printf_filtered(const char *format,...)
static void proceed_after_attach(int pid)
const char * paddress(struct gdbarch *gdbarch, CORE_ADDR addr)
#define SYMBOL_OBJ_SECTION(objfile, symbol)
void notice_new_inferior(ptid_t ptid, int leave_running, int from_tty)
struct cmd_list_element * add_setshow_string_noescape_cmd(const char *name, enum command_class theclass, char **var, const char *set_doc, const char *show_doc, const char *help_doc, cmd_sfunc_ftype *set_func, show_value_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list)
struct regcache * regcache_dup(struct regcache *src)
void free_environ(struct gdb_environ *e)
static void attach_command_post_wait(char *args, int from_tty, int async_exec)
void _initialize_infcmd(void)
static void environment_info(char *, int)
struct cleanup * make_cleanup_delete_breakpoint(struct breakpoint *b)
static void path_info(char *, int)
int gdbarch_num_pseudo_regs(struct gdbarch *gdbarch)
void null_cleanup(void *arg)
int in_thread_list(ptid_t ptid)
struct thread_info * iterate_over_threads(thread_callback_func, void *)
void until_break_command(char *arg, int from_tty, int anywhere)
void set_inferior_args(char *newargs)
static void interrupt_command(char *args, int from_tty)
void find_frame_sal(struct frame_info *frame, struct symtab_and_line *sal)
struct reggroup *const float_reggroup
struct cmd_list_element * infolist
static const char path_var_name[]
struct cmd_list_element * setlist
struct dummy_frame_context_saver * ctx_saver
enum frame_type get_frame_type(struct frame_info *frame)
void ui_out_flush(struct ui_out *uiout)
void tbreak_command(char *arg, int from_tty)
struct value * get_return_value(struct value *function, struct type *value_type, struct dummy_frame_context_saver *ctx_saver)
struct frame_id get_frame_id(struct frame_info *fi)
int is_stopped(ptid_t ptid)
void breakpoint_re_set(void)
#define CATCH(EXCEPTION, MASK)
struct reggroup *const general_reggroup
static void kill_command(char *arg, int from_tty)
char ** environ_vector(struct gdb_environ *e)
const char * get_inferior_io_terminal(void)
static void path_command(char *, int)
void inferior_event_handler(enum inferior_event_type event_type, gdb_client_data client_data)
struct target_ops current_target
struct gdb_environ * make_environ(void)
struct symtab_and_line find_pc_line(CORE_ADDR pc, int notcurrent)
int inline_skipped_frames(ptid_t ptid)
void fprintf_filtered(struct ui_file *stream, const char *format,...)
struct gdb_environ * environment
mach_port_t mach_port_t name mach_port_t mach_port_t name error_t err
static void step_command(char *, int)
static void nofp_registers_info(char *, int)
struct symbol * find_pc_function(CORE_ADDR pc)
void set_cmd_completer(struct cmd_list_element *cmd, completer_ftype *completer)
static void step_once(int skip_subroutines, int single_inst, int count, int thread)
static void info_proc_cmd_1(char *args, enum info_proc_what what, int from_tty)
void gdbarch_print_vector_info(struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, const char *args)
void target_terminal_inferior(void)
struct cmd_list_element * showlist
void exception_print(struct ui_file *file, struct gdb_exception e)
static void set_environment_command(char *, int)
struct inferior_control_state control
struct cmd_list_element * add_com_alias(const char *name, const char *oldname, enum command_class theclass, int abbrev_flag)
void fputs_filtered(const char *linebuffer, struct ui_file *stream)
void puts_filtered(const char *string)
struct cmd_list_element * add_cmd(const char *name, enum command_class theclass, cmd_cfunc_ftype *fun, const char *doc, struct cmd_list_element **list)
struct symbol * get_frame_function(struct frame_info *frame)
ptid_t pid_to_ptid(int pid)
enum bfd_endian gdbarch_byte_order(struct gdbarch *gdbarch)
int get_traceframe_number(void)
void solib_add(const char *pattern, int from_tty, struct target_ops *target, int readsyms)
struct cleanup * make_cleanup(make_cleanup_ftype *function, void *arg)
struct cmd_list_element * unsetlist
void exec_file_locate_attach(int pid, int from_tty)
int find_pc_partial_function(CORE_ADDR pc, const char **name, CORE_ADDR *address, CORE_ADDR *endaddr)
struct thread_control_state control
int step_stop_if_no_debug
struct gdbarch * get_type_arch(const struct type *type)
void mod_path(char *, char **)
struct cmd_list_element * add_info(const char *name, cmd_cfunc_ftype *fun, const char *doc)
struct gdbarch * get_current_arch(void)
static void finish_command_continuation(void *arg, int err)
enum return_value_convention gdbarch_return_value(struct gdbarch *gdbarch, struct value *function, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
char * get_in_environ(const struct gdb_environ *e, const char *var)
const char * gdbarch_register_name(struct gdbarch *gdbarch, int regnr)
static void run_command_1(char *args, int from_tty, int tbreak_at_main)
static int proceed_thread_callback(struct thread_info *thread, void *arg)
static int startswith(const char *string, const char *pattern)
static void step_1_continuation(void *args, int err)
int bpstat_num(bpstat *bsp, int *num)
const char * gdb_signal_to_name(enum gdb_signal)
static void finish_backward(struct symbol *function)
#define target_has_execution
static void show_args_command(struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
void printf_unfiltered(const char *format,...)
int section_is_mapped(struct obj_section *osect)
void async_disable_stdin(void)
static void ensure_not_running(void)
unsigned solib_add_generation
static void unset_command(char *, int)
int user_reg_map_name_to_regnum(struct gdbarch *gdbarch, const char *name, int len)
struct reggroup *const vector_reggroup
struct ui_file * mem_fileopen(void)
static void finish_forward(struct symbol *function, struct frame_info *frame)
struct breakpoint * set_momentary_breakpoint(struct gdbarch *gdbarch, struct symtab_and_line sal, struct frame_id frame_id, enum bptype type)
void continue_1(int all_threads)
void unset_in_environ(struct gdb_environ *e, const char *var)
struct symbol * step_start_function
void gdbarch_print_float_info(struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, const char *args)
static void info_proc_cmd_stat(char *args, int from_tty)
void finish_thread_state_cleanup(void *ptid_p)
int ptid_get_pid(ptid_t ptid)
void set_inferior_args_vector(int argc, char **argv)
static void step_1(int, int, char *)
int stopped_by_random_signal
int signal_pass_state(int signo)
enum gdb_signal gdb_signal_from_name(const char *)
void print_stack_frame(struct frame_info *, int print_level, enum print_what print_what, int set_current_sal)
int have_minimal_symbols(void)
static void info_proc_cmd_mappings(char *args, int from_tty)
void target_terminal_init(void)
void observer_notify_inferior_created(struct target_ops *objfile, int from_tty)
void throw_exception(struct gdb_exception exception)
struct symbol * fixup_symbol_section(struct symbol *sym, struct objfile *objfile)
static void finish_command_continuation_free_arg(void *arg)
void print_spaces_filtered(int n, struct ui_file *stream)
static void default_print_one_register_info(struct ui_file *file, const char *name, struct value *val)
static void queue_signal_command(char *signum_exp, int from_tty)
struct cmd_list_element * detachlist
void attach_command(char *args, int from_tty)
int value_entirely_available(struct value *value)
static void ensure_valid_thread(void)
void help_list(struct cmd_list_element *list, const char *cmdtype, enum command_class theclass, struct ui_file *stream)
void discard_cleanups(struct cleanup *old_chain)
const struct language_defn * current_language
int value_optimized_out(struct value *value)
#define TYPE_TARGET_TYPE(thistype)
struct bound_minimal_symbol lookup_minimal_symbol_by_pc(CORE_ADDR pc)
int target_info_proc(const char *args, enum info_proc_what what)
int gdbarch_register_reggroup_p(struct gdbarch *gdbarch, int regnum, struct reggroup *reggroup)
bpstat bpstat_find_breakpoint(bpstat bsp, struct breakpoint *breakpoint)
#define ALL_NON_EXITED_THREADS(T)
struct dummy_frame_context_saver * dummy_frame_context_saver_setup(struct frame_id dummy_id, ptid_t ptid)
void target_pre_inferior(int from_tty)
void proceed(CORE_ADDR addr, enum gdb_signal siggnal)
struct cleanup * make_cleanup_ui_file_delete(struct ui_file *arg)
#define SYMBOL_BLOCK_VALUE(symbol)
#define TYPE_CODE(thistype)
void set_step_info(struct frame_info *frame, struct symtab_and_line sal)
struct value * value_of_register(int regnum, struct frame_info *frame)
void clear_proceed_status(int step)
CORE_ADDR regcache_read_pc(struct regcache *regcache)
struct minimal_symbol * minsym
struct cleanup * make_cleanup_restore_current_thread(void)
void solib_create_inferior_hook(int from_tty)
struct program_space * pspace
void get_user_print_options(struct value_print_options *opts)
void clear_breakpoint_hit_counts(void)
static void ensure_not_tfind_mode(void)
int(* to_can_async_p)(struct target_ops *) TARGET_DEFAULT_RETURN(0)
void(* to_create_inferior)(struct target_ops *, char *, char *, char **, int)
void set_stop_requested(ptid_t ptid, int stop)
struct thread_suspend_state suspend
void add_setshow_filename_cmd(const char *name, enum command_class theclass, char **var, const char *set_doc, const char *show_doc, const char *help_doc, cmd_sfunc_ftype *set_func, show_value_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list)
#define CHECK_TYPEDEF(TYPE)
struct cleanup * make_cleanup_regcache_xfree(struct regcache *regcache)
struct target_ops * find_run_target(void)
void add_intermediate_continuation(struct thread_info *thread, continuation_ftype *hook, void *args, continuation_free_arg_ftype *free_arg)
int record_latest_value(struct value *val)
struct inferior * current_inferior(void)
struct cmd_list_element * add_info_alias(const char *name, const char *oldname, int abbrev_flag)
int is_exited(ptid_t ptid)
static void until_next_command(int)
struct program_space * current_program_space
char * get_exec_file(int err)
struct breakpoint * breakpoint
int value_embedded_offset(struct value *value)
char * savestring(const char *ptr, size_t len)
static void info_proc_cmd_exe(char *args, int from_tty)
int pid_to_thread_id(ptid_t ptid)
void disconnect_tracing(void)
int(* to_supports_non_stop)(struct target_ops *) TARGET_DEFAULT_RETURN(0)
struct type * value_type(const struct value *value)
static void disconnect_command(char *, int)
const char * gdb_signal_to_string(enum gdb_signal)
char * construct_inferior_arguments(int argc, char **argv)
#define target_attach_no_wait
void target_disconnect(const char *args, int from_tty)
#define SYMBOL_TYPE(symbol)
static void finish_command(char *, int)
struct target_ops * find_attach_target(void)
void dummy_frame_context_saver_drop(struct dummy_frame_context_saver *saver)
void ui_out_field_string(struct ui_out *uiout, const char *fldname, const char *string)
struct symtab_and_line * sals
void dummy_frame_context_saver_cleanup(void *data)
void wait_for_inferior(void)
gdb_byte * value_contents_raw(struct value *value)
static void next_command(char *, int)
struct symtabs_and_lines decode_line_with_last_displayed(char *string, int flags)
struct reggroup * reggroup_next(struct gdbarch *gdbarch, struct reggroup *last)
enum step_over_calls_kind step_over_calls
#define TYPE_LENGTH(thistype)
enum stop_stack_kind stop_stack_dummy
static void info_proc_cmd(char *args, int from_tty)
void(* to_attach)(struct target_ops *ops, const char *, int)
struct cmd_list_element * killlist
int gdbarch_info_proc_p(struct gdbarch *gdbarch)
struct ui_out * current_uiout
void resolve_sal_pc(struct symtab_and_line *sal)
int is_running(ptid_t ptid)
char * type_to_string(struct type *type)
void target_find_description(void)
struct value * value_of_user_reg(int regnum, struct frame_info *frame)
void add_inferior_continuation(continuation_ftype *hook, void *args, continuation_free_arg_ftype *free_arg)
void(* deprecated_attach_hook)(void)
static void unset_environment_command(char *, int)
void insert_step_resume_breakpoint_at_sal(struct gdbarch *gdbarch, struct symtab_and_line sr_sal, struct frame_id sr_id)
static void stepi_command(char *count_string, int from_tty)
void query_if_trace_running(int from_tty)
static void program_info(char *, int)
static void show_inferior_tty_command(struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
static void print_vector_info(struct ui_file *file, struct frame_info *frame, const char *args)
void delete_breakpoint(struct breakpoint *bpt)
struct program_space * get_frame_program_space(struct frame_info *frame)
static void run_command(char *, int)
void val_print(struct type *type, const gdb_byte *valaddr, int embedded_offset, CORE_ADDR address, struct ui_file *stream, int recurse, const struct value *val, const struct value_print_options *options, const struct language_defn *language)
void error(const char *fmt,...)
struct cmd_list_element * add_com(const char *name, enum command_class theclass, cmd_cfunc_ftype *fun, const char *doc)
mach_port_t mach_port_t name mach_port_t mach_port_t name error_t int int rusage_t pid_t pid
static void info_proc_cmd_cmdline(char *args, int from_tty)
void prepare_execution_command(struct target_ops *target, int background)
struct gdbarch * get_frame_arch(struct frame_info *this_frame)
void do_all_continuations(int err)
const char * reggroup_name(struct reggroup *group)
static void info_proc_cmd_status(char *args, int from_tty)
void do_cleanups(struct cleanup *old_chain)
int is_executing(ptid_t ptid)
static void nexti_command(char *count_string, int from_tty)
void default_print_float_info(struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, const char *args)
int find_pc_line_pc_range(CORE_ADDR pc, CORE_ADDR *startptr, CORE_ADDR *endptr)
void step_into_inline_frame(ptid_t ptid)
void init_thread_list(void)
void detach_command(char *args, int from_tty)
void add_continuation(struct thread_info *thread, continuation_ftype *hook, void *args, continuation_free_arg_ftype *free_arg)
static void kill_if_already_running(int from_tty)
void print_hex_chars(struct ui_file *stream, const gdb_byte *valaddr, unsigned len, enum bfd_endian byte_order)
LONGEST parse_and_eval_long(const char *exp)