@@ -88,10 +88,10 @@ static inline bool pmix_atomic_compare_exchange_strong_32 (pmix_atomic_int32_t *
88
88
int32_t prev , tmp ;
89
89
bool ret ;
90
90
91
- __asm__ __volatile__ ("1: ldaxr %w0, [%2] \n"
91
+ __asm__ __volatile__ ("1: ldaxr %w0, [%2] \n"
92
92
" cmp %w0, %w3 \n"
93
93
" bne 2f \n"
94
- " stxr %w1, %w4, [%2] \n"
94
+ " stlxr %w1, %w4, [%2] \n"
95
95
" cbnz %w1, 1b \n"
96
96
"2: \n"
97
97
: "=&r" (prev ), "=&r" (tmp )
@@ -130,7 +130,7 @@ static inline bool pmix_atomic_compare_exchange_strong_acq_32 (pmix_atomic_int32
130
130
__asm__ __volatile__ ("1: ldaxr %w0, [%2] \n"
131
131
" cmp %w0, %w3 \n"
132
132
" bne 2f \n"
133
- " stxr %w1, %w4, [%2] \n"
133
+ " stlxr %w1, %w4, [%2] \n"
134
134
" cbnz %w1, 1b \n"
135
135
"2: \n"
136
136
: "=&r" (prev ), "=&r" (tmp )
@@ -148,7 +148,7 @@ static inline bool pmix_atomic_compare_exchange_strong_rel_32 (pmix_atomic_int32
148
148
int32_t prev , tmp ;
149
149
bool ret ;
150
150
151
- __asm__ __volatile__ ("1: ldxr %w0, [%2] \n"
151
+ __asm__ __volatile__ ("1: ldaxr %w0, [%2] \n"
152
152
" cmp %w0, %w3 \n"
153
153
" bne 2f \n"
154
154
" stlxr %w1, %w4, [%2] \n"
@@ -195,10 +195,10 @@ static inline bool pmix_atomic_compare_exchange_strong_64 (pmix_atomic_int64_t *
195
195
int tmp ;
196
196
bool ret ;
197
197
198
- __asm__ __volatile__ ("1: ldaxr %0, [%2] \n"
198
+ __asm__ __volatile__ ("1: ldaxr %0, [%2] \n"
199
199
" cmp %0, %3 \n"
200
200
" bne 2f \n"
201
- " stxr %w1, %4, [%2] \n"
201
+ " stlxr %w1, %4, [%2] \n"
202
202
" cbnz %w1, 1b \n"
203
203
"2: \n"
204
204
: "=&r" (prev ), "=&r" (tmp )
@@ -239,7 +239,7 @@ static inline bool pmix_atomic_compare_exchange_strong_acq_64 (pmix_atomic_int64
239
239
__asm__ __volatile__ ("1: ldaxr %0, [%2] \n"
240
240
" cmp %0, %3 \n"
241
241
" bne 2f \n"
242
- " stxr %w1, %4, [%2] \n"
242
+ " stlxr %w1, %4, [%2] \n"
243
243
" cbnz %w1, 1b \n"
244
244
"2: \n"
245
245
: "=&r" (prev ), "=&r" (tmp )
@@ -258,7 +258,7 @@ static inline bool pmix_atomic_compare_exchange_strong_rel_64 (pmix_atomic_int64
258
258
int tmp ;
259
259
bool ret ;
260
260
261
- __asm__ __volatile__ ("1: ldxr %0, [%2] \n"
261
+ __asm__ __volatile__ ("1: ldaxr %0, [%2] \n"
262
262
" cmp %0, %3 \n"
263
263
" bne 2f \n"
264
264
" stlxr %w1, %4, [%2] \n"
@@ -305,9 +305,9 @@ static inline bool pmix_atomic_compare_exchange_strong_rel_64 (pmix_atomic_int64
305
305
type newval, old; \
306
306
int32_t tmp; \
307
307
\
308
- __asm__ __volatile__("1: ldxr %" reg "1, [%3] \n" \
308
+ __asm__ __volatile__("1: ldaxr %" reg "1, [%3] \n" \
309
309
" " inst " %" reg "0, %" reg "1, %" reg "4 \n" \
310
- " stxr %w2, %" reg "0, [%3] \n" \
310
+ " stlxr %w2, %" reg "0, [%3] \n" \
311
311
" cbnz %w2, 1b \n" \
312
312
: "=&r" (newval), "=&r" (old), "=&r" (tmp) \
313
313
: "r" (addr), "r" (value) \
0 commit comments