summaryrefslogtreecommitdiffstats
path: root/sys/sparc64
diff options
context:
space:
mode:
Diffstat (limited to 'sys/sparc64')
-rw-r--r--sys/sparc64/include/pcpu.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/sparc64/include/pcpu.h b/sys/sparc64/include/pcpu.h
index 24548d0..033f7e5 100644
--- a/sys/sparc64/include/pcpu.h
+++ b/sys/sparc64/include/pcpu.h
@@ -74,6 +74,16 @@ register struct pcpu *pcpup __asm__(__XSTRING(PCPU_REG));
#define PCPU_GET(member) (pcpup->pc_ ## member)
+static __inline __pure2 struct thread *
+__curthread(void)
+{
+ struct thread *td;
+
+ __asm("ldx [%" __XSTRING(PCPU_REG) "], %0" : "=r" (td));
+ return (td);
+}
+#define curthread (__curthread())
+
/*
* XXX The implementation of this operation should be made atomic
* with respect to preemption.
OpenPOWER on IntegriCloud