summaryrefslogtreecommitdiff
path: root/arch/or1k/pthread_arch.h
blob: f75ea7e4e534e2726670de8a2b4e9842534cf0e9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
static inline uintptr_t __get_tp()
{
#ifdef __clang__
	uintptr_t tp;
	__asm__ ("l.ori %0, r10, 0" : "=r" (tp) );
#else
	register uintptr_t tp __asm__("r10");
	__asm__ ("" : "=r" (tp) );
#endif
	return tp;
}

#define TLS_ABOVE_TP
#define GAP_ABOVE_TP 0

#define MC_PC regs.pc