GDB (xrefs)
|
#include "defs.h"
#include "probe.h"
#include "vec.h"
#include "elf-bfd.h"
#include "gdbtypes.h"
#include "obstack.h"
#include "objfiles.h"
#include "complaints.h"
#include "value.h"
#include "ax.h"
#include "ax-gdb.h"
#include "language.h"
#include "parser-defs.h"
#include "inferior.h"
Go to the source code of this file.
Classes | |
struct | dtrace_probe_arg |
struct | dtrace_probe_enabler |
struct | dtrace_probe |
struct | dtrace_dof_hdr |
struct | dtrace_dof_sect |
struct | dtrace_dof_provider |
struct | dtrace_dof_probe |
Macros | |
#define | SHT_SUNW_dof 0x6ffffff4 |
#define | DOF_UINT(dof, field) |
#define | DTRACE_DOF_PTR(dof, offset) (&((char *) (dof))[(offset)]) |
#define | DTRACE_DOF_SECT(dof, idx) |
Typedefs | |
typedef struct dtrace_probe_arg | dtrace_probe_arg_s |
typedef struct dtrace_probe_enabler | dtrace_probe_enabler_s |
Enumerations | |
enum | dtrace_dof_sect_type { DTRACE_DOF_SECT_TYPE_NONE = 0, DTRACE_DOF_SECT_TYPE_ECBDESC = 3, DTRACE_DOF_SECT_TYPE_STRTAB = 8, DTRACE_DOF_SECT_TYPE_PROVIDER = 15, DTRACE_DOF_SECT_TYPE_PROBES = 16, DTRACE_DOF_SECT_TYPE_PRARGS = 17, DTRACE_DOF_SECT_TYPE_PROFFS = 18, DTRACE_DOF_SECT_TYPE_PRENOFFS = 26 } |
enum | dtrace_dof_ident { DTRACE_DOF_ID_MAG0 = 0, DTRACE_DOF_ID_MAG1 = 1, DTRACE_DOF_ID_MAG2 = 2, DTRACE_DOF_ID_MAG3 = 3, DTRACE_DOF_ID_ENCODING = 5 } |
enum | dtrace_dof_encoding { DTRACE_DOF_ENCODE_LSB = 1, DTRACE_DOF_ENCODE_MSB = 2 } |
Variables | |
const struct probe_ops | dtrace_probe_ops |
#define DOF_UINT | ( | dof, | |
field | |||
) |
Definition at line 286 of file dtrace-probe.c.
Referenced by dtrace_process_dof(), and dtrace_process_dof_probe().
Definition at line 297 of file dtrace-probe.c.
Referenced by dtrace_process_dof().
#define DTRACE_DOF_SECT | ( | dof, | |
idx | |||
) |
Definition at line 303 of file dtrace-probe.c.
Referenced by dtrace_process_dof().
#define SHT_SUNW_dof 0x6ffffff4 |
Definition at line 41 of file dtrace-probe.c.
Referenced by dtrace_get_probes().
typedef struct dtrace_probe_arg dtrace_probe_arg_s |
Definition at line 63 of file dtrace-probe.c.
typedef struct dtrace_probe_enabler dtrace_probe_enabler_s |
Definition at line 76 of file dtrace-probe.c.
enum dtrace_dof_encoding |
Enumerator | |
---|---|
DTRACE_DOF_ENCODE_LSB | |
DTRACE_DOF_ENCODE_MSB |
Definition at line 162 of file dtrace-probe.c.
enum dtrace_dof_ident |
Enumerator | |
---|---|
DTRACE_DOF_ID_MAG0 | |
DTRACE_DOF_ID_MAG1 | |
DTRACE_DOF_ID_MAG2 | |
DTRACE_DOF_ID_MAG3 | |
DTRACE_DOF_ID_ENCODING |
Definition at line 146 of file dtrace-probe.c.
enum dtrace_dof_sect_type |
Definition at line 117 of file dtrace-probe.c.
void _initialize_dtrace_probe | ( | void | ) |
Definition at line 908 of file dtrace-probe.c.
References _, add_cmd(), class_info, info_probes_cmdlist_get(), info_probes_dtrace_command(), and VEC_safe_push.
DEF_VEC_O | ( | dtrace_probe_arg_s | ) |
DEF_VEC_O | ( | dtrace_probe_enabler_s | ) |
|
static |
Definition at line 556 of file dtrace-probe.c.
References current_language, discard_cleanups(), parser_state::expout, dtrace_probe_arg::expr, free_current_contents(), gdbarch_dtrace_parse_probe_argument(), initialize_expout(), make_cleanup(), prefixify_expression(), dtrace_probe::probe_argc, reallocate_expout(), dtrace_probe_arg::type, VEC_index, write_exp_elt_opcode(), and write_exp_elt_type().
Referenced by dtrace_get_arg().
Definition at line 696 of file dtrace-probe.c.
References probe::arch, dtrace_probe_ops, gdb_assert, gdbarch_dtrace_parse_probe_argument_p(), and probe::pops.
|
static |
Definition at line 724 of file dtrace-probe.c.
References dtrace_get_arg(), dtrace_probe_ops, expression::elts, dtrace_probe_arg::expr, gdb_assert, agent_expr::gdbarch, gen_expr(), probe::pops, require_rvalue(), dtrace_probe_arg::type, and axs_value::type.
|
static |
Definition at line 843 of file dtrace-probe.c.
References _, dtrace_probe_enabler::address, probe::arch, dtrace_probe_is_enabled(), dtrace_probe_ops, error(), gdb_assert, gdbarch_dtrace_disable_probe(), gdbarch_dtrace_disable_probe_p(), inferior_ptid, probe::name, null_ptid, probe::pops, probe::provider, ptid_equal(), VEC_empty, and VEC_iterate.
Referenced by set_gdbarch_dtrace_disable_probe().
|
static |
Definition at line 811 of file dtrace-probe.c.
References _, dtrace_probe_enabler::address, probe::arch, dtrace_probe_is_enabled(), dtrace_probe_ops, error(), gdb_assert, gdbarch_dtrace_enable_probe(), gdbarch_dtrace_enable_probe_p(), inferior_ptid, null_ptid, probe::pops, ptid_equal(), and VEC_iterate.
Referenced by set_gdbarch_dtrace_enable_probe().
|
static |
Definition at line 707 of file dtrace-probe.c.
References probe::arch, dtrace_get_arg(), dtrace_probe_ops, EVAL_NORMAL, evaluate_subexp_standard(), dtrace_probe_arg::expr, gdb_assert, probe::pops, and dtrace_probe_arg::type.
|
static |
Definition at line 775 of file dtrace-probe.c.
References _, info_probe_column::field_name, info_probe_column::print_name, and VEC_safe_push.
|
static |
Definition at line 788 of file dtrace-probe.c.
References probe::arch, dtrace_probe_is_enabled(), dtrace_probe_ops, gdb_assert, gdbarch_dtrace_probe_is_enabled_p(), probe::pops, VEC_empty, and VEC_safe_push.
|
static |
Definition at line 605 of file dtrace-probe.c.
References dtrace_build_arg_exprs(), and VEC_index.
Referenced by dtrace_compile_to_ax(), and dtrace_evaluate_probe_argument().
Definition at line 673 of file dtrace-probe.c.
References probe::address, ANOFFSET, dtrace_probe_ops, gdb_assert, probe::pops, SECT_OFF_DATA, and objfile::section_offsets.
|
static |
Definition at line 683 of file dtrace-probe.c.
References dtrace_probe_ops, gdb_assert, probe::pops, and dtrace_probe::probe_argc.
Definition at line 617 of file dtrace-probe.c.
References _, complaint(), dtrace_process_dof(), objfile::obfd, objfile::separate_debug_objfile_backlink, SHT_SUNW_dof, symfile_complaints, and xfree().
|
static |
Definition at line 745 of file dtrace-probe.c.
References dtrace_probe_ops, dtrace_probe_arg::expr, gdb_assert, probe::pops, dtrace_probe_arg::type_str, VEC_free, VEC_iterate, and xfree().
|
static |
Definition at line 655 of file dtrace-probe.c.
References dtrace_probe_enabler::address, probe::arch, gdbarch_dtrace_probe_is_enabled(), dtrace_probe::p, and VEC_iterate.
Referenced by dtrace_disable_probe(), dtrace_enable_probe(), dtrace_gen_info_probes_table_values(), and set_gdbarch_dtrace_probe_is_enabled().
Definition at line 102 of file dtrace-probe.c.
References probe_is_linespec_by_keyword().
|
static |
Definition at line 463 of file dtrace-probe.c.
References _, complaint(), DOF_UINT, dtrace_dof_hdr::dofh_ident, dtrace_dof_hdr::dofh_secnum, dtrace_dof_hdr::dofh_secoff, dtrace_dof_provider::dofpv_prargs, dtrace_dof_provider::dofpv_prenoffs, dtrace_dof_provider::dofpv_probes, dtrace_dof_provider::dofpv_proffs, dtrace_dof_provider::dofpv_strtab, dtrace_dof_sect::dofs_entsize, dtrace_dof_sect::dofs_offset, dtrace_dof_sect::dofs_size, dtrace_dof_sect::dofs_type, DTRACE_DOF_ENCODE_LSB, DTRACE_DOF_ENCODE_MSB, DTRACE_DOF_ID_ENCODING, DTRACE_DOF_ID_MAG0, DTRACE_DOF_ID_MAG1, DTRACE_DOF_ID_MAG2, DTRACE_DOF_ID_MAG3, DTRACE_DOF_PTR, DTRACE_DOF_SECT, DTRACE_DOF_SECT_TYPE_ECBDESC, DTRACE_DOF_SECT_TYPE_PROVIDER, dtrace_process_dof_probe(), get_objfile_arch(), objfile::obfd, provider, size, and symfile_complaints.
Referenced by dtrace_get_probes().
|
static |
Definition at line 315 of file dtrace-probe.c.
References dtrace_probe_enabler::address, probe::address, probe::arch, builtin_type::builtin_long, builtin_type(), CATCH, do_cleanups(), DOF_UINT, dtrace_dof_probe::dofpr_addr, dtrace_dof_probe::dofpr_enoffidx, dtrace_dof_probe::dofpr_name, dtrace_dof_probe::dofpr_nargc, dtrace_dof_probe::dofpr_nargv, dtrace_dof_probe::dofpr_nenoffs, dtrace_dof_probe::dofpr_noffs, dtrace_dof_probe::dofpr_offidx, dtrace_dof_provider::dofpv_name, dtrace_probe_ops, expression::elts, END_CATCH, dtrace_probe_arg::expr, language_c, make_cleanup(), probe::name, exp_element::opcode, dtrace_probe::p, parse_expression_with_language(), objfile::per_bfd, probe::pops, dtrace_probe::probe_argc, probe::provider, RETURN_MASK_ERROR, objfile_per_bfd_storage::storage_obstack, TRY, dtrace_probe_arg::type, exp_element::type, dtrace_probe_arg::type_str, VEC, VEC_cleanup, VEC_copy, and VEC_safe_push.
Referenced by dtrace_process_dof().
Definition at line 766 of file dtrace-probe.c.
References dtrace_probe_ops, gdb_assert, and probe::pops.
|
static |
Definition at line 900 of file dtrace-probe.c.
References info_probes_for_ops().
Referenced by _initialize_dtrace_probe().
Definition at line 878 of file dtrace-probe.c.
Referenced by dtrace_can_evaluate_probe_arguments(), dtrace_compile_to_ax(), dtrace_disable_probe(), dtrace_enable_probe(), dtrace_evaluate_probe_argument(), dtrace_gen_info_probes_table_values(), dtrace_get_probe_address(), dtrace_get_probe_argument_count(), dtrace_probe_destroy(), dtrace_process_dof_probe(), and dtrace_type_name().