GDB (xrefs)
|
#include "defs.h"
#include "value.h"
#include "python-internal.h"
#include "python.h"
#include "charset.h"
#include "breakpoint.h"
#include "gdbcmd.h"
#include "gdbthread.h"
#include "observable.h"
#include "cli/cli-script.h"
#include "ada-lang.h"
#include "arch-utils.h"
#include "language.h"
#include "location.h"
#include "py-event.h"
#include "linespec.h"
#include "gdbsupport/common-utils.h"
Go to the source code of this file.
Classes | |
struct | gdbpy_breakpoint_location_object |
struct | pybp_code |
Macros | |
#define | BPLOCPY_REQUIRE_VALID(Breakpoint, Location) |
#define | BPLOCPY_SET_REQUIRE_VALID(Breakpoint, Location) |
#define | pybp_debug_printf(fmt, ...) debug_prefixed_printf_cond (pybp_debug, "py-breakpoint", fmt, ##__VA_ARGS__) |
#define | PYBP_SCOPED_DEBUG_ENTER_EXIT scoped_debug_enter_exit (pybp_debug, "py-breakpoint") |
Variables | |
static bool | pybp_debug |
static int | bppy_live |
gdbpy_breakpoint_object * | bppy_pending_object |
static const char | stop_func [] = "stop" |
static struct pybp_code | pybp_codes [] |
static struct pybp_code | pybp_watch_types [] |
static gdb_PyGetSetDef | breakpoint_object_getset [] |
static PyMethodDef | breakpoint_object_methods [] |
PyTypeObject | breakpoint_object_type |
static gdb_PyGetSetDef | bp_location_object_getset [] |
PyTypeObject | breakpoint_location_object_type |
#define BPLOCPY_REQUIRE_VALID | ( | Breakpoint, | |
Location ) |
Definition at line 54 of file py-breakpoint.c.
Referenced by bplocpy_get_address(), bplocpy_get_enabled(), bplocpy_get_fullname(), bplocpy_get_function(), bplocpy_get_owner(), bplocpy_get_source_location(), and bplocpy_get_thread_groups().
#define BPLOCPY_SET_REQUIRE_VALID | ( | Breakpoint, | |
Location ) |
Definition at line 63 of file py-breakpoint.c.
Referenced by bplocpy_set_enabled().
#define pybp_debug_printf | ( | fmt, | |
... ) debug_prefixed_printf_cond (pybp_debug, "py-breakpoint", fmt, ##__VA_ARGS__) |
Definition at line 88 of file py-breakpoint.c.
Referenced by gdbpy_breakpoint_created().
#define PYBP_SCOPED_DEBUG_ENTER_EXIT scoped_debug_enter_exit (pybp_debug, "py-breakpoint") |
Definition at line 93 of file py-breakpoint.c.
Referenced by gdbpy_breakpoint_created(), gdbpy_breakpoint_deleted(), and gdbpy_breakpoint_modified().
void _initialize_py_breakpoint | ( | ) |
Definition at line 1560 of file py-breakpoint.c.
Referenced by initialize_all_files().
|
static |
Definition at line 1738 of file py-breakpoint.c.
Definition at line 1630 of file py-breakpoint.c.
References BPLOCPY_REQUIRE_VALID, BPPY_REQUIRE_VALID, and gdb_py_object_from_ulongest().
Definition at line 1615 of file py-breakpoint.c.
References BPLOCPY_REQUIRE_VALID, and BPPY_REQUIRE_VALID.
Definition at line 1720 of file py-breakpoint.c.
References BPLOCPY_REQUIRE_VALID, BPPY_REQUIRE_VALID, symtab::fullname, and host_string_to_python_string().
Definition at line 1685 of file py-breakpoint.c.
References BPLOCPY_REQUIRE_VALID, BPPY_REQUIRE_VALID, and host_string_to_python_string().
Definition at line 1642 of file py-breakpoint.c.
References BPLOCPY_REQUIRE_VALID, and BPPY_REQUIRE_VALID.
Definition at line 1655 of file py-breakpoint.c.
References BPLOCPY_REQUIRE_VALID, BPPY_REQUIRE_VALID, gdb_py_object_from_ulongest(), and host_string_to_python_string().
Definition at line 1697 of file py-breakpoint.c.
References all_inferiors(), BPLOCPY_REQUIRE_VALID, BPPY_REQUIRE_VALID, and gdb_py_object_from_ulongest().
Definition at line 1749 of file py-breakpoint.c.
References paddress().
Definition at line 1578 of file py-breakpoint.c.
References BPLOCPY_SET_REQUIRE_VALID, BPPY_SET_REQUIRE_VALID, enable_disable_bp_location(), and GDB_PY_SET_HANDLE_EXCEPTION.
Definition at line 435 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, delete_breakpoint(), and GDB_PY_HANDLE_EXCEPTION.
Definition at line 628 of file py-breakpoint.c.
References bp, gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, breakpoint_commands(), string_file::c_str(), breakpoint::commands, current_uiout, gdbpy_convert_exception(), host_string_to_python_string(), and print_command_lines().
Definition at line 569 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, breakpoint::cond_string, and host_string_to_python_string().
Definition at line 151 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, bp_enabled, BPPY_REQUIRE_VALID, and breakpoint::enable_state.
Definition at line 548 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, watchpoint::exp_string, host_string_to_python_string(), and is_watchpoint().
Definition at line 811 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, gdb_py_object_from_longest(), and breakpoint::hit_count.
Definition at line 822 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, gdb_py_object_from_longest(), and breakpoint::ignore_count.
Definition at line 783 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, gdb_py_object_from_longest(), and breakpoint::inferior.
Definition at line 530 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, bp_breakpoint, bp_hardware_breakpoint, BPPY_REQUIRE_VALID, host_string_to_python_string(), breakpoint::locspec, and breakpoint::type.
Definition at line 834 of file py-breakpoint.c.
References BPPY_REQUIRE_VALID, breakpoint_location_object_type, and loc.
Definition at line 758 of file py-breakpoint.c.
References BPPY_REQUIRE_VALID, gdb_py_object_from_longest(), and gdbpy_breakpoint_object::number.
Definition at line 742 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, is_watchpoint(), and pending_breakpoint_p().
Definition at line 165 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, and breakpoint::silent.
Definition at line 797 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, gdb_py_object_from_longest(), and breakpoint::task.
Definition at line 725 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, disp_del, disp_del_at_next_stop, and breakpoint::disposition.
Definition at line 769 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, gdb_py_object_from_longest(), and breakpoint::thread.
Definition at line 697 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, gdb_py_object_from_longest(), and breakpoint::type.
Definition at line 709 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, and user_breakpoint_p().
Definition at line 921 of file py-breakpoint.c.
References AUTO_BOOLEAN_TRUE, awatch_command_wrapper(), gdbpy_breakpoint_object::bp, bp_breakpoint, bp_catchpoint, bp_hardware_breakpoint, bp_watchpoint, bppy_init_validate_args(), bppy_pending_object, BPPY_SET_REQUIRE_VALID, breakpoint_ops_for_location_spec(), create_breakpoint(), current_language, FULL, gdb_PyArg_ParseTupleAndKeywords(), gdbpy_convert_exception(), gdbpy_enter::get_gdbarch(), linespec_parse_line_offset(), gdbpy_breakpoint_object::number, python_string_to_host_string(), rwatch_command_wrapper(), string_to_location_spec(), watch_command_wrapper(), and WILD.
|
static |
Definition at line 867 of file py-breakpoint.c.
References bp_watchpoint.
Referenced by bppy_init().
Definition at line 140 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp.
Definition at line 1076 of file py-breakpoint.c.
References bp, and bp_enabled.
Definition at line 657 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, breakpoint_set_commands(), GDB_PY_SET_HANDLE_EXCEPTION, python_string_to_host_string(), and read_command_lines_1().
Definition at line 587 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, GDB_PY_SET_HANDLE_EXCEPTION, python_string_to_host_string(), and set_breakpoint_condition().
Definition at line 177 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, disable_breakpoint(), enable_breakpoint(), and GDB_PY_SET_HANDLE_EXCEPTION.
Definition at line 496 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, gdb_py_int_as_long(), breakpoint::hit_count, and value.
Definition at line 456 of file py-breakpoint.c.
References BPPY_SET_REQUIRE_VALID, gdb_py_int_as_long(), GDB_PY_SET_HANDLE_EXCEPTION, gdbpy_breakpoint_object::number, set_ignore_count(), and value.
Definition at line 307 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, bp_breakpoint, bp_hardware_breakpoint, BPPY_SET_REQUIRE_VALID, breakpoint_set_inferior(), gdb_py_int_as_long(), breakpoint::task, breakpoint::thread, breakpoint::type, and valid_global_inferior_id().
Definition at line 219 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, and breakpoint_set_silent().
Definition at line 373 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, breakpoint_set_task(), gdb_py_int_as_long(), GDB_PY_SET_HANDLE_EXCEPTION, breakpoint::thread, and valid_task_id().
Definition at line 250 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, breakpoint_set_thread(), gdb_py_int_as_long(), breakpoint::inferior, breakpoint::task, and valid_global_thread_id().
|
static |
Definition at line 1104 of file py-breakpoint.c.
References bp, and breakpoint::py_bp_object.
Referenced by gdbpy_breakpoints().
|
extern |
enum ext_lang_bp_stop gdbpy_breakpoint_cond_says_stop | ( | const struct extension_language_defn * | extlang, |
struct breakpoint * | b ) |
Definition at line 1165 of file py-breakpoint.c.
References bpfinishpy_post_stop_hook(), bpfinishpy_pre_stop_hook(), EXT_LANG_BP_STOP_NO, EXT_LANG_BP_STOP_UNSET, EXT_LANG_BP_STOP_YES, breakpoint::gdbarch, gdbpy_print_stack(), gdbpy_breakpoint_object::is_finish_bp, breakpoint::py_bp_object, PyObject_CallMethod, and stop_func.
|
static |
Definition at line 1237 of file py-breakpoint.c.
References bp, gdbpy_breakpoint_object::bp, bp_access_watchpoint, bp_breakpoint, bp_catchpoint, bp_hardware_breakpoint, bp_hardware_watchpoint, bp_read_watchpoint, bp_watchpoint, bppy_live, bppy_pending_object, breakpoint_object_type, evpy_emit_event(), evregpy_no_listeners_p(), gdb_py_events, gdbpy_print_stack(), gdbpy_breakpoint_object::is_finish_bp, gdbpy_breakpoint_object::number, breakpoint::py_bp_object, pybp_debug_printf, PYBP_SCOPED_DEBUG_ENTER_EXIT, and user_breakpoint_p().
Referenced by gdbpy_initialize_breakpoints().
|
static |
Definition at line 1301 of file py-breakpoint.c.
References bp, bpfinishpy_pre_delete_hook(), bppy_live, evpy_emit_event(), evregpy_no_listeners_p(), gdb_py_events, breakpoint::gdbarch, gdbpy_print_stack(), get_breakpoint(), breakpoint::number, and PYBP_SCOPED_DEBUG_ENTER_EXIT.
Referenced by gdbpy_initialize_breakpoints().
int gdbpy_breakpoint_has_cond | ( | const struct extension_language_defn * | extlang, |
struct breakpoint * | b ) |
Definition at line 1216 of file py-breakpoint.c.
References breakpoint::gdbarch, breakpoint::py_bp_object, and stop_func.
bool gdbpy_breakpoint_init_breakpoint_type | ( | ) |
Definition at line 1121 of file py-breakpoint.c.
References breakpoint_object_type.
Referenced by gdbpy_initialize_breakpoints(), and gdbpy_initialize_finishbreakpoints().
|
static |
Definition at line 1335 of file py-breakpoint.c.
References bp, evpy_emit_event(), evregpy_no_listeners_p(), gdb_py_events, breakpoint::gdbarch, gdbpy_print_stack(), get_breakpoint(), breakpoint::number, and PYBP_SCOPED_DEBUG_ENTER_EXIT.
Referenced by gdbpy_initialize_breakpoints().
Definition at line 1141 of file py-breakpoint.c.
References all_breakpoints(), bp, bppy_live, and build_bp_list().
|
static |
Definition at line 1404 of file py-breakpoint.c.
References breakpoint_location_object_type, gdb_module, and gdb_pymodule_addobject().
|
static |
Definition at line 1364 of file py-breakpoint.c.
References gdb::observers::breakpoint_created, gdb::observers::breakpoint_deleted, gdb::observers::breakpoint_modified, breakpoint_object_type, code, gdb_module, gdb_pymodule_addobject(), gdbpy_breakpoint_created(), gdbpy_breakpoint_deleted(), gdbpy_breakpoint_init_breakpoint_type(), gdbpy_breakpoint_modified(), name, pybp_code::name, pybp_codes, and pybp_watch_types.
GDBPY_INITIALIZE_FILE | ( | gdbpy_initialize_breakpoint_locations | ) |
GDBPY_INITIALIZE_FILE | ( | gdbpy_initialize_breakpoints | ) |
Definition at line 1423 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, breakpoint::cond_string, ext_lang_capitalized_name(), EXT_LANG_GDB, EXT_LANG_PYTHON, get_breakpoint_cond_ext_lang(), get_ext_lang_defn(), name, python_string_to_host_string(), and stop_func.
|
static |
Definition at line 80 of file py-breakpoint.c.
References gdb_printf().
|
static |
Definition at line 1785 of file py-breakpoint.c.
|
static |
Definition at line 97 of file py-breakpoint.c.
Referenced by gdbpy_breakpoint_created(), gdbpy_breakpoint_deleted(), and gdbpy_breakpoints().
gdbpy_breakpoint_object* bppy_pending_object |
Definition at line 101 of file py-breakpoint.c.
Referenced by bpfinishpy_init(), bppy_init(), and gdbpy_breakpoint_created().
PyTypeObject breakpoint_location_object_type |
Definition at line 1803 of file py-breakpoint.c.
Referenced by bppy_get_locations(), and gdbpy_initialize_breakpoint_locations().
|
static |
Definition at line 1457 of file py-breakpoint.c.
|
static |
Definition at line 1508 of file py-breakpoint.c.
PyTypeObject breakpoint_object_type |
Definition at line 1517 of file py-breakpoint.c.
Referenced by gdbpy_breakpoint_created(), gdbpy_breakpoint_init_breakpoint_type(), and gdbpy_initialize_breakpoints().
|
static |
Definition at line 116 of file py-breakpoint.c.
Referenced by gdbpy_initialize_breakpoints().
|
static |
Definition at line 75 of file py-breakpoint.c.
|
static |
Definition at line 130 of file py-breakpoint.c.
Referenced by gdbpy_initialize_breakpoints().
|
static |
Definition at line 104 of file py-breakpoint.c.
Referenced by gdbpy_breakpoint_cond_says_stop(), gdbpy_breakpoint_has_cond(), and local_setattro().