SIGN IN SIGN UP
python / cpython UNCLAIMED

The Python programming language

0 0 2 Python

gh-115999: Specialize `CALL_KW` in free-threaded builds (#127713)

* Enable specialization of CALL_KW

* Fix bug pushing frame in _PY_FRAME_KW

`_PY_FRAME_KW` pushes a pointer to the new frame onto the stack for
consumption by the next uop. When pushing the frame fails, we do not
want to push the result, `NULL`, to the stack because it is not
a valid stackref. This works in the default build because `PyStackRef_NULL`
 and `NULL` are the same value, so the `PyStackRef_XCLOSE()` in the error
handler ignores it. In the free-threaded build the values are not the same;
`PyStackRef_XCLOSE()` will attempt to decref a null pointer.
M
mpage committed
c84928ed6de105696be24859e03f3ab27e11daf6
Parent: e8f4e27
Committed by GitHub <noreply@github.com> on 12/11/2024, 11:18:22 PM