mirror of
https://github.com/microsoft/mimalloc.git
synced 2025-05-05 15:09:31 +03:00
parent
2ab0bb3536
commit
ab3dac04c2
1 changed files with 8 additions and 0 deletions
|
@ -707,7 +707,11 @@ static inline void* mi_tls_slot(size_t slot) mi_attr_noexcept {
|
||||||
res = tcb[slot];
|
res = tcb[slot];
|
||||||
#elif defined(__aarch64__)
|
#elif defined(__aarch64__)
|
||||||
void** tcb; UNUSED(ofs);
|
void** tcb; UNUSED(ofs);
|
||||||
|
#if defined(__MACH__)
|
||||||
|
__asm__ volatile ("mrs %0, tpidrro_el0" : "=r" (tcb));
|
||||||
|
#else
|
||||||
__asm__ volatile ("mrs %0, tpidr_el0" : "=r" (tcb));
|
__asm__ volatile ("mrs %0, tpidr_el0" : "=r" (tcb));
|
||||||
|
#endif
|
||||||
res = tcb[slot];
|
res = tcb[slot];
|
||||||
#endif
|
#endif
|
||||||
return res;
|
return res;
|
||||||
|
@ -730,7 +734,11 @@ static inline void mi_tls_slot_set(size_t slot, void* value) mi_attr_noexcept {
|
||||||
tcb[slot] = value;
|
tcb[slot] = value;
|
||||||
#elif defined(__aarch64__)
|
#elif defined(__aarch64__)
|
||||||
void** tcb; UNUSED(ofs);
|
void** tcb; UNUSED(ofs);
|
||||||
|
#if defined(__MACH__)
|
||||||
|
__asm__ volatile ("mrs %0, tpidrro_el0" : "=r" (tcb));
|
||||||
|
#else
|
||||||
__asm__ volatile ("mrs %0, tpidr_el0" : "=r" (tcb));
|
__asm__ volatile ("mrs %0, tpidr_el0" : "=r" (tcb));
|
||||||
|
#endif
|
||||||
tcb[slot] = value;
|
tcb[slot] = value;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue