summaryrefslogtreecommitdiffstats
path: root/src/mapi/entry_x86-64_tls.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mapi/entry_x86-64_tls.h')
-rw-r--r--src/mapi/entry_x86-64_tls.h10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/mapi/entry_x86-64_tls.h b/src/mapi/entry_x86-64_tls.h
index 5c03b045606..38facccc870 100644
--- a/src/mapi/entry_x86-64_tls.h
+++ b/src/mapi/entry_x86-64_tls.h
@@ -46,13 +46,6 @@ __asm__(".text\n"
#ifndef MAPI_MODE_BRIDGE
-__asm__("x86_64_current_tls:\n\t"
- "movq " ENTRY_CURRENT_TABLE "@GOTTPOFF(%rip), %rax\n\t"
- "ret");
-
-extern unsigned long
-x86_64_current_tls();
-
#include <string.h>
#include "u_execmem.h"
@@ -90,7 +83,8 @@ entry_generate(int slot)
char *code;
mapi_func entry;
- addr = x86_64_current_tls();
+ __asm__("movq " ENTRY_CURRENT_TABLE "@GOTTPOFF(%%rip), %0"
+ : "=r" (addr));
if ((addr >> 32) != 0xffffffff)
return NULL;
addr &= 0xffffffff;