mirror of
https://github.com/python/cpython.git
synced 2025-10-17 20:28:43 +00:00
GH-128914: Remove all but one conditional stack effects (GH-129226)
* Remove all 'if (0)' and 'if (1)' conditional stack effects * Use array instead of conditional for BUILD_SLICE args * Refactor LOAD_GLOBAL to use a common conditional uop * Remove conditional stack effects from LOAD_ATTR specializations * Replace conditional stack effects in LOAD_ATTR with a 0 or 1 sized array. * Remove conditional stack effects from CALL_FUNCTION_EX
This commit is contained in:
parent
8ec76d9034
commit
75b4962157
19 changed files with 518 additions and 758 deletions
4
Python/opcode_targets.h
generated
4
Python/opcode_targets.h
generated
|
@ -3,6 +3,7 @@ static void *opcode_targets[256] = {
|
|||
&&TARGET_BINARY_SLICE,
|
||||
&&TARGET_BINARY_SUBSCR,
|
||||
&&TARGET_BINARY_OP_INPLACE_ADD_UNICODE,
|
||||
&&TARGET_CALL_FUNCTION_EX,
|
||||
&&TARGET_CHECK_EG_MATCH,
|
||||
&&TARGET_CHECK_EXC_MATCH,
|
||||
&&TARGET_CLEANUP_THROW,
|
||||
|
@ -15,8 +16,8 @@ static void *opcode_targets[256] = {
|
|||
&&TARGET_FORMAT_WITH_SPEC,
|
||||
&&TARGET_GET_AITER,
|
||||
&&TARGET_GET_ANEXT,
|
||||
&&TARGET_GET_ITER,
|
||||
&&TARGET_RESERVED,
|
||||
&&TARGET_GET_ITER,
|
||||
&&TARGET_GET_LEN,
|
||||
&&TARGET_GET_YIELD_FROM_ITER,
|
||||
&&TARGET_INTERPRETER_EXIT,
|
||||
|
@ -51,7 +52,6 @@ static void *opcode_targets[256] = {
|
|||
&&TARGET_BUILD_STRING,
|
||||
&&TARGET_BUILD_TUPLE,
|
||||
&&TARGET_CALL,
|
||||
&&TARGET_CALL_FUNCTION_EX,
|
||||
&&TARGET_CALL_INTRINSIC_1,
|
||||
&&TARGET_CALL_INTRINSIC_2,
|
||||
&&TARGET_CALL_KW,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue