summaryrefslogtreecommitdiffstats
path: root/Include/cpython
diff options
context:
space:
mode:
authorMark Shannon <mark@hotpy.org>2021-10-13 13:19:34 (GMT)
committerGitHub <noreply@github.com>2021-10-13 13:19:34 (GMT)
commita8b9350964f43cb648c98c179c8037fbf3ff8a7d (patch)
tree13a539432c9d48ac278d34d040f17a7a12eac771 /Include/cpython
parent97308dfcdc0696e0b116c37386e2ff4d72e6c3f4 (diff)
downloadcpython-a8b9350964f43cb648c98c179c8037fbf3ff8a7d.zip
cpython-a8b9350964f43cb648c98c179c8037fbf3ff8a7d.tar.gz
cpython-a8b9350964f43cb648c98c179c8037fbf3ff8a7d.tar.bz2
bpo-45340: Don't create object dictionaries unless actually needed (GH-28802)
* Never change types' cached keys. It could invalidate inline attribute objects. * Lazily create object dictionaries. * Update specialization of LOAD/STORE_ATTR. * Don't update shared keys version for deletion of value. * Update gdb support to handle instance values. * Rename SPLIT_KEYS opcodes to INSTANCE_VALUE.
Diffstat (limited to 'Include/cpython')
-rw-r--r--Include/cpython/object.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/Include/cpython/object.h b/Include/cpython/object.h
index 5ae6f36..849d5aa 100644
--- a/Include/cpython/object.h
+++ b/Include/cpython/object.h
@@ -270,6 +270,7 @@ struct _typeobject {
destructor tp_finalize;
vectorcallfunc tp_vectorcall;
+ Py_ssize_t tp_inline_values_offset;
};
/* The *real* layout of a type object when allocated on the heap */