1 2000-08-29 Richard Kreckel <kreckel@ginac.de>
3 * include/cln/number.h, the(const cl_number& x): New template
6 2000-08-26 Bruno Haible <haible@clisp.cons.org>
8 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
11 2000-08-18 Bruno Haible <haible@clisp.cons.org>
13 * include/cl_univpoly_modint.h: Fix typo.
15 2000-07-13 Bruno Haible <haible@clisp.cons.org>
17 * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
18 used as precision marker for floats.
19 Reported by Keith Briggs (in 1998) and Thomas Roessler.
20 * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
21 * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
22 * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
23 * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
25 2000-06-22 Bruno Haible <haible@clisp.cons.org>
27 * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
28 * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
30 (cl_word_size): New macro.
31 * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
34 2000-06-05 Richard Kreckel <kreckel@ginac.de>
36 * doc/*, INSTALL: Mention that both shared and static library are
37 are now build by default.
39 2000-05-31 Bruno Haible <haible@clisp.cons.org>
41 * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
42 From a sample that fails with gcc-2.95.2 on Sparc.
43 * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
45 2000-05-30 Richard Kreckel <kreckel@ginac.de>
47 * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
49 * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
50 CL_VERSION_PATCHLEVEL): New definitions.
51 * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
52 autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
53 * src/Makefile.in, configure.in: release-variables renamed from
55 * configure.in: default to build both shared and static library
56 (i.e. default to the most common behaviour).
58 2000-05-29 Richard Kreckel <kreckel@ginac.de>
60 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
61 environment around the patch of 2000-05-23.
63 2000-05-29 Bruno Haible <haible@clisp.cons.org>
65 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
66 Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
68 2000-05-27 Richard Kreckel <kreckel@ginac.de>
70 * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
71 src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
73 2000-05-24 Richard Kreckel <kreckel@ginac.de>
75 * autoconf/config.*: Updated to new version from FSF
76 (the new libtool wants this).
77 * src/Makefile.in: added $(LDFLAGS) to link step.
78 * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted
81 2000-05-23 Bruno Haible <haible@clisp.cons.org>
83 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
84 host_vendor, host_os correctly if $host has more than two hyphens.
86 2000-05-19 Richard Kreckel <kreckel@ginac.de>
88 * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
89 better match present-day CPUs whenever GMP3 is used.
90 * src/base/digitseq/cl_DS_div.cc: dto.
91 * src/TUNING: Added comment about order of tuning.
92 * configure, configure.in: Safer GMP3-detection.
93 * INSTALL.generic: Clarified behaviour of --with-gmp.
94 * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
96 2000-05-05 Richard Kreckel <kreckel@ginac.de>
98 * doc/cln.tex: Added index entries.
99 * doc/texinfo.tex: Upgraded to newer version 1999-10-01.07.
100 * doc/*: Changes triggered.
102 2000-05-04 Richard Kreckel <kreckel@ginac.de>
104 * gmp/: removed completely. From now on we are going to link
105 externally against libgmp3.0 or above!
106 * configure, configure.in, Makefile.in, */Makeflags: removed support
107 of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
108 setting $CPPFLAGS instead.
109 * Makefile.in: Added libtool inter-library dependency for -lgmp and
110 conforming interface versioning (-version-info).
111 * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
114 2000-02-22 Bruno Haible <haible@clisp.cons.org>
116 * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
117 parameter passing was changed for the MIPS n32 ABI.
119 2000-01-24 Richard Kreckel <kreckel@ginac.de>
121 * gmp/*: Replaced the complete mpn sources with the ones from
122 Debian since they are maintained while the ones from FSF
123 aren't and there were problems on some architectures, PowerPC
124 in particular. See the file gmp/README.CLN. This way the
125 hard links in this directory have vanished, they were causing
126 trouble for people working in AFS. This became necessary for
127 Debian, because there it woudn't compile on PPC.
129 2000-01-13 Richard Kreckel <kreckel@ginac.de>
131 * Version 1.0.3 released.
133 2000-01-13 Richard Kreckel <kreckel@ginac.de>
135 * src/base/cl_macros.h (nonreturning_function): For egcs and newer
136 use __attribute__ ((__noreturn__)) instead of the __volatile__
138 (nonreturning): Remove macro.
139 * include/*: Minor fixes to stop -ansi -pedantic from complaining.
140 * include/cl_integer.h: (doublefactorial): New declaration.
141 * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
143 1999-12-18 Bruno Haible <haible@clisp.cons.org>
145 * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
147 * autoconf/ltconfig: Improve support for recent FreeBSD 3.
148 * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
149 'const T', to match definition in src/vector/cl_GV_number.cc.
150 Reported by Duncan Simpson <dps@io.stargate.co.uk>.
151 * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
154 1999-09-07 Bruno Haible <haible@clisp.cons.org>
156 * Version 1.0.2 released.
158 1999-09-06 Bruno Haible <haible@clisp.cons.org>
160 * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
161 boolean expression, write alternatives ending with either
162 "return cl_true;" or "return cl_false;". This way, g++ does a
163 better job inlining it.
164 * src/float/cl_F.h (longfloatp): Likewise.
165 * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
166 * src/complex/cl_C.h (realp, complexp): Likewise.
168 1999-09-05 Bruno Haible <haible@clisp.cons.org>
170 * include/cl_integer.h (cl_equal_hashcode): New declaration.
171 * include/cl_rational.h (cl_equal_hashcode): New declaration.
172 * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
173 * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
174 * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
175 * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
176 * include/cl_float.h (cl_equal_hashcode): New declaration.
177 * include/cl_real.h (cl_equal_hashcode): New declaration.
178 * include/cl_complex.h (cl_equal_hashcode): New declaration.
179 * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
180 * src/integer/misc/cl_I_eqhashcode.cc: New file.
181 * src/rational/misc/cl_RA_eqhashcode.cc: New file.
182 * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
183 * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
184 * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
185 * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
186 * src/float/misc/cl_F_eqhashcode.cc: New file.
187 * src/real/misc/cl_R_eqhashcode.cc: New file.
188 * src/complex/misc/cl_C_eqhashcode.cc: New file.
189 * doc/cln.tex: Document `cl_equal_hashcode'.
191 1999-09-05 Bruno Haible <haible@clisp.cons.org>
193 * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
194 (cl_number_ring): New class.
195 (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
196 (instanceof): New function.
197 * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
198 * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
199 * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
200 * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
201 * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
202 * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
203 * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
204 * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
205 * doc/cln.tex: Document `instanceof'.
207 1999-09-05 Bruno Haible <haible@clisp.cons.org>
209 * include/cl_rational.h (numerator, denominator): New declarations.
210 * src/rational/elem/cl_RA_numerator.cc: New file.
211 * src/rational/elem/cl_RA_denominator.cc: New file.
212 * include/cl_integer.h (numerator, denominator): New inline functions.
213 * doc/cln.tex: Document `numerator' and `denominator'.
215 1999-09-05 Bruno Haible <haible@clisp.cons.org>
217 * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
219 * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
221 1999-09-05 Bruno Haible <haible@clisp.cons.org>
223 * include/cl_config.h.in: Support for sparc64 CPU.
224 * include/cl_modules.h: Likewise.
225 * include/cl_types.h: Likewise.
226 * include/cl_object.h: Likewise.
227 * include/cl_GV.h: Likewise.
228 * src/Makefile.in: Likewise.
229 * src/base/cl_alloca.h: Likewise.
230 * src/base/cl_macros.h: Likewise.
231 * src/base/cl_sysdep.h: Likewise.
232 * src/base/cl_low.h: Likewise.
233 * src/base/digitseq/cl_asm.h: Likewise.
234 * src/base/digitseq/cl_asm_.cc: Likewise.
235 * src/base/digitseq/cl_asm_sparc64.h: New file.
236 * src/base/digitseq/cl_asm_sparc64_.cc: New file.
237 * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
238 * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
239 * src/polynomial/elem/cl_UP_GF2.h: Likewise.
240 * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
242 1999-09-04 Bruno Haible <haible@clisp.cons.org>
244 * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
245 Use the `orn' instruction.
247 1999-08-14 Bruno Haible <haible@clisp.cons.org>
249 Assume all platforms have <stdlib.h> and clock_t.
250 * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
251 * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
252 * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
253 * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
254 * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
256 1999-07-18 Bruno Haible <haible@clisp.cons.org>
258 * gmp/config.guess: Link to autoconf/config.guess.
259 gmp/config.sub: Link to autoconf/config.sub.
260 Needed for Win32 platforms.
262 1999-07-17 Bruno Haible <haible@clisp.cons.org>
264 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
265 "sparc64" according to the C compiler, not the uname result.
267 1999-06-17 Bruno Haible <haible@clisp.cons.org>
269 * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
270 COUNTER_LOOPS version, fortunately not used yet.
272 * include/cl_modules.h: Prepare for gcc version 3.
274 1999-06-12 Bruno Haible <haible@clisp.cons.org>
276 * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
277 Change the last call from I_I_to_RT to I_I_to_RA.
279 1999-06-09 Bruno Haible <haible@clisp.cons.org>
281 * Version 1.0.1 released.
283 1999-06-09 Bruno Haible <haible@clisp.cons.org>
285 * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
288 1999-06-08 Bruno Haible <haible@clisp.cons.org>
290 * autoconf/intparam.c (printf_underscored): Change argument type to
292 * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
293 (CL_PROVIDE, CL_PROVIDE_END): Use them.
294 * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
295 * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
296 * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
297 cast a cl_I to void here. Works around a bug in g++-2.95.
298 * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
299 * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
300 dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
302 * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
304 * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
305 * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
306 DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
307 * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
310 1999-06-01 Bruno Haible <haible@clisp.cons.org>
312 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
315 1999-05-29 Bruno Haible <haible@clisp.cons.org>
317 * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
319 * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
320 * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
321 OpenBSD like NetBSD, and Linux/ELF like SVR4.
323 1999-05-16 Bruno Haible <haible@clisp.cons.org>
325 * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
326 syntax on AIX systems and new assembler syntax on non-AIX systems.
328 1999-05-01 Bruno Haible <haible@clisp.cons.org>
330 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
331 version from GNU CVS.
333 1999-04-24 Bruno Haible <haible@clisp.cons.org>
335 * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
336 either operand is a positive fixnum, O(1) instead of O(N).
337 * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
338 * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
341 1999-04-14 Bruno Haible <haible@clisp.cons.org>
343 * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
344 ctor/dtor needs to be exported.
345 * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
346 * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
348 (CL_GLOBALIZE_LABEL): New macro.
349 (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
350 (CL_PROVIDE): Update.
352 1999-04-12 Bruno Haible <haible@clisp.cons.org>
354 * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
355 errors ("unterminated string or character constant").
356 ($(ASMFILES_LO)): On HPPA, try with various settings of
357 COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
359 1999-04-11 Bruno Haible <haible@clisp.cons.org>
361 * INSTALL: Mention gmp problems on MIPS.
362 * doc/cln.tex: Likewise.
364 1999-03-24 Mumit Khan <khan@xraylith.wisc.edu>
366 * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
368 * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
369 (CL_GLOBALIZE_ASM_LABEL): New macro.
370 (CL_PROVIDE): Use it.
371 * src/base/random/cl_random_from.cc: Handle WIN32.
372 * src/timing/cl_t_current.cc: Likewise.
374 1999-03-15 Bruno Haible <haible@clisp.cons.org>
376 * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
377 (main8): Adapt for C++.
379 1999-03-09 Bruno Haible <haible@clisp.cons.org>
381 * INSTALL: Mention egcs-1.1 problems on Sparc.
382 * doc/cln.tex: Likewise.
384 1999-03-08 Bruno Haible <haible@clisp.cons.org>
386 * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
389 1999-02-25 Bruno Haible <haible@clisp.cons.org>
391 * autoconf/aclocal.m4: In test programs, declare `int main()', not
394 * lidia-interface/src/interfaces/integers/cln/bigint.c
395 (bigint_to_string): Fix for negative arguments.
397 * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
398 * src/base/cl_alloca.h: Likewise.
400 * src/base/cl_low.h: Eliminate CLISP style "# " comments.
401 * src/base/digitseq/cl_asm_arm_.cc,
402 src/base/digitseq/cl_asm_mips_.cc,
403 src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
405 * src/modinteger/cl_MI_pow2.h,
406 src/modinteger/cl_MI_pow2m1.h,
407 src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
409 1999-01-18 Bruno Haible <haible@clisp.cons.org>
411 * autoconf/acgeneral.m4,
412 autoconf/acspecific.m4: Upgrade to autoconf-2.13.
413 * autoconf/config.guess, autoconf/config.sub: Likewise.
414 * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
415 a macro. Use ${ac_objext}.
416 * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
417 conforming with CL_ALLOCA.
419 1999-01-12 Bruno Haible <haible@clisp.cons.org>
421 * Version 1.0 released.