Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Nov 2008 19:30:17 +0000 (UTC)
From:      Marius Strobl <marius@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r185007 - head/sys/sparc64/sparc64
Message-ID:  <200811161930.mAGJUH2T062841@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
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();
 }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200811161930.mAGJUH2T062841>