summaryrefslogtreecommitdiffstats
path: root/Include/opcode.h
diff options
context:
space:
mode:
authorMark Shannon <mark@hotpy.org>2021-12-15 15:03:42 (GMT)
committerGitHub <noreply@github.com>2021-12-15 15:03:42 (GMT)
commit3a60bfef49b3324660a615a8e6d10710e5f669d9 (patch)
treec0b4dec8daf9f020a68be673c169d88faded0e6a /Include/opcode.h
parentf025ae63dccf96c4a1d781a6438bd9ed1502f0a1 (diff)
downloadcpython-3a60bfef49b3324660a615a8e6d10710e5f669d9.zip
cpython-3a60bfef49b3324660a615a8e6d10710e5f669d9.tar.gz
cpython-3a60bfef49b3324660a615a8e6d10710e5f669d9.tar.bz2
bpo-44525: Specialize for calls to type and other builtin classes with 1 argument. (GH-29942)
Diffstat (limited to 'Include/opcode.h')
-rw-r--r--Include/opcode.h50
1 files changed, 26 insertions, 24 deletions
diff --git a/Include/opcode.h b/Include/opcode.h
index bdabffd..0556526 100644
--- a/Include/opcode.h
+++ b/Include/opcode.h
@@ -142,30 +142,32 @@ extern "C" {
#define CALL_NO_KW_PY_SIMPLE 45
#define CALL_NO_KW_LIST_APPEND 46
#define CALL_NO_KW_METHOD_DESCRIPTOR_O 47
-#define CALL_NO_KW_METHOD_DESCRIPTOR_FAST 48
-#define JUMP_ABSOLUTE_QUICK 55
-#define LOAD_ATTR_ADAPTIVE 56
-#define LOAD_ATTR_INSTANCE_VALUE 57
-#define LOAD_ATTR_WITH_HINT 58
-#define LOAD_ATTR_SLOT 59
-#define LOAD_ATTR_MODULE 62
-#define LOAD_GLOBAL_ADAPTIVE 63
-#define LOAD_GLOBAL_MODULE 64
-#define LOAD_GLOBAL_BUILTIN 65
-#define LOAD_METHOD_ADAPTIVE 66
-#define LOAD_METHOD_CACHED 67
-#define LOAD_METHOD_CLASS 72
-#define LOAD_METHOD_MODULE 75
-#define LOAD_METHOD_NO_DICT 76
-#define STORE_ATTR_ADAPTIVE 77
-#define STORE_ATTR_INSTANCE_VALUE 78
-#define STORE_ATTR_SLOT 79
-#define STORE_ATTR_WITH_HINT 80
-#define LOAD_FAST__LOAD_FAST 81
-#define STORE_FAST__LOAD_FAST 87
-#define LOAD_FAST__LOAD_CONST 128
-#define LOAD_CONST__LOAD_FAST 131
-#define STORE_FAST__STORE_FAST 134
+#define CALL_NO_KW_TYPE_1 48
+#define CALL_NO_KW_BUILTIN_CLASS_1 55
+#define CALL_NO_KW_METHOD_DESCRIPTOR_FAST 56
+#define JUMP_ABSOLUTE_QUICK 57
+#define LOAD_ATTR_ADAPTIVE 58
+#define LOAD_ATTR_INSTANCE_VALUE 59
+#define LOAD_ATTR_WITH_HINT 62
+#define LOAD_ATTR_SLOT 63
+#define LOAD_ATTR_MODULE 64
+#define LOAD_GLOBAL_ADAPTIVE 65
+#define LOAD_GLOBAL_MODULE 66
+#define LOAD_GLOBAL_BUILTIN 67
+#define LOAD_METHOD_ADAPTIVE 72
+#define LOAD_METHOD_CACHED 75
+#define LOAD_METHOD_CLASS 76
+#define LOAD_METHOD_MODULE 77
+#define LOAD_METHOD_NO_DICT 78
+#define STORE_ATTR_ADAPTIVE 79
+#define STORE_ATTR_INSTANCE_VALUE 80
+#define STORE_ATTR_SLOT 81
+#define STORE_ATTR_WITH_HINT 87
+#define LOAD_FAST__LOAD_FAST 128
+#define STORE_FAST__LOAD_FAST 131
+#define LOAD_FAST__LOAD_CONST 134
+#define LOAD_CONST__LOAD_FAST 140
+#define STORE_FAST__STORE_FAST 141
#define DO_TRACING 255
#ifdef NEED_OPCODE_JUMP_TABLES
static uint32_t _PyOpcode_RelativeJump[8] = {