Subject: CVS commit: src/sys/arch/powerpc
To: None <source-changes@NetBSD.org>
From: Matt Thomas <matt@netbsd.org>
List: source-changes
Date: 04/15/2004 21:07:07
Module Name:	src
Committed By:	matt
Date:		Thu Apr 15 21:07:07 UTC 2004

Modified Files:
	src/sys/arch/powerpc/include: psl.h userret.h
	src/sys/arch/powerpc/oea: altivec.c
	src/sys/arch/powerpc/powerpc: compat_13_machdep.c compat_16_machdep.c
	    darwin_machdep.c mach_machdep.c sig_machdep.c trap.c

Log Message:
Revamp how user MSR/SRR1 are dealt with.
Add a PSL_USEROK_P(psl) macro which valids the bits (replaces the use of
PSL_USERSTATIC).
Add a PSL_USERSRR1 mask which is used to mask out status bits in the upper
half of SRR1.
Make sure PSL_VEC is set appropriately in userret().  PSL_VEC is in the same
region as SSR1 status bits so it's not preserved on exceptions.  Thus we
need to make to set it.
When returning a MSR/SRR1 to userland, always clear the status bits.
Add emulation of the mfpvr, mtmsr, and mfmsr instructions.


To generate a diff of this commit:
cvs rdiff -r1.9 -r1.10 src/sys/arch/powerpc/include/psl.h
cvs rdiff -r1.8 -r1.9 src/sys/arch/powerpc/include/userret.h
cvs rdiff -r1.5 -r1.6 src/sys/arch/powerpc/oea/altivec.c
cvs rdiff -r1.8 -r1.9 src/sys/arch/powerpc/powerpc/compat_13_machdep.c
cvs rdiff -r1.3 -r1.4 src/sys/arch/powerpc/powerpc/compat_16_machdep.c
cvs rdiff -r1.12 -r1.13 src/sys/arch/powerpc/powerpc/darwin_machdep.c
cvs rdiff -r1.18 -r1.19 src/sys/arch/powerpc/powerpc/mach_machdep.c
cvs rdiff -r1.21 -r1.22 src/sys/arch/powerpc/powerpc/sig_machdep.c
cvs rdiff -r1.100 -r1.101 src/sys/arch/powerpc/powerpc/trap.c

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