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

mercurial at gmplib.org mercurial at gmplib.org
Wed Nov 28 00:06:58 CET 2012


details:   /var/hg/gmp/rev/77978a129861
changeset: 15141:77978a129861
user:      Torbjorn Granlund <tege at gmplib.org>
date:      Tue Nov 27 23:51:39 2012 +0100
description:
Clarify mpz_init2 operation.

details:   /var/hg/gmp/rev/b90dedcdbb60
changeset: 15142:b90dedcdbb60
user:      Torbjorn Granlund <tege at gmplib.org>
date:      Wed Nov 28 00:06:08 2012 +0100
description:
(arm*-*-*): Pass -marm to deal with compilers defaulting to thumb code.

details:   /var/hg/gmp/rev/1da580315db3
changeset: 15143:1da580315db3
user:      Torbjorn Granlund <tege at gmplib.org>
date:      Wed Nov 28 00:06:46 2012 +0100
description:
Add more items.

details:   /var/hg/gmp/rev/c7b88ed68ca7
changeset: 15144:c7b88ed68ca7
user:      Torbjorn Granlund <tege at gmplib.org>
date:      Wed Nov 28 00:06:54 2012 +0100
description:
*** empty log message ***

diffstat:

 ChangeLog    |   5 +++++
 NEWS         |  13 +++++++++----
 configure.in |   1 +
 doc/gmp.texi |  11 +++++++----
 4 files changed, 22 insertions(+), 8 deletions(-)

diffs (75 lines):

diff -r 34fea7a40b3a -r c7b88ed68ca7 ChangeLog
--- a/ChangeLog	Mon Nov 26 18:59:05 2012 +0100
+++ b/ChangeLog	Wed Nov 28 00:06:54 2012 +0100
@@ -1,3 +1,8 @@
+2012-11-28  Torbjorn Granlund  <tege at gmplib.org>
+
+	* configure.in (arm*-*-*): Pass -marm to deal with compilers defaulting
+	to thumb code.
+
 2012-11-26  Torbjorn Granlund  <tege at gmplib.org>
 
 	* tests/cxx/t-ops2.cc (checkz): Reduce huge numbers to avoid vax
diff -r 34fea7a40b3a -r c7b88ed68ca7 NEWS
--- a/NEWS	Mon Nov 26 18:59:05 2012 +0100
+++ b/NEWS	Wed Nov 28 00:06:54 2012 +0100
@@ -36,18 +36,23 @@
   * The mpz_powm_sec function now uses side-channel silent division for
     converting into Montgomery residues.
 
+  * The fat binary mechanism is now more robust in its CPU recognition.
+
   MISC
   * In C++, the conversions mpq_class->mpz_class, mpf_class->mpz_class and
     mpf_class->mpq_class are now explicit.
 
-  * Includes "mini-gmp", a small, portable, but less efficient,
-    implementation of a subset of GMP's mpn and mpz interfaces. Used
-    in GMP bootstrap, but it can also be bundled with applications as
-    a fallback when the real GMP library is unavailable.
+  * Includes "mini-gmp", a small, portable, but less efficient, implementation
+    of a subset of GMP's mpn and mpz interfaces. Used in GMP bootstrap, but it
+    can also be bundled with applications as a fallback when the real GMP
+    library is unavailable.
 
   * The ABIs under AIX are no longer called aix32 and aix64, but mode64 and 32.
     This is more consistent with other powerpc systems.
 
+  * The coverage of the testsuite has been improved, using the lcov tool.  See
+    also http://gmplib.org/devel/lcov/.
+
 
 Changes between GMP version 5.0.4 and 5.0.5
 
diff -r 34fea7a40b3a -r c7b88ed68ca7 configure.in
--- a/configure.in	Mon Nov 26 18:59:05 2012 +0100
+++ b/configure.in	Wed Nov 28 00:06:54 2012 +0100
@@ -566,6 +566,7 @@
   arm*-*-*)
     gcc_cflags="$gcc_cflags $fomit_frame_pointer"
     gcc_cflags_optlist="arch"
+    gcc_cflags_maybe="-marm"
     gcc_testlist="gcc-arm-umodsi"
     GMP_INCLUDE_MPN(arm/arm-defs.m4)
     case $host_cpu in
diff -r 34fea7a40b3a -r c7b88ed68ca7 doc/gmp.texi
--- a/doc/gmp.texi	Mon Nov 26 18:59:05 2012 +0100
+++ b/doc/gmp.texi	Wed Nov 28 00:06:54 2012 +0100
@@ -2989,10 +2989,13 @@
 Calling this function instead of @code{mpz_init} or @code{mpz_inits} is never
 necessary; reallocation is handled automatically by GMP when needed.
 
- at var{n} is only the initial space, @var{x} will grow automatically in
-the normal way, if necessary, for subsequent values stored.  @code{mpz_init2}
-makes it possible to avoid such reallocations if a maximum size is known in
-advance.
+While @var{n} defines the initial space, @var{x} will grow automatically in the
+normal way, if necessary, for subsequent values stored.  @code{mpz_init2} makes
+it possible to avoid such reallocations if a maximum size is known in advance.
+
+In preparation for an operation, GMP often allocates one limb more than
+ultimately needed.  To make sure no GMP will not perform reallocation for
+ at var{x}, you need to add the number of bits in @code{mp_limb_t} to @var{n}.
 @end deftypefun
 
 @deftypefun void mpz_clear (mpz_t @var{x})


More information about the gmp-commit mailing list