We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 5f7d735 commit f34e22cCopy full SHA for f34e22c
Include/object.h
@@ -283,6 +283,13 @@ _Py_ThreadId(void)
283
// Both GCC and Clang have supported __builtin_thread_pointer
284
// for s390 from long time ago.
285
tid = (uintptr_t)__builtin_thread_pointer();
286
+#elif defined(__riscv)
287
+ #if defined(__clang__) && _Py__has_builtin(__builtin_thread_pointer)
288
+ tid = (uintptr_t)__builtin_thread_pointer();
289
+ #else
290
+ // tp is Thread Pointer provided by the RISC-V ABI.
291
+ __asm__ ("mv %0, tp" : "=r" (tid));
292
+ #endif
293
#else
294
# error "define _Py_ThreadId for this platform"
295
#endif
0 commit comments