[Gmp-commit] /var/hg/gmp: 4 new changesets

mercurial at gmplib.org mercurial at gmplib.org
Tue Apr 2 10:57:17 UTC 2019


details:   /var/hg/gmp/rev/e0990de56ac9
changeset: 17756:e0990de56ac9
user:      Torbjorn Granlund <tg at gmplib.org>
date:      Tue Apr 02 12:30:41 2019 +0200
description:
Recognise "Goldmont Plus".

* config.guess: Recognise "Goldmont Plus".

details:   /var/hg/gmp/rev/19892ac68d04
changeset: 17757:19892ac68d04
user:      Torbjorn Granlund <tg at gmplib.org>
date:      Tue Apr 02 12:37:03 2019 +0200
description:
Goldmont fixes.

* configure.ac: Setup distinct paths for silvermont and goldmont.
(fat_path): Add missing x86_64/goldmont.

details:   /var/hg/gmp/rev/5899eb6ed52b
changeset: 17758:5899eb6ed52b
user:      Torbjorn Granlund <tg at gmplib.org>
date:      Tue Apr 02 12:54:40 2019 +0200
description:
Improve fat recognition of silvermont and goldmont.

* mpn/x86_64/fat/fat.c (__gmpn_cpuvec_init):
Split out silvermont handling, add handling of goldmont.

details:   /var/hg/gmp/rev/4cc1b97583aa
changeset: 17759:4cc1b97583aa
user:      Torbjorn Granlund <tg at gmplib.org>
date:      Tue Apr 02 12:57:14 2019 +0200
description:
ChangeLog

diffstat:

 ChangeLog            |  15 +++++++++++++++
 config.guess         |   8 +++++---
 configure.ac         |  10 ++++++++--
 mpn/x86_64/fat/fat.c |  14 ++++++++++++--
 4 files changed, 40 insertions(+), 7 deletions(-)

diffs (112 lines):

diff -r 036ddbf61ac6 -r 4cc1b97583aa ChangeLog
--- a/ChangeLog	Sat Jan 05 15:43:42 2019 +0100
+++ b/ChangeLog	Tue Apr 02 12:57:14 2019 +0200
@@ -1,3 +1,18 @@
+2019-04-02  Torbjörn Granlund  <tg at gmplib.org>
+
+	* mpn/x86_64/fat/fat.c (__gmpn_cpuvec_init):
+	Split out silvermont handling, add handling of goldmont.
+
+	* configure.ac: Setup distinct paths for silvermont and goldmont.
+	(fat_path): Add missing x86_64/goldmont.
+
+	* config.guess: Recognise "Goldmont Plus".
+
+2018-12-09  Torbjörn Granlund  <tg at gmplib.org>
+
+	* mpn/generic/mul_fft.c (mpn_fft_add_sub_modF): New function.
+	(mpn_fft_fft, mpn_fft_fftinv): Use it.
+
 2018-11-30  Torbjörn Granlund  <tg at gmplib.org>
 
 	* mpn/powerpc64/mode64/p9/gmp-mparam.h: New file.
diff -r 036ddbf61ac6 -r 4cc1b97583aa config.guess
--- a/config.guess	Sat Jan 05 15:43:42 2019 +0100
+++ b/config.guess	Tue Apr 02 12:57:14 2019 +0200
@@ -3,7 +3,8 @@
 # GMP config.guess wrapper.
 
 
-# Copyright 2000-2006, 2008, 2011-2016, 2018 Free Software Foundation, Inc.
+# Copyright 2000-2006, 2008, 2011-2016, 2018, 2019 Free Software Foundation,
+# Inc.
 #
 #  This file is part of the GNU MP Library.
 #
@@ -897,6 +898,7 @@
           else if (model == 0x5c) cpu_64bit = 1,            modelstr = "goldmont";   /* Goldmont */
           else if (model == 0x5e) cpu_64bit = 1, cpu_avx=1, modelstr = "skylake";    /* Skylake */
           else if (model == 0x5f) cpu_64bit = 1,            modelstr = "goldmont";   /* Goldmont */
+          else if (model == 0x7a) cpu_64bit = 1,            modelstr = "goldmont";   /* Goldmont Plus */
           else if (model == 0x8e) cpu_64bit = 1, cpu_avx=1, modelstr = "kabylake";   /* Kabylake Y/U */
           else if (model == 0x9e) cpu_64bit = 1, cpu_avx=1, modelstr = "kabylake";   /* Kabylake desktop */
           else                    cpu_64bit = 1,            modelstr = "nehalem";    /* default */
@@ -1001,8 +1003,8 @@
   else if (cpu_avx && ! (cpuid_avx && cpuid_osxsave))
     /* For CPUs nominally capable of executing AVX, append "noavx" when not
        both the AVX and OSXSAVE cpuid bits are set.  We tolerate weirdness
-       here, as some virtualisers set a broken cpuid state here, while other
-       virtualisers allow users to set a broken state.  */
+       here, as some virtualisers set a broken cpuid state, while other
+       virtualisers allow guests to set a broken state.  */
     suffix = "noavx";
 
   printf ("%s%s", modelstr, suffix);
diff -r 036ddbf61ac6 -r 4cc1b97583aa configure.ac
--- a/configure.ac	Sat Jan 05 15:43:42 2019 +0100
+++ b/configure.ac	Tue Apr 02 12:57:14 2019 +0200
@@ -1896,7 +1896,13 @@
 	path="x86/atom/sse2 x86/atom/mmx x86/atom x86/mmx x86"
 	path_64="x86_64/atom x86_64"
 	;;
-      silvermont | goldmont)	# out-of-order pipeline atom
+      silvermont)		# out-of-order pipeline atom
+	gcc_cflags_cpu="-mtune=slm -mtune=atom -mtune=pentium3"
+	gcc_cflags_arch="-march=slm -march=atom -march=pentium3"
+	path="x86/atom/sse2 x86/atom/mmx x86/atom x86/mmx x86"
+	path_64="x86_64/silvermont x86_64/atom x86_64"
+	;;
+      goldmont)			# out-of-order pipeline atom
 	gcc_cflags_cpu="-mtune=slm -mtune=atom -mtune=pentium3"
 	gcc_cflags_arch="-march=slm -march=atom -march=pentium3"
 	path="x86/atom/sse2 x86/atom/mmx x86/atom x86/mmx x86"
@@ -2252,7 +2258,7 @@
 		  x86_64/k8 x86_64/k10 x86_64/bd1 x86_64/bt1 x86_64/bt2 x86_64/zen
 		  x86_64/pentium4 x86_64/core2 x86_64/coreinhm x86_64/coreisbr
 		  x86_64/coreihwl x86_64/coreibwl x86_64/skylake x86_64/atom
-		  x86_64/silvermont x86_64/nano"
+		  x86_64/silvermont x86_64/goldmont x86_64/nano"
 	fat_functions="$fat_functions addmul_2 addlsh1_n addlsh2_n sublsh1_n"
       fi
 
diff -r 036ddbf61ac6 -r 4cc1b97583aa mpn/x86_64/fat/fat.c
--- a/mpn/x86_64/fat/fat.c	Sat Jan 05 15:43:42 2019 +0100
+++ b/mpn/x86_64/fat/fat.c	Tue Apr 02 12:57:14 2019 +0200
@@ -325,15 +325,25 @@
 	    case 0x2c:		/* WSM Gulftown */
 	    case 0x2e:		/* NHM Beckton */
 	    case 0x2f:		/* WSM Eagleton */
+	      CPUVEC_SETUP_core2;
+	      CPUVEC_SETUP_coreinhm;
+	      break;
+
 	    case 0x37:		/* Silvermont */
 	    case 0x4a:		/* Silvermont */
 	    case 0x4c:		/* Airmont */
 	    case 0x4d:		/* Silvermont/Avoton */
 	    case 0x5a:		/* Silvermont */
+	      CPUVEC_SETUP_atom;
+	      CPUVEC_SETUP_silvermont;
+	      break;
+
 	    case 0x5c:		/* Goldmont */
 	    case 0x5f:		/* Goldmont */
-	      CPUVEC_SETUP_core2;
-	      CPUVEC_SETUP_coreinhm;
+	    case 0x7a:		/* Goldmont Plus */
+	      CPUVEC_SETUP_atom;
+	      CPUVEC_SETUP_silvermont;
+	      CPUVEC_SETUP_goldmont;
 	      break;
 
 	    case 0x2a:		/* SB */


More information about the gmp-commit mailing list