gh-131586: Avoid refcount contention in some "special" calls (#131588)
In the free threaded build, the `_PyObject_LookupSpecial()` call can lead to reference count contention on the returned function object becuase it doesn't use stackrefs. Refactor some of the callers to use `_PyObject_MaybeCallSpecialNoArgs`, which uses stackrefs internally. This fixes the scaling bottleneck in the "lookup_special" microbenchmark in `ftscalingbench.py`. However, the are still some uses of `_PyObject_LookupSpecial()` that need to be addressed in future PRs.
S
Sam Gross committed
67fbfb42bd5dfe861d0c58d9e6c48d8eef033d24
Parent: 3d4ac1a
Committed by GitHub <noreply@github.com>
on 3/26/2025, 6:38:47 PM