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