gh-109693: Update _gil_runtime_state.locked to use pyatomic.h - #110836
Conversation
vstinner
left a comment
There was a problem hiding this comment.
LGTM.
@colesbury: Do you want to review pyatomic.h changes?
vstinner
left a comment
There was a problem hiding this comment.
Windows logs many compiler warnings, see: https://github.com/python/cpython/pull/110836/files
colesbury
left a comment
There was a problem hiding this comment.
Can you also add a test to Modules/_testcapi/pyatomic.c for the new functions?
colesbury
left a comment
There was a problem hiding this comment.
Two more comments I missed in the first pass. When you get everything working to your satisfaction, I'd suggest testing the PR on all the buildbots as there is some platforms specific code.
|
Convert to the draft PR since I need to check many things. |
|
You can use |
|
@colesbury @vstinner So can you please take a look? |
| _Py_atomic_store_int_release(int *obj, int value) | ||
| { | ||
| #if defined(_M_X64) || defined(_M_IX86) | ||
| *(int volatile *)obj = value; |
There was a problem hiding this comment.
@colesbury
Basically, int volatile * and volatile int* have the same meaning.
So I just follow the convention from _Py_atomic_load_ptr_acquire

Uh oh!
There was an error while loading. Please reload this page.