mirror of
https://git.musl-libc.org/git/musl
synced 2025-02-15 17:54:23 +03:00
![Rich Felker](/assets/img/avatar_default.png)
using the actual mcontext_t definition rather than an overlaid pointer array both improves correctness/readability and eliminates some ugly hacks for archs with 64-bit registers bit 32-bit program counter. also fix UB due to comparison of pointers not in a common array object.
11 lines
198 B
C
11 lines
198 B
C
static inline struct pthread *__pthread_self()
|
|
{
|
|
struct pthread *self;
|
|
__asm__ __volatile__ ("movl %%gs:0,%0" : "=r" (self) );
|
|
return self;
|
|
}
|
|
|
|
#define TP_ADJ(p) (p)
|
|
|
|
#define MC_PC gregs[REG_EIP]
|