]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
GH-130296: Avoid stack transients in four instructions. (GH-130310)
authorMark Shannon <mark@hotpy.org>
Fri, 28 Feb 2025 18:00:38 +0000 (18:00 +0000)
committerGitHub <noreply@github.com>
Fri, 28 Feb 2025 18:00:38 +0000 (18:00 +0000)
commit54965f3fb25b381995a73b09d928c344bd2b86bd
treecf2f71ac2775a4cfec347a70fd123d176c353948
parentab11c097052757b79060c75dd4835c2431e752b7
GH-130296: Avoid stack transients in four instructions. (GH-130310)

* Combine _GUARD_GLOBALS_VERSION_PUSH_KEYS and _LOAD_GLOBAL_MODULE_FROM_KEYS into _LOAD_GLOBAL_MODULE

* Combine _GUARD_BUILTINS_VERSION_PUSH_KEYS and _LOAD_GLOBAL_BUILTINS_FROM_KEYS into _LOAD_GLOBAL_BUILTINS

* Combine _CHECK_ATTR_MODULE_PUSH_KEYS and _LOAD_ATTR_MODULE_FROM_KEYS into _LOAD_ATTR_MODULE

* Remove stack transient in LOAD_ATTR_WITH_HINT
15 files changed:
Include/internal/pycore_opcode_metadata.h
Include/internal/pycore_uop_ids.h
Include/internal/pycore_uop_metadata.h
Lib/test/test_generated_cases.py
Python/bytecodes.c
Python/executor_cases.c.h
Python/generated_cases.c.h
Python/optimizer.c
Python/optimizer_analysis.c
Python/optimizer_bytecodes.c
Python/optimizer_cases.c.h
Tools/cases_generator/analyzer.py
Tools/cases_generator/generators_common.py
Tools/cases_generator/opcode_metadata_generator.py
Tools/cases_generator/tier2_generator.py