summaryrefslogtreecommitdiffstats
path: root/Python/executor_cases.c.h
diff options
context:
space:
mode:
Diffstat (limited to 'Python/executor_cases.c.h')
-rw-r--r--Python/executor_cases.c.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/Python/executor_cases.c.h b/Python/executor_cases.c.h
index 82f2171..9847679 100644
--- a/Python/executor_cases.c.h
+++ b/Python/executor_cases.c.h
@@ -3592,6 +3592,14 @@
break;
}
+ case _CHECK_STACK_SPACE_OPERAND: {
+ uint32_t framesize = (uint32_t)CURRENT_OPERAND();
+ assert(framesize <= INT_MAX);
+ if (!_PyThreadState_HasStackSpace(tstate, framesize)) JUMP_TO_JUMP_TARGET();
+ if (tstate->py_recursion_remaining <= 1) JUMP_TO_JUMP_TARGET();
+ break;
+ }
+
case _SAVE_RETURN_OFFSET: {
oparg = CURRENT_OPARG();
#if TIER_ONE