Skip to content

Commit 0f96d58

Browse files
committed
remove atomic load and rename
1 parent 3a9e249 commit 0f96d58

File tree

4 files changed

+17
-20
lines changed

4 files changed

+17
-20
lines changed

Include/cpython/pyatomic.h

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -548,7 +548,7 @@ _Py_atomic_load_ssize_acquire(const Py_ssize_t *obj);
548548
// --- _Py_atomic_memcpy / _Py_atomic_memmove ------------
549549

550550
static inline void *
551-
_Py_atomic_memcpy_ptr_relaxed(void *dest, void *src, Py_ssize_t sn)
551+
_Py_atomic_memcpy_ptr_store_relaxed(void *dest, void *src, Py_ssize_t sn)
552552
{
553553
size_t n = (size_t)sn;
554554
assert(((uintptr_t)dest & (sizeof (void *) - 1)) == 0);
@@ -561,16 +561,15 @@ _Py_atomic_memcpy_ptr_relaxed(void *dest, void *src, Py_ssize_t sn)
561561
void **e = d + n / sizeof(void *);
562562

563563
for (; d != e; d++, s++) {
564-
void *v = _Py_atomic_load_ptr_relaxed(s);
565-
_Py_atomic_store_ptr_relaxed(d, v);
564+
_Py_atomic_store_ptr_relaxed(d, *s);
566565
}
567566
}
568567

569568
return dest;
570569
}
571570

572571
static inline void *
573-
_Py_atomic_memmove_ptr_relaxed(void *dest, void *src, Py_ssize_t sn)
572+
_Py_atomic_memmove_ptr_store_relaxed(void *dest, void *src, Py_ssize_t sn)
574573
{
575574
size_t n = (size_t)sn;
576575
assert(((uintptr_t)dest & (sizeof (void *) - 1)) == 0);
@@ -583,8 +582,7 @@ _Py_atomic_memmove_ptr_relaxed(void *dest, void *src, Py_ssize_t sn)
583582
void **e = d + n / sizeof(void *);
584583

585584
for (; d != e; d++, s++) {
586-
void *v = _Py_atomic_load_ptr_relaxed(s);
587-
_Py_atomic_store_ptr_relaxed(d, v);
585+
_Py_atomic_store_ptr_relaxed(d, *s);
588586
}
589587
}
590588
else if (dest > src) {
@@ -594,8 +592,7 @@ _Py_atomic_memmove_ptr_relaxed(void *dest, void *src, Py_ssize_t sn)
594592
void **e = (void **)dest - 1;
595593

596594
for (; d != e; d--, s--) {
597-
void *v = _Py_atomic_load_ptr_relaxed(s);
598-
_Py_atomic_store_ptr_relaxed(d, v);
595+
_Py_atomic_store_ptr_relaxed(d, *s);
599596
}
600597
}
601598

Include/internal/pycore_list.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ _Py_memory_ptrs_repeat(char* dest, Py_ssize_t len_dest, Py_ssize_t len_src)
6060
Py_ssize_t copied = len_src;
6161
while (copied < len_dest) {
6262
Py_ssize_t bytes_to_copy = Py_MIN(copied, len_dest - copied);
63-
FT_ATOMIC_MEMCPY_PTR_RELAXED(dest + copied, dest, (size_t)bytes_to_copy);
63+
FT_ATOMIC_MEMCPY_PTR_STORE_RELAXED(dest + copied, dest, (size_t)bytes_to_copy);
6464
copied += bytes_to_copy;
6565
}
6666
}

Include/internal/pycore_pyatomic_ft_wrappers.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -110,10 +110,10 @@ extern "C" {
110110
#define FT_ATOMIC_LOAD_ULLONG_RELAXED(value) \
111111
_Py_atomic_load_ullong_relaxed(&value)
112112

113-
#define FT_ATOMIC_MEMCPY_PTR_RELAXED(dest, src, n) \
114-
_Py_atomic_memcpy_ptr_relaxed(dest, src, (Py_ssize_t)(n))
115-
#define FT_ATOMIC_MEMMOVE_PTR_RELAXED(dest, src, n) \
116-
_Py_atomic_memmove_ptr_relaxed(dest, src, (Py_ssize_t)(n))
113+
#define FT_ATOMIC_MEMCPY_PTR_STORE_RELAXED(dest, src, n) \
114+
_Py_atomic_memcpy_ptr_store_relaxed(dest, src, (Py_ssize_t)(n))
115+
#define FT_ATOMIC_MEMMOVE_PTR_STORE_RELAXED(dest, src, n) \
116+
_Py_atomic_memmove_ptr_store_relaxed(dest, src, (Py_ssize_t)(n))
117117

118118

119119
#else
@@ -163,8 +163,8 @@ extern "C" {
163163
#define FT_ATOMIC_LOAD_ULLONG_RELAXED(value) value
164164
#define FT_ATOMIC_STORE_ULLONG_RELAXED(value, new_value) value = new_value
165165

166-
#define FT_ATOMIC_MEMCPY_PTR_RELAXED(dest, src, n) memcpy(dest, src, n)
167-
#define FT_ATOMIC_MEMMOVE_PTR_RELAXED(dest, src, n) memmove(dest, src, n)
166+
#define FT_ATOMIC_MEMCPY_PTR_STORE_RELAXED(dest, src, n) memcpy(dest, src, n)
167+
#define FT_ATOMIC_MEMMOVE_PTR_STORE_RELAXED(dest, src, n) memmove(dest, src, n)
168168

169169
#endif
170170

Objects/listobject.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -947,10 +947,10 @@ list_ass_slice_lock_held(PyListObject *a, Py_ssize_t ilow, Py_ssize_t ihigh, PyO
947947
if (d < 0) { /* Delete -d items */
948948
Py_ssize_t tail;
949949
tail = (Py_SIZE(a) - ihigh) * sizeof(PyObject *);
950-
FT_ATOMIC_MEMMOVE_PTR_RELAXED(&item[ihigh+d], &item[ihigh], tail);
950+
FT_ATOMIC_MEMMOVE_PTR_STORE_RELAXED(&item[ihigh+d], &item[ihigh], tail);
951951
if (list_resize(a, Py_SIZE(a) + d) < 0) {
952-
FT_ATOMIC_MEMMOVE_PTR_RELAXED(&item[ihigh], &item[ihigh+d], tail);
953-
FT_ATOMIC_MEMCPY_PTR_RELAXED(&item[ilow], recycle, s);
952+
FT_ATOMIC_MEMMOVE_PTR_STORE_RELAXED(&item[ihigh], &item[ihigh+d], tail);
953+
FT_ATOMIC_MEMCPY_PTR_STORE_RELAXED(&item[ilow], recycle, s);
954954
goto Error;
955955
}
956956
item = a->ob_item;
@@ -960,8 +960,8 @@ list_ass_slice_lock_held(PyListObject *a, Py_ssize_t ilow, Py_ssize_t ihigh, PyO
960960
if (list_resize(a, k+d) < 0)
961961
goto Error;
962962
item = a->ob_item;
963-
FT_ATOMIC_MEMMOVE_PTR_RELAXED(&item[ihigh+d], &item[ihigh],
964-
(k - ihigh)*sizeof(PyObject *));
963+
FT_ATOMIC_MEMMOVE_PTR_STORE_RELAXED(&item[ihigh+d], &item[ihigh],
964+
(k - ihigh)*sizeof(PyObject *));
965965
}
966966
for (k = 0; k < n; k++, ilow++) {
967967
PyObject *w = vitem[k];

0 commit comments

Comments
 (0)