amd64/113111: Potentially wrong instructions will be produced for
EM64T
NIIMI Satoshi
sa2c at sa2c.net
Tue May 29 06:00:13 UTC 2007
>Number: 113111
>Category: amd64
>Synopsis: Potentially wrong instructions will be produced for EM64T
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-amd64
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Tue May 29 06:00:12 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: NIIMI Satoshi
>Release: FreeBSD 7.0-CURRENT amd64
>Organization:
>Environment:
System: FreeBSD freebsd7-64 7.0-CURRENT FreeBSD 7.0-CURRENT #1: Tue May 29 13:46:35 JST 2007 root at freebsd7-64:/usr/obj/usr/src/sys/VMWARE amd64
>Description:
The CFLAG -march=k8 during build of lib32 may produce 3dNOW! or
enhanced 3dNOW! instrictions, which are not available on Intel's EM64T
Processors.
>How-To-Repeat:
>Fix:
--- k8.diff begins here ---
Index: Makefile.inc1
===================================================================
RCS file: /home/ncvs/src/Makefile.inc1,v
retrieving revision 1.582
diff -u -r1.582 Makefile.inc1
--- Makefile.inc1 26 May 2007 20:17:19 -0000 1.582
+++ Makefile.inc1 29 May 2007 04:59:34 -0000
@@ -234,11 +234,11 @@
LIB32TMP= ${OBJTREE}${.CURDIR}/lib32
.if empty(TARGET_CPUTYPE)
-LIB32CPUTYPE= k8
+LIB32CPUFLAGS= -march=i686 -mmmx -msse -msse2
.else
-LIB32CPUTYPE= ${TARGET_CPUTYPE}
+LIB32CPUFLAGS= -march=${TARGET_CPUTYPE}
.endif
-LIB32FLAGS= -m32 -march=${LIB32CPUTYPE} -mfancy-math-387 -DCOMPAT_32BIT \
+LIB32FLAGS= -m32 ${LIB32CPUFLAGS} -mfancy-math-387 -DCOMPAT_32BIT \
-iprefix ${LIB32TMP}/usr/ \
-L${LIB32TMP}/usr/lib32 \
-B${LIB32TMP}/usr/lib32
--- k8.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-amd64
mailing list