svn commit: r569385 - head/math/R/files

Piotr Kubaj pkubaj at FreeBSD.org
Sun Mar 28 11:59:03 UTC 2021


Author: pkubaj
Date: Sun Mar 28 11:59:03 2021
New Revision: 569385
URL: https://svnweb.freebsd.org/changeset/ports/569385

Log:
  math/R: remove obsolete fpsetmask
  
  src/unix/sys-unix.c uses fpsetmask to workaround a bug that is not present since FreeBSD 4.0.
  
  This issue also affected Firefox and was resolved 9 years ago https://bugzilla.mozilla.org/show_bug.cgi?id=789436#c27
  
  fpsetmask executions cause R build to crash on powerpc64(le), since new SIGFPE kernel code doesn't take into account old workarounds.
  
  PR:		254621
  Approved by:	jrm (maintainer)

Added:
  head/math/R/files/patch-src_unix_sys-unix.c   (contents, props changed)

Added: head/math/R/files/patch-src_unix_sys-unix.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/R/files/patch-src_unix_sys-unix.c	Sun Mar 28 11:59:03 2021	(r569385)
@@ -0,0 +1,34 @@
+--- src/unix/sys-unix.c.orig	2021-03-28 00:59:38 UTC
++++ src/unix/sys-unix.c
+@@ -909,12 +909,6 @@ void R_ProcessEvents(void)
+  *  helpers for start-up code
+  */
+ 
+-#ifdef __FreeBSD__
+-# ifdef HAVE_FLOATINGPOINT_H
+-#  include <floatingpoint.h>
+-# endif
+-#endif
+-
+ /* patch from Ei-ji Nakama for Intel compilers on ix86.
+    From http://www.nakama.ne.jp/memo/ia32_linux/R-2.1.1.iccftzdaz.patch.txt.
+    Since updated to include x86_64.
+@@ -928,9 +922,6 @@ void R_ProcessEvents(void)
+ void fpu_setup(Rboolean start)
+ {
+     if (start) {
+-#ifdef __FreeBSD__
+-    fpsetmask(0);
+-#endif
+ 
+ #if (defined(__i386) || defined(__x86_64)) && defined(__INTEL_COMPILER) && __INTEL_COMPILER > 800
+     _MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_OFF);
+@@ -953,8 +944,5 @@ void fpu_setup(Rboolean start)
+     asm volatile("msr fpcr, %0" : : "r"(fpcr));
+ #endif
+     } else {
+-#ifdef __FreeBSD__
+-    fpsetmask(~0);
+-#endif
+     }
+ }


More information about the svn-ports-head mailing list