1 /* Python interface to btrace record targets.
3 Copyright 2016-2024 Free Software Foundation, Inc.
5 This file is part of GDB.
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
20 #ifndef PYTHON_PY_RECORD_BTRACE_H
21 #define PYTHON_PY_RECORD_BTRACE_H
23 #include "python-internal.h"
25 /* Implementation of record.method [str]. */
26 extern PyObject
*recpy_bt_method (PyObject
*self
, void *closure
);
28 /* Implementation of record.format [str]. */
29 extern PyObject
*recpy_bt_format (PyObject
*self
, void *closure
);
31 /* Implementation of record.goto (instruction) -> None. */
32 extern PyObject
*recpy_bt_goto (PyObject
*self
, PyObject
*value
);
34 /* Implementation of BtraceRecord.clear (self) -> None. */
35 extern PyObject
*recpy_bt_clear (PyObject
*self
, PyObject
*args
);
37 /* Implementation of record.instruction_history [list]. */
38 extern PyObject
*recpy_bt_instruction_history (PyObject
*self
, void *closure
);
40 /* Implementation of record.function_call_history [list]. */
41 extern PyObject
*recpy_bt_function_call_history (PyObject
*self
, void *closure
);
43 /* Implementation of record.replay_position [instruction]. */
44 extern PyObject
*recpy_bt_replay_position (PyObject
*self
, void *closure
);
46 /* Implementation of record.begin [instruction]. */
47 extern PyObject
*recpy_bt_begin (PyObject
*self
, void *closure
);
49 /* Implementation of record.end [instruction]. */
50 extern PyObject
*recpy_bt_end (PyObject
*self
, void *closure
);
52 /* Implementation of RecordInstruction.number [int]. */
53 extern PyObject
*recpy_bt_insn_number (PyObject
*self
, void *closure
);
55 /* Implementation of RecordInstruction.sal [gdb.Symtab_and_line]. */
56 extern PyObject
*recpy_bt_insn_sal (PyObject
*self
, void *closure
);
58 /* Implementation of RecordInstruction.pc [int]. */
59 extern PyObject
*recpy_bt_insn_pc (PyObject
*self
, void *closure
);
61 /* Implementation of RecordInstruction.data [buffer]. */
62 extern PyObject
*recpy_bt_insn_data (PyObject
*self
, void *closure
);
64 /* Implementation of RecordInstruction.decoded [str]. */
65 extern PyObject
*recpy_bt_insn_decoded (PyObject
*self
, void *closure
);
67 /* Implementation of RecordInstruction.size [int]. */
68 extern PyObject
*recpy_bt_insn_size (PyObject
*self
, void *closure
);
70 /* Implementation of RecordInstruction.is_speculative [bool]. */
71 extern PyObject
*recpy_bt_insn_is_speculative (PyObject
*self
, void *closure
);
73 /* Implementation of RecordFunctionSegment.number [int]. */
74 extern PyObject
*recpy_bt_func_number (PyObject
*self
, void *closure
);
76 /* Implementation of RecordFunctionSegment.number [int]. */
77 extern PyObject
*recpy_bt_func_level (PyObject
*self
, void *closure
);
79 /* Implementation of RecordFunctionSegment.symbol [gdb.Symbol]. */
80 extern PyObject
*recpy_bt_func_symbol (PyObject
*self
, void *closure
);
82 /* Implementation of RecordFunctionSegment.instructions [list]. */
83 extern PyObject
*recpy_bt_func_instructions (PyObject
*self
, void *closure
);
85 /* Implementation of RecordFunctionSegment.up [RecordFunctionSegment]. */
86 extern PyObject
*recpy_bt_func_up (PyObject
*self
, void *closure
);
88 /* Implementation of RecordFunctionSegment.prev [RecordFunctionSegment]. */
89 extern PyObject
*recpy_bt_func_prev (PyObject
*self
, void *closure
);
91 /* Implementation of RecordFunctionSegment.next [RecordFunctionSegment]. */
92 extern PyObject
*recpy_bt_func_next (PyObject
*self
, void *closure
);
94 /* Implementation of RecordAuxiliary.decoded [str]. */
95 extern PyObject
*recpy_bt_aux_data (PyObject
*self
, void *closure
);
97 #endif /* PYTHON_PY_RECORD_BTRACE_H */