[BACK]Return to NEWS CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gmp

Diff for /OpenXM_contrib/gmp/Attic/NEWS between version 1.1 and 1.1.1.4

version 1.1, 2000/01/10 15:35:21 version 1.1.1.4, 2003/08/25 16:05:54
Line 1 
Line 1 
 NOTEWORTHY CHANGES IN GNU MP IN VERSION 2  Copyright 1996, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
   
   This file is part of the GNU MP Library.
   
   The GNU MP Library is free software; you can redistribute it and/or modify
   it under the terms of the GNU Lesser General Public License as published by
   the Free Software Foundation; either version 2.1 of the License, or (at your
   option) any later version.
   
   The GNU MP Library is distributed in the hope that it will be useful, but
   WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
   or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
   License for more details.
   
   You should have received a copy of the GNU Lesser General Public License
   along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
   the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
   02111-1307, USA.
   
   
   Changes between MP version 4.1.1 and 4.1.2
   
   * Bug fixes.
   
   Changes between MP version 4.1 and 4.1.1
   
   * Bug fixes.
   * New systems supported: NetBSD and OpenBSD sparc64.
   
   Changes between MP version 4.0.1 and 4.1
   
   * Bug fixes.
   * Speed improvements.
   * Upwardly binary compatible with 4.0, 4.0.1, and 3.x versions.
   * Asymptotically fast conversion to/from strings (mpz, mpq, mpn levels), but
     also major speed improvements for tiny operands.
   * mpn_get_str parameter restrictions relaxed.
   * Major speed improvments for HPPA 2.0 systems.
   * Major speed improvments for UltraSPARC systems.
   * Major speed improvments for IA-64 systems (but still sub-optimal code).
   * Extended test suite.
   * mpfr is back, with many bug fixes and portability improvements.
   * New function: mpz_ui_sub.
   * New functions: mpz_export, mpz_import.
   * Optimization for nth root functions (mpz_root, mpz_perfect_power_p).
   * Optimization for extended gcd (mpz_gcdext, mpz_invert, mpn_gcdext).
   * Generalized low-level number format, reserving a `nails' part of each
     limb.  (Please note that this is really experimental; some functions
     are likely to compute garbage when nails are enabled.)
   * Nails-enabled Alpha 21264 assembly code, allowing up to 75% better
     performance.  (Use --enable-nails=4 to enable it.)
   
   Changes between MP version 4.0 and 4.0.1
   
   * Bug fixes.
   
   Changes between MP version 3.1.1 and 4.0
   
   * Bug fixes.
   * Speed improvements.
   * Upwardly binary compatible with 3.x versions.
   * New CPU support: IA-64, Pentium 4.
   * Improved CPU support: 21264, Cray vector systems.
   * Support for all MIPS ABIs: o32, n32, 64.
   * New systems supported: Darwin, SCO, Windows DLLs.
   * New divide-and-conquer square root algorithm.
   * New algorithms chapter in the manual.
   * New malloc reentrant temporary memory method.
   * New C++ class interface by Gerardo Ballabio (beta).
   * Revamped configure, featuring ABI selection.
   * Speed improvements for mpz_powm and mpz_powm_ui (mainly affecting small
     operands).
   * mpz_perfect_power_p now properly recognizes 0, 1, and negative perfect
     powers.
   * mpz_hamdist now supports negative operands.
   * mpz_jacobi now accepts non-positive denominators.
   * mpz_powm now supports negative exponents.
   * mpn_mul_1 operand overlap requirements relaxed.
   * Float input and output uses locale specific decimal point where available.
   * New gmp_printf, gmp_scanf and related functions.
   * New division functions: mpz_cdiv_q_2exp, mpz_cdiv_r_2exp, mpz_divexact_ui.
   * New divisibility tests: mpz_divisible_p, mpz_divisible_ui_p,
     mpz_divisible_2exp_p, mpz_congruent_p, mpz_congruent_ui_p,
     mpz_congruent_2exp_p.
   * New Fibonacci function: mpz_fib2_ui.
   * New Lucas number functions: mpz_lucnum_ui, mpz_lucnum2_ui.
   * Other new integer functions: mpz_cmp_d, mpz_cmpabs_d, mpz_get_d_2exp,
     mpz_init2, mpz_kronecker, mpz_lcm_ui, mpz_realloc2.
   * New rational I/O: mpq_get_str, mpq_inp_str, mpq_out_str, mpq_set_str.
   * Other new rational functions: mpq_abs, mpq_cmp_si, mpq_div_2exp,
     mpq_mul_2exp, mpq_set_f.
   * New float tests: mpf_integer_p, mpf_fits_sint_p, mpf_fits_slong_p,
     mpf_fits_sshort_p, mpf_fits_uint_p, mpf_fits_ulong_p, mpf_fits_ushort_p.
   * Other new float functions: mpf_cmp_d, mpf_get_default_prec, mpf_get_si,
     mpf_get_ui, mpf_get_d_2exp.
   * New random functions: gmp_randinit_default, gmp_randinit_lc_2exp_size.
   * New demo expression string parser (see demos/expr).
   * New preliminary perl interface (see demos/perl).
   * Tuned algorithm thresholds for many more CPUs.
   
   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.
   * Improved `make check' running more tests.
   * Tuned algorithm cutoff points for many machines.  This will improve speed for
     a lot of operations, in some cases by a large amount.
   * Major speed improvments: Alpha 21264.
   * Some speed improvments: Cray vector computers, AMD K6 and Athlon, Intel P5
     and Pentium Pro/II/III.
   * The mpf_get_prec function now works as it did in GMP 2.
   * New utilities for auto-tuning and speed measuring.
   * Multiplication now optionally uses FFT for very large operands.  (To enable
     it, pass --enable-fft to configure.)
   * Support for new systems: Solaris running on x86, FreeBSD 5, HP-UX 11, Cray
     vector computers, Rhapsody, Nextstep/Openstep, MacOS.
   * Support for shared libraries on 32-bit HPPA.
   * New integer functions: mpz_mul_si, mpz_odd_p, mpz_even_p.
   * New Kronecker symbol functions: mpz_kronecker_si, mpz_kronecker_ui,
     mpz_si_kronecker, mpz_ui_kronecker.
   * New rational functions: mpq_out_str, mpq_swap.
   * New float functions: mpf_swap.
   * New mpn functions: mpn_divexact_by3c, mpn_tdiv_qr.
   * New EXPERIMENTAL function layer for accurate floating-point arithmetic, mpfr.
     To try it, pass --enable-mpfr to configure.  See the mpfr subdirectory for
     more information; it is not documented in the main GMP manual.
   
   Changes between MP version 3.0 and 3.0.1
   
   * Memory leaks in gmp_randinit and mpz_probab_prime_p fixed.
   * Documentation for gmp_randinit fixed.  Misc documentation errors fixed.
   
   Changes between MP version 2.0 and 3.0
   
   * Source level compatibility with past releases (except mpn_gcd).
   * Bug fixes.
   * Much improved speed thanks to both host independent and host dependent
     optimizations.
   * Switch to autoconf/automake/libtool.
   * Support for building libgmp as a shared library.
   * Multiplication and squaring using 3-way Toom-Cook.
   * Division using the Burnikel-Ziegler method.
   * New functions computing binomial coefficients: mpz_bin_ui, mpz_bin_uiui.
   * New function computing Fibonacci numbers: mpz_fib_ui.
   * New random number generators: mpf_urandomb, mpz_rrandomb, mpz_urandomb,
     mpz_urandomm, gmp_randclear, gmp_randinit, gmp_randinit_lc_2exp, gmp_randseed,
     gmp_randseed_ui.
   * New function for quickly extracting limbs: mpz_getlimbn.
   * New functions performing integer size tests: mpz_fits_sint_p,
     mpz_fits_slong_p, mpz_fits_sshort_p, mpz_fits_uint_p, mpz_fits_ulong_p,
     mpz_fits_ushort_p.
   * New mpf functions: mpf_ceil, mpf_floor, mpf_pow_ui, mpf_trunc.
   * New mpq function: mpq_set_d.
   * New mpz functions: mpz_addmul_ui, mpz_cmpabs, mpz_cmpabs_ui, mpz_lcm,
     mpz_nextprime, mpz_perfect_power_p, mpz_remove, mpz_root, mpz_swap,
     mpz_tdiv_ui, mpz_tstbit, mpz_xor.
   * New mpn function: mpn_divexact_by3.
   * New CPU support: DEC Alpha 21264, AMD K6 and Athlon, HPPA 2.0 and 64,
     Intel Pentium Pro and Pentium-II/III, Sparc 64, PowerPC 64.
   * Almost 10 times faster mpz_invert and mpn_gcdext.
   * The interface of mpn_gcd has changed.
   * Better support for MIPS R4x000 and R5000 under Irix 6.
   * Improved support for SPARCv8 and SPARCv9 processors.
   
   Changes between MP version 2.0 and 2.0.2
   
   * Many bug fixes.
   
   Changes between MP version 1.3.2 and 2.0
   
 * Division routines in the mpz class have changed.  There are three classes of  * Division routines in the mpz class have changed.  There are three classes of
   functions, that rounds the quotient to -infinity, 0, and +infinity,    functions, that rounds the quotient to -infinity, 0, and +infinity,
   respectively.  The first class of functions have names that begin with    respectively.  The first class of functions have names that begin with
Line 38  NOTEWORTHY CHANGES IN GNU MP IN VERSION 2
Line 210  NOTEWORTHY CHANGES IN GNU MP IN VERSION 2
 * Uses GNU configure.  This makes it possible to choose target architecture  * Uses GNU configure.  This makes it possible to choose target architecture
   and CPU variant, and to compile into a separate object directory.    and CPU variant, and to compile into a separate object directory.
 * Carefully optimized assembly for important inner loops.  Support for DEC  * Carefully optimized assembly for important inner loops.  Support for DEC
   Alpha, Amd 29000, HPPA 1.0 and 1.1, Intel pentium and generic x86, Intel    Alpha, Amd 29000, HPPA 1.0 and 1.1, Intel Pentium and generic x86, Intel
   i960, Motorola MC68000, MC68020, MC88100, and MC88110, Motorola/IBM    i960, Motorola MC68000, MC68020, MC88100, and MC88110, Motorola/IBM
   PowerPC, National NS32000, IBM POWER, MIPS R3000, R4000, SPARCv7,    PowerPC, National NS32000, IBM POWER, MIPS R3000, R4000, SPARCv7,
   SuperSPARC, generic SPARCv8, and DEC VAX.  Some support also for ARM,    SuperSPARC, generic SPARCv8, and DEC VAX.  Some support also for ARM,
Line 54  INCOMPATIBILITIES BETWEEN GMP 1 AND GMP 2
Line 226  INCOMPATIBILITIES BETWEEN GMP 1 AND GMP 2
 * mpz division functions round differently.  * mpz division functions round differently.
 * mpz mod functions now really compute mod.  * mpz mod functions now really compute mod.
 * mpz_powm and mpz_powm_ui now really use mod for reduction.  * mpz_powm and mpz_powm_ui now really use mod for reduction.
   
   
   
   ----------------
   Local variables:
   mode: text
   fill-column: 76
   End:

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.1.1.4

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>