Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEarnie Boyd <earnie@users.sf.net>2012-08-06 19:49:39 +0400
committerEarnie Boyd <earnie@users.sf.net>2012-08-06 19:49:39 +0400
commit705d9e463cffacfc6d92a42e89a8fb2cd99546dd (patch)
treecf8b3b19029b4e433707000069f19ab4b79e97bc
parentb875960da736966e75ed046a2029e6e06194707c (diff)
* include/winnt.h (MemoryBarrier): Use __sync_synchronize instead of
creating a function due to multiple definition.
-rw-r--r--winsup/w32api/ChangeLog5
-rw-r--r--winsup/w32api/include/winnt.h6
2 files changed, 6 insertions, 5 deletions
diff --git a/winsup/w32api/ChangeLog b/winsup/w32api/ChangeLog
index 5ddf67a74..d147f9eaf 100644
--- a/winsup/w32api/ChangeLog
+++ b/winsup/w32api/ChangeLog
@@ -1,3 +1,8 @@
+2012-08-06 Earnie Boyd <earnie@users.sourceforge.net>
+
+ * include/winnt.h (MemoryBarrier): Use __sync_synchronize instead of
+ creating a function due to multiple definition.
+
2012-08-04 Earnie Boyd <earnie@users.sourceforge.net>
* include/winver.h (VerQueryValue[AW]): Correct declaration per MSDN.
diff --git a/winsup/w32api/include/winnt.h b/winsup/w32api/include/winnt.h
index 24ce2de35..c1c998c9b 100644
--- a/winsup/w32api/include/winnt.h
+++ b/winsup/w32api/include/winnt.h
@@ -4041,11 +4041,7 @@ struct _TEB * NtCurrentTeb(void);
# elif defined(_IA64_)
# define MemoryBarrier __mf
# else
- FORCEINLINE VOID MemoryBarrier (VOID) {
- LONG Barrier = 0;
- __asm__ __volatile__("xchgl %%eax,%0 "
- :"=r" (Barrier));
- }
+# define MemoryBarrier __sync_synchronize
# endif
#else
# define MemoryBarrier