#include <sysdep.h>
#include <tls.h>

RESULT			offsetof (struct pthread, result)
TID			offsetof (struct pthread, tid)
PID			offsetof (struct pthread, pid)
CANCELHANDLING		offsetof (struct pthread, cancelhandling)
CLEANUP_JMP_BUF		offsetof (struct pthread, cleanup_jmp_buf)
MULTIPLE_THREADS_OFFSET	offsetof (struct pthread, header.multiple_threads)
TLS_PRE_TCB_SIZE	sizeof (struct pthread)
MUTEX_FUTEX		offsetof (pthread_mutex_t, __data.__lock)

-- Use a thread_offset when working with asm to make things simpler
-- This way we get the offset of a member in the struct pthread that
-- preceeds the thread pointer (which points to the dtv).
#define thread_offsetof(mem)    (unsigned int)(offsetof(struct pthread, mem) - sizeof(struct pthread))
PID_THREAD_OFFSET		thread_offsetof (pid)
TID_THREAD_OFFSET		thread_offsetof (tid)
MULTIPLE_THREADS_THREAD_OFFSET	thread_offsetof (header.multiple_threads)
