diff options
author | Mark Shannon <mark@hotpy.org> | 2023-07-10 10:40:35 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-10 10:40:35 (GMT) |
commit | 0c90e7561046a2deb358e6695148060a1c199b49 (patch) | |
tree | 981359878b814a308c6fe977dd0c552e99bdd653 /Include/opcode.h | |
parent | 34c14147a2c52930b8b471905074509639e82d5b (diff) | |
download | cpython-0c90e7561046a2deb358e6695148060a1c199b49.zip cpython-0c90e7561046a2deb358e6695148060a1c199b49.tar.gz cpython-0c90e7561046a2deb358e6695148060a1c199b49.tar.bz2 |
GH-100288: Specialize LOAD_ATTR for simple class attributes. (#105990)
* Add two more specializations of LOAD_ATTR.
Diffstat (limited to 'Include/opcode.h')
-rw-r--r-- | Include/opcode.h | 52 |
1 files changed, 27 insertions, 25 deletions
diff --git a/Include/opcode.h b/Include/opcode.h index 6b855bd..6975209 100644 --- a/Include/opcode.h +++ b/Include/opcode.h @@ -201,31 +201,33 @@ extern "C" { #define LOAD_ATTR_METHOD_WITH_VALUES 78 #define LOAD_ATTR_METHOD_NO_DICT 79 #define LOAD_ATTR_METHOD_LAZY_DICT 80 -#define COMPARE_OP_FLOAT 81 -#define COMPARE_OP_INT 82 -#define COMPARE_OP_STR 84 -#define FOR_ITER_LIST 86 -#define FOR_ITER_TUPLE 88 -#define FOR_ITER_RANGE 111 -#define FOR_ITER_GEN 112 -#define CALL_BOUND_METHOD_EXACT_ARGS 113 -#define CALL_PY_EXACT_ARGS 132 -#define CALL_PY_WITH_DEFAULTS 136 -#define CALL_NO_KW_TYPE_1 148 -#define CALL_NO_KW_STR_1 153 -#define CALL_NO_KW_TUPLE_1 154 -#define CALL_BUILTIN_CLASS 155 -#define CALL_NO_KW_BUILTIN_O 159 -#define CALL_NO_KW_BUILTIN_FAST 160 -#define CALL_BUILTIN_FAST_WITH_KEYWORDS 161 -#define CALL_NO_KW_LEN 166 -#define CALL_NO_KW_ISINSTANCE 167 -#define CALL_NO_KW_LIST_APPEND 178 -#define CALL_NO_KW_METHOD_DESCRIPTOR_O 179 -#define CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 180 -#define CALL_NO_KW_METHOD_DESCRIPTOR_NOARGS 181 -#define CALL_NO_KW_METHOD_DESCRIPTOR_FAST 182 -#define CALL_NO_KW_ALLOC_AND_ENTER_INIT 183 +#define LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES 81 +#define LOAD_ATTR_NONDESCRIPTOR_NO_DICT 82 +#define COMPARE_OP_FLOAT 84 +#define COMPARE_OP_INT 86 +#define COMPARE_OP_STR 88 +#define FOR_ITER_LIST 111 +#define FOR_ITER_TUPLE 112 +#define FOR_ITER_RANGE 113 +#define FOR_ITER_GEN 132 +#define CALL_BOUND_METHOD_EXACT_ARGS 136 +#define CALL_PY_EXACT_ARGS 148 +#define CALL_PY_WITH_DEFAULTS 153 +#define CALL_NO_KW_TYPE_1 154 +#define CALL_NO_KW_STR_1 155 +#define CALL_NO_KW_TUPLE_1 159 +#define CALL_BUILTIN_CLASS 160 +#define CALL_NO_KW_BUILTIN_O 161 +#define CALL_NO_KW_BUILTIN_FAST 166 +#define CALL_BUILTIN_FAST_WITH_KEYWORDS 167 +#define CALL_NO_KW_LEN 178 +#define CALL_NO_KW_ISINSTANCE 179 +#define CALL_NO_KW_LIST_APPEND 180 +#define CALL_NO_KW_METHOD_DESCRIPTOR_O 181 +#define CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 182 +#define CALL_NO_KW_METHOD_DESCRIPTOR_NOARGS 183 +#define CALL_NO_KW_METHOD_DESCRIPTOR_FAST 184 +#define CALL_NO_KW_ALLOC_AND_ENTER_INIT 185 #define NB_ADD 0 #define NB_AND 1 |