On 1 August 2012 21:17, <earnie@...> wrote: > CVSROOT: /cvs/src > Module name: src > Changes by: earnie@... 2012-08-01 19:17:37 > > Modified files: > winsup/w32api : ChangeLog > winsup/w32api/include: winnt.h > > Log message: > * include/winnt.h (MemoryBarrier): Add definition. > > Patches: > http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/w32api/ChangeLog.diff?cvsroot=src&r1=1.1121&r2=1.1122 > http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/w32api/include/winnt.h.diff?cvsroot=src&r1=1.139&r2=1.140 >
+# else + FORCEINLINE VOID MemoryBarrier (VOID) { + LONG Barrier = 0; + __asm__ __volatile__("xchgl %%eax,%0 " + :"=r" (Barrier)); + } Since this is for GCC anyway, why not using __sync_synchronize() in the body of the function instead? -- VZ -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple