/* Python interface to btrace record targets. Copyright 2016-2024 Free Software Foundation, Inc. This file is part of GDB. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ #ifndef PYTHON_PY_RECORD_BTRACE_H #define PYTHON_PY_RECORD_BTRACE_H #include "python-internal.h" /* Implementation of record.method [str]. */ extern PyObject *recpy_bt_method (PyObject *self, void *closure); /* Implementation of record.format [str]. */ extern PyObject *recpy_bt_format (PyObject *self, void *closure); /* Implementation of record.goto (instruction) -> None. */ extern PyObject *recpy_bt_goto (PyObject *self, PyObject *value); /* Implementation of BtraceRecord.clear (self) -> None. */ extern PyObject *recpy_bt_clear (PyObject *self, PyObject *args); /* Implementation of record.instruction_history [list]. */ extern PyObject *recpy_bt_instruction_history (PyObject *self, void *closure); /* Implementation of record.function_call_history [list]. */ extern PyObject *recpy_bt_function_call_history (PyObject *self, void *closure); /* Implementation of record.replay_position [instruction]. */ extern PyObject *recpy_bt_replay_position (PyObject *self, void *closure); /* Implementation of record.begin [instruction]. */ extern PyObject *recpy_bt_begin (PyObject *self, void *closure); /* Implementation of record.end [instruction]. */ extern PyObject *recpy_bt_end (PyObject *self, void *closure); /* Implementation of RecordInstruction.number [int]. */ extern PyObject *recpy_bt_insn_number (PyObject *self, void *closure); /* Implementation of RecordInstruction.sal [gdb.Symtab_and_line]. */ extern PyObject *recpy_bt_insn_sal (PyObject *self, void *closure); /* Implementation of RecordInstruction.pc [int]. */ extern PyObject *recpy_bt_insn_pc (PyObject *self, void *closure); /* Implementation of RecordInstruction.data [buffer]. */ extern PyObject *recpy_bt_insn_data (PyObject *self, void *closure); /* Implementation of RecordInstruction.decoded [str]. */ extern PyObject *recpy_bt_insn_decoded (PyObject *self, void *closure); /* Implementation of RecordInstruction.size [int]. */ extern PyObject *recpy_bt_insn_size (PyObject *self, void *closure); /* Implementation of RecordInstruction.is_speculative [bool]. */ extern PyObject *recpy_bt_insn_is_speculative (PyObject *self, void *closure); /* Implementation of RecordFunctionSegment.number [int]. */ extern PyObject *recpy_bt_func_number (PyObject *self, void *closure); /* Implementation of RecordFunctionSegment.number [int]. */ extern PyObject *recpy_bt_func_level (PyObject *self, void *closure); /* Implementation of RecordFunctionSegment.symbol [gdb.Symbol]. */ extern PyObject *recpy_bt_func_symbol (PyObject *self, void *closure); /* Implementation of RecordFunctionSegment.instructions [list]. */ extern PyObject *recpy_bt_func_instructions (PyObject *self, void *closure); /* Implementation of RecordFunctionSegment.up [RecordFunctionSegment]. */ extern PyObject *recpy_bt_func_up (PyObject *self, void *closure); /* Implementation of RecordFunctionSegment.prev [RecordFunctionSegment]. */ extern PyObject *recpy_bt_func_prev (PyObject *self, void *closure); /* Implementation of RecordFunctionSegment.next [RecordFunctionSegment]. */ extern PyObject *recpy_bt_func_next (PyObject *self, void *closure); /* Implementation of RecordAuxiliary.decoded [str]. */ extern PyObject *recpy_bt_aux_data (PyObject *self, void *closure); #endif /* PYTHON_PY_RECORD_BTRACE_H */