diff options
author | Ken Jin <28750310+Fidget-Spinner@users.noreply.github.com> | 2021-10-19 23:16:36 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-19 23:16:36 (GMT) |
commit | 3163e68c342434db37c69669017f96a4bb2d5f13 (patch) | |
tree | c3a42ae0839c533db3fac33d6005b7a1d7bf5e78 /Include/opcode.h | |
parent | 3592980f9122ab0d9ed93711347742d110b749c2 (diff) | |
download | cpython-3163e68c342434db37c69669017f96a4bb2d5f13.zip cpython-3163e68c342434db37c69669017f96a4bb2d5f13.tar.gz cpython-3163e68c342434db37c69669017f96a4bb2d5f13.tar.bz2 |
bpo-44525: Specialize ``CALL_FUNCTION`` for C function calls (GH-26934)
Diffstat (limited to 'Include/opcode.h')
-rw-r--r-- | Include/opcode.h | 51 |
1 files changed, 28 insertions, 23 deletions
diff --git a/Include/opcode.h b/Include/opcode.h index fabb8d1..22d968e 100644 --- a/Include/opcode.h +++ b/Include/opcode.h @@ -148,29 +148,34 @@ extern "C" { #define BINARY_SUBSCR_LIST_INT 40 #define BINARY_SUBSCR_TUPLE_INT 41 #define BINARY_SUBSCR_DICT 42 -#define JUMP_ABSOLUTE_QUICK 43 -#define LOAD_ATTR_ADAPTIVE 44 -#define LOAD_ATTR_INSTANCE_VALUE 45 -#define LOAD_ATTR_WITH_HINT 46 -#define LOAD_ATTR_SLOT 47 -#define LOAD_ATTR_MODULE 48 -#define LOAD_GLOBAL_ADAPTIVE 58 -#define LOAD_GLOBAL_MODULE 80 -#define LOAD_GLOBAL_BUILTIN 81 -#define LOAD_METHOD_ADAPTIVE 87 -#define LOAD_METHOD_CACHED 88 -#define LOAD_METHOD_CLASS 120 -#define LOAD_METHOD_MODULE 122 -#define LOAD_METHOD_NO_DICT 123 -#define STORE_ATTR_ADAPTIVE 127 -#define STORE_ATTR_INSTANCE_VALUE 128 -#define STORE_ATTR_SLOT 134 -#define STORE_ATTR_WITH_HINT 140 -#define LOAD_FAST__LOAD_FAST 143 -#define STORE_FAST__LOAD_FAST 149 -#define LOAD_FAST__LOAD_CONST 150 -#define LOAD_CONST__LOAD_FAST 151 -#define STORE_FAST__STORE_FAST 153 +#define CALL_FUNCTION_ADAPTIVE 43 +#define CALL_FUNCTION_BUILTIN_O 44 +#define CALL_FUNCTION_BUILTIN_FAST 45 +#define CALL_FUNCTION_LEN 46 +#define CALL_FUNCTION_ISINSTANCE 47 +#define JUMP_ABSOLUTE_QUICK 48 +#define LOAD_ATTR_ADAPTIVE 58 +#define LOAD_ATTR_INSTANCE_VALUE 80 +#define LOAD_ATTR_WITH_HINT 81 +#define LOAD_ATTR_SLOT 87 +#define LOAD_ATTR_MODULE 88 +#define LOAD_GLOBAL_ADAPTIVE 120 +#define LOAD_GLOBAL_MODULE 122 +#define LOAD_GLOBAL_BUILTIN 123 +#define LOAD_METHOD_ADAPTIVE 127 +#define LOAD_METHOD_CACHED 128 +#define LOAD_METHOD_CLASS 134 +#define LOAD_METHOD_MODULE 140 +#define LOAD_METHOD_NO_DICT 143 +#define STORE_ATTR_ADAPTIVE 149 +#define STORE_ATTR_INSTANCE_VALUE 150 +#define STORE_ATTR_SLOT 151 +#define STORE_ATTR_WITH_HINT 153 +#define LOAD_FAST__LOAD_FAST 154 +#define STORE_FAST__LOAD_FAST 158 +#define LOAD_FAST__LOAD_CONST 159 +#define LOAD_CONST__LOAD_FAST 167 +#define STORE_FAST__STORE_FAST 168 #define DO_TRACING 255 #ifdef NEED_OPCODE_JUMP_TABLES static uint32_t _PyOpcode_RelativeJump[8] = { |