Skip to content

Commit 32f9604

Browse files
committed
make C90 compatible
1 parent f167747 commit 32f9604

File tree

1 file changed

+13
-9
lines changed

1 file changed

+13
-9
lines changed

Include/cpython/pyatomic.h

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -552,14 +552,16 @@ _Py_atomic_load_ssize_acquire(const Py_ssize_t *obj);
552552
static inline void *
553553
_Py_atomic_memcpy_ptr_store_relaxed(void *dest, void *src, size_t n)
554554
{
555+
void **dest_, **src_, **end;
556+
555557
assert(((uintptr_t)dest & (uintptr_t)(sizeof (void *) - 1)) == 0);
556558
assert(((uintptr_t)src & (uintptr_t)(sizeof (void *) - 1)) == 0);
557559
assert(n % (size_t)sizeof(void *) == 0);
558560

559561
if (dest != src) {
560-
void **dest_ = (void **)dest;
561-
void **src_ = (void **)src;
562-
void **end = dest_ + n / sizeof(void *);
562+
dest_ = (void **)dest;
563+
src_ = (void **)src;
564+
end = dest_ + n / sizeof(void *);
563565

564566
for (; dest_ != end; dest_++, src_++) {
565567
_Py_atomic_store_ptr_relaxed(dest_, *src_);
@@ -572,24 +574,26 @@ _Py_atomic_memcpy_ptr_store_relaxed(void *dest, void *src, size_t n)
572574
static inline void *
573575
_Py_atomic_memmove_ptr_store_relaxed(void *dest, void *src, size_t n)
574576
{
577+
void **dest_, **src_, **end;
578+
575579
assert(((uintptr_t)dest & (uintptr_t)(sizeof (void *) - 1)) == 0);
576580
assert(((uintptr_t)src & (uintptr_t)(sizeof (void *) - 1)) == 0);
577581
assert(n % (size_t)sizeof(void *) == 0);
578582

579583
if (dest < src || dest >= (void *)((char *)src + n)) {
580-
void **dest_ = (void **)dest;
581-
void **src_ = (void **)src;
582-
void **end = dest_ + n / sizeof(void *);
584+
dest_ = (void **)dest;
585+
src_ = (void **)src;
586+
end = dest_ + n / sizeof(void *);
583587

584588
for (; dest_ != end; dest_++, src_++) {
585589
_Py_atomic_store_ptr_relaxed(dest_, *src_);
586590
}
587591
}
588592
else if (dest > src) {
589593
n = n / sizeof(void *) - 1;
590-
void **dest_ = (void **)dest + n;
591-
void **src_ = (void **)src + n;
592-
void **end = (void **)dest - 1;
594+
dest_ = (void **)dest + n;
595+
src_ = (void **)src + n;
596+
end = (void **)dest - 1;
593597

594598
for (; dest_ != end; dest_--, src_--) {
595599
_Py_atomic_store_ptr_relaxed(dest_, *src_);

0 commit comments

Comments
 (0)