[llvm-commits] [llvm-gcc-4.2] r102589 - in /llvm-gcc-4.2/trunk/gcc/config/arm: _synchronize.c t-darwin

Jim Grosbach grosbach at apple.com
Wed Apr 28 19:32:03 PDT 2010


Author: grosbach
Date: Wed Apr 28 21:32:03 2010
New Revision: 102589

URL: http://llvm.org/viewvc/llvm-project?rev=102589&view=rev
Log:
On Darwin, __sync_synchronize() should call OSMemoryBarrier() for targets that don't directly support the buildit. rdar://7895494

Added:
    llvm-gcc-4.2/trunk/gcc/config/arm/_synchronize.c
Modified:
    llvm-gcc-4.2/trunk/gcc/config/arm/t-darwin

Added: llvm-gcc-4.2/trunk/gcc/config/arm/_synchronize.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/arm/_synchronize.c?rev=102589&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/arm/_synchronize.c (added)
+++ llvm-gcc-4.2/trunk/gcc/config/arm/_synchronize.c Wed Apr 28 21:32:03 2010
@@ -0,0 +1,7 @@
+#if __APPLE__
+extern OSMemoryBarrier(void);
+void __sync_synchronize(void)
+{
+  OSMemoryBarrier();
+}
+#endif

Modified: llvm-gcc-4.2/trunk/gcc/config/arm/t-darwin
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/arm/t-darwin?rev=102589&r1=102588&r2=102589&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/arm/t-darwin (original)
+++ llvm-gcc-4.2/trunk/gcc/config/arm/t-darwin Wed Apr 28 21:32:03 2010
@@ -17,11 +17,12 @@
 LIB1ASMFUNCS += _save_vfp_d8_d15_regs _restore_vfp_d8_d15__regs
 
 # APPLE LOCAL begin 5316398 improved float/double -> int64 functions
-LIB2FUNCS_EXCLUDE = _fixdfdi _fixunsdfdi _fixsfdi _fixunssfdi
+LIB2FUNCS_EXCLUDE = _fixdfdi _fixunsdfdi _fixsfdi _fixunssfdi _synchronize
 LIB2FUNCS_EXTRA = $(srcdir)/config/arm/_fixdfdi.c \
 	$(srcdir)/config/arm/_fixunsdfdi.c \
 	$(srcdir)/config/arm/_fixsfdi.c \
-	$(srcdir)/config/arm/_fixunssfdi.c 
+	$(srcdir)/config/arm/_fixunssfdi.c \
+	$(srcdir)/config/arm/_synchronize.c
 # APPLE LOCAL end 5316398 improved float/double -> int64 functions
 
 # APPLE LOCAL begin 6611402 configurable multilib architectures





More information about the llvm-commits mailing list