Permalink
Browse files

ARM Atomics: implement __sync_syncronize

GCC doesn't provide an ARM implementation of it. It's easy to write one
for ARMv6 and above, while older archs will need this implemented as a
syscall just like other atomics.
  • Loading branch information...
1 parent faa2d8a commit 22011f8b6c06eb63ffd5f2c01d2da89ff57fa4bc @pulkomandy pulkomandy committed Feb 23, 2014
Showing with 7 additions and 0 deletions.
  1. +7 −0 src/system/libroot/os/arch/arm/atomic.S
@@ -88,6 +88,13 @@ FUNCTION(atomic_get):
bx lr
FUNCTION_END(atomic_get)
+/* void __sync_synchronize(void)
+ */
+FUNCTION(__sync_synchronize):
+ dmb
+ bx lr
+FUNCTION_END(__sync_synchronize)
+
#endif /* ATOMIC_FUNCS_ARE_SYSCALLS */
#ifndef ATOMIC64_FUNCS_ARE_SYSCALLS

0 comments on commit 22011f8

Please sign in to comment.