Skip to content

Commit 1fcb426

Browse files
committed
use relaxed atomic store
1 parent 41d74b9 commit 1fcb426

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

Modules/_heapqmodule.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,8 @@ siftdown(PyListObject *heap, Py_ssize_t startpos, Py_ssize_t pos)
6060
arr = _PyList_ITEMS(heap);
6161
parent = arr[parentpos];
6262
newitem = arr[pos];
63-
FT_ATOMIC_STORE_PTR_RELEASE(arr[parentpos], newitem);
64-
FT_ATOMIC_STORE_PTR_RELEASE(arr[pos], parent);
63+
FT_ATOMIC_STORE_PTR_RELAXED(arr[parentpos], newitem);
64+
FT_ATOMIC_STORE_PTR_RELAXED(arr[pos], parent);
6565
pos = parentpos;
6666
}
6767
return 0;
@@ -109,8 +109,8 @@ siftup(PyListObject *heap, Py_ssize_t pos)
109109
/* Move the smaller child up. */
110110
tmp1 = arr[childpos];
111111
tmp2 = arr[pos];
112-
FT_ATOMIC_STORE_PTR_RELEASE(arr[childpos], tmp2);
113-
FT_ATOMIC_STORE_PTR_RELEASE(arr[pos], tmp1);
112+
FT_ATOMIC_STORE_PTR_RELAXED(arr[childpos], tmp2);
113+
FT_ATOMIC_STORE_PTR_RELAXED(arr[pos], tmp1);
114114
pos = childpos;
115115
}
116116
/* Bubble it up to its final resting place (by sifting its parents down). */
@@ -175,7 +175,7 @@ heappop_internal(PyObject *heap, int siftup_func(PyListObject *, Py_ssize_t))
175175
returnitem = PyList_GET_ITEM(heap, 0);
176176
// We're in the critical section now
177177
PyListObject *list = _PyList_CAST(heap);
178-
FT_ATOMIC_STORE_PTR_RELEASE(list->ob_item[0], lastelt);
178+
FT_ATOMIC_STORE_PTR_RELAXED(list->ob_item[0], lastelt);
179179
if (siftup_func(list, 0)) {
180180
Py_DECREF(returnitem);
181181
return NULL;

0 commit comments

Comments
 (0)