From: Kumar Aditya Date: Fri, 4 Jul 2025 03:34:47 +0000 (+0530) Subject: gh-115999: remove redundant check in free-threading from `_STORE_ATTR_WITH_HINT`... X-Git-Tag: v3.15.0a1~1094 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=85f092f541a2caf47e77b8510cbc720216e91e63;p=thirdparty%2FPython%2Fcpython.git gh-115999: remove redundant check in free-threading from `_STORE_ATTR_WITH_HINT` (#136249) --- diff --git a/Python/bytecodes.c b/Python/bytecodes.c index a5b74d88d7d4..d9abc4c53d1f 100644 --- a/Python/bytecodes.c +++ b/Python/bytecodes.c @@ -2641,12 +2641,6 @@ dummy_func( PyDictObject *dict = _PyObject_GetManagedDict(owner_o); DEOPT_IF(dict == NULL); DEOPT_IF(!LOCK_OBJECT(dict)); - #ifdef Py_GIL_DISABLED - if (dict != _PyObject_GetManagedDict(owner_o)) { - UNLOCK_OBJECT(dict); - DEOPT_IF(true); - } - #endif assert(PyDict_CheckExact((PyObject *)dict)); PyObject *name = GETITEM(FRAME_CO_NAMES, oparg); if (hint >= (size_t)dict->ma_keys->dk_nentries || diff --git a/Python/executor_cases.c.h b/Python/executor_cases.c.h index 276c320c5f4d..e152865e4ec9 100644 --- a/Python/executor_cases.c.h +++ b/Python/executor_cases.c.h @@ -3704,15 +3704,6 @@ UOP_STAT_INC(uopcode, miss); JUMP_TO_JUMP_TARGET(); } - #ifdef Py_GIL_DISABLED - if (dict != _PyObject_GetManagedDict(owner_o)) { - UNLOCK_OBJECT(dict); - if (true) { - UOP_STAT_INC(uopcode, miss); - JUMP_TO_JUMP_TARGET(); - } - } - #endif assert(PyDict_CheckExact((PyObject *)dict)); PyObject *name = GETITEM(FRAME_CO_NAMES, oparg); if (hint >= (size_t)dict->ma_keys->dk_nentries || diff --git a/Python/generated_cases.c.h b/Python/generated_cases.c.h index bb153bc1c0e1..aa1eb373b7ba 100644 --- a/Python/generated_cases.c.h +++ b/Python/generated_cases.c.h @@ -11064,16 +11064,6 @@ assert(_PyOpcode_Deopt[opcode] == (STORE_ATTR)); JUMP_TO_PREDICTED(STORE_ATTR); } - #ifdef Py_GIL_DISABLED - if (dict != _PyObject_GetManagedDict(owner_o)) { - UNLOCK_OBJECT(dict); - if (true) { - UPDATE_MISS_STATS(STORE_ATTR); - assert(_PyOpcode_Deopt[opcode] == (STORE_ATTR)); - JUMP_TO_PREDICTED(STORE_ATTR); - } - } - #endif assert(PyDict_CheckExact((PyObject *)dict)); PyObject *name = GETITEM(FRAME_CO_NAMES, oparg); if (hint >= (size_t)dict->ma_keys->dk_nentries ||