#endif
}
-static inline void
-release_spinlock(volatile lispobj *word)
-{
- *word=0;
-}
-
#include <stdio.h>
static inline lispobj
return old_value;
}
+static inline void
+release_spinlock(volatile lispobj *word)
+{
+ /* A memory barrier is needed, use swap_lispobjs. See comment in
+ * RELEASE-SPINLOCK in target-thread.lisp. */
+ swap_lispobjs(word,0);
+}
+
extern void fast_bzero_detect(void *, size_t);
extern void (*fast_bzero_pointer)(void *, size_t);