summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/sparc64/include/tstate.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/sparc64/include/tstate.h b/sys/sparc64/include/tstate.h
index 9be6f43..bead818 100644
--- a/sys/sparc64/include/tstate.h
+++ b/sys/sparc64/include/tstate.h
@@ -47,6 +47,9 @@
#define TSTATE_AM TSTATE_PSTATE(PSTATE_AM)
#define TSTATE_PEF TSTATE_PSTATE(PSTATE_PEF)
#define TSTATE_RED TSTATE_PSTATE(PSTATE_RED)
+#define TSTATE_MM_TSO TSTATE_PSTATE(PSTATE_MM_TSO)
+#define TSTATE_MM_PSO TSTATE_PSTATE(PSTATE_MM_PSO)
+#define TSTATE_MM_RMO TSTATE_PSTATE(PSTATE_MM_RMO)
#define TSTATE_TLE TSTATE_PSTATE(PSTATE_TLE)
#define TSTATE_CLE TSTATE_PSTATE(PSTATE_CLE)
#define TSTATE_MG TSTATE_PSTATE(PSTATE_MG)
@@ -59,6 +62,10 @@
#define TSTATE_ASI(x) ((x & TSTATE_ASI_MASK) >> TSTATE_ASI_SHIFT)
#define TSTATE_CCR_SHIFT 32
+#define TSTATE_ICC_SHIFT (TSTATE_CCR_SHIFT + ICC_SHIFT)
+#define TSTATE_ICC_MASK (ICC_MASK << TSTATE_CCR_SHIFT)
+#define TSTATE_XCC_SHIFT (TSTATE_CCR_SHIFT + XCC_SHIFT)
+#define TSTATE_XCC_MASK (XCC_MASK << TSTATE_CCR_SHIFT)
#define TSTATE_CCR(x) ((x) << TSTATE_CCR_SHIFT)
#define TSTATE_ICC_C TSTATE_CCR(ICC_C)
#define TSTATE_ICC_V TSTATE_CCR(ICC_V)
@@ -69,4 +76,7 @@
#define TSTATE_XCC_Z TSTATE_CCR(XCC_Z)
#define TSTATE_XCC_N TSTATE_CCR(XCC_N)
+#define TSTATE_SECURE(tstate) \
+ PSTATE_SECURE(((tstate) >> TSTATE_PSTATE_SHIFT) & ((1 << TSTATE_PSTATE_BITS) - 1))
+
#endif /* !_MACHINE_TSTATE_H_ */
OpenPOWER on IntegriCloud