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 "observer.h"
#include "cli/cli-script.h"
#include "ada-lang.h"
#include "arch-utils.h"
#include "language.h"
Go to the source code of this file.
Classes | |
struct | pybp_code |
Functions | |
static PyObject * | bppy_is_valid (PyObject *self, PyObject *args) |
static PyObject * | bppy_get_enabled (PyObject *self, void *closure) |
static PyObject * | bppy_get_silent (PyObject *self, void *closure) |
static int | bppy_set_enabled (PyObject *self, PyObject *newvalue, void *closure) |
static int | bppy_set_silent (PyObject *self, PyObject *newvalue, void *closure) |
static int | bppy_set_thread (PyObject *self, PyObject *newvalue, void *closure) |
static int | bppy_set_task (PyObject *self, PyObject *newvalue, void *closure) |
static PyObject * | bppy_delete_breakpoint (PyObject *self, PyObject *args) |
static int | bppy_set_ignore_count (PyObject *self, PyObject *newvalue, void *closure) |
static int | bppy_set_hit_count (PyObject *self, PyObject *newvalue, void *closure) |
static PyObject * | bppy_get_location (PyObject *self, void *closure) |
static PyObject * | bppy_get_expression (PyObject *self, void *closure) |
static PyObject * | bppy_get_condition (PyObject *self, void *closure) |
static int | bppy_set_condition (PyObject *self, PyObject *newvalue, void *closure) |
static PyObject * | bppy_get_commands (PyObject *self, void *closure) |
static PyObject * | bppy_get_type (PyObject *self, void *closure) |
static PyObject * | bppy_get_visibility (PyObject *self, void *closure) |
static PyObject * | bppy_get_temporary (PyObject *self, void *closure) |
static PyObject * | bppy_get_number (PyObject *self, void *closure) |
static PyObject * | bppy_get_thread (PyObject *self, void *closure) |
static PyObject * | bppy_get_task (PyObject *self, void *closure) |
static PyObject * | bppy_get_hit_count (PyObject *self, void *closure) |
static PyObject * | bppy_get_ignore_count (PyObject *self, void *closure) |
static int | bppy_init (PyObject *self, PyObject *args, PyObject *kwargs) |
static int | build_bp_list (struct breakpoint *b, void *arg) |
PyObject * | gdbpy_breakpoints (PyObject *self, PyObject *args) |
enum ext_lang_bp_stop | gdbpy_breakpoint_cond_says_stop (const struct extension_language_defn *extlang, struct breakpoint *b) |
int | gdbpy_breakpoint_has_cond (const struct extension_language_defn *extlang, struct breakpoint *b) |
static void | gdbpy_breakpoint_created (struct breakpoint *bp) |
static void | gdbpy_breakpoint_deleted (struct breakpoint *b) |
int | gdbpy_initialize_breakpoints (void) |
static int | local_setattro (PyObject *self, PyObject *name, PyObject *v) |
Variables | |
static int | bppy_live |
gdbpy_breakpoint_object * | bppy_pending_object |
static char *const | stop_func = "stop" |
static struct pybp_code | pybp_codes [] |
static struct pybp_code | pybp_watch_types [] |
static PyGetSetDef | breakpoint_object_getset [] |
static PyMethodDef | breakpoint_object_methods [] |
PyTypeObject | breakpoint_object_type |
|
static |
Definition at line 284 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, CATCH, delete_breakpoint(), END_CATCH, GDB_PY_HANDLE_EXCEPTION, RETURN_MASK_ALL, and TRY.
|
static |
Definition at line 483 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, breakpoint_commands(), CATCH, breakpoint::commands, current_uiout, do_cleanups(), END_CATCH, gdbpy_convert_exception(), host_charset(), make_cleanup(), make_cleanup_ui_file_delete(), mem_fileopen(), print_command_lines(), RETURN_MASK_ALL, TRY, ui_file_xstrdup(), ui_out_redirect(), and xfree().
|
static |
Definition at line 422 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, breakpoint::cond_string, and host_charset().
|
static |
Definition at line 87 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, bp_enabled, BPPY_REQUIRE_VALID, and breakpoint::enable_state.
|
static |
Definition at line 400 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, watchpoint::exp_string, host_charset(), if(), and is_watchpoint().
|
static |
Definition at line 607 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, and breakpoint::hit_count.
|
static |
Definition at line 618 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, and breakpoint::ignore_count.
|
static |
Definition at line 381 of file py-breakpoint.c.
References breakpoint::addr_string, gdbpy_breakpoint_object::bp, bp_breakpoint, BPPY_REQUIRE_VALID, host_charset(), and breakpoint::type.
|
static |
Definition at line 568 of file py-breakpoint.c.
References BPPY_REQUIRE_VALID, and gdbpy_breakpoint_object::number.
|
static |
Definition at line 101 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, and breakpoint::silent.
|
static |
Definition at line 593 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, and breakpoint::task.
|
static |
Definition at line 553 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, disp_del, disp_del_at_next_stop, and breakpoint::disposition.
|
static |
Definition at line 579 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, and breakpoint::thread.
|
static |
Definition at line 525 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, and breakpoint::type.
|
static |
Definition at line 537 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, BPPY_REQUIRE_VALID, and breakpoint::number.
|
static |
Definition at line 629 of file py-breakpoint.c.
References _, AUTO_BOOLEAN_TRUE, awatch_command_wrapper(), bkpt_breakpoint_ops, gdbpy_breakpoint_object::bp, bp_breakpoint, bp_watchpoint, BPPY_SET_REQUIRE_VALID, CATCH, create_breakpoint(), do_cleanups(), END_CATCH, error(), hw_access, hw_read, hw_write, make_cleanup(), gdbpy_breakpoint_object::number, python_gdbarch, RETURN_MASK_ALL, RETURN_QUIT, rwatch_command_wrapper(), TRY, watch_command_wrapper(), and xfree().
|
static |
Definition at line 76 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp.
|
static |
Definition at line 440 of file py-breakpoint.c.
References _, gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, CATCH, END_CATCH, exception_none, watchpoint::exp, GDB_PY_SET_HANDLE_EXCEPTION, python_string_to_host_string(), RETURN_MASK_ALL, set_breakpoint_condition(), TRY, and xfree().
|
static |
Definition at line 113 of file py-breakpoint.c.
References _, gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, CATCH, disable_breakpoint(), enable_breakpoint(), END_CATCH, GDB_PY_SET_HANDLE_EXCEPTION, RETURN_MASK_ALL, and TRY.
|
static |
Definition at line 347 of file py-breakpoint.c.
References _, gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, gdb_py_int_as_long(), and breakpoint::hit_count.
|
static |
Definition at line 306 of file py-breakpoint.c.
References _, BPPY_SET_REQUIRE_VALID, CATCH, END_CATCH, gdb_py_int_as_long(), GDB_PY_SET_HANDLE_EXCEPTION, gdbpy_breakpoint_object::number, RETURN_MASK_ALL, set_ignore_count(), and TRY.
|
static |
Definition at line 156 of file py-breakpoint.c.
References _, gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, and breakpoint_set_silent().
|
static |
Definition at line 228 of file py-breakpoint.c.
References _, gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, breakpoint_set_task(), CATCH, END_CATCH, gdb_py_int_as_long(), GDB_PY_SET_HANDLE_EXCEPTION, RETURN_MASK_ALL, TRY, and valid_task_id().
|
static |
Definition at line 187 of file py-breakpoint.c.
References _, gdbpy_breakpoint_object::bp, BPPY_SET_REQUIRE_VALID, breakpoint_set_thread(), gdb_py_int_as_long(), and valid_thread_id().
|
static |
Definition at line 717 of file py-breakpoint.c.
References cleanup::arg, if(), and breakpoint::py_bp_object.
Referenced by gdbpy_breakpoints().
enum ext_lang_bp_stop gdbpy_breakpoint_cond_says_stop | ( | const struct extension_language_defn * | extlang, |
struct breakpoint * | b | ||
) |
Definition at line 771 of file py-breakpoint.c.
References bpfinishpy_post_stop_hook(), bpfinishpy_pre_stop_hook(), current_language, do_cleanups(), ensure_python_env(), EXT_LANG_BP_STOP_NO, EXT_LANG_BP_STOP_UNSET, EXT_LANG_BP_STOP_YES, breakpoint::gdbarch, gdbpy_print_stack(), get_current_arch(), gdbpy_breakpoint_object::is_finish_bp, breakpoint::py_bp_object, Py_DECREF, PyObject_HasAttrString, and stop_func.
|
static |
Definition at line 855 of file py-breakpoint.c.
References _, gdbpy_breakpoint_object::bp, bp_access_watchpoint, bp_breakpoint, bp_hardware_watchpoint, bp_read_watchpoint, bp_watchpoint, bppy_live, bppy_pending_object, breakpoint_object_type, gdbpy_print_stack(), gdbpy_breakpoint_object::is_finish_bp, gdbpy_breakpoint_object::number, breakpoint::number, breakpoint::py_bp_object, PyGILState_Ensure, PyGILState_Release, and breakpoint::type.
Referenced by gdbpy_initialize_breakpoints().
|
static |
Definition at line 901 of file py-breakpoint.c.
References gdbpy_breakpoint_object::bp, bppy_live, get_breakpoint(), breakpoint::number, breakpoint::py_bp_object, Py_DECREF, PyGILState_Ensure, and PyGILState_Release.
Referenced by gdbpy_initialize_breakpoints().
int gdbpy_breakpoint_has_cond | ( | const struct extension_language_defn * | extlang, |
struct breakpoint * | b | ||
) |
Definition at line 828 of file py-breakpoint.c.
References current_language, do_cleanups(), ensure_python_env(), breakpoint::gdbarch, get_current_arch(), breakpoint::py_bp_object, PyObject_HasAttrString, and stop_func.
PyObject* gdbpy_breakpoints | ( | PyObject * | self, |
PyObject * | args | ||
) |
Definition at line 739 of file py-breakpoint.c.
References bppy_live, build_bp_list(), iterate_over_breakpoints(), and Py_DECREF.
int gdbpy_initialize_breakpoints | ( | void | ) |
Definition at line 927 of file py-breakpoint.c.
References breakpoint_object_type, code, gdb_module, gdb_pymodule_addobject(), gdbpy_breakpoint_created(), gdbpy_breakpoint_deleted(), pybp_code::name, name, observer_attach_breakpoint_created(), and observer_attach_breakpoint_deleted().
Referenced by _initialize_python().
|
static |
Definition at line 972 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(), python_string_to_host_string(), stop_func, xfree(), and xstrprintf().
|
static |
Definition at line 35 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 39 of file py-breakpoint.c.
Referenced by bpfinishpy_init(), and gdbpy_breakpoint_created().
|
static |
Definition at line 1012 of file py-breakpoint.c.
|
static |
Definition at line 1054 of file py-breakpoint.c.
PyTypeObject breakpoint_object_type |
Definition at line 1063 of file py-breakpoint.c.
Referenced by gdbpy_breakpoint_created(), and gdbpy_initialize_breakpoints().
|
static |
Definition at line 54 of file py-breakpoint.c.
|
static |
Definition at line 66 of file py-breakpoint.c.
|
static |
Definition at line 42 of file py-breakpoint.c.
Referenced by gdbpy_breakpoint_cond_says_stop(), gdbpy_breakpoint_has_cond(), and local_setattro().