mirror of
git://git.musl-libc.org/musl
synced 2024-12-15 11:15:07 +00:00
f81e44a0d9
three ABIs are supported: the default with 68881 80-bit fpu format and results returned in floating point registers, softfloat-only with the same format, and coldfire fpu with IEEE single/double only. only the first is tested at all, and only under qemu which has fpu emulation bugs. basic functionality smoke tests have been performed for the most common arch-specific breakage via libc-test and qemu user-level emulation. some sysvipc failures remain, but are shared with other big endian archs and will be fixed separately.
14 lines
323 B
C
14 lines
323 B
C
static inline struct pthread *__pthread_self()
|
|
{
|
|
uintptr_t tp = __syscall(SYS_get_thread_area);
|
|
return (pthread_t)(tp - 0x7000 - sizeof(struct pthread));
|
|
}
|
|
|
|
#define TLS_ABOVE_TP
|
|
#define GAP_ABOVE_TP 0
|
|
#define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread) + 0x7000)
|
|
|
|
#define DTP_OFFSET 0x8000
|
|
|
|
#define MC_PC gregs[R_PC]
|