diff options
author | Ken Jin <kenjin@python.org> | 2024-09-14 00:23:51 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-14 00:23:51 +0800 |
commit | 8810e286fa48876422d1b230208911decbead294 (patch) | |
tree | 0d171d70418884104b8681e0e7492d136b8b6778 /Python/optimizer_cases.c.h | |
parent | 74330d992be26829dba65ab83d698d42b2f2a2ee (diff) | |
download | cpython-8810e286fa48876422d1b230208911decbead294.tar.gz cpython-8810e286fa48876422d1b230208911decbead294.zip |
gh-121459: Deferred LOAD_GLOBAL (GH-123128)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Sam Gross <655866+colesbury@users.noreply.github.com>
Diffstat (limited to 'Python/optimizer_cases.c.h')
-rw-r--r-- | Python/optimizer_cases.c.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Python/optimizer_cases.c.h b/Python/optimizer_cases.c.h index e89c969ad0d..a6cfa271ae6 100644 --- a/Python/optimizer_cases.c.h +++ b/Python/optimizer_cases.c.h @@ -829,11 +829,13 @@ } case _LOAD_GLOBAL: { - _Py_UopsSymbol *res; + _Py_UopsSymbol **res; _Py_UopsSymbol *null = NULL; - res = sym_new_not_null(ctx); + res = &stack_pointer[0]; + for (int _i = 1; --_i >= 0;) { + res[_i] = sym_new_not_null(ctx); + } null = sym_new_null(ctx); - stack_pointer[0] = res; if (oparg & 1) stack_pointer[1] = null; stack_pointer += 1 + (oparg & 1); assert(WITHIN_STACK_BOUNDS()); |