From: <se...@us...> - 2013-04-09 19:52:06
|
Revision: 5746 http://mingw-w64.svn.sourceforge.net/mingw-w64/?rev=5746&view=rev Author: sezero Date: 2013-04-09 19:51:57 +0000 (Tue, 09 Apr 2013) Log Message: ----------- Merge from trunk revs. 5735, 5740, 5744: add "memory" to Offset in inline asm for _bittest, _bittestandcomplement, _bittestandset, _bittestandreset, _interlockedbittestandset, _interlockedbittestandreset, _bittest64, _bittestandcomplement64, _bittestandset64, _bittestandreset64, _interlockedbittestandset64, _interlockedbittestandreset64, InterlockedBitTestAndSet, InterlockedBitTestAndReset and InterlockedBitTestAndComplement. Modified Paths: -------------- stable/v2.x/mingw-w64-crt/intrincs/bittest.c stable/v2.x/mingw-w64-crt/intrincs/bittest64.c stable/v2.x/mingw-w64-crt/intrincs/bittestc.c stable/v2.x/mingw-w64-crt/intrincs/bittestc64.c stable/v2.x/mingw-w64-crt/intrincs/bittestci.c stable/v2.x/mingw-w64-crt/intrincs/bittestr.c stable/v2.x/mingw-w64-crt/intrincs/bittestr64.c stable/v2.x/mingw-w64-crt/intrincs/bittestri.c stable/v2.x/mingw-w64-crt/intrincs/bittestri64.c stable/v2.x/mingw-w64-crt/intrincs/bittests.c stable/v2.x/mingw-w64-crt/intrincs/bittests64.c stable/v2.x/mingw-w64-crt/intrincs/bittestsi.c stable/v2.x/mingw-w64-crt/intrincs/bittestsi64.c stable/v2.x/mingw-w64-crt/revstamp.h stable/v2.x/mingw-w64-headers/include/winnt.h Modified: stable/v2.x/mingw-w64-crt/intrincs/bittest.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittest.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittest.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("btl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittest64.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittest64.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittest64.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("btq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittestc.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittestc.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittestc.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("btcl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittestc64.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittestc64.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittestc64.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("btcq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittestci.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittestci.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittestci.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -6,7 +6,7 @@ int old = 0; __asm__ __volatile__("lock ; btcl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Bit)); + :"Ir" (Bit) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittestr.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittestr.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittestr.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("btrl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittestr64.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittestr64.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittestr64.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("btrq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittestri.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittestri.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittestri.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("lock ; btrl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittestri64.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittestri64.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittestri64.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("lock ; btrq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittests.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittests.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittests.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("btsl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittests64.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittests64.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittests64.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("btsq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittestsi.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittestsi.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittestsi.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("lock ; btsl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/intrincs/bittestsi64.c =================================================================== --- stable/v2.x/mingw-w64-crt/intrincs/bittestsi64.c 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/intrincs/bittestsi64.c 2013-04-09 19:51:57 UTC (rev 5746) @@ -5,7 +5,7 @@ int old = 0; __asm__ __volatile__("lock ; btsq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (old != 0); } Modified: stable/v2.x/mingw-w64-crt/revstamp.h =================================================================== --- stable/v2.x/mingw-w64-crt/revstamp.h 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-crt/revstamp.h 2013-04-09 19:51:57 UTC (rev 5746) @@ -1,4 +1,4 @@ /* Do not edit. Autogenerated. */ -#define __MINGW_W64_REV "5684" -#define __MINGW_W64_REV_STAMP "2013-03-21" +#define __MINGW_W64_REV "5746" +#define __MINGW_W64_REV_STAMP "2013-04-09" Modified: stable/v2.x/mingw-w64-headers/include/winnt.h =================================================================== --- stable/v2.x/mingw-w64-headers/include/winnt.h 2013-04-09 19:45:24 UTC (rev 5745) +++ stable/v2.x/mingw-w64-headers/include/winnt.h 2013-04-09 19:51:57 UTC (rev 5746) @@ -1126,14 +1126,14 @@ int old = 0; __asm__ __volatile__("btl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } __CRT_INLINE BOOLEAN _bittestandcomplement(LONG *Base,LONG Offset) { int old = 0; __asm__ __volatile__("btcl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } #endif /* __CRT__NO_INLINE */ @@ -1154,77 +1154,77 @@ int old = 0; __asm__ __volatile__("lock ; btcl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Bit)); + :"Ir" (Bit) : "memory"); return (BOOLEAN) (old!=0); } __CRT_INLINE BOOLEAN _bittestandset(LONG *Base,LONG Offset) { int old = 0; __asm__ __volatile__("btsl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } __CRT_INLINE BOOLEAN _bittestandreset(LONG *Base,LONG Offset) { int old = 0; __asm__ __volatile__("btrl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } __CRT_INLINE BOOLEAN _interlockedbittestandset(LONG *Base,LONG Offset) { int old = 0; __asm__ __volatile__("lock ; btsl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } __CRT_INLINE BOOLEAN _interlockedbittestandreset(LONG *Base,LONG Offset) { int old = 0; __asm__ __volatile__("lock ; btrl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } __CRT_INLINE BOOLEAN _bittest64(LONG64 const *Base,LONG64 Offset) { int old = 0; __asm__ __volatile__("btq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile LONG64 *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } __CRT_INLINE BOOLEAN _bittestandcomplement64(LONG64 *Base,LONG64 Offset) { int old = 0; __asm__ __volatile__("btcq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile LONG64 *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } __CRT_INLINE BOOLEAN _bittestandset64(LONG64 *Base,LONG64 Offset) { int old = 0; __asm__ __volatile__("btsq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile LONG64 *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } __CRT_INLINE BOOLEAN _bittestandreset64(LONG64 *Base,LONG64 Offset) { int old = 0; __asm__ __volatile__("btrq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile LONG64 *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } __CRT_INLINE BOOLEAN _interlockedbittestandset64(LONG64 *Base,LONG64 Offset) { int old = 0; __asm__ __volatile__("lock ; btsq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile LONG64 *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } __CRT_INLINE BOOLEAN _interlockedbittestandreset64(LONG64 *Base,LONG64 Offset) { int old = 0; __asm__ __volatile__("lock ; btrq %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile LONG64 *) Base)) - :"Ir" (Offset)); + :"Ir" (Offset) : "memory"); return (BOOLEAN) (old!=0); } #endif /* !__CRT__NO_INLINE */ @@ -1805,7 +1805,7 @@ int old = 0; __asm__ __volatile__("lock ; btsl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Bit)); + :"Ir" (Bit) : "memory"); return (BOOLEAN) (old!=0); } @@ -1813,7 +1813,7 @@ int old = 0; __asm__ __volatile__("lock ; btrl %2,%1\n\tsbbl %0,%0 " :"=r" (old),"=m" ((*(volatile long *) Base)) - :"Ir" (Bit)); + :"Ir" (Bit) : "memory"); return (BOOLEAN) (old!=0); } #endif /* __CRT__NO_INLINE */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |