summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorthevenyp <thevenyp@280ebfd0-de03-0410-8827-d642c229c3f4>2011-03-17 06:30:11 +0000
committerthevenyp <thevenyp@280ebfd0-de03-0410-8827-d642c229c3f4>2011-03-17 06:30:11 +0000
commit2bed9ef1b8d478fb86dfd522383b901cdac852ec (patch)
treede6b918413225754dea3b3b6dae6c2a50658cb4e
parentd6fa82d504df0d9bd81bc3e4aa465e2781b9b98c (diff)
downloadmpfr-2bed9ef1b8d478fb86dfd522383b901cdac852ec.tar.gz
Get rid of deprecated register_printf_function function in logging system.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@7575 280ebfd0-de03-0410-8827-d642c229c3f4
-rw-r--r--doc/README.dev28
-rw-r--r--src/acos.c6
-rw-r--r--src/acosh.c6
-rw-r--r--src/add.c7
-rw-r--r--src/add_d.c7
-rw-r--r--src/add_ui.c5
-rw-r--r--src/agm.c8
-rw-r--r--src/ai.c8
-rw-r--r--src/asin.c6
-rw-r--r--src/asinh.c6
-rw-r--r--src/atan.c6
-rw-r--r--src/atan2.c8
-rw-r--r--src/atanh.c6
-rw-r--r--src/cbrt.c5
-rw-r--r--src/const_catalan.c3
-rw-r--r--src/const_log2.c4
-rw-r--r--src/const_pi.c4
-rw-r--r--src/cos.c6
-rw-r--r--src/cosh.c6
-rw-r--r--src/d_div.c5
-rw-r--r--src/d_sub.c5
-rw-r--r--src/digamma.c5
-rw-r--r--src/div.c7
-rw-r--r--src/div_2si.c7
-rw-r--r--src/div_2ui.c6
-rw-r--r--src/div_d.c6
-rw-r--r--src/div_ui.c7
-rw-r--r--src/eint.c5
-rw-r--r--src/erf.c5
-rw-r--r--src/erfc.c5
-rw-r--r--src/exp.c6
-rw-r--r--src/exp2.c5
-rw-r--r--src/exp3.c6
-rw-r--r--src/exp_2.c6
-rw-r--r--src/expm1.c5
-rw-r--r--src/fma.c8
-rw-r--r--src/fms.c8
-rw-r--r--src/gamma.c6
-rw-r--r--src/hypot.c7
-rw-r--r--src/jn.c6
-rw-r--r--src/li2.c6
-rw-r--r--src/lngamma.c12
-rw-r--r--src/log.c6
-rw-r--r--src/log10.c5
-rw-r--r--src/log1p.c5
-rw-r--r--src/log2.c5
-rw-r--r--src/logging.c47
-rw-r--r--src/modf.c8
-rw-r--r--src/mpfr-impl.h47
-rw-r--r--src/mul.c8
-rw-r--r--src/mul_2si.c7
-rw-r--r--src/mul_2ui.c7
-rw-r--r--src/mul_d.c7
-rw-r--r--src/pow.c16
-rw-r--r--src/pow_si.c6
-rw-r--r--src/pow_ui.c7
-rw-r--r--src/pow_z.c14
-rw-r--r--src/rec_sqrt.c5
-rw-r--r--src/root.c6
-rw-r--r--src/sin.c6
-rw-r--r--src/sin_cos.c6
-rw-r--r--src/sinh.c6
-rw-r--r--src/sinh_cosh.c8
-rw-r--r--src/sqr.c6
-rw-r--r--src/sqrt.c6
-rw-r--r--src/sub.c7
-rw-r--r--src/sub_d.c6
-rw-r--r--src/sub_ui.c6
-rw-r--r--src/tan.c6
-rw-r--r--src/tanh.c6
-rw-r--r--src/ui_div.c5
-rw-r--r--src/ui_sub.c5
-rw-r--r--src/yn.c5
-rw-r--r--src/zeta.c5
74 files changed, 379 insertions, 195 deletions
diff --git a/doc/README.dev b/doc/README.dev
index ad95825e1..76bad8a19 100644
--- a/doc/README.dev
+++ b/doc/README.dev
@@ -470,12 +470,12 @@ the source code of the function to understand its real meaning.
You can control what is logged using the environment variables:
MPFR_LOG_FILE: Name of the LOG file (default: mpfr.log).
-MPFR_LOG_BASE: Base of the outputs (default: 10).
-MPFR_LOG_PREC: # of digits of the outputs (default: 0, ie. maximum).
+MPFR_LOG_PREC: # of digits of the output (set the internal variable
+ mpfr_log_prec, default: 6).
MPFR_LOG_LEVEL: Max recursive level (default: 7).
-MPFR_LOG_INPUT: Log the inputs
-MPFR_LOG_OUTPUT: Log the outputs
+MPFR_LOG_INPUT: Log the input
+MPFR_LOG_OUTPUT: Log the output
MPFR_LOG_TIME: Log the time spent inside the function.
MPFR_LOG_INTERNAL: Log the intermediary variables if any.
MPFR_LOG_MSG: Log the messages sent by MPFR if any.
@@ -508,12 +508,13 @@ after the format string.
Example:
int dodo (mpfr_t x, mpfr_t op, int cnt, mpfr_rnd_t rnd) {
[decl]
- MPFR_LOG_BEGIN (("op[%#R]=%R rnd=%s", op, op, RND2STR(rnd)));
+ MPFR_LOG_BEGIN (("op[%Pu]=%.*Rg rnd=%s",
+ mpfr_get_prec(op), mpfr_log_prec, op, RND2STR(rnd)));
+++ MPFR_LOG_END(x)
Add this macro at the end of a function.
Example:
- MPFR_LOG_END (("x[%#R]=%R i=%d", x, x, i));
+ MPFR_LOG_END (("x[%Pu]=%.*Rg i=%d", mpfr_get_prec (x), mpfr_log_prec, x, i));
return i;
}
@@ -522,16 +523,17 @@ Example:
the same job as MPFR_LOG_BEGIN and MPFR_LOG_END but it is smatter
since it intercepts the return itself to put the end statement.
Example
- MPFR_LOG_FUNC (("op[%#R]=%R rnd=%d", op, op"),
- ("x[%#R]=%R inexact=%d", x, x, i));
+ MPFR_LOG_FUNC (
+ ("op[%Pu]=%.*Rg rnd=%d", op, mpfr_get_prec (op), mpfr_log_prec, op),
+ ("x[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (x), mpfr_log_prec, x, i));
The double brackets "((" and "))" are needed since MPFR must still
compile with non GNU compiler, so Macros with variable # of args
are not allowed.
-It registers a glibc printf extension %R to display a mpfr_t.
-%#R is used to display the precision of a mpfr_t.
+It uses the extension of the mpfr_printf function: %Rf to display a mpfr_t.
+%Ru is used to display the precision of a mpfr_t.
It uses some extended attributes of GCC (constructor, etc.) to achieve
its goals too.
@@ -567,8 +569,10 @@ mpfr_toto (mpfr_ptr rop, mpfr_srcptr op, mpfr_rnd_t rnd)
MPFR_SAVE_EXPO_DECL (expo);
/* Log it if requested */
- MPFR_LOG_BEGIN (("op[%#R]=%R rnd=%d", op, op, rnd),
- ("rop[%#R]=%R inexact=%d", rop, rop, inexact));
+ MPFR_LOG_BEGIN
+ (("op[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (op), mpfr_prec_log, op, rnd),
+ ("rop[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (rop), mpfr_prec_log, rop, inexact));
/* First deal with particular cases */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (op)))
diff --git a/src/acos.c b/src/acos.c
index 45711702e..9699d4ea7 100644
--- a/src/acos.c
+++ b/src/acos.c
@@ -33,8 +33,10 @@ mpfr_acos (mpfr_ptr acos, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_ZIV_DECL (loop);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("acos[%#R]=%R inexact=%d", acos, acos, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec(x), mpfr_log_prec, x, rnd_mode),
+ ("acos[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec(acos), mpfr_log_prec, acos, inexact));
/* Singular cases */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
diff --git a/src/acosh.c b/src/acosh.c
index ea302f7db..8eba4d213 100644
--- a/src/acosh.c
+++ b/src/acosh.c
@@ -33,8 +33,10 @@ mpfr_acosh (mpfr_ptr y, mpfr_srcptr x , mpfr_rnd_t rnd_mode)
int inexact;
int comp;
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC (
+ ("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (y), mpfr_log_prec, y,
+ inexact));
/* Deal with special cases */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
diff --git a/src/add.c b/src/add.c
index 295377628..caf889600 100644
--- a/src/add.c
+++ b/src/add.c
@@ -25,8 +25,11 @@ http://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc.,
int
mpfr_add (mpfr_ptr a, mpfr_srcptr b, mpfr_srcptr c, mpfr_rnd_t rnd_mode)
{
- MPFR_LOG_FUNC (("b[%#R]=%R c[%#R]=%R rnd=%d", b, b, c, c, rnd_mode),
- ("a[%#R]=%R", a, a));
+ MPFR_LOG_FUNC
+ (("b[%Pu]=%.*Rg c[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (b), mpfr_log_prec, b,
+ mpfr_get_prec (c), mpfr_log_prec, c, rnd_mode),
+ ("a[%Pu]=%.*Rg", mpfr_get_prec (a), mpfr_log_prec, a));
if (MPFR_ARE_SINGULAR(b,c))
{
diff --git a/src/add_d.c b/src/add_d.c
index 015a8e812..3a1de8671 100644
--- a/src/add_d.c
+++ b/src/add_d.c
@@ -30,8 +30,11 @@ mpfr_add_d (mpfr_ptr a, mpfr_srcptr b, double c, mpfr_rnd_t rnd_mode)
mpfr_t d;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("b[%#R]=%R c=%.20g rnd=%d", b, b, c, rnd_mode),
- ("a[%#R]=%R", a, a));
+ MPFR_LOG_FUNC
+ (("b[%Pu]=%.*Rg c=%.20g rnd=%d",
+ mpfr_get_prec(b), mpfr_log_prec, b, c, rnd_mode),
+ ("a[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (a), mpfr_get_prec, a, inexact));
MPFR_SAVE_EXPO_MARK (expo);
diff --git a/src/add_ui.c b/src/add_ui.c
index 8e80a12a2..156173a05 100644
--- a/src/add_ui.c
+++ b/src/add_ui.c
@@ -26,6 +26,11 @@ http://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc.,
int
mpfr_add_ui (mpfr_ptr y, mpfr_srcptr x, unsigned long int u, mpfr_rnd_t rnd_mode)
{
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg u=%d rnd=%d",
+ mpfr_get_prec(x), mpfr_log_prec, x, u, rnd_mode),
+ ("y[%Pu]=%.*Rg", mpfr_get_prec (y), mpfr_get_prec, y));
+
if (MPFR_LIKELY(u != 0) ) /* if u=0, do nothing */
{
mpfr_t uu;
diff --git a/src/agm.c b/src/agm.c
index 5c85ba5f0..fe4ecf504 100644
--- a/src/agm.c
+++ b/src/agm.c
@@ -38,8 +38,12 @@ mpfr_agm (mpfr_ptr r, mpfr_srcptr op2, mpfr_srcptr op1, mpfr_rnd_t rnd_mode)
MPFR_TMP_DECL(marker);
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("op2[%#R]=%R op1[%#R]=%R rnd=%d", op2,op2,op1,op1,rnd_mode),
- ("r[%#R]=%R inexact=%d", r, r, inexact));
+ MPFR_LOG_FUNC
+ (("op2[%Pu]=%.*Rg op1[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (op2), mpfr_log_prec, op2,
+ mpfr_get_prec (op1), mpfr_log_prec, op1, rnd_mode),
+ ("r[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (r), mpfr_log_prec, r, inexact));
/* Deal with special values */
if (MPFR_ARE_SINGULAR (op1, op2))
diff --git a/src/ai.c b/src/ai.c
index 4ca0d1ada..95c2e0b50 100644
--- a/src/ai.c
+++ b/src/ai.c
@@ -68,7 +68,9 @@ mpfr_ai1 (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd)
int test1, test2;
/* Logging */
- MPFR_LOG_FUNC ( ("x[%#R]=%R rnd=%d", x, x, rnd), ("y[%#R]=%R", y, y) );
+ MPFR_LOG_FUNC (
+ ("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd),
+ ("y[%Pu]=%.*Rg", mpfr_get_prec (y), mpfr_log_prec, y) );
/* Special cases */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
@@ -333,7 +335,9 @@ mpfr_ai2 (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd)
int test0, test1;
/* Logging */
- MPFR_LOG_FUNC ( ("x[%#R]=%R rnd=%d", x, x, rnd), ("y[%#R]=%R", y, y) );
+ MPFR_LOG_FUNC (
+ ("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd),
+ ("y[%Pu]=%.*Rg", mpfr_get_prec (y), mpfr_log_prec, y));
/* Special cases */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
diff --git a/src/asin.c b/src/asin.c
index 9233c1b0e..dafc48108 100644
--- a/src/asin.c
+++ b/src/asin.c
@@ -32,8 +32,10 @@ mpfr_asin (mpfr_ptr asin, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_ZIV_DECL (loop);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("asin[%#R]=%R inexact=%d", asin, asin, inexact));
+ MPFR_LOG_FUNC (
+ ("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("asin[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (asin), mpfr_log_prec, asin,
+ inexact));
/* Special cases */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
diff --git a/src/asinh.c b/src/asinh.c
index 6a448bbb1..55a4907b4 100644
--- a/src/asinh.c
+++ b/src/asinh.c
@@ -37,8 +37,10 @@ mpfr_asinh (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_ZIV_DECL (loop);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC (
+ ("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (y), mpfr_log_prec, y,
+ inexact));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
diff --git a/src/atan.c b/src/atan.c
index e1505c850..064047467 100644
--- a/src/atan.c
+++ b/src/atan.c
@@ -201,8 +201,10 @@ mpfr_atan (mpfr_ptr atan, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_ZIV_DECL (loop);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("atan[%#R]=%R inexact=%d", atan, atan, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("atan[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (atan), mpfr_log_prec, atan, inexact));
/* Singular cases */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
diff --git a/src/atan2.c b/src/atan2.c
index db3f0fbb8..a88a8f914 100644
--- a/src/atan2.c
+++ b/src/atan2.c
@@ -54,8 +54,12 @@ mpfr_atan2 (mpfr_ptr dest, mpfr_srcptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_ZIV_DECL (loop);
- MPFR_LOG_FUNC (("y[%#R]=%R x[%#R]=%R rnd=%d", y, y, x, x, rnd_mode),
- ("atan[%#R]=%R inexact=%d", dest, dest, inexact));
+ MPFR_LOG_FUNC
+ (("y[%Pu]=%.*Rg x[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y,
+ mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("atan[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (dest), mpfr_log_prec, dest, inexact));
/* Special cases */
if (MPFR_ARE_SINGULAR (x, y))
diff --git a/src/atanh.c b/src/atanh.c
index 113676d2c..00d33dae4 100644
--- a/src/atanh.c
+++ b/src/atanh.c
@@ -36,8 +36,10 @@ mpfr_atanh (mpfr_ptr y, mpfr_srcptr xt , mpfr_rnd_t rnd_mode)
MPFR_ZIV_DECL (loop);
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", xt, xt, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (xt), mpfr_log_prec, xt, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
/* Special cases */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (xt)))
diff --git a/src/cbrt.c b/src/cbrt.c
index 3f4c96b77..b10faeaa6 100644
--- a/src/cbrt.c
+++ b/src/cbrt.c
@@ -50,6 +50,11 @@ mpfr_cbrt (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
int inexact, negative;
MPFR_SAVE_EXPO_DECL (expo);
+ MPFR_LOG_FUNC (
+ ("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (y), mpfr_log_prec, y,
+ inexact));
+
/* special values */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
diff --git a/src/const_catalan.c b/src/const_catalan.c
index a85cbd904..2771879d7 100644
--- a/src/const_catalan.c
+++ b/src/const_catalan.c
@@ -91,7 +91,8 @@ mpfr_const_catalan_internal (mpfr_ptr g, mpfr_rnd_t rnd_mode)
MPFR_ZIV_DECL (loop);
MPFR_GROUP_DECL (group);
- MPFR_LOG_FUNC (("rnd_mode=%d", rnd_mode), ("g[%#R]=%R inex=%d", g, g, inex));
+ MPFR_LOG_FUNC (("rnd_mode=%d", rnd_mode),
+ ("g[%Pu]=%.*Rg inex=%d", mpfr_get_prec (g), mpfr_log_prec, g, inex));
/* Here are the WC (max prec = 100.000.000)
Once we have found a chain of 11, we only look for bigger chain.
diff --git a/src/const_log2.c b/src/const_log2.c
index 235db820f..58f899110 100644
--- a/src/const_log2.c
+++ b/src/const_log2.c
@@ -115,7 +115,9 @@ mpfr_const_log2_internal (mpfr_ptr x, mpfr_rnd_t rnd_mode)
unsigned long lgN, i;
MPFR_ZIV_DECL (loop);
- MPFR_LOG_FUNC (("rnd_mode=%d", rnd_mode), ("x[%#R]=%R inex=%d",x,x,inexact));
+ MPFR_LOG_FUNC (
+ ("rnd_mode=%d", rnd_mode),
+ ("x[%Pu]=%.*Rg inex=%d", mpfr_get_prec(x), mpfr_log_prec, x, inexact));
mpfr_init2 (t, MPFR_PREC_MIN);
mpfr_init2 (q, MPFR_PREC_MIN);
diff --git a/src/const_pi.c b/src/const_pi.c
index fe3823806..fda312af0 100644
--- a/src/const_pi.c
+++ b/src/const_pi.c
@@ -41,7 +41,9 @@ mpfr_const_pi_internal (mpfr_ptr x, mpfr_rnd_t rnd_mode)
MPFR_ZIV_DECL (loop);
int inex;
- MPFR_LOG_FUNC (("rnd_mode=%d", rnd_mode), ("x[%#R]=%R inex=%d", x, x, inex));
+ MPFR_LOG_FUNC
+ (("rnd_mode=%d", rnd_mode),
+ ("x[%Pu]=%.*Rg inexact=%d", mpfr_get_prec(x), mpfr_log_prec, x, inex));
px = MPFR_PREC (x);
diff --git a/src/cos.c b/src/cos.c
index 79ebb083d..afcb4766a 100644
--- a/src/cos.c
+++ b/src/cos.c
@@ -138,8 +138,10 @@ mpfr_cos (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_GROUP_DECL (group);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC (
+ ("x[%Pu]=%*.Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%*.Rg inexact=%d", mpfr_get_prec (y), mpfr_log_prec, y,
+ inexact));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
diff --git a/src/cosh.c b/src/cosh.c
index e9f64611c..4c5339972 100644
--- a/src/cosh.c
+++ b/src/cosh.c
@@ -33,8 +33,10 @@ mpfr_cosh (mpfr_ptr y, mpfr_srcptr xt , mpfr_rnd_t rnd_mode)
int inexact;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", xt, xt, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC (
+ ("x[%Pu]=%*.Rg rnd=%d", mpfr_get_prec (xt), mpfr_log_prec, xt, rnd_mode),
+ ("y[%Pu]=%*.Rg inexact=%d", mpfr_get_prec (y), mpfr_log_prec, y,
+ inexact));
if (MPFR_UNLIKELY(MPFR_IS_SINGULAR(xt)))
{
diff --git a/src/d_div.c b/src/d_div.c
index 8ce212620..30d6344c2 100644
--- a/src/d_div.c
+++ b/src/d_div.c
@@ -30,8 +30,9 @@ mpfr_d_div (mpfr_ptr a, double b, mpfr_srcptr c, mpfr_rnd_t rnd_mode)
mpfr_t d;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("b=%.20g c[%#R]=%R rnd=%d", b, c, c, rnd_mode),
- ("a[%#R]=%R", a, a));
+ MPFR_LOG_FUNC (
+ ("b=%.20g c[%Pu]=%*.Rg rnd=%d", b, mpfr_get_prec (c), mpfr_log_prec, c, rnd_mode),
+ ("a[%Pu]=%*.Rg", mpfr_get_prec (a), mpfr_log_prec, a));
MPFR_SAVE_EXPO_MARK (expo);
diff --git a/src/d_sub.c b/src/d_sub.c
index c316c9a7e..9026b300f 100644
--- a/src/d_sub.c
+++ b/src/d_sub.c
@@ -30,8 +30,9 @@ mpfr_d_sub (mpfr_ptr a, double b, mpfr_srcptr c, mpfr_rnd_t rnd_mode)
mpfr_t d;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("b=%.20g c[%#R]=%R rnd=%d", b, c, c, rnd_mode),
- ("a[%#R]=%R", a, a));
+ MPFR_LOG_FUNC (
+ ("b=%.20g c[%Pu]=%*.Rg rnd=%d", b, mpfr_get_prec (c), mpfr_log_prec, c, rnd_mode),
+ ("a[%Pu]=%*.Rg", mpfr_get_prec (a), mpfr_log_prec, a));
MPFR_SAVE_EXPO_MARK (expo);
diff --git a/src/digamma.c b/src/digamma.c
index 7cb450da4..5b767366c 100644
--- a/src/digamma.c
+++ b/src/digamma.c
@@ -279,6 +279,11 @@ int
mpfr_digamma (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
{
int inex;
+
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec(x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec(y), mpfr_log_prec, y, inex));
+
MPFR_SAVE_EXPO_DECL (expo);
if (MPFR_UNLIKELY(MPFR_IS_SINGULAR(x)))
diff --git a/src/div.c b/src/div.c
index 267287021..259d0a466 100644
--- a/src/div.c
+++ b/src/div.c
@@ -159,8 +159,11 @@ mpfr_div (mpfr_ptr q, mpfr_srcptr u, mpfr_srcptr v, mpfr_rnd_t rnd_mode)
int like_rndz;
MPFR_TMP_DECL(marker);
- MPFR_LOG_FUNC (("u[%#R]=%R v[%#R]=%R rnd=%d", u, u, v, v, rnd_mode),
- ("q[%#R]=%R inexact=%d", q, q, inex));
+ MPFR_LOG_FUNC (
+ ("u[%Pu]=%.*Rg v[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec(u), mpfr_log_prec, u,
+ mpfr_get_prec (v),mpfr_log_prec, v, rnd_mode),
+ ("q[%Pu]=%.*Rg inexact=%d", mpfr_get_prec(q), mpfr_log_prec, q, inex));
/**************************************************************************
* *
diff --git a/src/div_2si.c b/src/div_2si.c
index f55057390..2a21ec99d 100644
--- a/src/div_2si.c
+++ b/src/div_2si.c
@@ -27,8 +27,11 @@ mpfr_div_2si (mpfr_ptr y, mpfr_srcptr x, long int n, mpfr_rnd_t rnd_mode)
{
int inexact;
- MPFR_LOG_FUNC (("x[%#R]=%R n=%ld rnd=%d", x, x, n, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg n=%ld rnd=%d",
+ mpfr_get_prec(x), mpfr_log_prec, x, n, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec(y), mpfr_log_prec, y, inexact));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
return mpfr_set (y, x, rnd_mode);
diff --git a/src/div_2ui.c b/src/div_2ui.c
index 4621470a1..89a7398ab 100644
--- a/src/div_2ui.c
+++ b/src/div_2ui.c
@@ -27,8 +27,10 @@ mpfr_div_2ui (mpfr_ptr y, mpfr_srcptr x, unsigned long n, mpfr_rnd_t rnd_mode)
{
int inexact;
- MPFR_LOG_FUNC (("x[%#R]=%R n=%lu rnd=%d", x, x, n, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC (
+ ("x[%Pu]=%.*Rg n=%lu rnd=%d", mpfr_get_prec(x), mpfr_log_prec, x, n,
+ rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec(y), mpfr_log_prec, y, inexact));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
return mpfr_set (y, x, rnd_mode);
diff --git a/src/div_d.c b/src/div_d.c
index c8e4b6061..d7a5d6b02 100644
--- a/src/div_d.c
+++ b/src/div_d.c
@@ -30,8 +30,10 @@ mpfr_div_d (mpfr_ptr a, mpfr_srcptr b, double c, mpfr_rnd_t rnd_mode)
mpfr_t d;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("b[%#R]=%R c%.20g rnd=%d", b, b, c, rnd_mode),
- ("a[%#R]=%R", a, a));
+ MPFR_LOG_FUNC (
+ ("b[%Pu]=%.*Rg c%.20g rnd=%d", mpfr_get_prec (b), mpfr_log_prec, b, c,
+ rnd_mode),
+ ("a[%Pu]=%.*Rg", mpfr_get_prec (a), mpfr_log_prec, a));
MPFR_SAVE_EXPO_MARK (expo);
diff --git a/src/div_ui.c b/src/div_ui.c
index 405fa0092..64fd69119 100644
--- a/src/div_ui.c
+++ b/src/div_ui.c
@@ -35,8 +35,11 @@ mpfr_div_ui (mpfr_ptr y, mpfr_srcptr x, unsigned long int u, mpfr_rnd_t rnd_mode
int inexact, middle = 1, nexttoinf;
MPFR_TMP_DECL(marker);
- MPFR_LOG_FUNC (("x[%#R]=%R n=%lu rnd=%d", x, x, u, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg u=%lu rnd=%d",
+ mpfr_get_prec(x), mpfr_log_prec, x, u, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec(y), mpfr_log_prec, y, inexact));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
diff --git a/src/eint.c b/src/eint.c
index 8f6f46675..e379409db 100644
--- a/src/eint.c
+++ b/src/eint.c
@@ -200,8 +200,9 @@ mpfr_eint (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_ZIV_DECL (loop);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd),
- ("y[%#R]=%R inexact=%d", y, y, inex));
+ MPFR_LOG_FUNC (
+ ("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (y), mpfr_log_prec, y, inex));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
diff --git a/src/erf.c b/src/erf.c
index a8b5ab016..0f55d1697 100644
--- a/src/erf.c
+++ b/src/erf.c
@@ -34,8 +34,9 @@ mpfr_erf (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
int inex, large;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inex));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (y), mpfr_log_prec, y, inex));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
diff --git a/src/erfc.c b/src/erfc.c
index b40c0fbdb..89989e6a2 100644
--- a/src/erfc.c
+++ b/src/erfc.c
@@ -131,8 +131,9 @@ mpfr_erfc (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_ZIV_DECL (loop);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd),
- ("y[%#R]=%R inexact=%d", y, y, inex));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (y), mpfr_log_prec, y, inex));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
diff --git a/src/exp.c b/src/exp.c
index 783e2290d..2cca95544 100644
--- a/src/exp.c
+++ b/src/exp.c
@@ -32,8 +32,10 @@ mpfr_exp (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
int inexact;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
if (MPFR_UNLIKELY( MPFR_IS_SINGULAR(x) ))
{
diff --git a/src/exp2.c b/src/exp2.c
index f29fe6758..097cef2c3 100644
--- a/src/exp2.c
+++ b/src/exp2.c
@@ -34,6 +34,11 @@ mpfr_exp2 (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
mpfr_t xfrac;
MPFR_SAVE_EXPO_DECL (expo);
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec(x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec(y), mpfr_log_prec, y,
+ inexact));
+
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
if (MPFR_IS_NAN (x))
diff --git a/src/exp3.c b/src/exp3.c
index 5993d7fc9..2c03ccee5 100644
--- a/src/exp3.c
+++ b/src/exp3.c
@@ -166,8 +166,10 @@ mpfr_exp_3 (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_ZIV_DECL (ziv_loop);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec(x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec(y), mpfr_log_prec, y,
+ inexact));
MPFR_SAVE_EXPO_MARK (expo);
diff --git a/src/exp_2.c b/src/exp_2.c
index 5798b2a3a..38067daac 100644
--- a/src/exp_2.c
+++ b/src/exp_2.c
@@ -87,8 +87,10 @@ mpfr_exp_2 (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
mpz_t ss;
MPFR_ZIV_DECL (loop);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec(x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec(y), mpfr_log_prec, y,
+ inexact));
expx = MPFR_GET_EXP (x);
precy = MPFR_PREC(y);
diff --git a/src/expm1.c b/src/expm1.c
index 9d43403d2..a458b0963 100644
--- a/src/expm1.c
+++ b/src/expm1.c
@@ -34,6 +34,11 @@ mpfr_expm1 (mpfr_ptr y, mpfr_srcptr x , mpfr_rnd_t rnd_mode)
mpfr_exp_t ex;
MPFR_SAVE_EXPO_DECL (expo);
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (y), mpfr_log_prec, y,
+ inexact));
+
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
if (MPFR_IS_NAN (x))
diff --git a/src/fma.c b/src/fma.c
index 26aea8209..4e1083a36 100644
--- a/src/fma.c
+++ b/src/fma.c
@@ -35,6 +35,14 @@ mpfr_fma (mpfr_ptr s, mpfr_srcptr x, mpfr_srcptr y, mpfr_srcptr z,
MPFR_SAVE_EXPO_DECL (expo);
MPFR_GROUP_DECL(group);
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg y[%Pu]=%.*Rg z[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x,
+ mpfr_get_prec (y), mpfr_log_prec, y,
+ mpfr_get_prec (z), mpfr_log_prec, z, rnd_mode),
+ ("s[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (s), mpfr_log_prec, s, inexact));
+
/* particular cases */
if (MPFR_UNLIKELY( MPFR_IS_SINGULAR(x) ||
MPFR_IS_SINGULAR(y) ||
diff --git a/src/fms.c b/src/fms.c
index 095568c69..fdb233138 100644
--- a/src/fms.c
+++ b/src/fms.c
@@ -37,6 +37,14 @@ mpfr_fms (mpfr_ptr s, mpfr_srcptr x, mpfr_srcptr y, mpfr_srcptr z,
MPFR_SAVE_EXPO_DECL (expo);
MPFR_GROUP_DECL(group);
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg y[%Pu]=%.*Rg z[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x,
+ mpfr_get_prec (y), mpfr_log_prec, y,
+ mpfr_get_prec (z), mpfr_log_prec, z, rnd_mode),
+ ("s[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (s), mpfr_log_prec, s, inexact));
+
/* particular cases */
if (MPFR_UNLIKELY( MPFR_IS_SINGULAR(x) ||
MPFR_IS_SINGULAR(y) ||
diff --git a/src/gamma.c b/src/gamma.c
index 5645b57c5..196976402 100644
--- a/src/gamma.c
+++ b/src/gamma.c
@@ -105,8 +105,10 @@ mpfr_gamma (mpfr_ptr gamma, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_ZIV_DECL (loop);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("gamma[%#R]=%R inexact=%d", gamma, gamma, inex));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("gamma[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (gamma), mpfr_log_prec, gamma, inex));
/* Trivial cases */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
diff --git a/src/hypot.c b/src/hypot.c
index ef292e7b6..8475e2754 100644
--- a/src/hypot.c
+++ b/src/hypot.c
@@ -41,6 +41,13 @@ mpfr_hypot (mpfr_ptr z, mpfr_srcptr x, mpfr_srcptr y, mpfr_rnd_t rnd_mode)
MPFR_ZIV_DECL (loop);
MPFR_BLOCK_DECL (flags);
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg y[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x,
+ mpfr_get_prec (y), mpfr_log_prec, y, rnd_mode),
+ ("z[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (z), mpfr_log_prec, z, inexact));
+
/* particular cases */
if (MPFR_ARE_SINGULAR (x, y))
{
diff --git a/src/jn.c b/src/jn.c
index f678052c7..9e1a16ef3 100644
--- a/src/jn.c
+++ b/src/jn.c
@@ -94,8 +94,10 @@ mpfr_jn (mpfr_ptr res, long n, mpfr_srcptr z, mpfr_rnd_t r)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_ZIV_DECL (loop);
- MPFR_LOG_FUNC (("x[%#R]=%R n=%d rnd=%d", z, z, n, r),
- ("y[%#R]=%R", res, res));
+ MPFR_LOG_FUNC
+ (("n=%d x[%Pu]=%.*Rg rnd=%d", n, mpfr_get_prec (z), mpfr_log_prec, z, r),
+ ("res[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (res), mpfr_log_prec, res, inex));
absn = SAFE_ABS (unsigned long, n);
diff --git a/src/li2.c b/src/li2.c
index eaaf29930..19565db53 100644
--- a/src/li2.c
+++ b/src/li2.c
@@ -223,8 +223,10 @@ mpfr_li2 (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
MPFR_ZIV_DECL (loop);
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("y[%#R]=%R", y, y));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
diff --git a/src/lngamma.c b/src/lngamma.c
index ba0de6551..483151705 100644
--- a/src/lngamma.c
+++ b/src/lngamma.c
@@ -508,8 +508,10 @@ mpfr_lngamma (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd)
{
int inex;
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd),
- ("lngamma[%#R]=%R inexact=%d", y, y, inex));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inex));
/* special cases */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
@@ -545,8 +547,10 @@ mpfr_lgamma (mpfr_ptr y, int *signp, mpfr_srcptr x, mpfr_rnd_t rnd)
{
int inex;
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd),
- ("lgamma[%#R]=%R inexact=%d", y, y, inex));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd),
+ ("y[%Pu]=%.*Rg signp=%d inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, *signp, inex));
*signp = 1; /* most common case */
diff --git a/src/log.c b/src/log.c
index 8a028e500..7bc464035 100644
--- a/src/log.c
+++ b/src/log.c
@@ -49,8 +49,10 @@ mpfr_log (mpfr_ptr r, mpfr_srcptr a, mpfr_rnd_t rnd_mode)
MPFR_ZIV_DECL (loop);
MPFR_TMP_DECL(marker);
- MPFR_LOG_FUNC (("a[%#R]=%R rnd=%d", a, a, rnd_mode),
- ("r[%#R]=%R inexact=%d", r, r, inexact));
+ MPFR_LOG_FUNC
+ (("a[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (a), mpfr_log_prec, a, rnd_mode),
+ ("r[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (r), mpfr_log_prec, r,
+ inexact));
/* Special cases */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (a)))
diff --git a/src/log10.c b/src/log10.c
index 4e99e8443..bc69ed10f 100644
--- a/src/log10.c
+++ b/src/log10.c
@@ -34,6 +34,11 @@ mpfr_log10 (mpfr_ptr r, mpfr_srcptr a, mpfr_rnd_t rnd_mode)
int inexact;
MPFR_SAVE_EXPO_DECL (expo);
+ MPFR_LOG_FUNC
+ (("a[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (a), mpfr_log_prec, a, rnd_mode),
+ ("r[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (r), mpfr_log_prec, r, inexact));
+
/* If a is NaN, the result is NaN */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (a)))
{
diff --git a/src/log1p.c b/src/log1p.c
index 45adfacca..34765972c 100644
--- a/src/log1p.c
+++ b/src/log1p.c
@@ -33,6 +33,11 @@ mpfr_log1p (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
mpfr_exp_t ex;
MPFR_SAVE_EXPO_DECL (expo);
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (y), mpfr_log_prec, y,
+ inexact));
+
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
if (MPFR_IS_NAN (x))
diff --git a/src/log2.c b/src/log2.c
index 9d6ef362a..309eecece 100644
--- a/src/log2.c
+++ b/src/log2.c
@@ -32,6 +32,11 @@ mpfr_log2 (mpfr_ptr r, mpfr_srcptr a, mpfr_rnd_t rnd_mode)
int inexact;
MPFR_SAVE_EXPO_DECL (expo);
+ MPFR_LOG_FUNC
+ (("a[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (a), mpfr_log_prec, a, rnd_mode),
+ ("r[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (r), mpfr_log_prec, r,
+ inexact));
+
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (a)))
{
/* If a is NaN, the result is NaN */
diff --git a/src/logging.c b/src/logging.c
index d889fa97a..9c484b1a1 100644
--- a/src/logging.c
+++ b/src/logging.c
@@ -28,7 +28,6 @@ http://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc.,
/* Can't include them before (in particular, printf.h) */
#include <stdlib.h>
-#include <printf.h>
#include <stdarg.h>
#include <time.h>
@@ -37,43 +36,10 @@ http://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc.,
FILE *mpfr_log_file;
int mpfr_log_type;
int mpfr_log_level;
-int mpfr_log_base;
int mpfr_log_current;
int mpfr_log_worstcase_limit;
mpfr_prec_t mpfr_log_prec;
-static int
-mpfr_printf_mpfr_print (FILE *stream, const struct printf_info *info,
- const void * const *arg)
-{
- int length;
- int org_type_logging;
-
- /* TODO: Use much more flag from info */
- mpfr_srcptr w = *((mpfr_srcptr *) (arg[0]));
- mpfr_prec_t prec = mpfr_log_prec != 0 ? mpfr_log_prec
- : info->width == -1 ? 0 : (mpfr_prec_t) info->width;
-
- org_type_logging = mpfr_log_type;
- mpfr_log_type = 0; /* We disable the logging during this print! */
- if (info->alt)
- length = fprintf (stream, "%lu", (unsigned long) MPFR_PREC (w));
- else
- length = mpfr_out_str (stream, mpfr_log_base, prec, w, MPFR_RNDN);
- mpfr_log_type = org_type_logging;
-
- return length;
-}
-
-static int
-mpfr_printf_mpfr_arginfo (const struct printf_info *info, size_t n,
- int *argtypes)
-{
- if (n > 0)
- argtypes[0] = PA_POINTER;
- return 1;
-}
-
static void mpfr_log_begin (void) __attribute__((constructor));
/* We let the system close the LOG itself
@@ -85,15 +51,12 @@ mpfr_log_begin (void)
time_t tt;
/* Grab some information */
- var = getenv ("MPFR_LOG_BASE");
- mpfr_log_base = var == NULL || *var == 0 ? 10 : atoi (var);
-
var = getenv ("MPFR_LOG_LEVEL");
mpfr_log_level = var == NULL || *var == 0 ? 7 : atoi (var);
mpfr_log_current = 0;
var = getenv ("MPFR_LOG_PREC");
- mpfr_log_prec = var == NULL || *var == 0 ? 0 : atol (var);
+ mpfr_log_prec = var == NULL ? 6 : atol (var);
/* Get what we need to log */
mpfr_log_type = 0;
@@ -115,14 +78,6 @@ mpfr_log_begin (void)
mpfr_log_type = MPFR_LOG_INPUT_F|MPFR_LOG_OUTPUT_F|MPFR_LOG_TIME_F
|MPFR_LOG_INTERNAL_F|MPFR_LOG_MSG_F|MPFR_LOG_BADCASE_F|MPFR_LOG_STAT_F;
- /* Register printf functions
- * Note[VL]: register_printf_function is now deprecated by the GNU libc.
- * Use either register_printf_specifier or (much better) mpfr_fprintf.
- * See https://gforge.inria.fr/tracker/index.php?func=detail&aid=10930
- */
- register_printf_function ('R', mpfr_printf_mpfr_print,
- mpfr_printf_mpfr_arginfo);
-
/* Open filename if needed */
var = getenv ("MPFR_LOG_FILE");
if (var == NULL || *var == 0)
diff --git a/src/modf.c b/src/modf.c
index d74c0b697..21968db8b 100644
--- a/src/modf.c
+++ b/src/modf.c
@@ -33,8 +33,12 @@ mpfr_modf (mpfr_ptr iop, mpfr_ptr fop, mpfr_srcptr op, mpfr_rnd_t rnd_mode)
mpfr_prec_t opq;
int inexi, inexf;
- MPFR_LOG_FUNC (("op[%#R]=%R rnd=%d", op, op, rnd_mode),
- ("iop[%#R]=%R fop[%#R]=%R", iop, iop, fop, fop));
+ MPFR_LOG_FUNC
+ (("op[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (op), mpfr_log_prec, op, rnd_mode),
+ ("iop[%Pu]=%.*Rg fop[%Pu]=%.*Rg",
+ mpfr_get_prec (iop), mpfr_log_prec, iop,
+ mpfr_get_prec (fop), mpfr_log_prec, fop));
MPFR_ASSERTN (iop != fop);
diff --git a/src/mpfr-impl.h b/src/mpfr-impl.h
index 44f7419b2..39b7741ba 100644
--- a/src/mpfr-impl.h
+++ b/src/mpfr-impl.h
@@ -1451,14 +1451,14 @@ typedef struct {
#define MPFR_ZIV_INIT(_x, _p) ((_x) = GMP_NUMB_BITS, _x ## _loop ++); \
if (MPFR_LOG_BADCASE_F&mpfr_log_type && mpfr_log_current<=mpfr_log_level) \
- fprintf (mpfr_log_file, "%s:ZIV 1st prec=%lu\n", __func__, \
- (unsigned long) (_p))
+ mpfr_fprintf (mpfr_log_file, "%s:ZIV 1st prec=%Pu\n", \
+ __func__, (unsigned long) (_p))
#define MPFR_ZIV_NEXT(_x, _p) \
((_p)+=(_x),(_x)=(_p)/2, _x ## _bad += (_x ## _cpt == 1), _x ## _cpt ++); \
if (MPFR_LOG_BADCASE_F&mpfr_log_type && mpfr_log_current<=mpfr_log_level) \
- fprintf (mpfr_log_file, "%s:ZIV new prec=%lu\n", __func__, \
- (unsigned long) (_p))
+ mpfr_fprintf (mpfr_log_file, "%s:ZIV new prec=%Pu\n", \
+ __func__, (unsigned long) (_p))
#define MPFR_ZIV_FREE(_x) \
if (MPFR_LOG_BADCASE_F&mpfr_log_type && _x##_cpt>1 \
@@ -1499,38 +1499,41 @@ __MPFR_DECLSPEC extern FILE *mpfr_log_file;
__MPFR_DECLSPEC extern int mpfr_log_type;
__MPFR_DECLSPEC extern int mpfr_log_level;
__MPFR_DECLSPEC extern int mpfr_log_current;
-__MPFR_DECLSPEC extern int mpfr_log_base;
__MPFR_DECLSPEC extern mpfr_prec_t mpfr_log_prec;
#if defined (__cplusplus)
}
#endif
-#define MPFR_LOG_VAR(x) \
+#define MPFR_LOG_VAR(x) \
if((MPFR_LOG_INTERNAL_F&mpfr_log_type)&&(mpfr_log_current<=mpfr_log_level))\
- fprintf (mpfr_log_file, "%s.%d:%s[%#R]=%R\n", __func__,__LINE__, #x, x, x);
+ mpfr_fprintf (mpfr_log_file, "%s.%d:%s[%#Pu]=%.*Rf\n", \
+ __func__, __LINE__, #x, mpfr_get_prec (x), mpfr_log_prec, x);
-#define MPFR_LOG_MSG2(format, ...) \
- if ((MPFR_LOG_MSG_F&mpfr_log_type)&&(mpfr_log_current<=mpfr_log_level)) \
- fprintf (mpfr_log_file, "%s.%d: "format, __func__, __LINE__, __VA_ARGS__);
+#define MPFR_LOG_MSG2(format, ...) \
+ if ((MPFR_LOG_MSG_F&mpfr_log_type)&&(mpfr_log_current<=mpfr_log_level)) \
+ mpfr_fprintf (mpfr_log_file, "%s.%d: "format, \
+ __func__, __LINE__, __VA_ARGS__);
#define MPFR_LOG_MSG(x) MPFR_LOG_MSG2 x
-#define MPFR_LOG_BEGIN2(format, ...) \
- mpfr_log_current ++; \
- if ((MPFR_LOG_INPUT_F&mpfr_log_type)&&(mpfr_log_current<=mpfr_log_level)) \
- fprintf (mpfr_log_file, "%s:IN "format"\n",__func__,__VA_ARGS__); \
- if ((MPFR_LOG_TIME_F&mpfr_log_type)&&(mpfr_log_current<=mpfr_log_level)) \
+#define MPFR_LOG_BEGIN2(format, ...) \
+ mpfr_log_current ++; \
+ if ((MPFR_LOG_INPUT_F&mpfr_log_type)&&(mpfr_log_current<=mpfr_log_level)) \
+ mpfr_fprintf (mpfr_log_file, "%s:IN "format"\n", \
+ __func__, __VA_ARGS__); \
+ if ((MPFR_LOG_TIME_F&mpfr_log_type)&&(mpfr_log_current<=mpfr_log_level)) \
__gmpfr_log_time = mpfr_get_cputime ();
-#define MPFR_LOG_BEGIN(x) \
- int __gmpfr_log_time = 0; \
+#define MPFR_LOG_BEGIN(x) \
+ int __gmpfr_log_time = 0; \
MPFR_LOG_BEGIN2 x
-#define MPFR_LOG_END2(format, ...) \
- if ((MPFR_LOG_TIME_F&mpfr_log_type)&&(mpfr_log_current<=mpfr_log_level)) \
- fprintf (mpfr_log_file, "%s:TIM %dms\n", __mpfr_log_fname, \
- mpfr_get_cputime () - __gmpfr_log_time); \
+#define MPFR_LOG_END2(format, ...) \
+ if ((MPFR_LOG_TIME_F&mpfr_log_type)&&(mpfr_log_current<=mpfr_log_level)) \
+ fprintf (mpfr_log_file, "%s:TIM %dms\n", __mpfr_log_fname, \
+ mpfr_get_cputime () - __gmpfr_log_time); \
if ((MPFR_LOG_OUTPUT_F&mpfr_log_type)&&(mpfr_log_current<=mpfr_log_level)) \
- fprintf (mpfr_log_file, "%s:OUT "format"\n",__mpfr_log_fname,__VA_ARGS__);\
+ mpfr_fprintf (mpfr_log_file, "%s:OUT "format"\n", \
+ __mpfr_log_fname, __VA_ARGS__); \
mpfr_log_current --;
#define MPFR_LOG_END(x) \
static const char *__mpfr_log_fname = __func__; \
diff --git a/src/mul.c b/src/mul.c
index 69c973179..d074c49c7 100644
--- a/src/mul.c
+++ b/src/mul.c
@@ -219,8 +219,12 @@ mpfr_mul (mpfr_ptr a, mpfr_srcptr b, mpfr_srcptr c, mpfr_rnd_t rnd_mode)
mp_size_t bn, cn, tn, k, threshold;
MPFR_TMP_DECL (marker);
- MPFR_LOG_FUNC (("b[%#R]=%R c[%#R]=%R rnd=%d", b, b, c, c, rnd_mode),
- ("a[%#R]=%R inexact=%d", a, a, inexact));
+ MPFR_LOG_FUNC
+ (("b[%Pu]=%.*Rg c[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (b), mpfr_log_prec, b,
+ mpfr_get_prec (c), mpfr_log_prec, c, rnd_mode),
+ ("a[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (a), mpfr_log_prec, a, inexact));
/* deal with special cases */
if (MPFR_ARE_SINGULAR (b, c))
diff --git a/src/mul_2si.c b/src/mul_2si.c
index 79e3fa2d9..58c1b38f4 100644
--- a/src/mul_2si.c
+++ b/src/mul_2si.c
@@ -27,8 +27,11 @@ mpfr_mul_2si (mpfr_ptr y, mpfr_srcptr x, long int n, mpfr_rnd_t rnd_mode)
{
int inexact;
- MPFR_LOG_FUNC (("x[%#R]=%R n=%ld rnd=%d", x, x, n, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg n=%ld rnd=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x, n, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
return mpfr_set (y, x, rnd_mode);
diff --git a/src/mul_2ui.c b/src/mul_2ui.c
index 5d5f8e6f2..48de652fb 100644
--- a/src/mul_2ui.c
+++ b/src/mul_2ui.c
@@ -27,8 +27,11 @@ mpfr_mul_2ui (mpfr_ptr y, mpfr_srcptr x, unsigned long int n, mpfr_rnd_t rnd_mod
{
int inexact;
- MPFR_LOG_FUNC (("x[%#R]=%R n=%lu rnd=%d", x, x, n, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg n=%lu rnd=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x, n, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
inexact = MPFR_UNLIKELY(y != x) ? mpfr_set (y, x, rnd_mode) : 0;
diff --git a/src/mul_d.c b/src/mul_d.c
index 928a2230a..db237219f 100644
--- a/src/mul_d.c
+++ b/src/mul_d.c
@@ -30,8 +30,11 @@ mpfr_mul_d (mpfr_ptr a, mpfr_srcptr b, double c, mpfr_rnd_t rnd_mode)
mpfr_t d;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("b[%#R]=%R c=%.20g rnd=%d", b, b, c, rnd_mode),
- ("a[%#R]=%R", a, a));
+ MPFR_LOG_FUNC
+ (("b[%Pu]=%.*Rg c=%.20g rnd=%d",
+ mpfr_get_prec(b), mpfr_log_prec, b, c, rnd_mode),
+ ("a[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (a), mpfr_get_prec, a, inexact));
MPFR_SAVE_EXPO_MARK (expo);
diff --git a/src/pow.c b/src/pow.c
index 188f92022..d83784a4c 100644
--- a/src/pow.c
+++ b/src/pow.c
@@ -171,8 +171,12 @@ mpfr_pow_general (mpfr_ptr z, mpfr_srcptr x, mpfr_srcptr y,
MPFR_ZIV_DECL (ziv_loop);
- MPFR_LOG_FUNC (("x[%#R]=%R y[%#R]=%R rnd=%d", x, x, y, y, rnd_mode),
- ("z[%#R]=%R inexact=%d", z, z, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg y[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x,
+ mpfr_get_prec (y), mpfr_log_prec, y, rnd_mode),
+ ("z[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (z), mpfr_log_prec, z, inexact));
/* We put the absolute value of x in absx, pointing to the significand
of x to avoid allocating memory for the significand of absx. */
@@ -386,8 +390,12 @@ mpfr_pow (mpfr_ptr z, mpfr_srcptr x, mpfr_srcptr y, mpfr_rnd_t rnd_mode)
int y_is_integer;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("x[%#R]=%R y[%#R]=%R rnd=%d", x, x, y, y, rnd_mode),
- ("z[%#R]=%R inexact=%d", z, z, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg y[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x,
+ mpfr_get_prec (y), mpfr_log_prec, y, rnd_mode),
+ ("z[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (z), mpfr_log_prec, z, inexact));
if (MPFR_ARE_SINGULAR (x, y))
{
diff --git a/src/pow_si.c b/src/pow_si.c
index 1850366d6..dff90daf4 100644
--- a/src/pow_si.c
+++ b/src/pow_si.c
@@ -31,8 +31,10 @@ http://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc.,
int
mpfr_pow_si (mpfr_ptr y, mpfr_srcptr x, long int n, mpfr_rnd_t rnd)
{
- MPFR_LOG_FUNC (("x[%#R]=%R n=%ld rnd=%d", x, x, n, rnd),
- ("y[%#R]=%R", y, y));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg n=%ld rnd=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x, n, rnd),
+ ("y[%Pu]=%.*Rg", mpfr_get_prec (y), mpfr_log_prec, y));
if (n >= 0)
return mpfr_pow_ui (y, x, n, rnd);
diff --git a/src/pow_ui.c b/src/pow_ui.c
index 7d7d690e1..712273c0e 100644
--- a/src/pow_ui.c
+++ b/src/pow_ui.c
@@ -37,8 +37,11 @@ mpfr_pow_ui (mpfr_ptr y, mpfr_srcptr x, unsigned long int n, mpfr_rnd_t rnd)
MPFR_ZIV_DECL (loop);
MPFR_BLOCK_DECL (flags);
- MPFR_LOG_FUNC (("x[%#R]=%R n=%lu rnd=%d", x, x, n, rnd),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg n=%lu rnd=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x, n, rnd),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
/* x^0 = 1 for any x, even a NaN */
if (MPFR_UNLIKELY (n == 0))
diff --git a/src/pow_z.c b/src/pow_z.c
index a45e8f4d2..0daabb576 100644
--- a/src/pow_z.c
+++ b/src/pow_z.c
@@ -40,8 +40,11 @@ mpfr_pow_pos_z (mpfr_ptr y, mpfr_srcptr x, mpz_srcptr z, mpfr_rnd_t rnd, int cr)
MPFR_ZIV_DECL (loop);
MPFR_BLOCK_DECL (flags);
- MPFR_LOG_FUNC (("x[%#R]=%R z=? rnd=%d cr=%d", x, x, rnd, cr),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg z=%Zd rnd=%d cr=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x, z, rnd, cr),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
MPFR_ASSERTD (mpz_sgn (z) != 0);
@@ -167,8 +170,11 @@ mpfr_pow_z (mpfr_ptr y, mpfr_srcptr x, mpz_srcptr z, mpfr_rnd_t rnd)
mpz_t tmp;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("x[%#R]=%R z=? rnd=%d", x, x, rnd),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg z=%Zd rnd=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x, z, rnd),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
/* x^0 = 1 for any x, even a NaN */
if (MPFR_UNLIKELY (mpz_sgn (z) == 0))
diff --git a/src/rec_sqrt.c b/src/rec_sqrt.c
index 1450cc52d..48e2f4dad 100644
--- a/src/rec_sqrt.c
+++ b/src/rec_sqrt.c
@@ -424,8 +424,9 @@ mpfr_rec_sqrt (mpfr_ptr r, mpfr_srcptr u, mpfr_rnd_t rnd_mode)
mpfr_limb_ptr x;
MPFR_TMP_DECL(marker);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", u, u, rnd_mode),
- ("y[%#R]=%R inexact=%d", r, r, inex));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (u), mpfr_log_prec, u, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (r), mpfr_log_prec, r, inex));
/* special values */
if (MPFR_UNLIKELY(MPFR_IS_SINGULAR(u)))
diff --git a/src/root.c b/src/root.c
index 0617af6ed..2d5be8bef 100644
--- a/src/root.c
+++ b/src/root.c
@@ -47,6 +47,12 @@ mpfr_root (mpfr_ptr y, mpfr_srcptr x, unsigned long k, mpfr_rnd_t rnd_mode)
int inexact, negative;
MPFR_SAVE_EXPO_DECL (expo);
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg k=%lu rnd=%d",
+ mpfr_get_prec (x), mpfr_log_prec, x, k, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
+
if (MPFR_UNLIKELY (k <= 1))
{
if (k < 1) /* k==0 => y=x^(1/0)=x^(+Inf) */
diff --git a/src/sin.c b/src/sin.c
index 0349762bc..477532fa8 100644
--- a/src/sin.c
+++ b/src/sin.c
@@ -44,8 +44,10 @@ mpfr_sin (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
MPFR_ZIV_DECL (loop);
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (y), mpfr_log_prec, y,
+ inexact));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
{
diff --git a/src/sin_cos.c b/src/sin_cos.c
index 816921fb0..a8a94bc69 100644
--- a/src/sin_cos.c
+++ b/src/sin_cos.c
@@ -60,8 +60,10 @@ mpfr_sin_cos (mpfr_ptr y, mpfr_ptr z, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
}
}
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("sin[%#R]=%R cos[%#R]=%R", y, y, z, z));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("sin[%Pu]=%.*Rg cos[%Pu]=%.*Rg", mpfr_get_prec(y), mpfr_log_prec, y,
+ mpfr_get_prec (z), mpfr_log_prec, z));
MPFR_SAVE_EXPO_MARK (expo);
diff --git a/src/sinh.c b/src/sinh.c
index 95e3b6a0f..48634bf2a 100644
--- a/src/sinh.c
+++ b/src/sinh.c
@@ -32,8 +32,10 @@ mpfr_sinh (mpfr_ptr y, mpfr_srcptr xt, mpfr_rnd_t rnd_mode)
mpfr_t x;
int inexact;
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", xt, xt, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (xt), mpfr_log_prec, xt, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (xt)))
{
diff --git a/src/sinh_cosh.c b/src/sinh_cosh.c
index 4c355b72f..16d40892e 100644
--- a/src/sinh_cosh.c
+++ b/src/sinh_cosh.c
@@ -39,8 +39,12 @@ mpfr_sinh_cosh (mpfr_ptr sh, mpfr_ptr ch, mpfr_srcptr xt, mpfr_rnd_t rnd_mode)
MPFR_ASSERTN (sh != ch);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", xt, xt, rnd_mode),
- ("sh[%#R]=%R ch[%#R]=%R", sh, sh, ch, ch));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (xt), mpfr_log_prec, xt, rnd_mode),
+ ("sh[%Pu]=%.*Rg ch[%Pu]=%.*Rg",
+ mpfr_get_prec (sh), mpfr_log_prec, sh,
+ mpfr_get_prec (ch), mpfr_log_prec, ch));
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (xt)))
{
diff --git a/src/sqr.c b/src/sqr.c
index 81450beba..e9916da2a 100644
--- a/src/sqr.c
+++ b/src/sqr.c
@@ -33,8 +33,10 @@ mpfr_sqr (mpfr_ptr a, mpfr_srcptr b, mpfr_rnd_t rnd_mode)
mp_size_t bn, tn;
MPFR_TMP_DECL(marker);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", b, b, rnd_mode),
- ("y[%#R]=%R inexact=%d", a, a, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (b), mpfr_log_prec, b, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (a), mpfr_log_prec, a, inexact));
/* deal with special cases */
if (MPFR_UNLIKELY(MPFR_IS_SINGULAR(b)))
diff --git a/src/sqrt.c b/src/sqrt.c
index d958ef64c..57847d7eb 100644
--- a/src/sqrt.c
+++ b/src/sqrt.c
@@ -43,8 +43,10 @@ mpfr_sqrt (mpfr_ptr r, mpfr_srcptr u, mpfr_rnd_t rnd_mode)
mpfr_exp_t expr;
MPFR_TMP_DECL(marker);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", u, u, rnd_mode),
- ("y[%#R]=%R inexact=%d", r, r, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (u), mpfr_log_prec, u, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (r), mpfr_log_prec, r, inexact));
if (MPFR_UNLIKELY(MPFR_IS_SINGULAR(u)))
{
diff --git a/src/sub.c b/src/sub.c
index 1ffd159fd..460c4340c 100644
--- a/src/sub.c
+++ b/src/sub.c
@@ -25,8 +25,11 @@ http://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc.,
int
mpfr_sub (mpfr_ptr a, mpfr_srcptr b, mpfr_srcptr c, mpfr_rnd_t rnd_mode)
{
- MPFR_LOG_FUNC (("b[%#R]=%R c[%#R]=%R rnd=%d", b, b, c, c, rnd_mode),
- ("a[%#R]=%R", a, a));
+ MPFR_LOG_FUNC
+ (("b[%Pu]=%.*Rg c[%Pu]=%.*Rg rnd=%d",
+ mpfr_get_prec (b), mpfr_log_prec, b,
+ mpfr_get_prec (c), mpfr_log_prec, c, rnd_mode),
+ ("a[%Pu]=%.*Rg", mpfr_get_prec (a), mpfr_log_prec, a));
if (MPFR_ARE_SINGULAR (b,c))
{
diff --git a/src/sub_d.c b/src/sub_d.c
index 8c80e79e0..b9ec57e73 100644
--- a/src/sub_d.c
+++ b/src/sub_d.c
@@ -30,8 +30,10 @@ mpfr_sub_d (mpfr_ptr a, mpfr_srcptr b, double c, mpfr_rnd_t rnd_mode)
mpfr_t d;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("b[%#R]=%R c=%.20g rnd=%d", b, b, c, rnd_mode),
- ("a[%#R]=%R", a, a));
+ MPFR_LOG_FUNC
+ (("b[%Pu]=%.*Rg c=%.20g rnd=%d",
+ mpfr_get_prec (b), mpfr_log_prec, b, c, rnd_mode),
+ ("a[%Pu]=%.*Rg", mpfr_get_prec (a), mpfr_log_prec, a));
MPFR_SAVE_EXPO_MARK (expo);
diff --git a/src/sub_ui.c b/src/sub_ui.c
index 6ae7b7ee0..67a3e2479 100644
--- a/src/sub_ui.c
+++ b/src/sub_ui.c
@@ -36,6 +36,12 @@ mpfr_sub_ui (mpfr_ptr y, mpfr_srcptr x, unsigned long int u, mpfr_rnd_t rnd_mode
MPFR_SAVE_EXPO_DECL (expo);
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg u=%lu rnd=%d",
+ mpfr_get_prec(x), mpfr_log_prec, x, u, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec(y), mpfr_log_prec, y, inex));
+
MPFR_TMP_INIT1 (up, uu, GMP_NUMB_BITS);
MPFR_ASSERTN (u == (mp_limb_t) u);
count_leading_zeros (cnt, (mp_limb_t) u);
diff --git a/src/tan.c b/src/tan.c
index cc6508dd7..dae838213 100644
--- a/src/tan.c
+++ b/src/tan.c
@@ -34,8 +34,10 @@ mpfr_tan (mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
MPFR_SAVE_EXPO_DECL (expo);
MPFR_GROUP_DECL (group);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", x, x, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
if (MPFR_UNLIKELY(MPFR_IS_SINGULAR(x)))
{
diff --git a/src/tanh.c b/src/tanh.c
index 9bf93b787..7ad452f93 100644
--- a/src/tanh.c
+++ b/src/tanh.c
@@ -31,8 +31,10 @@ mpfr_tanh (mpfr_ptr y, mpfr_srcptr xt , mpfr_rnd_t rnd_mode)
int inexact;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("x[%#R]=%R rnd=%d", xt, xt, rnd_mode),
- ("y[%#R]=%R inexact=%d", y, y, inexact));
+ MPFR_LOG_FUNC
+ (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (xt), mpfr_log_prec, xt, rnd_mode),
+ ("y[%Pu]=%.*Rg inexact=%d",
+ mpfr_get_prec (y), mpfr_log_prec, y, inexact));
/* Special value checking */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (xt)))
diff --git a/src/ui_div.c b/src/ui_div.c
index c71d73169..19e500947 100644
--- a/src/ui_div.c
+++ b/src/ui_div.c
@@ -32,6 +32,11 @@ mpfr_ui_div (mpfr_ptr y, unsigned long int u, mpfr_srcptr x, mpfr_rnd_t rnd_mode
mp_limb_t up[1];
unsigned long cnt;
+ MPFR_LOG_FUNC
+ (("u=%lu x[%Pu]=%.*Rg rnd=%d",
+ u, mpfr_get_prec(x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg", mpfr_get_prec(y), mpfr_log_prec, y));
+
if (MPFR_UNLIKELY(MPFR_IS_SINGULAR(x)))
{
if (MPFR_IS_NAN(x))
diff --git a/src/ui_sub.c b/src/ui_sub.c
index 2ad3d11f6..559b3f618 100644
--- a/src/ui_sub.c
+++ b/src/ui_sub.c
@@ -30,6 +30,11 @@ mpfr_ui_sub (mpfr_ptr y, unsigned long int u, mpfr_srcptr x, mpfr_rnd_t rnd_mode
mp_limb_t up[1];
unsigned long cnt;
+ MPFR_LOG_FUNC
+ (("u=%lu x[%Pu]=%.*Rg rnd=%d",
+ u, mpfr_get_prec(x), mpfr_log_prec, x, rnd_mode),
+ ("y[%Pu]=%.*Rg", mpfr_get_prec(y), mpfr_log_prec, y));
+
if (MPFR_UNLIKELY (u == 0))
return mpfr_neg (y, x, rnd_mode);
diff --git a/src/yn.c b/src/yn.c
index 3440cce17..71f59573a 100644
--- a/src/yn.c
+++ b/src/yn.c
@@ -153,8 +153,9 @@ mpfr_yn (mpfr_ptr res, long n, mpfr_srcptr z, mpfr_rnd_t r)
unsigned long absn;
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("x[%#R]=%R n=%d rnd=%d", z, z, n, r),
- ("y[%#R]=%R", res, res));
+ MPFR_LOG_FUNC
+ (("n=%ld x[%Pu]=%.*Rg rnd=%d", n, mpfr_get_prec (z), mpfr_log_prec, z, r),
+ ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (res), mpfr_log_prec, res, inex));
absn = SAFE_ABS (unsigned long, n);
diff --git a/src/zeta.c b/src/zeta.c
index 6c0bc5d88..13de63a25 100644
--- a/src/zeta.c
+++ b/src/zeta.c
@@ -299,8 +299,9 @@ mpfr_zeta (mpfr_t z, mpfr_srcptr s, mpfr_rnd_t rnd_mode)
MPFR_ZIV_DECL (loop);
MPFR_SAVE_EXPO_DECL (expo);
- MPFR_LOG_FUNC (("s[%#R]=%R rnd=%d", s, s, rnd_mode),
- ("z[%#R]=%R inexact=%d", z, z, inex));
+ MPFR_LOG_FUNC (
+ ("s[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (s), mpfr_log_prec, s, rnd_mode),
+ ("z[%Pu]=%.*Rg inexact=%d", mpfr_get_prec (z), mpfr_log_prec, z, inex));
/* Zero, Nan or Inf ? */
if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (s)))