diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2023-03-12 21:43:20 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2023-03-12 21:43:20 +0100 |
| commit | a08f3c4c9eca36ef2415d8428434ca4af41aa84e (patch) | |
| tree | 19a473f8220c366379ad7d887a4b2488e6035d22 /src/elfs | |
| parent | c0f98bb0ec8b996d7fe35b1b311ec421587a94fd (diff) | |
| download | box64-a08f3c4c9eca36ef2415d8428434ca4af41aa84e.tar.gz box64-a08f3c4c9eca36ef2415d8428434ca4af41aa84e.zip | |
Tried to optimize TLS fetching
Diffstat (limited to 'src/elfs')
| -rwxr-xr-x | src/elfs/elfloader.c | 7 |
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; } |