svn commit: r185007 - head/sys/sparc64/sparc64
Marius Strobl
marius at FreeBSD.org
Sun Nov 16 11:30:17 PST 2008
Author: marius
Date: Sun Nov 16 19:30:17 2008
New Revision: 185007
URL: http://svn.freebsd.org/changeset/base/185007
Log:
Use the spitfire VIS block copy/zero functions also with cheetah-
class CPUs. In theory one could also use versions additionally
taking advantage of the prefetch cache with cheetah-class CPUs,
in my worldstone runs these either didn't provide extra speedup
(USIII+) in comparison to the existing spitfire versions or were
even slightly slower (USIIIi) though, so they aren't committed
for now.
The basic problem leading to the VIS-based copy/zero functions
being initially disabled for cheetah-class CPUs was solved by
letting cheetah_init() clear DCR_IFPOE.
Modified:
head/sys/sparc64/sparc64/machdep.c
Modified: head/sys/sparc64/sparc64/machdep.c
==============================================================================
--- head/sys/sparc64/sparc64/machdep.c Sun Nov 16 19:28:55 2008 (r185006)
+++ head/sys/sparc64/sparc64/machdep.c Sun Nov 16 19:30:17 2008 (r185007)
@@ -387,6 +387,12 @@ sparc64_init(caddr_t mdp, u_long o1, u_l
case CPU_IMPL_ULTRASPARCII:
case CPU_IMPL_ULTRASPARCIIi:
case CPU_IMPL_ULTRASPARCIIe:
+ case CPU_IMPL_ULTRASPARCIII: /* NB: we've disabled P$. */
+ case CPU_IMPL_ULTRASPARCIIIp:
+ case CPU_IMPL_ULTRASPARCIIIi:
+ case CPU_IMPL_ULTRASPARCIV:
+ case CPU_IMPL_ULTRASPARCIVp:
+ case CPU_IMPL_ULTRASPARCIIIip:
cpu_block_copy = spitfire_block_copy;
cpu_block_zero = spitfire_block_zero;
break;
@@ -772,7 +778,7 @@ sparc64_shutdown_final(void *dummy, int
/* Turn the power off? */
if ((howto & RB_POWEROFF) != 0)
cpu_shutdown(&args);
- /* In case of halt, return to the firmware */
+ /* In case of halt, return to the firmware. */
if ((howto & RB_HALT) != 0)
cpu_halt();
}
More information about the svn-src-all
mailing list