summaryrefslogtreecommitdiffstats
path: root/Include/opcode.h
diff options
context:
space:
mode:
authorMark Shannon <mark@hotpy.org>2021-06-10 07:46:01 (GMT)
committerGitHub <noreply@github.com>2021-06-10 07:46:01 (GMT)
commite117c0283705943189e6b1aef668a1f68f3f00a4 (patch)
tree2f0ed87b3a6ee853b65b7db260b39d62337e87bd /Include/opcode.h
parent309ab616020f8504ced8ca64f7d7abc2df25a37f (diff)
downloadcpython-e117c0283705943189e6b1aef668a1f68f3f00a4.zip
cpython-e117c0283705943189e6b1aef668a1f68f3f00a4.tar.gz
cpython-e117c0283705943189e6b1aef668a1f68f3f00a4.tar.bz2
bpo-44337: Port LOAD_ATTR to PEP 659 adaptive interpreter (GH-26595)
* Specialize LOAD_ATTR with LOAD_ATTR_SLOT and LOAD_ATTR_SPLIT_KEYS * Move dict-common.h to internal/pycore_dict.h * Add LOAD_ATTR_WITH_HINT specialized opcode. * Quicken in function if loopy * Specialize LOAD_ATTR for module attributes. * Add specialization stats
Diffstat (limited to 'Include/opcode.h')
-rw-r--r--Include/opcode.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/Include/opcode.h b/Include/opcode.h
index c65e2f4..8f5be99 100644
--- a/Include/opcode.h
+++ b/Include/opcode.h
@@ -136,6 +136,12 @@ extern "C" {
#define DICT_MERGE 164
#define DICT_UPDATE 165
#define CALL_METHOD_KW 166
+#define JUMP_ABSOLUTE_QUICK 7
+#define LOAD_ATTR_ADAPTIVE 8
+#define LOAD_ATTR_SPLIT_KEYS 13
+#define LOAD_ATTR_WITH_HINT 14
+#define LOAD_ATTR_SLOT 18
+#define LOAD_ATTR_MODULE 21
#ifdef NEED_OPCODE_JUMP_TABLES
static uint32_t _PyOpcode_RelativeJump[8] = {
0U,