Skip to content

Commit 0b56c3e

Browse files
authored
Merge pull request #2131 from geky/fix-core-util-atomic-incr-ptr
Fixed typo in incr/decr function
2 parents 9e5a779 + 98d55e7 commit 0b56c3e

File tree

1 file changed

+15
-13
lines changed

1 file changed

+15
-13
lines changed

hal/common/critical.c

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -232,12 +232,6 @@ bool core_util_atomic_cas_u32(uint32_t *ptr, uint32_t *expectedCurrentValue, uin
232232
return success;
233233
}
234234

235-
bool core_util_atomic_cas_ptr(void **ptr, void **expectedCurrentValue, void *desiredValue) {
236-
return core_util_atomic_cas_u32(
237-
(uintptr_t *)ptr,
238-
(uintptr_t *)expectedCurrentValue,
239-
(uintptr_t)desiredValue);
240-
}
241235

242236
uint8_t core_util_atomic_incr_u8(uint8_t *valuePtr, uint8_t delta)
243237
{
@@ -269,10 +263,6 @@ uint32_t core_util_atomic_incr_u32(uint32_t *valuePtr, uint32_t delta)
269263
return newValue;
270264
}
271265

272-
void *core_util_atomic_incr_ptr(void **valuePtr, ptrdiff_t delta) {
273-
return core_util_atomic_incr((uintptr_t)valuePtr, (uintptr_t)delta);
274-
}
275-
276266

277267
uint8_t core_util_atomic_decr_u8(uint8_t *valuePtr, uint8_t delta)
278268
{
@@ -304,9 +294,21 @@ uint32_t core_util_atomic_decr_u32(uint32_t *valuePtr, uint32_t delta)
304294
return newValue;
305295
}
306296

307-
void *core_util_atomic_decr_ptr(void **valuePtr, ptrdiff_t delta) {
308-
return core_util_atomic_decr((uintptr_t)valuePtr, (uintptr_t)delta);
297+
#endif
298+
299+
300+
bool core_util_atomic_cas_ptr(void **ptr, void **expectedCurrentValue, void *desiredValue) {
301+
return core_util_atomic_cas_u32(
302+
(uint32_t *)ptr,
303+
(uint32_t *)expectedCurrentValue,
304+
(uint32_t)desiredValue);
309305
}
310306

311-
#endif
307+
void *core_util_atomic_incr_ptr(void **valuePtr, ptrdiff_t delta) {
308+
return (void *)core_util_atomic_incr_u32((uint32_t *)valuePtr, (uint32_t)delta);
309+
}
310+
311+
void *core_util_atomic_decr_ptr(void **valuePtr, ptrdiff_t delta) {
312+
return (void *)core_util_atomic_decr_u32((uint32_t *)valuePtr, (uint32_t)delta);
313+
}
312314

0 commit comments

Comments
 (0)