summaryrefslogtreecommitdiffstats
path: root/Python/optimizer_cases.c.h
diff options
context:
space:
mode:
authorMark Shannon <mark@hotpy.org>2024-04-26 17:08:50 (GMT)
committerGitHub <noreply@github.com>2024-04-26 17:08:50 (GMT)
commit3e06c7f719b99cc7f5e8889319cff4980e41d3e8 (patch)
tree042c06326ca8b8866405375d8cf6b1f587cfa28d /Python/optimizer_cases.c.h
parent63add11704078390909a485b57a7de6a0358fc2b (diff)
downloadcpython-3e06c7f719b99cc7f5e8889319cff4980e41d3e8.zip
cpython-3e06c7f719b99cc7f5e8889319cff4980e41d3e8.tar.gz
cpython-3e06c7f719b99cc7f5e8889319cff4980e41d3e8.tar.bz2
GH-118095: Add dynamic exit support and FOR_ITER_GEN support to tier 2 (GH-118279)
Diffstat (limited to 'Python/optimizer_cases.c.h')
-rw-r--r--Python/optimizer_cases.c.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/Python/optimizer_cases.c.h b/Python/optimizer_cases.c.h
index 4f0941a..b196568 100644
--- a/Python/optimizer_cases.c.h
+++ b/Python/optimizer_cases.c.h
@@ -1439,7 +1439,14 @@
break;
}
- /* _FOR_ITER_GEN is not a viable micro-op for tier 2 */
+ case _FOR_ITER_GEN_FRAME: {
+ _PyInterpreterFrame *gen_frame;
+ gen_frame = sym_new_not_null(ctx);
+ if (gen_frame == NULL) goto out_of_space;
+ stack_pointer[0] = (_Py_UopsSymbol *)gen_frame;
+ stack_pointer += 1;
+ break;
+ }
/* _BEFORE_ASYNC_WITH is not a viable micro-op for tier 2 */
@@ -2109,6 +2116,10 @@
break;
}
+ case _DYNAMIC_EXIT: {
+ break;
+ }
+
case _START_EXECUTOR: {
break;
}