[Gmp-commit] /var/hg/gmp: mini-gmp: In mpz_get_string, call mpz_sizeinbase on...
mercurial at gmplib.org
mercurial at gmplib.org
Thu Oct 8 22:56:52 CEST 2026
details: /var/hg/gmp/rev/33db65e2da2e
changeset: 18591:33db65e2da2e
user: Niels Möller <nisse at lysator.liu.se>
date: Thu Oct 08 22:56:44 2026 +0200
description:
mini-gmp: In mpz_get_string, call mpz_sizeinbase only when needed for allocation.
diffstat:
mini-gmp/ChangeLog | 6 ++++++
mini-gmp/mini-gmp.c | 3 +--
2 files changed, 7 insertions(+), 2 deletions(-)
diffs (28 lines):
diff -r b1b63a9b9220 -r 33db65e2da2e mini-gmp/ChangeLog
--- a/mini-gmp/ChangeLog Sun Sep 20 20:02:16 2026 +0200
+++ b/mini-gmp/ChangeLog Thu Oct 08 22:56:44 2026 +0200
@@ -1,3 +1,9 @@
+2026-10-08 Niels Möller <nisse at lysator.liu.se>
+
+ From Pádraig Brady:
+ * mini-gmp.c (mpz_get_str): The expensive mpz_sizeinbase() call is
+ unneeded when a buffer is supplied.
+
2026-07-12 Marco Bodrato <marco.bodrato at protonmail.com>
* mini-gmp.c (mpz_perfect_square_root): New function.
diff -r b1b63a9b9220 -r 33db65e2da2e mini-gmp/mini-gmp.c
--- a/mini-gmp/mini-gmp.c Sun Sep 20 20:02:16 2026 +0200
+++ b/mini-gmp/mini-gmp.c Thu Oct 08 22:56:44 2026 +0200
@@ -4332,10 +4332,9 @@
return NULL;
}
- sn = 1 + mpz_sizeinbase (u, base);
if (!sp)
{
- osn = 1 + sn;
+ osn = 2 + mpz_sizeinbase (u, base);
sp = (char *) gmp_alloc (osn);
}
else
More information about the gmp-commit
mailing list