GDB (xrefs)
|
#include "defs.h"
#include "symtab.h"
#include "symfile.h"
#include "gdbtypes.h"
#include "language.h"
#include "value.h"
#include "expression.h"
#include "command.h"
#include "gdbcmd.h"
#include "frame.h"
#include "target.h"
#include "ax.h"
#include "ax-gdb.h"
#include "block.h"
#include "regcache.h"
#include "user-regs.h"
#include "dictionary.h"
#include "breakpoint.h"
#include "tracepoint.h"
#include "cp-support.h"
#include "arch-utils.h"
#include "cli/cli-utils.h"
#include "linespec.h"
#include "objfiles.h"
#include "valprint.h"
#include "c-lang.h"
#include "format.h"
Go to the source code of this file.
Functions | |
static struct value * | const_var_ref (struct symbol *var) |
static struct value * | const_expr (union exp_element **pc) |
static struct value * | maybe_const_expr (union exp_element **pc) |
static void | gen_traced_pop (struct gdbarch *, struct agent_expr *, struct axs_value *) |
static void | gen_sign_extend (struct agent_expr *, struct type *) |
static void | gen_extend (struct agent_expr *, struct type *) |
static void | gen_fetch (struct agent_expr *, struct type *) |
static void | gen_left_shift (struct agent_expr *, int) |
static void | gen_frame_args_address (struct gdbarch *, struct agent_expr *) |
static void | gen_frame_locals_address (struct gdbarch *, struct agent_expr *) |
static void | gen_offset (struct agent_expr *ax, int offset) |
static void | gen_sym_offset (struct agent_expr *, struct symbol *) |
static void | gen_var_ref (struct gdbarch *, struct agent_expr *ax, struct axs_value *value, struct symbol *var) |
static void | gen_int_literal (struct agent_expr *ax, struct axs_value *value, LONGEST k, struct type *type) |
static void | gen_usual_unary (struct expression *exp, struct agent_expr *ax, struct axs_value *value) |
static int | type_wider_than (struct type *type1, struct type *type2) |
static struct type * | max_type (struct type *type1, struct type *type2) |
static void | gen_conversion (struct agent_expr *ax, struct type *from, struct type *to) |
static int | is_nontrivial_conversion (struct type *from, struct type *to) |
static void | gen_usual_arithmetic (struct expression *exp, struct agent_expr *ax, struct axs_value *value1, struct axs_value *value2) |
static void | gen_integral_promotions (struct expression *exp, struct agent_expr *ax, struct axs_value *value) |
static void | gen_cast (struct agent_expr *ax, struct axs_value *value, struct type *type) |
static void | gen_scale (struct agent_expr *ax, enum agent_op op, struct type *type) |
static void | gen_ptradd (struct agent_expr *ax, struct axs_value *value, struct axs_value *value1, struct axs_value *value2) |
static void | gen_ptrsub (struct agent_expr *ax, struct axs_value *value, struct axs_value *value1, struct axs_value *value2) |
static void | gen_ptrdiff (struct agent_expr *ax, struct axs_value *value, struct axs_value *value1, struct axs_value *value2, struct type *result_type) |
static void | gen_binop (struct agent_expr *ax, struct axs_value *value, struct axs_value *value1, struct axs_value *value2, enum agent_op op, enum agent_op op_unsigned, int may_carry, char *name) |
static void | gen_logical_not (struct agent_expr *ax, struct axs_value *value, struct type *result_type) |
static void | gen_complement (struct agent_expr *ax, struct axs_value *value) |
static void | gen_deref (struct agent_expr *, struct axs_value *) |
static void | gen_address_of (struct agent_expr *, struct axs_value *) |
static void | gen_bitfield_ref (struct expression *exp, struct agent_expr *ax, struct axs_value *value, struct type *type, int start, int end) |
static void | gen_primitive_field (struct expression *exp, struct agent_expr *ax, struct axs_value *value, int offset, int fieldno, struct type *type) |
static int | gen_struct_ref_recursive (struct expression *exp, struct agent_expr *ax, struct axs_value *value, char *field, int offset, struct type *type) |
static void | gen_struct_ref (struct expression *exp, struct agent_expr *ax, struct axs_value *value, char *field, char *operator_name, char *operand_name) |
static void | gen_static_field (struct gdbarch *gdbarch, struct agent_expr *ax, struct axs_value *value, struct type *type, int fieldno) |
static void | gen_repeat (struct expression *exp, union exp_element **pc, struct agent_expr *ax, struct axs_value *value) |
static void | gen_sizeof (struct expression *exp, union exp_element **pc, struct agent_expr *ax, struct axs_value *value, struct type *size_type) |
static void | gen_expr_binop_rest (struct expression *exp, enum exp_opcode op, union exp_element **pc, struct agent_expr *ax, struct axs_value *value, struct axs_value *value1, struct axs_value *value2) |
static void | agent_command (char *exp, int from_tty) |
static void | gen_trace_static_fields (struct gdbarch *gdbarch, struct agent_expr *ax, struct type *type) |
void | require_rvalue (struct agent_expr *ax, struct axs_value *value) |
static void | gen_equal (struct agent_expr *ax, struct axs_value *value, struct axs_value *value1, struct axs_value *value2, struct type *result_type) |
static void | gen_less (struct agent_expr *ax, struct axs_value *value, struct axs_value *value1, struct axs_value *value2, struct type *result_type) |
static int | gen_namespace_elt (struct expression *exp, struct agent_expr *ax, struct axs_value *value, const struct type *curtype, char *name) |
static int | gen_maybe_namespace_elt (struct expression *exp, struct agent_expr *ax, struct axs_value *value, const struct type *curtype, char *name) |
static int | gen_struct_elt_for_reference (struct expression *exp, struct agent_expr *ax, struct axs_value *value, struct type *type, char *fieldname) |
static int | gen_aggregate_elt_ref (struct expression *exp, struct agent_expr *ax, struct axs_value *value, struct type *type, char *field, char *operator_name, char *operand_name) |
void | gen_expr (struct expression *exp, union exp_element **pc, struct agent_expr *ax, struct axs_value *value) |
struct agent_expr * | gen_trace_for_var (CORE_ADDR scope, struct gdbarch *gdbarch, struct symbol *var, int trace_string) |
struct agent_expr * | gen_trace_for_expr (CORE_ADDR scope, struct expression *expr, int trace_string) |
struct agent_expr * | gen_eval_for_expr (CORE_ADDR scope, struct expression *expr) |
struct agent_expr * | gen_trace_for_return_address (CORE_ADDR scope, struct gdbarch *gdbarch, int trace_string) |
struct agent_expr * | gen_printf (CORE_ADDR scope, struct gdbarch *gdbarch, CORE_ADDR function, LONGEST channel, const char *format, int fmtlen, struct format_piece *frags, int nargs, struct expression **exprs) |
static void | agent_eval_command_one (const char *exp, int eval, CORE_ADDR pc) |
static void | agent_command_1 (char *exp, int eval) |
static void | agent_eval_command (char *exp, int from_tty) |
static void | maint_agent_printf_command (char *exp, int from_tty) |
void | _initialize_ax_gdb (void) |
void _initialize_ax_gdb | ( | void | ) |
Definition at line 2777 of file ax-gdb.c.
References _, add_cmd(), agent_command(), agent_eval_command(), class_maintenance, maint_agent_printf_command(), and maintenancelist.
|
static |
Definition at line 2674 of file ax-gdb.c.
References agent_command_1().
Referenced by _initialize_ax_gdb().
|
static |
Definition at line 2627 of file ax-gdb.c.
References _, agent_eval_command_one(), check_for_argument(), decode_line_full(), DECODE_LINE_FUNFIRSTLINE, do_cleanups(), dont_repeat(), error(), error_no_arg(), get_current_frame(), get_frame_pc(), init_linespec_result(), make_cleanup_destroy_linespec_result(), symtabs_and_lines::nelts, overlay_debugging, symtab_and_line::pc, linespec_sals::sals, symtabs_and_lines::sals, skip_spaces(), and VEC_iterate.
Referenced by agent_command(), and agent_eval_command().
|
static |
Definition at line 2684 of file ax-gdb.c.
References agent_command_1().
Referenced by _initialize_ax_gdb().
Definition at line 2581 of file ax-gdb.c.
References ax_print(), ax_reqs(), block_for_pc(), decode_agent_options(), do_cleanups(), dont_repeat(), free_current_contents(), gdb_assert, gdb_stdout, gen_eval_for_expr(), gen_trace_for_expr(), gen_trace_for_return_address(), get_current_arch(), make_cleanup(), make_cleanup_free_agent_expr(), parse_exp_1(), and agent_expr::trace_string.
Referenced by agent_command_1().
|
static |
Definition at line 214 of file ax-gdb.c.
References const_var_ref(), value_from_longest(), and value_neg().
Referenced by gen_repeat(), and maybe_const_expr().
Definition at line 191 of file ax-gdb.c.
References LOC_CONST, LOC_LABEL, SYMBOL_CLASS, SYMBOL_TYPE, SYMBOL_VALUE, SYMBOL_VALUE_ADDRESS, value_from_longest(), and value_from_pointer().
Referenced by const_expr().
|
static |
Definition at line 1219 of file ax-gdb.c.
References _, axs_lvalue_memory, axs_lvalue_register, axs_rvalue, error(), axs_value::kind, lookup_pointer_type(), axs_value::type, TYPE_CODE, and TYPE_CODE_FUNC.
Referenced by gen_expr().
|
static |
Definition at line 1670 of file ax-gdb.c.
References _, gen_namespace_elt(), gen_struct_elt_for_reference(), internal_error(), TYPE_CODE, TYPE_CODE_NAMESPACE, TYPE_CODE_STRUCT, and TYPE_CODE_UNION.
Referenced by gen_expr().
|
static |
Definition at line 1148 of file ax-gdb.c.
References _, ax_simple(), axs_rvalue, error(), gen_extend(), axs_value::kind, axs_value::type, TYPE_CODE, TYPE_CODE_INT, and TYPE_UNSIGNED.
Referenced by gen_equal(), gen_expr(), gen_expr_binop_rest(), and gen_less().
|
static |
Definition at line 1249 of file ax-gdb.c.
References _, ax_ext(), ax_simple(), ax_trace_quick(), ax_zero_ext(), axs_rvalue, check_typedef(), expression::gdbarch, gdbarch_byte_order(), gen_left_shift(), gen_offset(), internal_error(), axs_value::kind, offset, TARGET_CHAR_BIT, agent_expr::tracing, axs_value::type, type, and TYPE_UNSIGNED.
Referenced by gen_primitive_field().
|
static |
Definition at line 992 of file ax-gdb.c.
References _, check_typedef(), error(), gen_conversion(), require_rvalue(), axs_value::type, type, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_BOOL, TYPE_CODE_ENUM, TYPE_CODE_FUNC, TYPE_CODE_INT, TYPE_CODE_PTR, TYPE_CODE_REF, TYPE_CODE_STRUCT, TYPE_CODE_UNION, and TYPE_CODE_VOID.
Referenced by gen_expr().
|
static |
Definition at line 1181 of file ax-gdb.c.
References _, ax_simple(), error(), gen_extend(), axs_value::type, TYPE_CODE, and TYPE_CODE_INT.
Referenced by gen_expr().
|
static |
Definition at line 881 of file ax-gdb.c.
References gen_extend(), TYPE_LENGTH, and TYPE_UNSIGNED.
Referenced by gen_cast(), gen_integral_promotions(), gen_usual_arithmetic(), and is_nontrivial_conversion().
|
static |
Definition at line 1196 of file ax-gdb.c.
References _, axs_lvalue_memory, axs_rvalue, check_typedef(), error(), internal_error(), axs_value::kind, pointer_type(), axs_value::type, TYPE_CODE, TYPE_CODE_FUNC, TYPE_CODE_VOID, and TYPE_TARGET_TYPE.
Referenced by gen_expr(), gen_expr_binop_rest(), and gen_struct_ref().
|
static |
Definition at line 1114 of file ax-gdb.c.
References ax_simple(), axs_rvalue, gen_binop(), axs_value::kind, pointer_type(), and axs_value::type.
Referenced by gen_expr_binop_rest().
struct agent_expr* gen_eval_for_expr | ( | CORE_ADDR | scope, |
struct expression * | expr | ||
) |
Definition at line 2474 of file ax-gdb.c.
References ax_simple(), discard_cleanups(), expression::elts, expression::gdbarch, gen_expr(), make_cleanup_free_agent_expr(), new_agent_expr(), axs_value::optimized_out, require_rvalue(), and agent_expr::tracing.
Referenced by agent_eval_command_one(), encode_actions_1(), parse_cond_to_aexpr(), remote_download_tracepoint(), and validate_actionline().
void gen_expr | ( | struct expression * | exp, |
union exp_element ** | pc, | ||
struct agent_expr * | ax, | ||
struct axs_value * | value | ||
) |
Definition at line 1776 of file ax-gdb.c.
References _, ax_const_l(), ax_goto(), ax_label(), ax_tsv(), axs_lvalue_memory, axs_lvalue_register, axs_rvalue, block_for_pc(), block_linkage_function(), builtin_type::builtin_int, builtin_type::builtin_long_long, builtin_type(), BYTES_TO_EXP_ELEM, check_typedef(), compile_internalvar_to_ax(), expression::elts, error(), EVAL_AVOID_SIDE_EFFECTS, evaluate_subexp(), find_trace_state_variable(), func, expression::gdbarch, gdbarch_num_pseudo_regs(), gdbarch_num_regs(), gen_address_of(), gen_aggregate_elt_ref(), gen_binop(), gen_cast(), gen_complement(), gen_deref(), gen_expr(), gen_expr_binop_rest(), gen_int_literal(), gen_integral_promotions(), gen_logical_not(), gen_repeat(), gen_sizeof(), gen_struct_ref(), gen_traced_pop(), gen_usual_arithmetic(), gen_usual_unary(), gen_var_ref(), internal_error(), internalvar_name(), axs_value::kind, language_defn::la_name_of_this, language_def(), agent_expr::len, type::length, longest_to_int(), lookup_language_this(), maybe_const_expr(), name, trace_state_variable::number, offset, op_name(), axs_value::optimized_out, pointer_type(), axs_value::reg, register_type(), require_rvalue(), agent_expr::scope, SYMBOL_LANGUAGE, SYMBOL_PRINT_NAME, agent_expr::tracing, axs_value::type, type, axs_value::u, user_reg_map_name_to_regnum(), value_as_long(), and value_type().
Referenced by dtrace_compile_to_ax(), gen_eval_for_expr(), gen_expr(), gen_expr_binop_rest(), gen_printf(), gen_repeat(), gen_sizeof(), gen_trace_for_expr(), and stap_compile_to_ax().
|
static |
Definition at line 2242 of file ax-gdb.c.
References _, ax_simple(), binop_types_user_defined_p(), builtin_type::builtin_int, builtin_type::builtin_long, builtin_type(), check_typedef(), error(), expression::gdbarch, gen_binop(), gen_deref(), gen_equal(), gen_expr(), gen_less(), gen_logical_not(), gen_ptradd(), gen_ptrdiff(), gen_ptrsub(), gen_usual_arithmetic(), gen_usual_unary(), internal_error(), is_integral_type(), pointer_type(), axs_value::type, type, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_INT, TYPE_CODE_PTR, and TYPE_NAME.
Referenced by gen_expr().
|
static |
Definition at line 466 of file ax-gdb.c.
References ax_ext(), ax_zero_ext(), bits, TARGET_CHAR_BIT, TYPE_LENGTH, and TYPE_UNSIGNED.
Referenced by gen_binop(), gen_complement(), gen_conversion(), gen_ptradd(), gen_ptrsub(), and require_rvalue().
|
static |
Definition at line 479 of file ax-gdb.c.
References _, ax_simple(), ax_trace_quick(), error(), gen_sign_extend(), internal_error(), TARGET_CHAR_BIT, agent_expr::tracing, TYPE_CODE, TYPE_CODE_BOOL, TYPE_CODE_CHAR, TYPE_CODE_ENUM, TYPE_CODE_INT, TYPE_CODE_PTR, TYPE_CODE_RANGE, TYPE_CODE_REF, TYPE_LENGTH, TYPE_NAME, and TYPE_TARGET_TYPE.
Referenced by gen_var_ref(), and require_rvalue().
|
static |
Definition at line 562 of file ax-gdb.c.
References ax_reg(), gdbarch_virtual_frame_pointer(), gen_offset(), and agent_expr::scope.
Referenced by gen_var_ref().
|
static |
Definition at line 577 of file ax-gdb.c.
References ax_reg(), gdbarch_virtual_frame_pointer(), gen_offset(), and agent_expr::scope.
Referenced by gen_var_ref().
|
static |
Definition at line 748 of file ax-gdb.c.
References ax_const_l(), axs_rvalue, check_typedef(), axs_value::kind, and axs_value::type.
Referenced by gen_expr().
|
static |
Definition at line 972 of file ax-gdb.c.
References builtin_type::builtin_int, builtin_type(), builtin_type::builtin_unsigned_int, expression::gdbarch, gen_conversion(), axs_value::type, and type_wider_than().
Referenced by gen_expr().
|
static |
Definition at line 541 of file ax-gdb.c.
References ax_const_l(), and ax_simple().
Referenced by gen_bitfield_ref().
|
static |
Definition at line 1128 of file ax-gdb.c.
References ax_simple(), axs_rvalue, gen_binop(), axs_value::kind, pointer_type(), and axs_value::type.
Referenced by gen_expr_binop_rest().
|
static |
Definition at line 1168 of file ax-gdb.c.
References _, ax_simple(), error(), axs_value::type, TYPE_CODE, TYPE_CODE_INT, and TYPE_CODE_PTR.
Referenced by gen_expr(), and gen_expr_binop_rest().
|
static |
Definition at line 1645 of file ax-gdb.c.
References _, block_for_pc(), cp_lookup_symbol_namespace(), error(), expression::gdbarch, gen_var_ref(), namespace_name(), axs_value::optimized_out, agent_expr::scope, SYMBOL_PRINT_NAME, TYPE_TAG_NAME, and VAR_DOMAIN.
Referenced by gen_namespace_elt(), and gen_struct_elt_for_reference().
|
static |
Definition at line 1625 of file ax-gdb.c.
References _, error(), gen_maybe_namespace_elt(), and TYPE_TAG_NAME.
Referenced by gen_aggregate_elt_ref().
|
static |
Definition at line 595 of file ax-gdb.c.
References ax_const_l(), and ax_simple().
Referenced by gen_bitfield_ref(), gen_frame_args_address(), gen_frame_locals_address(), gen_primitive_field(), and gen_sym_offset().
|
static |
Definition at line 1409 of file ax-gdb.c.
References axs_lvalue_memory, gen_bitfield_ref(), gen_offset(), axs_value::kind, TARGET_CHAR_BIT, axs_value::type, TYPE_FIELD_BITPOS, TYPE_FIELD_BITSIZE, TYPE_FIELD_PACKED, and TYPE_FIELD_TYPE.
Referenced by gen_struct_ref_recursive().
struct agent_expr* gen_printf | ( | CORE_ADDR | scope, |
struct gdbarch * | gdbarch, | ||
CORE_ADDR | function, | ||
LONGEST | channel, | ||
const char * | format, | ||
int | fmtlen, | ||
struct format_piece * | frags, | ||
int | nargs, | ||
struct expression ** | exprs | ||
) |
Definition at line 2533 of file ax-gdb.c.
References ax_const_l(), ax_simple(), ax_string(), discard_cleanups(), expression::elts, gen_expr(), make_cleanup_free_agent_expr(), new_agent_expr(), axs_value::optimized_out, require_rvalue(), and agent_expr::tracing.
Referenced by maint_agent_printf_command(), and parse_cmd_to_aexpr().
|
static |
Definition at line 1062 of file ax-gdb.c.
References ax_simple(), axs_rvalue, gdb_assert, gen_extend(), gen_scale(), axs_value::kind, pointer_type(), axs_value::type, TYPE_CODE, and TYPE_CODE_INT.
Referenced by gen_expr_binop_rest().
|
static |
Definition at line 1094 of file ax-gdb.c.
References _, ax_simple(), axs_rvalue, error(), gdb_assert, gen_scale(), axs_value::kind, pointer_type(), axs_value::type, TYPE_LENGTH, and TYPE_TARGET_TYPE.
Referenced by gen_expr_binop_rest().
|
static |
Definition at line 1078 of file ax-gdb.c.
References ax_simple(), axs_rvalue, gdb_assert, gen_extend(), gen_scale(), axs_value::kind, pointer_type(), axs_value::type, TYPE_CODE, and TYPE_CODE_INT.
Referenced by gen_expr_binop_rest().
|
static |
Definition at line 1704 of file ax-gdb.c.
References _, axs_lvalue_memory, const_expr(), error(), gen_expr(), axs_value::kind, lookup_array_range_type(), axs_value::type, TYPE_CODE, TYPE_CODE_INT, value_as_long(), and value_type().
Referenced by gen_expr().
|
static |
Definition at line 1048 of file ax-gdb.c.
References ax_const_l(), ax_simple(), TYPE_LENGTH, and TYPE_TARGET_TYPE.
Referenced by gen_ptradd(), gen_ptrdiff(), and gen_ptrsub().
|
static |
Definition at line 454 of file ax-gdb.c.
References ax_ext(), TARGET_CHAR_BIT, TYPE_LENGTH, and TYPE_UNSIGNED.
Referenced by gen_fetch().
|
static |
Definition at line 1748 of file ax-gdb.c.
References ax_const_l(), axs_rvalue, gen_expr(), axs_value::kind, agent_expr::len, axs_value::type, and TYPE_LENGTH.
Referenced by gen_expr().
|
static |
Definition at line 1545 of file ax-gdb.c.
References ax_const_l(), axs_lvalue_memory, FIELD_LOC_KIND_PHYSADDR, gen_var_ref(), axs_value::kind, lookup_symbol(), axs_value::optimized_out, axs_value::type, TYPE_FIELD_LOC_KIND, TYPE_FIELD_STATIC_PHYSADDR, TYPE_FIELD_STATIC_PHYSNAME, TYPE_FIELD_TYPE, and VAR_DOMAIN.
Referenced by gen_struct_elt_for_reference(), gen_struct_ref_recursive(), and gen_trace_static_fields().
|
static |
Definition at line 1579 of file ax-gdb.c.
References _, error(), field_is_static(), expression::gdbarch, gen_maybe_namespace_elt(), gen_static_field(), internal_error(), axs_value::optimized_out, type, TYPE_CODE, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_FIELD, TYPE_FIELD_NAME, TYPE_FIELD_PACKED, TYPE_N_BASECLASSES, and TYPE_NFIELDS.
Referenced by gen_aggregate_elt_ref().
|
static |
Definition at line 1499 of file ax-gdb.c.
References _, axs_lvalue_memory, check_typedef(), error(), gen_deref(), gen_struct_ref_recursive(), axs_value::kind, pointer_type(), require_rvalue(), axs_value::type, type, TYPE_CODE, TYPE_CODE_STRUCT, TYPE_CODE_UNION, and TYPE_TAG_NAME.
Referenced by gen_expr().
|
static |
Definition at line 1434 of file ax-gdb.c.
References _, CHECK_TYPEDEF, check_typedef(), error(), field_is_static(), expression::gdbarch, gen_primitive_field(), gen_static_field(), internal_error(), axs_value::optimized_out, TARGET_CHAR_BIT, TYPE_BASECLASS, TYPE_BASECLASS_BITPOS, TYPE_FIELD, TYPE_FIELD_NAME, TYPE_N_BASECLASSES, and TYPE_NFIELDS.
Referenced by gen_struct_ref().
|
static |
Definition at line 617 of file ax-gdb.c.
References gen_offset(), and SYMBOL_VALUE.
Referenced by gen_var_ref().
struct agent_expr* gen_trace_for_expr | ( | CORE_ADDR | scope, |
struct expression * | expr, | ||
int | trace_string | ||
) |
Definition at line 2437 of file ax-gdb.c.
References ax_simple(), discard_cleanups(), expression::elts, expression::gdbarch, gen_expr(), gen_traced_pop(), make_cleanup_free_agent_expr(), new_agent_expr(), axs_value::optimized_out, agent_expr::trace_string, and agent_expr::tracing.
Referenced by agent_eval_command_one(), encode_actions_1(), and validate_actionline().
struct agent_expr* gen_trace_for_return_address | ( | CORE_ADDR | scope, |
struct gdbarch * | gdbarch, | ||
int | trace_string | ||
) |
Definition at line 2501 of file ax-gdb.c.
References ax_simple(), discard_cleanups(), gdbarch_gen_return_address(), gen_traced_pop(), make_cleanup_free_agent_expr(), new_agent_expr(), agent_expr::trace_string, and agent_expr::tracing.
Referenced by agent_eval_command_one(), and encode_actions_1().
struct agent_expr* gen_trace_for_var | ( | CORE_ADDR | scope, |
struct gdbarch * | gdbarch, | ||
struct symbol * | var, | ||
int | trace_string | ||
) |
Definition at line 2395 of file ax-gdb.c.
References ax_simple(), discard_cleanups(), do_cleanups(), gen_traced_pop(), gen_var_ref(), make_cleanup_free_agent_expr(), new_agent_expr(), axs_value::optimized_out, agent_expr::trace_string, and agent_expr::tracing.
Referenced by collect_symbol().
|
static |
Definition at line 318 of file ax-gdb.c.
References ax_const_l(), ax_reg_mask(), ax_simple(), axs_lvalue_memory, axs_lvalue_register, CHECK_TYPEDEF, check_typedef(), field_is_static(), gen_static_field(), axs_value::kind, axs_value::optimized_out, axs_value::reg, axs_value::type, TYPE_BASECLASS, TYPE_FIELD, TYPE_LENGTH, TYPE_N_BASECLASSES, TYPE_NFIELDS, and axs_value::u.
Referenced by gen_traced_pop().
|
static |
Definition at line 369 of file ax-gdb.c.
References ax_const_l(), ax_reg(), ax_reg_mask(), ax_simple(), axs_lvalue_memory, axs_lvalue_register, axs_rvalue, c_textual_element_type(), check_typedef(), gen_trace_static_fields(), axs_value::kind, axs_value::reg, agent_expr::trace_string, agent_expr::tracing, axs_value::type, TYPE_CODE, TYPE_CODE_PTR, TYPE_CODE_STRUCT, TYPE_CODE_UNION, TYPE_LENGTH, TYPE_TARGET_TYPE, and axs_value::u.
Referenced by gen_expr(), gen_trace_for_expr(), gen_trace_for_return_address(), and gen_trace_for_var().
|
static |
Definition at line 935 of file ax-gdb.c.
References ax_simple(), builtin_type::builtin_int, check_typedef(), expression::gdbarch, gen_conversion(), is_nontrivial_conversion(), max_type(), axs_value::type, TYPE_CODE, and TYPE_CODE_INT.
Referenced by gen_expr(), and gen_expr_binop_rest().
|
static |
Definition at line 818 of file ax-gdb.c.
References axs_rvalue, axs_value::kind, lookup_pointer_type(), require_rvalue(), axs_value::type, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_FUNC, TYPE_CODE_STRUCT, TYPE_CODE_UNION, and TYPE_TARGET_TYPE.
Referenced by gen_expr(), and gen_expr_binop_rest().
|
static |
Definition at line 627 of file ax-gdb.c.
References _, ax_const_l(), ax_reg(), axs_lvalue_memory, axs_lvalue_register, axs_rvalue, BLOCK_START, BMSYMBOL_VALUE_ADDRESS, check_typedef(), error(), gdb_assert_not_reached, gen_fetch(), gen_frame_args_address(), gen_frame_locals_address(), gen_sym_offset(), internal_error(), axs_value::kind, LOC_ARG, LOC_BLOCK, LOC_COMPUTED, LOC_CONST, LOC_CONST_BYTES, LOC_LABEL, LOC_LOCAL, LOC_OPTIMIZED_OUT, LOC_REF_ARG, LOC_REGISTER, LOC_REGPARM_ADDR, LOC_STATIC, LOC_TYPEDEF, LOC_UNRESOLVED, lookup_minimal_symbol(), bound_minimal_symbol::minsym, axs_value::optimized_out, axs_value::reg, SYMBOL_BLOCK_VALUE, SYMBOL_CLASS, SYMBOL_COMPUTED_OPS, SYMBOL_LINKAGE_NAME, SYMBOL_PRINT_NAME, SYMBOL_REGISTER_OPS, SYMBOL_TYPE, SYMBOL_VALUE, SYMBOL_VALUE_ADDRESS, axs_value::type, and axs_value::u.
Referenced by gen_expr(), gen_maybe_namespace_elt(), gen_static_field(), and gen_trace_for_var().
Definition at line 911 of file ax-gdb.c.
References free_agent_expr(), gen_conversion(), agent_expr::len, and new_agent_expr().
Referenced by gen_usual_arithmetic().
|
static |
Definition at line 2693 of file ax-gdb.c.
References _, ax_print(), ax_reqs(), do_cleanups(), dont_repeat(), error(), error_no_arg(), free_format_pieces_cleanup(), gdb_stdout, gen_printf(), get_current_arch(), get_current_frame(), get_frame_pc(), make_cleanup(), make_cleanup_free_agent_expr(), overlay_debugging, parse_exp_1(), parse_format_string(), and skip_spaces_const().
Referenced by _initialize_ax_gdb().
Definition at line 873 of file ax-gdb.c.
References type_wider_than().
Referenced by gen_usual_arithmetic().
|
static |
void require_rvalue | ( | struct agent_expr * | ax, |
struct axs_value * | value | ||
) |
Definition at line 764 of file ax-gdb.c.
References _, ax_reg(), axs_lvalue_memory, axs_lvalue_register, axs_rvalue, check_typedef(), error(), gen_extend(), gen_fetch(), axs_value::kind, axs_value::reg, axs_value::type, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_FUNC, TYPE_CODE_STRUCT, TYPE_CODE_UNION, and axs_value::u.
Referenced by dtrace_compile_to_ax(), dwarf2_compile_expr_to_ax(), gen_cast(), gen_eval_for_expr(), gen_expr(), gen_printf(), gen_struct_ref(), gen_usual_unary(), and stap_compile_to_ax().
Definition at line 862 of file ax-gdb.c.
References TYPE_LENGTH, and TYPE_UNSIGNED.
Referenced by gen_integral_promotions(), and max_type().