diff options
Diffstat (limited to 'openmp/libomptarget/deviceRTLs/nvptx/src/target_impl.h')
-rw-r--r-- | openmp/libomptarget/deviceRTLs/nvptx/src/target_impl.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/openmp/libomptarget/deviceRTLs/nvptx/src/target_impl.h b/openmp/libomptarget/deviceRTLs/nvptx/src/target_impl.h index bd212ca18cf..bbce9f1c511 100644 --- a/openmp/libomptarget/deviceRTLs/nvptx/src/target_impl.h +++ b/openmp/libomptarget/deviceRTLs/nvptx/src/target_impl.h @@ -91,6 +91,12 @@ INLINE __kmpc_impl_lanemask_t __kmpc_impl_lanemask_gt() { return res; } +INLINE uint32_t __kmpc_impl_smid() { + uint32_t id; + asm("mov.u32 %0, %%smid;" : "=r"(id)); + return id; +} + INLINE uint32_t __kmpc_impl_ffs(uint32_t x) { return __ffs(x); } INLINE uint32_t __kmpc_impl_popc(uint32_t x) { return __popc(x); } |