1 2000-08-30 Richard Kreckel <kreckel@ginac.de>
3 * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
4 Rearranged for a clearer distinction between macros and remaining
5 identifiers, so Cint can parse it smoothly.
7 2000-08-29 Richard Kreckel <kreckel@ginac.de>
9 * include/cln/number.h, the(const cl_number& x): New template
12 2000-08-29 Richard Kreckel <kreckel@ginac.de>
14 * TODO: DESCRIBE NAMESPACE CHANGES HERE!!!
16 2000-08-26 Bruno Haible <haible@clisp.cons.org>
18 * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
21 2000-08-18 Bruno Haible <haible@clisp.cons.org>
23 * include/cl_univpoly_modint.h: Fix typo.
25 2000-07-13 Bruno Haible <haible@clisp.cons.org>
27 * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
28 used as precision marker for floats.
29 Reported by Keith Briggs (in 1998) and Thomas Roessler.
30 * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
31 * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
32 * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
33 * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
35 2000-06-22 Bruno Haible <haible@clisp.cons.org>
37 * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
38 * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
40 (cl_word_size): New macro.
41 * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
44 2000-05-31 Bruno Haible <haible@clisp.cons.org>
46 * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
47 From a sample that fails with gcc-2.95.2 on Sparc.
48 * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
50 2000-05-30 Richard Kreckel <kreckel@ginac.de>
52 * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
54 * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
55 CL_VERSION_PATCHLEVEL): New definitions.
56 * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
57 autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
58 * src/Makefile.in, configure.in: release-variables renamed from
60 * configure.in: default to build both shared and static library
61 (i.e. default to the most common behaviour).
63 2000-05-29 Richard Kreckel <kreckel@ginac.de>
65 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
66 environment around the patch of 2000-05-23.
68 2000-05-29 Bruno Haible <haible@clisp.cons.org>
70 * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
71 Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
73 2000-05-27 Richard Kreckel <kreckel@ginac.de>
75 * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
76 src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
78 2000-05-24 Richard Kreckel <kreckel@ginac.de>
80 * autoconf/config.*: Updated to new version from FSF
81 (the new libtool wants this).
82 * src/Makefile.in: added $(LDFLAGS) to link step.
83 * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted
86 2000-05-23 Bruno Haible <haible@clisp.cons.org>
88 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
89 host_vendor, host_os correctly if $host has more than two hyphens.
91 2000-05-19 Richard Kreckel <kreckel@ginac.de>
93 * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
94 better match present-day CPUs whenever GMP3 is used.
95 * src/base/digitseq/cl_DS_div.cc: dto.
96 * src/TUNING: Added comment about order of tuning.
97 * configure, configure.in: Safer GMP3-detection.
98 * INSTALL.generic: Clarified behaviour of --with-gmp.
99 * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
101 2000-05-04 Richard Kreckel <kreckel@ginac.de>
103 * gmp/: removed completely. From now on we are going to link
104 externally against libgmp3.0 or above!
105 * configure, configure.in, Makefile.in, */Makeflags: removed support
106 of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
107 setting $CPPFLAGS instead.
108 * Makefile.in: Added libtool inter-library dependency for -lgmp and
109 conforming interface versioning (-version-info).
110 * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
113 2000-02-22 Bruno Haible <haible@clisp.cons.org>
115 * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
116 parameter passing was changed for the MIPS n32 ABI.
118 2000-01-24 Richard Kreckel <kreckel@ginac.de>
120 * gmp/*: Replaced the complete mpn sources with the ones from
121 Debian since they are maintained while the ones from FSF
122 aren't and there were problems on some architectures, PowerPC
123 in particular. See the file gmp/README.CLN. This way the
124 hard links in this directory have vanished, they were causing
125 trouble for people working in AFS. This became necessary for
126 Debian, because there it woudn't compile on PPC.
128 2000-01-13 Richard Kreckel <kreckel@ginac.de>
130 * Version 1.0.3 released.
132 2000-01-13 Richard Kreckel <kreckel@ginac.de>
134 * src/base/cl_macros.h (nonreturning_function): For egcs and newer
135 use __attribute__ ((__noreturn__)) instead of the __volatile__
137 (nonreturning): Remove macro.
138 * include/*: Minor fixes to stop -ansi -pedantic from complaining.
139 * include/cl_integer.h: (doublefactorial): New declaration.
140 * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
142 1999-12-18 Bruno Haible <haible@clisp.cons.org>
144 * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
146 * autoconf/ltconfig: Improve support for recent FreeBSD 3.
147 * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
148 'const T', to match definition in src/vector/cl_GV_number.cc.
149 Reported by Duncan Simpson <dps@io.stargate.co.uk>.
150 * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
153 1999-09-07 Bruno Haible <haible@clisp.cons.org>
155 * Version 1.0.2 released.
157 1999-09-06 Bruno Haible <haible@clisp.cons.org>
159 * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
160 boolean expression, write alternatives ending with either
161 "return cl_true;" or "return cl_false;". This way, g++ does a
162 better job inlining it.
163 * src/float/cl_F.h (longfloatp): Likewise.
164 * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
165 * src/complex/cl_C.h (realp, complexp): Likewise.
167 1999-09-05 Bruno Haible <haible@clisp.cons.org>
169 * include/cl_integer.h (cl_equal_hashcode): New declaration.
170 * include/cl_rational.h (cl_equal_hashcode): New declaration.
171 * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
172 * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
173 * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
174 * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
175 * include/cl_float.h (cl_equal_hashcode): New declaration.
176 * include/cl_real.h (cl_equal_hashcode): New declaration.
177 * include/cl_complex.h (cl_equal_hashcode): New declaration.
178 * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
179 * src/integer/misc/cl_I_eqhashcode.cc: New file.
180 * src/rational/misc/cl_RA_eqhashcode.cc: New file.
181 * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
182 * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
183 * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
184 * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
185 * src/float/misc/cl_F_eqhashcode.cc: New file.
186 * src/real/misc/cl_R_eqhashcode.cc: New file.
187 * src/complex/misc/cl_C_eqhashcode.cc: New file.
188 * doc/cln.tex: Document `cl_equal_hashcode'.
190 1999-09-05 Bruno Haible <haible@clisp.cons.org>
192 * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
193 (cl_number_ring): New class.
194 (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
195 (instanceof): New function.
196 * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
197 * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
198 * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
199 * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
200 * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
201 * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
202 * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
203 * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
204 * doc/cln.tex: Document `instanceof'.
206 1999-09-05 Bruno Haible <haible@clisp.cons.org>
208 * include/cl_rational.h (numerator, denominator): New declarations.
209 * src/rational/elem/cl_RA_numerator.cc: New file.
210 * src/rational/elem/cl_RA_denominator.cc: New file.
211 * include/cl_integer.h (numerator, denominator): New inline functions.
212 * doc/cln.tex: Document `numerator' and `denominator'.
214 1999-09-05 Bruno Haible <haible@clisp.cons.org>
216 * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
218 * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
220 1999-09-05 Bruno Haible <haible@clisp.cons.org>
222 * include/cl_config.h.in: Support for sparc64 CPU.
223 * include/cl_modules.h: Likewise.
224 * include/cl_types.h: Likewise.
225 * include/cl_object.h: Likewise.
226 * include/cl_GV.h: Likewise.
227 * src/Makefile.in: Likewise.
228 * src/base/cl_alloca.h: Likewise.
229 * src/base/cl_macros.h: Likewise.
230 * src/base/cl_sysdep.h: Likewise.
231 * src/base/cl_low.h: Likewise.
232 * src/base/digitseq/cl_asm.h: Likewise.
233 * src/base/digitseq/cl_asm_.cc: Likewise.
234 * src/base/digitseq/cl_asm_sparc64.h: New file.
235 * src/base/digitseq/cl_asm_sparc64_.cc: New file.
236 * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
237 * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
238 * src/polynomial/elem/cl_UP_GF2.h: Likewise.
239 * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
241 1999-09-04 Bruno Haible <haible@clisp.cons.org>
243 * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
244 Use the `orn' instruction.
246 1999-08-14 Bruno Haible <haible@clisp.cons.org>
248 Assume all platforms have <stdlib.h> and clock_t.
249 * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
250 * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
251 * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
252 * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
253 * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
255 1999-07-18 Bruno Haible <haible@clisp.cons.org>
257 * gmp/config.guess: Link to autoconf/config.guess.
258 gmp/config.sub: Link to autoconf/config.sub.
259 Needed for Win32 platforms.
261 1999-07-17 Bruno Haible <haible@clisp.cons.org>
263 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
264 "sparc64" according to the C compiler, not the uname result.
266 1999-06-17 Bruno Haible <haible@clisp.cons.org>
268 * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
269 COUNTER_LOOPS version, fortunately not used yet.
271 * include/cl_modules.h: Prepare for gcc version 3.
273 1999-06-12 Bruno Haible <haible@clisp.cons.org>
275 * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
276 Change the last call from I_I_to_RT to I_I_to_RA.
278 1999-06-09 Bruno Haible <haible@clisp.cons.org>
280 * Version 1.0.1 released.
282 1999-06-09 Bruno Haible <haible@clisp.cons.org>
284 * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
287 1999-06-08 Bruno Haible <haible@clisp.cons.org>
289 * autoconf/intparam.c (printf_underscored): Change argument type to
291 * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
292 (CL_PROVIDE, CL_PROVIDE_END): Use them.
293 * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
294 * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
295 * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
296 cast a cl_I to void here. Works around a bug in g++-2.95.
297 * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
298 * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
299 dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
301 * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
303 * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
304 * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
305 DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
306 * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
309 1999-06-01 Bruno Haible <haible@clisp.cons.org>
311 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
314 1999-05-29 Bruno Haible <haible@clisp.cons.org>
316 * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
318 * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
319 * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
320 OpenBSD like NetBSD, and Linux/ELF like SVR4.
322 1999-05-16 Bruno Haible <haible@clisp.cons.org>
324 * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
325 syntax on AIX systems and new assembler syntax on non-AIX systems.
327 1999-05-01 Bruno Haible <haible@clisp.cons.org>
329 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
330 version from GNU CVS.
332 1999-04-24 Bruno Haible <haible@clisp.cons.org>
334 * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
335 either operand is a positive fixnum, O(1) instead of O(N).
336 * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
337 * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
340 1999-04-14 Bruno Haible <haible@clisp.cons.org>
342 * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
343 ctor/dtor needs to be exported.
344 * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
345 * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
347 (CL_GLOBALIZE_LABEL): New macro.
348 (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
349 (CL_PROVIDE): Update.
351 1999-04-12 Bruno Haible <haible@clisp.cons.org>
353 * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
354 errors ("unterminated string or character constant").
355 ($(ASMFILES_LO)): On HPPA, try with various settings of
356 COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
358 1999-04-11 Bruno Haible <haible@clisp.cons.org>
360 * INSTALL: Mention gmp problems on MIPS.
361 * doc/cln.tex: Likewise.
363 1999-03-24 Mumit Khan <khan@xraylith.wisc.edu>
365 * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
367 * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
368 (CL_GLOBALIZE_ASM_LABEL): New macro.
369 (CL_PROVIDE): Use it.
370 * src/base/random/cl_random_from.cc: Handle WIN32.
371 * src/timing/cl_t_current.cc: Likewise.
373 1999-03-15 Bruno Haible <haible@clisp.cons.org>
375 * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
376 (main8): Adapt for C++.
378 1999-03-09 Bruno Haible <haible@clisp.cons.org>
380 * INSTALL: Mention egcs-1.1 problems on Sparc.
381 * doc/cln.tex: Likewise.
383 1999-03-08 Bruno Haible <haible@clisp.cons.org>
385 * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
388 1999-02-25 Bruno Haible <haible@clisp.cons.org>
390 * autoconf/aclocal.m4: In test programs, declare `int main()', not
393 * lidia-interface/src/interfaces/integers/cln/bigint.c
394 (bigint_to_string): Fix for negative arguments.
396 * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
397 * src/base/cl_alloca.h: Likewise.
399 * src/base/cl_low.h: Eliminate CLISP style "# " comments.
400 * src/base/digitseq/cl_asm_arm_.cc,
401 src/base/digitseq/cl_asm_mips_.cc,
402 src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
404 * src/modinteger/cl_MI_pow2.h,
405 src/modinteger/cl_MI_pow2m1.h,
406 src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
408 1999-01-18 Bruno Haible <haible@clisp.cons.org>
410 * autoconf/acgeneral.m4,
411 autoconf/acspecific.m4: Upgrade to autoconf-2.13.
412 * autoconf/config.guess, autoconf/config.sub: Likewise.
413 * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
414 a macro. Use ${ac_objext}.
415 * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
416 conforming with CL_ALLOCA.
418 1999-01-12 Bruno Haible <haible@clisp.cons.org>
420 * Version 1.0 released.