From 5de39aa0868d6ff8528a533ef19e42d1a583bc12 Mon Sep 17 00:00:00 2001 From: simonmar Date: Wed, 17 Jan 2001 12:06:21 +0000 Subject: [PATCH] [project @ 2001-01-17 12:06:02 by simonmar] Import stripped down gmp-3.1.1 --- ghc/rts/gmp/Makefile.am | 5 +- ghc/rts/gmp/NEWS | 5 + ghc/rts/gmp/aclocal.m4 | 522 +++++++++++++++++++++++++++++--- ghc/rts/gmp/mp.h | 1 + ghc/rts/gmp/mpn/alpha/ev6/addmul_1.asm | 12 +- ghc/rts/gmp/mpn/generic/bz_divrem_n.c | 134 ++------ ghc/rts/gmp/mpn/x86/k6/mmx/popham.asm | 2 +- ghc/rts/gmp/mpn/x86/k7/mmx/popham.asm | 2 +- ghc/rts/gmp/mpz/fdiv_r_2exp.c | 7 +- ghc/rts/gmp/mpz/lcm.c | 7 +- ghc/rts/gmp/mpz/pprime_p.c | 2 +- ghc/rts/gmp/mpz/urandomm.c | 5 + ghc/rts/gmp/stamp-vti | 6 +- ghc/rts/gmp/version.texi | 6 +- 14 files changed, 557 insertions(+), 159 deletions(-) diff --git a/ghc/rts/gmp/Makefile.am b/ghc/rts/gmp/Makefile.am index 79bf65b..b73b805 100644 --- a/ghc/rts/gmp/Makefile.am +++ b/ghc/rts/gmp/Makefile.am @@ -61,6 +61,7 @@ # 3.0 3:0:0 3:0:0 # 3.0.1 3:1:0 3:0:0 # 3.1 4:0:1 4:0:1 +# 3.1.1 4:1:1 4:1:1 # # # Starting at 3:0:0 is a slight abuse of the versioning system, but it @@ -69,11 +70,11 @@ # interface changes for gmp 3 mean 3:0:0 is right. LIBGMP_LT_CURRENT = 4 -LIBGMP_LT_REVISION = 0 +LIBGMP_LT_REVISION = 1 LIBGMP_LT_AGE = 1 LIBMP_LT_CURRENT = 4 -LIBMP_LT_REVISION = 0 +LIBMP_LT_REVISION = 1 LIBMP_LT_AGE = 1 diff --git a/ghc/rts/gmp/NEWS b/ghc/rts/gmp/NEWS index f41af93..3b549d5 100644 --- a/ghc/rts/gmp/NEWS +++ b/ghc/rts/gmp/NEWS @@ -1,3 +1,8 @@ +Changes between MP version 3.1 and 3.1.1 + +* Bug fixes for division (rare), mpf_get_str, FFT, and miscellaneous minor + things. + Changes between MP version 3.0 and 3.1 * Bug fixes. diff --git a/ghc/rts/gmp/aclocal.m4 b/ghc/rts/gmp/aclocal.m4 index cd2aa5d..086c779 100644 --- a/ghc/rts/gmp/aclocal.m4 +++ b/ghc/rts/gmp/aclocal.m4 @@ -1,4 +1,4 @@ -dnl aclocal.m4 generated automatically by aclocal 1.4 +dnl aclocal.m4 generated automatically by aclocal 1.4a dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation @@ -904,9 +904,10 @@ ac_save_CC="$CC" # breaks some systems' header files. # AIX -qlanglvl=ansi # Ultrix and OSF/1 -std1 -# HP-UX -Aa -D_HPUX_SOURCE +# HP-UX 10.20 and later -Ae +# HP-UX older versions -Aa -D_HPUX_SOURCE # SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" AC_TRY_COMPILE( @@ -967,12 +968,15 @@ dnl AM_INIT_AUTOMAKE(package,version, [no-define]) AC_DEFUN(AM_INIT_AUTOMAKE, [AC_REQUIRE([AC_PROG_INSTALL]) +dnl We require 2.13 because we rely on SHELL being computed by configure. +AC_PREREQ([2.13]) PACKAGE=[$1] AC_SUBST(PACKAGE) VERSION=[$2] AC_SUBST(VERSION) dnl test to see if srcdir already configured -if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then +if test "`CDPATH=: && cd $srcdir && pwd`" != "`pwd`" && + test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) fi ifelse([$3],, @@ -980,14 +984,24 @@ AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) AC_REQUIRE([AM_SANITY_CHECK]) AC_REQUIRE([AC_ARG_PROGRAM]) -dnl FIXME This is truly gross. -missing_dir=`cd $ac_aux_dir && pwd` -AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) -AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) -AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) -AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) -AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) -AC_REQUIRE([AC_PROG_MAKE_SET])]) +AM_MISSING_PROG(ACLOCAL, aclocal) +AM_MISSING_PROG(AUTOCONF, autoconf) +AM_MISSING_PROG(AUTOMAKE, automake) +AM_MISSING_PROG(AUTOHEADER, autoheader) +AM_MISSING_PROG(MAKEINFO, makeinfo) +AM_MISSING_PROG(AMTAR, tar) +AM_MISSING_INSTALL_SH +dnl We need awk for the "check" target. The system "awk" is bad on +dnl some platforms. +AC_REQUIRE([AC_PROG_AWK]) +AC_REQUIRE([AC_PROG_MAKE_SET]) +AC_REQUIRE([AM_DEP_TRACK]) +AC_REQUIRE([AM_SET_DEPDIR]) +ifdef([AC_PROVIDE_AC_PROG_CC], [AM_DEPENDENCIES(CC)], [ + define([AC_PROG_CC], defn([AC_PROG_CC])[AM_DEPENDENCIES(CC)])]) +ifdef([AC_PROVIDE_AC_PROG_CXX], [AM_DEPENDENCIES(CXX)], [ + define([AC_PROG_CXX], defn([AC_PROG_CXX])[AM_DEPENDENCIES(CXX)])]) +]) # # Check to make sure that the build environment is sane. @@ -1032,21 +1046,192 @@ fi rm -f conftest* AC_MSG_RESULT(yes)]) -dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) -dnl The program must properly implement --version. -AC_DEFUN(AM_MISSING_PROG, -[AC_MSG_CHECKING(for working $2) -# Run test in a subshell; some versions of sh will print an error if -# an executable is not found, even if stderr is redirected. -# Redirect stdin to placate older versions of autoconf. Sigh. -if ($2 --version) < /dev/null > /dev/null 2>&1; then - $1=$2 - AC_MSG_RESULT(found) +dnl AM_MISSING_PROG(NAME, PROGRAM) +AC_DEFUN(AM_MISSING_PROG, [ +AC_REQUIRE([AM_MISSING_HAS_RUN]) +$1=${$1-"${am_missing_run}$2"} +AC_SUBST($1)]) + +dnl Like AM_MISSING_PROG, but only looks for install-sh. +dnl AM_MISSING_INSTALL_SH() +AC_DEFUN(AM_MISSING_INSTALL_SH, [ +AC_REQUIRE([AM_MISSING_HAS_RUN]) +if test -z "$install_sh"; then + install_sh="$ac_aux_dir/install-sh" + test -f "$install_sh" || install_sh="$ac_aux_dir/install.sh" + test -f "$install_sh" || install_sh="${am_missing_run}${ac_auxdir}/install-sh" + dnl FIXME: an evil hack: we remove the SHELL invocation from + dnl install_sh because automake adds it back in. Sigh. + install_sh="`echo $install_sh | sed -e 's/\${SHELL}//'`" +fi +AC_SUBST(install_sh)]) + +dnl AM_MISSING_HAS_RUN. +dnl Define MISSING if not defined so far and test if it supports --run. +dnl If it does, set am_missing_run to use it, otherwise, to nothing. +AC_DEFUN([AM_MISSING_HAS_RUN], [ +test x"${MISSING+set}" = xset || \ + MISSING="\${SHELL} `CDPATH=: && cd $ac_aux_dir && pwd`/missing" +dnl Use eval to expand $SHELL +if eval "$MISSING --run :"; then + am_missing_run="$MISSING --run " else - $1="$3/missing $2" - AC_MSG_RESULT(missing) + am_missing_run= + am_backtick='`' + AC_MSG_WARN([${am_backtick}missing' script is too old or missing]) fi -AC_SUBST($1)]) +]) + +dnl See how the compiler implements dependency checking. +dnl Usage: +dnl AM_DEPENDENCIES(NAME) +dnl NAME is "CC", "CXX" or "OBJC". + +dnl We try a few techniques and use that to set a single cache variable. + +AC_DEFUN(AM_DEPENDENCIES,[ +AC_REQUIRE([AM_SET_DEPDIR]) +AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS]) +ifelse([$1],CC,[ +AC_REQUIRE([AC_PROG_CC]) +AC_REQUIRE([AC_PROG_CPP]) +depcc="$CC" +depcpp="$CPP"],[$1],CXX,[ +AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([AC_PROG_CXXCPP]) +depcc="$CXX" +depcpp="$CXXCPP"],[$1],OBJC,[ +am_cv_OBJC_dependencies_compiler_type=gcc],[ +AC_REQUIRE([AC_PROG_][$1]) +depcc="$[$1]" +depcpp=""]) +AC_MSG_CHECKING([dependency style of $depcc]) +AC_CACHE_VAL(am_cv_[$1]_dependencies_compiler_type,[ +if test -z "$AMDEP"; then + echo '#include "conftest.h"' > conftest.c + echo 'int i;' > conftest.h + + am_cv_[$1]_dependencies_compiler_type=none + for depmode in `sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < "$am_depcomp"`; do + case "$depmode" in + nosideeffect) + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + none) break ;; + esac + if depmode="$depmode" \ + source=conftest.c object=conftest.o \ + depfile=conftest.Po tmpdepfile=conftest.TPo \ + $SHELL $am_depcomp $depcc -c conftest.c 2>/dev/null && + grep conftest.h conftest.Po > /dev/null 2>&1; then + am_cv_[$1]_dependencies_compiler_type="$depmode" + break + fi + done + + rm -f conftest.* +else + am_cv_[$1]_dependencies_compiler_type=none +fi +]) +AC_MSG_RESULT($am_cv_[$1]_dependencies_compiler_type) +[$1]DEPMODE="depmode=$am_cv_[$1]_dependencies_compiler_type" +AC_SUBST([$1]DEPMODE) +]) + +dnl Choose a directory name for dependency files. +dnl This macro is AC_REQUIREd in AM_DEPENDENCIES + +AC_DEFUN(AM_SET_DEPDIR,[ +if test -d .deps || mkdir .deps 2> /dev/null || test -d .deps; then + DEPDIR=.deps +else + DEPDIR=_deps +fi +AC_SUBST(DEPDIR) +]) + +AC_DEFUN(AM_DEP_TRACK,[ +AC_ARG_ENABLE(dependency-tracking, +[ --disable-dependency-tracking Speeds up one-time builds + --enable-dependency-tracking Do not reject slow dependency extractors]) +if test "x$enable_dependency_tracking" = xno; then + AMDEP="#" +else + am_depcomp="$ac_aux_dir/depcomp" + if test ! -f "$am_depcomp"; then + AMDEP="#" + else + AMDEP= + fi +fi +AC_SUBST(AMDEP) +if test -z "$AMDEP"; then + AMDEPBACKSLASH='\' +else + AMDEPBACKSLASH= +fi +pushdef([subst], defn([AC_SUBST])) +subst(AMDEPBACKSLASH) +popdef([subst]) +]) + +dnl Generate code to set up dependency tracking. +dnl This macro should only be invoked once -- use via AC_REQUIRE. +dnl Usage: +dnl AM_OUTPUT_DEPENDENCY_COMMANDS + +dnl +dnl This code is only required when automatic dependency tracking +dnl is enabled. FIXME. This creates each `.P' file that we will +dnl need in order to bootstrap the dependency handling code. +AC_DEFUN(AM_OUTPUT_DEPENDENCY_COMMANDS,[ +AC_OUTPUT_COMMANDS([ +test x"$AMDEP" != x"" || +for mf in $CONFIG_FILES; do + case "$mf" in + Makefile) dirpart=.;; + */Makefile) dirpart=`echo "$mf" | sed -e 's|/[^/]*$||'`;; + *) continue;; + esac + grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue + # Extract the definition of DEP_FILES from the Makefile without + # running `make'. + DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` + test -z "$DEPDIR" && continue + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n -e '/^U = / s///p' < "$mf"` + test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" + # We invoke sed twice because it is the simplest approach to + # changing $(DEPDIR) to its actual value in the expansion. + for file in `sed -n -e ' + /^DEP_FILES = .*\\\\$/ { + s/^DEP_FILES = // + :loop + s/\\\\$// + p + n + /\\\\$/ b loop + p + } + /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`echo "$file" | sed -e 's|/[^/]*$||'` + $ac_aux_dir/mkinstalldirs "$dirpart/$fdir" > /dev/null 2>&1 + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done +done +], [AMDEP="$AMDEP" +ac_aux_dir="$ac_aux_dir"])]) # Like AC_CONFIG_HEADER, but automatically create stamp file. @@ -1105,7 +1290,7 @@ else fi]) -# serial 40 AC_PROG_LIBTOOL +# serial 42 AC_PROG_LIBTOOL AC_DEFUN(AC_PROG_LIBTOOL, [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl @@ -1113,12 +1298,14 @@ AC_DEFUN(AC_PROG_LIBTOOL, AC_CACHE_SAVE # Actually configure libtool. ac_aux_dir is where install-sh is found. -CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ -LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ -LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \ -DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \ +AR="$AR" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ +MAGIC="$MAGIC" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ +AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ +objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ +deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \ ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ -$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \ +$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $lt_target \ || AC_MSG_ERROR([libtool configure failed]) # Reload cache, that may have been modified by ltconfig @@ -1143,18 +1330,33 @@ AC_REQUIRE([AC_ENABLE_STATIC])dnl AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_REQUIRE([AC_PROG_RANLIB])dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl AC_REQUIRE([AC_PROG_NM])dnl AC_REQUIRE([AC_PROG_LN_S])dnl +AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl +AC_REQUIRE([AC_OBJEXT])dnl +AC_REQUIRE([AC_EXEEXT])dnl dnl +# Only perform the check for file, if the check method requires it +case "$deplibs_check_method" in +file_magic*) + if test "$file_magic_cmd" = '${MAGIC}'; then + AC_PATH_MAGIC + fi + ;; +esac + case "$target" in NONE) lt_target="$host" ;; *) lt_target="$target" ;; esac +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) + # Check for any special flags to pass to ltconfig. libtool_flags="--cache-file=$cache_file" test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" @@ -1171,6 +1373,12 @@ AC_ARG_ENABLE(libtool-lock, test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" +AC_ARG_WITH(pic, + [ --with-pic try to use only PIC/non-PIC objects [default=use both]], + pic_mode="$withval", pic_mode=default) +test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic" +test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic" + # Some flags need to be propagated to the compiler or linker for good # libtool support. case "$lt_target" in @@ -1198,7 +1406,10 @@ case "$lt_target" in SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, - [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])]) + [AC_LANG_SAVE + AC_LANG_C + AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_RESTORE]) if test x"$lt_cv_cc_needs_belf" != x"yes"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS="$SAVE_CFLAGS" @@ -1210,8 +1421,31 @@ ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], AC_CHECK_TOOL(DLLTOOL, dlltool, false) AC_CHECK_TOOL(AS, as, false) AC_CHECK_TOOL(OBJDUMP, objdump, false) + + # recent cygwin and mingw systems supply a stub DllMain which the user + # can override, but on older systems we have to supply one + AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, + [AC_TRY_LINK([], + [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); + DllMain (0, 0, 0);], + [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) + + case "$lt_target/$CC" in + *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) + # old mingw systems require "-dll" to link a DLL, while more recent ones + # require "-mdll" + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -mdll" + AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, + [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) + CFLAGS="$SAVE_CFLAGS" ;; + *-*-cygwin*) + # cygwin systems need to pass --dll to the linker, and not link + # crt.o which will require a WinMain@16 definition. + lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; + esac ;; -]) + ]) esac ]) @@ -1321,6 +1555,83 @@ enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl AC_ENABLE_FAST_INSTALL(no)]) + +# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library +AC_DEFUN(AC_PATH_TOOL_PREFIX, +[AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC, +[case "$MAGIC" in + /*) + lt_cv_path_MAGIC="$MAGIC" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_MAGIC="$MAGIC" # Let the user override the test with a dos path. + ;; + *) + ac_save_MAGIC="$MAGIC" + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="ifelse([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case "$deplibs_check_method" in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC="$lt_cv_path_MAGIC" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + egrep "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$ac_save_ifs" + MAGIC="$ac_save_MAGIC" + ;; +esac]) +MAGIC="$lt_cv_path_MAGIC" +if test -n "$MAGIC"; then + AC_MSG_RESULT($MAGIC) +else + AC_MSG_RESULT(no) +fi +]) + + +# AC_PATH_MAGIC - find a file program which can recognise a shared library +AC_DEFUN(AC_PATH_MAGIC, +[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl +AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) +if test -z "$lt_cv_path_MAGIC"; then + if test -n "$ac_tool_prefix"; then + AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) + else + MAGIC=: + fi +fi +]) + + # AC_PROG_LD - find the path to the GNU or non-GNU linker AC_DEFUN(AC_PROG_LD, [AC_ARG_WITH(gnu-ld, @@ -1333,7 +1644,13 @@ ac_prog=ld if test "$ac_cv_prog_gcc" = yes; then # Check if gcc -print-prog-name=ld gives a path. AC_MSG_CHECKING([for ld used by GCC]) - ac_prog=`($CC -print-prog-name=ld) 2>&5` + case $lt_target in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac case "$ac_prog" in # Accept absolute paths. changequote(,)dnl @@ -1400,8 +1717,139 @@ if $LD -v 2>&1 &5; then else ac_cv_prog_gnu_ld=no fi]) +with_gnu_ld=$ac_cv_prog_gnu_ld +]) + +# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker +# -- PORTME Some linkers may need a different reload flag. +AC_DEFUN(AC_PROG_LD_RELOAD_FLAG, +[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, +[lt_cv_ld_reload_flag='-r']) +reload_flag=$lt_cv_ld_reload_flag +test -n "$reload_flag" && reload_flag=" $reload_flag" +]) + +# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies +# -- PORTME fill in with the dynamic library characteristics +AC_DEFUN(AC_DEPLIBS_CHECK_METHOD, +[AC_CACHE_CHECK([how to recognise dependant libraries], +lt_cv_deplibs_check_method, +[lt_cv_file_magic_cmd='${MAGIC}' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [regex]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given egrep regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case "$host_os" in +aix4* | beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi4*) + changequote(,)dnl + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' + changequote([, ])dnl + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin* | mingw*) + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='${OBJDUMP} -f' + ;; + +freebsd*) + case "$version_type" in + freebsd-elf*) + lt_cv_deplibs_check_method=pass_all + ;; + esac + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +irix5* | irix6*) + case "$host_os" in + irix5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" + ;; + *) + case "$LD" in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + # this will be overridden with pass_all, but let us keep it just in case + changequote(,)dnl + lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1" + changequote([, ])dnl + ;; + esac + lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux-gnu*) + case "$host_cpu" in + alpha* | i*86 | powerpc* | sparc* ) + lt_cv_deplibs_check_method=pass_all ;; + *) + # glibc up to 2.1.1 does not perform some relocations on ARM + changequote(,)dnl + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; + changequote([, ])dnl + esac + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + +osf3* | osf4* | osf5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' + lt_cv_file_magic_test_file=/shlib/libc.so + lt_cv_deplibs_check_method=pass_all + ;; + +sco3.2v5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + lt_cv_file_magic_test_file=/lib/libc.so + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + case "$host_vendor" in + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + motorola) + changequote(,)dnl + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' + changequote([, ])dnl + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + esac + ;; +esac +]) +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method ]) + # AC_PROG_NM - find the path to a BSD-compatible name lister AC_DEFUN(AC_PROG_NM, [AC_MSG_CHECKING([for BSD-compatible nm]) @@ -1469,7 +1917,7 @@ AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; esac LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la - INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) + INCLTDL=ifelse($#,1,-I$1,['-I${top_srcdir}/libltdl']) ]) # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for @@ -1493,7 +1941,7 @@ AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl if test x"$enable_ltdl_install" = x"yes"; then ac_configure_args="$ac_configure_args --enable-ltdl-install" LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la - INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) + INCLTDL=ifelse($#,1,-I$1,['-I${top_srcdir}/libltdl']) else ac_configure_args="$ac_configure_args --enable-ltdl-install=no" LIBLTDL="-lltdl" diff --git a/ghc/rts/gmp/mp.h b/ghc/rts/gmp/mp.h index 774e6e5..ffab4cb 100644 --- a/ghc/rts/gmp/mp.h +++ b/ghc/rts/gmp/mp.h @@ -94,6 +94,7 @@ typedef __mpz_struct MINT; extern "C" { #endif +#define mp_set_memory_functions __gmp_set_memory_functions void mp_set_memory_functions _PROTO ((void *(*) (size_t), void *(*) (void *, size_t, size_t), void (*) (void *, size_t))); diff --git a/ghc/rts/gmp/mpn/alpha/ev6/addmul_1.asm b/ghc/rts/gmp/mpn/alpha/ev6/addmul_1.asm index dde187c..2f58862 100644 --- a/ghc/rts/gmp/mpn/alpha/ev6/addmul_1.asm +++ b/ghc/rts/gmp/mpn/alpha/ev6/addmul_1.asm @@ -253,7 +253,7 @@ C ____ UNROLLED LOOP SOFTWARE PIPELINE STARTUP ____ umulh r19, r1, r12 C U1 cmpult r23, r15, r20 C L0 lo add => carry addq r23, r14, r23 C U0 hi add => answer - ldq r0, (r17) C L1 + ldq r0, 0(r17) C L1 mulq r19, r2, r13 C U1 cmpult r23, r14, r21 C L0 hi add => carry addq r8, r20, r8 C U0 hi mul + carry @@ -274,7 +274,7 @@ $Loop: bis r31, r31, r31 C U1 mt cmpult r22, r8, r21 C L0 hi add => carry addq r10, r20, r10 C U0 hi mul + carry - ldq r4, (r16) C L1 + ldq r4, 0(r16) C L1 bis r31, r31, r31 C U1 mt addq r5, r11, r23 C L0 lo + acc @@ -363,7 +363,7 @@ $Loop: umulh r19, r0, r10 C U1 addq r6, r13, r6 C L0 lo + acc - stq r22, (r16) C L0 + stq r22, 0(r16) C L0 stq r23, 8(r16) C L1 bis r31, r31, r31 C L0 st slosh @@ -389,7 +389,7 @@ $Loop: umulh r19, r1, r12 C U1 cmpult r23, r15, r20 C L0 lo add => carry addq r23, r14, r23 C U0 hi add => answer - ldq r0, (r17) C L1 + ldq r0, 0(r17) C L1 mulq r19, r2, r13 C U1 cmpult r23, r14, r21 C L0 hi add => carry @@ -415,7 +415,7 @@ C ____ UNROLLED LOOP SOFTWARE PIPELINE FINISH ____ $Lend: cmpult r22, r8, r21 C L0 hi add => carry addq r10, r20, r10 C U0 hi mul + carry - ldq r4, (r16) C L1 + ldq r4, 0(r16) C L1 addq r5, r11, r23 C L0 lo + acc addq r10, r21, r10 C L0 hi mul + carry ldq r5, 8(r16) C L1 @@ -457,7 +457,7 @@ $Lend: addq r23, r10, r23 C U0 hi add => answer cmpult r23, r10, r21 C L0 hi add => carry addq r12, r20, r12 C U0 hi mul + carry - stq r22, (r16) C L0 + stq r22, 0(r16) C L0 stq r23, 8(r16) C L1 addq r12, r21, r0 C U0 hi mul + carry diff --git a/ghc/rts/gmp/mpn/generic/bz_divrem_n.c b/ghc/rts/gmp/mpn/generic/bz_divrem_n.c index 9d2df1b..d234b22 100644 --- a/ghc/rts/gmp/mpn/generic/bz_divrem_n.c +++ b/ghc/rts/gmp/mpn/generic/bz_divrem_n.c @@ -35,11 +35,9 @@ MA 02111-1307, USA. */ http://www.mpi-sb.mpg.de/~ziegler/TechRep.ps.gz */ -static mp_limb_t mpn_bz_div_3_halves_by_2 _PROTO ((mp_ptr, mp_ptr, mp_srcptr, - mp_size_t, mp_ptr)); +static mp_limb_t mpn_bz_div_3_halves_by_2 + _PROTO ((mp_ptr qp, mp_ptr np, mp_srcptr dp, mp_size_t n)); -static mp_limb_t mpn_bz_divrem_aux _PROTO ((mp_ptr, mp_ptr, mp_srcptr, - mp_size_t, mp_ptr)); /* mpn_bz_divrem_n(n) calls 2*mul(n/2)+2*div(n/2), thus to be faster than div(n) = 4*div(n/2), we need mul(n/2) to be faster than the classic way, @@ -73,6 +71,7 @@ unused_mpn_divrem (qp, qxn, np, nn, dp, dn) } #endif + /* mpn_bz_divrem_n - Implements algorithm of page 8 in [1]: divides (np,2n) by (dp,n) and puts the quotient in (qp,n), the remainder in (np,n). Returns most significant limb of the quotient, which is 0 or 1. @@ -89,135 +88,66 @@ mpn_bz_divrem_n (qp, np, dp, n) mp_size_t n; #endif { - mp_limb_t qhl = 0; - if (mpn_cmp (np + n, dp, n) >= 0) - { - qhl = 1; - mpn_sub_n (np + n, np + n, dp, n); - abort (); - } - if (n % 2 != 0) - { - /* divide (2n - 2) most significant limbs from np by those (n - 1) from dp */ - if (n < BZ_THRESHOLD) - qhl += mpn_sb_divrem_mn (qp + 1, np + 2, 2 * (n - 1), dp + 1, n - 1); - else - qhl += mpn_bz_divrem_n (qp + 1, np + 2, dp + 1, n - 1); - /* now (qp + 1, n - 1) contains the quotient of (np + 2, 2n - 2) by - (dp + 1, n - 1) and (np + 2, n - 1) contains the remainder */ - if (mpn_sub_1 (np + n, np + n, 1, - mpn_submul_1 (np + 1, qp + 1, n - 1, dp[0]))) - { - /* quotient too large */ - qhl -= mpn_sub_1 (qp + 1, qp + 1, n - 1, 1L); - if (mpn_add_n (np + 1, np + 1, dp, n) == 0) - { /* still too large */ - qhl -= mpn_sub_1 (qp + 1, qp + 1, n - 1, 1L); - mpn_add_n (np + 1, np + 1, dp, n); /* always carry here */ - } - } - /* now divide (np, n + 1) by (dp, n) */ - qhl += mpn_add_1 (qp + 1, qp + 1, n - 1, - mpn_sb_divrem_mn (qp, np, n + 1, dp, n)); - } - else - { - mp_ptr tmp; - mp_size_t n2 = n/2; - TMP_DECL (marker); - TMP_MARK (marker); - tmp = (mp_ptr) TMP_ALLOC (n * BYTES_PER_MP_LIMB); - qhl = mpn_bz_div_3_halves_by_2 (qp + n2, np + n2, dp, n2, tmp); - qhl += mpn_add_1 (qp + n2, qp + n2, n2, - mpn_bz_div_3_halves_by_2 (qp, np, dp, n2, tmp)); - TMP_FREE (marker); - } - return qhl; -} - -/* Like mpn_bz_divrem_n, but without memory allocation. Also - assumes mpn_cmp (np + n, dp, n) < 0 */ - -static mp_limb_t -#if __STDC__ -mpn_bz_divrem_aux (mp_ptr qp, mp_ptr np, mp_srcptr dp, mp_size_t n, mp_ptr tmp) -#else -mpn_bz_divrem_aux (qp, np, dp, n, tmp) - mp_ptr qp; - mp_ptr np; - mp_srcptr dp; - mp_size_t n; - mp_ptr tmp; -#endif -{ - mp_limb_t qhl; + mp_limb_t qhl, cc; if (n % 2 != 0) { - /* divide (2n - 2) most significant limbs from np by those (n - 1) from dp */ - qhl = mpn_bz_divrem_aux (qp + 1, np + 2, dp + 1, n - 1, tmp); - /* now (qp + 1, n - 1) contains the quotient of (np + 2, 2n - 2) by - (dp + 1, n - 1) and (np + 2, n - 1) contains the remainder */ - if (mpn_sub_1 (np + n, np + n, 1, - mpn_submul_1 (np + 1, qp + 1, n - 1, dp[0]))) - { - /* quotient too large */ - qhl -= mpn_sub_1 (qp + 1, qp + 1, n - 1, 1L); - if (mpn_add_n (np + 1, np + 1, dp, n) == 0) - { /* still too large */ - qhl -= mpn_sub_1 (qp + 1, qp + 1, n - 1, 1L); - mpn_add_n (np + 1, np + 1, dp, n); /* always carry here */ - } - } - /* now divide (np, n + 1) by (dp, n) */ + qhl = mpn_bz_divrem_n (qp + 1, np + 2, dp + 1, n - 1); + cc = mpn_submul_1 (np + 1, qp + 1, n - 1, dp[0]); + cc = mpn_sub_1 (np + n, np + n, 1, cc); + if (qhl) cc += mpn_sub_1 (np + n, np + n, 1, dp[0]); + while (cc) + { + qhl -= mpn_sub_1 (qp + 1, qp + 1, n - 1, (mp_limb_t) 1); + cc -= mpn_add_n (np + 1, np + 1, dp, n); + } qhl += mpn_add_1 (qp + 1, qp + 1, n - 1, - mpn_sb_divrem_mn (qp, np, n + 1, dp, n)); + mpn_sb_divrem_mn (qp, np, n + 1, dp, n)); } else { mp_size_t n2 = n/2; - qhl = mpn_bz_div_3_halves_by_2 (qp + n2, np + n2, dp, n2, tmp); + qhl = mpn_bz_div_3_halves_by_2 (qp + n2, np + n2, dp, n2); qhl += mpn_add_1 (qp + n2, qp + n2, n2, - mpn_bz_div_3_halves_by_2 (qp, np, dp, n2, tmp)); + mpn_bz_div_3_halves_by_2 (qp, np, dp, n2)); } return qhl; } + /* divides (np, 3n) by (dp, 2n) and puts the quotient in (qp, n), the remainder in (np, 2n) */ static mp_limb_t #if __STDC__ -mpn_bz_div_3_halves_by_2 (mp_ptr qp, mp_ptr np, mp_srcptr dp, mp_size_t n, - mp_ptr tmp) +mpn_bz_div_3_halves_by_2 (mp_ptr qp, mp_ptr np, mp_srcptr dp, mp_size_t n) #else -mpn_bz_div_3_halves_by_2 (qp, np, dp, n, tmp) +mpn_bz_div_3_halves_by_2 (qp, np, dp, n) mp_ptr qp; mp_ptr np; mp_srcptr dp; mp_size_t n; - mp_ptr tmp; #endif { - mp_size_t twon = n + n; - mp_limb_t qhl; + mp_size_t twon = n + n; + mp_limb_t qhl, cc; + mp_ptr tmp; + TMP_DECL (marker); + TMP_MARK (marker); if (n < BZ_THRESHOLD) qhl = mpn_sb_divrem_mn (qp, np + n, twon, dp + n, n); else - qhl = mpn_bz_divrem_aux (qp, np + n, dp + n, n, tmp); - /* q = (qp, n), c = (np + n, n) with the notations of [1] */ + qhl = mpn_bz_divrem_n (qp, np + n, dp + n, n); + tmp = (mp_ptr) TMP_ALLOC (twon * BYTES_PER_MP_LIMB); mpn_mul_n (tmp, qp, dp, n); - if (qhl != 0) - mpn_add_n (tmp + n, tmp + n, dp, n); - if (mpn_sub_n (np, np, tmp, twon)) /* R = (np, 2n) */ + cc = mpn_sub_n (np, np, tmp, twon); + TMP_FREE (marker); + if (qhl) cc += mpn_sub_n (np + n, np + n, dp, n); + while (cc) { - qhl -= mpn_sub_1 (qp, qp, n, 1L); - if (mpn_add_n (np, np, dp, twon) == 0) - { /* qp still too large */ - qhl -= mpn_sub_1 (qp, qp, n, 1L); - mpn_add_n (np, np, dp, twon); /* always carry here */ - } + qhl -= mpn_sub_1 (qp, qp, n, (mp_limb_t) 1); + cc -= mpn_add_n (np, np, dp, twon); } return qhl; } diff --git a/ghc/rts/gmp/mpn/x86/k6/mmx/popham.asm b/ghc/rts/gmp/mpn/x86/k6/mmx/popham.asm index 70efb80..2c61925 100644 --- a/ghc/rts/gmp/mpn/x86/k6/mmx/popham.asm +++ b/ghc/rts/gmp/mpn/x86/k6/mmx/popham.asm @@ -67,7 +67,7 @@ MULFUNC_PROLOGUE(mpn_popcount mpn_hamdist) ifdef(`PIC',,` dnl non-PIC - .section .rodata + DATA ALIGN(8) define(LS, diff --git a/ghc/rts/gmp/mpn/x86/k7/mmx/popham.asm b/ghc/rts/gmp/mpn/x86/k7/mmx/popham.asm index 68e049a..fa7c8c0 100644 --- a/ghc/rts/gmp/mpn/x86/k7/mmx/popham.asm +++ b/ghc/rts/gmp/mpn/x86/k7/mmx/popham.asm @@ -96,7 +96,7 @@ MULFUNC_PROLOGUE(mpn_popcount mpn_hamdist) ifdef(`PIC',,` dnl non-PIC - .section .rodata + DATA ALIGN(8) define(LS, diff --git a/ghc/rts/gmp/mpz/fdiv_r_2exp.c b/ghc/rts/gmp/mpz/fdiv_r_2exp.c index d0cd039..081ce19 100644 --- a/ghc/rts/gmp/mpz/fdiv_r_2exp.c +++ b/ghc/rts/gmp/mpz/fdiv_r_2exp.c @@ -1,7 +1,7 @@ /* mpz_fdiv_r_2exp -- Divide a integer by 2**CNT and produce a remainder. -Copyright (C) 1991, 1993, 1994, 1995, 1998, 1999 Free Software Foundation, -Inc. +Copyright (C) 1991, 1993, 1994, 1995, 1998, 1999, 2000 Free Software +Foundation, Inc. This file is part of the GNU MP Library. @@ -83,10 +83,13 @@ mpz_fdiv_r_2exp (res, in, cnt) { /* Result should be 2^CNT - RES */ mpz_t tmp; + TMP_DECL (marker); + TMP_MARK (marker); MPZ_TMP_INIT (tmp, cnt/BITS_PER_MP_LIMB + 2); mpz_set_ui (tmp, 1L); mpz_mul_2exp (tmp, tmp, cnt); mpz_sub (res, tmp, res); + TMP_FREE (marker); } } diff --git a/ghc/rts/gmp/mpz/lcm.c b/ghc/rts/gmp/mpz/lcm.c index ca8c15c..7495882 100644 --- a/ghc/rts/gmp/mpz/lcm.c +++ b/ghc/rts/gmp/mpz/lcm.c @@ -1,6 +1,6 @@ /* mpz/lcm.c: Calculate the least common multiple of two integers. -Copyright (C) 1996 Free Software Foundation, Inc. +Copyright (C) 1996, 2000 Free Software Foundation, Inc. This file is part of the GNU MP Library. @@ -37,6 +37,9 @@ mpz_lcm (r, u, v) { mpz_t g; mp_size_t usize, vsize, size; + TMP_DECL (marker); + + TMP_MARK (marker); usize = ABS (SIZ (u)); vsize = ABS (SIZ (v)); @@ -53,4 +56,6 @@ mpz_lcm (r, u, v) mpz_gcd (g, u, v); mpz_divexact (g, u, g); mpz_mul (r, g, v); + + TMP_FREE (marker); } diff --git a/ghc/rts/gmp/mpz/pprime_p.c b/ghc/rts/gmp/mpz/pprime_p.c index 0217d8f..82eb678 100644 --- a/ghc/rts/gmp/mpz/pprime_p.c +++ b/ghc/rts/gmp/mpz/pprime_p.c @@ -181,8 +181,8 @@ mpz_millerrabin (n, reps) mpz_powm (y, x, nm1, n); if (mpz_cmp_ui (y, 1L) != 0) { - return 0; TMP_FREE (marker); + return 0; } MPZ_TMP_INIT (q, SIZ (n)); diff --git a/ghc/rts/gmp/mpz/urandomm.c b/ghc/rts/gmp/mpz/urandomm.c index aa57784..69e1bae 100644 --- a/ghc/rts/gmp/mpz/urandomm.c +++ b/ghc/rts/gmp/mpz/urandomm.c @@ -39,6 +39,9 @@ mpz_urandomm (rop, rstate, n) mp_ptr tp; mp_size_t nbits, size; int count; + TMP_DECL (marker); + + TMP_MARK (marker); /* FIXME: Should check for n == 0 and report error */ @@ -70,4 +73,6 @@ mpz_urandomm (rop, rstate, n) while (mpz_cmp (t, p) >= 0); mpz_mod (rop, t, n); + + TMP_FREE (marker); } diff --git a/ghc/rts/gmp/stamp-vti b/ghc/rts/gmp/stamp-vti index 5ac4cb8..e318618 100644 --- a/ghc/rts/gmp/stamp-vti +++ b/ghc/rts/gmp/stamp-vti @@ -1,3 +1,3 @@ -@set UPDATED 3 August 2000 -@set EDITION 3.1 -@set VERSION 3.1 +@set UPDATED 5 October 2000 +@set EDITION 3.1.1 +@set VERSION 3.1.1 diff --git a/ghc/rts/gmp/version.texi b/ghc/rts/gmp/version.texi index 5ac4cb8..e318618 100644 --- a/ghc/rts/gmp/version.texi +++ b/ghc/rts/gmp/version.texi @@ -1,3 +1,3 @@ -@set UPDATED 3 August 2000 -@set EDITION 3.1 -@set VERSION 3.1 +@set UPDATED 5 October 2000 +@set EDITION 3.1.1 +@set VERSION 3.1.1 -- 1.7.10.4