]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-114058: Improve method information in redundancy eliminator (GH-115848)
authorKen Jin <kenjin@python.org>
Fri, 23 Feb 2024 15:41:10 +0000 (23:41 +0800)
committerGitHub <noreply@github.com>
Fri, 23 Feb 2024 15:41:10 +0000 (23:41 +0800)
Python/tier2_redundancy_eliminator_bytecodes.c
Python/tier2_redundancy_eliminator_cases.c.h

index ef7b43d53539ce642f1f35e5de5b1809aaf93d99..b9afd3089e107785f66a1aa68b8a7c32a5add1a8 100644 (file)
@@ -296,21 +296,25 @@ dummy_func(void) {
     }
 
     op(_LOAD_ATTR_METHOD_WITH_VALUES, (descr/4, owner -- attr, self if (1))) {
+        (void)descr;
         OUT_OF_SPACE_IF_NULL(attr = sym_new_known_notnull(ctx));
-        OUT_OF_SPACE_IF_NULL(self = sym_new_known_notnull(ctx));
+        self = owner;
     }
 
     op(_LOAD_ATTR_METHOD_NO_DICT, (descr/4, owner -- attr, self if (1))) {
+        (void)descr;
         OUT_OF_SPACE_IF_NULL(attr = sym_new_known_notnull(ctx));
-        OUT_OF_SPACE_IF_NULL(self = sym_new_known_notnull(ctx));
+        self = owner;
     }
 
     op(_LOAD_ATTR_METHOD_LAZY_DICT, (descr/4, owner -- attr, self if (1))) {
+        (void)descr;
         OUT_OF_SPACE_IF_NULL(attr = sym_new_known_notnull(ctx));
-        OUT_OF_SPACE_IF_NULL(self = sym_new_known_notnull(ctx));
+        self = owner;
     }
 
     op(_INIT_CALL_BOUND_METHOD_EXACT_ARGS, (callable, unused, unused[oparg] -- func, self, unused[oparg])) {
+        (void)callable;
         OUT_OF_SPACE_IF_NULL(func = sym_new_known_notnull(ctx));
         OUT_OF_SPACE_IF_NULL(self = sym_new_known_notnull(ctx));
     }
index ca9b5953d21012f67ec79e8e8e14bcf660613f14..ca341e4dde5d93be249c2254cc206964332beec6 100644 (file)
             _Py_UOpsSymType *self = NULL;
             owner = stack_pointer[-1];
             PyObject *descr = (PyObject *)this_instr->operand;
+            (void)descr;
             OUT_OF_SPACE_IF_NULL(attr = sym_new_known_notnull(ctx));
-            OUT_OF_SPACE_IF_NULL(self = sym_new_known_notnull(ctx));
+            self = owner;
             stack_pointer[-1] = attr;
             stack_pointer[0] = self;
             stack_pointer += 1;
             _Py_UOpsSymType *self = NULL;
             owner = stack_pointer[-1];
             PyObject *descr = (PyObject *)this_instr->operand;
+            (void)descr;
             OUT_OF_SPACE_IF_NULL(attr = sym_new_known_notnull(ctx));
-            OUT_OF_SPACE_IF_NULL(self = sym_new_known_notnull(ctx));
+            self = owner;
             stack_pointer[-1] = attr;
             stack_pointer[0] = self;
             stack_pointer += 1;
             _Py_UOpsSymType *self = NULL;
             owner = stack_pointer[-1];
             PyObject *descr = (PyObject *)this_instr->operand;
+            (void)descr;
             OUT_OF_SPACE_IF_NULL(attr = sym_new_known_notnull(ctx));
-            OUT_OF_SPACE_IF_NULL(self = sym_new_known_notnull(ctx));
+            self = owner;
             stack_pointer[-1] = attr;
             stack_pointer[0] = self;
             stack_pointer += 1;
             _Py_UOpsSymType *func;
             _Py_UOpsSymType *self;
             callable = stack_pointer[-2 - oparg];
+            (void)callable;
             OUT_OF_SPACE_IF_NULL(func = sym_new_known_notnull(ctx));
             OUT_OF_SPACE_IF_NULL(self = sym_new_known_notnull(ctx));
             stack_pointer[-2 - oparg] = func;