Import mfcpu() from OpenBSD, needed by power switch code.
This commit is contained in:
parent
4627df7dfc
commit
48f11129db
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: cpufunc.h,v 1.3 2004/08/26 16:48:06 jkunz Exp $ */
|
||||
/* $NetBSD: cpufunc.h,v 1.4 2005/01/31 17:32:15 jkunz Exp $ */
|
||||
|
||||
/* $OpenBSD: cpufunc.h,v 1.17 2000/05/15 17:22:40 mickey Exp $ */
|
||||
|
||||
|
@ -81,6 +81,11 @@ static __inline register_t ldsid(vaddr_t p) {
|
|||
#define mtctl(v,r) __asm __volatile("mtctl %0,%1":: "r" (v), "i" (r))
|
||||
#define mfctl(r,v) __asm __volatile("mfctl %1,%0": "=r" (v): "i" (r))
|
||||
|
||||
#define mfcpu(r,v) /* XXX for the lack of the mnemonics */ \
|
||||
__asm __volatile("diag %1\n\t" \
|
||||
"copy %%r22, %0" \
|
||||
: "=r" (v) : "i" ((0x1400 | ((r) << 21) | (22))) : "r22")
|
||||
|
||||
#define mtsp(v,r) __asm __volatile("mtsp %0,%1":: "r" (v), "i" (r))
|
||||
#define mfsp(r,v) __asm __volatile("mfsp %1,%0": "=r" (v): "i" (r))
|
||||
|
||||
|
|
Loading…
Reference in New Issue