Annotation of OpenXM/src/kan96xx/gmp-2.0.2-ssh-2/ChangeLog, Revision 1.1.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>