summaryrefslogtreecommitdiffstats
path: root/Python/generated_cases.c.h
diff options
context:
space:
mode:
authorMark Shannon <mark@hotpy.org>2023-01-05 12:20:09 (GMT)
committerGitHub <noreply@github.com>2023-01-05 12:20:09 (GMT)
commitf20c553a458659f247fac1fb829f8172aa32f69a (patch)
tree3271f23aab9cae0c13db57fcc3ff195061dca868 /Python/generated_cases.c.h
parent105e37395dbd9790f81677e39ec9bd000590728f (diff)
downloadcpython-f20c553a458659f247fac1fb829f8172aa32f69a.zip
cpython-f20c553a458659f247fac1fb829f8172aa32f69a.tar.gz
cpython-f20c553a458659f247fac1fb829f8172aa32f69a.tar.bz2
GH-100288: Remove LOAD_ATTR_METHOD_WITH_DICT instruction. (GH-100753)
Diffstat (limited to 'Python/generated_cases.c.h')
-rw-r--r--Python/generated_cases.c.h27
1 files changed, 0 insertions, 27 deletions
diff --git a/Python/generated_cases.c.h b/Python/generated_cases.c.h
index 3218bd0..fa1f941 100644
--- a/Python/generated_cases.c.h
+++ b/Python/generated_cases.c.h
@@ -2960,33 +2960,6 @@
DISPATCH();
}
- TARGET(LOAD_ATTR_METHOD_WITH_DICT) {
- /* Can be either a managed dict, or a tp_dictoffset offset.*/
- assert(cframe.use_tracing == 0);
- PyObject *self = TOP();
- PyTypeObject *self_cls = Py_TYPE(self);
- _PyLoadMethodCache *cache = (_PyLoadMethodCache *)next_instr;
-
- DEOPT_IF(self_cls->tp_version_tag != read_u32(cache->type_version),
- LOAD_ATTR);
- /* Treat index as a signed 16 bit value */
- Py_ssize_t dictoffset = self_cls->tp_dictoffset;
- assert(dictoffset > 0);
- PyDictObject **dictptr = (PyDictObject**)(((char *)self)+dictoffset);
- PyDictObject *dict = *dictptr;
- DEOPT_IF(dict == NULL, LOAD_ATTR);
- DEOPT_IF(dict->ma_keys->dk_version != read_u32(cache->keys_version),
- LOAD_ATTR);
- STAT_INC(LOAD_ATTR, hit);
- PyObject *res = read_obj(cache->descr);
- assert(res != NULL);
- assert(_PyType_HasFeature(Py_TYPE(res), Py_TPFLAGS_METHOD_DESCRIPTOR));
- SET_TOP(Py_NewRef(res));
- PUSH(self);
- JUMPBY(INLINE_CACHE_ENTRIES_LOAD_ATTR);
- DISPATCH();
- }
-
TARGET(LOAD_ATTR_METHOD_NO_DICT) {
assert(cframe.use_tracing == 0);
PyObject *self = TOP();