Module Name:    src
Committed By:   matt
Date:           Thu Feb  2 18:31:41 UTC 2012

Modified Files:
        src/sys/arch/vax/vax: genassym.cf intvec.S

Log Message:
In the syscall vector, deal with SYS_lwp_getprivate quickly.  XXX what about
non-NetBSD syscall tables.


To generate a diff of this commit:
cvs rdiff -u -r1.50 -r1.51 src/sys/arch/vax/vax/genassym.cf
cvs rdiff -u -r1.20 -r1.21 src/sys/arch/vax/vax/intvec.S

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/vax/vax/genassym.cf
diff -u src/sys/arch/vax/vax/genassym.cf:1.50 src/sys/arch/vax/vax/genassym.cf:1.51
--- src/sys/arch/vax/vax/genassym.cf:1.50	Thu Apr 14 08:17:42 2011
+++ src/sys/arch/vax/vax/genassym.cf	Thu Feb  2 18:31:41 2012
@@ -1,4 +1,4 @@
-#	$NetBSD: genassym.cf,v 1.50 2011/04/14 08:17:42 matt Exp $
+#	$NetBSD: genassym.cf,v 1.51 2012/02/02 18:31:41 matt Exp $
 #
 # Copyright (c) 1997 Ludd, University of Lule}, Sweden.
 # All rights reserved.
@@ -150,6 +150,7 @@ define	EV_COUNT	offsetof(struct evcnt, e
 
 define	SYS_compat_16___sigreturn14	SYS_compat_16___sigreturn14
 define	SYS_exit	SYS_exit
+define	SYS__lwp_getprivate	SYS__lwp_getprivate
 
 define	VAX_TYP_UV2	VAX_TYP_UV2
 define	VAX_TYP_8SS	VAX_TYP_8SS

Index: src/sys/arch/vax/vax/intvec.S
diff -u src/sys/arch/vax/vax/intvec.S:1.20 src/sys/arch/vax/vax/intvec.S:1.21
--- src/sys/arch/vax/vax/intvec.S:1.20	Tue Apr 12 18:07:57 2011
+++ src/sys/arch/vax/vax/intvec.S	Thu Feb  2 18:31:41 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: intvec.S,v 1.20 2011/04/12 18:07:57 matt Exp $   */
+/*	$NetBSD: intvec.S,v 1.21 2012/02/02 18:31:41 matt Exp $   */
 
 /*
  * Copyright (c) 1994, 1997 Ludd, University of Lule}, Sweden.
@@ -107,7 +107,7 @@ _C_LABEL(rpb):	
 	INTVEC(syscall, KSTACK)		# main syscall trap, chmk, 40
 	INTVEC(chmx, KSTACK)		# chme, 44
 	INTVEC(chmx, KSTACK)		# chms, 48
-	INTVEC(chmu, KSTACK)		# chmu, 4C
+	INTVEC(chmx, KSTACK)		# chmu, 4C
 	NOVEC;				# System Backplane Exception/BIerror, 50
 	INTVEC(cmrerr, ISTACK)		# Corrected Memory Read, 54
 	NOVEC;				# System Backplane Alert/RXCD, 58
@@ -224,19 +224,6 @@ SCBENTRY(privinflt)	# Privileged/unimple
 	TRAPCALL(resadflt, T_RESADFLT)
 
 /*
- * Use chmu to implement a "fast" _lwp_getprivate.
- */
-SCBENTRY(chmu)
-	cmpl	(%sp), $1
-	bneq	1f
-	mfpr	$PR_SSP, %r0		# get curlwp
-	movl	L_PRIVATE(%r0), %r0	# get l_private
-	addl2	%sp, 4
-	rei
-1:
-	brw	Xchmx
-
-/*
  * default handler for CHME and CHMS
  */
 SCBENTRY(chmx)
@@ -284,6 +271,15 @@ TRAPCALL(breakp, T_BPTFLT)
 TRAPARGC(arithflt, T_ARITHFLT)
 
 SCBENTRY(syscall)			# Main system call
+#if 1
+	cmpl	(%sp), $SYS__lwp_getprivate
+	bneq	1f
+	mfpr	$PR_SSP, %r0		# get curlwp
+	movl	L_PRIVATE(%r0), %r0	# get l_private
+	addl2	$4, %sp			# eat the code
+	rei
+1:
+#endif
 	pushl	$T_SYSCALL
 	pushr	$0xfff
 	mfpr	$PR_USP, -(%sp)

Reply via email to