]> www.ginac.de Git - cln.git/blob - ChangeLog
* Cumulative patch including Bruno's work on large fixnums on 64 bit machines.
[cln.git] / ChangeLog
1 2005-12-04  Bruno Haible  <bruno@clisp.org>
2
3         * src/integer/conv/cl_I_to_digits.cc (I_to_digits_noshrink): Set
4         erg->len at the end.
5
6 2005-12-04  Bruno Haible  <bruno@clisp.org>
7
8         Extend the fixnum range from 32 bits to 61 bits on 64-bit platforms.
9         * doc/cln.tex (gcd, jacobi): Take 'long' instead of 'int32' arguments.
10         * include/cln/object.h (cl_value_shift): Define as 3, not 32, in the
11         64-bit case.
12         * include/cln/types.h (intVsize): New macro.
13         (sintV, uintV): New types.
14         * include/cln/integer.h (gcd): Take uintV arguments.
15         * include/cln/numtheory.h (jacobi): Take sintV arguments.
16         * src/complex/input/cl_N_read.cc (read_complex): Call FN_to_UV instead
17         of FN_to_UL.
18         * src/complex/transcendental/cl_C_expt_C.cc: Likewise.
19         * src/float/dfloat/elem/cl_DF_scale_I.cc: Use uintV instead of uintL
20         * src/float/dfloat/elem/cl_DF_from_RA.cc: Don't assume values >= 2^53
21         and < 2^55 are always bignums.
22         where appropriate.
23         * src/float/ffloat/conv/cl_RA_to_float.cc: Call FN_to_UV instead of
24         FN_to_UL.
25         * src/float/ffloat/elem/cl_FF_from_RA.cc: Likewise.
26         * src/float/ffloat/elem/cl_FF_scale_I.cc: Call FN_to_V instead of
27         FN_to_L.
28         * src/float/lfloat/elem/cl_LF_scale_I.cc: Likewise.
29         * src/float/output/cl_F_dprint.cc: Likewise.
30         * src/float/sfloat/elem/cl_SF_from_RA.cc: Call FN_to_UV instead of
31         FN_to_UL.
32         * src/float/sfloat/elem/cl_SF_scale_I.cc: Call FN_to_V instead of
33         FN_to_L.
34         * src/integer/cl_I.h (FN_to_UV): Renamed from FN_to_UL, change return
35         type.
36         (FN_to_V): Renamed from FN_to_L, change return type.
37         (FN_V_zerop): Renamed from FN_L_zerop.
38         (FN_V_minusp): Renamed from FN_L_minusp.
39         (cl_I_constructor_from_L2, cl_I_constructor_from_UL2): Define as an
40         inline function on 64-bit platforms.
41         (V_to_I, UV_to_I): New macros.
42         (pFN_maxlength_digits_at): Return an uintV instead of an uint32.
43         (set_pFN_maxlength_digits_at): Take an uintV instead of an uint32.
44         * src/integer/algebraic/cl_I_sqrtp.cc: Call FN_to_UV instead of
45         FN_to_UL.
46         * src/integer/bitwise/cl_I_ash_I.cc: Call FN_to_V instead of FN_to_L.
47         * src/integer/bitwise/cl_I_ilength.cc: Likewise.
48         * src/integer/bitwise/cl_I_log_aux.cc: Likewise.
49         * src/integer/bitwise/cl_I_logbitp_I.cc: Likewise.
50         * src/integer/bitwise/cl_I_logcount.cc: Likewise.
51         * src/integer/bitwise/cl_I_logtest.cc: Likewise.
52         * src/integer/conv/cl_I_from_L2.cc: Don't produce code on 64-bit
53         platforms.
54         * src/integer/conv/cl_I_from_UL2.cc: Likewise.
55         * src/integer/conv/cl_I_from_NDS.cc: Update.
56         * src/integer/conv/cl_I_from_Q.cc: Remove cast to sint32.
57         * src/integer/conv/cl_I_from_UQ.cc: Remove cast to uint32.
58         * src/integer/conv/cl_I_to_L.cc: Check again fixnum that needs more
59         than 32 bits.
60         * src/integer/conv/cl_I_to_Q.cc: Call FN_to_V instead of FN_to_L.
61         * src/integer/conv/cl_I_to_UL.cc: Likewise.
62         * src/integer/conv/cl_I_to_UQ.cc: Likewise.
63         * src/integer/elem/cl_I_div.cc: Treat fixnums that need more than 32
64         bits like bignums.
65         * src/integer/elem/cl_I_minus.cc: Call FN_to_V instead of FN_to_L.
66         * src/integer/elem/cl_I_mul.cc: Likewise.
67         * src/integer/elem/cl_I_plus.cc: Likewise.
68         * src/integer/elem/cl_I_square.cc: Likewise.
69         * src/integer/elem/cl_I_uminus.cc: Likewise.
70         * src/integer/gcd/cl_I_gcd.cc: Likewise.
71         * src/integer/gcd/cl_low_gcd.cc (gcd): Take uintV arguments.
72         * src/integer/hash/cl_I_hashcode.cc: Call FN_to_V instead of FN_to_L.
73         * src/integer/input/cl_I_read.cc (read_integer): Call FN_to_UV instead
74         of FN_to_UL.
75         * src/integer/misc/cl_I_ord2.cc (ord2): Call ord2_64 on 64-bit
76         platforms.
77         * src/integer/misc/cl_I_power2p.cc: Call FN_to_UV instead of FN_to_UL.
78         * src/integer/misc/combin/cl_I_doublefactorial.cc (doublefakul_table):
79         Extend table for larger fixnums.
80         (doublefactorial): Update.
81         * src/integer/misc/combin/cl_I_factorial.cc (fakul_table): Extend table
82         for larger fixnums.
83         (factorial): Update.
84         * src/modinteger/cl_MI_fix16.h: Call FN_to_UV instead of FN_to_UL.
85         * src/modinteger/cl_MI_fix29.h: Likewise.
86         * src/modinteger/cl_MI_fix32.h: Likewise.
87         * src/modinteger/cl_MI_std.h: Likewise.
88         * src/numtheory/cl_nt_cornacchia4.cc: Call FN_to_V instead of FN_to_L.
89         * src/numtheory/cl_nt_jacobi.cc: Likewise.
90         * src/numtheory/cl_nt_jacobi_low.cc (jacobi_aux): Take uintV arguments
91         instead of uint32 arguments.
92         (jacobi): Take sintV argument instead of a sint32 argument.
93         * src/rational/input/cl_RA_read.cc: Call FN_to_UV instead of FN_to_UL.
94         * src/real/input/cl_R_read.cc: Likewise.
95         * src/vector/cl_GV_I.cc: Likewise.
96         * tests/timefact.cc: Call FN_to_V instead of FN_to_L.
97
98 2005-12-04  Bruno Haible  <bruno@clisp.org>
99
100         More complete 64-bit division macros.
101         * src/base/cl_low.h (divu_6432_3232_w): Choose a different macro
102         expansion on x86_64.
103         (divu_6432_6432): New macro.
104         (divu_6464_6464): Choose a different macro expansion for all CPUs
105         except sparc64 and x86_64.
106         (divu_12864_6464): Define NEED_VAR_divu_64_rest here.
107         * src/base/low/cl_low_div.cc (divu_64_rest): Avoid defining it twice.
108         (divu_6464_6464_): New function.
109
110 2005-12-04  Bruno Haible  <bruno@clisp.org>
111
112         * src/base/cl_low.h (ord2_64): New macro.
113
114 2005-12-02  Bruno Haible  <bruno@clisp.org>
115
116         * src/base/cl_low.h (mulu64) [x86_64]: Change asm restriction, since
117         mulq doesn't accept immediate arguments.
118
119 2005-11-26  Bruno Haible  <bruno@clisp.org>
120
121         * src/base/cl_low.h (GENERIC_INTEGERLENGTH32): New macro.
122         (integerlength64): Define using integerlength32 if integerlength32
123         is not defined generically.
124
125 2005-11-26  Bruno Haible  <bruno@clisp.org>
126
127         * src/base/cl_low.h (mulu32) [SPARC64]: Remove rd instruction, since
128         umul returns the complete 64-bit product in a register.
129         (mulu32_w) [SPARC64]: Prefer umul over mulx instruction.
130         (divu_6432_3232_w) [SPARC64]: Prefer umul/udiv over mulx/udivx
131         instructions.
132
133 2005-11-26  Bruno Haible  <bruno@clisp.org>
134
135         * src/base/cl_low.h (divu_3216_1616): Prepend underscore to local
136         variables.
137
138 2005-11-26  Bruno Haible  <bruno@clisp.org>
139
140         * src/base/cl_low.h (ord2_32): Parenthesize macro argument.
141
142 2005-12-17  Richard B. Kreckel  <kreckel@ginac.de>
143
144         * Created branch cln_1-1 for maintenance patches.
145         This is the main branch, which will eventually become CLN 1.2.0.
146
147 2005-12-15  Dmitry V. Kustov  <kustov@telex221.ru>
148
149         * src/base/random/cl_random_from.cc: Add support for OpenBSD.
150
151 2005-11-23  Richard B. Kreckel  <kreckel@ginac.de>
152
153         * Version 1.1.11 released.
154
155 2005-11-20  Richard B. Kreckel  <kreckel@ginac.de>
156
157         * src/integer/conv/cl_I_cached_power.h: New file.
158         * src/integer/conv/cl_I_cached_power.cc: New file.
159         Contains power_table and cached_power_table previously...
160         * src/integer/conv/cl_I_to_digits.cc: ...here.
161         * src/integer/conv/cl_I_from_digits.cc: Use cached powers.
162
163 2005-11-02  Richard B. Kreckel  <kreckel@ginac.de>
164
165         * src/integer/conv/cl_I_from_digits.cc: Made input of all numbers in
166         non-power-of-two base much faster.
167         * tests/test_I_io.cc: New file...
168         * tests/Makefile.in, tests/test_I.cc: ...used here.
169
170 2005-10-22  Richard B. Kreckel  <kreckel@ginac.de>
171
172         * Version 1.1.10 released.
173
174 2005-10-22  Richard B. Kreckel  <kreckel@ginac.de>
175
176         * src/Makefile.in: Accept CPPFLAGS from environment.
177         * examples/Makefile.in: Likewise.
178         * benchmarks/Makefile.in: Likewise.
179         * tests/Makefile.in: Likewise.
180
181 2005-08-30  Richard B. Kreckel  <kreckel@ginac.de>
182
183         * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
184         duplication of basic blocks on m68k.
185
186 2005-08-30  Richard B. Kreckel  <kreckel@ginac.de>
187
188         * include/cln/modules.h (CL_JUMP_TO): Fix mips* brokenness.
189
190 2005-08-27  Bruno Haible  <bruno@clisp.org>
191
192         Split aclocal.m4 into individual files.
193         * m4/alloca.m4, m4/as-underscore.m4, m4/c++-constructors.m4:
194         * m4/fpu_control.m4, m4/general.m4, m4/gettimeofday.m4:
195         * m4/longdouble.m4, m4/longlong.m4, m4/param.m4, m4/perror.m4:
196         * m4/proto.m4, m4/rusage.m4, m4/times.m4:
197         New files, extracted from autoconf/aclocal.m4.
198         * autoconf/aclocal.m4: m4_include them.
199         * Makefile.devel (AUTOCONF_MACROS): New variable.
200         (configure): Depend on it.
201         (CLISP_M4DIR): Remove variable.
202         (autoconf/aclocal.m4): Remove rule.
203
204 2005-08-27  Bruno Haible  <bruno@clisp.org>
205
206         * src/integer/bitwise/cl_I_ash_I.cc (ash): Avoid shifting a 32-bit
207         zero value by more than 31 bits.
208
209 2005-08-27  Bruno Haible  <bruno@clisp.org>
210
211         Make the long-float overflow check work on 64-bit platforms.
212         * src/float/lfloat/cl_LF.h (LF_exp_mid, LF_exp_high): Define as
213         'unsigned int', not 'unsigned long'.
214
215 2005-08-27  Bruno Haible  <bruno@clisp.org>
216
217         * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
218         duplication of basic blocks by g++ 4.0.
219         See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23345>.
220
221 2005-08-27  Bruno Haible  <bruno@clisp.org>
222
223         Make it possible to cross-compile CLN.
224         * m4/intparam.m4: New file.
225         * m4/floatparam.m4: New file.
226         * autoconf/aclocal.m4: Include both.
227         (CL_MACHINE): Add an additional CROSS_MACRO parameter.
228         * configure.ac (CL_MACHINE): When cross-compiling, use
229         CL_INTPARAM_CROSS and CL_FLOATPARAM_CROSS.
230
231 2005-08-27  Bruno Haible  <bruno@clisp.org>
232
233         Define HAVE_LONGLONG and HAVE_LONGDOUBLE when cross-compiling.
234         * autoconf/aclocal.m4 (CL_LONGLONG, CL_LONGDOUBLE): When cross-
235         compiling, use the test code from gnulib.
236
237 2005-08-27  Bruno Haible  <bruno@clisp.org>
238
239         * autoconf/aclocal.m4 (CL_RUSAGE): Fix error when cross-compiling.
240
241 2005-08-16  Richard B. Kreckel  <kreckel@ginac.de>
242
243         The patch of 2005-05-01 made it impossible to test the type of a cl_UP
244         by comparing with &cl_class_univpoly_ring. We need an alternative:
245         * include/cln/object.h (cl_class_flags_modint_ring): New #define...
246         * src/polynomial/elem/cl_UP.cc (cl_class_univpoly_ring): ...used here.
247         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
248         * src/polynomial/elem/cl_UP_MI.h: Likewise.
249         * src/polynomial/elem/cl_UP_gen.h: Likewise.
250         * src/polynomial/elem/cl_UP_number.h: Likewise.
251
252 2005-08-15  Richard B. Kreckel  <kreckel@ginac.de>
253
254         * m4/cc.m4 (CL_AS_NOEXECSTACK): New macro...
255         * configure.ac: ...used here for setting ASMFLAGS...
256         * src/Makefile.in: ...which are used here.
257
258 2005-08-02  Andreas Jochens  <aj@andaco.de>
259
260         * include/cln/config.h.in: Add support for PowerPC 64 CPU.
261         * include/cln/modules.h: Likewise.
262         * include/cln/object.h: Likewise.
263         * include/cln/types.h: Likewise.
264
265 2005-07-24  Richard B. Kreckel  <kreckel@ginac.de>
266
267         Make out of the box build on x86_64 system with complete 32 bit
268         userland possible
269         * include/cln/config.h.in: Don't #define __x86_64__ when
270         __i386__ is defined.
271         * src/base/digitseq/cl_asm_x86_64_.cc: New file.
272         * doc/cln.tex: Revert workaround description introduced 2005-05-02.
273
274 2005-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
275
276         * Makefile.in: Don't enter nonexisting directories.
277
278 2005-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
279
280         Speed up the linking step
281         * src/Makefile.in: Use -objectlist for linking libcln.la.
282
283 2005-05-15  Richard B. Kreckel  <kreckel@ginac.de>
284
285         * autoconf/ltmain.sh: Upgrade to libtool-1.5.16.
286         * m4/libtool.m4: Upgrade to libtool-1.5.16 (without Comeau patch).
287
288 2005-05-02  Richard B. Kreckel  <kreckel@ginac.de>
289
290         * doc/cln.tex: Document what to do on a x86_64 machine with 32-bit
291         userland.
292
293 2005-05-01  Richard B. Kreckel  <kreckel@ginac.de>
294
295         Fix crashes in find_univpoly_ring and related functions
296         * include/cln/modinteger.h: Remove vptr from cl_heap_modint_ring;
297         remove declaration of cl_class cl_class_modint_ring.
298         * include/cln/univpoly.h: Remove vptr from cl_heap_univpoly_ring;
299         remove declaration of cl_class_univpoly_ring.
300         * include/cln/object.h: cl_class_flags_modint_ring: New #define...
301         * src/modinteger/cl_MI.cc: ...used in cl_class_modint_ring.
302         * src/modinteger/cl_MI_fix16.h: No vptr, but static dtor and type flag.
303         * src/modinteger/cl_MI_fix29.h: Likewise.
304         * src/modinteger/cl_MI_fix32.h: Likewise.
305         * src/modinteger/cl_MI_int32.h: Likewise.
306         * src/modinteger/cl_MI_montgom.h: Likewise.
307         * src/modinteger/cl_MI_pow2: Likewise.
308         * src/modinteger/cl_MI_pow2m1.h: Likewise.
309         * src/modinteger/cl_MI_pow2p1.h: Likewise.
310         * src/modinteger/cl_MI_std.h: Likewise.
311         * src/polynomial/elem/cl_UP.cc (cl_make_univpoly_ring): Compare with
312         cl_class_flags_modint_ring, not with cl_class_modint_ring.
313         * src/polynomial/elem/cl_UP_GF2.h (cl_class_num_univpoly_ring): New.
314         * src/polynomial/elem/cl_UP_MI.h (cl_class_modint_univpoly_ring): New.
315         * src/polynomial/elem/cl_UP_gen.h (cl_class_gen_univpoly_ring): New.
316         * src/polynomial/elem/cl_UP_number.h (cl_class_num_univpoly_ring): New.
317         Reported by Ralf Goertz <R_Goertz@web.de>.
318
319 2005-04-29  Richard B. Kreckel  <kreckel@ginac.de>
320             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
321
322         * m4/cc.m4: Emit a warning if g++ is used and optimization turned off.
323
324 2005-04-24  Richard B. Kreckel  <kreckel@ginac.de>
325
326         Make GCC compiler flags default to -O
327         * m4/cc.m4: New file...
328         * configure.ac: ...used here.
329         * autoconf/aclocal.m4: Regenerate.
330
331 2005-04-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
332
333         * include/cln/string.h: Declare cl_string.
334
335 2005-03-17  Richard B. Kreckel  <kreckel@ginac.de>
336
337         * autoconf/ltmain.sh: Upgrade to libtool-1.5.14.
338         * m4/libtool.m4: Upgrade to libtool-1.5.14 with Comeau patch.
339         * autoconf/aclocal.m4: Regenerate.
340
341 2005-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
342
343         * src/Makefile.in: Use $CXX instead of $CC when linking.
344
345 2005-02-27  Richard B. Kreckel  <kreckel@ginac.de>
346         
347         * examples/perfnum.cc: update to presumed 42st Mersenne prime.
348
349 2004-11-28  Richard B. Kreckel  <kreckel@ginac.de>
350
351         Disambiguate binary operators of CLN types with float/double
352         * include/cln/dfloat.h: Add binary operator overloads for arguments of
353         type double.
354         * include/cln/ffloat.h: Likewise, for arguments of type float.
355         * include/cln/float.h: Likewise, both for arguments of types double and
356         float.
357         * include/cln/real.h: Likewise.
358         Reported by Isidro Cachadiña Gutiérrez <icacha@unex.es>.
359
360 2004-11-03  Richard B. Kreckel  <kreckel@ginac.de>
361
362         * Version 1.1.9 released.
363
364 2004-10-28  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
365
366         * src/Makefile.in: Let config.status set LDFLAGS.
367
368 2004-10-27  Peter Breitenlohner  <peb@mppmu.mpg.de>
369
370         * cln.pc.in: Fix typo.
371         * Makefile.in (INSTALL_SCRIPT): Added, to be used for scripts like
372         cln-config.  Allows us to do special things to binaries, like
373         installing them with install -s.
374         * doc/Makefile.in: add/remove the cln.info from the installed
375         $(infodir)/dir unless this is debian install-info (code copied from
376         what GNU automake would produce).
377
378 2004-10-26  Richard B. Kreckel  <kreckel@ginac.de>
379
380         * src/integer/input/cl_I_read_stream.cc (read_integer): Fix a bug
381         that caused radix specifiers to not work when reading from a stream.
382         * src/rational/input/cl_RA_read_stream.cc (read_rational): Likewise.
383         * src/real/input/cl_R_read_stream.cc (read_real): Likewise.
384         * src/float/input/cl_F_read_stream.cc (read_float): Likewise.
385         * src/complex/input/cl_N_read_stream.cc (read_complex): Likewise.
386
387 2004-10-25  Richard B. Kreckel  <kreckel@ginac.de>
388
389         * src/base/cl_low.h: Add mulu64 assembler macro for ia64.
390
391 2004-10-24  Richard B. Kreckel  <kreckel@ginac.de>
392
393         * src/base/cl_low.h: Add mul and div macros for x86_64.
394
395 2004-10-23  Richard B. Kreckel  <kreckel@ginac.de>
396
397         * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Fix thinko in
398         new code for base power of two.
399
400 2004-10-22  Richard B. Kreckel  <kreckel@ginac.de>
401
402         * src/integer/conv/cl_I_to_digits (I_to_digits): Fix an elusive stack
403         overwriting problem. That was the real cause for Debian bug#246319.
404         * src/integer/output/cl_I_print.cc (print_integer): Revert workaround
405         for the bug fixed above.
406
407 2004-10-20  Richard B. Kreckel  <kreckel@ginac.de>
408
409         * include/cln/types.h: Use 64 bit digits on x86_64 CPU.
410
411 2004-10-12  Richard B. Kreckel  <kreckel@ginac.de>
412
413         * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Speedup when
414         the base is a power of two.
415
416 2004-10-05  Richard B. Kreckel  <kreckel@ginac.de>
417
418         * src/integer/conv/cl_I_to_digits.cc (I_to_digits): Fix bug in base 32.
419
420 2004-09-27  Richard B. Kreckel  <kreckel@ginac.de>
421
422         Support for little-endian Mips, second shot
423         * src/base/digitseq/cl_asm_mipsel_.cc: New file...
424         * src/base/digitseq/cl_asm_cc: ...used here.
425         * src/base/digitseq/cl_asm.h: Include cl_asm_mips.h for any endianness.
426         * include/cln/object.h: Set alignment for mipsel explicitly.
427
428 2004-09-05  Richard B. Kreckel  <kreckel@ginac.de>
429
430         Support for little-endian Mips
431         * include/cln/config.h.in: Add __mipsel__.
432         * include/cln/modules.h: For Mips, this is endianness-agnostic.
433         * src/base/digitseq/cl_asm_.cc, src/base/digitseq/cl_asm.h:
434         Mask out assembler for little-endian Mips.
435
436 2004-08-30  Bruno Haible  <bruno@clisp.org>
437
438         * benchmarks/timebench2.sh: Multiply all repeat counts by 100.
439         * benchmarks/timebench2.results: Add recent PowerPC G4 results.
440
441 2004-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
442
443         * examples/e.cc: remove extra semicolon.
444
445 2004-08-25  Bruno Haible  <bruno@clisp.org>
446
447         * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
448         * m4/libtool.m4: New file, from libtool-1.5.6 with modifications:
449         2004-08-22  Bruno Haible  <bruno@clisp.org>
450           * m4/libtool.m4: Add support for Comeau C++ on Linux.
451           Reported by Prof. Roberto Bagnara <bagnara@cs.unipr.it>.
452         * autoconf/aclocal.m4: Regenerate.
453
454 2004-08-19  Bruno Haible  <bruno@clisp.org>
455
456         * include/cln/modules.h (CL_GLOBALIZE_JUMP_LABEL, CL_JUMP_TO): When
457         converting a label to a string, use ASM_UNDERSCORE_PREFIX. Needed on
458         MacOS X.
459         Reported by Darren Bane <darren.bane@ul.ie>.
460
461 2004-07-01  Richard B. Kreckel  <kreckel@ginac.de>
462
463         * Version 1.1.8 released.
464
465 2004-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
466
467         * src/base/cl_macros.h: alloca(3) has size_t argument type.
468
469 2004-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
470
471         * include/cln/floatformat.h: Do define a type here.
472
473 2004-06-27  Richard B. Kreckel  <kreckel@ginac.de>
474
475         * include/cln/modules.h (CL_JUMP_TO): Fix AMD64 brokenness.
476
477 2004-06-23  Bruno Haible  <bruno@clisp.org>
478
479         * configure.ac: Pretend ftime() is not available. Needed by
480         CL_TIMES_CLOCK.
481
482 2004-06-21  Ralf Stephan  <ralf@ark.in-berlin.de>
483
484         * doc/cln.tex: Document jacobi, isprobprime and nextprobprime.
485
486 2004-06-18  Richard B. Kreckel  <kreckel@ginac.de>
487
488         * rational/transcendental/cl_RA_logp.cc: fix bug where base is
489         reciprocal of an integer.
490         Reported by Niklas Knutsson <nq@altern.org>.
491
492 2004-06-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
493
494         * src/complex/ring/cl_C_ring.cc, src/integer/ring/cl_I_ring.cc,
495         src/rational/ring/cl_RA_ring.cc, src/real/ring/cl_R_ring.cc:
496         Make template specializations explicit.
497
498 2004-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
499
500         * src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
501         src/integer/input/cl_I_read.cc, src/rational/input/cl_RA_read.cc,
502         src/real/input/cl_R_read.cc:  Remove unused labels.
503
504 2004-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
505
506         * benchmarks/timebench1.cc, benchmarks/timebench2a.LiDIA.cc,
507         benchmarks/timebench2a.cc, benchmarks/timebench2ap.cc,
508         benchmarks/timebench2b.LiDIA.cc, benchmarks/timebench2b.cc,
509         examples/atan_recip.cc, examples/atanh_recip.cc,
510         examples/contfrac.cc, examples/e.cc, examples/legendre.cc,
511         examples/lucaslehmer.cc, examples/pi.cc, include/cln/GV.h,
512         include/cln/SV.h, include/cln/malloc.h, include/cln/modules.h,
513         include/cln/object.h, include/cln/string.h, src/base/cl_abort.cc,
514         src/base/cl_alloca.h, src/base/cl_malloc.cc,
515         src/base/random/cl_random_from.cc,
516         src/base/string/cl_spushstring_append.cc,
517         src/base/string/cl_spushstring_push.cc,
518         src/base/string/cl_st_debug.cc,
519         src/base/string/input/cl_st_gettoken.cc,
520         src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
521         src/float/output/cl_F_dprint.cc, src/integer/input/cl_I_read.cc,
522         src/rational/input/cl_RA_read.cc,
523         src/real/format-output/cl_fmt_integer.cc,
524         src/real/format-output/cl_fmt_paddedstring.cc,
525         src/real/input/cl_R_read.cc, src/timing/cl_t_current.cc,
526         src/timing/cl_t_current2.cc, tests/exam.cc, tests/tests.cc,
527         tests/timeLFRAmul.cc, tests/timeLFatan-compare.cc,
528         tests/timeLFatan.cc, tests/timeLFatanh-compare.cc,
529         tests/timeLFatanh.cc, tests/timeLFcos-compare.cc, tests/timeLFcos.cc,
530         tests/timeLFcosh.cc, tests/timeLFexp-compare.cc, tests/timeLFexp.cc,
531         tests/timeLFln-compare.cc, tests/timeLFln.cc,
532         tests/timeLFsin-compare.cc, tests/timeLFsin.cc, tests/timeLFsinh.cc,
533         tests/timeLFsqrt.cc, tests/timeMImisc5.cc, tests/timeMIpow2div.cc,
534         tests/timeMIpow2recip.cc, tests/timeRALFdiv.cc, tests/timeRAtoLF.cc,
535         tests/timeUPMImul.cc, tests/timecatalan.cc, tests/timediv.cc,
536         tests/timediv2adic-compare.cc, tests/timediv2adic.cc,
537         tests/timeeuler.cc, tests/timeexp1.cc, tests/timefact.cc,
538         tests/timegcd.cc, tests/timemul-compare.cc, tests/timemul.cc,
539         tests/timepi.cc, tests/timeprint-compare.cc, tests/timeprint.cc,
540         tests/timerecip2adic-compare.cc, tests/timerecip2adic.cc,
541         tests/timesqrt.cc, tests/timesqrtmodp.cc, tests/timesquare.cc,
542         tests/timezeta3.cc: Change all C include headers to ISO style
543         within C++ code.
544
545 2004-06-10  Richard B. Kreckel  <kreckel@ginac.de>
546
547         * examples/perfnum.cc: update to presumed 41st Mersenne prime.
548
549 2004-05-02  Richard B. Kreckel  <kreckel@ginac.de>
550
551         * Version 1.1.7 released.
552
553 2004-05-02  Richard B. Kreckel  <kreckel@ginac.de>
554
555         * examples/pi.cc and examples/pi.1: New files.
556         * examples/Makefile.in: Build the pi executable.
557
558 2004-05-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
559
560         * src/Makefile.in: Fix for parallel build: wait for subdir objects to
561         be finished before creating the library.
562
563 2004-04-30  Richard B. Kreckel  <kreckel@ginac.de>
564
565         * src/integer/output/cl_I_print.cc (print_integer): workaround
566         GCC compiler bug (cf. Debian bug#246319).
567
568 2004-03-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
569
570         * m4/gmp.m4 (CL_GMP_CHECK): Do not lose LIBS setting with config.cache
571         enabled.
572
573 2004-03-08  Bruno Haible  <bruno@clisp.org>
574
575         * src/float/lfloat/elem/cl_LF_mul.cc (operator*): Fix the second
576         underflow condition.
577         * src/float/lfloat/algebraic/cl_LF_sqrt.cc (sqrt): Fix a bug with large
578         uexp whereby SQRT of MOST-POSITIVE-LONG-FLOAT was less than 1.
579
580 2004-03-04  Richard B. Kreckel  <kreckel@ginac.de>
581
582         * Makefile.in (install): Add ${srcdir} for cln.m4.
583         * m4/gmp.m4: quote macro names.
584         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
585
586 2004-01-01  Richard B. Kreckel  <kreckel@ginac.de>
587
588         * Version 1.1.6 released.
589
590 2004-01-01  Richard B. Kreckel  <kreckel@ginac.de>
591
592         * include/cln/univpoly.h, include/cln/univpoly_complex.h,
593           include/cln//univpoly_integer.h, include/cln/univpoly_modint.h,
594           include/cln/univpoly_rational.h, include/cln/univpoly_real.h,
595           src/polynomial/elem/cl_UP_GF2.h, src/polynomial/elem/cl_UP_MI.h,
596           src/polynomial/elem/cl_UP_gen.h, src/polynomial/elem/cl_UP_no_ring.cc,
597           src/polynomial/elem/cl_UP_number.h (ldegree): New function.
598         * doc/cln.tex: Document `ldegree'.
599
600 2003-12-29  Richard B. Kreckel  <kreckel@ginac.de>
601
602         Rework of autoconfiscation infrastructure
603         * autoconf/config.{guess,sub}: Update to GNU version 2003-10-07.
604         * autoconf/ltmain.sh: Update to GNU version 1.4.3.
605         * autoconf/autoconf: Remove (from now on we assume autoconf is
606           installed properly on the sytem).
607         * autoconf/autoconf.m4: Likewise.
608         * autoconf/autoconf.m4f: Likewise.
609         * autoconf/acgeneral.m4: Likewise.
610         * autoconf/acspecific.m4: Likewise.
611         * autoconf/aclocal.m4: Regenerate.
612         * autoconf/acinclude.m4: Remove (while moving the macros...)
613         * m4/gmp.m4: New file (...to here).
614         * Makefile.devel: Update to new scheme.
615         * configure.ac: Likewise.
616         * include/cln/GV_integer.h: Assume template specializations work.
617         * include/cln/GV_modinteger.h: Likewise.
618         * include/cln/config.h.in: Likewise, and drop HAVE_BOOL.
619         * src/base/cl_base_config.h.in: Drop support for obsolete ftime(3).
620         * src/base/random/cl_random_from.cc: Likewise.
621         * src/timing/cl_base_config.h.in: Likewise.
622         * src/timing/cl_t_current.cc: Likewise.
623
624 2003-12-27  Richard B. Kreckel  <kreckel@ginac.de>
625
626         * src/polynomial/cl_UP_gen.h (gen_minus): Fix case where first
627           argument is zero.
628         * src/polynomial/cl_UP_MI.h (modint_minus): Likewise.
629         * src/polynomial/cl_UP_number.h (num_minus): Likewise.
630         Reported by Munagala Ramanath <amberarrow@yahoo.com>.
631
632 2003-12-02  Richard B. Kreckel  <kreckel@ginac.de>
633
634         * examples/perfnum.cc: update to presumed 40th Mersenne prime.
635
636 2003-11-20  Christian Bauer  <cbauer@ginac.de>
637
638         Added pkg-config support
639         * cln.pc.in: New file.
640         * Makefile.in: Take care of cln.pc.
641         * configure.ac: Likewise.
642
643 2003-08-06  Richard B. Kreckel  <kreckel@ginac.de>
644
645         * src/numtheory/cl_nt_sqrtmodp.cc: #undef _R.
646         Reported by Andrew Rechnitzer <A.Rechnitzer@ms.unimelb.edu.au>.
647
648 2003-08-01  Richard Kreckel  <kreckel@ginac.de>
649
650         More dependent base resolution issues
651         * src/base/hash/cl_hash.h (cl_heap_hashtable<T>::iterator()): 
652         portable syntactic simplification.
653         * src/base/hash/cl_hashset.h: Preceed inherited members with this->.
654         * src/base/hash/cl_hash1.h: Likewise for member functions.
655         * src/base/hash/cl_hash2.h: Likewise.
656         * src/base/hash/cl_hashuniq.h: Likewise.
657         * src/base/hash/cl_hashuniqweak.h: Likewise.
658         * src/base/hash/cl_hash.h: Revert explicit static member function
659         lookup since that was GCC's fault.
660         * src/base/hash/cl_hash2weak.h: Likewise.
661         * src/base/hash/cl_hashuniqweak.h: Likewise.
662
663 2003-06-29  Richard Kreckel  <kreckel@ginac.de>
664
665         Dependent base resolution needed for GCC-3.4
666         * include/cln/GV.h: Preceed inherited members with this->.
667         * include/cln/SV.h: Likewise.
668         * include/cln/object.h: Likewise.
669         * src/base/hash/cl_hash1.h: Likewise.
670         * src/base/hash/cl_hash1weak.h: Likewise.
671         * src/base/hash/cl_hash2.h: Likewise.
672         * src/base/hash/cl_hashuniq.h: Likewise.
673         * src/base/hash/cl_hash.h: Make lookup of static member function 
674         explicit.
675         * src/base/hash/cl_hash2weak.h: Likewise.
676         * src/base/hash/cl_hashuniqweak.h: Likewise.
677         * src/modinteger/cl_MI.cc: Make shell-comment a C-comment. Geez.
678
679 2003-02-24  Bruno Haible  <bruno@clisp.org>
680
681         * src/base/random/cl_random_from.cc (random_state::random_state): Add
682         support for MacOS X.
683         * src/modinteger/cl_MI.cc: #undef _R.
684         Reported by Erann Gat <gat@jpl.nasa.gov>.
685
686 2002-08-03  Joerg Arndt  <jj@suse.de>
687
688         * include/cln/config.h.in: Add support for x86_64 CPU.
689         * include/cln/modules.h: Likewise.
690         * include/cln/types.h: Likewise.
691         * include/cln/object.h: Likewise.
692
693 2002-06-08  Richard Kreckel  <kreckel@ginac.de>
694
695         * src/base/digitseq/cl_asm.h: ensure intCsize==16 when including
696         m68k Assembler routines.
697         * src/base/digitseq/cl_asm_.cc: Likewise.
698
699 2002-05-28  Richard Kreckel  <kreckel@ginac.de>
700
701         * Version 1.1.5 released.
702
703 2002-05-27  Richard Kreckel  <kreckel@ginac.de>
704
705         * include/cln/modules.h (CL_CONCATENATE): New macro.
706
707 2002-05-10  Richard Kreckel  <kreckel@ginac.de>
708
709         * doc/cln.tex (Building the library): Update recommendations for 
710         compiling on Tru64 using g++ 3.0 and 3.1.
711         * README: Update homepage.
712
713 2002-05-05  Bruno Haible  <bruno@clisp.org>
714
715         * doc/cln.tex (Building the library): Give some recommendations for
716         g++ 3.0 and 3.1.
717
718         Force link-time references despite optimizations done by g++ 2.95
719         and newer.
720         * include/cln/modules.h (CL_FORCE_LINK): New macro.
721         * Use CL_FORCE_LINK.
722         * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise.
723         * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise.
724         * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise.
725         * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise.
726         * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise.
727         * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy):
728         Likewise.
729         * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy):
730         Likewise.
731         * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise.
732         * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise.
733         * include/cln/rational.h (cl_RA_debug_dummy): Likewise.
734         * include/cln/real.h (cl_R_debug_dummy): Likewise.
735         * include/cln/ring.h (cl_ring_debug_dummy): Likewise.
736         * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy):
737         Likewise.
738         * include/cln/string.h (cl_string_debug_dummy): Likewise.
739         * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise.
740         * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise.
741
742         Avoid g++ 3.1 warnings.
743         * src/base/cl_offsetof.h (offsetof): Redefine each time.
744         * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after <gmp.h>.
745
746         Avoid g++ 3.1 warnings.
747         * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename
748         where needed.
749         * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef
750         htxentry as a shortcut.
751         * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise.
752         * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise.
753         * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq):
754         Likewise.
755
756 2002-03-15  Bruno Haible  <bruno@clisp.org>
757
758         * cln.tex: Document problem with GNU make 3.77.
759         Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
760
761 2002-02-16  Richard Kreckel  <kreckel@ginac.de>
762
763         * cln.m4: quote macro name.
764           Pointed out by Roberto Bagnara.
765
766 2002-01-20  Richard Kreckel  <kreckel@ginac.de>
767
768         * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
769           (the old one was broken on Linux/Mips.)
770
771 2002-01-04  Richard Kreckel  <kreckel@ginac.de>
772
773         * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
774         * Version 1.1.4 released.
775
776 2002-01-03  Richard Kreckel  <kreckel@ginac.de>
777
778         * autoconf/acinclude.m4: revamp MPN-matcher.
779         * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
780           sync with CLisp from CVS.
781         * autoconf/autoconf: Likewise.
782         * autoconf/autoconf.m4f: Likewise (new file).
783         * configure.ac: Likewise (new file, replaces configure.in).
784         * configure.in: Likewise (deleted, replaced by configure.ac).
785         * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
786         * src/Makefile.in: made VPATH safe for autoconf-2.52.
787         * include/cln/config.h.in: Add __s390__.
788
789 2001-12-31  Richard Kreckel  <kreckel@ginac.de>
790
791         * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
792           any more since GMP4 has some C++ support in it.
793
794 2001-12-14  Richard Kreckel  <kreckel@ginac.de>
795
796         * include/cln/modules.h, include/cln/object.h: add support for
797           s390.
798         * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
799           on s390, provided by Gerhard Tonn.
800
801 2001-11-05  Richard Kreckel  <kreckel@ginac.de>
802
803         * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
804         * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
805         * Version 1.1.3 released.
806
807 2001-11-04  Bruno Haible  <haible@clisp.cons.org>
808
809         Interoperability with gcc-3.0 -fuse-cxa-atexit.
810         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
811           global destructors actually exist.
812         * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
813           Don't hack the global destructors if there is no global destructors
814           function.
815
816 2001-11-03  Richard Kreckel  <kreckel@ginac.de>
817
818         * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
819           values of x, return square(x) instead of x.
820         * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
821
822 2001-07-25  Richard Kreckel  <kreckel@ginac.de>
823
824         * Version 1.1.2 released.
825
826 2001-07-24  Richard Kreckel  <kreckel@ginac.de>
827
828         * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
829           friend of cl_heap_hashtable<htentry>.
830
831 2001-07-22  Richard Kreckel  <kreckel@ginac.de>
832
833         * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
834           _FPU_IEEE is really defined.
835         * include/cln/modules.h: change assembler labels from `label' to
836           `label:' on hppa, needed by Linux (see comment).
837         * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
838         * Makefile.devel: adjusted.
839         * autoconf/aclocal.m4: regenerate.
840         * src/base/low/cl_low_mul.cc: moved POD variables that are declared
841           extern "C" elsewhere out of the namespace.
842         * src/base/low/cl_low_div.cc: Likewise.
843
844 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
845
846         * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
847         * autoconf/aclocal.m4: Upgrade to libtool-1.4.
848         * autoconf/ltmain.sh: Likewise.
849         * autoconf/ltconfig: Remove file.
850         * autoconf/install-sh: New file.
851         * configure.in: Add AC_CONFIG_AUX_DIR call.
852
853 2001-06-05  Richard Kreckel  <kreckel@ginac.de>
854
855         * tests/tests.cc: resolve namespace ambiguity about strcmp().
856
857 2001-05-31  Richard Kreckel  <kreckel@ginac.de>
858
859         * Version 1.1.1 released.
860
861 2001-05-28  Richard Kreckel  <kreckel@ginac.de>
862
863         * cln/cln.tex: documented problems with shared library on Sparc
864           using gcc older than 2.95.3.
865         * configure.in: Fixed typos in versioning docu.
866
867 2001-05-25  Bruno Haible  <haible@clisp.cons.org>
868
869         * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
870           hexadecimal constants.
871
872 2001-05-25  Richard Kreckel  <kreckel@ginac.de>
873
874         * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
875         * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
876         * Removed LiDIA interface since that is now outdated (namespace cln)
877           and maintained elsewhere.
878         * Adjusted dates and final touches for 1.1.1.
879
880 2001-05-19  Richard Kreckel  <kreckel@ginac.de>
881
882         * INSTALL: Update toolchain info: no egcs, some more platforms.
883         * doc/cln.tex: Likewise.
884
885 2001-05-18  Richard Kreckel  <kreckel@ginac.de>
886
887         * src/base/cl_low.h: prepended variables declared inside macros
888           with underscore.  Fixes equal_hashcode() on various platforms.
889
890 2001-04-25  Richard Kreckel  <kreckel@ginac.de>
891
892         * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
893           this definition becomes actually useful.  This is needed for 
894           compilation on Arm until somebody fixes the assembler files for Arm.
895         * src/base/digitseq/cl_asm.h: Likewise.
896         * src/base/digitseq/cl_asm_.cc: Likewise.
897         * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
898            one can say `make CPPFLAGS=-DFOOBAR'.
899
900 2001-03-26  Arvid Norberg <c99ang@cs.umu.se>
901
902         * src/base/random/cl_random_from.cc: ported to beos.
903
904 2001-03-05  Richard Kreckel  <kreckel@ginac.de>
905
906         * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
907
908 2001-01-28  Richard Kreckel  <kreckel@ginac.de>
909
910         * include/cln/number.h (cl_as_N): Remove bogus comment.
911
912 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
913
914         * configure.in: Make build in separate builddir possible (again).
915
916 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
917
918         * include/cln/*.h: Change signatures of all classes' methods
919           cln::cl_foo::operator new(size_t, cl_foo*) to
920           cln::cl_foo::operator new(size_t, void*) so one can declare
921           std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
922           certain STL implementations (like libstdc++-v3).
923
924 2000-12-14  Richard Kreckel  <kreckel@ginac.de>
925
926         * Version 1.1 released.
927
928 2000-12-13  Richard Kreckel  <kreckel@ginac.de>
929
930         * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
931
932 2000-12-05  Richard Kreckel  <kreckel@ginac.de>
933
934         * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
935         * include/cln/version.h.in, src/base/verion.cc: New files.
936         * configure.in: Generate include/cln/version.h.
937         * cln.m4: Rewrote it. Check result of cln-config without compiling.
938           Do cross-check library version and header version information.
939
940 2000-12-02  Christian Bauer  <cbauer@ginac.de>
941
942         * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
943         * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
944           building.
945
946 2000-11-24  Richard Kreckel  <kreckel@ginac.de>
947
948         * */*: Removed problematic stdin, stdout and stderr definitions.  
949           Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
950
951 2000-11-20  Bruno Haible
952
953         * cln-config.1: change title.
954
955 2000-11-18  Richard Kreckel  <kreckel@ginac.de>
956
957         * cln.m4: New file.
958         * doc/cln.tex: Document package tools cln-config and cln.m4.
959         * Makefile.in: Care about cln.m4.
960
961 2000-11-17  Richard Kreckel  <kreckel@ginac.de>
962
963         * cln-config.1: added manpage, as required by a couple of distros.
964         * Makefile.in, doc/Makefile.in: target install depends on installdirs.
965
966 2000-11-16  Richard Kreckel  <kreckel@ginac.de>
967
968         * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
969         * configure.in: ...used here.
970         * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
971         * include/cln/types.h: ...used here.
972         * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
973
974 2000-11-13  Richard Kreckel  <kreckel@ginac.de>
975
976         * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
977           in order to guard against an accidented configuration.
978         * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of 
979           struct power_table_entry initialized as ULL instead of as UL, if 
980           intDsize==64 (caused misprinting on MIPS w/ GMP).
981         * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if 
982           HAVE_FAST_LONGLONG.
983         * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
984         * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival 
985           generation of Bignum for intDsize==64 and a notreached-check at end.
986         * autoconf/config.guess, autoconf/config.sub: updated from FSF.
987         * include/cln/config.h.in: Prepared support for IA64.
988         * include/cln/types.h: Likewise.
989         * include/cln/object.h: Likewise.
990         * include/cln/modules.h: Likewise.
991         * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's 
992           compiler claims __GNUC_MINOR__==9).
993
994 2000-11-03  Richard Kreckel  <kreckel@ginac.de>
995
996         * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
997           HAVE_DD to HAVE_FAST_LONGLONG.
998         * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
999         * src/base/cl_low.h: actually no need to include "cln/types.h" here.
1000         * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
1001         * src/base/random/cl_UL_random.cc (random32): a is always ULL.
1002
1003 2000-11-01  Richard Kreckel  <kreckel@ginac.de>
1004
1005         * include/cln/object.h (cl_combine): define additional signatures, if
1006           HAVE_LONGLONG is defined, in order to keep the compiler happy.
1007         * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
1008         * src/base/cl_macros.h (bit): ...for this macro...
1009         * src/base/cl_macros.h (minus_bit): ...and this one.
1010         * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
1011         * src/base/cl_low.h (logcount_64): ...for this macro.
1012         * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
1013         * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
1014           that turned up when intDsize==32 and cl_word_size==64.
1015         * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
1016           to uint64 that turned up when intDsize==32 and cl_word_size==64.
1017
1018 2000-10-29  Richard Kreckel  <kreckel@ginac.de>
1019
1020         * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
1021           #undef stderr, if it's defined so cln::stderr isn't confused.
1022         * src/base/input/cl_read_globals.cc: stdin should not be extern.
1023
1024 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
1025
1026         * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
1027           to the appropiate method instead of prefixing `as_'.
1028         * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
1029         * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
1030         * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
1031         * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
1032         * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
1033         * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
1034         * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
1035         * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
1036         * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
1037
1038 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
1039
1040         * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
1041           the 0^y cases.
1042
1043 2000-08-30  Richard Kreckel  <kreckel@ginac.de>
1044
1045         * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
1046           Rearranged for a clearer distinction between macros and remaining
1047           identifiers, so Cint can parse it smoothly.
1048
1049 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
1050
1051         * include/cln/number.h, the(const cl_number& x): New template
1052           function.
1053
1054 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
1055
1056         * */*: Pushed CLN into a namespace `cln'.  While doing so, the
1057           following identifiers got their poor-man's namespace (i.e. the 
1058           prefix `cl_') stripped off:
1059           cl_catalanconst()        ->  catalanconst()
1060           cl_compare()             ->  compare()
1061           cl_cos_sin()             ->  cos_sin()
1062           cl_cos_sin_t             ->  cos_sin_t
1063           cl_cosh_sinh()           ->  cosh_sinh()
1064           cl_cosh_sinh_t           ->  cosh_sinh_t
1065           cl_decoded_dfloat        ->  decoded_dfloat
1066           cl_decoded_ffloat        ->  decoded_ffloat
1067           cl_decoded_float         ->  decoded_float
1068           cl_decoded_lfloat        ->  decoded_lfloat
1069           cl_decoded_sfloat        ->  decoded_sfloat
1070           cl_default_float_format  ->  default_float_format
1071           cl_default_print_flags   ->  default_print_flags
1072           cl_default_random_state  ->  default_random_state
1073           cl_double_approx()       ->  double_approx()
1074           cl_equal()               ->  equal()
1075           cl_equal_hashcode()      ->  equal_hashcode()
1076           cl_eulerconst()          ->  eulerconst()
1077           cl_find_modint_ring()    ->  find_modint_ring()
1078           cl_find_univpoly_ring()  ->  find_univ_poly_ring()
1079           cl_float_approx()        ->  float_approx
1080           cl_float_format()        ->  float_format()
1081           cl_float_format_t        ->  float_format_t
1082           cl_free_hook()           ->  free_hook()
1083           cl_hermite()             ->  hermite()
1084           cl_laguerre()            ->  laguerre()
1085           cl_legendre()            ->  legandre()
1086           cl_malloc_hook()         ->  malloc_hook()
1087           cl_pi()                  ->  pi()
1088           cl_tschebychev()         ->  tschebychev()
1089           cl_zeta()                ->  zeta()
1090           NB: For functions these changes includes all signatures.
1091         * include/*: moved to include/cln/*, stripped `cl_' off filenames.
1092         * cln-config.in: new file.
1093
1094 2000-08-26  Bruno Haible  <haible@clisp.cons.org>
1095
1096         * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
1097           value, not parens.
1098
1099 2000-08-18  Bruno Haible  <haible@clisp.cons.org>
1100
1101         * include/cl_univpoly_modint.h: Fix typo.
1102
1103 2000-07-13  Bruno Haible  <haible@clisp.cons.org>
1104
1105         * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
1106           used as precision marker for floats.
1107           Reported by Keith Briggs (in 1998) and Thomas Roessler.
1108         * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
1109         * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
1110         * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
1111         * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
1112
1113 2000-06-22  Bruno Haible  <haible@clisp.cons.org>
1114
1115         * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
1116         * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
1117           with N32 ABI.
1118           (cl_word_size): New macro.
1119         * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
1120           cl_word_size.
1121
1122 2000-05-31  Bruno Haible  <haible@clisp.cons.org>
1123
1124         * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
1125           From a sample that fails with gcc-2.95.2 on Sparc.
1126         * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
1127
1128 2000-05-30  Richard Kreckel  <kreckel@ginac.de>
1129
1130         * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
1131           New macros.
1132         * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
1133           CL_VERSION_PATCHLEVEL): New definitions.
1134         * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
1135           autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
1136         * src/Makefile.in, configure.in: release-variables renamed from 
1137           CLN_* to CL_*.
1138         * configure.in: default to build both shared and static library
1139           (i.e. default to the most common behaviour).
1140
1141 2000-05-29  Richard Kreckel  <kreckel@ginac.de>
1142
1143         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
1144           environment around the patch of 2000-05-23.
1145
1146 2000-05-29  Bruno Haible  <haible@clisp.cons.org>
1147
1148         * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
1149           Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
1150
1151 2000-05-27  Richard Kreckel  <kreckel@ginac.de>
1152
1153         * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
1154           src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
1155
1156 2000-05-24  Richard Kreckel  <kreckel@ginac.de>
1157
1158         * autoconf/config.*: Updated to new version from FSF
1159           (the new libtool wants this).
1160         * src/Makefile.in: added $(LDFLAGS) to link step.
1161         * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted 
1162           break-even points.
1163
1164 2000-05-23  Bruno Haible  <haible@clisp.cons.org>
1165
1166         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
1167           host_vendor, host_os correctly if $host has more than two hyphens.
1168
1169 2000-05-19  Richard Kreckel  <kreckel@ginac.de>
1170
1171         * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
1172           better match present-day CPUs whenever GMP3 is used.
1173         * src/base/digitseq/cl_DS_div.cc: dto. 
1174         * src/TUNING: Added comment about order of tuning.
1175         * configure, configure.in: Safer GMP3-detection.
1176         * INSTALL.generic: Clarified behaviour of --with-gmp.
1177         * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
1178
1179 2000-05-04  Richard Kreckel  <kreckel@ginac.de>
1180
1181         * gmp/: removed completely.  From now on we are going to link
1182           externally against libgmp3.0 or above!
1183         * configure, configure.in, Makefile.in, */Makeflags: removed support
1184           of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
1185           setting $CPPFLAGS instead.
1186         * Makefile.in: Added libtool inter-library dependency for -lgmp and
1187           conforming interface versioning (-version-info).
1188         * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
1189           from libtool 1.3.4.
1190
1191 2000-02-22  Bruno Haible  <haible@clisp.cons.org>
1192
1193         * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
1194           parameter passing was changed for the MIPS n32 ABI.
1195
1196 2000-01-24  Richard Kreckel  <kreckel@ginac.de>
1197
1198         * gmp/*: Replaced the complete mpn sources with the ones from
1199           Debian since they are maintained while the ones from FSF
1200           aren't and there were problems on some architectures, PowerPC
1201           in particular.  See the file gmp/README.CLN.  This way the
1202           hard links in this directory have vanished, they were causing
1203           trouble for people working in AFS.  This became necessary for
1204           Debian, because there it woudn't compile on PPC.
1205
1206 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
1207
1208         * Version 1.0.3 released.
1209
1210 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
1211
1212         * src/base/cl_macros.h (nonreturning_function): For egcs and newer
1213           use __attribute__ ((__noreturn__)) instead of the __volatile__
1214           storage class.
1215           (nonreturning): Remove macro.
1216         * include/*: Minor fixes to stop -ansi -pedantic from complaining.
1217         * include/cl_integer.h: (doublefactorial): New declaration.
1218         * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
1219
1220 1999-12-18  Bruno Haible  <haible@clisp.cons.org>
1221
1222         * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
1223           "cat", not "echo".
1224         * autoconf/ltconfig: Improve support for recent FreeBSD 3.
1225         * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
1226           'const T', to match definition in src/vector/cl_GV_number.cc.
1227           Reported by Duncan Simpson <dps@io.stargate.co.uk>.
1228         * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
1229           yield return code 1.
1230
1231 1999-09-07  Bruno Haible  <haible@clisp.cons.org>
1232
1233         * Version 1.0.2 released.
1234
1235 1999-09-06  Bruno Haible  <haible@clisp.cons.org>
1236
1237         * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
1238           boolean expression, write alternatives ending with either
1239           "return cl_true;" or "return cl_false;". This way, g++ does a
1240           better job inlining it.
1241         * src/float/cl_F.h (longfloatp): Likewise.
1242         * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
1243         * src/complex/cl_C.h (realp, complexp): Likewise.
1244
1245 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1246
1247         * include/cl_integer.h (cl_equal_hashcode): New declaration.
1248         * include/cl_rational.h (cl_equal_hashcode): New declaration.
1249         * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
1250         * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
1251         * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
1252         * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
1253         * include/cl_float.h (cl_equal_hashcode): New declaration.
1254         * include/cl_real.h (cl_equal_hashcode): New declaration.
1255         * include/cl_complex.h (cl_equal_hashcode): New declaration.
1256         * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
1257         * src/integer/misc/cl_I_eqhashcode.cc: New file.
1258         * src/rational/misc/cl_RA_eqhashcode.cc: New file.
1259         * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
1260         * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
1261         * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
1262         * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
1263         * src/float/misc/cl_F_eqhashcode.cc: New file.
1264         * src/real/misc/cl_R_eqhashcode.cc: New file.
1265         * src/complex/misc/cl_C_eqhashcode.cc: New file.
1266         * doc/cln.tex: Document `cl_equal_hashcode'.
1267
1268 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1269
1270         * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
1271           (cl_number_ring): New class.
1272           (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
1273           (instanceof): New function.
1274         * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
1275         * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
1276         * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
1277         * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
1278         * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
1279         * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
1280         * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
1281         * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
1282         * doc/cln.tex: Document `instanceof'.
1283
1284 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1285
1286         * include/cl_rational.h (numerator, denominator): New declarations.
1287         * src/rational/elem/cl_RA_numerator.cc: New file.
1288         * src/rational/elem/cl_RA_denominator.cc: New file.
1289         * include/cl_integer.h (numerator, denominator): New inline functions.
1290         * doc/cln.tex: Document `numerator' and `denominator'.
1291
1292 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1293
1294         * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
1295           in the integer case.
1296         * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
1297
1298 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1299
1300         * include/cl_config.h.in: Support for sparc64 CPU.
1301         * include/cl_modules.h: Likewise.
1302         * include/cl_types.h: Likewise.
1303         * include/cl_object.h: Likewise.
1304         * include/cl_GV.h: Likewise.
1305         * src/Makefile.in: Likewise.
1306         * src/base/cl_alloca.h: Likewise.
1307         * src/base/cl_macros.h: Likewise.
1308         * src/base/cl_sysdep.h: Likewise.
1309         * src/base/cl_low.h: Likewise.
1310         * src/base/digitseq/cl_asm.h: Likewise.
1311         * src/base/digitseq/cl_asm_.cc: Likewise.
1312         * src/base/digitseq/cl_asm_sparc64.h: New file.
1313         * src/base/digitseq/cl_asm_sparc64_.cc: New file.
1314         * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
1315         * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
1316         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
1317         * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
1318
1319 1999-09-04  Bruno Haible  <haible@clisp.cons.org>
1320
1321         * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
1322           Use the `orn' instruction.
1323
1324 1999-08-14  Bruno Haible  <haible@clisp.cons.org>
1325
1326         Assume all platforms have <stdlib.h> and clock_t.
1327         * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
1328         * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
1329         * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
1330         * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
1331         * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
1332
1333 1999-07-18  Bruno Haible  <haible@clisp.cons.org>
1334
1335         * gmp/config.guess: Link to autoconf/config.guess.
1336           gmp/config.sub: Link to autoconf/config.sub.
1337           Needed for Win32 platforms.
1338
1339 1999-07-17  Bruno Haible  <haible@clisp.cons.org>
1340
1341         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
1342           "sparc64" according to the C compiler, not the uname result.
1343
1344 1999-06-17  Bruno Haible  <haible@clisp.cons.org>
1345
1346         * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
1347           COUNTER_LOOPS version, fortunately not used yet.
1348
1349         * include/cl_modules.h: Prepare for gcc version 3.
1350
1351 1999-06-12  Bruno Haible  <haible@clisp.cons.org>
1352
1353         * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
1354           Change the last call from I_I_to_RT to I_I_to_RA.
1355
1356 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
1357
1358         * Version 1.0.1 released.
1359
1360 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
1361
1362         * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
1363           intDsize==64.
1364
1365 1999-06-08  Bruno Haible  <haible@clisp.cons.org>
1366
1367         * autoconf/intparam.c (printf_underscored): Change argument type to
1368           `const char*'.
1369         * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
1370           (CL_PROVIDE, CL_PROVIDE_END): Use them.
1371         * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
1372         * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
1373         * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
1374           cast a cl_I to void here. Works around a bug in g++-2.95.
1375         * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
1376         * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
1377            dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
1378           in g++-2.95.
1379         * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
1380           macro.
1381         * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
1382         * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
1383            DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
1384         * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
1385           Likewise.
1386
1387 1999-06-01  Bruno Haible  <haible@clisp.cons.org>
1388
1389         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
1390           variants to alpha.
1391
1392 1999-05-29  Bruno Haible  <haible@clisp.cons.org>
1393
1394         * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
1395           OpenBSD like NetBSD.
1396         * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
1397         * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
1398           OpenBSD like NetBSD, and Linux/ELF like SVR4.
1399
1400 1999-05-16  Bruno Haible  <haible@clisp.cons.org>
1401
1402         * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
1403           syntax on AIX systems and new assembler syntax on non-AIX systems.
1404
1405 1999-05-01  Bruno Haible  <haible@clisp.cons.org>
1406
1407         * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
1408           version from GNU CVS.
1409
1410 1999-04-24  Bruno Haible  <haible@clisp.cons.org>
1411
1412         * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
1413           either operand is a positive fixnum, O(1) instead of O(N).
1414         * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
1415         * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
1416           first operand.
1417
1418 1999-04-14  Bruno Haible  <haible@clisp.cons.org>
1419
1420         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
1421           ctor/dtor needs to be exported.
1422         * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
1423         * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
1424           CL_GLOBALIZE_LABEL.
1425           (CL_GLOBALIZE_LABEL): New macro.
1426           (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
1427           (CL_PROVIDE): Update.
1428
1429 1999-04-12  Bruno Haible  <haible@clisp.cons.org>
1430
1431         * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
1432           errors ("unterminated string or character constant").
1433           ($(ASMFILES_LO)): On HPPA, try with various settings of
1434           COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
1435
1436 1999-04-11  Bruno Haible  <haible@clisp.cons.org>
1437
1438         * INSTALL: Mention gmp problems on MIPS.
1439         * doc/cln.tex: Likewise.
1440
1441 1999-03-24  Mumit Khan  <khan@xraylith.wisc.edu>
1442
1443         * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
1444           the source tree.
1445         * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
1446           (CL_GLOBALIZE_ASM_LABEL): New macro.
1447           (CL_PROVIDE): Use it.
1448         * src/base/random/cl_random_from.cc: Handle WIN32.
1449         * src/timing/cl_t_current.cc: Likewise.
1450
1451 1999-03-15  Bruno Haible  <haible@clisp.cons.org>
1452
1453         * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
1454           (main8): Adapt for C++.
1455
1456 1999-03-09  Bruno Haible  <haible@clisp.cons.org>
1457
1458         * INSTALL: Mention egcs-1.1 problems on Sparc.
1459         * doc/cln.tex: Likewise.
1460
1461 1999-03-08  Bruno Haible  <haible@clisp.cons.org>
1462
1463         * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
1464           messages.
1465
1466 1999-02-25  Bruno Haible  <haible@clisp.cons.org>
1467
1468         * autoconf/aclocal.m4: In test programs, declare `int main()', not
1469           `main()'.
1470
1471         * lidia-interface/src/interfaces/integers/cln/bigint.c
1472           (bigint_to_string): Fix for negative arguments.
1473
1474         * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
1475         * src/base/cl_alloca.h: Likewise.
1476
1477         * src/base/cl_low.h: Eliminate CLISP style "# " comments.
1478         * src/base/digitseq/cl_asm_arm_.cc,
1479           src/base/digitseq/cl_asm_mips_.cc,
1480           src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
1481
1482         * src/modinteger/cl_MI_pow2.h,
1483           src/modinteger/cl_MI_pow2m1.h,
1484           src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
1485
1486 1999-01-18  Bruno Haible  <haible@clisp.cons.org>
1487
1488         * autoconf/acgeneral.m4,
1489           autoconf/acspecific.m4: Upgrade to autoconf-2.13.
1490         * autoconf/config.guess, autoconf/config.sub: Likewise.
1491         * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
1492           a macro. Use ${ac_objext}.
1493         * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
1494           conforming with CL_ALLOCA.
1495
1496 1999-01-12  Bruno Haible  <haible@clisp.cons.org>
1497
1498         * Version 1.0 released.
1499