/[cln]/ChangeLog
ViewVC logotype

Contents of /ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.171 - (hide annotations)
Sun Apr 8 21:29:47 2007 UTC (6 years, 1 month ago) by kreckel
Branch: MAIN
Changes since 1.170: +11 -0 lines
        More memory efficient constants:
        * src/float/transcendental/cl_LF_pi.cc (compute_pi_ramanujan_163_fast):
        Compute series coefficients on demand, using a series stream object.
        * src/float/transcendental/cl_LF_zeta3.cc (zeta3): Likewise.
        * src/float/transcendental/cl_LF_catalanconst.cc
        (compute_catalanconst_ramanujan_fast): Likewise.
        (compute_catalanconst_lupas): New function.
        (compute_catalanconst): Simplify, based on new benchmark.

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

Christian Bauer">Christian Bauer
ViewVC Help
Powered by ViewVC 1.1.15