Skip to content

Commit

Permalink
Add dyninstAPI/BPatch_frame.h
Browse files Browse the repository at this point in the history
  • Loading branch information
hainest committed Apr 3, 2024
1 parent d0a9830 commit e5593e7
Showing 1 changed file with 50 additions and 53 deletions.
103 changes: 50 additions & 53 deletions docs/dyninstAPI/public/BPatch_frame.h.rst
Original file line number Diff line number Diff line change
@@ -1,57 +1,54 @@
BPatch_frame.h
==============
.. _`sec:BPatch_frame.h`:

``BPatch_frame``
----------------
.. cpp:namespace:: BPatch_frame
BPatch_frame.h
##############

.. cpp:class:: BPatch_frame
A **BPatch_frame** object represents a stack frame. The getCallStack
member function of BPatch_thread returns a vector of BPatch_frame
objects representing the frames currently on the stack.

.. cpp:function:: BPatch_frameType getFrameType()
Return the type of the stack frame. Possible types are:

+------------------------+------------------------------------+
| **Frame Type** | **Meaning** |
+------------------------+------------------------------------+
| BPatch_frameNormal | A normal stack frame. |
+------------------------+------------------------------------+
| BPatch_frameSignal | A frame that represents a signal |
| | invocation. |
+------------------------+------------------------------------+
| BPatch_frameTrampoline | A frame the represents a call into |
| | instrumentation code. |
+------------------------+------------------------------------+

.. cpp:function:: void *getFP()
Return the frame pointer for the stack frame.

.. cpp:function:: void *getPC()
Returns the program counter associated with the stack frame.

.. cpp:function:: BPatch_function *findFunction()
Returns the function associated with the stack frame.

.. cpp:function:: BPatch_thread *getThread()
Returns the thread associated with the stack frame.

.. cpp:function:: BPatch_point *getPoint()
.. cpp:function:: BPatch_point *findPoint()
For stack frames corresponding to inserted instrumentation, returns the
instrumentation point where that instrumentation was inserted. For other
frames, returns NULL.

.. cpp:function:: bool isSynthesized()
Returns true if this frame was artificially created, false otherwise.

A **BPatch_frame** object represents a stack frame. The getCallStack
member function of BPatch_thread returns a vector of BPatch_frame
objects representing the frames currently on the stack.

.. cpp:function:: BPatch_frameType getFrameType()

Return the type of the stack frame. Possible types are:

+------------------------+------------------------------------+
| **Frame Type** | **Meaning** |
+------------------------+------------------------------------+
| BPatch_frameNormal | A normal stack frame. |
+------------------------+------------------------------------+
| BPatch_frameSignal | A frame that represents a signal |
| | invocation. |
+------------------------+------------------------------------+
| BPatch_frameTrampoline | A frame the represents a call into |
| | instrumentation code. |
+------------------------+------------------------------------+

.. cpp:function:: void *getFP()

Return the frame pointer for the stack frame.

.. cpp:function:: void *getPC()

Returns the program counter associated with the stack frame.

.. cpp:function:: BPatch_function *findFunction()

Returns the function associated with the stack frame.

.. cpp:function:: BPatch_thread *getThread()

Returns the thread associated with the stack frame.

.. cpp:function:: BPatch_point *getPoint()

.. cpp:function:: BPatch_point *findPoint()

For stack frames corresponding to inserted instrumentation, returns the
instrumentation point where that instrumentation was inserted. For other
frames, returns NULL.

.. cpp:function:: bool isSynthesized()

Returns true if this frame was artificially created, false otherwise.

0 comments on commit e5593e7

Please sign in to comment.