mirror of
https://github.com/python/cpython.git
synced 2025-10-10 00:43:41 +00:00
gh-107674: Improve performance of sys.settrace
(GH-114986)
This commit is contained in:
parent
9578288a3e
commit
0a61e23700
7 changed files with 64 additions and 53 deletions
|
@ -339,12 +339,16 @@ do { \
|
|||
// for an exception handler, displaying the traceback, and so on
|
||||
#define INSTRUMENTED_JUMP(src, dest, event) \
|
||||
do { \
|
||||
_PyFrame_SetStackPointer(frame, stack_pointer); \
|
||||
next_instr = _Py_call_instrumentation_jump(tstate, event, frame, src, dest); \
|
||||
stack_pointer = _PyFrame_GetStackPointer(frame); \
|
||||
if (next_instr == NULL) { \
|
||||
next_instr = (dest)+1; \
|
||||
goto error; \
|
||||
if (tstate->tracing) {\
|
||||
next_instr = dest; \
|
||||
} else { \
|
||||
_PyFrame_SetStackPointer(frame, stack_pointer); \
|
||||
next_instr = _Py_call_instrumentation_jump(tstate, event, frame, src, dest); \
|
||||
stack_pointer = _PyFrame_GetStackPointer(frame); \
|
||||
if (next_instr == NULL) { \
|
||||
next_instr = (dest)+1; \
|
||||
goto error; \
|
||||
} \
|
||||
} \
|
||||
} while (0);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue