Module Name:    src
Committed By:   matt
Date:           Tue Mar 31 01:11:42 UTC 2015

Modified Files:
        src/sys/arch/riscv/include: cpu.h

Log Message:
Define curcpu() as lwp_getcpu(curlwp) since curlwp is always in the "tp"
(thread pointer) register.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/riscv/include/cpu.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/riscv/include/cpu.h
diff -u src/sys/arch/riscv/include/cpu.h:1.2 src/sys/arch/riscv/include/cpu.h:1.3
--- src/sys/arch/riscv/include/cpu.h:1.2	Sat Mar 28 16:13:56 2015
+++ src/sys/arch/riscv/include/cpu.h	Tue Mar 31 01:11:41 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: cpu.h,v 1.2 2015/03/28 16:13:56 matt Exp $ */
+/* $NetBSD: cpu.h,v 1.3 2015/03/31 01:11:41 matt Exp $ */
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -81,16 +81,13 @@ struct cpu_info {
 
 extern struct cpu_info cpu_info_store;
 
+// This is also in <sys/lwp.h>
+struct lwp;
+static inline struct cpu_info *lwp_getcpu(struct lwp *);
+
 register struct lwp *riscv_curlwp __asm("tp");
 #define	curlwp		riscv_curlwp
-
-static inline struct cpu_info *
-curcpu(void)
-{
-	struct cpu_info *ci;
-	__asm("csrr\t%0, sscratch" : "=r"(ci));
-	return ci;
-}
+#define	curcpu()	lwp_getcpu(curlwp)
 
 static inline cpuid_t
 cpu_number(void)

Reply via email to