1 2000-05-23 Bruno Haible <haible@clisp.cons.org>
3 * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
4 host_vendor, host_os correctly if $host has more than two hyphens.
6 2000-05-19 Richard Kreckel <kreckel@ginac.de>
8 * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
9 better match present-day CPUs whenever GMP3 is used.
10 * src/base/digitseq/cl_DS_div.cc: dto.
11 * src/TUNING: Added comment about order of tuning.
12 * configure, configure.in: Safer GMP3-detection.
13 * INSTALL.generic: Clarified behaviour of --with-gmp.
14 * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
16 2000-05-05 Richard Kreckel <kreckel@ginac.de>
18 * doc/cln.tex: Added index entries.
19 * doc/texinfo.tex: Upgraded to newer version 1999-10-01.07.
20 * doc/*: Changes triggered.
22 2000-05-04 Richard Kreckel <kreckel@ginac.de>
24 * gmp/: removed completely. From now on we are going to link
25 externally against libgmp3.0 or above!
26 * configure, configure.in, Makefile.in, */Makeflags: removed support
27 of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
28 setting $CPPFLAGS instead.
29 * Makefile.in: Added libtool inter-library dependency for -lgmp and
30 conforming interface versioning (-version-info).
31 * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
34 2000-02-22 Bruno Haible <haible@clisp.cons.org>
36 * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
37 parameter passing was changed for the MIPS n32 ABI.
39 2000-01-24 Richard Kreckel <kreckel@ginac.de>
41 * gmp/*: Replaced the complete mpn sources with the ones from
42 Debian since they are maintained while the ones from FSF
43 aren't and there were problems on some architectures, PowerPC
44 in particular. See the file gmp/README.CLN. This way the
45 hard links in this directory have vanished, they were causing
46 trouble for people working in AFS. This became necessary for
47 Debian, because there it woudn't compile on PPC.
49 2000-01-13 Richard Kreckel <kreckel@ginac.de>
51 * Version 1.0.3 released.
53 2000-01-13 Richard Kreckel <kreckel@ginac.de>
55 * src/base/cl_macros.h (nonreturning_function): For egcs and newer
56 use __attribute__ ((__noreturn__)) instead of the __volatile__
58 (nonreturning): Remove macro.
59 * include/*: Minor fixes to stop -ansi -pedantic from complaining.
60 * include/cl_integer.h: (doublefactorial): New declaration.
61 * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
63 1999-12-18 Bruno Haible <haible@clisp.cons.org>
65 * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
67 * autoconf/ltconfig: Improve support for recent FreeBSD 3.
68 * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
69 'const T', to match definition in src/vector/cl_GV_number.cc.
70 Reported by Duncan Simpson <dps@io.stargate.co.uk>.
71 * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
74 1999-09-07 Bruno Haible <haible@clisp.cons.org>
76 * Version 1.0.2 released.
78 1999-09-06 Bruno Haible <haible@clisp.cons.org>
80 * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
81 boolean expression, write alternatives ending with either
82 "return cl_true;" or "return cl_false;". This way, g++ does a
83 better job inlining it.
84 * src/float/cl_F.h (longfloatp): Likewise.
85 * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
86 * src/complex/cl_C.h (realp, complexp): Likewise.
88 1999-09-05 Bruno Haible <haible@clisp.cons.org>
90 * include/cl_integer.h (cl_equal_hashcode): New declaration.
91 * include/cl_rational.h (cl_equal_hashcode): New declaration.
92 * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
93 * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
94 * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
95 * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
96 * include/cl_float.h (cl_equal_hashcode): New declaration.
97 * include/cl_real.h (cl_equal_hashcode): New declaration.
98 * include/cl_complex.h (cl_equal_hashcode): New declaration.
99 * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
100 * src/integer/misc/cl_I_eqhashcode.cc: New file.
101 * src/rational/misc/cl_RA_eqhashcode.cc: New file.
102 * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
103 * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
104 * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
105 * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
106 * src/float/misc/cl_F_eqhashcode.cc: New file.
107 * src/real/misc/cl_R_eqhashcode.cc: New file.
108 * src/complex/misc/cl_C_eqhashcode.cc: New file.
109 * doc/cln.tex: Document `cl_equal_hashcode'.
111 1999-09-05 Bruno Haible <haible@clisp.cons.org>
113 * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
114 (cl_number_ring): New class.
115 (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
116 (instanceof): New function.
117 * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
118 * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
119 * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
120 * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
121 * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
122 * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
123 * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
124 * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
125 * doc/cln.tex: Document `instanceof'.
127 1999-09-05 Bruno Haible <haible@clisp.cons.org>
129 * include/cl_rational.h (numerator, denominator): New declarations.
130 * src/rational/elem/cl_RA_numerator.cc: New file.
131 * src/rational/elem/cl_RA_denominator.cc: New file.
132 * include/cl_integer.h (numerator, denominator): New inline functions.
133 * doc/cln.tex: Document `numerator' and `denominator'.
135 1999-09-05 Bruno Haible <haible@clisp.cons.org>
137 * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
139 * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
141 1999-09-05 Bruno Haible <haible@clisp.cons.org>
143 * include/cl_config.h.in: Support for sparc64 CPU.
144 * include/cl_modules.h: Likewise.
145 * include/cl_types.h: Likewise.
146 * include/cl_object.h: Likewise.
147 * include/cl_GV.h: Likewise.
148 * src/Makefile.in: Likewise.
149 * src/base/cl_alloca.h: Likewise.
150 * src/base/cl_macros.h: Likewise.
151 * src/base/cl_sysdep.h: Likewise.
152 * src/base/cl_low.h: Likewise.
153 * src/base/digitseq/cl_asm.h: Likewise.
154 * src/base/digitseq/cl_asm_.cc: Likewise.
155 * src/base/digitseq/cl_asm_sparc64.h: New file.
156 * src/base/digitseq/cl_asm_sparc64_.cc: New file.
157 * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
158 * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
159 * src/polynomial/elem/cl_UP_GF2.h: Likewise.
160 * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
162 1999-09-04 Bruno Haible <haible@clisp.cons.org>
164 * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
165 Use the `orn' instruction.
167 1999-08-14 Bruno Haible <haible@clisp.cons.org>
169 Assume all platforms have <stdlib.h> and clock_t.
170 * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
171 * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
172 * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
173 * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
174 * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
176 1999-07-18 Bruno Haible <haible@clisp.cons.org>
178 * gmp/config.guess: Link to autoconf/config.guess.
179 gmp/config.sub: Link to autoconf/config.sub.
180 Needed for Win32 platforms.
182 1999-07-17 Bruno Haible <haible@clisp.cons.org>
184 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
185 "sparc64" according to the C compiler, not the uname result.
187 1999-06-17 Bruno Haible <haible@clisp.cons.org>
189 * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
190 COUNTER_LOOPS version, fortunately not used yet.
192 * include/cl_modules.h: Prepare for gcc version 3.
194 1999-06-12 Bruno Haible <haible@clisp.cons.org>
196 * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
197 Change the last call from I_I_to_RT to I_I_to_RA.
199 1999-06-09 Bruno Haible <haible@clisp.cons.org>
201 * Version 1.0.1 released.
203 1999-06-09 Bruno Haible <haible@clisp.cons.org>
205 * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
208 1999-06-08 Bruno Haible <haible@clisp.cons.org>
210 * autoconf/intparam.c (printf_underscored): Change argument type to
212 * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
213 (CL_PROVIDE, CL_PROVIDE_END): Use them.
214 * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
215 * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
216 * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
217 cast a cl_I to void here. Works around a bug in g++-2.95.
218 * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
219 * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
220 dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
222 * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
224 * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
225 * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
226 DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
227 * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
230 1999-06-01 Bruno Haible <haible@clisp.cons.org>
232 * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
235 1999-05-29 Bruno Haible <haible@clisp.cons.org>
237 * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
239 * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
240 * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
241 OpenBSD like NetBSD, and Linux/ELF like SVR4.
243 1999-05-16 Bruno Haible <haible@clisp.cons.org>
245 * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
246 syntax on AIX systems and new assembler syntax on non-AIX systems.
248 1999-05-01 Bruno Haible <haible@clisp.cons.org>
250 * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
251 version from GNU CVS.
253 1999-04-24 Bruno Haible <haible@clisp.cons.org>
255 * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
256 either operand is a positive fixnum, O(1) instead of O(N).
257 * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
258 * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
261 1999-04-14 Bruno Haible <haible@clisp.cons.org>
263 * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
264 ctor/dtor needs to be exported.
265 * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
266 * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
268 (CL_GLOBALIZE_LABEL): New macro.
269 (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
270 (CL_PROVIDE): Update.
272 1999-04-12 Bruno Haible <haible@clisp.cons.org>
274 * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
275 errors ("unterminated string or character constant").
276 ($(ASMFILES_LO)): On HPPA, try with various settings of
277 COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
279 1999-04-11 Bruno Haible <haible@clisp.cons.org>
281 * INSTALL: Mention gmp problems on MIPS.
282 * doc/cln.tex: Likewise.
284 1999-03-24 Mumit Khan <khan@xraylith.wisc.edu>
286 * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
288 * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
289 (CL_GLOBALIZE_ASM_LABEL): New macro.
290 (CL_PROVIDE): Use it.
291 * src/base/random/cl_random_from.cc: Handle WIN32.
292 * src/timing/cl_t_current.cc: Likewise.
294 1999-03-15 Bruno Haible <haible@clisp.cons.org>
296 * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
297 (main8): Adapt for C++.
299 1999-03-09 Bruno Haible <haible@clisp.cons.org>
301 * INSTALL: Mention egcs-1.1 problems on Sparc.
302 * doc/cln.tex: Likewise.
304 1999-03-08 Bruno Haible <haible@clisp.cons.org>
306 * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
309 1999-02-25 Bruno Haible <haible@clisp.cons.org>
311 * autoconf/aclocal.m4: In test programs, declare `int main()', not
314 * lidia-interface/src/interfaces/integers/cln/bigint.c
315 (bigint_to_string): Fix for negative arguments.
317 * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
318 * src/base/cl_alloca.h: Likewise.
320 * src/base/cl_low.h: Eliminate CLISP style "# " comments.
321 * src/base/digitseq/cl_asm_arm_.cc,
322 src/base/digitseq/cl_asm_mips_.cc,
323 src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
325 * src/modinteger/cl_MI_pow2.h,
326 src/modinteger/cl_MI_pow2m1.h,
327 src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
329 1999-01-18 Bruno Haible <haible@clisp.cons.org>
331 * autoconf/acgeneral.m4,
332 autoconf/acspecific.m4: Upgrade to autoconf-2.13.
333 * autoconf/config.guess, autoconf/config.sub: Likewise.
334 * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
335 a macro. Use ${ac_objext}.
336 * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
337 conforming with CL_ALLOCA.
339 1999-01-12 Bruno Haible <haible@clisp.cons.org>
341 * Version 1.0 released.