summaryrefslogtreecommitdiffstats
path: root/sys/sparc64/include/cpufunc.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/sparc64/include/cpufunc.h')
-rw-r--r--sys/sparc64/include/cpufunc.h25
1 files changed, 7 insertions, 18 deletions
diff --git a/sys/sparc64/include/cpufunc.h b/sys/sparc64/include/cpufunc.h
index 4e59bb3..4a3dd7a 100644
--- a/sys/sparc64/include/cpufunc.h
+++ b/sys/sparc64/include/cpufunc.h
@@ -32,6 +32,8 @@
#include <machine/asi.h>
#include <machine/pstate.h>
+struct thread;
+
/*
* membar operand macros for use in other macros when # is a special
* character. Keep these in sync with what the hardware expects.
@@ -160,30 +162,12 @@ STNC_GEN(u_long, stxa);
: : "r" (val), "rI" (xor)); \
} while (0)
-#define CRITICAL_FORK (0)
-
static __inline void
breakpoint(void)
{
__asm __volatile("ta %%xcc, 1" : :);
}
-static __inline critical_t
-cpu_critical_enter(void)
-{
- critical_t pil;
-
- pil = rdpr(pil);
- wrpr(pil, 0, 14);
- return (pil);
-}
-
-static __inline void
-cpu_critical_exit(critical_t pil)
-{
- wrpr(pil, pil, 0);
-}
-
static __inline register_t
intr_disable(void)
{
@@ -240,4 +224,9 @@ ffs(int mask)
#undef LDNC_GEN
#undef STNC_GEN
+void cpu_critical_enter(void);
+void cpu_critical_exit(void);
+void cpu_critical_fork_exit(void);
+void cpu_thread_link(struct thread *td);
+
#endif /* !_MACHINE_CPUFUNC_H_ */
OpenPOWER on IntegriCloud