]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
bpo-44525: Split calls into PRECALL and CALL (GH-30011)
authorMark Shannon <mark@hotpy.org>
Tue, 14 Dec 2021 18:22:44 +0000 (18:22 +0000)
committerGitHub <noreply@github.com>
Tue, 14 Dec 2021 18:22:44 +0000 (18:22 +0000)
commit9f8f45144b6f0ad481e80570538cce89b414f7f9
treebde67ec27794633c1e58d7349be4bf16687a1949
parentd60457a6673cf0263213c2f2be02c633ec2e2038
bpo-44525: Split calls into PRECALL and CALL (GH-30011)

* Add 3 new opcodes for calls: PRECALL_METHOD, CALL_NO_KW, CALL_KW.

* Update specialization to handle new CALL opcodes.

* Specialize call to method descriptors.

* Remove old CALL opcodes: CALL_FUNCTION, CALL_METHOD, CALL_METHOD_KW, CALL_FUNCTION_KW.
15 files changed:
Doc/library/dis.rst
Include/internal/pycore_code.h
Include/opcode.h
Lib/importlib/_bootstrap_external.py
Lib/opcode.py
Lib/test/test_compile.py
Lib/test/test_dis.py
Misc/NEWS.d/next/Core and Builtins/2021-12-13-17-12-16.bpo-44525.4-FiSf.rst [new file with mode: 0644]
Objects/exception_handling_notes.txt
Objects/lnotab_notes.txt
Programs/test_frozenmain.h
Python/ceval.c
Python/compile.c
Python/opcode_targets.h
Python/specialize.c