diff options
author | Brandt Bucher <brandt@python.org> | 2021-10-27 09:45:35 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-27 09:45:35 (GMT) |
commit | 82a662e5216a9b3969054c540a759a9493468510 (patch) | |
tree | 51bf9b433828dfd6d58f172097cf06202b54df9a /Python/opcode_targets.h | |
parent | 19a6c41e56f129a67e2a3c96464ba893a97236f7 (diff) | |
download | cpython-82a662e5216a9b3969054c540a759a9493468510.zip cpython-82a662e5216a9b3969054c540a759a9493468510.tar.gz cpython-82a662e5216a9b3969054c540a759a9493468510.tar.bz2 |
bpo-44511: Improve the bytecode for class and mapping patterns (GH-26922)
* Refactor mapping patterns and speed up class patterns.
* Simplify MATCH_KEYS and MATCH_CLASS.
* Add COPY opcode.
Diffstat (limited to 'Python/opcode_targets.h')
-rw-r--r-- | Python/opcode_targets.h | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/Python/opcode_targets.h b/Python/opcode_targets.h index 5c7d3ad..93a9e4a 100644 --- a/Python/opcode_targets.h +++ b/Python/opcode_targets.h @@ -33,11 +33,10 @@ static void *opcode_targets[256] = { &&TARGET_MATCH_MAPPING, &&TARGET_MATCH_SEQUENCE, &&TARGET_MATCH_KEYS, - &&TARGET_COPY_DICT_WITHOUT_KEYS, - &&TARGET_PUSH_EXC_INFO, &&TARGET_BINARY_MULTIPLY_INT, - &&TARGET_POP_EXCEPT_AND_RERAISE, + &&TARGET_PUSH_EXC_INFO, &&TARGET_BINARY_MULTIPLY_FLOAT, + &&TARGET_POP_EXCEPT_AND_RERAISE, &&TARGET_BINARY_SUBSCR_ADAPTIVE, &&TARGET_BINARY_SUBSCR_LIST_INT, &&TARGET_BINARY_SUBSCR_TUPLE_INT, @@ -48,6 +47,7 @@ static void *opcode_targets[256] = { &&TARGET_CALL_FUNCTION_LEN, &&TARGET_CALL_FUNCTION_ISINSTANCE, &&TARGET_CALL_FUNCTION_PY_SIMPLE, + &&TARGET_JUMP_ABSOLUTE_QUICK, &&TARGET_WITH_EXCEPT_START, &&TARGET_GET_AITER, &&TARGET_GET_ANEXT, @@ -57,7 +57,7 @@ static void *opcode_targets[256] = { &&TARGET_INPLACE_ADD, &&TARGET_INPLACE_SUBTRACT, &&TARGET_INPLACE_MULTIPLY, - &&TARGET_JUMP_ABSOLUTE_QUICK, + &&TARGET_LOAD_ATTR_ADAPTIVE, &&TARGET_INPLACE_MODULO, &&TARGET_STORE_SUBSCR, &&TARGET_DELETE_SUBSCR, @@ -79,15 +79,15 @@ static void *opcode_targets[256] = { &&TARGET_INPLACE_AND, &&TARGET_INPLACE_XOR, &&TARGET_INPLACE_OR, - &&TARGET_LOAD_ATTR_ADAPTIVE, &&TARGET_LOAD_ATTR_INSTANCE_VALUE, + &&TARGET_LOAD_ATTR_WITH_HINT, &&TARGET_LIST_TO_TUPLE, &&TARGET_RETURN_VALUE, &&TARGET_IMPORT_STAR, &&TARGET_SETUP_ANNOTATIONS, &&TARGET_YIELD_VALUE, - &&TARGET_LOAD_ATTR_WITH_HINT, &&TARGET_LOAD_ATTR_SLOT, + &&TARGET_LOAD_ATTR_MODULE, &&TARGET_POP_EXCEPT, &&TARGET_STORE_NAME, &&TARGET_DELETE_NAME, @@ -119,7 +119,7 @@ static void *opcode_targets[256] = { &&TARGET_IS_OP, &&TARGET_CONTAINS_OP, &&TARGET_RERAISE, - &&TARGET_LOAD_ATTR_MODULE, + &&TARGET_COPY, &&TARGET_JUMP_IF_NOT_EXC_MATCH, &&TARGET_LOAD_GLOBAL_ADAPTIVE, &&TARGET_LOAD_GLOBAL_MODULE, |