1 2006-08-06 Richard B. Kreckel <kreckel@ginac.de>
3 * Version 1.1.12 released.
5 2006-08-06 Richard B. Kreckel <kreckel@ginac.de>
7 * configure.ac: Re-enable shared lib on non-MinGW platforms, sigh.
9 2006-08-06 Richard B. Kreckel <kreckel@ginac.de>
11 * Apply patch for autoconf-2.60:
12 2006-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13 * Makefile.in (datarootdir): New variable.
14 * src/Makefile.in (datarootdir): New variable.
15 * doc/Makefile.in (datarootdir): New variable.
17 2006-08-04 Sheplyakov Alexei <varg@theor.jinr.ru>
19 * configure.ac: Disable shared lib on MinGW.
21 2006-08-03 Sheplyakov Alexei <varg@theor.jinr.ru>
23 * m4/param.m4: Add support for MinGW.
24 * src/base/random/cl_random_from.cc: Fix for last patch.
26 2006-07-23 Sheplyakov Alexei <varg@theor.jinr.ru>
28 * src/base/random/cl_random_from.cc: Add support for MinGW.
30 2006-06-14 Richard B. Kreckel <kreckel@ginac.de>
32 * src/float/output/cl_F_dprint.cc (decode_float_decimal): Fix rare
33 assertion for quite large numbers (cl_LF binary exponent >~ 4.8E8).
35 2006-05-20 Bruno Haible <bruno@clisp.org>
37 * src/base/random/cl_random_from.cc: Treat FreeBSD, NetBSD like other
40 2006-05-07 Richard B. Kreckel <kreckel@ginac.de>
42 * include/cln/modules.h (CL_JUMP_TO): Fix for Intel Mac.
44 2006-04-22 Richard B. Kreckel <kreckel@ginac.de>
46 * Apply patch for x86_64 from mainline:
47 2005-12-02 Bruno Haible <bruno@clisp.org>
48 * src/base/cl_low.h (mulu64) [x86_64]: Change asm restriction,
49 since mulq doesn't accept immediate arguments.
51 2005-12-17 Richard B. Kreckel <kreckel@ginac.de>
53 * Branched cln_1-1. This is the maintenance branch. It is for
54 low-impact patches. The main branch will eventually become CLN 1.2.0.
56 2005-12-15 Dmitry V. Kustov <kustov@telex221.ru>
58 * src/base/random/cl_random_from.cc: Add support for OpenBSD.
60 2005-11-23 Richard B. Kreckel <kreckel@ginac.de>
62 * Version 1.1.11 released.
64 2005-11-20 Richard B. Kreckel <kreckel@ginac.de>
66 * src/integer/conv/cl_I_cached_power.h: New file.
67 * src/integer/conv/cl_I_cached_power.cc: New file.
68 Contains power_table and cached_power_table previously...
69 * src/integer/conv/cl_I_to_digits.cc: ...here.
70 * src/integer/conv/cl_I_from_digits.cc: Use cached powers.
72 2005-11-02 Richard B. Kreckel <kreckel@ginac.de>
74 * src/integer/conv/cl_I_from_digits.cc: Made input of all numbers in
75 non-power-of-two base much faster.
76 * tests/test_I_io.cc: New file...
77 * tests/Makefile.in, tests/test_I.cc: ...used here.
79 2005-10-22 Richard B. Kreckel <kreckel@ginac.de>
81 * Version 1.1.10 released.
83 2005-10-22 Richard B. Kreckel <kreckel@ginac.de>
85 * src/Makefile.in: Accept CPPFLAGS from environment.
86 * examples/Makefile.in: Likewise.
87 * benchmarks/Makefile.in: Likewise.
88 * tests/Makefile.in: Likewise.
90 2005-08-30 Richard B. Kreckel <kreckel@ginac.de>
92 * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
93 duplication of basic blocks on m68k.
95 2005-08-30 Richard B. Kreckel <kreckel@ginac.de>
97 * include/cln/modules.h (CL_JUMP_TO): Fix mips* brokenness.
99 2005-08-27 Bruno Haible <bruno@clisp.org>
101 Split aclocal.m4 into individual files.
102 * m4/alloca.m4, m4/as-underscore.m4, m4/c++-constructors.m4:
103 * m4/fpu_control.m4, m4/general.m4, m4/gettimeofday.m4:
104 * m4/longdouble.m4, m4/longlong.m4, m4/param.m4, m4/perror.m4:
105 * m4/proto.m4, m4/rusage.m4, m4/times.m4:
106 New files, extracted from autoconf/aclocal.m4.
107 * autoconf/aclocal.m4: m4_include them.
108 * Makefile.devel (AUTOCONF_MACROS): New variable.
109 (configure): Depend on it.
110 (CLISP_M4DIR): Remove variable.
111 (autoconf/aclocal.m4): Remove rule.
113 2005-08-27 Bruno Haible <bruno@clisp.org>
115 * src/integer/bitwise/cl_I_ash_I.cc (ash): Avoid shifting a 32-bit
116 zero value by more than 31 bits.
118 2005-08-27 Bruno Haible <bruno@clisp.org>
120 Make the long-float overflow check work on 64-bit platforms.
121 * src/float/lfloat/cl_LF.h (LF_exp_mid, LF_exp_high): Define as
122 'unsigned int', not 'unsigned long'.
124 2005-08-27 Bruno Haible <bruno@clisp.org>
126 * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
127 duplication of basic blocks by g++ 4.0.
128 See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23345>.
130 2005-08-27 Bruno Haible <bruno@clisp.org>
132 Make it possible to cross-compile CLN.
133 * m4/intparam.m4: New file.
134 * m4/floatparam.m4: New file.
135 * autoconf/aclocal.m4: Include both.
136 (CL_MACHINE): Add an additional CROSS_MACRO parameter.
137 * configure.ac (CL_MACHINE): When cross-compiling, use
138 CL_INTPARAM_CROSS and CL_FLOATPARAM_CROSS.
140 2005-08-27 Bruno Haible <bruno@clisp.org>
142 Define HAVE_LONGLONG and HAVE_LONGDOUBLE when cross-compiling.
143 * autoconf/aclocal.m4 (CL_LONGLONG, CL_LONGDOUBLE): When cross-
144 compiling, use the test code from gnulib.
146 2005-08-27 Bruno Haible <bruno@clisp.org>
148 * autoconf/aclocal.m4 (CL_RUSAGE): Fix error when cross-compiling.
150 2005-08-16 Richard B. Kreckel <kreckel@ginac.de>
152 The patch of 2005-05-01 made it impossible to test the type of a cl_UP
153 by comparing with &cl_class_univpoly_ring. We need an alternative:
154 * include/cln/object.h (cl_class_flags_modint_ring): New #define...
155 * src/polynomial/elem/cl_UP.cc (cl_class_univpoly_ring): ...used here.
156 * src/polynomial/elem/cl_UP_GF2.h: Likewise.
157 * src/polynomial/elem/cl_UP_MI.h: Likewise.
158 * src/polynomial/elem/cl_UP_gen.h: Likewise.
159 * src/polynomial/elem/cl_UP_number.h: Likewise.
161 2005-08-15 Richard B. Kreckel <kreckel@ginac.de>
163 * m4/cc.m4 (CL_AS_NOEXECSTACK): New macro...
164 * configure.ac: ...used here for setting ASMFLAGS...
165 * src/Makefile.in: ...which are used here.
167 2005-08-02 Andreas Jochens <aj@andaco.de>
169 * include/cln/config.h.in: Add support for PowerPC 64 CPU.
170 * include/cln/modules.h: Likewise.
171 * include/cln/object.h: Likewise.
172 * include/cln/types.h: Likewise.
174 2005-07-24 Richard B. Kreckel <kreckel@ginac.de>
176 Make out of the box build on x86_64 system with complete 32 bit
178 * include/cln/config.h.in: Don't #define __x86_64__ when
180 * src/base/digitseq/cl_asm_x86_64_.cc: New file.
181 * doc/cln.tex: Revert workaround description introduced 2005-05-02.
183 2005-06-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
185 * Makefile.in: Don't enter nonexisting directories.
187 2005-05-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
189 Speed up the linking step
190 * src/Makefile.in: Use -objectlist for linking libcln.la.
192 2005-05-15 Richard B. Kreckel <kreckel@ginac.de>
194 * autoconf/ltmain.sh: Upgrade to libtool-1.5.16.
195 * m4/libtool.m4: Upgrade to libtool-1.5.16 (without Comeau patch).
197 2005-05-02 Richard B. Kreckel <kreckel@ginac.de>
199 * doc/cln.tex: Document what to do on a x86_64 machine with 32-bit
202 2005-05-01 Richard B. Kreckel <kreckel@ginac.de>
204 Fix crashes in find_univpoly_ring and related functions
205 * include/cln/modinteger.h: Remove vptr from cl_heap_modint_ring;
206 remove declaration of cl_class cl_class_modint_ring.
207 * include/cln/univpoly.h: Remove vptr from cl_heap_univpoly_ring;
208 remove declaration of cl_class_univpoly_ring.
209 * include/cln/object.h: cl_class_flags_modint_ring: New #define...
210 * src/modinteger/cl_MI.cc: ...used in cl_class_modint_ring.
211 * src/modinteger/cl_MI_fix16.h: No vptr, but static dtor and type flag.
212 * src/modinteger/cl_MI_fix29.h: Likewise.
213 * src/modinteger/cl_MI_fix32.h: Likewise.
214 * src/modinteger/cl_MI_int32.h: Likewise.
215 * src/modinteger/cl_MI_montgom.h: Likewise.
216 * src/modinteger/cl_MI_pow2: Likewise.
217 * src/modinteger/cl_MI_pow2m1.h: Likewise.
218 * src/modinteger/cl_MI_pow2p1.h: Likewise.
219 * src/modinteger/cl_MI_std.h: Likewise.
220 * src/polynomial/elem/cl_UP.cc (cl_make_univpoly_ring): Compare with
221 cl_class_flags_modint_ring, not with cl_class_modint_ring.
222 * src/polynomial/elem/cl_UP_GF2.h (cl_class_num_univpoly_ring): New.
223 * src/polynomial/elem/cl_UP_MI.h (cl_class_modint_univpoly_ring): New.
224 * src/polynomial/elem/cl_UP_gen.h (cl_class_gen_univpoly_ring): New.
225 * src/polynomial/elem/cl_UP_number.h (cl_class_num_univpoly_ring): New.
226 Reported by Ralf Goertz <R_Goertz@web.de>.
228 2005-04-29 Richard B. Kreckel <kreckel@ginac.de>
229 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
231 * m4/cc.m4: Emit a warning if g++ is used and optimization turned off.
233 2005-04-24 Richard B. Kreckel <kreckel@ginac.de>
235 Make GCC compiler flags default to -O
236 * m4/cc.m4: New file...
237 * configure.ac: ...used here.
238 * autoconf/aclocal.m4: Regenerate.
240 2005-04-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
242 * include/cln/string.h: Declare cl_string.
244 2005-03-17 Richard B. Kreckel <kreckel@ginac.de>
246 * autoconf/ltmain.sh: Upgrade to libtool-1.5.14.
247 * m4/libtool.m4: Upgrade to libtool-1.5.14 with Comeau patch.
248 * autoconf/aclocal.m4: Regenerate.
250 2005-03-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
252 * src/Makefile.in: Use $CXX instead of $CC when linking.
254 2005-02-27 Richard B. Kreckel <kreckel@ginac.de>
256 * examples/perfnum.cc: update to presumed 42st Mersenne prime.
258 2004-11-28 Richard B. Kreckel <kreckel@ginac.de>
260 Disambiguate binary operators of CLN types with float/double
261 * include/cln/dfloat.h: Add binary operator overloads for arguments of
263 * include/cln/ffloat.h: Likewise, for arguments of type float.
264 * include/cln/float.h: Likewise, both for arguments of types double and
266 * include/cln/real.h: Likewise.
267 Reported by Isidro Cachadiña Gutiérrez <icacha@unex.es>.
269 2004-11-03 Richard B. Kreckel <kreckel@ginac.de>
271 * Version 1.1.9 released.
273 2004-10-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
275 * src/Makefile.in: Let config.status set LDFLAGS.
277 2004-10-27 Peter Breitenlohner <peb@mppmu.mpg.de>
279 * cln.pc.in: Fix typo.
280 * Makefile.in (INSTALL_SCRIPT): Added, to be used for scripts like
281 cln-config. Allows us to do special things to binaries, like
282 installing them with install -s.
283 * doc/Makefile.in: add/remove the cln.info from the installed
284 $(infodir)/dir unless this is debian install-info (code copied from
285 what GNU automake would produce).
287 2004-10-26 Richard B. Kreckel <kreckel@ginac.de>
289 * src/integer/input/cl_I_read_stream.cc (read_integer): Fix a bug
290 that caused radix specifiers to not work when reading from a stream.
291 * src/rational/input/cl_RA_read_stream.cc (read_rational): Likewise.
292 * src/real/input/cl_R_read_stream.cc (read_real): Likewise.
293 * src/float/input/cl_F_read_stream.cc (read_float): Likewise.
294 * src/complex/input/cl_N_read_stream.cc (read_complex): Likewise.
296 2004-10-25 Richard B. Kreckel <kreckel@ginac.de>
298 * src/base/cl_low.h: Add mulu64 assembler macro for ia64.
300 2004-10-24 Richard B. Kreckel <kreckel@ginac.de>
302 * src/base/cl_low.h: Add mul and div macros for x86_64.
304 2004-10-23 Richard B. Kreckel <kreckel@ginac.de>
306 * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Fix thinko in
307 new code for base power of two.
309 2004-10-22 Richard B. Kreckel <kreckel@ginac.de>
311 * src/integer/conv/cl_I_to_digits (I_to_digits): Fix an elusive stack
312 overwriting problem. That was the real cause for Debian bug#246319.
313 * src/integer/output/cl_I_print.cc (print_integer): Revert workaround
314 for the bug fixed above.
316 2004-10-20 Richard B. Kreckel <kreckel@ginac.de>
318 * include/cln/types.h: Use 64 bit digits on x86_64 CPU.
320 2004-10-12 Richard B. Kreckel <kreckel@ginac.de>
322 * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Speedup when
323 the base is a power of two.
325 2004-10-05 Richard B. Kreckel <kreckel@ginac.de>
327 * src/integer/conv/cl_I_to_digits.cc (I_to_digits): Fix bug in base 32.
329 2004-09-27 Richard B. Kreckel <kreckel@ginac.de>
331 Support for little-endian Mips, second shot
332 * src/base/digitseq/cl_asm_mipsel_.cc: New file...
333 * src/base/digitseq/cl_asm_cc: ...used here.
334 * src/base/digitseq/cl_asm.h: Include cl_asm_mips.h for any endianness.
335 * include/cln/object.h: Set alignment for mipsel explicitly.
337 2004-09-05 Richard B. Kreckel <kreckel@ginac.de>
339 Support for little-endian Mips
340 * include/cln/config.h.in: Add __mipsel__.
341 * include/cln/modules.h: For Mips, this is endianness-agnostic.
342 * src/base/digitseq/cl_asm_.cc, src/base/digitseq/cl_asm.h:
343 Mask out assembler for little-endian Mips.
345 2004-08-30 Bruno Haible <bruno@clisp.org>
347 * benchmarks/timebench2.sh: Multiply all repeat counts by 100.
348 * benchmarks/timebench2.results: Add recent PowerPC G4 results.
350 2004-08-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
352 * examples/e.cc: remove extra semicolon.
354 2004-08-25 Bruno Haible <bruno@clisp.org>
356 * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
357 * m4/libtool.m4: New file, from libtool-1.5.6 with modifications:
358 2004-08-22 Bruno Haible <bruno@clisp.org>
359 * m4/libtool.m4: Add support for Comeau C++ on Linux.
360 Reported by Prof. Roberto Bagnara <bagnara@cs.unipr.it>.
361 * autoconf/aclocal.m4: Regenerate.
363 2004-08-19 Bruno Haible <bruno@clisp.org>
365 * include/cln/modules.h (CL_GLOBALIZE_JUMP_LABEL, CL_JUMP_TO): When
366 converting a label to a string, use ASM_UNDERSCORE_PREFIX. Needed on
368 Reported by Darren Bane <darren.bane@ul.ie>.
370 2004-07-01 Richard B. Kreckel <kreckel@ginac.de>
372 * Version 1.1.8 released.
374 2004-06-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
376 * src/base/cl_macros.h: alloca(3) has size_t argument type.
378 2004-06-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
380 * include/cln/floatformat.h: Do define a type here.
382 2004-06-27 Richard B. Kreckel <kreckel@ginac.de>
384 * include/cln/modules.h (CL_JUMP_TO): Fix AMD64 brokenness.
386 2004-06-23 Bruno Haible <bruno@clisp.org>
388 * configure.ac: Pretend ftime() is not available. Needed by
391 2004-06-21 Ralf Stephan <ralf@ark.in-berlin.de>
393 * doc/cln.tex: Document jacobi, isprobprime and nextprobprime.
395 2004-06-18 Richard B. Kreckel <kreckel@ginac.de>
397 * rational/transcendental/cl_RA_logp.cc: fix bug where base is
398 reciprocal of an integer.
399 Reported by Niklas Knutsson <nq@altern.org>.
401 2004-06-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
403 * src/complex/ring/cl_C_ring.cc, src/integer/ring/cl_I_ring.cc,
404 src/rational/ring/cl_RA_ring.cc, src/real/ring/cl_R_ring.cc:
405 Make template specializations explicit.
407 2004-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
409 * src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
410 src/integer/input/cl_I_read.cc, src/rational/input/cl_RA_read.cc,
411 src/real/input/cl_R_read.cc: Remove unused labels.
413 2004-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
415 * benchmarks/timebench1.cc, benchmarks/timebench2a.LiDIA.cc,
416 benchmarks/timebench2a.cc, benchmarks/timebench2ap.cc,
417 benchmarks/timebench2b.LiDIA.cc, benchmarks/timebench2b.cc,
418 examples/atan_recip.cc, examples/atanh_recip.cc,
419 examples/contfrac.cc, examples/e.cc, examples/legendre.cc,
420 examples/lucaslehmer.cc, examples/pi.cc, include/cln/GV.h,
421 include/cln/SV.h, include/cln/malloc.h, include/cln/modules.h,
422 include/cln/object.h, include/cln/string.h, src/base/cl_abort.cc,
423 src/base/cl_alloca.h, src/base/cl_malloc.cc,
424 src/base/random/cl_random_from.cc,
425 src/base/string/cl_spushstring_append.cc,
426 src/base/string/cl_spushstring_push.cc,
427 src/base/string/cl_st_debug.cc,
428 src/base/string/input/cl_st_gettoken.cc,
429 src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
430 src/float/output/cl_F_dprint.cc, src/integer/input/cl_I_read.cc,
431 src/rational/input/cl_RA_read.cc,
432 src/real/format-output/cl_fmt_integer.cc,
433 src/real/format-output/cl_fmt_paddedstring.cc,
434 src/real/input/cl_R_read.cc, src/timing/cl_t_current.cc,
435 src/timing/cl_t_current2.cc, tests/exam.cc, tests/tests.cc,
436 tests/timeLFRAmul.cc, tests/timeLFatan-compare.cc,
437 tests/timeLFatan.cc, tests/timeLFatanh-compare.cc,
438 tests/timeLFatanh.cc, tests/timeLFcos-compare.cc, tests/timeLFcos.cc,
439 tests/timeLFcosh.cc, tests/timeLFexp-compare.cc, tests/timeLFexp.cc,
440 tests/timeLFln-compare.cc, tests/timeLFln.cc,
441 tests/timeLFsin-compare.cc, tests/timeLFsin.cc, tests/timeLFsinh.cc,
442 tests/timeLFsqrt.cc, tests/timeMImisc5.cc, tests/timeMIpow2div.cc,
443 tests/timeMIpow2recip.cc, tests/timeRALFdiv.cc, tests/timeRAtoLF.cc,
444 tests/timeUPMImul.cc, tests/timecatalan.cc, tests/timediv.cc,
445 tests/timediv2adic-compare.cc, tests/timediv2adic.cc,
446 tests/timeeuler.cc, tests/timeexp1.cc, tests/timefact.cc,
447 tests/timegcd.cc, tests/timemul-compare.cc, tests/timemul.cc,
448 tests/timepi.cc, tests/timeprint-compare.cc, tests/timeprint.cc,
449 tests/timerecip2adic-compare.cc, tests/timerecip2adic.cc,
450 tests/timesqrt.cc, tests/timesqrtmodp.cc, tests/timesquare.cc,
451 tests/timezeta3.cc: Change all C include headers to ISO style
454 2004-06-10 Richard B. Kreckel <kreckel@ginac.de>
456 * examples/perfnum.cc: update to presumed 41st Mersenne prime.
458 2004-05-02 Richard B. Kreckel <kreckel@ginac.de>
460 * Version 1.1.7 released.
462 2004-05-02 Richard B. Kreckel <kreckel@ginac.de>
464 * examples/pi.cc and examples/pi.1: New files.
465 * examples/Makefile.in: Build the pi executable.
467 2004-05-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
469 * src/Makefile.in: Fix for parallel build: wait for subdir objects to
470 be finished before creating the library.
472 2004-04-30 Richard B. Kreckel <kreckel@ginac.de>
474 * src/integer/output/cl_I_print.cc (print_integer): workaround
475 GCC compiler bug (cf. Debian bug#246319).
477 2004-03-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
479 * m4/gmp.m4 (CL_GMP_CHECK): Do not lose LIBS setting with config.cache
482 2004-03-08 Bruno Haible <bruno@clisp.org>
484 * src/float/lfloat/elem/cl_LF_mul.cc (operator*): Fix the second
486 * src/float/lfloat/algebraic/cl_LF_sqrt.cc (sqrt): Fix a bug with large
487 uexp whereby SQRT of MOST-POSITIVE-LONG-FLOAT was less than 1.
489 2004-03-04 Richard B. Kreckel <kreckel@ginac.de>
491 * Makefile.in (install): Add ${srcdir} for cln.m4.
492 * m4/gmp.m4: quote macro names.
493 Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
495 2004-01-01 Richard B. Kreckel <kreckel@ginac.de>
497 * Version 1.1.6 released.
499 2004-01-01 Richard B. Kreckel <kreckel@ginac.de>
501 * include/cln/univpoly.h, include/cln/univpoly_complex.h,
502 include/cln//univpoly_integer.h, include/cln/univpoly_modint.h,
503 include/cln/univpoly_rational.h, include/cln/univpoly_real.h,
504 src/polynomial/elem/cl_UP_GF2.h, src/polynomial/elem/cl_UP_MI.h,
505 src/polynomial/elem/cl_UP_gen.h, src/polynomial/elem/cl_UP_no_ring.cc,
506 src/polynomial/elem/cl_UP_number.h (ldegree): New function.
507 * doc/cln.tex: Document `ldegree'.
509 2003-12-29 Richard B. Kreckel <kreckel@ginac.de>
511 Rework of autoconfiscation infrastructure
512 * autoconf/config.{guess,sub}: Update to GNU version 2003-10-07.
513 * autoconf/ltmain.sh: Update to GNU version 1.4.3.
514 * autoconf/autoconf: Remove (from now on we assume autoconf is
515 installed properly on the sytem).
516 * autoconf/autoconf.m4: Likewise.
517 * autoconf/autoconf.m4f: Likewise.
518 * autoconf/acgeneral.m4: Likewise.
519 * autoconf/acspecific.m4: Likewise.
520 * autoconf/aclocal.m4: Regenerate.
521 * autoconf/acinclude.m4: Remove (while moving the macros...)
522 * m4/gmp.m4: New file (...to here).
523 * Makefile.devel: Update to new scheme.
524 * configure.ac: Likewise.
525 * include/cln/GV_integer.h: Assume template specializations work.
526 * include/cln/GV_modinteger.h: Likewise.
527 * include/cln/config.h.in: Likewise, and drop HAVE_BOOL.
528 * src/base/cl_base_config.h.in: Drop support for obsolete ftime(3).
529 * src/base/random/cl_random_from.cc: Likewise.
530 * src/timing/cl_base_config.h.in: Likewise.
531 * src/timing/cl_t_current.cc: Likewise.
533 2003-12-27 Richard B. Kreckel <kreckel@ginac.de>
535 * src/polynomial/cl_UP_gen.h (gen_minus): Fix case where first
537 * src/polynomial/cl_UP_MI.h (modint_minus): Likewise.
538 * src/polynomial/cl_UP_number.h (num_minus): Likewise.
539 Reported by Munagala Ramanath <amberarrow@yahoo.com>.
541 2003-12-02 Richard B. Kreckel <kreckel@ginac.de>
543 * examples/perfnum.cc: update to presumed 40th Mersenne prime.
545 2003-11-20 Christian Bauer <cbauer@ginac.de>
547 Added pkg-config support
548 * cln.pc.in: New file.
549 * Makefile.in: Take care of cln.pc.
550 * configure.ac: Likewise.
552 2003-08-06 Richard B. Kreckel <kreckel@ginac.de>
554 * src/numtheory/cl_nt_sqrtmodp.cc: #undef _R.
555 Reported by Andrew Rechnitzer <A.Rechnitzer@ms.unimelb.edu.au>.
557 2003-08-01 Richard Kreckel <kreckel@ginac.de>
559 More dependent base resolution issues
560 * src/base/hash/cl_hash.h (cl_heap_hashtable<T>::iterator()):
561 portable syntactic simplification.
562 * src/base/hash/cl_hashset.h: Preceed inherited members with this->.
563 * src/base/hash/cl_hash1.h: Likewise for member functions.
564 * src/base/hash/cl_hash2.h: Likewise.
565 * src/base/hash/cl_hashuniq.h: Likewise.
566 * src/base/hash/cl_hashuniqweak.h: Likewise.
567 * src/base/hash/cl_hash.h: Revert explicit static member function
568 lookup since that was GCC's fault.
569 * src/base/hash/cl_hash2weak.h: Likewise.
570 * src/base/hash/cl_hashuniqweak.h: Likewise.
572 2003-06-29 Richard Kreckel <kreckel@ginac.de>
574 Dependent base resolution needed for GCC-3.4
575 * include/cln/GV.h: Preceed inherited members with this->.
576 * include/cln/SV.h: Likewise.
577 * include/cln/object.h: Likewise.
578 * src/base/hash/cl_hash1.h: Likewise.
579 * src/base/hash/cl_hash1weak.h: Likewise.
580 * src/base/hash/cl_hash2.h: Likewise.
581 * src/base/hash/cl_hashuniq.h: Likewise.
582 * src/base/hash/cl_hash.h: Make lookup of static member function
584 * src/base/hash/cl_hash2weak.h: Likewise.
585 * src/base/hash/cl_hashuniqweak.h: Likewise.
586 * src/modinteger/cl_MI.cc: Make shell-comment a C-comment. Geez.
588 2003-02-24 Bruno Haible <bruno@clisp.org>
590 * src/base/random/cl_random_from.cc (random_state::random_state): Add
592 * src/modinteger/cl_MI.cc: #undef _R.
593 Reported by Erann Gat <gat@jpl.nasa.gov>.
595 2002-08-03 Joerg Arndt <jj@suse.de>
597 * include/cln/config.h.in: Add support for x86_64 CPU.
598 * include/cln/modules.h: Likewise.
599 * include/cln/types.h: Likewise.
600 * include/cln/object.h: Likewise.
602 2002-06-08 Richard Kreckel <kreckel@ginac.de>
604 * src/base/digitseq/cl_asm.h: ensure intCsize==16 when including
605 m68k Assembler routines.
606 * src/base/digitseq/cl_asm_.cc: Likewise.
608 2002-05-28 Richard Kreckel <kreckel@ginac.de>
610 * Version 1.1.5 released.
612 2002-05-27 Richard Kreckel <kreckel@ginac.de>
614 * include/cln/modules.h (CL_CONCATENATE): New macro.
616 2002-05-10 Richard Kreckel <kreckel@ginac.de>
618 * doc/cln.tex (Building the library): Update recommendations for
619 compiling on Tru64 using g++ 3.0 and 3.1.
620 * README: Update homepage.
622 2002-05-05 Bruno Haible <bruno@clisp.org>
624 * doc/cln.tex (Building the library): Give some recommendations for
627 Force link-time references despite optimizations done by g++ 2.95
629 * include/cln/modules.h (CL_FORCE_LINK): New macro.
631 * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise.
632 * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise.
633 * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise.
634 * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise.
635 * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise.
636 * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy):
638 * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy):
640 * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise.
641 * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise.
642 * include/cln/rational.h (cl_RA_debug_dummy): Likewise.
643 * include/cln/real.h (cl_R_debug_dummy): Likewise.
644 * include/cln/ring.h (cl_ring_debug_dummy): Likewise.
645 * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy):
647 * include/cln/string.h (cl_string_debug_dummy): Likewise.
648 * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise.
649 * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise.
651 Avoid g++ 3.1 warnings.
652 * src/base/cl_offsetof.h (offsetof): Redefine each time.
653 * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after <gmp.h>.
655 Avoid g++ 3.1 warnings.
656 * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename
658 * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef
659 htxentry as a shortcut.
660 * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise.
661 * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise.
662 * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq):
665 2002-03-15 Bruno Haible <bruno@clisp.org>
667 * cln.tex: Document problem with GNU make 3.77.
668 Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
670 2002-02-16 Richard Kreckel <kreckel@ginac.de>
672 * cln.m4: quote macro name.
673 Pointed out by Roberto Bagnara.
675 2002-01-20 Richard Kreckel <kreckel@ginac.de>
677 * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
678 (the old one was broken on Linux/Mips.)
680 2002-01-04 Richard Kreckel <kreckel@ginac.de>
682 * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
683 * Version 1.1.4 released.
685 2002-01-03 Richard Kreckel <kreckel@ginac.de>
687 * autoconf/acinclude.m4: revamp MPN-matcher.
688 * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
689 sync with CLisp from CVS.
690 * autoconf/autoconf: Likewise.
691 * autoconf/autoconf.m4f: Likewise (new file).
692 * configure.ac: Likewise (new file, replaces configure.in).
693 * configure.in: Likewise (deleted, replaced by configure.ac).
694 * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
695 * src/Makefile.in: made VPATH safe for autoconf-2.52.
696 * include/cln/config.h.in: Add __s390__.
698 2001-12-31 Richard Kreckel <kreckel@ginac.de>
700 * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
701 any more since GMP4 has some C++ support in it.
703 2001-12-14 Richard Kreckel <kreckel@ginac.de>
705 * include/cln/modules.h, include/cln/object.h: add support for
707 * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
708 on s390, provided by Gerhard Tonn.
710 2001-11-05 Richard Kreckel <kreckel@ginac.de>
712 * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
713 * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
714 * Version 1.1.3 released.
716 2001-11-04 Bruno Haible <haible@clisp.cons.org>
718 Interoperability with gcc-3.0 -fuse-cxa-atexit.
719 * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
720 global destructors actually exist.
721 * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
722 Don't hack the global destructors if there is no global destructors
725 2001-11-03 Richard Kreckel <kreckel@ginac.de>
727 * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
728 values of x, return square(x) instead of x.
729 * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
731 2001-07-25 Richard Kreckel <kreckel@ginac.de>
733 * Version 1.1.2 released.
735 2001-07-24 Richard Kreckel <kreckel@ginac.de>
737 * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
738 friend of cl_heap_hashtable<htentry>.
740 2001-07-22 Richard Kreckel <kreckel@ginac.de>
742 * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
743 _FPU_IEEE is really defined.
744 * include/cln/modules.h: change assembler labels from `label' to
745 `label:' on hppa, needed by Linux (see comment).
746 * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
747 * Makefile.devel: adjusted.
748 * autoconf/aclocal.m4: regenerate.
749 * src/base/low/cl_low_mul.cc: moved POD variables that are declared
750 extern "C" elsewhere out of the namespace.
751 * src/base/low/cl_low_div.cc: Likewise.
753 2001-06-08 Bruno Haible <haible@clisp.cons.org>
755 * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
756 * autoconf/aclocal.m4: Upgrade to libtool-1.4.
757 * autoconf/ltmain.sh: Likewise.
758 * autoconf/ltconfig: Remove file.
759 * autoconf/install-sh: New file.
760 * configure.in: Add AC_CONFIG_AUX_DIR call.
762 2001-06-05 Richard Kreckel <kreckel@ginac.de>
764 * tests/tests.cc: resolve namespace ambiguity about strcmp().
766 2001-05-31 Richard Kreckel <kreckel@ginac.de>
768 * Version 1.1.1 released.
770 2001-05-28 Richard Kreckel <kreckel@ginac.de>
772 * cln/cln.tex: documented problems with shared library on Sparc
773 using gcc older than 2.95.3.
774 * configure.in: Fixed typos in versioning docu.
776 2001-05-25 Bruno Haible <haible@clisp.cons.org>
778 * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
779 hexadecimal constants.
781 2001-05-25 Richard Kreckel <kreckel@ginac.de>
783 * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
784 * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
785 * Removed LiDIA interface since that is now outdated (namespace cln)
786 and maintained elsewhere.
787 * Adjusted dates and final touches for 1.1.1.
789 2001-05-19 Richard Kreckel <kreckel@ginac.de>
791 * INSTALL: Update toolchain info: no egcs, some more platforms.
792 * doc/cln.tex: Likewise.
794 2001-05-18 Richard Kreckel <kreckel@ginac.de>
796 * src/base/cl_low.h: prepended variables declared inside macros
797 with underscore. Fixes equal_hashcode() on various platforms.
799 2001-04-25 Richard Kreckel <kreckel@ginac.de>
801 * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
802 this definition becomes actually useful. This is needed for
803 compilation on Arm until somebody fixes the assembler files for Arm.
804 * src/base/digitseq/cl_asm.h: Likewise.
805 * src/base/digitseq/cl_asm_.cc: Likewise.
806 * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
807 one can say `make CPPFLAGS=-DFOOBAR'.
809 2001-03-26 Arvid Norberg <c99ang@cs.umu.se>
811 * src/base/random/cl_random_from.cc: ported to beos.
813 2001-03-05 Richard Kreckel <kreckel@ginac.de>
815 * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
817 2001-01-28 Richard Kreckel <kreckel@ginac.de>
819 * include/cln/number.h (cl_as_N): Remove bogus comment.
821 2001-01-22 Richard Kreckel <kreckel@ginac.de>
823 * configure.in: Make build in separate builddir possible (again).
825 2001-01-22 Richard Kreckel <kreckel@ginac.de>
827 * include/cln/*.h: Change signatures of all classes' methods
828 cln::cl_foo::operator new(size_t, cl_foo*) to
829 cln::cl_foo::operator new(size_t, void*) so one can declare
830 std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
831 certain STL implementations (like libstdc++-v3).
833 2000-12-14 Richard Kreckel <kreckel@ginac.de>
835 * Version 1.1 released.
837 2000-12-13 Richard Kreckel <kreckel@ginac.de>
839 * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
841 2000-12-05 Richard Kreckel <kreckel@ginac.de>
843 * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
844 * include/cln/version.h.in, src/base/verion.cc: New files.
845 * configure.in: Generate include/cln/version.h.
846 * cln.m4: Rewrote it. Check result of cln-config without compiling.
847 Do cross-check library version and header version information.
849 2000-12-02 Christian Bauer <cbauer@ginac.de>
851 * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
852 * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
855 2000-11-24 Richard Kreckel <kreckel@ginac.de>
857 * */*: Removed problematic stdin, stdout and stderr definitions.
858 Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
860 2000-11-20 Bruno Haible
862 * cln-config.1: change title.
864 2000-11-18 Richard Kreckel <kreckel@ginac.de>
867 * doc/cln.tex: Document package tools cln-config and cln.m4.
868 * Makefile.in: Care about cln.m4.
870 2000-11-17 Richard Kreckel <kreckel@ginac.de>
872 * cln-config.1: added manpage, as required by a couple of distros.
873 * Makefile.in, doc/Makefile.in: target install depends on installdirs.
875 2000-11-16 Richard Kreckel <kreckel@ginac.de>
877 * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
878 * configure.in: ...used here.
879 * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
880 * include/cln/types.h: ...used here.
881 * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
883 2000-11-13 Richard Kreckel <kreckel@ginac.de>
885 * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
886 in order to guard against an accidented configuration.
887 * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of
888 struct power_table_entry initialized as ULL instead of as UL, if
889 intDsize==64 (caused misprinting on MIPS w/ GMP).
890 * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if
892 * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
893 * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival
894 generation of Bignum for intDsize==64 and a notreached-check at end.
895 * autoconf/config.guess, autoconf/config.sub: updated from FSF.
896 * include/cln/config.h.in: Prepared support for IA64.
897 * include/cln/types.h: Likewise.
898 * include/cln/object.h: Likewise.
899 * include/cln/modules.h: Likewise.
900 * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's
901 compiler claims __GNUC_MINOR__==9).
903 2000-11-03 Richard Kreckel <kreckel@ginac.de>
905 * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
906 HAVE_DD to HAVE_FAST_LONGLONG.
907 * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
908 * src/base/cl_low.h: actually no need to include "cln/types.h" here.
909 * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
910 * src/base/random/cl_UL_random.cc (random32): a is always ULL.
912 2000-11-01 Richard Kreckel <kreckel@ginac.de>
914 * include/cln/object.h (cl_combine): define additional signatures, if
915 HAVE_LONGLONG is defined, in order to keep the compiler happy.
916 * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
917 * src/base/cl_macros.h (bit): ...for this macro...
918 * src/base/cl_macros.h (minus_bit): ...and this one.
919 * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
920 * src/base/cl_low.h (logcount_64): ...for this macro.
921 * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
922 * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
923 that turned up when intDsize==32 and cl_word_size==64.
924 * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
925 to uint64 that turned up when intDsize==32 and cl_word_size==64.
927 2000-10-29 Richard Kreckel <kreckel@ginac.de>
929 * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
930 #undef stderr, if it's defined so cln::stderr isn't confused.
931 * src/base/input/cl_read_globals.cc: stdin should not be extern.
933 2000-09-05 Richard Kreckel <kreckel@ginac.de>
935 * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
936 to the appropiate method instead of prefixing `as_'.
937 * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
938 * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
939 * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
940 * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
941 * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
942 * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
943 * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
944 * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
945 * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
947 2000-09-05 Richard Kreckel <kreckel@ginac.de>
949 * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
952 2000-08-30 Richard Kreckel <kreckel@ginac.de>
954 * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
955 Rearranged for a clearer distinction between macros and remaining
956 identifiers, so Cint can parse it smoothly.
958 2000-08-29 Richard Kreckel <kreckel@ginac.de>
960 * include/cln/number.h, the(const cl_number& x): New template
963 2000-08-29 Richard Kreckel <kreckel@ginac.de>
965 * */*: Pushed CLN into a namespace `cln'. While doing so, the
966 following identifiers got their poor-man's namespace (i.e. the
967 prefix `cl_') stripped off:
968 cl_catalanconst() -> catalanconst()
969 cl_compare() -> compare()
970 cl_cos_sin() -> cos_sin()
971 cl_cos_sin_t -> cos_sin_t
972 cl_cosh_sinh() -> cosh_sinh()
973 cl_cosh_sinh_t -> cosh_sinh_t
974 cl_decoded_dfloat -> decoded_dfloat
975 cl_decoded_ffloat -> decoded_ffloat
976 cl_decoded_float -> decoded_float
977 cl_decoded_lfloat -> decoded_lfloat
978 cl_decoded_sfloat -> decoded_sfloat
979 cl_default_float_format -> default_float_format
980 cl_default_print_flags -> default_print_flags
981 cl_default_random_state -> default_random_state
982 cl_double_approx() -> double_approx()
983 cl_equal() -> equal()
984 cl_equal_hashcode() -> equal_hashcode()
985 cl_eulerconst() -> eulerconst()
986 cl_find_modint_ring() -> find_modint_ring()
987 cl_find_univpoly_ring() -> find_univ_poly_ring()
988 cl_float_approx() -> float_approx
989 cl_float_format() -> float_format()
990 cl_float_format_t -> float_format_t
991 cl_free_hook() -> free_hook()
992 cl_hermite() -> hermite()
993 cl_laguerre() -> laguerre()
994 cl_legendre() -> legandre()
995 cl_malloc_hook() -> malloc_hook()
997 cl_tschebychev() -> tschebychev()
999 NB: For functions these changes includes all signatures.
1000 * include/*: moved to include/cln/*, stripped `cl_' off filenames.
1001 * cln-config.in: new file.
1003 2000-08-26 Bruno Haible <haible@clisp.cons.org>
1005 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
1008 2000-08-18 Bruno Haible <haible@clisp.cons.org>
1010 * include/cl_univpoly_modint.h: Fix typo.
1012 2000-07-13 Bruno Haible <haible@clisp.cons.org>
1014 * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
1015 used as precision marker for floats.
1016 Reported by Keith Briggs (in 1998) and Thomas Roessler.
1017 * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
1018 * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
1019 * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
1020 * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
1022 2000-06-22 Bruno Haible <haible@clisp.cons.org>
1024 * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
1025 * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
1027 (cl_word_size): New macro.
1028 * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
1031 2000-05-31 Bruno Haible <haible@clisp.cons.org>
1033 * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
1034 From a sample that fails with gcc-2.95.2 on Sparc.
1035 * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
1037 2000-05-30 Richard Kreckel <kreckel@ginac.de>
1039 * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
1041 * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
1042 CL_VERSION_PATCHLEVEL): New definitions.
1043 * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
1044 autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
1045 * src/Makefile.in, configure.in: release-variables renamed from
1047 * configure.in: default to build both shared and static library
1048 (i.e. default to the most common behaviour).
1050 2000-05-29 Richard Kreckel <kreckel@ginac.de>
1052 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
1053 environment around the patch of 2000-05-23.
1055 2000-05-29 Bruno Haible <haible@clisp.cons.org>
1057 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
1058 Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
1060 2000-05-27 Richard Kreckel <kreckel@ginac.de>
1062 * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
1063 src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
1065 2000-05-24 Richard Kreckel <kreckel@ginac.de>
1067 * autoconf/config.*: Updated to new version from FSF
1068 (the new libtool wants this).
1069 * src/Makefile.in: added $(LDFLAGS) to link step.
1070 * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted
1073 2000-05-23 Bruno Haible <haible@clisp.cons.org>
1075 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
1076 host_vendor, host_os correctly if $host has more than two hyphens.
1078 2000-05-19 Richard Kreckel <kreckel@ginac.de>
1080 * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
1081 better match present-day CPUs whenever GMP3 is used.
1082 * src/base/digitseq/cl_DS_div.cc: dto.
1083 * src/TUNING: Added comment about order of tuning.
1084 * configure, configure.in: Safer GMP3-detection.
1085 * INSTALL.generic: Clarified behaviour of --with-gmp.
1086 * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
1088 2000-05-04 Richard Kreckel <kreckel@ginac.de>
1090 * gmp/: removed completely. From now on we are going to link
1091 externally against libgmp3.0 or above!
1092 * configure, configure.in, Makefile.in, */Makeflags: removed support
1093 of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
1094 setting $CPPFLAGS instead.
1095 * Makefile.in: Added libtool inter-library dependency for -lgmp and
1096 conforming interface versioning (-version-info).
1097 * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
1100 2000-02-22 Bruno Haible <haible@clisp.cons.org>
1102 * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
1103 parameter passing was changed for the MIPS n32 ABI.
1105 2000-01-24 Richard Kreckel <kreckel@ginac.de>
1107 * gmp/*: Replaced the complete mpn sources with the ones from
1108 Debian since they are maintained while the ones from FSF
1109 aren't and there were problems on some architectures, PowerPC
1110 in particular. See the file gmp/README.CLN. This way the
1111 hard links in this directory have vanished, they were causing
1112 trouble for people working in AFS. This became necessary for
1113 Debian, because there it woudn't compile on PPC.
1115 2000-01-13 Richard Kreckel <kreckel@ginac.de>
1117 * Version 1.0.3 released.
1119 2000-01-13 Richard Kreckel <kreckel@ginac.de>
1121 * src/base/cl_macros.h (nonreturning_function): For egcs and newer
1122 use __attribute__ ((__noreturn__)) instead of the __volatile__
1124 (nonreturning): Remove macro.
1125 * include/*: Minor fixes to stop -ansi -pedantic from complaining.
1126 * include/cl_integer.h: (doublefactorial): New declaration.
1127 * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
1129 1999-12-18 Bruno Haible <haible@clisp.cons.org>
1131 * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
1133 * autoconf/ltconfig: Improve support for recent FreeBSD 3.
1134 * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
1135 'const T', to match definition in src/vector/cl_GV_number.cc.
1136 Reported by Duncan Simpson <dps@io.stargate.co.uk>.
1137 * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
1138 yield return code 1.
1140 1999-09-07 Bruno Haible <haible@clisp.cons.org>
1142 * Version 1.0.2 released.
1144 1999-09-06 Bruno Haible <haible@clisp.cons.org>
1146 * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
1147 boolean expression, write alternatives ending with either
1148 "return cl_true;" or "return cl_false;". This way, g++ does a
1149 better job inlining it.
1150 * src/float/cl_F.h (longfloatp): Likewise.
1151 * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
1152 * src/complex/cl_C.h (realp, complexp): Likewise.
1154 1999-09-05 Bruno Haible <haible@clisp.cons.org>
1156 * include/cl_integer.h (cl_equal_hashcode): New declaration.
1157 * include/cl_rational.h (cl_equal_hashcode): New declaration.
1158 * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
1159 * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
1160 * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
1161 * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
1162 * include/cl_float.h (cl_equal_hashcode): New declaration.
1163 * include/cl_real.h (cl_equal_hashcode): New declaration.
1164 * include/cl_complex.h (cl_equal_hashcode): New declaration.
1165 * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
1166 * src/integer/misc/cl_I_eqhashcode.cc: New file.
1167 * src/rational/misc/cl_RA_eqhashcode.cc: New file.
1168 * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
1169 * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
1170 * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
1171 * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
1172 * src/float/misc/cl_F_eqhashcode.cc: New file.
1173 * src/real/misc/cl_R_eqhashcode.cc: New file.
1174 * src/complex/misc/cl_C_eqhashcode.cc: New file.
1175 * doc/cln.tex: Document `cl_equal_hashcode'.
1177 1999-09-05 Bruno Haible <haible@clisp.cons.org>
1179 * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
1180 (cl_number_ring): New class.
1181 (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
1182 (instanceof): New function.
1183 * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
1184 * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
1185 * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
1186 * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
1187 * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
1188 * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
1189 * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
1190 * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
1191 * doc/cln.tex: Document `instanceof'.
1193 1999-09-05 Bruno Haible <haible@clisp.cons.org>
1195 * include/cl_rational.h (numerator, denominator): New declarations.
1196 * src/rational/elem/cl_RA_numerator.cc: New file.
1197 * src/rational/elem/cl_RA_denominator.cc: New file.
1198 * include/cl_integer.h (numerator, denominator): New inline functions.
1199 * doc/cln.tex: Document `numerator' and `denominator'.
1201 1999-09-05 Bruno Haible <haible@clisp.cons.org>
1203 * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
1204 in the integer case.
1205 * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
1207 1999-09-05 Bruno Haible <haible@clisp.cons.org>
1209 * include/cl_config.h.in: Support for sparc64 CPU.
1210 * include/cl_modules.h: Likewise.
1211 * include/cl_types.h: Likewise.
1212 * include/cl_object.h: Likewise.
1213 * include/cl_GV.h: Likewise.
1214 * src/Makefile.in: Likewise.
1215 * src/base/cl_alloca.h: Likewise.
1216 * src/base/cl_macros.h: Likewise.
1217 * src/base/cl_sysdep.h: Likewise.
1218 * src/base/cl_low.h: Likewise.
1219 * src/base/digitseq/cl_asm.h: Likewise.
1220 * src/base/digitseq/cl_asm_.cc: Likewise.
1221 * src/base/digitseq/cl_asm_sparc64.h: New file.
1222 * src/base/digitseq/cl_asm_sparc64_.cc: New file.
1223 * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
1224 * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
1225 * src/polynomial/elem/cl_UP_GF2.h: Likewise.
1226 * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
1228 1999-09-04 Bruno Haible <haible@clisp.cons.org>
1230 * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
1231 Use the `orn' instruction.
1233 1999-08-14 Bruno Haible <haible@clisp.cons.org>
1235 Assume all platforms have <stdlib.h> and clock_t.
1236 * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
1237 * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
1238 * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
1239 * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
1240 * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
1242 1999-07-18 Bruno Haible <haible@clisp.cons.org>
1244 * gmp/config.guess: Link to autoconf/config.guess.
1245 gmp/config.sub: Link to autoconf/config.sub.
1246 Needed for Win32 platforms.
1248 1999-07-17 Bruno Haible <haible@clisp.cons.org>
1250 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
1251 "sparc64" according to the C compiler, not the uname result.
1253 1999-06-17 Bruno Haible <haible@clisp.cons.org>
1255 * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
1256 COUNTER_LOOPS version, fortunately not used yet.
1258 * include/cl_modules.h: Prepare for gcc version 3.
1260 1999-06-12 Bruno Haible <haible@clisp.cons.org>
1262 * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
1263 Change the last call from I_I_to_RT to I_I_to_RA.
1265 1999-06-09 Bruno Haible <haible@clisp.cons.org>
1267 * Version 1.0.1 released.
1269 1999-06-09 Bruno Haible <haible@clisp.cons.org>
1271 * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
1274 1999-06-08 Bruno Haible <haible@clisp.cons.org>
1276 * autoconf/intparam.c (printf_underscored): Change argument type to
1278 * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
1279 (CL_PROVIDE, CL_PROVIDE_END): Use them.
1280 * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
1281 * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
1282 * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
1283 cast a cl_I to void here. Works around a bug in g++-2.95.
1284 * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
1285 * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
1286 dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
1288 * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
1290 * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
1291 * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
1292 DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
1293 * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
1296 1999-06-01 Bruno Haible <haible@clisp.cons.org>
1298 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
1301 1999-05-29 Bruno Haible <haible@clisp.cons.org>
1303 * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
1304 OpenBSD like NetBSD.
1305 * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
1306 * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
1307 OpenBSD like NetBSD, and Linux/ELF like SVR4.
1309 1999-05-16 Bruno Haible <haible@clisp.cons.org>
1311 * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
1312 syntax on AIX systems and new assembler syntax on non-AIX systems.
1314 1999-05-01 Bruno Haible <haible@clisp.cons.org>
1316 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
1317 version from GNU CVS.
1319 1999-04-24 Bruno Haible <haible@clisp.cons.org>
1321 * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
1322 either operand is a positive fixnum, O(1) instead of O(N).
1323 * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
1324 * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
1327 1999-04-14 Bruno Haible <haible@clisp.cons.org>
1329 * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
1330 ctor/dtor needs to be exported.
1331 * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
1332 * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
1334 (CL_GLOBALIZE_LABEL): New macro.
1335 (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
1336 (CL_PROVIDE): Update.
1338 1999-04-12 Bruno Haible <haible@clisp.cons.org>
1340 * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
1341 errors ("unterminated string or character constant").
1342 ($(ASMFILES_LO)): On HPPA, try with various settings of
1343 COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
1345 1999-04-11 Bruno Haible <haible@clisp.cons.org>
1347 * INSTALL: Mention gmp problems on MIPS.
1348 * doc/cln.tex: Likewise.
1350 1999-03-24 Mumit Khan <khan@xraylith.wisc.edu>
1352 * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
1354 * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
1355 (CL_GLOBALIZE_ASM_LABEL): New macro.
1356 (CL_PROVIDE): Use it.
1357 * src/base/random/cl_random_from.cc: Handle WIN32.
1358 * src/timing/cl_t_current.cc: Likewise.
1360 1999-03-15 Bruno Haible <haible@clisp.cons.org>
1362 * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
1363 (main8): Adapt for C++.
1365 1999-03-09 Bruno Haible <haible@clisp.cons.org>
1367 * INSTALL: Mention egcs-1.1 problems on Sparc.
1368 * doc/cln.tex: Likewise.
1370 1999-03-08 Bruno Haible <haible@clisp.cons.org>
1372 * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
1375 1999-02-25 Bruno Haible <haible@clisp.cons.org>
1377 * autoconf/aclocal.m4: In test programs, declare `int main()', not
1380 * lidia-interface/src/interfaces/integers/cln/bigint.c
1381 (bigint_to_string): Fix for negative arguments.
1383 * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
1384 * src/base/cl_alloca.h: Likewise.
1386 * src/base/cl_low.h: Eliminate CLISP style "# " comments.
1387 * src/base/digitseq/cl_asm_arm_.cc,
1388 src/base/digitseq/cl_asm_mips_.cc,
1389 src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
1391 * src/modinteger/cl_MI_pow2.h,
1392 src/modinteger/cl_MI_pow2m1.h,
1393 src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
1395 1999-01-18 Bruno Haible <haible@clisp.cons.org>
1397 * autoconf/acgeneral.m4,
1398 autoconf/acspecific.m4: Upgrade to autoconf-2.13.
1399 * autoconf/config.guess, autoconf/config.sub: Likewise.
1400 * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
1401 a macro. Use ${ac_objext}.
1402 * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
1403 conforming with CL_ALLOCA.
1405 1999-01-12 Bruno Haible <haible@clisp.cons.org>
1407 * Version 1.0 released.