GDB (xrefs)

Classes | Enumerations | Functions
/tmp/gdb-8.1/gdb/ax-gdb.h File Reference
`#include "ax.h"`

Go to the source code of this file.

## Classes
struct | axs_value

## Enumerations
enum | axs_lvalue_kind { axs_rvalue, axs_lvalue_memory, axs_lvalue_register }

## Functions
agent_expr_up | gen_trace_for_expr (CORE_ADDR, struct expression *, int)
agent_expr_up | gen_trace_for_var (CORE_ADDR, struct gdbarch *, struct symbol *, int)
agent_expr_up | gen_trace_for_return_address (CORE_ADDR, struct gdbarch *, int)
agent_expr_up | gen_eval_for_expr (CORE_ADDR, struct expression *)
void | gen_expr (struct expression *exp, union exp_element **pc, struct agent_expr *ax, struct axs_value *value)
void | require_rvalue (struct agent_expr *ax, struct axs_value *value)
agent_expr_up | gen_printf (CORE_ADDR, struct gdbarch *, CORE_ADDR, LONGEST, const char *, int, int, struct expression **)

## Enumeration Type Documentation

## ◆ axs_lvalue_kind

enum axs_lvalue_kind

Enumerator
axs_rvalue |
axs_lvalue_memory |
axs_lvalue_register |

Definition at line 54 of file ax-gdb.h.

## Function Documentation

## ◆ gen_eval_for_expr()

agent_expr_up gen_eval_for_expr | ( | CORE_ADDR | ,
|  | struct expression * |
| ) |  |

Definition at line 2496 of file ax-gdb.c.

References ax_simple(), expression::elts, expression::gdbarch, gen_expr(), and require_rvalue().

Referenced by agent_eval_command_one(), encode_actions_1(), parse_cond_to_aexpr(), remote_download_tracepoint(), and validate_actionline().

## ◆ gen_expr()

void gen_expr | ( | struct expression * | exp,
|  | union exp_element ** | pc,
|  | struct agent_expr * | ax,
|  | struct axs_value * | value
| ) |  |

Definition at line 1806 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(), error_unknown_type(), EVAL_AVOID_SIDE_EFFECTS, evaluate_subexp(), find_trace_state_variable(), func, agent_expr::gdbarch, gdbarch_num_pseudo_regs(), gdbarch_num_regs(), gen_address_of(), gen_aggregate_elt_ref(), gen_binop(), gen_complement(), gen_deref(), gen_expr(), gen_expr_binop_rest(), gen_expr_for_cast(), gen_int_literal(), gen_integral_promotions(), gen_logical_not(), gen_msym_var_ref(), 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(), MSYMBOL_PRINT_NAME, name, trace_state_variable::number, offset, op_name(), pointer_type(), value::reg, register_type(), require_rvalue(), agent_expr::scope, block_symbol::symbol, SYMBOL_LANGUAGE, SYMBOL_PRINT_NAME, agent_expr::tracing, axs_value::type, type, value::type, TYPE_CODE, TYPE_CODE_ERROR, user_reg_map_name_to_regnum(), value_as_long(), and value_type().

Referenced by dtrace_probe::compile_to_ax(), stap_probe::compile_to_ax(), gen_eval_for_expr(), gen_expr(), gen_expr_binop_rest(), gen_expr_for_cast(), gen_printf(), gen_repeat(), gen_sizeof(), and gen_trace_for_expr().

## ◆ gen_printf()

agent_expr_up gen_printf | ( | CORE_ADDR | ,
|  | struct gdbarch * | ,
|  | CORE_ADDR | ,
|  | LONGEST | ,
|  | const char * | ,
|  | int | ,
|  | int | ,
|  | struct expression ** |
| ) |  |

Definition at line 2541 of file ax-gdb.c.

References ax_const_l(), ax_raw_byte(), ax_simple(), ax_string(), expression::elts, gen_expr(), and require_rvalue().

Referenced by maint_agent_printf_command(), and parse_cmd_to_aexpr().

## ◆ gen_trace_for_expr()

agent_expr_up gen_trace_for_expr | ( | CORE_ADDR | ,
|  | struct expression * | ,
|  | int |
| ) |  |

Definition at line 2466 of file ax-gdb.c.

References ax_simple(), expression::elts, expression::gdbarch, gen_expr(), and gen_traced_pop().

Referenced by agent_eval_command_one(), encode_actions_1(), and validate_actionline().

## ◆ gen_trace_for_return_address()

agent_expr_up gen_trace_for_return_address | ( | CORE_ADDR | ,
|  | struct gdbarch * | ,
|  | int |
| ) |  |

Definition at line 2516 of file ax-gdb.c.

References ax_simple(), gdbarch_gen_return_address(), and gen_traced_pop().

Referenced by agent_eval_command_one(), and encode_actions_1().

## ◆ gen_trace_for_var()

agent_expr_up gen_trace_for_var | ( | CORE_ADDR | ,
|  | struct gdbarch * | ,
|  | struct symbol * | ,
|  | int |
| ) |  |

Definition at line 2433 of file ax-gdb.c.

References ax_simple(), gen_traced_pop(), and gen_var_ref().

Referenced by collection_list::collect_symbol().

## ◆ require_rvalue()

void require_rvalue | ( | struct agent_expr * | ax,
|  | struct axs_value * | value
| ) |  |

Definition at line 773 of file ax-gdb.c.

References _, ax_reg(), axs_lvalue_memory, axs_lvalue_register, axs_rvalue, check_typedef(), error(), gen_extend(), gen_fetch(), value::reg, value::type, TYPE_CODE, TYPE_CODE_ARRAY, TYPE_CODE_FUNC, TYPE_CODE_STRUCT, and TYPE_CODE_UNION.

Referenced by dtrace_probe::compile_to_ax(), stap_probe::compile_to_ax(), dwarf2_compile_expr_to_ax(), gen_cast(), gen_eval_for_expr(), gen_expr(), gen_printf(), gen_struct_ref(), and gen_usual_unary().