svn commit: r420940 - in head/java/openjdk8: . files

Jung-uk Kim jkim at FreeBSD.org
Fri Aug 26 18:29:47 UTC 2016


Author: jkim
Date: Fri Aug 26 18:29:46 2016
New Revision: 420940
URL: https://svnweb.freebsd.org/changeset/ports/420940

Log:
  Make the FPU hack for ARM optional.  Note this hack is not necessary for
  VFPv3 or later, i.e., only VFPv1 and VFPv2 require this hack.
  
  https://svnweb.freebsd.org/changeset/base/288983

Added:
  head/java/openjdk8/files/fpuhack.patch
     - copied, changed from r420939, head/java/openjdk8/files/armv6.patch
Deleted:
  head/java/openjdk8/files/armv6.patch
Modified:
  head/java/openjdk8/Makefile

Modified: head/java/openjdk8/Makefile
==============================================================================
--- head/java/openjdk8/Makefile	Fri Aug 26 18:14:36 2016	(r420939)
+++ head/java/openjdk8/Makefile	Fri Aug 26 18:29:46 2016	(r420940)
@@ -234,10 +234,14 @@ CONFIGURE_SCRIPT=	../../configure
 CONFIGURE_WRKSRC=	${WRKSRC}/common/autoconf
 
 OPTIONS_DEFINE=		POLICY TZUPDATE
+OPTIONS_DEFINE_armv6=	FPUHACK
 OPTIONS_DEFAULT=	POLICY TZUPDATE
+OPTIONS_DEFAULT_armv6=	FPUHACK
+FPUHACK_DESC=		Hack denormalized numbers in flush-to-zero mode
 POLICY_DESC=		Install the Unlimited Strength Policy Files
 TZUPDATE_DESC=		Update the time zone data
 
+FPUHACK_EXTRA_PATCHES=	${PATCHDIR}/fpuhack.patch
 POLICY_CONFIGURE_ENABLE=	unlimited-crypto
 TZUPDATE_RUN_DEPENDS=	java-zoneinfo>0:java/java-zoneinfo
 
@@ -293,16 +297,6 @@ CONFIGURE_ARGS+=	--with-boot-jdk-jvmargs
 MAKE_ENV+=	JAVADOC_CMD_MEM="-Xmx768m"
 .endif
 
-.if ${ARCH} == "armv6"
-# From NetBSD http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/lang/openjdk7/hacks.mk
-# Workaround incorrect constant folding of subnormals in javac when the FPU
-# does not handle subnormal arithmetic, like on ARM in Flush-to-zero mode.
-# These workarounds avoid underflow conditions during the bootstrap so the
-# JDK can correctly build itself. Compiling or running programs other than
-# openjdk itself on such hardware may still cause unexpected behaviour.
-EXTRA_PATCHES=	${PATCHDIR}/armv6.patch
-.endif
-
 .if ${ARCH} == "amd64" || ${ARCH} == "i386"
 JDK_BUILD_JVM=	server
 .else

Copied and modified: head/java/openjdk8/files/fpuhack.patch (from r420939, head/java/openjdk8/files/armv6.patch)
==============================================================================
--- head/java/openjdk8/files/armv6.patch	Fri Aug 26 18:14:36 2016	(r420939, copy source)
+++ head/java/openjdk8/files/fpuhack.patch	Fri Aug 26 18:29:46 2016	(r420940)
@@ -1,3 +1,10 @@
+From NetBSD http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/lang/openjdk7/hacks.mk
+Work around incorrect constant folding of subnormals in javac when the FPU
+does not handle subnormal arithmetic, like on ARM in flush-to-zero mode.
+These workarounds avoid underflow conditions during the bootstrap so the JDK
+can correctly build itself.  Compiling or running programs other than OpenJDK
+itself on such hardware may still cause unexpected behaviour.
+
 --- jdk/src/share/classes/java/lang/Double.java.orig	2014-03-04 02:57:59 UTC
 +++ jdk/src/share/classes/java/lang/Double.java
 @@ -86,7 +86,7 @@ public final class Double extends Number


More information about the svn-ports-head mailing list