Home | History | Annotate | Line # | Download | only in python
      1 /* Python interface to btrace record targets.
      2 
      3    Copyright 2016-2024 Free Software Foundation, Inc.
      4 
      5    This file is part of GDB.
      6 
      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.
     11 
     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.
     16 
     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/>.  */
     19 
     20 #ifndef PYTHON_PY_RECORD_BTRACE_H
     21 #define PYTHON_PY_RECORD_BTRACE_H
     22 
     23 #include "python-internal.h"
     24 
     25 /* Implementation of record.method [str].  */
     26 extern PyObject *recpy_bt_method (PyObject *self, void *closure);
     27 
     28 /* Implementation of record.format [str].  */
     29 extern PyObject *recpy_bt_format (PyObject *self, void *closure);
     30 
     31 /* Implementation of record.goto (instruction) -> None.  */
     32 extern PyObject *recpy_bt_goto (PyObject *self, PyObject *value);
     33 
     34 /* Implementation of record.instruction_history [list].  */
     35 extern PyObject *recpy_bt_instruction_history (PyObject *self, void *closure);
     36 
     37 /* Implementation of record.function_call_history [list].  */
     38 extern PyObject *recpy_bt_function_call_history (PyObject *self, void *closure);
     39 
     40 /* Implementation of record.replay_position [instruction].  */
     41 extern PyObject *recpy_bt_replay_position (PyObject *self, void *closure);
     42 
     43 /* Implementation of record.begin [instruction].  */
     44 extern PyObject *recpy_bt_begin (PyObject *self, void *closure);
     45 
     46 /* Implementation of record.end [instruction].  */
     47 extern PyObject *recpy_bt_end (PyObject *self, void *closure);
     48 
     49 /* Implementation of RecordInstruction.number [int].  */
     50 extern PyObject *recpy_bt_insn_number (PyObject *self, void *closure);
     51 
     52 /* Implementation of RecordInstruction.sal [gdb.Symtab_and_line].  */
     53 extern PyObject *recpy_bt_insn_sal (PyObject *self, void *closure);
     54 
     55 /* Implementation of RecordInstruction.pc [int].  */
     56 extern PyObject *recpy_bt_insn_pc (PyObject *self, void *closure);
     57 
     58 /* Implementation of RecordInstruction.data [buffer].  */
     59 extern PyObject *recpy_bt_insn_data (PyObject *self, void *closure);
     60 
     61 /* Implementation of RecordInstruction.decoded [str].  */
     62 extern PyObject *recpy_bt_insn_decoded (PyObject *self, void *closure);
     63 
     64 /* Implementation of RecordInstruction.size [int].  */
     65 extern PyObject *recpy_bt_insn_size (PyObject *self, void *closure);
     66 
     67 /* Implementation of RecordInstruction.is_speculative [bool].  */
     68 extern PyObject *recpy_bt_insn_is_speculative (PyObject *self, void *closure);
     69 
     70 /* Implementation of RecordFunctionSegment.number [int].  */
     71 extern PyObject *recpy_bt_func_number (PyObject *self, void *closure);
     72 
     73 /* Implementation of RecordFunctionSegment.number [int].  */
     74 extern PyObject *recpy_bt_func_level (PyObject *self, void *closure);
     75 
     76 /* Implementation of RecordFunctionSegment.symbol [gdb.Symbol].  */
     77 extern PyObject *recpy_bt_func_symbol (PyObject *self, void *closure);
     78 
     79 /* Implementation of RecordFunctionSegment.instructions [list].  */
     80 extern PyObject *recpy_bt_func_instructions (PyObject *self, void *closure);
     81 
     82 /* Implementation of RecordFunctionSegment.up [RecordFunctionSegment].  */
     83 extern PyObject *recpy_bt_func_up (PyObject *self, void *closure);
     84 
     85 /* Implementation of RecordFunctionSegment.prev [RecordFunctionSegment].  */
     86 extern PyObject *recpy_bt_func_prev (PyObject *self, void *closure);
     87 
     88 /* Implementation of RecordFunctionSegment.next [RecordFunctionSegment].  */
     89 extern PyObject *recpy_bt_func_next (PyObject *self, void *closure);
     90 
     91 #endif /* PYTHON_PY_RECORD_BTRACE_H */
     92