Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/sparc/sparc - remove unused ft_want_ast()
details: https://anonhg.NetBSD.org/src/rev/22ac3846ff7d
branches: trunk
changeset: 750199:22ac3846ff7d
user: mrg <mrg%NetBSD.org@localhost>
date: Sun Dec 20 03:53:46 2009 +0000
description:
- remove unused ft_want_ast()
- give nmi_sun* ENTRY() points so they show up in symbols properly
- add some disabled code to use this cpu's idlelwp area when hatching
a cpu, but right now it makes this worse not better...
diffstat:
sys/arch/sparc/sparc/locore.s | 36 +++++++++++++++++++-----------------
1 files changed, 19 insertions(+), 17 deletions(-)
diffs (90 lines):
diff -r c9be76d6f7ce -r 22ac3846ff7d sys/arch/sparc/sparc/locore.s
--- a/sys/arch/sparc/sparc/locore.s Sun Dec 20 03:50:56 2009 +0000
+++ b/sys/arch/sparc/sparc/locore.s Sun Dec 20 03:53:46 2009 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: locore.s,v 1.249 2009/12/10 05:10:03 rmind Exp $ */
+/* $NetBSD: locore.s,v 1.250 2009/12/20 03:53:46 mrg Exp $ */
/*
* Copyright (c) 1996 Paul Kranenburg
@@ -2988,17 +2988,6 @@
b ft_rett
mov SRMMU_CXR, %l7 ! reload ctx register
-_ENTRY(_C_LABEL(ft_want_ast))
- mov 1, %l4 ! ack xcall in all cases
- st %l4, [%l6 + CPUINFO_XMSG_CMPLT] ! completed = 1
-
- btst PSR_PS, %l0 ! if from user mode
- be,a slowtrap ! call trap(T_AST)
- mov T_AST, %l3
-
- mov %l0, %psr ! else return from trap
- nop ! AST will be noticed on out way out
- RETT
#endif /* MULTIPROCESSOR */
#ifdef notyet
@@ -3041,7 +3030,7 @@
*/
#if defined(SUN4)
-nmi_sun4:
+_ENTRY(_C_LABEL(nmi_sun4))
INTR_SETUP(-CCFSZ-80)
INCR(_C_LABEL(uvmexp)+V_INTR) ! cnt.v_intr++; (clobbers %o0,%o1)
/*
@@ -3067,7 +3056,7 @@
#endif
#if defined(SUN4C)
-nmi_sun4c:
+_ENTRY(_C_LABEL(nmi_sun4c))
INTR_SETUP(-CCFSZ-80)
INCR(_C_LABEL(uvmexp)+V_INTR) ! cnt.v_intr++; (clobbers %o0,%o1)
/*
@@ -3101,7 +3090,7 @@
#endif /* SUN4M */
#endif /* SUN4C */
-nmi_common:
+_ENTRY(_C_LABEL(nmi_common))
! and call C code
call _C_LABEL(memerr4_4c) ! memerr(0, ser, sva, aer, ava)
clr %o0
@@ -3122,7 +3111,7 @@
wr %l4, 0, %y ! restore y
#if defined(SUN4M)
-nmi_sun4m:
+_ENTRY(_C_LABEL(nmi_sun4m))
INTR_SETUP(-CCFSZ-80)
INCR(_C_LABEL(uvmexp)+V_INTR) ! cnt.v_intr++; (clobbers %o0,%o1)
@@ -4616,12 +4605,25 @@
wr %g6, 0, %tbr
nop; nop; nop ! paranoia
+#if 1
+ set USRSTACK - CCFSZ, %fp ! as if called from user code
+
/* Set up a stack. We use the bottom half of the interrupt stack */
- set USRSTACK - CCFSZ, %fp ! as if called from user code
sethi %hi(_EINTSTACKP), %o0
ld [%o0 + %lo(_EINTSTACKP)], %o0
set (INT_STACK_SIZE/2) + CCFSZ + 80, %sp
sub %o0, %sp, %sp
+#else
+ /*
+ * Use this CPUs idlelwp's stack
+ */
+ sethi %hi(cpcb), %o0
+ ld [%o0 + %lo(cpcb)], %o0
+ set USPACE - 80 - CCFSZ, %sp
+ add %o0, %sp, %sp
+
+ add 80, %sp, %fp
+#endif
/* Enable traps */
rd %psr, %l0
Home |
Main Index |
Thread Index |
Old Index