==== //depot/projects/sparc64/sys/sparc64/sparc64/exception.s#61 - /usr/p4/sparc64/sys/sparc64/sparc64/exception.s ==== --- /tmp/tmp.71187.0 Mon Feb 25 21:44:41 2002 +++ /usr/p4/sparc64/sys/sparc64/sparc64/exception.s Mon Feb 25 21:39:04 2002 @@ -2663,7 +2663,8 @@ rdpr %tpc, %l1 rdpr %tnpc, %l2 rdpr %pil, %l3 - rdpr %wstate, %l4 + rd %y, %l4 + rdpr %wstate, %l5 #if KTR_COMPILE & KTR_TRAP CATR(KTR_TRAP, "tl1_trap: td=%p type=%#lx pil=%#lx pc=%#lx sp=%#lx" @@ -2680,13 +2681,14 @@ wrpr %g0, 1, %tl - and %l4, WSTATE_OTHER_MASK, %l4 - wrpr %l4, WSTATE_KERNEL, %wstate + and %l5, WSTATE_OTHER_MASK, %l5 + wrpr %l5, WSTATE_KERNEL, %wstate stx %l0, [%sp + SPOFF + CCFSZ + TF_TSTATE] stx %l1, [%sp + SPOFF + CCFSZ + TF_TPC] stx %l2, [%sp + SPOFF + CCFSZ + TF_TNPC] stb %l3, [%sp + SPOFF + CCFSZ + TF_PIL] + stw %l4, [%sp + SPOFF + CCFSZ + TF_Y] stw %o0, [%sp + SPOFF + CCFSZ + TF_TYPE] stx %o3, [%sp + SPOFF + CCFSZ + TF_TAR] @@ -2726,6 +2728,7 @@ ldx [%sp + SPOFF + CCFSZ + TF_TPC], %l1 ldx [%sp + SPOFF + CCFSZ + TF_TNPC], %l2 ldub [%sp + SPOFF + CCFSZ + TF_PIL], %l3 + lduw [%sp + SPOFF + CCFSZ + TF_Y], %l4 ldx [%sp + SPOFF + CCFSZ + TF_G1], %g1 ldx [%sp + SPOFF + CCFSZ + TF_G2], %g2 @@ -2740,6 +2743,7 @@ mov %l2, %g3 wrpr %l3, 0, %pil + wr %l4, 0, %y restore @@ -2778,7 +2782,8 @@ rdpr %tpc, %l1 rdpr %tnpc, %l2 rdpr %pil, %l3 - rdpr %wstate, %l4 + rd %y, %l4 + rdpr %wstate, %l5 #if KTR_COMPILE & KTR_INTR CATR(KTR_INTR, @@ -2798,13 +2803,14 @@ wrpr %g0, 1, %tl - and %l4, WSTATE_OTHER_MASK, %l4 - wrpr %l4, WSTATE_KERNEL, %wstate + and %l5, WSTATE_OTHER_MASK, %l5 + wrpr %l5, WSTATE_KERNEL, %wstate stx %l0, [%sp + SPOFF + CCFSZ + TF_TSTATE] stx %l1, [%sp + SPOFF + CCFSZ + TF_TPC] stx %l2, [%sp + SPOFF + CCFSZ + TF_TNPC] stb %l3, [%sp + SPOFF + CCFSZ + TF_PIL] + stw %l4, [%sp + SPOFF + CCFSZ + TF_Y] mov %o0, %l7 mov T_INTERRUPT | T_KERNEL, %o1 @@ -2847,6 +2853,8 @@ call critical_exit nop + lduw [%sp + SPOFF + CCFSZ + TF_Y], %l4 + ldx [%sp + SPOFF + CCFSZ + TF_G1], %g1 ldx [%sp + SPOFF + CCFSZ + TF_G2], %g2 ldx [%sp + SPOFF + CCFSZ + TF_G3], %g3 @@ -2859,6 +2867,7 @@ mov %l1, %g2 mov %l2, %g3 wrpr %l3, 0, %pil + wr %l4, 0, %y restore