wok annotate mpfr/stuff/mpfr-3.0.1.patch @ rev 10184

Up: yajl to 2.0.2.
author Christopher Rogers <slaxemulator@gmail.com>
date Fri May 20 22:41:43 2011 +0000 (2011-05-20)
parents
children
rev   line source
pankso@9750 1 diff -Naurd mpfr-3.0.1-a/PATCHES mpfr-3.0.1-b/PATCHES
pankso@9750 2 --- mpfr-3.0.1-a/PATCHES 2011-04-12 10:50:02.000000000 +0000
pankso@9750 3 +++ mpfr-3.0.1-b/PATCHES 2011-04-12 10:50:02.000000000 +0000
pankso@9750 4 @@ -0,0 +1 @@
pankso@9750 5 +asin_exprange
pankso@9750 6 diff -Naurd mpfr-3.0.1-a/VERSION mpfr-3.0.1-b/VERSION
pankso@9750 7 --- mpfr-3.0.1-a/VERSION 2011-04-04 10:19:18.000000000 +0000
pankso@9750 8 +++ mpfr-3.0.1-b/VERSION 2011-04-12 10:50:02.000000000 +0000
pankso@9750 9 @@ -1 +1 @@
pankso@9750 10 -3.0.1
pankso@9750 11 +3.0.1-p1
pankso@9750 12 diff -Naurd mpfr-3.0.1-a/asin.c mpfr-3.0.1-b/asin.c
pankso@9750 13 --- mpfr-3.0.1-a/asin.c 2011-04-04 10:19:18.000000000 +0000
pankso@9750 14 +++ mpfr-3.0.1-b/asin.c 2011-04-12 10:50:02.000000000 +0000
pankso@9750 15 @@ -63,11 +63,14 @@
pankso@9750 16
pankso@9750 17 compared = mpfr_cmp_ui (xp, 1);
pankso@9750 18
pankso@9750 19 + MPFR_SAVE_EXPO_MARK (expo);
pankso@9750 20 +
pankso@9750 21 if (MPFR_UNLIKELY (compared >= 0))
pankso@9750 22 {
pankso@9750 23 mpfr_clear (xp);
pankso@9750 24 if (compared > 0) /* asin(x) = NaN for |x| > 1 */
pankso@9750 25 {
pankso@9750 26 + MPFR_SAVE_EXPO_FREE (expo);
pankso@9750 27 MPFR_SET_NAN (asin);
pankso@9750 28 MPFR_RET_NAN;
pankso@9750 29 }
pankso@9750 30 @@ -80,13 +83,11 @@
pankso@9750 31 inexact = -mpfr_const_pi (asin, MPFR_INVERT_RND(rnd_mode));
pankso@9750 32 MPFR_CHANGE_SIGN (asin);
pankso@9750 33 }
pankso@9750 34 - mpfr_div_2ui (asin, asin, 1, rnd_mode); /* May underflow */
pankso@9750 35 - return inexact;
pankso@9750 36 + mpfr_div_2ui (asin, asin, 1, rnd_mode);
pankso@9750 37 }
pankso@9750 38 }
pankso@9750 39 -
pankso@9750 40 - MPFR_SAVE_EXPO_MARK (expo);
pankso@9750 41 -
pankso@9750 42 + else
pankso@9750 43 + {
pankso@9750 44 /* Compute exponent of 1 - ABS(x) */
pankso@9750 45 mpfr_ui_sub (xp, 1, xp, MPFR_RNDD);
pankso@9750 46 MPFR_ASSERTD (MPFR_GET_EXP (xp) <= 0);
pankso@9750 47 @@ -115,6 +116,7 @@
pankso@9750 48 inexact = mpfr_set (asin, xp, rnd_mode);
pankso@9750 49
pankso@9750 50 mpfr_clear (xp);
pankso@9750 51 + }
pankso@9750 52
pankso@9750 53 MPFR_SAVE_EXPO_FREE (expo);
pankso@9750 54 return mpfr_check_range (asin, inexact, rnd_mode);
pankso@9750 55 diff -Naurd mpfr-3.0.1-a/mpfr.h mpfr-3.0.1-b/mpfr.h
pankso@9750 56 --- mpfr-3.0.1-a/mpfr.h 2011-04-04 10:19:18.000000000 +0000
pankso@9750 57 +++ mpfr-3.0.1-b/mpfr.h 2011-04-12 10:50:02.000000000 +0000
pankso@9750 58 @@ -27,7 +27,7 @@
pankso@9750 59 #define MPFR_VERSION_MAJOR 3
pankso@9750 60 #define MPFR_VERSION_MINOR 0
pankso@9750 61 #define MPFR_VERSION_PATCHLEVEL 1
pankso@9750 62 -#define MPFR_VERSION_STRING "3.0.1"
pankso@9750 63 +#define MPFR_VERSION_STRING "3.0.1-p1"
pankso@9750 64
pankso@9750 65 /* Macros dealing with MPFR VERSION */
pankso@9750 66 #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
pankso@9750 67 diff -Naurd mpfr-3.0.1-a/tests/tasin.c mpfr-3.0.1-b/tests/tasin.c
pankso@9750 68 --- mpfr-3.0.1-a/tests/tasin.c 2011-04-04 10:19:17.000000000 +0000
pankso@9750 69 +++ mpfr-3.0.1-b/tests/tasin.c 2011-04-12 10:50:02.000000000 +0000
pankso@9750 70 @@ -219,6 +219,49 @@
pankso@9750 71 mpfr_clear (y);
pankso@9750 72 }
pankso@9750 73
pankso@9750 74 +static void
pankso@9750 75 +reduced_expo_range (void)
pankso@9750 76 +{
pankso@9750 77 + mpfr_exp_t emin, emax;
pankso@9750 78 + mpfr_t x, y, ex_y;
pankso@9750 79 + int inex, ex_inex;
pankso@9750 80 + unsigned int flags, ex_flags;
pankso@9750 81 +
pankso@9750 82 + emin = mpfr_get_emin ();
pankso@9750 83 + emax = mpfr_get_emax ();
pankso@9750 84 +
pankso@9750 85 + mpfr_inits2 (4, x, y, ex_y, (mpfr_ptr) 0);
pankso@9750 86 + mpfr_set_str (x, "-0.1e1", 2, MPFR_RNDN);
pankso@9750 87 +
pankso@9750 88 + mpfr_set_emin (1);
pankso@9750 89 + mpfr_set_emax (1);
pankso@9750 90 + mpfr_clear_flags ();
pankso@9750 91 + inex = mpfr_asin (y, x, MPFR_RNDA);
pankso@9750 92 + flags = __gmpfr_flags;
pankso@9750 93 + mpfr_set_emin (emin);
pankso@9750 94 + mpfr_set_emax (emax);
pankso@9750 95 +
pankso@9750 96 + mpfr_set_str (ex_y, "-0.1101e1", 2, MPFR_RNDN);
pankso@9750 97 + ex_inex = -1;
pankso@9750 98 + ex_flags = MPFR_FLAGS_INEXACT;
pankso@9750 99 +
pankso@9750 100 + if (SIGN (inex) != ex_inex || flags != ex_flags ||
pankso@9750 101 + ! mpfr_equal_p (y, ex_y))
pankso@9750 102 + {
pankso@9750 103 + printf ("Error in reduced_expo_range\non x = ");
pankso@9750 104 + mpfr_dump (x);
pankso@9750 105 + printf ("Expected y = ");
pankso@9750 106 + mpfr_out_str (stdout, 2, 0, ex_y, MPFR_RNDN);
pankso@9750 107 + printf ("\n inex = %d, flags = %u\n", ex_inex, ex_flags);
pankso@9750 108 + printf ("Got y = ");
pankso@9750 109 + mpfr_out_str (stdout, 2, 0, y, MPFR_RNDN);
pankso@9750 110 + printf ("\n inex = %d, flags = %u\n", SIGN (inex), flags);
pankso@9750 111 + exit (1);
pankso@9750 112 + }
pankso@9750 113 +
pankso@9750 114 + mpfr_clears (x, y, ex_y, (mpfr_ptr) 0);
pankso@9750 115 +}
pankso@9750 116 +
pankso@9750 117 int
pankso@9750 118 main (void)
pankso@9750 119 {
pankso@9750 120 @@ -226,6 +269,7 @@
pankso@9750 121
pankso@9750 122 special ();
pankso@9750 123 special_overflow ();
pankso@9750 124 + reduced_expo_range ();
pankso@9750 125
pankso@9750 126 test_generic (2, 100, 15);
pankso@9750 127
pankso@9750 128 diff -Naurd mpfr-3.0.1-a/version.c mpfr-3.0.1-b/version.c
pankso@9750 129 --- mpfr-3.0.1-a/version.c 2011-04-04 10:19:18.000000000 +0000
pankso@9750 130 +++ mpfr-3.0.1-b/version.c 2011-04-12 10:50:02.000000000 +0000
pankso@9750 131 @@ -25,5 +25,5 @@
pankso@9750 132 const char *
pankso@9750 133 mpfr_get_version (void)
pankso@9750 134 {
pankso@9750 135 - return "3.0.1";
pankso@9750 136 + return "3.0.1-p1";
pankso@9750 137 }
pankso@9750 138 diff -Naurd mpfr-3.0.1-a/PATCHES mpfr-3.0.1-b/PATCHES
pankso@9750 139 --- mpfr-3.0.1-a/PATCHES 2011-05-04 11:18:33.000000000 +0000
pankso@9750 140 +++ mpfr-3.0.1-b/PATCHES 2011-05-04 11:18:33.000000000 +0000
pankso@9750 141 @@ -0,0 +1 @@
pankso@9750 142 +rec_sqrt-carry
pankso@9750 143 diff -Naurd mpfr-3.0.1-a/VERSION mpfr-3.0.1-b/VERSION
pankso@9750 144 --- mpfr-3.0.1-a/VERSION 2011-04-12 10:50:02.000000000 +0000
pankso@9750 145 +++ mpfr-3.0.1-b/VERSION 2011-05-04 11:18:33.000000000 +0000
pankso@9750 146 @@ -1 +1 @@
pankso@9750 147 -3.0.1-p1
pankso@9750 148 +3.0.1-p2
pankso@9750 149 diff -Naurd mpfr-3.0.1-a/mpfr.h mpfr-3.0.1-b/mpfr.h
pankso@9750 150 --- mpfr-3.0.1-a/mpfr.h 2011-04-12 10:50:02.000000000 +0000
pankso@9750 151 +++ mpfr-3.0.1-b/mpfr.h 2011-05-04 11:18:33.000000000 +0000
pankso@9750 152 @@ -27,7 +27,7 @@
pankso@9750 153 #define MPFR_VERSION_MAJOR 3
pankso@9750 154 #define MPFR_VERSION_MINOR 0
pankso@9750 155 #define MPFR_VERSION_PATCHLEVEL 1
pankso@9750 156 -#define MPFR_VERSION_STRING "3.0.1-p1"
pankso@9750 157 +#define MPFR_VERSION_STRING "3.0.1-p2"
pankso@9750 158
pankso@9750 159 /* Macros dealing with MPFR VERSION */
pankso@9750 160 #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
pankso@9750 161 diff -Naurd mpfr-3.0.1-a/rec_sqrt.c mpfr-3.0.1-b/rec_sqrt.c
pankso@9750 162 --- mpfr-3.0.1-a/rec_sqrt.c 2011-04-04 10:19:18.000000000 +0000
pankso@9750 163 +++ mpfr-3.0.1-b/rec_sqrt.c 2011-05-04 11:18:33.000000000 +0000
pankso@9750 164 @@ -375,20 +375,37 @@
pankso@9750 165 MPFR_ASSERTD(un == ln + 1 || un == ln + 2);
pankso@9750 166 /* the high un-ln limbs of u will overlap the low part of {x+ln,xn},
pankso@9750 167 we need to add or subtract the overlapping part {u + ln, un - ln} */
pankso@9750 168 + /* Warning! th may be 0, in which case the mpn_add_1 and mpn_sub_1
pankso@9750 169 + below (with size = th) mustn't be used. In such a case, the limb
pankso@9750 170 + (carry) will be 0, so that this is semantically a no-op, but if
pankso@9750 171 + mpn_add_1 and mpn_sub_1 are used, GMP (currently) still does a
pankso@9750 172 + non-atomic read/write in a place that is not always allocated,
pankso@9750 173 + with the possible consequences: a crash if the corresponding
pankso@9750 174 + address is not mapped, or (rather unlikely) memory corruption
pankso@9750 175 + if another process/thread writes at the same place; things may
pankso@9750 176 + be worse with future GMP versions. Hence the tests carry != 0. */
pankso@9750 177 if (neg == 0)
pankso@9750 178 {
pankso@9750 179 if (ln > 0)
pankso@9750 180 MPN_COPY (x, u, ln);
pankso@9750 181 cy = mpn_add (x + ln, x + ln, xn, u + ln, un - ln);
pankso@9750 182 /* add cu at x+un */
pankso@9750 183 - cy += mpn_add_1 (x + un, x + un, th, cu);
pankso@9750 184 + if (cu != 0)
pankso@9750 185 + {
pankso@9750 186 + MPFR_ASSERTD (th != 0);
pankso@9750 187 + cy += mpn_add_1 (x + un, x + un, th, cu);
pankso@9750 188 + }
pankso@9750 189 }
pankso@9750 190 else /* negative case */
pankso@9750 191 {
pankso@9750 192 /* subtract {u+ln, un-ln} from {x+ln,un} */
pankso@9750 193 cy = mpn_sub (x + ln, x + ln, xn, u + ln, un - ln);
pankso@9750 194 /* carry cy is at x+un, like cu */
pankso@9750 195 - cy = mpn_sub_1 (x + un, x + un, th, cy + cu); /* n - un = th */
pankso@9750 196 + if (cy + cu != 0)
pankso@9750 197 + {
pankso@9750 198 + MPFR_ASSERTD (th != 0);
pankso@9750 199 + cy = mpn_sub_1 (x + un, x + un, th, cy + cu); /* n - un = th */
pankso@9750 200 + }
pankso@9750 201 /* cy cannot be zero, since the most significant bit of Xh is 1,
pankso@9750 202 and the correction is bounded by 2^{-h+3} */
pankso@9750 203 MPFR_ASSERTD(cy == 0);
pankso@9750 204 diff -Naurd mpfr-3.0.1-a/version.c mpfr-3.0.1-b/version.c
pankso@9750 205 --- mpfr-3.0.1-a/version.c 2011-04-12 10:50:02.000000000 +0000
pankso@9750 206 +++ mpfr-3.0.1-b/version.c 2011-05-04 11:18:33.000000000 +0000
pankso@9750 207 @@ -25,5 +25,5 @@
pankso@9750 208 const char *
pankso@9750 209 mpfr_get_version (void)
pankso@9750 210 {
pankso@9750 211 - return "3.0.1-p1";
pankso@9750 212 + return "3.0.1-p2";
pankso@9750 213 }
pankso@9750 214 diff -Naurd mpfr-3.0.1-a/PATCHES mpfr-3.0.1-b/PATCHES
pankso@9750 215 --- mpfr-3.0.1-a/PATCHES 2011-05-05 00:00:35.000000000 +0000
pankso@9750 216 +++ mpfr-3.0.1-b/PATCHES 2011-05-05 00:00:35.000000000 +0000
pankso@9750 217 @@ -0,0 +1 @@
pankso@9750 218 +atan-expo-range
pankso@9750 219 diff -Naurd mpfr-3.0.1-a/VERSION mpfr-3.0.1-b/VERSION
pankso@9750 220 --- mpfr-3.0.1-a/VERSION 2011-05-04 11:18:33.000000000 +0000
pankso@9750 221 +++ mpfr-3.0.1-b/VERSION 2011-05-05 00:00:35.000000000 +0000
pankso@9750 222 @@ -1 +1 @@
pankso@9750 223 -3.0.1-p2
pankso@9750 224 +3.0.1-p3
pankso@9750 225 diff -Naurd mpfr-3.0.1-a/atan.c mpfr-3.0.1-b/atan.c
pankso@9750 226 --- mpfr-3.0.1-a/atan.c 2011-04-04 10:19:18.000000000 +0000
pankso@9750 227 +++ mpfr-3.0.1-b/atan.c 2011-05-05 00:00:35.000000000 +0000
pankso@9750 228 @@ -431,5 +431,5 @@
pankso@9750 229 MPFR_GROUP_CLEAR (group);
pankso@9750 230
pankso@9750 231 MPFR_SAVE_EXPO_FREE (expo);
pankso@9750 232 - return mpfr_check_range (arctgt, inexact, rnd_mode);
pankso@9750 233 + return mpfr_check_range (atan, inexact, rnd_mode);
pankso@9750 234 }
pankso@9750 235 diff -Naurd mpfr-3.0.1-a/mpfr.h mpfr-3.0.1-b/mpfr.h
pankso@9750 236 --- mpfr-3.0.1-a/mpfr.h 2011-05-04 11:18:33.000000000 +0000
pankso@9750 237 +++ mpfr-3.0.1-b/mpfr.h 2011-05-05 00:00:35.000000000 +0000
pankso@9750 238 @@ -27,7 +27,7 @@
pankso@9750 239 #define MPFR_VERSION_MAJOR 3
pankso@9750 240 #define MPFR_VERSION_MINOR 0
pankso@9750 241 #define MPFR_VERSION_PATCHLEVEL 1
pankso@9750 242 -#define MPFR_VERSION_STRING "3.0.1-p2"
pankso@9750 243 +#define MPFR_VERSION_STRING "3.0.1-p3"
pankso@9750 244
pankso@9750 245 /* Macros dealing with MPFR VERSION */
pankso@9750 246 #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
pankso@9750 247 diff -Naurd mpfr-3.0.1-a/tests/tatan.c mpfr-3.0.1-b/tests/tatan.c
pankso@9750 248 --- mpfr-3.0.1-a/tests/tatan.c 2011-04-04 10:19:17.000000000 +0000
pankso@9750 249 +++ mpfr-3.0.1-b/tests/tatan.c 2011-05-05 00:00:35.000000000 +0000
pankso@9750 250 @@ -535,6 +535,52 @@
pankso@9750 251 mpfr_clears (a, x, y, (mpfr_ptr) 0);
pankso@9750 252 }
pankso@9750 253
pankso@9750 254 +/* http://websympa.loria.fr/wwsympa/arc/mpfr/2011-05/msg00008.html
pankso@9750 255 + * Incorrect flags (in debug mode on a 32-bit machine, assertion failure).
pankso@9750 256 + */
pankso@9750 257 +static void
pankso@9750 258 +reduced_expo_range (void)
pankso@9750 259 +{
pankso@9750 260 + mpfr_exp_t emin, emax;
pankso@9750 261 + mpfr_t x, y, ex_y;
pankso@9750 262 + int inex, ex_inex;
pankso@9750 263 + unsigned int flags, ex_flags;
pankso@9750 264 +
pankso@9750 265 + emin = mpfr_get_emin ();
pankso@9750 266 + emax = mpfr_get_emax ();
pankso@9750 267 +
pankso@9750 268 + mpfr_inits2 (12, x, y, ex_y, (mpfr_ptr) 0);
pankso@9750 269 + mpfr_set_str (x, "0.1e-5", 2, MPFR_RNDN);
pankso@9750 270 +
pankso@9750 271 + mpfr_set_emin (-5);
pankso@9750 272 + mpfr_set_emax (-5);
pankso@9750 273 + mpfr_clear_flags ();
pankso@9750 274 + inex = mpfr_atan (y, x, MPFR_RNDN);
pankso@9750 275 + flags = __gmpfr_flags;
pankso@9750 276 + mpfr_set_emin (emin);
pankso@9750 277 + mpfr_set_emax (emax);
pankso@9750 278 +
pankso@9750 279 + mpfr_set_str (ex_y, "0.1e-5", 2, MPFR_RNDN);
pankso@9750 280 + ex_inex = 1;
pankso@9750 281 + ex_flags = MPFR_FLAGS_INEXACT;
pankso@9750 282 +
pankso@9750 283 + if (SIGN (inex) != ex_inex || flags != ex_flags ||
pankso@9750 284 + ! mpfr_equal_p (y, ex_y))
pankso@9750 285 + {
pankso@9750 286 + printf ("Error in reduced_expo_range\non x = ");
pankso@9750 287 + mpfr_dump (x);
pankso@9750 288 + printf ("Expected y = ");
pankso@9750 289 + mpfr_out_str (stdout, 2, 0, ex_y, MPFR_RNDN);
pankso@9750 290 + printf ("\n inex = %d, flags = %u\n", ex_inex, ex_flags);
pankso@9750 291 + printf ("Got y = ");
pankso@9750 292 + mpfr_out_str (stdout, 2, 0, y, MPFR_RNDN);
pankso@9750 293 + printf ("\n inex = %d, flags = %u\n", SIGN (inex), flags);
pankso@9750 294 + exit (1);
pankso@9750 295 + }
pankso@9750 296 +
pankso@9750 297 + mpfr_clears (x, y, ex_y, (mpfr_ptr) 0);
pankso@9750 298 +}
pankso@9750 299 +
pankso@9750 300 int
pankso@9750 301 main (int argc, char *argv[])
pankso@9750 302 {
pankso@9750 303 @@ -546,6 +592,7 @@
pankso@9750 304 smallvals_atan2 ();
pankso@9750 305 atan2_bug_20071003 ();
pankso@9750 306 atan2_different_prec ();
pankso@9750 307 + reduced_expo_range ();
pankso@9750 308
pankso@9750 309 test_generic_atan (2, 200, 17);
pankso@9750 310 test_generic_atan2 (2, 200, 17);
pankso@9750 311 diff -Naurd mpfr-3.0.1-a/version.c mpfr-3.0.1-b/version.c
pankso@9750 312 --- mpfr-3.0.1-a/version.c 2011-05-04 11:18:33.000000000 +0000
pankso@9750 313 +++ mpfr-3.0.1-b/version.c 2011-05-05 00:00:35.000000000 +0000
pankso@9750 314 @@ -25,5 +25,5 @@
pankso@9750 315 const char *
pankso@9750 316 mpfr_get_version (void)
pankso@9750 317 {
pankso@9750 318 - return "3.0.1-p2";
pankso@9750 319 + return "3.0.1-p3";
pankso@9750 320 }
pankso@9750 321 diff -Naurd mpfr-3.0.1-a/PATCHES mpfr-3.0.1-b/PATCHES
pankso@9750 322 --- mpfr-3.0.1-a/PATCHES 2011-05-09 14:48:24.000000000 +0000
pankso@9750 323 +++ mpfr-3.0.1-b/PATCHES 2011-05-09 14:48:24.000000000 +0000
pankso@9750 324 @@ -0,0 +1 @@
pankso@9750 325 +texp-zero
pankso@9750 326 diff -Naurd mpfr-3.0.1-a/VERSION mpfr-3.0.1-b/VERSION
pankso@9750 327 --- mpfr-3.0.1-a/VERSION 2011-05-05 00:00:35.000000000 +0000
pankso@9750 328 +++ mpfr-3.0.1-b/VERSION 2011-05-09 14:48:24.000000000 +0000
pankso@9750 329 @@ -1 +1 @@
pankso@9750 330 -3.0.1-p3
pankso@9750 331 +3.0.1-p4
pankso@9750 332 diff -Naurd mpfr-3.0.1-a/mpfr.h mpfr-3.0.1-b/mpfr.h
pankso@9750 333 --- mpfr-3.0.1-a/mpfr.h 2011-05-05 00:00:35.000000000 +0000
pankso@9750 334 +++ mpfr-3.0.1-b/mpfr.h 2011-05-09 14:48:24.000000000 +0000
pankso@9750 335 @@ -27,7 +27,7 @@
pankso@9750 336 #define MPFR_VERSION_MAJOR 3
pankso@9750 337 #define MPFR_VERSION_MINOR 0
pankso@9750 338 #define MPFR_VERSION_PATCHLEVEL 1
pankso@9750 339 -#define MPFR_VERSION_STRING "3.0.1-p3"
pankso@9750 340 +#define MPFR_VERSION_STRING "3.0.1-p4"
pankso@9750 341
pankso@9750 342 /* Macros dealing with MPFR VERSION */
pankso@9750 343 #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
pankso@9750 344 diff -Naurd mpfr-3.0.1-a/tests/texp.c mpfr-3.0.1-b/tests/texp.c
pankso@9750 345 --- mpfr-3.0.1-a/tests/texp.c 2011-04-04 10:19:17.000000000 +0000
pankso@9750 346 +++ mpfr-3.0.1-b/tests/texp.c 2011-05-09 14:48:24.000000000 +0000
pankso@9750 347 @@ -170,7 +170,9 @@
pankso@9750 348 mpfr_set_prec (x, prec);
pankso@9750 349 mpfr_set_prec (y, prec);
pankso@9750 350 mpfr_set_prec (z, prec);
pankso@9750 351 - mpfr_urandomb (x, RANDS);
pankso@9750 352 + do
pankso@9750 353 + mpfr_urandomb (x, RANDS);
pankso@9750 354 + while (MPFR_IS_ZERO (x)); /* 0 is handled by mpfr_exp only */
pankso@9750 355 rnd = RND_RAND ();
pankso@9750 356 mpfr_exp_2 (y, x, rnd);
pankso@9750 357 mpfr_exp_3 (z, x, rnd);
pankso@9750 358 diff -Naurd mpfr-3.0.1-a/version.c mpfr-3.0.1-b/version.c
pankso@9750 359 --- mpfr-3.0.1-a/version.c 2011-05-05 00:00:35.000000000 +0000
pankso@9750 360 +++ mpfr-3.0.1-b/version.c 2011-05-09 14:48:24.000000000 +0000
pankso@9750 361 @@ -25,5 +25,5 @@
pankso@9750 362 const char *
pankso@9750 363 mpfr_get_version (void)
pankso@9750 364 {
pankso@9750 365 - return "3.0.1-p3";
pankso@9750 366 + return "3.0.1-p4";
pankso@9750 367 }