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:
Diffstat (limited to 'winsup/cygwin/winbase.h')
-rw-r--r--winsup/cygwin/winbase.h84
1 files changed, 0 insertions, 84 deletions
diff --git a/winsup/cygwin/winbase.h b/winsup/cygwin/winbase.h
deleted file mode 100644
index 801badc44..000000000
--- a/winsup/cygwin/winbase.h
+++ /dev/null
@@ -1,84 +0,0 @@
-#include_next "winbase.h"
-
-#ifndef _WINBASE2_H
-#define _WINBASE2_H
-
-extern __inline__ long ilockincr (long *m)
-{
- register int __res;
- __asm__ __volatile__ ("\n\
- movl $1,%0\n\
- lock xadd %0,(%1)\n\
- inc %0\n\
- ": "=a" (__res), "=r" (m): "1" (m));
- return __res;
-}
-extern __inline__ long ilockdecr (long *m)
-{
- register int __res;
- __asm__ __volatile__ ("\n\
- movl $0xffffffff,%0\n\
- lock xadd %0,(%1)\n\
- dec %0\n\
- ": "=a" (__res), "=r" (m): "1" (m));
- return __res;
-}
-extern __inline__ long ilockexch (long *t, long v)
-{
- register int __res;
- __asm__ __volatile__ ("\n\
- movl (%2),%0\n\
-1: lock cmpxchgl %3,(%1)\n\
- jne 1b\n\
- ": "=a" (__res), "=c" (t): "1" (t), "d" (v));
- return __res;
-}
-
-#undef InterlockedIncrement
-#define InterlockedIncrement ilockincr
-#undef InterlockedDecrement
-#define InterlockedDecrement ilockdecr
-#undef InterlockedExchange
-#define InterlockedExchange ilockexch
-
-extern long tls_ix;
-
-extern __inline__ DWORD
-my_tlsalloc ()
-{
- return (DWORD) ilockincr (&tls_ix);
-}
-
-extern __inline__ BOOL
-my_tlssetvalue (DWORD ix, void *val)
-{
- char **stackbase;
- __asm__ volatile ("movl %%fs:4,%0": "=g" (stackbase));
- stackbase[-ix] = (char *) val;
- return 1;
-}
-
-extern __inline__ void *
-my_tlsgetvalue (DWORD ix)
-{
- char **stackbase;
- __asm__ volatile ("movl %%fs:4,%0": "=g" (stackbase));
- return stackbase[-ix];
-}
-
-extern __inline__ BOOL
-my_tlsfree (DWORD ix)
-{
- /* nothing for now */
- return 1;
-}
-
-#undef TlsAlloc
-#define TlsAlloc my_tlsalloc
-#undef TlsGetValue
-#define TlsGetValue my_tlsgetvalue
-#undef TlsSetValue
-#define TlsSetValue my_tlssetvalue
-#undef TlsFree
-#define TlsFree my_tlsfree
-#endif /*_WINBASE2_H*/