summaryrefslogtreecommitdiffstats
path: root/Include/internal/pycore_opcode.h
diff options
context:
space:
mode:
authorMark Shannon <mark@hotpy.org>2023-01-16 12:35:21 (GMT)
committerGitHub <noreply@github.com>2023-01-16 12:35:21 (GMT)
commit7b14c2ef194b6eed79670aa9d7e29ab8e2256a56 (patch)
tree794188d49a9f359cfa7663c25be587634f070f22 /Include/internal/pycore_opcode.h
parentb1a74a182d8762bda51838401ac92b6ebad9632a (diff)
downloadcpython-7b14c2ef194b6eed79670aa9d7e29ab8e2256a56.zip
cpython-7b14c2ef194b6eed79670aa9d7e29ab8e2256a56.tar.gz
cpython-7b14c2ef194b6eed79670aa9d7e29ab8e2256a56.tar.bz2
GH-100982: Add `COMPARE_AND_BRANCH` instruction (GH-100983)
Diffstat (limited to 'Include/internal/pycore_opcode.h')
-rw-r--r--Include/internal/pycore_opcode.h23
1 files changed, 12 insertions, 11 deletions
diff --git a/Include/internal/pycore_opcode.h b/Include/internal/pycore_opcode.h
index 5806d69..05c0485 100644
--- a/Include/internal/pycore_opcode.h
+++ b/Include/internal/pycore_opcode.h
@@ -50,6 +50,7 @@ const uint8_t _PyOpcode_Caches[256] = {
[COMPARE_OP] = 1,
[LOAD_GLOBAL] = 5,
[BINARY_OP] = 1,
+ [COMPARE_AND_BRANCH] = 1,
[CALL] = 4,
};
@@ -102,10 +103,11 @@ const uint8_t _PyOpcode_Deopt[256] = {
[CHECK_EG_MATCH] = CHECK_EG_MATCH,
[CHECK_EXC_MATCH] = CHECK_EXC_MATCH,
[CLEANUP_THROW] = CLEANUP_THROW,
+ [COMPARE_AND_BRANCH] = COMPARE_AND_BRANCH,
+ [COMPARE_AND_BRANCH_FLOAT] = COMPARE_AND_BRANCH,
+ [COMPARE_AND_BRANCH_INT] = COMPARE_AND_BRANCH,
+ [COMPARE_AND_BRANCH_STR] = COMPARE_AND_BRANCH,
[COMPARE_OP] = COMPARE_OP,
- [COMPARE_OP_FLOAT_JUMP] = COMPARE_OP,
- [COMPARE_OP_INT_JUMP] = COMPARE_OP,
- [COMPARE_OP_STR_JUMP] = COMPARE_OP,
[CONTAINS_OP] = CONTAINS_OP,
[COPY] = COPY,
[COPY_FREE_VARS] = COPY_FREE_VARS,
@@ -274,7 +276,7 @@ static const char *const _PyOpcode_OpName[263] = {
[CALL_NO_KW_STR_1] = "CALL_NO_KW_STR_1",
[CALL_NO_KW_TUPLE_1] = "CALL_NO_KW_TUPLE_1",
[CALL_NO_KW_TYPE_1] = "CALL_NO_KW_TYPE_1",
- [COMPARE_OP_FLOAT_JUMP] = "COMPARE_OP_FLOAT_JUMP",
+ [COMPARE_AND_BRANCH_FLOAT] = "COMPARE_AND_BRANCH_FLOAT",
[WITH_EXCEPT_START] = "WITH_EXCEPT_START",
[GET_AITER] = "GET_AITER",
[GET_ANEXT] = "GET_ANEXT",
@@ -282,8 +284,8 @@ static const char *const _PyOpcode_OpName[263] = {
[BEFORE_WITH] = "BEFORE_WITH",
[END_ASYNC_FOR] = "END_ASYNC_FOR",
[CLEANUP_THROW] = "CLEANUP_THROW",
- [COMPARE_OP_INT_JUMP] = "COMPARE_OP_INT_JUMP",
- [COMPARE_OP_STR_JUMP] = "COMPARE_OP_STR_JUMP",
+ [COMPARE_AND_BRANCH_INT] = "COMPARE_AND_BRANCH_INT",
+ [COMPARE_AND_BRANCH_STR] = "COMPARE_AND_BRANCH_STR",
[FOR_ITER_LIST] = "FOR_ITER_LIST",
[FOR_ITER_TUPLE] = "FOR_ITER_TUPLE",
[STORE_SUBSCR] = "STORE_SUBSCR",
@@ -367,9 +369,9 @@ static const char *const _PyOpcode_OpName[263] = {
[STORE_DEREF] = "STORE_DEREF",
[DELETE_DEREF] = "DELETE_DEREF",
[JUMP_BACKWARD] = "JUMP_BACKWARD",
- [STORE_FAST__STORE_FAST] = "STORE_FAST__STORE_FAST",
+ [COMPARE_AND_BRANCH] = "COMPARE_AND_BRANCH",
[CALL_FUNCTION_EX] = "CALL_FUNCTION_EX",
- [STORE_SUBSCR_DICT] = "STORE_SUBSCR_DICT",
+ [STORE_FAST__STORE_FAST] = "STORE_FAST__STORE_FAST",
[EXTENDED_ARG] = "EXTENDED_ARG",
[LIST_APPEND] = "LIST_APPEND",
[SET_ADD] = "SET_ADD",
@@ -379,14 +381,14 @@ static const char *const _PyOpcode_OpName[263] = {
[YIELD_VALUE] = "YIELD_VALUE",
[RESUME] = "RESUME",
[MATCH_CLASS] = "MATCH_CLASS",
+ [STORE_SUBSCR_DICT] = "STORE_SUBSCR_DICT",
[STORE_SUBSCR_LIST_INT] = "STORE_SUBSCR_LIST_INT",
- [UNPACK_SEQUENCE_LIST] = "UNPACK_SEQUENCE_LIST",
[FORMAT_VALUE] = "FORMAT_VALUE",
[BUILD_CONST_KEY_MAP] = "BUILD_CONST_KEY_MAP",
[BUILD_STRING] = "BUILD_STRING",
+ [UNPACK_SEQUENCE_LIST] = "UNPACK_SEQUENCE_LIST",
[UNPACK_SEQUENCE_TUPLE] = "UNPACK_SEQUENCE_TUPLE",
[UNPACK_SEQUENCE_TWO_TUPLE] = "UNPACK_SEQUENCE_TWO_TUPLE",
- [160] = "<160>",
[161] = "<161>",
[LIST_EXTEND] = "LIST_EXTEND",
[SET_UPDATE] = "SET_UPDATE",
@@ -493,7 +495,6 @@ static const char *const _PyOpcode_OpName[263] = {
#endif
#define EXTRA_CASES \
- case 160: \
case 161: \
case 166: \
case 167: \