about summary refs log tree commit diff stats
path: root/src/elfs
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2023-03-12 21:43:20 +0100
committerptitSeb <sebastien.chev@gmail.com>2023-03-12 21:43:20 +0100
commita08f3c4c9eca36ef2415d8428434ca4af41aa84e (patch)
tree19a473f8220c366379ad7d887a4b2488e6035d22 /src/elfs
parentc0f98bb0ec8b996d7fe35b1b311ec421587a94fd (diff)
downloadbox64-a08f3c4c9eca36ef2415d8428434ca4af41aa84e.tar.gz
box64-a08f3c4c9eca36ef2415d8428434ca4af41aa84e.zip
Tried to optimize TLS fetching
Diffstat (limited to 'src/elfs')
-rwxr-xr-xsrc/elfs/elfloader.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/src/elfs/elfloader.c b/src/elfs/elfloader.c
index 2082322d..05ff19e1 100755
--- a/src/elfs/elfloader.c
+++ b/src/elfs/elfloader.c
@@ -1463,12 +1463,7 @@ void* GetTLSPointer(box64context_t* context, elfheader_t* h)
 {
     if(!h->tlssize)
         return NULL;
-    tlsdatasize_t* ptr;
-    if ((ptr = (tlsdatasize_t*)pthread_getspecific(context->tlskey)) == NULL) {
-        ptr = (tlsdatasize_t*)fillTLSData(context);
-    }
-    if(ptr->tlssize != context->tlssize)
-        ptr = (tlsdatasize_t*)resizeTLSData(context, ptr);
+    tlsdatasize_t* ptr = getTLSData(context);
     return ptr->data+h->tlsbase;
 }