This is the mail archive of the
cygwin-cvs@cygwin.com
mailing list for the Cygwin project.
[newlib-cygwin] Remove local winbase.h (again).
- From: Corinna Vinschen <corinna at sourceware dot org>
- To: cygwin-cvs at sourceware dot org
- Date: 13 Feb 2016 15:57:05 -0000
- Subject: [newlib-cygwin] Remove local winbase.h (again).
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=c76954517fddaa424884ffe43ad124792a769a50
commit c76954517fddaa424884ffe43ad124792a769a50
Author: Corinna Vinschen <corinna@vinschen.de>
Date: Sat Feb 13 16:56:12 2016 +0100
Remove local winbase.h (again).
Mingw32-w64 supports all required inline Interlocked functions in the
meantime.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Diff:
---
winsup/cygwin/winbase.h | 59 -------------------------------------------------
1 file changed, 59 deletions(-)
diff --git a/winsup/cygwin/winbase.h b/winsup/cygwin/winbase.h
deleted file mode 100644
index 1e825e4..0000000
--- a/winsup/cygwin/winbase.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* winbase.h
-
- Copyright 2001, 2002, 2003, 2004, 2005, 2008, 2009, 2012 Red Hat, Inc.
-
-This software is a copyrighted work licensed under the terms of the
-Cygwin license. Please consult the file "CYGWIN_LICENSE" for
-details. */
-
-#include_next "winbase.h"
-
-#ifndef _WINBASE2_H
-#define _WINBASE2_H
-
-__attribute__((gnu_inline))
-extern __inline__ LONG
-ilockcmpexch (volatile LONG *t, LONG v, LONG c)
-{
- return
- ({
- register LONG ret __asm ("%eax");
- __asm __volatile ("lock cmpxchgl %2, %1"
- : "=a" (ret), "=m" (*t)
- : "r" (v), "m" (*t), "0" (c)
- : "memory");
- ret;
- });
-}
-
-#undef InterlockedCompareExchange
-#define InterlockedCompareExchange ilockcmpexch
-#undef InterlockedCompareExchangePointer
-
-#ifdef __x86_64__
-__attribute__((gnu_inline))
-extern __inline__ LONGLONG
-ilockcmpexch64 (volatile LONGLONG *t, LONGLONG v, LONGLONG c)
-{
- return
- ({
- register LONGLONG ret __asm ("%rax");
- __asm __volatile ("lock cmpxchgq %2, %1"
- : "=a" (ret), "=m" (*t)
- : "r" (v), "m" (*t), "0" (c)
- : "memory");
- ret;
- });
-}
-
-#define InterlockedCompareExchange64 ilockcmpexch64
-#define InterlockedCompareExchangePointer(d,e,c) \
- (PVOID)InterlockedCompareExchange64((LONGLONG volatile *)(d),(LONGLONG)(e),(LONGLONG)(c))
-
-#else
-
-#define InterlockedCompareExchangePointer(d,e,c) \
- (PVOID)InterlockedCompareExchange((LONG volatile *)(d),(LONG)(e),(LONG)(c))
-
-#endif /* !__x86_64 */
-#endif /*_WINBASE2_H*/