svn commit: r216820 - in head/share: examples/etc mk

Marius Strobl marius at FreeBSD.org
Thu Dec 30 15:58:24 UTC 2010


Author: marius
Date: Thu Dec 30 15:58:23 2010
New Revision: 216820
URL: http://svn.freebsd.org/changeset/base/216820

Log:
  - Add CPUTYPE support for sparc64. The net result is that it's now possible
    to let the compiler optimize for the famility of UltraSPARC-III CPUs as the
    default already was to optimize for UltraSPARC-I/II and generating generic
    64-bit V9 is mainly for reference purposes. At least for SPARC64-V CPUs
    code optimized for UltraSPARC-I/II still is the most performant one.
    Thanks go to Michael Moll for testing SPARC64-V.
  - Move a booke MACHINE_CPU bit into the right section.

Modified:
  head/share/examples/etc/make.conf
  head/share/mk/bsd.cpu.mk

Modified: head/share/examples/etc/make.conf
==============================================================================
--- head/share/examples/etc/make.conf	Thu Dec 30 15:04:59 2010	(r216819)
+++ head/share/examples/etc/make.conf	Thu Dec 30 15:58:23 2010	(r216820)
@@ -38,6 +38,8 @@
 #       (Via CPUs)	c3 c3-2
 #   AMD64 architecture: opteron, athlon64, nocona, prescott, core2
 #   Intel ia64 architecture: itanium2, itanium
+#   SPARC-V9 architecture:	v9 (generic 64-bit V9), ultrasparc (default
+#				if omitted), ultrasparc3
 #
 # (?= allows to buildworld for a different CPUTYPE.)
 #

Modified: head/share/mk/bsd.cpu.mk
==============================================================================
--- head/share/mk/bsd.cpu.mk	Thu Dec 30 15:04:59 2010	(r216819)
+++ head/share/mk/bsd.cpu.mk	Thu Dec 30 15:58:23 2010	(r216820)
@@ -15,6 +15,7 @@ MACHINE_CPU = itanium
 . elif ${MACHINE_CPUARCH} == "powerpc"
 MACHINE_CPU = aim
 . elif ${MACHINE_CPUARCH} == "sparc64"
+MACHINE_CPU = ultrasparc
 . elif ${MACHINE_CPUARCH} == "arm"
 MACHINE_CPU = arm
 . elif ${MACHINE_CPUARCH} == "mips"
@@ -58,6 +59,12 @@ CPUTYPE = athlon
 .  if ${CPUTYPE} == "prescott" || ${CPUTYPE} == "core2"
 CPUTYPE = nocona
 .  endif
+. elif ${MACHINE_ARCH} == "sparc64"
+.  if ${CPUTYPE} == "us"
+CPUTYPE = ultrasparc
+.  elif ${CPUTYPE} == "us3"
+CPUTYPE = ultrasparc3
+.  endif
 . endif
 
 ###############################################################################
@@ -116,7 +123,6 @@ _CPUCFLAGS = -mcpu=${CPUTYPE}
 .  endif
 . elif ${MACHINE_ARCH} == "powerpc"
 .  if ${CPUTYPE} == "e500"
-MACHINE_CPU = booke
 _CPUCFLAGS = -Wa,-me500 -msoft-float
 .  else
 _CPUCFLAGS = -mcpu=${CPUTYPE} -mno-powerpc64
@@ -137,6 +143,14 @@ _CPUCFLAGS = -march=4kc
 .  elif ${CPUTYPE} == "mips24kc"
 _CPUCFLAGS = -march=24kc
 .  endif
+. elif ${MACHINE_ARCH} == "sparc64"
+.  if ${CPUTYPE} == "v9"
+_CPUCFLAGS = -mcpu=v9
+.  elif ${CPUTYPE} == "ultrasparc"
+_CPUCFLAGS = -mcpu=ultrasparc
+.  elif ${CPUTYPE} == "ultrasparc3"
+_CPUCFLAGS = -mcpu=ultrasparc3
+.  endif
 . endif
 
 # Set up the list of CPU features based on the CPU type.  This is an
@@ -193,10 +207,22 @@ MACHINE_CPU += amd64 sse2 sse mmx
 .  if ${CPUTYPE} == "itanium"
 MACHINE_CPU = itanium
 .  endif
+. elif ${MACHINE_ARCH} == "powerpc"
+.  if ${CPUTYPE} == "e500"
+MACHINE_CPU = booke
+.  endif
+. elif ${MACHINE_ARCH} == "sparc64"
+.  if ${CPUTYPE} == "v9"
+MACHINE_CPU = v9
+.  elif ${CPUTYPE} == "ultrasparc"
+MACHINE_CPU = v9 ultrasparc
+.  elif ${CPUTYPE} == "ultrasparc3"
+MACHINE_CPU = v9 ultrasparc ultrasparc3
+.  endif
 . endif
 .endif
 
-.if ${MACHINE_CPUARCH} == "mips" 
+.if ${MACHINE_CPUARCH} == "mips"
 CFLAGS += -G0
 .endif
 


More information about the svn-src-all mailing list