Annotation of OpenXM/src/kan96xx/gmp-2.0.2-ssh-2/ChangeLog, Revision 1.1
1.1 ! takayama 1: Thu Jun 6 19:00:53 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 2:
! 3: * Version 2.0.2 released.
! 4:
! 5: * install.sh: New file.
! 6: * Makefile.in (INSTALL): Use install.sh.
! 7: (install-normal): New name for target `install'.
! 8: (install): New dummy target.
! 9:
! 10: * mpz/pow_ui.c: Swap tests for (e == 0) and (bsize == 0).
! 11: * mpz/ui_pow_ui.c: Swap tests for (e == 0) and (blimb == 0).
! 12:
! 13: * config/mt-linux (AR_FLAGS): New file.
! 14: * configure.in: Use config/mt-linux for all linux systems.
! 15:
! 16: Tue Jun 4 03:42:18 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 17:
! 18: * Version 2.0.1 released.
! 19:
! 20: * mpf/tests/ref.c: Cast result of TMP_ALLOC to the right pointer type.
! 21:
! 22: * extract-double.c: Test _GMP_IEEE_FLOATS with #if, not plain if.
! 23:
! 24: * insert-double.c: Don't #include stdlib.h.
! 25:
! 26: * gmp-impl.h (union ieee_double_extract): Test sparc and __sparc.
! 27: Do not test __sparc__.
! 28:
! 29: * mpf/reldiff.c: Change declaration to work around irix5 compiler bug.
! 30: * mpq/equal.c: Likewise.
! 31:
! 32: * mpn/generic/gcd.c: Delete spurious comma at end of enumeration.
! 33:
! 34: * mpn/generic/gcdext.c: Add K&R declaration syntax.
! 35: * stack-alloc.h: Likewise.
! 36: * insert-double.c: Likewise.
! 37: * extract-double.c: Likewise.
! 38: * mpf/tests/reuse.c: Likewise.
! 39: * mpz/tests/reuse.c: Likewise.
! 40: * mpf/tests/t-sub.c: Likewise.
! 41: * mpf/tests/t-add.c: Likewise.
! 42: * mpf/tests/t-muldiv.c: Likewise.
! 43: * mpf/tests/t-conv.c: Likewise.
! 44: * mpf/tests/ref.c: Likewise.
! 45:
! 46: * mpn/config/t-oldgas: Renamed from t-freebsd.
! 47: * mpn/configure.in: Use t-oldgas for freebsd, netbsd, and some linux
! 48: configurations.
! 49:
! 50: * mpn/powerpc32/mul_1.s: Really clear cy before entering loop.
! 51: * mpn/powerpc32/*.s: Fix power/powerpc syntax issues.
! 52:
! 53: * mpn/config/t-ppc-aix: New file.
! 54: * mpn/configure.in: Use t-ppc-aix for powerpc like t-pwr-aix for power.
! 55:
! 56: Wed May 29 02:07:31 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 57:
! 58: * gmp.h (mp_bits_per_limb): Change qualifier from `const' to
! 59: __gmp_const.
! 60:
! 61: * gmp.h (mpf_init_set_str): Add `const' qualifier for 2nd parameter.
! 62: * mpf/iset_str.c: Likewise.
! 63:
! 64: Mon May 27 00:15:58 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 65:
! 66: * gmp-impl.h: Declare __gmp_extract_double.
! 67:
! 68: * mpz/set_q.c: Delete unused variables.
! 69:
! 70: * gmp.h (mpq_equal): Declare.
! 71:
! 72: * mpf/eq.c: mpf_cmp2 -> mpf_eq.
! 73:
! 74: Fri May 24 03:20:44 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 75:
! 76: * mpz/iset_d.c: Don't include <math.h>.
! 77:
! 78: * insert-double.c (__gmp_scale2): New name for scal2.
! 79: * mpz/get_d.c: Corresponding change.
! 80: * mpf/get_d.c: Likewise.
! 81: * mpq/get_d.c: Likewise.
! 82: * gmp-impl.h: Declare __gmp_scale2.
! 83:
! 84: * mpn/generic/scan0.c: Clarify comment.
! 85:
! 86: * mpz/set_q.c: New file.
! 87: * Makefile.in: Compile it.
! 88: * make.bat: Likewise.
! 89: * gmp.h: Declare mpz_set_q.
! 90:
! 91: * insert-double.c: New file.
! 92: * Makefile.in: Compile it.
! 93: * make.bat: Likewise.
! 94:
! 95: * mpz/get_d.c: New file.
! 96: * mpz/Makefile.in: Compile it.
! 97: * make.bat: Likewise.
! 98: * gmp.h: Declare mpz_get_d.
! 99:
! 100: * mpf/get_d.c: New file.
! 101: * mpf/Makefile.in: Compile it.
! 102: * make.bat: Likewise.
! 103: * gmp.h: Declare mpf_get_d.
! 104:
! 105: * make.bat: Compile things in alphabetical order.
! 106:
! 107: * gmp-impl.h (MP_BASE_AS_DOUBLE): New #define.
! 108: (LIMBS_PER_DOUBLE): New #define.
! 109:
! 110: * extract-double.c: New file.
! 111: * Makefile.in: Compile it.
! 112: * make.bat: Likewise.
! 113: * mpz/set_d.c: Rewrite to use __gmp_extract_double.
! 114: * mpf/set_d.c: Likewise.
! 115:
! 116: * mpn/configure.in: Use t-pwr-aix also for aix 3.2.4 and up.
! 117:
! 118: Wed May 22 02:48:35 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 119:
! 120: * gmp-impl.h: Rework code for defining ieee_double_extract.
! 121: (IEEE_DOUBLE_BIG_ENDIAN): Macro removed.
! 122: (_GMP_IEEE_FLOATS): New macro.
! 123: * mpn/vax/gmp-mparam.h: Delete.
! 124:
! 125: * mpn/config/t-pwr-aix: New file.
! 126: * mpn/configure.in: Use t-pwr-aix for aix 4 and later.
! 127:
! 128: Mon May 20 16:30:31 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 129:
! 130: * gmp.h: In code for setting _GMP_H_HAVE_FILE, test more symbols.
! 131:
! 132: * mpf/tests/t-add.c (oo): Add some `l' printf modifiers.
! 133: * mpf/tests/t-sub.c (oo): Likewise.
! 134: * mpf/tests/t-conv.c (oo): Likewise.
! 135: * mpf/tests/t-sqrt.c (oo): Likewise.
! 136:
! 137: * mpz/tests/t-mul.c (_mpn_mul_classic): Remove unused variables.
! 138:
! 139: * mpn/{pyr,i960,clipper}/*.s: Add missing copyright headers.
! 140:
! 141: Fri May 17 02:24:43 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 142:
! 143: * mpz/set_d.c: Call _mpz_realloc.
! 144:
! 145: * mpq/set_z.c: New file.
! 146: * mpq/Makefile.in: Compile it.
! 147: * make.bat: Likewise.
! 148: * gmp.h: Declare mpq_set_z.
! 149:
! 150: * mp?/Makefile.in (libmp?.a): Depend on Makefile, not Makefile.in.
! 151: * mpf/Makefile.in (test): Delete spurious target.
! 152: * mpq/Makefile.in (test): Likewise.
! 153:
! 154: * mpf/out_str.c: Use `e' to separate exponent when base <= 10.
! 155:
! 156: * mpn/configure.in: Treat ultrasparc just like sparc v8,
! 157: until 64-bit compilers are ready.
! 158:
! 159: * mpf/set_d.c: Make it work for 64-bit machines.
! 160:
! 161: Thu May 16 20:53:57 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 162:
! 163: * gmp-impl.h: Set IEEE_DOUBLE_BIG_ENDIAN to 0 for little-endian
! 164: machines.
! 165: * mpn/x86/gmp-mparam.h: Delete file.
! 166:
! 167: * configure.in: Treat microsparc like sparc8.
! 168:
! 169: * urandom.h: Test __alpha instead of __alpha__, since the former
! 170: is the standard symbol.
! 171: * mpn/generic/random2.c: Likewise.
! 172: * mpf/random2.c: Likewise.
! 173:
! 174: Tue May 14 13:42:39 1996 Torbjorn Granlund (tege@tiny.tmg.se)
! 175:
! 176: * mpz/set_f.c: New file.
! 177: * mpz/Makefile.in: Compile it.
! 178: * gmp.h: Declare mpz_set_f.
! 179:
! 180: * mpf/set_q.c: Simplify expression in rsize == nsize if-then-else arms.
! 181:
! 182: Tue May 14 13:03:07 1996 Torbjorn Granlund (tege@tiny.tmg.se)
! 183:
! 184: * make.bat: Add all new files.
! 185:
! 186: Sun May 12 22:24:36 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 187:
! 188: * mpf/set_z.c: New file.
! 189: * mpf/Makefile.in: Compile it.
! 190: * gmp.h: Declare mpf_set_z.
! 191:
! 192: Sat May 11 19:26:25 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 193:
! 194: * gmp.h: Declare mpf_set_q.
! 195:
! 196: * mpf/set_q.c: Compute prec-1 limbs in mpn_divrem call.
! 197:
! 198: Fri May 10 17:37:38 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 199:
! 200: * mpf/set_q.c: New file.
! 201: * mpf/Makefile.in: Compile it.
! 202:
! 203: * config.sub: Recognize sparc8.
! 204:
! 205: Wed May 8 09:19:11 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 206:
! 207: * mpf/tests/t-dm2exp.c: New file.
! 208:
! 209: * mpf/tests/t-add.c: Correct header comment.
! 210: * mpf/tests/t-sub.c: Likewise.
! 211: * mpf/tests/t-sqrt.c: Likewise.
! 212:
! 213: * mpf/div.c: Misc variable name cleanups.
! 214: * mpf/div_ui.c: Base more closely on mpf/div.c.
! 215: * mpf/ui_div.c: Likewise.
! 216:
! 217: * mpz/tests/Makefile.in (check): Depend on Makefile.
! 218: * mpq/tests/Makefile.in (check): Likewise.
! 219: * mpf/tests/Makefile.in (check): Likewise.
! 220:
! 221: * mpf/tests/t-muldiv.c: New file.
! 222: * mpf/tests/Makefile.in: Compile and run `t-muldiv'.
! 223: (t-ref.o): Delete spurious rule.
! 224:
! 225: * mpf/sqrt.c: Properly detect negative input operand.
! 226:
! 227: * mpf/sqrt_ui.c: Delete spurious header comment.
! 228: * mpf/sqrt.c: Likewise.
! 229: * mpz/sqrt.c: Likewise.
! 230:
! 231: * mpz/tests/reuse.c (main): Read `reps' from command line.
! 232:
! 233: * mpf/tests/reuse.c: New file.
! 234: * mpf/tests/Makefile.in: Compile and run `reuse'.
! 235:
! 236: * mpf/mul_ui.c: Disable code for removing low zero limbs.
! 237:
! 238: * mpf/div.c: Fix condition for when vp and qp overlaps.
! 239:
! 240: * mpf/add_ui.c: When sum equals u, copy up to prec+1 limbs.
! 241:
! 242: * mpf/out_str.c: Don't output '\n' after exponent.
! 243:
! 244: * mpf/add_ui.c: New special case for when U is completely cancelled.
! 245:
! 246: Wed Apr 24 05:33:28 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 247:
! 248: * Version 2.0 released.
! 249:
! 250: * All files: Upfate FSF's address.
! 251:
! 252: * Makefile.in (gmp_toc.html): New name for gmp.html.
! 253: (TAGS): Depend on force.
! 254:
! 255: * mpf/tests/t-conv.c: Pass -base to mpf_set_str.
! 256:
! 257: Sat Apr 20 03:54:06 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 258:
! 259: * Makefile.in (ps): New target, depend on gmp.ps.
! 260:
! 261: Fri Apr 19 14:03:15 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 262:
! 263: * mpf/out_str.c: Print `@' before exponent, not `e'.
! 264:
! 265: * make.bat: Update from Makefiles.
! 266:
! 267: Thu Apr 18 01:22:05 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 268:
! 269: * mpf/set_str.c: If parameter `base' is negative, expect exponent
! 270: to be decimal, otherwise in the same base as the mantissa.
! 271:
! 272: Wed Apr 17 17:28:36 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 273:
! 274: * mpf/set_dfl_prec.c: Don't return anything.
! 275: * gmp.h: Corresponding changes.
! 276:
! 277: * mpf/set_dfl_prec.c: Use `unsigned long int' for bit counts.
! 278: * mpf/init2.c: Likewise.
! 279: * mpf/get_prc.c: Likewise.
! 280: * mpf/set_prc.c: Likewise.
! 281: * mpf/set_prc_raw.c: Likewise.
! 282: * mpz/popcount.c: Likewise.
! 283: * mpz/hamdist.c: Likewise.
! 284: * mpz/scan1.c: Likewise.
! 285: * mpz/scan0.c: Likewise.
! 286: * mpn/generic/popcount.c: Likewise.
! 287: * mpn/generic/hamdist.c: Likewise.
! 288: * mpn/generic/scan1.c: Likewise.
! 289: * mpn/generic/scan0.c: Likewise.
! 290: * gmp.h: Likewise.
! 291:
! 292: * mpf/eq.c: New file, based on mpf/diff.c.
! 293: * mpf/diff.c: Delete.
! 294: * mpf/Makefile.in: Corresponding changes.
! 295: * gmp.h: Likewise.
! 296:
! 297: * mpf/reldiff.c: New file.
! 298: * mpf/Makefile.in: Compile it.
! 299: * gmp.h: Declare mpf_reldiff.
! 300:
! 301: * mpz/iset_d.c: New file.
! 302: * mpz/Makefile.in: Compile it.
! 303: * gmp.h: Declare mpz_init_set_d.
! 304:
! 305: Tue Apr 16 16:28:31 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 306:
! 307: * Makefile.in (gmp.html): Pass -acc to texi2html.
! 308:
! 309: Mon Apr 15 16:20:24 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 310:
! 311: * mpf/set_str.c: Switch off code for defaulting the base from the
! 312: leading characters.
! 313:
! 314: * gmp.h (mp?_sign): Delete.
! 315: (mp?_sgn): New macros.
! 316:
! 317: Fri Apr 12 17:23:33 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 318:
! 319: * Makefile.in (gmp.dvi): Delete tmp.* at end of rule.
! 320:
! 321: Wed Apr 10 22:52:02 1996 Torbjorn Granlund (tege@tiny.tmg.se)
! 322:
! 323: * mpf/random2.c: Change of `exp' param, mp_size_t => mp_exp_t.
! 324: * gmp.h: Corresponding change.
! 325:
! 326: * gmp.h (mp_bits_per_limb): Make it const.
! 327:
! 328: Sat Mar 30 01:20:23 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 329:
! 330: * configure.in: Re-enable recognition of with_gcc.
! 331:
! 332: * mpf/Makefile.in (.c.o): Pass XCFLAGS.
! 333: * mpn/Makefile.in (.c.o): Likewise.
! 334: * mpz/Makefile.in (.c.o): Likewise.
! 335: * mpq/Makefile.in (.c.o): Likewise.
! 336: * mpbsd/Makefile.in (.c.o): Likewise.
! 337: * mpf/tests/Makefile.in (.c.o): Likewise.
! 338: * mpz/tests/Makefile.in (.c.o): Likewise.
! 339: * mpq/tests/Makefile.in (.c.o): Likewise.
! 340:
! 341: * Makefile.in (XCFLAGS): Default to empty.
! 342: (FLAGS_TO_PASS): Pass on XCFLAGS.
! 343: (.c.o): Pass XCFLAGS.
! 344:
! 345: * config/mt-m88110 (XCFLAGS): Define instead of CC.
! 346: * config/mt-sprc8-gcc (XCFLAGS): Likewise.
! 347: * config/mt-supspc-gcc (XCFLAGS): Likewise.
! 348:
! 349: * configure: Don't default CC to "gcc -O2" is -with-gcc=no was
! 350: specified.
! 351:
! 352: Mon Mar 25 01:07:54 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 353:
! 354: * urandom.h: Test for __SVR4 in addition to __svr4__.
! 355:
! 356: * mp_bpl.c (mp_bits_per_limb): Declare as `const'.
! 357:
! 358: * Makefile.in (CFLAGS): `-O2' => `-O'.
! 359: * mpn/Makefile.in (CFLAGS): Likewise.
! 360:
! 361: * gmp-impl.h: Get rid of obsolete field access macros.
! 362:
! 363: * mpn/mp_bases.c (__mp_bases): 1e39 => 1e38 to work around Solaris
! 364: cc compiler bug.
! 365:
! 366: * gmp.h (__MPN): Make it work also for non-ANSI compilers.
! 367:
! 368: Thu Mar 21 01:07:54 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 369:
! 370: * mpf/sub.c: New special case for ediff <= 1 before generic code.
! 371: Simplify generic code for ediff == 0.
! 372: Rename uexp => exp.
! 373:
! 374: Mon Mar 11 18:24:57 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 375:
! 376: * mpf/tests/*.c: Use ref_mpf_sub for error calculation.
! 377: * mpf/tests/Makefile.in: Link ref.o to all executables.
! 378:
! 379: * mpf/tests/t-sub.c: Make u = v + 1 with 50% probability.
! 380:
! 381: Sun Mar 10 21:03:17 1996 Torbjorn Granlund (tege@tiny.tmg.se)
! 382:
! 383: * mpf/get_str.c: In digit development loop for fractions, change
! 384: loop condition from `<' to `<='.
! 385:
! 386: Thu Mar 7 04:58:11 1996 Torbjorn Granlund <tege@tiny.tmg.se>
! 387:
! 388: * mpn/mp_bases.c (__mp_bases): 1e100 => 1e39 to avoid overflow warning.
! 389:
! 390: Wed Mar 6 01:10:42 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 391:
! 392: * mpf/tests/t-sqrt.c: New file.
! 393: * mpf/tests/Makefile.in: Corresponding changes.
! 394:
! 395: * mpf/sqrt.c: Special case for square root of zero.
! 396:
! 397: * mpq/add.c: Clean up variable names.
! 398: * mpq/sub.c: Update from mpq/add.c.
! 399:
! 400: * mpz/divexact.c: abs => ABS.
! 401: * mpz/gcd.c: Likewise. Rewrite final fixup code, to decrease
! 402: allocation. Misc cleanups.
! 403:
! 404: Tue Mar 5 22:24:56 1996 Torbjorn Granlund <tege@tmg.se>
! 405:
! 406: * mpn/configure.in: Recognize linuxoldld as a synonym for linuxaout.
! 407:
! 408: * gmp.h (mpn_add, mpn_add_1, mpn_sub, mpn_sub_1): Add prototypes.
! 409:
! 410: * mpn/configure.in: Use t-freebsd also for netbsd.
! 411:
! 412: Mon Mar 4 15:13:28 1996 Torbjorn Granlund <tege@tmg.se>
! 413:
! 414: * mpq/Makefile.in (cmp.o): Depend on longlong.h.
! 415:
! 416: * mpq/equal.c: New file.
! 417: * mpq/Makefile.in: Corresponding changes.
! 418:
! 419: * mpf/tests/t-add.c: New file.
! 420: * mpf/tests/t-sub.c: Renamed from t-addsub.c.
! 421: * mpf/tests/ref.c: New file.
! 422: * mpf/tests/Makefile.in: Corresponding changes.
! 423:
! 424: * gmp-impl.h (SIZ, ABSIZ, PTR, EXP, PREC, ALLOC): New #defines.
! 425:
! 426: Sun Mar 3 07:45:46 1996 Torbjorn Granlund <tege@tmg.se>
! 427:
! 428: * mpf/set_str.c: In exponentialization code, allocate 3 extra
! 429: limbs, not just 2.
! 430:
! 431: * mpf/get_str.c: Allocate sufficient space for tstr.
! 432: When calculating exp_in_base, round result down.
! 433:
! 434: * mpf/tests/t-conv.c: New file.
! 435: * mpf/tests/Makefile.in: Corresponding changes.
! 436:
! 437: * mp_bpl.c: New file.
! 438: * gmp.h: Declare it.
! 439: * Makefile.in: Corresponding changes.
! 440:
! 441: Sat Mar 2 06:27:56 1996 Torbjorn Granlund <tege@tmg.se>
! 442:
! 443: * mpf/set_prc_raw.c: New file.
! 444: * mpf/set_prc.c: Renamed from set_prec.c.
! 445: * mpf/get_prc.c: New file.
! 446: * mpf/Makefile.in: Corresponding changes.
! 447: * gmp.h: Declare new functions.
! 448:
! 449: * mpn/generic/gcdext.c: Add copyright header.
! 450:
! 451: Fri Mar 1 01:22:24 1996 Torbjorn Granlund <tege@tmg.se>
! 452:
! 453: * mpn/configure.in: For ppc601, search "power" before "powerpc32".
! 454:
! 455: * mp?/Makefile.in (AR_FLAGS): New variable.
! 456: (libmp?.a): Use it.
! 457:
! 458: * make.bat: New file.
! 459: * mpn/msdos: New directory.
! 460: * mpn/msdos/asm-syntax.h: New file.
! 461:
! 462: * mpn/Makefile.in (distclean maintainer-clean): Delete asm-syntax.h.
! 463:
! 464: * config.sub: Recognize [ctj]90-cray.
! 465:
! 466: * mpn/configure.in: Recognize [ctj]90-cray-unicos*.
! 467:
! 468: * mpn/generic/gcdext.c: Don't use alloca directly, use TMP_* macros.
! 469:
! 470: * mpn/generic/gcd.c: Split increment from use of USIZE to avoid
! 471: undefined behaviour.
! 472:
! 473: Thu Feb 29 04:11:24 1996 Torbjorn Granlund <tege@tmg.se>
! 474:
! 475: * Makefile.in (install-info-files): Update for new install-info
! 476: behaviour.
! 477:
! 478: * mpn/power/add_n.s: Rewrite.
! 479: * mpn/power/sub_n.s: Rewrite.
! 480:
! 481: Wed Feb 28 01:34:30 1996 Torbjorn Granlund <tege@tmg.se>
! 482:
! 483: * mpz/pow_ui.c: Compute allocation more aggressively for small bases.
! 484: * mpz/ui_pow_ui.c: Likewise.
! 485:
! 486: * mpn/mp_bases.c (__mp_bases): Put huge value in 2nd field for index 1.
! 487:
! 488: * mpn/generic/sqrtrem.c: sizeof (mp_limb_t) => BYTES_PER_MP_LIMB.
! 489: * mpn/generic/gcd.c: Likewise.
! 490: (SIGN_BIT): Compute differently.
! 491:
! 492: Mon Feb 26 00:07:36 1996 Torbjorn Granlund <tege@tmg.se>
! 493:
! 494: * All files: mp_limb => mp_limb_t, mp_limb_signed => mp_limb_signed_t.
! 495:
! 496: * Makefile.in (install, install-bsdmp, install-info-files): Depend
! 497: on installdirs. chmod all installed files.
! 498:
! 499: Sun Feb 25 01:47:41 1996 Torbjorn Granlund <tege@tmg.se>
! 500:
! 501: * mpbsd/configure.in: Delete debugging code.
! 502:
! 503: * All Makefile.in: Update clean targets.
! 504:
! 505: * Makefile.in (AR_FLAGS): New variable.
! 506: (libgmp.a): Use it.
! 507: (libmp.a): Likewise.
! 508:
! 509: * VERSION: Delete file.
! 510:
! 511: * Makefile.in (installdirs): New target.
! 512: * mkinstalldirs: New file (from the texinfo package).
! 513:
! 514: * Makefile.in (INSTALL, INSTALL_DATA, INSTALL_PROGRAM): New variables.
! 515: (MAKEINFO, MAKEINFOFLAGS, TEXI2DVI): New variables.
! 516: (install-info): New target.
! 517: (install, install-bsdmp): Depend on install-info.
! 518: ($(srcdir)/gmp.info): Changed from plain gmp.info; put info files
! 519: into source directory.
! 520: (distclean, mostlyclean): New targets.
! 521: (maintainer-clean): New name for realclean.
! 522: (uninstall): New target.
! 523: (TAGS): New target.
! 524: (info, dvi): New targets.
! 525: (.PHONY): Assign.
! 526:
! 527: * Makefile.in (install, install-bsdmp): Use INSTALL_DATA.
! 528:
! 529: * mp{n,z,f,bsd}/move-if-change: Delete.
! 530:
! 531: * mpbsd/Makefile.in (stamp-stddefh): Delete target.
! 532:
! 533: * Makefile.in (.c.o): Pass CFLAGS last.
! 534: * mpbsd/Makefile.in (.c.o): Likewise.
! 535: * mpf/Makefile.in (.c.o): Likewise.
! 536: * mpq/Makefile.in (.c.o): Likewise.
! 537: * mpz/Makefile.in (.c.o): Likewise.
! 538: * mpn/Makefile.in (.c.o): Likewise.
! 539: (.S.o): Likewise.
! 540:
! 541: * memory.c: Change allocation error message.
! 542:
! 543: * Makefile.in (install): Prefix gmp.h with $(srcdir).
! 544: (install-bsdmp): Prefix mp.h with $(srcdir).
! 545:
! 546: * mp{n,z,f,bsd}/{configure,config.sub}: Delete.
! 547:
! 548: * Makefile.in (gmp.dvi): Set TEXINPUTS also for 2nd tex invocation
! 549: (install targets): Install gmp.info-N.
! 550:
! 551: Sat Feb 24 03:36:52 1996 Torbjorn Granlund <tege@tmg.se>
! 552:
! 553: * mpf/get_str.c: Fix typo.
! 554:
! 555: * mpz/legendre.c: Clarify expression with extra parens.
! 556:
! 557: * version.c (gmp_version): Not static.
! 558:
! 559: * mpf/iset_str.c: Properly return error code.
! 560:
! 561: * mpf/add.c: Delete unused variables.
! 562: * mpf/inp_str.c: Likewise.
! 563: * mpq/get_d.c: Likewise.
! 564:
! 565: * mpn/generic/dump.c: #include <stdio.h>.
! 566: * mpf/dump.c: Likewise.
! 567: * mpf/set_str.c: #include <ctype.h>.
! 568: (strtol): Declare.
! 569:
! 570: * gmp.h: mpn_sqrt => mpn_sqrtrem.
! 571:
! 572: * Makefile.in (clean, realclean): Clean in mpbsd.
! 573: (check): Test in mpf.
! 574:
! 575: * mpf/Makefile.in (clean): Clean in tests.
! 576: * mpq/Makefile.in (clean): Clean in tests.
! 577:
! 578: * mpf/tests/Makefile.in: New file.
! 579: * mpf/tests/configure.in: New file.
! 580: * mpf/tests/t-addsub.c: New file.
! 581:
! 582: * mpf/sub_ui.c: Simply call mpf_sub for now.
! 583:
! 584: * mpf/sub.c: Increase prec by 1.
! 585: * mpf/ui_sub.c: Likewise.
! 586:
! 587: Fri Feb 23 00:59:54 1996 Torbjorn Granlund <tege@tmg.se>
! 588:
! 589: * mpf/ui_sub.c: Fix typos.
! 590:
! 591: * mpf/get_str.c: When allocating space for tmp, allow for an extra
! 592: limb. In code for fraction conversion, add special case for bases
! 593: that are a power of 2.
! 594:
! 595: * mpf/out_str.c: Output leading "0.".
! 596: Default base to 10, before computing string allocation.
! 597:
! 598: * mpf/get_str.c: Make variables for string size have type size_t.
! 599: * gmp.h: Corresponding change.
! 600:
! 601: * mpf/random2.c: Allow creation of prec+1 large mantissas.
! 602:
! 603: * mpf/add_ui.c: Don't abort if u < 0; special case for u <= 0.
! 604: Fix typo in MPN_COPY offset.
! 605: * mpf/sub_ui.c: Analogous changes.
! 606:
! 607: * mpf/set_prec.c: Rewrite.
! 608:
! 609: * mpf/init2.c: Compute precision as in set_prec.c.
! 610:
! 611: * mpf/div_2exp.c: Special case for u == 0.
! 612: * mpf/mul_2exp.c: Likewise. Write r->_mp_size always.
! 613:
! 614: * mpf/sqrt_ui.c: mpn_sqrt => mpn_sqrtrem.
! 615: * mpf/sqrt.c: Likewise. When computing new exponent, round quotient
! 616: towards -infinity.
! 617:
! 618: * mpf/add.c: Fix typos.
! 619: * mpf/sub.c: Fix typos.
! 620:
! 621: Thu Feb 22 00:24:48 1996 Torbjorn Granlund <tege@tmg.se>
! 622:
! 623: * mpz/Makefile.in (stamp-stddefh): Delete target.
! 624: (test): Delete target.
! 625: * Makefile.in (stamp-stddefh): Delete target.
! 626: (cre-stddefh.o): Delete target.
! 627: (gmp.dvi): Set TEXINPUTS before invoking tex.
! 628:
! 629: * cre-stddefh.c: Delete.
! 630:
! 631: * mpz/sqrt.c: Fix typo.
! 632:
! 633: * mpz/powm.c: Special case for mod == 0.
! 634: * mpz/powm_ui.c: Likewise.
! 635:
! 636: * mpz/get_si.c: Handle -0x80000000 correctly.
! 637:
! 638: * mpz/inp_str.c: Now retutns size_t.
! 639: Make it return number of bytes read or error indication.
! 640: * mpf/inp_str.c: Likewise.
! 641:
! 642: * mpz/out_raw.c: Replace by mpz/out_binary.c, with modifications.
! 643: * mpz/inp_raw.c: Rewrite, using mpz/inp_binary as a base.
! 644: * mpz/inp_binary.c: Delete.
! 645:
! 646: * mpn/Makefile.in (XCFLAGS): Remove variable.
! 647: (.c.o): Don't pass XCFLAGS.
! 648: (SFLAGS): Set to nothing.
! 649: (.S.o): Pass SFLAGS, not XCFLAGS.
! 650:
! 651: * mpn/config/t-freebsd (SFLAGS): New name for XCFLAGS.
! 652:
! 653: * mpf/out_str.c: Make return number of bytes written or error
! 654: indication.
! 655: * mpz/out_str.c: Likewise.
! 656: * gmp.h: Corresponding changes.
! 657:
! 658: * gmp.h (__mpz_struct): mp_size_t => int.
! 659: (__mpq_struct): Likewise.
! 660: (__mpf_struct): Likewise.
! 661: (mp_size_t): int => long int.
! 662:
! 663: * mpn/cray: New directory.
! 664: * mpn/cray/gmp-mparam.h: New file.
! 665: * mpn/configure.in: Recognize cray variants.
! 666:
! 667: * Makefile.in: Set defaults for prefix, libdir, etc.
! 668: (install): New target.
! 669: (install-bsdmp): New target.
! 670: (gmp.html): New target.
! 671:
! 672: * stack-alloc.c (__tmp_alloc): Cast void ptrs to char * in comparison.
! 673:
! 674: Wed Feb 21 04:35:02 1996 Torbjorn Granlund <tege@tmg.se>
! 675:
! 676: * gmp.h: Sort mpn declarations.
! 677: (mpn_gcdext): Add declaration.
! 678:
! 679: * mpn/generic/divrem_1.c: New file.
! 680: * mpn/Makefile.in (divrem_1.o): New rule.
! 681: * configure.in (functions): Add divrem_1.
! 682:
! 683: * mpn/generic/divmod.c: Delete file.
! 684: * mpn/configure.in (functions): Delete divmod.
! 685: * Makefile.in (divmod.o): Delete rule.
! 686: * gmp.h (mpn_divmod): New #define.
! 687:
! 688: * gmp.h (mpn_next_bit_set): Delete spurious declaration.
! 689:
! 690: * mpn/generic/divrem.c (default case): In code assigning
! 691: most_significant_q_limb, move reassignment of n0 into if statement.
! 692:
! 693: * gmp.h (mpf_inp_str): Fix typo.
! 694: (mpf_out_str): Make prototype match reality.
! 695: * mpf/inp_str.c: New file.
! 696: * mpf/out_str.c: New file.
! 697: * mpf/Makefile.in: Compile new files.
! 698:
! 699: * mpn/Makefile.in (dump.o): Fix dependency path.
! 700: (inlines.o): Likewise.
! 701:
! 702: * mpn/configure.in: Make m68060 be the same as m68000. Clean up
! 703: m68k configs.
! 704:
! 705: Tue Feb 20 01:35:11 1996 Torbjorn Granlund <tege@tmg.se>
! 706:
! 707: * mpn/generic/sqrtrem.c: Renamed from sqrt.
! 708: * mpn/configure.in (functions): Corresponding change.
! 709: * mpn/Makefile.in: Likewise.
! 710: * mpz/sqrtrem.c: Likewise.
! 711: * mpz/sqrt.c: Likewise.
! 712: * mpn/generic/perfsqr.c: Likewise.
! 713:
! 714: * Makefile.in (clean): Also remove libmp.a.
! 715: Don't compile cre-conv-tab.c or mp_bases.c.
! 716: cre-conv-tab.c: Delete file.
! 717: (gmp.ps): New rule.
! 718:
! 719: * mpn/mp_bases.c: New file.
! 720: * mpn/Makefile.in: Compile mp_bases.c.
! 721:
! 722: * mpz/set_str.c: Skip initial whitespace.
! 723: * mpf/set_str.c: Likewise.
! 724: * mpbsd/xtom.c: Likewise.
! 725:
! 726: * gmp.h: Add missing mpz declarations.
! 727: Delete all formal parameter names from declarations.
! 728:
! 729: * mpn/Makefile.in: Add dependencies for .c files.
! 730:
! 731: * Makefile.in (check): Write recursive make calls separately, not as
! 732: a loop.
! 733: (FLAGS_TO_PASS): New variable. Use it for most recursive makes.
! 734:
! 735: Mon Feb 19 01:02:20 1996 Torbjorn Granlund <tege@tmg.se>
! 736:
! 737: * mpn/Makefile.in (.S.o): Pipe cpp output to grep in order to delete
! 738: lines starting with #.
! 739: (CPP): Set to $(CC) -E to avoid gcc dependency.
! 740:
! 741: * mpn/m68k/syntax.h (moveql): Define to moveq for MIT_SYNTAX.
! 742:
! 743: * mpn/hppa/hppa1_1/pa7100/addmul_1.S: Fix typo in s1_ptr alignment
! 744: code.
! 745: * mpn/hppa/hppa1_1/pa7100/submul_1.S: Likewise.
! 746:
! 747: * gmp.h: Fix typos in #defines of recently added mpn functions.
! 748:
! 749: * mpz/inp_str.c: Skip all whitespace, not just plain space.
! 750: * mpbsd/min.c: Likewise.
! 751:
! 752: * mpn/configure.in (functions): Add gcdext.
! 753: * mpn/generic/gcdext.c: New file.
! 754:
! 755: * mpz/legendre.c: mpz_div_2exp => mpz_tdiv_q_2exp.
! 756:
! 757: * gmp.h: Surround mpn declarations with extern "C" { ... }.
! 758:
! 759: * Makefile.in (check): New target.
! 760:
! 761: * mpq/get_d.c: Update comments. Use rsize instead of dsize + N_QLIMBS
! 762: when possible. Add special case for nsize == 0.
! 763:
! 764: * gmp.h (mpq_get_d): Add declaration.
! 765: (mpq_canonicalize): Likewise.
! 766: (mpq_cmp_ui): Likewise.
! 767: (mpf_diff): Likewise.
! 768: (mpf_ui_sub): Likewise.
! 769: (mpf_set_prec): Likewise.
! 770: (mpf_random2): Likewise.
! 771:
! 772: * gmp.h (mpz_cmp_ui): New #define.
! 773: (mpz_cmp_si): New #define.
! 774: (mpq_cmp_ui): New #define.
! 775: (mpz_sign): New #define.
! 776: (mpq_sign): New #define.
! 777: (mpf_sign): New #define.
! 778: (mpq_numref): New #define.
! 779: (mpq_denref): New #define.
! 780:
! 781: * mpq/set_z.c: File deleted.
! 782: * mpq/Makefile.in: Corresponding changes.
! 783:
! 784: Sun Feb 18 01:34:47 1996 Torbjorn Granlund <tege@tmg.se>
! 785:
! 786: * mpbsd/sdiv.c: Use _mp_realloc, not _mpz_realloc.
! 787:
! 788: * mpz/inp_binary.c: Default stream to stdin.
! 789: * mpz/inp_str.c: Likewise.
! 790: * mpz/inp_raw.c: Likewise.
! 791: * mpz/out_binary.c: Default stream to stdout.
! 792: * mpz/out_raw.c: Likewise.
! 793: * mpz/out_str.c: Likewise.
! 794:
! 795: * mpbsd/realloc.c: New file.
! 796: * mpbsd/Makefile.in: Corresponding changes.
! 797:
! 798: * mpbsd/min.c: Rewrite (base on mpz/inp_str.c).
! 799: * mpbsd/mtox.c: Rewrite (base on mpz/get_str.c).
! 800:
! 801: * mpbsd/mout.c: Rewrite (base on mpz/out_str) but make it output
! 802: spaces in each 10th position.
! 803: * mpbsd/xtom.c: Rewrite (base on mpz/set_str).
! 804:
! 805: * mpq/tests/Makefile.in (st-cmp): New file.
! 806: * mpq/tests/configure.in (srcname): New file.
! 807:
! 808: * mpz/tests/configure.in (srcname): Fix typo.
! 809:
! 810: * mpq/cmp.c: Add check using number of significant bits, to avoid
! 811: general multiplication.
! 812:
! 813: Sat Feb 17 11:58:30 1996 Torbjorn Granlund <tege@tmg.se>
! 814:
! 815: * mpq/cmp_ui.c: Store cy_limb after the mpn_mul_1 calls.
! 816:
! 817: * mpq/tests: New directory.
! 818: * mpq/tests/t-cmp.c: New file.
! 819: * mpq/tests/t-cmp_ui.c: New file.
! 820:
! 821: * mpz/tests/dive.c (main): Generate zero numerator.
! 822: (get_random_size) : Delete.
! 823:
! 824: * mpz/divexact.c: Add special case for 0/x.
! 825:
! 826: * gmp.h (mpz_mod): Add declaration.
! 827:
! 828: Fri Feb 16 18:18:39 1996 Andreas Schwab <schwab@informatik.uni-dortmund.de>
! 829:
! 830: * mpn/m68k/*: Rewrite code not to use the INSN macros.
! 831: (L): New macro to properly prefix local labels for ELF.
! 832:
! 833: Fri Feb 16 00:20:56 1996 Torbjorn Granlund <tege@tmg.se>
! 834:
! 835: * gmp-impl.h (ieee_double_extract): Use plain `unsigned int' for
! 836: fields.
! 837: * mpn/generic/inlines.c (_FORCE_INLINES): New #define. Delete
! 838: conditional __GNUC__.
! 839: * gmp.h (mpn_add, mpn_sub, mpn_add_1, mpn_sub_1):
! 840: Only define these if __GNUC__ || _FORCE_INLINES.
! 841: * mpf/random2.c: Add missing parameter in non-ANSI header.
! 842: * mpn/generic/gcd.c (SIGN_BIT): Do as #define to work around bug
! 843: in AIX compilers.
! 844: * mpq/get_d.c: #define N_QLIMBS.
! 845: * mpz/divexact.c: Obscure division by 0 to silent compiler warnings.
! 846: * stack-alloc.c: Cast void* pointer to char* before doing arithmetic
! 847: on it.
! 848:
! 849: * Makefile.in (mpbsd/libmpbsd.a): New rule.
! 850: * configure.in (configdirs): Add mpbsd.
! 851:
! 852: * gmp.h: Add declarations for a few missing mpn functions.
! 853:
! 854: * Makefile.in (libmp.a): New rule.
! 855:
! 856: * mpbsd/mdiv.c: #include "dmincl.c", not "mpz_dmincl.c"
! 857: * gmp.h: Move #define of __GNU_MP__ into the `#if __GNU_MP__' block.
! 858: * mp.h: Likewise. Update typedefs from gmp.h.
! 859: * mpbsd/configure.in: New file.
! 860: * mpbsd/Makefile.in: New file.
! 861: * mpbsd/configure: Link to master configure.
! 862: * mpbsd/config.sub: Link to master config.sub.
! 863:
! 864: * Makefile.in: Set RANLIB_TEST.
! 865: * (libgmp.a): Use it.
! 866: * (libgmp.a): Do ranlib before moving the libgmp.a to the build
! 867: directory.
! 868: * mp?/Makefile.in: Don't use or set RANLIB.
! 869:
! 870: Thu Feb 15 16:38:41 1996 Torbjorn Granlund <tege@tmg.se>
! 871:
! 872: * mpz/add_ui.c: MP_INT => mpz_t.
! 873: * mpz/cmp_ui.c: Likewise.
! 874: * mpz/fac_ui.c: Likewise.
! 875: * mpz/inp_binary.c: Likewise.
! 876: * mpz/inp_raw.c: Likewise.
! 877: * mpz/legendre.c: Likewise.
! 878: * mpz/jacobi.c: Likewise.
! 879: * mpz/out_binary.c: Likewise.
! 880: * mpz/out_raw.c: Likewise.
! 881: * mpz/random2.c: Likewise.
! 882: * mpz/random.c: Likewise.
! 883: * mpz/realloc.c: Likewise.
! 884:
! 885: * mpz/legendre.c: __mpz_2factor(X) => mpz_scan1(X,0),
! 886: __mpz_odd_less1_2factor => mpz_scan1(X,1).
! 887: * mpz/ntsup.c: File deleted.
! 888: * mpz/Makefile.in: Corresponding changes.
! 889:
! 890: * mpz/pprime_p: Use mpz_scan1 to avoid looping.
! 891:
! 892: * mpz/fac_ui.c: Type of `k' and `p' is `unsigned long'.
! 893: * mpz/pprime_p.c: Pass long to *_ui functions.
! 894: * mpz/gcdext.c: Likewise.
! 895: * mpz/fdiv_r_2exp.c: Likewise.
! 896: * mpz/fac_ui.c: Likewise.
! 897:
! 898: * mpz/powm.c: Don't use mpn_rshift when mod_shift_cnt is 0.
! 899:
! 900: * mpz/tests/Makefile.in (st-sqrtrem): Fix typo.
! 901:
! 902: * mpz/cmp_ui.c: #undef mpz_cmp_ui.
! 903: * mpz/cmp_si.c: #undef mpz_cmp_si.
! 904: * gmp.h (mpz_cmp_ui): New #define.
! 905: (mpz_cmp_si): New #define.
! 906:
! 907: Wed Feb 14 22:11:24 1996 Torbjorn Granlund <tege@tmg.se>
! 908:
! 909: * gmp.h: Test __cplusplus in addition to __STDC__.
! 910: * gmp-impl.h: Likewise.
! 911:
! 912: * gmp.h: Surround declarations with extern "C" { ... }.
! 913:
! 914: Tue Feb 13 15:20:45 1996 Torbjorn Granlund <tege@tmg.se>
! 915:
! 916: * mpz/fdiv_r_2exp.c: Use MPN_NORMALIZE.
! 917: * mpz/tdiv_r_2exp.c: Likewise.
! 918:
! 919: * mpz/fdiv_r_2exp.c: New file.
! 920: * mpz/fdiv_q_2exp.c: New file.
! 921: * mpz/tdiv_r_2exp.c: Renamed from mpz/mod_2exp.c.
! 922: * mpz/tdiv_q_2exp.c: Renamed from mpz/div_2exp.c
! 923: * mpz/Makefile.in: Corresponding changes.
! 924:
! 925: * mpz/scan0.c,scan1.c: New files.
! 926: * mpz/Makefile.in: Compile them.
! 927:
! 928: * gmp.h (mpn_normal_size): Delete.
! 929:
! 930: * config.guess: Update from Cygnus version.
! 931:
! 932: * mpn/m68k/rshift.S: Use INSN2 macro for lea instructions.
! 933: * mpn/m68k/lshift.S: Likewise.
! 934:
! 935: * mpn/configure.in: Fix configuration for plain 68000.
! 936:
! 937: Mon Feb 12 01:06:06 1996 Torbjorn Granlund <tege@tmg.se>
! 938:
! 939: * mpz/tests/t-powm.c: Generate negative BASE operand.
! 940:
! 941: * mpz/powm.c: Make result always positive.
! 942:
! 943: Sun Feb 11 01:44:56 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 944:
! 945: * mpz/tests/*.c: Add t- prefix.
! 946: * mpz/tests/Makefile.in: Corresponding changes.
! 947: * mpz/tests/configure.in: Update srctrigger.
! 948:
! 949: * mpz/tests/gcd.c: Generate negative operands.
! 950: * mpz/tests/gcd2.c: Likewise.
! 951:
! 952: * mpz/gcdext.c: At end, if G is negative, negate all G, S, and T.
! 953:
! 954: Thu Feb 8 17:16:12 UTC 1996 Ken Weber <kweber@mat.ufrgs.br>
! 955:
! 956: * mp{z,n}/gcd.c: Change mpn_gcd interface.
! 957: * gmp.h: Ditto.
! 958: * gmp.texi: update documentation.
! 959:
! 960: Mon Feb 7 23:58:43 1996 Andreas Schwab <schwab@informatik.uni-dortmund.de>
! 961:
! 962: * mpn/m68k/{lshift,rshift}.S: New files.
! 963: * mpn/m68k/syntax.h: New ELF_SYNTAX macros.
! 964: (MEM_INDX, R, PROLOG, EPILOG): New macros.
! 965: * mpn/m68k/*.S: Use R macro with register name. Use PROLOG and EPILOG
! 966: macros. Rename `size' to `s_size' or s1_size to avoid clash with ELF
! 967: .size directive.
! 968: * mpn/configure.in: New target m68k-*-linux*.
! 969:
! 970: Wed Feb 7 07:41:31 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 971:
! 972: * Makefile.in (cre-conv-tab): Workaround for SunOS make.
! 973:
! 974: * mpz/tests/reuse.c: New file.
! 975: * mpz/tests/Makefile.in: Handle reuse.c.
! 976:
! 977: Tue Feb 6 11:56:24 UTC 1996 Ken Weber <kweber@mat.ufrgs.br>
! 978:
! 979: * mpz/gcd.c: Fix g->size when one op is 0 and g == other op.
! 980:
! 981: Tue Feb 6 01:36:39 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 982:
! 983: * gmp.h (mpz_divexact): Delete parameter names.
! 984: (mpz_lcm): Delete spurious declaration.
! 985:
! 986: * mpz/dmincl.c: Fix typo.
! 987:
! 988: Mon Feb 5 01:11:56 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 989:
! 990: * mpn/generic/gcd.c (gcd_2): Declare consistently.
! 991:
! 992: * mpz/tdiv_q.c: Optimize division by a single-limb divisor.
! 993: * mpz/dmincl.c: Likewise.
! 994:
! 995: * mpz/add.c: Use MPN_NORMALIZE instead of mpn_normal_size.
! 996: * mpz/sub.c: Likewise.
! 997: * mpn/generic/sqrt.c: Likewise.
! 998:
! 999: * mpn/tests/{add_n,sub_n,lshift,rshift}.c: Put garbage in the
! 1000: destination arrays.
! 1001:
! 1002: Fri Feb 2 02:21:27 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1003:
! 1004: * mpz/{jacobi.c,legendre.c,ntsup.c,invert.c}: New files.
! 1005: * mpz/Makefile.in: Compile them.
! 1006:
! 1007: * mpn/Makefile.in (INCLUDES): Don't search in `generic'.
! 1008:
! 1009: Thu Feb 1 02:15:11 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1010:
! 1011: Change from Ken Weber:
! 1012: * mpz/divexact.c: Make it work when quot is identical to either input.
! 1013:
! 1014: * mpf/ui_sub.c: New file.
! 1015: * mpf/Makefile.in: Compile it.
! 1016:
! 1017: * gmp-impl.h (MPZ_TMP_INIT): alloca -> TMP_ALLOC.
! 1018: * mpz/{c,f}div_{q,qr,r}.c: Use TMP_DECL/TMP_MARK/TMP_FREE since
! 1019: these use MPZ_TMP_INIT.
! 1020: * mpz/mod.c: Likewise.
! 1021: * mpq/{add,sub}.c: Likewise.
! 1022: * mpq/canonicalize: Likewise.
! 1023:
! 1024: * mpq/{add,sub,mul,div}.c: Use mpz_divexact. MP_INT -> mpz_t.
! 1025: * mpq/canonicalize.c: Likewise.
! 1026:
! 1027: Wed Jan 31 01:45:00 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1028:
! 1029: * mpn/generic/gcd.c: Misc changes from Ken.
! 1030:
! 1031: * mpz/tests/gcd2.c: New file.
! 1032: * mpz/tests/Makefile.in: Handle gcd2.c.
! 1033:
! 1034: * mpn/generic/gcd.c (mpn_gcd): When GCD == ORIG_V, return vsize,
! 1035: not orig_vsize. Fix parameter declaration.
! 1036:
! 1037: * mpz/mod_ui.c: Delete file.
! 1038: * mpz/Makefile.in: Don't try to compile mod_ui.
! 1039:
! 1040: * mpz/cdiv_*_ui.c): Make them work right.
! 1041: * gmp.h: Declare cdiv*.
! 1042:
! 1043: Tue Jan 30 02:22:56 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1044:
! 1045: * mpz/{cdiv_q.c,cdiv_q_ui.c,cdiv_qr.c,cdiv_qr_ui.c,cdiv_r.c,
! 1046: cdiv_r_ui.c,cdiv_ui.c}: New files.
! 1047: * mpz/Makefile.in: Compile them.
! 1048:
! 1049: * All files: Make file permissions right.
! 1050:
! 1051: Changes from Ken Weber:
! 1052: * mpn/generic/accelgcd.c: Delete.
! 1053: * mpn/generic/bingcd.c: Delete.
! 1054: * mpn/generic/numbits.c: Delete.
! 1055: * mpn/generic/gcd.c: New file.
! 1056: * mpn/configure.in (functions): Update accordingly.
! 1057: * mpz/divexact.c: New file.
! 1058: * mpz/Makefile.in: Compile divexact.c.
! 1059: * mpz/gcd.c: Rewrite to accommodate for gcd changes in mpn.
! 1060: * gmp.h: declare new functions, delete obsolete declarations.
! 1061: * mpz/tests/dive.c: New file.
! 1062: * mpz/tests/Makefile.in: Handle dive.c.
! 1063:
! 1064: Mon Jan 29 03:53:24 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1065:
! 1066: * mpz/random.c: Handle negative SIZE parameter.
! 1067:
! 1068: * mpz/tests/tdiv(_ui).c: New name for tst-dm(_ui).c.
! 1069: * mpz/tests/tst-mdm(_ui).c: Delete.
! 1070: * mpz/tests/fdiv(_ui).c: New test based in tst-mdm(_ui).
! 1071: * mpz/tests/*.c: Get rid of tst- prefix for DOS 8+3 naming.
! 1072: * mpz/tests/Makefile.in: Corresponding changes.
! 1073: * mpz/tests/configure.in: Update srctrigger.
! 1074:
! 1075: * mpn/generic/divmod.c: Update from divrem.
! 1076: * mpn/generic/divrem.c: Misc cleanups.
! 1077:
! 1078: Sun Jan 28 03:25:08 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1079:
! 1080: * All files: Use new TMP_ALLOC interface.
! 1081:
! 1082: * mpz/powm_ui.c: Make Jan 25 changes to powm.c also here.
! 1083:
! 1084: * mpz/tests/powm_ui.c: New file.
! 1085: * mpz/tests/Makefile.in: Add rules for tst-powm and tst-powm_ui.
! 1086:
! 1087: * Makefile.in: Update dependency list.
! 1088: * mpf/Makefile.in: Likewise.
! 1089: * mpz/Makefile.in: Likewise.
! 1090: * mpq/Makefile.in: Likewise.
! 1091: * Makefile.in: Set RANLIB simply to ranlib, and allow configure
! 1092: to override it.
! 1093:
! 1094: * mpz/Makefile.in (conf): Delete spurious target.
! 1095: (mp_bases.c): Delete.
! 1096: (cre-conv-tab rules): Delete.
! 1097:
! 1098: * Makefile.in (cre-conv-tab): Greatly simplify.
! 1099:
! 1100: Sat Jan 27 13:38:15 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1101:
! 1102: * stack-alloc.c: New file.
! 1103: * stack-alloc.h: New file.
! 1104:
! 1105: * gmp.h (__gmp_inline): Define using __inline__.
! 1106:
! 1107: Thu Jan 25 00:28:37 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1108:
! 1109: * mpn/generic/scan0.c: New file.
! 1110: * mpn/generic/scan1.c: Renamed from next_bit.c.
! 1111: * mpn/configure.in (functions): Include scan0 and scan1.
! 1112:
! 1113: * mpn/m68k/*: #include sysdep.h. Use C_GLOBAL_NAME.
! 1114:
! 1115: * configure: Update from Cygnus version.
! 1116: * config.guess: Likewise.
! 1117: * config.sub: Likewise.
! 1118: * configure: Pass --nfp to recursive configures.
! 1119:
! 1120: * mpz/tests/tst-*.c: Adjust SIZE and reps.
! 1121:
! 1122: * mpz/powm.c: Move esize==0 test earlier.
! 1123: In final reduction of rp,rsize, don't call mpn_divmod unless
! 1124: reduction is really needed.
! 1125:
! 1126: * mpz/tests/tst-powm.c: Fix thinko in checking code.
! 1127:
! 1128: * All files: Get rid of `__' prefix from mpn_* calls and declarations.
! 1129: * gmp.h: #define __MPN.
! 1130: * gmp.h: Use __MPN in #defines for mpn calls.
! 1131:
! 1132: * mpn/generic/mul_n.c: Prepend `i' to internal routines.
! 1133: * gmp-impl.h: Add #defines using __MPN for those internal routines.
! 1134:
! 1135: * mpn/generic/sqrt.c: Change call to mpn_mul to mpn_mul_n.
! 1136:
! 1137: Wed Jan 24 13:28:19 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1138:
! 1139: * mpn/sparc32/udiv_fp.S: New name for udiv_qrnnd.S.
! 1140: * mpn/sparc32/udiv_nfp.S: New name for v8/udiv_qrnnd.S.
! 1141: * mpn/sparc32/v8/supersparc: New directory.
! 1142: * mpn/sparc32/v8/supersparc/udiv.S: New file.
! 1143:
! 1144: Tue Jan 23 01:10:11 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1145:
! 1146: This major contribution is from Ken Weber:
! 1147: * mpn/generic/accelgcd.c: New file.
! 1148: * mpn/generic/bdivmod.c: New file.
! 1149: * mpn/generic/bingcd.c: New file.
! 1150: * mpn/generic/gcd_1.c: Rewrite.
! 1151: * mpn/generic/numbits.c: New file (to go away soon).
! 1152: * mpz/gcd.c: Rewrite.
! 1153: * mpz/tests/tst-gcd.c (SIZE): Now 128.
! 1154: * gmp.h: Declare new functions.
! 1155: * mpn/configure.in (functions): List new files.
! 1156: * gmp-impl.h (MPN_SWAP): Delete.
! 1157: (MPN_LESS_BITS_LIMB, MPN_LESS_BITS, MPN_MORE_BITS): Delete.
! 1158: (MPN_COMPL_INCR, MPN_COMPL): Delete.
! 1159:
! 1160: Mon Jan 22 02:04:59 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1161:
! 1162: * gmp.h (mpn_name): New #define.
! 1163:
! 1164: * mpn/m88k/mc88110/addmul_1.s: New file.
! 1165: * mpn/m88k/mc88110/add_n.S: New file.
! 1166: * mpn/m88k/mc88110/sub_n.S: New file.
! 1167:
! 1168: * mpn/m88k/sub_n.s: Correctly initialize carry.
! 1169:
! 1170: * mpn/sparc32/{add_n.S,sub_n.S,lshift.S,rshift.S): `beq' => `be'.
! 1171:
! 1172: Sun Jan 21 00:04:35 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1173:
! 1174: * mpn/sparc64/addmul_1.s: New file.
! 1175: * mpn/sparc64/submul_1.s: New file.
! 1176: * mpn/sparc64/rshift.s: New file.
! 1177:
! 1178: Sat Jan 20 00:32:54 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1179:
! 1180: * mpz/iset.c: Fix typo introduced Dec 25.
! 1181:
! 1182: Wed Jan 17 13:16:44 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1183:
! 1184: * config/mt-sprc8-gcc: New name for mt-sparc8-gcc.
! 1185: * config/mt-sparcv8-gcc: Delete.
! 1186: * configure.in: Corresponding changes.
! 1187:
! 1188: Tue Jan 16 16:31:01 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1189:
! 1190: * gmp-impl.h: #include alloca.h when necessary.
! 1191:
! 1192: * longlong.h: Test __alpha instead of __alpha__, since the former
! 1193: is the standard symbol.
! 1194:
! 1195: Mon Jan 15 18:06:57 1996 Torbjorn Granlund <tege@noisy.tmg.se>
! 1196:
! 1197: * mpn/sparc64/mul_1.s: Swap operands of mulx instructions.
! 1198: * mpn/sparc64/lshift.s: New file.
! 1199:
! 1200: Fri Dec 29 17:34:03 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1201:
! 1202: * mpn/x86/pentium/add_n.S: Get rid of #defines for register names.
! 1203: * mpn/x86/pentium/sub_n.S: Likewise.
! 1204:
! 1205: Thu Dec 28 03:16:57 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1206:
! 1207: * mpn/x86/pentium/mul_1.S: Rework loop to avoid AGI between update
! 1208: of loop induction variable and load insn at beginning of loop.
! 1209: * mpn/x86/pentium/addmul_1.S: Likewise.
! 1210: * mpn/x86/pentium/submul_1.S: Likewise.
! 1211:
! 1212: Mon Dec 25 23:22:55 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1213:
! 1214: * All files: Prefix user-visible structure fields with _mp_.
! 1215:
! 1216: Fri Dec 22 20:42:17 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1217:
! 1218: * mpn/configure.in (m68k configs): Terminate path variable with
! 1219: plain "m68k".
! 1220:
! 1221: Fri Dec 22 03:29:33 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1222:
! 1223: * mpn/sparc32/add_n.S: Update from sub_n.S to fix bugs, and to
! 1224: clean things up.
! 1225:
! 1226: * mpn/configure.in (m68k configs): Update #include path for new
! 1227: mpn directory organization.
! 1228:
! 1229: Tue Dec 12 02:53:02 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1230:
! 1231: * gmp.h: Prefix all structure field with _mp_.
! 1232: * gmp-impl.h: Define access macros for these fields.
! 1233:
! 1234: Sun Dec 10 00:47:17 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1235:
! 1236: * mpn/alpha/addmul_1.s: Prefix labels with `.'.
! 1237: * mpn/alpha/submul_1.s: Likewise.
! 1238: * mpn/alpha/[lr]shift.s: Likewise.
! 1239: * mpn/alpha/udiv_qrnnd.S: Likewise.
! 1240: * mpn/alpha/ev5/[lr]shift.s: Likewise.
! 1241:
! 1242: * mpn/alpha/ev5/lshift.s: Fix typos.
! 1243:
! 1244: Fri Dec 1 14:28:20 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1245:
! 1246: * mpn/Makefile.in (.SUFFIXES): Define.
! 1247:
! 1248: Wed Nov 29 23:11:57 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1249:
! 1250: * mpn/sparc64/{add_n.s, sub_n.s}: New files.
! 1251:
! 1252: Tue Nov 28 06:03:13 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1253:
! 1254: * mpn/x86/syntax.h: Handle ELF_SYNTAX.
! 1255: Rename GAS_SYNTAX => BSD_SYNTAX.
! 1256:
! 1257: * mpn/configure.in: Handle linuxelf and SysV for x86 variants.
! 1258:
! 1259: Mon Nov 27 01:32:12 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1260:
! 1261: * mpn/hppa/hppa1_1/pa7100/submul_1.S: New file.
! 1262:
! 1263: Sun Nov 26 04:30:47 1995 Torbjorn Granlund <tege@noisy.tmg.se>
! 1264:
! 1265: * mpn/hppa/hppa1_1/pa7100/addmul_1.S: New file.
! 1266:
! 1267: * mpn/sparc32/add_n.S: Rewrite to use 64 bit loads/stores.
! 1268: * mpn/sparc32/sub_n.S: Likewise.
! 1269:
! 1270: Fri Nov 17 00:18:46 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1271:
! 1272: * mpn/configure.in: Handle m68k on NextStep.
! 1273:
! 1274: Thu Nov 16 02:30:26 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1275:
! 1276: * mpn: Reorganize machine-specific directories.
! 1277: * mpn/configure.in: Corresponding changes.
! 1278: (sh, sh2): Handle these.
! 1279: (m68k targets): Create asm-syntax.h.
! 1280:
! 1281: Thu Nov 9 02:20:50 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1282:
! 1283: * mpn/generic/mul_n.c (____mpn_sqr_n): Delete code that calls abort.
! 1284: (____mpn_mul_n): Likewise.
! 1285:
! 1286: Tue Nov 7 03:25:12 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1287:
! 1288: * mpf/get_str.c: In exponentiation code (two places), don't swap
! 1289: input and output areas when calling mpn_mul_1.
! 1290: * mpf/set_str.c: Likewise.
! 1291:
! 1292: Fri Nov 3 02:35:58 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1293:
! 1294: * mpf/Makefile.in: Make sure all objects are listed in dependency list;
! 1295: delete spurious entries.
! 1296:
! 1297: * mpf/mul.c: Handle U or V being 0. Allow prec+1 for result precision.
! 1298:
! 1299: * mpf/set_prec.c: New computation of limb precision.
! 1300: * mpf/set_dfl_prec.c: Likewise.
! 1301:
! 1302: * mpf/random2.c: Fix typo computing exp.
! 1303: * mpf/get_str.c: In (uexp > usize) case, set n_limbs as a function of
! 1304: the user-requested number of digits, n_digits.
! 1305:
! 1306: Thu Nov 2 16:25:07 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1307:
! 1308: * mpn/generic/divrem.c (case 2): Don't move np vector back, it is
! 1309: never read.
! 1310: (default case): Put most significant limb from np in new variable n2;
! 1311: decrease size argument for MPN_COPY_DECR; use n2 instead of np[dsize].
! 1312:
! 1313: Wed Nov 1 02:59:53 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1314:
! 1315: * mpn/sparc/[lr]shift.S: New files.
! 1316:
! 1317: Tue Oct 31 00:08:12 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1318:
! 1319: * mpz/gcd_ui.c: Set w->size unconditionally when v is zero.
! 1320:
! 1321: * gmp-impl.h (assert): Delete definition.
! 1322:
! 1323: * mpf/sub.c: Delete all assert calls. Delete variable `cy'.
! 1324:
! 1325: * mpf/neg.c: Use prec+1 as precision. Optimize for when arguments
! 1326: are the same.
! 1327: * mpf/abs.c: Likewise.
! 1328: * mpf/{set,neg,abs}.c: Make structure and variable names similar.
! 1329:
! 1330: Mon Oct 30 12:45:26 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1331:
! 1332: * mpf/random2.c (random): Test __SVR4 in addition to __svr4__.
! 1333: * mpn/generic/random2.c (random): Likewise.
! 1334:
! 1335: Sun Oct 29 01:54:28 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1336:
! 1337: * mpf/div.c: Special handle U or V being 0.
! 1338:
! 1339: * mpf/random2.c: New file.
! 1340:
! 1341: * longlong.h (i860 rshift_rhlc): Define.
! 1342: (i960 udiv_qrnnd): Define.
! 1343: (i960 count_leading_zeros): Define.
! 1344: (i960 add_ssaaaa): Define.
! 1345: (i960 sub_ddmmss): Define.
! 1346: (i960 rshift_rhlc): Define.
! 1347:
! 1348: Sat Oct 28 19:09:15 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1349:
! 1350: * mpn/pentium/rshift.S: Fix and generalize condition for when to use
! 1351: special code for shift by 1.
! 1352: * mpn/pentium/lshift.S: Likewise.
! 1353:
! 1354: Thu Oct 26 00:02:56 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1355:
! 1356: * gmp.h: #undef __need_size_t.
! 1357: * mp.h: Update from gmp.h.
! 1358:
! 1359: Wed Oct 25 00:17:27 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1360:
! 1361: * mpf/Makefile.in: Compile set_prec.c.
! 1362: * mpf/realloc.c: Delete this file.
! 1363: * mpf/Makefile.in: Delete mentions of realloc.c.
! 1364:
! 1365: * gmp.h (__mpf_struct): Get rid of `alloc' field.
! 1366: * mpf/clear.c: Likewise.
! 1367: * mpf/init*.c: Likewise.
! 1368: * mpf/set_prec.c: Likewise.
! 1369: * mpf/iset*.c: Likewise.
! 1370:
! 1371: * mpf/iset_str.c: New file.
! 1372:
! 1373: * mpn/configure.in: Handle pyramid.
! 1374:
! 1375: * mpf/set.c: Use prec+1 as precision.
! 1376:
! 1377: * mpf/set_prec.c: New file.
! 1378:
! 1379: Tue Oct 24 00:56:41 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1380:
! 1381: * mpn/generic/divrem.c: New file. Will replace mpn/generic/divmod.c
! 1382: when rest of source is converted.
! 1383: * mpn/configure.in (functions): Add `divrem'
! 1384: * mpn/generic/set_str.c: Never call __mpn_mul_1 with zero size.
! 1385:
! 1386: * mpf/get_str.c: Completely rewritten.
! 1387: * mpf/add.c: Fix several problems.
! 1388: * mpf/sub.c: Compare operands from most significant end until
! 1389: first difference, exclude skipped limbs from computation.
! 1390: Accordingly simplify normalization code.
! 1391: * mpf/set_str.c: Fix several problems.
! 1392: * mpf/dump.c: New file.
! 1393: * mpf/Makefile.in: Compile dump.c.
! 1394: * mpf/init2.c: Set prec field correctly.
! 1395:
! 1396: Sun Oct 22 03:02:09 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1397:
! 1398: * cre-conv-tab.c: #include math.h; don't declare log and floor.
! 1399:
! 1400: Sat Oct 21 23:04:10 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1401:
! 1402: * mpf/mul_ui.c: Handle U being 0.
! 1403:
! 1404: Wed Oct 18 19:39:27 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1405:
! 1406: * mpn/generic/set_str.c: Correctly handle input like "000000000000".
! 1407: Misc cleanups.
! 1408:
! 1409: Tue Oct 17 15:14:13 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1410:
! 1411: * longlong.h: Define COUNT_LEADING_ZEROS_0 for machines where
! 1412: appropriate.
! 1413:
! 1414: Mon Oct 16 19:14:43 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1415:
! 1416: * mpf/add.c: Rewrite.
! 1417: * mpf/set_str.c: New file. Needs more work.
! 1418:
! 1419: Sat Oct 14 00:14:04 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1420:
! 1421: * mpf/div_2exp.c: Vastly simplify.
! 1422: * mpf/mul_2exp.c: Likewise.
! 1423:
! 1424: * mpf/sub.c: Rewrite.
! 1425:
! 1426: * gmp-impl.h (udiv_qrnnd_preinv2gen): Terminate comment.
! 1427:
! 1428: * mpf/dump.c: Free allocated memory.
! 1429:
! 1430: * gmp-impl.h (assert): Define.
! 1431:
! 1432: Wed Oct 11 13:31:00 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1433:
! 1434: * mpn/pentium/rshift.S: Install new code to optimize shift-by-1.
! 1435:
! 1436: Tue Oct 10 00:37:21 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1437:
! 1438: * mpn/pentium/lshift.S: Install new code to optimize shift-by-1.
! 1439:
! 1440: * mpn/powerpc32/{lshift.s,rshift.s}: New files.
! 1441:
! 1442: * configure.in: Fix typo.
! 1443:
! 1444: Sat Oct 7 08:17:09 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1445:
! 1446: * longlong.h (smul_ppmm): Correct type of __m0 and __m1.
! 1447:
! 1448: Wed Oct 4 16:31:28 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1449:
! 1450: * mpn/configure.in: Handle alphaev5.
! 1451: * mpn/ev4: New name for alpha subdir.
! 1452: * mpn/ev5: New subdir.
! 1453: * mpn/ev5/lshift.s: New file.
! 1454:
! 1455: Tue Oct 3 15:06:45 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1456:
! 1457: * mpn/alpha/mul_1.s: Avoid static increments of pointers; use
! 1458: corresponding offsets in ldq and stq instructions instead.
! 1459: (Loop): Swap cmpult and stq to save one cycle on EV5.
! 1460:
! 1461: * mpn/tests/{add_n.s,sub_n.s,lshift.s,rshift.s,mul_1.s,addmul_1.s,
! 1462: submul_1.s}: Don't check results if NOCHECK is defined.
! 1463:
! 1464: Mon Oct 2 11:40:18 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1465:
! 1466: * longlong.h (mips umul_ppmm [32 and 64 bit versions]):
! 1467: Make new variants, based on GCC version number, that use `l' and `h'
! 1468: constraints instead of explicit mflo and mfhi instructions
! 1469:
! 1470: Sun Oct 1 00:17:47 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1471:
! 1472: * mpn/mc88100/add_n.s: Decrease unrolling factor from 16 to 8.
! 1473: * mpn/mc88100/sub_n.s: Likewise.
! 1474:
! 1475: * config/mt-m88110: New file.
! 1476: * configure.in: Use it.
! 1477:
! 1478: * mpn/mc88110/mul_1.s: Fix thinko.
! 1479:
! 1480: Sat Sep 30 21:28:19 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1481:
! 1482: * mpz/set_d.c: Declare `size' at function start.
! 1483:
! 1484: * experimental: New directory for mpx and mpz2.
! 1485:
! 1486: * mpz/tdiv_q.c: Clarify comments.
! 1487: * mpz/{mod.c,mod_ui.c}: New file, for math mod function.
! 1488:
! 1489: * mpn/sh2/{mul_1.s,addmul_1.s,submul_1.s}: New files.
! 1490:
! 1491: * mpn/sh/{add_n.s,sub_n.s}: New files.
! 1492:
! 1493: * mpn/pyr/{add_n.s,sub_n.s,mul_1.s,addmul_1.s}: New files.
! 1494:
! 1495: * mpn/i960/{add_n.s,sub_n.s}: New files.
! 1496:
! 1497: * mpn/alpha/addmul_1.s (Loop): Move decrement of r18 to before umulh,
! 1498: to save cycles on EV5.
! 1499: * mpn/alpha/submul_1.s: Ditto.
! 1500: * mpn/alpha/mul_1.s: Ditto.
! 1501:
! 1502: Thu Sep 28 02:48:59 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1503:
! 1504: * gmp.h (mp_limb, mp_limb_signed): Define as `long long' if
! 1505: _LONG_LONG_LIMB is defined.
! 1506:
! 1507: * longlong.h (m88110): Test __m88110__, not __mc88110__
! 1508:
! 1509: * mpn/mc88110/mul_1.s: Rewrite.
! 1510:
! 1511: Tue Sep 26 23:29:05 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1512:
! 1513: * config.sub: Update from current Cygnus version.
! 1514:
! 1515: * mpn/configure.in: Recognize canonical m88*, not mc88*.
! 1516:
! 1517: Fri Sep 22 14:58:05 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1518:
! 1519: * mpz/set_d.c: New file.
! 1520: * mpz/Makefile.in: Build new files.
! 1521:
! 1522: * mpq/get_d.c: Replace usage of scalbn with ldexp.
! 1523:
! 1524: * mpn/{vax,i386}/gmp-mparam.h: New files.
! 1525: * gmp-impl.h (ieee_double_extract): Define here.
! 1526: * mpf/set_d.c (ieee_double_extract): Not here.
! 1527:
! 1528: Thu Sep 21 00:56:36 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1529:
! 1530: * longlong.h (C umul_ppmm): Use UWtype, not USItype for temps.
! 1531: (udiv_qrnnd): For cases implemented with call to __udiv_qrnnd,
! 1532: protect with new symbol LONGLONG_STANDALONE.
! 1533: (68000 umul_ppmm): Use %# prefix for immediate constants.
! 1534:
! 1535: Wed Sep 20 15:36:23 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1536:
! 1537: * mpn/generic/divmod_1.c: Handle
! 1538: divisor_limb == 1 << (BITS_PER_MP_LIMB - 1)
! 1539: specifically also when normalization_steps != 0.
! 1540:
! 1541: Mon Sep 18 15:42:30 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1542:
! 1543: * mpq/get_d.c: New file.
! 1544:
! 1545: Sun Sep 17 02:04:36 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1546:
! 1547: * longlong.h (pyr): Botch up for now.
! 1548:
! 1549: Sat Sep 16 00:11:50 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1550:
! 1551: * mpn/clipper/mul_1.s: New file.
! 1552: * mpn/clipper/add_n.s: New file.
! 1553: * mpn/clipper/sub_n.s: New file.
! 1554: * mpn/configure.in: Handle clipper*-*-*.
! 1555:
! 1556: * mpn/configure.in: Recognize rs6000-*-*.
! 1557:
! 1558: Fri Sep 15 00:41:34 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1559:
! 1560: * mpn/alpha/add_n.s: New file.
! 1561: * mpn/alpha/sub_n.s: New file.
! 1562:
! 1563: * mpn/mips3: New name for mpn/r4000.
! 1564: * mpn/mips2: New name for mpn/r3000.
! 1565: * mpn/configure.in: Corresponding changes.
! 1566:
! 1567: * mpn/generic/perfsqr.c (primes): Delete.
! 1568: (residue_map): Delete.
! 1569:
! 1570: Thu Sep 14 00:07:58 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1571:
! 1572: * mpn/r3000/sub_n.s: Fix typo.
! 1573:
! 1574: * dm_trunc.c: Delete spurious file.
! 1575:
! 1576: * mpz/out_binary.c: Fix typo.
! 1577:
! 1578: * mpn/configure.in (per-target): Make mips*-*-irix6* imply r4000.
! 1579:
! 1580: * gmp-impl.h: For sparc and sgi, include alloca.h.
! 1581:
! 1582: * mpn/z8000/mul_1.s: Replace `test r' with `and r,r'. Replace
! 1583: `ldk r,#0' with `xor r,r'.
! 1584:
! 1585: Wed Sep 6 00:58:38 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1586:
! 1587: * mpz/inp_binary.c: New file.
! 1588: * mpz/out_binary.c: New file.
! 1589: * mpz/Makefile.in: Build new files.
! 1590:
! 1591: Tue Sep 5 22:53:51 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1592:
! 1593: * gmp.h (__mpz_struct): Change `long int' => `mp_size_t' for alloc
! 1594: and size fields.
! 1595:
! 1596: Sat Sep 2 17:47:59 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1597:
! 1598: * mpn/r4000/{add_n.s,sub_n.s}: Optimize away some pointer arithmetic.
! 1599: * mpn/r3000/{add_n.s,sub_n.s,lshift.s,rshift.s}: New files,
! 1600: derived from r4000 code.
! 1601:
! 1602: Fri Sep 1 05:35:52 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1603:
! 1604: * mpn/r3000/mul_1.s: Fix typo.
! 1605:
! 1606: * mpn/powerpc32: Fix some old vs new mnemonic issues.
! 1607:
! 1608: * mpn/powerpc32/{add_n.s,sub_n.s}: New files.
! 1609: * mpn/r4000/{add_n.s,sub_n.s,lshift.s,rshift.s}: New files.
! 1610:
! 1611: Wed Aug 30 10:43:47 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1612:
! 1613: * mpn/r3000/mul_1.s ($LC1): Use addiu for immediate add.
! 1614: * mpn/r4000/{mul_1.s,addmul_1.s,submul_1.s}: New files.
! 1615:
! 1616: * config.guess: Update to latest FSF revision.
! 1617:
! 1618: Mon Aug 28 02:18:13 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1619:
! 1620: * mpz/out_str.c: Cast str to char * in fputs call.
! 1621:
! 1622: * gmp-impl.h: Define UQItype, SItype, and USItype also
! 1623: when not __GNUC__.
! 1624:
! 1625: Fri Aug 25 01:45:04 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1626:
! 1627: * mpn/i386/syntax.h: Renamed from asm-syntax.h.
! 1628: * mpn/mc68020/syntax.h: Renamed from asm-syntax.h.
! 1629: * mpn/configure.in: Corresponding changes.
! 1630:
! 1631: Sun Aug 13 19:20:04 1995 Torbjorn Granlund <tege@bozo.tmg.se>
! 1632:
! 1633: * mpn/generic/random2.c: Test __hpux, not hpux.
! 1634:
! 1635: Sat Apr 15 20:50:33 1995 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1636:
! 1637: * mpn/sparc/add_n.S: Make it work for PIC.
! 1638: * mpn/sparc/sub_n.s: Likewise.
! 1639: * mpn/sparc8/addmul_1.S: Likewise.
! 1640: * mpn/sparc8/mul_1.S: Likewise.
! 1641: * mpn/i386/add_n.S: Likewise.
! 1642: * mpn/i386/sub_n.S: Likewise.
! 1643:
! 1644: Thu Apr 13 23:15:03 1995 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1645:
! 1646: * mpn/configure.in: Don't search power subdir for generic ppc configs.
! 1647: Add some ppc cpu-specific configs. Misc clean up.
! 1648:
! 1649: Mon Apr 10 00:16:35 1995 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1650:
! 1651: * mpz/ui_pow_ui.c: Delete spurious code to handle negative results.
! 1652:
! 1653: Sun Apr 9 12:38:11 1995 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1654:
! 1655: * longlong.h (SPARC v8 udiv_qrnnd): Generate remainder in C,
! 1656: not in asm.
! 1657:
! 1658: * mpn/generic/sqrt.c (SQRT): Test for __SOFT_FLOAT.
! 1659:
! 1660: Tue Mar 28 00:19:52 1995 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1661:
! 1662: * mpn/generic/hamdist.c (popc_limb): Make Mar 16 change here too.
! 1663:
! 1664: Fri Mar 17 23:29:22 1995 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1665:
! 1666: * longlong.h (SH umul_ppmm): Define.
! 1667:
! 1668: Thu Mar 16 16:40:44 1995 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1669:
! 1670: * mpn/generic/popcount.c (popc_limb): Rearrange 32 bit case
! 1671: to help CSE.
! 1672:
! 1673: Fri Mar 10 20:03:49 1995 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1674:
! 1675: * mpn/powerpc32/mul_1.s: Clear cy before entering loop.
! 1676: Rearrange loop to save a cycle.
! 1677: * mpn/powerpc32/addmul_1.s: New file.
! 1678: * mpn/powerpc32/submul_1.s: New file.
! 1679:
! 1680: Fri Feb 17 22:44:45 1995 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1681:
! 1682: * mpn/configure.in: Set target_makefile_frag for freebsd
! 1683: in new case stmt.
! 1684: * mpn/config/t-freebsd: New file.
! 1685: * mpn/Makefile.in: Add #### for frag insertion.
! 1686: (XCFLAGS): Clear by default.
! 1687: (.c.o, .S.o rules): Pass XCFLAGS.
! 1688:
! 1689: Tue Feb 7 16:27:50 1995 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1690:
! 1691: * longlong.h (68000 umul_ppmm): Merge improvements from henderson.
! 1692:
! 1693: Tue Jan 24 04:23:20 1995 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1694:
! 1695: * longlong.h (default umul_ppmm): Store input parameters in temporaries
! 1696: to avoid reading them twice.
! 1697: (default smul_ppmm): New definition.
! 1698:
! 1699: Thu Dec 29 04:20:07 1994 Jim Meyering (meyering@comco.com)
! 1700:
! 1701: * generic/perfsqr.c (__mpn_perfect_square_p): Remove declaration
! 1702: of unused variable.
! 1703: * generic/pre_mod_1.c (__mpn_preinv_mod_1): Likewise.
! 1704: * mpz/powm.c (pow): Likewise.
! 1705:
! 1706: * mpz/and.c (mpz_and): Use {} instead of `;' for empty else clause
! 1707: to placate `gcc -Wall'.
! 1708: * mpz/ior.c (mpz_ior): Likewise.
! 1709:
! 1710: Wed Dec 28 13:31:40 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1711:
! 1712: * mpn/m*68*/*.S: #include asm-syntax.h, not asm.h.
! 1713:
! 1714: Mon Dec 26 17:15:36 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1715:
! 1716: * longlong.h: Test for more symbols, in __mc68000__ case.
! 1717:
! 1718: * mpn/mpn/config.sub: Recognize m68060.
! 1719: * mpn/configure.in: Change mc* to m* for 68k targets.
! 1720: * mpn/Makefile.in (.S.o): Delete spurious creation of temp .c file.
! 1721:
! 1722: Mon Dec 19 01:56:30 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1723:
! 1724: * config.sub: Recognize pentium as a valid CPU.
! 1725: * mpn/configure.in: Handle pentium specifically, to use new assembly
! 1726: code.
! 1727:
! 1728: Mon Dec 19 00:13:01 1994 Jim Meyering (meyering@comco.com)
! 1729:
! 1730: * gmp.h: Define _GMP_H_HAVE_FILE if FILE, __STDIO_H__, or H_STDIO
! 1731: is defined.
! 1732: * gmp.h: test _GMP_H_HAVE_FILE instead of FILE everywhere else.
! 1733:
! 1734: Mon Dec 19 00:04:54 1994 Kent Boortz (boortz@sics.se)
! 1735:
! 1736: * Makefile.in (recursive makes): Pass CFLAGS.
! 1737:
! 1738: Sun Dec 18 22:34:49 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1739:
! 1740: * mpn/pentium: New directory.
! 1741:
! 1742: * mpz/pprime.c: Make sure to mpz_clear all temporaries.
! 1743:
! 1744: * longlong.h: Don't use udiv instruction when SUPERSPARC is defined.
! 1745: * configure.in: Handle supersparc*-.
! 1746: * config/mt-supspc-gcc: New file.
! 1747: * config/mt-sparc8-gcc: New name for mt-sparcv8-gcc.
! 1748:
! 1749: Mon Dec 12 22:22:10 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1750:
! 1751: * mpn/i386/*.S: #include "asm-syntax.h", not "asm.h".
! 1752: #include sysdep.h before asm-syntax.h.
! 1753:
! 1754: * mpn/mc68020/asm-syntax.h: #undef ALIGN before defining it.
! 1755: * mpn/i386/asm-syntax.h: Likewise.
! 1756:
! 1757: * mpn/mc68020/asm-syntax.h: New name for asm.h.
! 1758: * mpn/i386/asm-syntax.h: New name for asm.h.
! 1759:
! 1760: Tue Dec 6 21:55:25 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1761:
! 1762: * mpz/array_init.c: Fix typo in declaration.
! 1763:
! 1764: Fri Nov 18 19:50:52 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1765:
! 1766: * mpn/Makefile.in (.S.o): Pass CFLAGS and INCLUDES.
! 1767:
! 1768: Mon Nov 14 00:34:12 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1769:
! 1770: * mpn/generic/random2.c (random): Test for __svr4__.
! 1771:
! 1772: Wed Oct 12 23:28:16 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1773:
! 1774: * cre-conv-tab.c (main): Avoid upper-case X in printf format string.
! 1775:
! 1776: Tue Aug 23 17:16:35 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1777:
! 1778: * mpz/perfsqr.c: Use mpn_perfect_square_p.
! 1779: * mpn/generic/perfsqr.c: New file.
! 1780:
! 1781: Wed Jul 6 13:46:51 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1782:
! 1783: * mpz/array_init.c: New file.
! 1784: * mpz/Makefile.in: Compile array_init.
! 1785: * gmp.h: Declare mpz_array_init.
! 1786:
! 1787: Mon Jul 4 01:10:03 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1788:
! 1789: * mpz/add.c: Fix bogus comment.
! 1790: * mpz/sub.c: Likewise.
! 1791:
! 1792: Sat Jul 2 02:14:56 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1793:
! 1794: * mpn/generic/pre_mod_1.c: New file.
! 1795: * mpz/perfsqr.c: Use __mpn_preinv_mod_1 when faster.
! 1796:
! 1797: Fri Jul 01 22:10:19 1994 Richard Earnshaw (rwe11@cl.cam.ac.uk)
! 1798:
! 1799: * longlong.h (arm umul_ppmm): Fix typos in last change. Mark
! 1800: hard-coded registers with "%|"
! 1801:
! 1802: Thu Jun 30 03:59:33 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1803:
! 1804: * mpz/perfsqr.c: Define PP, etc, for machines with 64 bit limbs.
! 1805: Use __mpn_mod_1.
! 1806: * mpz/perfsqr.c: Don't clobber REM in quadratic residue check loop.
! 1807:
! 1808: Wed Jun 29 18:45:41 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1809:
! 1810: * mpn/generic/sqrt.c (SQRT): New asm for IBM POWER2.
! 1811:
! 1812: * mpz/gcd_ui.c: Return 0 if result does not fit an unsigned long.
! 1813:
! 1814: * gmp.h: Use "defined (__STDC__)" consistently.
! 1815:
! 1816: Tue Jun 28 18:44:58 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1817:
! 1818: * gmp.h (mpz_get_si): Don't use "signed" keyword for return type.
! 1819:
! 1820: * mpz/tests/Makefile.in: Use CFLAGS for linking.
! 1821:
! 1822: * Makefile.in (CFLAGS): Use -O2 here.
! 1823: * mpn/Makefile (CFLAGS): Not here.
! 1824:
! 1825: * mpq/cmp_ui.c: Fix typo.
! 1826: * mpq/canonicalize.c: Fix typo.
! 1827: * mpz/gcd_ui.c: Handle gcd(0,v) and gcd(u,0) correctly.
! 1828: * mpn/generic/gcd_1.c: Fix braino in last change.
! 1829:
! 1830: Mon Jun 27 16:10:27 1994 Torbjorn Granlund (tege@rtl.cygnus.com)
! 1831:
! 1832: * mpz/gcd_ui.c: Change return type and return result.
! 1833: Allow destination param to be NULL.
! 1834: * gmp.h: Corresponding change.
! 1835: * mpn/generic/gcd_1.c: Handle zero return from mpn_mod_1.
! 1836:
! 1837: Tue Jun 14 02:17:43 1994 Torbjorn Granlund (tege@tiny.cygnus.com)
! 1838:
! 1839: * mpn/i386/asm.h (ALIGN): Make it take a parameter.
! 1840: * mpn/i386/*.S: Use ALIGN to align all loops.
! 1841:
! 1842: * mpn/i386/*.S: Move colon inside C_GLOBAL_NAME expression.
! 1843: (Makes old versions of GAS happy.)
! 1844:
! 1845: Sat May 28 01:43:54 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1846:
! 1847: * Many files: Delete unused variables and labels.
! 1848: * mpn/generic/dump.c: cast printf width argument to int.
! 1849:
! 1850: Wed May 25 00:42:37 1994 Torbjorn Granlund (tege@thepub.cygnus.com)
! 1851:
! 1852: * mpz/gcd.c (mpz_gcd): Normalize after __mpn_sub calls.
! 1853: (xmod): Ignore return value of __mpn_divmod.
! 1854: (xmod): Improve normalization code.
! 1855:
! 1856: Sat May 21 01:30:09 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1857:
! 1858: * mpz/gcdext.c: Cosmetic changes.
! 1859:
! 1860: * mpz/fdiv_ui.c: New file.
! 1861:
! 1862: Fri May 20 00:24:53 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1863:
! 1864: * mpz/tests/Makefile.in: Use explicit rules for running tests,
! 1865: not a shell loop.
! 1866: (clean): Delete stmp-*.
! 1867:
! 1868: * mpz/Makefile.in: Update.
! 1869:
! 1870: * mpz/div_ui.c: Don't include longlong.h.
! 1871: * mpz/dm_ui.c: Likewise.
! 1872:
! 1873: * mpz/fdiv_q.c, mpz/fdiv_q_ui.c, mpz/fdiv_qr.c, mpz/fdiv_qr_ui.c,
! 1874: mpz/fdiv_r.c, mpz/fdiv_r_ui.c: New files. Code partly from deleted
! 1875: mdm.c, mdm_ui.c, etc, partly rewritten.
! 1876: * mpz/dm_floor_ui.c, mpz/dm_floor.c: Delete.
! 1877: * mpz/mdm.c, mpz/mdm_ui.c, mpz/mdiv.c, mpz/mdiv_ui.c, mpz/mmod.c,
! 1878: mpz/mmod_ui.c: Delete.
! 1879:
! 1880: * mpz/tdiv_q.c, mpz/tdiv_q_ui.c, mpz/tdiv_qr.c, mpz/tdiv_qr_ui.c,
! 1881: mpz/tdiv_r.c, mpz/tdiv_r_ui.c:
! 1882: New names for files implementing truncating division.
! 1883: * mpz/div_ui.c, mpz/dm_ui.c, mpz/mod_ui.c: Simplify.
! 1884:
! 1885: * mpn/Makefile.in (.S.o): Don't rely on CPP being defined, use CC
! 1886: instead.
! 1887: (clean): Delete tmp-*.
! 1888:
! 1889: Thu May 19 01:37:44 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1890:
! 1891: * mpz/cmp.c: Call __mpn_cmp.
! 1892:
! 1893: * mpz/popcount.c: Fix typo.
! 1894:
! 1895: * mpz/powm_ui.c: Simplify main loop. Keep principal operand size
! 1896: smaller than MSIZE when possible.
! 1897: * mpz/powm.c: Likewise.
! 1898:
! 1899: * mpn/generic/sqrt.c: Move alloca calls into where the memory is
! 1900: needed. Simplify.
! 1901:
! 1902: * gmp.h: (_PROTO): New macro.
! 1903: Add many function declarations; use _PROTO macro in all declarations.
! 1904:
! 1905: * mpf/*.c: Prepend mpn calls with __.
! 1906:
! 1907: Wed May 18 20:57:06 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1908:
! 1909: * mpf/*ui*.c: Make ui argument `long' for consistency with mpz
! 1910: functions.
! 1911:
! 1912: * mpf/div_ui.c: Simplify.
! 1913:
! 1914: Tue May 17 01:05:14 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1915:
! 1916: * mpz/*.c: Prepend mpn calls with __.
! 1917:
! 1918: * mpz/mul_ui.c: Use mpn_mul_1.
! 1919:
! 1920: Mon May 16 17:19:41 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1921:
! 1922: * mpn/i386/mul_1.S: Use C_GLOBAL_NAME.
! 1923: * mpn/i386/mul_1.S, mpn/i386/addmul_1.S, mpn/i386/submul_1.S:
! 1924: Nuke use of LAB.
! 1925:
! 1926: Sat May 14 14:21:02 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1927:
! 1928: * gmp-impl.h: Don't define abort here.
! 1929:
! 1930: * mpz/pow_ui.c: Increase temporary allocation.
! 1931: * mpz/ui_pow_ui.c: Likewise.
! 1932:
! 1933: * gmp.h (mpz_add_1, mpz_sub_1): Don't call memcpy.
! 1934:
! 1935: * All Makefile.in: Delete spurious -I arguments.
! 1936: Update dependencies.
! 1937:
! 1938: * mpz/popcount.c: New file.
! 1939: * mpz/hamdist.c: New file.
! 1940:
! 1941: * All configure: Latest version from Cygnus.
! 1942:
! 1943: * mpq/Makefile.in: New file.
! 1944: * mpq/configure.in: New file.
! 1945: * Makefile.in, configure.in: Enable compilation of mpq.
! 1946:
! 1947: * mpq/set_z.c: Fix typos.
! 1948: * mpq/canonicalize.c: Fix typos.
! 1949: * mpq/cmp_ui.c: Fix typos.
! 1950:
! 1951: * mpf/add_ui.c: Read U->D into UP always. Delete spurious MPN_COPY.
! 1952: * mpf/sub_ui.c: Likewise.
! 1953:
! 1954: * gmp-impl.h: Don't redefine alloca.
! 1955:
! 1956: * COPYING.LIB: Renamed from COPYING.
! 1957:
! 1958: Wed May 11 01:45:44 1994 Torbjorn Granlund (tege@adder.cygnus.com)
! 1959:
! 1960: * mpz/powm_ui.c: When shifting E left by C+1, handle out-of-range
! 1961: shift counts. Fix typo when testing negative_result.
! 1962: * mpz/powm.c: Likewise.
! 1963:
! 1964: * mpz/ui_pow_ui.c: New file.
! 1965: * mpz/Makefile.in: Update.
! 1966:
! 1967: * mpz/pow_ui.c: Call __mpn_mul_n instead of __mpn_mul when possible.
! 1968:
! 1969: * mpz/div.c, mpz/div_ui.c, mpz/gcd.c: Prefix external mpn calls.
! 1970: * mpz/gcd.c: Declare mpn_xmod.
! 1971:
! 1972: * mpz/powm.c: Major changes to accommodate changed mpn semantics.
! 1973: * mpz/powm_ui.c: Update from mpz/powm.c.
! 1974:
! 1975: * mpz/tests/tst-io.c: New file.
! 1976: * mpz/tests/tst-logic: New file.
! 1977: * mpz/tests/Makefile.in: Update.
! 1978:
! 1979: * mpz/inp_str.c: Get base right when checking for first digit.
! 1980: * mpz/inp_str.c: Allocate more space for DEST when needed.
! 1981:
! 1982: * mpz/com.c: Use mpn_add_1 and mpn_sub_1.
! 1983: * mpz/and.c, mpz/ior.c: Likewise. Simplify somewhat.
! 1984:
! 1985: * mpz/add_ui.c: Use mpn_add_1 and mpn_sub_1.
! 1986: Rename parameters to be consistent with mpz/sub_ui.
! 1987: General simplifications.
! 1988: * mpz/sub_ui.x: Likewise.
! 1989:
! 1990: Tue Aug 10 19:41:16 1993 Torbjorn Granlund (tege@prudens.matematik.su.se)
! 1991:
! 1992: * mpf: New directory.
! 1993: * mpf/*.c: Merge basic set of mpf functions.
! 1994:
! 1995: * Many logs missing...
! 1996:
! 1997: Sun Apr 25 18:40:26 1993 Torbjorn Granlund (tege@pde.nada.kth.se)
! 1998:
! 1999: * memory.c: Use #if instead of #ifdef for __STDC__ for consistency.
! 2000: * bsd/xtom.c: Likewise.
! 2001:
! 2002: * mpz/div.c: Remove free_me and free_me_size and their usage.
! 2003: Use mpn_divmod for division; corresponding changes in return value
! 2004: convention.
! 2005: * mpz/powm.c: `carry_digit' => `carry_limb'.
! 2006: * bsd/sdiv.c: Clearify comment.
! 2007:
! 2008: Sun Apr 25 00:31:28 1993 Torbjorn Granlund (tege@pde.nada.kth.se)
! 2009:
! 2010: * longlong.h (__udiv_qrnnd_c): Make all variables `unsigned long int'.
! 2011:
! 2012: Sat Apr 24 16:23:33 1993 Torbjorn Granlund (tege@pde.nada.kth.se)
! 2013:
! 2014: * longlong.h (__udiv_qrnnd_c): Make all variables `unsigned long int'.
! 2015:
! 2016: * gmp-impl.h: #define ABS.
! 2017: * (Many files): Use ABS instead of abs.
! 2018:
! 2019: * mpn/generic/sqrt.c, mpz/clrbit.c, mpz/get_si.c, mpz/mod_2exp.c,
! 2020: mpz/pow_ui.c: Cast 1 to mp_limb before shifting.
! 2021:
! 2022: * mpz/perfsqr.c: Use #if, not plain if for exclusion of code for
! 2023: non-32-bit machines.
! 2024:
! 2025: Tue Apr 20 13:13:58 1993 Torbjorn Granlund (tege@du.nada.kth.se)
! 2026:
! 2027: * mpn/generic/sqrt.c: Handle overflow for intermediate quotients by
! 2028: rounding them down to fit.
! 2029:
! 2030: * mpz/perfsqr.c (PP): Define in hexadecimal to avoid GCC warnings.
! 2031:
! 2032: * mpz/inp_str.c (char_ok_for_base): New function.
! 2033: (mpz_inp_str): Use it.
! 2034:
! 2035: Sun Mar 28 21:54:06 1993 Torbjorn Granlund (tege@cyklop.nada.kth.se)
! 2036:
! 2037: * mpz/inp_raw.c: Allocate x_index, not xsize limbs.
! 2038:
! 2039: Mon Mar 15 11:44:06 1993 Torbjorn Granlund (tege@pde.nada.kth.se)
! 2040:
! 2041: * mpz/pprime.c: Declare param `const'.
! 2042: * gmp.h: Add declarations for mpz_com.
! 2043:
! 2044: Thu Feb 18 14:10:34 1993 Torbjorn Granlund (tege@pde.nada.kth.se)
! 2045:
! 2046: * mpq/add.c, mpq/sub.c: Call mpz_clear for t.
! 2047:
! 2048: Fri Feb 12 20:27:34 1993 Torbjorn Granlund (tege@cyklop.nada.kth.se)
! 2049:
! 2050: * mpz/inp_str.c: Recog minus sign as first character.
! 2051:
! 2052: Wed Feb 3 01:36:02 1993 Torbjorn Granlund (tege@cyklop.nada.kth.se)
! 2053:
! 2054: * mpz/iset.c: Handle 0 size.
! 2055:
! 2056: Tue Feb 2 13:03:33 1993 Torbjorn Granlund (tege@cyklop.nada.kth.se)
! 2057:
! 2058: * mpz/mod_ui.c: Initialize dividend_size before it's used.
! 2059:
! 2060: Mon Jan 4 09:11:15 1993 Torbjorn Granlund (tege@sics.se)
! 2061:
! 2062: * bsd/itom.c: Declare param explicitly 'signed'.
! 2063: * bsd/sdiv.c: Likewise.
! 2064:
! 2065: * mpq/cmp.c: Remove unused variable tmp_size.
! 2066: * mpz/powm_ui.c: Fix typo in esize==0 if stmt.
! 2067: * mpz/powm.c: Likewise.
! 2068:
! 2069: Sun Nov 29 01:16:11 1992 Torbjorn Granlund (tege@sics.se)
! 2070:
! 2071: * mpn/generic/divmod_1.c (mpn_divmod_1): Handle
! 2072: divisor_limb == 1 << (BITS_PER_MP_LIMB - 1)
! 2073: specifically.
! 2074:
! 2075: * Reorganize sources. New directories mpn, mpn/MACH, mpn/generic,
! 2076: mpz, mpq, bsd. Use full file name for change logs hereafter.
! 2077:
! 2078: Wed Oct 28 17:40:04 1992 Torbjorn Granlund (tege@jupiter.sics.se)
! 2079:
! 2080: * longlong.h (__hppa umul_ppmm): Fix typos.
! 2081: (__hppa sub_ddmmss): Swap input arguments.
! 2082:
! 2083: * mpz_perfsqr.c (mpz_perfect_square_p): Avoid , before } in
! 2084: initializator.
! 2085:
! 2086: Sun Oct 25 20:30:06 1992 Torbjorn Granlund (tege@jupiter.sics.se)
! 2087:
! 2088: * mpz_pprime.c (mpz_probab_prime_p): Handle numbers <= 3
! 2089: specifically (used to consider all negative numbers prime).
! 2090:
! 2091: * mpz_powm_ui: `carry_digit' => `carry_limb'.
! 2092:
! 2093: * sdiv: Handle zero dividend specifically. Replace most code in
! 2094: this function with a call to mpn_divmod_1.
! 2095:
! 2096: Fri Sep 11 22:15:55 1992 Torbjorn Granlund (tege@tarrega.sics.se)
! 2097:
! 2098: * mpq_clear: Don't free the MP_RAT!
! 2099:
! 2100: * mpn_lshift, mpn_rshift, mpn_rshiftci: Remove `long' from 4:th arg.
! 2101:
! 2102: Thu Sep 3 01:47:07 1992 Torbjorn Granlund (tege@jupiter.sics.se)
! 2103:
! 2104: * All files: Remove leading _ from mpn function names.
! 2105:
! 2106: Wed Sep 2 22:21:16 1992 Torbjorn Granlund (tege@jupiter.sics.se)
! 2107:
! 2108: Fix from Jan-Hein Buhrman:
! 2109: * mpz_mdiv.c, mpz_mmod.c, mpz_mdm.c: Make them work as documented.
! 2110:
! 2111: * mpz_mmod.c, mpz_mdm.c: Move decl of TEMP_DIVISOR to reflect its
! 2112: life.
! 2113:
! 2114: Sun Aug 30 18:37:15 1992 Torbjorn Granlund (tege@jupiter.sics.se)
! 2115:
! 2116: * _mpz_get_str: Use mpz_sizeinbase for computing out_len.
! 2117: * _mpz_get_str: Don't remove leading zeros. Abort if there are some.
! 2118:
! 2119: Wed Mar 4 17:56:56 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2120:
! 2121: * gmp.h: Change definition of MP_INT to make the & before params
! 2122: optional. Use typedef to define it.
! 2123: * mp.h: Use typedef to define MINT.
! 2124:
! 2125: Tue Feb 18 14:38:39 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2126:
! 2127: longlong.h (hppa umul_ppmm): Add missing semicolon. Declare type
! 2128: of __w1 and __w0.
! 2129:
! 2130: Fri Feb 14 21:33:21 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2131:
! 2132: * longlong.h: Make default count_leading_zeros work for machines >
! 2133: 32 bits. Prepend `__' before local variables to avoid conflicts
! 2134: with users' variables.
! 2135:
! 2136: * mpn_dm_1.c: Remove udiv_qrnnd_preinv ...
! 2137: * gmp-impl.h: ... and put it here.
! 2138: * mpn_mod_1: Use udiv_qrnnd_preinv if it is faster than udiv_qrnnd.
! 2139:
! 2140: Tue Feb 11 17:20:12 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2141:
! 2142: * mpn_mul: Enhance base case by handling small multiplicands.
! 2143: * mpn_dm_1.c: Revert last change.
! 2144:
! 2145: Mon Feb 10 11:55:15 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2146:
! 2147: * mpn_dm_1.c: Don't define udiv_qrnnd_preinv unless needed.
! 2148:
! 2149: Fri Feb 7 16:26:16 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2150:
! 2151: * mpn_mul: Replace code for base case.
! 2152:
! 2153: Thu Feb 6 15:10:42 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2154:
! 2155: * mpn_dm_1.c (_mpn_divmod_1): Add code for avoiding division by
! 2156: pre-inverting divisor.
! 2157:
! 2158: Sun Feb 2 11:10:25 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2159:
! 2160: * longlong.h: Make __LLDEBUG__ work differently.
! 2161: (_IBMR2): Reinsert old code.
! 2162:
! 2163: Sat Feb 1 16:43:00 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2164:
! 2165: * longlong.h (#ifdef _IBMR2): Replace udiv_qrnnd with new code
! 2166: using floating point operations. Don't define
! 2167: UDIV_NEEDS_NORMALIZATION any longer.
! 2168:
! 2169: Fri Jan 31 15:09:13 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2170:
! 2171: * longlong.h: Define UMUL_TIME and UDIV_TIME for most machines.
! 2172: * longlong.h (#ifdef __hppa): Define umul_ppmm.
! 2173:
! 2174: Wed Jan 29 16:41:36 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2175:
! 2176: * mpn_cmp: Only one length parameter, assume operand lengths are
! 2177: the same. Don't require normalization.
! 2178: * mpq_cmp, mpz_add, mpz_sub, mpz_gcd, mpn_mul, mpn_sqrt: Change for
! 2179: new mpn_cmp definition.
! 2180:
! 2181: Tue Jan 28 11:18:55 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2182:
! 2183: * _mpz_get_str: Fix typo in comment.
! 2184:
! 2185: Mon Jan 27 09:44:16 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2186:
! 2187: * Makefile.in: Add new files.
! 2188:
! 2189: * mpn_dm_1.c: New file with function _mpn_divmod_1.
! 2190: * mpz_dm_ui.c (mpz_divmod_ui): Use _mpn_divmod_1.
! 2191: * mpz_div_ui: Likewise.
! 2192:
! 2193: * mpn_mod_1.c: New file with function _mpn_mod_1.
! 2194: * mpz_mod_ui: Use _mpn_mod_1.
! 2195:
! 2196: Thu Jan 23 18:54:09 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2197:
! 2198: Bug found by Paul Zimmermann (zimmermann@inria.inria.fr):
! 2199: * mpz_div_ui.c (mpz_div_ui), mpz_dm_ui.c (mpz_divmod_ui):
! 2200: Handle dividend == 0.
! 2201:
! 2202: Wed Jan 22 12:02:26 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2203:
! 2204: * mpz_pprime.c: Use "" for #include.
! 2205:
! 2206: Sun Jan 19 13:36:55 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2207:
! 2208: * mpn_rshiftci.c (header): Correct comment.
! 2209:
! 2210: Wed Jan 15 18:56:04 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2211:
! 2212: * mpz_powm, mpz_powm_ui (if (bsize > msize)): Do alloca (bsize + 1)
! 2213: to make space for ignored quotient at the end. (The quotient might
! 2214: always be an extra limb.)
! 2215:
! 2216: Tue Jan 14 21:28:48 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2217:
! 2218: * mpz_powm_ui: Fix comment.
! 2219: * mpz_powm: Likewise.
! 2220:
! 2221: Mon Jan 13 18:16:25 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2222:
! 2223: * tests/Makefile.in: Prepend $(TEST_PREFIX) to Makefile target.
! 2224:
! 2225: Sun Jan 12 13:54:28 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2226:
! 2227: Fixes from Kazumaro Aoki:
! 2228: * mpz_out_raw: Take abs of size to handle negative values.
! 2229: * mpz_inp_raw: Reallocate before reading ptr from X.
! 2230: * mpz_inp_raw: Store, don't read, size to x->size.
! 2231:
! 2232: Tue Jan 7 17:50:25 1992 Torbjorn Granlund (tege@zevs.sics.se)
! 2233:
! 2234: * gmp.h, mp.h: Remove parameter names from prototypes.
! 2235:
! 2236: Sun Dec 15 00:09:36 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2237:
! 2238: * tests/Makefile.in: Prepend "./" to file names when executing
! 2239: tests.
! 2240:
! 2241: * Makefile.in: Fix many problems.
! 2242:
! 2243: Sat Dec 14 01:00:02 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2244:
! 2245: * mpn_sqrt.c: New file with _mpn_sqrt.
! 2246: * mpz_sqrt, mpz_sqrtrem, mpz_perfect_square_p: Use _mpn_sqrt.
! 2247: * msqrt.c: Delete. Create from mpz_sqrtrem.c in Makefile.in.
! 2248: * mpz_do_sqrt.c: Delete.
! 2249: * Makefile.in: Update to reflect these changes.
! 2250:
! 2251: * Makefile.in, configure, configure.subr: New files
! 2252: (from bothner@cygnus.com).
! 2253: * dist-Makefile: Delete.
! 2254:
! 2255: * mpz_fac_ui: Fix comment.
! 2256:
! 2257: * mpz_random2: Rewrite a bit to make it possible for the most
! 2258: significant limb to be == 1.
! 2259:
! 2260: * mpz_pprime.c (mpz_probab_prime_p): Remove \t\n.
! 2261:
! 2262: Fri Dec 13 23:10:02 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2263:
! 2264: * mpz_do_sqrt: Simplify special case for U == 0.
! 2265: * m*sqrt*.c, mpz_perfsqr.c (mpz_perfect_square_p):
! 2266: Rename _mpz_impl_sqrt to _mpz_do_sqrt.
! 2267:
! 2268: Fri Dec 13 12:52:28 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2269:
! 2270: * gmp-impl.h (MPZ_TMP_INIT): Cast to the right type.
! 2271:
! 2272: Thu Dec 12 22:17:29 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2273:
! 2274: * mpn_add, mpn_sub, mpn_mul, mpn_div: Change type of several
! 2275: variables to mp_size.
! 2276:
! 2277: Wed Dec 11 22:00:34 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2278:
! 2279: * mpn_rshift.c: Fix header comments.
! 2280:
! 2281: Mon Dec 9 17:46:10 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2282:
! 2283: Released 1.2.
! 2284:
! 2285: * gmp-impl.h (MPZ_TMP_INIT): Cast alloca return value.
! 2286:
! 2287: * dist-Makefile: Add missing dependency for cre-mparam.
! 2288:
! 2289: * mpz_mdiv.c, mpz_mmod.c, mpz_mdm.c, mpz_mdiv_ui.c,
! 2290: mpz_mmod_ui.c, mpz_mdm_ui.c: Remove obsolete comment.
! 2291:
! 2292: * dist-Makefile (clean): clean in tests subdir too.
! 2293: * tests/Makefile: Define default values for ROOT and SUB.
! 2294:
! 2295: * longlong.h (__a29k__ udiv_qrnnd): Change "q" to "1" for operand
! 2296: 2 constraint.
! 2297:
! 2298: Mon Nov 11 00:06:05 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2299:
! 2300: * mpz_sizeinb.c (mpz_sizeinbase): Special code for size == 0.
! 2301:
! 2302: Sat Nov 9 23:47:38 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2303:
! 2304: Released 1.1.94.
! 2305:
! 2306: * dist-Makefile, Makefile, tests/Makefile: Merge tests into
! 2307: distribution.
! 2308:
! 2309: Fri Nov 8 22:57:19 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2310:
! 2311: * gmp.h: Don't use keyword `signed' for non-ANSI compilers.
! 2312:
! 2313: Thu Nov 7 22:06:46 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2314:
! 2315: * longlong.h: Cosmetic changes to keep it identical to gcc2 version
! 2316: of longlong.h.
! 2317: * longlong.h (__ibm032__): Fix operand order for add_ssaaaa and
! 2318: sub_ddmmss.
! 2319:
! 2320: Mon Nov 4 00:36:46 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2321:
! 2322: * mpn_mul: Fix indentation.
! 2323:
! 2324: * mpz_do_sqrt: Don't assume 32 bit limbs (had constant
! 2325: 4294967296.0).
! 2326: * mpz_do_sqrt: Handle overflow in conversion from double returned
! 2327: by SQRT to mp_limb.
! 2328:
! 2329: * gmp.h: Add missing function definitions.
! 2330:
! 2331: Sun Nov 3 18:25:25 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2332:
! 2333: * mpz_pow_ui: Change type of `i' to int.
! 2334:
! 2335: * ChangeLog: Add change log entry.
! 2336: * ChangeLog: Add change log entry.
! 2337: * ChangeLog: Add change log entry.
! 2338: * ChangeLog: Add change log entry.
! 2339: * ChangeLog: Add change log entry.
! 2340: * ChangeLog: Add change log entry.
! 2341: * ChangeLog: Add change log entry.
! 2342: * ChangeLog: Add change log entry.
! 2343: Stack overflow.
! 2344:
! 2345: * mpz_pow_ui.c: Fix typo in comment.
! 2346:
! 2347: * dist-Makefile: Create rpow.c from mpz_powm_ui.c.
! 2348: * mpz_powm_ui.c: Add code for rpow.
! 2349: * rpow.c: Delete this file. The rpow function is now implemented
! 2350: in mpz_powm_ui.c.
! 2351:
! 2352: * mpz_fac_ui.c: New file.
! 2353: * gmp.h, dist-Makefile: Add stuff for mpz_fac_ui.
! 2354:
! 2355: Bug found by John Amanatides (amana@sasquatch.cs.yorku.ca):
! 2356: * mpz_powm_ui, mpz_powm: Call _mpn_mul in the right way, with
! 2357: the first argument not smaller than the second.
! 2358:
! 2359: Tue Oct 29 13:56:55 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2360:
! 2361: * cre-conv-tab.c (main), cre-mparam.c (main): Fix typo in output
! 2362: header text.
! 2363:
! 2364: Mon Oct 28 00:35:29 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2365:
! 2366: * mpz_random2: Handle size == 0.
! 2367:
! 2368: * gmp-impl.h (struct __mp_bases): Rename chars_per_limb_exactly to
! 2369: chars_per_bit_exactly, and change its definition.
! 2370: * cre-conv-tab.c (main): Output field according to its new
! 2371: definition.
! 2372: * mpz_out_str, _mpz_get_str, mpz_sizeinb, mout:
! 2373: Use chars_per_bit_exactly.
! 2374:
! 2375: * mpz_random2: Change the loop termination condition in order to
! 2376: get a large most significant limb with higher probability.
! 2377:
! 2378: * gmp.h: Add declaration of new mpz_random2 and mpz_get_si.
! 2379: * mpz_get_si.c: New file.
! 2380: * dist-Makefile: Add mpz_random2 and mpz_get_si.
! 2381:
! 2382: * mpz_sizeinb.c (mpz_sizeinbase): Special code for base being a
! 2383: power of 2, giving exact result.
! 2384:
! 2385: * mpn_mul: Fix MPN_MUL_VERIFY in various ways.
! 2386: * mpn_mul: New macro KARATSUBA_THRESHOLD.
! 2387: * mpn_mul (karatsuba's algorithm): Don't write intermediate results
! 2388: to prodp, use temporary pp instead. (Intermediate results can be
! 2389: larger than the final result, possibly writing into hyperspace.)
! 2390: * mpn_mul: Make smarter choice between Karatsuba's algorithm and the
! 2391: shortcut algorithm.
! 2392: * mpn_mul: Fix typo, cy instead of xcy. Unify carry handling code.
! 2393:
! 2394: Sun Oct 27 19:57:32 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2395:
! 2396: * mpn_mul: In non-classical case, choose Karatsuba's algorithm only
! 2397: when usize > 1.5 vsize.
! 2398:
! 2399: * mpn_mul: Break between classical and Karatsuba's algorithm at
! 2400: KARATSUBA_THRESHOLD, if defined. Default to 8.
! 2401:
! 2402: * mpn_div: Kludge to fix stray memory read.
! 2403:
! 2404: Sat Oct 26 20:06:14 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2405:
! 2406: * mpz_gcdext: Handle a = b = 0. Remove memory leakage by calling
! 2407: mpz_clear for all temporary variables.
! 2408:
! 2409: * mpz_gcd: Reduce w_bcnt in _mpn_lshift call to hold that
! 2410: function's argument constraints. Compute wsize correctly.
! 2411:
! 2412: * mpz_gcd: Fix typo in comment.
! 2413:
! 2414: * memory.c (_mp_default_allocate, _mp_default_reallocate): Call
! 2415: abort if allocation fails, don't just exit.
! 2416:
! 2417: Fri Oct 25 22:17:20 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2418:
! 2419: * mpz_random2.c: New file.
! 2420:
! 2421: Thu Oct 17 18:06:42 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2422:
! 2423: Bugs found by Pierre-Joseph Gailly (pjg@sunbim.be):
! 2424: * mpq_cmp: Take sign into account, don't just compare the
! 2425: magnitudes.
! 2426: * mpq_cmp: Call _mpn_mul in the right way, with the first argument
! 2427: not smaller than the second.
! 2428:
! 2429: Wed Oct 16 19:27:32 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2430:
! 2431: * mpz_random: Ensure the result is normalized.
! 2432:
! 2433: Tue Oct 15 14:55:13 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2434:
! 2435: * mpz_clrbit: Support non-ANSI compilers.
! 2436:
! 2437: Wed Oct 9 18:03:28 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2438:
! 2439: * longlong.h (68k add_ssaaaa, sub_ddmmss): Generalize constraints.
! 2440:
! 2441: Tue Oct 8 17:42:59 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2442:
! 2443: * mpz_mdm_ui: Add comments.
! 2444:
! 2445: * mpz_mdiv: Use MPZ_TMP_INIT instead of mpz_init.
! 2446: * mpz_init_ui: Change spacing and header comment.
! 2447:
! 2448: Thu Oct 3 18:36:13 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2449:
! 2450: * dist-Makefile: Prepend `./' before some filenames.
! 2451:
! 2452: Sun Sep 29 14:02:11 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2453:
! 2454: Released 1.1 (public).
! 2455:
! 2456: * mpz_com: New name of mpz_not.
! 2457: * dist-Makefile: Change mpz_not to mpz_com.
! 2458:
! 2459: Tue Sep 24 12:44:11 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2460:
! 2461: * longlong.h: Fix header comment.
! 2462:
! 2463: Mon Sep 9 15:16:24 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2464:
! 2465: Released 1.0.92.
! 2466:
! 2467: * mpn_mul.c (_mpn_mul): Handle leading zero limbs in non-Karatsuba
! 2468: case.
! 2469:
! 2470: * longlong.h (m68000 umul_ppmm): Clobber one register less by
! 2471: slightly rearranging the code.
! 2472:
! 2473: Sun Sep 1 18:53:25 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2474:
! 2475: * dist-Makefile (stamp-stddefh): Fix typo.
! 2476:
! 2477: Sat Aug 31 20:41:31 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2478:
! 2479: Released 1.0.91.
! 2480:
! 2481: * mpz_mdiv.c, mpz_mmod.c, mpz_mdm.c, mpz_mdiv_ui.c,
! 2482: mpz_mmod_ui.c, mpz_mdm_ui.c: New files and functions.
! 2483: * gmp.h, gmp.texi: Define the new functions.
! 2484:
! 2485: Fri Aug 30 08:32:56 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2486:
! 2487: * mpz_gcdext: Compute t argument from the other quantities at the
! 2488: end, of the function, not in the loop. New feature: Allow t to be
! 2489: NULL.
! 2490:
! 2491: * mpz_add.c, mpz_sub.c, mpz_mul.c, mpz_powm.c, mpz_gcd.c: Don't
! 2492: include "mp.h". Use type name `MP_INT' always.
! 2493:
! 2494: * dist-Makefile, mpz_cmp.c: Merge mcmp.c from mpz_cmp.c.
! 2495:
! 2496: Wed Aug 28 00:45:11 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2497:
! 2498: * dist-Makefile (documentation): Go via tmp.texi to avoid the
! 2499: creation of gmp.dvi if any errors occur. Make tex read input
! 2500: from /dev/null.
! 2501:
! 2502: Fri Aug 23 15:58:52 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2503:
! 2504: * longlong.h (68020, i386): Don't define machine-dependent
! 2505: __umulsidi3 (so the default definition is used).
! 2506: * longlong.h (all machines): Cast all operands, sources and
! 2507: destinations, to `unsigned long int'.
! 2508: * longlong.h: Add gmicro support.
! 2509:
! 2510: Thu Aug 22 00:28:29 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2511:
! 2512: * longlong.h: Rename BITS_PER_LONG to LONG_TYPE_SIZE.
! 2513: * longlong.h (__ibm032__): Define count_leading_zeros and umul_ppmm.
! 2514: * longlong.h: Define UMUL_TIME and UDIV_TIME for some CPUs.
! 2515: * _mpz_get_str.c: Add code to do division by big_base using only
! 2516: umul_qrnnd, if that is faster. Use UMUL_TIME and UDIV_TIME to
! 2517: decide which variant to use.
! 2518:
! 2519: Wed Aug 21 15:45:23 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2520:
! 2521: * longlong.h (__sparc__ umul_ppmm): Move two insn from end to the
! 2522: nops. (Saves two insn.)
! 2523:
! 2524: * longlong.h (__sparc__ umul_ppmm): Rewrite in order to avoid
! 2525: branch, and to permit input/output register overlap.
! 2526:
! 2527: * longlong.h (__29k__): Remove duplicated udiv_qrnnd definition.
! 2528: * longlong.h (__29k__ umul_ppmm): Split asm instructions into two
! 2529: asm statements (gives better code if either the upper or lower
! 2530: part of the product is unused.
! 2531:
! 2532: Tue Aug 20 17:57:59 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2533:
! 2534: * _mpz_get_str.c (outside of functions): Remove
! 2535: num_to_ascii_lower_case and num_to_ascii_upper_case. Use string
! 2536: constants in the function instead.
! 2537:
! 2538: Mon Aug 19 00:37:42 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2539:
! 2540: * cre-conv-tab.c (main): Output table in hex. Output 4 fields, not
! 2541: 3, for components 0 and 1.
! 2542:
! 2543: * gmp.h: Add declaration of mpq_neg.
! 2544:
! 2545: Released 1.0beta.13.
! 2546:
! 2547: * _mpz_set_str.c (mpz_set_str): Cast EOF and SPC to char before
! 2548: comparing to enum literals SPC and EOF. This makes the code work
! 2549: for compilers where `char' is unsigned. (Bug found by Brian
! 2550: Beuning).
! 2551:
! 2552: Released 1.0beta.12.
! 2553:
! 2554: * mpz_mod_ui: Remove references to quot. Remove quot_ptr, quot_size
! 2555: declarations and assignment code.
! 2556:
! 2557: Sun Aug 18 14:44:26 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2558:
! 2559: * mpz_mod_ui: Handle dividend < 0.
! 2560:
! 2561: Released 1.0beta.11.
! 2562:
! 2563: * mpz_dm_ui, mpz_div_ui, mpz_mod_ui, sdiv: Make them share the same
! 2564: general structure, variable names, etc.
! 2565:
! 2566: * sdiv: Un-normalize the remainder in n1 before it is negated.
! 2567:
! 2568: * longlong.h: Mention UDIV_NEEDS_NORMALIZATION in description of
! 2569: udiv_qrnnd.
! 2570:
! 2571: * mpz_dm_ui.c (mpz_divmod_ui), mpz_div_ui.c (mpz_div_ui): Increment
! 2572: the quotient size if the dividend size is incremented. (Bug found
! 2573: by Brian Beuning.)
! 2574:
! 2575: * mpz_mod_ui: Shift back the remainder, if UDIV_NEEDS_NORMALIZATION.
! 2576: (Bug found by Brian Beuning.)
! 2577:
! 2578: * mpz_mod_ui: Replace "digit" by "limb".
! 2579:
! 2580: * mpz_perfsqr.c (mpz_perfect_square_p): Disable second test case
! 2581: for non-32-bit machines (PP is hardwired for such machines).
! 2582: * mpz_perfsqr.c (outside of functions): Define PP value with an L.
! 2583:
! 2584: * mpn_mul.c (_mpn_mul): Add verification code that is activated if
! 2585: DEBUG is defined. Replace "digit" by "limb".
! 2586: * mpn_mul.c (_mpn_mul: Karatsuba's algorithm: 4.): Normalize temp
! 2587: after the addition.
! 2588: * mpn_mul.c (_mpn_mul: Karatsuba's algorithm: 1.): Compare u0_size
! 2589: and v0_size, and according to the result, swap arguments in
! 2590: recursive call. (Don't violate mpn_mul's own argument
! 2591: constraints.)
! 2592:
! 2593: Fri Aug 16 13:47:12 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2594:
! 2595: Released 1.0beta.10.
! 2596:
! 2597: * longlong.h (IBMR2): Add udiv_qrnnd.
! 2598:
! 2599: * mpz_perfsqr: Remove unused variables.
! 2600:
! 2601: * mpz_and (case for different signs): Initialize loop variable i!
! 2602:
! 2603: * dist-Makefile: Update automatically generated dependencies.
! 2604: * dist-Makefile (madd.c, msub.c, pow.c, mult.c, gcd.c): Add mp.h,
! 2605: etc to dependency file lists.
! 2606:
! 2607: * longlong.h (add_ssaaaa, sub_ddmmss [C default versions]): Make __x
! 2608: `unsigned long int'.
! 2609: * longlong.h: Add `int' after `unsigned' and `long' everywhere.
! 2610:
! 2611: Wed Aug 14 18:06:48 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2612:
! 2613: * longlong.h: Add ARM, i860 support.
! 2614:
! 2615: * mpn_lshift, mpn_rshift, mpn_rshiftci: Rename *_word with *_limb.
! 2616:
! 2617: Tue Aug 13 21:57:43 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2618:
! 2619: * _mpz_get_str.c, _mpz_set_str.c, mpz_sizeinb.c (mpz_sizeinbase),
! 2620: mpz_out_str.c, mout.c: Remove declaration of __mp_bases.
! 2621: * gmp-impl.h: Put it here, and make it `const'.
! 2622: * cre-conv-tab.c (main): Make struct __mp_bases `const'.
! 2623:
! 2624: Mon Aug 12 17:11:46 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2625:
! 2626: * cre-conv-tab.c (main): Use %lu in printf for long ints.
! 2627:
! 2628: * dist-Makefile: Fix cre-* dependencies.
! 2629:
! 2630: * cre-conv-tab.c (main): Output field big_base_inverted.
! 2631:
! 2632: * gmp-impl.h (struct bases): New field big_base_inverted.
! 2633: * gmp-impl.h (struct bases): Change type of chars_per_limb_exactly
! 2634: to float (in order to keep the structure smaller).
! 2635:
! 2636: * mp.h, gmp.h: Change names of macros for avoiding multiple
! 2637: includes.
! 2638:
! 2639: Fri Aug 9 18:01:36 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2640:
! 2641: * _mpz_get_str: Only shift limb array if normalization_steps != 0
! 2642: (optimization).
! 2643:
! 2644: * longlong.h (sparc umul_ppmm): Use __asm__, not asm.
! 2645: * longlong.h (IBMR2 umul_ppmm): Refer to __m0 and __m1, not to m0
! 2646: and m1 (overlap between output and input operands did not work).
! 2647: * longlong.h: Add VAX, ROMP and HP-PA support.
! 2648: * longlong.h: Sort the machine dependent code in alphabetical order
! 2649: on the CPU name.
! 2650: * longlong.h: Hack comments.
! 2651:
! 2652: Thu Aug 8 14:13:36 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2653:
! 2654: Released 1.0beta.9.
! 2655:
! 2656: * longlong.h: Define BITS_PER_LONG to 32 if it's not already
! 2657: defined.
! 2658: * Define __BITS4 to BITS_PER_LONG / 4.
! 2659: * Don't assume 32 bit word size in "count_leading_zeros" C macro.
! 2660: Use __BITS4 and BITS_PER_LONG instead.
! 2661:
! 2662: * longlong.h: Don't #undef internal macros (reverse change of Aug 3).
! 2663:
! 2664: * longlong.h (68k): Define add_ssaaaa sub_ddmmss, and umul_ppmm
! 2665: even for plain mc68000.
! 2666:
! 2667: * mpq_div: Flip the sign of the numerator *and* denominator of the
! 2668: result if the intermediate denominator is negative.
! 2669:
! 2670: * mpz_and.c, mpz_ior.c: Use MPN_COPY for all copying operations.
! 2671:
! 2672: * mpz_and.c: Compute the result size more conservatively.
! 2673: * mpz_ior.c: Likewise.
! 2674:
! 2675: * mpz_realloc: Never allocate zero space even if NEW_SIZE == 0.
! 2676:
! 2677: * dist-Makefile: Remove madd.c, msub.c, pow.c, mult.c, gcd.c from
! 2678: BSDMP_SRCS.
! 2679:
! 2680: * dist-Makefile: Create mult.c from mpz_mul.c.
! 2681: * mult.c: Delete this file.
! 2682:
! 2683: * _mpz_set_str: Normalize the result (for bases 2, 4, 8... it was
! 2684: not done properly if the input string had many leading zeros).
! 2685:
! 2686: Sun Aug 4 16:54:14 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2687:
! 2688: * dist-Makefile (gcd.c, pow.c, madd.c, msub.c): Make these targets
! 2689: work with VPATH and GNU MP.
! 2690:
! 2691: * mpz_gcd: Don't call mpz_set; inline its functionality.
! 2692:
! 2693: * mpq_mul, mpq_div: Fix several serious typos.
! 2694:
! 2695: * mpz_dmincl, mpz_div: Don't normalize the quotient if it's already
! 2696: zero.
! 2697:
! 2698: * mpq_neg.c: New file.
! 2699:
! 2700: * dist-Makefile: Remove obsolete dependencies.
! 2701:
! 2702: * mpz_sub: Fix typo.
! 2703:
! 2704: Bugs found by Pierre-Joseph Gailly (pjg@sunbim.be):
! 2705: * mpq_mul, mpq_div: Initialize tmp[12] variables even when the gcd
! 2706: is just 1.
! 2707: * mpz_gcd: Handle gcd(0,v) and gcd(u,0) in special cases.
! 2708:
! 2709: Sat Aug 3 23:45:28 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2710:
! 2711: * longlong.h: Clean up comments.
! 2712: * longlong.h: #undef internal macros.
! 2713:
! 2714: Fri Aug 2 18:29:11 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2715:
! 2716: * mpq_set_si, mpq_set_ui: Canonicalize 0/x to 0/1.
! 2717: * mpq_set_si, mpq_set_ui: Cosmetic formatting changes.
! 2718:
! 2719: * mpz_dmincl.c: Normalize the remainder before shifting it back.
! 2720:
! 2721: * mpz_dm_ui.c (mpz_divmod_ui): Handle rem == dividend.
! 2722:
! 2723: * mpn_div.c: Fix comment.
! 2724:
! 2725: * mpz_add.c, mpz_sub.c: Use __MP_INT (not MP_INT) for intermediate
! 2726: type, in order to work for both GNU and Berkeley functions.
! 2727:
! 2728: * dist-Makefile: Create gcd.c from mpz_gcd.c, pow.c from mpz_powm,
! 2729: madd.c from mpz_add.c, msub.c from mpz_sub.c.
! 2730: respectively.
! 2731: * pow.c, gcd.c, mpz_powmincl.c, madd.c, msub.c: Remove these.
! 2732: * mpz_powm.c, mpz_gcd.c, mpz_add.c, mpz_sub.c: #ifdef for GNU and
! 2733: Berkeley function name variants.
! 2734: * dist-Makefile: Add created files to "clean" target.
! 2735:
! 2736: Tue Jul 16 15:19:46 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2737:
! 2738: * mpq_get_den: No need for absolute value of the size, the
! 2739: denominator is always positive.
! 2740:
! 2741: * mpz_get_ui: If the operand is zero, return zero. Don't read the
! 2742: limb array!
! 2743:
! 2744: * mpz_dmincl.c: Don't ignore the return value from _mpn_rshift, it
! 2745: is the size of the remainder.
! 2746:
! 2747: Mon Jul 15 11:08:05 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2748:
! 2749: * Several files: Remove unused variables and functions.
! 2750:
! 2751: * gmp-impl.h: Declare _mpz_impl_sqrt.
! 2752:
! 2753: * mpz_dm_ui (mpz_divmod_ui), sdiv: Shift back the remainder if
! 2754: UDIV_NEEDS_NORMALIZATION. (Fix from Brian Beuning.)
! 2755:
! 2756: * mpz_dm_ui.c, sdiv: Replace *digit with *limb.
! 2757:
! 2758: * mpz_ior: Add missing else statement in -OP1 | -OP2 case.
! 2759: * mpz_ior: Add missing else statement in OP1 | -OP2 case.
! 2760: * mpz_ior: Swap also OP1 and OP2 pointers in -OP1 & OP2 case.
! 2761: * mpz_ior: Duplicate _mpz_realloc code.
! 2762:
! 2763: * mpz_and: Add missing else statement in -OP1 & -OP2 case.
! 2764: * mpz_and: Rewrite OP1 & -OP2 case.
! 2765: * mpz_and: Swap also OP1 and OP2 pointers in -OP1 & OP2 case.
! 2766:
! 2767: * mpz_gcdext: Loop in d1.size (not b->size). (Fix from Brian
! 2768: Beuning.)
! 2769:
! 2770: * mpz_perfsqr: Fix argument order in _mpz_impl_sqrt call. (Fix from
! 2771: Brian Beuning.)
! 2772:
! 2773: Fri Jul 12 17:10:33 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2774:
! 2775: * mpq_set.c, mpq_set_ui.c, mpq_set_si.c, mpq_inv.c,
! 2776: mpq_get_num.c, mpq_get_den.c, mpq_set_num.c, mpq_set_den.c:
! 2777: New files.
! 2778:
! 2779: * mpz_dmincl.c: Remove second re-allocation of rem->d. It
! 2780: was never executed.
! 2781:
! 2782: * dist-Makefile: Use `-r' instead of `-x' for test for ranlib (as
! 2783: some unixes' test doesn't have the -r option).
! 2784:
! 2785: * *.*: Cast allocated pointers to the appropriate type (makes old C
! 2786: compilers happier).
! 2787:
! 2788: * cre-conv-tab.c (main): Divide max_uli by 2 and multiply again
! 2789: after conversion to double. (Kludge for broken C compilers.)
! 2790:
! 2791: * dist-Makefile (stamp-stddefh): New target. Test if "stddef.h"
! 2792: exists in the system and creates a minimal one if it does not
! 2793: exist.
! 2794: * cre-stddefh.c: New file.
! 2795: * dist-Makefile: Make libgmp.a and libmp.a depend on stamp-stddefh.
! 2796: * dist-Makefile (clean): Add some more.
! 2797: * gmp.h, mp.h: Unconditionally include "stddef.h".
! 2798:
! 2799: Thu Jul 11 10:08:21 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2800:
! 2801: * min: Do ungetc of last read character.
! 2802: * min.c: include stdio.h.
! 2803:
! 2804: * dist-Makefile: Go via tmp- files for cre* redirection.
! 2805: * dist-Makefile: Add tmp* to "clean" target.
! 2806:
! 2807: * dist-Makefile: Use LOCAL_CC for cre*, to simplyfy cross
! 2808: compilation.
! 2809:
! 2810: * gmp.h, mp.h: Don't define NULL here.
! 2811: * gmp-impl.h: Define it here.
! 2812:
! 2813: Wed Jul 10 14:13:33 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2814:
! 2815: * mpz_mod_2exp: Don't copy too much, overwriting most significant
! 2816: limb.
! 2817:
! 2818: * mpz_and, mpz_ior: Don't read op[12]_ptr from op[12] when
! 2819: reallocating res, if op[12]_ptr got their value from alloca.
! 2820:
! 2821: * mpz_and, mpz_ior: Clear up comments.
! 2822:
! 2823: * cre-mparam.c: Output parameters for `short int' and `int'.
! 2824:
! 2825: * mpz_and, mpz_ior: Negate negative op[12]_size in several places.
! 2826:
! 2827: Tue Jul 9 18:40:30 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2828:
! 2829: * gmp.h, mp.h: Test for _SIZE_T defined before typedef'ing size_t.
! 2830: (Fix for Sun lossage.)
! 2831:
! 2832: * gmp.h: Add declaration of mpq_clear.
! 2833:
! 2834: * dist-Makefile: Chack if "ranlib" exists, before using it.
! 2835: * dist-Makefile: Add mpz_sqrtrem.c and mpz_size.c.
! 2836: * mpz_powm: Fix typo, "pow" instead of "mpz_powm".
! 2837:
! 2838: Fri Jul 5 19:08:09 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2839:
! 2840: * move: Remove incorrect comment.
! 2841:
! 2842: * mpz_free, mpq_free: Rename to *_clear.
! 2843: * dist-Makefile: Likewise.
! 2844: * mpq_add, mpq_sub, mpq_mul, mpq_div: Likewise.
! 2845:
! 2846: * mpz_dmincl.c: Don't call "move", inline its functionality.
! 2847:
! 2848: Thu Jul 4 00:06:39 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2849:
! 2850: * Makefile: Include dist-Makefile. Fix dist target to include
! 2851: dist-Makefile (with the name "Makefile" in the archive).
! 2852:
! 2853: * dist-Makefile: New file made from Makefile. Add new mpz_...
! 2854: functions.
! 2855:
! 2856: * mpz_powincl.c New file for mpz_powm (Berkeley MP pow)
! 2857: functionality. Avoids code duplication.
! 2858: * pow.c, mpz_powm.c: Include mpz_powincl.c
! 2859:
! 2860: * mpz_dmincl.c: New file containing general division code. Avoids
! 2861: code duplication.
! 2862: * mpz_dm.c (mpz_divmod), mpz_mod.c (mpz_mod), mdiv.c (mdiv): Include
! 2863: mpz_dmincl.c.
! 2864:
! 2865: * _mpz_get_str: Don't call memmove, unless HAS_MEMMOVE is defined.
! 2866: Instead, write the overlapping memory copying inline.
! 2867:
! 2868: * mpz_dm_ui.c: New name for mpz_divmod_ui.c (SysV file name limit).
! 2869:
! 2870: * longlong.h: Don't use #elif.
! 2871: * mpz_do_sqrt.c: Likewise.
! 2872:
! 2873: * longlong.h: Use __asm__ instead of asm.
! 2874: * longlong.h (sparc udiv_qrnnd): Make it to one string over several
! 2875: lines.
! 2876:
! 2877: * longlong.h: Preend __ll_ to B, highpart, and lowpart.
! 2878:
! 2879: * longlong.h: Move array t in count_leading_zeros to the new file
! 2880: mp_clz_tab.c. Rename the array __clz_tab.
! 2881: * All files: #ifdef for traditional C compatibility.
! 2882:
! 2883: Wed Jul 3 11:42:14 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2884:
! 2885: * mpz_and: Initialize res_ptr always (used to be initialized only
! 2886: when reallocating).
! 2887:
! 2888: * longlong.h (umul_ppmm [C variant]): Make __ul...__vh
! 2889: `unsigned int', and cast the multiplications. This way
! 2890: compilers more easily can choose cheaper multiplication
! 2891: instructions.
! 2892:
! 2893: * mpz_mod_2exp: Handle input argument < modulo argument.
! 2894: * mpz_many: Make sure mp_size is the type for sizes, not int.
! 2895:
! 2896: * mpz_init, mpz_init_set*, mpq_init, mpq_add, mpq_sub, mpq_mul,
! 2897: mpq_div: Change mpz_init* interface. Structure pointer as first
! 2898: arg to initialization function, no longer *return* struct.
! 2899:
! 2900: Sun Jun 30 19:21:44 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2901:
! 2902: * Rename mpz_impl_sqrt.c to mpz_do_sqrt.c to satisfy SysV 14
! 2903: character file name length limit.
! 2904:
! 2905: * Most files: Rename MINT to MP_INT. Rename MRAT to MP_RAT.
! 2906: * mpz_sizeinb.c: New file with function mpz_sizeinbase.
! 2907: * mp_bases.c: New file, with array __mp_bases.
! 2908: * _mpz_get_str, _mpz_set_str: Remove struct bases, use extern
! 2909: __mp_bases instead.
! 2910: * mout, mpz_out_str: Use array __mp_bases instead of function
! 2911: _mpz_get_cvtlen.
! 2912: * mpz_get_cvtlen.c: Remove.
! 2913: * Makefile: Update.
! 2914:
! 2915: Sat Jun 29 21:57:28 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2916:
! 2917: * longlong.h (__sparc8__ umul_ppmm): Insert 3 nop:s for wr delay.
! 2918: * longlong.h (___IBMR2__): Define umul_ppmm, add_ssaaaa, sub_ddmmss.
! 2919: * longlong.h (__sparc__): Don't call .umul; expand asm instead.
! 2920: Don't define __umulsidi3 (i.e. use default definition).
! 2921:
! 2922: Mon Jun 24 17:37:23 1991 Torbjorn Granlund (tege@amon.sics.se)
! 2923:
! 2924: * _mpz_get_str.c (num_to_ascii_lower_case, num_to_ascii_upper_case):
! 2925: Swap 't' and 's'.
! 2926:
! 2927: Sat Jun 22 13:54:01 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2928:
! 2929: * mpz_gcdext.c: New file.
! 2930:
! 2931: * mpn_mul: Handle carry and unexpected operand sizes in last
! 2932: additions/subtractions. (Bug trigged when v1_size == 1.)
! 2933:
! 2934: * mp*_alloc*: Rename functions to mp*_init* (files to mp*_iset*.c).
! 2935: * mpq_*: Call mpz_init*.
! 2936:
! 2937: * mpz_pow_ui, rpow: Use _mpn_mul instead of mult. Restructure.
! 2938:
! 2939: Wed May 29 20:32:33 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2940:
! 2941: * mpz_get_cvtlen: multiply by size.
! 2942:
! 2943: Sun May 26 15:01:15 1991 Torbjorn Granlund (tege@bella.nada.kth.se)
! 2944:
! 2945: Alpha-release 0.95.
! 2946:
! 2947: Fixes from Doug Lea (dl@g.oswego.edu):
! 2948: * mpz_mul_ui: Loop to MULT_SIZE (not PROD_SIZE). Adjust PROD_SIZE
! 2949: correctly.
! 2950: * mpz_div: Prepend _ to mpz_realloc.
! 2951: * mpz_set_xs, mpz_set_ds: Fix typos in function name.
! 2952:
! 2953: Sat May 25 22:51:16 1991 Torbjorn Granlund (tege@bella.nada.kth.se)
! 2954:
! 2955: * mpz_divmod_ui: New function.
! 2956:
! 2957: * sdiv: Make the sign of the remainder correct.
! 2958:
! 2959: Thu May 23 15:28:24 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2960:
! 2961: * Alpha-release 0.94.
! 2962:
! 2963: * mpz_mul_ui: Include longlong.h.
! 2964:
! 2965: * mpz_perfsqr.c (mpz_perfect_square_p): Call _mpz_impl_sqrt instead
! 2966: of msqrt.
! 2967:
! 2968: * mpz_impl_sqrt: Don't call "move", inline its functionality.
! 2969:
! 2970: * mdiv: Use MPN_COPY instead of memcpy.
! 2971: * rpow, mpz_mul, mpz_mod_2exp: Likewise.
! 2972: * pow.c: Likewise, and fix bug in the size arg.
! 2973:
! 2974: * xtom: Don't use mpz_alloc, inline needed code instead. Call
! 2975: _mpz_set_str instead of mpz_set_str.
! 2976:
! 2977: * Makefile: Make two libraries, libmp.a and libgmp.a.
! 2978:
! 2979: Thu May 22 20:25:29 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2980:
! 2981: * Add manual to distribution.
! 2982: * Fold in many missing routines descibed in the manual.
! 2983: * Update Makefile.
! 2984:
! 2985: Wed May 22 13:48:46 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2986:
! 2987: * mpz_set_str: Make it handle 0x prefix OK.
! 2988:
! 2989: Sat May 18 18:31:02 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2990:
! 2991: * memory.c (_mp_default_reallocate): Swap OLD_SIZE and NEW_SIZE
! 2992: arguments.
! 2993: * mpz_realloc (_mpz_realloc): Swap in call to _mp_reallocate_func.
! 2994: * min: Likewise.
! 2995:
! 2996: Thu May 16 20:43:05 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 2997:
! 2998: * memory.c: Make the default allocations functions global.
! 2999: * mp_set_fns (mp_set_memory_functions): Make a NULL pointer mean the
! 3000: default memory function.
! 3001:
! 3002: Wed May 8 20:02:42 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 3003:
! 3004: * mpz_div: Handle DEN the same as QUOT correctly by copying DEN->D
! 3005: even if no normalization is needed.
! 3006: * mpz_div: Rework reallocation scheme, to avoid excess copying.
! 3007:
! 3008: * mpz_sub_ui.c, mpz_add_ui.c: New files.
! 3009:
! 3010: * mpz_cmp.c, mpz_cmp_ui.c: New files.
! 3011:
! 3012: * mpz_mul_2exp: Handle zero input MINT correctly.
! 3013:
! 3014: * mpn_rshiftci: Don't handle shift counts > BITS_PER_MP_DIGIT.
! 3015:
! 3016: * mpz_out_raw.c, mpz_inp_raw.c: New files for raw I/O.
! 3017:
! 3018: Tue May 7 15:44:58 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 3019:
! 3020: * mpn_rshift: Don't handle shift counts > BITS_PER_MP_DIGIT.
! 3021: * mpz_div_2exp: Don't call _mpn_rshift with cnt > BITS_PER_MP_DIGIT.
! 3022: * gcd, mpz_gcd: Likewise.
! 3023:
! 3024: * gcd, mpz_gcd: Handle common 2 factors correctly.
! 3025:
! 3026: Mon May 6 20:22:59 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 3027:
! 3028: * gmp-impl.h (MPN_COPY): Inline a loop instead of calling memcpy.
! 3029:
! 3030: * gmp-impl.h, mpz_get_str, rpow: Swap DST and SRC in TMPCOPY* macros.
! 3031:
! 3032: Sun May 5 15:16:23 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 3033:
! 3034: * mpz_div: Remove test for QUOT == 0.
! 3035:
! 3036: Sun Apr 28 20:21:04 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 3037:
! 3038: * pow: Don't make MOD normalization in place, as it's a bad idea to
! 3039: write on an input parameter.
! 3040: * pow: Reduce BASE if it's > MOD.
! 3041: * pow, mult, mpz_mul: Simplify realloc code.
! 3042:
! 3043: Sat Apr 27 21:03:11 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 3044:
! 3045: * Install multplication using Karatsuba's algorithm as default.
! 3046:
! 3047: Fri Apr 26 01:03:57 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 3048:
! 3049: * msqrt: Store in ROOT even for U==0, to make msqrt(0) defined.
! 3050:
! 3051: * mpz_div_2exp.c, mpz_mul_2exp.c: New files for shifting right and
! 3052: left, respectively.
! 3053: * gmp.h: Add definitions for mpz_div_2exp and mpz_mul_2exp.
! 3054:
! 3055: * mlshift.c, mrshift.c: Remove.
! 3056:
! 3057: Wed Apr 24 21:39:22 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 3058:
! 3059: * mpn_mul: Check only for m2_size == 0 in function header.
! 3060:
! 3061: Mon Apr 22 01:31:57 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 3062:
! 3063: * karatsuba.c: New file for Karatsuba's multplication algorithm.
! 3064:
! 3065: * mpz_random, mpz_init, mpz_mod_2exp: New files and functions.
! 3066:
! 3067: * mpn_cmp: Fix header comment.
! 3068:
! 3069: Sun Apr 21 00:10:44 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 3070:
! 3071: * pow: Switch off initial base reduction.
! 3072:
! 3073: Sat Apr 20 22:06:05 1991 Torbjorn Granlund (tege@echnaton.sics.se)
! 3074:
! 3075: * mpz_get_str: Don't generate initial zeros for initial word.
! 3076: Used to write outside of allocated storage.
! 3077:
! 3078: Mon Apr 15 15:48:08 1991 Torbjorn Granlund (tege@zevs.sics.se)
! 3079:
! 3080: * _mpz_realloc: Make it accept size in number of mp_digits.
! 3081: * Most functions: Use new _mpz_realloc definition.
! 3082:
! 3083: * mpz_set_str: Remove calls _mp_free_func.
! 3084:
! 3085: * Most functions: Rename mpn_* to _mpn_*. Rename mpz_realloc to
! 3086: _mpz_realloc.
! 3087: * mpn_lshift: Redefine _mpn_lshift to only handle small shifts.
! 3088: * mdiv, mpz_div, ...: Changes for new definition of _mpn_lshift.
! 3089: * msqrt, mp*_*shift*: Define cnt as unsigned (for speed).
! 3090:
! 3091: Sat Apr 6 14:05:16 1991 Torbjorn Granlund (tege@musta.nada.kth.se)
! 3092:
! 3093: * mpn_mul: Multiply by the first digit in M2 in a special
! 3094: loop instead of zeroing the product area.
! 3095:
! 3096: * mpz_abs.c: New file.
! 3097:
! 3098: * sdiv: Implement as mpz_div_si for speed.
! 3099:
! 3100: * mpn_add: Make it work for second source operand == 0.
! 3101:
! 3102: * msub: Negate the correct operand, i.e. V before swapping, not
! 3103: the smaller of U and V!
! 3104: * madd, msub: Update abs_* when swapping operands, and not after
! 3105: (optimization).
! 3106:
! 3107: Fri Apr 5 00:19:36 1991 Torbjorn Granlund (tege@black.nada.kth.se)
! 3108:
! 3109: * mpn_sub: Make it work for subtrahend == 0.
! 3110:
! 3111: * madd, msub: Rewrite to minimize mpn_cmp calls. Ensure
! 3112: mpn_cmp is called with positive sizes (used to be called
! 3113: incorrectly with negative sizes sometimes).
! 3114:
! 3115: * msqrt: Make it divide by zero if fed with a negative number.
! 3116: * Remove if statement at end of precision calculation that was
! 3117: never true.
! 3118:
! 3119: * itom, mp.h: The argument is of type short, not int.
! 3120:
! 3121: * mpz_realloc, gmp.h: Make mpz_realloc return the new digit pointer.
! 3122:
! 3123: * mpz_get_str.c, mpz_set_str.c, mpz_new_str.c: Don't include mp.h.
! 3124:
! 3125: * Add COPYING to distribution.
! 3126:
! 3127: * mpz_div_ui.c, mpz_div_si.c, mpz_new_ui.c, mpz_new_si.c: New files.
! 3128:
! 3129: Fri Mar 15 00:26:29 1991 Torbjorn Granlund (tege@musta.nada.kth.se)
! 3130:
! 3131: * Add Copyleft headers to all files.
! 3132:
! 3133: * mpn_mul.c, mpn_div.c: Add header comments.
! 3134: * mult.c, mdiv.c: Update header comments.
! 3135:
! 3136: * mpq_add.c, mpq_sub.c, mpq_div.c, mpq_new.c, mpq_new_ui.c,
! 3137: mpq_free.c: New files for rational arithmetics.
! 3138:
! 3139: * mpn_lshift.c: Avoid writing the most significant word if it is 0.
! 3140:
! 3141: * mdiv.c: Call mpn_lshift for the normalization.
! 3142: * mdiv.c: Remove #ifdefs.
! 3143:
! 3144: * Makefile: Add ChangeLog to DISTFILES.
! 3145:
! 3146: * mpn_div.c: Make the add_back code work (by removing abort()).
! 3147: * mpn_div.c: Make it return if the quotient is size as compared
! 3148: with the difference NSIZE - DSIZE. If the stored quotient is
! 3149: larger than that, return 1, otherwise 0.
! 3150: * gmp.h: Fix mpn_div declaration.
! 3151: * mdiv.c: Adopt call to mpn_div.
! 3152: * mpz_div.c: New file (developed from mdiv.c).
! 3153:
! 3154: * README: Update routine names.
! 3155:
! 3156: Thu Mar 14 18:45:28 1991 Torbjorn Granlund (tege@musta.nada.kth.se)
! 3157:
! 3158: * mpq_mul.c: New file for rational multplication.
! 3159:
! 3160: * gmp.h: Add definitions for rational arithmetics.
! 3161:
! 3162: * mpn_div: Kludge the case where the high numerator digit > the
! 3163: high denominator digit. (This code is going to be optimized later.)
! 3164:
! 3165: * New files: gmp.h for GNU specific functions, gmp-common.h for
! 3166: definitions common for mp.h and gmp.h.
! 3167:
! 3168: * Ensure mp.h just defines what BSD mp.h defines.
! 3169:
! 3170: * pow.c: Fix typo for bp allocation.
! 3171:
! 3172: * Rename natural number functions to mpn_*, integer functions to
! 3173: mpz_*.
! 3174:
! 3175: Tue Mar 5 18:47:04 1991 Torbjorn Granlund (tege@musta.nada.kth.se)
! 3176:
! 3177: * mdiv.c (_mp_divide, case 2): Change test for estimate of Q from
! 3178: "n0 >= r" to "n0 > r".
! 3179:
! 3180: * msqrt: Tune the increasing precision scheme, to do fewer steps.
! 3181:
! 3182: Tue Mar 3 18:50:10 1991 Torbjorn Granlund (tege@musta.nada.kth.se)
! 3183:
! 3184: * msqrt: Use the low level routines. Use low precision in the
! 3185: beginning, and increase the precision as the result converges.
! 3186: (This optimization gave a 6-fold speedup.)
! 3187:
! 3188: Local Variables:
! 3189: mode: indented-text
! 3190: left-margin: 8
! 3191: fill-column: 75
! 3192: version-control: never
! 3193: End:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>