summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@uclibc-ng.org>2017-07-05 22:49:41 +0200
committerWaldemar Brodkorb <wbx@uclibc-ng.org>2017-07-05 22:49:41 +0200
commit482d023e516bc88a10d8ab31f389f2b47b1a71d1 (patch)
tree58debda064ace5716fe1f23abd9b1d29b4f4bf7b
parentdc7ad97385c940c0a0d67b924c1b78159da5549d (diff)
Remove CALL_THREAD_FCT macro
Following glibc commit a358c805300e358e30d4788a6f19c69988623a5c
-rw-r--r--libpthread/nptl/pthread_create.c4
-rw-r--r--libpthread/nptl/sysdeps/i386/tls.h16
-rw-r--r--libpthread/nptl/sysdeps/x86_64/tls.h12
3 files changed, 0 insertions, 32 deletions
diff --git a/libpthread/nptl/pthread_create.c b/libpthread/nptl/pthread_create.c
index b11265f7c..3064b40dd 100644
--- a/libpthread/nptl/pthread_create.c
+++ b/libpthread/nptl/pthread_create.c
@@ -282,11 +282,7 @@ start_thread (void *arg)
}
/* Run the code the user provided. */
-#ifdef CALL_THREAD_FCT
- THREAD_SETMEM (pd, result, CALL_THREAD_FCT (pd));
-#else
THREAD_SETMEM (pd, result, pd->start_routine (pd->arg));
-#endif
}
/* Run the destructor for the thread-local data. */
diff --git a/libpthread/nptl/sysdeps/i386/tls.h b/libpthread/nptl/sysdeps/i386/tls.h
index f283a40f0..17c80e5fc 100644
--- a/libpthread/nptl/sysdeps/i386/tls.h
+++ b/libpthread/nptl/sysdeps/i386/tls.h
@@ -422,22 +422,6 @@ union user_desc_init
abort (); })
-/* Call the user-provided thread function. */
-#define CALL_THREAD_FCT(descr) \
- ({ void *__res; \
- int __ignore1, __ignore2; \
- __asm__ __volatile__ ("pushl %%eax\n\t" \
- "pushl %%eax\n\t" \
- "pushl %%eax\n\t" \
- "pushl %%gs:%P4\n\t" \
- "call *%%gs:%P3\n\t" \
- "addl $16, %%esp" \
- : "=a" (__res), "=c" (__ignore1), "=d" (__ignore2) \
- : "i" (offsetof (struct pthread, start_routine)), \
- "i" (offsetof (struct pthread, arg))); \
- __res; })
-
-
/* Set the stack guard field in TCB head. */
#define THREAD_SET_STACK_GUARD(value) \
THREAD_SETMEM (THREAD_SELF, header.stack_guard, value)
diff --git a/libpthread/nptl/sysdeps/x86_64/tls.h b/libpthread/nptl/sysdeps/x86_64/tls.h
index b450c1745..d8b82ede9 100644
--- a/libpthread/nptl/sysdeps/x86_64/tls.h
+++ b/libpthread/nptl/sysdeps/x86_64/tls.h
@@ -349,18 +349,6 @@ typedef struct
abort (); })
-# define CALL_THREAD_FCT(descr) \
- ({ void *__res; \
- __asm__ __volatile__ ("movq %%fs:%P2, %%rdi\n\t" \
- "callq *%%fs:%P1" \
- : "=a" (__res) \
- : "i" (offsetof (struct pthread, start_routine)), \
- "i" (offsetof (struct pthread, arg)) \
- : "di", "si", "cx", "dx", "r8", "r9", "r10", "r11", \
- "memory", "cc"); \
- __res; })
-
-
/* Set the stack guard field in TCB head. */
# define THREAD_SET_STACK_GUARD(value) \
THREAD_SETMEM (THREAD_SELF, header.stack_guard, value)