51 #include "safe-ctype.h" 61 {
"all",
"scalars",
"none", NULL};
134 if (sal.
line != 0 && sal.
pc == 0 && sal.
end == 0)
194 int first,
struct ui_file *stream)
202 for (i = 0; i < num; i++)
214 start +=
sizeof (int);
228 const char *error_message = NULL;
250 DMGL_PARAMS | DMGL_ANSI);
264 error_message = arg->
error;
298 error_message = except.message;
302 if (error_message != NULL)
303 stb.
printf (
_(
"<error reading variable: %s>"), error_message);
327 argp->
error = xstrdup (except.message);
340 struct value *val = NULL, *entryval = NULL;
341 char *val_error = NULL, *entryval_error = NULL;
353 val_error = (
char *) alloca (strlen (except.message) + 1);
354 strcpy (val_error, except.message);
376 entryval_error = (
char *) alloca (strlen (except.message) + 1);
377 strcpy (entryval_error, except.message);
402 struct value *val_deref = NULL, *entryval_deref;
410 struct type *type_deref;
435 else if (except.message != NULL)
437 entryval_error = (
char *) alloca (strlen (except.message) + 1);
438 strcpy (entryval_error, except.message);
444 if (val == val_deref)
455 if (val_error && entryval_error
456 && strcmp (val_error, entryval_error) == 0)
458 entryval_error = NULL;
467 if (entryval == NULL)
479 val_error = (
char *) alloca (strlen (except.message) + 1);
480 strcpy (val_error, except.message);
490 entryval_error = NULL;
504 argp->
error = val_error ? xstrdup (val_error) : NULL;
505 if (!val && !val_error)
516 entryargp->
sym = sym;
517 entryargp->
val = entryval;
518 entryargp->
error = entryval_error ? xstrdup (entryval_error) : NULL;
519 if (!entryval && !entryval_error)
536 int num,
struct ui_file *stream)
543 long highest_offset = -1;
545 int args_printed = 0;
578 ((current_offset + arg_size +
sizeof (int) - 1)
579 & ~(
sizeof (int) - 1));
583 if (highest_offset == -1
584 || (current_offset > highest_offset))
585 highest_offset = current_offset;
589 args_printed += (arg_size +
sizeof (int) - 1) /
sizeof (int);
673 memset (&arg, 0,
sizeof (arg));
676 memset (&entryarg, 0,
sizeof (entryarg));
710 if (highest_offset == -1)
713 start = highest_offset;
746 _(
"Debugger's willingness to use " 747 "disassemble-next-line is %s.\n"),
823 uiout->
field_string (
"func",
"<function called from gdb>");
828 uiout->
field_string (
"func",
"<signal handler called>");
832 uiout->
field_string (
"func",
"<cross-architecture call>");
859 if (location_print || !sal.
symtab)
868 && source_print && !sal.
symtab)
872 if (source_print && sal.
symtab)
946 if (valid && pspace == NULL)
950 _(
"Trying to set NULL pspace."));
1078 memset (&msymbol, 0,
sizeof (msymbol));
1080 if (msymbol.
minsym != NULL
1109 if (funname == NULL)
1110 funname.reset (xstrdup (print_name));
1122 if (msymbol.
minsym != NULL)
1174 uiout->
text (
" in ");
1180 funlang, DMGL_ANSI);
1218 const char *filename_display;
1223 uiout->
text (
" at ");
1239 if (pc_p && (funname == NULL || sal.
symtab == NULL))
1248 uiout->
text (
" from ");
1267 struct value *args[4];
1270 if (frame_exp == NULL)
1286 *p && !ISSPACE (*p);
1288 std::string addr_string (frame_exp, p - frame_exp);
1297 if (numargs >= ARRAY_SIZE (args))
1298 error (
_(
"Too many args in frame specification"));
1306 if (selected_frame_p != NULL)
1307 (*selected_frame_p) = 1;
1312 if (selected_frame_p != NULL)
1313 (*selected_frame_p) = 0;
1332 for (i = 0; i < numargs; i++)
1373 else if (numargs == 2)
1376 error (
_(
"Too many args in frame specification"));
1390 const char *funname = 0;
1392 const char *pc_regname;
1393 int selected_frame_p;
1399 int caller_pc_p = 0;
1437 funname = func_only.get ();
1440 else if (frame_pc_p)
1445 if (msymbol.minsym != NULL)
1475 DMGL_ANSI | DMGL_PARAMS);
1516 if (calling_frame_info == NULL)
1521 if (reason != UNWIND_NO_REASON)
1577 else if (numargs == 1)
1627 sp_size, byte_order);
1657 for (i = 0; i < numregs; i++)
1670 &
lval, &addr, &realnum, NULL);
1686 if (count || need_nl)
1702 int trailing_level, py_start = 0, py_end = 0;
1726 while (current && count--)
1798 for (i = 0, fi = trailing; fi && count--; i++, fi =
get_prev_frame (fi))
1819 warning (
_(
"Unable to restore previously selected frame."));
1834 if (fi == NULL && trailing != NULL)
1839 if (reason >= UNWIND_FIRST_ERROR)
1849 int fulltrace_arg = -1, arglen = 0, argc = 0, no_filters = -1;
1861 for (i = 0;
argv[i]; i++)
1865 for (j = 0; j < strlen (
argv[i]); j++)
1873 fulltrace_arg = argc;
1877 arglen += strlen (
argv[i]);
1883 if (fulltrace_arg >= 0 || no_filters >= 0)
1887 for (i = 0; i < argc; i++)
1889 if (i != fulltrace_arg && i != no_filters)
1891 reconstructed_arg +=
argv[i];
1892 reconstructed_arg +=
" ";
1895 arg = reconstructed_arg.c_str ();
1903 no_filters >= 0 , from_tty);
1952 int *have_default,
struct ui_file *stream)
1956 int values_printed = 0;
1975 if (opts.addressprint)
1982 sal.symtab->filename, sal.line);
1986 return values_printed;
2035 warning (
_(
"Unable to restore previously selected frame."));
2044 p->values_printed = 1;
2064 _(
"PC unavailable, cannot determine locals.\n"));
2126 struct symbol *sym, *sym2;
2215 const struct block *
2238 while (*level_offset_ptr > 0)
2244 (*level_offset_ptr)--;
2249 while (*level_offset_ptr < 0)
2255 (*level_offset_ptr)++;
2308 if (count != 0 && count_exp == NULL)
2309 error (
_(
"Initial frame selected; you cannot go up."));
2339 if (count != 0 && count_exp == NULL)
2346 error (
_(
"Bottom (innermost) frame selected; you cannot go down."));
2373 struct value *return_value = NULL;
2374 struct value *
function = NULL;
2375 const char *query_prefix =
"";
2382 error (
_(
"Can not force return from an inlined function."));
2391 struct type *return_type = NULL;
2399 if (thisfun != NULL)
2401 if (return_type == NULL)
2403 if (retval_expr->elts[0].opcode != UNOP_CAST
2404 && retval_expr->elts[0].opcode != UNOP_CAST_TYPE)
2405 error (
_(
"Return value type not available for selected " 2407 "Please use an explicit cast of the value to return."));
2411 return_value =
value_cast (return_type, return_value);
2418 if (thisfun != NULL)
2428 return_value = NULL;
2429 else if (thisfun != NULL)
2435 query_prefix =
"The location at which to store the " 2436 "function's return value is unknown.\n" 2437 "If you continue, the return value " 2438 "that you specified will be ignored.\n";
2439 return_value = NULL;
2451 if (thisfun == NULL)
2452 confirmed =
query (
_(
"%sMake selected stack frame return now? "),
2457 warning (
_(
"Function does not return normally to caller."));
2458 confirmed =
query (
_(
"%sMake %s return now? "), query_prefix,
2462 error (
_(
"Not confirmed"));
2469 if (return_value != NULL)
2511 std::vector<symtab_and_line> sals
2514 for (
size_t i = 0; (i < sals.size () && !found); i++)
2517 func_bounds[i].low = func_bounds[i].high = 0;
2518 else if (sals[i].pc == 0
2520 &func_bounds[i].low,
2521 &func_bounds[i].high) == 0)
2523 func_bounds[i].low = func_bounds[i].high = 0;
2529 for (
size_t i = 0; (i < sals.size () && !found); i++)
2538 while (!found &&
level == 0);
2550 Make selected stack frame return to its caller.\n\ 2551 Control remains in the debugger, but when you continue\n\ 2552 execution will resume in the frame above the one now selected.\n\ 2553 If an argument is given, it is an expression for the value to return."));
2556 Select and print stack frame that called this one.\n\ 2557 An argument says how many frames up to go."));
2559 Same as the `up' command, but does not print anything.\n\ 2560 This is useful in command scripts."));
2563 Select and print stack frame called by this one.\n\ 2564 An argument says how many frames down to go."));
2568 Same as the `down' command, but does not print anything.\n\ 2569 This is useful in command scripts."));
2572 Select and print a stack frame.\nWith no argument, \ 2573 print the selected stack frame. (See also \"info frame\").\n\ 2574 An argument specifies the frame to select.\n\ 2575 It can be a stack frame number or the address of the frame.\n"));
2580 Select a stack frame without printing anything.\n\ 2581 An argument specifies the frame to select.\n\ 2582 It can be a stack frame number or the address of the frame.\n"),
2586 Print backtrace of all stack frames, or innermost COUNT frames.\n\ 2587 With a negative argument, print outermost -COUNT frames.\nUse of the \ 2588 'full' qualifier also prints the values of the local variables.\n\ 2589 Use of the 'no-filters' qualifier prohibits frame filters from executing\n\ 2590 on this backtrace.\n"));
2595 _(
"Backtrace of the stack, or innermost COUNT frames."));
2598 _(
"All about selected stack frame, or frame at ADDR."));
2601 _(
"Local variables of current stack frame."));
2603 _(
"Argument variables of current stack frame."));
2607 Select the stack frame that contains <func>.\n\ 2608 Usage: func <name>\n"));
2612 _(
"Set printing of non-scalar frame arguments"),
2613 _(
"Show printing of non-scalar frame arguments"),
2618 Set whether to print frame arguments in raw form."),
_(
"\ 2619 Show whether to print frame arguments in raw form."),
_(
"\ 2620 If set, frame arguments are printed in raw form, bypassing any\n\ 2621 pretty-printers for that value."),
2627 Set whether to disassemble next source line or insn when execution stops."),
2629 Show whether to disassemble next source line or insn when execution stops."),
2631 If ON, GDB will display disassembly of the next source line, in addition\n\ 2632 to displaying the source line itself. If the next source line cannot\n\ 2633 be displayed (e.g., source is unavailable or there's no line info), GDB\n\ 2634 will display disassembly of next instruction instead of showing the\n\ 2636 If AUTO, display disassembly of next instruction only if the source line\n\ 2637 cannot be displayed.\n\ 2638 If OFF (which is the default), never display the disassembly of the next\n\ 2647 _(
"Set printing of function arguments at function " 2649 _(
"Show printing of function arguments at function " 2652 GDB can sometimes determine the values of function arguments at entry,\n\ 2653 in addition to their current values. This option tells GDB whether\n\ 2654 to print the current value, the value at entry (marked as val@entry),\n\ 2655 or both. Note that one or both of these values may be <optimized out>."),
int frame_id_p(struct frame_id l)
struct frame_info * frame_find_by_id(struct frame_id id)
CORE_ADDR get_last_displayed_addr(void)
int get_frame_address_in_block_if_available(struct frame_info *this_frame, CORE_ADDR *pc)
struct block_symbol lookup_symbol_search_name(const char *search_name, const struct block *block, domain_enum domain)
void annotate_frame_function_name(void)
symtab_and_line get_last_displayed_sal()
static void show_disassemble_next_line(struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
const char * symtab_to_filename_for_display(struct symtab *symtab)
void fprintf_symbol_filtered(struct ui_file *stream, const char *name, enum language lang, int arg_mode)
void(* iterate_over_block_arg_local_vars_cb)(const char *print_name, struct symbol *sym, void *cb_data)
CORE_ADDR get_frame_address_in_block(struct frame_info *this_frame)
void annotate_frame_source_file_end(void)
static void down_silently_base(const char *count_exp)
struct frame_info * get_selected_frame(const char *message)
void read_frame_arg(struct symbol *sym, struct frame_info *frame, struct frame_arg *argp, struct frame_arg *entryargp)
void field_core_addr(const char *fldname, struct gdbarch *gdbarch, CORE_ADDR address)
CORE_ADDR get_frame_pc(struct frame_info *frame)
#define SYMBOL_PRINT_NAME(symbol)
static const char * print_frame_arguments
#define MSYMBOL_LANGUAGE(symbol)
struct frame_info * get_current_frame(void)
void field_string(const char *fldname, const char *string)
gdb::unique_xmalloc_ptr< expression > expression_up
static void iterate_over_block_locals(const struct block *b, iterate_over_block_arg_local_vars_cb cb, void *cb_data)
void add_setshow_auto_boolean_cmd(const char *name, enum command_class theclass, enum auto_boolean *var, const char *set_doc, const char *show_doc, const char *help_doc, cmd_const_sfunc_ftype *set_func, show_value_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list)
struct frame_info * get_prev_frame(struct frame_info *this_frame)
LONGEST value_as_long(struct value *val)
void frame_pop(struct frame_info *this_frame)
CORE_ADDR frame_unwind_caller_pc(struct frame_info *this_frame)
#define BMSYMBOL_VALUE_ADDRESS(symbol)
static void print_frame_args(struct symbol *func, struct frame_info *frame, int num, struct ui_file *stream)
void warning(const char *fmt,...)
void void wrap_hint(const char *identstring)
void annotate_signal_handler_caller(void)
int query(const char *ctlstr,...)
const char * frame_stop_reason_string(struct frame_info *fi)
std::vector< T, gdb::default_init_allocator< T > > def_vector
void val_print_unavailable(struct ui_file *stream)
void common_val_print(struct value *val, struct ui_file *stream, int recurse, const struct value_print_options *options, const struct language_defn *language)
struct cmd_list_element * add_info(const char *name, cmd_const_cfunc_ftype *fun, const char *doc)
static const char *const print_entry_values_choices[]
void select_frame(struct frame_info *fi)
#define SYMBOL_CLASS(symbol)
void * memset(T *s, int c, size_t n)=delete
void internal_error(const char *file, int line, const char *fmt,...)
const struct language_defn * language_def(enum language lang)
int get_frame_pc_if_available(struct frame_info *frame, CORE_ADDR *pc)
int identify_source_line(struct symtab *s, int line, int mid_statement, CORE_ADDR pc)
static enum auto_boolean disassemble_next_line
void add_setshow_enum_cmd(const char *name, enum command_class theclass, const char *const *enumlist, const char **var, const char *set_doc, const char *show_doc, const char *help_doc, cmd_const_sfunc_ftype *set_func, show_value_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list)
void observer_notify_user_selected_context_changed(user_selected_what selection)
const struct gdb_exception exception_none
const char print_entry_values_only[]
int value_lazy(const struct value *value)
struct value * coerce_ref(struct value *arg)
void value_free(struct value *val)
void read_frame_local(struct symbol *sym, struct frame_info *frame, struct frame_arg *argp)
#define TYPE_NO_RETURN(thistype)
void(* deprecated_print_frame_info_listing_hook)(struct symtab *s, int line, int stopline, int noerror)
void get_no_prettyformat_print_options(struct value_print_options *opts)
int gdbarch_num_regs(struct gdbarch *gdbarch)
void print_variable_and_value(const char *name, struct symbol *var, struct frame_info *frame, struct ui_file *stream, int indent)
char * skip_spaces(char *chp)
struct reggroup *const all_reggroup
void print_stack_frame_to_uiout(struct ui_out *uiout, struct frame_info *frame, int print_level, enum print_what print_what, int set_current_sal)
void select_frame_command(const char *level_exp, int from_tty)
void annotate_arg_value(struct type *type)
struct program_space * pspace
static int print_raw_frame_arguments
void text(const char *string)
CORE_ADDR get_frame_locals_address(struct frame_info *fi)
struct regcache * get_current_regcache(void)
void printf_filtered(const char *format,...)
const char * paddress(struct gdbarch *gdbarch, CORE_ADDR addr)
#define BLOCK_FUNCTION(bl)
struct cmd_list_element * showprintrawlist
const char * symtab_to_fullname(struct symtab *s)
int user_selected_context
static void frame_command(const char *level_exp, int from_tty)
scoped_restore_tmpl< T > make_scoped_restore(T *var)
static void print_frame_local_vars(struct frame_info *, int, struct ui_file *)
void info_args_command(const char *ignore, int from_tty)
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
int gdbarch_num_pseudo_regs(struct gdbarch *gdbarch)
struct value * evaluate_expression(struct expression *exp)
#define MSYMBOL_PRINT_NAME(symbol)
int frame_id_eq(struct frame_id l, struct frame_id r)
struct cmd_list_element * setlist
static void print_frame_arg_vars(struct frame_info *frame, struct ui_file *stream)
void annotate_frame_address(void)
bool value_contents_eq(const struct value *val1, LONGEST offset1, const struct value *val2, LONGEST offset2, LONGEST length)
enum frame_type get_frame_type(struct frame_info *frame)
struct cmd_list_element * add_com_suppress_notification(const char *name, enum command_class theclass, cmd_const_cfunc_ftype *fun, const char *doc, int *suppress_notification)
void annotate_frame_args(void)
void annotate_frame_source_file(void)
struct frame_id get_frame_id(struct frame_info *fi)
struct type * check_typedef(struct type *type)
LONGEST read_memory_integer(CORE_ADDR memaddr, int len, enum bfd_endian byte_order)
#define SYMBOL_VALUE_ADDRESS(symbol)
const gdb_byte * value_contents(struct value *value)
#define CATCH(EXCEPTION, MASK)
std::unique_ptr< T, xfree_deleter< T > > unique_xmalloc_ptr
void expand_symtab_containing_pc(CORE_ADDR pc, struct obj_section *section)
#define SYMBOL_DOMAIN(symbol)
struct symtab_and_line find_pc_line(CORE_ADDR pc, int notcurrent)
int gdbarch_sp_regnum(struct gdbarch *gdbarch)
int inline_skipped_frames(ptid_t ptid)
static CORE_ADDR last_displayed_addr
const char print_entry_values_if_needed[]
void print_selected_thread_frame(struct ui_out *uiout, user_selected_what selection)
enum unwind_stop_reason get_frame_unwind_stop_reason(struct frame_info *frame)
void fprintf_filtered(struct ui_file *stream, const char *format,...)
void annotate_frame_source_end(void)
struct value * read_var_value(struct symbol *var, const struct block *var_block, struct frame_info *frame)
void return_command(const char *retval_exp, int from_tty)
static ULONGEST extract_unsigned_integer(const gdb_byte *addr, int len, enum bfd_endian byte_order)
struct cmd_list_element * setprintrawlist
const struct block * get_frame_block(struct frame_info *frame, CORE_ADDR *addr_in_block)
const struct block * get_selected_block(CORE_ADDR *addr_in_block)
static void up_silently_base(const char *count_exp)
static void down_silently_command(const char *count_exp, int from_tty)
struct cmd_list_element * showlist
void exception_print(struct ui_file *file, struct gdb_exception e)
static void func_command(const char *arg, int from_tty)
struct cmd_list_element * add_com_alias(const char *name, const char *oldname, enum command_class theclass, int abbrev_flag)
const gdb_byte * value_contents_all(struct value *value)
void fputs_filtered(const char *linebuffer, struct ui_file *stream)
void puts_filtered(const char *string)
void print_frame_info(struct frame_info *frame, int print_level, enum print_what print_what, int print_args, int set_current_sal)
static void select_and_print_frame(struct frame_info *frame)
struct symbol * get_frame_function(struct frame_info *frame)
#define SYMBOL_COMPUTED_OPS(symbol)
enum bfd_endian gdbarch_byte_order(struct gdbarch *gdbarch)
struct frame_info * get_selected_frame_if_set(void)
void iterate_over_block_local_vars(const struct block *block, iterate_over_block_arg_local_vars_cb cb, void *cb_data)
char * solib_name_from_address(struct program_space *pspace, CORE_ADDR address)
const char * language_str(enum language lang)
int find_pc_partial_function(CORE_ADDR pc, const char **name, CORE_ADDR *address, CORE_ADDR *endaddr)
#define VALUE_REGNUM(val)
#define BLOCK_SUPERBLOCK(bl)
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)
struct program_space * get_last_displayed_pspace(void)
void field_stream(const char *fldname, string_file &stream)
struct frame_info * find_relative_frame(struct frame_info *frame, int *level_offset_ptr)
#define SYMBOL_LINKAGE_NAME(symbol)
const char * gdbarch_register_name(struct gdbarch *gdbarch, int regnr)
static int last_displayed_line
struct value * value_cast(struct type *type, struct value *arg2)
struct frame_info * create_new_frame(CORE_ADDR addr, CORE_ADDR pc)
static void print_frame_nameless_args(struct frame_info *frame, long start, int num, int first, struct ui_file *stream)
CORE_ADDR get_frame_args_address(struct frame_info *fi)
struct cmd_list_element * setprintlist
void info_locals_command(const char *args, int from_tty)
const char print_entry_values_preferred[]
enum return_value_convention struct_return_convention(struct gdbarch *gdbarch, struct value *function, struct type *value_type)
int get_last_displayed_line(void)
struct frame_id frame_unwind_caller_id(struct frame_info *next_frame)
static void print_frame_arg(const struct frame_arg *arg)
virtual void puts(const char *str)
void _initialize_stack(void)
struct value * frame_unwind_register_value(struct frame_info *frame, int regnum)
static struct program_space * last_displayed_pspace
#define SYMBOL_VALUE(symbol)
struct symtab * get_last_displayed_symtab(void)
symtab_and_line find_frame_sal(frame_info *frame)
CORE_ADDR gdbarch_frame_args_skip(struct gdbarch *gdbarch)
void wrap_here(const char *indent)
static int last_displayed_sal_valid
void annotate_frame_begin(int level, struct gdbarch *gdbarch, CORE_ADDR pc)
void printf(const char *,...) ATTRIBUTE_PRINTF(2
static void print_args(struct field *args, int nargs, int spaces)
void throw_exception(struct gdb_exception exception)
gdbarch_return_value_ftype * return_value
struct frame_info * get_next_frame(struct frame_info *this_frame)
int block_inlined_p(const struct block *bl)
int value_entirely_available(struct value *value)
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 struct frame_info * parse_frame_specification(const char *frame_exp, int *selected_frame_p)
const struct language_defn * current_language
int value_optimized_out(struct value *value)
struct obj_section * find_pc_mapped_section(CORE_ADDR pc)
int last_displayed_sal_is_valid(void)
#define TYPE_TARGET_TYPE(thistype)
void value_fetch_lazy(struct value *val)
void gdb_disassembly(struct gdbarch *gdbarch, struct ui_out *uiout, gdb_disassembly_flags flags, int how_many, CORE_ADDR low, CORE_ADDR high)
struct bound_minimal_symbol lookup_minimal_symbol_by_pc(CORE_ADDR pc)
int gdbarch_register_reggroup_p(struct gdbarch *gdbarch, int regnum, struct reggroup *reggroup)
void annotate_frame_end(void)
int frame_relative_level(struct frame_info *fi)
#define SYMBOL_BLOCK_VALUE(symbol)
#define TYPE_CODE(thistype)
CORE_ADDR get_frame_base(struct frame_info *fi)
void annotate_frame_source_begin(void)
static void up_command(const char *count_exp, int from_tty)
void field_int(const char *fldname, int value)
void annotate_frame_address_end(void)
enum ext_lang_bt_status apply_ext_lang_frame_filter(struct frame_info *frame, int flags, enum ext_lang_frame_args args_type, struct ui_out *out, int frame_low, int frame_high)
static struct symtab * last_displayed_symtab
void print_source_lines(struct symtab *s, int line, int stopline, print_source_lines_flags flags)
struct minimal_symbol * minsym
static void down_command(const char *count_exp, int from_tty)
std::vector< symtab_and_line > decode_line_with_current_source(const char *string, int flags)
struct program_space * pspace
void get_user_print_options(struct value_print_options *opts)
void add_setshow_boolean_cmd(const char *name, enum command_class theclass, int *var, const char *set_doc, const char *show_doc, const char *help_doc, cmd_const_sfunc_ftype *set_func, show_value_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list)
#define SYMBOL_LANGUAGE(symbol)
void annotate_frame_source_line(void)
gdb::unique_xmalloc_ptr< char > find_frame_funname(struct frame_info *frame, enum language *funlang, struct symbol **funcp)
struct cmd_list_element * showprintlist
const char print_entry_values_default[]
const char print_entry_values_no[]
static void backtrace_command(const char *arg, int from_tty)
void frame_register_unwind(struct frame_info *frame, int regnum, int *optimizedp, int *unavailablep, enum lval_type *lvalp, CORE_ADDR *addrp, int *realnump, gdb_byte *bufferp)
static const char *const print_frame_arguments_choices[]
struct cmd_list_element * add_info_alias(const char *name, const char *oldname, int abbrev_flag)
const char * print_entry_values
static void set_last_displayed_sal(int valid, struct program_space *pspace, CORE_ADDR addr, struct symtab *symtab, int line)
struct program_space * current_program_space
void annotate_frame_where(void)
static void backtrace_command_1(const char *count_exp, int show_locals, int no_filters, int from_tty)
struct value * parse_and_eval(const char *exp)
static int ignore(struct target_ops *ops, struct gdbarch *gdbarch, struct bp_target_info *bp_tgt)
struct value *(* read_variable_at_entry)(struct symbol *symbol, struct frame_info *frame)
#define SYMBOL_SEARCH_NAME(symbol)
expression_up parse_expression(const char *)
void release_value(struct value *val)
int register_size(struct gdbarch *gdbarch, int regnum)
static int frame_show_address(struct frame_info *frame, struct symtab_and_line sal)
void iterate_over_block_arg_vars(const struct block *b, iterate_over_block_arg_local_vars_cb cb, void *cb_data)
void annotate_function_call(void)
struct type * value_type(const struct value *value)
#define SYMBOL_TYPE(symbol)
void annotate_arg_name_end(void)
void field_fmt_int(int width, ui_align align, const char *fldname, int value)
int gdbarch_pc_regnum(struct gdbarch *gdbarch)
CORE_ADDR value_as_address(struct value *val)
struct frame_id frame_id_build_wild(CORE_ADDR stack_addr)
struct symtab_and_line set_current_source_symtab_and_line(const symtab_and_line &sal)
#define TYPE_LENGTH(thistype)
static void up_silently_command(const char *count_exp, int from_tty)
static void do_gdb_disassembly(struct gdbarch *gdbarch, int how_many, CORE_ADDR low, CORE_ADDR high)
void gdb_flush(struct ui_file *file)
struct value * allocate_optimized_out_value(struct type *type)
const char print_entry_values_compact[]
struct cmd_list_element * add_com(const char *name, enum command_class theclass, cmd_const_cfunc_ftype *fun, const char *doc)
CORE_ADDR value_address(const struct value *value)
enum bfd_endian byte_order
void set_current_sal_from_frame(struct frame_info *frame)
int has_stack_frames(void)
struct program_space * get_frame_program_space(struct frame_info *frame)
int gdbarch_frame_num_args_p(struct gdbarch *gdbarch)
void error(const char *fmt,...)
void print_stack_frame(struct frame_info *frame, int print_level, enum print_what print_what, int set_current_sal)
static void do_print_variable_and_value(const char *print_name, struct symbol *sym, void *cb_data)
#define ALL_BLOCK_SYMBOLS(block, iter, sym)
void val_print_not_saved(struct ui_file *stream)
struct gdbarch * get_frame_arch(struct frame_info *this_frame)
const char print_entry_values_both[]
int gdbarch_frame_num_args(struct gdbarch *gdbarch, struct frame_info *frame)
#define SYMBOL_IS_ARGUMENT(symbol)
enum return_reason reason
int subset_compare(const char *string_to_compare, const char *template_string)
static void info_frame_command(const char *addr_exp, int from_tty)
void clear_last_displayed_sal(void)
gdb::unique_xmalloc_ptr< char > cp_remove_params(const char *demangled_name)
LONGEST parse_and_eval_long(const char *exp)