ntl-11.5.1.

This commit is contained in:
Jerry James 2021-06-29 08:43:25 -06:00
parent f73e1ea266
commit 56316de2f2
3 changed files with 58 additions and 78 deletions

View File

@ -1,6 +1,6 @@
--- doc/config.txt.orig 2019-09-24 18:24:43.000000000 -0600
+++ doc/config.txt 2019-09-25 08:03:14.097990133 -0600
@@ -397,6 +397,7 @@ NTL_AVOID_BRANCHING=off
--- doc/config.txt.orig 2021-06-20 15:05:49.000000000 -0600
+++ doc/config.txt 2021-06-23 19:59:29.902142132 -0600
@@ -420,6 +420,7 @@ NTL_AVOID_BRANCHING=off
NTL_GF2X_NOINLINE=off
NTL_GF2X_ALTCODE=off
NTL_GF2X_ALTCODE1=off
@ -8,7 +8,7 @@
GMP_INCDIR=$(GMP_PREFIX)/include
GMP_LIBDIR=$(GMP_PREFIX)/lib
@@ -711,6 +712,10 @@ NTL_GF2X_ALTCODE1=off
@@ -734,6 +735,10 @@ NTL_GF2X_ALTCODE1=off
# Yet another alternative implementation for GF2X multiplication.
@ -19,10 +19,10 @@
########## More GMP Options:
--- include/NTL/config.h.orig 2019-09-24 18:24:43.000000000 -0600
+++ include/NTL/config.h 2019-09-25 08:03:14.124989623 -0600
@@ -513,6 +513,19 @@ to be defined. Of course, to unset a f
--- include/NTL/config.h.orig 2021-06-20 15:05:49.000000000 -0600
+++ include/NTL/config.h 2021-06-23 19:59:29.903142133 -0600
@@ -549,6 +549,19 @@ to be defined. Of course, to unset a f
#error "NTL_SAFE_VECTORS defined but not NTL_STD_CXX11 or NTL_STD_CXX14"
#endif
+#if 0
@ -40,9 +40,9 @@
+#endif
/* sanity checks */
--- include/NTL/ctools.h.orig 2019-09-24 18:24:42.000000000 -0600
+++ include/NTL/ctools.h 2019-09-25 08:03:14.141989302 -0600
--- include/NTL/ctools.h.orig 2021-06-20 15:05:49.000000000 -0600
+++ include/NTL/ctools.h 2021-06-23 19:59:29.904142134 -0600
@@ -518,6 +518,155 @@ char *_ntl_make_aligned(char *p, long al
// this should be big enough to satisfy any SIMD instructions,
// and it should also be as big as a cache line
@ -199,8 +199,8 @@
#ifdef NTL_HAVE_BUILTIN_CLZL
--- include/NTL/MatPrime.h.orig 2019-09-24 18:24:43.000000000 -0600
+++ include/NTL/MatPrime.h 2019-09-25 08:03:14.142989283 -0600
--- include/NTL/MatPrime.h.orig 2021-06-20 15:05:49.000000000 -0600
+++ include/NTL/MatPrime.h 2021-06-23 19:59:29.904142134 -0600
@@ -20,7 +20,7 @@ NTL_OPEN_NNS
@ -210,18 +210,18 @@
#define NTL_MatPrime_NBITS (23)
#else
#define NTL_MatPrime_NBITS NTL_SP_NBITS
--- include/NTL/REPORT_ALL_FEATURES.h.orig 2019-09-24 18:24:43.000000000 -0600
+++ include/NTL/REPORT_ALL_FEATURES.h 2019-09-25 08:03:14.142989283 -0600
@@ -55,3 +55,6 @@
std::cerr << "NTL_HAVE_POSIX_TIME\n";
--- include/NTL/REPORT_ALL_FEATURES.h.orig 2021-06-20 15:05:49.000000000 -0600
+++ include/NTL/REPORT_ALL_FEATURES.h 2021-06-23 19:59:29.905142135 -0600
@@ -63,3 +63,6 @@
std::cerr << "NTL_HAVE_KMA\n";
#endif
+#ifdef NTL_LOADTIME_CPU
+ std::cerr << "NTL_LOADTIME_CPU\n";
+#endif
--- src/cfile.orig 2019-09-24 18:24:42.000000000 -0600
+++ src/cfile 2019-09-25 08:03:14.142989283 -0600
@@ -513,6 +513,19 @@ to be defined. Of course, to unset a f
--- src/cfile.orig 2021-06-20 15:05:49.000000000 -0600
+++ src/cfile 2021-06-23 19:59:29.906142136 -0600
@@ -449,6 +449,19 @@ to be defined. Of course, to unset a f
#endif
@ -240,11 +240,11 @@
+#endif
/* sanity checks */
--- src/DispSettings.cpp.orig 2019-09-24 18:24:42.000000000 -0600
+++ src/DispSettings.cpp 2019-09-25 08:03:14.143989264 -0600
@@ -187,6 +187,9 @@ cout << "Performance Options:\n";
cout << "NTL_GF2X_NOINLINE\n";
#if @{NTL_CRT_ALTCODE}
--- src/DispSettings.cpp.orig 2021-06-20 15:05:49.000000000 -0600
+++ src/DispSettings.cpp 2021-06-23 19:59:29.906142136 -0600
@@ -192,6 +192,9 @@ cout << "Performance Options:\n";
cout << "NTL_RANDOM_AES256CTR\n";
#endif
+#ifdef NTL_LOADTIME_CPU
@ -253,8 +253,8 @@
cout << "***************************/\n";
cout << "\n\n";
--- src/DoConfig.orig 2019-09-24 18:24:42.000000000 -0600
+++ src/DoConfig 2019-09-25 08:03:14.143989264 -0600
--- src/DoConfig.orig 2021-06-20 15:05:49.000000000 -0600
+++ src/DoConfig 2021-06-23 19:59:29.907142137 -0600
@@ -1,6 +1,7 @@
# This is a perl script, invoked from a shell
@ -269,9 +269,9 @@
'NTL_GF2X_ALTCODE1' => 'off',
+'NTL_LOADTIME_CPU' => 'off',
'NTL_RANDOM_AES256CTR' => 'off',
);
@@ -175,6 +177,14 @@ if ($MakeVal{'CXXFLAGS'} =~ '-march=') {
@@ -176,6 +178,14 @@ if ($MakeVal{'CXXFLAGS'} =~ '-march=') {
$MakeFlag{'NATIVE'} = 'off';
}
@ -286,9 +286,9 @@
# some special MakeVal values that are determined by SHARED
--- src/GF2EX.cpp.orig 2019-09-24 18:24:42.000000000 -0600
+++ src/GF2EX.cpp 2019-09-25 08:03:14.144989246 -0600
@@ -771,7 +771,7 @@ void mul(GF2EX& c, const GF2EX& a, const
--- src/GF2EX.cpp.orig 2021-06-20 15:05:48.000000000 -0600
+++ src/GF2EX.cpp 2021-06-23 19:59:29.908142138 -0600
@@ -801,7 +801,7 @@ void mul(GF2EX& c, const GF2EX& a, const
if (GF2E::WordLength() <= 1) use_kron_mul = true;
@ -297,8 +297,8 @@
// With gf2x library and pclmul, KronMul is better in a larger range, but
// it is very hard to characterize that range. The following is very
// conservative.
--- src/GF2X1.cpp.orig 2019-09-24 18:24:42.000000000 -0600
+++ src/GF2X1.cpp 2019-09-25 08:03:14.145989227 -0600
--- src/GF2X1.cpp.orig 2021-06-20 15:05:48.000000000 -0600
+++ src/GF2X1.cpp 2021-06-23 19:59:29.910142141 -0600
@@ -18,7 +18,7 @@
// simple scaling factor for some crossover points:
// we use a lower crossover of the underlying multiplication
@ -308,8 +308,8 @@
#define XOVER_SCALE (1L)
#else
#define XOVER_SCALE (2L)
--- src/GF2X.cpp.orig 2019-09-24 18:24:42.000000000 -0600
+++ src/GF2X.cpp 2019-09-25 08:03:14.146989208 -0600
--- src/GF2X.cpp.orig 2021-06-20 15:05:48.000000000 -0600
+++ src/GF2X.cpp 2021-06-23 19:59:29.911142142 -0600
@@ -27,6 +27,22 @@ pclmul_mul1 (unsigned long *c, unsigned
_mm_storeu_si128((__m128i*)c, _mm_clmulepi64_si128(aa, bb, 0));
}
@ -652,9 +652,9 @@
void LeftShift(GF2X& c, const GF2X& a, long n)
--- src/InitSettings.cpp.orig 2019-09-24 18:24:42.000000000 -0600
+++ src/InitSettings.cpp 2019-09-25 08:03:14.147989189 -0600
@@ -184,6 +184,11 @@ int main()
--- src/InitSettings.cpp.orig 2021-06-20 15:05:49.000000000 -0600
+++ src/InitSettings.cpp 2021-06-23 19:59:29.912142143 -0600
@@ -190,6 +190,11 @@ int main()
cout << "NTL_RANGE_CHECK=0\n";
#endif
@ -666,8 +666,8 @@
// the following are not actual config flags, but help
--- src/mat_lzz_p.cpp.orig 2019-09-24 18:24:42.000000000 -0600
+++ src/mat_lzz_p.cpp 2019-09-25 08:03:14.149989151 -0600
--- src/mat_lzz_p.cpp.orig 2021-06-20 15:05:48.000000000 -0600
+++ src/mat_lzz_p.cpp 2021-06-23 19:59:29.915142146 -0600
@@ -9,6 +9,15 @@
#ifdef NTL_HAVE_AVX
@ -1740,9 +1740,9 @@
V <= (MAX_DBL_INT-(p-1))/(p-1) &&
V*(p-1) <= (MAX_DBL_INT-(p-1))/(p-1)) {
--- src/QuickTest.cpp.orig 2019-09-24 18:24:42.000000000 -0600
+++ src/QuickTest.cpp 2019-09-25 08:03:14.149989151 -0600
@@ -324,6 +324,9 @@ cerr << "Performance Options:\n";
--- src/QuickTest.cpp.orig 2021-06-20 15:05:49.000000000 -0600
+++ src/QuickTest.cpp 2021-06-23 19:59:29.916142147 -0600
@@ -326,6 +326,9 @@ cerr << "Performance Options:\n";
cerr << "NTL_GF2X_NOINLINE\n";
#endif
@ -1752,8 +1752,8 @@
cerr << "\n\n";
--- src/WizardAux.orig 2019-09-24 18:24:42.000000000 -0600
+++ src/WizardAux 2019-09-25 08:03:14.149989151 -0600
--- src/WizardAux.orig 2021-06-20 15:05:49.000000000 -0600
+++ src/WizardAux 2021-06-23 19:59:29.916142147 -0600
@@ -89,6 +89,7 @@ system("$ARGV[0] InitSettings");
'NTL_GF2X_NOINLINE' => 0,
'NTL_FFT_BIGTAB' => 0,
@ -1762,8 +1762,8 @@
'WIZARD_HACK' => '#define NTL_WIZARD_HACK',
--- src/ZZ.cpp.orig 2019-09-24 18:24:42.000000000 -0600
+++ src/ZZ.cpp 2019-09-25 08:03:14.150989132 -0600
--- src/ZZ.cpp.orig 2021-06-20 15:05:48.000000000 -0600
+++ src/ZZ.cpp 2021-06-23 19:59:29.918142149 -0600
@@ -14,6 +14,13 @@
#elif defined(NTL_HAVE_SSSE3)
#include <emmintrin.h>
@ -1777,8 +1777,8 @@
+static int have_ssse3 = -1;
#endif
@@ -2343,6 +2350,590 @@ struct RandomStream_impl {
#if defined(NTL_HAVE_KMA)
@@ -3268,6 +3275,590 @@ struct RandomStream_impl {
};

View File

@ -1,16 +1,8 @@
%global multilib_arches %{ix86} x86_64 ppc ppc64 s390 s390x sparcv9 sparc64
# define include static lib (else undef)
#define static 1
%if 0%{?fedora} || 0%{?rhel} >= 7
%global gf2x 1
%endif
Summary: High-performance algorithms for vectors, matrices, and polynomials
Name: ntl
Version: 11.4.4
Version: 11.5.1
Release: 1%{?dist}
License: LGPLv2+
@ -24,9 +16,7 @@ Source1: multilib_template.h
Patch0: %{name}-loadtime-cpu.patch
BuildRequires: gcc-c++
%if 0%{?gf2x}
BuildRequires: gf2x-devel
%endif
BuildRequires: gmp-devel
BuildRequires: libtool
BuildRequires: make
@ -56,19 +46,13 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
%{summary}.
%package static
Summary: Static libraries for %{name}
Requires: %{name}-devel%{?_isa} = %{version}-%{release}
#Requires: gmp-devel
%description static
%{summary}.
%prep
%autosetup -p0
%build
# TODO: Once we can assume z15, add TUNE=linux-s390x to the flags for s390x
pushd src
./configure \
CXX="${CXX-g++}" \
@ -80,7 +64,7 @@ pushd src
LIBDIR=%{_libdir} \
LDLIBS="-lpthread -lm" \
NATIVE=off \
%{?gf2x:NTL_GF2X_LIB=on} \
NTL_GF2X_LIB=on \
NTL_STD_CXX14=on \
%ifarch x86_64
NTL_LOADTIME_CPU=on \
@ -112,9 +96,7 @@ chmod 0755 %{buildroot}%{_libdir}/libntl.so.*
# Unpackaged files
rm -rfv %{buildroot}%{_docdir}/NTL
rm -fv %{buildroot}%{_libdir}/libntl.la
%if ! 0%{?static}
rm -fv %{buildroot}%{_libdir}/libntl.a
%endif
%ifarch %{multilib_arches}
# hack to allow parallel installation of multilib factory-devel
@ -133,20 +115,18 @@ done
%files
%doc README
%license doc/copying.txt
%{_libdir}/libntl.so.43*
%{_libdir}/libntl.so.44*
%files devel
%doc doc/*
%{_includedir}/NTL/
%{_libdir}/libntl.so
%if 0%{?static}
%files static
%{_libdir}/libntl.a
%endif
%changelog
* Tue Jun 29 2021 Jerry James <loganjerry@gmail.com> - 11.5.1-1
- ntl-11.5.1
* Fri Mar 5 2021 Jerry James <loganjerry@gmail.com> - 11.4.4-1
- ntl-11.4.4

View File

@ -1 +1 @@
SHA512 (ntl-11.4.4.tar.gz) = ed89d82008ca8785cb3d69de9577f42abe464dabf167ea2aaf801951843fc427d41171cbaac2f0cf68f35110d029cc28a65bd5aad69d30e7312f5ebcb0b58911
SHA512 (ntl-11.5.1.tar.gz) = cf1f642b8a0f9cdc6dda888e07183817dc67ff494e56a852053aeb15b3d2a0e61fbc05824779c5d1f20b8115fba6f97266acf7e0b0b527c25df5989c86d5928f