__get_tp()1static inline uintptr_t __get_tp() 2 { 3 register uintptr_t tp __asm__("$3"); 4 #if __mips_isa_rev < 2 5 __asm__ (".word 0x7c03e83b" : "=r" (tp) ); 6 #else 7 __asm__ ("rdhwr %0, $29" : "=r" (tp) ); 8 #endif 9 return tp; 10 } 11 12 #define TLS_ABOVE_TP 13 #define GAP_ABOVE_TP 0 14 15 #define TP_OFFSET 0x7000 16 #define DTP_OFFSET 0x8000 17 18 #define MC_PC pc 19