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