summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorneonene <53406459+neonene@users.noreply.github.com>2022-07-14 18:33:25 (GMT)
committerGitHub <noreply@github.com>2022-07-14 18:33:25 (GMT)
commit9b3f7792093c533608f70043aa2a7daf7f903a16 (patch)
tree997039412f05d98f21bffec8ff0b7576a6b511ac
parent6cbb57f62d345d7a5d6aeb1b3b5d37a845344d5e (diff)
downloadcpython-9b3f7792093c533608f70043aa2a7daf7f903a16.zip
cpython-9b3f7792093c533608f70043aa2a7daf7f903a16.tar.gz
cpython-9b3f7792093c533608f70043aa2a7daf7f903a16.tar.bz2
gh-94841: Ensure arena_map_get() is inlined in PyObject_Free() (#94842)
-rw-r--r--Misc/NEWS.d/next/Build/2022-07-14-02-45-44.gh-issue-94841.lLRTdf.rst1
-rw-r--r--Objects/obmalloc.c2
2 files changed, 2 insertions, 1 deletions
diff --git a/Misc/NEWS.d/next/Build/2022-07-14-02-45-44.gh-issue-94841.lLRTdf.rst b/Misc/NEWS.d/next/Build/2022-07-14-02-45-44.gh-issue-94841.lLRTdf.rst
new file mode 100644
index 0000000..f7ad4f8
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2022-07-14-02-45-44.gh-issue-94841.lLRTdf.rst
@@ -0,0 +1 @@
+Fix the possible performance regression of :c:func:`PyObject_Free` compiled with MSVC version 1932.
diff --git a/Objects/obmalloc.c b/Objects/obmalloc.c
index 78a6f01..1d487d8 100644
--- a/Objects/obmalloc.c
+++ b/Objects/obmalloc.c
@@ -1446,7 +1446,7 @@ static arena_map_bot_t arena_map_root;
/* Return a pointer to a bottom tree node, return NULL if it doesn't exist or
* it cannot be created */
-static arena_map_bot_t *
+static Py_ALWAYS_INLINE arena_map_bot_t *
arena_map_get(block *p, int create)
{
#ifdef USE_INTERIOR_NODES