replace single-hop associative section walk to multi-hop

This commit is contained in:
Nikita Smith
2026-05-18 18:11:48 -07:00
parent 921030c432
commit 1dc72b2bcf
10 changed files with 343 additions and 234 deletions
+2
View File
@@ -267,6 +267,7 @@
# define ins_atomic_u32_add_eval(x,c) InterlockedAdd((LONG *)(x), (c))
# define ins_atomic_u8_eval_assign(x,c) InterlockedExchange8((CHAR *)(x), (c))
# define ins_atomic_u8_or(x,c) InterlockedOr8((char *)(x), (char)c)
# define ins_atomic_u32_or(x,c) InterlockedOr((LONG *)(x), (LONG)c)
# else
# error Atomic intrinsics not defined for this compiler / architecture combination.
# endif
@@ -286,6 +287,7 @@
# define ins_atomic_u32_eval_cond_assign(x,k,c) ({ U32 _new = (c); __atomic_compare_exchange_n((U32 *)(x),&_new,(k),0,__ATOMIC_SEQ_CST,__ATOMIC_SEQ_CST); _new; })
# define ins_atomic_u8_eval_assign(x,c) __atomic_exchange_n((x), (c), __ATOMIC_SEQ_CST)
# define ins_atomic_u8_or(x,c) __atomic_fetch_or((U8 *)(x), (U8)(c), __ATOMIC_SEQ_CST)
# define ins_atomic_u32_or(x,c) __atomic_fetch_or((U32 *)(x), (U32)(c), __ATOMIC_SEQ_CST)
#else
# error Atomic intrinsics not defined for this compiler / architecture.
#endif