diff -Nru gmp-ecm-7.0.3+ds/acinclude.m4 gmp-ecm-7.0.4+ds/acinclude.m4 --- gmp-ecm-7.0.3+ds/acinclude.m4 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/acinclude.m4 2016-08-23 12:25:18.000000000 +0000 @@ -605,4 +605,31 @@ ]) - +dnl Checks whether the stack can be marked nonexecutable by passing an option +dnl to the C-compiler when acting on .s files. Appends that option to ASMFLAGS. +dnl This macro is adapted from one found in GMP 6.1.1. +dnl FIXME: This test looks broken. It tests that a file with .note.GNU-stack... +dnl can be compiled/assembled with -Wa,--noexecstack. It does not determine +dnl if that command-line option has any effect on general asm code. +AC_DEFUN([CL_AS_NOEXECSTACK],[ +dnl AC_REQUIRE([AC_PROG_CC]) GMP uses something else +AC_CACHE_CHECK([whether assembler supports --noexecstack option], +cl_cv_as_noexecstack, [dnl + cat > conftest.c </dev/null]) \ + && grep .note.GNU-stack conftest.s >/dev/null \ + && AC_TRY_COMMAND([${CC} $CFLAGS $CPPFLAGS -Wa,--noexecstack + -c -o conftest.o conftest.s >/dev/null]) + then + cl_cv_as_noexecstack=yes + else + cl_cv_as_noexecstack=no + fi + rm -f conftest*]) + if test "$cl_cv_as_noexecstack" = yes; then + LIBECM_LDFLAGS="$LIBECM_LDFLAGS -Wl,-znoexecstack" + fi +]) diff -Nru gmp-ecm-7.0.3+ds/build.vc12/gen_ecm_h.bat gmp-ecm-7.0.4+ds/build.vc12/gen_ecm_h.bat --- gmp-ecm-7.0.3+ds/build.vc12/gen_ecm_h.bat 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/build.vc12/gen_ecm_h.bat 2016-10-11 09:22:42.000000000 +0000 @@ -5,7 +5,7 @@ for /f "tokens=1,2*" %%a in (..\ecm.h.in) do ( if "%%a" EQU "#undef" ( if "%%b" EQU "ECM_VERSION" ( - echo #define ECM_VERSION "7.0.3">>tmp.h + echo #define ECM_VERSION "7.0.4">>tmp.h ) ) else echo %%a %%b %%c>>tmp.h ) diff -Nru gmp-ecm-7.0.3+ds/build.vc12/tests.py gmp-ecm-7.0.4+ds/build.vc12/tests.py --- gmp-ecm-7.0.3+ds/build.vc12/tests.py 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/build.vc12/tests.py 2016-10-11 09:14:19.000000000 +0000 @@ -7,7 +7,12 @@ from re import match from subprocess import Popen, PIPE, STDOUT from tempfile import * -from time import clock + +try: + from time import perf_counter as timer +except ImportError: + from time import clock as timer + x64 = True debug = False @@ -16,8 +21,8 @@ run_gpu_tests = True class Timer() : - def __enter__(self): self.start = clock() - def __exit__(self, *args): print(' time {:.3f} milliseconds'.format(1000 * (clock() - self.start))) + def __enter__(self): self.start = timer() + def __exit__(self, *args): print(' time {:.3f} milliseconds'.format(1000 * (timer() - self.start))) cpath = os.path.dirname(__file__) config = 'x64' if x64 else 'Win32' @@ -46,8 +51,8 @@ elif start: sp = line.split('="') if len(sp) == 2: - if sp[1].startswith('$1'): - sub[sp[0]] = sp[1][2:-1] + if sp[1].startswith('${1:-./ecm}'): + sub[sp[0]] = sp[1][12:-1] else: sub[sp[0]] = sp[1][:-1] continue @@ -122,9 +127,9 @@ output_complex_tests(ctests) if not err_cnt: if ctests: - print(' all other tests passed') + print('all other tests passed') else: - print(' all tests passed') + print('all tests passed') with Timer(): if os.path.exists('test.pm1.save'): diff -Nru gmp-ecm-7.0.3+ds/champions.h gmp-ecm-7.0.4+ds/champions.h --- gmp-ecm-7.0.3+ds/champions.h 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/champions.h 2016-10-11 09:26:27.000000000 +0000 @@ -11,4 +11,4 @@ "http://www.loria.fr/~zimmerma/records/Pminus1.html", "http://www.loria.fr/~zimmerma/records/Pplus1.html"}; /* minimal number of digits to enter the champions table for ECM, P-1, P+1 */ -static unsigned int champion_digits[3] = { 72, 54, 48 }; +static unsigned int champion_digits[3] = { 73, 54, 48 }; diff -Nru gmp-ecm-7.0.3+ds/ChangeLog gmp-ecm-7.0.4+ds/ChangeLog --- gmp-ecm-7.0.3+ds/ChangeLog 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/ChangeLog 2016-10-11 09:25:46.000000000 +0000 @@ -1,4 +1,266 @@ ------------------------------------------------------------------------ +r2990 | brian_gladman | 2016-09-29 13:13:04 +0200 (Thu, 29 Sep 2016) | 1 line +Changed paths: + M /trunk/build.vc14/ecm_gpu/ecm_gpu.vcxproj + M /trunk/build.vc14/libecm_gpu/libecm_gpu.vcxproj + M /trunk/build.vc14/readme.txt + +Update default CUDA compute capabilities and the readme.txt file +------------------------------------------------------------------------ +r2989 | brian_gladman | 2016-09-29 12:52:25 +0200 (Thu, 29 Sep 2016) | 1 line +Changed paths: + M /trunk/build.vc12/tests.py + A /trunk/build.vc14 + A /trunk/build.vc14/Makefile.am + A /trunk/build.vc14/assembler + A /trunk/build.vc14/assembler/Makefile.am + A /trunk/build.vc14/assembler/a_win32a_redc.asm + A /trunk/build.vc14/assembler/a_win32p_mulredc.asm + A /trunk/build.vc14/assembler/a_win32p_redc.asm + A /trunk/build.vc14/assembler/a_x64_mulredc.asm + A /trunk/build.vc14/assembler/a_x64_redc.asm + A /trunk/build.vc14/assembler/mulredc.asm + A /trunk/build.vc14/assembler/mulredc.h + A /trunk/build.vc14/assembler/redc.asm + A /trunk/build.vc14/assembler/test_mulredc.c + A /trunk/build.vc14/bench_mulredc + A /trunk/build.vc14/bench_mulredc/Makefile.am + A /trunk/build.vc14/bench_mulredc/bench_mulredc.vcxproj + A /trunk/build.vc14/bench_mulredc/bench_mulredc.vcxproj.filters + A /trunk/build.vc14/config.h + A /trunk/build.vc14/ecm + A /trunk/build.vc14/ecm/Makefile.am + A /trunk/build.vc14/ecm/ecm.vcxproj + A /trunk/build.vc14/ecm/ecm.vcxproj.filters + A /trunk/build.vc14/ecm.sln + A /trunk/build.vc14/ecm_gpu + A /trunk/build.vc14/ecm_gpu/Makefile.am + A /trunk/build.vc14/ecm_gpu/ecm.vcxproj.filters + A /trunk/build.vc14/ecm_gpu/ecm_gpu.vcxproj + A /trunk/build.vc14/ecm_gpu/ecm_gpu.vcxproj.filters + A /trunk/build.vc14/ecm_gpu.sln + A /trunk/build.vc14/file_copy.bat + A /trunk/build.vc14/gen_ecm_h.bat + A /trunk/build.vc14/getopt.c + A /trunk/build.vc14/getopt.h + A /trunk/build.vc14/getrusage.c + A /trunk/build.vc14/getrusage.h + A /trunk/build.vc14/gettimeofday.c + A /trunk/build.vc14/gettimeofday.h + A /trunk/build.vc14/libecm + A /trunk/build.vc14/libecm/Makefile.am + A /trunk/build.vc14/libecm/libecm.vcxproj + A /trunk/build.vc14/libecm/libecm.vcxproj.filters + A /trunk/build.vc14/libecm_gpu + A /trunk/build.vc14/libecm_gpu/Makefile.am + A /trunk/build.vc14/libecm_gpu/libecm_gpu.vcxproj + A /trunk/build.vc14/libecm_gpu/libecm_gpu.vcxproj.filters + A /trunk/build.vc14/mp_lib.props + A /trunk/build.vc14/multiecm + A /trunk/build.vc14/multiecm/Makefile.am + A /trunk/build.vc14/multiecm/multiecm.vcxproj + A /trunk/build.vc14/multiecm/multiecm.vcxproj.filters + A /trunk/build.vc14/out_copy_rename.bat + A /trunk/build.vc14/prebuild.bat + A /trunk/build.vc14/python.bat + A /trunk/build.vc14/readme.txt + A /trunk/build.vc14/tests.py + A /trunk/build.vc14/tune + A /trunk/build.vc14/tune/Makefile.am + A /trunk/build.vc14/tune/tune.vcxproj + A /trunk/build.vc14/tune/tune.vcxproj.filters + A /trunk/build.vc14/vacopy.c + A /trunk/build.vc14/vsyasm.props + A /trunk/build.vc14/vsyasm.targets + A /trunk/build.vc14/vsyasm.xml + +Add build files for Visual Studio 2015 +------------------------------------------------------------------------ +r2988 | zimmerma | 2016-09-06 09:41:17 +0200 (Tue, 06 Sep 2016) | 2 lines +Changed paths: + M /trunk/mpmod.c + +[mpmod.c] define mpres_equal when HAVE_ADDLAWS=1 + +------------------------------------------------------------------------ +r2987 | zimmerma | 2016-08-30 15:46:13 +0200 (Tue, 30 Aug 2016) | 2 lines +Changed paths: + M /trunk/ecm-gmp.h + +[ecm-gmp.h] fixed typo + +------------------------------------------------------------------------ +r2986 | zimmerma | 2016-08-29 08:28:41 +0200 (Mon, 29 Aug 2016) | 2 lines +Changed paths: + M /trunk/test.pm1 + M /trunk/test.pp1 + +added more test cases + +------------------------------------------------------------------------ +r2985 | zimmerma | 2016-08-26 15:17:56 +0200 (Fri, 26 Aug 2016) | 2 lines +Changed paths: + M /trunk/NEWS + +[NEWS] updated + +------------------------------------------------------------------------ +r2984 | zimmerma | 2016-08-26 15:03:39 +0200 (Fri, 26 Aug 2016) | 3 lines +Changed paths: + M /trunk/mpmod.c + M /trunk/pm1fs2.c + M /trunk/test.pm1 + M /trunk/test.pp1 + +fixed Segmentation fault with -pm1 and -pp1 (presumably only happens +with small parameters) + +------------------------------------------------------------------------ +r2983 | zimmerma | 2016-08-26 13:15:40 +0200 (Fri, 26 Aug 2016) | 2 lines +Changed paths: + M /trunk/test.pm1 + +[test.pm1] added more test cases + +------------------------------------------------------------------------ +r2982 | zimmerma | 2016-08-26 09:18:26 +0200 (Fri, 26 Aug 2016) | 2 lines +Changed paths: + M /trunk/configure.ac + +patch from François Bissey to address issue on Mac OS X + +------------------------------------------------------------------------ +r2981 | zimmerma | 2016-08-25 15:44:58 +0200 (Thu, 25 Aug 2016) | 2 lines +Changed paths: + M /trunk/x86_64/mulredc.m4 + M /trunk/x86_64/mulredc1.asm + M /trunk/x86_64/mulredc1.m4 + +removed (non-portable) WANT_ASSERT stuff in assembly files + +------------------------------------------------------------------------ +r2980 | zimmerma | 2016-08-25 13:58:10 +0200 (Thu, 25 Aug 2016) | 2 lines +Changed paths: + M /trunk/NEWS + +updated NEWS + +------------------------------------------------------------------------ +r2979 | zimmerma | 2016-08-25 13:56:54 +0200 (Thu, 25 Aug 2016) | 3 lines +Changed paths: + M /trunk/mpmod.c + +[mpmod.c] fixed mpres_pow() for negative EXP +(https://gforge.inria.fr/tracker/?func=detail&atid=623&aid=20712&group_id=135) + +------------------------------------------------------------------------ +r2978 | zimmerma | 2016-08-23 14:30:23 +0200 (Tue, 23 Aug 2016) | 2 lines +Changed paths: + M /trunk/Makefile.am + M /trunk/acinclude.m4 + M /trunk/configure.ac + +added configure test to check whether ld accepts -znoexecstack + +------------------------------------------------------------------------ +r2977 | zimmerma | 2016-08-23 11:22:28 +0200 (Tue, 23 Aug 2016) | 2 lines +Changed paths: + M /trunk/README.gpu + +[README.gpu] changed Cyril's email (preferred one) + +------------------------------------------------------------------------ +r2976 | zimmerma | 2016-08-23 08:51:49 +0200 (Tue, 23 Aug 2016) | 7 lines +Changed paths: + M /trunk/configure.ac + +[configure.ac] applied patch from Erik Bray to set the WINDOWS64 flag under +Cygwin. + +cf https://gforge.inria.fr/tracker/?func=detail&atid=623&aid=20697&group_id=135 +and https://trac.sagemath.org/ticket/21223 + + +------------------------------------------------------------------------ +r2975 | zimmerma | 2016-08-22 13:45:25 +0200 (Mon, 22 Aug 2016) | 2 lines +Changed paths: + M /trunk/Makefile.am + +fixed make longcheck with out-of-source build + +------------------------------------------------------------------------ +r2974 | zimmerma | 2016-08-22 13:32:04 +0200 (Mon, 22 Aug 2016) | 2 lines +Changed paths: + M /trunk/x86_64/mulredc.m4 + +[x86_64/mulredc.m4] Opteron -> x86_64 + +------------------------------------------------------------------------ +r2971 | zimmerma | 2016-08-22 13:11:21 +0200 (Mon, 22 Aug 2016) | 2 lines +Changed paths: + M /trunk/ks-multiply.c + +[ks-multiply.c] fix when FFT_WRAP is not defined + +------------------------------------------------------------------------ +r2970 | zimmerma | 2016-08-22 09:49:08 +0200 (Mon, 22 Aug 2016) | 2 lines +Changed paths: + M /trunk/README.gpu + +[README.gpu] updated Cyril's email + +------------------------------------------------------------------------ +r2969 | zimmerma | 2016-08-22 09:23:55 +0200 (Mon, 22 Aug 2016) | 3 lines +Changed paths: + M /trunk/README.gpu + +[README.gpu] added hint about Cuda error "too many resources requested for launch" +(see https://lists.gforge.inria.fr/pipermail/ecm-discuss/2016-July/004368.html) + +------------------------------------------------------------------------ +r2968 | dcleaver | 2016-07-31 20:12:55 +0200 (Sun, 31 Jul 2016) | 1 line +Changed paths: + M /trunk/addlaws.c + M /trunk/listz_handle.c + M /trunk/main.c + M /trunk/test.ecm + M /trunk/tune.c + +Fix zu printf problems on Windows by replacing zu with PRIu64. This also fixed a crash that could occur on Windows when using both -v and -bloads. Include test to check for that. +------------------------------------------------------------------------ +r2967 | zimmerma | 2016-07-25 16:12:17 +0200 (Mon, 25 Jul 2016) | 3 lines +Changed paths: + M /trunk/test.gpuecm + +increased initial sigma so that test works with ECM_GPU_CURVES_BY_BLOCK=16 +(see https://lists.gforge.inria.fr/pipermail/ecm-discuss/2016-July/004368.html) + +------------------------------------------------------------------------ +r2966 | dcleaver | 2016-07-24 16:06:00 +0200 (Sun, 24 Jul 2016) | 1 line +Changed paths: + M /trunk/cudawrapper.c + M /trunk/ecm.c + +Correct two verbose print problems on Windows. 1 remove extra 0 in expected curves output 2 fix zu format modifier in computing batch product output. +------------------------------------------------------------------------ +r2965 | zimmerma | 2016-07-04 10:15:30 +0200 (Mon, 04 Jul 2016) | 2 lines +Changed paths: + M /trunk/build.vc12/gen_ecm_h.bat + M /trunk/configure.ac + +increased version number + +------------------------------------------------------------------------ +r2964 | zimmerma | 2016-07-04 10:13:28 +0200 (Mon, 04 Jul 2016) | 2 lines +Changed paths: + M /trunk/ChangeLog + M /trunk/README.dev + M /trunk/build.vc12/gen_ecm_h.bat + M /trunk/configure.ac + +this is release 7.0.3 + +------------------------------------------------------------------------ r2963 | zimmerma | 2016-06-29 15:55:37 +0200 (Wed, 29 Jun 2016) | 2 lines Changed paths: M /trunk/NEWS diff -Nru gmp-ecm-7.0.3+ds/configure.ac gmp-ecm-7.0.4+ds/configure.ac --- gmp-ecm-7.0.3+ds/configure.ac 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/configure.ac 2016-10-11 09:23:36.000000000 +0000 @@ -1,4 +1,4 @@ -m4_define([ECM_VERSION_AC], [7.0.3]) +m4_define([ECM_VERSION_AC], [7.0.4]) AC_PREREQ([2.57]) AC_INIT([ecm], ECM_VERSION_AC, [ecm-discuss@lists.gforge.inria.fr]) @@ -272,7 +272,7 @@ GMP_ASM_TYPE case $host in - *-*-mingw32) GMP_DEFINE([WINDOWS64_ABI], 1) + *-*-mingw32|*cygwin*) GMP_DEFINE([WINDOWS64_ABI], 1) AC_DEFINE([WINDOWS64_ABI], 1,[Define to 1 if x86_64 mulredc*() functions should be called with Windows ABI]);; *) ;; esac @@ -481,13 +481,18 @@ GMPLDFLAGS="-L$with_gmp_lib" fi GMPLIB="-lgmp" -if test "x$enable_shared" != xyes; then - if test -r "$with_gmp_lib/libgmp.a"; then - GMPLIB="$with_gmp_lib/libgmp.a" - dnl Don't need -L flag since we give full path to libgmp.a - GMPLDFLAGS="" - fi -fi +dnl On OS X we should not give libgmp.a +dnl (see https://trac.sagemath.org/ticket/20385#comment:103) +case $host_os in + darwin*) ;; + *) if test "x$enable_shared" != xyes; then + if test -r "$with_gmp_lib/libgmp.a"; then + GMPLIB="$with_gmp_lib/libgmp.a" + dnl Don't need -L flag since we give full path to libgmp.a + GMPLDFLAGS="" + fi + fi +esac AC_SUBST([GMPLIB]) LDFLAGS="$LDFLAGS $GMPLDFLAGS" @@ -585,6 +590,7 @@ fi ;; esac +CL_AS_NOEXECSTACK AC_SUBST([LIBECM_LDFLAGS]) diff -Nru gmp-ecm-7.0.3+ds/cudawrapper.c gmp-ecm-7.0.4+ds/cudawrapper.c --- gmp-ecm-7.0.3+ds/cudawrapper.c 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/cudawrapper.c 2016-07-25 11:06:54.000000000 +0000 @@ -333,8 +333,8 @@ st = cputime (); /* construct the batch exponent */ compute_s (batch_s, B1, NULL); - outputf (OUTPUT_VERBOSE, "Computing batch product (of %zu bits) of " - "primes up to B1=%1.0f took %ldms\n", + outputf (OUTPUT_VERBOSE, "Computing batch product (of %" PRIu64 + " bits) of primes up to B1=%1.0f took %ldms\n", mpz_sizeinbase (batch_s, 2), B1, cputime () - st); } diff -Nru gmp-ecm-7.0.3+ds/debian/changelog gmp-ecm-7.0.4+ds/debian/changelog --- gmp-ecm-7.0.3+ds/debian/changelog 2016-07-04 14:13:01.000000000 +0000 +++ gmp-ecm-7.0.4+ds/debian/changelog 2016-10-14 00:25:48.000000000 +0000 @@ -1,3 +1,9 @@ +gmp-ecm (7.0.4+ds-1) unstable; urgency=medium + + * New upstream patch release. + + -- Jerome Benoit Fri, 14 Oct 2016 00:25:48 +0000 + gmp-ecm (7.0.3+ds-1) unstable; urgency=medium * New upstream patch release. diff -Nru gmp-ecm-7.0.3+ds/ecm.c gmp-ecm-7.0.4+ds/ecm.c --- gmp-ecm-7.0.3+ds/ecm.c 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/ecm.c 2016-07-25 11:06:54.000000000 +0000 @@ -1,7 +1,7 @@ /* Elliptic Curve Method: toplevel and stage 1 routines. Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, -2012 Paul Zimmermann, Alexander Kruppa, Cyril Bouvier, David Cleaver. +2012, 2016 Paul Zimmermann, Alexander Kruppa, Cyril Bouvier, David Cleaver. This file is part of the ECM Library. @@ -849,7 +849,7 @@ { double prob; int i, j; - char sep, outs[128]; + char sep, outs[128], flt[16]; double smoothness_correction; if (param == ECM_PARAM_SUYAMA || param == ECM_PARAM_BATCH_2) @@ -861,8 +861,8 @@ else /* This case should never happen */ smoothness_correction = 0.0; - for (i = DIGITS_START, j = 0; i <= DIGITS_END; i += DIGITS_INCR, j += 3) - sprintf (outs + j, "%2u%c", i, (i < DIGITS_END) ? '\t' : '\n'); + for (i = DIGITS_START, j = 0; i <= DIGITS_END; i += DIGITS_INCR) + j += sprintf (outs + j, "%u%c", i, (i < DIGITS_END) ? '\t' : '\n'); outs[j] = '\0'; outputf (OUTPUT_VERBOSE, "Expected number of curves to find a factor " "of n digits:\n%s", outs); @@ -876,7 +876,14 @@ if (prob > 1. / 10000000) outputf (OUTPUT_VERBOSE, "%.0f%c", floor (1. / prob + .5), sep); else if (prob > 0.) - outputf (OUTPUT_VERBOSE, "%.2g%c", floor (1. / prob + .5), sep); + { + /* on Windows: 2.6e+009 or 2.6e+025 (8 characters in string) */ + /* on Linux : 2.6e+09 or 2.6e+25 (7 characters in string) */ + /* This will normalize the output so that the Windows ouptut will match the Linux output */ + if (sprintf (flt, "%.2g", floor (1. / prob + .5)) == 8) + memmove (&flt[5], &flt[6], strlen(flt) - 5); + outputf (OUTPUT_VERBOSE, "%s%c", flt, sep); + } else outputf (OUTPUT_VERBOSE, "Inf%c", sep); } @@ -900,8 +907,8 @@ else /* This case should never happen */ smoothness_correction = 0.0; - for (i = DIGITS_START, j = 0; i <= DIGITS_END; i += DIGITS_INCR, j += 3) - sprintf (outs + j, "%2u%c", i, (i < DIGITS_END) ? '\t' : '\n'); + for (i = DIGITS_START, j = 0; i <= DIGITS_END; i += DIGITS_INCR) + j += sprintf (outs + j, "%u%c", i, (i < DIGITS_END) ? '\t' : '\n'); outs[j] = '\0'; outputf (OUTPUT_VERBOSE, "Expected time to find a factor of n digits:\n%s", outs); @@ -1219,9 +1226,9 @@ st = cputime (); /* construct the batch exponent */ compute_s (batch_s, B1, NULL); - outputf (OUTPUT_VERBOSE, "Computing batch product (of %zu bits) of " - "primes up to B1=%1.0f took %ldms\n", - mpz_sizeinbase (batch_s, 2), B1, cputime () - st); + outputf (OUTPUT_VERBOSE, "Computing batch product (of %" PRIu64 + " bits) of primes up to B1=%1.0f took %ldms\n", + mpz_sizeinbase (batch_s, 2), B1, cputime () - st); } st = cputime (); diff -Nru gmp-ecm-7.0.3+ds/ecm-gmp.h gmp-ecm-7.0.4+ds/ecm-gmp.h --- gmp-ecm-7.0.3+ds/ecm-gmp.h 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/ecm-gmp.h 2016-08-30 13:45:14.000000000 +0000 @@ -143,7 +143,7 @@ #if __MPIR_RELEASE == 20600 #error MPIR 2.6 does not support GMP-ECM, please use an alternative version #endif -/* WARNING - the following two defintions map the internal interface +/* WARNING - the following two definitions map the internal interface of the new FFT in MPIR 2.6 (and later) to the GMP FFT interface - they work in this context but the parameters for mpn_fft_next_size and fft_adjust_limbs have different semantics, which means that @@ -152,7 +152,7 @@ # define mpn_fft_best_k(n, k) (0) # define mpn_fft_next_size(n, k) fft_adjust_limbs(n) -#else +#else /* we are using the real GMP */ #define mpn_mul_fft __gmpn_mul_fft mp_limb_t __gmpn_mul_fft (mp_ptr, mp_size_t, mp_srcptr, mp_size_t, mp_srcptr, diff -Nru gmp-ecm-7.0.3+ds/ecm.h gmp-ecm-7.0.4+ds/ecm.h --- gmp-ecm-7.0.3+ds/ecm.h 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/ecm.h 2016-10-11 09:28:12.000000000 +0000 @@ -27,7 +27,7 @@ #include /* for FILE */ #include -#define ECM_VERSION "7.0.3" +#define ECM_VERSION "7.0.4" #ifdef __cplusplus extern "C" { diff -Nru gmp-ecm-7.0.3+ds/ks-multiply.c gmp-ecm-7.0.4+ds/ks-multiply.c --- gmp-ecm-7.0.3+ds/ks-multiply.c 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/ks-multiply.c 2016-08-22 11:10:25.000000000 +0000 @@ -578,6 +578,10 @@ listz_t B, unsigned int l, mpz_t n) { +#ifndef FFT_WRAP + ASSERT_ALWAYS(0); /* ks_wrapmul should not be called in that case */ + return 0; +#else unsigned long i, m, t; mp_size_t s, size_t0, size_t1, size_tmp; mp_ptr t0_ptr, t1_ptr, t2_ptr, r_ptr, tp; @@ -621,15 +625,11 @@ if (SIZ(B[i])) MPN_COPY (t1_ptr + i * s, PTR(B[i]), SIZ(B[i])); -#ifdef FFT_WRAP i = mpn_mulmod_bnm1_next_size (m0 * s); /* the following loop ensures we don't cut in the middle of a coefficient */ while (i % s) i = mpn_mulmod_bnm1_next_size (i + 1); -#else - ASSERT_ALWAYS(0); /* ks_wrapmul should not be called in that case */ -#endif ASSERT(i % s == 0); m = i / s; ASSERT(m <= 2 * m0 - 3 + list_mul_mem (m0 - 1)); @@ -671,4 +671,5 @@ free (t2_ptr); return m; +#endif /* FFT_WRAP */ } diff -Nru gmp-ecm-7.0.3+ds/main.c gmp-ecm-7.0.4+ds/main.c --- gmp-ecm-7.0.3+ds/main.c 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/main.c 2016-08-22 11:05:41.000000000 +0000 @@ -1349,7 +1349,7 @@ exit (EXIT_FAILURE); } else if (verbose >= OUTPUT_VERBOSE) - fprintf (stdout, "Reading batch product (of %zu bits) of " + fprintf (stdout, "Reading batch product (of %"PRIu64" bits) of " "primes up to B1=%1.0f from %s took %ldms\n", mpz_sizeinbase (params->batch_s, 2), B1, loadfile_s, cputime () - st); diff -Nru gmp-ecm-7.0.3+ds/Makefile.am gmp-ecm-7.0.4+ds/Makefile.am --- gmp-ecm-7.0.3+ds/Makefile.am 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/Makefile.am 2016-08-23 12:25:36.000000000 +0000 @@ -50,7 +50,7 @@ # www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html # If any interfaces have been added, removed, or changed since the last # update, increment current, and set revision to 0. -libecm_la_LDFLAGS = $(LIBECM_LDFLAGS) -version-info 1:0:0 -g -Wl,-znoexecstack +libecm_la_LDFLAGS = $(LIBECM_LDFLAGS) -version-info 1:0:0 -g libecm_la_LIBADD = $(MULREDCLIBRARY) if WANT_GPU libecm_la_SOURCES += cudakernel.cu @@ -143,11 +143,11 @@ endif TESTS = $(dist_check_SCRIPTS) -TESTS_ENVIRONMENT = GMPECM_DATADIR=$(srcdir) $(VALGRIND) +TESTS_ENVIRONMENT = $(VALGRIND) # see https://www.gnu.org/software/automake/manual/html_node/Scripts_002dbased-Testsuites.html # this is only needed for "make longcheck" below -# export GMPECM_DATADIR = $(srcdir) +export GMPECM_DATADIR = $(srcdir) longcheck: ecm$(EXEEXT) $(srcdir)/test.pp1 "$(VALGRIND) ./ecm$(EXEEXT)" diff -Nru gmp-ecm-7.0.3+ds/mpmod.c gmp-ecm-7.0.4+ds/mpmod.c --- gmp-ecm-7.0.3+ds/mpmod.c 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/mpmod.c 2016-09-06 07:39:34.000000000 +0000 @@ -1111,7 +1111,7 @@ } /* R <- BASE^EXP mod modulus. - EXP can be negative. + Warning: EXP can be negative (only occurs for P-1 in revision 2982). */ void mpres_pow (mpres_t R, const mpres_t BASE, const mpz_t EXP, mpmod_t modulus) @@ -1129,17 +1129,23 @@ { size_t expidx; mp_limb_t bitmask, expbits; + int sgn = mpz_sgn (EXP); + mpz_t exp; /* case EXP=0 */ - if (mpz_sgn (EXP) == 0) + if (sgn == 0) { mpres_set_ui (R, 1UL, modulus); /* set result to 1 */ ASSERT_NORMALIZED (R); return; } - expidx = mpz_size (EXP) - 1; /* point at most significant limb */ - expbits = mpz_getlimbn (EXP, expidx); /* get most significant limb */ + /* exp <- |EXP| */ + PTR(exp) = PTR(EXP); + SIZ(exp) = ABSIZ(EXP); + + expidx = mpz_size (exp) - 1; /* point at most significant limb */ + expbits = mpz_getlimbn (exp, expidx); /* get most significant limb */ ASSERT (expbits != 0); /* Scan for the MSB in expbits */ @@ -1150,7 +1156,7 @@ /* bitmask is set to mask in the msb of expbits */ k = 1; /* sliding window size */ - expnbits = mpz_sizeinbase (EXP, 2); + expnbits = mpz_sizeinbase (exp, 2); /* the average number of multiplications is 2^(k-1) + expnbits / (k+1) */ while ((1 << (k-1)) + expnbits / (k + 1) > (1 << k) + expnbits / (k + 2)) k ++; @@ -1197,9 +1203,9 @@ } /* if the current bit is the smallest one of the window, we multiply by BASE^w */ - if ((mpz_sgn (EXP) > 0 && mpz_scan1 (EXP, n0) == expnbits - 1) - || (mpz_sgn (EXP) < 0 && mpz_scan0 (EXP, n0) == expnbits - 1)) + if (mpz_scan1 (exp, n0) == expnbits - 1) { + ASSERT(w/2 < K); mpres_pow_mul (modulus->temp2, (w == 1) ? BASE : B[w/2], modulus->temp2, modulus); w = lw = 0; @@ -1209,9 +1215,10 @@ if (expidx == 0) /* if we just processed the least */ break; /* significant limb, we are done */ expidx --; - expbits = mpz_getlimbn (EXP, expidx); + expbits = mpz_getlimbn (exp, expidx); bitmask = (mp_limb_t) 1 << (GMP_NUMB_BITS - 1); } + ASSERT(w/2 < K); if (w != 0) mpres_pow_mul (modulus->temp2, (w == 1) ? BASE : B[w/2], modulus->temp2, modulus); @@ -1222,10 +1229,8 @@ /* mpz_getlimbn() ignores sign of argument, so we computed BASE^|EXP|. If EXP was negative, do a modular inverse */ - if (mpz_sgn (EXP) < 0) - { - mpres_invert (R, R, modulus); - } + if (sgn < 0) + mpres_invert (R, R, modulus); } /* if (modulus->repr == ECM_MOD_BASE2 || ... ) */ ASSERT_NORMALIZED (R); } @@ -1693,11 +1698,11 @@ ASSERT_NORMALIZED (R); } -/* Compagnon function to mpres_set_z_for_gcd(). It divides by c^n. +/* Companion function to mpres_set_z_for_gcd(). It divides by c^n. In case of MULREDC with k b-bit words, c = 1/2^(b*k), so we multiply by 2^(n*b*k). The purpose is to fix products of n terms collected by using mpres_set_z_for_gcd(), so that we can still get the exact residue. */ - + void mpres_set_z_for_gcd_fix (mpres_t R, const mpres_t S, const mpz_t n, mpmod_t modulus) { @@ -1712,6 +1717,7 @@ mpz_init (nb); mpres_init (po2, modulus); + /* Note: modulus->bits is always non-negative for MODMULN and REDC */ mpz_mul_ui (nb, n, modulus->bits); mpres_set_ui (po2, 2, modulus); mpres_pow (po2, po2, nb, modulus); @@ -2035,6 +2041,18 @@ mpz_gcd (R, S, modulus->orig_modulus); } +#ifdef HAVE_ADDLAWS +/* Returns non-zero if the two residues are equal, + and zero if they are not */ +int +mpres_equal (const mpres_t S1, const mpres_t S2, mpmod_t modulus) +{ + mpz_mod (modulus->temp1, S1, modulus->orig_modulus); + mpz_mod (modulus->temp2, S2, modulus->orig_modulus); + return (mpz_cmp (modulus->temp1, modulus->temp2) == 0); +} +#endif + #if 0 /* those routines are not called in normal operation */ void @@ -2117,7 +2135,7 @@ /* Returns 1 if successful, 0 if not */ static int -test_mpres_set_z_for_gcd_fix(const int maxk, mpmod_t modulus) +test_mpres_set_z_for_gcd_fix (const int maxk, mpmod_t modulus) { mpres_t m, prod; mpz_t n; @@ -2158,16 +2176,6 @@ return 1; } -/* Returns non-zero if the two residues are equal, - and zero if they are not */ -int -mpres_equal (const mpres_t S1, const mpres_t S2, mpmod_t modulus) -{ - mpz_mod (modulus->temp1, S1, modulus->orig_modulus); - mpz_mod (modulus->temp2, S2, modulus->orig_modulus); - return (mpz_cmp (modulus->temp1, modulus->temp2) == 0); -} - int mpmod_selftest (const mpz_t n) { diff -Nru gmp-ecm-7.0.3+ds/NEWS gmp-ecm-7.0.4+ds/NEWS --- gmp-ecm-7.0.3+ds/NEWS 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/NEWS 2016-08-26 13:16:29.000000000 +0000 @@ -1,3 +1,10 @@ +Changes between GMP-ECM 7.0.3 and 7.0.4: +* fixed a bug in mpres_pow: + https://gforge.inria.fr/tracker/?func=detail&atid=623&aid=20712&group_id=135 +* fixed a bug with P-1 or P+1 and small B2 +* improved portability (OS X, Windows, Cygwin, non GNU ld) +* fixed make longcheck with out-of-source build + Changes between GMP-ECM 7.0.2 and GMP-ECM 7.0.3: * fixed compilation issue on powerpc64 diff -Nru gmp-ecm-7.0.3+ds/pm1fs2.c gmp-ecm-7.0.4+ds/pm1fs2.c --- gmp-ecm-7.0.3+ds/pm1fs2.c 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/pm1fs2.c 2016-08-26 11:59:15.000000000 +0000 @@ -1752,6 +1752,38 @@ } #endif +/* return the memory needed in the F[] array for poly_from_sets_V */ +static unsigned long +mem_poly_from_sets_V (sets_long_t *sets) +{ + unsigned long c, deg, i, nr; + set_long_t *set = sets->sets; + unsigned long mem, maxmem = 0; + + deg = 1UL; + for (nr = sets->nr - 1UL; nr > 0UL; nr--) + { + set = sets_nextset (sets->sets); /* Skip first set */ + for (i = 1UL; i < nr; i++) /* Skip over remaining sets but one */ + set = sets_nextset (set); + c = set->card; + if (c == 2UL) + deg *= 2UL; + else + { + i = (c - 1UL) / 2UL - 1; /* maximal value of i */ + /* list_scale_V needs 2*deg+1 entries starting at + F + (2UL * i + 1UL) * (deg + 1UL) */ + mem = (2UL * i + 1UL) * (deg + 1UL) + (2 * deg + 1UL); + if (mem > maxmem) + maxmem = mem; + deg *= c; + } + } + + return maxmem; +} + /* Build a polynomial with roots r^2i, i in the sumset of the sets in "sets". The parameter Q = r + 1/r. This code uses the fact that the polynomials are symmetric. Requires that the first set in "sets" has cardinality 2, @@ -1885,7 +1917,7 @@ } static int -build_F_ntt (listz_t F, const mpres_t P_1, sets_long_t *S_1, +build_F_ntt (listz_t F, const mpres_t P_1, sets_long_t *S_1, const faststage2_param_t *params, mpmod_t modulus) { mpzspm_t F_ntt_context; @@ -1919,8 +1951,8 @@ tmplen = params->s_1 + 100; tmp = init_list2 (tmplen, (unsigned int) abs (modulus->bits)); F_ntt = mpzspv_init (1UL << ceil_log2 (params->s_1 / 2 + 1), F_ntt_context); - - i = poly_from_sets_V (F, P_1, S_1, tmp, tmplen, modulus, F_ntt, + + i = poly_from_sets_V (F, P_1, S_1, tmp, tmplen, modulus, F_ntt, F_ntt_context); ASSERT_ALWAYS(2 * i == params->s_1); ASSERT_ALWAYS(mpz_cmp_ui (F[i], 1UL) == 0); @@ -2039,6 +2071,7 @@ mpz_neg (t, t); mpz_mul_2exp (t, t, 1UL); mpz_add_ui (t, t, 1UL); + /* Warning: t might be negative here. */ mpres_pow (r[1], r[0], t, modulus); /* r[1] = r^{2(-M+i)+1}, i = 0 */ mpz_set_si (t, M); mpz_mul (t, t, t); /* t = M^2 */ @@ -2054,6 +2087,7 @@ outputf (OUTPUT_TRACE, "/* pm1_sequence_g */ 2*%ld + (2*%Zd + 1)*P == " "%Zd /* PARI C */\n", k_2, m_1, t); + /* Warning: t might be negative here. */ mpres_pow (x_0, b_1, t, modulus); /* x_0 = b_1^{2*k_2 + (2*m_1 + 1)*P} */ if (want_output && test_verbose (OUTPUT_TRACE)) { @@ -2670,7 +2704,7 @@ /* First compute X + 1/X */ mpres_invert (mr, X, modulus); mpres_add (mr, mr, X, modulus); - + i = poly_from_sets_V (F, mr, S_1, tmp, tmplen, modulus, NULL, NULL); ASSERT_ALWAYS(2 * i == params->s_1); ASSERT(mpz_cmp_ui (F[i], 1UL) == 0); @@ -2849,7 +2883,7 @@ unsigned long nr; unsigned long l, lenF; sets_long_t *S_1; /* This is stored as a set of sets (arithmetic - progressions of prime length */ + progressions of prime length) */ set_long_t *S_2; /* This is stored as a regular set */ listz_t F; /* Polynomial F has roots X^{k_1} for k_1 \in S_1, so has degree s_1. It is symmetric, so has only s_1 / 2 + 1 @@ -2897,6 +2931,14 @@ mpres_init (tmpres, modulus); lenF = params->s_1 / 2 + 1 + 1; /* Another +1 because poly_from_sets_V stores the leading 1 monomial for each factor */ + { + /* in some cases the above value of lenF is not enough, for example with + s_1 = 10, which gives lenF = 7, but 9 entries are needed */ + unsigned long mem = mem_poly_from_sets_V (S_1); + if (mem > lenF) + lenF = mem; + } + F = init_list2 (lenF, (unsigned int) abs (modulus->bits)); mpres_get_z (mt, X, modulus); /* mpz_t copy of X for printing */ @@ -4269,6 +4311,14 @@ /* Allocate memory for F with correct amount of space for each mpz_t */ lenF = params->s_1 / 2 + 1 + 1; /* Another +1 because poly_from_sets_V stores the leading 1 monomial for each factor */ + { + /* in some cases the above value of lenF is not enough, for example with + s_1 = 10, which gives lenF = 7, but 9 entries are needed */ + unsigned long mem = mem_poly_from_sets_V (S_1); + if (mem > lenF) + lenF = mem; + } + F = init_list2 (lenF, (unsigned int) abs (modulus->bits) + GMP_NUMB_BITS); /* Build F */ diff -Nru gmp-ecm-7.0.3+ds/README.gpu gmp-ecm-7.0.4+ds/README.gpu --- gmp-ecm-7.0.3+ds/README.gpu 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/README.gpu 2016-08-23 09:22:08.000000000 +0000 @@ -7,7 +7,7 @@ 1. How to enable GPU code in GMP-ECM 2. Basic Usage 3. Advanced Usage - +4. Known issues ############################################################################## @@ -99,5 +99,13 @@ ############################################################################## -Please report to Cyril.Bouvier@inria.fr any problems, bugs, ... +4. Known issues + +On some configurations (GTX 570 with compute capability 2.0 for example) +one gets the Cuda error "too many resources requested for launch". This +can be solved by decreasing ECM_GPU_CURVES_BY_BLOCK from 32 to 16 in ecm-gpu.h. + +############################################################################## + +Please report to mail@cyrilbouvier.fr any problems, bugs, ... diff -Nru gmp-ecm-7.0.3+ds/test.ecm gmp-ecm-7.0.4+ds/test.ecm --- gmp-ecm-7.0.3+ds/test.ecm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/test.ecm 2016-08-22 11:05:41.000000000 +0000 @@ -441,10 +441,10 @@ # test -bsaves/-bloads echo 18446744073709551557 | $ECM -param 1 -A 1 -bsaves test.ecm.s 11000 -echo 18446744073709551557 | $ECM -param 1 -A 312656731337392125 -bloads test.ecm.s 11000 -C=$? +echo 18446744073709551557 | $ECM -param 1 -A 312656731337392125 -bloads test.ecm.s 11000; checkcode $? 8 +# The following test (with -v and -bloads) would crash on Windows prior to svn 2968. +echo 18446744073709551557 | $ECM -param 1 -A 312656731337392125 -bloads test.ecm.s -v 11000; checkcode $? 8 /bin/rm -f test.ecm.s -checkcode $C 8 # non-regression test for bug fixed by changeset r1819 on 32-bit echo 4294967291 | $ECM -param 1 -A 17 1000 diff -Nru gmp-ecm-7.0.3+ds/test.gpuecm gmp-ecm-7.0.4+ds/test.gpuecm --- gmp-ecm-7.0.3+ds/test.gpuecm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/test.gpuecm 2016-07-25 14:11:06.000000000 +0000 @@ -113,7 +113,7 @@ # bug reported by David Cleaver (was also reported by Paul Leyland) # should report p6 factor and c210 cofactor instead of "Input number found" # fixed with svn 2867 -echo "(2^718+1)/5" | $ECM -sigma 3:2000 40 48 +echo "(2^718+1)/5" | $ECM -sigma 3:2016 40 48 checkcode $? 6 diff -Nru gmp-ecm-7.0.3+ds/test.pm1 gmp-ecm-7.0.4+ds/test.pm1 --- gmp-ecm-7.0.3+ds/test.pm1 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/test.pm1 2016-08-29 06:27:01.000000000 +0000 @@ -168,4 +168,19 @@ # exercise bug fixed in revision 2949 on 64-bit processor (occurred with -redc) echo "(2^1049-1)/33569/459463" | $PM1 1049 21686243; checkcode $? 14 +# exercise bug (Segmentation fault) in ecm 7.0.x for x <= 3 +echo 1000033 | $PM1 32 947; checkcode $? 8 +echo 10001801 | $PM1 43 1163; checkcode $? 8 +echo 100002943 | $PM1 23 1093; checkcode $? 8 +echo 1000020313 | $PM1 37 859; checkcode $? 8 +echo 10000026037 | $PM1 49 1367; checkcode $? 8 + +# Segmentation fault in 6.4.4 +echo 100000003897 | $PM1 787 1223; checkcode $? 8 +echo 1000000671451 | $PM1 757 1249; checkcode $? 8 +echo 10000000097557 | $PM1 761 1279; checkcode $? 8 +echo 100000002915569 | $PM1 1361 1823; checkcode $? 8 +echo 1000000001405311 | $PM1 1373 1759; checkcode $? 8 +echo 10000000003317199 | $PM1 2269 2803; checkcode $? 8 + echo "All P-1 tests are ok." diff -Nru gmp-ecm-7.0.3+ds/test.pp1 gmp-ecm-7.0.4+ds/test.pp1 --- gmp-ecm-7.0.3+ds/test.pp1 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/test.pp1 2016-08-29 06:28:03.000000000 +0000 @@ -180,5 +180,14 @@ # exercise -x0 0 option echo 18446744073709551653 | $PP1 -x0 0 257687 141775993; checkcode $? 8 +# exercise bug (Segmentation fault) in ecm 7.0.x for x <= 3 +echo 1000039 | $PP1 -x0 4 23 1087; checkcode $? 8 +echo 10001779 | $PP1 -x0 4 23 1279; checkcode $? 8 +echo 100002941 | $PP1 -x0 4 23 1093; checkcode $? 8 +echo 1000024339 | $PP1 -x0 4 49 1249; checkcode $? 8 +echo 10000098767 | $PP1 -x0 3 41 937; checkcode $? 8 +echo 100000049993 | $PP1 -x0 3 43 1061; checkcode $? 8 +echo 1000008849503 | $PP1 -x0 3 47 859; checkcode $? 8 + echo "All P+1 tests are ok." diff -Nru gmp-ecm-7.0.3+ds/tune.c gmp-ecm-7.0.4+ds/tune.c --- gmp-ecm-7.0.3+ds/tune.c 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/tune.c 2016-08-22 11:05:41.000000000 +0000 @@ -429,7 +429,7 @@ for (n = 1; n < TUNE_LIST_MUL_N_MAX_SIZE; n++) { if (tune_verbose) - printf ("%zu:", n); + printf ("%"PRIu64":", n); __k = 1; TUNE_FUNC_LOOP(list_mul_n_basecase(z, x, y, n)); st[0] = (double) __st / (double) __k; diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc10.asm gmp-ecm-7.0.4+ds/x86_64/mulredc10.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc10.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc10.asm 2016-08-25 13:42:10.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc10 TYPE(GSYM_PREFIX`'mulredc`'10,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -487,12 +436,6 @@ movq 64(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -567,15 +510,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_10.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_10.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_10.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_10.asm 2016-08-25 13:42:13.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -413,13 +354,6 @@ movq 64(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_11.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_11.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_11.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_11.asm 2016-08-25 13:42:13.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -413,13 +354,6 @@ movq 64(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -454,13 +388,6 @@ movq 72(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_12.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_12.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_12.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_12.asm 2016-08-25 13:42:13.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -413,13 +354,6 @@ movq 64(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -454,13 +388,6 @@ movq 72(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -495,13 +422,6 @@ movq 80(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_13.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_13.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_13.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_13.asm 2016-08-25 13:42:13.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -413,13 +354,6 @@ movq 64(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -454,13 +388,6 @@ movq 72(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -495,13 +422,6 @@ movq 80(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -536,13 +456,6 @@ movq 88(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_14.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_14.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_14.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_14.asm 2016-08-25 13:42:13.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -413,13 +354,6 @@ movq 64(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -454,13 +388,6 @@ movq 72(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -495,13 +422,6 @@ movq 80(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -536,13 +456,6 @@ movq 88(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -577,13 +490,6 @@ movq 96(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_15.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_15.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_15.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_15.asm 2016-08-25 13:42:14.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -413,13 +354,6 @@ movq 64(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -454,13 +388,6 @@ movq 72(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -495,13 +422,6 @@ movq 80(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -536,13 +456,6 @@ movq 88(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -577,13 +490,6 @@ movq 96(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -618,13 +524,6 @@ movq 104(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_16.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_16.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_16.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_16.asm 2016-08-25 13:42:14.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -413,13 +354,6 @@ movq 64(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -454,13 +388,6 @@ movq 72(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -495,13 +422,6 @@ movq 80(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -536,13 +456,6 @@ movq 88(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -577,13 +490,6 @@ movq 96(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -618,13 +524,6 @@ movq 104(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -659,13 +558,6 @@ movq 112(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_17.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_17.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_17.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_17.asm 2016-08-25 13:42:14.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -413,13 +354,6 @@ movq 64(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -454,13 +388,6 @@ movq 72(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -495,13 +422,6 @@ movq 80(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -536,13 +456,6 @@ movq 88(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -577,13 +490,6 @@ movq 96(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -618,13 +524,6 @@ movq 104(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -659,13 +558,6 @@ movq 112(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -700,13 +592,6 @@ movq 120(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_18.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_18.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_18.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_18.asm 2016-08-25 13:42:14.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -413,13 +354,6 @@ movq 64(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -454,13 +388,6 @@ movq 72(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -495,13 +422,6 @@ movq 80(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -536,13 +456,6 @@ movq 88(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -577,13 +490,6 @@ movq 96(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -618,13 +524,6 @@ movq 104(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -659,13 +558,6 @@ movq 112(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -700,13 +592,6 @@ movq 120(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -741,13 +626,6 @@ movq 128(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_19.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_19.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_19.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_19.asm 2016-08-25 13:42:14.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -413,13 +354,6 @@ movq 64(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -454,13 +388,6 @@ movq 72(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -495,13 +422,6 @@ movq 80(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -536,13 +456,6 @@ movq 88(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -577,13 +490,6 @@ movq 96(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -618,13 +524,6 @@ movq 104(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -659,13 +558,6 @@ movq 112(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -700,13 +592,6 @@ movq 120(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -741,13 +626,6 @@ movq 128(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -782,13 +660,6 @@ movq 136(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc11.asm gmp-ecm-7.0.4+ds/x86_64/mulredc11.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc11.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc11.asm 2016-08-25 13:42:10.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc11 TYPE(GSYM_PREFIX`'mulredc`'11,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -487,12 +436,6 @@ movq 64(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -531,12 +474,6 @@ movq 72(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -611,15 +548,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_20.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_20.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_20.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_20.asm 2016-08-25 13:42:14.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -413,13 +354,6 @@ movq 64(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -454,13 +388,6 @@ movq 72(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -495,13 +422,6 @@ movq 80(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -536,13 +456,6 @@ movq 88(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -577,13 +490,6 @@ movq 96(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -618,13 +524,6 @@ movq 104(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -659,13 +558,6 @@ movq 112(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -700,13 +592,6 @@ movq 120(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -741,13 +626,6 @@ movq 128(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -782,13 +660,6 @@ movq 136(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -823,13 +694,6 @@ movq 144(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_2.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_2.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_2.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_2.asm 2016-08-25 13:42:12.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc12.asm gmp-ecm-7.0.4+ds/x86_64/mulredc12.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc12.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc12.asm 2016-08-25 13:42:10.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc12 TYPE(GSYM_PREFIX`'mulredc`'12,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -487,12 +436,6 @@ movq 64(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -531,12 +474,6 @@ movq 72(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -575,12 +512,6 @@ movq 80(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -655,15 +586,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_3.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_3.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_3.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_3.asm 2016-08-25 13:42:12.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc13.asm gmp-ecm-7.0.4+ds/x86_64/mulredc13.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc13.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc13.asm 2016-08-25 13:42:10.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc13 TYPE(GSYM_PREFIX`'mulredc`'13,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -487,12 +436,6 @@ movq 64(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -531,12 +474,6 @@ movq 72(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -575,12 +512,6 @@ movq 80(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -619,12 +550,6 @@ movq 88(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -699,15 +624,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_4.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_4.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_4.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_4.asm 2016-08-25 13:42:12.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc14.asm gmp-ecm-7.0.4+ds/x86_64/mulredc14.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc14.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc14.asm 2016-08-25 13:42:10.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc14 TYPE(GSYM_PREFIX`'mulredc`'14,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -487,12 +436,6 @@ movq 64(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -531,12 +474,6 @@ movq 72(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -575,12 +512,6 @@ movq 80(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -619,12 +550,6 @@ movq 88(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -663,12 +588,6 @@ movq 96(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -743,15 +662,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_5.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_5.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_5.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_5.asm 2016-08-25 13:42:12.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc15.asm gmp-ecm-7.0.4+ds/x86_64/mulredc15.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc15.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc15.asm 2016-08-25 13:42:11.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc15 TYPE(GSYM_PREFIX`'mulredc`'15,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -487,12 +436,6 @@ movq 64(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -531,12 +474,6 @@ movq 72(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -575,12 +512,6 @@ movq 80(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -619,12 +550,6 @@ movq 88(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -663,12 +588,6 @@ movq 96(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -707,12 +626,6 @@ movq 104(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -787,15 +700,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_6.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_6.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_6.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_6.asm 2016-08-25 13:42:12.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc16.asm gmp-ecm-7.0.4+ds/x86_64/mulredc16.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc16.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc16.asm 2016-08-25 13:42:11.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc16 TYPE(GSYM_PREFIX`'mulredc`'16,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -487,12 +436,6 @@ movq 64(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -531,12 +474,6 @@ movq 72(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -575,12 +512,6 @@ movq 80(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -619,12 +550,6 @@ movq 88(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -663,12 +588,6 @@ movq 96(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -707,12 +626,6 @@ movq 104(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -751,12 +664,6 @@ movq 112(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -831,15 +738,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_7.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_7.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_7.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_7.asm 2016-08-25 13:42:12.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc17.asm gmp-ecm-7.0.4+ds/x86_64/mulredc17.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc17.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc17.asm 2016-08-25 13:42:11.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc17 TYPE(GSYM_PREFIX`'mulredc`'17,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -487,12 +436,6 @@ movq 64(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -531,12 +474,6 @@ movq 72(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -575,12 +512,6 @@ movq 80(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -619,12 +550,6 @@ movq 88(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -663,12 +588,6 @@ movq 96(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -707,12 +626,6 @@ movq 104(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -751,12 +664,6 @@ movq 112(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -795,12 +702,6 @@ movq 120(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -875,15 +776,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_8.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_8.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_8.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_8.asm 2016-08-25 13:42:13.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc18.asm gmp-ecm-7.0.4+ds/x86_64/mulredc18.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc18.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc18.asm 2016-08-25 13:42:11.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc18 TYPE(GSYM_PREFIX`'mulredc`'18,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -487,12 +436,6 @@ movq 64(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -531,12 +474,6 @@ movq 72(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -575,12 +512,6 @@ movq 80(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -619,12 +550,6 @@ movq 88(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -663,12 +588,6 @@ movq 96(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -707,12 +626,6 @@ movq 104(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -751,12 +664,6 @@ movq 112(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -795,12 +702,6 @@ movq 120(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -839,12 +740,6 @@ movq 128(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -919,15 +814,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1_9.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1_9.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1_9.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1_9.asm 2016-08-25 13:42:13.000000000 +0000 @@ -93,16 +93,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -') define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl define(`T1', defn(`TT'))dnl @@ -126,13 +116,6 @@ movq 8(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -167,13 +150,6 @@ movq 16(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -208,13 +184,6 @@ movq 24(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -249,13 +218,6 @@ movq 32(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -290,13 +252,6 @@ movq 40(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -331,13 +286,6 @@ movq 48(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -372,13 +320,6 @@ movq 56(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`') mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc19.asm gmp-ecm-7.0.4+ds/x86_64/mulredc19.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc19.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc19.asm 2016-08-25 13:42:11.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc19 TYPE(GSYM_PREFIX`'mulredc`'19,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -487,12 +436,6 @@ movq 64(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -531,12 +474,6 @@ movq 72(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -575,12 +512,6 @@ movq 80(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -619,12 +550,6 @@ movq 88(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -663,12 +588,6 @@ movq 96(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -707,12 +626,6 @@ movq 104(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -751,12 +664,6 @@ movq 112(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -795,12 +702,6 @@ movq 120(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -839,12 +740,6 @@ movq 128(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -883,12 +778,6 @@ movq 136(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -963,15 +852,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1.asm gmp-ecm-7.0.4+ds/x86_64/mulredc1.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc1.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1.asm 2016-08-25 13:40:28.000000000 +0000 @@ -48,11 +48,6 @@ mulq INV_M # compute u mulq M # compute u*m addq TMP1, %rax # rax is 0, now (carry is important) -ifdef(`WANT_ASSERT', -` jz 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx - call abort@plt -LABEL_SUFFIX(1)') adcq TMP2, %rdx movq %rdx, (Z) adcq $0, %rax diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc1.m4 gmp-ecm-7.0.4+ds/x86_64/mulredc1.m4 --- gmp-ecm-7.0.3+ds/x86_64/mulredc1.m4 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc1.m4 2016-08-25 13:40:56.000000000 +0000 @@ -100,16 +100,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -`ifdef(`WANT_ASSERT', ` - pushf - testq T0, T0 - jz assert1 - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -assert1: - popf -')' dnl Cycle ring buffer. Only mappings of T0 and T1 to regs change, no MOVs! `define(`TT', defn(`T0'))dnl define(`T0', defn(`T1'))dnl @@ -138,13 +128,6 @@ movq J`'(MP), %rax # Fetch m[j] into %rax adcq %rdx, T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -`ifdef(`WANT_ASSERT', ` - jnc 1f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -1: -',`')' mulq U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc20.asm gmp-ecm-7.0.4+ds/x86_64/mulredc20.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc20.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc20.asm 2016-08-25 13:42:11.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc20 TYPE(GSYM_PREFIX`'mulredc`'20,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -487,12 +436,6 @@ movq 64(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -531,12 +474,6 @@ movq 72(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -575,12 +512,6 @@ movq 80(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -619,12 +550,6 @@ movq 88(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -663,12 +588,6 @@ movq 96(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -707,12 +626,6 @@ movq 104(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -751,12 +664,6 @@ movq 112(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -795,12 +702,6 @@ movq 120(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -839,12 +740,6 @@ movq 128(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -883,12 +778,6 @@ movq 136(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -927,12 +816,6 @@ movq 144(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -1007,15 +890,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc2.asm gmp-ecm-7.0.4+ds/x86_64/mulredc2.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc2.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc2.asm 2016-08-25 13:42:08.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc2 TYPE(GSYM_PREFIX`'mulredc`'2,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -215,15 +206,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc3.asm gmp-ecm-7.0.4+ds/x86_64/mulredc3.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc3.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc3.asm 2016-08-25 13:42:09.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc3 TYPE(GSYM_PREFIX`'mulredc`'3,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -259,15 +244,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc4.asm gmp-ecm-7.0.4+ds/x86_64/mulredc4.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc4.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc4.asm 2016-08-25 13:42:09.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc4 TYPE(GSYM_PREFIX`'mulredc`'4,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -303,15 +282,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc5.asm gmp-ecm-7.0.4+ds/x86_64/mulredc5.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc5.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc5.asm 2016-08-25 13:42:09.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc5 TYPE(GSYM_PREFIX`'mulredc`'5,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -347,15 +320,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc6.asm gmp-ecm-7.0.4+ds/x86_64/mulredc6.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc6.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc6.asm 2016-08-25 13:42:09.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc6 TYPE(GSYM_PREFIX`'mulredc`'6,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -391,15 +358,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc7.asm gmp-ecm-7.0.4+ds/x86_64/mulredc7.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc7.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc7.asm 2016-08-25 13:42:09.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc7 TYPE(GSYM_PREFIX`'mulredc`'7,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -435,15 +396,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc8.asm gmp-ecm-7.0.4+ds/x86_64/mulredc8.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc8.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc8.asm 2016-08-25 13:42:09.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc8 TYPE(GSYM_PREFIX`'mulredc`'8,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -479,15 +434,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc9.asm gmp-ecm-7.0.4+ds/x86_64/mulredc9.asm --- gmp-ecm-7.0.3+ds/x86_64/mulredc9.asm 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc9.asm 2016-08-25 13:42:10.000000000 +0000 @@ -23,7 +23,7 @@ include(`config.m4') TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX`'mulredc9 TYPE(GSYM_PREFIX`'mulredc`'9,`function') @@ -143,15 +143,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl @@ -179,12 +170,6 @@ movq 8(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -223,12 +208,6 @@ movq 16(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -267,12 +246,6 @@ movq 24(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -311,12 +284,6 @@ movq 32(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -355,12 +322,6 @@ movq 40(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -399,12 +360,6 @@ movq 48(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -443,12 +398,6 @@ movq 56(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)') mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -523,15 +472,6 @@ movq 8(%YP), %rax # Fetch y[1] -ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf') define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl define(`T0', defn(`T1'))dnl diff -Nru gmp-ecm-7.0.3+ds/x86_64/mulredc.m4 gmp-ecm-7.0.4+ds/x86_64/mulredc.m4 --- gmp-ecm-7.0.3+ds/x86_64/mulredc.m4 2016-07-04 09:34:49.000000000 +0000 +++ gmp-ecm-7.0.4+ds/x86_64/mulredc.m4 2016-08-25 13:42:00.000000000 +0000 @@ -30,7 +30,7 @@ `include(`config.m4')' TEXT -.p2align 6 # Opteron L1 code cache line is 64 bytes long +.p2align 6 # x86_64 L1 code cache line is 64 bytes long GLOBL GSYM_PREFIX``''mulredc`'LENGTH TYPE(GSYM_PREFIX``''mulredc``''LENGTH,``function'') @@ -154,15 +154,6 @@ # CY:T1:T0 <= 2*(2^64-1)^2 <= 2^2*128 - 4*2^64 + 2, hence # CY:T1 <= 2*2^64 - 4 -`ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 2f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(2) - popf')' dnl Cycle ring buffer. Only mappings of T0 and T1 to regs change, no MOVs! `define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl @@ -195,12 +186,6 @@ movq J`'(%MP), %rax # Fetch m[j] into %rax adcq %rdx, %T1 # Add high word with carry to T1 # T1:T0 <= 2^128 - 2*2^64 + 1 + 2*2^64 - 2 <= 2^128 - 1, no carry! -`ifdef(`WANT_ASSERT', -` jnc 3f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(3)')' mulq %U # m[j]*u # rdx:rax <= 2^128 - 2*2^64 + 1, T1:T0 <= 2^128 - 1 @@ -280,15 +265,6 @@ movq 8(%YP), %rax # Fetch y[1] -`ifdef(`WANT_ASSERT', -` pushf - testq %T0, %T0 - jz 4f - lea _GLOBAL_OFFSET_TABLE_(%rip), %rbx # if we do PIC code, we - # need to set rbx; if not, it doesnt hurt - call GSYM_PREFIX`'abort@plt -LABEL_SUFFIX(4) - popf')' dnl Cycle ring buffer. Only mappings of T0 and T1 to regs change, no MOVs! `define(`TT', defn(`T0'))dnl define(`TTl', defn(`T0l'))dnl